@adaptabletools/adaptable-cjs 23.0.0-canary.8 → 23.0.0
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/index.css +42 -53
- package/package.json +1 -1
- package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.js +2 -3
- package/src/AdaptableState/Common/Enums.d.ts +0 -12
- package/src/AdaptableState/Common/Enums.js +1 -16
- package/src/{Utilities → AdaptableState/Common}/MenuItem.d.ts +4 -4
- package/src/{Utilities → AdaptableState/Common}/MenuItem.js +1 -1
- package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +5 -5
- package/src/AdaptableState/StyledColumns/Common/{BarChartCellText.d.ts → BarStyleProperties.d.ts} +34 -10
- package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +2 -2
- package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +2 -2
- package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +5 -5
- package/src/Api/Implementation/AlertApiImpl.js +1 -1
- package/src/Api/Implementation/ChartingApiImpl.js +5 -5
- package/src/Api/Implementation/ExportApiImpl.js +1 -1
- package/src/Api/Implementation/LayoutHelpers.js +2 -3
- package/src/Api/Implementation/QuickSearchApiImpl.js +4 -4
- package/src/Api/Implementation/ThemeApiImpl.js +2 -2
- package/src/Api/Internal/ActionColumnInternalApi.js +2 -2
- package/src/Api/Internal/AlertInternalApi.js +1 -1
- package/src/Api/Internal/ChartingInternalApi.js +2 -2
- package/src/Api/Internal/ColumnInternalApi.js +2 -2
- package/src/Api/Internal/EventInternalApi.js +3 -4
- package/src/Api/Internal/ExportInternalApi.js +2 -2
- package/src/Api/Internal/FormatColumnInternalApi.js +4 -4
- package/src/Api/Internal/GridInternalApi.js +1 -1
- package/src/Api/Internal/StyledColumnInternalApi.js +6 -6
- package/src/Redux/ActionsReducers/ExportRedux.js +1 -1
- package/src/Redux/ActionsReducers/InternalRedux.js +1 -1
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +2 -3
- package/src/Redux/Store/AdaptableReduxMerger.js +7 -9
- package/src/Redux/Store/AdaptableStore.js +5 -5
- package/src/Strategy/AdaptableModuleBase.d.ts +1 -1
- package/src/Strategy/AdaptableModuleBase.js +1 -1
- package/src/Strategy/AlertModule.d.ts +1 -1
- package/src/Strategy/AlertModule.js +2 -2
- package/src/Strategy/BulkUpdateModule.d.ts +1 -1
- package/src/Strategy/CalculatedColumnModule.d.ts +2 -2
- package/src/Strategy/CellSummaryModule.d.ts +2 -2
- package/src/Strategy/ChartingModule.d.ts +1 -1
- package/src/Strategy/ChartingModule.js +4 -4
- package/src/Strategy/ColumnInfoModule.d.ts +2 -2
- package/src/Strategy/CommentModule.d.ts +1 -1
- package/src/Strategy/CustomSortModule.d.ts +1 -1
- package/src/Strategy/ExportModule.js +2 -2
- package/src/Strategy/FlashingCellModule.d.ts +1 -1
- package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
- package/src/Strategy/GridInfoModule.d.ts +2 -2
- package/src/Strategy/LayoutModule.js +2 -2
- package/src/Strategy/NoteModule.d.ts +1 -1
- package/src/Strategy/PlusMinusModule.d.ts +1 -1
- package/src/Strategy/PlusMinusModule.js +8 -8
- package/src/Strategy/SettingsPanelModule.d.ts +2 -2
- package/src/Strategy/SmartEditModule.d.ts +1 -1
- package/src/Strategy/SystemStatusModule.d.ts +2 -2
- package/src/Strategy/TeamSharingModule.js +4 -4
- package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +2 -3
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +2 -2
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +2 -3
- package/src/Utilities/Extensions/ArrayExtensions.d.ts +32 -0
- package/src/Utilities/Extensions/ArrayExtensions.js +54 -1
- package/src/Utilities/Extensions/NumberExtensions.d.ts +21 -0
- package/src/Utilities/Extensions/NumberExtensions.js +78 -0
- package/src/Utilities/Extensions/ObjectExtensions.d.ts +44 -0
- package/src/Utilities/Extensions/ObjectExtensions.js +277 -0
- package/src/Utilities/Extensions/StringExtensions.d.ts +26 -0
- package/src/Utilities/Extensions/StringExtensions.js +49 -3
- package/src/Utilities/Helpers/AdaptableHelper.js +7 -7
- package/src/Utilities/Helpers/{alertFormHelper.js → AlertHelper.js} +1 -1
- package/src/Utilities/Helpers/DateHelper.js +2 -2
- package/src/Utilities/Helpers/{FormatHelper.js → DisplayFormatHelper.js} +5 -5
- package/src/Utilities/Helpers/Helper.d.ts +0 -6
- package/src/Utilities/Helpers/Helper.js +0 -38
- package/src/Utilities/Helpers/{QuickSearchStyleHelper.js → QuickSearchHelper.js} +2 -3
- package/src/Utilities/Helpers/{ScheduleHelper.d.ts → Scheduling/ScheduleHelper.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduleHelper.js → Scheduling/ScheduleHelper.js} +1 -1
- package/src/Utilities/Helpers/{ScheduleJobManager.d.ts → Scheduling/ScheduleJobManager.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduleJobRunner.d.ts → Scheduling/ScheduleJobRunner.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduledAlertHelper.d.ts → Scheduling/ScheduledAlertHelper.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduledAlertHelper.js → Scheduling/ScheduledAlertHelper.js} +4 -4
- package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.d.ts → Scheduling/ScheduledJobsMiddlewareHelper.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduledJobsMiddlewareHelper.js → Scheduling/ScheduledJobsMiddlewareHelper.js} +1 -1
- package/src/Utilities/Helpers/{ScheduledReportHelper.d.ts → Scheduling/ScheduledReportHelper.d.ts} +1 -1
- package/src/Utilities/Helpers/{ScheduledReportHelper.js → Scheduling/ScheduledReportHelper.js} +1 -1
- package/src/Utilities/Helpers/SettingsPanelHelper.d.ts +5 -0
- package/src/Utilities/{Defaults/DefaultSettingsPanel.js → Helpers/SettingsPanelHelper.js} +16 -1
- package/src/Utilities/Helpers/StyledColumns/BarStylesHelper.d.ts +63 -0
- package/src/Utilities/Helpers/{barChartCellText.js → StyledColumns/BarStylesHelper.js} +48 -47
- package/src/Utilities/Helpers/{StyledColumnGradientHelper.d.ts → StyledColumns/GradientStyleHelper.d.ts} +4 -4
- package/src/Utilities/Helpers/{StyledColumnGradientHelper.js → StyledColumns/GradientStyleHelper.js} +9 -9
- package/src/Utilities/Helpers/{IconStylePresets.d.ts → StyledColumns/IconStyleHelper.d.ts} +6 -1
- package/src/Utilities/Helpers/{IconStylePresets.js → StyledColumns/IconStyleHelper.js} +16 -0
- package/src/Utilities/Helpers/{percentBarPreviewHelper.d.ts → StyledColumns/PercentBarStyleHelper.d.ts} +2 -2
- package/src/Utilities/Helpers/{percentBarPreviewHelper.js → StyledColumns/PercentBarStyleHelper.js} +11 -12
- package/src/Utilities/Helpers/{SparklineOptionsHelper.js → StyledColumns/SparklineStyleHelper.js} +1 -1
- package/src/Utilities/Helpers/StyledColumns/StyledColumnHelper.d.ts +52 -0
- package/src/Utilities/Helpers/StyledColumns/StyledColumnHelper.js +124 -0
- package/src/Utilities/Helpers/TimingHelper.d.ts +34 -0
- package/src/Utilities/{utils/debounce.js → Helpers/TimingHelper.js} +25 -9
- package/src/Utilities/ObjectFactory.js +1 -1
- package/src/Utilities/Services/CalculatedColumnExpressionService.d.ts +2 -0
- package/src/Utilities/Services/CalculatedColumnExpressionService.js +118 -2
- package/src/Utilities/Services/LicenseService/index.js +1 -1
- package/src/Utilities/Services/RowSummaryService.d.ts +1 -1
- package/src/Utilities/Services/RowSummaryService.js +6 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +2 -2
- package/src/View/Alert/Utilities/getAlertType.js +1 -1
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.js +1 -1
- package/src/View/Alert/Utilities/mapAlertDefinition.js +1 -1
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +3 -3
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +3 -3
- package/src/View/Alert/Wizard/AlertRulesWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertScopeWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertWizard.js +1 -1
- package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
- package/src/View/Charting/ChartingWizard/AgChargingWizard/PreviewChartSection.js +2 -2
- package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +2 -2
- package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +2 -2
- package/src/View/Comments/CommentsEditor.js +2 -2
- package/src/View/Comments/CommentsPopup.js +2 -2
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +4 -6
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +1 -1
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +1 -1
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +2 -2
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
- package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +2 -2
- package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +2 -2
- package/src/View/Components/Forms/AdaptableFormControlTextClear.js +2 -1
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +2 -2
- package/src/View/Components/Popups/AdaptablePopupAlert.js +2 -2
- package/src/View/Components/Popups/Utilities.js +5 -5
- package/src/View/Components/RangesComponent.d.ts +3 -3
- package/src/View/Components/RangesComponent.js +5 -9
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +3 -3
- package/src/View/Components/ToolPanel/CustomToolPanelContent.js +2 -3
- package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +5 -2
- package/src/View/Dashboard/CustomDashboardButton.js +2 -3
- package/src/View/Dashboard/Dashboard.js +2 -2
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +2 -2
- package/src/View/DataChangeHistory/DataChangeHistoryTable.js +2 -2
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +2 -2
- package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +13 -13
- package/src/View/FormatColumn/Wizard/FormatColumnPreview.js +4 -4
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +2 -2
- package/src/View/Layout/LayoutCloneButton.js +2 -1
- package/src/View/Layout/LayoutViewPanel.js +2 -2
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +5 -5
- package/src/View/Note/NoteEditor.js +2 -2
- package/src/View/Note/NotePopup.js +2 -2
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +7 -7
- package/src/View/QuickSearch/QuickSearchPopup.js +4 -4
- package/src/View/QuickSearch/useQuickSearchDebounced.js +2 -3
- package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +1 -1
- package/src/View/SpecialColumnSettingsWizardStep.js +2 -2
- package/src/View/StatusBar/StatusBarPopup.js +4 -0
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +2 -3
- package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +1 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +31 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +17 -22
- package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +9 -10
- package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +5 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +14 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +14 -14
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/{BarChartCellTextLayoutEditor.d.ts → BarStyleCellTextLayoutEditor.d.ts} +4 -4
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarStyleCellTextLayoutEditor.js +37 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/{BarChartCellTextPreview.d.ts → BarStyleCellTextPreview.d.ts} +6 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/{BarChartCellTextPreview.js → BarStyleCellTextPreview.js} +9 -9
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.js +7 -9
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +5 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +8 -11
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnGradientPreview.js +5 -8
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +1 -4
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +20 -21
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +8 -11
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.js +4 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.d.ts +0 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview.js +3 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +12 -17
- package/src/View/UIHelper.js +1 -1
- package/src/View/Wizard/CollapsibleWizardCard.js +1 -1
- package/src/View/Wizard/OnePageAdaptableWizard.d.ts +7 -0
- package/src/View/Wizard/OnePageAdaptableWizard.js +2 -2
- package/src/View/Wizard/OnePageWizards.d.ts +8 -0
- package/src/View/Wizard/OnePageWizards.js +5 -3
- package/src/agGrid/AdaptableAgGrid.js +11 -11
- package/src/agGrid/AgGridColumnAdapter.js +30 -29
- package/src/agGrid/AgGridExportAdapter.js +3 -3
- package/src/agGrid/AgGridMenuAdapter.js +129 -4
- package/src/agGrid/cellRenderers/BadgeRenderer.js +2 -2
- package/src/agGrid/cellRenderers/BulletChartRenderer.js +8 -8
- package/src/agGrid/cellRenderers/IconRenderer.js +7 -8
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +9 -9
- package/src/agGrid/cellRenderers/RangeBarRenderer.js +10 -11
- package/src/agGrid/cellRenderers/RatingRenderer.js +6 -6
- package/src/agGrid/editors/AdaptableDateEditor/index.js +3 -3
- package/src/components/ColorPicker/ColorPicker.js +2 -2
- package/src/components/Datepicker/index.js +2 -2
- package/src/components/DragAndDropContext/ModuleManager.js +5 -2
- package/src/components/DragAndDropContext/types.d.ts +7 -0
- package/src/components/FormLayout/index.js +2 -2
- package/src/components/OverlayTrigger/index.js +2 -2
- package/src/env.js +2 -2
- package/src/layout-manager/src/isLayoutEqual.js +4 -5
- package/src/metamodel/adaptable.metamodel.d.ts +41 -8
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/VersionUpgrade23.js +2 -2
- package/src/types.d.ts +3 -3
- package/tsconfig.cjs.tsbuildinfo +1 -1
- package/src/AdaptableState/StyledColumns/Common/BarChartCellText.js +0 -7
- package/src/AdaptableState/StyledColumns/Common/BarChartMarker.d.ts +0 -24
- package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +0 -3
- package/src/Utilities/Helpers/barChartCellText.d.ts +0 -63
- package/src/Utilities/Helpers/iconStyledColumnColumnSupport.d.ts +0 -5
- package/src/Utilities/Helpers/iconStyledColumnColumnSupport.js +0 -18
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.d.ts +0 -3
- package/src/Utilities/Helpers/resolveSettingsPanelNavigation.js +0 -19
- package/src/Utilities/Helpers/styledColumnRowKindSupport.d.ts +0 -25
- package/src/Utilities/Helpers/styledColumnRowKindSupport.js +0 -70
- package/src/Utilities/Services/CalculatedColumnSyntheticChange.d.ts +0 -4
- package/src/Utilities/Services/CalculatedColumnSyntheticChange.js +0 -120
- package/src/Utilities/utils/chunk.d.ts +0 -6
- package/src/Utilities/utils/chunk.js +0 -20
- package/src/Utilities/utils/clamp.d.ts +0 -5
- package/src/Utilities/utils/clamp.js +0 -10
- package/src/Utilities/utils/cloneDeepWith.d.ts +0 -9
- package/src/Utilities/utils/cloneDeepWith.js +0 -70
- package/src/Utilities/utils/debounce.d.ts +0 -20
- package/src/Utilities/utils/flatten.d.ts +0 -5
- package/src/Utilities/utils/flatten.js +0 -10
- package/src/Utilities/utils/flattenDeep.d.ts +0 -5
- package/src/Utilities/utils/flattenDeep.js +0 -10
- package/src/Utilities/utils/get.d.ts +0 -6
- package/src/Utilities/utils/get.js +0 -38
- package/src/Utilities/utils/index.d.ts +0 -22
- package/src/Utilities/utils/index.js +0 -48
- package/src/Utilities/utils/isArray.d.ts +0 -6
- package/src/Utilities/utils/isArray.js +0 -8
- package/src/Utilities/utils/isEqual.d.ts +0 -5
- package/src/Utilities/utils/isEqual.js +0 -127
- package/src/Utilities/utils/isObject.d.ts +0 -6
- package/src/Utilities/utils/isObject.js +0 -12
- package/src/Utilities/utils/isPlainObject.d.ts +0 -6
- package/src/Utilities/utils/isPlainObject.js +0 -20
- package/src/Utilities/utils/kebabCase.d.ts +0 -5
- package/src/Utilities/utils/kebabCase.js +0 -12
- package/src/Utilities/utils/merge.d.ts +0 -11
- package/src/Utilities/utils/merge.js +0 -44
- package/src/Utilities/utils/mergeWith.d.ts +0 -7
- package/src/Utilities/utils/mergeWith.js +0 -50
- package/src/Utilities/utils/orderBy.d.ts +0 -8
- package/src/Utilities/utils/orderBy.js +0 -33
- package/src/Utilities/utils/parseInt.d.ts +0 -6
- package/src/Utilities/utils/parseInt.js +0 -12
- package/src/Utilities/utils/sentenceCase.d.ts +0 -6
- package/src/Utilities/utils/sentenceCase.js +0 -19
- package/src/Utilities/utils/startCase.d.ts +0 -5
- package/src/Utilities/utils/startCase.js +0 -15
- package/src/Utilities/utils/throttle.d.ts +0 -17
- package/src/Utilities/utils/throttle.js +0 -23
- package/src/Utilities/utils/toNumber.d.ts +0 -5
- package/src/Utilities/utils/toNumber.js +0 -42
- package/src/Utilities/utils/uniq.d.ts +0 -7
- package/src/Utilities/utils/uniq.js +0 -12
- package/src/Utilities/utils/uniqBy.d.ts +0 -8
- package/src/Utilities/utils/uniqBy.js +0 -25
- package/src/Utilities/utils/words.d.ts +0 -7
- package/src/Utilities/utils/words.js +0 -13
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.js +0 -40
- package/src/agGrid/buildValueAggregationMenuItem.d.ts +0 -19
- package/src/agGrid/buildValueAggregationMenuItem.js +0 -114
- package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.d.ts +0 -30
- package/src/agGrid/cellRenderers/shouldRenderStyledColumnOnRow.js +0 -58
- package/src/agGrid/createAgGridIcon.d.ts +0 -10
- package/src/agGrid/createAgGridIcon.js +0 -19
- /package/src/{Utilities → AdaptableState/Aggregations}/only.d.ts +0 -0
- /package/src/{Utilities → AdaptableState/Aggregations}/only.js +0 -0
- /package/src/{Utilities → AdaptableState/Aggregations}/weightedAverage.d.ts +0 -0
- /package/src/AdaptableState/StyledColumns/Common/{BarChartMarker.js → BarStyleProperties.js} +0 -0
- /package/src/Utilities/Helpers/{ActionColumnWidthHelper.d.ts → ActionColumnHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{ActionColumnWidthHelper.js → ActionColumnHelper.js} +0 -0
- /package/src/Utilities/Helpers/{alertFormHelper.d.ts → AlertHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{chartingHelper.d.ts → ChartHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{chartingHelper.js → ChartHelper.js} +0 -0
- /package/src/Utilities/Helpers/{FormatHelper.d.ts → DisplayFormatHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{plusMinusTriggerKeys.d.ts → PlusMinusHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{plusMinusTriggerKeys.js → PlusMinusHelper.js} +0 -0
- /package/src/Utilities/Helpers/{QuickSearchStyleHelper.d.ts → QuickSearchHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{ScheduleJobManager.js → Scheduling/ScheduleJobManager.js} +0 -0
- /package/src/Utilities/Helpers/{ScheduleJobRunner.js → Scheduling/ScheduleJobRunner.js} +0 -0
- /package/src/Utilities/Helpers/{SparklineOptionsHelper.d.ts → StyledColumns/SparklineStyleHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{ThemeHelpers.d.ts → ThemeHelper.d.ts} +0 -0
- /package/src/Utilities/Helpers/{ThemeHelpers.js → ThemeHelper.js} +0 -0
|
@@ -4,8 +4,8 @@ exports.FormatColumnFormatWizardSection = exports.getFormatDisplayTypeForScope =
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const React = tslib_1.__importStar(require("react"));
|
|
7
|
-
const
|
|
8
|
-
const
|
|
7
|
+
const ArrayExtensions_1 = require("../../../Utilities/Extensions/ArrayExtensions");
|
|
8
|
+
const NumberExtensions_1 = require("../../../Utilities/Extensions/NumberExtensions");
|
|
9
9
|
const HelpBlock_1 = tslib_1.__importDefault(require("../../../components/HelpBlock"));
|
|
10
10
|
const Input_1 = tslib_1.__importDefault(require("../../../components/Input"));
|
|
11
11
|
const SimpleButton_1 = tslib_1.__importDefault(require("../../../components/SimpleButton"));
|
|
@@ -18,7 +18,7 @@ const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
|
18
18
|
const StringExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/StringExtensions"));
|
|
19
19
|
const Tag_1 = require("../../../components/Tag");
|
|
20
20
|
const AdaptableContext_1 = require("../../AdaptableContext");
|
|
21
|
-
const
|
|
21
|
+
const DisplayFormatHelper_1 = tslib_1.__importDefault(require("../../../Utilities/Helpers/DisplayFormatHelper"));
|
|
22
22
|
const Toggle_1 = require("../../../components/Toggle");
|
|
23
23
|
const GeneralConstants_1 = require("../../../Utilities/Constants/GeneralConstants");
|
|
24
24
|
const Textarea_1 = tslib_1.__importDefault(require("../../../components/Textarea"));
|
|
@@ -193,7 +193,7 @@ const getFormatDisplayTypeForScope = (scope, api) => {
|
|
|
193
193
|
// Check for ColumnIds in scope
|
|
194
194
|
if ('ColumnIds' in scope) {
|
|
195
195
|
const columns = scope.ColumnIds.map((c) => api.columnApi.getColumnWithColumnId(c)).filter(Boolean);
|
|
196
|
-
const columnDataTypes = (0,
|
|
196
|
+
const columnDataTypes = (0, ArrayExtensions_1.uniq)(columns.map((c) => c.dataType));
|
|
197
197
|
// If there's only one data type
|
|
198
198
|
if (columnDataTypes.length === 1) {
|
|
199
199
|
const dataType = columnDataTypes[0];
|
|
@@ -298,7 +298,7 @@ const DATE_FORMAT_PRESET_HEADER_HEIGHT = 40;
|
|
|
298
298
|
const DateFormatPresetsTable = ({ onApplyPattern }) => {
|
|
299
299
|
const rows = React.useMemo(() => DateFormatPresets.map((pattern) => ({
|
|
300
300
|
pattern,
|
|
301
|
-
formattedDate:
|
|
301
|
+
formattedDate: DisplayFormatHelper_1.default.DateFormatter(new Date(), { Pattern: pattern }) ?? '',
|
|
302
302
|
})), []);
|
|
303
303
|
const columns = React.useMemo(() => ({
|
|
304
304
|
pattern: {
|
|
@@ -331,7 +331,7 @@ const renderDateFormat = (data, _onChange, setFormatOption, scopedCustomFormatte
|
|
|
331
331
|
return null;
|
|
332
332
|
}
|
|
333
333
|
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:p-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Format" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Enter a Unicode date pattern (e.g. dd/MM/yyyy), or pick a preset below" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(FormLayout_1.default, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Pattern", children: [(0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "pattern", value: resolved.Options.Pattern ?? '', onChange: (e) => setFormatOption('Pattern', e.currentTarget.value), className: "twa:mr-2" }), (0, jsx_runtime_1.jsx)("span", { children: resolved.Options.Pattern &&
|
|
334
|
-
|
|
334
|
+
DisplayFormatHelper_1.default.DateFormatter(new Date(), resolved.Options, true) })] }) }) })] }), scopedCustomFormatters.length > 0 && ((0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Custom Formats" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Apply a developer-defined formatter to this Column" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(FormLayout_1.default, { children: scopedCustomFormatters.map((formatter) => renderCustomFormatter(data, formatter, setFormatOption)) }) })] })), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Presets" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Apply a common date pattern as a starting point" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:px-0 twa:pt-0 twa:pb-1", children: (0, jsx_runtime_1.jsx)(DateFormatPresetsTable, { onApplyPattern: (pattern) => setFormatOption('Pattern', pattern) }) })] })] }));
|
|
335
335
|
};
|
|
336
336
|
const renderNumberFormat = (data, onChange, setFormatOption, scopedCustomFormatters, api) => {
|
|
337
337
|
const resolved = (0, AdaptableFormatPresets_1.resolveDisplayFormat)(data.DisplayFormat);
|
|
@@ -367,9 +367,9 @@ const renderNumberFormat = (data, onChange, setFormatOption, scopedCustomFormatt
|
|
|
367
367
|
return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", "data-name": 'format-column-display-format', className: "twa:gap-3 twa:p-3", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Presets" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Pick a common numeric preset as a starting point" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", className: "twa:m-2", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:mr-6", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-dollar", className: "twa:my-1", checked: IS_DOLLAR, onChange: () => setPreset('Dollar'), children: "Dollar" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-sterling", className: "twa:my-1", checked: IS_STERLING, onChange: () => setPreset('Sterling'), children: "Sterling" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-euro", className: "twa:my-1", checked: IS_EURO, onChange: () => setPreset('Euro'), children: "Euro" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-yen", className: "twa:my-1", checked: IS_YEN, onChange: () => setPreset('Yen'), children: "Yen" })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:mr-6", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-thousand", className: "twa:my-1", checked: IS_THOUSAND, onChange: () => setPreset('Thousand'), children: "K (Thousand)" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-million", className: "twa:my-1", checked: IS_MILLION, onChange: () => setPreset('Million'), children: "M (Million)" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-billion", className: "twa:my-1", checked: IS_BILLION, onChange: () => setPreset('Billion'), children: "B (Billion)" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-basis-points", className: "twa:my-1", checked: IS_BASIS_POINTS, onChange: () => setPreset('BasisPoints'), children: "bps (Basis Pts)" })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:mr-6", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-integer", className: "twa:my-1", checked: IS_INTEGER, onChange: () => setPreset('Integer'), children: "Integer" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-decimal", className: "twa:my-1", checked: IS_DECIMAL, onChange: () => setPreset('Decimal'), children: "Decimal" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-percentage", className: "twa:my-1", checked: IS_PERCENT, onChange: () => setPreset('Percentage'), children: "Percentage" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-scientific", className: "twa:my-1", checked: IS_SCIENTIFIC, onChange: () => setPreset('Scientific'), children: "Scientific" })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-accounting", className: "twa:my-1", checked: IS_ACCOUNTING, onChange: () => setPreset('Accounting'), children: "Accounting" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-fx-rate", className: "twa:my-1", checked: IS_FX_RATE, onChange: () => setPreset('FXRate'), children: "FX Rate" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "preset-bitcoin", className: "twa:my-1", checked: IS_BITCOIN, onChange: () => setPreset('Bitcoin'), children: "Bitcoin" })] })] }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:pl-0", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Format" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Fine-tune digits, separators, prefix / suffix and rounding behaviour" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:px-0 twa:pt-0 twa:pb-1", children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-row twa:items-start twa:-ml-0.5", children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: NUMBER_FORMAT_DIGIT_FORM_SIZES, columns: [NUMBER_FORMAT_LABEL_COLUMN, { name: 'children' }], className: "twa:mr-6 twa:shrink-0", children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Fraction Digits", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "fraction-digits", type: "number", min: "0", value: typeof resolved.Options.FractionDigits === 'number'
|
|
368
368
|
? resolved.Options.FractionDigits
|
|
369
369
|
: '', onChange: (e) => setFormatOption('FractionDigits', StringExtensions_1.default.IsNumeric(e.currentTarget.value)
|
|
370
|
-
? (0,
|
|
370
|
+
? (0, NumberExtensions_1.clamp)(Number(e.currentTarget.value), 0, 20)
|
|
371
371
|
: undefined) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Integer Digits", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "integer-digits", type: "number", min: "0", value: resolved.Options.IntegerDigits, onChange: (e) => setFormatOption('IntegerDigits', StringExtensions_1.default.IsNumeric(e.currentTarget.value)
|
|
372
|
-
? (0,
|
|
372
|
+
? (0, NumberExtensions_1.clamp)(Number(e.currentTarget.value), 0, 20)
|
|
373
373
|
: undefined) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Fraction Separator", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "fraction-separator", value: resolved.Options.FractionSeparator ?? '', onChange: (e) => setFormatOption('FractionSeparator', e.currentTarget.value) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Integer Separator", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "integer-separator", value: resolved.Options.IntegerSeparator ?? '', onChange: (e) => setFormatOption('IntegerSeparator', e.currentTarget.value) }) })] }), (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { sizes: NUMBER_FORMAT_VALUE_FORM_SIZES, columns: [NUMBER_FORMAT_LABEL_COLUMN, NUMBER_FORMAT_VALUE_CHILDREN_COLUMN], className: "twa:mr-5 twa:shrink-0", children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Multiplier", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "multiplier", type: "number", value: resolved.Options.Multiplier, onChange: (e) => setFormatOption('Multiplier', Number(e.currentTarget.value)) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Prefix", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "prefix", value: resolved.Options.Prefix ?? '', onChange: (e) => setFormatOption('Prefix', e.currentTarget.value) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Suffix", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "suffix", value: resolved.Options.Suffix ?? '', onChange: (e) => setFormatOption('Suffix', e.currentTarget.value) }) }), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Zero Display", children: (0, jsx_runtime_1.jsx)(Input_1.default, { className: NUMBER_FORMAT_INPUT_CLASS, "data-name": "zero-display", value: resolved.Options.ZeroDisplay === undefined ||
|
|
374
374
|
resolved.Options.ZeroDisplay === '0'
|
|
375
375
|
? '0'
|
|
@@ -390,25 +390,25 @@ const renderNumberFormat = (data, onChange, setFormatOption, scopedCustomFormatt
|
|
|
390
390
|
] }), (0, jsx_runtime_1.jsx)(AdaptableObjectRow_1.AdaptableObjectRow, { colItems: [
|
|
391
391
|
{ Content: GeneralConstants_1.DEFAULT_DOUBLE_DISPLAY_VALUE, Size: 1 },
|
|
392
392
|
{
|
|
393
|
-
Content:
|
|
393
|
+
Content: DisplayFormatHelper_1.default.NumberFormatter(GeneralConstants_1.DEFAULT_DOUBLE_DISPLAY_VALUE, resolved.Options),
|
|
394
394
|
Size: 1,
|
|
395
395
|
},
|
|
396
396
|
] }), (0, jsx_runtime_1.jsx)(AdaptableObjectRow_1.AdaptableObjectRow, { colItems: [
|
|
397
397
|
{ Content: '-' + GeneralConstants_1.DEFAULT_DOUBLE_DISPLAY_VALUE, Size: 1 },
|
|
398
398
|
{
|
|
399
|
-
Content:
|
|
399
|
+
Content: DisplayFormatHelper_1.default.NumberFormatter(-GeneralConstants_1.DEFAULT_DOUBLE_DISPLAY_VALUE, resolved.Options),
|
|
400
400
|
Size: 1,
|
|
401
401
|
},
|
|
402
402
|
] }), (0, jsx_runtime_1.jsx)(AdaptableObjectRow_1.AdaptableObjectRow, { colItems: [
|
|
403
403
|
{ Content: '0.123', Size: 1 },
|
|
404
404
|
{
|
|
405
|
-
Content:
|
|
405
|
+
Content: DisplayFormatHelper_1.default.NumberFormatter(0.123, resolved.Options),
|
|
406
406
|
Size: 1,
|
|
407
407
|
},
|
|
408
408
|
] }), (0, jsx_runtime_1.jsx)(AdaptableObjectRow_1.AdaptableObjectRow, { colItems: [
|
|
409
409
|
{ Content: '0', Size: 1 },
|
|
410
410
|
{
|
|
411
|
-
Content:
|
|
411
|
+
Content: DisplayFormatHelper_1.default.NumberFormatter(0, resolved.Options),
|
|
412
412
|
Size: 1,
|
|
413
413
|
},
|
|
414
414
|
] })] })] })] }));
|
|
@@ -426,7 +426,7 @@ const renderStringFormat = (data, _onChange, setFormatOption, scopedCustomFormat
|
|
|
426
426
|
{ Content: '"' + GeneralConstants_1.DEFAULT_STRING_DISPLAY_VALUE + '"', Size: 1 },
|
|
427
427
|
{
|
|
428
428
|
Content: '"' +
|
|
429
|
-
|
|
429
|
+
DisplayFormatHelper_1.default.StringFormatter(GeneralConstants_1.DEFAULT_STRING_DISPLAY_VALUE, resolved.Options) +
|
|
430
430
|
'"',
|
|
431
431
|
Size: 1,
|
|
432
432
|
},
|
|
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const AdaptableFormatPresets_1 = require("../../../AdaptableState/Common/AdaptableFormatPresets");
|
|
7
7
|
const GeneralConstants_1 = require("../../../Utilities/Constants/GeneralConstants");
|
|
8
|
-
const
|
|
8
|
+
const DisplayFormatHelper_1 = tslib_1.__importDefault(require("../../../Utilities/Helpers/DisplayFormatHelper"));
|
|
9
9
|
const StyleHelper_1 = require("../../../Utilities/Helpers/StyleHelper");
|
|
10
10
|
const Card_1 = require("../../../components/Card");
|
|
11
11
|
const Flex_1 = require("../../../components/Flex");
|
|
@@ -52,13 +52,13 @@ const getFormatColumnPreviewText = (formatColumn, api) => {
|
|
|
52
52
|
return String(sample);
|
|
53
53
|
}
|
|
54
54
|
if (resolved.Formatter === 'NumberFormatter' && typeof sample === 'number') {
|
|
55
|
-
return
|
|
55
|
+
return DisplayFormatHelper_1.default.NumberFormatter(sample, resolved.Options) ?? String(sample);
|
|
56
56
|
}
|
|
57
57
|
if (resolved.Formatter === 'DateFormatter') {
|
|
58
|
-
return
|
|
58
|
+
return DisplayFormatHelper_1.default.DateFormatter(new Date(), resolved.Options) ?? String(sample);
|
|
59
59
|
}
|
|
60
60
|
if (resolved.Formatter === 'StringFormatter' && typeof sample === 'string') {
|
|
61
|
-
return
|
|
61
|
+
return DisplayFormatHelper_1.default.StringFormatter(sample, resolved.Options) ?? sample;
|
|
62
62
|
}
|
|
63
63
|
return String(sample);
|
|
64
64
|
};
|
|
@@ -8,7 +8,7 @@ const Radio_1 = tslib_1.__importStar(require("../../../components/Radio"));
|
|
|
8
8
|
const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
9
9
|
const AdaptableInput_1 = tslib_1.__importDefault(require("../../Components/AdaptableInput"));
|
|
10
10
|
const CheckBox_1 = require("../../../components/CheckBox");
|
|
11
|
-
const
|
|
11
|
+
const DisplayFormatHelper_1 = require("../../../Utilities/Helpers/DisplayFormatHelper");
|
|
12
12
|
const DateHelper_1 = require("../../../Utilities/Helpers/DateHelper");
|
|
13
13
|
const Tag_1 = require("../../../components/Tag");
|
|
14
14
|
const SpecialColumnSettingsWizardStep_1 = require("../../SpecialColumnSettingsWizardStep");
|
|
@@ -56,7 +56,7 @@ const FreeTextColumnSettingsWizardSection = (props) => {
|
|
|
56
56
|
let e = event.target;
|
|
57
57
|
let DefaultValue = e.value;
|
|
58
58
|
if (data.FreeTextColumnSettings.DataType === 'date') {
|
|
59
|
-
DefaultValue = (0,
|
|
59
|
+
DefaultValue = (0, DisplayFormatHelper_1.DateFormatter)(DefaultValue, {
|
|
60
60
|
Pattern,
|
|
61
61
|
});
|
|
62
62
|
}
|
|
@@ -8,12 +8,13 @@ const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleB
|
|
|
8
8
|
const AdaptableContext_1 = require("../AdaptableContext");
|
|
9
9
|
const isPivotLayout_1 = require("../../Utilities/isPivotLayout");
|
|
10
10
|
const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
|
|
11
|
+
const objectListActionButtonStyles_1 = require("../Components/AdaptableObjectList/objectListActionButtonStyles");
|
|
11
12
|
const LayoutCloneButton = ({ data, accessLevel }) => {
|
|
12
13
|
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
13
14
|
const isDisabled = accessLevel === GeneralConstants_1.ACCESS_LEVEL_READ_ONLY;
|
|
14
15
|
const handleClick = React.useCallback(() => {
|
|
15
16
|
adaptable.api.layoutApi.showLayoutEditor(data.Name, (0, isPivotLayout_1.isPivotLayout)(data) ? 'pivot' : 'table', 'Clone');
|
|
16
17
|
}, []);
|
|
17
|
-
return ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, { onClick: handleClick, disabled: isDisabled, variant: "text", icon: "clone", tooltip: "Clone" }));
|
|
18
|
+
return ((0, jsx_runtime_1.jsx)(SimpleButton_1.default, { onClick: handleClick, disabled: isDisabled, variant: "text", iconSize: 24, icon: "clone", tooltip: "Clone", className: (0, objectListActionButtonStyles_1.objectListActionButtonClassName)('clone') }));
|
|
18
19
|
};
|
|
19
20
|
exports.LayoutCloneButton = LayoutCloneButton;
|
|
@@ -6,7 +6,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const React = tslib_1.__importStar(require("react"));
|
|
7
7
|
const PopupRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/PopupRedux"));
|
|
8
8
|
const react_redux_1 = require("react-redux");
|
|
9
|
-
const
|
|
9
|
+
const ObjectExtensions_1 = require("../../Utilities/Extensions/ObjectExtensions");
|
|
10
10
|
const join_1 = tslib_1.__importDefault(require("../../components/utils/join"));
|
|
11
11
|
const LayoutRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/LayoutRedux"));
|
|
12
12
|
const GeneralConstants = tslib_1.__importStar(require("../../Utilities/Constants/GeneralConstants"));
|
|
@@ -24,7 +24,7 @@ const NewSelect_1 = require("../../components/NewSelect");
|
|
|
24
24
|
exports.COMPONENT_LAYOUT_POPUP_NAME = 'LayoutEditorStandalonePopup';
|
|
25
25
|
const LayoutViewPanelComponent = (props) => {
|
|
26
26
|
const { Layouts, CurrentLayoutName, accessLevel, viewType, api, onSelectLayout, showMissingLayoutsError, } = props;
|
|
27
|
-
const isErrorLayout = !Layouts.length || (Layouts.length === 1 && (0,
|
|
27
|
+
const isErrorLayout = !Layouts.length || (Layouts.length === 1 && (0, ObjectExtensions_1.isEqual)(Layouts[0], GeneralConstants_1.ERROR_LAYOUT));
|
|
28
28
|
React.useEffect(() => {
|
|
29
29
|
if (isErrorLayout) {
|
|
30
30
|
showMissingLayoutsError();
|
|
@@ -144,7 +144,7 @@ const RowSummaryEditorForm = React.memo(({ rowSummary, onChange, availableScalar
|
|
|
144
144
|
sortUnorderedItems: false,
|
|
145
145
|
}).map((colId) => adaptable.api.columnApi.getColumnWithColumnId(colId));
|
|
146
146
|
}, [rowSummary.ColumnsMap]);
|
|
147
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-3 twa:h-full twa:
|
|
147
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-3 twa:h-full twa:overflow-hidden", children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Position", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { items: [
|
|
148
148
|
{
|
|
149
149
|
label: 'Top',
|
|
150
150
|
value: 'Top',
|
|
@@ -163,7 +163,7 @@ const RowSummaryEditorForm = React.memo(({ rowSummary, onChange, availableScalar
|
|
|
163
163
|
...rowSummary,
|
|
164
164
|
IncludeOnlyFilteredRows,
|
|
165
165
|
});
|
|
166
|
-
}, children: "Include Only Filtered Rows" }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:flex-1 twa:min-h-0 twa:overflow-hidden twa:flex twa:flex-col", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Column Aggregations" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Select columns and choose an aggregation function for each" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:flex-1 twa:min-h-0 twa:overflow-hidden twa:p-1", children: (0, jsx_runtime_1.jsx)(ValueSelector_1.ValueSelector, {
|
|
166
|
+
}, children: "Include Only Filtered Rows" }) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, className: "twa:flex-1 twa:min-h-0 twa:overflow-hidden twa:flex twa:flex-col", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Column Aggregations" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Select columns and choose an aggregation function for each" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:flex-1 twa:min-h-0 twa:overflow-hidden twa:p-1", children: (0, jsx_runtime_1.jsx)(ValueSelector_1.ValueSelector, { showFilterInput: true, className: "twa:max-h-full twa:min-h-0", toggleSelectionOnRowClick: false, filter: Utilities_1.columnFilter, toIdentifier: (column) => column.columnId, toLabel: (option) => option.friendlyName ?? option.columnId, options: columns, optionLayout: "label-beside-checkbox", toListLabel: (column) => {
|
|
167
167
|
const label = column.friendlyName ?? column.columnId;
|
|
168
168
|
const disabled = !(column.columnId in (rowSummary.ColumnsMap ?? {}));
|
|
169
169
|
if (disabled) {
|
|
@@ -244,9 +244,9 @@ const RowSummarySection = (props) => {
|
|
|
244
244
|
}
|
|
245
245
|
}
|
|
246
246
|
};
|
|
247
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, utils_1.cn)((0, CollapsibleWizardCard_1.getWizardAccordionSectionClassName)(hasExpandedCard, expandedFillsSpace), 'twa:p-3'), children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:mb-2 twa:max-w-[520px] twa:shrink-0", children: "Add summary rows at the top or bottom of the grid with aggregated column values" }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:justify-end twa:mb-2 twa:shrink-0", children: (0, jsx_runtime_1.jsx)(ButtonNew_1.ButtonNew, { onClick: handleAddRowSummary, children: "Add Row Summary" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:min-h-0", children: rowSummaries.map((rowSummary, index) => {
|
|
247
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, utils_1.cn)((0, CollapsibleWizardCard_1.getWizardAccordionSectionClassName)(hasExpandedCard, expandedFillsSpace), 'twa:p-3'), children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:mb-2 twa:max-w-[520px] twa:shrink-0", children: "Add summary rows at the top or bottom of the grid with aggregated column values" }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:justify-end twa:mb-2 twa:shrink-0", children: (0, jsx_runtime_1.jsx)(ButtonNew_1.ButtonNew, { onClick: handleAddRowSummary, children: "Add Row Summary" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:min-h-0 twa:flex-1 twa:overflow-y-auto", children: rowSummaries.map((rowSummary, index) => {
|
|
248
248
|
const cardBinding = bindCard(rowSummaryCardId(index), { fillAvailable: true });
|
|
249
|
-
return ((0, jsx_runtime_1.jsx)(CollapsibleWizardCard_1.CollapsibleWizardCard, { ...cardBinding, surface: "panel", "data-name": `row-summary-${index}`, title: `Row Summary ${index + 1}`, help: "Configure position, filters, and column aggregations for this summary row", collapsedHelp: false, compactSummary: (0, jsx_runtime_1.jsx)(RowSummaryPositionTag, { position: rowSummary.Position }), headerVisual: !cardBinding.expanded ? ((0, jsx_runtime_1.jsx)(RowSummaryPositionTag, { position: rowSummary.Position })) : undefined, headerActions: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [cardBinding.expanded ? ((0, jsx_runtime_1.jsx)(SuspendToggleButton_1.SuspendToggleButton, {
|
|
249
|
+
return ((0, jsx_runtime_1.jsx)(CollapsibleWizardCard_1.CollapsibleWizardCard, { ...cardBinding, surface: "panel", "data-name": `row-summary-${index}`, title: `Row Summary ${index + 1}`, help: "Configure position, filters, and column aggregations for this summary row", collapsedHelp: false, compactSummary: (0, jsx_runtime_1.jsx)(RowSummaryPositionTag, { position: rowSummary.Position }), headerVisual: !cardBinding.expanded ? ((0, jsx_runtime_1.jsx)(RowSummaryPositionTag, { position: rowSummary.Position })) : undefined, headerActions: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [cardBinding.expanded ? ((0, jsx_runtime_1.jsx)(SuspendToggleButton_1.SuspendToggleButton, { className: (0, objectListActionButtonStyles_1.objectListActionButtonClassName)('suspend'), onSuspend: () => {
|
|
250
250
|
const newSummaries = [...rowSummaries];
|
|
251
251
|
newSummaries[index] = { ...rowSummary, IsSuspended: true };
|
|
252
252
|
props.onChange({ ...layout, RowSummaries: newSummaries });
|
|
@@ -254,7 +254,7 @@ const RowSummarySection = (props) => {
|
|
|
254
254
|
const newSummaries = [...rowSummaries];
|
|
255
255
|
newSummaries[index] = { ...rowSummary, IsSuspended: false };
|
|
256
256
|
props.onChange({ ...layout, RowSummaries: newSummaries });
|
|
257
|
-
}, suspendableObject: rowSummary })) : null, (0, jsx_runtime_1.jsx)(SimpleButton_1.default, { icon: "delete", variant: "text", tooltip: "Delete row summary", className: (0, objectListActionButtonStyles_1.objectListActionButtonClassName)('delete'), onClick: () => handleDeleteRowSummary(index) })] }), summary: (0, jsx_runtime_1.jsx)(RowSummaryCardSummary, { rowSummary: rowSummary }), className:
|
|
257
|
+
}, suspendableObject: rowSummary })) : null, (0, jsx_runtime_1.jsx)(SimpleButton_1.default, { icon: "delete", variant: "text", tooltip: "Delete row summary", className: (0, objectListActionButtonStyles_1.objectListActionButtonClassName)('delete'), onClick: () => handleDeleteRowSummary(index) })] }), summary: (0, jsx_runtime_1.jsx)(RowSummaryCardSummary, { rowSummary: rowSummary }), className: (0, utils_1.cn)('twa:overflow-hidden twa:flex twa:flex-col', cardBinding.expanded && 'twa:min-h-[500px]'), bodyClassName: " twa:overflow-hidden twa:flex twa:flex-col twa:pt-0!", children: (0, jsx_runtime_1.jsx)(RowSummaryEditorForm, { rowSummary: rowSummary, availableScalarExpressions: availableScalarExpressions, onChange: (nextRowSummary) => {
|
|
258
258
|
const newSummaries = [...rowSummaries];
|
|
259
259
|
newSummaries[index] = nextRowSummary;
|
|
260
260
|
props.onChange({
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.NoteEditor = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
-
const
|
|
6
|
+
const TimingHelper_1 = require("../../Utilities/Helpers/TimingHelper");
|
|
7
7
|
const React = tslib_1.__importStar(require("react"));
|
|
8
8
|
const Textarea_1 = tslib_1.__importDefault(require("../../components/Textarea"));
|
|
9
9
|
const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
|
|
@@ -15,7 +15,7 @@ const NoteEditor = ({ note, onNoteChange, onClose, editMode, isReadonly }) => {
|
|
|
15
15
|
const textAreaRef = React.useRef(null);
|
|
16
16
|
const [liveValue, setLiveValue] = React.useState(note || '');
|
|
17
17
|
const throttledOnChange = React.useMemo(() => {
|
|
18
|
-
const throttled = (0,
|
|
18
|
+
const throttled = (0, TimingHelper_1.throttle)((value) => onNoteChange(value), 300);
|
|
19
19
|
return (value) => {
|
|
20
20
|
setLiveValue(value);
|
|
21
21
|
throttled(value);
|
|
@@ -11,7 +11,7 @@ const AdaptableContext_1 = require("../AdaptableContext");
|
|
|
11
11
|
const AdaptableButton_1 = require("../Components/AdaptableButton");
|
|
12
12
|
const PopupPanel_1 = require("../Components/Popups/AdaptablePopup/PopupPanel");
|
|
13
13
|
const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
|
|
14
|
-
const
|
|
14
|
+
const DisplayFormatHelper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/DisplayFormatHelper"));
|
|
15
15
|
const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
|
|
16
16
|
const tableDOMProps = {
|
|
17
17
|
style: {
|
|
@@ -40,7 +40,7 @@ const NotePopup = (props) => {
|
|
|
40
40
|
const isReadOnlyModule = adaptable.api.entitlementApi.getEntitlementAccessLevelForModule('Note') ===
|
|
41
41
|
GeneralConstants_1.ACCESS_LEVEL_READ_ONLY;
|
|
42
42
|
const formatDate = (date, format) => {
|
|
43
|
-
return
|
|
43
|
+
return DisplayFormatHelper_1.default.DateFormatter(date, { Pattern: format });
|
|
44
44
|
};
|
|
45
45
|
const columnsMap = React.useMemo(() => {
|
|
46
46
|
const columns = {
|
|
@@ -9,10 +9,10 @@ const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
|
9
9
|
const Tag_1 = require("../../../components/Tag");
|
|
10
10
|
const Flex_1 = require("../../../components/Flex");
|
|
11
11
|
const Card_1 = require("../../../components/Card");
|
|
12
|
-
const
|
|
12
|
+
const PlusMinusHelper_1 = require("../../../Utilities/Helpers/PlusMinusHelper");
|
|
13
13
|
const PlusMinusSettingsSummary = () => {
|
|
14
14
|
const { data, api } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
|
|
15
|
-
const { incrementKey, decrementKey } = (0,
|
|
15
|
+
const { incrementKey, decrementKey } = (0, PlusMinusHelper_1.resolvePlusMinusTriggerKeysForNudge)(data, api.optionsApi.getEditOptions().plusMinusOptions ?? {});
|
|
16
16
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(OnePageAdaptableWizard_1.SummaryText, { children: ["Name ", (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: data.Name || 'Not specified' })] }), (0, jsx_runtime_1.jsxs)(OnePageAdaptableWizard_1.SummaryText, { children: ["Nudge Value ", (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: data.NudgeValue ?? 'Not selected' })] }), (0, jsx_runtime_1.jsxs)(OnePageAdaptableWizard_1.SummaryText, { children: ["Keys ", (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: incrementKey }), " / ", (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: decrementKey })] })] }));
|
|
17
17
|
};
|
|
18
18
|
exports.PlusMinusSettingsSummary = PlusMinusSettingsSummary;
|
|
@@ -31,7 +31,7 @@ const isSettingsValid = (data, api, _context) => {
|
|
|
31
31
|
if (data.NudgeValue === 0) {
|
|
32
32
|
return 'Nudge value must not be zero.';
|
|
33
33
|
}
|
|
34
|
-
if ((0,
|
|
34
|
+
if ((0, PlusMinusHelper_1.plusMinusResolvedKeysConflict)(data, api.optionsApi.getEditOptions().plusMinusOptions ?? {})) {
|
|
35
35
|
return 'Increment and decrement keys cannot be the same for this nudge.';
|
|
36
36
|
}
|
|
37
37
|
return true;
|
|
@@ -40,8 +40,8 @@ exports.isSettingsValid = isSettingsValid;
|
|
|
40
40
|
const PlusMinusSettingsWizardSection = (props) => {
|
|
41
41
|
const { data, api } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
|
|
42
42
|
const pmOpts = api.optionsApi.getEditOptions().plusMinusOptions ?? {};
|
|
43
|
-
const incrementBaseline = (0,
|
|
44
|
-
const decrementBaseline = (0,
|
|
43
|
+
const incrementBaseline = (0, PlusMinusHelper_1.plusMinusIncrementKeyFromOptionsOnly)(pmOpts);
|
|
44
|
+
const decrementBaseline = (0, PlusMinusHelper_1.plusMinusDecrementKeyFromOptionsOnly)(pmOpts);
|
|
45
45
|
const [incrementEdit, setIncrementEdit] = React.useState(undefined);
|
|
46
46
|
const [decrementEdit, setDecrementEdit] = React.useState(undefined);
|
|
47
47
|
React.useEffect(() => {
|
|
@@ -60,7 +60,7 @@ const PlusMinusSettingsWizardSection = (props) => {
|
|
|
60
60
|
: decrementBaseline;
|
|
61
61
|
const commitIncrementKey = React.useCallback((raw) => {
|
|
62
62
|
const trimmed = raw.trim();
|
|
63
|
-
const next = trimmed === '' || (0,
|
|
63
|
+
const next = trimmed === '' || (0, PlusMinusHelper_1.plusMinusTriggerSameAsBaseline)(trimmed, incrementBaseline)
|
|
64
64
|
? undefined
|
|
65
65
|
: trimmed;
|
|
66
66
|
const prev = data.IncrementKey?.trim() || undefined;
|
|
@@ -70,7 +70,7 @@ const PlusMinusSettingsWizardSection = (props) => {
|
|
|
70
70
|
}, [data, incrementBaseline, props.onChange]);
|
|
71
71
|
const commitDecrementKey = React.useCallback((raw) => {
|
|
72
72
|
const trimmed = raw.trim();
|
|
73
|
-
const next = trimmed === '' || (0,
|
|
73
|
+
const next = trimmed === '' || (0, PlusMinusHelper_1.plusMinusTriggerSameAsBaseline)(trimmed, decrementBaseline)
|
|
74
74
|
? undefined
|
|
75
75
|
: trimmed;
|
|
76
76
|
const prev = data.DecrementKey?.trim() || undefined;
|
|
@@ -15,7 +15,7 @@ const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Exte
|
|
|
15
15
|
const useQuickSearchDebounced_1 = require("./useQuickSearchDebounced");
|
|
16
16
|
const QuickSearchInput_1 = require("./QuickSearchInput");
|
|
17
17
|
const Card_1 = require("../../components/Card");
|
|
18
|
-
const
|
|
18
|
+
const QuickSearchHelper_1 = require("../../Utilities/Helpers/QuickSearchHelper");
|
|
19
19
|
const QuickSearchStyleEditor = ({ api, helpText, headerText, style, updateStyle }) => ((0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: headerText }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: helpText })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(StyleComponent_1.StyleComponent, { headless: true, hidePreview: true, className: "twa:h-full twa:flex-1 twa:rounded-none", api: api, Style: style, UpdateStyle: updateStyle }) })] }));
|
|
20
20
|
const QuickSearchPopupComponent = (props) => {
|
|
21
21
|
const [searchText, search] = (0, useQuickSearchDebounced_1.useQuickSearchDebounced)(props);
|
|
@@ -34,10 +34,10 @@ function mapStateToProps(state, ownProps) {
|
|
|
34
34
|
const quickSearch = state.QuickSearch;
|
|
35
35
|
return {
|
|
36
36
|
QuickSearchText: quickSearch.QuickSearchText,
|
|
37
|
-
QuickSearchTextMatchStyle: (0,
|
|
38
|
-
QuickSearchCurrentTextMatchStyle: (0,
|
|
37
|
+
QuickSearchTextMatchStyle: (0, QuickSearchHelper_1.resolveQuickSearchTextMatchStyle)(quickSearch),
|
|
38
|
+
QuickSearchCurrentTextMatchStyle: (0, QuickSearchHelper_1.resolveQuickSearchCurrentTextMatchStyle)(quickSearch),
|
|
39
39
|
// Cell match: show only what is in state — defaults are not applied until explicitly set
|
|
40
|
-
QuickSearchCellMatchStyle: (0,
|
|
40
|
+
QuickSearchCellMatchStyle: (0, QuickSearchHelper_1.isQuickSearchStyleUnset)(quickSearch.CellMatchStyle)
|
|
41
41
|
? {}
|
|
42
42
|
: quickSearch.CellMatchStyle,
|
|
43
43
|
};
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useQuickSearchDebounced = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const react_1 = require("react");
|
|
6
|
-
const
|
|
5
|
+
const TimingHelper_1 = require("../../Utilities/Helpers/TimingHelper");
|
|
7
6
|
const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
|
|
8
7
|
const useQuickSearchDebounced = (props) => {
|
|
9
8
|
const [searchText, setSearchText] = (0, react_1.useState)(props.QuickSearchText ?? '');
|
|
10
|
-
const debouncedRunQuickSearch = (0, react_1.useMemo)(() => (0,
|
|
9
|
+
const debouncedRunQuickSearch = (0, react_1.useMemo)(() => (0, TimingHelper_1.debounce)(props.onRunQuickSearch, GeneralConstants_1.QUICK_SEARCH_DEBOUNCE_TIME), [props.onRunQuickSearch]);
|
|
11
10
|
(0, react_1.useEffect)(() => {
|
|
12
11
|
setSearchText(props.QuickSearchText);
|
|
13
12
|
}, [props.QuickSearchText]);
|
|
@@ -13,7 +13,7 @@ const Flex_1 = require("../../../components/Flex");
|
|
|
13
13
|
const Card_1 = require("../../../components/Card");
|
|
14
14
|
const NewSelect_1 = require("../../../components/NewSelect");
|
|
15
15
|
const ObjectFactory_1 = tslib_1.__importDefault(require("../../../Utilities/ObjectFactory"));
|
|
16
|
-
const ScheduleHelper_1 = require("../../../Utilities/Helpers/ScheduleHelper");
|
|
16
|
+
const ScheduleHelper_1 = require("../../../Utilities/Helpers/Scheduling/ScheduleHelper");
|
|
17
17
|
const isScheduleValid = (holder) => {
|
|
18
18
|
if (!holder?.Schedule) {
|
|
19
19
|
return 'Schedule is not specified';
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SpecialColumnSettingsWizardStep = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
-
const
|
|
6
|
+
const ArrayExtensions_1 = require("../Utilities/Extensions/ArrayExtensions");
|
|
7
7
|
const CheckBox_1 = require("../components/CheckBox");
|
|
8
8
|
const FormLayout_1 = tslib_1.__importStar(require("../components/FormLayout"));
|
|
9
9
|
const AdaptableContext_1 = require("./AdaptableContext");
|
|
@@ -39,6 +39,6 @@ const SpecialColumnSettingsWizardStep = (props) => {
|
|
|
39
39
|
{ name: 'first', size: '30%' },
|
|
40
40
|
{ size: '30%', name: 'second' },
|
|
41
41
|
{ size: '30%', name: 'third' },
|
|
42
|
-
], children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "filterable", checked: Filterable, onChange: (Filterable) => onSettingsChange({ Filterable }), disabled: !adaptable.api.optionsApi.getFilterOptions().enableFilterOnSpecialColumns, children: "Filterable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "resizable", checked: Resizable, onChange: (Resizable) => onSettingsChange({ Resizable }), children: "Resizable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "groupable", checked: Groupable, onChange: (Groupable) => onSettingsChange({ Groupable }), children: "Groupable" })] }), (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "sortable", checked: Sortable, onChange: (Sortable) => onSettingsChange({ Sortable }), children: "Sortable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "pivotable", checked: Pivotable, onChange: (Pivotable) => onSettingsChange({ Pivotable }), children: "Pivotable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "aggregatable", checked: Aggregatable, onChange: (Aggregatable) => onSettingsChange({ Aggregatable }), children: "Aggregatable" })] }), (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "suppres-smenu", checked: SuppressMenu, onChange: (SuppressMenu) => onSettingsChange({ SuppressMenu }), children: "Suppress Menu" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "suppres-movable", checked: SuppressMovable, onChange: (SuppressMovable) => onSettingsChange({ SuppressMovable }), children: "Suppress Movable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { disabled: true, checked: props.isEditable, children: "Editable" })] })] }) })] }), Boolean(possibleColumnTypes?.length) && ((0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Column Types" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Assign custom column types to this column" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(FormLayout_1.default, { columns: [{ name: 'first', size: '30%' }, { name: 'second' }], children: (0,
|
|
42
|
+
], children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "filterable", checked: Filterable, onChange: (Filterable) => onSettingsChange({ Filterable }), disabled: !adaptable.api.optionsApi.getFilterOptions().enableFilterOnSpecialColumns, children: "Filterable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "resizable", checked: Resizable, onChange: (Resizable) => onSettingsChange({ Resizable }), children: "Resizable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "groupable", checked: Groupable, onChange: (Groupable) => onSettingsChange({ Groupable }), children: "Groupable" })] }), (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "sortable", checked: Sortable, onChange: (Sortable) => onSettingsChange({ Sortable }), children: "Sortable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "pivotable", checked: Pivotable, onChange: (Pivotable) => onSettingsChange({ Pivotable }), children: "Pivotable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "aggregatable", checked: Aggregatable, onChange: (Aggregatable) => onSettingsChange({ Aggregatable }), children: "Aggregatable" })] }), (0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "suppres-smenu", checked: SuppressMenu, onChange: (SuppressMenu) => onSettingsChange({ SuppressMenu }), children: "Suppress Menu" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "suppres-movable", checked: SuppressMovable, onChange: (SuppressMovable) => onSettingsChange({ SuppressMovable }), children: "Suppress Movable" }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { disabled: true, checked: props.isEditable, children: "Editable" })] })] }) })] }), Boolean(possibleColumnTypes?.length) && ((0, jsx_runtime_1.jsxs)(Card_1.Card, { shadow: false, children: [(0, jsx_runtime_1.jsxs)(Card_1.Card.Title, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-medium", children: "Column Types" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Assign custom column types to this column" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsx)(FormLayout_1.default, { columns: [{ name: 'first', size: '30%' }, { name: 'second' }], children: (0, ArrayExtensions_1.chunk)(possibleColumnTypes ?? [], 2)?.map(([first, second]) => ((0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { children: [first && ((0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": first, onChange: (checked) => handleColumnTypeChange(first, checked), checked: props.settings?.ColumnTypes?.includes?.(first), children: first })), second && ((0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": second, onChange: (checked) => handleColumnTypeChange(second, checked), checked: props.settings?.ColumnTypes?.includes?.(second), children: second }))] }, first))) }) })] }))] }));
|
|
43
43
|
};
|
|
44
44
|
exports.SpecialColumnSettingsWizardStep = SpecialColumnSettingsWizardStep;
|
|
@@ -51,18 +51,22 @@ const StatusBarPopup = (props) => {
|
|
|
51
51
|
moduleShortcutIds.push(item.Id);
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
+
// Roughly balance the two boxes by item count (~10 panels vs ~17 shortcuts)
|
|
55
|
+
// so the wider list gets the extra room and they feel more even.
|
|
54
56
|
return [
|
|
55
57
|
{
|
|
56
58
|
listId: 'UNUSED-PANELS',
|
|
57
59
|
title: 'Status Panels',
|
|
58
60
|
help: 'Fully featured actionable controls',
|
|
59
61
|
items: statusPanelIds,
|
|
62
|
+
flex: 40,
|
|
60
63
|
},
|
|
61
64
|
{
|
|
62
65
|
listId: 'UNUSED-SHORTCUTS',
|
|
63
66
|
title: 'Module Shortcuts',
|
|
64
67
|
help: 'Buttons to open Module Status Panel',
|
|
65
68
|
items: moduleShortcutIds,
|
|
69
|
+
flex: 60,
|
|
66
70
|
},
|
|
67
71
|
];
|
|
68
72
|
}, [availableItems, adaptable]);
|
|
@@ -25,7 +25,6 @@ const BadgePillStyleEditor_1 = require("./BadgePillStyleEditor");
|
|
|
25
25
|
const StyledColumnSliceStyleEditors_1 = require("./StyledColumnSliceStyleEditors");
|
|
26
26
|
const Card_1 = require("../../../components/Card");
|
|
27
27
|
const AdaptableContext_1 = require("../../AdaptableContext");
|
|
28
|
-
const StyledColumnBadgePreview_1 = require("./StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview");
|
|
29
28
|
const CollapsibleWizardCard_1 = require("../../Wizard/CollapsibleWizardCard");
|
|
30
29
|
const NewSelect_1 = require("../../../components/NewSelect");
|
|
31
30
|
const utils_1 = require("../../../lib/utils");
|
|
@@ -239,7 +238,7 @@ const StyledColumnBadgeSection = (props) => {
|
|
|
239
238
|
}
|
|
240
239
|
}
|
|
241
240
|
};
|
|
242
|
-
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, utils_1.cn)((0, CollapsibleWizardCard_1.getWizardAccordionSectionClassName)(hasExpandedCard, expandedFillsSpace), 'twa:p-2'), children: [(0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:justify-end twa:mb-2 twa:shrink-0", children: (0, jsx_runtime_1.jsx)(ButtonNew_1.ButtonNew, { onClick: handleAddBadge, children: "Add Badge" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:min-h-0", children: badges.map((badge, index) => {
|
|
241
|
+
return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, utils_1.cn)((0, CollapsibleWizardCard_1.getWizardAccordionSectionClassName)(hasExpandedCard, expandedFillsSpace), 'twa:p-2'), children: [(0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:justify-end twa:mb-2 twa:shrink-0", children: (0, jsx_runtime_1.jsx)(ButtonNew_1.ButtonNew, { onClick: handleAddBadge, children: "Add Badge" }) }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:min-h-0 twa:overflow-y-auto", children: badges.map((badge, index) => {
|
|
243
242
|
const handleEditBadge = (nextBadge) => {
|
|
244
243
|
const newBadges = [...badges];
|
|
245
244
|
newBadges[index] = nextBadge;
|
|
@@ -296,7 +295,7 @@ const StyledColumnBadgeStyleSection = (props) => {
|
|
|
296
295
|
delete cleaned.Cell;
|
|
297
296
|
props.onChange({ ...data, BadgeStyle: cleaned });
|
|
298
297
|
}
|
|
299
|
-
} }) })] })] })
|
|
298
|
+
} }) })] })] })] }));
|
|
300
299
|
};
|
|
301
300
|
exports.StyledColumnBadgeStyleSection = StyledColumnBadgeStyleSection;
|
|
302
301
|
const renderBadgeStyleSummary = (styledColumn, api) => {
|
|
@@ -16,7 +16,6 @@ const Flex_1 = require("../../../components/Flex");
|
|
|
16
16
|
const StyledColumnSliceStyleEditors_1 = require("./StyledColumnSliceStyleEditors");
|
|
17
17
|
const Card_1 = require("../../../components/Card");
|
|
18
18
|
const ErrorBox_1 = tslib_1.__importDefault(require("../../../components/ErrorBox"));
|
|
19
|
-
const StyledColumnSparklinePreview_1 = require("./StyledColumnWizardStyleSection/Components/StyledColumnSparklinePreview");
|
|
20
19
|
const STYLE_FORM_SIZES = ['200px', '1fr'];
|
|
21
20
|
/** Sentinel for the theme dropdown — persisted options omit `theme` when this is chosen. */
|
|
22
21
|
const SPARKLINE_CUSTOM_COLOURS_THEME = '__custom__';
|
|
@@ -174,7 +173,7 @@ const StyledColumnSparklineSettingsSection = ({ onChange }) => {
|
|
|
174
173
|
delete sparkStyle.Cell;
|
|
175
174
|
}
|
|
176
175
|
onChange({ ...data, SparklineStyle: sparkStyle });
|
|
177
|
-
} }) })] })
|
|
176
|
+
} }) })] })] }));
|
|
178
177
|
};
|
|
179
178
|
exports.StyledColumnSparklineSettingsSection = StyledColumnSparklineSettingsSection;
|
|
180
179
|
const SparklineObjectArrayProperties = ({ options, onChange, }) => {
|
|
@@ -270,12 +270,41 @@ const StyledColumnWizard = (props) => {
|
|
|
270
270
|
render: () => ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:p-2", children: (0, jsx_runtime_1.jsx)(StyledColumnBadgeSection_1.StyledColumnBadgeStyleSection, { onChange: setStyledColumn }) })),
|
|
271
271
|
});
|
|
272
272
|
}
|
|
273
|
+
// Persistent live preview shown at the top of the section content on
|
|
274
|
+
// every step. We render the bare preview (no Card chrome) so it sits
|
|
275
|
+
// flush above the form. Only one of these can apply at a time — the
|
|
276
|
+
// styled column owns exactly one of these style buckets.
|
|
277
|
+
let headerPreview = null;
|
|
278
|
+
if (styledColumn.GradientStyle) {
|
|
279
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnGradientPreview_1.StyledColumnGradientPreview, { data: styledColumn });
|
|
280
|
+
}
|
|
281
|
+
else if (styledColumn.PercentBarStyle) {
|
|
282
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnPercentBarPreview_1.StyledColumnPercentBarPreview, { data: styledColumn });
|
|
283
|
+
}
|
|
284
|
+
else if (styledColumn.BadgeStyle) {
|
|
285
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnBadgePreview_1.StyledColumnBadgePreview, { data: styledColumn });
|
|
286
|
+
}
|
|
287
|
+
else if (styledColumn.RatingStyle) {
|
|
288
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnRatingPreview_1.StyledColumnRatingPreview, { data: styledColumn });
|
|
289
|
+
}
|
|
290
|
+
else if (styledColumn.IconStyle) {
|
|
291
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnIconPreview_1.StyledColumnIconPreview, { data: styledColumn });
|
|
292
|
+
}
|
|
293
|
+
else if (styledColumn.BulletChartStyle) {
|
|
294
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnBulletPreview_1.StyledColumnBulletPreview, { data: styledColumn });
|
|
295
|
+
}
|
|
296
|
+
else if (styledColumn.RangeBarStyle) {
|
|
297
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnRangeBarPreview_1.StyledColumnRangeBarPreview, { data: styledColumn });
|
|
298
|
+
}
|
|
299
|
+
else if (styledColumn.SparklineStyle) {
|
|
300
|
+
headerPreview = (0, jsx_runtime_1.jsx)(StyledColumnSparklinePreview_1.StyledColumnSparklinePreview, { data: styledColumn });
|
|
301
|
+
}
|
|
273
302
|
return ((0, jsx_runtime_1.jsx)(OnePageAdaptableWizard_1.OnePageAdaptableWizard, { defaultCurrentSectionName: defaultCurrentSectionName, moduleInfo: props.moduleInfo,
|
|
274
303
|
// Display the picked type in the header (e.g. "Gradient Column",
|
|
275
304
|
// "Percent Bar Column") so the user always knows which kind of
|
|
276
305
|
// column they're configuring. Falls back to "Styled Column"
|
|
277
306
|
// before a type has been selected.
|
|
278
|
-
moduleName: (0, StyledColumnWizardTypeSection_1.getStyledColumnWizardTitle)(styledColumn), data: styledColumn, onFinish: handleFinish, onHide: props.onCloseWizard, sections: [
|
|
307
|
+
moduleName: (0, StyledColumnWizardTypeSection_1.getStyledColumnWizardTitle)(styledColumn), data: styledColumn, headerPreview: headerPreview, onFinish: handleFinish, onHide: props.onCloseWizard, sections: [
|
|
279
308
|
{
|
|
280
309
|
details: 'Enter a Name and select a Styled Column Type',
|
|
281
310
|
isValid: (data) => {
|
|
@@ -313,7 +342,7 @@ const StyledColumnWizard = (props) => {
|
|
|
313
342
|
title: 'Summary',
|
|
314
343
|
details: 'Review your Styled Column',
|
|
315
344
|
render: () => {
|
|
316
|
-
return ((0, jsx_runtime_1.
|
|
345
|
+
return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:p-2 twa:flex twa:flex-col twa:gap-3", children: (0, jsx_runtime_1.jsx)(OnePageAdaptableWizard_1.OnePageWizardSummary, {}) }));
|
|
317
346
|
},
|
|
318
347
|
},
|
|
319
348
|
] }));
|