hunk.code_window:                             // Prevent double-clicking on the send button and
                               // add a upload loading effect (delay before success
                               // message)
                               await concurrency.delay(dom.DEBOUNCE);
                               self.update_status('success');
                               break;
                           }
  
hunk.labels: keep keep keep replace keep keep keep keep
hunk.after_edit:                             await delay(dom.DEBOUNCE);
  
hunk.file_path: addons/website/static/src/snippets/s_website_form/000.js
hunk.type: replace
file: # -*- coding: utf-8 -*-
  # Part of Odoo. See LICENSE file for full copyright and licensing details.
  from . import controllers
  from . import models
  from . import wizard
  from . import report
  
  
  def uninstall_hook(env):
      env.ref("account.account_analytic_line_rule_billing_user").write({'domain_force': "[(1, '=', 1)]"})
  
  def _sale_timesheet_post_init(env):
      products = env['product.template'].search([('detailed_type', '=', 'service'), ('invoice_policy', '=', 'order'), ('service_type', '=', 'manual')])
  
      for product in products:
          product.service_type = 'timesheet'
          product._compute_service_policy()
  