mapping
This commit is contained in:
@@ -6,6 +6,7 @@ import type { UUIToggleElement } from '@umbraco-cms/backoffice/external/uui';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import { UMB_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace';
|
||||
import type { UmbWorkspaceViewElement } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { UmbContentTypeSortModel } from '@umbraco-cms/backoffice/content-type';
|
||||
|
||||
@customElement('umb-document-type-workspace-view-structure')
|
||||
export class UmbDocumentTypeWorkspaceViewStructureElement extends UmbLitElement implements UmbWorkspaceViewElement {
|
||||
@@ -63,12 +64,12 @@ export class UmbDocumentTypeWorkspaceViewStructureElement extends UmbLitElement
|
||||
element-types-only
|
||||
.selectedIds=${this._allowedContentTypeIDs ?? []}
|
||||
@change="${(e: CustomEvent) => {
|
||||
const sortedContentTypesList = (e.target as UmbInputDocumentTypeElement).selectedIds.map(
|
||||
(id, index) => ({
|
||||
id: id,
|
||||
sortOrder: index,
|
||||
}),
|
||||
);
|
||||
const sortedContentTypesList: Array<UmbContentTypeSortModel> = (
|
||||
e.target as UmbInputDocumentTypeElement
|
||||
).selectedIds.map((id, index) => ({
|
||||
contentType: { unique: id },
|
||||
sortOrder: index,
|
||||
}));
|
||||
this.#workspaceContext?.setAllowedContentTypes(sortedContentTypesList);
|
||||
}}">
|
||||
</umb-input-document-type>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS } from '../../repository/manifests.js';
|
||||
import { UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS } from '../../repository/index.js';
|
||||
import { UMB_DOCUMENT_ENTITY_TYPE } from '../../entity.js';
|
||||
import { UmbDocumentPermissionsEntityAction } from './permissions.action.js';
|
||||
import type { ManifestEntityAction, ManifestModal } from '@umbraco-cms/backoffice/extension-registry';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { UmbDocumentPermissionRepository } from '../../user-permissions/index.js';
|
||||
import { UmbDocumentRepository } from '../../repository/index.js';
|
||||
import { UmbDocumentItemRepository } from '../../repository/index.js';
|
||||
import { UmbUserGroupRepository } from '@umbraco-cms/backoffice/user-group';
|
||||
import { html, customElement, property, state, ifDefined, nothing } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
|
||||
@@ -7,11 +7,12 @@ import type {
|
||||
UmbEntityUserPermissionSettingsModalData,
|
||||
UmbEntityUserPermissionSettingsModalValue,
|
||||
UmbModalContext,
|
||||
UmbModalManagerContext} from '@umbraco-cms/backoffice/modal';
|
||||
UmbModalManagerContext,
|
||||
} from '@umbraco-cms/backoffice/modal';
|
||||
import {
|
||||
UMB_ENTITY_USER_PERMISSION_MODAL,
|
||||
UMB_MODAL_MANAGER_CONTEXT,
|
||||
UMB_USER_GROUP_PICKER_MODAL
|
||||
UMB_USER_GROUP_PICKER_MODAL,
|
||||
} from '@umbraco-cms/backoffice/modal';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import { UmbSelectedEvent } from '@umbraco-cms/backoffice/event';
|
||||
@@ -40,7 +41,7 @@ export class UmbPermissionsModalElement extends UmbLitElement {
|
||||
#userPermissions: Array<any> = [];
|
||||
#userGroupRepository = new UmbUserGroupRepository(this);
|
||||
#documentPermissionRepository = new UmbDocumentPermissionRepository(this);
|
||||
#documentRepository = new UmbDocumentRepository(this);
|
||||
#documentItemRepository = new UmbDocumentItemRepository(this);
|
||||
#modalManagerContext?: UmbModalManagerContext;
|
||||
#userGroupPickerModal?: UmbModalContext;
|
||||
|
||||
@@ -67,7 +68,7 @@ export class UmbPermissionsModalElement extends UmbLitElement {
|
||||
}
|
||||
|
||||
async #getEntityItem(unique: string) {
|
||||
const { data } = await this.#documentRepository.requestItems([unique]);
|
||||
const { data } = await this.#documentItemRepository.requestItems([unique]);
|
||||
if (!data) throw new Error('Could not load item');
|
||||
this._entityItem = data[0];
|
||||
}
|
||||
|
||||
@@ -2,12 +2,8 @@ import type { UmbMediaTypeDetailModel } from '../../types.js';
|
||||
import { UMB_MEDIA_TYPE_ENTITY_TYPE } from '../../entity.js';
|
||||
import { UmbId } from '@umbraco-cms/backoffice/id';
|
||||
import type { UmbDetailDataSource } from '@umbraco-cms/backoffice/repository';
|
||||
import type {
|
||||
CreateMediaTypeRequestModel,
|
||||
UpdateMediaTypeRequestModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import {
|
||||
MediaTypeResource
|
||||
} from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { CreateMediaTypeRequestModel, UpdateMediaTypeRequestModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import { MediaTypeResource } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';
|
||||
|
||||
@@ -87,7 +83,7 @@ export class UmbMediaTypeServerDataSource implements UmbDetailDataSource<UmbMedi
|
||||
isElement: data.isElement,
|
||||
properties: data.properties,
|
||||
containers: data.containers,
|
||||
allowedContentTypes: data.allowedContentTypes,
|
||||
allowedContentTypes: data.allowedMediaTypes,
|
||||
compositions: data.compositions,
|
||||
};
|
||||
|
||||
@@ -116,7 +112,7 @@ export class UmbMediaTypeServerDataSource implements UmbDetailDataSource<UmbMedi
|
||||
isElement: model.isElement,
|
||||
properties: model.properties,
|
||||
containers: model.containers,
|
||||
allowedContentTypes: model.allowedContentTypes,
|
||||
allowedMediaTypes: model.allowedContentTypes,
|
||||
compositions: model.compositions,
|
||||
id: model.unique,
|
||||
containerId: model.parentUnique,
|
||||
|
||||
@@ -3,7 +3,7 @@ import { UMB_MEDIA_TYPE_TREE_STORE_CONTEXT } from '../index.js';
|
||||
import { UmbMediaTypeFolderServerDataSource } from './media-type-folder.server.data-source.js';
|
||||
import type { UmbMediaTypeFolderTreeItemModel } from './types.js';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
import type { UmbFolderModel} from '@umbraco-cms/backoffice/tree';
|
||||
import type { UmbFolderModel } from '@umbraco-cms/backoffice/tree';
|
||||
import { UmbFolderRepositoryBase } from '@umbraco-cms/backoffice/tree';
|
||||
|
||||
export class UmbMediaTypeFolderRepository extends UmbFolderRepositoryBase<UmbMediaTypeFolderTreeItemModel> {
|
||||
@@ -18,7 +18,6 @@ const folderToMediaTypeTreeItemMapper = (folder: UmbFolderModel) => {
|
||||
parentUnique: folder.parentUnique,
|
||||
name: folder.name,
|
||||
entityType: UMB_MEDIA_TYPE_FOLDER_ENTITY_TYPE,
|
||||
isContainer: false,
|
||||
hasChildren: false,
|
||||
isFolder: true,
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@ import type { UUIToggleElement } from '@umbraco-cms/backoffice/external/uui';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import { UMB_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace';
|
||||
import type { UmbWorkspaceViewElement } from '@umbraco-cms/backoffice/extension-registry';
|
||||
import { UmbContentTypeSortModel } from '@umbraco-cms/backoffice/content-type';
|
||||
|
||||
@customElement('umb-media-type-workspace-view-structure')
|
||||
export class UmbMediaTypeWorkspaceViewStructureElement extends UmbLitElement implements UmbWorkspaceViewElement {
|
||||
@@ -33,7 +34,7 @@ export class UmbMediaTypeWorkspaceViewStructureElement extends UmbLitElement imp
|
||||
this.observe(this.#workspaceContext.allowedContentTypes, (allowedContentTypes) => {
|
||||
const oldValue = this._allowedContentTypeIDs;
|
||||
this._allowedContentTypeIDs = allowedContentTypes
|
||||
?.map((x) => x.id)
|
||||
?.map((x) => x.contentType.unique)
|
||||
.filter((x) => x !== undefined) as Array<string>;
|
||||
this.requestUpdate('_allowedContentTypeIDs', oldValue);
|
||||
});
|
||||
@@ -62,8 +63,10 @@ export class UmbMediaTypeWorkspaceViewStructureElement extends UmbLitElement imp
|
||||
<umb-input-media-type
|
||||
.selectedIds=${this._allowedContentTypeIDs ?? []}
|
||||
@change="${(e: CustomEvent) => {
|
||||
const sortedContentTypesList = (e.target as UmbInputMediaTypeElement).selectedIds.map((id, index) => ({
|
||||
id: id,
|
||||
const sortedContentTypesList: Array<UmbContentTypeSortModel> = (
|
||||
e.target as UmbInputMediaTypeElement
|
||||
).selectedIds.map((id, index) => ({
|
||||
contentType: { unique: id },
|
||||
sortOrder: index,
|
||||
}));
|
||||
this.#workspaceContext?.updateProperty('allowedContentTypes', sortedContentTypesList);
|
||||
|
||||
@@ -5,5 +5,4 @@ export interface UmbMediaTreeItemModel extends Omit<UmbEntityTreeItemModel, 'nam
|
||||
isTrashed: boolean;
|
||||
}
|
||||
|
||||
// TODO: TREE STORE TYPE PROBLEM:
|
||||
export interface UmbMediaTreeRootModel extends UmbEntityTreeRootModel {}
|
||||
|
||||
@@ -4,16 +4,14 @@ import '../template-card/template-card.element.js';
|
||||
import { UmbTemplateRepository } from '../../repository/template.repository.js';
|
||||
import { css, html, customElement, property, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { FormControlMixin } from '@umbraco-cms/backoffice/external/uui';
|
||||
import type {
|
||||
UmbModalManagerContext} from '@umbraco-cms/backoffice/modal';
|
||||
import type { UmbModalManagerContext } from '@umbraco-cms/backoffice/modal';
|
||||
import {
|
||||
UMB_TEMPLATE_PICKER_MODAL,
|
||||
UMB_TEMPLATE_MODAL,
|
||||
UMB_MODAL_MANAGER_CONTEXT,
|
||||
} from '@umbraco-cms/backoffice/modal';
|
||||
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
|
||||
import type { ItemResponseModelBaseModel} from '@umbraco-cms/backoffice/backend-api';
|
||||
import { TemplateResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
import type { TemplateItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
|
||||
|
||||
@customElement('umb-input-template')
|
||||
export class UmbInputTemplateElement extends FormControlMixin(UmbLitElement) {
|
||||
@@ -78,7 +76,7 @@ export class UmbInputTemplateElement extends FormControlMixin(UmbLitElement) {
|
||||
private _templateRepository: UmbTemplateRepository = new UmbTemplateRepository(this);
|
||||
|
||||
@state()
|
||||
_pickedTemplates: ItemResponseModelBaseModel[] = [];
|
||||
_pickedTemplates: TemplateItemResponseModel[] = [];
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
Reference in New Issue
Block a user