@umbraco-cms/backoffice 14.0.0-d87d656d → 14.0.0-d9a74398
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -6
- package/dist-cms/apps/app/app.element.d.ts +0 -1
- package/dist-cms/apps/app/app.element.js +21 -1
- package/dist-cms/apps/backoffice/backoffice.context.d.ts +5 -1
- package/dist-cms/apps/backoffice/backoffice.context.js +13 -5
- package/dist-cms/apps/backoffice/backoffice.element.d.ts +0 -1
- package/dist-cms/apps/backoffice/backoffice.element.js +4 -5
- package/dist-cms/apps/backoffice/components/backoffice-header-sections.element.d.ts +0 -2
- package/dist-cms/apps/backoffice/components/backoffice-header-sections.element.js +6 -13
- package/dist-cms/apps/backoffice/components/backoffice-main.element.js +11 -9
- package/dist-cms/apps/backoffice/{extension.controller.js → extension-initializer.controller.js} +2 -0
- package/dist-cms/assets/lang/da-dk.d.ts +3 -0
- package/dist-cms/assets/lang/da-dk.js +2989 -0
- package/dist-cms/assets/lang/da-dk.ts +3246 -0
- package/dist-cms/assets/lang/en-us.d.ts +3 -0
- package/dist-cms/assets/lang/en-us.js +2966 -0
- package/dist-cms/assets/lang/en-us.ts +3219 -0
- package/dist-cms/css/uui-css.css +13 -5
- package/dist-cms/custom-elements.json +115 -68
- package/dist-cms/external/backend-api/index.js +1 -1
- package/dist-cms/external/lit/index.js +27 -27
- package/dist-cms/external/monaco-editor/{abap-7ad4f8f0.js → abap-b029dff1.js} +1 -1
- package/dist-cms/external/monaco-editor/{apex-30597c49.js → apex-039bfc5f.js} +1 -1
- package/dist-cms/external/monaco-editor/assets/{bundle-a4f90d1d.css → bundle-b9e43664.css} +25 -13
- package/dist-cms/external/monaco-editor/{azcli-67c34a04.js → azcli-f1f7c576.js} +1 -1
- package/dist-cms/external/monaco-editor/{bat-b8f4738b.js → bat-86aea46a.js} +1 -1
- package/dist-cms/external/monaco-editor/{bicep-b104b38b.js → bicep-75c0c4d5.js} +1 -1
- package/dist-cms/external/monaco-editor/{cameligo-001d1ded.js → cameligo-8043f913.js} +1 -1
- package/dist-cms/external/monaco-editor/{clojure-fa9652a1.js → clojure-73642b02.js} +1 -1
- package/dist-cms/external/monaco-editor/{coffee-b69a8315.js → coffee-a18badcf.js} +1 -1
- package/dist-cms/external/monaco-editor/{cpp-8053752f.js → cpp-4034161e.js} +1 -1
- package/dist-cms/external/monaco-editor/{csharp-886041a3.js → csharp-49cbf0d2.js} +1 -1
- package/dist-cms/external/monaco-editor/{csp-e846bce6.js → csp-d207cac4.js} +1 -1
- package/dist-cms/external/monaco-editor/{css-50032e5e.js → css-74326df0.js} +1 -1
- package/dist-cms/external/monaco-editor/{cssMode-c0406684.js → cssMode-57ec49ea.js} +2 -2
- package/dist-cms/external/monaco-editor/{cypher-6f93a845.js → cypher-49f5f839.js} +1 -1
- package/dist-cms/external/monaco-editor/{dart-14284236.js → dart-84b7c6b4.js} +1 -1
- package/dist-cms/external/monaco-editor/{dockerfile-e9935eb4.js → dockerfile-bbf114b2.js} +1 -1
- package/dist-cms/external/monaco-editor/{ecl-9c89f204.js → ecl-15840f49.js} +1 -1
- package/dist-cms/external/monaco-editor/{elixir-ca8bf661.js → elixir-e479e18e.js} +2 -2
- package/dist-cms/external/monaco-editor/{flow9-ac147227.js → flow9-42a61225.js} +1 -1
- package/dist-cms/external/monaco-editor/{freemarker2-793b7402.js → freemarker2-a72b9c0e.js} +2 -2
- package/dist-cms/external/monaco-editor/{fsharp-8eaad024.js → fsharp-8abe6da0.js} +1 -1
- package/dist-cms/external/monaco-editor/{go-05529e2e.js → go-8759e9f7.js} +1 -1
- package/dist-cms/external/monaco-editor/{graphql-8f5b3fdd.js → graphql-387d549c.js} +1 -1
- package/dist-cms/external/monaco-editor/{handlebars-aaa2fd96.js → handlebars-8fc61d07.js} +2 -2
- package/dist-cms/external/monaco-editor/{hcl-9e201a51.js → hcl-a88f331a.js} +1 -1
- package/dist-cms/external/monaco-editor/{html-1194c0aa.js → html-4320ed19.js} +2 -2
- package/dist-cms/external/monaco-editor/{htmlMode-36df69c6.js → htmlMode-95c2e58e.js} +2 -2
- package/dist-cms/external/monaco-editor/{index-7368f3e3.js → index-e4ee5993.js} +359 -354
- package/dist-cms/external/monaco-editor/index.js +1 -1
- package/dist-cms/external/monaco-editor/{ini-31a5619d.js → ini-18bf1153.js} +1 -1
- package/dist-cms/external/monaco-editor/{java-8c6e1ae8.js → java-000a6283.js} +1 -1
- package/dist-cms/external/monaco-editor/{javascript-86205709.js → javascript-13505434.js} +2 -2
- package/dist-cms/external/monaco-editor/{jsonMode-f663e935.js → jsonMode-1d541b8e.js} +2 -2
- package/dist-cms/external/monaco-editor/{julia-fbb2af47.js → julia-9a5df632.js} +1 -1
- package/dist-cms/external/monaco-editor/{kotlin-bfa96180.js → kotlin-06ee8898.js} +1 -1
- package/dist-cms/external/monaco-editor/{less-0b6a8ff1.js → less-dd86a68c.js} +1 -1
- package/dist-cms/external/monaco-editor/{lexon-585e5248.js → lexon-8d4b0444.js} +1 -1
- package/dist-cms/external/monaco-editor/{liquid-37adc07a.js → liquid-7aa20dd8.js} +2 -2
- package/dist-cms/external/monaco-editor/{lua-f6c17885.js → lua-9adddcd9.js} +1 -1
- package/dist-cms/external/monaco-editor/{m3-1b6456c5.js → m3-aa2dcf72.js} +1 -1
- package/dist-cms/external/monaco-editor/{markdown-7bc251f9.js → markdown-0f073a3a.js} +1 -1
- package/dist-cms/external/monaco-editor/mdx-8a1e4ae9.js +6 -0
- package/dist-cms/external/monaco-editor/{mips-2df76781.js → mips-bdd96c5a.js} +1 -1
- package/dist-cms/external/monaco-editor/{msdax-8c38e8b4.js → msdax-1ac55115.js} +1 -1
- package/dist-cms/external/monaco-editor/{mysql-abbb9ca3.js → mysql-b530c105.js} +1 -1
- package/dist-cms/external/monaco-editor/{objective-c-efbfd08b.js → objective-c-951ded7b.js} +1 -1
- package/dist-cms/external/monaco-editor/{pascal-08abee72.js → pascal-7442fd46.js} +1 -1
- package/dist-cms/external/monaco-editor/{pascaligo-200db0cf.js → pascaligo-385edc0e.js} +1 -1
- package/dist-cms/external/monaco-editor/{perl-079789ee.js → perl-d5fb326c.js} +1 -1
- package/dist-cms/external/monaco-editor/{pgsql-efd093d4.js → pgsql-2d7db25a.js} +1 -1
- package/dist-cms/external/monaco-editor/{php-75c530f2.js → php-1daff147.js} +1 -1
- package/dist-cms/external/monaco-editor/{pla-a55a2765.js → pla-1b3e1614.js} +1 -1
- package/dist-cms/external/monaco-editor/{postiats-6098f37b.js → postiats-9db13649.js} +1 -1
- package/dist-cms/external/monaco-editor/{powerquery-949bb7fe.js → powerquery-4c428232.js} +1 -1
- package/dist-cms/external/monaco-editor/{powershell-7e550b21.js → powershell-d3380668.js} +1 -1
- package/dist-cms/external/monaco-editor/{protobuf-25a4d695.js → protobuf-941cf3e8.js} +1 -1
- package/dist-cms/external/monaco-editor/{pug-f8c9f493.js → pug-cfe384ef.js} +1 -1
- package/dist-cms/external/monaco-editor/{python-78a47148.js → python-b84d078b.js} +2 -2
- package/dist-cms/external/monaco-editor/{qsharp-c4b94317.js → qsharp-e125d03f.js} +1 -1
- package/dist-cms/external/monaco-editor/{r-614353db.js → r-e0a01d4f.js} +1 -1
- package/dist-cms/external/monaco-editor/{razor-5de9ce12.js → razor-96e08c0a.js} +2 -2
- package/dist-cms/external/monaco-editor/{redis-fb089f4d.js → redis-d0a12fea.js} +1 -1
- package/dist-cms/external/monaco-editor/{redshift-a620fcb0.js → redshift-a163b94a.js} +1 -1
- package/dist-cms/external/monaco-editor/{restructuredtext-7ab09fcf.js → restructuredtext-5a906e1a.js} +1 -1
- package/dist-cms/external/monaco-editor/{ruby-922be722.js → ruby-05b021bf.js} +1 -1
- package/dist-cms/external/monaco-editor/{rust-23e08578.js → rust-3d80982c.js} +1 -1
- package/dist-cms/external/monaco-editor/{sb-ccceec0f.js → sb-2020a5af.js} +1 -1
- package/dist-cms/external/monaco-editor/{scala-0535664d.js → scala-54469b4b.js} +1 -1
- package/dist-cms/external/monaco-editor/{scheme-dba621eb.js → scheme-ff6e5671.js} +1 -1
- package/dist-cms/external/monaco-editor/{scss-28539a11.js → scss-77902feb.js} +1 -1
- package/dist-cms/external/monaco-editor/{shell-5b92a834.js → shell-3c06def6.js} +1 -1
- package/dist-cms/external/monaco-editor/{solidity-f63d6049.js → solidity-3d59d6a7.js} +1 -1
- package/dist-cms/external/monaco-editor/{sophia-12e9ad90.js → sophia-12eb7ba8.js} +1 -1
- package/dist-cms/external/monaco-editor/{sparql-dedb74aa.js → sparql-e42fb28a.js} +1 -1
- package/dist-cms/external/monaco-editor/{sql-975a69d7.js → sql-d30fd9fd.js} +1 -1
- package/dist-cms/external/monaco-editor/{st-1904ae33.js → st-ba2e774a.js} +2 -2
- package/dist-cms/external/monaco-editor/{swift-e180a143.js → swift-f0a706dd.js} +1 -1
- package/dist-cms/external/monaco-editor/{systemverilog-c5592fac.js → systemverilog-0cfd4211.js} +1 -1
- package/dist-cms/external/monaco-editor/{tcl-996f4ac7.js → tcl-7df3c0c5.js} +1 -1
- package/dist-cms/external/monaco-editor/{tsMode-f4618e87.js → tsMode-4e2b13b8.js} +2 -2
- package/dist-cms/external/monaco-editor/twig-f894aab2.js +6 -0
- package/dist-cms/external/monaco-editor/{typescript-efea739f.js → typescript-6571f86d.js} +2 -2
- package/dist-cms/external/monaco-editor/{vb-ad68fa9a.js → vb-39a025f4.js} +1 -1
- package/dist-cms/external/monaco-editor/{wgsl-5ee7b1ca.js → wgsl-ea93d538.js} +1 -1
- package/dist-cms/external/monaco-editor/{xml-12b9ace3.js → xml-265c28d1.js} +2 -2
- package/dist-cms/external/monaco-editor/{yaml-65e08cff.js → yaml-cbd1aab5.js} +2 -2
- package/dist-cms/external/rxjs/index.js +2 -2
- package/dist-cms/external/tinymce/index.js +22 -22
- package/dist-cms/external/uui/index.js +470 -292
- package/dist-cms/libs/class-api/class.mixin.js +1 -1
- package/dist-cms/libs/context-api/consume/context-consumer.controller.js +1 -3
- package/dist-cms/libs/context-api/consume/context-consumer.d.ts +0 -1
- package/dist-cms/libs/context-api/consume/context-consumer.js +36 -6
- package/dist-cms/libs/context-api/provide/context-provide.event.d.ts +21 -0
- package/dist-cms/libs/context-api/provide/context-provide.event.js +17 -0
- package/dist-cms/libs/context-api/provide/context-provider.controller.js +1 -1
- package/dist-cms/libs/context-api/provide/context-provider.d.ts +0 -6
- package/dist-cms/libs/context-api/provide/context-provider.js +18 -6
- package/dist-cms/libs/controller-api/controller-host-base.mixin.js +1 -0
- package/dist-cms/libs/controller-api/controller-host-element.mixin.d.ts +9 -3
- package/dist-cms/libs/element-api/element.mixin.d.ts +9 -2
- package/dist-cms/libs/element-api/element.mixin.js +6 -1
- package/dist-cms/libs/extension-api/condition/condition-controller-arguments.type.d.ts +7 -0
- package/dist-cms/libs/extension-api/condition/condition-controller-arguments.type.js +1 -0
- package/dist-cms/libs/extension-api/condition/extension-condition.interface.d.ts +6 -0
- package/dist-cms/libs/extension-api/condition/extension-condition.interface.js +1 -0
- package/dist-cms/libs/extension-api/condition/index.d.ts +2 -0
- package/dist-cms/libs/extension-api/condition/index.js +2 -0
- package/dist-cms/libs/extension-api/controller/base-extension-controller.d.ts +19 -0
- package/dist-cms/libs/extension-api/controller/base-extension-controller.js +178 -0
- package/dist-cms/libs/extension-api/controller/base-extensions-controller.d.ts +19 -0
- package/dist-cms/libs/extension-api/controller/base-extensions-controller.js +112 -0
- package/dist-cms/libs/extension-api/controller/extension-element-controller.d.ts +20 -0
- package/dist-cms/libs/extension-api/controller/extension-element-controller.js +82 -0
- package/dist-cms/libs/extension-api/controller/extension-manifest-controller.d.ts +9 -0
- package/dist-cms/libs/extension-api/controller/extension-manifest-controller.js +13 -0
- package/dist-cms/libs/extension-api/controller/extensions-element-controller.d.ts +13 -0
- package/dist-cms/libs/extension-api/controller/extensions-element-controller.js +29 -0
- package/dist-cms/libs/extension-api/controller/extensions-manifest-controller.d.ts +11 -0
- package/dist-cms/libs/extension-api/controller/extensions-manifest-controller.js +16 -0
- package/dist-cms/libs/extension-api/controller/index.d.ts +6 -0
- package/dist-cms/libs/extension-api/controller/index.js +6 -0
- package/dist-cms/libs/extension-api/index.d.ts +3 -1
- package/dist-cms/libs/extension-api/index.js +3 -1
- package/dist-cms/libs/extension-api/registry/extension.registry.d.ts +3 -0
- package/dist-cms/libs/extension-api/registry/extension.registry.js +82 -14
- package/dist-cms/libs/extension-api/types.d.ts +45 -8
- package/dist-cms/libs/localization-api/index.d.ts +3 -0
- package/dist-cms/libs/localization-api/index.js +3 -0
- package/dist-cms/libs/localization-api/localize.controller.d.ts +47 -0
- package/dist-cms/libs/localization-api/localize.controller.js +123 -0
- package/dist-cms/libs/localization-api/manager.d.ts +18 -0
- package/dist-cms/libs/localization-api/manager.js +40 -0
- package/dist-cms/libs/localization-api/types/translation.d.ts +3 -0
- package/dist-cms/libs/localization-api/types/translation.js +1 -0
- package/dist-cms/libs/observable-api/class-state.d.ts +2 -3
- package/dist-cms/libs/observable-api/observer.controller.d.ts +4 -3
- package/dist-cms/libs/observable-api/observer.controller.js +9 -2
- package/dist-cms/libs/observable-api/observer.d.ts +13 -2
- package/dist-cms/libs/observable-api/observer.js +32 -4
- package/dist-cms/mocks/data/data-type.data.js +1 -28
- package/dist-cms/mocks/data/document-type.data.js +2 -59
- package/dist-cms/mocks/data/log-viewer.data.d.ts +4 -4
- package/dist-cms/mocks/data/log-viewer.data.js +4 -4
- package/dist-cms/mocks/handlers/manifests.handlers.js +1 -1
- package/dist-cms/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.js +1 -1
- package/dist-cms/packages/core/components/extension-slot/extension-slot.element.d.ts +38 -14
- package/dist-cms/packages/core/components/extension-slot/extension-slot.element.js +81 -71
- package/dist-cms/packages/core/components/property-type-based-property/property-type-based-property.element.js +2 -2
- package/dist-cms/packages/core/content-type/content-type-structure-manager.class.js +2 -2
- package/dist-cms/packages/core/entity-action/entity-action-list.element.d.ts +5 -5
- package/dist-cms/packages/core/entity-action/entity-action-list.element.js +17 -21
- package/dist-cms/packages/core/extension-registry/conditions/index.d.ts +1 -0
- package/dist-cms/packages/core/extension-registry/conditions/index.js +4 -0
- package/dist-cms/packages/core/extension-registry/conditions/manifests.d.ts +1 -0
- package/dist-cms/packages/core/extension-registry/conditions/manifests.js +3 -0
- package/dist-cms/packages/core/extension-registry/conditions/menu-alias.condition.d.ts +12 -0
- package/dist-cms/packages/core/extension-registry/conditions/menu-alias.condition.js +23 -0
- package/dist-cms/packages/core/extension-registry/conditions/section-alias.condition.d.ts +18 -0
- package/dist-cms/packages/core/extension-registry/conditions/section-alias.condition.js +23 -0
- package/dist-cms/packages/core/extension-registry/conditions/switch.condition.d.ts +19 -0
- package/dist-cms/packages/core/extension-registry/conditions/switch.condition.js +38 -0
- package/dist-cms/packages/core/extension-registry/conditions/types.d.ts +5 -0
- package/dist-cms/packages/core/extension-registry/conditions/types.js +1 -0
- package/dist-cms/packages/core/extension-registry/index.d.ts +3 -2
- package/dist-cms/packages/core/extension-registry/index.js +3 -2
- package/dist-cms/packages/core/extension-registry/models/dashboard.model.d.ts +3 -16
- package/dist-cms/packages/core/extension-registry/models/dashboard.model.js +5 -0
- package/dist-cms/packages/core/extension-registry/models/entity-action.model.d.ts +2 -5
- package/dist-cms/packages/core/extension-registry/models/index.d.ts +4 -2
- package/dist-cms/packages/core/extension-registry/models/index.js +1 -0
- package/dist-cms/packages/core/extension-registry/models/menu-item.model.d.ts +1 -7
- package/dist-cms/packages/core/extension-registry/models/property-action.model.d.ts +5 -3
- package/dist-cms/packages/core/extension-registry/models/property-editor.model.d.ts +21 -2
- package/dist-cms/packages/core/extension-registry/models/section-sidebar-app.model.d.ts +3 -6
- package/dist-cms/packages/core/extension-registry/models/section-view.model.d.ts +3 -5
- package/dist-cms/packages/core/extension-registry/models/section.model.d.ts +2 -2
- package/dist-cms/packages/core/extension-registry/models/translations.model.d.ts +40 -0
- package/dist-cms/packages/core/extension-registry/models/translations.model.js +1 -0
- package/dist-cms/packages/core/extension-registry/models/tree-item.model.d.ts +2 -2
- package/dist-cms/packages/core/extension-registry/models/workspace-action.model.d.ts +4 -7
- package/dist-cms/packages/core/extension-registry/models/workspace-editor-view.model.d.ts +3 -6
- package/dist-cms/packages/core/extension-registry/models/workspace-view-collection.model.d.ts +3 -29
- package/dist-cms/packages/core/extension-registry/{class-extensions-initializer.d.ts → multi-extensions-class-initializer.d.ts} +2 -2
- package/dist-cms/packages/core/extension-registry/{class-extensions-initializer.js → multi-extensions-class-initializer.js} +10 -2
- package/dist-cms/packages/core/index.d.ts +1 -0
- package/dist-cms/packages/core/index.js +7 -2
- package/dist-cms/packages/core/localization/index.d.ts +2 -0
- package/dist-cms/packages/core/localization/index.js +2 -0
- package/dist-cms/packages/core/localization/localize.element.d.ts +34 -0
- package/dist-cms/packages/core/localization/localize.element.js +64 -0
- package/dist-cms/packages/core/localization/manifests.d.ts +2 -0
- package/dist-cms/packages/core/localization/manifests.js +23 -0
- package/dist-cms/packages/core/localization/registry/translation.registry.d.ts +17 -0
- package/dist-cms/packages/core/localization/registry/translation.registry.js +79 -0
- package/dist-cms/packages/core/menu/index.d.ts +1 -0
- package/dist-cms/packages/core/menu/index.js +1 -0
- package/dist-cms/packages/core/menu/menu.context.d.ts +9 -0
- package/dist-cms/packages/core/menu/menu.context.js +14 -0
- package/dist-cms/packages/core/menu/menu.element.d.ts +1 -0
- package/dist-cms/packages/core/menu/menu.element.js +6 -2
- package/dist-cms/packages/core/modal/common/folder/folder-modal.element.d.ts +2 -2
- package/dist-cms/packages/core/modal/common/property-settings/property-settings-modal.element.js +1 -0
- package/dist-cms/packages/core/modal/token/folder-modal.token.d.ts +2 -2
- package/dist-cms/packages/core/property-action/manifests.js +2 -2
- package/dist-cms/packages/core/property-action/shared/property-action-menu/property-action-menu.element.js +2 -1
- package/dist-cms/packages/core/property-editor/index.d.ts +1 -1
- package/dist-cms/packages/core/property-editor/index.js +1 -1
- package/dist-cms/packages/core/property-editor/manifests.d.ts +1 -1
- package/dist-cms/packages/core/property-editor/schemas/manifests.js +0 -2
- package/dist-cms/packages/core/property-editor/uis/icon-picker/manifests.js +1 -1
- package/dist-cms/packages/core/property-editor/uis/value-type/manifests.js +0 -1
- package/dist-cms/packages/core/section/index.d.ts +1 -1
- package/dist-cms/packages/core/section/index.js +1 -1
- package/dist-cms/packages/core/section/section-default.element.d.ts +1 -1
- package/dist-cms/packages/core/section/section-default.element.js +13 -21
- package/dist-cms/packages/core/section/section-main-views/index.d.ts +1 -0
- package/dist-cms/packages/core/section/section-main-views/index.js +1 -0
- package/dist-cms/packages/core/section/section-main-views/section-main-views.element.d.ts +19 -0
- package/dist-cms/packages/core/section/{section-views/section-views.element.js → section-main-views/section-main-views.element.js} +20 -48
- package/dist-cms/packages/core/section/section-sidebar-context-menu/section-sidebar-context-menu.element.js +18 -5
- package/dist-cms/packages/core/section/section-sidebar-menu/section-sidebar-menu.element.js +3 -4
- package/dist-cms/packages/core/section/section-sidebar-menu-with-entity-actions/section-sidebar-menu-with-entity-actions.element.js +2 -2
- package/dist-cms/packages/core/sorter/sorter.controller.js +6 -6
- package/dist-cms/packages/core/sorter/stories/test-sorter-controller.element.d.ts +13 -0
- package/dist-cms/packages/core/sorter/stories/test-sorter-controller.element.js +92 -0
- package/dist-cms/packages/core/tree/tree-item/tree-item.context.interface.d.ts +0 -2
- package/dist-cms/packages/core/tree/tree-item/tree-item.element.js +1 -1
- package/dist-cms/packages/core/tree/tree-item-base/tree-item-base.context.d.ts +3 -4
- package/dist-cms/packages/core/tree/tree-item-base/tree-item-base.context.js +26 -30
- package/dist-cms/packages/core/workspace/index.d.ts +1 -0
- package/dist-cms/packages/core/workspace/index.js +1 -0
- package/dist-cms/packages/core/workspace/manifests.d.ts +1 -1
- package/dist-cms/packages/core/workspace/manifests.js +2 -1
- package/dist-cms/packages/core/workspace/workspace-action/workspace-action-base.js +2 -2
- package/dist-cms/packages/core/workspace/workspace-action-menu/workspace-action-menu.element.js +8 -4
- package/dist-cms/packages/core/workspace/workspace-alias.condition.d.ts +18 -0
- package/dist-cms/packages/core/workspace/workspace-alias.condition.js +21 -0
- package/dist-cms/packages/core/workspace/workspace-content/views/collection/workspace-view-collection.element.js +2 -2
- package/dist-cms/packages/core/workspace/workspace-context/index.d.ts +1 -1
- package/dist-cms/packages/core/workspace/workspace-context/index.js +1 -1
- package/dist-cms/packages/core/workspace/workspace-context/workspace-context.d.ts +2 -1
- package/dist-cms/packages/core/workspace/workspace-context/workspace-context.interface.d.ts +2 -2
- package/dist-cms/packages/core/workspace/workspace-context/workspace-context.js +4 -3
- package/dist-cms/packages/core/workspace/workspace-context/workspace-context.token.d.ts +4 -0
- package/dist-cms/packages/core/workspace/workspace-context/workspace-context.token.js +2 -0
- package/dist-cms/packages/core/workspace/workspace-context/workspace-entity-context.interface.d.ts +0 -1
- package/dist-cms/packages/core/workspace/workspace-editor/workspace-editor.element.d.ts +4 -8
- package/dist-cms/packages/core/workspace/workspace-editor/workspace-editor.element.js +11 -39
- package/dist-cms/packages/core/workspace/workspace-footer/workspace-footer.element.d.ts +0 -10
- package/dist-cms/packages/core/workspace/workspace-footer/workspace-footer.element.js +1 -23
- package/dist-cms/packages/core/workspace/workspace-property/workspace-property.context.js +2 -2
- package/dist-cms/packages/core/workspace/workspace-property/workspace-property.element.js +4 -0
- package/dist-cms/packages/core/workspace/workspace-variant/workspace-variant.context.js +2 -2
- package/dist-cms/packages/dictionary/dashboards/dictionary/dashboard-translation-dictionary.element.js +2 -2
- package/dist-cms/packages/dictionary/dictionary/entity-actions/create/create.action.js +1 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/export/export.action.d.ts +0 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/export/export.action.js +0 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/import/import.action.d.ts +0 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/import/import.action.js +0 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/manifests.d.ts +1 -1
- package/dist-cms/packages/dictionary/dictionary/entity-actions/manifests.js +0 -12
- package/dist-cms/packages/dictionary/dictionary/manifests.d.ts +1 -1
- package/dist-cms/packages/dictionary/dictionary/menu-item/manifests.js +0 -2
- package/dist-cms/packages/dictionary/dictionary/tree/manifests.js +1 -1
- package/dist-cms/packages/dictionary/dictionary/workspace/dictionary-workspace-editor.element.js +3 -3
- package/dist-cms/packages/dictionary/dictionary/workspace/dictionary-workspace.context.js +1 -1
- package/dist-cms/packages/dictionary/dictionary/workspace/manifests.js +13 -8
- package/dist-cms/packages/dictionary/dictionary/workspace/views/editor/workspace-view-dictionary-editor.element.js +2 -2
- package/dist-cms/packages/dictionary/manifests.d.ts +1 -1
- package/dist-cms/packages/dictionary/section.manifest.d.ts +1 -1
- package/dist-cms/packages/dictionary/section.manifest.js +12 -6
- package/dist-cms/packages/documents/dashboards/manifests.js +6 -3
- package/dist-cms/packages/documents/document-blueprints/menu-item/manifests.js +0 -2
- package/dist-cms/packages/documents/document-types/entity-actions/create/manifests.js +0 -2
- package/dist-cms/packages/documents/document-types/entity-actions/manifests.js +0 -8
- package/dist-cms/packages/documents/document-types/menu-item/manifests.js +0 -2
- package/dist-cms/packages/documents/document-types/tree/manifests.js +1 -1
- package/dist-cms/packages/documents/document-types/workspace/document-type-workspace-editor.element.js +7 -6
- package/dist-cms/packages/documents/document-types/workspace/document-type-workspace.context.js +1 -1
- package/dist-cms/packages/documents/document-types/workspace/manifests.js +30 -15
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit-properties.element.js +9 -7
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit-property.element.js +10 -5
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit-tab.element.js +12 -6
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit.element.d.ts +3 -0
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit.element.js +143 -45
- package/dist-cms/packages/documents/document-types/workspace/views/settings/document-type-workspace-view-settings.element.js +2 -2
- package/dist-cms/packages/documents/document-types/workspace/views/structure/document-type-workspace-view-structure.element.js +6 -6
- package/dist-cms/packages/documents/document-types/workspace/views/templates/document-type-workspace-view-templates.element.js +2 -2
- package/dist-cms/packages/documents/documents/entity-actions/manifests.d.ts +1 -1
- package/dist-cms/packages/documents/documents/entity-actions/manifests.js +0 -24
- package/dist-cms/packages/documents/documents/menu-item/manifests.js +0 -2
- package/dist-cms/packages/documents/documents/tree/manifests.js +1 -1
- package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.context.d.ts +3 -3
- package/dist-cms/packages/documents/documents/workspace/document-workspace-editor.element.js +2 -2
- package/dist-cms/packages/documents/documents/workspace/document-workspace-split-view.element.js +2 -2
- package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +1 -1
- package/dist-cms/packages/documents/documents/workspace/manifests.js +36 -21
- package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.js +2 -2
- package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-tab.element.js +2 -2
- package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit.element.js +3 -3
- package/dist-cms/packages/documents/documents/workspace/views/info/document-info-workspace-view.element.js +2 -2
- package/dist-cms/packages/documents/section.manifests.js +6 -3
- package/dist-cms/packages/media/manifests.d.ts +1 -1
- package/dist-cms/packages/media/media/entity-actions/manifests.js +0 -2
- package/dist-cms/packages/media/media/manifests.d.ts +1 -1
- package/dist-cms/packages/media/media/menu-item/manifests.js +0 -2
- package/dist-cms/packages/media/media/tree/manifests.js +1 -1
- package/dist-cms/packages/media/media/workspace/manifests.js +24 -12
- package/dist-cms/packages/media/media/workspace/media-workspace-editor.element.js +2 -2
- package/dist-cms/packages/media/media/workspace/media-workspace.context.js +1 -1
- package/dist-cms/packages/media/media/workspace/media-workspace.element.d.ts +1 -0
- package/dist-cms/packages/media/media/workspace/media-workspace.element.js +1 -0
- package/dist-cms/packages/media/media-types/entity-actions/manifests.js +0 -10
- package/dist-cms/packages/media/media-types/manifests.d.ts +1 -1
- package/dist-cms/packages/media/media-types/menu-item/manifests.js +0 -2
- package/dist-cms/packages/media/media-types/tree/manifests.js +1 -1
- package/dist-cms/packages/media/media-types/workspace/media-type-workspace-editor.element.js +2 -2
- package/dist-cms/packages/media/media-types/workspace/media-type-workspace.context.js +1 -1
- package/dist-cms/packages/media/section.manifests.d.ts +1 -1
- package/dist-cms/packages/media/section.manifests.js +7 -3
- package/dist-cms/packages/members/manifests.d.ts +1 -1
- package/dist-cms/packages/members/member-groups/entity-actions/manifests.js +0 -2
- package/dist-cms/packages/members/member-groups/manifests.d.ts +1 -1
- package/dist-cms/packages/members/member-groups/menu-item/manifests.js +0 -2
- package/dist-cms/packages/members/member-groups/tree/manifests.js +1 -1
- package/dist-cms/packages/members/member-groups/workspace/manifests.js +12 -6
- package/dist-cms/packages/members/member-groups/workspace/member-group-workspace-editor.element.js +2 -2
- package/dist-cms/packages/members/member-groups/workspace/member-group-workspace.context.js +1 -1
- package/dist-cms/packages/members/member-groups/workspace/views/info/workspace-view-member-group-info.element.js +2 -2
- package/dist-cms/packages/members/member-types/entity-actions/manifests.js +0 -2
- package/dist-cms/packages/members/member-types/manifests.d.ts +1 -1
- package/dist-cms/packages/members/member-types/menu-item/manifests.js +0 -2
- package/dist-cms/packages/members/member-types/tree/manifests.js +1 -1
- package/dist-cms/packages/members/member-types/workspace/member-type-workspace.context.js +1 -1
- package/dist-cms/packages/members/member-types/workspace/member-type-workspace.element.d.ts +1 -0
- package/dist-cms/packages/members/member-types/workspace/member-type-workspace.element.js +1 -0
- package/dist-cms/packages/members/members/entity-actions/manifests.js +0 -2
- package/dist-cms/packages/members/members/manifests.d.ts +1 -1
- package/dist-cms/packages/members/members/menu-item/manifests.js +0 -2
- package/dist-cms/packages/members/members/tree/manifests.js +1 -1
- package/dist-cms/packages/members/members/workspace/member-workspace.context.js +1 -1
- package/dist-cms/packages/members/section.manifests.d.ts +1 -1
- package/dist-cms/packages/members/section.manifests.js +12 -6
- package/dist-cms/packages/packages/package-section/manifests.js +18 -9
- package/dist-cms/packages/packages/package-section/views/created/created-packages-section-view.element.d.ts +0 -1
- package/dist-cms/packages/packages/package-section/views/created/created-packages-section-view.element.js +0 -1
- package/dist-cms/packages/search/examine-management-dashboard/views/section-view-examine-indexers.d.ts +1 -0
- package/dist-cms/packages/search/examine-management-dashboard/views/section-view-examine-indexers.js +3 -0
- package/dist-cms/packages/search/manifests.js +6 -3
- package/dist-cms/packages/settings/dashboards/manifests.js +37 -18
- package/dist-cms/packages/settings/data-types/entity-actions/copy/manifests.js +0 -2
- package/dist-cms/packages/settings/data-types/entity-actions/create/manifests.js +0 -2
- package/dist-cms/packages/settings/data-types/entity-actions/manifests.js +0 -6
- package/dist-cms/packages/settings/data-types/entity-actions/move/manifests.js +0 -2
- package/dist-cms/packages/settings/data-types/menu-item/manifests.js +0 -2
- package/dist-cms/packages/settings/data-types/modals/data-type-picker-flow/data-type-picker-flow-modal.element.js +2 -1
- package/dist-cms/packages/settings/data-types/modals/property-editor-ui-picker/property-editor-ui-picker-modal.element.js +3 -2
- package/dist-cms/packages/settings/data-types/repository/data-type.repository.d.ts +2 -2
- package/dist-cms/packages/settings/data-types/repository/manifests.d.ts +1 -1
- package/dist-cms/packages/settings/data-types/repository/sources/data-type-folder.server.data.d.ts +3 -3
- package/dist-cms/packages/settings/data-types/tree/manifests.js +1 -1
- package/dist-cms/packages/settings/data-types/workspace/data-type-workspace-editor.element.js +2 -2
- package/dist-cms/packages/settings/data-types/workspace/data-type-workspace.context.js +1 -1
- package/dist-cms/packages/settings/data-types/workspace/manifests.js +18 -9
- package/dist-cms/packages/settings/data-types/workspace/views/details/data-type-details-workspace-view.element.js +2 -2
- package/dist-cms/packages/settings/data-types/workspace/views/info/workspace-view-data-type-info.element.js +2 -2
- package/dist-cms/packages/settings/extensions/menu-item/manifests.js +0 -2
- package/dist-cms/packages/settings/languages/app-language-select/app-language-select.element.js +1 -5
- package/dist-cms/packages/settings/languages/app-language-select/manifests.js +6 -3
- package/dist-cms/packages/settings/languages/entity-actions/manifests.js +0 -4
- package/dist-cms/packages/settings/languages/menu-item/manifests.js +0 -2
- package/dist-cms/packages/settings/languages/workspace/language/language-workspace-editor.element.js +2 -2
- package/dist-cms/packages/settings/languages/workspace/language/language-workspace.context.js +1 -1
- package/dist-cms/packages/settings/languages/workspace/language/language-workspace.element.d.ts +0 -1
- package/dist-cms/packages/settings/languages/workspace/language/language-workspace.element.js +0 -1
- package/dist-cms/packages/settings/languages/workspace/language/manifests.js +12 -6
- package/dist-cms/packages/settings/languages/workspace/language/views/details/language-details-workspace-view.element.js +2 -2
- package/dist-cms/packages/settings/logviewer/manifests.d.ts +1 -1
- package/dist-cms/packages/settings/logviewer/menu-item/manifests.js +0 -2
- package/dist-cms/packages/settings/logviewer/workspace/{logviewer-root/logviewer-root-workspace.element.d.ts → logviewer/logviewer-workspace.element.d.ts} +0 -9
- package/dist-cms/packages/settings/logviewer/workspace/logviewer/logviewer-workspace.element.js +65 -0
- package/dist-cms/packages/settings/logviewer/workspace/{logviewer-root → logviewer}/manifests.js +16 -10
- package/dist-cms/packages/settings/logviewer/workspace/logviewer.context.d.ts +28 -15
- package/dist-cms/packages/settings/logviewer/workspace/logviewer.context.js +33 -5
- package/dist-cms/packages/settings/logviewer/workspace/manifests.js +2 -2
- package/dist-cms/packages/settings/relation-types/manifests.d.ts +1 -1
- package/dist-cms/packages/settings/relation-types/menu-item/manifests.js +0 -2
- package/dist-cms/packages/settings/relation-types/tree/manifests.js +1 -1
- package/dist-cms/packages/settings/relation-types/workspace/manifests.js +18 -9
- package/dist-cms/packages/settings/relation-types/workspace/relation-type-workspace-editor.element.js +2 -2
- package/dist-cms/packages/settings/relation-types/workspace/relation-type-workspace.context.js +1 -1
- package/dist-cms/packages/settings/relation-types/workspace/views/relation-type/relation-type-workspace-view-relation-type.element.js +2 -2
- package/dist-cms/packages/settings/section.manifests.d.ts +1 -1
- package/dist-cms/packages/settings/section.manifests.js +6 -3
- package/dist-cms/packages/templating/components/insert-menu/templating-insert-menu.element.js +1 -1
- package/dist-cms/packages/templating/manifests.d.ts +1 -1
- package/dist-cms/packages/templating/menu.manifests.d.ts +1 -1
- package/dist-cms/packages/templating/menu.manifests.js +7 -3
- package/dist-cms/packages/templating/partial-views/entity-actions/manifests.js +0 -10
- package/dist-cms/packages/templating/partial-views/manifests.d.ts +1 -1
- package/dist-cms/packages/templating/partial-views/menu-item/manifests.js +0 -2
- package/dist-cms/packages/templating/partial-views/repository/partial-views.repository.d.ts +2 -2
- package/dist-cms/packages/templating/partial-views/repository/sources/partial-views.folder.server.data.d.ts +2 -2
- package/dist-cms/packages/templating/partial-views/tree/manifests.js +1 -1
- package/dist-cms/packages/templating/partial-views/workspace/manifests.js +6 -3
- package/dist-cms/packages/templating/partial-views/workspace/partial-views-workspace-edit.element.js +2 -1
- package/dist-cms/packages/templating/partial-views/workspace/partial-views-workspace.context.js +2 -1
- package/dist-cms/packages/templating/stylesheets/manifests.d.ts +1 -1
- package/dist-cms/packages/templating/stylesheets/menu-item/manifests.js +0 -2
- package/dist-cms/packages/templating/stylesheets/tree/manifests.js +1 -1
- package/dist-cms/packages/templating/stylesheets/workspace/stylesheet-workspace.context.js +1 -1
- package/dist-cms/packages/templating/templates/entity-actions/manifests.js +0 -4
- package/dist-cms/packages/templating/templates/manifests.d.ts +1 -1
- package/dist-cms/packages/templating/templates/menu-item/manifests.js +0 -2
- package/dist-cms/packages/templating/templates/repository/manifests.d.ts +1 -1
- package/dist-cms/packages/templating/templates/tree/manifests.js +1 -1
- package/dist-cms/packages/templating/templates/workspace/manifests.js +6 -3
- package/dist-cms/packages/templating/templates/workspace/template-workspace-editor.element.js +2 -1
- package/dist-cms/packages/templating/templates/workspace/template-workspace.context.js +1 -1
- package/dist-cms/packages/umbraco-news/manifests.js +6 -3
- package/dist-cms/packages/umbraco-news/umbraco-news-dashboard.element.js +1 -1
- package/dist-cms/packages/users/current-user/modals/current-user/current-user-modal.element.js +10 -6
- package/dist-cms/packages/users/current-user/user-profile-apps/user-profile-app-profile.element.js +7 -5
- package/dist-cms/packages/users/user-groups/manifests.d.ts +1 -1
- package/dist-cms/packages/users/user-groups/repository/manifests.d.ts +1 -1
- package/dist-cms/packages/users/user-groups/section-view/manifests.js +6 -3
- package/dist-cms/packages/users/user-groups/workspace/actions/workspace-action-user-group-save.element.js +2 -2
- package/dist-cms/packages/users/user-groups/workspace/manifests.js +6 -3
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace-editor.element.js +2 -2
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.context.js +1 -1
- package/dist-cms/packages/users/users/manifests.d.ts +1 -1
- package/dist-cms/packages/users/users/repository/manifests.d.ts +1 -1
- package/dist-cms/packages/users/users/repository/user.repository.js +5 -1
- package/dist-cms/packages/users/users/section-view/manifests.js +6 -3
- package/dist-cms/packages/users/users/workspace/actions/user-workspace-action-save.element.js +2 -2
- package/dist-cms/packages/users/users/workspace/manifests.js +6 -3
- package/dist-cms/packages/users/users/workspace/user-workspace-editor.element.d.ts +1 -0
- package/dist-cms/packages/users/users/workspace/user-workspace-editor.element.js +53 -8
- package/dist-cms/packages/users/users/workspace/user-workspace.context.d.ts +1 -1
- package/dist-cms/packages/users/users/workspace/user-workspace.context.js +18 -1
- package/dist-cms/shared/auth/auth.context.d.ts +1 -0
- package/dist-cms/shared/auth/auth.context.js +1 -2
- package/dist-cms/shared/auth/auth.interface.d.ts +4 -0
- package/dist-cms/shared/lit-element/lit-element.element.d.ts +25 -0
- package/dist-cms/shared/lit-element/lit-element.element.js +42 -1
- package/dist-cms/shared/repository/data-source/folder-data-source.interface.d.ts +3 -3
- package/dist-cms/shared/repository/folder-repository.interface.d.ts +3 -3
- package/dist-cms/shared/resources/resource.controller.js +2 -2
- package/dist-cms/shared/utils/component-has-manifest-property.function.d.ts +4 -0
- package/dist-cms/shared/utils/component-has-manifest-property.function.js +3 -0
- package/dist-cms/shared/utils/index.d.ts +1 -0
- package/dist-cms/shared/utils/index.js +1 -0
- package/dist-cms/shared/utils/media-helper.service.js +1 -0
- package/dist-cms/tinymce/CHANGELOG.md +23 -0
- package/dist-cms/tinymce/composer.json +1 -1
- package/dist-cms/tinymce/langs/hy.js +2 -2
- package/dist-cms/tinymce/langs/id.js +19 -19
- package/dist-cms/tinymce/langs/it.js +2 -2
- package/dist-cms/tinymce/langs/ka_GE.js +132 -132
- package/dist-cms/tinymce/langs/ru.js +4 -4
- package/dist-cms/tinymce/langs/sk.js +7 -7
- package/dist-cms/tinymce/models/dom/model.js +1 -1
- package/dist-cms/tinymce/models/dom/model.min.js +1 -1
- package/dist-cms/tinymce/package.json +1 -1
- package/dist-cms/tinymce/plugins/accordion/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/accordion/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/advlist/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/advlist/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/anchor/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/anchor/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/autolink/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/autolink/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/autoresize/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/autoresize/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/autosave/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/autosave/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/charmap/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/charmap/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/code/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/code/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/codesample/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/codesample/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/directionality/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/directionality/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/emoticons/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/emoticons/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/fullscreen/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/fullscreen/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/help/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/help/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/image/plugin.js +2 -2
- package/dist-cms/tinymce/plugins/image/plugin.min.js +2 -2
- package/dist-cms/tinymce/plugins/importcss/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/importcss/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/insertdatetime/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/insertdatetime/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/link/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/link/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/lists/plugin.js +2 -2
- package/dist-cms/tinymce/plugins/lists/plugin.min.js +2 -2
- package/dist-cms/tinymce/plugins/media/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/media/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/nonbreaking/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/nonbreaking/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/pagebreak/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/pagebreak/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/preview/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/preview/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/quickbars/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/quickbars/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/save/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/save/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/searchreplace/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/searchreplace/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/table/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/table/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/template/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/template/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/visualblocks/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/visualblocks/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/visualchars/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/visualchars/plugin.min.js +1 -1
- package/dist-cms/tinymce/plugins/wordcount/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/wordcount/plugin.min.js +1 -1
- package/dist-cms/tinymce/skins/ui/oxide/skin.css +15 -2
- package/dist-cms/tinymce/skins/ui/oxide/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/skin.css +15 -2
- package/dist-cms/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/skin.css +15 -2
- package/dist-cms/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/skin.css +15 -2
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
- package/dist-cms/tinymce/themes/silver/theme.js +181 -108
- package/dist-cms/tinymce/themes/silver/theme.min.js +2 -2
- package/dist-cms/tinymce/tinymce.d.ts +3 -0
- package/dist-cms/tinymce/tinymce.js +23 -15
- package/dist-cms/tinymce/tinymce.min.js +2 -2
- package/dist-cms/tsconfig.build.json +15 -0
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -0
- package/dist-cms/umbraco-package-schema.json +536 -236
- package/dist-cms/vscode-html-custom-data.json +58 -58
- package/package.json +14 -12
- package/dist-cms/external/monaco-editor/twig-4859b551.js +0 -6
- package/dist-cms/packages/core/property-editor/schemas/Umbraco.JSON.d.ts +0 -2
- package/dist-cms/packages/core/property-editor/schemas/Umbraco.JSON.js +0 -8
- package/dist-cms/packages/core/section/section-views/index.d.ts +0 -1
- package/dist-cms/packages/core/section/section-views/index.js +0 -1
- package/dist-cms/packages/core/section/section-views/section-views.element.d.ts +0 -26
- package/dist-cms/packages/core/workspace/workspace-context/entity-workspace-context.token.d.ts +0 -4
- package/dist-cms/packages/core/workspace/workspace-context/entity-workspace-context.token.js +0 -2
- package/dist-cms/packages/settings/logviewer/workspace/logviewer-root/logviewer-root-workspace.element.js +0 -166
- package/dist-cms/tsconfig.tsbuildinfo +0 -1
- /package/dist-cms/apps/backoffice/{extension.controller.d.ts → extension-initializer.controller.d.ts} +0 -0
- /package/dist-cms/packages/settings/logviewer/workspace/{logviewer-root → logviewer}/manifests.d.ts +0 -0
|
@@ -22,7 +22,7 @@ export const UmbClassMixin = (superClass) => {
|
|
|
22
22
|
* @memberof UmbElementMixin
|
|
23
23
|
*/
|
|
24
24
|
observe(source, callback, controllerAlias) {
|
|
25
|
-
return new UmbObserverController(this, source
|
|
25
|
+
return new UmbObserverController(this, source, callback, controllerAlias);
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* @description Provide a context API for this or child elements.
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import { isUmbContextProvideEventType,
|
|
1
|
+
import { isUmbContextProvideEventType,
|
|
2
|
+
//isUmbContextUnprovidedEventType,
|
|
3
|
+
umbContextProvideEventType,
|
|
4
|
+
//umbContextUnprovidedEventType,
|
|
5
|
+
} from '../provide/context-provide.event.js';
|
|
2
6
|
import { UmbContextRequestEventImplementation } from './context-request.event.js';
|
|
3
7
|
/**
|
|
4
8
|
* @export
|
|
@@ -22,15 +26,20 @@ export class UmbContextConsumer {
|
|
|
22
26
|
*/
|
|
23
27
|
constructor(hostElement, contextAlias, callback) {
|
|
24
28
|
this.hostElement = hostElement;
|
|
29
|
+
/* Idea: Niels: If we need to filter for specific contexts, we could make the response method return true/false. If false, the event should then then not be stopped. Alternatively parse the event it self on to the response-callback. This will enable the event to continue to bubble up finding a context that matches. The reason for such would be to have some who are more specific than others. For example, some might just need the current workspace-context, others might need the closest handling a certain entityType. As I'm writting this is not relevant, but I wanted to keep the idea as we have had some circumstance that might be solved with this approach.*/
|
|
25
30
|
this._onResponse = (instance) => {
|
|
26
31
|
if (this.#instance === instance) {
|
|
27
32
|
return;
|
|
28
33
|
}
|
|
29
34
|
this.#instance = instance;
|
|
30
35
|
this.#callback?.(instance);
|
|
31
|
-
|
|
36
|
+
if (instance !== undefined) {
|
|
37
|
+
this.#promiseResolver?.(instance);
|
|
38
|
+
this.#promise = undefined;
|
|
39
|
+
}
|
|
32
40
|
};
|
|
33
|
-
this
|
|
41
|
+
this.#handleNewProvider = (event) => {
|
|
42
|
+
// Does seem a bit unnecessary, we could just assume the type via type casting...
|
|
34
43
|
if (!isUmbContextProvideEventType(event))
|
|
35
44
|
return;
|
|
36
45
|
if (this.#contextAlias === event.contextAlias) {
|
|
@@ -41,7 +50,7 @@ export class UmbContextConsumer {
|
|
|
41
50
|
this.#callback = callback;
|
|
42
51
|
}
|
|
43
52
|
asPromise() {
|
|
44
|
-
return (this.#promise
|
|
53
|
+
return (this.#promise ??
|
|
45
54
|
(this.#promise = new Promise((resolve) => {
|
|
46
55
|
this.#instance ? resolve(this.#instance) : (this.#promiseResolver = resolve);
|
|
47
56
|
})));
|
|
@@ -55,13 +64,34 @@ export class UmbContextConsumer {
|
|
|
55
64
|
}
|
|
56
65
|
hostConnected() {
|
|
57
66
|
// TODO: We need to use closets application element. We need this in order to have separate Backoffice running within or next to each other.
|
|
58
|
-
window.addEventListener(umbContextProvideEventType, this
|
|
67
|
+
window.addEventListener(umbContextProvideEventType, this.#handleNewProvider);
|
|
68
|
+
//window.addEventListener(umbContextUnprovidedEventType, this.#handleRemovedProvider);
|
|
59
69
|
this.request();
|
|
60
70
|
}
|
|
61
71
|
hostDisconnected() {
|
|
62
72
|
// TODO: We need to use closets application element. We need this in order to have separate Backoffice running within or next to each other.
|
|
63
|
-
window.removeEventListener(umbContextProvideEventType, this
|
|
73
|
+
window.removeEventListener(umbContextProvideEventType, this.#handleNewProvider);
|
|
74
|
+
//window.removeEventListener(umbContextUnprovidedEventType, this.#handleRemovedProvider);
|
|
75
|
+
}
|
|
76
|
+
#handleNewProvider;
|
|
77
|
+
//Niels: I'm keeping this code around as it might be relevant, but I wanted to try to see if leaving this feature out for now could work for us.
|
|
78
|
+
/*
|
|
79
|
+
#handleRemovedProvider = (event: Event) => {
|
|
80
|
+
// Does seem a bit unnecessary, we could just assume the type via type casting...
|
|
81
|
+
if (!isUmbContextUnprovidedEventType(event)) return;
|
|
82
|
+
|
|
83
|
+
if (this.#contextAlias === event.contextAlias && event.instance === this.#instance) {
|
|
84
|
+
this.#unProvide();
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
#unProvide() {
|
|
89
|
+
if (this.#instance !== undefined) {
|
|
90
|
+
this.#instance = undefined;
|
|
91
|
+
this.#callback?.(undefined);
|
|
92
|
+
}
|
|
64
93
|
}
|
|
94
|
+
*/
|
|
65
95
|
// TODO: Test destroy scenarios:
|
|
66
96
|
destroy() {
|
|
67
97
|
this.hostDisconnected();
|
|
@@ -18,3 +18,24 @@ export declare class UmbContextProvideEventImplementation extends Event implemen
|
|
|
18
18
|
constructor(contextAlias: string | UmbContextToken);
|
|
19
19
|
}
|
|
20
20
|
export declare const isUmbContextProvideEventType: (event: Event) => event is UmbContextProvideEventImplementation;
|
|
21
|
+
export declare const umbContextUnprovidedEventType = "umb:context-unprovided";
|
|
22
|
+
/**
|
|
23
|
+
* @export
|
|
24
|
+
* @interface UmbContextProvideEvent
|
|
25
|
+
*/
|
|
26
|
+
export interface UmbContextUnprovidedEvent extends Event {
|
|
27
|
+
readonly contextAlias: string | UmbContextToken;
|
|
28
|
+
readonly instance: unknown;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @export
|
|
32
|
+
* @class UmbContextUnprovidedEventImplementation
|
|
33
|
+
* @extends {Event}
|
|
34
|
+
* @implements {UmbContextUnprovidedEvent}
|
|
35
|
+
*/
|
|
36
|
+
export declare class UmbContextUnprovidedEventImplementation extends Event implements UmbContextUnprovidedEvent {
|
|
37
|
+
readonly contextAlias: string | UmbContextToken;
|
|
38
|
+
readonly instance: unknown;
|
|
39
|
+
constructor(contextAlias: string | UmbContextToken, instance: unknown);
|
|
40
|
+
}
|
|
41
|
+
export declare const isUmbContextUnprovidedEventType: (event: Event) => event is UmbContextUnprovidedEventImplementation;
|
|
@@ -14,3 +14,20 @@ export class UmbContextProvideEventImplementation extends Event {
|
|
|
14
14
|
export const isUmbContextProvideEventType = (event) => {
|
|
15
15
|
return event.type === umbContextProvideEventType;
|
|
16
16
|
};
|
|
17
|
+
export const umbContextUnprovidedEventType = 'umb:context-unprovided';
|
|
18
|
+
/**
|
|
19
|
+
* @export
|
|
20
|
+
* @class UmbContextUnprovidedEventImplementation
|
|
21
|
+
* @extends {Event}
|
|
22
|
+
* @implements {UmbContextUnprovidedEvent}
|
|
23
|
+
*/
|
|
24
|
+
export class UmbContextUnprovidedEventImplementation extends Event {
|
|
25
|
+
constructor(contextAlias, instance) {
|
|
26
|
+
super(umbContextUnprovidedEventType, { bubbles: true, composed: true });
|
|
27
|
+
this.contextAlias = contextAlias;
|
|
28
|
+
this.instance = instance;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export const isUmbContextUnprovidedEventType = (event) => {
|
|
32
|
+
return event.type === umbContextUnprovidedEventType;
|
|
33
|
+
};
|
|
@@ -29,12 +29,6 @@ export declare class UmbContextProvider {
|
|
|
29
29
|
* @memberof UmbContextProvider
|
|
30
30
|
*/
|
|
31
31
|
hostDisconnected(): void;
|
|
32
|
-
/**
|
|
33
|
-
* @private
|
|
34
|
-
* @param {UmbContextRequestEvent} event
|
|
35
|
-
* @memberof UmbContextProvider
|
|
36
|
-
*/
|
|
37
|
-
private _handleContextRequest;
|
|
38
32
|
private _handleDebugContextRequest;
|
|
39
33
|
destroy(): void;
|
|
40
34
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { umbContextRequestEventType, isUmbContextRequestEvent, umbDebugContextEventType, } from '../consume/context-request.event.js';
|
|
2
|
-
import { UmbContextProvideEventImplementation
|
|
2
|
+
import { UmbContextProvideEventImplementation,
|
|
3
|
+
//UmbContextUnprovidedEventImplementation,
|
|
4
|
+
} from './context-provide.event.js';
|
|
3
5
|
/**
|
|
4
6
|
* @export
|
|
5
7
|
* @class UmbContextProvider
|
|
@@ -27,7 +29,7 @@ export class UmbContextProvider {
|
|
|
27
29
|
* @param {UmbContextRequestEvent} event
|
|
28
30
|
* @memberof UmbContextProvider
|
|
29
31
|
*/
|
|
30
|
-
this
|
|
32
|
+
this.#handleContextRequest = (event) => {
|
|
31
33
|
if (!isUmbContextRequestEvent(event))
|
|
32
34
|
return;
|
|
33
35
|
if (event.contextAlias !== this._contextAlias)
|
|
@@ -51,11 +53,17 @@ export class UmbContextProvider {
|
|
|
51
53
|
this._contextAlias = contextAlias.toString();
|
|
52
54
|
this.#instance = instance;
|
|
53
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* @private
|
|
58
|
+
* @param {UmbContextRequestEvent} event
|
|
59
|
+
* @memberof UmbContextProvider
|
|
60
|
+
*/
|
|
61
|
+
#handleContextRequest;
|
|
54
62
|
/**
|
|
55
63
|
* @memberof UmbContextProvider
|
|
56
64
|
*/
|
|
57
65
|
hostConnected() {
|
|
58
|
-
this.hostElement.addEventListener(umbContextRequestEventType, this
|
|
66
|
+
this.hostElement.addEventListener(umbContextRequestEventType, this.#handleContextRequest);
|
|
59
67
|
this.hostElement.dispatchEvent(new UmbContextProvideEventImplementation(this._contextAlias));
|
|
60
68
|
// Listen to our debug event 'umb:debug-contexts'
|
|
61
69
|
this.hostElement.addEventListener(umbDebugContextEventType, this._handleDebugContextRequest);
|
|
@@ -64,11 +72,15 @@ export class UmbContextProvider {
|
|
|
64
72
|
* @memberof UmbContextProvider
|
|
65
73
|
*/
|
|
66
74
|
hostDisconnected() {
|
|
67
|
-
this.hostElement.removeEventListener(umbContextRequestEventType, this
|
|
68
|
-
//
|
|
75
|
+
this.hostElement.removeEventListener(umbContextRequestEventType, this.#handleContextRequest);
|
|
76
|
+
// Out-commented for now, but kept if we like to reintroduce this:
|
|
77
|
+
//window.dispatchEvent(new UmbContextUnprovidedEventImplementation(this._contextAlias, this.#instance));
|
|
78
|
+
// Stop listen to our debug event 'umb:debug-contexts'
|
|
79
|
+
this.hostElement.removeEventListener(umbDebugContextEventType, this._handleDebugContextRequest);
|
|
69
80
|
}
|
|
70
81
|
destroy() {
|
|
71
|
-
//
|
|
82
|
+
// We want to call a destroy method on the instance, if it has one.
|
|
72
83
|
this.#instance?.destroy?.();
|
|
84
|
+
this.#instance = undefined;
|
|
73
85
|
}
|
|
74
86
|
}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { HTMLElementConstructor } from '../extension-api/types.js';
|
|
2
|
-
import { UmbControllerAlias } from './controller-alias.type.js';
|
|
3
|
-
import { UmbControllerHost } from './controller-host.interface.js';
|
|
1
|
+
import type { HTMLElementConstructor } from '../extension-api/types.js';
|
|
2
|
+
import type { UmbControllerAlias } from './controller-alias.type.js';
|
|
3
|
+
import type { UmbControllerHost } from './controller-host.interface.js';
|
|
4
4
|
import type { UmbController } from './controller.interface.js';
|
|
5
|
+
import type { UmbLocalizeController } from '../localization-api/index.js';
|
|
5
6
|
export declare class UmbControllerHostElement extends HTMLElement implements UmbControllerHost {
|
|
7
|
+
/**
|
|
8
|
+
* Use the UmbLocalizeController to localize your element.
|
|
9
|
+
* @see UmbLocalizeController
|
|
10
|
+
*/
|
|
11
|
+
localize: UmbLocalizeController;
|
|
6
12
|
hasController(controller: UmbController): boolean;
|
|
7
13
|
getControllers(filterMethod: (ctrl: UmbController) => boolean): UmbController[];
|
|
8
14
|
addController(controller: UmbController): void;
|
|
@@ -2,11 +2,18 @@ import type { Observable } from '../../external/rxjs/index.js';
|
|
|
2
2
|
import type { HTMLElementConstructor } from '../extension-api/index.js';
|
|
3
3
|
import type { UmbControllerHostElement } from '../controller-api/index.js';
|
|
4
4
|
import { UmbContextToken, UmbContextCallback, UmbContextConsumerController, UmbContextProviderController } from '../context-api/index.js';
|
|
5
|
-
import { UmbObserverController } from '../observable-api/index.js';
|
|
5
|
+
import { ObserverCallback, UmbObserverController } from '../observable-api/index.js';
|
|
6
6
|
export declare class UmbElement extends UmbControllerHostElement {
|
|
7
|
+
/**
|
|
8
|
+
* @description Observe a RxJS source of choice.
|
|
9
|
+
* @param {Observable<T>} source RxJS source
|
|
10
|
+
* @param {method} callback Callback method called when data is changed.
|
|
11
|
+
* @return {UmbObserverController} Reference to a Observer Controller instance
|
|
12
|
+
* @memberof UmbElementMixin
|
|
13
|
+
*/
|
|
7
14
|
observe<T>(source: Observable<T> | {
|
|
8
15
|
asObservable: () => Observable<T>;
|
|
9
|
-
}, callback:
|
|
16
|
+
}, callback: ObserverCallback<T>, unique?: string): UmbObserverController<T>;
|
|
10
17
|
provideContext<R = unknown>(alias: string | UmbContextToken<R>, instance: R): UmbContextProviderController<R>;
|
|
11
18
|
consumeContext<R = unknown>(alias: string | UmbContextToken<R>, callback: UmbContextCallback<R>): UmbContextConsumerController<R>;
|
|
12
19
|
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import { UmbLocalizeController } from '../localization-api/index.js';
|
|
1
2
|
import { UmbControllerHostElementMixin } from '../controller-api/index.js';
|
|
2
3
|
import { UmbContextConsumerController, UmbContextProviderController, } from '../context-api/index.js';
|
|
3
4
|
import { UmbObserverController } from '../observable-api/index.js';
|
|
4
5
|
export const UmbElementMixin = (superClass) => {
|
|
5
6
|
class UmbElementMixinClass extends UmbControllerHostElementMixin(superClass) {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.localize = new UmbLocalizeController(this);
|
|
10
|
+
}
|
|
6
11
|
/**
|
|
7
12
|
* @description Observe a RxJS source of choice.
|
|
8
13
|
* @param {Observable<T>} source RxJS source
|
|
@@ -11,7 +16,7 @@ export const UmbElementMixin = (superClass) => {
|
|
|
11
16
|
* @memberof UmbElementMixin
|
|
12
17
|
*/
|
|
13
18
|
observe(source, callback, unique) {
|
|
14
|
-
return new UmbObserverController(this, source
|
|
19
|
+
return new UmbObserverController(this, source, callback, unique);
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* @description Provide a context API for this or child elements.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { UmbConditionConfigBase } from '../types.js';
|
|
2
|
+
import type { UmbControllerHost } from '../../controller-api/index.js';
|
|
3
|
+
export type UmbConditionControllerArguments<ConditionConfigType extends UmbConditionConfigBase = UmbConditionConfigBase> = {
|
|
4
|
+
host: UmbControllerHost;
|
|
5
|
+
config: ConditionConfigType;
|
|
6
|
+
onChange: () => void;
|
|
7
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { UmbBaseController, type UmbControllerHost } from '../../controller-api/index.js';
|
|
2
|
+
import { type ManifestCondition, type ManifestWithDynamicConditions, type UmbExtensionRegistry } from '../index.js';
|
|
3
|
+
export declare abstract class UmbBaseExtensionController<ManifestType extends ManifestWithDynamicConditions = ManifestWithDynamicConditions, SubClassType = never> extends UmbBaseController {
|
|
4
|
+
#private;
|
|
5
|
+
protected _positive?: boolean;
|
|
6
|
+
get weight(): number;
|
|
7
|
+
get permitted(): boolean;
|
|
8
|
+
get manifest(): ManifestType | undefined;
|
|
9
|
+
get alias(): string;
|
|
10
|
+
get overwrites(): string[];
|
|
11
|
+
hasConditions: () => Promise<boolean>;
|
|
12
|
+
constructor(host: UmbControllerHost, extensionRegistry: UmbExtensionRegistry<ManifestCondition>, alias: string, onPermissionChanged: (isPermitted: boolean, controller: SubClassType) => void);
|
|
13
|
+
protected _init(): void;
|
|
14
|
+
asPromise(): Promise<void>;
|
|
15
|
+
protected abstract _conditionsAreGood(): Promise<boolean>;
|
|
16
|
+
protected abstract _conditionsAreBad(): Promise<void>;
|
|
17
|
+
equal(otherClass: UmbBaseExtensionController | undefined): boolean;
|
|
18
|
+
destroy(): void;
|
|
19
|
+
}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { UmbBaseController } from '../../controller-api/index.js';
|
|
2
|
+
import { createExtensionClass, } from '../index.js';
|
|
3
|
+
export class UmbBaseExtensionController extends UmbBaseController {
|
|
4
|
+
#promiseResolvers;
|
|
5
|
+
#manifestObserver;
|
|
6
|
+
#extensionRegistry;
|
|
7
|
+
#alias;
|
|
8
|
+
#overwrites;
|
|
9
|
+
#manifest;
|
|
10
|
+
#conditionControllers;
|
|
11
|
+
#onPermissionChanged;
|
|
12
|
+
#isPermitted;
|
|
13
|
+
get weight() {
|
|
14
|
+
return this.#manifest?.weight ?? 0;
|
|
15
|
+
}
|
|
16
|
+
get permitted() {
|
|
17
|
+
return this.#isPermitted ?? false;
|
|
18
|
+
}
|
|
19
|
+
get manifest() {
|
|
20
|
+
return this.#manifest;
|
|
21
|
+
}
|
|
22
|
+
get alias() {
|
|
23
|
+
return this.#alias;
|
|
24
|
+
}
|
|
25
|
+
get overwrites() {
|
|
26
|
+
return this.#overwrites;
|
|
27
|
+
}
|
|
28
|
+
constructor(host, extensionRegistry, alias, onPermissionChanged) {
|
|
29
|
+
super(host, alias);
|
|
30
|
+
this.#promiseResolvers = [];
|
|
31
|
+
this.#overwrites = [];
|
|
32
|
+
this.#conditionControllers = [];
|
|
33
|
+
this.hasConditions = async () => {
|
|
34
|
+
await this.#manifestObserver.asPromise();
|
|
35
|
+
return (this.#manifest?.conditions ?? []).length > 0;
|
|
36
|
+
};
|
|
37
|
+
this.#onConditionsChangedCallback = async () => {
|
|
38
|
+
const oldValue = this.#isPermitted ?? false;
|
|
39
|
+
// Find a condition that is not permitted (Notice how no conditions, means that this extension is permitted)
|
|
40
|
+
const isPositive = this.#conditionsAreInitialized() &&
|
|
41
|
+
this.#conditionControllers.find((condition) => condition.permitted === false) === undefined;
|
|
42
|
+
this._positive = isPositive;
|
|
43
|
+
if (isPositive) {
|
|
44
|
+
if (this.#isPermitted !== true) {
|
|
45
|
+
this.#isPermitted = await this._conditionsAreGood();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else if (this.#isPermitted !== false) {
|
|
49
|
+
await this._conditionsAreBad();
|
|
50
|
+
this.#isPermitted = false;
|
|
51
|
+
}
|
|
52
|
+
if (oldValue !== this.#isPermitted) {
|
|
53
|
+
if (this.#isPermitted) {
|
|
54
|
+
this.#promiseResolvers.forEach((x) => x());
|
|
55
|
+
this.#promiseResolvers = [];
|
|
56
|
+
}
|
|
57
|
+
this.#onPermissionChanged(this.#isPermitted, this);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
this.#extensionRegistry = extensionRegistry;
|
|
61
|
+
this.#alias = alias;
|
|
62
|
+
this.#onPermissionChanged = onPermissionChanged;
|
|
63
|
+
}
|
|
64
|
+
_init() {
|
|
65
|
+
this.#manifestObserver = this.observe(this.#extensionRegistry.getByAlias(this.#alias), async (extensionManifest) => {
|
|
66
|
+
this.#isPermitted = undefined;
|
|
67
|
+
this.#manifest = extensionManifest;
|
|
68
|
+
if (extensionManifest) {
|
|
69
|
+
if (extensionManifest.overwrites) {
|
|
70
|
+
if (typeof extensionManifest.overwrites === 'string') {
|
|
71
|
+
this.#overwrites = [extensionManifest.overwrites];
|
|
72
|
+
}
|
|
73
|
+
else if (Array.isArray(extensionManifest.overwrites)) {
|
|
74
|
+
this.#overwrites = extensionManifest.overwrites;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
this.#gotConditions();
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
this.#overwrites = [];
|
|
81
|
+
this.#cleanConditions();
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
asPromise() {
|
|
86
|
+
return new Promise((resolve) => {
|
|
87
|
+
this.#isPermitted === true ? resolve() : this.#promiseResolvers.push(resolve);
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
#cleanConditions() {
|
|
91
|
+
this.#conditionControllers.forEach((controller) => controller.destroy());
|
|
92
|
+
this.#conditionControllers = [];
|
|
93
|
+
this.removeControllerByAlias('_observeConditions');
|
|
94
|
+
}
|
|
95
|
+
#gotConditions() {
|
|
96
|
+
const conditionConfigs = this.#manifest?.conditions ?? [];
|
|
97
|
+
// As conditionConfigs might have been configured as something else than an array, then we ignorer them.
|
|
98
|
+
if (conditionConfigs.length === undefined || conditionConfigs.length === 0) {
|
|
99
|
+
this.#cleanConditions();
|
|
100
|
+
this.#onConditionsChangedCallback();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const conditionAliases = conditionConfigs
|
|
104
|
+
.map((condition) => condition.alias)
|
|
105
|
+
.filter((value, index, array) => array.indexOf(value) === index);
|
|
106
|
+
const oldAmountOfControllers = this.#conditionControllers.length;
|
|
107
|
+
// Clean up conditions controllers based on keepers:
|
|
108
|
+
this.#conditionControllers = this.#conditionControllers.filter((current) => {
|
|
109
|
+
const continueExistence = conditionConfigs.find((config) => config === current.config);
|
|
110
|
+
if (!continueExistence) {
|
|
111
|
+
// Destroy condition that is no longer needed.
|
|
112
|
+
current.destroy();
|
|
113
|
+
}
|
|
114
|
+
return continueExistence;
|
|
115
|
+
});
|
|
116
|
+
// Check if there was no change in conditions:
|
|
117
|
+
// First check if any got removed(old amount equal controllers after clean-up)
|
|
118
|
+
// && check if any new is about to be added(old equal new amount):
|
|
119
|
+
const noChangeInConditions = oldAmountOfControllers === this.#conditionControllers.length &&
|
|
120
|
+
oldAmountOfControllers === conditionConfigs.length;
|
|
121
|
+
if (conditionConfigs.length > 0) {
|
|
122
|
+
// Observes the conditions and initialize as they come in.
|
|
123
|
+
this.observe(this.#extensionRegistry.getByTypeAndAliases('condition', conditionAliases), async (manifests) => {
|
|
124
|
+
// New comers:
|
|
125
|
+
manifests.forEach((conditionManifest) => {
|
|
126
|
+
const configsOfThisType = conditionConfigs.filter((conditionConfig) => conditionConfig.alias === conditionManifest.alias);
|
|
127
|
+
// Spin up conditions, based of condition configs:
|
|
128
|
+
configsOfThisType.forEach(async (conditionConfig) => {
|
|
129
|
+
// Check if we already have a controller for this config:
|
|
130
|
+
const existing = this.#conditionControllers.find((controller) => controller.config === conditionConfig);
|
|
131
|
+
if (!existing) {
|
|
132
|
+
const conditionController = await createExtensionClass(conditionManifest, [
|
|
133
|
+
{
|
|
134
|
+
host: this,
|
|
135
|
+
manifest: conditionManifest,
|
|
136
|
+
config: conditionConfig,
|
|
137
|
+
onChange: this.#onConditionsChangedCallback,
|
|
138
|
+
},
|
|
139
|
+
]);
|
|
140
|
+
if (conditionController) {
|
|
141
|
+
// Some how listen to it? callback/event/onChange something.
|
|
142
|
+
// then call this one: this.#onConditionsChanged();
|
|
143
|
+
this.#conditionControllers.push(conditionController);
|
|
144
|
+
this.#onConditionsChangedCallback();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
}, '_observeConditions');
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
this.removeControllerByAlias('_observeConditions');
|
|
153
|
+
}
|
|
154
|
+
if (noChangeInConditions) {
|
|
155
|
+
// There was not change in the amount of conditions, but the manifest was changed, this means this.#isPermitted is set to undefined and this will always fire the callback:
|
|
156
|
+
this.#onConditionsChangedCallback();
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
#conditionsAreInitialized() {
|
|
160
|
+
// Not good if we don't have a manifest.
|
|
161
|
+
// Only good if conditions of manifest is equal to the amount of condition controllers (one for each condition).
|
|
162
|
+
return (this.#manifest !== undefined && this.#conditionControllers.length === (this.#manifest.conditions ?? []).length);
|
|
163
|
+
}
|
|
164
|
+
#onConditionsChangedCallback;
|
|
165
|
+
equal(otherClass) {
|
|
166
|
+
return otherClass?.manifest === this.manifest;
|
|
167
|
+
}
|
|
168
|
+
destroy() {
|
|
169
|
+
this.#promiseResolvers = [];
|
|
170
|
+
if (this.#isPermitted === true) {
|
|
171
|
+
this.#isPermitted = undefined;
|
|
172
|
+
this._conditionsAreBad();
|
|
173
|
+
this.#onPermissionChanged(false, this);
|
|
174
|
+
}
|
|
175
|
+
super.destroy();
|
|
176
|
+
// Destroy the conditions controllers, are begin destroyed cause they are controllers.
|
|
177
|
+
}
|
|
178
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ManifestBase, ManifestTypeMap, SpecificManifestTypeOrManifestBase, UmbBaseExtensionController, UmbExtensionRegistry } from '../index.js';
|
|
2
|
+
import { UmbBaseController, UmbControllerHost } from '../../controller-api/index.js';
|
|
3
|
+
export type PermittedControllerType<ControllerType extends {
|
|
4
|
+
manifest: any;
|
|
5
|
+
}> = ControllerType & {
|
|
6
|
+
manifest: Required<Pick<ControllerType, 'manifest'>>;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
*/
|
|
10
|
+
export declare abstract class UmbBaseExtensionsController<ManifestTypes extends ManifestBase, ManifestTypeName extends keyof ManifestTypeMap<ManifestTypes> | string, ManifestType extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, ManifestTypeName>, ControllerType extends UmbBaseExtensionController<ManifestType> = UmbBaseExtensionController<ManifestType>, MyPermittedControllerType extends ControllerType = PermittedControllerType<ControllerType>> extends UmbBaseController {
|
|
11
|
+
#private;
|
|
12
|
+
protected _extensions: Array<ControllerType>;
|
|
13
|
+
private _permittedExts;
|
|
14
|
+
constructor(host: UmbControllerHost, extensionRegistry: UmbExtensionRegistry<ManifestType>, type: ManifestTypeName | Array<ManifestTypeName>, filter: undefined | null | ((manifest: ManifestType) => boolean), onChange: (permittedManifests: Array<MyPermittedControllerType>, controller: MyPermittedControllerType) => void);
|
|
15
|
+
protected _init(): void;
|
|
16
|
+
protected abstract _createController(manifest: ManifestType): ControllerType;
|
|
17
|
+
protected _extensionChanged: (isPermitted: boolean, controller: UmbBaseExtensionController<ManifestType>) => void;
|
|
18
|
+
destroy(): void;
|
|
19
|
+
}
|