@umbraco-cms/backoffice 14.0.0-695f1c3f → 14.0.0-709b3cbf
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 +1 -1
- package/dist-cms/apps/app/index.d.ts +1 -0
- package/dist-cms/apps/app/index.js +1 -0
- package/dist-cms/assets/lang/en-us.js +18 -18
- package/dist-cms/assets/lang/en-us.ts +18 -18
- package/dist-cms/custom-elements.json +71 -49
- 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/libs/observable-api/observer.js +2 -1
- package/dist-cms/mocks/browser-handlers.js +3 -1
- 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.js +0 -2
- package/dist-cms/mocks/data/scripts.data.d.ts +21 -0
- package/dist-cms/mocks/data/scripts.data.js +205 -0
- package/dist-cms/mocks/handlers/{document.handlers.js → document/document.handlers.js} +28 -40
- package/dist-cms/mocks/handlers/document/index.d.ts +1 -0
- 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/scripts.handlers.d.ts +2 -0
- package/dist-cms/mocks/handlers/scripts.handlers.js +83 -0
- package/dist-cms/packages/core/components/input-list-base/input-list-base.js +1 -1
- package/dist-cms/packages/core/content-type/content-type-container-structure-helper.class.js +2 -2
- package/dist-cms/packages/core/content-type/content-type-property-structure-helper.class.js +1 -1
- package/dist-cms/packages/core/content-type/content-type-structure-manager.class.d.ts +15 -15
- package/dist-cms/packages/core/content-type/content-type-structure-manager.class.js +79 -103
- package/dist-cms/packages/core/culture/components/index.d.ts +1 -0
- package/dist-cms/packages/core/culture/components/index.js +1 -0
- package/dist-cms/packages/{settings/cultures → core/culture}/components/input-culture-select/input-culture-select.element.js +5 -5
- package/dist-cms/packages/core/culture/index.d.ts +2 -0
- package/dist-cms/packages/core/culture/index.js +2 -0
- package/dist-cms/packages/core/culture/manifests.d.ts +1 -0
- package/dist-cms/packages/{settings/cultures → core/culture}/repository/culture.repository.js +1 -1
- package/dist-cms/packages/{settings/cultures → core/culture}/repository/manifests.d.ts +1 -1
- package/dist-cms/packages/{settings/cultures → core/culture}/repository/manifests.js +1 -1
- 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/index.d.ts +1 -0
- package/dist-cms/packages/core/index.js +3 -0
- 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/index.d.ts +1 -1
- package/dist-cms/packages/core/modal/token/index.js +1 -1
- 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/documents/document-types/entity-actions/manifests.js +1 -1
- package/dist-cms/packages/documents/document-types/manifests.js +0 -2
- package/dist-cms/packages/documents/document-types/repository/document-type-item.store.d.ts +20 -0
- package/dist-cms/packages/documents/document-types/repository/document-type-item.store.js +23 -0
- package/dist-cms/packages/documents/document-types/repository/document-type.repository.d.ts +5 -21
- package/dist-cms/packages/documents/document-types/repository/document-type.repository.js +26 -20
- package/dist-cms/packages/documents/document-types/repository/manifests.d.ts +3 -2
- package/dist-cms/packages/documents/document-types/repository/manifests.js +9 -1
- package/dist-cms/packages/documents/document-types/repository/sources/document-type-item.server.data.d.ts +25 -0
- package/dist-cms/packages/documents/document-types/repository/sources/document-type-item.server.data.js +32 -0
- package/dist-cms/packages/documents/document-types/repository/sources/document-type.server.data.d.ts +1 -1
- package/dist-cms/packages/documents/document-types/repository/sources/document-type.server.data.js +1 -12
- package/dist-cms/packages/documents/document-types/workspace/document-type-workspace.context.js +27 -27
- package/dist-cms/packages/documents/document-types/workspace/views/design/document-type-workspace-view-edit.element.js +8 -4
- 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 +27 -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/index.d.ts +1 -0
- package/dist-cms/packages/documents/documents/index.js +1 -0
- package/dist-cms/packages/documents/documents/manifests.d.ts +13 -1
- package/dist-cms/packages/documents/documents/manifests.js +2 -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 +14 -0
- package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.js +18 -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 +13 -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 +47 -25
- 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/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/workspace/manifests.js +6 -4
- package/dist-cms/packages/documents/manifests.d.ts +13 -1
- package/dist-cms/packages/settings/dashboards/performance-profiling/dashboard-performance-profiling.element.d.ts +3 -1
- package/dist-cms/packages/settings/dashboards/performance-profiling/dashboard-performance-profiling.element.js +26 -40
- package/dist-cms/packages/settings/manifests.js +0 -2
- package/dist-cms/packages/settings/relation-types/workspace/views/relation/workspace-view-relation-type-relation.element.js +17 -17
- package/dist-cms/packages/templating/manifests.js +2 -0
- package/dist-cms/packages/templating/scripts/config.d.ts +20 -0
- package/dist-cms/packages/templating/scripts/config.js +22 -0
- package/dist-cms/packages/templating/scripts/entity-actions/create/create-empty.action.d.ts +8 -0
- package/dist-cms/packages/templating/scripts/entity-actions/create/create-empty.action.js +9 -0
- package/dist-cms/packages/templating/scripts/entity-actions/manifests.d.ts +2 -0
- package/dist-cms/packages/templating/scripts/entity-actions/manifests.js +56 -0
- package/dist-cms/packages/templating/scripts/index.d.ts +2 -0
- package/dist-cms/packages/templating/scripts/index.js +2 -0
- package/dist-cms/packages/templating/scripts/manifests.d.ts +1 -0
- package/dist-cms/packages/templating/scripts/manifests.js +12 -0
- package/dist-cms/packages/templating/scripts/menu-item/manifests.d.ts +1 -0
- package/dist-cms/packages/templating/scripts/menu-item/manifests.js +16 -0
- package/dist-cms/packages/templating/scripts/repository/index.d.ts +1 -0
- package/dist-cms/packages/templating/scripts/repository/index.js +1 -0
- package/dist-cms/packages/templating/scripts/repository/manifests.d.ts +2 -0
- package/dist-cms/packages/templating/scripts/repository/manifests.js +23 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.repository.d.ts +71 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.repository.js +154 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.store.d.ts +31 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.store.js +37 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.tree.store.d.ts +19 -0
- package/dist-cms/packages/templating/scripts/repository/scripts.tree.store.js +21 -0
- package/dist-cms/packages/templating/scripts/repository/sources/index.d.ts +11 -0
- package/dist-cms/packages/templating/scripts/repository/sources/index.js +1 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.detail.server.data.d.ts +41 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.detail.server.data.js +57 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.folder.server.data.d.ts +17 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.folder.server.data.js +23 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.tree.server.data.d.ts +14 -0
- package/dist-cms/packages/templating/scripts/repository/sources/scripts.tree.server.data.js +31 -0
- package/dist-cms/packages/templating/scripts/tree/manifests.d.ts +2 -0
- package/dist-cms/packages/templating/scripts/tree/manifests.js +20 -0
- package/dist-cms/packages/templating/scripts/workspace/manifests.d.ts +2 -0
- package/dist-cms/packages/templating/scripts/workspace/manifests.js +32 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace-edit.element.d.ts +24 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace-edit.element.js +171 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace.context.d.ts +23 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace.context.js +87 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace.element.d.ts +14 -0
- package/dist-cms/packages/templating/scripts/workspace/scripts-workspace.element.js +50 -0
- 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/modals/current-user/current-user-modal.element.js +2 -2
- 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/workspace/user-group-workspace-editor.element.js +15 -12
- 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/index.d.ts +1 -0
- package/dist-cms/packages/users/users/index.js +1 -0
- 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/workspace/user-workspace-editor.element.js +36 -35
- package/dist-cms/packages/users/utils.d.ts +5 -2
- package/dist-cms/packages/users/utils.js +14 -14
- 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/router/index.d.ts +1 -1
- package/dist-cms/shared/router/index.js +1 -1
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/vscode-html-custom-data.json +33 -23
- package/package.json +4 -4
- 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/dist-cms/packages/settings/cultures/components/index.d.ts +0 -1
- package/dist-cms/packages/settings/cultures/components/index.js +0 -1
- package/dist-cms/packages/settings/cultures/manifests.d.ts +0 -1
- package/dist-cms/shared/context/index.d.ts +0 -1
- package/dist-cms/shared/context/index.js +0 -1
- package/router-slot-2.3.0.tgz +0 -0
- /package/dist-cms/{shared/context → apps/app}/app.context.d.ts +0 -0
- /package/dist-cms/{shared/context → apps/app}/app.context.js +0 -0
- /package/dist-cms/mocks/handlers/{document.handlers.d.ts → document/document.handlers.d.ts} +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/components/input-culture-select/input-culture-select.element.d.ts +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/manifests.js +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/repository/culture.repository.d.ts +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/repository/sources/culture.server.data.d.ts +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/repository/sources/culture.server.data.js +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/repository/sources/index.d.ts +0 -0
- /package/dist-cms/packages/{settings/cultures → core/culture}/repository/sources/index.js +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DocumentTypeItemResponseModel } from '../../../../external/backend-api/index.js';
|
|
2
|
+
import { UmbContextToken } from '../../../../libs/context-api/index.js';
|
|
3
|
+
import { UmbControllerHostElement } from '../../../../libs/controller-api/index.js';
|
|
4
|
+
import { UmbItemStore, UmbStoreBase } from '../../../core/store/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* @export
|
|
7
|
+
* @class UmbDocumentTypeItemStore
|
|
8
|
+
* @extends {UmbStoreBase}
|
|
9
|
+
* @description - Data Store for Document Type items
|
|
10
|
+
*/
|
|
11
|
+
export declare class UmbDocumentTypeItemStore extends UmbStoreBase<DocumentTypeItemResponseModel> implements UmbItemStore<DocumentTypeItemResponseModel> {
|
|
12
|
+
/**
|
|
13
|
+
* Creates an instance of UmbDocumentTypeItemStore.
|
|
14
|
+
* @param {UmbControllerHostElement} host
|
|
15
|
+
* @memberof UmbDocumentTypeItemStore
|
|
16
|
+
*/
|
|
17
|
+
constructor(host: UmbControllerHostElement);
|
|
18
|
+
items(ids: Array<string>): import("rxjs").Observable<DocumentTypeItemResponseModel[]>;
|
|
19
|
+
}
|
|
20
|
+
export declare const UMB_DOCUMENT_TYPE_ITEM_STORE_CONTEXT_TOKEN: UmbContextToken<UmbDocumentTypeItemStore, UmbDocumentTypeItemStore>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { UmbContextToken } from '../../../../libs/context-api/index.js';
|
|
2
|
+
import { UmbStoreBase } from '../../../core/store/index.js';
|
|
3
|
+
import { UmbArrayState } from '../../../../libs/observable-api/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* @export
|
|
6
|
+
* @class UmbDocumentTypeItemStore
|
|
7
|
+
* @extends {UmbStoreBase}
|
|
8
|
+
* @description - Data Store for Document Type items
|
|
9
|
+
*/
|
|
10
|
+
export class UmbDocumentTypeItemStore extends UmbStoreBase {
|
|
11
|
+
/**
|
|
12
|
+
* Creates an instance of UmbDocumentTypeItemStore.
|
|
13
|
+
* @param {UmbControllerHostElement} host
|
|
14
|
+
* @memberof UmbDocumentTypeItemStore
|
|
15
|
+
*/
|
|
16
|
+
constructor(host) {
|
|
17
|
+
super(host, UMB_DOCUMENT_TYPE_ITEM_STORE_CONTEXT_TOKEN.toString(), new UmbArrayState([], (x) => x.id));
|
|
18
|
+
}
|
|
19
|
+
items(ids) {
|
|
20
|
+
return this._data.asObservablePart((items) => items.filter((item) => ids.includes(item.id ?? '')));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export const UMB_DOCUMENT_TYPE_ITEM_STORE_CONTEXT_TOKEN = new UmbContextToken('UmbDocumentTypeItemStore');
|
|
@@ -24,6 +24,11 @@ export declare class UmbDocumentTypeRepository implements UmbTreeRepository<Enti
|
|
|
24
24
|
error: import("../../../../external/backend-api/index.js").ApiError | import("../../../../external/backend-api/index.js").CancelError | undefined;
|
|
25
25
|
asObservable: () => import("rxjs").Observable<EntityTreeItemResponseModel[]>;
|
|
26
26
|
}>;
|
|
27
|
+
requestItems(ids: Array<string>): Promise<{
|
|
28
|
+
data: import("../../../../external/backend-api/index.js").DocumentTypeItemResponseModel[] | undefined;
|
|
29
|
+
error: import("../../../../external/backend-api/index.js").ApiError | import("../../../../external/backend-api/index.js").CancelError | undefined;
|
|
30
|
+
asObservable: () => import("rxjs").Observable<import("../../../../external/backend-api/index.js").DocumentTypeItemResponseModel[]>;
|
|
31
|
+
}>;
|
|
27
32
|
requestItemsLegacy(ids: Array<string>): Promise<{
|
|
28
33
|
data: any[] | undefined;
|
|
29
34
|
error: import("../../../../external/backend-api/index.js").ApiError | import("../../../../external/backend-api/index.js").CancelError | undefined;
|
|
@@ -43,28 +48,7 @@ export declare class UmbDocumentTypeRepository implements UmbTreeRepository<Enti
|
|
|
43
48
|
byId(id: string): Promise<import("rxjs").Observable<DocumentTypeResponseModel | undefined>>;
|
|
44
49
|
requestAllowedChildTypesOf(id: string): Promise<import("../../../../shared/repository/index.js").DataSourceResponse<any>>;
|
|
45
50
|
create(documentType: ItemType): Promise<{
|
|
46
|
-
data: {
|
|
47
|
-
alias?: string | undefined;
|
|
48
|
-
name?: string | undefined;
|
|
49
|
-
description?: string | null | undefined;
|
|
50
|
-
icon?: string | undefined;
|
|
51
|
-
allowedAsRoot?: boolean | undefined;
|
|
52
|
-
variesByCulture?: boolean | undefined;
|
|
53
|
-
variesBySegment?: boolean | undefined;
|
|
54
|
-
isElement?: boolean | undefined;
|
|
55
|
-
properties?: import("../../../../external/backend-api/index.js").PropertyTypeModelBaseModel[] | undefined;
|
|
56
|
-
containers?: import("../../../../external/backend-api/index.js").PropertyTypeContainerModelBaseModel[] | undefined;
|
|
57
|
-
allowedContentTypes?: import("../../../../external/backend-api/index.js").ContentTypeSortModel[] | undefined;
|
|
58
|
-
compositions?: import("../../../../external/backend-api/index.js").ContentTypeCompositionModel[] | undefined;
|
|
59
|
-
id?: string | undefined;
|
|
60
|
-
allowedTemplateIds?: string[] | undefined;
|
|
61
|
-
defaultTemplateId?: string | null | undefined;
|
|
62
|
-
cleanup?: import("../../../../external/backend-api/index.js").ContentTypeCleanupModel | undefined;
|
|
63
|
-
};
|
|
64
|
-
error?: undefined;
|
|
65
|
-
} | {
|
|
66
51
|
error: import("../../../../external/backend-api/index.js").ApiError | import("../../../../external/backend-api/index.js").CancelError | undefined;
|
|
67
|
-
data?: undefined;
|
|
68
52
|
}>;
|
|
69
53
|
save(id: string, item: UpdateDocumentTypeRequestModel): Promise<{
|
|
70
54
|
error: import("../../../../external/backend-api/index.js").ApiError | import("../../../../external/backend-api/index.js").CancelError | undefined;
|
|
@@ -2,6 +2,8 @@ import { UmbDocumentTypeTreeServerDataSource } from './sources/document-type.tre
|
|
|
2
2
|
import { UmbDocumentTypeServerDataSource } from './sources/document-type.server.data.js';
|
|
3
3
|
import { UMB_DOCUMENT_TYPE_TREE_STORE_CONTEXT_TOKEN } from './document-type.tree.store.js';
|
|
4
4
|
import { UMB_DOCUMENT_TYPE_STORE_CONTEXT_TOKEN } from './document-type.store.js';
|
|
5
|
+
import { UMB_DOCUMENT_TYPE_ITEM_STORE_CONTEXT_TOKEN } from './document-type-item.store.js';
|
|
6
|
+
import { UmbDocumentTypeItemServerDataSource } from './sources/document-type-item.server.data.js';
|
|
5
7
|
import { UmbContextConsumerController } from '../../../../libs/context-api/index.js';
|
|
6
8
|
import { UMB_NOTIFICATION_CONTEXT_TOKEN } from '../../../core/notification/index.js';
|
|
7
9
|
export class UmbDocumentTypeRepository {
|
|
@@ -11,12 +13,15 @@ export class UmbDocumentTypeRepository {
|
|
|
11
13
|
#treeStore;
|
|
12
14
|
#detailDataSource;
|
|
13
15
|
#detailStore;
|
|
16
|
+
#itemSource;
|
|
17
|
+
#itemStore;
|
|
14
18
|
#notificationContext;
|
|
15
19
|
constructor(host) {
|
|
16
20
|
this.#host = host;
|
|
17
21
|
// TODO: figure out how spin up get the correct data source
|
|
18
22
|
this.#treeSource = new UmbDocumentTypeTreeServerDataSource(this.#host);
|
|
19
23
|
this.#detailDataSource = new UmbDocumentTypeServerDataSource(this.#host);
|
|
24
|
+
this.#itemSource = new UmbDocumentTypeItemServerDataSource(this.#host);
|
|
20
25
|
this.#init = Promise.all([
|
|
21
26
|
new UmbContextConsumerController(this.#host, UMB_DOCUMENT_TYPE_TREE_STORE_CONTEXT_TOKEN, (instance) => {
|
|
22
27
|
this.#treeStore = instance;
|
|
@@ -24,12 +29,14 @@ export class UmbDocumentTypeRepository {
|
|
|
24
29
|
new UmbContextConsumerController(this.#host, UMB_DOCUMENT_TYPE_STORE_CONTEXT_TOKEN, (instance) => {
|
|
25
30
|
this.#detailStore = instance;
|
|
26
31
|
}),
|
|
32
|
+
new UmbContextConsumerController(this.#host, UMB_DOCUMENT_TYPE_ITEM_STORE_CONTEXT_TOKEN, (instance) => {
|
|
33
|
+
this.#itemStore = instance;
|
|
34
|
+
}),
|
|
27
35
|
new UmbContextConsumerController(this.#host, UMB_NOTIFICATION_CONTEXT_TOKEN, (instance) => {
|
|
28
36
|
this.#notificationContext = instance;
|
|
29
37
|
}),
|
|
30
38
|
]);
|
|
31
39
|
}
|
|
32
|
-
// TODO: Trash
|
|
33
40
|
// TODO: Move
|
|
34
41
|
async requestTreeRoot() {
|
|
35
42
|
await this.#init;
|
|
@@ -60,6 +67,16 @@ export class UmbDocumentTypeRepository {
|
|
|
60
67
|
}
|
|
61
68
|
return { data, error, asObservable: () => this.#treeStore.childrenOf(parentId) };
|
|
62
69
|
}
|
|
70
|
+
async requestItems(ids) {
|
|
71
|
+
if (!ids)
|
|
72
|
+
throw new Error('Document Type Ids are missing');
|
|
73
|
+
await this.#init;
|
|
74
|
+
const { data, error } = await this.#itemSource.getItems(ids);
|
|
75
|
+
if (data) {
|
|
76
|
+
this.#itemStore?.appendItems(data);
|
|
77
|
+
}
|
|
78
|
+
return { data, error, asObservable: () => this.#itemStore.items(ids) };
|
|
79
|
+
}
|
|
63
80
|
async requestItemsLegacy(ids) {
|
|
64
81
|
await this.#init;
|
|
65
82
|
if (!ids) {
|
|
@@ -117,25 +134,13 @@ export class UmbDocumentTypeRepository {
|
|
|
117
134
|
// Could potentially be general methods:
|
|
118
135
|
async create(documentType) {
|
|
119
136
|
if (!documentType || !documentType.id)
|
|
120
|
-
throw new Error('
|
|
137
|
+
throw new Error('Document Type is missing');
|
|
121
138
|
await this.#init;
|
|
122
|
-
const { error
|
|
123
|
-
if (!error
|
|
124
|
-
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
// Temporary hack while we are not in control of IDs:
|
|
128
|
-
const newDocument = { ...(await this.requestById(newId)).data };
|
|
129
|
-
if (newDocument) {
|
|
130
|
-
const notification = { data: { message: `Document Type created` } };
|
|
131
|
-
this.#notificationContext?.peek('positive', notification);
|
|
132
|
-
await this.requestRootTreeItems();
|
|
133
|
-
// TODO: currently we cannot put this data into our store, cause we don't have the right ID, as the server currently changes it (and other ids of it, container-id and property-id)
|
|
134
|
-
//this.#detailStore?.append(newDocument);
|
|
135
|
-
//const treeItem = createTreeItem(newDocument);
|
|
136
|
-
//this.#treeStore?.appendItems([treeItem]);
|
|
137
|
-
return { data: newDocument };
|
|
138
|
-
}
|
|
139
|
+
const { error } = await this.#detailDataSource.insert(documentType);
|
|
140
|
+
if (!error) {
|
|
141
|
+
this.#detailStore?.append(documentType);
|
|
142
|
+
const treeItem = createTreeItem(documentType);
|
|
143
|
+
this.#treeStore?.appendItems([treeItem]);
|
|
139
144
|
}
|
|
140
145
|
return { error };
|
|
141
146
|
}
|
|
@@ -170,9 +175,10 @@ export class UmbDocumentTypeRepository {
|
|
|
170
175
|
// TODO: we currently don't use the detail store for anything.
|
|
171
176
|
// Consider to look up the data before fetching from the server.
|
|
172
177
|
// Consider notify a workspace if a template is deleted from the store while someone is editing it.
|
|
178
|
+
// TODO: would be nice to align the stores on methods/methodNames.
|
|
173
179
|
this.#detailStore?.remove([id]);
|
|
174
180
|
this.#treeStore?.removeItem(id);
|
|
175
|
-
|
|
181
|
+
this.#itemStore?.removeItem(id);
|
|
176
182
|
}
|
|
177
183
|
return { error };
|
|
178
184
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { ManifestRepository, ManifestStore, ManifestTreeStore } from '../../../core/extension-registry/index.js';
|
|
1
|
+
import { ManifestItemStore, ManifestRepository, ManifestStore, ManifestTreeStore } from '../../../core/extension-registry/index.js';
|
|
2
2
|
export declare const DOCUMENT_TYPE_REPOSITORY_ALIAS = "Umb.Repository.DocumentType";
|
|
3
3
|
export declare const DOCUMENT_TYPE_STORE_ALIAS = "Umb.Store.DocumentType";
|
|
4
4
|
export declare const DOCUMENT_TYPE_TREE_STORE_ALIAS = "Umb.Store.DocumentTypeTree";
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const DOCUMENT_TYPE_ITEM_STORE_ALIAS = "Umb.Store.DocumentTypeItem";
|
|
6
|
+
export declare const manifests: (ManifestItemStore | ManifestRepository | ManifestStore | ManifestTreeStore)[];
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { UmbDocumentTypeItemStore } from './document-type-item.store.js';
|
|
1
2
|
import { UmbDocumentTypeRepository } from './document-type.repository.js';
|
|
2
3
|
import { UmbDocumentTypeStore } from './document-type.store.js';
|
|
3
4
|
import { UmbDocumentTypeTreeStore } from './document-type.tree.store.js';
|
|
@@ -10,6 +11,7 @@ const repository = {
|
|
|
10
11
|
};
|
|
11
12
|
export const DOCUMENT_TYPE_STORE_ALIAS = 'Umb.Store.DocumentType';
|
|
12
13
|
export const DOCUMENT_TYPE_TREE_STORE_ALIAS = 'Umb.Store.DocumentTypeTree';
|
|
14
|
+
export const DOCUMENT_TYPE_ITEM_STORE_ALIAS = 'Umb.Store.DocumentTypeItem';
|
|
13
15
|
const store = {
|
|
14
16
|
type: 'store',
|
|
15
17
|
alias: DOCUMENT_TYPE_STORE_ALIAS,
|
|
@@ -22,4 +24,10 @@ const treeStore = {
|
|
|
22
24
|
name: 'Document Type Tree Store',
|
|
23
25
|
class: UmbDocumentTypeTreeStore,
|
|
24
26
|
};
|
|
25
|
-
|
|
27
|
+
const itemStore = {
|
|
28
|
+
type: 'itemStore',
|
|
29
|
+
alias: DOCUMENT_TYPE_ITEM_STORE_ALIAS,
|
|
30
|
+
name: 'Document Type Item Store',
|
|
31
|
+
class: UmbDocumentTypeItemStore,
|
|
32
|
+
};
|
|
33
|
+
export const manifests = [repository, store, treeStore, itemStore];
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { UmbItemDataSource } from '../../../../../shared/repository/index.js';
|
|
2
|
+
import { DocumentTypeItemResponseModel } from '../../../../../external/backend-api/index.js';
|
|
3
|
+
import { UmbControllerHostElement } from '../../../../../libs/controller-api/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* A data source for Document Type items that fetches data from the server
|
|
6
|
+
* @export
|
|
7
|
+
* @class UmbDocumentTypeItemServerDataSource
|
|
8
|
+
* @implements {UmbItemDataSource}
|
|
9
|
+
*/
|
|
10
|
+
export declare class UmbDocumentTypeItemServerDataSource implements UmbItemDataSource<DocumentTypeItemResponseModel> {
|
|
11
|
+
#private;
|
|
12
|
+
/**
|
|
13
|
+
* Creates an instance of UmbDocumentTypeItemServerDataSource.
|
|
14
|
+
* @param {UmbControllerHostElement} host
|
|
15
|
+
* @memberof UmbDocumentTypeItemServerDataSource
|
|
16
|
+
*/
|
|
17
|
+
constructor(host: UmbControllerHostElement);
|
|
18
|
+
/**
|
|
19
|
+
* Fetches the items for the given ids from the server
|
|
20
|
+
* @param {Array<string>} ids
|
|
21
|
+
* @return {*}
|
|
22
|
+
* @memberof UmbDocumentTypeItemServerDataSource
|
|
23
|
+
*/
|
|
24
|
+
getItems(ids: Array<string>): Promise<import("../../../../../shared/repository/index.js").DataSourceResponse<DocumentTypeItemResponseModel[]>>;
|
|
25
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { DocumentTypeResource } from '../../../../../external/backend-api/index.js';
|
|
2
|
+
import { tryExecuteAndNotify } from '../../../../../shared/resources/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* A data source for Document Type items that fetches data from the server
|
|
5
|
+
* @export
|
|
6
|
+
* @class UmbDocumentTypeItemServerDataSource
|
|
7
|
+
* @implements {UmbItemDataSource}
|
|
8
|
+
*/
|
|
9
|
+
export class UmbDocumentTypeItemServerDataSource {
|
|
10
|
+
#host;
|
|
11
|
+
/**
|
|
12
|
+
* Creates an instance of UmbDocumentTypeItemServerDataSource.
|
|
13
|
+
* @param {UmbControllerHostElement} host
|
|
14
|
+
* @memberof UmbDocumentTypeItemServerDataSource
|
|
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
|
+
* @return {*}
|
|
23
|
+
* @memberof UmbDocumentTypeItemServerDataSource
|
|
24
|
+
*/
|
|
25
|
+
async getItems(ids) {
|
|
26
|
+
if (!ids)
|
|
27
|
+
throw new Error('Ids are missing');
|
|
28
|
+
return tryExecuteAndNotify(this.#host, DocumentTypeResource.getDocumentTypeItem({
|
|
29
|
+
id: ids,
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
}
|
package/dist-cms/packages/documents/document-types/repository/sources/document-type.server.data.d.ts
CHANGED
|
@@ -37,7 +37,7 @@ export declare class UmbDocumentTypeServerDataSource implements UmbDataSource<Cr
|
|
|
37
37
|
* @return {*}
|
|
38
38
|
* @memberof UmbDocumentTypeServerDataSource
|
|
39
39
|
*/
|
|
40
|
-
insert(documentType: CreateDocumentTypeRequestModel): Promise<import("../../../../../shared/repository/index.js").DataSourceResponse<
|
|
40
|
+
insert(documentType: CreateDocumentTypeRequestModel): Promise<import("../../../../../shared/repository/index.js").DataSourceResponse<string>>;
|
|
41
41
|
/**
|
|
42
42
|
* Updates a Document Type on the server
|
|
43
43
|
* @param {string} id
|
package/dist-cms/packages/documents/document-types/repository/sources/document-type.server.data.js
CHANGED
|
@@ -72,18 +72,7 @@ export class UmbDocumentTypeServerDataSource {
|
|
|
72
72
|
*/
|
|
73
73
|
async insert(documentType) {
|
|
74
74
|
if (!documentType)
|
|
75
|
-
throw new Error('Document is missing');
|
|
76
|
-
//if (!document.id) throw new Error('ID is missing');
|
|
77
|
-
documentType = { ...documentType };
|
|
78
|
-
// TODO: Hack to remove some props that ruins the document-type post end-point.
|
|
79
|
-
documentType.id = undefined;
|
|
80
|
-
// TODO: Investigate if this matters (should go away anyway when we have the end-point accepts us defining the ids.)
|
|
81
|
-
documentType.properties = documentType.properties?.map((prop) => {
|
|
82
|
-
return {
|
|
83
|
-
...prop,
|
|
84
|
-
id: undefined,
|
|
85
|
-
};
|
|
86
|
-
});
|
|
75
|
+
throw new Error('Document Type is missing');
|
|
87
76
|
return tryExecuteAndNotify(this.#host, DocumentTypeResource.postDocumentType({
|
|
88
77
|
requestBody: documentType,
|
|
89
78
|
}));
|
package/dist-cms/packages/documents/document-types/workspace/document-type-workspace.context.js
CHANGED
|
@@ -7,24 +7,24 @@ export class UmbDocumentTypeWorkspaceContext extends UmbWorkspaceContext {
|
|
|
7
7
|
super(host, 'Umb.Workspace.DocumentType', new UmbDocumentTypeRepository(host));
|
|
8
8
|
this.structure = new UmbContentTypePropertyStructureManager(this.host, this.repository);
|
|
9
9
|
// General for content types:
|
|
10
|
-
this.data = this.structure.
|
|
11
|
-
this.name = this.structure.
|
|
12
|
-
this.alias = this.structure.
|
|
13
|
-
this.description = this.structure.
|
|
14
|
-
this.icon = this.structure.
|
|
15
|
-
this.allowedAsRoot = this.structure.
|
|
16
|
-
this.variesByCulture = this.structure.
|
|
17
|
-
this.variesBySegment = this.structure.
|
|
18
|
-
this.isElement = this.structure.
|
|
19
|
-
this.allowedContentTypes = this.structure.
|
|
20
|
-
this.compositions = this.structure.
|
|
10
|
+
this.data = this.structure.ownerContentType;
|
|
11
|
+
this.name = this.structure.ownerContentTypeObservablePart((data) => data?.name);
|
|
12
|
+
this.alias = this.structure.ownerContentTypeObservablePart((data) => data?.alias);
|
|
13
|
+
this.description = this.structure.ownerContentTypeObservablePart((data) => data?.description);
|
|
14
|
+
this.icon = this.structure.ownerContentTypeObservablePart((data) => data?.icon);
|
|
15
|
+
this.allowedAsRoot = this.structure.ownerContentTypeObservablePart((data) => data?.allowedAsRoot);
|
|
16
|
+
this.variesByCulture = this.structure.ownerContentTypeObservablePart((data) => data?.variesByCulture);
|
|
17
|
+
this.variesBySegment = this.structure.ownerContentTypeObservablePart((data) => data?.variesBySegment);
|
|
18
|
+
this.isElement = this.structure.ownerContentTypeObservablePart((data) => data?.isElement);
|
|
19
|
+
this.allowedContentTypes = this.structure.ownerContentTypeObservablePart((data) => data?.allowedContentTypes);
|
|
20
|
+
this.compositions = this.structure.ownerContentTypeObservablePart((data) => data?.compositions);
|
|
21
21
|
// Document type specific:
|
|
22
|
-
this.allowedTemplateIds = this.structure.
|
|
23
|
-
this.defaultTemplateId = this.structure.
|
|
24
|
-
this.cleanup = this.structure.
|
|
22
|
+
this.allowedTemplateIds = this.structure.ownerContentTypeObservablePart((data) => data?.allowedTemplateIds);
|
|
23
|
+
this.defaultTemplateId = this.structure.ownerContentTypeObservablePart((data) => data?.defaultTemplateId);
|
|
24
|
+
this.cleanup = this.structure.ownerContentTypeObservablePart((data) => data?.defaultTemplateId);
|
|
25
25
|
}
|
|
26
26
|
getData() {
|
|
27
|
-
return this.structure.
|
|
27
|
+
return this.structure.getOwnerContentType() || {};
|
|
28
28
|
}
|
|
29
29
|
getEntityId() {
|
|
30
30
|
return this.getData().id;
|
|
@@ -33,42 +33,42 @@ export class UmbDocumentTypeWorkspaceContext extends UmbWorkspaceContext {
|
|
|
33
33
|
return 'document-type';
|
|
34
34
|
}
|
|
35
35
|
setName(name) {
|
|
36
|
-
this.structure.
|
|
36
|
+
this.structure.updateOwnerContentType({ name });
|
|
37
37
|
}
|
|
38
38
|
setAlias(alias) {
|
|
39
|
-
this.structure.
|
|
39
|
+
this.structure.updateOwnerContentType({ alias });
|
|
40
40
|
}
|
|
41
41
|
setDescription(description) {
|
|
42
|
-
this.structure.
|
|
42
|
+
this.structure.updateOwnerContentType({ description });
|
|
43
43
|
}
|
|
44
44
|
// TODO: manage setting icon color alias?
|
|
45
45
|
setIcon(icon) {
|
|
46
|
-
this.structure.
|
|
46
|
+
this.structure.updateOwnerContentType({ icon });
|
|
47
47
|
}
|
|
48
48
|
setAllowedAsRoot(allowedAsRoot) {
|
|
49
|
-
this.structure.
|
|
49
|
+
this.structure.updateOwnerContentType({ allowedAsRoot });
|
|
50
50
|
}
|
|
51
51
|
setVariesByCulture(variesByCulture) {
|
|
52
|
-
this.structure.
|
|
52
|
+
this.structure.updateOwnerContentType({ variesByCulture });
|
|
53
53
|
}
|
|
54
54
|
setVariesBySegment(variesBySegment) {
|
|
55
|
-
this.structure.
|
|
55
|
+
this.structure.updateOwnerContentType({ variesBySegment });
|
|
56
56
|
}
|
|
57
57
|
setIsElement(isElement) {
|
|
58
|
-
this.structure.
|
|
58
|
+
this.structure.updateOwnerContentType({ isElement });
|
|
59
59
|
}
|
|
60
60
|
setAllowedContentTypes(allowedContentTypes) {
|
|
61
|
-
this.structure.
|
|
61
|
+
this.structure.updateOwnerContentType({ allowedContentTypes });
|
|
62
62
|
}
|
|
63
63
|
setCompositions(compositions) {
|
|
64
|
-
this.structure.
|
|
64
|
+
this.structure.updateOwnerContentType({ compositions });
|
|
65
65
|
}
|
|
66
66
|
// Document type specific:
|
|
67
67
|
setAllowedTemplateIds(allowedTemplateIds) {
|
|
68
|
-
this.structure.
|
|
68
|
+
this.structure.updateOwnerContentType({ allowedTemplateIds });
|
|
69
69
|
}
|
|
70
70
|
setDefaultTemplateId(defaultTemplateId) {
|
|
71
|
-
this.structure.
|
|
71
|
+
this.structure.updateOwnerContentType({ defaultTemplateId });
|
|
72
72
|
}
|
|
73
73
|
async create(parentId) {
|
|
74
74
|
const { data } = await this.structure.createScaffold(parentId);
|
|
@@ -88,9 +88,13 @@ export let UmbDocumentTypeWorkspaceViewEditElement = class UmbDocumentTypeWorksp
|
|
|
88
88
|
#requestRemoveTab(tab) {
|
|
89
89
|
const Message = {
|
|
90
90
|
headline: 'Delete tab',
|
|
91
|
-
content: html `<umb-localize key="contentTypeEditor_confirmDeleteTabMessage" .args=${[tab?.name ?? tab?.id]}
|
|
91
|
+
content: html `<umb-localize key="contentTypeEditor_confirmDeleteTabMessage" .args=${[tab?.name ?? tab?.id]}
|
|
92
|
+
>Are you sure you want to delete the tab <strong>${tab?.name ?? tab?.id}</strong></umb-localize
|
|
93
|
+
>
|
|
92
94
|
<div style="color:var(--uui-color-danger-emphasis)">
|
|
93
|
-
<umb-localize key="contentTypeEditor_confirmDeleteTabNotice"
|
|
95
|
+
<umb-localize key="contentTypeEditor_confirmDeleteTabNotice"
|
|
96
|
+
>This will delete all items that doesn't belong to a composition.</umb-localize
|
|
97
|
+
>
|
|
94
98
|
</div>`,
|
|
95
99
|
confirmLabel: this.localize.term('actions_delete'),
|
|
96
100
|
color: 'danger',
|
|
@@ -135,7 +139,7 @@ export let UmbDocumentTypeWorkspaceViewEditElement = class UmbDocumentTypeWorksp
|
|
|
135
139
|
newName = 'Unnamed';
|
|
136
140
|
event.target.value = 'Unnamed';
|
|
137
141
|
}
|
|
138
|
-
const changedName = this._workspaceContext?.structure.
|
|
142
|
+
const changedName = this._workspaceContext?.structure.makeContainerNameUniqueForOwnerContentType(newName, 'Tab', tab.id);
|
|
139
143
|
// Check if it collides with another tab name of this same document-type, if so adjust name:
|
|
140
144
|
if (changedName) {
|
|
141
145
|
newName = changedName;
|
|
@@ -220,7 +224,7 @@ export let UmbDocumentTypeWorkspaceViewEditElement = class UmbDocumentTypeWorksp
|
|
|
220
224
|
</uui-button>
|
|
221
225
|
<uui-button label=${this.localize.term('general_reorder')} compact>
|
|
222
226
|
<uui-icon name="umb:navigation"></uui-icon>
|
|
223
|
-
|
|
227
|
+
<umb-localize key="general_reorder">Reorder</umb-localize>
|
|
224
228
|
</uui-button>
|
|
225
229
|
</div>`;
|
|
226
230
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { UmbCreateDocumentModalData, UmbCreateDocumentModalResult } from '../../../../core/modal/index.js';
|
|
2
|
+
import { UmbModalBaseElement } from '../../../../../shared/modal/index.js';
|
|
3
|
+
export declare class UmbCreateDocumentModalElement extends UmbModalBaseElement<UmbCreateDocumentModalData, UmbCreateDocumentModalResult> {
|
|
4
|
+
#private;
|
|
5
|
+
private _allowedDocumentTypes;
|
|
6
|
+
private _headline;
|
|
7
|
+
firstUpdated(): Promise<void>;
|
|
8
|
+
private _handleCancel;
|
|
9
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
10
|
+
static styles: import("@lit/reactive-element/css-tag").CSSResult[];
|
|
11
|
+
}
|
|
12
|
+
export default UmbCreateDocumentModalElement;
|
|
13
|
+
declare global {
|
|
14
|
+
interface HTMLElementTagNameMap {
|
|
15
|
+
'umb-create-document-modal': UmbCreateDocumentModalElement;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -5,47 +5,38 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { html, nothing, customElement, state, ifDefined } from '../../../../../external/lit/index.js';
|
|
8
|
-
import { UmbTextStyles } from
|
|
8
|
+
import { UmbTextStyles } from '../../../../../shared/style/index.js';
|
|
9
9
|
import { UmbModalBaseElement } from '../../../../../shared/modal/index.js';
|
|
10
|
-
import { UmbDocumentRepository } from '
|
|
11
|
-
export let
|
|
10
|
+
import { UmbDocumentRepository } from '../../index.js';
|
|
11
|
+
export let UmbCreateDocumentModalElement = class UmbCreateDocumentModalElement extends UmbModalBaseElement {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.#documentRepository = new UmbDocumentRepository(this);
|
|
15
15
|
this._allowedDocumentTypes = [];
|
|
16
|
+
this._headline = 'Create';
|
|
16
17
|
}
|
|
17
18
|
#documentRepository;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this._headline = `Create at '${parentName}'`;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
this._headline = `Create`;
|
|
27
|
-
}
|
|
28
|
-
if (parentId) {
|
|
29
|
-
// TODO: Support root aka. id of null? or maybe its an active prop, like 'atRoot'.
|
|
30
|
-
// TODO: show error
|
|
31
|
-
this._retrieveAllowedChildrenOf(parentId);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
this._retrieveAllowedChildrenOfRoot();
|
|
19
|
+
async firstUpdated() {
|
|
20
|
+
const documentId = this.data?.id || null;
|
|
21
|
+
this.#retrieveAllowedDocumentTypesOf(documentId);
|
|
22
|
+
if (documentId) {
|
|
23
|
+
this.#retrieveHeadline(documentId);
|
|
35
24
|
}
|
|
36
25
|
}
|
|
37
|
-
async
|
|
26
|
+
async #retrieveAllowedDocumentTypesOf(id) {
|
|
38
27
|
const { data } = await this.#documentRepository.requestAllowedDocumentTypesOf(id);
|
|
39
28
|
if (data) {
|
|
40
29
|
// TODO: implement pagination, or get 1000?
|
|
41
30
|
this._allowedDocumentTypes = data.items;
|
|
42
31
|
}
|
|
43
32
|
}
|
|
44
|
-
async
|
|
45
|
-
|
|
33
|
+
async #retrieveHeadline(id) {
|
|
34
|
+
if (!id)
|
|
35
|
+
return;
|
|
36
|
+
const { data } = await this.#documentRepository.requestById(id);
|
|
46
37
|
if (data) {
|
|
47
|
-
// TODO:
|
|
48
|
-
this.
|
|
38
|
+
// TODO: we need to get the correct variant context here
|
|
39
|
+
this._headline = `Create at ${data.variants?.[0].name}`;
|
|
49
40
|
}
|
|
50
41
|
}
|
|
51
42
|
_handleCancel() {
|
|
@@ -54,10 +45,10 @@ export let UmbAllowedDocumentTypesModalElement = class UmbAllowedDocumentTypesMo
|
|
|
54
45
|
#onClick(event) {
|
|
55
46
|
event.stopPropagation();
|
|
56
47
|
const target = event.target;
|
|
57
|
-
const
|
|
58
|
-
if (!
|
|
48
|
+
const documentTypeId = target.dataset.id;
|
|
49
|
+
if (!documentTypeId)
|
|
59
50
|
throw new Error('No document type id found');
|
|
60
|
-
this.modalContext?.submit({
|
|
51
|
+
this.modalContext?.submit({ documentTypeId });
|
|
61
52
|
}
|
|
62
53
|
render() {
|
|
63
54
|
return html `
|
|
@@ -65,10 +56,10 @@ export let UmbAllowedDocumentTypesModalElement = class UmbAllowedDocumentTypesMo
|
|
|
65
56
|
<uui-box>
|
|
66
57
|
${this._allowedDocumentTypes.length === 0 ? html `<p>No allowed types</p>` : nothing}
|
|
67
58
|
${this._allowedDocumentTypes.map((item) => html `
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
59
|
+
<uui-menu-item data-id=${ifDefined(item.id)} @click=${this.#onClick} label="${ifDefined(item.name)}">
|
|
60
|
+
${item.icon ? html `<uui-icon slot="icon" name=${item.icon}></uui-icon>` : nothing}
|
|
61
|
+
</uui-menu-item>
|
|
62
|
+
`)}
|
|
72
63
|
</uui-box>
|
|
73
64
|
<uui-button slot="actions" id="cancel" label="Cancel" @click="${this._handleCancel}">Cancel</uui-button>
|
|
74
65
|
</umb-body-layout>
|
|
@@ -78,11 +69,11 @@ export let UmbAllowedDocumentTypesModalElement = class UmbAllowedDocumentTypesMo
|
|
|
78
69
|
};
|
|
79
70
|
__decorate([
|
|
80
71
|
state()
|
|
81
|
-
],
|
|
72
|
+
], UmbCreateDocumentModalElement.prototype, "_allowedDocumentTypes", void 0);
|
|
82
73
|
__decorate([
|
|
83
74
|
state()
|
|
84
|
-
],
|
|
85
|
-
|
|
86
|
-
customElement('umb-
|
|
87
|
-
],
|
|
88
|
-
export default
|
|
75
|
+
], UmbCreateDocumentModalElement.prototype, "_headline", void 0);
|
|
76
|
+
UmbCreateDocumentModalElement = __decorate([
|
|
77
|
+
customElement('umb-create-document-modal')
|
|
78
|
+
], UmbCreateDocumentModalElement);
|
|
79
|
+
export default UmbCreateDocumentModalElement;
|
|
@@ -5,7 +5,5 @@ export declare class UmbCreateDocumentEntityAction extends UmbEntityActionBase<U
|
|
|
5
5
|
#private;
|
|
6
6
|
constructor(host: UmbControllerHostElement, repositoryAlias: string, unique: string);
|
|
7
7
|
execute(): Promise<void>;
|
|
8
|
-
private _executeWithParent;
|
|
9
|
-
private _executeAtRoot;
|
|
10
8
|
private _openModal;
|
|
11
9
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UmbEntityActionBase } from '../../../../core/entity-action/index.js';
|
|
2
|
-
import { UMB_MODAL_MANAGER_CONTEXT_TOKEN,
|
|
2
|
+
import { UMB_MODAL_MANAGER_CONTEXT_TOKEN, UMB_CREATE_DOCUMENT_MODAL as UMB_CREATE_DOCUMENT_MODAL, } from '../../../../core/modal/index.js';
|
|
3
3
|
import { UmbContextConsumerController } from '../../../../../libs/context-api/index.js';
|
|
4
4
|
export class UmbCreateDocumentEntityAction extends UmbEntityActionBase {
|
|
5
5
|
#modalContext;
|
|
@@ -10,34 +10,18 @@ export class UmbCreateDocumentEntityAction extends UmbEntityActionBase {
|
|
|
10
10
|
});
|
|
11
11
|
}
|
|
12
12
|
async execute() {
|
|
13
|
-
if (this.unique) {
|
|
14
|
-
await this._executeWithParent();
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
await this._executeAtRoot();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
async _executeWithParent() {
|
|
21
|
-
// TODO: what to do if modal service is not available?
|
|
22
13
|
if (!this.repository)
|
|
23
14
|
return;
|
|
24
|
-
|
|
25
|
-
if (data && data.contentTypeId) {
|
|
26
|
-
// TODO: We need to get the APP language context, use its VariantId to retrieve the right variant. The variant of which we get the name from.
|
|
27
|
-
this._openModal(data.contentTypeId, data.variants?.[0]?.name);
|
|
28
|
-
}
|
|
15
|
+
this._openModal(this.unique || null);
|
|
29
16
|
}
|
|
30
|
-
async
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
async _openModal(parentId, parentName) {
|
|
17
|
+
async _openModal(id) {
|
|
18
|
+
// TODO: what to do if modal service is not available?
|
|
34
19
|
if (!this.#modalContext)
|
|
35
20
|
return;
|
|
36
|
-
const modalContext = this.#modalContext.open(
|
|
37
|
-
|
|
38
|
-
parentName: parentName,
|
|
21
|
+
const modalContext = this.#modalContext.open(UMB_CREATE_DOCUMENT_MODAL, {
|
|
22
|
+
id,
|
|
39
23
|
});
|
|
40
|
-
const { documentTypeKey } = await modalContext.onSubmit();
|
|
24
|
+
const { documentTypeId: documentTypeKey } = await modalContext.onSubmit();
|
|
41
25
|
// TODO: how do we want to generate these urls?
|
|
42
26
|
history.pushState(null, '', `section/content/workspace/document/create/${this.unique ?? 'null'}/${documentTypeKey}`);
|
|
43
27
|
}
|