Skip to content

Commit e1bd845

Browse files
committed
only observe ownerContentTypeUnique
1 parent 05cab2a commit e1bd845

File tree

2 files changed

+11
-15
lines changed

2 files changed

+11
-15
lines changed

src/packages/core/content-type/structure/content-type-structure-manager.class.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ export class UmbContentTypeStructureManager<
4343
readonly ownerContentType = this.#contentTypes.asObservablePart((x) =>
4444
x.find((y) => y.unique === this.#ownerContentTypeUnique),
4545
);
46+
4647
private readonly _contentTypeContainers = this.#contentTypes.asObservablePart((x) =>
4748
x.flatMap((x) => x.containers ?? []),
4849
);

src/packages/core/content-type/workspace/views/design/content-type-design-editor-properties.element.ts

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
119119
private _propertyStructure: Array<UmbPropertyTypeModel> = [];
120120

121121
@state()
122-
private _ownerContentType?: UmbContentTypeModel;
122+
private _ownerContentTypeUnique?: string;
123123

124124
@state()
125125
private _newPropertyPath?: string;
@@ -153,14 +153,8 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
153153
this.consumeContext(UMB_CONTENT_TYPE_WORKSPACE_CONTEXT, async (workspaceContext) => {
154154
this.#propertyStructureHelper.setStructureManager(workspaceContext.structure);
155155

156-
this.observe(
157-
workspaceContext.structure.ownerContentType,
158-
(contentType) => {
159-
this._ownerContentType = contentType;
160-
this.createPropertyTypeWorkspaceRoutes();
161-
},
162-
'observeOwnerContentType',
163-
);
156+
this._ownerContentTypeUnique = workspaceContext.structure.getOwnerContentTypeUnique();
157+
this.createPropertyTypeWorkspaceRoutes();
164158
});
165159
this.observe(this.#propertyStructureHelper.propertyStructure, (propertyStructure) => {
166160
this._propertyStructure = propertyStructure;
@@ -169,7 +163,8 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
169163
}
170164

171165
createPropertyTypeWorkspaceRoutes() {
172-
if (!this._ownerContentType || this._containerId === undefined) return;
166+
if (!this._ownerContentTypeUnique || this._containerId === undefined) return;
167+
173168
// Note: Route for adding a new property
174169
this.#addPropertyModal?.destroy();
175170
this.#addPropertyModal = new UmbModalRouteRegistrationController(
@@ -181,7 +176,7 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
181176
.addAdditionalPath('add-property/:sortOrder')
182177
.onSetup(async (params) => {
183178
// TODO: Make a onInit promise, that can be awaited here.
184-
if (!this._ownerContentType || this._containerId === undefined) return false;
179+
if (!this._ownerContentTypeUnique || this._containerId === undefined) return false;
185180

186181
const preset: Partial<UmbPropertyTypeModel> = {};
187182
if (params.sortOrder !== undefined) {
@@ -192,7 +187,7 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
192187
}
193188
preset.sortOrder = sortOrderInt;
194189
}
195-
return { data: { contentTypeUnique: this._ownerContentType.unique, preset: undefined } };
190+
return { data: { contentTypeUnique: this._ownerContentTypeUnique, preset: undefined } };
196191
})
197192
.observeRouteBuilder((routeBuilder) => {
198193
this._newPropertyPath =
@@ -217,8 +212,8 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
217212
.addUniquePaths(['container-id'])
218213
.addAdditionalPath('edit-property')
219214
.onSetup(async () => {
220-
if (!this._ownerContentType || this._containerId === undefined) return false;
221-
return { data: { contentTypeUnique: this._ownerContentType.unique, preset: undefined } };
215+
if (!this._ownerContentTypeUnique || this._containerId === undefined) return false;
216+
return { data: { contentTypeUnique: this._ownerContentTypeUnique, preset: undefined } };
222217
})
223218
.observeRouteBuilder((routeBuilder) => {
224219
this._editPropertyTypePath = routeBuilder(null);
@@ -232,7 +227,7 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
232227
}
233228

234229
override render() {
235-
return this._ownerContentType
230+
return this._ownerContentTypeUnique
236231
? html`
237232
<div id="property-list" ?sort-mode-active=${this._sortModeActive}>
238233
${repeat(

0 commit comments

Comments
 (0)