Set widget position's type according to parent tab (#18411)
Fixes workspaces seeded a few weeks ago and containing position=NULL widgets
This commit is contained in:
committed by
GitHub
parent
ecbc0ac013
commit
57499342f1
+11
-7
@@ -6,11 +6,12 @@ import {
|
||||
type UpdatePageLayoutWithTabsInput,
|
||||
} from '~/generated-metadata/graphql';
|
||||
|
||||
const buildWidgetPosition = (widget: PageLayoutWidget, widgetIndex: number) => {
|
||||
const layoutMode =
|
||||
widget.position?.layoutMode ?? PageLayoutTabLayoutMode.GRID;
|
||||
|
||||
switch (layoutMode) {
|
||||
const buildWidgetPosition = (
|
||||
widget: PageLayoutWidget,
|
||||
widgetIndex: number,
|
||||
tabLayoutMode: PageLayoutTabLayoutMode,
|
||||
) => {
|
||||
switch (tabLayoutMode) {
|
||||
case PageLayoutTabLayoutMode.VERTICAL_LIST: {
|
||||
const index =
|
||||
widget.position?.__typename === 'PageLayoutWidgetVerticalListPosition'
|
||||
@@ -27,7 +28,6 @@ const buildWidgetPosition = (widget: PageLayoutWidget, widgetIndex: number) => {
|
||||
layoutMode: PageLayoutTabLayoutMode.CANVAS,
|
||||
};
|
||||
case PageLayoutTabLayoutMode.GRID:
|
||||
default:
|
||||
return {
|
||||
layoutMode: PageLayoutTabLayoutMode.GRID,
|
||||
row: widget.gridPosition.row,
|
||||
@@ -63,7 +63,11 @@ export const convertPageLayoutDraftToUpdateInput = (
|
||||
rowSpan: widget.gridPosition.rowSpan,
|
||||
columnSpan: widget.gridPosition.columnSpan,
|
||||
},
|
||||
position: buildWidgetPosition(widget, widgetIndex),
|
||||
position: buildWidgetPosition(
|
||||
widget,
|
||||
widgetIndex,
|
||||
tab.layoutMode ?? PageLayoutTabLayoutMode.GRID,
|
||||
),
|
||||
configuration: widget.configuration ?? null,
|
||||
})),
|
||||
})),
|
||||
|
||||
Reference in New Issue
Block a user