@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
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.COLUMN_SORT_OPTIONS = exports.COLUMN_PINNING_OPTIONS = void 0;
4
+ exports.getLayoutPinnedColumnIds = getLayoutPinnedColumnIds;
5
+ exports.hasExplicitLayoutSizing = hasExplicitLayoutSizing;
6
+ exports.getLayoutExplicitSizedColumnIds = getLayoutExplicitSizedColumnIds;
7
+ exports.formatColumnSizingBrief = formatColumnSizingBrief;
8
+ exports.getExplicitSizingDisplayValues = getExplicitSizingDisplayValues;
9
+ exports.formatColumnInspectorPinning = formatColumnInspectorPinning;
10
+ exports.formatColumnInspectorSizing = formatColumnInspectorSizing;
11
+ exports.formatColumnInspectorSorting = formatColumnInspectorSorting;
12
+ exports.getColumnSortSelection = getColumnSortSelection;
13
+ exports.applyColumnPinChange = applyColumnPinChange;
14
+ exports.applyColumnSortChange = applyColumnSortChange;
15
+ exports.applyColumnSizingFieldChange = applyColumnSizingFieldChange;
16
+ exports.COLUMN_PINNING_OPTIONS = [
17
+ { value: 'left', label: 'Left' },
18
+ { value: 'None', label: 'None' },
19
+ { value: 'right', label: 'Right' },
20
+ ];
21
+ exports.COLUMN_SORT_OPTIONS = [
22
+ { value: 'Asc', label: 'Asc' },
23
+ { value: 'Desc', label: 'Desc' },
24
+ { value: 'None', label: 'None' },
25
+ ];
26
+ function getLayoutPinnedColumnIds(layout, side) {
27
+ const pinning = layout.ColumnPinning ?? {};
28
+ return Object.entries(pinning)
29
+ .filter(([, pin]) => pin === side)
30
+ .map(([columnId]) => columnId);
31
+ }
32
+ /** Whether this column has sizing stored in the Layout that differs from grid defaults. */
33
+ function hasExplicitLayoutSizing(columnId, sizing, resolveDefaultWidth) {
34
+ if (!sizing) {
35
+ return false;
36
+ }
37
+ if (sizing.Flex != null) {
38
+ return true;
39
+ }
40
+ if (sizing.MinWidth != null || sizing.MaxWidth != null) {
41
+ return true;
42
+ }
43
+ if (sizing.Width != null) {
44
+ if (resolveDefaultWidth) {
45
+ return sizing.Width !== resolveDefaultWidth(columnId);
46
+ }
47
+ return true;
48
+ }
49
+ return false;
50
+ }
51
+ function getLayoutExplicitSizedColumnIds(layout, resolveDefaultWidth) {
52
+ const sizing = layout.ColumnSizing ?? {};
53
+ return Object.keys(sizing).filter((columnId) => hasExplicitLayoutSizing(columnId, sizing[columnId], resolveDefaultWidth));
54
+ }
55
+ function formatColumnSizingBrief(columnId, sizing, resolveDefaultWidth) {
56
+ if (!hasExplicitLayoutSizing(columnId, sizing, resolveDefaultWidth)) {
57
+ return '';
58
+ }
59
+ const display = getExplicitSizingDisplayValues(columnId, sizing, resolveDefaultWidth);
60
+ const parts = [];
61
+ if (display.flex != null) {
62
+ parts.push(`flex ${display.flex}`);
63
+ }
64
+ else if (display.width != null) {
65
+ parts.push(String(display.width));
66
+ }
67
+ if (display.minWidth != null) {
68
+ parts.push(`min ${display.minWidth}`);
69
+ }
70
+ if (display.maxWidth != null) {
71
+ parts.push(`max ${display.maxWidth}`);
72
+ }
73
+ return parts.join(', ');
74
+ }
75
+ /** Width/flex values to show in the sizing editor (default grid widths are omitted). */
76
+ function getExplicitSizingDisplayValues(columnId, sizing, resolveDefaultWidth) {
77
+ if (!sizing) {
78
+ return {
79
+ width: undefined,
80
+ flex: undefined,
81
+ minWidth: undefined,
82
+ maxWidth: undefined,
83
+ };
84
+ }
85
+ const width = sizing.Width != null &&
86
+ (!resolveDefaultWidth || sizing.Width !== resolveDefaultWidth(columnId))
87
+ ? sizing.Width
88
+ : undefined;
89
+ return {
90
+ width,
91
+ flex: sizing.Flex ?? undefined,
92
+ minWidth: sizing.MinWidth ?? undefined,
93
+ maxWidth: sizing.MaxWidth ?? undefined,
94
+ };
95
+ }
96
+ function formatColumnInspectorPinning(layout, columnId) {
97
+ const pin = layout.ColumnPinning?.[columnId];
98
+ if (pin === 'left') {
99
+ return 'Left';
100
+ }
101
+ if (pin === 'right') {
102
+ return 'Right';
103
+ }
104
+ return 'None';
105
+ }
106
+ function formatColumnInspectorSizing(columnId, sizing, resolveDefaultWidth) {
107
+ if (!hasExplicitLayoutSizing(columnId, sizing, resolveDefaultWidth)) {
108
+ return 'Default';
109
+ }
110
+ const display = getExplicitSizingDisplayValues(columnId, sizing, resolveDefaultWidth);
111
+ const parts = [];
112
+ if (display.width != null) {
113
+ parts.push(String(display.width));
114
+ }
115
+ if (display.flex != null) {
116
+ parts.push(`flex ${display.flex}`);
117
+ }
118
+ if (display.minWidth != null) {
119
+ parts.push(`min ${display.minWidth}`);
120
+ }
121
+ if (display.maxWidth != null) {
122
+ parts.push(`max ${display.maxWidth}`);
123
+ }
124
+ return parts.length ? parts.join(', ') : 'Default';
125
+ }
126
+ function formatColumnInspectorSorting(layout, columnId) {
127
+ return getColumnSortSelection(layout, columnId);
128
+ }
129
+ function getColumnSortSelection(layout, columnId) {
130
+ const sort = (layout.ColumnSorts ?? []).find((entry) => entry.ColumnId === columnId);
131
+ return sort?.SortOrder ?? 'None';
132
+ }
133
+ function applyColumnPinChange(layout, columnId, pinning) {
134
+ const ColumnPinning = { ...layout.ColumnPinning };
135
+ if (pinning) {
136
+ ColumnPinning[columnId] = pinning;
137
+ }
138
+ else {
139
+ delete ColumnPinning[columnId];
140
+ }
141
+ return {
142
+ ...layout,
143
+ ColumnPinning,
144
+ };
145
+ }
146
+ function applyColumnSortChange(layout, columnId, sortOrder) {
147
+ const existing = layout.ColumnSorts ?? [];
148
+ if (sortOrder === 'None') {
149
+ return {
150
+ ...layout,
151
+ ColumnSorts: existing.filter((entry) => entry.ColumnId !== columnId),
152
+ };
153
+ }
154
+ const current = existing.find((entry) => entry.ColumnId === columnId);
155
+ if (current) {
156
+ return {
157
+ ...layout,
158
+ ColumnSorts: existing.map((entry) => entry.ColumnId === columnId ? { ...entry, SortOrder: sortOrder } : entry),
159
+ };
160
+ }
161
+ return {
162
+ ...layout,
163
+ ColumnSorts: [...existing, { ColumnId: columnId, SortOrder: sortOrder }],
164
+ };
165
+ }
166
+ function applyColumnSizingFieldChange(layout, columnId, field, value, resolveDefaultWidth) {
167
+ const ColumnSizing = { ...layout.ColumnSizing };
168
+ const colSizingForCol = { ...(ColumnSizing[columnId] ?? {}) };
169
+ const next = { ...colSizingForCol };
170
+ switch (field) {
171
+ case 'width':
172
+ if (value == null || value === resolveDefaultWidth(columnId)) {
173
+ delete next.Width;
174
+ }
175
+ else {
176
+ delete next.Flex;
177
+ next.Width = value;
178
+ }
179
+ break;
180
+ case 'flex':
181
+ if (value == null) {
182
+ delete next.Flex;
183
+ }
184
+ else {
185
+ delete next.Width;
186
+ next.Flex = value;
187
+ }
188
+ break;
189
+ case 'minWidth':
190
+ if (value == null) {
191
+ delete next.MinWidth;
192
+ }
193
+ else {
194
+ next.MinWidth = value;
195
+ }
196
+ break;
197
+ case 'maxWidth':
198
+ if (value == null) {
199
+ delete next.MaxWidth;
200
+ }
201
+ else {
202
+ next.MaxWidth = value;
203
+ }
204
+ break;
205
+ }
206
+ if (hasExplicitLayoutSizing(columnId, next, resolveDefaultWidth)) {
207
+ ColumnSizing[columnId] = next;
208
+ }
209
+ else {
210
+ delete ColumnSizing[columnId];
211
+ }
212
+ return {
213
+ ...layout,
214
+ ColumnSizing,
215
+ };
216
+ }
@@ -0,0 +1,8 @@
1
+ import { Layout, PivotLayout, TableLayout } from '../../../../types';
2
+ export declare function getLayoutWizardInitialExpandedCardId(layoutWizardMode: 'create' | 'edit' | undefined, firstCardId: string, isSectionConfigured: boolean): string | null;
3
+ export declare function isColumnsSectionConfigured(layout: TableLayout): boolean;
4
+ export declare function isRowGroupingSectionConfigured(layout: Layout): boolean;
5
+ export declare function isPivotRowGroupingSectionConfigured(layout: PivotLayout): boolean;
6
+ export declare function isTableAggregationsSectionConfigured(layout: TableLayout): boolean;
7
+ export declare function isPivotAggregationsSectionConfigured(layout: PivotLayout): boolean;
8
+ export declare function isPivotColumnsSectionConfigured(layout: PivotLayout): boolean;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLayoutWizardInitialExpandedCardId = getLayoutWizardInitialExpandedCardId;
4
+ exports.isColumnsSectionConfigured = isColumnsSectionConfigured;
5
+ exports.isRowGroupingSectionConfigured = isRowGroupingSectionConfigured;
6
+ exports.isPivotRowGroupingSectionConfigured = isPivotRowGroupingSectionConfigured;
7
+ exports.isTableAggregationsSectionConfigured = isTableAggregationsSectionConfigured;
8
+ exports.isPivotAggregationsSectionConfigured = isPivotAggregationsSectionConfigured;
9
+ exports.isPivotColumnsSectionConfigured = isPivotColumnsSectionConfigured;
10
+ function getLayoutWizardInitialExpandedCardId(layoutWizardMode, firstCardId, isSectionConfigured) {
11
+ if (layoutWizardMode !== 'create' || isSectionConfigured) {
12
+ return null;
13
+ }
14
+ return firstCardId;
15
+ }
16
+ function isColumnsSectionConfigured(layout) {
17
+ if ((layout.TableColumns?.length ?? 0) > 0) {
18
+ return true;
19
+ }
20
+ if (layout.ColumnPinning && Object.keys(layout.ColumnPinning).length > 0) {
21
+ return true;
22
+ }
23
+ if ((layout.ColumnSorts?.length ?? 0) > 0) {
24
+ return true;
25
+ }
26
+ if (layout.ColumnSizing && Object.keys(layout.ColumnSizing).length > 0) {
27
+ return true;
28
+ }
29
+ return false;
30
+ }
31
+ function isRowGroupingSectionConfigured(layout) {
32
+ return (layout.RowGroupedColumns?.length ?? 0) > 0;
33
+ }
34
+ function isPivotRowGroupingSectionConfigured(layout) {
35
+ return (layout.PivotGroupedColumns?.length ?? 0) > 0;
36
+ }
37
+ function isTableAggregationsSectionConfigured(layout) {
38
+ if ((layout.TableAggregationColumns?.length ?? 0) > 0) {
39
+ return true;
40
+ }
41
+ if (layout.GrandTotalRow != null && layout.GrandTotalRow !== false) {
42
+ return true;
43
+ }
44
+ return false;
45
+ }
46
+ function isPivotAggregationsSectionConfigured(layout) {
47
+ if ((layout.PivotAggregationColumns?.length ?? 0) > 0) {
48
+ return true;
49
+ }
50
+ if (layout.GrandTotalRow != null && layout.GrandTotalRow !== false) {
51
+ return true;
52
+ }
53
+ if (layout.PivotGrandTotal != null && layout.PivotGrandTotal !== false) {
54
+ return true;
55
+ }
56
+ if (layout.PivotColumnTotal != null && layout.PivotColumnTotal !== false) {
57
+ return true;
58
+ }
59
+ return false;
60
+ }
61
+ function isPivotColumnsSectionConfigured(layout) {
62
+ if ((layout.PivotColumns?.length ?? 0) > 0) {
63
+ return true;
64
+ }
65
+ if (layout.PivotResultColumnsOrder) {
66
+ return true;
67
+ }
68
+ if ((layout.ColumnSorts?.length ?? 0) > 0) {
69
+ return true;
70
+ }
71
+ return false;
72
+ }
@@ -0,0 +1,11 @@
1
+ import { AdaptableColumn } from '../../../../AdaptableState/Common/AdaptableColumn';
2
+ import type { IAdaptable } from '../../../../AdaptableInterfaces/IAdaptable';
3
+ import type { Layout } from '../../../../../types';
4
+ /** ValueSelector row sizing — matches Visibility and Order list rows. */
5
+ export declare const LAYOUT_WIZARD_COLUMN_LIST_OPTION_CLASS = "twa:!py-1 twa:!px-1.5";
6
+ /** Compact list header — spacing between Select All, Show Selected Only, and search. */
7
+ export declare const LAYOUT_WIZARD_COLUMN_LIST_HEADER_CLASS = "twa:gap-4";
8
+ /** Narrow search field (matches Visibility list column width, not full card width). */
9
+ export declare const LAYOUT_WIZARD_COLUMN_LIST_SEARCH_CLASS = "twa:w-[12rem] twa:shrink-0 twa:min-w-0";
10
+ /** Columns shown in Layout wizard column steps, in layout table order. */
11
+ export declare function getLayoutWizardOrderedColumns(adaptable: IAdaptable, layout: Layout): AdaptableColumn[];
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LAYOUT_WIZARD_COLUMN_LIST_SEARCH_CLASS = exports.LAYOUT_WIZARD_COLUMN_LIST_HEADER_CLASS = exports.LAYOUT_WIZARD_COLUMN_LIST_OPTION_CLASS = void 0;
4
+ exports.getLayoutWizardOrderedColumns = getLayoutWizardOrderedColumns;
5
+ const tslib_1 = require("tslib");
6
+ const ColumnApiImpl_1 = require("../../../../Api/Implementation/ColumnApiImpl");
7
+ const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../../Utilities/Extensions/ArrayExtensions"));
8
+ const GeneralConstants_1 = require("../../../../Utilities/Constants/GeneralConstants");
9
+ const wizardColumnListStyles_1 = require("../../../Components/wizardColumnListStyles");
10
+ /** ValueSelector row sizing — matches Visibility and Order list rows. */
11
+ exports.LAYOUT_WIZARD_COLUMN_LIST_OPTION_CLASS = wizardColumnListStyles_1.WIZARD_COLUMN_LIST_OPTION_CLASS;
12
+ /** Compact list header — spacing between Select All, Show Selected Only, and search. */
13
+ exports.LAYOUT_WIZARD_COLUMN_LIST_HEADER_CLASS = wizardColumnListStyles_1.WIZARD_COLUMN_LIST_HEADER_CLASS;
14
+ /** Narrow search field (matches Visibility list column width, not full card width). */
15
+ exports.LAYOUT_WIZARD_COLUMN_LIST_SEARCH_CLASS = wizardColumnListStyles_1.WIZARD_COLUMN_LIST_SEARCH_CLASS;
16
+ /** Columns shown in Layout wizard column steps, in layout table order. */
17
+ function getLayoutWizardOrderedColumns(adaptable, layout) {
18
+ const hasSelectionColumn = adaptable.api.columnApi
19
+ .getColumns()
20
+ .some((col) => col.isGeneratedSelectionColumn);
21
+ const allColumns = adaptable.api.columnApi
22
+ .getUIAvailableColumns()
23
+ .filter((col) => !col.isGeneratedRowGroupColumn)
24
+ .filter((col) => !col.isGeneratedPivotResultColumn)
25
+ .filter((col) => !col.isGeneratedSelectionColumn);
26
+ if (layout.RowGroupedColumns && layout.RowGroupedColumns.length > 0) {
27
+ if (layout.RowGroupDisplayType === 'single') {
28
+ allColumns.unshift((0, ColumnApiImpl_1.generateAutoRowGroupSingleColumn)());
29
+ }
30
+ else if (layout.RowGroupDisplayType === 'multi') {
31
+ [...layout.RowGroupedColumns].reverse().forEach((col) => {
32
+ const groupCol = (0, ColumnApiImpl_1.generateAutoRowGroupColumnForColumn)(adaptable.api.columnApi.getColumnWithColumnId(col));
33
+ allColumns.unshift(groupCol);
34
+ });
35
+ }
36
+ }
37
+ if (adaptable.api.gridApi.isTreeDataGrid() &&
38
+ !allColumns.find((col) => col.columnId === GeneralConstants_1.AG_GRID_GROUPED_COLUMN)) {
39
+ allColumns.unshift((0, ColumnApiImpl_1.generateAutoTreeSingleColumn)());
40
+ }
41
+ if (hasSelectionColumn) {
42
+ allColumns.unshift((0, ColumnApiImpl_1.generateSelectionColumn)());
43
+ }
44
+ const colIdToCol = allColumns.reduce((acc, col) => {
45
+ if (col) {
46
+ acc[col.columnId] = col;
47
+ }
48
+ return acc;
49
+ }, {});
50
+ let tableColumns = layout.TableColumns ?? [];
51
+ if (hasSelectionColumn && !tableColumns.includes(GeneralConstants_1.AG_GRID_SELECTION_COLUMN)) {
52
+ tableColumns = [GeneralConstants_1.AG_GRID_SELECTION_COLUMN, ...tableColumns];
53
+ }
54
+ return ArrayExtensions_1.default.sortArrayWithOrder(allColumns.map((col) => col.columnId), tableColumns, { sortUnorderedItems: false })
55
+ .map((colId) => colIdToCol[colId])
56
+ .filter(Boolean);
57
+ }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LicenseWatermark=void 0;const e=require("tslib"),r=require("react/jsx-runtime"),t=e.__importStar(require("react")),o=require("../../components/Logo"),n=require("../../components/Flex"),i={border:"1px solid var(--ab-color-error)",padding:"5px",fontWeight:600,margin:"5px",fontSize:"14px",alignItems:"center",color:"var(--ab-color-foreground)",background:"var(--ab-color-background)"},s=e=>{const r=[["display","none"],["opacity","0"],["position","absolute"],["position","fixed"],["position","relative"],["visibility","hidden"]];for(const[t,o]of r)if(e.style[t]===o)return!1;return!0},l=e=>{const l=t.useRef(null);return t.useEffect(()=>{const e=setInterval(()=>{l.current?.isConnected||alert("It is not allowed to remove the Adaptable watermark."),s(l.current)||alert("It is not allowed to modify the Adaptable watermark."),l?.current?.style&&(l.current.style.border=i.border,l.current.style.padding=i.padding,l.current.style.fontWeight=`${i.fontWeight}`,l.current.style.margin=i.margin,l.current.style.fontSize=i.fontSize,l.current.style.color=i.color,l.current.style.background=i.background,l.current.style.display="flex",l.current.style.position="static",l.current.style.opacity="1",l.current.style.visibility="visible")},5e3);return()=>clearTimeout(e)},[]),(0,r.jsxs)(n.Flex,{style:i,ref:l,children:[(0,r.jsx)(o.Logo,{style:{marginRight:10}}),(0,r.jsx)("div",{children:e.children})]})};exports.LicenseWatermark=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LicenseWatermark=void 0;const e=require("tslib"),r=require("react/jsx-runtime"),t=e.__importStar(require("react")),o=require("../../components/Logo"),n=require("../../components/Flex"),i={border:"1px solid red",padding:"5px",fontWeight:600,margin:"5px",fontSize:"14px",alignItems:"center",color:"var(--ab-color-foreground)",background:"var(--ab-color-background)"},s=e=>{const r=[["display","none"],["opacity","0"],["position","absolute"],["position","fixed"],["position","relative"],["visibility","hidden"]];for(const[t,o]of r)if(e.style[t]===o)return!1;return!0},l=e=>{const l=t.useRef(null);return t.useEffect(()=>{const e=setInterval(()=>{l.current?.isConnected||alert("It is not allowed to remove the Adaptable watermark."),s(l.current)||alert("It is not allowed to modify the Adaptable watermark."),l?.current?.style&&(l.current.style.border=i.border,l.current.style.padding=i.padding,l.current.style.fontWeight=`${i.fontWeight}`,l.current.style.margin=i.margin,l.current.style.fontSize=i.fontSize,l.current.style.color=i.color,l.current.style.background=i.background,l.current.style.display="flex",l.current.style.position="static",l.current.style.opacity="1",l.current.style.visibility="visible")},5e3);return()=>clearTimeout(e)},[]),(0,r.jsxs)(n.Flex,{style:i,ref:l,children:[(0,r.jsx)(o.Logo,{style:{marginRight:10}}),(0,r.jsx)("div",{children:e.children})]})};exports.LicenseWatermark=l;
@@ -5,5 +5,5 @@ export interface NamedQueryExpressionWizardSectionProps {
5
5
  onChange: (data: NamedQuery) => void;
6
6
  }
7
7
  export declare const isValidNamedQueryExpression: (data: NamedQuery, api: AdaptableApi) => string | true;
8
- export declare const renderNamedQueryExpressionSummary: (data: NamedQuery) => React.JSX.Element;
8
+ export declare const renderNamedQueryExpressionSummary: (data: NamedQuery, api: AdaptableApi) => React.JSX.Element;
9
9
  export declare const NamedQueryExpressionWizardSection: (props: NamedQueryExpressionWizardSectionProps) => React.JSX.Element;
@@ -19,8 +19,7 @@ const isValidNamedQueryExpression = (data, api) => {
19
19
  return valid;
20
20
  };
21
21
  exports.isValidNamedQueryExpression = isValidNamedQueryExpression;
22
- const renderNamedQueryExpressionSummary = (data) => {
23
- const { api } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
22
+ const renderNamedQueryExpressionSummary = (data, api) => {
24
23
  return ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-2", children: ["Expression: ", (0, jsx_runtime_1.jsx)(Tag_1.Tag, { children: api.internalApi.getAdaptableQueryExpressionText(data) })] }));
25
24
  };
26
25
  exports.renderNamedQueryExpressionSummary = renderNamedQueryExpressionSummary;
@@ -8,7 +8,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"));
10
10
  const AdaptableContext_1 = require("../AdaptableContext");
11
- const clsx_1 = tslib_1.__importDefault(require("clsx"));
11
+ const utils_1 = require("../../lib/utils");
12
12
  const NoteEditor = ({ note, onNoteChange, onClose, editMode, isReadonly }) => {
13
13
  const { api } = (0, AdaptableContext_1.useAdaptable)();
14
14
  const showPopupCloseButton = api.optionsApi.getNoteOptions()?.showPopupCloseButton ?? true;
@@ -29,7 +29,7 @@ const NoteEditor = ({ note, onNoteChange, onClose, editMode, isReadonly }) => {
29
29
  if (note === undefined || note === null) {
30
30
  return null;
31
31
  }
32
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Textarea_1.default, { readOnly: isReadonly, ref: textAreaRef, className: (0, clsx_1.default)('twa:min-w-[180px] twa:min-h-[120px] twa:w-full', {
32
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Textarea_1.default, { readOnly: isReadonly, ref: textAreaRef, className: (0, utils_1.cn)('twa:min-w-[180px] twa:min-h-[120px] twa:w-full', {
33
33
  'twa:pr-[30px]': showPopupCloseButton,
34
34
  'twa:pr-0': !showPopupCloseButton,
35
35
  }), value: liveValue, onBlur: () => onClose(), onKeyDown: (event) => {
@@ -14,10 +14,9 @@ const Tabs_1 = require("../../components/Tabs");
14
14
  const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
15
15
  const useQuickSearchDebounced_1 = require("./useQuickSearchDebounced");
16
16
  const QuickSearchInput_1 = require("./QuickSearchInput");
17
- const HelpBlock_1 = tslib_1.__importDefault(require("../../components/HelpBlock"));
18
17
  const Card_1 = require("../../components/Card");
19
18
  const QuickSearchStyleHelper_1 = require("../../Utilities/Helpers/QuickSearchStyleHelper");
20
- const QuickSearchStyleEditor = ({ api, helpText, headerText, style, updateStyle }) => ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:gap-2", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:text-2", children: helpText }), (0, jsx_runtime_1.jsx)(StyleComponent_1.StyleComponent, { headless: true, hidePreview: true, className: "twa:h-full twa:flex-1 twa:rounded-none", headerText: headerText, api: api, Style: style, UpdateStyle: updateStyle })] }));
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 }) })] }));
21
20
  const QuickSearchPopupComponent = (props) => {
22
21
  const [searchText, search] = (0, useQuickSearchDebounced_1.useQuickSearchDebounced)(props);
23
22
  const [state, setState] = (0, react_1.useState)({
@@ -29,7 +28,7 @@ const QuickSearchPopupComponent = (props) => {
29
28
  checked;
30
29
  };
31
30
  const isServerSideRowModel = props.api.agGridApi.getGridOption('rowModelType') === 'serverSide';
32
- return ((0, jsx_runtime_1.jsx)(PopupPanel_1.PopupPanel, { headerText: props.moduleInfo.FriendlyName, glyphicon: props.moduleInfo.Glyph, infoLink: props.moduleInfo.HelpPage, infoLinkDisabled: !props.api.internalApi.isDocumentationLinksDisplayed(), bodyClassName: "twa:gap-3 twa:flex twa:flex-col", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:h-full twa:gap-4", children: [(0, jsx_runtime_1.jsxs)(Card_1.Card, { children: [(0, jsx_runtime_1.jsx)(Card_1.Card.Title, { children: "Search Text" }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1 twa:w-fit", children: (0, jsx_runtime_1.jsx)(QuickSearchInput_1.QuickSearchInput, {}) })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { children: [(0, jsx_runtime_1.jsx)(Card_1.Card.Title, { children: "Behaviour" }), (0, jsx_runtime_1.jsxs)(Card_1.Card.Body, { className: "twa:p-1", gap: 2, children: [(0, jsx_runtime_1.jsxs)(HelpBlock_1.default, { className: "twa:text-2 twa:w-fit", children: ["Filter Grid when searching to only show rows with matching cells; ", (0, jsx_runtime_1.jsx)("b", { children: "use with care" }), " as can cause performance issues"] }), (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "filter-quick-search-results", value: "existing", checked: state.RunQueryAfterQuickSearch, disabled: StringExtensions_1.default.IsNotNullOrEmpty(searchText), onChange: onQuickSearchBehaviourChange, children: "Filter using Quick Search Results" })] })] }), (0, jsx_runtime_1.jsxs)(Card_1.Card, { children: [(0, jsx_runtime_1.jsx)(Card_1.Card.Title, { children: "Matching Styles" }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-0", children: isServerSideRowModel ? ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:p-2", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Server-side row model: styles the whole matching cell.", headerText: "Cell Matching Style", style: props.QuickSearchCellMatchStyle, updateStyle: props.onSetCellMatchingStyle }) })) : ((0, jsx_runtime_1.jsxs)(Tabs_1.Tabs, { defaultValue: "text", className: "twa:min-h-0", children: [(0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "text", children: "Text Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "current", children: "Current Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "cell", children: "Cell Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "text", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Highlights the matching text within each cell (AG Grid Find).", headerText: "Text Matching Style", style: props.QuickSearchTextMatchStyle, updateStyle: props.onSetTextMatchingStyle }) }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "current", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Applied to the active match when cycling through results.", headerText: "Current Match Style", style: props.QuickSearchCurrentTextMatchStyle, updateStyle: props.onSetCurrentTextMatchingStyle }) }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "cell", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Optional background for whole matching cells. When unset, only matching text is highlighted.", headerText: "Cell Matching Style", style: props.QuickSearchCellMatchStyle, updateStyle: props.onSetCellMatchingStyle }) })] })) })] })] }) }));
31
+ return ((0, jsx_runtime_1.jsx)(PopupPanel_1.PopupPanel, { headerText: props.moduleInfo.FriendlyName, glyphicon: props.moduleInfo.Glyph, infoLink: props.moduleInfo.HelpPage, infoLinkDisabled: !props.api.internalApi.isDocumentationLinksDisplayed(), bodyClassName: "twa:gap-3 twa:flex twa:flex-col", children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "column", className: "twa:h-full twa:gap-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: "Search Text" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Enter the text to find across visible grid cells" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1 twa:w-fit", children: (0, jsx_runtime_1.jsx)(QuickSearchInput_1.QuickSearchInput, {}) })] }), (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: "Behaviour" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Filter the grid to matching rows only when searching; use with care as this can affect performance" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", gap: 2, children: (0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": "filter-quick-search-results", value: "existing", checked: state.RunQueryAfterQuickSearch, disabled: StringExtensions_1.default.IsNotNullOrEmpty(searchText), onChange: onQuickSearchBehaviourChange, children: "Filter using Quick Search Results" }) })] }), (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: "Matching Styles" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Configure colours and fonts for how search matches appear in the grid" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: isServerSideRowModel ? ((0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Server-side row model: styles the whole matching cell.", headerText: "Cell Matching Style", style: props.QuickSearchCellMatchStyle, updateStyle: props.onSetCellMatchingStyle })) : ((0, jsx_runtime_1.jsxs)(Tabs_1.Tabs, { defaultValue: "text", className: "twa:min-h-0", children: [(0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "text", children: "Text Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "current", children: "Current Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Tab, { value: "cell", children: "Cell Match" }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "text", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:pt-2", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Highlights the matching text within each cell (AG Grid Find).", headerText: "Text Matching Style", style: props.QuickSearchTextMatchStyle, updateStyle: props.onSetTextMatchingStyle }) }) }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "current", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:pt-2", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Applied to the active match when cycling through results.", headerText: "Current Match Style", style: props.QuickSearchCurrentTextMatchStyle, updateStyle: props.onSetCurrentTextMatchingStyle }) }) }), (0, jsx_runtime_1.jsx)(Tabs_1.Tabs.Content, { value: "cell", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:pt-2", children: (0, jsx_runtime_1.jsx)(QuickSearchStyleEditor, { api: props.api, helpText: "Optional background for whole matching cells. When unset, only matching text is highlighted.", headerText: "Cell Matching Style", style: props.QuickSearchCellMatchStyle, updateStyle: props.onSetCellMatchingStyle }) }) })] })) })] })] }) }));
33
32
  };
34
33
  function mapStateToProps(state, ownProps) {
35
34
  const quickSearch = state.QuickSearch;
@@ -160,6 +160,6 @@ const ScheduleBuilderWizard = (props) => {
160
160
  commit({ customCron: value, preset: 'custom' });
161
161
  };
162
162
  const timeValue = `${`${hour}`.padStart(2, '0')}:${`${minute}`.padStart(2, '0')}`;
163
- return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": "schedule-setup", 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: "Schedule" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Configure when this should run" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Frequency", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "frequency-recurring", className: "twa:mr-2", value: "recurring", checked: !isOneOff, onChange: (checked) => checked && handleFrequencyChange(false), children: "Recurring" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "frequency-one-off", checked: isOneOff, value: "oneoff", onChange: (checked) => checked && handleFrequencyChange(true), children: "One-off" })] }), isOneOff ? ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Date", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "one-off-date", className: "twa:w-[300px]", type: "date", placeholder: "Date", onChange: handleOneOffDateChange, value: oneOffDate }) })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Pattern", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[300px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", "data-name": "recurrence-preset", items: PRESET_OPTIONS, value: preset, placeholder: "Select pattern", onValueChange: handlePresetChange }) }) }), preset === 'selectedDays' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Days", children: daysMap.map((day) => ((0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": `day-${day.value}`, className: "twa:ml-2 twa:w-1/3", value: day.value, checked: selectedDays.includes(day.value), onChange: (checked) => handleDayChange(checked, day.value), children: day.label }, day.value))) })), preset === 'monthly' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Day of month", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "day-of-month", className: "twa:w-[120px]", type: "number", min: 1, max: 31, value: dayOfMonth, onChange: handleDayOfMonthChange }) })), preset === 'custom' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Cron expression", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "custom-cron", className: "twa:w-[300px]", placeholder: "minute hour day month weekday", value: customCron, onChange: handleCustomCronChange }) }))] })), (0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Time", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "time", className: "twa:w-[300px]", value: timeValue, type: "time", onChange: handleTimeChange }) })] }) })] }) }));
163
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": "schedule-setup", 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: "Schedule" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Configure when this should run" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: (0, jsx_runtime_1.jsxs)(FormLayout_1.default, { children: [(0, jsx_runtime_1.jsxs)(FormLayout_1.FormRow, { label: "Frequency", children: [(0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "frequency-recurring", className: "twa:mr-2", value: "recurring", checked: !isOneOff, onChange: (checked) => checked && handleFrequencyChange(false), children: "Recurring" }), (0, jsx_runtime_1.jsx)(Radio_1.default, { "data-name": "frequency-one-off", checked: isOneOff, value: "oneoff", onChange: (checked) => checked && handleFrequencyChange(true), children: "One-off" })] }), isOneOff ? ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Date", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "one-off-date", className: "twa:w-[300px]", type: "date", placeholder: "Date", onChange: handleOneOffDateChange, value: oneOffDate }) })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Pattern", children: (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:max-w-[300px]", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { className: "twa:w-full", "data-name": "recurrence-preset", items: PRESET_OPTIONS, value: preset, placeholder: "Select pattern", onValueChange: handlePresetChange }) }) }), preset === 'selectedDays' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Days", children: daysMap.map((day) => ((0, jsx_runtime_1.jsx)(CheckBox_1.CheckBox, { "data-name": `day-${day.value}`, className: "twa:ml-2 twa:w-1/3", value: day.value, checked: selectedDays.includes(day.value), onChange: (checked) => handleDayChange(checked, day.value), children: day.label }, day.value))) })), preset === 'monthly' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Day of month", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "day-of-month", className: "twa:w-[120px]", type: "number", min: 1, max: 31, value: dayOfMonth, onChange: handleDayOfMonthChange }) })), preset === 'custom' && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Cron expression", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "custom-cron", className: "twa:w-[300px]", placeholder: "minute hour day month weekday", value: customCron, onChange: handleCustomCronChange }) }))] })), (isOneOff || preset !== 'custom') && ((0, jsx_runtime_1.jsx)(FormLayout_1.FormRow, { label: "Time", children: (0, jsx_runtime_1.jsx)(AdaptableInput_1.default, { "data-name": "time", className: "twa:w-[300px]", value: timeValue, type: "time", onChange: handleTimeChange }) }))] }) })] }) }));
164
164
  };
165
165
  exports.ScheduleBuilderWizard = ScheduleBuilderWizard;
@@ -81,6 +81,6 @@ const ShortcutSettingsWizard = (props) => {
81
81
  result,
82
82
  };
83
83
  }, [shortcut.ShortcutOperation, shortcut.ShortcutValue]);
84
- return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": "shortcut-column-settings", children: (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: "Name" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Provide a unique name for the Shortcut" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "shortcut-name", className: "twa:max-w-[300px] twa:w-full", onChange: handleNameChange, placeholder: "Enter Name", value: shortcut.Name ?? '' }) })] }), (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: "Key" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Keyboard key that, when pressed, triggers the Shortcut" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { "data-name": "shortcut-key", ariaLabel: "Select Key", placeholder: "Select Key", items: optionKeys, className: "twa:max-w-[300px]", onValueChange: (key) => handleKeyChange(key), value: shortcut.ShortcutKey || undefined }) })] }), (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: "Operation" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Mathematical operation performed on the cell's current value" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { "data-name": "shortcut-operation", placeholder: "Select Operation", ariaLabel: "Select Operation", className: "twa:max-w-[300px]", items: optionActions, onValueChange: (operation) => handleOperationChange(operation), value: shortcut.ShortcutOperation }) })] }), (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: "Value" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Number used with the operation and current cell value to calculate the new total" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "shortcut-value", className: "twa:max-w-[300px] twa:w-full", onChange: handleOperationValueChange, placeholder: "Enter Number", type: "number", value: shortcut.ShortcutValue ?? '' }) })] }), preview ? ((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: "Example" }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: ["If a cell contains ", shortcutOperations_1.SHORTCUT_PREVIEW_EXAMPLE_VALUE, ", pressing this Shortcut would change it to:"] })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: 'error' in preview ? ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-2 twa:text-error", children: preview.error })) : ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-3 twa:font-medium", children: [preview.expression, " \u2192 ", preview.result] })) })] })) : null] }) }));
84
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Box, { "data-name": "shortcut-column-settings", children: (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: "Name" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Provide a unique name for the Shortcut" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "shortcut-name", className: "twa:max-w-[300px] twa:w-full", onChange: handleNameChange, placeholder: "Enter Name", value: shortcut.Name ?? '' }) })] }), (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: "Key" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Keyboard key that, when pressed, triggers the Shortcut" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { "data-name": "shortcut-key", ariaLabel: "Select Key", placeholder: "Select Key", items: optionKeys, className: "twa:max-w-[300px]", onValueChange: (key) => handleKeyChange(key), value: shortcut.ShortcutKey || undefined }) })] }), (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: "Operation" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Mathematical operation performed on the cell's current value" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { "data-name": "shortcut-operation", placeholder: "Select Operation", ariaLabel: "Select Operation", className: "twa:max-w-[300px]", items: optionActions, onValueChange: (operation) => handleOperationChange(operation), value: shortcut.ShortcutOperation }) })] }), (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: "Value" }), (0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: "Number used with the operation and current cell value to calculate the new total" })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { className: "twa:p-1", children: (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "shortcut-value", className: "twa:max-w-[300px] twa:w-full", onChange: handleOperationValueChange, placeholder: "Enter Number", type: "number", value: shortcut.ShortcutValue ?? '' }) })] }), preview ? ((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: "Example" }), (0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-xs twa:opacity-70 twa:font-normal twa:max-w-[520px]", children: ["If a cell contains ", shortcutOperations_1.SHORTCUT_PREVIEW_EXAMPLE_VALUE, ", pressing this Shortcut would change it to:"] })] }), (0, jsx_runtime_1.jsx)(Card_1.Card.Body, { children: 'error' in preview ? ((0, jsx_runtime_1.jsx)(Flex_1.Box, { className: "twa:text-2 twa:text-destructive", children: preview.error })) : ((0, jsx_runtime_1.jsxs)(Flex_1.Box, { className: "twa:text-3 twa:font-medium", children: [preview.expression, " \u2192 ", preview.result] })) })] })) : null] }) }));
85
85
  };
86
86
  exports.ShortcutSettingsWizard = ShortcutSettingsWizard;
@@ -15,7 +15,7 @@ const PreviewResultsPanel_1 = require("../Components/PreviewResultsPanel");
15
15
  const PreviewHelper_1 = require("../../Utilities/Helpers/PreviewHelper");
16
16
  const StringExtensions_1 = require("../../Utilities/Extensions/StringExtensions");
17
17
  const Input_1 = tslib_1.__importDefault(require("../../components/Input"));
18
- const DropdownButton_1 = tslib_1.__importDefault(require("../../components/DropdownButton"));
18
+ const DropdownButton_1 = require("../../components/DropdownButton");
19
19
  const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
20
20
  const Flex_1 = require("../../components/Flex");
21
21
  const preventDefault = (e) => e.preventDefault();
@@ -58,7 +58,7 @@ class SmartEditPopupComponent extends React.Component {
58
58
  if (e.key === 'Enter') {
59
59
  this.submit();
60
60
  }
61
- }, children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", "data-name": "smart-edit-operation", className: "twa:p-2", children: [(0, jsx_runtime_1.jsx)(DropdownButton_1.default, { "data-name": "smart-edit-operation-dropdown", items: operationMenuItems, columns: ['label'], onMouseDown: preventDefault, children: typeof this.props.SmartEditOperation === 'object'
61
+ }, children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", "data-name": "smart-edit-operation", className: "twa:p-2", children: [(0, jsx_runtime_1.jsx)(DropdownButton_1.NewDropdownButton, { "data-name": "smart-edit-operation-dropdown", items: operationMenuItems, onMouseDown: preventDefault, children: typeof this.props.SmartEditOperation === 'object'
62
62
  ? this.props.SmartEditOperation.name
63
63
  : this.props.SmartEditOperation }), (0, jsx_runtime_1.jsx)(Input_1.default, { "data-name": "smart-edit-value", value: this.props.SmartEditValue.toString(), className: "twa:mx-2", type: "number", placeholder: "Enter a Number", onChange: (e) => this.onSmartEditValueChange(e) }), (0, jsx_runtime_1.jsx)(SimpleButton_1.default, { "data-name": "smart-edit-apply-button", className: "twa:mr-2", tone: this.getButtonStyle(), variant: "raised", disabled: StringExtensions_1.StringExtensions.IsNullOrEmpty(`${this.props.SmartEditValue}`) ||
64
64
  (this.props.PreviewInfo &&
@@ -17,8 +17,8 @@ const AdaptablePopover_1 = require("../AdaptablePopover");
17
17
  const UIHelper_1 = require("../UIHelper");
18
18
  const react_redux_1 = require("react-redux");
19
19
  const Flex_1 = require("../../components/Flex");
20
- const clsx_1 = tslib_1.__importDefault(require("clsx"));
21
20
  const NewSelect_1 = require("../../components/NewSelect");
21
+ const utils_1 = require("../../lib/utils");
22
22
  class SmartEditViewPanelComponent extends React.Component {
23
23
  cleanupEvent;
24
24
  constructor(props) {
@@ -72,7 +72,7 @@ class SmartEditViewPanelComponent extends React.Component {
72
72
  !this.props.IsValidSelection ||
73
73
  this.props.api.layoutApi.isCurrentLayoutPivot() == true;
74
74
  const elementType = this.props.viewType === 'Toolbar' ? 'DashboardToolbar' : 'ToolPanel';
75
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", className: (0, clsx_1.default)(`ab-${elementType}__SmartEdit__wrap twa:gap-1 twa:flex-row`, {
75
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", className: (0, utils_1.cn)(`ab-${elementType}__SmartEdit__wrap twa:gap-1 twa:flex-row`, {
76
76
  'twa:flex-nowrap': this.props.viewType === 'Toolbar',
77
77
  'twa:flex-wrap': this.props.viewType !== 'Toolbar',
78
78
  }), flexWrap: this.props.viewType === 'ToolPanel' ? 'wrap' : 'nowrap', children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { className: "twa:gap-1", children: [(0, jsx_runtime_1.jsx)(NewSelect_1.SingleSelect, { ariaLabel: 'Select Smart Edit Operation', value: typeof this.props.SmartEditOperation === 'object'
@@ -11,6 +11,6 @@ const ExportDropdown_1 = require("./components/ExportDropdown");
11
11
  const Panel_1 = tslib_1.__importDefault(require("../../components/Panel"));
12
12
  const StateManagementPopup = (props) => {
13
13
  const baseClassName = 'ab-ManageState';
14
- return ((0, jsx_runtime_1.jsxs)(PopupPanel_1.PopupPanel, { className: baseClassName, headerText: props.moduleInfo.FriendlyName, glyphicon: props.moduleInfo.Glyph, infoLink: props.moduleInfo.HelpPage, infoLinkDisabled: !props.api.internalApi.isDocumentationLinksDisplayed(), children: [(0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "user-state", header: 'User State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:mb-2", children: 'Clear all current user state that has been persisted' }), (0, jsx_runtime_1.jsx)(HelpBlock_1.default, { style: { color: 'var(--ab-color-warn)' }, children: 'This will cause this window to close and any State you have previously created will be lost, and the Initial Adaptable State will be reapplied' }), (0, jsx_runtime_1.jsx)(ClearButton_1.ClearButton, { "data-name": "clear-user-state-button", tone: "info", variant: "raised", className: "twa:mt-2", accessLevel: props.accessLevel, onClick: () => props.api.stateApi.reloadInitialState(), children: "Clear User State" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "initial-state", header: 'Initial Adaptable State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:mt-2", children: 'Load Initial Adaptable State (from a .json file) - this will cause this window to close' }), ' ', (0, jsx_runtime_1.jsx)(LoadButton_1.LoadButton, { tone: "info", variant: "raised", className: "twa:mt-2", accessLevel: props.accessLevel, onLoad: (json) => props.api.stateApi.reloadInitialState(json), "data-name": "load-initial-state-button", children: "Load Initial Adaptable State" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "adaptable-state", header: 'Export Adaptable State', children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:my-2", children: 'Exports the currently persisted Adaptable State' }), ' ', (0, jsx_runtime_1.jsx)(ExportDropdown_1.ExportDropdown, { api: props.api, type: "adaptableState", className: "twa:mr-3 twa:flex-1 twa:max-w-none", columns: ['label'], "data-name": "export-adaptable-state-dropdown", children: "Select Export Destination" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "initial-state", header: 'Export Initial Adaptable State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:my-2", children: 'Exports the Initial Adaptable State which was provided at design time' }), ' ', (0, jsx_runtime_1.jsx)(ExportDropdown_1.ExportDropdown, { api: props.api, type: "initialState", className: "twa:mr-3 twa:flex-1 twa:max-w-none", columns: ['label'], "data-name": "export-initial-state-dropdown", children: "Select Export Destination" })] })] }));
14
+ return ((0, jsx_runtime_1.jsxs)(PopupPanel_1.PopupPanel, { className: baseClassName, headerText: props.moduleInfo.FriendlyName, glyphicon: props.moduleInfo.Glyph, infoLink: props.moduleInfo.HelpPage, infoLinkDisabled: !props.api.internalApi.isDocumentationLinksDisplayed(), children: [(0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "user-state", header: 'User State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:mb-2", children: 'Clear all current user state that has been persisted' }), (0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:text-warn twa:mb-2", children: 'This will cause this window to close and any State you have previously created will be lost, and the Initial Adaptable State will be reapplied' }), (0, jsx_runtime_1.jsx)(ClearButton_1.ClearButton, { "data-name": "clear-user-state-button", tone: "info", variant: "raised", accessLevel: props.accessLevel, onClick: () => props.api.stateApi.reloadInitialState(), children: "Clear User State" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "initial-state", header: 'Initial Adaptable State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:mb-2", children: 'Load Initial Adaptable State (from a .json file) - this will cause this window to close' }), ' ', (0, jsx_runtime_1.jsx)(LoadButton_1.LoadButton, { tone: "info", variant: "raised", accessLevel: props.accessLevel, onLoad: (json) => props.api.stateApi.reloadInitialState(json), "data-name": "load-initial-state-button", children: "Load Initial Adaptable State" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "adaptable-state", header: 'Export Adaptable State', children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:my-2", children: 'Exports the currently persisted Adaptable State' }), ' ', (0, jsx_runtime_1.jsx)(ExportDropdown_1.ExportDropdown, { api: props.api, type: "adaptableState", className: "twa:mr-3 twa:flex-1 twa:max-w-none", "data-name": "export-adaptable-state-dropdown", children: "Select Export Destination" })] }), (0, jsx_runtime_1.jsxs)(Panel_1.default, { className: `${baseClassName}__panel twa:mt-3 twa:mr-2 twa:mb-2 twa:h-auto twa:rounded-none`, "data-name": "initial-state", header: 'Export Initial Adaptable State', variant: "default", children: [(0, jsx_runtime_1.jsx)(HelpBlock_1.default, { className: "twa:my-2", children: 'Exports the Initial Adaptable State which was provided at design time' }), ' ', (0, jsx_runtime_1.jsx)(ExportDropdown_1.ExportDropdown, { api: props.api, type: "initialState", className: "twa:mr-3 twa:flex-1 twa:max-w-none", "data-name": "export-initial-state-dropdown", children: "Select Export Destination" })] })] }));
15
15
  };
16
16
  exports.StateManagementPopup = StateManagementPopup;
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { AdaptableApi } from '../../../../types';
3
- import { DropdownButtonProps } from '../../../components/DropdownButton';
4
- export interface ExportDropdownProps extends Omit<DropdownButtonProps, 'options' | 'value'> {
3
+ import { type NewDropdownButtonProps } from '../../../components/DropdownButton';
4
+ export interface ExportDropdownProps extends Omit<NewDropdownButtonProps, 'items'> {
5
5
  api: AdaptableApi;
6
6
  type: 'adaptableState' | 'initialState';
7
7
  }