@gooddata/sdk-ui-dashboard 10.14.0-alpha.2 → 10.14.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/__version.d.ts +1 -1
- package/esm/__version.d.ts.map +1 -1
- package/esm/__version.js +1 -1
- package/esm/__version.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +12 -4
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js +3 -2
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js.map +1 -1
- package/esm/model/store/config/configSelectors.d.ts +5 -1
- package/esm/model/store/config/configSelectors.d.ts.map +1 -1
- package/esm/model/store/config/configSelectors.js +8 -2
- package/esm/model/store/config/configSelectors.js.map +1 -1
- package/esm/model/store/executionResults/executionResultsSelectors.d.ts +1 -1
- package/esm/model/store/executionResults/executionResultsSelectors.d.ts.map +1 -1
- package/esm/model/store/executionResults/executionResultsSelectors.js +4 -1
- package/esm/model/store/executionResults/executionResultsSelectors.js.map +1 -1
- package/esm/model/store/index.d.ts +1 -1
- package/esm/model/store/index.d.ts.map +1 -1
- package/esm/model/store/index.js +1 -1
- package/esm/model/store/index.js.map +1 -1
- package/esm/model/store/layout/layoutSelectors.d.ts.map +1 -1
- package/esm/model/store/layout/layoutSelectors.js +18 -6
- package/esm/model/store/layout/layoutSelectors.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +5 -5
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js +13 -6
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js.map +1 -1
- package/esm/presentation/constants/classes.d.ts +2 -0
- package/esm/presentation/constants/classes.d.ts.map +1 -0
- package/esm/presentation/constants/classes.js +3 -0
- package/esm/presentation/constants/classes.js.map +1 -0
- package/esm/presentation/constants/index.d.ts +1 -0
- package/esm/presentation/constants/index.d.ts.map +1 -1
- package/esm/presentation/constants/index.js +1 -0
- package/esm/presentation/constants/index.js.map +1 -1
- package/esm/presentation/constants/layout.d.ts +1 -0
- package/esm/presentation/constants/layout.d.ts.map +1 -1
- package/esm/presentation/constants/layout.js +1 -1
- package/esm/presentation/constants/layout.js.map +1 -1
- package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.d.ts.map +1 -1
- package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.js +7 -2
- package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.js.map +1 -1
- package/esm/presentation/dashboard/components/DashboardMainContent.d.ts.map +1 -1
- package/esm/presentation/dashboard/components/DashboardMainContent.js +7 -2
- package/esm/presentation/dashboard/components/DashboardMainContent.js.map +1 -1
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.d.ts +11 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.js +53 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.js.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts +8 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js +17 -0
- package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardLayout.d.ts +7 -0
- package/esm/presentation/flexibleLayout/DashboardLayout.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardLayout.js +11 -0
- package/esm/presentation/flexibleLayout/DashboardLayout.js.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardLayoutWidget.d.ts +8 -0
- package/esm/presentation/flexibleLayout/DashboardLayoutWidget.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DashboardLayoutWidget.js +199 -0
- package/esm/presentation/flexibleLayout/DashboardLayoutWidget.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.d.ts +9 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.js +54 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayout.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.d.ts +4 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.js +23 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutEditSectionHeaderRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.d.ts +21 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.js +17 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRow.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.d.ts +7 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.js +39 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutGridRowEdit.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.d.ts +15 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.js +19 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItem.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.d.ts +6 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.js +33 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.d.ts +3 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.js +40 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutItemViewRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.d.ts +25 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.js +51 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSection.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.d.ts +24 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.js +15 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeader.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.d.ts +9 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.js +12 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderDescription.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.d.ts +4 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.js +17 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionHeaderRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.d.ts +3 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.js +11 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutSectionRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.d.ts +4 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.js +22 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/DashboardLayoutWidgetRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.d.ts +3 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.js +24 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableDashboardLayoutSectionRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.d.ts +16 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.js +38 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/EditableLabelWithBubble.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts +8 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js +66 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.d.ts +7 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.js +18 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/EditableHeader/sectionHeaderHelper.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/GridLayoutElement.d.ts +39 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/GridLayoutElement.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/GridLayoutElement.js +63 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/GridLayoutElement.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts +8 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.js +14 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionHeaderRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.d.ts +8 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.js +14 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/RenderModeAwareDashboardLayoutSectionRenderer.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/constants.d.ts +2 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/constants.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/constants.js +3 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/constants.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.d.ts +19 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.js +14 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/index.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.d.ts +343 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.js +2 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/interfaces.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/useScreenSize.d.ts +4 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/useScreenSize.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/useScreenSize.js +34 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/useScreenSize.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.d.ts +3 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.js +31 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/emptyFacade.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.d.ts +7 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.js +33 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/legacy.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.d.ts +51 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.js +360 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutRenderer/utils/sizing.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.d.ts +22 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.js +96 -0
- package/esm/presentation/flexibleLayout/DefaultDashboardLayoutUtils.js.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.d.ts +7 -0
- package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.js +101 -0
- package/esm/presentation/flexibleLayout/DefaultFlexibleDashboardLayout.js.map +1 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardError.d.ts +3 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardError.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardError.js +10 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardError.js.map +1 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardLayout.d.ts +3 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardLayout.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardLayout.js +9 -0
- package/esm/presentation/flexibleLayout/EmptyDashboardLayout.js.map +1 -0
- package/esm/presentation/flexibleLayout/constants.d.ts +4 -0
- package/esm/presentation/flexibleLayout/constants.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/constants.js +14 -0
- package/esm/presentation/flexibleLayout/constants.js.map +1 -0
- package/esm/presentation/flexibleLayout/index.d.ts +4 -0
- package/esm/presentation/flexibleLayout/index.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/index.js +5 -0
- package/esm/presentation/flexibleLayout/index.js.map +1 -0
- package/esm/presentation/flexibleLayout/refs.d.ts +5 -0
- package/esm/presentation/flexibleLayout/refs.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/refs.js +7 -0
- package/esm/presentation/flexibleLayout/refs.js.map +1 -0
- package/esm/presentation/flexibleLayout/types.d.ts +26 -0
- package/esm/presentation/flexibleLayout/types.d.ts.map +1 -0
- package/esm/presentation/flexibleLayout/types.js +2 -0
- package/esm/presentation/flexibleLayout/types.js.map +1 -0
- package/esm/presentation/layout/DefaultDashboardLayout.d.ts.map +1 -1
- package/esm/presentation/layout/DefaultDashboardLayout.js +16 -8
- package/esm/presentation/layout/DefaultDashboardLayout.js.map +1 -1
- package/esm/presentation/localization/bundles/en-US.json +10 -0
- package/esm/presentation/widget/common/configuration/ConfigurationBubble.d.ts.map +1 -1
- package/esm/presentation/widget/common/configuration/ConfigurationBubble.js +2 -1
- package/esm/presentation/widget/common/configuration/ConfigurationBubble.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.d.ts +14 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.d.ts.map +1 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.js +139 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertAttributeSelecxt.js.map +1 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsList.d.ts +2 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsList.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsList.js +2 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsList.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.d.ts +2 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js +11 -3
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts +7 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js +2 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts +7 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +12 -4
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.d.ts +12 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.d.ts.map +1 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.js +86 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAttributeValuesFromExecResults.js.map +1 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts +6 -3
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js +6 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts +5 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js +21 -4
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts +19 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js +204 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlerts.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlerts.js +4 -4
- package/esm/presentation/widget/insight/configuration/InsightAlerts.js.map +1 -1
- package/esm/presentation/widget/insight/types.d.ts +7 -1
- package/esm/presentation/widget/insight/types.d.ts.map +1 -1
- package/esm/presentation/widget/insight/types.js.map +1 -1
- package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.d.ts.map +1 -1
- package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.js +2 -1
- package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuBubble.js.map +1 -1
- package/esm/presentation/widget/widget/DefaultDashboardWidget.d.ts.map +1 -1
- package/esm/presentation/widget/widget/DefaultDashboardWidget.js +8 -3
- package/esm/presentation/widget/widget/DefaultDashboardWidget.js.map +1 -1
- package/esm/presentation/widget/widget/InsightWidget/useAlertingAndScheduling.d.ts.map +1 -1
- package/esm/presentation/widget/widget/InsightWidget/useAlertingAndScheduling.js +11 -2
- package/esm/presentation/widget/widget/InsightWidget/useAlertingAndScheduling.js.map +1 -1
- package/esm/presentation/widget/widget/types.d.ts +7 -1
- package/esm/presentation/widget/widget/types.d.ts.map +1 -1
- package/esm/sdk-ui-dashboard.d.ts +19 -8
- package/package.json +15 -15
- package/styles/css/alerting.css +59 -5
- package/styles/css/alerting.css.map +1 -1
- package/styles/css/dashboard.css +117 -0
- package/styles/css/dashboard.css.map +1 -1
- package/styles/css/dragAndDrop.css +5 -0
- package/styles/css/dragAndDrop.css.map +1 -1
- package/styles/css/flexibleLayout.css +425 -0
- package/styles/css/flexibleLayout.css.map +1 -0
- package/styles/css/layout.css +111 -0
- package/styles/css/layout.css.map +1 -1
- package/styles/css/main.css +188 -6
- package/styles/css/main.css.map +1 -1
- package/styles/css/visualization.css +7 -1
- package/styles/css/visualization.css.map +1 -1
- package/styles/scss/alerting.scss +69 -5
- package/styles/scss/dashboard.scss +12 -0
- package/styles/scss/dragAndDrop.scss +8 -0
- package/styles/scss/flexibleLayout.scss +410 -0
- package/styles/scss/layout.scss +77 -0
- package/styles/scss/visualization.scss +10 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAG7D,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAG7D,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AAqBjG,UAAU,WAAW;IACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACrD,MAAM,EAAE,CACJ,KAAK,EAAE,yBAAyB,EAChC,MAAM,EAAE,cAAc,GAAG,SAAS,EAClC,MAAM,EAAE,WAAW,GAAG,IAAI,EAC1B,QAAQ,EAAE,MAAM,IAAI,KACnB,IAAI,CAAC;IACV,OAAO,EAAE,CAAC,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpE,KAAK,EAAE,yBAAyB,CAAC;CACpC;AAOD,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA0HvC,CAAC"}
|
|
@@ -3,10 +3,11 @@ import React, { useCallback, useRef, useState } from "react";
|
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { isInsightWidget } from "@gooddata/sdk-model";
|
|
6
|
+
import { ClientFormatterFacade } from "@gooddata/number-formatter";
|
|
6
7
|
import { Icon, ShortenedText } from "@gooddata/sdk-ui-kit";
|
|
7
8
|
import { useTheme } from "@gooddata/sdk-ui-theme-provider";
|
|
8
9
|
import { gdColorNegative, gdColorStateBlank } from "../../../constants/colors.js";
|
|
9
|
-
import { selectCanManageWorkspace, selectCurrentUser, selectWidgetByRef, useDashboardSelector, } from "../../../../model/index.js";
|
|
10
|
+
import { selectCanManageWorkspace, selectCurrentUser, selectSeparators, selectWidgetByRef, useDashboardSelector, } from "../../../../model/index.js";
|
|
10
11
|
import { AlertDropdown } from "./AlertDropdown.js";
|
|
11
12
|
import { useAlertValidation } from "../../../widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js";
|
|
12
13
|
import { getAlertThreshold, getOperatorTitle, getValueSuffix, } from "../../../widget/insight/configuration/InsightAlertConfig/utils.js";
|
|
@@ -19,7 +20,6 @@ export const Alert = (props) => {
|
|
|
19
20
|
const { alert, onDelete, onEdit, onPause } = props;
|
|
20
21
|
const intl = useIntl();
|
|
21
22
|
const { isValid } = useAlertValidation(alert);
|
|
22
|
-
const threshold = getAlertThreshold(alert.alert);
|
|
23
23
|
const iconColor = theme?.palette?.complementary?.c6 ?? gdColorStateBlank;
|
|
24
24
|
const iconColorError = theme?.palette?.error?.base ?? gdColorNegative;
|
|
25
25
|
const iconActive = React.createElement(Icon.Alert, { width: 16, height: 16, color: iconColor });
|
|
@@ -31,10 +31,8 @@ export const Alert = (props) => {
|
|
|
31
31
|
const widget = useDashboardSelector(selectWidgetByRef(editWidgetRef));
|
|
32
32
|
const insightWidget = isInsightWidget(widget) ? widget : undefined;
|
|
33
33
|
const widgetName = insightWidget?.title ?? "";
|
|
34
|
-
const
|
|
35
|
-
const subtitle =
|
|
36
|
-
.filter(Boolean)
|
|
37
|
-
.join(" • ");
|
|
34
|
+
const separators = useDashboardSelector(selectSeparators);
|
|
35
|
+
const subtitle = getSubtitle(intl, widgetName, alert, separators);
|
|
38
36
|
const [hover, setHover] = useState(false);
|
|
39
37
|
const [dropdownOpened, toggleDropdownOpened] = useState(false);
|
|
40
38
|
const buttonRef = useRef(null);
|
|
@@ -85,4 +83,13 @@ export const Alert = (props) => {
|
|
|
85
83
|
React.createElement("span", { className: "gd-notifications-channel-subtitle" },
|
|
86
84
|
React.createElement(ShortenedText, { className: "gd-notifications-channel-shortened-text", tooltipAlignPoints: TEXT_TOOLTIP_ALIGN_POINTS }, subtitle)))))));
|
|
87
85
|
};
|
|
86
|
+
function getSubtitle(intl, widgetName, alert, separators) {
|
|
87
|
+
const valueSuffix = getValueSuffix(alert.alert) ?? "";
|
|
88
|
+
const threshold = getAlertThreshold(alert.alert);
|
|
89
|
+
const convertedValue = ClientFormatterFacade.convertValue(threshold);
|
|
90
|
+
const { formattedValue } = ClientFormatterFacade.formatValue(convertedValue, undefined, separators);
|
|
91
|
+
return [`${getOperatorTitle(intl, alert.alert)} ${formattedValue}${valueSuffix}`, widgetName]
|
|
92
|
+
.filter(Boolean)
|
|
93
|
+
.join(" • ");
|
|
94
|
+
}
|
|
88
95
|
//# sourceMappingURL=Alert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../../src/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../../src/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classes.d.ts","sourceRoot":"","sources":["../../../src/presentation/constants/classes.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,sCAAsC,uCAAuC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classes.js","sourceRoot":"","sources":["../../../src/presentation/constants/classes.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,CAAC,MAAM,sCAAsC,GAAG,oCAAoC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/presentation/constants/index.ts"],"names":[],"mappings":"AAEA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/presentation/constants/index.ts"],"names":[],"mappings":"AAEA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/presentation/constants/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/presentation/constants/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare const SCREEN_BREAKPOINT_MD = 940;
|
|
|
7
7
|
export declare const SCREEN_BREAKPOINT_LG = 1170;
|
|
8
8
|
export declare const SCREEN_BREAKPOINT_XL = 1590;
|
|
9
9
|
export declare const SCREEN_BREAKPOINT_XXL = 99999999;
|
|
10
|
+
export declare const DASHBOARD_LAYOUT_BREAK_POINTS: number[];
|
|
10
11
|
export declare const DASHBOARD_LAYOUT_GRID_CONFIGURATION: Configuration;
|
|
11
12
|
export declare const DASHBOARD_LAYOUT_CONTAINER_WIDTHS: {
|
|
12
13
|
xs: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/presentation/constants/layout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,WAAW,EAAE,UAAU,EAAmC,CAAC;AAGxE,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,qBAAqB,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/presentation/constants/layout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,WAAW,EAAE,UAAU,EAAmC,CAAC;AAGxE,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAS9C,eAAO,MAAM,6BAA6B,EAAE,MAAM,EAKjD,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,aAMjD,CAAC;AAMF,eAAO,MAAM,iCAAiC;;;;;;CAM7C,CAAC;AAEF,eAAO,MAAM,uCAAuC,MAAM,CAAC;AAE3D,eAAO,MAAM,uCAAuC,MAAM,CAAC"}
|
|
@@ -11,7 +11,7 @@ const DASHBOARD_LAYOUT_BREAKPOINT_XS = SCREEN_BREAKPOINT_XS + 1;
|
|
|
11
11
|
const DASHBOARD_LAYOUT_BREAKPOINT_SM = SCREEN_BREAKPOINT_SM + 1;
|
|
12
12
|
const DASHBOARD_LAYOUT_BREAKPOINT_MD = SCREEN_BREAKPOINT_LG + 1;
|
|
13
13
|
const DASHBOARD_LAYOUT_BREAKPOINT_LG = SCREEN_BREAKPOINT_XL + 1;
|
|
14
|
-
const DASHBOARD_LAYOUT_BREAK_POINTS = [
|
|
14
|
+
export const DASHBOARD_LAYOUT_BREAK_POINTS = [
|
|
15
15
|
DASHBOARD_LAYOUT_BREAKPOINT_XS,
|
|
16
16
|
DASHBOARD_LAYOUT_BREAKPOINT_SM,
|
|
17
17
|
DASHBOARD_LAYOUT_BREAKPOINT_MD,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/presentation/constants/layout.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,WAAW,GAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAExE,cAAc;AACd,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAE9C,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAExC,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAEhE,MAAM,6BAA6B,GAAa;
|
|
1
|
+
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/presentation/constants/layout.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,WAAW,GAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAExE,cAAc;AACd,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAE9C,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAExC,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAChE,MAAM,8BAA8B,GAAG,oBAAoB,GAAG,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,6BAA6B,GAAa;IACnD,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,mCAAmC,GAAkB;IAC9D,2EAA2E;IAC3E,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,SAAS;IAC7B,WAAW,EAAE,6BAA6B;IAC1C,WAAW,EAAE,6BAA6B;CAC7C,CAAC;AAEF,uBAAuB;AACvB,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC,oDAAoD;AACpD,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC7C,EAAE,EAAE,GAAG,GAAG,wBAAwB,EAAE,mCAAmC;IACvE,EAAE,EAAE,GAAG,GAAG,wBAAwB,EAAE,mCAAmC;IACvE,EAAE,EAAE,GAAG,GAAG,wBAAwB,EAAE,mCAAmC;IACvE,EAAE,EAAE,IAAI,GAAG,wBAAwB,EAAE,mCAAmC;IACxE,EAAE,EAAE,IAAI,GAAG,wBAAwB,EAAE,6CAA6C;CACrF,CAAC;AAEF,MAAM,CAAC,MAAM,uCAAuC,GAAG,GAAG,CAAC;AAE3D,MAAM,CAAC,MAAM,uCAAuC,GAAG,GAAG,CAAC"}
|
package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultDashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultDashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAYzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,2BAA2B,MAAO,eAAe,sBAsC7D,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// (C) 2023-2024 GoodData Corporation
|
|
2
2
|
import React, { useEffect } from "react";
|
|
3
|
-
import
|
|
3
|
+
import cx from "classnames";
|
|
4
|
+
import { useDispatchDashboardCommand, changeFilterContextSelection, useWidgetSelection, useDashboardSelector, selectEnableFlexibleLayout, } from "../../../model/index.js";
|
|
4
5
|
import { useDashboardDrop, useWidgetDragHoverHandlers } from "../../dragAndDrop/index.js";
|
|
5
6
|
import { DashboardLayout } from "../../layout/index.js";
|
|
6
7
|
import { DateFilterConfigWarnings } from "../components/DateFilterConfigWarnings.js";
|
|
@@ -27,7 +28,11 @@ export const DefaultDashboardMainContent = (_) => {
|
|
|
27
28
|
handleDragHoverEnd();
|
|
28
29
|
}
|
|
29
30
|
}, [handleDragHoverEnd, isOver]);
|
|
30
|
-
|
|
31
|
+
const isFlexibleLayoutEnabled = useDashboardSelector(selectEnableFlexibleLayout);
|
|
32
|
+
const classNames = cx("gd-flex-container", "root-flex-maincontent", {
|
|
33
|
+
"gd-grid-layout": isFlexibleLayoutEnabled,
|
|
34
|
+
});
|
|
35
|
+
return (React.createElement("div", { className: classNames, ref: dropRef, onClick: deselectWidgets },
|
|
31
36
|
React.createElement(DateFilterConfigWarnings, null),
|
|
32
37
|
React.createElement(DashboardLayout, { onFiltersChange: onFiltersChange })));
|
|
33
38
|
};
|
package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultDashboardMainContent.js","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EACH,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,
|
|
1
|
+
{"version":3,"file":"DefaultDashboardMainContent.js","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EACH,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAkB,EAAE,EAAE;IAC9D,MAAM,eAAe,GAAG,2BAA2B,CAAC,4BAA4B,CAAC,CAAC;IAClF,MAAM,EAAE,eAAe,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAEjD,MAAM,EAAE,kBAAkB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAC5D,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAC1C;QACI,SAAS;QACT,qBAAqB;QACrB,iBAAiB;QACjB,KAAK;QACL,iBAAiB;QACjB,UAAU;QACV,kBAAkB;QAClB,uBAAuB;QACvB,+BAA+B;KAClC,EACD,EAAE,CACL,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,kBAAkB,EAAE,CAAC;QACzB,CAAC;IACL,CAAC,EAAE,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;IAEjC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;IAEjF,MAAM,UAAU,GAAG,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,EAAE;QAChE,gBAAgB,EAAE,uBAAuB;KAC5C,CAAC,CAAC;IAEH,OAAO,CACH,6BAAK,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe;QAC9D,oBAAC,wBAAwB,OAAG;QAC5B,oBAAC,eAAe,IAAC,eAAe,EAAE,eAAe,GAAI,CACnD,CACT,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardMainContent.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2C,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardMainContent.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAYhE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI9C,eAAO,MAAM,oBAAoB,iFA2C/B,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// (C) 2022-2024 GoodData Corporation
|
|
2
2
|
import React, { forwardRef, useEffect } from "react";
|
|
3
|
-
import
|
|
3
|
+
import cx from "classnames";
|
|
4
|
+
import { useDispatchDashboardCommand, changeFilterContextSelection, useWidgetSelection, useDashboardSelector, selectEnableFlexibleLayout, } from "../../../model/index.js";
|
|
4
5
|
import { useDashboardDrop, useWidgetDragHoverHandlers } from "../../dragAndDrop/index.js";
|
|
5
6
|
import { DashboardLayout } from "../../layout/index.js";
|
|
6
7
|
import { DateFilterConfigWarnings } from "./DateFilterConfigWarnings.js";
|
|
@@ -24,8 +25,12 @@ export const DashboardMainContent = forwardRef(function DashboardMainContent(_,
|
|
|
24
25
|
handleDragHoverEnd();
|
|
25
26
|
}
|
|
26
27
|
}, [handleDragHoverEnd, isOver]);
|
|
28
|
+
const isFlexibleLayoutEnabled = useDashboardSelector(selectEnableFlexibleLayout);
|
|
29
|
+
const classNames = cx("gd-flex-container", "root-flex-maincontent", {
|
|
30
|
+
"gd-grid-layout": isFlexibleLayoutEnabled,
|
|
31
|
+
});
|
|
27
32
|
return (React.createElement("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", ref: ref },
|
|
28
|
-
React.createElement("div", { className:
|
|
33
|
+
React.createElement("div", { className: classNames, ref: dropRef, onClick: deselectWidgets },
|
|
29
34
|
React.createElement(DateFilterConfigWarnings, null),
|
|
30
35
|
React.createElement(DashboardLayout, { onFiltersChange: onFiltersChange }))));
|
|
31
36
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardMainContent.js","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardMainContent.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAa,SAAS,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EACH,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,
|
|
1
|
+
{"version":3,"file":"DashboardMainContent.js","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardMainContent.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAa,SAAS,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EACH,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC,SAAS,oBAAoB,CAAC,CAAkB,EAAE,GAAG;IAChG,MAAM,eAAe,GAAG,2BAA2B,CAAC,4BAA4B,CAAC,CAAC;IAClF,MAAM,EAAE,eAAe,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAEjD,MAAM,EAAE,kBAAkB,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAC5D,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAC1C;QACI,SAAS;QACT,qBAAqB;QACrB,iBAAiB;QACjB,KAAK;QACL,iBAAiB;QACjB,UAAU;QACV,kBAAkB;QAClB,uBAAuB;QACvB,+BAA+B;KAClC,EACD,EAAE,CACL,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,kBAAkB,EAAE,CAAC;QACzB,CAAC;IACL,CAAC,EAAE,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;IAEjC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;IAEjF,MAAM,UAAU,GAAG,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,EAAE;QAChE,gBAAgB,EAAE,uBAAuB;KAC5C,CAAC,CAAC;IAEH,OAAO,CACH,6BACI,SAAS,EAAC,qDAAqD,EAC/D,GAAG,EAAE,GAAgC;QAErC,6BAAK,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe;YAC9D,oBAAC,wBAAwB,OAAG;YAC5B,oBAAC,eAAe,IAAC,eAAe,EAAE,eAAe,GAAI,CACnD,CACJ,CACT,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IDashboardWidgetOverlay } from "../../../model/index.js";
|
|
3
|
+
type DashboardItemOverlayProps = {
|
|
4
|
+
render?: boolean;
|
|
5
|
+
type: "row" | "column";
|
|
6
|
+
modifications: Required<IDashboardWidgetOverlay>["modification"][];
|
|
7
|
+
onHide?: () => void;
|
|
8
|
+
};
|
|
9
|
+
export declare const DashboardItemOverlay: React.FunctionComponent<DashboardItemOverlayProps>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=DashboardItemOverlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardItemOverlay.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAMxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAQlE,KAAK,yBAAyB,GAAG;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,aAAa,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;IACnE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,iBAAiB,CAAC,yBAAyB,CAkDnF,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// (C) 2020-2024 GoodData Corporation
|
|
2
|
+
import React, { useState } from "react";
|
|
3
|
+
import classNames from "classnames";
|
|
4
|
+
import { Button } from "@gooddata/sdk-ui-kit";
|
|
5
|
+
import DefaultMeasure from "react-measure";
|
|
6
|
+
import { useTheme } from "@gooddata/sdk-ui-theme-provider";
|
|
7
|
+
import { FormattedMessage, useIntl } from "react-intl";
|
|
8
|
+
import { defaultImport } from "default-import";
|
|
9
|
+
// There are known compatibility issues between CommonJS (CJS) and ECMAScript modules (ESM).
|
|
10
|
+
// In ESM, default exports of CJS modules are wrapped in default properties instead of being exposed directly.
|
|
11
|
+
// https://github.com/microsoft/TypeScript/issues/52086#issuecomment-1385978414
|
|
12
|
+
const Measure = defaultImport(DefaultMeasure);
|
|
13
|
+
export const DashboardItemOverlay = ({ render, type, modifications, onHide, }) => {
|
|
14
|
+
const intl = useIntl();
|
|
15
|
+
const added = modifications.includes("insertedByPlugin");
|
|
16
|
+
const modified = modifications.includes("modifiedByPlugin");
|
|
17
|
+
const theme = useTheme();
|
|
18
|
+
const [size, setSize] = useState("none");
|
|
19
|
+
const [height, setHeight] = useState(0);
|
|
20
|
+
const classes = classNames("gd-fluidlayout-item-changed", {
|
|
21
|
+
[type]: true,
|
|
22
|
+
[size]: true,
|
|
23
|
+
added: added,
|
|
24
|
+
modified: modified,
|
|
25
|
+
});
|
|
26
|
+
const show = render && (added || modified);
|
|
27
|
+
return show ? (React.createElement(Measure, { client: true, onResize: (data) => {
|
|
28
|
+
if (data.client) {
|
|
29
|
+
setSize(data.client.height < 100 ? "small" : "big");
|
|
30
|
+
setHeight(data.client.height);
|
|
31
|
+
}
|
|
32
|
+
} }, ({ measureRef }) => (React.createElement("div", { className: classes, ref: measureRef },
|
|
33
|
+
React.createElement("div", { className: "gd-fluidlayout-item-changed-content" },
|
|
34
|
+
React.createElement("div", { className: "gd-fluidlayout-item-changed-icon", style: height ? { height } : {} },
|
|
35
|
+
React.createElement(PluginIcon, { color: theme?.palette?.complementary?.c7 })),
|
|
36
|
+
React.createElement("div", { className: "gd-fluidlayout-item-changed-info" },
|
|
37
|
+
React.createElement(DashboardItemOverlayInfo, { added: added, modified: modified })),
|
|
38
|
+
React.createElement(Button, { className: "gd-button gd-button-link", value: intl.formatMessage({ id: "layout.widget.hideOverlay" }), onClick: onHide })))))) : null;
|
|
39
|
+
};
|
|
40
|
+
const DashboardItemOverlayInfo = ({ added, modified, }) => {
|
|
41
|
+
if (added) {
|
|
42
|
+
return React.createElement(FormattedMessage, { id: "layout.widget.addedByPlugin" });
|
|
43
|
+
}
|
|
44
|
+
if (modified) {
|
|
45
|
+
return React.createElement(FormattedMessage, { id: "layout.widget.modifiedByPlugin" });
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
};
|
|
49
|
+
const PluginIcon = ({ color }) => {
|
|
50
|
+
return (React.createElement("svg", { width: "29", height: "35", viewBox: "0 0 29 35", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
|
51
|
+
React.createElement("path", { d: "M15.6264 2.50847C14.8954 2.26481 14.1052 2.26481 13.3742 2.50847L13.2559 2.54788C11.124 3.25852 10.1752 5.74192 11.2901 7.69306L11.8345 8.64571C12.6873 10.1381 11.3879 11.9409 9.70247 11.6038L2.30263 10.1238C2.16491 10.0963 2.03641 10.2016 2.03641 10.342V32.3544C2.03641 32.4773 2.13606 32.577 2.25898 32.577H25.7456C25.859 32.577 25.9543 32.4917 25.9668 32.379L26.7587 25.2513C26.7776 25.0818 26.6066 24.955 26.4499 25.0222L23.9499 26.0936C21.5157 27.1368 18.6851 26.2215 17.3226 23.9506C16.3163 22.2735 16.3163 20.1783 17.3226 18.5012C18.6851 16.2303 21.5157 15.315 23.9499 16.3582L26.4499 17.4296C26.6066 17.4968 26.7776 17.37 26.7587 17.2005L25.9937 10.3154C25.9791 10.1838 25.8535 10.0939 25.7242 10.1227L19.3749 11.5336C17.6773 11.9109 16.3383 10.0943 17.2011 8.58438L17.7105 7.69306C18.8254 5.74192 17.8766 3.25852 15.7447 2.54788L15.6264 2.50847ZM12.8111 0.819283C13.9076 0.453794 15.093 0.453794 16.1895 0.819283L16.3077 0.858699C19.5056 1.92465 20.9288 5.64975 19.2564 8.57646L18.7471 9.46779C18.6512 9.63555 18.8 9.8374 18.9886 9.79548L25.338 8.38451C26.5014 8.12598 27.6318 8.93425 27.7634 10.1187L28.5284 17.0039C28.6979 18.5293 27.1592 19.6708 25.7485 19.0662L23.2485 17.9948C21.6327 17.3024 19.7538 17.9099 18.8494 19.4173C18.1815 20.5305 18.1815 21.9213 18.8494 23.0345C19.7538 24.5419 21.6327 25.1495 23.2485 24.457L25.7485 23.3856C27.1592 22.781 28.6979 23.9225 28.5284 25.448L27.7364 32.5756C27.6237 33.59 26.7663 34.3575 25.7456 34.3575H2.25898C1.15269 34.3575 0.255859 33.4607 0.255859 32.3544V10.342C0.255859 9.07798 1.41231 8.12991 2.65183 8.37782L10.0517 9.85778C10.2389 9.89524 10.3833 9.69493 10.2886 9.52911L9.74419 8.57646C8.07178 5.64975 9.49501 1.92465 12.6929 0.858699L12.8111 0.819283Z", fill: color ?? "#687581" })));
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=DashboardItemOverlay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardItemOverlay.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlay.tsx"],"names":[],"mappings":"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"}
|
package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IDashboardLayoutSectionFacade } from "../../../_staging/dashboard/fluidLayout/index.js";
|
|
3
|
+
interface IDashboardLayoutSectionOverlayControllerProps {
|
|
4
|
+
section: IDashboardLayoutSectionFacade<unknown>;
|
|
5
|
+
}
|
|
6
|
+
export declare const DashboardLayoutSectionOverlayController: React.FC<IDashboardLayoutSectionOverlayControllerProps>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=DashboardItemOverlayController.d.ts.map
|
package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardItemOverlayController.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,6BAA6B,EAAE,MAAM,kDAAkD,CAAC;AAIjG,UAAU,6CAA6C;IACnD,OAAO,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC;CACnD;AAED,eAAO,MAAM,uCAAuC,EAAE,KAAK,CAAC,EAAE,CAC1D,6CAA6C,CAuBhD,CAAC"}
|
package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// (C) 2022-2024 GoodData Corporation
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { useDashboardSelector, useDashboardDispatch, selectWidgetsOverlayState, selectSectionModification, uiActions, } from "../../../model/index.js";
|
|
4
|
+
import { getRefsForSection } from "../refs.js";
|
|
5
|
+
import { DashboardItemOverlay } from "./DashboardItemOverlay.js";
|
|
6
|
+
export const DashboardLayoutSectionOverlayController = (props) => {
|
|
7
|
+
const { section } = props;
|
|
8
|
+
const dispatch = useDashboardDispatch();
|
|
9
|
+
const refs = getRefsForSection(section);
|
|
10
|
+
const overlayShow = useDashboardSelector(selectWidgetsOverlayState(refs));
|
|
11
|
+
const sectionModifications = useDashboardSelector(selectSectionModification(refs));
|
|
12
|
+
return (React.createElement(DashboardItemOverlay, { type: "column", onHide: () => dispatch(uiActions.toggleWidgetsOverlay({
|
|
13
|
+
refs: section.items().map((item) => item.ref()),
|
|
14
|
+
visible: false,
|
|
15
|
+
})), render: overlayShow, modifications: sectionModifications }));
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=DashboardItemOverlayController.js.map
|
package/esm/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardItemOverlayController.js","sourceRoot":"","sources":["../../../../src/presentation/flexibleLayout/DashboardItemOverlay/DashboardItemOverlayController.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,SAAS,GACZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAMjE,MAAM,CAAC,MAAM,uCAAuC,GAEhD,CAAC,KAAK,EAAE,EAAE;IACV,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IAExC,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,oBAAoB,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;IACnF,OAAO,CACH,oBAAC,oBAAoB,IACjB,IAAI,EAAC,QAAQ,EACb,MAAM,EAAE,GAAG,EAAE,CACT,QAAQ,CACJ,SAAS,CAAC,oBAAoB,CAAC;YAC3B,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/C,OAAO,EAAE,KAAK;SACjB,CAAC,CACL,EAEL,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,oBAAoB,GACrC,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardLayout.d.ts","sourceRoot":"","sources":["../../../src/presentation/flexibleLayout/DashboardLayout.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,eAAe,UAAW,qBAAqB,KAAG,WAI9D,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// (C) 2020-2024 GoodData Corporation
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { useDashboardComponentsContext } from "../dashboardContexts/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export const DashboardLayout = (props) => {
|
|
8
|
+
const { LayoutComponent } = useDashboardComponentsContext();
|
|
9
|
+
return React.createElement(LayoutComponent, { ...props });
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=DashboardLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardLayout.js","sourceRoot":"","sources":["../../../src/presentation/flexibleLayout/DashboardLayout.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAG9E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAA4B,EAAe,EAAE;IACzE,MAAM,EAAE,eAAe,EAAE,GAAG,6BAA6B,EAAE,CAAC;IAE5D,OAAO,oBAAC,eAAe,OAAK,KAAK,GAAI,CAAC;AAC1C,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ExtendedDashboardWidget } from "../../model/index.js";
|
|
2
|
+
import { IDashboardWidgetProps } from "../widget/index.js";
|
|
3
|
+
import { IDashboardLayoutWidgetRenderer } from "./DefaultDashboardLayoutRenderer/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare const DashboardLayoutWidget: IDashboardLayoutWidgetRenderer<ExtendedDashboardWidget, Pick<IDashboardWidgetProps, "onError" | "onDrill" | "onFiltersChange">>;
|
|
8
|
+
//# sourceMappingURL=DashboardLayoutWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardLayoutWidget.d.ts","sourceRoot":"","sources":["../../../src/presentation/flexibleLayout/DashboardLayoutWidget.tsx"],"names":[],"mappings":"AAaA,OAAO,EACH,uBAAuB,EAc1B,MAAM,sBAAsB,CAAC;AAgB9B,OAAO,EAAmB,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAGH,8BAA8B,EACjC,MAAM,2CAA2C,CAAC;AAgCnD;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,8BAA8B,CAC9D,uBAAuB,EACvB,IAAI,CAAC,qBAAqB,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC,CAsKzE,CAAC"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
// (C) 2020-2024 GoodData Corporation
|
|
2
|
+
import { isInsightWidget, isKpiWidget, isRichTextWidget, isVisualizationSwitcherWidget, } from "@gooddata/sdk-model";
|
|
3
|
+
import { WIDGET_DROPZONE_SIZE_INFO_DEFAULT } from "@gooddata/sdk-ui-ext";
|
|
4
|
+
import React, { useRef } from "react";
|
|
5
|
+
import cx from "classnames";
|
|
6
|
+
import { isCustomWidget, selectEnableWidgetCustomHeight, selectInsightsMap, selectIsInEditMode, selectSettings, uiActions, useDashboardDispatch, useDashboardSelector, selectWidgetsOverlayState, selectWidgetsModification, selectSectionModification, selectIsExport, useWidgetSelection, } from "../../model/index.js";
|
|
7
|
+
import { isAnyPlaceholderWidget, isPlaceholderWidget } from "../../widgets/index.js";
|
|
8
|
+
import { getSizeInfo, calculateWidgetMinHeight } from "../../_staging/layout/sizing.js";
|
|
9
|
+
import { getLayoutCoordinates } from "../../_staging/layout/coordinates.js";
|
|
10
|
+
import { useDashboardComponentsContext } from "../dashboardContexts/index.js";
|
|
11
|
+
import { Hotspot, ResizeOverlay, useDashboardDrag, useResizeItemStatus, useWidgetDragEndHandler, WidthResizerHotspot, } from "../dragAndDrop/index.js";
|
|
12
|
+
import { DashboardWidget } from "../widget/index.js";
|
|
13
|
+
import { DEFAULT_COLUMN_CLIENT_WIDTH, DEFAULT_WIDTH_RESIZER_HEIGHT } from "./constants.js";
|
|
14
|
+
import { getDashboardLayoutItemHeightForRatioAndScreen, } from "./DefaultDashboardLayoutRenderer/index.js";
|
|
15
|
+
import { DashboardItemOverlay } from "./DashboardItemOverlay/DashboardItemOverlay.js";
|
|
16
|
+
import { getRefsForSection, getRefsForItem } from "./refs.js";
|
|
17
|
+
/**
|
|
18
|
+
* Tests in KD require widget index for css selectors.
|
|
19
|
+
* Widget index equals to the widget order in the layout.
|
|
20
|
+
* Also, placeholders are ignored for this.
|
|
21
|
+
*/
|
|
22
|
+
function getWidgetIndex(item) {
|
|
23
|
+
const sectionIndex = item.section().index();
|
|
24
|
+
const isIgnoredForIndexes = (widget) => {
|
|
25
|
+
return !widget || isAnyPlaceholderWidget(widget);
|
|
26
|
+
};
|
|
27
|
+
let itemsInSectionsBefore = 0;
|
|
28
|
+
for (let i = 0; i < sectionIndex; i += 1) {
|
|
29
|
+
itemsInSectionsBefore +=
|
|
30
|
+
item
|
|
31
|
+
.section()
|
|
32
|
+
.layout()
|
|
33
|
+
.section(i)
|
|
34
|
+
?.items()
|
|
35
|
+
.filter((i) => !isIgnoredForIndexes(i.widget())).length ?? 0;
|
|
36
|
+
}
|
|
37
|
+
const ignoredWidgetsBeforeItemCount = item
|
|
38
|
+
.section()
|
|
39
|
+
.items()
|
|
40
|
+
.filter((i) => i.index() < item.index() && isIgnoredForIndexes(i.widget())).length;
|
|
41
|
+
return itemsInSectionsBefore + item.index() - ignoredWidgetsBeforeItemCount;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
export const DashboardLayoutWidget = (props) => {
|
|
47
|
+
const { item, screen, DefaultWidgetRenderer, onDrill, onFiltersChange, onError, getLayoutDimensions } = props;
|
|
48
|
+
const dispatch = useDashboardDispatch();
|
|
49
|
+
const insights = useDashboardSelector(selectInsightsMap);
|
|
50
|
+
const settings = useDashboardSelector(selectSettings);
|
|
51
|
+
const isInEditMode = useDashboardSelector(selectIsInEditMode);
|
|
52
|
+
const isExport = useDashboardSelector(selectIsExport);
|
|
53
|
+
const enableWidgetCustomHeight = useDashboardSelector(selectEnableWidgetCustomHeight);
|
|
54
|
+
const handleDragEnd = useWidgetDragEndHandler();
|
|
55
|
+
// TODO: we should probably do something more meaningful when item has no widget; should that even
|
|
56
|
+
// be allowed? undefined widget will make things explode down the line away so..
|
|
57
|
+
const widget = item.widget();
|
|
58
|
+
const isCustom = isCustomWidget(widget);
|
|
59
|
+
const isDraggableWidgetType = !(isPlaceholderWidget(widget) || isCustom);
|
|
60
|
+
const { isSelected } = useWidgetSelection(widget.ref);
|
|
61
|
+
const isRichText = isRichTextWidget(widget);
|
|
62
|
+
const isRichTextWidgetInEditState = isSelected && isRichText;
|
|
63
|
+
const [{ isDragging }, dragRef] = useDashboardDrag({
|
|
64
|
+
dragItem: () => {
|
|
65
|
+
return createDraggableItem(item, insights, settings);
|
|
66
|
+
},
|
|
67
|
+
canDrag: isInEditMode && isDraggableWidgetType && !isRichTextWidgetInEditState,
|
|
68
|
+
dragStart: (item) => {
|
|
69
|
+
dispatch(uiActions.setDraggingWidgetSource(item));
|
|
70
|
+
},
|
|
71
|
+
dragEnd: handleDragEnd,
|
|
72
|
+
}, [item, insights, isInEditMode, isDraggableWidgetType, isRichTextWidgetInEditState]);
|
|
73
|
+
const { ErrorComponent, LoadingComponent } = useDashboardComponentsContext();
|
|
74
|
+
const currentSize = item.size()[screen];
|
|
75
|
+
const minHeight = calculateWidgetMinHeight(widget, currentSize, insights, settings);
|
|
76
|
+
const height = currentSize.heightAsRatio && !currentSize.gridHeight
|
|
77
|
+
? getDashboardLayoutItemHeightForRatioAndScreen(currentSize, screen)
|
|
78
|
+
: undefined;
|
|
79
|
+
const allowOverflow = !!currentSize.heightAsRatio;
|
|
80
|
+
const className = enableWidgetCustomHeight ? "custom-height" : undefined;
|
|
81
|
+
const index = getWidgetIndex(item);
|
|
82
|
+
const refs = getRefsForItem(item);
|
|
83
|
+
const sectionModifications = useDashboardSelector(selectSectionModification(getRefsForSection(item.section())));
|
|
84
|
+
const itemModifications = useDashboardSelector(selectWidgetsModification(refs));
|
|
85
|
+
const overlayShow = useDashboardSelector(selectWidgetsOverlayState(refs));
|
|
86
|
+
const { isActive, isResizingColumnOrRow, heightLimitReached, widthLimitReached } = useResizeItemStatus(widget.identifier);
|
|
87
|
+
const contentRef = useRef(null);
|
|
88
|
+
function getWidthInPx() {
|
|
89
|
+
return contentRef?.current
|
|
90
|
+
? contentRef.current.getBoundingClientRect().width
|
|
91
|
+
: DEFAULT_COLUMN_CLIENT_WIDTH;
|
|
92
|
+
}
|
|
93
|
+
function getHeightInPx() {
|
|
94
|
+
return contentRef?.current
|
|
95
|
+
? contentRef.current.getBoundingClientRect().height
|
|
96
|
+
: DEFAULT_WIDTH_RESIZER_HEIGHT;
|
|
97
|
+
}
|
|
98
|
+
function getGridColumnWidth() {
|
|
99
|
+
const columnWidthInGC = item.sizeForScreen(screen)?.gridWidth;
|
|
100
|
+
const columnWidthInPx = getWidthInPx();
|
|
101
|
+
return columnWidthInPx / columnWidthInGC;
|
|
102
|
+
}
|
|
103
|
+
const canShowHotspot = isInEditMode && !isDragging;
|
|
104
|
+
return (React.createElement(DefaultWidgetRenderer, { DefaultWidgetRenderer: DefaultWidgetRenderer, item: item, screen: screen, allowOverflow: allowOverflow, height: height, minHeight: minHeight, className: className, contentRef: contentRef, getLayoutDimensions: getLayoutDimensions },
|
|
105
|
+
React.createElement("div", { ref: dragRef, className: cx([
|
|
106
|
+
"dashboard-widget-draggable-wrapper",
|
|
107
|
+
{ "gd-custom-widget-export": isCustom && isExport },
|
|
108
|
+
]) },
|
|
109
|
+
React.createElement(DashboardWidget
|
|
110
|
+
// @ts-expect-error Don't expose index prop on public interface (we need it only for css class for KD tests)
|
|
111
|
+
, {
|
|
112
|
+
// @ts-expect-error Don't expose index prop on public interface (we need it only for css class for KD tests)
|
|
113
|
+
index: index, screen: screen, onDrill: onDrill, onError: onError, onFiltersChange: onFiltersChange, widget: widget, parentLayoutItemSize: item.size(), ErrorComponent: ErrorComponent, LoadingComponent: LoadingComponent })),
|
|
114
|
+
canShowHotspot && !isAnyPlaceholderWidget(widget) ? (React.createElement(React.Fragment, null,
|
|
115
|
+
React.createElement(ResizeOverlay, { isActive: isActive, isResizingColumnOrRow: isResizingColumnOrRow, reachedWidthLimit: widthLimitReached, reachedHeightLimit: heightLimitReached }),
|
|
116
|
+
!isCustomWidget(widget) ? (React.createElement(React.Fragment, null,
|
|
117
|
+
React.createElement(Hotspot, { dropZoneType: "prev", itemIndex: item.index(), sectionIndex: item.section().index(), isLastInSection: false }),
|
|
118
|
+
React.createElement(Hotspot, { dropZoneType: "next", itemIndex: item.index(), sectionIndex: item.section().index(), isLastInSection: item.isLast() }),
|
|
119
|
+
React.createElement(WidthResizerHotspot, { item: item, screen: screen, getGridColumnHeightInPx: getHeightInPx, getGridColumnWidth: getGridColumnWidth, getLayoutDimensions: getLayoutDimensions }))) : null)) : null,
|
|
120
|
+
React.createElement(DashboardItemOverlay, { type: "column", onHide: () => dispatch(uiActions.toggleWidgetsOverlay({
|
|
121
|
+
refs: [item.ref()],
|
|
122
|
+
visible: false,
|
|
123
|
+
})), render: Boolean(isInEditMode && overlayShow) && !sectionModifications.includes("insertedByPlugin"), modifications: itemModifications })));
|
|
124
|
+
};
|
|
125
|
+
function getFilledSize(itemSize, sizeInfo) {
|
|
126
|
+
return {
|
|
127
|
+
gridWidth: itemSize.xl?.gridWidth ||
|
|
128
|
+
sizeInfo?.width.default ||
|
|
129
|
+
WIDGET_DROPZONE_SIZE_INFO_DEFAULT.width.default,
|
|
130
|
+
gridHeight: itemSize.xl?.gridHeight ||
|
|
131
|
+
sizeInfo?.height.default ||
|
|
132
|
+
WIDGET_DROPZONE_SIZE_INFO_DEFAULT.height.default,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
function createDraggableItem(item, insights, settings) {
|
|
136
|
+
const widget = item.widget();
|
|
137
|
+
const { sectionIndex, itemIndex } = getLayoutCoordinates(item);
|
|
138
|
+
const size = item.size();
|
|
139
|
+
const isOnlyItemInSection = item.section().items().count() === 1;
|
|
140
|
+
if (isKpiWidget(widget)) {
|
|
141
|
+
const sizeInfo = getSizeInfo(settings, "kpi", widget.kpi);
|
|
142
|
+
return {
|
|
143
|
+
type: "kpi",
|
|
144
|
+
kpi: widget.kpi,
|
|
145
|
+
title: widget.title,
|
|
146
|
+
sectionIndex,
|
|
147
|
+
itemIndex,
|
|
148
|
+
isOnlyItemInSection,
|
|
149
|
+
size: getFilledSize(size, sizeInfo),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
else if (isInsightWidget(widget)) {
|
|
153
|
+
const insight = insights.get(widget.insight);
|
|
154
|
+
const sizeInfo = getSizeInfo(settings, "kpi", insight);
|
|
155
|
+
return {
|
|
156
|
+
type: "insight",
|
|
157
|
+
insight,
|
|
158
|
+
sectionIndex,
|
|
159
|
+
itemIndex,
|
|
160
|
+
title: widget.title,
|
|
161
|
+
isOnlyItemInSection,
|
|
162
|
+
size: getFilledSize(size, sizeInfo),
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
else if (isRichTextWidget(widget)) {
|
|
166
|
+
const sizeInfo = getSizeInfo(settings, "richText");
|
|
167
|
+
return {
|
|
168
|
+
type: "richText",
|
|
169
|
+
sectionIndex,
|
|
170
|
+
itemIndex,
|
|
171
|
+
title: widget.title,
|
|
172
|
+
isOnlyItemInSection,
|
|
173
|
+
size: getFilledSize(size, sizeInfo),
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
else if (isVisualizationSwitcherWidget(widget)) {
|
|
177
|
+
const sizeInfo = getSizeInfo(settings, "visualizationSwitcher");
|
|
178
|
+
return {
|
|
179
|
+
type: "visualizationSwitcher",
|
|
180
|
+
sectionIndex,
|
|
181
|
+
itemIndex,
|
|
182
|
+
title: widget.title,
|
|
183
|
+
isOnlyItemInSection,
|
|
184
|
+
size: getFilledSize(size, sizeInfo),
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
return {
|
|
189
|
+
type: widget.type,
|
|
190
|
+
widget,
|
|
191
|
+
sectionIndex,
|
|
192
|
+
itemIndex,
|
|
193
|
+
title: "",
|
|
194
|
+
isOnlyItemInSection,
|
|
195
|
+
size: getFilledSize(size),
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=DashboardLayoutWidget.js.map
|