@umbraco-cms/backoffice 14.0.0-abd22b1c → 14.0.0-ad074301
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 +297 -28
- package/dist-cms/external/backend-api/index.js +1 -1
- package/dist-cms/external/backend-api/src/index.d.ts +17 -1
- package/dist-cms/external/backend-api/src/models/CreateContentRequestModelBaseDocumentValueModelDocumentVariantRequestModel.d.ts +1 -0
- package/dist-cms/external/backend-api/src/models/CreateContentRequestModelBaseMediaValueModelMediaVariantRequestModel.d.ts +1 -0
- package/dist-cms/external/backend-api/src/models/CreateContentTypeRequestModelBaseCreateDocumentTypePropertyTypeRequestModelCreateDocumentTypePropertyTypeContainerRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/CreateContentTypeRequestModelBaseCreateMediaTypePropertyTypeRequestModelCreateMediaTypePropertyTypeContainerRequestModel.d.ts +20 -0
- package/dist-cms/external/backend-api/src/models/CreateMediaTypePropertyTypeContainerRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/CreateMediaTypePropertyTypeRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/CreateMediaTypeRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/DeleteUserGroupsRequestModel.d.ts +3 -0
- package/dist-cms/external/backend-api/src/models/DeleteUsersRequestModel.d.ts +3 -0
- package/dist-cms/external/backend-api/src/models/ItemSortingRequestModel.d.ts +4 -0
- package/dist-cms/external/backend-api/src/models/ProblemDetailsBuilderModel.d.ts +1 -0
- package/dist-cms/external/backend-api/src/models/RelationResponseModel.d.ts +2 -2
- package/dist-cms/external/backend-api/src/models/ResetPasswordRequestModel.d.ts +3 -0
- package/dist-cms/external/backend-api/src/models/ResetPasswordTokenRequestModel.d.ts +4 -0
- package/dist-cms/external/backend-api/src/models/SortingRequestModel.d.ts +5 -0
- package/dist-cms/external/backend-api/src/models/UpdateContentTypeRequestModelBaseUpdateMediaTypePropertyTypeRequestModelUpdateMediaTypePropertyTypeContainerRequestModel.d.ts +18 -0
- package/dist-cms/external/backend-api/src/models/{UpdateFolderReponseModel.d.ts → UpdateFolderResponseModel.d.ts} +1 -1
- package/dist-cms/external/backend-api/src/models/UpdateMediaTypePropertyTypeContainerRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/UpdateMediaTypePropertyTypeRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/UpdateMediaTypeRequestModel.d.ts +2 -0
- package/dist-cms/external/backend-api/src/models/VerifyResetPasswordTokenRequestModel.d.ts +4 -0
- package/dist-cms/external/backend-api/src/services/DataTypeResource.d.ts +2 -2
- package/dist-cms/external/backend-api/src/services/DocumentResource.d.ts +21 -21
- package/dist-cms/external/backend-api/src/services/DocumentTypeResource.d.ts +35 -3
- package/dist-cms/external/backend-api/src/services/MediaResource.d.ts +13 -5
- package/dist-cms/external/backend-api/src/services/MediaTypeResource.d.ts +56 -0
- package/dist-cms/external/backend-api/src/services/RelationResource.d.ts +1 -9
- package/dist-cms/external/backend-api/src/services/SecurityResource.d.ts +24 -0
- package/dist-cms/external/backend-api/src/services/UserGroupResource.d.ts +8 -0
- package/dist-cms/external/backend-api/src/services/UserResource.d.ts +8 -0
- package/dist-cms/external/router-slot/config.d.ts +8 -0
- package/dist-cms/external/router-slot/index.d.ts +4 -3
- package/dist-cms/external/router-slot/index.js +1 -1
- package/dist-cms/external/router-slot/model.d.ts +123 -0
- package/dist-cms/external/router-slot/router-slot.d.ts +111 -0
- package/dist-cms/external/router-slot/util/anchor.d.ts +5 -0
- package/dist-cms/external/router-slot/util/events.d.ts +26 -0
- package/dist-cms/external/router-slot/util/history.d.ts +32 -0
- package/dist-cms/external/router-slot/util/index.d.ts +6 -0
- package/dist-cms/external/router-slot/util/router.d.ts +72 -0
- package/dist-cms/external/router-slot/util/shadow.d.ts +15 -0
- package/dist-cms/external/router-slot/util/url.d.ts +78 -0
- package/dist-cms/external/router-slot/util.d.ts +1 -0
- package/dist-cms/external/tinymce/index.js +36 -36
- package/dist-cms/libs/observable-api/observer.js +2 -1
- package/dist-cms/mocks/browser-handlers.js +2 -2
- package/dist-cms/mocks/data/document.data.d.ts +6 -2
- package/dist-cms/mocks/data/document.data.js +54 -4
- package/dist-cms/mocks/data/entity.data.d.ts +1 -1
- package/dist-cms/mocks/data/entity.data.js +1 -11
- 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/{document.handlers.js → document/document.handlers.js} +28 -40
- package/dist-cms/mocks/handlers/document/index.js +5 -0
- package/dist-cms/mocks/handlers/document/item.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/document/item.handlers.js +13 -0
- package/dist-cms/mocks/handlers/document/recycle-bin.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/document/recycle-bin.handlers.js +16 -0
- package/dist-cms/mocks/handlers/document/slug.d.ts +1 -0
- package/dist-cms/mocks/handlers/document/slug.js +1 -0
- package/dist-cms/mocks/handlers/document/tree.handlers.d.ts +1 -0
- package/dist-cms/mocks/handlers/document/tree.handlers.js +16 -0
- 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.d.ts +1 -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/entity-action/common/trash/trash.action.d.ts +1 -1
- package/dist-cms/packages/core/entity-action/common/trash/trash.action.js +1 -1
- 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/create-document-modal.token.d.ts +8 -0
- package/dist-cms/packages/core/modal/token/create-document-modal.token.js +5 -0
- 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 +2 -1
- package/dist-cms/packages/core/modal/token/index.js +2 -1
- package/dist-cms/packages/core/picker-input/picker-input.context.js +1 -3
- package/dist-cms/packages/core/store/store-base.d.ts +18 -6
- package/dist-cms/packages/core/store/store-base.js +22 -6
- package/dist-cms/packages/core/tree/tree.context.js +3 -2
- package/dist-cms/packages/documents/document-types/manifests.js +0 -2
- package/dist-cms/packages/documents/document-types/repository/sources/document-type.server.data.d.ts +1 -1
- 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/create-document-modal.element.d.ts +17 -0
- package/dist-cms/packages/documents/{document-types/modals/allowed-document-types/allowed-document-types-modal.element.js → documents/entity-actions/create/create-document-modal.element.js} +29 -38
- package/dist-cms/packages/documents/documents/entity-actions/create/create.action.d.ts +0 -2
- package/dist-cms/packages/documents/documents/entity-actions/create/create.action.js +7 -23
- package/dist-cms/packages/documents/documents/entity-actions/create/manifests.d.ts +2 -0
- package/dist-cms/packages/documents/documents/entity-actions/create/manifests.js +36 -0
- package/dist-cms/packages/documents/documents/entity-actions/manifests.d.ts +2 -2
- package/dist-cms/packages/documents/documents/entity-actions/manifests.js +15 -48
- 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 +3 -0
- package/dist-cms/packages/documents/documents/index.js +3 -0
- package/dist-cms/packages/documents/documents/manifests.d.ts +17 -1
- package/dist-cms/packages/documents/documents/manifests.js +4 -0
- package/dist-cms/packages/documents/documents/menu-item/manifests.js +1 -1
- package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.d.ts +18 -0
- package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.js +24 -0
- package/dist-cms/packages/documents/documents/recycle-bin/index.d.ts +1 -0
- package/dist-cms/packages/documents/documents/recycle-bin/index.js +1 -0
- package/dist-cms/packages/documents/documents/recycle-bin/manifests.d.ts +17 -0
- package/dist-cms/packages/documents/documents/recycle-bin/manifests.js +5 -0
- package/dist-cms/packages/documents/documents/recycle-bin/menu-item/manifests.d.ts +1 -0
- package/dist-cms/packages/documents/documents/recycle-bin/menu-item/manifests.js +14 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/document-recycle-bin.repository.d.ts +28 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/document-recycle-bin.repository.js +56 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/document-recycle.bin.tree.store.d.ts +18 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/document-recycle.bin.tree.store.js +19 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/index.d.ts +1 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/index.js +1 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/manifests.d.ts +4 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/manifests.js +17 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/sources/document-recycle-bin.tree.server.data.d.ts +29 -0
- package/dist-cms/packages/documents/documents/recycle-bin/repository/sources/document-recycle-bin.tree.server.data.js +49 -0
- package/dist-cms/packages/documents/documents/recycle-bin/tree/manifests.d.ts +2 -0
- package/dist-cms/packages/documents/documents/recycle-bin/tree/manifests.js +19 -0
- package/dist-cms/packages/documents/documents/repository/document-item.store.d.ts +20 -0
- package/dist-cms/packages/documents/documents/repository/document-item.store.js +23 -0
- package/dist-cms/packages/documents/documents/repository/document.repository.d.ts +10 -9
- package/dist-cms/packages/documents/documents/repository/document.repository.js +50 -28
- package/dist-cms/packages/documents/documents/repository/document.store.d.ts +0 -12
- package/dist-cms/packages/documents/documents/repository/document.store.js +0 -16
- 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/repository/sources/document-item.server.data.d.ts +24 -0
- package/dist-cms/packages/documents/documents/repository/sources/document-item.server.data.js +31 -0
- package/dist-cms/packages/documents/documents/repository/sources/document.server.data.d.ts +9 -21
- package/dist-cms/packages/documents/documents/repository/sources/document.server.data.js +33 -62
- 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/manifests.js +6 -4
- 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 +17 -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/settings/relation-types/workspace/views/relation/workspace-view-relation-type-relation.element.js +17 -17
- package/dist-cms/packages/templating/templates/modals/query-builder/query-builder.element.d.ts +1 -1
- package/dist-cms/packages/templating/templates/modals/query-builder/query-builder.element.js +1 -1
- 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/data-source/folder-data-source.interface.d.ts +2 -2
- package/dist-cms/shared/repository/folder-repository.interface.d.ts +2 -2
- package/dist-cms/shared/repository/repository-items.manager.js +5 -0
- package/dist-cms/shared/router/index.d.ts +1 -1
- package/dist-cms/shared/router/index.js +1 -1
- 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 +173 -24
- package/package.json +3 -4
- 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/packages/core/modal/token/allowed-document-types-modal.token.d.ts +0 -9
- package/dist-cms/packages/core/modal/token/allowed-document-types-modal.token.js +0 -5
- package/dist-cms/packages/documents/document-types/modals/allowed-document-types/allowed-document-types-modal.element.d.ts +0 -19
- package/dist-cms/packages/documents/document-types/modals/manifests.d.ts +0 -2
- package/dist-cms/packages/documents/document-types/modals/manifests.js +0 -9
- package/router-slot-2.3.0.tgz +0 -0
- /package/dist-cms/mocks/handlers/{document.handlers.d.ts → document/document.handlers.d.ts} +0 -0
- /package/dist-cms/mocks/handlers/{user-group.handlers.d.ts → document/index.d.ts} +0 -0
|
@@ -34,7 +34,8 @@ export class UmbObserver {
|
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
36
|
hostConnected() {
|
|
37
|
-
if
|
|
37
|
+
// Notice: This will not re-subscribe if this controller was destroyed. Only if the subscription was closed.
|
|
38
|
+
if (this.#subscription?.closed) {
|
|
38
39
|
this.#subscription = this.#source.subscribe(this.#callback);
|
|
39
40
|
}
|
|
40
41
|
}
|
|
@@ -8,12 +8,12 @@ import * as serverHandlers from './handlers/server.handlers.js';
|
|
|
8
8
|
import { handlers as upgradeHandlers } from './handlers/upgrade.handlers.js';
|
|
9
9
|
import { handlers as userHandlers } from './handlers/user.handlers.js';
|
|
10
10
|
import { handlers as telemetryHandlers } from './handlers/telemetry.handlers.js';
|
|
11
|
-
import { handlers as userGroupsHandlers } from './handlers/user-group.
|
|
11
|
+
import { handlers as userGroupsHandlers } from './handlers/user-group/index.js';
|
|
12
12
|
import { handlers as examineManagementHandlers } from './handlers/examine-management.handlers.js';
|
|
13
13
|
import { handlers as modelsBuilderHandlers } from './handlers/modelsbuilder.handlers.js';
|
|
14
14
|
import { handlers as healthCheckHandlers } from './handlers/health-check.handlers.js';
|
|
15
15
|
import { handlers as profilingHandlers } from './handlers/performance-profiling.handlers.js';
|
|
16
|
-
import { handlers as documentHandlers } from './handlers/document.
|
|
16
|
+
import { handlers as documentHandlers } from './handlers/document/index.js';
|
|
17
17
|
import { handlers as mediaHandlers } from './handlers/media.handlers.js';
|
|
18
18
|
import { handlers as dictionaryHandlers } from './handlers/dictionary.handlers.js';
|
|
19
19
|
import { handlers as mediaTypeHandlers } from './handlers/media-type.handlers.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UmbEntityData } from './entity.data.js';
|
|
2
|
-
import { DocumentResponseModel, DocumentTreeItemResponseModel, PagedDocumentTreeItemResponseModel, PagedDocumentTypeResponseModel } from '../../external/backend-api/index.js';
|
|
2
|
+
import { DocumentItemResponseModel, DocumentResponseModel, DocumentTreeItemResponseModel, PagedDocumentTreeItemResponseModel, PagedDocumentTypeResponseModel, PagedRecycleBinItemResponseModel } from '../../external/backend-api/index.js';
|
|
3
3
|
export declare const data: Array<DocumentResponseModel>;
|
|
4
4
|
export declare const treeData: Array<DocumentTreeItemResponseModel>;
|
|
5
5
|
declare class UmbDocumentData extends UmbEntityData<DocumentResponseModel> {
|
|
@@ -7,11 +7,15 @@ declare class UmbDocumentData extends UmbEntityData<DocumentResponseModel> {
|
|
|
7
7
|
constructor();
|
|
8
8
|
insert(item: DocumentResponseModel): DocumentResponseModel;
|
|
9
9
|
update(id: string, item: DocumentResponseModel): DocumentResponseModel;
|
|
10
|
+
trash(ids: string[]): DocumentResponseModel[];
|
|
10
11
|
getTreeRoot(): PagedDocumentTreeItemResponseModel;
|
|
11
|
-
|
|
12
|
+
getTreeItemChildrenOf(id: string): PagedDocumentTreeItemResponseModel;
|
|
12
13
|
getTreeItem(ids: Array<string>): Array<DocumentTreeItemResponseModel>;
|
|
14
|
+
getItems(ids: Array<string>): Array<DocumentItemResponseModel>;
|
|
13
15
|
getDocumentByIdAllowedDocumentTypes(id: string): PagedDocumentTypeResponseModel;
|
|
14
16
|
getAllowedDocumentTypesAtRoot(): PagedDocumentTypeResponseModel;
|
|
17
|
+
getRecycleBinRoot(): PagedRecycleBinItemResponseModel;
|
|
18
|
+
getRecycleBinChildrenOf(parentId: string): PagedRecycleBinItemResponseModel;
|
|
15
19
|
}
|
|
16
20
|
export declare const umbDocumentData: UmbDocumentData;
|
|
17
21
|
export {};
|
|
@@ -460,7 +460,7 @@ export const data = [
|
|
|
460
460
|
publishDate: '2023-02-06T15:32:24.957009',
|
|
461
461
|
culture: 'en-us',
|
|
462
462
|
segment: null,
|
|
463
|
-
name: '
|
|
463
|
+
name: 'Simple Document',
|
|
464
464
|
createDate: '2023-02-06T15:32:05.350038',
|
|
465
465
|
updateDate: '2023-02-06T15:32:24.957009',
|
|
466
466
|
},
|
|
@@ -538,7 +538,29 @@ export const treeData = [
|
|
|
538
538
|
isEdited: false,
|
|
539
539
|
isTrashed: false,
|
|
540
540
|
},
|
|
541
|
+
{
|
|
542
|
+
name: 'Trashed',
|
|
543
|
+
type: 'document',
|
|
544
|
+
icon: 'document',
|
|
545
|
+
hasChildren: false,
|
|
546
|
+
id: 'trashed-document-id',
|
|
547
|
+
isContainer: false,
|
|
548
|
+
parentId: null,
|
|
549
|
+
noAccess: false,
|
|
550
|
+
isProtected: false,
|
|
551
|
+
isPublished: false,
|
|
552
|
+
isEdited: false,
|
|
553
|
+
isTrashed: true,
|
|
554
|
+
},
|
|
541
555
|
];
|
|
556
|
+
const createDocumentItem = (item) => {
|
|
557
|
+
return {
|
|
558
|
+
id: item.id,
|
|
559
|
+
name: item.variants?.[0].name,
|
|
560
|
+
contentTypeId: item.contentTypeId,
|
|
561
|
+
};
|
|
562
|
+
};
|
|
563
|
+
// TODO: look into making a combined document model so we don't need to maintain two+ data sets.
|
|
542
564
|
// Temp mocked database
|
|
543
565
|
// TODO: all properties are optional in the server schema. I don't think this is correct.
|
|
544
566
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -566,14 +588,26 @@ class UmbDocumentData extends UmbEntityData {
|
|
|
566
588
|
});
|
|
567
589
|
return result;
|
|
568
590
|
}
|
|
591
|
+
trash(ids) {
|
|
592
|
+
const result = super.trash(ids);
|
|
593
|
+
this.treeData = this.treeData.map((x) => {
|
|
594
|
+
if (x.id && ids.includes(x.id)) {
|
|
595
|
+
return { ...x, isTrashed: true };
|
|
596
|
+
}
|
|
597
|
+
else {
|
|
598
|
+
return x;
|
|
599
|
+
}
|
|
600
|
+
});
|
|
601
|
+
return result;
|
|
602
|
+
}
|
|
569
603
|
getTreeRoot() {
|
|
570
|
-
const items = this.treeData.filter((item) => item.parentId === null);
|
|
604
|
+
const items = this.treeData.filter((item) => item.parentId === null && item.isTrashed === false);
|
|
571
605
|
const treeItems = items.map((item) => item);
|
|
572
606
|
const total = items.length;
|
|
573
607
|
return { items: treeItems, total };
|
|
574
608
|
}
|
|
575
|
-
|
|
576
|
-
const items = this.treeData.filter((item) => item.parentId === id);
|
|
609
|
+
getTreeItemChildrenOf(id) {
|
|
610
|
+
const items = this.treeData.filter((item) => item.parentId === id && item.isTrashed === false);
|
|
577
611
|
const treeItems = items.map((item) => item);
|
|
578
612
|
const total = items.length;
|
|
579
613
|
return { items: treeItems, total };
|
|
@@ -582,6 +616,10 @@ class UmbDocumentData extends UmbEntityData {
|
|
|
582
616
|
const items = this.treeData.filter((item) => ids.includes(item.id ?? ''));
|
|
583
617
|
return items.map((item) => item);
|
|
584
618
|
}
|
|
619
|
+
getItems(ids) {
|
|
620
|
+
const items = this.data.filter((item) => ids.includes(item.id ?? ''));
|
|
621
|
+
return items.map((item) => createDocumentItem(item));
|
|
622
|
+
}
|
|
585
623
|
getDocumentByIdAllowedDocumentTypes(id) {
|
|
586
624
|
const item = this.getById(id);
|
|
587
625
|
if (item?.contentTypeId) {
|
|
@@ -599,5 +637,17 @@ class UmbDocumentData extends UmbEntityData {
|
|
|
599
637
|
const total = items?.length;
|
|
600
638
|
return { items, total };
|
|
601
639
|
}
|
|
640
|
+
getRecycleBinRoot() {
|
|
641
|
+
const items = this.treeData.filter((item) => item.parentId === null && item.isTrashed === true);
|
|
642
|
+
const treeItems = items.map((item) => item);
|
|
643
|
+
const total = items.length;
|
|
644
|
+
return { items: treeItems, total };
|
|
645
|
+
}
|
|
646
|
+
getRecycleBinChildrenOf(parentId) {
|
|
647
|
+
const items = this.treeData.filter((item) => item.parentId === parentId && item.isTrashed === true);
|
|
648
|
+
const treeItems = items.map((item) => item);
|
|
649
|
+
const total = items.length;
|
|
650
|
+
return { items: treeItems, total };
|
|
651
|
+
}
|
|
602
652
|
}
|
|
603
653
|
export const umbDocumentData = new UmbDocumentData();
|
|
@@ -8,6 +8,6 @@ export declare class UmbEntityData<T extends UmbEntityBase> extends UmbData<T> {
|
|
|
8
8
|
insert(item: T): T;
|
|
9
9
|
save(id: string, saveItem: T): T;
|
|
10
10
|
trash(ids: Array<string>): T[];
|
|
11
|
-
delete(ids: Array<string>):
|
|
11
|
+
delete(ids: Array<string>): void;
|
|
12
12
|
updateData(updateItem: T): void;
|
|
13
13
|
}
|
|
@@ -51,8 +51,6 @@ export class UmbEntityData extends UmbData {
|
|
|
51
51
|
const item = this.getById(id);
|
|
52
52
|
if (!item)
|
|
53
53
|
return;
|
|
54
|
-
// TODO: how do we handle trashed items?
|
|
55
|
-
// TODO: remove ignore when we know how to handle trashed items.
|
|
56
54
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
57
55
|
// @ts-ignore
|
|
58
56
|
item.isTrashed = true;
|
|
@@ -62,19 +60,11 @@ export class UmbEntityData extends UmbData {
|
|
|
62
60
|
return trashedItems;
|
|
63
61
|
}
|
|
64
62
|
delete(ids) {
|
|
65
|
-
const deletedKeys = this.data
|
|
66
|
-
.filter((item) => {
|
|
67
|
-
if (!item.id)
|
|
68
|
-
throw new Error('Item has no id');
|
|
69
|
-
ids.includes(item.id);
|
|
70
|
-
})
|
|
71
|
-
.map((item) => item.id);
|
|
72
63
|
this.data = this.data.filter((item) => {
|
|
73
64
|
if (!item.id)
|
|
74
65
|
throw new Error('Item has no id');
|
|
75
|
-
ids.
|
|
66
|
+
return !ids.includes(item.id);
|
|
76
67
|
});
|
|
77
|
-
return deletedKeys;
|
|
78
68
|
}
|
|
79
69
|
updateData(updateItem) {
|
|
80
70
|
const itemIndex = this.data.findIndex((item) => item.id === updateItem.id);
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { MediaDetails } from '../../packages/media/media/index.js';
|
|
2
2
|
import { UmbEntityData } from './entity.data.js';
|
|
3
|
-
import { ContentTreeItemResponseModel, PagedMediaTreeItemResponseModel } from '../../external/backend-api/index.js';
|
|
3
|
+
import { ContentTreeItemResponseModel, MediaItemResponseModel, PagedMediaTreeItemResponseModel } from '../../external/backend-api/index.js';
|
|
4
4
|
export declare const data: Array<MediaDetails>;
|
|
5
5
|
declare class UmbMediaData extends UmbEntityData<MediaDetails> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor();
|
|
8
|
+
getItems(ids: Array<string>): Array<MediaItemResponseModel>;
|
|
8
9
|
getTreeRoot(): PagedMediaTreeItemResponseModel;
|
|
9
10
|
getTreeItemChildren(id: string): PagedMediaTreeItemResponseModel;
|
|
10
11
|
getTreeItem(ids: Array<string>): Array<ContentTreeItemResponseModel>;
|
|
@@ -179,6 +179,13 @@ export const data = [
|
|
|
179
179
|
variants: [],
|
|
180
180
|
},
|
|
181
181
|
];
|
|
182
|
+
const createMediaItem = (item) => {
|
|
183
|
+
return {
|
|
184
|
+
id: item.id,
|
|
185
|
+
name: item.name,
|
|
186
|
+
icon: item.icon,
|
|
187
|
+
};
|
|
188
|
+
};
|
|
182
189
|
// Temp mocked database
|
|
183
190
|
// TODO: all properties are optional in the server schema. I don't think this is correct.
|
|
184
191
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -188,6 +195,10 @@ class UmbMediaData extends UmbEntityData {
|
|
|
188
195
|
constructor() {
|
|
189
196
|
super(data);
|
|
190
197
|
}
|
|
198
|
+
getItems(ids) {
|
|
199
|
+
const items = this.data.filter((item) => ids.includes(item.id ?? ''));
|
|
200
|
+
return items.map((item) => createMediaItem(item));
|
|
201
|
+
}
|
|
191
202
|
getTreeRoot() {
|
|
192
203
|
const items = this.data.filter((item) => item.parentId === null);
|
|
193
204
|
const treeItems = items.map((item) => createContentTreeItem(item));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { UmbEntityData } from './entity.data.js';
|
|
2
|
+
import { PagedUserGroupResponseModel, UserGroupItemResponseModel, UserGroupResponseModel } from '../../external/backend-api/index.js';
|
|
3
|
+
declare class UmbUserGroupData extends UmbEntityData<UserGroupResponseModel> {
|
|
4
|
+
constructor(data: Array<UserGroupResponseModel>);
|
|
5
|
+
getAll(): PagedUserGroupResponseModel;
|
|
6
|
+
getItems(ids: Array<string>): Array<UserGroupItemResponseModel>;
|
|
7
|
+
/**
|
|
8
|
+
* Returns a list of permissions for the given user group ids
|
|
9
|
+
* @param {string[]} userGroupIds
|
|
10
|
+
* @return {*} {string[]}
|
|
11
|
+
* @memberof UmbUserGroupData
|
|
12
|
+
*/
|
|
13
|
+
getPermissions(userGroupIds: string[]): string[];
|
|
14
|
+
}
|
|
15
|
+
export declare const data: Array<UserGroupResponseModel>;
|
|
16
|
+
export declare const umbUserGroupData: UmbUserGroupData;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { UmbEntityData } from './entity.data.js';
|
|
2
|
+
import { UMB_USER_PERMISSION_DOCUMENT_CREATE, UMB_USER_PERMISSION_DOCUMENT_DELETE, UMB_USER_PERMISSION_DOCUMENT_READ, } from '../../packages/documents/documents/index.js';
|
|
3
|
+
const createUserGroupItem = (item) => {
|
|
4
|
+
return {
|
|
5
|
+
name: item.name,
|
|
6
|
+
id: item.id,
|
|
7
|
+
icon: item.icon,
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
// Temp mocked database
|
|
11
|
+
class UmbUserGroupData extends UmbEntityData {
|
|
12
|
+
constructor(data) {
|
|
13
|
+
super(data);
|
|
14
|
+
}
|
|
15
|
+
getAll() {
|
|
16
|
+
return {
|
|
17
|
+
total: this.data.length,
|
|
18
|
+
items: this.data,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
getItems(ids) {
|
|
22
|
+
const items = this.data.filter((item) => ids.includes(item.id ?? ''));
|
|
23
|
+
return items.map((item) => createUserGroupItem(item));
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Returns a list of permissions for the given user group ids
|
|
27
|
+
* @param {string[]} userGroupIds
|
|
28
|
+
* @return {*} {string[]}
|
|
29
|
+
* @memberof UmbUserGroupData
|
|
30
|
+
*/
|
|
31
|
+
getPermissions(userGroupIds) {
|
|
32
|
+
const permissions = this.data
|
|
33
|
+
.filter((userGroup) => userGroupIds.includes(userGroup.id || ''))
|
|
34
|
+
.map((userGroup) => (userGroup.permissions?.length ? userGroup.permissions : []))
|
|
35
|
+
.flat();
|
|
36
|
+
// Remove duplicates
|
|
37
|
+
return [...new Set(permissions)];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export const data = [
|
|
41
|
+
{
|
|
42
|
+
id: 'c630d49e-4e7b-42ea-b2bc-edc0edacb6b1',
|
|
43
|
+
name: 'Administrators',
|
|
44
|
+
icon: 'umb:medal',
|
|
45
|
+
documentStartNodeId: 'all-property-editors-document-id',
|
|
46
|
+
permissions: [UMB_USER_PERMISSION_DOCUMENT_CREATE, UMB_USER_PERMISSION_DOCUMENT_DELETE],
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: '9d24dc47-a4bf-427f-8a4a-b900f03b8a12',
|
|
50
|
+
name: 'User Group 1',
|
|
51
|
+
icon: 'umb:bell',
|
|
52
|
+
permissions: [UMB_USER_PERMISSION_DOCUMENT_DELETE],
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
id: 'f4626511-b0d7-4ab1-aebc-a87871a5dcfa',
|
|
56
|
+
name: 'User Group 2',
|
|
57
|
+
icon: 'umb:ball',
|
|
58
|
+
permissions: [UMB_USER_PERMISSION_DOCUMENT_READ],
|
|
59
|
+
},
|
|
60
|
+
];
|
|
61
|
+
export const umbUserGroupData = new UmbUserGroupData(data);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { UmbEntityData } from './entity.data.js';
|
|
2
|
+
import { UmbLoggedInUser } from '../../shared/auth/index.js';
|
|
3
|
+
import { PagedUserResponseModel, UpdateUserGroupsOnUserRequestModel, UserItemResponseModel, UserResponseModel } from '../../external/backend-api/index.js';
|
|
4
|
+
declare class UmbUserData extends UmbEntityData<UserResponseModel> {
|
|
5
|
+
constructor(data: UserResponseModel[]);
|
|
6
|
+
getAll(): PagedUserResponseModel;
|
|
7
|
+
getItems(ids: Array<string>): Array<UserItemResponseModel>;
|
|
8
|
+
setUserGroups(data: UpdateUserGroupsOnUserRequestModel): void;
|
|
9
|
+
getCurrentUser(): UmbLoggedInUser;
|
|
10
|
+
}
|
|
11
|
+
export declare const data: Array<UserResponseModel & {
|
|
12
|
+
type: string;
|
|
13
|
+
}>;
|
|
14
|
+
export declare const umbUsersData: UmbUserData;
|
|
15
|
+
export {};
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { UmbEntityData } from './entity.data.js';
|
|
2
|
+
import { umbUserGroupData } from './user-group.data.js';
|
|
3
|
+
import { UserStateModel, } from '../../external/backend-api/index.js';
|
|
4
|
+
const createUserItem = (item) => {
|
|
5
|
+
return {
|
|
6
|
+
name: item.name,
|
|
7
|
+
id: item.id,
|
|
8
|
+
};
|
|
9
|
+
};
|
|
3
10
|
// Temp mocked database
|
|
4
|
-
class
|
|
11
|
+
class UmbUserData extends UmbEntityData {
|
|
5
12
|
constructor(data) {
|
|
6
13
|
super(data);
|
|
7
14
|
}
|
|
@@ -11,11 +18,19 @@ class UmbUsersData extends UmbData {
|
|
|
11
18
|
items: this.data,
|
|
12
19
|
};
|
|
13
20
|
}
|
|
14
|
-
|
|
15
|
-
|
|
21
|
+
getItems(ids) {
|
|
22
|
+
const items = this.data.filter((item) => ids.includes(item.id ?? ''));
|
|
23
|
+
return items.map((item) => createUserItem(item));
|
|
24
|
+
}
|
|
25
|
+
setUserGroups(data) {
|
|
26
|
+
const users = this.data.filter((user) => data.userIds?.includes(user.id ?? ''));
|
|
27
|
+
users.forEach((user) => {
|
|
28
|
+
user.userGroupIds = data.userGroupIds;
|
|
29
|
+
});
|
|
16
30
|
}
|
|
17
31
|
getCurrentUser() {
|
|
18
32
|
const firstUser = this.data[0];
|
|
33
|
+
const permissions = firstUser.userGroupIds?.length ? umbUserGroupData.getPermissions(firstUser.userGroupIds) : [];
|
|
19
34
|
return {
|
|
20
35
|
id: firstUser.id,
|
|
21
36
|
name: firstUser.name,
|
|
@@ -27,42 +42,9 @@ class UmbUsersData extends UmbData {
|
|
|
27
42
|
languages: [],
|
|
28
43
|
contentStartNodeIds: firstUser.contentStartNodeIds,
|
|
29
44
|
mediaStartNodeIds: firstUser.mediaStartNodeIds,
|
|
30
|
-
permissions
|
|
45
|
+
permissions,
|
|
31
46
|
};
|
|
32
47
|
}
|
|
33
|
-
save(id, saveItem) {
|
|
34
|
-
const foundIndex = this.data.findIndex((item) => item.id === id);
|
|
35
|
-
if (foundIndex !== -1) {
|
|
36
|
-
// update
|
|
37
|
-
this.data[foundIndex] = saveItem;
|
|
38
|
-
this.updateData(saveItem);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
// new
|
|
42
|
-
this.data.push(saveItem);
|
|
43
|
-
}
|
|
44
|
-
return saveItem;
|
|
45
|
-
}
|
|
46
|
-
updateData(updateItem) {
|
|
47
|
-
const itemIndex = this.data.findIndex((item) => item.id === updateItem.id);
|
|
48
|
-
const item = this.data[itemIndex];
|
|
49
|
-
console.log('updateData', updateItem, itemIndex, item);
|
|
50
|
-
if (!item)
|
|
51
|
-
return;
|
|
52
|
-
const itemKeys = Object.keys(item);
|
|
53
|
-
const newItem = {};
|
|
54
|
-
for (const [key] of Object.entries(updateItem)) {
|
|
55
|
-
if (itemKeys.indexOf(key) !== -1) {
|
|
56
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
57
|
-
// @ts-ignore
|
|
58
|
-
newItem[key] = updateItem[key];
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
62
|
-
// @ts-ignore
|
|
63
|
-
this.data[itemIndex] = newItem;
|
|
64
|
-
console.log('updateData', this.data[itemIndex]);
|
|
65
|
-
}
|
|
66
48
|
}
|
|
67
49
|
export const data = [
|
|
68
50
|
{
|
|
@@ -80,7 +62,11 @@ export const data = [
|
|
|
80
62
|
updateDate: '2/10/2022',
|
|
81
63
|
createDate: '3/13/2022',
|
|
82
64
|
failedLoginAttempts: 946,
|
|
83
|
-
userGroupIds: [
|
|
65
|
+
userGroupIds: [
|
|
66
|
+
'c630d49e-4e7b-42ea-b2bc-edc0edacb6b1',
|
|
67
|
+
'9d24dc47-a4bf-427f-8a4a-b900f03b8a12',
|
|
68
|
+
'f4626511-b0d7-4ab1-aebc-a87871a5dcfa',
|
|
69
|
+
],
|
|
84
70
|
},
|
|
85
71
|
{
|
|
86
72
|
id: '82e11d3d-b91d-43c9-9071-34d28e62e81d',
|
|
@@ -151,4 +137,4 @@ export const data = [
|
|
|
151
137
|
userGroupIds: ['c630d49e-4e7b-42ea-b2bc-edc0edacb6b1'],
|
|
152
138
|
},
|
|
153
139
|
];
|
|
154
|
-
export const umbUsersData = new
|
|
140
|
+
export const umbUsersData = new UmbUserData(data);
|
|
@@ -125,8 +125,8 @@ export const handlers = [
|
|
|
125
125
|
const id = req.params.id;
|
|
126
126
|
if (!id)
|
|
127
127
|
return;
|
|
128
|
-
|
|
129
|
-
return res(ctx.status(200)
|
|
128
|
+
umbDictionaryData.delete([id]);
|
|
129
|
+
return res(ctx.status(200));
|
|
130
130
|
}),
|
|
131
131
|
// TODO => handle properly, querystring breaks handler
|
|
132
132
|
rest.get('/umbraco/management/api/v1/dictionary/:id/export', (req, res, ctx) => {
|
|
@@ -1,38 +1,37 @@
|
|
|
1
1
|
const { rest } = window.MockServiceWorker;
|
|
2
|
-
import { umbDocumentData } from '
|
|
3
|
-
import { umbracoPath } from '
|
|
2
|
+
import { umbDocumentData } from '../../data/document.data.js';
|
|
3
|
+
import { umbracoPath } from '../../../shared/utils/index.js';
|
|
4
4
|
// TODO: add schema
|
|
5
5
|
export const handlers = [
|
|
6
|
-
rest.
|
|
7
|
-
|
|
8
|
-
const ids = await req.json();
|
|
9
|
-
const trashed = umbDocumentData.trash(ids);
|
|
10
|
-
return res(ctx.status(200), ctx.json(trashed));
|
|
11
|
-
}),
|
|
12
|
-
rest.get(umbracoPath('/tree/document/root'), (req, res, ctx) => {
|
|
13
|
-
const response = umbDocumentData.getTreeRoot();
|
|
6
|
+
rest.get(umbracoPath('/document/root/allowed-document-types'), (req, res, ctx) => {
|
|
7
|
+
const response = umbDocumentData.getAllowedDocumentTypesAtRoot();
|
|
14
8
|
return res(ctx.status(200), ctx.json(response));
|
|
15
9
|
}),
|
|
16
|
-
rest.
|
|
17
|
-
const
|
|
18
|
-
|
|
10
|
+
rest.put(umbracoPath('/document/:id/move-to-recycle-bin'), async (req, res, ctx) => {
|
|
11
|
+
const id = req.params.id;
|
|
12
|
+
umbDocumentData.trash([id]);
|
|
13
|
+
return res(ctx.status(200));
|
|
14
|
+
}),
|
|
15
|
+
rest.get(umbracoPath('/document/:id/allowed-document-types'), (req, res, ctx) => {
|
|
16
|
+
const id = req.params.id;
|
|
17
|
+
if (!id)
|
|
19
18
|
return;
|
|
20
|
-
const response = umbDocumentData.
|
|
19
|
+
const response = umbDocumentData.getDocumentByIdAllowedDocumentTypes(id);
|
|
21
20
|
return res(ctx.status(200), ctx.json(response));
|
|
22
21
|
}),
|
|
23
|
-
rest.get(umbracoPath('/
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
22
|
+
rest.get(umbracoPath('/document/:id'), (req, res, ctx) => {
|
|
23
|
+
const id = req.params.id;
|
|
24
|
+
if (!id)
|
|
26
25
|
return;
|
|
27
|
-
const
|
|
28
|
-
return res(ctx.status(200), ctx.json(
|
|
26
|
+
const document = umbDocumentData.getById(id);
|
|
27
|
+
return res(ctx.status(200), ctx.json(document));
|
|
29
28
|
}),
|
|
30
|
-
rest.
|
|
31
|
-
const
|
|
32
|
-
if (!
|
|
29
|
+
rest.delete(umbracoPath('/document/:id'), (req, res, ctx) => {
|
|
30
|
+
const id = req.params.id;
|
|
31
|
+
if (!id)
|
|
33
32
|
return;
|
|
34
|
-
umbDocumentData.
|
|
35
|
-
return res(ctx.status(200));
|
|
33
|
+
const document = umbDocumentData.getById(id);
|
|
34
|
+
return res(ctx.status(200), ctx.json(document));
|
|
36
35
|
}),
|
|
37
36
|
rest.put(umbracoPath(`/document/:id`), async (req, res, ctx) => {
|
|
38
37
|
const id = req.params.id;
|
|
@@ -44,22 +43,11 @@ export const handlers = [
|
|
|
44
43
|
const saved = umbDocumentData.save(id, data);
|
|
45
44
|
return res(ctx.status(200), ctx.json(saved));
|
|
46
45
|
}),
|
|
47
|
-
rest.
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
}),
|
|
51
|
-
rest.get(umbracoPath('/document/:id/allowed-document-types'), (req, res, ctx) => {
|
|
52
|
-
const id = req.params.id;
|
|
53
|
-
if (!id)
|
|
54
|
-
return;
|
|
55
|
-
const response = umbDocumentData.getDocumentByIdAllowedDocumentTypes(id);
|
|
56
|
-
return res(ctx.status(200), ctx.json(response));
|
|
57
|
-
}),
|
|
58
|
-
rest.get(umbracoPath('/document/:id'), (req, res, ctx) => {
|
|
59
|
-
const id = req.params.id;
|
|
60
|
-
if (!id)
|
|
46
|
+
rest.post(umbracoPath(`/document`), async (req, res, ctx) => {
|
|
47
|
+
const data = await req.json();
|
|
48
|
+
if (!data)
|
|
61
49
|
return;
|
|
62
|
-
|
|
63
|
-
return res(ctx.status(200)
|
|
50
|
+
umbDocumentData.insert(data);
|
|
51
|
+
return res(ctx.status(200));
|
|
64
52
|
}),
|
|
65
53
|
];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { handlers as recycleBinHandlers } from './recycle-bin.handlers.js';
|
|
2
|
+
import { handlers as treeHandlers } from './tree.handlers.js';
|
|
3
|
+
import { handlers as documentHandlers } from './document.handlers.js';
|
|
4
|
+
import { handlers as itemHandlers } from './item.handlers.js';
|
|
5
|
+
export const handlers = [...recycleBinHandlers, ...treeHandlers, ...itemHandlers, ...documentHandlers];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const handlers: import("msw").RestHandler<import("msw/lib/glossary-de6278a9.js").M<import("msw/lib/glossary-de6278a9.js").h>>[];
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const { rest } = window.MockServiceWorker;
|
|
2
|
+
import { umbDocumentData } from '../../data/document.data.js';
|
|
3
|
+
import { slug } from './slug.js';
|
|
4
|
+
import { umbracoPath } from '../../../shared/utils/index.js';
|
|
5
|
+
export const handlers = [
|
|
6
|
+
rest.get(umbracoPath(`${slug}/item`), (req, res, ctx) => {
|
|
7
|
+
const ids = req.url.searchParams.getAll('id');
|
|
8
|
+
if (!ids)
|
|
9
|
+
return;
|
|
10
|
+
const items = umbDocumentData.getItems(ids);
|
|
11
|
+
return res(ctx.status(200), ctx.json(items));
|
|
12
|
+
}),
|
|
13
|
+
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const handlers: import("msw").RestHandler<import("msw/lib/glossary-de6278a9.js").M<import("msw/lib/glossary-de6278a9.js").h>>[];
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const { rest } = window.MockServiceWorker;
|
|
2
|
+
import { umbDocumentData } from '../../data/document.data.js';
|
|
3
|
+
import { umbracoPath } from '../../../shared/utils/index.js';
|
|
4
|
+
export const handlers = [
|
|
5
|
+
rest.get(umbracoPath(`/recycle-bin/document/root`), (req, res, ctx) => {
|
|
6
|
+
const response = umbDocumentData.getRecycleBinRoot();
|
|
7
|
+
return res(ctx.status(200), ctx.json(response));
|
|
8
|
+
}),
|
|
9
|
+
rest.get(umbracoPath(`/recycle-bin/document/children`), (req, res, ctx) => {
|
|
10
|
+
const parentId = req.url.searchParams.get('parentId');
|
|
11
|
+
if (!parentId)
|
|
12
|
+
return;
|
|
13
|
+
const response = umbDocumentData.getRecycleBinChildrenOf(parentId);
|
|
14
|
+
return res(ctx.status(200), ctx.json(response));
|
|
15
|
+
}),
|
|
16
|
+
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const slug = "/document";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const slug = '/document';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const handlers: import("msw").RestHandler<import("msw/lib/glossary-de6278a9.js").M<import("msw/lib/glossary-de6278a9.js").h>>[];
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const { rest } = window.MockServiceWorker;
|
|
2
|
+
import { umbDocumentData } from '../../data/document.data.js';
|
|
3
|
+
import { umbracoPath } from '../../../shared/utils/index.js';
|
|
4
|
+
export const handlers = [
|
|
5
|
+
rest.get(umbracoPath('/tree/document/root'), (req, res, ctx) => {
|
|
6
|
+
const response = umbDocumentData.getTreeRoot();
|
|
7
|
+
return res(ctx.status(200), ctx.json(response));
|
|
8
|
+
}),
|
|
9
|
+
rest.get(umbracoPath('/tree/document/children'), (req, res, ctx) => {
|
|
10
|
+
const parentId = req.url.searchParams.get('parentId');
|
|
11
|
+
if (!parentId)
|
|
12
|
+
return;
|
|
13
|
+
const response = umbDocumentData.getTreeItemChildrenOf(parentId);
|
|
14
|
+
return res(ctx.status(200), ctx.json(response));
|
|
15
|
+
}),
|
|
16
|
+
];
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
const { rest } = window.MockServiceWorker;
|
|
2
2
|
import { umbMediaData } from '../data/media.data.js';
|
|
3
|
+
import { umbracoPath } from '../../shared/utils/index.js';
|
|
3
4
|
// TODO: add schema
|
|
4
5
|
export const handlers = [
|
|
6
|
+
rest.get(umbracoPath('/media/item'), (req, res, ctx) => {
|
|
7
|
+
const ids = req.url.searchParams.getAll('id');
|
|
8
|
+
if (!ids)
|
|
9
|
+
return;
|
|
10
|
+
const items = umbMediaData.getItems(ids);
|
|
11
|
+
return res(ctx.status(200), ctx.json(items));
|
|
12
|
+
}),
|
|
5
13
|
rest.get('/umbraco/management/api/v1/media/details/:id', (req, res, ctx) => {
|
|
6
14
|
console.warn('Please move to schema');
|
|
7
15
|
const id = req.params.id;
|
|
@@ -40,14 +40,14 @@ const detailHandlers = [
|
|
|
40
40
|
const path = req.url.searchParams.get('path');
|
|
41
41
|
if (!path)
|
|
42
42
|
return res(ctx.status(400));
|
|
43
|
-
|
|
44
|
-
return res(ctx.status(200)
|
|
43
|
+
umbPartialViewsData.delete([path]);
|
|
44
|
+
return res(ctx.status(200));
|
|
45
45
|
}),
|
|
46
46
|
rest.put(umbracoPath('/partial-view'), (req, res, ctx) => {
|
|
47
47
|
const requestBody = req.json();
|
|
48
48
|
if (!requestBody)
|
|
49
49
|
return res(ctx.status(400, 'no body found'));
|
|
50
|
-
|
|
50
|
+
umbPartialViewsData.updateData(requestBody);
|
|
51
51
|
return res(ctx.status(200));
|
|
52
52
|
}),
|
|
53
53
|
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const collectionHandlers: import("msw").RestHandler<import("msw/lib/glossary-de6278a9.js").M<import("msw/lib/glossary-de6278a9.js").h>>[];
|