@umbraco-cms/backoffice 14.0.0-40e04294 → 14.0.0-43239cee
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/dist-cms/apps/app/app.element.js +0 -3
- package/dist-cms/assets/lang/da-dk.js +3 -0
- package/dist-cms/assets/lang/da-dk.ts +3 -0
- package/dist-cms/assets/lang/en-us.js +21 -18
- package/dist-cms/assets/lang/en-us.ts +21 -18
- package/dist-cms/custom-elements.json +288 -19
- package/dist-cms/external/tinymce/index.js +36 -36
- package/dist-cms/mocks/browser-handlers.js +1 -1
- package/dist-cms/mocks/data/entity.data.d.ts +1 -1
- package/dist-cms/mocks/data/entity.data.js +1 -9
- package/dist-cms/mocks/data/media.data.d.ts +2 -1
- package/dist-cms/mocks/data/media.data.js +11 -0
- package/dist-cms/mocks/data/user-group.data.d.ts +17 -0
- package/dist-cms/mocks/data/user-group.data.js +61 -0
- package/dist-cms/mocks/data/user.data.d.ts +15 -0
- package/dist-cms/mocks/data/{users.data.js → user.data.js} +27 -41
- package/dist-cms/mocks/handlers/dictionary.handlers.js +2 -2
- package/dist-cms/mocks/handlers/media.handlers.js +8 -0
- package/dist-cms/mocks/handlers/partial-views.handlers.js +3 -3
- package/dist-cms/mocks/handlers/user-group/collection.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/user-group/collection.handlers.js +10 -0
- package/dist-cms/mocks/handlers/user-group/detail.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/user-group/detail.handlers.js +37 -0
- package/dist-cms/mocks/handlers/user-group/index.js +4 -0
- package/dist-cms/mocks/handlers/user-group/item.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/user-group/item.handlers.js +13 -0
- package/dist-cms/mocks/handlers/user-group/slug.d.ts +1 -0
- package/dist-cms/mocks/handlers/user-group/slug.js +1 -0
- package/dist-cms/mocks/handlers/user.handlers.js +15 -1
- package/dist-cms/packages/core/components/input-list-base/input-list-base.js +1 -1
- package/dist-cms/packages/core/components/input-section/input-section.element.d.ts +2 -2
- package/dist-cms/packages/core/components/input-section/input-section.element.js +5 -5
- package/dist-cms/packages/core/extension-registry/conditions/types.d.ts +3 -2
- package/dist-cms/packages/core/extension-registry/models/index.d.ts +5 -1
- package/dist-cms/packages/core/extension-registry/models/index.js +2 -0
- package/dist-cms/packages/core/extension-registry/models/user-granular-permission.model.d.ts +8 -0
- package/dist-cms/packages/core/extension-registry/models/user-granular-permission.model.js +1 -0
- package/dist-cms/packages/core/extension-registry/models/user-permission.model.d.ts +11 -0
- package/dist-cms/packages/core/extension-registry/models/user-permission.model.js +1 -0
- package/dist-cms/packages/core/localization/index.d.ts +3 -0
- package/dist-cms/packages/core/localization/index.js +3 -0
- package/dist-cms/packages/core/localization/localize-date.element.d.ts +28 -0
- package/dist-cms/packages/core/localization/localize-date.element.js +42 -0
- package/dist-cms/packages/core/localization/localize-number.element.d.ts +28 -0
- package/dist-cms/packages/core/localization/localize-number.element.js +42 -0
- package/dist-cms/packages/core/localization/localize-relative-time.element.d.ts +34 -0
- package/dist-cms/packages/core/localization/localize-relative-time.element.js +54 -0
- package/dist-cms/packages/core/localization/localize.element.js +1 -1
- package/dist-cms/packages/core/modal/common/entity-user-permission-settings/entity-user-permission-settings-modal.element.d.ts +19 -0
- package/dist-cms/packages/core/modal/common/entity-user-permission-settings/entity-user-permission-settings-modal.element.js +97 -0
- package/dist-cms/packages/core/modal/common/manifests.js +6 -0
- package/dist-cms/packages/core/modal/common/tree-picker/tree-picker-modal.element.js +5 -3
- package/dist-cms/packages/core/modal/token/entity-user-permission-settings-modal.token.d.ts +7 -0
- package/dist-cms/packages/core/modal/token/entity-user-permission-settings-modal.token.js +4 -0
- package/dist-cms/packages/core/modal/token/index.d.ts +1 -0
- package/dist-cms/packages/core/modal/token/index.js +1 -0
- package/dist-cms/packages/core/picker-input/picker-input.context.js +1 -3
- package/dist-cms/packages/core/tree/tree.context.js +3 -2
- package/dist-cms/packages/documents/documents/components/index.d.ts +1 -0
- package/dist-cms/packages/documents/documents/components/index.js +1 -0
- package/dist-cms/packages/documents/documents/components/input-document/input-document.context.d.ts +6 -0
- package/dist-cms/packages/documents/documents/components/input-document/input-document.context.js +7 -0
- package/dist-cms/packages/documents/documents/components/input-document/input-document.element.d.ts +7 -12
- package/dist-cms/packages/documents/documents/components/input-document/input-document.element.js +51 -64
- package/dist-cms/packages/documents/documents/components/input-document-granular-permission/input-document-granular-permission.element.d.ts +23 -0
- package/dist-cms/packages/documents/documents/components/input-document-granular-permission/input-document-granular-permission.element.js +102 -0
- package/dist-cms/packages/documents/documents/entity-actions/create/manifests.js +9 -0
- package/dist-cms/packages/documents/documents/entity-actions/manifests.js +1 -1
- package/dist-cms/packages/documents/documents/entity-actions/permissions.action.d.ts +2 -1
- package/dist-cms/packages/documents/documents/entity-actions/permissions.action.js +22 -2
- package/dist-cms/packages/documents/documents/index.d.ts +2 -0
- package/dist-cms/packages/documents/documents/index.js +2 -0
- package/dist-cms/packages/documents/documents/manifests.d.ts +4 -0
- package/dist-cms/packages/documents/documents/manifests.js +2 -0
- package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.d.ts +4 -0
- package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.js +6 -0
- package/dist-cms/packages/documents/documents/recycle-bin/manifests.d.ts +4 -0
- package/dist-cms/packages/documents/documents/repository/document.repository.js +4 -4
- package/dist-cms/packages/documents/documents/repository/manifests.d.ts +3 -2
- package/dist-cms/packages/documents/documents/repository/manifests.js +9 -1
- package/dist-cms/packages/documents/documents/user-permissions/index.d.ts +1 -0
- package/dist-cms/packages/documents/documents/user-permissions/index.js +1 -0
- package/dist-cms/packages/documents/documents/user-permissions/manifests.d.ts +19 -0
- package/dist-cms/packages/documents/documents/user-permissions/manifests.js +196 -0
- package/dist-cms/packages/documents/documents/workspace/views/info/document-info-workspace-view.element.js +29 -28
- package/dist-cms/packages/documents/manifests.d.ts +4 -0
- package/dist-cms/packages/log-viewer/workspace/views/overview/components/log-viewer-saved-searches-overview.element.js +1 -1
- package/dist-cms/packages/media/manifests.d.ts +2 -1
- package/dist-cms/packages/media/manifests.js +1 -0
- package/dist-cms/packages/media/media/components/index.d.ts +1 -0
- package/dist-cms/packages/media/media/components/index.js +1 -0
- package/dist-cms/packages/media/media/components/input-media/input-media.context.d.ts +6 -0
- package/dist-cms/packages/media/media/components/input-media/input-media.context.js +7 -0
- package/dist-cms/packages/media/media/components/input-media/input-media.element.d.ts +7 -15
- package/dist-cms/packages/media/media/components/input-media/input-media.element.js +50 -72
- package/dist-cms/packages/media/media/index.d.ts +2 -0
- package/dist-cms/packages/media/media/index.js +1 -1
- package/dist-cms/packages/media/media/manifests.d.ts +1 -1
- package/dist-cms/packages/media/media/manifests.js +2 -0
- package/dist-cms/packages/media/media/repository/manifests.d.ts +3 -2
- package/dist-cms/packages/media/media/repository/manifests.js +9 -1
- package/dist-cms/packages/media/media/repository/media-item.store.d.ts +20 -0
- package/dist-cms/packages/media/media/repository/media-item.store.js +23 -0
- package/dist-cms/packages/media/media/repository/media.repository.d.ts +6 -0
- package/dist-cms/packages/media/media/repository/media.repository.js +22 -0
- package/dist-cms/packages/media/media/repository/sources/media-item.server.data.d.ts +24 -0
- package/dist-cms/packages/media/media/repository/sources/media-item.server.data.js +31 -0
- package/dist-cms/packages/media/media/user-permissions/index.d.ts +1 -0
- package/dist-cms/packages/media/media/user-permissions/index.js +1 -0
- package/dist-cms/packages/media/media/user-permissions/manifests.d.ts +4 -0
- package/dist-cms/packages/media/media/user-permissions/manifests.js +27 -0
- package/dist-cms/packages/users/current-user/conditions/index.d.ts +1 -0
- package/dist-cms/packages/users/current-user/conditions/index.js +1 -0
- package/dist-cms/packages/users/current-user/conditions/user-permission.condition.d.ts +18 -0
- package/dist-cms/packages/users/current-user/conditions/user-permission.condition.js +23 -0
- package/dist-cms/packages/users/current-user/index.d.ts +1 -0
- package/dist-cms/packages/users/current-user/index.js +1 -0
- package/dist-cms/packages/users/current-user/manifests.js +7 -1
- package/dist-cms/packages/users/current-user/modals/current-user/current-user-modal.element.js +7 -7
- package/dist-cms/packages/users/index.d.ts +4 -2
- package/dist-cms/packages/users/index.js +4 -2
- package/dist-cms/packages/users/manifests.d.ts +2 -0
- package/dist-cms/packages/users/manifests.js +3 -0
- package/dist-cms/packages/users/user-groups/collection/user-group-collection-header.element.js +2 -2
- package/dist-cms/packages/users/user-groups/collection/user-group-collection-view.element.js +6 -6
- package/dist-cms/packages/users/user-groups/components/index.d.ts +1 -0
- package/dist-cms/packages/users/user-groups/components/index.js +1 -0
- package/dist-cms/packages/users/user-groups/entity-actions/manifests.d.ts +2 -0
- package/dist-cms/packages/users/user-groups/entity-actions/manifests.js +19 -0
- package/dist-cms/packages/users/user-groups/index.d.ts +2 -0
- package/dist-cms/packages/users/user-groups/index.js +2 -0
- package/dist-cms/packages/users/user-groups/manifests.d.ts +1 -1
- package/dist-cms/packages/users/user-groups/manifests.js +2 -0
- package/dist-cms/packages/users/user-groups/workspace/components/user-group-default-permission-list.element.d.ts +16 -0
- package/dist-cms/packages/users/user-groups/workspace/components/user-group-default-permission-list.element.js +69 -0
- package/dist-cms/packages/users/user-groups/workspace/components/user-group-granular-permission-list.element.d.ts +14 -0
- package/dist-cms/packages/users/user-groups/workspace/components/user-group-granular-permission-list.element.js +31 -0
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace-editor.element.d.ts +2 -0
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace-editor.element.js +57 -56
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.context.d.ts +12 -0
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.context.js +20 -0
- package/dist-cms/packages/users/user-groups/workspace/user-group-workspace.element.js +1 -1
- package/dist-cms/packages/users/users/collection/user-collection-header.element.js +18 -11
- package/dist-cms/packages/users/users/collection/views/grid/user-collection-grid-view.element.js +6 -6
- package/dist-cms/packages/users/users/collection/views/table/column-layouts/status/user-table-status-column-layout.element.js +3 -3
- package/dist-cms/packages/users/users/components/index.d.ts +3 -0
- package/dist-cms/packages/users/users/components/index.js +3 -0
- package/dist-cms/packages/users/users/components/user-input/user-input.element.js +2 -2
- package/dist-cms/packages/users/users/components/user-permission-setting/user-permission-setting.element.d.ts +15 -0
- package/dist-cms/packages/users/users/components/user-permission-setting/user-permission-setting.element.js +66 -0
- package/dist-cms/packages/users/users/index.d.ts +2 -0
- package/dist-cms/packages/users/users/index.js +2 -0
- package/dist-cms/packages/users/users/modals/user-picker/user-picker-modal.element.d.ts +3 -1
- package/dist-cms/packages/users/users/modals/user-picker/user-picker-modal.element.js +20 -25
- package/dist-cms/packages/users/users/repository/index.d.ts +1 -0
- package/dist-cms/packages/users/users/repository/index.js +1 -0
- package/dist-cms/packages/users/users/repository/user.repository.js +1 -1
- package/dist-cms/packages/users/users/workspace/user-workspace-editor.element.js +73 -56
- package/dist-cms/packages/users/utils.d.ts +5 -2
- package/dist-cms/packages/users/utils.js +14 -14
- package/dist-cms/shared/auth/auth-flow.d.ts +0 -4
- package/dist-cms/shared/auth/auth-flow.js +6 -25
- package/dist-cms/shared/repository/repository-items.manager.js +5 -0
- package/dist-cms/shared/umb-events/index.d.ts +1 -0
- package/dist-cms/shared/umb-events/index.js +1 -0
- package/dist-cms/shared/umb-events/selected.event.d.ts +3 -0
- package/dist-cms/shared/umb-events/selected.event.js +6 -0
- package/dist-cms/tinymce/CHANGELOG.md +48 -0
- package/dist-cms/tinymce/composer.json +1 -1
- 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 +5 -5
- package/dist-cms/tinymce/plugins/help/plugin.min.js +2 -2
- package/dist-cms/tinymce/plugins/image/plugin.js +1 -1
- package/dist-cms/tinymce/plugins/image/plugin.min.js +1 -1
- 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 +63 -8
- package/dist-cms/tinymce/plugins/lists/plugin.min.js +2 -2
- package/dist-cms/tinymce/plugins/media/plugin.js +3 -23
- package/dist-cms/tinymce/plugins/media/plugin.min.js +2 -2
- 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 +13 -4
- package/dist-cms/tinymce/plugins/quickbars/plugin.min.js +2 -2
- 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 +2 -2
- package/dist-cms/tinymce/plugins/table/plugin.min.js +2 -2
- 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/content.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide/content.inline.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide/content.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide/skin.css +51 -11
- package/dist-cms/tinymce/skins/ui/oxide/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/content.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/content.inline.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/oxide-dark/skin.css +54 -14
- package/dist-cms/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/content.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/content.inline.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/content.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5/skin.css +51 -11
- package/dist-cms/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/content.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/content.inline.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -1
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/skin.css +51 -11
- package/dist-cms/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
- package/dist-cms/tinymce/themes/silver/theme.js +158 -55
- package/dist-cms/tinymce/themes/silver/theme.min.js +2 -2
- package/dist-cms/tinymce/tinymce.d.ts +4 -6
- package/dist-cms/tinymce/tinymce.js +911 -691
- package/dist-cms/tinymce/tinymce.min.js +2 -2
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/umbraco-package-schema.json +154 -0
- package/dist-cms/vscode-html-custom-data.json +167 -18
- package/package.json +2 -2
- package/dist-cms/mocks/data/user-groups.data.d.ts +0 -9
- package/dist-cms/mocks/data/user-groups.data.js +0 -21
- package/dist-cms/mocks/data/users.data.d.ts +0 -16
- package/dist-cms/mocks/handlers/user-group.handlers.js +0 -17
- /package/dist-cms/mocks/handlers/{user-group.handlers.d.ts → user-group/index.d.ts} +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { MediaResource } from '../../../../../external/backend-api/index.js';
|
|
2
|
+
import { tryExecuteAndNotify } from '../../../../../shared/resources/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* A data source for Media items that fetches data from the server
|
|
5
|
+
* @export
|
|
6
|
+
* @class UmbMediaItemServerDataSource
|
|
7
|
+
* @implements {MediaItemDataSource}
|
|
8
|
+
*/
|
|
9
|
+
export class UmbMediaItemServerDataSource {
|
|
10
|
+
#host;
|
|
11
|
+
/**
|
|
12
|
+
* Creates an instance of UmbMediaItemServerDataSource.
|
|
13
|
+
* @param {UmbControllerHostElement} host
|
|
14
|
+
* @memberof UmbMediaItemServerDataSource
|
|
15
|
+
*/
|
|
16
|
+
constructor(host) {
|
|
17
|
+
this.#host = host;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Fetches the items for the given ids from the server
|
|
21
|
+
* @param {Array<string>} ids
|
|
22
|
+
* @memberof UmbMediaItemServerDataSource
|
|
23
|
+
*/
|
|
24
|
+
async getItems(ids) {
|
|
25
|
+
if (!ids)
|
|
26
|
+
throw new Error('Ids are missing');
|
|
27
|
+
return tryExecuteAndNotify(this.#host, MediaResource.getMediaItem({
|
|
28
|
+
id: ids,
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './manifests.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './manifests.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ManifestUserPermission } from '../../../core/extension-registry/index.js';
|
|
2
|
+
export declare const UMB_USER_PERMISSION_MEDIA_MOVE = "Umb.UserPermission.Media.Move";
|
|
3
|
+
export declare const UMB_USER_PERMISSION_MEDIA_COPY = "Umb.UserPermission.Media.Copy";
|
|
4
|
+
export declare const manifests: ManifestUserPermission[];
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const UMB_USER_PERMISSION_MEDIA_MOVE = 'Umb.UserPermission.Media.Move';
|
|
2
|
+
export const UMB_USER_PERMISSION_MEDIA_COPY = 'Umb.UserPermission.Media.Copy';
|
|
3
|
+
const permissions = [
|
|
4
|
+
{
|
|
5
|
+
type: 'userPermission',
|
|
6
|
+
alias: UMB_USER_PERMISSION_MEDIA_MOVE,
|
|
7
|
+
name: 'Move Media Item User Permission',
|
|
8
|
+
meta: {
|
|
9
|
+
entityType: 'media',
|
|
10
|
+
label: 'Move',
|
|
11
|
+
description: 'Allow access to move media items',
|
|
12
|
+
group: 'structure',
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
type: 'userPermission',
|
|
17
|
+
alias: UMB_USER_PERMISSION_MEDIA_COPY,
|
|
18
|
+
name: 'Copy Media Item User Permission',
|
|
19
|
+
meta: {
|
|
20
|
+
entityType: 'media',
|
|
21
|
+
label: 'Copy',
|
|
22
|
+
description: 'Allow access to copy a media item',
|
|
23
|
+
group: 'structure',
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
export const manifests = [...permissions];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './user-permission.condition.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './user-permission.condition.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { UmbBaseController } from '../../../../libs/controller-api/index.js';
|
|
2
|
+
import { ManifestCondition, UmbConditionConfigBase, UmbConditionControllerArguments, UmbExtensionCondition } from '../../../../libs/extension-api/index.js';
|
|
3
|
+
export declare class UmbUserPermissionCondition extends UmbBaseController implements UmbExtensionCondition {
|
|
4
|
+
#private;
|
|
5
|
+
config: UserPermissionConditionConfig;
|
|
6
|
+
permitted: boolean;
|
|
7
|
+
constructor(args: UmbConditionControllerArguments<UserPermissionConditionConfig>);
|
|
8
|
+
}
|
|
9
|
+
export type UserPermissionConditionConfig = UmbConditionConfigBase<'Umb.Condition.UserPermission'> & {
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* "Umb.UserPermission.Document.Create"
|
|
15
|
+
*/
|
|
16
|
+
match: string;
|
|
17
|
+
};
|
|
18
|
+
export declare const manifest: ManifestCondition;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { UMB_AUTH } from '../../../../shared/auth/index.js';
|
|
2
|
+
import { UmbBaseController } from '../../../../libs/controller-api/index.js';
|
|
3
|
+
export class UmbUserPermissionCondition extends UmbBaseController {
|
|
4
|
+
#onChange;
|
|
5
|
+
constructor(args) {
|
|
6
|
+
super(args.host);
|
|
7
|
+
this.permitted = false;
|
|
8
|
+
this.config = args.config;
|
|
9
|
+
this.#onChange = args.onChange;
|
|
10
|
+
this.consumeContext(UMB_AUTH, (context) => {
|
|
11
|
+
this.observe(context.currentUser, (currentUser) => {
|
|
12
|
+
this.permitted = currentUser?.permissions?.includes(this.config.match) || false;
|
|
13
|
+
this.#onChange();
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export const manifest = {
|
|
19
|
+
type: 'condition',
|
|
20
|
+
name: 'User Permission Condition',
|
|
21
|
+
alias: 'Umb.Condition.UserPermission',
|
|
22
|
+
class: UmbUserPermissionCondition,
|
|
23
|
+
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { manifests as modalManifests } from './modals/manifests.js';
|
|
2
2
|
import { manifests as userProfileAppsManifests } from './user-profile-apps/manifests.js';
|
|
3
|
+
import { manifest as userPermissionConditionManifest } from './conditions/user-permission.condition.js';
|
|
3
4
|
export const headerApps = [
|
|
4
5
|
{
|
|
5
6
|
type: 'store',
|
|
@@ -20,4 +21,9 @@ export const headerApps = [
|
|
|
20
21
|
},
|
|
21
22
|
},
|
|
22
23
|
];
|
|
23
|
-
export const manifests = [
|
|
24
|
+
export const manifests = [
|
|
25
|
+
...headerApps,
|
|
26
|
+
...modalManifests,
|
|
27
|
+
...userProfileAppsManifests,
|
|
28
|
+
userPermissionConditionManifest,
|
|
29
|
+
];
|
package/dist-cms/packages/users/current-user/modals/current-user/current-user-modal.element.js
CHANGED
|
@@ -10,12 +10,12 @@ import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
|
10
10
|
import { css, html, customElement, property, state } from '../../../../../external/lit/index.js';
|
|
11
11
|
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
12
12
|
export let UmbCurrentUserModalElement = class UmbCurrentUserModalElement extends UmbLitElement {
|
|
13
|
-
#
|
|
13
|
+
#authContext;
|
|
14
14
|
#appContext;
|
|
15
15
|
constructor() {
|
|
16
16
|
super();
|
|
17
17
|
this.consumeContext(UMB_AUTH, (instance) => {
|
|
18
|
-
this.#
|
|
18
|
+
this.#authContext = instance;
|
|
19
19
|
this._observeCurrentUser();
|
|
20
20
|
});
|
|
21
21
|
this.consumeContext(UMB_APP, (instance) => {
|
|
@@ -23,9 +23,9 @@ export let UmbCurrentUserModalElement = class UmbCurrentUserModalElement extends
|
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
25
|
async _observeCurrentUser() {
|
|
26
|
-
if (!this.#
|
|
26
|
+
if (!this.#authContext)
|
|
27
27
|
return;
|
|
28
|
-
this.observe(this.#
|
|
28
|
+
this.observe(this.#authContext.currentUser, (currentUser) => {
|
|
29
29
|
this._currentUser = currentUser;
|
|
30
30
|
});
|
|
31
31
|
}
|
|
@@ -33,10 +33,10 @@ export let UmbCurrentUserModalElement = class UmbCurrentUserModalElement extends
|
|
|
33
33
|
this.modalContext?.submit();
|
|
34
34
|
}
|
|
35
35
|
async _logout() {
|
|
36
|
-
if (!this.#
|
|
36
|
+
if (!this.#authContext)
|
|
37
37
|
return;
|
|
38
|
-
this.#
|
|
39
|
-
await this.#
|
|
38
|
+
this.#authContext.performWithFreshTokens;
|
|
39
|
+
await this.#authContext.signOut();
|
|
40
40
|
let newUrl = this.#appContext ? `${this.#appContext.getBackofficePath()}/login` : '/';
|
|
41
41
|
newUrl = newUrl.replace(/\/\//g, '/');
|
|
42
42
|
location.href = newUrl;
|
|
@@ -2,4 +2,7 @@ import { manifests as userGroupManifests } from './user-groups/manifests.js';
|
|
|
2
2
|
import { manifests as userManifests } from './users/manifests.js';
|
|
3
3
|
import { manifests as userSectionManifests } from './user-section/manifests.js';
|
|
4
4
|
import { manifests as currentUserManifests } from './current-user/manifests.js';
|
|
5
|
+
// We need to load any components that are not loaded by the user management bundle to register them in the browser.
|
|
6
|
+
import './user-groups/components/index.js';
|
|
7
|
+
import './users/components/index.js';
|
|
5
8
|
export const manifests = [...userGroupManifests, ...userManifests, ...userSectionManifests, ...currentUserManifests];
|
package/dist-cms/packages/users/user-groups/collection/user-group-collection-header.element.js
CHANGED
|
@@ -23,8 +23,8 @@ export let UmbUserGroupCollectionHeaderElement = class UmbUserGroupCollectionHea
|
|
|
23
23
|
}
|
|
24
24
|
render() {
|
|
25
25
|
return html `
|
|
26
|
-
<uui-button @click=${this.#onCreate} label
|
|
27
|
-
<uui-input @input=${this.#onSearch} label
|
|
26
|
+
<uui-button @click=${this.#onCreate} label=${this.localize.term('actions_createGroup')} look="outline"></uui-button>
|
|
27
|
+
<uui-input @input=${this.#onSearch} label=${this.localize.term('general_search')} placeholder=${this.localize.term('visuallyHiddenTexts_userGroupSearchLabel')} id="input-search"></uui-input>
|
|
28
28
|
`;
|
|
29
29
|
}
|
|
30
30
|
static { this.styles = [
|
package/dist-cms/packages/users/user-groups/collection/user-group-collection-view.element.js
CHANGED
|
@@ -19,21 +19,21 @@ export let UmbUserGroupCollectionViewElement = class UmbUserGroupCollectionViewE
|
|
|
19
19
|
};
|
|
20
20
|
this._tableColumns = [
|
|
21
21
|
{
|
|
22
|
-
name: '
|
|
22
|
+
name: this.localize.term('general_name'),
|
|
23
23
|
alias: 'userGroupName',
|
|
24
24
|
elementName: 'umb-user-group-table-name-column-layout',
|
|
25
25
|
},
|
|
26
26
|
{
|
|
27
|
-
name: '
|
|
27
|
+
name: this.localize.term('main_sections'),
|
|
28
28
|
alias: 'userGroupSections',
|
|
29
29
|
elementName: 'umb-user-group-table-sections-column-layout',
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
|
-
name: '
|
|
32
|
+
name: this.localize.term('user_startnode'),
|
|
33
33
|
alias: 'userGroupContentStartNode',
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
|
-
name: '
|
|
36
|
+
name: this.localize.term('user_mediastartnode'),
|
|
37
37
|
alias: 'userGroupMediaStartNode',
|
|
38
38
|
},
|
|
39
39
|
];
|
|
@@ -67,11 +67,11 @@ export let UmbUserGroupCollectionViewElement = class UmbUserGroupCollectionViewE
|
|
|
67
67
|
},
|
|
68
68
|
{
|
|
69
69
|
columnAlias: 'userGroupContentStartNode',
|
|
70
|
-
value: userGroup.documentStartNodeId || '
|
|
70
|
+
value: userGroup.documentStartNodeId || this.localize.term('content_contentRoot'),
|
|
71
71
|
},
|
|
72
72
|
{
|
|
73
73
|
columnAlias: 'userGroupMediaStartNode',
|
|
74
|
-
value: userGroup.mediaStartNodeId || '
|
|
74
|
+
value: userGroup.mediaStartNodeId || this.localize.term('media_mediaRoot'),
|
|
75
75
|
},
|
|
76
76
|
],
|
|
77
77
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { USER_GROUP_REPOSITORY_ALIAS } from '../repository/manifests.js';
|
|
2
|
+
import { UMB_USER_GROUP_ENTITY_TYPE } from '../index.js';
|
|
3
|
+
import { UmbDeleteEntityAction } from '../../../core/entity-action/index.js';
|
|
4
|
+
const entityActions = [
|
|
5
|
+
{
|
|
6
|
+
type: 'entityAction',
|
|
7
|
+
alias: 'Umb.EntityAction.UserGroup.Delete',
|
|
8
|
+
name: 'Delete User Group Entity Action',
|
|
9
|
+
weight: 900,
|
|
10
|
+
meta: {
|
|
11
|
+
icon: 'umb:trash',
|
|
12
|
+
label: 'Delete...',
|
|
13
|
+
repositoryAlias: USER_GROUP_REPOSITORY_ALIAS,
|
|
14
|
+
api: UmbDeleteEntityAction,
|
|
15
|
+
entityTypes: [UMB_USER_GROUP_ENTITY_TYPE],
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
];
|
|
19
|
+
export const manifests = [...entityActions];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const manifests:
|
|
1
|
+
export declare const manifests: import("../../core/index.js").ManifestTypes[];
|
|
@@ -2,11 +2,13 @@ import { manifests as repositoryManifests } from './repository/manifests.js';
|
|
|
2
2
|
import { manifests as workspaceManifests } from './workspace/manifests.js';
|
|
3
3
|
import { manifests as modalManifests } from './modals/manifests.js';
|
|
4
4
|
import { manifests as sectionViewManifests } from './section-view/manifests.js';
|
|
5
|
+
import { manifests as entityActionManifests } from './entity-actions/manifests.js';
|
|
5
6
|
import { manifests as entityBulkActionManifests } from './entity-bulk-actions/manifests.js';
|
|
6
7
|
export const manifests = [
|
|
7
8
|
...repositoryManifests,
|
|
8
9
|
...workspaceManifests,
|
|
9
10
|
...modalManifests,
|
|
10
11
|
...sectionViewManifests,
|
|
12
|
+
...entityActionManifests,
|
|
11
13
|
...entityBulkActionManifests,
|
|
12
14
|
];
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
2
|
+
export declare class UmbUserGroupDefaultPermissionListElement extends UmbLitElement {
|
|
3
|
+
#private;
|
|
4
|
+
private _userGroup?;
|
|
5
|
+
private _manifests;
|
|
6
|
+
private _entityTypes;
|
|
7
|
+
constructor();
|
|
8
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
9
|
+
static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
|
|
10
|
+
}
|
|
11
|
+
export default UmbUserGroupDefaultPermissionListElement;
|
|
12
|
+
declare global {
|
|
13
|
+
interface HTMLElementTagNameMap {
|
|
14
|
+
'umb-user-group-default-permission-list': UmbUserGroupDefaultPermissionListElement;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { UMB_USER_GROUP_WORKSPACE_CONTEXT } from '../user-group-workspace.context.js';
|
|
8
|
+
import { html, customElement, state, ifDefined } from '../../../../../external/lit/index.js';
|
|
9
|
+
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
10
|
+
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
11
|
+
import { umbExtensionsRegistry } from '../../../../core/extension-registry/index.js';
|
|
12
|
+
export let UmbUserGroupDefaultPermissionListElement = class UmbUserGroupDefaultPermissionListElement extends UmbLitElement {
|
|
13
|
+
#userGroupWorkspaceContext;
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
this._manifests = [];
|
|
17
|
+
this._entityTypes = [];
|
|
18
|
+
this.#observeUserPermissions();
|
|
19
|
+
this.consumeContext(UMB_USER_GROUP_WORKSPACE_CONTEXT, (instance) => {
|
|
20
|
+
this.#userGroupWorkspaceContext = instance;
|
|
21
|
+
this.observe(this.#userGroupWorkspaceContext.data, (userGroup) => (this._userGroup = userGroup));
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
#observeUserPermissions() {
|
|
25
|
+
this.observe(umbExtensionsRegistry.extensionsOfType('userPermission'), (userPermissionManifests) => {
|
|
26
|
+
this._manifests = userPermissionManifests;
|
|
27
|
+
this._entityTypes = [...new Set(userPermissionManifests.map((manifest) => manifest.meta.entityType))];
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
#onChangeUserPermission(event, userPermissionManifest) {
|
|
31
|
+
const target = event.target;
|
|
32
|
+
target.allowed
|
|
33
|
+
? this.#userGroupWorkspaceContext?.addPermission(userPermissionManifest.alias)
|
|
34
|
+
: this.#userGroupWorkspaceContext?.removePermission(userPermissionManifest.alias);
|
|
35
|
+
}
|
|
36
|
+
#isAllowed(userPermissionManifest) {
|
|
37
|
+
return this._userGroup?.permissions?.includes(userPermissionManifest.alias);
|
|
38
|
+
}
|
|
39
|
+
render() {
|
|
40
|
+
return html ` ${this._entityTypes.map((entityType) => this.#renderPermissionsForEntityType(entityType))} `;
|
|
41
|
+
}
|
|
42
|
+
#renderPermissionsForEntityType(entityType) {
|
|
43
|
+
return html ` <h4><umb-localize .key=${`user_permissionsEntityGroup_${entityType}`}>${entityType}</umb-localize></h4>
|
|
44
|
+
${this._manifests
|
|
45
|
+
.filter((manifest) => manifest.meta.entityType === entityType)
|
|
46
|
+
.map((manifest) => this.#renderPermission(manifest))}`;
|
|
47
|
+
}
|
|
48
|
+
#renderPermission(manifest) {
|
|
49
|
+
return html ` <umb-user-permission-setting
|
|
50
|
+
label=${manifest.meta.label}
|
|
51
|
+
description=${ifDefined(manifest.meta.description)}
|
|
52
|
+
?allowed=${this.#isAllowed(manifest)}
|
|
53
|
+
@change=${(event) => this.#onChangeUserPermission(event, manifest)}></umb-user-permission-setting>`;
|
|
54
|
+
}
|
|
55
|
+
static { this.styles = [UmbTextStyles]; }
|
|
56
|
+
};
|
|
57
|
+
__decorate([
|
|
58
|
+
state()
|
|
59
|
+
], UmbUserGroupDefaultPermissionListElement.prototype, "_userGroup", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
state()
|
|
62
|
+
], UmbUserGroupDefaultPermissionListElement.prototype, "_manifests", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
state()
|
|
65
|
+
], UmbUserGroupDefaultPermissionListElement.prototype, "_entityTypes", void 0);
|
|
66
|
+
UmbUserGroupDefaultPermissionListElement = __decorate([
|
|
67
|
+
customElement('umb-user-group-default-permission-list')
|
|
68
|
+
], UmbUserGroupDefaultPermissionListElement);
|
|
69
|
+
export default UmbUserGroupDefaultPermissionListElement;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
2
|
+
export declare class UmbUserGroupGranularPermissionListElement extends UmbLitElement {
|
|
3
|
+
#private;
|
|
4
|
+
private _userGroup?;
|
|
5
|
+
constructor();
|
|
6
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
7
|
+
static styles: import("@lit/reactive-element/css-tag.js").CSSResult[];
|
|
8
|
+
}
|
|
9
|
+
export default UmbUserGroupGranularPermissionListElement;
|
|
10
|
+
declare global {
|
|
11
|
+
interface HTMLElementTagNameMap {
|
|
12
|
+
'umb-user-group-granular-permission-list': UmbUserGroupGranularPermissionListElement;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { UMB_USER_GROUP_WORKSPACE_CONTEXT } from '../user-group-workspace.context.js';
|
|
8
|
+
import { css, html, customElement, state } from '../../../../../external/lit/index.js';
|
|
9
|
+
import { UmbLitElement } from '../../../../../shared/lit-element/index.js';
|
|
10
|
+
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
11
|
+
export let UmbUserGroupGranularPermissionListElement = class UmbUserGroupGranularPermissionListElement extends UmbLitElement {
|
|
12
|
+
#workspaceContext;
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
this.consumeContext(UMB_USER_GROUP_WORKSPACE_CONTEXT, (instance) => {
|
|
16
|
+
this.#workspaceContext = instance;
|
|
17
|
+
this.observe(this.#workspaceContext.data, (userGroup) => (this._userGroup = userGroup));
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
render() {
|
|
21
|
+
return html `<umb-extension-slot type="userGranularPermission"></umb-extension-slot>`;
|
|
22
|
+
}
|
|
23
|
+
static { this.styles = [UmbTextStyles, css ``]; }
|
|
24
|
+
};
|
|
25
|
+
__decorate([
|
|
26
|
+
state()
|
|
27
|
+
], UmbUserGroupGranularPermissionListElement.prototype, "_userGroup", void 0);
|
|
28
|
+
UmbUserGroupGranularPermissionListElement = __decorate([
|
|
29
|
+
customElement('umb-user-group-granular-permission-list')
|
|
30
|
+
], UmbUserGroupGranularPermissionListElement);
|
|
31
|
+
export default UmbUserGroupGranularPermissionListElement;
|
package/dist-cms/packages/users/user-groups/workspace/user-group-workspace-editor.element.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { nothing } from '../../../../external/lit/index.js';
|
|
2
2
|
import { UmbLitElement } from '../../../../shared/lit-element/index.js';
|
|
3
|
+
import './components/user-group-default-permission-list.element.js';
|
|
4
|
+
import './components/user-group-granular-permission-list.element.js';
|
|
3
5
|
export declare class UmbUserGroupWorkspaceEditorElement extends UmbLitElement {
|
|
4
6
|
#private;
|
|
5
7
|
private _userGroup?;
|