From 1ff8f093089cbcaf75b639acb91925d985274d31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Mon, 24 Jun 2024 16:11:03 +0200 Subject: [PATCH 1/5] fallback to layout columns --- .../context/block-grid-entry.context.ts | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/src/packages/block/block-grid/context/block-grid-entry.context.ts b/src/packages/block/block-grid/context/block-grid-entry.context.ts index 4f58426a82..2bb65bdd8e 100644 --- a/src/packages/block/block-grid/context/block-grid-entry.context.ts +++ b/src/packages/block/block-grid/context/block-grid-entry.context.ts @@ -30,8 +30,8 @@ export class UmbBlockGridEntryContext implements UmbBlockGridScalableContext { // - readonly columnSpan = this._layout.asObservablePart((x) => x?.columnSpan); - readonly rowSpan = this._layout.asObservablePart((x) => x?.rowSpan); + readonly columnSpan = this._layout.asObservablePart((x) => x ? x.columnSpan ?? null : undefined); + readonly rowSpan = this._layout.asObservablePart((x) => x ? x.rowSpan ?? null : undefined); readonly layoutAreas = this._layout.asObservablePart((x) => x?.areas); readonly columnSpanOptions = this._blockType.asObservablePart((x) => x?.columnSpanOptions ?? []); readonly areaTypeGridColumns = this._blockType.asObservablePart((x) => x?.areaGridColumns); @@ -208,7 +208,7 @@ export class UmbBlockGridEntryContext this.observe( observeMultiple([this.columnSpan, this.relevantColumnSpanOptions, this._entries.layoutColumns]), ([columnSpan, relevantColumnSpanOptions, layoutColumns]) => { - if (!layoutColumns) return; + if (!layoutColumns || columnSpan === undefined) return; const newColumnSpan = this.#calcColumnSpan( columnSpan ?? layoutColumns, relevantColumnSpanOptions, @@ -217,6 +217,7 @@ export class UmbBlockGridEntryContext if (newColumnSpan !== columnSpan) { const layoutValue = this._layout.getValue(); if (!layoutValue) return; + console.log("newColumnSpan", newColumnSpan) this._layout.setValue({ ...layoutValue, columnSpan: newColumnSpan, @@ -230,16 +231,15 @@ export class UmbBlockGridEntryContext this.observe( observeMultiple([this.minMaxRowSpan, this.rowSpan]), ([minMax, rowSpan]) => { - if (minMax) { - const newRowSpan = Math.max(minMax[0], Math.min(rowSpan ?? 1, minMax[1])); - if (newRowSpan !== rowSpan) { - const layoutValue = this._layout.getValue(); - if (!layoutValue) return; - this._layout.setValue({ - ...layoutValue, - rowSpan: newRowSpan, - }); - } + if (!minMax || rowSpan === undefined) return; + const newRowSpan = Math.max(minMax[0], Math.min(rowSpan ?? 1, minMax[1])); + if (newRowSpan !== rowSpan) { + const layoutValue = this._layout.getValue(); + if (!layoutValue) return; + this._layout.setValue({ + ...layoutValue, + rowSpan: newRowSpan, + }); } }, 'observeRowSpanValidation', @@ -259,10 +259,8 @@ export class UmbBlockGridEntryContext return newColumnSpan; } } else { - // Reset to the layoutColumns. - if (layoutColumns !== columnSpan) { - return layoutColumns; - } + // Fallback to the layoutColumns. + return layoutColumns; } return columnSpan; } From 59c7c461fd20d9feec4db9c043953457329b2eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Mon, 24 Jun 2024 16:12:03 +0200 Subject: [PATCH 2/5] clean up --- .../block/block-grid/context/block-grid-entry.context.ts | 1 - src/packages/block/block/context/block-entries.context.ts | 1 - src/packages/block/block/context/block-entry.context.ts | 1 - 3 files changed, 3 deletions(-) diff --git a/src/packages/block/block-grid/context/block-grid-entry.context.ts b/src/packages/block/block-grid/context/block-grid-entry.context.ts index 2bb65bdd8e..fcbfbd8dce 100644 --- a/src/packages/block/block-grid/context/block-grid-entry.context.ts +++ b/src/packages/block/block-grid/context/block-grid-entry.context.ts @@ -217,7 +217,6 @@ export class UmbBlockGridEntryContext if (newColumnSpan !== columnSpan) { const layoutValue = this._layout.getValue(); if (!layoutValue) return; - console.log("newColumnSpan", newColumnSpan) this._layout.setValue({ ...layoutValue, columnSpan: newColumnSpan, diff --git a/src/packages/block/block/context/block-entries.context.ts b/src/packages/block/block/context/block-entries.context.ts index 275518c5bc..c16929d7b3 100644 --- a/src/packages/block/block/context/block-entries.context.ts +++ b/src/packages/block/block/context/block-entries.context.ts @@ -62,7 +62,6 @@ export abstract class UmbBlockEntriesContext< return this._layoutEntries.setValue(layouts); } setOneLayout(layoutData: BlockLayoutType) { - console.log('setOneLayout', layoutData); return this._layoutEntries.appendOne(layoutData); } diff --git a/src/packages/block/block/context/block-entry.context.ts b/src/packages/block/block/context/block-entry.context.ts index 3986d0ffff..926efaa5e3 100644 --- a/src/packages/block/block/context/block-entry.context.ts +++ b/src/packages/block/block/context/block-entry.context.ts @@ -334,7 +334,6 @@ export abstract class UmbBlockEntryContext< this.settings, (settings) => { if (settings) { - console.log('settings to be set', this.#contentUdi, settings); this._manager?.setOneSettings(settings); } }, From ab9ecdd7df838a7ce016353b351a0493c671ae26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Mon, 24 Jun 2024 16:14:26 +0200 Subject: [PATCH 3/5] leave out the unused two way binding --- src/packages/block/block/context/block-entry.context.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/packages/block/block/context/block-entry.context.ts b/src/packages/block/block/context/block-entry.context.ts index 926efaa5e3..921b509986 100644 --- a/src/packages/block/block/context/block-entry.context.ts +++ b/src/packages/block/block/context/block-entry.context.ts @@ -307,6 +307,9 @@ export abstract class UmbBlockEntryContext< }, 'observeContent', ); + /* + + This two way binding does not work well, might need to further investigate what the exact problem is. this.observe( this.content, (content) => { @@ -316,6 +319,7 @@ export abstract class UmbBlockEntryContext< }, 'observeInternalContent', ); + */ // observe settings: const settingsUdi = this._layout.value?.settingsUdi; From a03dfa93dbd844af556609013e417f9a5116688c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Mon, 24 Jun 2024 16:14:52 +0200 Subject: [PATCH 4/5] remove space --- src/packages/block/block/context/block-entry.context.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packages/block/block/context/block-entry.context.ts b/src/packages/block/block/context/block-entry.context.ts index 921b509986..ae0f452266 100644 --- a/src/packages/block/block/context/block-entry.context.ts +++ b/src/packages/block/block/context/block-entry.context.ts @@ -309,7 +309,7 @@ export abstract class UmbBlockEntryContext< ); /* - This two way binding does not work well, might need to further investigate what the exact problem is. + This two way binding does not work well, might need to further investigate what the exact problem is. this.observe( this.content, (content) => { From 8dc1fcdf45d721a434183f53981ae362ffcaabd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Mon, 24 Jun 2024 16:15:14 +0200 Subject: [PATCH 5/5] clean up --- src/packages/block/block/context/block-entry.context.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/packages/block/block/context/block-entry.context.ts b/src/packages/block/block/context/block-entry.context.ts index ae0f452266..f2d136a648 100644 --- a/src/packages/block/block/context/block-entry.context.ts +++ b/src/packages/block/block/context/block-entry.context.ts @@ -355,8 +355,6 @@ export abstract class UmbBlockEntryContext< this.observe( this._manager.contentTypeOf(contentTypeKey), (contentType) => { - //this.#contentElementTypeAlias.setValue(contentType?.alias); - //this.#contentElementTypeName.setValue(contentType?.name); this.#contentElementType.setValue(contentType); this._gotContentType(contentType); },