import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__ from "react/jsx-runtime";
import "react";
import * as __WEBPACK_EXTERNAL_MODULE__application_index_mjs__ from "../../application/index.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__application_Plugin_mjs__ from "../../application/Plugin.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__schema_templates_index_mjs__ from "../../schema-templates/index.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__setting_layout_AdminSettings_mjs__ from "../setting-layout/AdminSettings.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__setting_layout_SettingsCenterDropdown_mjs__ from "../setting-layout/SettingsCenterDropdown.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__system_settings_index_mjs__ from "../system-settings/index.mjs";
import * as __WEBPACK_EXTERNAL_MODULE__PluginManager_mjs__ from "./PluginManager.mjs";
class PMPlugin extends __WEBPACK_EXTERNAL_MODULE__application_Plugin_mjs__.Plugin {
    async load() {
        this.addComponents();
        this.addRoutes();
        this.addSettings();
    }
    addSettings() {
        this.app.systemSettingsManager.add('business-components.ui-schema-storage', {
            title: '{{t("Block templates")}}',
            icon: 'LayoutOutlined',
            Component: __WEBPACK_EXTERNAL_MODULE__schema_templates_index_mjs__.BlockTemplatesPane,
            aclSnippet: 'pm.ui-schema-storage.block-templates'
        });
        this.app.systemSettingsManager.add('system-settings', {
            icon: 'SettingOutlined',
            title: '{{t("System settings")}}',
            Component: __WEBPACK_EXTERNAL_MODULE__system_settings_index_mjs__.SystemSettingsPane,
            aclSnippet: 'pm.system-settings.system-settings',
            sort: -100
        });
        this.app.systemSettingsManager.add('system-services.plugin-manager', {
            icon: 'ApiOutlined',
            title: '{{t("Plugin manager")}}',
            Component: __WEBPACK_EXTERNAL_MODULE__PluginManager_mjs__.PluginManager,
            aclSnippet: 'pm',
            sort: -90
        });
    }
    addComponents() {
        this.app.addComponents({
            SettingsCenterDropdown: __WEBPACK_EXTERNAL_MODULE__setting_layout_SettingsCenterDropdown_mjs__.SettingsCenterDropdown
        });
    }
    addRoutes() {
        this.app.router.add('admin-settings', {
            path: __WEBPACK_EXTERNAL_MODULE__application_index_mjs__.ADMIN_SETTINGS_PATH,
            element: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__setting_layout_AdminSettings_mjs__.AdminSettingsLayout, {})
        });
    }
}
const pm_rslib_entry_ = PMPlugin;
var __webpack_exports__AdminSettingsLayout = __WEBPACK_EXTERNAL_MODULE__setting_layout_AdminSettings_mjs__.AdminSettingsLayout;
var __webpack_exports__PluginManager = __WEBPACK_EXTERNAL_MODULE__PluginManager_mjs__.PluginManager;
var __webpack_exports__SettingsCenterContext = __WEBPACK_EXTERNAL_MODULE__setting_layout_AdminSettings_mjs__.SettingsCenterContext;
var __webpack_exports__SettingsCenterDropdown = __WEBPACK_EXTERNAL_MODULE__setting_layout_SettingsCenterDropdown_mjs__.SettingsCenterDropdown;
export { PMPlugin, pm_rslib_entry_ as default, __webpack_exports__AdminSettingsLayout as AdminSettingsLayout, __webpack_exports__PluginManager as PluginManager, __webpack_exports__SettingsCenterContext as SettingsCenterContext, __webpack_exports__SettingsCenterDropdown as SettingsCenterDropdown };
