[FIX] mrp_subcontracting: only import needed files
Follow the same behavior than project. Only import the code for the views. It's not a good idea to import all the backend since it's not needed and it could cause issue with extra features closes odoo/odoo#121669 closes odoo/odoo#119040 X-original-commit: 8f3f10731545f32d283772fc009733c1b43f536b Related: odoo/enterprise#41188 Related: odoo/enterprise#39987 Signed-off-by: William Henrotin (whe) <whe@odoo.com>
This commit is contained in:
committed by
William Henrotin
parent
bd98ef5944
commit
9a01c6a29c
@@ -37,8 +37,100 @@
|
||||
'mrp_subcontracting/static/src/components/**/*',
|
||||
],
|
||||
'mrp_subcontracting.webclient': [
|
||||
('include', 'web.assets_backend'),
|
||||
('remove', 'web/static/src/webclient/menus/*.js'),
|
||||
('include', 'web._assets_helpers'),
|
||||
('include', 'web._assets_backend_helpers'),
|
||||
|
||||
'web/static/src/scss/pre_variables.scss',
|
||||
'web/static/lib/bootstrap/scss/_variables.scss',
|
||||
|
||||
('include', 'web._assets_bootstrap'),
|
||||
|
||||
'base/static/src/css/modules.css',
|
||||
|
||||
'web/static/src/core/utils/transitions.scss',
|
||||
'web/static/src/core/**/*',
|
||||
'web/static/src/search/**/*',
|
||||
'web/static/src/views/*.js',
|
||||
'web/static/src/views/*.xml',
|
||||
'web/static/src/views/*.scss',
|
||||
'web/static/src/views/fields/**/*',
|
||||
'web/static/src/views/form/**/*',
|
||||
'web/static/src/views/kanban/**/*',
|
||||
'web/static/src/views/list/**/*',
|
||||
'web/static/src/views/view_button/**/*',
|
||||
'web/static/src/views/view_components/**/*',
|
||||
'web/static/src/views/view_dialogs/**/*',
|
||||
'web/static/src/views/widgets/**/*',
|
||||
'web/static/src/webclient/**/*',
|
||||
('remove', 'web/static/src/webclient/navbar/navbar.scss'), # already in assets_common
|
||||
('remove', 'web/static/src/webclient/clickbot/clickbot.js'), # lazy loaded
|
||||
('remove', 'web/static/src/views/form/button_box/*.scss'),
|
||||
|
||||
# remove the report code and whitelist only what's needed
|
||||
('remove', 'web/static/src/webclient/actions/reports/**/*'),
|
||||
'web/static/src/webclient/actions/reports/*.js',
|
||||
'web/static/src/webclient/actions/reports/*.xml',
|
||||
|
||||
'web/static/src/env.js',
|
||||
|
||||
'web/static/lib/jquery.scrollTo/jquery.scrollTo.js',
|
||||
'web/static/lib/py.js/lib/py.js',
|
||||
'web/static/lib/py.js/lib/py_extras.js',
|
||||
'web/static/lib/jquery.ba-bbq/jquery.ba-bbq.js',
|
||||
|
||||
'web/static/src/legacy/scss/fields.scss',
|
||||
'web/static/src/legacy/scss/views.scss',
|
||||
'web/static/src/legacy/scss/form_view.scss',
|
||||
'web/static/src/legacy/scss/list_view.scss',
|
||||
|
||||
'base/static/src/scss/res_partner.scss',
|
||||
|
||||
# Form style should be computed before
|
||||
'web/static/src/views/form/button_box/*.scss',
|
||||
|
||||
'web/static/src/legacy/action_adapters.js',
|
||||
'web/static/src/legacy/legacy_service_provider.js',
|
||||
'web/static/src/legacy/legacy_client_actions.js',
|
||||
'web/static/src/legacy/legacy_dialog.js',
|
||||
'web/static/src/legacy/legacy_load_views.js',
|
||||
'web/static/src/legacy/legacy_promise_error_handler.js',
|
||||
'web/static/src/legacy/legacy_rpc_error_handler.js',
|
||||
'web/static/src/legacy/root_widget.js',
|
||||
'web/static/src/legacy/legacy_setup.js',
|
||||
'web/static/src/legacy/root_widget.js',
|
||||
'web/static/src/legacy/backend_utils.js',
|
||||
'web/static/src/legacy/utils.js',
|
||||
'web/static/src/legacy/web_client.js',
|
||||
'web/static/src/legacy/js/chrome/*',
|
||||
'web/static/src/legacy/js/components/*',
|
||||
'web/static/src/legacy/js/control_panel/*',
|
||||
'web/static/src/legacy/js/core/domain.js',
|
||||
'web/static/src/legacy/js/core/mvc.js',
|
||||
'web/static/src/legacy/js/core/py_utils.js',
|
||||
'web/static/src/legacy/js/core/context.js',
|
||||
'web/static/src/legacy/js/core/misc.js',
|
||||
'web/static/src/legacy/js/fields/abstract_field.js',
|
||||
'web/static/src/legacy/js/fields/basic_fields.js',
|
||||
'web/static/src/legacy/js/fields/field_utils.js',
|
||||
'web/static/src/legacy/js/fields/relational_fields.js',
|
||||
'web/static/src/legacy/js/fields/field_registry.js',
|
||||
'web/static/src/legacy/js/fields/field_utils.js',
|
||||
'web/static/src/legacy/js/views/abstract_model.js',
|
||||
'web/static/src/legacy/js/views/basic/basic_model.js',
|
||||
'web/static/src/legacy/js/views/view_utils.js',
|
||||
'web/static/src/legacy/js/services/data_manager.js',
|
||||
'web/static/src/legacy/js/services/session.js',
|
||||
'web/static/src/legacy/js/tools/tools.js',
|
||||
'web/static/src/legacy/js/views/**/*',
|
||||
'web/static/src/legacy/js/widgets/date_picker.js',
|
||||
'web/static/src/legacy/js/widgets/domain_selector_dialog.js',
|
||||
'web/static/src/legacy/js/widgets/domain_selector.js',
|
||||
'web/static/src/legacy/js/widgets/model_field_selector.js',
|
||||
'web/static/src/legacy/js/widgets/model_field_selector_popover.js',
|
||||
'web/static/src/legacy/js/env.js',
|
||||
'web/static/src/legacy/js/owl_compatibility.js',
|
||||
'web/static/src/legacy/pseudo_web_client.js',
|
||||
|
||||
'mrp_subcontracting/static/src/subcontracting_portal/*',
|
||||
'web/static/src/start.js',
|
||||
'web/static/src/legacy/legacy_setup.js',
|
||||
|
||||
@@ -1,5 +1,29 @@
|
||||
/** @odoo-module **/
|
||||
import { startWebClient } from '@web/start';
|
||||
import { SubcontractingPortalWebClient } from './subcontracting_portal';
|
||||
import { startWebClient } from "@web/start";
|
||||
import { SubcontractingPortalWebClient } from "./subcontracting_portal";
|
||||
import { registry } from "@web/core/registry";
|
||||
|
||||
const servicesToRemove = ["menu"];
|
||||
|
||||
const servicesRegistry = registry.category("services");
|
||||
|
||||
/**
|
||||
* Remove services unsued in subcontracting portal feature.
|
||||
*
|
||||
* This function is used before starting the webclient
|
||||
* to remove the services that we don't want in the registry.
|
||||
* In this case, the home_menu service is removed via the assets
|
||||
* but the services in web_studio depends on this service and are not removed.
|
||||
* Since this module has not web_studio module in this dependencies, this function will remove
|
||||
* the services that we don't want instead of create a new module just to remove the services in assets.
|
||||
*/
|
||||
export function removeServices() {
|
||||
for (const service of servicesToRemove) {
|
||||
if (servicesRegistry.contains(service)) {
|
||||
servicesRegistry.remove(service);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
removeServices();
|
||||
startWebClient(SubcontractingPortalWebClient);
|
||||
|
||||
Reference in New Issue
Block a user