@adaptabletools/adaptable-cjs 23.0.0-canary.5 → 23.0.0-canary.7

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.
Files changed (335) hide show
  1. package/icons/sort-asc.svg +1 -1
  2. package/index.css +756 -257
  3. package/package.json +1 -1
  4. package/src/AdaptableOptions/DataSetOptions.d.ts +26 -2
  5. package/src/AdaptableOptions/DefaultAdaptableOptions.js +0 -1
  6. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +42 -10
  7. package/src/AdaptableState/Common/AdaptableFormat.d.ts +7 -0
  8. package/src/AdaptableState/Common/AdaptableMessageType.d.ts +1 -1
  9. package/src/AdaptableState/Common/Enums.d.ts +1 -1
  10. package/src/AdaptableState/Common/Enums.js +1 -1
  11. package/src/AdaptableState/StyledColumnState.d.ts +2 -2
  12. package/src/Api/Internal/AlertInternalApi.js +1 -1
  13. package/src/Api/Internal/DataSetInternalApi.d.ts +3 -0
  14. package/src/Api/Internal/DataSetInternalApi.js +73 -13
  15. package/src/Redux/Store/AdaptableStore.js +6 -4
  16. package/src/Strategy/CalculatedColumnModule.js +1 -0
  17. package/src/Strategy/ColumnFilterModule.js +1 -0
  18. package/src/Strategy/FlashingCellModule.js +6 -2
  19. package/src/Strategy/FormatColumnModule.js +1 -1
  20. package/src/Strategy/FreeTextColumnModule.js +38 -28
  21. package/src/Strategy/Interface/IModule.d.ts +3 -1
  22. package/src/Strategy/LayoutModule.js +15 -66
  23. package/src/Strategy/StyledColumnModule.js +11 -28
  24. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.d.ts +1 -0
  25. package/src/Strategy/Utilities/CustomSort/getCustomSortColumnViewItems.js +1 -0
  26. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.d.ts +2 -0
  27. package/src/Strategy/Utilities/Export/getExportColumnsViewItems.js +17 -1
  28. package/src/Strategy/Utilities/Export/getExportRowsViewItems.d.ts +1 -0
  29. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +5 -1
  30. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.d.ts +11 -0
  31. package/src/Strategy/Utilities/Layout/aggregationSummaryHelpers.js +111 -0
  32. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.d.ts +48 -0
  33. package/src/Strategy/Utilities/Layout/columnsSummaryHelpers.js +177 -0
  34. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.d.ts +1 -0
  35. package/src/Strategy/Utilities/Layout/getLayoutSortViewItems.js +1 -0
  36. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.d.ts +26 -0
  37. package/src/Strategy/Utilities/Layout/rowGroupSummaryHelpers.js +97 -0
  38. package/src/Utilities/Defaults/DefaultSettingsPanel.d.ts +3 -5
  39. package/src/Utilities/Defaults/DefaultSettingsPanel.js +48 -42
  40. package/src/Utilities/Helpers/FormatHelper.js +3 -0
  41. package/src/Utilities/Helpers/ScheduleHelper.js +2 -0
  42. package/src/Utilities/Helpers/StyleHelper.d.ts +18 -0
  43. package/src/Utilities/Helpers/StyleHelper.js +30 -1
  44. package/src/Utilities/Helpers/StyledColumnGradientHelper.js +6 -4
  45. package/src/Utilities/Helpers/resolveSettingsPanelNavigation.d.ts +3 -0
  46. package/src/Utilities/Helpers/resolveSettingsPanelNavigation.js +19 -0
  47. package/src/Utilities/getScopeViewItems.js +2 -0
  48. package/src/Utilities/wizardSelection.d.ts +10 -0
  49. package/src/Utilities/wizardSelection.js +22 -0
  50. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +2 -2
  51. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +2 -2
  52. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
  53. package/src/View/Alert/AlertViewPanel.js +2 -2
  54. package/src/View/Alert/Utilities/getAlertButtonStyle.js +7 -4
  55. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.d.ts +0 -1
  56. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +1 -6
  57. package/src/View/Alert/Wizard/AlertButtonsEditor.js +2 -1
  58. package/src/View/Alert/Wizard/AlertMessageWizardSection.d.ts +1 -1
  59. package/src/View/Alert/Wizard/AlertMessageWizardSection.js +1 -2
  60. package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +1 -1
  61. package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +3 -4
  62. package/src/View/Alert/Wizard/AlertScheduledWizardSection.d.ts +1 -1
  63. package/src/View/Alert/Wizard/AlertScheduledWizardSection.js +1 -2
  64. package/src/View/Alert/Wizard/AlertTypeWizardSection.d.ts +1 -1
  65. package/src/View/Alert/Wizard/AlertTypeWizardSection.js +30 -7
  66. package/src/View/Alert/Wizard/AlertWizard.js +3 -3
  67. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.d.ts +2 -1
  68. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +3 -14
  69. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  70. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -6
  71. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
  72. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +1 -2
  73. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
  74. package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +29 -3
  75. package/src/View/CellSummary/CellSummaryViewPanel.js +4 -4
  76. package/src/View/Charting/ShowChartButton.js +8 -8
  77. package/src/View/ColumnInfo/ColumnInfo.js +21 -1
  78. package/src/View/Components/AdaptableObjectCollection/index.js +2 -3
  79. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +1 -1
  80. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +4 -4
  81. package/src/View/Components/AdaptableObjectRow/index.js +2 -2
  82. package/src/View/Components/Buttons/ButtonBase/index.js +2 -3
  83. package/src/View/Components/Buttons/ButtonNew.d.ts +2 -0
  84. package/src/View/Components/Buttons/ButtonNew.js +1 -1
  85. package/src/View/Components/Buttons/EntityListActionButtons.js +3 -3
  86. package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +2 -2
  87. package/src/View/Components/ColumnFilter/ColumnFilter.js +1 -2
  88. package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +0 -1
  89. package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +3 -1
  90. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +2 -2
  91. package/src/View/Components/ColumnSelector/index.d.ts +12 -0
  92. package/src/View/Components/ColumnSelector/index.js +30 -6
  93. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +2 -2
  94. package/src/View/Components/ModuleValueSelector/index.js +2 -1
  95. package/src/View/Components/NewScopeComponent.js +3 -8
  96. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +5 -4
  97. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +4 -4
  98. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +2 -2
  99. package/src/View/Components/Popups/AdaptablePopup/Navigation.d.ts +3 -2
  100. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +38 -28
  101. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +3 -4
  102. package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -3
  103. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.d.ts +11 -0
  104. package/src/View/Components/Popups/AdaptablePopup/settingsPanelNavigationTypes.js +5 -0
  105. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +3 -1
  106. package/src/View/Components/Popups/AdaptablePopup/useMenuItems.js +27 -28
  107. package/src/View/Components/PredicateEditor/PredicateEditor.js +1 -1
  108. package/src/View/Components/RangesComponent.d.ts +2 -4
  109. package/src/View/Components/RangesComponent.js +95 -66
  110. package/src/View/Components/ReorderDraggable/index.js +2 -3
  111. package/src/View/Components/Selectors/BulkUpdateValueSelector.d.ts +0 -2
  112. package/src/View/Components/Selectors/BulkUpdateValueSelector.js +3 -3
  113. package/src/View/Components/StyleComponent.js +30 -63
  114. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +9 -6
  115. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +3 -13
  116. package/src/View/Components/ToolPanel/ToolPanelPopup.js +5 -80
  117. package/src/View/Components/ToolPanel/ToolPanelPopupSections.d.ts +17 -0
  118. package/src/View/Components/ToolPanel/ToolPanelPopupSections.js +81 -0
  119. package/src/View/Components/ValueSelector/index.d.ts +29 -0
  120. package/src/View/Components/ValueSelector/index.js +112 -29
  121. package/src/View/Components/wizardColumnListStyles.d.ts +10 -0
  122. package/src/View/Components/wizardColumnListStyles.js +13 -0
  123. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.d.ts +2 -1
  124. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +4 -6
  125. package/src/View/CustomSort/Wizard/CustomSortWizard.js +2 -2
  126. package/src/View/Dashboard/DashboardPopup.d.ts +1 -11
  127. package/src/View/Dashboard/DashboardPopup.js +3 -67
  128. package/src/View/Dashboard/DashboardPopupSections.d.ts +20 -0
  129. package/src/View/Dashboard/DashboardPopupSections.js +73 -0
  130. package/src/View/Dashboard/PinnedToolbarsSelector.js +2 -2
  131. package/src/View/DataChangeHistory/DataChangeHistoryPopup.d.ts +1 -6
  132. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +8 -20
  133. package/src/View/DataChangeHistory/DataChangeHistoryTable.d.ts +8 -0
  134. package/src/View/DataChangeHistory/DataChangeHistoryTable.js +99 -0
  135. package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +5 -3
  136. package/src/View/DataChangeHistory/buildActionColumnButton.js +33 -41
  137. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.d.ts +15 -0
  138. package/src/View/DataChangeHistory/dataChangeHistoryHelpers.js +46 -0
  139. package/src/View/DataImport/DataImportWizard/DataImportWizard.js +1 -1
  140. package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +32 -19
  141. package/src/View/DataImport/DataImportWizard/sections/DataPreview.js +1 -1
  142. package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
  143. package/src/View/Export/ExportDestinationPicker.js +4 -5
  144. package/src/View/Export/ExportViewPanel.js +2 -2
  145. package/src/View/Export/Wizard/ReportColumnsWizardSection.d.ts +2 -1
  146. package/src/View/Export/Wizard/ReportColumnsWizardSection.js +2 -7
  147. package/src/View/Export/Wizard/ReportRowsWizardSection.d.ts +2 -1
  148. package/src/View/Export/Wizard/ReportRowsWizardSection.js +2 -5
  149. package/src/View/FlashingCell/FlashingCellStyle.d.ts +4 -2
  150. package/src/View/FlashingCell/FlashingCellStyle.js +5 -3
  151. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.d.ts +2 -1
  152. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +5 -9
  153. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.d.ts +9 -0
  154. package/src/View/FlashingCell/Wizard/FlashingCellScopeSummary.js +10 -0
  155. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.d.ts +1 -1
  156. package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +5 -1
  157. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +0 -5
  158. package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +3 -8
  159. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +1 -2
  160. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
  161. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +101 -44
  162. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +0 -1
  163. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -6
  164. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +55 -15
  165. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +1 -1
  166. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +2 -3
  167. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +5 -9
  168. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +4 -9
  169. package/src/View/FreeTextColumn/Utilities/getFreeTextColumnSettingsTags.js +3 -2
  170. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +1 -2
  171. package/src/View/GridFilter/GridFilterPopupUI/index.js +3 -2
  172. package/src/View/GridFilter/GridFilterViewPanel.js +5 -5
  173. package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +2 -3
  174. package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -2
  175. package/src/View/Layout/LayoutViewPanel.js +2 -2
  176. package/src/View/Layout/Wizard/LayoutWizard.js +24 -28
  177. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +13 -1
  178. package/src/View/Layout/Wizard/sections/AggregationsSection.js +77 -33
  179. package/src/View/Layout/Wizard/sections/ColumnsSection.d.ts +4 -1
  180. package/src/View/Layout/Wizard/sections/ColumnsSection.js +154 -275
  181. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.d.ts +4 -1
  182. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +146 -143
  183. package/src/View/Layout/Wizard/sections/PivotColumnsSection.d.ts +5 -2
  184. package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +22 -10
  185. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.d.ts +4 -1
  186. package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +21 -10
  187. package/src/View/Layout/Wizard/sections/RowGroupingSection.d.ts +5 -2
  188. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +23 -12
  189. package/src/View/Layout/Wizard/sections/RowSelectionSection.js +7 -3
  190. package/src/View/Layout/Wizard/sections/RowSummarySection.js +10 -10
  191. package/src/View/Layout/Wizard/sections/SortSection.d.ts +12 -2
  192. package/src/View/Layout/Wizard/sections/SortSection.js +43 -18
  193. package/src/View/Layout/Wizard/sections/columnLayoutCards.d.ts +20 -0
  194. package/src/View/Layout/Wizard/sections/columnLayoutCards.js +167 -0
  195. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.d.ts +30 -0
  196. package/src/View/Layout/Wizard/sections/columnLayoutHelpers.js +216 -0
  197. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.d.ts +8 -0
  198. package/src/View/Layout/Wizard/sections/layoutWizardAccordionHelpers.js +72 -0
  199. package/src/View/Layout/Wizard/sections/layoutWizardColumns.d.ts +11 -0
  200. package/src/View/Layout/Wizard/sections/layoutWizardColumns.js +57 -0
  201. package/src/View/License/LicenseWatermark.js +1 -1
  202. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.d.ts +1 -1
  203. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +1 -2
  204. package/src/View/Note/NoteEditor.js +2 -2
  205. package/src/View/QuickSearch/QuickSearchPopup.js +2 -3
  206. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +1 -1
  207. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +1 -1
  208. package/src/View/SmartEdit/SmartEditPopup.js +2 -2
  209. package/src/View/SmartEdit/SmartEditViewPanel.js +2 -2
  210. package/src/View/StateManagement/StateManagementPopup.js +1 -1
  211. package/src/View/StateManagement/components/ExportDropdown.d.ts +2 -2
  212. package/src/View/StateManagement/components/ExportDropdown.js +12 -13
  213. package/src/View/StatusBar/StatusBarPanel.js +2 -2
  214. package/src/View/StatusBar/StatusBarPopup.js +33 -5
  215. package/src/View/StatusBar/statusBarPanelHelpers.d.ts +2 -0
  216. package/src/View/StatusBar/statusBarPanelHelpers.js +11 -0
  217. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +2 -0
  218. package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.js +13 -10
  219. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.d.ts +2 -2
  220. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +137 -119
  221. package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.js +7 -13
  222. package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +2 -1
  223. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.d.ts +5 -0
  224. package/src/View/StyledColumn/Wizard/StyledColumnTypeThumbnail.js +54 -0
  225. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +2 -0
  226. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +28 -6
  227. package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +8 -17
  228. package/src/View/StyledColumn/Wizard/StyledColumnWizardGradientSection.js +2 -1
  229. package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +46 -28
  230. package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +97 -42
  231. package/src/View/StyledColumn/Wizard/StyledColumnWizardRatingSection.js +2 -1
  232. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.d.ts +1 -1
  233. package/src/View/StyledColumn/Wizard/StyledColumnWizardScopeSection.js +31 -45
  234. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +10 -5
  235. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +93 -6
  236. package/src/View/UIHelper.d.ts +0 -2
  237. package/src/View/UIHelper.js +8 -24
  238. package/src/View/Wizard/CollapsibleWizardCard.d.ts +68 -0
  239. package/src/View/Wizard/CollapsibleWizardCard.js +90 -0
  240. package/src/View/Wizard/OnePageWizards.js +6 -6
  241. package/src/View/Wizard/SummaryColorTag.d.ts +24 -0
  242. package/src/View/Wizard/SummaryColorTag.js +79 -0
  243. package/src/View/Wizard/WizardTypeSelection.d.ts +34 -0
  244. package/src/View/Wizard/WizardTypeSelection.js +40 -0
  245. package/src/View/Wizard/rowGroupSummaryTags.d.ts +18 -0
  246. package/src/View/Wizard/rowGroupSummaryTags.js +21 -0
  247. package/src/View/Wizard/scopeSummaryTags.d.ts +6 -0
  248. package/src/View/Wizard/scopeSummaryTags.js +38 -0
  249. package/src/agGrid/AdaptableAgGrid.js +1 -1
  250. package/src/agGrid/AgGridAdapter.js +0 -5
  251. package/src/agGrid/AgGridColumnAdapter.js +1 -1
  252. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +4 -7
  253. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +1 -1
  254. package/src/components/Card/index.js +5 -7
  255. package/src/components/CheckBox/index.js +2 -3
  256. package/src/components/CodeBlock/index.js +2 -3
  257. package/src/components/ColorPicker/ColorPicker.d.ts +1 -0
  258. package/src/components/ColorPicker/ColorPicker.js +8 -6
  259. package/src/components/ColorPicker/OptionalColorPicker.d.ts +12 -0
  260. package/src/components/ColorPicker/OptionalColorPicker.js +31 -0
  261. package/src/components/ColorPicker/index.d.ts +1 -0
  262. package/src/components/ColorPicker/index.js +1 -0
  263. package/src/components/Combobox/comboboxUtils.d.ts +1 -0
  264. package/src/components/Combobox/index.js +19 -18
  265. package/src/components/Dashboard/DashboardManager.js +2 -4
  266. package/src/components/Dialog/index.js +4 -4
  267. package/src/components/DragAndDropContext/DragAndDropContext.d.ts +5 -0
  268. package/src/components/DragAndDropContext/DragAndDropContext.js +4 -1
  269. package/src/components/DragAndDropContext/ModuleManager.d.ts +15 -3
  270. package/src/components/DragAndDropContext/ModuleManager.js +43 -4
  271. package/src/components/DragAndDropContext/TabList.d.ts +11 -4
  272. package/src/components/DragAndDropContext/TabList.js +52 -38
  273. package/src/components/DragAndDropContext/UnusedPanel.d.ts +4 -3
  274. package/src/components/DragAndDropContext/UnusedPanel.js +13 -9
  275. package/src/components/DragAndDropContext/dragScope.d.ts +6 -0
  276. package/src/components/DragAndDropContext/dragScope.js +34 -0
  277. package/src/components/DragAndDropContext/types.d.ts +7 -0
  278. package/src/components/DropdownButton/index.d.ts +33 -25
  279. package/src/components/DropdownButton/index.js +24 -158
  280. package/src/components/EmptyContent/index.js +2 -3
  281. package/src/components/ErrorBox/index.js +2 -3
  282. package/src/components/ExpressionEditor/BaseEditorInput.js +3 -3
  283. package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +3 -3
  284. package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +9 -9
  285. package/src/components/FieldWrap/index.js +2 -3
  286. package/src/components/Flex.js +2 -2
  287. package/src/components/FormLayout/index.d.ts +1 -1
  288. package/src/components/HelpBlock/index.js +3 -4
  289. package/src/components/IconSelector/IconSelector.d.ts +8 -0
  290. package/src/components/IconSelector/IconSelector.js +13 -8
  291. package/src/components/IconSelector/index.d.ts +1 -0
  292. package/src/components/IconSelector/index.js +3 -0
  293. package/src/components/Modal/index.js +2 -2
  294. package/src/components/NewSelect/index.js +11 -1
  295. package/src/components/Panel/index.js +7 -7
  296. package/src/components/Radio/index.d.ts +1 -1
  297. package/src/components/Radio/index.js +8 -6
  298. package/src/components/SimpleButton/index.js +7 -7
  299. package/src/components/StylePreview.js +2 -3
  300. package/src/components/Tabs/index.js +4 -4
  301. package/src/components/Tag/Tag.d.ts +16 -0
  302. package/src/components/Tag/Tag.js +16 -5
  303. package/src/components/Tag/columnScopeTagHelpers.d.ts +8 -0
  304. package/src/components/Tag/columnScopeTagHelpers.js +12 -0
  305. package/src/components/Tag/index.d.ts +1 -1
  306. package/src/components/Tag/index.js +3 -1
  307. package/src/components/Textarea/index.js +2 -3
  308. package/src/components/Toggle/Toggle.d.ts +2 -0
  309. package/src/components/Toggle/Toggle.js +14 -7
  310. package/src/components/Toggle/ToggleGroup.js +2 -2
  311. package/src/components/ToggleButton/index.js +4 -5
  312. package/src/components/Tree/TreeDropdown/index.js +3 -5
  313. package/src/components/WarningBox/index.js +2 -3
  314. package/src/components/icons/sort-asc.js +1 -1
  315. package/src/components/ui/button.d.ts +2 -2
  316. package/src/components/ui/combobox.d.ts +3 -1
  317. package/src/components/ui/combobox.js +2 -2
  318. package/src/components/ui/input-group.d.ts +1 -1
  319. package/src/components/ui/select.js +3 -2
  320. package/src/components/ui/textarea.js +1 -1
  321. package/src/env.js +2 -2
  322. package/src/layout-manager/src/index.js +7 -3
  323. package/src/metamodel/adaptable.metamodel.js +1 -1
  324. package/src/types.d.ts +1 -1
  325. package/tsconfig.cjs.tsbuildinfo +1 -1
  326. package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +0 -17
  327. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +0 -295
  328. package/src/components/DropdownButton/DropdownButtonItem.d.ts +0 -12
  329. package/src/components/DropdownButton/DropdownButtonItem.js +0 -2
  330. package/src/components/DropdownButton/renderItem.d.ts +0 -14
  331. package/src/components/DropdownButton/renderItem.js +0 -14
  332. package/src/components/DropdownButton/useExpanded.d.ts +0 -24
  333. package/src/components/DropdownButton/useExpanded.js +0 -59
  334. package/src/components/NewDropdownButton/index.d.ts +0 -27
  335. package/src/components/NewDropdownButton/index.js +0 -28
@@ -3,17 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ColumnsSection = exports.ColumnsSectionSummary = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
- const InfiniteTable_1 = require("../../../../components/InfiniteTable");
7
6
  const React = tslib_1.__importStar(require("react"));
8
7
  const Input_1 = tslib_1.__importDefault(require("../../../../components/Input"));
8
+ const utils_1 = require("../../../../lib/utils");
9
9
  const Card_1 = require("../../../../components/Card");
10
+ const Radio_1 = tslib_1.__importStar(require("../../../../components/Radio"));
11
+ const Tag_1 = require("../../../../components/Tag");
12
+ const CollapsibleWizardCard_1 = require("../../../Wizard/CollapsibleWizardCard");
13
+ const columnLayoutCards_1 = require("./columnLayoutCards");
14
+ const SortSection_1 = require("./SortSection");
10
15
  const AdaptableColumn_1 = require("../../../../AdaptableState/Common/AdaptableColumn");
11
16
  const AdaptableContext_1 = require("../../../AdaptableContext");
12
17
  const OnePageAdaptableWizard_1 = require("../../../Wizard/OnePageAdaptableWizard");
13
18
  const Utilities_1 = require("./Utilities");
14
19
  const icons_1 = require("../../../../components/icons");
15
20
  const CheckBox_1 = require("../../../../components/CheckBox");
16
- const Helper_1 = require("../../../../Utilities/Helpers/Helper");
17
21
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../../Utilities/Extensions/ArrayExtensions"));
18
22
  const ColumnApiImpl_1 = require("../../../../Api/Implementation/ColumnApiImpl");
19
23
  const ReorderDraggable_1 = require("../../../Components/ReorderDraggable");
@@ -22,111 +26,18 @@ const sortColumnIdsByOrder_1 = require("../../../../layout-manager/src/sortColum
22
26
  const GeneralConstants_1 = require("../../../../Utilities/Constants/GeneralConstants");
23
27
  const isPivotLayout_1 = require("../../../../Utilities/isPivotLayout");
24
28
  const Flex_1 = require("../../../../components/Flex");
25
- const clsx_1 = tslib_1.__importDefault(require("clsx"));
26
- const Radio_1 = tslib_1.__importStar(require("../../../../components/Radio"));
27
- const PropertyOrderText = (props) => ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:font-bold twa:text-2", children: props.children }));
28
- const columnTypes = {
29
- default: {
30
- defaultFlex: 1,
31
- },
32
- };
33
- const ColumnsSectionSummary = () => {
29
+ const columnLayoutHelpers_1 = require("./columnLayoutHelpers");
30
+ const layoutWizardAccordionHelpers_1 = require("./layoutWizardAccordionHelpers");
31
+ const layoutWizardColumns_1 = require("./layoutWizardColumns");
32
+ const columnsSummaryHelpers_1 = require("../../../../Strategy/Utilities/Layout/columnsSummaryHelpers");
33
+ const SummaryColorTag_1 = require("../../../Wizard/SummaryColorTag");
34
+ const ColumnsSectionSummary = (props) => {
34
35
  const adaptable = (0, AdaptableContext_1.useAdaptable)();
35
- const { data: layout } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
36
- const rowHeight = 40;
37
- const headerHeight = 40;
38
- const ColumnIds = layout.TableColumns || layout.PivotColumns || [];
39
- const tableHeight = headerHeight + (0, Helper_1.clamp)(rowHeight * ColumnIds.length, 100, 360);
40
- const data = React.useMemo(() => {
41
- return ColumnIds.map((columnId) => {
42
- if (adaptable.api.columnApi.isPivotResultColumn(columnId) ||
43
- adaptable.api.columnApi.isAutoRowGroupColumn(columnId) ||
44
- adaptable.api.columnApi.isSelectionColumn(columnId)) {
45
- return null;
46
- }
47
- const friendlyName = adaptable.api.columnApi.getFriendlyNameForColumnId(columnId, layout);
48
- const header = layout.ColumnHeaders?.[columnId] ?? '';
49
- const columnWidth = layout.ColumnSizing?.[columnId]?.Width;
50
- const columnPinning = layout.ColumnPinning?.[columnId];
51
- let agg = (layout.TableAggregationColumns || []).find((agg) => agg.ColumnId === columnId)?.AggFunc;
52
- agg = typeof agg === 'object' ? agg.type : agg;
53
- const sortIndex = (layout?.ColumnSorts ?? []).findIndex((sort) => sort.ColumnId === columnId);
54
- const sortOrder = sortIndex != -1
55
- ? {
56
- index: sortIndex + 1,
57
- sort: layout.ColumnSorts[sortIndex]?.SortOrder ?? null,
58
- }
59
- : {};
60
- let grouping = layout.RowGroupedColumns?.indexOf?.(columnId);
61
- grouping = grouping != -1 ? grouping + 1 : null;
62
- const filter = layout.ColumnFilters?.find((colFilter) => colFilter.ColumnId === columnId);
63
- return {
64
- columnId,
65
- agg,
66
- friendlyName,
67
- header,
68
- columnWidth,
69
- columnPinning,
70
- sortOrder,
71
- grouping,
72
- filter,
73
- };
74
- }).filter(Boolean);
75
- }, [layout]);
76
- const columns = React.useMemo(() => {
77
- return {
78
- name: { header: 'Name', field: 'friendlyName', minWidth: 100 },
79
- header: { header: 'Header', field: 'header', minWidth: 120 },
80
- colId: { header: 'ID', field: 'columnId' },
81
- agg: { header: 'Agg', field: 'agg', minWidth: 70 },
82
- width: { header: 'Width', field: 'columnWidth', minWidth: 70 },
83
- pin: { header: 'Pin', field: 'columnPinning', minWidth: 80 },
84
- sort: {
85
- header: 'Sort',
86
- field: 'sortOrder',
87
- minWidth: 50,
88
- align: 'center',
89
- render: (params) => {
90
- if (!params.data?.sortOrder?.sort) {
91
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
92
- }
93
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { children: [(0, jsx_runtime_1.jsx)(icons_1.Icon, { name: params.data?.sortOrder?.sort === 'Asc' ? 'arrow-up-long' : 'arrow-down-long' }), ' ', (0, jsx_runtime_1.jsx)(PropertyOrderText, { children: params.data?.sortOrder?.index ?? '' })] }));
94
- },
95
- },
96
- filter: {
97
- header: 'Filter',
98
- field: 'filter',
99
- align: 'center',
100
- minWidth: 50,
101
- render: (params) => {
102
- if (!params.data?.filter) {
103
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
104
- }
105
- return (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { checked: true });
106
- },
107
- },
108
- group: {
109
- header: 'Group',
110
- minWidth: 50,
111
- field: 'columnGroupping',
112
- align: 'center',
113
- render: (params) => {
114
- if (!params.data.grouping) {
115
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
116
- }
117
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { className: "twa:m-0 twa:mr-1", checked: true }), (0, jsx_runtime_1.jsx)(PropertyOrderText, { children: params.data?.grouping })] }));
118
- },
119
- },
120
- };
121
- }, []);
122
- const tableDOMProps = {
123
- style: {
124
- height: '100%',
125
- minWidth: '10rem',
126
- minHeight: tableHeight,
127
- },
128
- };
129
- return ((0, jsx_runtime_1.jsx)(InfiniteTable_1.DataSource, { data: data, primaryKey: "columnId", children: (0, jsx_runtime_1.jsx)(InfiniteTable_1.InfiniteTableGrid, { columnTypes: columnTypes, rowHeight: rowHeight, columnHeaderHeight: headerHeight, domProps: tableDOMProps, columns: columns }) }));
36
+ const { data: contextLayout } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
37
+ const layout = props.layout ?? contextLayout;
38
+ const groups = (0, columnsSummaryHelpers_1.getTableColumnsSummaryGroups)(layout, adaptable.api, columnsSummaryHelpers_1.TABLE_COLUMNS_WIZARD_SUBSECTION_LABELS);
39
+ // Wizard summary lists every column no truncation (settings panel uses truncateColumnSummaryValues).
40
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3", children: groups.map(({ label, values, emptyLabel }) => ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:font-medium twa:mb-1", children: label }), values.length ? (0, SummaryColorTag_1.renderSummaryStringTags)(values) : (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: emptyLabel })] }, label))) }));
130
41
  };
131
42
  exports.ColumnsSectionSummary = ColumnsSectionSummary;
132
43
  const isSelectionColumn = (columnId) => columnId === GeneralConstants_1.AG_GRID_SELECTION_COLUMN;
@@ -147,13 +58,13 @@ const ColumnRow = (props) => {
147
58
  const isSelectionCol = isSelectionColumn(props.column.columnId);
148
59
  const { column } = props;
149
60
  const visible = isColumnVisible({ columnId: column.columnId, layout: props.layout });
150
- return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": props.column.columnId, className: "twa:flex-1", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { className: "ab-Layout-Wizard__ColumnRow__Header twa:my-1", children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": column.columnId, onChange: (checked) => {
61
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": props.column.columnId, className: "twa:flex-1", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { className: "ab-Layout-Wizard__ColumnRow__Header twa:min-h-0", children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": column.columnId, onChange: (checked) => {
151
62
  props.onColumnVisibilityChange(column.columnId, checked);
152
63
  }, disabled: column.hideable === false || isRowGroupColumn || isSelectionCol, onClick: (event) => {
153
64
  event.stopPropagation();
154
65
  }, onFocus: () => {
155
66
  props.onCheckboxFocus?.(column.columnId);
156
- }, checked: visible }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:mx-2", alignItems: "center", "data-name": "column-label", children: initialHeader }), props.column.columnGroup && props.column.columnGroup.groupCount > 1 ? ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "ab-Layout-Wizard__ColumnRow__Title twa:mx-2 twa:p-1 twa:flex twa:items-center", children: ["Column Group: ", props.column.columnGroup.friendlyName] })) : null] }) }));
67
+ }, checked: visible }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { className: "twa:mx-1.5 twa:text-3", alignItems: "center", "data-name": "column-label", children: initialHeader }), props.column.columnGroup && props.column.columnGroup.groupCount > 1 ? ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "ab-Layout-Wizard__ColumnRow__Title twa:mx-1.5 twa:py-0 twa:px-1 twa:flex twa:items-center twa:text-3", children: ["Column Group: ", props.column.columnGroup.friendlyName] })) : null] }) }));
157
68
  };
158
69
  const ColumnsSection = (props) => {
159
70
  const adaptable = (0, AdaptableContext_1.useAdaptable)();
@@ -307,15 +218,6 @@ const ColumnsSection = (props) => {
307
218
  ColumnVisibility,
308
219
  });
309
220
  };
310
- const handlePinChange = (columnId, pinning) => {
311
- onChange({
312
- ...layout,
313
- ColumnPinning: {
314
- ...layout.ColumnPinning,
315
- [columnId]: pinning,
316
- },
317
- });
318
- };
319
221
  const handleColumnNameChange = (columnId, headerName) => {
320
222
  onChange({
321
223
  ...layout,
@@ -325,47 +227,19 @@ const ColumnsSection = (props) => {
325
227
  },
326
228
  });
327
229
  };
328
- const handleColumnWidthChange = (columnId, width) => {
329
- const ColumnSizing = { ...layout.ColumnSizing };
330
- const colSizingForCol = { ...ColumnSizing[columnId] };
331
- delete colSizingForCol.Flex;
332
- colSizingForCol.Width = width;
333
- ColumnSizing[columnId] = colSizingForCol;
334
- onChange({
335
- ...layout,
336
- ColumnSizing,
337
- });
230
+ const resolveDefaultWidth = React.useCallback((columnId) => adaptable.getDefaultColumnWidthForCol(columnId), [adaptable]);
231
+ const handlePinChange = (columnId, pinning) => {
232
+ onChange((0, columnLayoutHelpers_1.applyColumnPinChange)(layout, columnId, pinning));
338
233
  };
339
- const handleColumnFlexChange = (columnId, flex) => {
340
- const ColumnSizing = { ...layout.ColumnSizing };
341
- const colSizingForCol = { ...ColumnSizing[columnId] };
342
- delete colSizingForCol.Width;
343
- colSizingForCol.Flex = flex;
344
- ColumnSizing[columnId] = colSizingForCol;
345
- onChange({
346
- ...layout,
347
- ColumnSizing,
348
- });
234
+ const handleColumnSizingChange = (columnId, field, value) => {
235
+ onChange((0, columnLayoutHelpers_1.applyColumnSizingFieldChange)(layout, columnId, field, value, resolveDefaultWidth));
349
236
  };
350
- const handleColumnMinWidthChange = (columnId, minWidth) => {
351
- const ColumnSizing = { ...layout.ColumnSizing };
352
- const colSizingForCol = { ...ColumnSizing[columnId] };
353
- colSizingForCol.MinWidth = minWidth;
354
- ColumnSizing[columnId] = colSizingForCol;
355
- onChange({
356
- ...layout,
357
- ColumnSizing,
358
- });
237
+ const handleSortChange = (columnId, sortOrder) => {
238
+ onChange((0, columnLayoutHelpers_1.applyColumnSortChange)(layout, columnId, sortOrder));
359
239
  };
360
- const handleColumnMaxWidthChange = (columnId, maxWidth) => {
361
- const ColumnSizing = { ...layout.ColumnSizing };
362
- const colSizingForCol = { ...ColumnSizing[columnId] };
363
- colSizingForCol.MaxWidth = maxWidth;
364
- ColumnSizing[columnId] = colSizingForCol;
365
- onChange({
366
- ...layout,
367
- ColumnSizing,
368
- });
240
+ const parseNumberInput = (value) => {
241
+ const parsed = parseFloat(value);
242
+ return typeof parsed === 'number' && !isNaN(parsed) ? parsed : undefined;
369
243
  };
370
244
  const visibleIds = layout.TableColumns.filter((colId) => {
371
245
  return (layout.ColumnVisibility?.[colId] !== false &&
@@ -378,139 +252,144 @@ const ColumnsSection = (props) => {
378
252
  .map((col) => col.columnId)
379
253
  : currentOrder.map((col) => col.columnId);
380
254
  const visibleIdsCurrentlyDisplayed = visibleIds.filter((colId) => currentlyDisplayedColumnIds.includes(colId));
381
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:h-full", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", alignItems: "center", className: "twa:p-2 twa:gap-3 twa:border-b twa:mb-2 twa:border-b-foreground/20", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-4 twa:font-medium twa:shrink-0", children: "Columns" }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "column", className: "twa:flex-1 twa:min-w-0 twa:text-xs twa:opacity-70 twa:font-normal twa:gap-0.5", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { children: "Drag to reorder and use checkboxes to show or hide columns; click a column to edit in right side panel" }) })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex-1 twa:min-h-0 twa:p-2 twa:gap-2 twa:overflow-hidden twa:grid twa:grid-cols-2", children: [(0, jsx_runtime_1.jsx)(Card_1.Card, { shadow: false, className: "twa:h-full twa:overflow-hidden twa:flex twa:flex-col", children: (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)(Flex_1.Box, { className: "twa:gap-2 twa:focus:outline-none twa:flex-1 twa:max-h-full twa:overflow-hidden twa:h-full", "data-name": "columns-container", tabIndex: -1, onKeyDown: (event) => {
382
- const scrollIntoView = (columnId) => {
383
- const el = event.currentTarget.querySelector(`[data-id="${columnId}"]`);
384
- el?.scrollIntoView({ block: 'nearest' });
385
- const input = el?.querySelector('input[type="checkbox"]');
386
- input?.focus();
387
- };
388
- if (event.key === 'ArrowDown') {
389
- event.preventDefault();
390
- event.stopPropagation();
391
- const index = currentlyDisplayedColumnIds.indexOf(selectedColumnId);
392
- if (index === -1) {
393
- return;
394
- }
395
- const nextColumnId = currentlyDisplayedColumnIds[index + 1];
396
- const nextColumn = colIdToCol[nextColumnId];
397
- if (nextColumn) {
398
- setSelectedColumnId(nextColumn.columnId);
399
- scrollIntoView(nextColumn.columnId);
255
+ const layoutSupportedFeatures = adaptable.api.layoutApi.internalApi.getLayoutSupportedFeatures();
256
+ const initialExpandedCardId = (0, layoutWizardAccordionHelpers_1.getLayoutWizardInitialExpandedCardId)(props.layoutWizardMode, 'order', (0, layoutWizardAccordionHelpers_1.isColumnsSectionConfigured)(layout));
257
+ const { bindCard, hasExpandedCard, expandedFillsSpace } = (0, CollapsibleWizardCard_1.useWizardCardAccordion)(initialExpandedCardId);
258
+ const orderSummaryColumnIds = layout.TableColumns ?? [];
259
+ const orderSummary = orderSummaryColumnIds.length ? ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexWrap: "wrap", className: "twa:gap-1", children: orderSummaryColumnIds.map((columnId) => ((0, jsx_runtime_1.jsx)(Tag_1.ColumnTag, { children: adaptable.api.columnApi.getFriendlyNameForColumnId(columnId, layout) }, columnId))) })) : ((0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: "No columns" }));
260
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, CollapsibleWizardCard_1.getWizardAccordionSectionClassName)(hasExpandedCard, expandedFillsSpace), children: [(0, jsx_runtime_1.jsx)(CollapsibleWizardCard_1.CollapsibleWizardCard, { ...bindCard('order', { fillAvailable: true }), surface: "panel", "data-name": "column-order", title: "Visibility and Order", help: "Drag to reorder, use checkboxes to show or hide columns; click a column to inspect", collapsedHelp: "", compactSummary: (0, CollapsibleWizardCard_1.renderCompactColumnTags)(orderSummaryColumnIds, (columnId) => adaptable.api.columnApi.getFriendlyNameForColumnId(columnId, layout), { emptyLabel: 'No columns' }), summary: orderSummary, className: "twa:overflow-hidden twa:flex twa:flex-col", bodyClassName: "twa:flex twa:flex-col twa:p-1 twa:overflow-y-hidden", children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex-1 twa:min-h-0 twa:gap-2 twa:grid twa:grid-cols-2", children: [(0, jsx_runtime_1.jsx)(Card_1.Card, { className: "twa:h-full twa:min-h-0 twa:flex twa:flex-col", children: (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:flex-1 twa:min-h-0 twa:px-1 twa:pt-1 twa:overflow-y-hidden", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:gap-2 twa:focus:outline-none twa:flex-1 twa:max-h-full twa:h-full", "data-name": "columns-container", tabIndex: -1, onKeyDown: (event) => {
261
+ const scrollIntoView = (columnId) => {
262
+ const el = event.currentTarget.querySelector(`[data-id="${columnId}"]`);
263
+ el?.scrollIntoView({ block: 'nearest' });
264
+ const input = el?.querySelector('input[type="checkbox"]');
265
+ input?.focus();
266
+ };
267
+ if (event.key === 'ArrowDown') {
268
+ event.preventDefault();
269
+ event.stopPropagation();
270
+ const index = currentlyDisplayedColumnIds.indexOf(selectedColumnId);
271
+ if (index === -1) {
272
+ return;
273
+ }
274
+ const nextColumnId = currentlyDisplayedColumnIds[index + 1];
275
+ const nextColumn = colIdToCol[nextColumnId];
276
+ if (nextColumn) {
277
+ setSelectedColumnId(nextColumn.columnId);
278
+ scrollIntoView(nextColumn.columnId);
279
+ }
400
280
  }
401
- }
402
- if (event.key === 'ArrowUp') {
403
- event.preventDefault();
404
- event.stopPropagation();
405
- const index = currentlyDisplayedColumnIds.indexOf(selectedColumnId);
406
- if (index === -1) {
407
- return;
281
+ if (event.key === 'ArrowUp') {
282
+ event.preventDefault();
283
+ event.stopPropagation();
284
+ const index = currentlyDisplayedColumnIds.indexOf(selectedColumnId);
285
+ if (index === -1) {
286
+ return;
287
+ }
288
+ const previousColumnId = currentlyDisplayedColumnIds[index - 1];
289
+ const previousColumn = colIdToCol[previousColumnId];
290
+ if (previousColumn) {
291
+ setSelectedColumnId(previousColumn.columnId);
292
+ scrollIntoView(previousColumn.columnId);
293
+ }
408
294
  }
409
- const previousColumnId = currentlyDisplayedColumnIds[index - 1];
410
- const previousColumn = colIdToCol[previousColumnId];
411
- if (previousColumn) {
412
- setSelectedColumnId(previousColumn.columnId);
413
- scrollIntoView(previousColumn.columnId);
295
+ if (event.key === ' ') {
296
+ const target = event.target;
297
+ if (target.tagName === 'INPUT' &&
298
+ target.type === 'checkbox') {
299
+ return;
300
+ }
301
+ event.preventDefault();
302
+ event.stopPropagation();
303
+ const selectedColumn = colIdToCol[selectedColumnId];
304
+ if (!selectedColumn) {
305
+ return;
306
+ }
307
+ const visible = isColumnVisible({ columnId: selectedColumnId, layout });
308
+ handleColumnVisibilityChange(selectedColumnId, !visible);
414
309
  }
415
- }
416
- if (event.key === ' ') {
417
- const target = event.target;
418
- if (target.tagName === 'INPUT' &&
419
- target.type === 'checkbox') {
420
- return;
421
- }
422
- event.preventDefault();
423
- event.stopPropagation();
424
- const selectedColumn = colIdToCol[selectedColumnId];
425
- if (!selectedColumn) {
426
- return;
427
- }
428
- const visible = isColumnVisible({ columnId: selectedColumnId, layout });
429
- handleColumnVisibilityChange(selectedColumnId, !visible);
430
- }
431
- }, children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-2 twa:h-full twa:overflow-hidden twa:p-1", children: [(0, jsx_runtime_1.jsx)(AdaptableFormControlTextClear_1.AdaptableFormControlTextClear, { value: searchInputValue, OnTextChange: setSearchInputValue, placeholder: "Search Columns...", className: "twa:w-full twa:p-1" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: (0, clsx_1.default)('twa:font-bold', 'twa:border-b twa:border-primarydark/30 twa:rounded-standard'), children: (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { checked: currentlyDisplayedColumnIds.length
432
- ? currentlyDisplayedColumnIds.length === visibleIdsCurrentlyDisplayed.length
433
- ? true
434
- : visibleIdsCurrentlyDisplayed.length
435
- ? null
436
- : false
437
- : false, onChange: (checked) => {
438
- handleColumnVisibilityChange(currentlyDisplayedColumnIds, checked);
439
- }, children: "Select All" }) }), (0, jsx_runtime_1.jsx)(ReorderDraggable_1.ReorderDraggable, { className: "twa:overflow-y-auto", toIdentifier: (option) => `${option.columnId}`, isOptionDraggable: (option) => {
440
- return option.moveable;
441
- }, optionClassName: (option) => {
442
- const baseCls = 'ab-Layout-Wizard__ColumnRow twa:cursor-pointer twa:rounded-standard';
443
- if (selectedColumnId !== option.columnId) {
444
- return baseCls;
445
- }
446
- return (0, clsx_1.default)(baseCls, 'twa:after:border-accent twa:relative twa:after:border-2 twa:after:rounded-standard twa:after:pointer-events-none twa:after:inset-0 twa:after:absolute twa:after:bg-accent/15');
447
- }, order: currentOrder, onOptionClick: (option, event) => {
448
- if (event.ctrlKey || option.columnId === selectedColumnId) {
449
- setSelectedColumnId(null);
450
- }
451
- else {
452
- setSelectedColumnId(option.columnId);
453
- const row = event.target.closest?.(`[data-id="${option.columnId}"]`);
454
- const input = row?.querySelector('input[type="checkbox"]');
455
- input?.focus();
456
- }
457
- }, renderOption: (option) => {
458
- return ((0, jsx_runtime_1.jsx)(ColumnRow, { onColumnNameChange: handleColumnNameChange, onColumnWidthChange: handleColumnWidthChange, onColumnFlexChange: handleColumnFlexChange, onColumnMinWidthChange: handleColumnMinWidthChange, onColumnMaxWidthChange: handleColumnMaxWidthChange, onColumnVisibilityChange: handleColumnVisibilityChange, onPinChange: handlePinChange, onCheckboxFocus: setSelectedColumnId, layout: layout, column: option }));
459
- }, onChange: handleColumnsChange })] }) }) }) }), currentOrderIds.length ? ((0, jsx_runtime_1.jsx)(ColumnPropertiesEditor, { column: selectedColumnId && currentOrderIds.includes(selectedColumnId)
460
- ? colIdToCol[selectedColumnId] ?? null
461
- : null, layout: layout, onPinChange: handlePinChange, onColumnNameChange: handleColumnNameChange, onColumnWidthChange: handleColumnWidthChange, onColumnFlexChange: handleColumnFlexChange, onColumnMinWidthChange: handleColumnMinWidthChange, onColumnMaxWidthChange: handleColumnMaxWidthChange, onColumnVisibilityChange: handleColumnVisibilityChange })) : null] })] }));
310
+ }, children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-1.5 twa:h-full", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: (0, utils_1.cn)(layoutWizardColumns_1.LAYOUT_WIZARD_COLUMN_LIST_HEADER_CLASS, 'twa:font-bold twa:shrink-0', 'twa:border-b twa:border-primarydark/30 twa:pb-1'), children: [(0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { className: "twa:shrink-0", checked: currentlyDisplayedColumnIds.length
311
+ ? currentlyDisplayedColumnIds.length ===
312
+ visibleIdsCurrentlyDisplayed.length
313
+ ? true
314
+ : visibleIdsCurrentlyDisplayed.length
315
+ ? null
316
+ : false
317
+ : false, onChange: (checked) => {
318
+ handleColumnVisibilityChange(currentlyDisplayedColumnIds, checked);
319
+ }, children: "Select All" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:flex-1 twa:min-w-0" }), (0, jsx_runtime_1.jsx)(AdaptableFormControlTextClear_1.AdaptableFormControlTextClear, { value: searchInputValue, OnTextChange: setSearchInputValue, placeholder: "Search Columns...", className: layoutWizardColumns_1.LAYOUT_WIZARD_COLUMN_LIST_SEARCH_CLASS })] }), (0, jsx_runtime_1.jsx)(ReorderDraggable_1.ReorderDraggable, { className: "twa:flex-1 twa:min-h-0 twa:overflow-y-auto", toIdentifier: (option) => `${option.columnId}`, isOptionDraggable: (option) => {
320
+ return option.moveable;
321
+ }, optionClassName: (option) => {
322
+ const baseCls = 'ab-Layout-Wizard__ColumnRow twa:cursor-pointer twa:rounded-standard';
323
+ if (selectedColumnId !== option.columnId) {
324
+ return baseCls;
325
+ }
326
+ return (0, utils_1.cn)(baseCls, 'twa:after:border-accent twa:relative twa:after:border-2 twa:after:rounded-standard twa:after:pointer-events-none twa:after:inset-0 twa:after:absolute twa:after:bg-accent/15');
327
+ }, order: currentOrder, onOptionClick: (option, event) => {
328
+ if (event.ctrlKey || option.columnId === selectedColumnId) {
329
+ setSelectedColumnId(null);
330
+ }
331
+ else {
332
+ setSelectedColumnId(option.columnId);
333
+ const row = event.target.closest?.(`[data-id="${option.columnId}"]`);
334
+ const input = row?.querySelector('input[type="checkbox"]');
335
+ input?.focus();
336
+ }
337
+ }, renderOption: (option) => {
338
+ return ((0, jsx_runtime_1.jsx)(ColumnRow, { onColumnVisibilityChange: handleColumnVisibilityChange, onCheckboxFocus: setSelectedColumnId, layout: layout, column: option }));
339
+ }, onChange: handleColumnsChange })] }) }) }) }), currentOrderIds.length ? ((0, jsx_runtime_1.jsx)(ColumnPropertiesEditor, { column: selectedColumnId && currentOrderIds.includes(selectedColumnId)
340
+ ? colIdToCol[selectedColumnId] ?? null
341
+ : null, layout: layout, columnSortsEnabled: layoutSupportedFeatures.ColumnSorts, resolveDefaultWidth: resolveDefaultWidth, onColumnNameChange: handleColumnNameChange, onPinChange: handlePinChange, onColumnSizingChange: handleColumnSizingChange, onSortChange: handleSortChange, parseNumberInput: parseNumberInput })) : null] }) }), (0, jsx_runtime_1.jsx)(columnLayoutCards_1.ColumnPinningWizardCard, { layout: layout, onChange: onChange, bindCard: bindCard }), (0, jsx_runtime_1.jsx)(columnLayoutCards_1.ColumnSizingWizardCard, { layout: layout, onChange: onChange, bindCard: bindCard }), layoutSupportedFeatures.ColumnSorts ? ((0, jsx_runtime_1.jsx)(SortSection_1.ColumnSortingWizardCard, { layout: layout, onChange: onChange, bindCard: bindCard })) : null] }));
462
342
  };
463
343
  exports.ColumnsSection = ColumnsSection;
464
344
  const hr = ((0, jsx_runtime_1.jsx)("hr", { className: "twa:my-3 twa:mb-0 twa:w-full twa:h-[0.5px] twa:bg-input-border/50 twa:border-none" }));
345
+ const columnInspectorLabelClass = 'twa:text-3 twa:opacity-70 twa:shrink-0';
346
+ const columnInspectorInputClass = 'ab-Layout-Wizard__ColumnPropertiesEditor__Input twa:!min-h-0 twa:text-3 twa:min-w-0 twa:flex-1';
465
347
  const ColumnPropertiesEditor = (props) => {
466
348
  const adaptable = (0, AdaptableContext_1.useAdaptable)();
467
349
  const baseCls = 'ab-Layout-Wizard__ColumnPropertiesEditor twa:border twa:rounded-standard';
468
350
  if (!props.column) {
469
- return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: (0, clsx_1.default)(baseCls, 'twa:border-input-border twa:grid twa:place-items-center twa:border-dashed twa:border-2'), children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-2 twa:items-center twa:justify-center", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-muted-foreground ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Icon", children: (0, jsx_runtime_1.jsx)(icons_1.NaturallySizedIcon, { name: "inspector", style: { stroke: 'currentColor', fill: 'none', strokeWidth: 2 } }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-4 twa:font-bold ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Title", children: "No Column Selected" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-3 twa:opacity-80 ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Description", children: "Select a Column to view and edit its properties" })] }) }));
351
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: (0, utils_1.cn)(baseCls, 'twa:border-input-border twa:grid twa:place-items-center twa:border-dashed twa:border-2'), children: (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-2 twa:items-center twa:justify-center", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-muted-foreground ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Icon", children: (0, jsx_runtime_1.jsx)(icons_1.NaturallySizedIcon, { name: "inspector", style: { stroke: 'currentColor', fill: 'none', strokeWidth: 2 } }) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-4 twa:font-bold ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Title", children: "No Column Selected" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-3 twa:opacity-80 ab-Layout-Wizard__ColumnPropertiesEditor__Placeholder__Description", children: "Select a Column to view and edit its properties" })] }) }));
470
352
  }
471
353
  const { column } = props;
472
- const columnWidth = props.layout.ColumnSizing?.[column.columnId]?.Width;
473
- const columnFlex = props.layout.ColumnSizing?.[column.columnId]?.Flex;
474
- const minWidth = props.layout.ColumnSizing?.[column.columnId]?.MinWidth;
475
- const maxWidth = props.layout.ColumnSizing?.[column.columnId]?.MaxWidth;
476
- const resizable = column.resizable !== false;
477
- // column pinning
478
- const columnPinning = props.layout.ColumnPinning?.[props.column.columnId] || 'None';
479
354
  const initialHeader = adaptable.api.columnApi.getFriendlyNameForColumnId(props.column.columnId, props.layout);
480
355
  const customHeader = props.layout.ColumnHeaders?.[props.column.columnId] ?? initialHeader;
481
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, clsx_1.default)(baseCls, 'ab-Layout-Wizard__ColumnPropertiesEditor__Container twa:border-none twa:bg-background twa:shadow-md', 'twa:max-h-full twa:overflow-hidden twa:flex twa:flex-col'), children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:px-4 twa:pt-4", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-5 twa:font-bold twa:leading-relaxed ab-Layout-Wizard__ColumnPropertiesEditor__Title", children: ["Column Settings: ", column.friendlyName] }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-3 twa:opacity-80 twa:flex twa:flex-row twa:gap-1 twa:items-center", children: ["Column ID:", ' ', (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:bg-primarydark/20 twa:text-muted-foreground twa:px-1 twa:py-0.5 twa:rounded-standard", children: column.columnId })] }), props.column.columnGroup && props.column.columnGroup.groupCount > 1 ? ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "ab-Layout-Wizard__ColumnRow__Title twa:mx-2 twa:p-1", children: ["Column Group: ", props.column.columnGroup.friendlyName] })) : null] }), hr, (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:px-4 twa:flex-1 twa:overflow-y-auto twa:pb-3", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-3 twa:mt-3", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-1", children: ["Header", (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-header", className: "ab-Layout-Wizard__ColumnPropertiesEditor__Input twa:w-full", placeholder: "Custom name (optional)", disabled: props.column.isGeneratedSelectionColumn, onChange: () => {
356
+ const sizing = props.layout.ColumnSizing?.[column.columnId];
357
+ const displayValues = (0, columnLayoutHelpers_1.getExplicitSizingDisplayValues)(column.columnId, sizing, props.resolveDefaultWidth);
358
+ const resizable = column.resizable !== false;
359
+ const columnPinning = props.layout.ColumnPinning?.[column.columnId];
360
+ const currentPin = columnPinning === 'left' || columnPinning === 'right' ? columnPinning : 'None';
361
+ const currentSort = (0, columnLayoutHelpers_1.getColumnSortSelection)(props.layout, column.columnId);
362
+ const columnVisible = isColumnVisible({ columnId: column.columnId, layout: props.layout });
363
+ const orderedColumnIds = (0, layoutWizardColumns_1.getLayoutWizardOrderedColumns)(adaptable, props.layout).map((col) => col.columnId);
364
+ const positionIndex = orderedColumnIds.indexOf(column.columnId);
365
+ const position = columnVisible && positionIndex >= 0 ? String(positionIndex + 1) : '';
366
+ const inspectorFieldGridClass = 'twa:grid twa:grid-cols-[max-content_1fr_max-content_1fr] twa:gap-x-2 twa:gap-y-2 twa:items-center';
367
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: (0, utils_1.cn)(baseCls, 'ab-Layout-Wizard__ColumnPropertiesEditor__Container twa:border-none twa:bg-background twa:shadow-md', 'twa:max-h-full twa:min-h-0 twa:overflow-hidden twa:flex twa:flex-col'), children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:px-4 twa:pt-4", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-3 twa:font-medium twa:leading-snug ab-Layout-Wizard__ColumnPropertiesEditor__Title", children: ["Column Settings: ", column.friendlyName] }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:mt-3 twa:text-3 twa:opacity-80 twa:flex twa:flex-row twa:gap-1 twa:items-center", children: ["Column ID:", ' ', (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:bg-primarydark/20 twa:text-muted-foreground twa:px-1 twa:py-0.5 twa:rounded-standard", children: column.columnId })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:mt-1 twa:text-3 twa:opacity-80 twa:flex twa:flex-row twa:gap-1 twa:items-center", children: ["Data Type:", ' ', (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:bg-primarydark/20 twa:text-muted-foreground twa:px-1 twa:py-0.5 twa:rounded-standard", children: column.dataType })] }), props.column.columnGroup && props.column.columnGroup.groupCount > 1 ? ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "ab-Layout-Wizard__ColumnRow__Title twa:mx-2 twa:p-1", children: ["Column Group: ", props.column.columnGroup.friendlyName] })) : null] }), hr, (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:px-4 twa:flex-1 twa:overflow-y-auto twa:pb-3 twa:mt-3", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-3 twa:font-medium twa:mb-2", children: "Column Properties" }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:flex twa:flex-col twa:gap-3 twa:p-3 twa:rounded-standard twa:bg-background twa:border twa:border-foreground/10", children: [(0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: inspectorFieldGridClass, children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Header" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-header", className: (0, utils_1.cn)(columnInspectorInputClass, 'twa:col-span-3'), placeholder: "Custom name (optional)", disabled: props.column.isGeneratedSelectionColumn, onChange: (event) => {
482
368
  props.onColumnNameChange(props.column.columnId, event.target.value);
483
- }, value: customHeader })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:grid twa:grid-cols-[1fr_1fr] twa:gap-2", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { children: "Width:" }), " ", (0, jsx_runtime_1.jsx)(Flex_1.Box, { children: "Flex:" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-width", className: "ab-Layout-Wizard__ColumnPropertiesEditor__Input", type: "number", placeholder: "Column width", disabled: resizable === false, onChange: (event) => {
484
- let value = parseFloat(event.target.value);
485
- value = typeof value === 'number' && !isNaN(value) ? value : void 0;
486
- props.onColumnWidthChange(props.column.columnId, value);
487
- }, value: columnWidth ?? '' }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-flex", className: "ab-Layout-Wizard__ColumnPropertiesEditor__Input", type: "number", placeholder: "Column flex", disabled: resizable === false, onChange: (event) => {
488
- let value = parseFloat(event.target.value);
489
- value = typeof value === 'number' && !isNaN(value) ? value : void 0;
490
- props.onColumnFlexChange(props.column.columnId, value);
491
- }, value: columnFlex ?? '' }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { children: "Min Width:" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { children: "Max Width:" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-min-width", className: "ab-Layout-Wizard__ColumnPropertiesEditor__Input", type: "number", placeholder: "Column min width", disabled: resizable === false, onChange: (event) => {
492
- let value = parseFloat(event.target.value);
493
- value = typeof value === 'number' && !isNaN(value) ? value : void 0;
494
- props.onColumnMinWidthChange(props.column.columnId, value);
495
- }, value: minWidth ?? '' }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "column-max-width", className: "ab-Layout-Wizard__ColumnPropertiesEditor__Input", type: "number", placeholder: "Column max width", disabled: resizable === false, onChange: (event) => {
496
- let value = parseFloat(event.target.value);
497
- value = typeof value === 'number' && !isNaN(value) ? value : void 0;
498
- props.onColumnMaxWidthChange(props.column.columnId, value);
499
- }, value: maxWidth ?? '' })] }), "Pinning:", (0, jsx_runtime_1.jsxs)(Radio_1.RadioGroup, { value: columnPinning || 'None', name: "columnPinning", orientation: "horizontal", variant: "text-only", className: Radio_1.radioGroupStyling.horizontalTextOnly, onRadioChange: (columnPinning) => {
500
- props.onPinChange(column.columnId, columnPinning === 'None' ? null : columnPinning);
501
- }, children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { value: "left", children: "Left" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { value: "None", children: "None" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { value: "right", children: "Right" })] })] }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:mt-5" }), hr, (0, jsx_runtime_1.jsxs)(Flex_1.Box, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:my-3", children: "Column Attributes" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: (0, clsx_1.default)({
502
- 'twa:bg-primarylight': 'the bg color',
503
- 'twa:gap-2 twa:flex twa:flex-col': 'layout configuration for small screens',
504
- 'twa:lg:gap-3 twa:lg:grid twa:md:grid-cols-[1fr_1fr]': 'layout configuration for normal screens',
505
- 'twa:p-5 twa:rounded-standard': true,
506
- }), children: [
507
- { label: 'Aggregatable', checked: props.column.aggregatable },
508
- { label: 'Filterable', checked: props.column.filterable },
509
- { label: 'Groupable', checked: props.column.groupable },
510
- { label: 'Moveable', checked: props.column.moveable },
511
- { label: 'Pivotable', checked: props.column.pivotable },
512
- { label: 'Sortable', checked: props.column.sortable },
513
- ].map(({ label, checked }) => ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: (0, clsx_1.default)({
514
- 'twa:rounded-standard twa:gap-2': true,
515
- }), children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:size-5", children: checked ? ((0, jsx_runtime_1.jsx)(icons_1.Icon, { name: "check", className: "twa:text-success" })) : ((0, jsx_runtime_1.jsx)(icons_1.Icon, { name: "close", className: "twa:text-error" })) }), label] }, label))) })] })] })] }));
369
+ }, value: customHeader }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Width" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": `column-width-${column.columnId}`, className: columnInspectorInputClass, type: "number", placeholder: "\u2014", disabled: !resizable, onChange: (event) => {
370
+ props.onColumnSizingChange(column.columnId, 'width', props.parseNumberInput(event.target.value));
371
+ }, value: displayValues.width ?? '' }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Flex" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": `column-flex-${column.columnId}`, className: columnInspectorInputClass, type: "number", placeholder: "\u2014", disabled: !resizable, onChange: (event) => {
372
+ props.onColumnSizingChange(column.columnId, 'flex', props.parseNumberInput(event.target.value));
373
+ }, value: displayValues.flex ?? '' }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Min" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": `column-min-width-${column.columnId}`, className: columnInspectorInputClass, type: "number", placeholder: "\u2014", disabled: !resizable, onChange: (event) => {
374
+ props.onColumnSizingChange(column.columnId, 'minWidth', props.parseNumberInput(event.target.value));
375
+ }, value: displayValues.minWidth ?? '' }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Max" }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": `column-max-width-${column.columnId}`, className: columnInspectorInputClass, type: "number", placeholder: "\u2014", disabled: !resizable, onChange: (event) => {
376
+ props.onColumnSizingChange(column.columnId, 'maxWidth', props.parseNumberInput(event.target.value));
377
+ }, value: displayValues.maxWidth ?? '' })] }), (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:flex-wrap", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Pinning" }), (0, jsx_runtime_1.jsx)(Radio_1.RadioGroup, { orientation: "horizontal", variant: "text-only", className: Radio_1.radioGroupStyling.horizontalTextOnly, value: currentPin, name: `inspector-pinning-${column.columnId}`, onRadioChange: (value) => {
378
+ props.onPinChange(column.columnId, value === 'None' ? null : value);
379
+ }, children: columnLayoutHelpers_1.COLUMN_PINNING_OPTIONS.map((option) => ((0, jsx_runtime_1.jsx)(Radio_1.default, { value: option.value, "data-value": option.value, "data-name": `pinning-${column.columnId}-${option.value}`, children: option.label }, option.value))) })] }), props.columnSortsEnabled ? ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2 twa:flex-wrap", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Sorting" }), (0, jsx_runtime_1.jsx)(Radio_1.RadioGroup, { orientation: "horizontal", variant: "text-only", className: Radio_1.radioGroupStyling.horizontalTextOnly, value: currentSort, name: `inspector-sorting-${column.columnId}`, onRadioChange: (value) => {
380
+ props.onSortChange(column.columnId, value);
381
+ }, children: columnLayoutHelpers_1.COLUMN_SORT_OPTIONS.map((option) => ((0, jsx_runtime_1.jsx)(Radio_1.default, { value: option.value, disabled: !column.sortable, "data-name": `inspector-sorting-${column.columnId}-${option.value}`, children: option.label }, option.value))) })] })) : null, (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-2", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: columnInspectorLabelClass, children: "Position" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-3", children: position || '—' })] }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:grid twa:grid-cols-3 twa:gap-2 twa:pt-2 twa:border-t twa:border-foreground/10", children: [
382
+ { label: 'Hideable', checked: column.hideable },
383
+ { label: 'Editable', checked: !column.readOnly },
384
+ { label: 'Queryable', checked: column.queryable },
385
+ { label: 'Exportable', checked: column.exportable },
386
+ { label: 'Sortable', checked: column.sortable },
387
+ { label: 'Aggregatable', checked: column.aggregatable },
388
+ { label: 'Filterable', checked: column.filterable },
389
+ { label: 'Groupable', checked: column.groupable },
390
+ { label: 'Moveable', checked: column.moveable },
391
+ { label: 'Pivotable', checked: column.pivotable },
392
+ { label: 'Calculated', checked: column.isCalculatedColumn },
393
+ { label: 'Free Text', checked: column.isFreeTextColumn },
394
+ ].map(({ label, checked }) => ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { alignItems: "center", className: "twa:gap-1.5 twa:min-w-0", children: [(0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:size-4 twa:shrink-0", children: checked ? ((0, jsx_runtime_1.jsx)(icons_1.Icon, { name: "check", className: "twa:text-success" })) : ((0, jsx_runtime_1.jsx)(icons_1.Icon, { name: "close", className: "twa:text-destructive" })) }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-3 twa:truncate", children: label })] }, label))) })] })] })] }));
516
395
  };
@@ -1,9 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { PivotLayout } from '../../../../../types';
3
3
  export declare const isPivotAggregationsSectionValid: (data: PivotLayout) => true | string;
4
- export declare const PivotAggregationsSectionSummary: React.FunctionComponent;
4
+ export declare const PivotAggregationsSectionSummary: React.FunctionComponent<{
5
+ layout?: PivotLayout;
6
+ }>;
5
7
  interface PivotAggregationsSectionProps {
6
8
  onChange: (data: PivotLayout) => void;
9
+ layoutWizardMode?: 'create' | 'edit';
7
10
  }
8
11
  export declare const PivotAggregationsSection: React.FunctionComponent<PivotAggregationsSectionProps>;
9
12
  export {};