diff --git a/package.json b/package.json index 6292c154..808f06c6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "hat-ring-components", - "version": "3.4.1", + "version": "3.4.2", "description": "Head App Template - RING components", "license": "MIT", "repository": {}, diff --git a/src/components/Grid/Widget.astro b/src/components/Grid/Widget.astro index 803c017a..3746a8c1 100644 --- a/src/components/Grid/Widget.astro +++ b/src/components/Grid/Widget.astro @@ -13,39 +13,40 @@ interface GridWidgetParams { boxName: string, index: number, }; -let toRender: boolean | JSX.Element = false; +let toRender: boolean | string | JSX.Element = false; const availableWidgets = context.customData.widgets; -const widgetName = _.upperFirst(widgetConfig.widgetType) +const widgetConfigCopy = structuredClone(widgetConfig); +widgetConfigCopy.gridLocation = WidgetHelper_buildWidgetLocation(sectionName, boxName, index); +const widgetName = _.upperFirst(widgetConfigCopy.widgetType) const Component = availableWidgets[widgetName] as AbstractWidget; -widgetConfig.gridLocation = WidgetHelper_buildWidgetLocation(sectionName, boxName, index); const cssClasses: Array = ['gridWidget'] -if(WidgetHelper_shouldHideWidget(widgetConfig, context)) { - toRender = WidgetHelper_renderEmptyComponent(`gridWidget gridWidgetType${_.upperFirst(widgetConfig.widgetType)}`); +if(WidgetHelper_shouldHideWidget(widgetConfigCopy, context)) { + toRender = WidgetHelper_renderEmptyComponent(`gridWidget gridWidgetType${_.upperFirst(widgetConfigCopy.widgetType)}`); } -if (widgetConfig.widgetType) { - cssClasses.push(`gridWidgetType${_.upperFirst(widgetConfig.widgetType)}`); +if (widgetConfigCopy.widgetType) { + cssClasses.push(`gridWidgetType${_.upperFirst(widgetConfigCopy.widgetType)}`); } -if (widgetConfig.customWidth && widgetConfig.customWidth !== 'none') { - cssClasses.push(`gridWidth${widgetConfig.customWidth}`); +if (widgetConfigCopy.customWidth && widgetConfigCopy.customWidth !== 'none') { + cssClasses.push(`gridWidth${widgetConfigCopy.customWidth}`); } -if (widgetConfig.customPosition && widgetConfig.customPosition !== 'none') { - cssClasses.push(`gridPosition${_.upperFirst(widgetConfig.customPosition)}`); +if (widgetConfigCopy.customPosition && widgetConfigCopy.customPosition !== 'none') { + cssClasses.push(`gridPosition${_.upperFirst(widgetConfigCopy.customPosition)}`); } -if (['wrapperStart'].includes(widgetConfig.widgetType)) { - widgetConfig.customClass = `${cssClasses.join(' ')} ${widgetConfig.customClass}`; +if (['wrapperStart'].includes(widgetConfigCopy.widgetType)) { + widgetConfigCopy.customClass = `${cssClasses.join(' ')} ${widgetConfigCopy.customClass}`; } --- {toRender ? : - ['wrapperStart', 'wrapperEnd'].includes(widgetConfig.widgetType) ? - :
- {Component && } + ['wrapperStart', 'wrapperEnd'].includes(widgetConfigCopy.widgetType) ? + :
+ {Component && }
}