remove parent from main model
This commit is contained in:
@@ -55,7 +55,6 @@ export class UmbMockEntityFolderManager<MockItemType extends Omit<FolderTreeItem
|
||||
return {
|
||||
name: item.name,
|
||||
id: item.id,
|
||||
parent: item.parent,
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ export interface UmbDetailRepository<DetailModelType> {
|
||||
createScaffold(preset?: Partial<DetailModelType>): Promise<UmbRepositoryResponse<DetailModelType>>;
|
||||
requestByUnique(unique: string): Promise<UmbRepositoryResponseWithAsObservable<DetailModelType>>;
|
||||
byUnique(unique: string): Promise<Observable<DetailModelType | undefined>>;
|
||||
create(data: DetailModelType): Promise<UmbRepositoryResponse<DetailModelType>>;
|
||||
create(data: DetailModelType, parentUnique: string | null): Promise<UmbRepositoryResponse<DetailModelType>>;
|
||||
save(data: DetailModelType): Promise<UmbRepositoryResponse<DetailModelType>>;
|
||||
delete(unique: string): Promise<UmbRepositoryErrorResponse>;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ import type { UmbCreateFolderModel, UmbFolderModel, UmbUpdateFolderModel } from
|
||||
import type { UmbDataSourceResponse, UmbDataSourceErrorResponse } from '@umbraco-cms/backoffice/repository';
|
||||
import type { UmbApi } from '@umbraco-cms/backoffice/extension-api';
|
||||
export interface UmbFolderRepository extends UmbApi {
|
||||
createScaffold(parentUnique: string | null): Promise<UmbDataSourceResponse<UmbFolderModel>>;
|
||||
createScaffold(): Promise<UmbDataSourceResponse<UmbFolderModel>>;
|
||||
create(args: UmbCreateFolderModel): Promise<UmbDataSourceResponse<UmbFolderModel>>;
|
||||
request(unique: string): Promise<UmbDataSourceResponse<UmbFolderModel>>;
|
||||
update(args: UmbUpdateFolderModel): Promise<UmbDataSourceResponse<UmbFolderModel>>;
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
import { UmbFolderModalElementBase } from './folder-modal-element-base.js';
|
||||
import { customElement, state } from '@umbraco-cms/backoffice/external/lit';
|
||||
import type { UmbFolderCreateModalData, UmbFolderCreateModalValue, UmbFolderModel } from '@umbraco-cms/backoffice/tree';
|
||||
import type {
|
||||
UmbCreateFolderModel,
|
||||
UmbFolderCreateModalData,
|
||||
UmbFolderCreateModalValue,
|
||||
UmbFolderModel,
|
||||
} from '@umbraco-cms/backoffice/tree';
|
||||
|
||||
@customElement('umb-folder-create-modal')
|
||||
export class UmbFolderCreateModalElement extends UmbFolderModalElementBase<
|
||||
@@ -17,9 +22,8 @@ export class UmbFolderCreateModalElement extends UmbFolderModalElementBase<
|
||||
|
||||
async init() {
|
||||
if (!this.folderRepository) throw new Error('A folder repository is required to create a folder');
|
||||
if (this.data?.parentUnique === undefined) throw new Error('A parent unique is required to create folder');
|
||||
|
||||
const { data } = await this.folderRepository.createScaffold(this.data.parentUnique);
|
||||
const { data } = await this.folderRepository.createScaffold();
|
||||
|
||||
if (data) {
|
||||
this._folderScaffold = data;
|
||||
@@ -29,13 +33,15 @@ export class UmbFolderCreateModalElement extends UmbFolderModalElementBase<
|
||||
async onFormSubmit({ name }: { name: string }): Promise<void> {
|
||||
if (!this.folderRepository) throw new Error('A folder repository is required to create a folder');
|
||||
if (!this._folderScaffold) throw new Error('The folder scaffold was not initialized correctly');
|
||||
if (this.data?.parentUnique === undefined) throw new Error('A parent unique is required to create folder');
|
||||
|
||||
const data = {
|
||||
const createFolderModel: UmbCreateFolderModel = {
|
||||
...this._folderScaffold,
|
||||
parentUnique: this.data.parentUnique,
|
||||
name,
|
||||
};
|
||||
|
||||
const { data: createdFolder } = await this.folderRepository.create(data);
|
||||
const { data: createdFolder } = await this.folderRepository.create(createFolderModel);
|
||||
|
||||
if (createdFolder) {
|
||||
this.value = { folder: createdFolder };
|
||||
|
||||
Reference in New Issue
Block a user