@adaptabletools/adaptable 24.0.0-canary.7 → 24.0.0-canary.9

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 (261) hide show
  1. package/agGrid.d.ts +2 -3
  2. package/agGrid.js +2 -3
  3. package/aql.d.ts +29 -1
  4. package/aql.js +49 -1
  5. package/devtools.d.ts +55 -1
  6. package/index.css +7 -19
  7. package/index.d.ts +2 -3
  8. package/index.js +2 -3
  9. package/package.json +1 -1
  10. package/src/AdaptableOptions/ActionColumnOptions.d.ts +24 -0
  11. package/src/AdaptableOptions/AdaptableOptions.d.ts +97 -69
  12. package/src/AdaptableOptions/AdaptablePlugin.d.ts +113 -1
  13. package/src/AdaptableOptions/AlertOptions.d.ts +0 -2
  14. package/src/AdaptableOptions/ChartingOptions.d.ts +11 -5
  15. package/src/AdaptableOptions/ColumnMenuOptions.d.ts +30 -0
  16. package/src/AdaptableOptions/ColumnOptions.d.ts +0 -2
  17. package/src/AdaptableOptions/CommentOptions.d.ts +12 -4
  18. package/src/AdaptableOptions/ContextMenuOptions.d.ts +31 -1
  19. package/src/AdaptableOptions/DashboardOptions.d.ts +0 -3
  20. package/src/AdaptableOptions/DataChangeHistoryOptions.d.ts +3 -2
  21. package/src/AdaptableOptions/DefaultAdaptableOptions.js +6 -0
  22. package/src/AdaptableOptions/EditOptions.d.ts +18 -2
  23. package/src/AdaptableOptions/ExportOptions.d.ts +23 -0
  24. package/src/AdaptableOptions/ExpressionOptions.d.ts +0 -3
  25. package/src/AdaptableOptions/Fdc3Options.d.ts +77 -3
  26. package/src/AdaptableOptions/FilterOptions.d.ts +13 -8
  27. package/src/AdaptableOptions/LayoutOptions.d.ts +16 -3
  28. package/src/AdaptableOptions/NotificationsOptions.d.ts +0 -1
  29. package/src/AdaptableOptions/QuickSearchOptions.d.ts +0 -2
  30. package/src/AdaptableOptions/RowFormOptions.d.ts +9 -0
  31. package/src/AdaptableOptions/SettingsPanelOptions.d.ts +10 -1
  32. package/src/AdaptableOptions/ToolPanelOptions.d.ts +0 -1
  33. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +87 -2
  34. package/src/AdaptableState/AdaptableState.d.ts +98 -4
  35. package/src/AdaptableState/AlertState.d.ts +20 -21
  36. package/src/AdaptableState/ApplicationState.d.ts +5 -3
  37. package/src/AdaptableState/BaseState.d.ts +9 -2
  38. package/src/AdaptableState/CalculatedColumnState.d.ts +10 -8
  39. package/src/AdaptableState/ChartingState.d.ts +10 -5
  40. package/src/AdaptableState/CommentState.d.ts +10 -4
  41. package/src/AdaptableState/Common/AdaptableAlert.d.ts +6 -2
  42. package/src/AdaptableState/Common/AdaptableButton.d.ts +3 -1
  43. package/src/AdaptableState/Common/AdaptableColumn.d.ts +38 -1
  44. package/src/AdaptableState/Common/AdaptableFilterState.d.ts +3 -1
  45. package/src/AdaptableState/Common/AdaptableFlashingCell.d.ts +3 -1
  46. package/src/AdaptableState/Common/AdaptableForm.d.ts +9 -0
  47. package/src/AdaptableState/Common/AdaptableFormat.d.ts +27 -1
  48. package/src/AdaptableState/Common/AdaptableIcon.d.ts +4 -2
  49. package/src/AdaptableState/Common/AdaptableObject.d.ts +9 -1
  50. package/src/AdaptableState/Common/AdaptableQuery.d.ts +9 -0
  51. package/src/AdaptableState/Common/AdaptableStyle.d.ts +6 -8
  52. package/src/AdaptableState/Common/AggregationColumns.d.ts +15 -6
  53. package/src/AdaptableState/Common/ButtonStyle.d.ts +3 -1
  54. package/src/AdaptableState/Common/CellDataChangedInfo.d.ts +6 -2
  55. package/src/AdaptableState/Common/CellHighlightInfo.d.ts +4 -2
  56. package/src/AdaptableState/Common/CellSummary.d.ts +33 -0
  57. package/src/AdaptableState/Common/ColumnFilter.d.ts +3 -1
  58. package/src/AdaptableState/Common/ColumnHighlightInfo.d.ts +4 -2
  59. package/src/AdaptableState/Common/ColumnScope.d.ts +32 -1
  60. package/src/AdaptableState/Common/ColumnSetupInfo.d.ts +17 -0
  61. package/src/AdaptableState/Common/ColumnSort.d.ts +3 -1
  62. package/src/AdaptableState/Common/CompactCalculatedColumnEditorInfo.d.ts +3 -0
  63. package/src/AdaptableState/Common/DataChangedScope.d.ts +3 -1
  64. package/src/AdaptableState/Common/DataUpdateConfig.d.ts +3 -1
  65. package/src/AdaptableState/Common/Entitlement.d.ts +4 -2
  66. package/src/AdaptableState/Common/Enums.d.ts +21 -0
  67. package/src/AdaptableState/Common/ExtendedLayout.d.ts +3 -1
  68. package/src/AdaptableState/Common/Fdc3Context.d.ts +9 -0
  69. package/src/AdaptableState/Common/Fdc3Intent.d.ts +6 -0
  70. package/src/AdaptableState/Common/GridFilter.d.ts +3 -1
  71. package/src/AdaptableState/Common/MenuItem.d.ts +9 -0
  72. package/src/AdaptableState/Common/RowHighlightInfo.d.ts +4 -2
  73. package/src/AdaptableState/Common/RowScope.d.ts +3 -1
  74. package/src/AdaptableState/Common/RowSummary.d.ts +14 -4
  75. package/src/AdaptableState/Common/RowsHighlightInfo.d.ts +5 -3
  76. package/src/AdaptableState/Common/Schedule.d.ts +10 -2
  77. package/src/AdaptableState/Common/SpecialColumnSettings.d.ts +3 -1
  78. package/src/AdaptableState/Common/SystemStatusMessageInfo.d.ts +4 -2
  79. package/src/AdaptableState/Common/TransposeConfig.d.ts +1 -1
  80. package/src/AdaptableState/Common/Types.d.ts +9 -0
  81. package/src/AdaptableState/CustomSortState.d.ts +8 -5
  82. package/src/AdaptableState/DashboardState.d.ts +14 -10
  83. package/src/AdaptableState/ExportState.d.ts +12 -4
  84. package/src/AdaptableState/FlashingCellState.d.ts +8 -5
  85. package/src/AdaptableState/FormatColumnState.d.ts +28 -8
  86. package/src/AdaptableState/FreeTextColumnState.d.ts +14 -8
  87. package/src/AdaptableState/IPushPullState.d.ts +39 -3
  88. package/src/AdaptableState/InitialState.d.ts +9 -9
  89. package/src/AdaptableState/InternalState.d.ts +183 -3
  90. package/src/AdaptableState/LayoutState.d.ts +64 -21
  91. package/src/AdaptableState/NamedQueryState.d.ts +16 -4
  92. package/src/AdaptableState/NoteState.d.ts +7 -3
  93. package/src/AdaptableState/OpenFinState.d.ts +12 -2
  94. package/src/AdaptableState/PlusMinusState.d.ts +8 -4
  95. package/src/AdaptableState/PopupState.d.ts +29 -1
  96. package/src/AdaptableState/QuickSearchState.d.ts +5 -3
  97. package/src/AdaptableState/Selection/GridCell.d.ts +5 -3
  98. package/src/AdaptableState/Selection/GridCellRange.d.ts +8 -7
  99. package/src/AdaptableState/Selection/SelectedCellInfo.d.ts +1 -1
  100. package/src/AdaptableState/ShortcutState.d.ts +7 -3
  101. package/src/AdaptableState/StatusBarState.d.ts +7 -6
  102. package/src/AdaptableState/StyledColumnState.d.ts +46 -14
  103. package/src/AdaptableState/TeamSharingState.d.ts +46 -2
  104. package/src/AdaptableState/ThemeState.d.ts +24 -2
  105. package/src/AdaptableState/ToolPanelState.d.ts +10 -5
  106. package/src/AdaptableState/UserInterfaceState.d.ts +2 -2
  107. package/src/AdaptableState/Uuid.d.ts +6 -0
  108. package/src/Api/ActionColumnApi.d.ts +3 -1
  109. package/src/Api/AdaptableApi.d.ts +54 -50
  110. package/src/Api/AlertApi.d.ts +20 -12
  111. package/src/Api/ApplicationApi.d.ts +6 -2
  112. package/src/Api/BulkUpdateApi.d.ts +2 -1
  113. package/src/Api/CalculatedColumnApi.d.ts +4 -1
  114. package/src/Api/CalendarApi.d.ts +10 -0
  115. package/src/Api/CellSummaryApi.d.ts +9 -3
  116. package/src/Api/ChartingApi.d.ts +22 -7
  117. package/src/Api/ColumnApi.d.ts +71 -4
  118. package/src/Api/ColumnFilterApi.d.ts +13 -3
  119. package/src/Api/ColumnMenuApi.d.ts +13 -2
  120. package/src/Api/ColumnScopeApi.d.ts +27 -1
  121. package/src/Api/CommentApi.d.ts +10 -7
  122. package/src/Api/ContextMenuApi.d.ts +11 -1
  123. package/src/Api/CustomSortApi.d.ts +6 -2
  124. package/src/Api/DashboardApi.d.ts +30 -9
  125. package/src/Api/DataChangeHistoryApi.d.ts +9 -3
  126. package/src/Api/DataImportApi.d.ts +1 -1
  127. package/src/Api/EntitlementApi.d.ts +6 -1
  128. package/src/Api/EventApi.d.ts +67 -19
  129. package/src/Api/Events/AdaptableReady.d.ts +6 -2
  130. package/src/Api/Events/AdaptableStateChanged.d.ts +9 -5
  131. package/src/Api/Events/AdaptableStateReloaded.d.ts +7 -3
  132. package/src/Api/Events/AlertFired.d.ts +8 -2
  133. package/src/Api/Events/BeforeAdaptableStateChange.d.ts +6 -2
  134. package/src/Api/Events/CalculatedColumnChanged.d.ts +7 -3
  135. package/src/Api/Events/CellChanged.d.ts +6 -2
  136. package/src/Api/Events/CellSelectionChanged.d.ts +6 -2
  137. package/src/Api/Events/ChartChanged.d.ts +16 -8
  138. package/src/Api/Events/CommentChanged.d.ts +8 -2
  139. package/src/Api/Events/CustomToolbarConfigured.d.ts +6 -2
  140. package/src/Api/Events/DashboardChanged.d.ts +27 -6
  141. package/src/Api/Events/DataImported.d.ts +8 -4
  142. package/src/Api/Events/DataSetSelected.d.ts +6 -2
  143. package/src/Api/Events/Fdc3MessageInfo.d.ts +14 -4
  144. package/src/Api/Events/FlashingCellDisplayed.d.ts +6 -2
  145. package/src/Api/Events/GridFilterApplied.d.ts +11 -3
  146. package/src/Api/Events/GridSorted.d.ts +6 -2
  147. package/src/Api/Events/LayoutChanged.d.ts +36 -5
  148. package/src/Api/Events/LiveDataChanged.d.ts +21 -5
  149. package/src/Api/Events/NoteChanged.d.ts +5 -1
  150. package/src/Api/Events/ReportScheduleRan.d.ts +7 -3
  151. package/src/Api/Events/RowChanged.d.ts +6 -2
  152. package/src/Api/Events/RowFormSubmitted.d.ts +28 -12
  153. package/src/Api/Events/RowSelectionChanged.d.ts +6 -2
  154. package/src/Api/Events/SystemStatusMessageDisplayed.d.ts +6 -2
  155. package/src/Api/Events/TeamSharingEntityChanged.d.ts +6 -2
  156. package/src/Api/Events/ThemeSelected.d.ts +6 -2
  157. package/src/Api/ExportApi.d.ts +59 -32
  158. package/src/Api/ExpressionApi.d.ts +24 -1
  159. package/src/Api/Fdc3Api.d.ts +16 -3
  160. package/src/Api/FlashingCellApi.d.ts +6 -1
  161. package/src/Api/FormatColumnApi.d.ts +18 -11
  162. package/src/Api/FreeTextColumnApi.d.ts +4 -2
  163. package/src/Api/GridApi.d.ts +92 -19
  164. package/src/Api/IPushPullApi.d.ts +19 -2
  165. package/src/Api/Internal/EventInternalApi.d.ts +2 -1
  166. package/src/Api/Internal/EventInternalApi.js +7 -0
  167. package/src/Api/InteropioPluginApi.d.ts +2 -1
  168. package/src/Api/LayoutApi.d.ts +29 -15
  169. package/src/Api/NamedQueryApi.d.ts +10 -6
  170. package/src/Api/NoteApi.d.ts +15 -11
  171. package/src/Api/OpenFinApi.d.ts +8 -2
  172. package/src/Api/OptionsApi.d.ts +43 -1
  173. package/src/Api/PluginsApi.d.ts +6 -1
  174. package/src/Api/PlusMinusApi.d.ts +2 -1
  175. package/src/Api/QuickSearchApi.d.ts +6 -1
  176. package/src/Api/RowFormApi.d.ts +8 -7
  177. package/src/Api/ShortcutApi.d.ts +3 -1
  178. package/src/Api/SmartEditApi.d.ts +4 -1
  179. package/src/Api/StateApi.d.ts +30 -2
  180. package/src/Api/StatusBarApi.d.ts +2 -0
  181. package/src/Api/StyledColumnApi.d.ts +23 -12
  182. package/src/Api/SystemStatusApi.d.ts +18 -6
  183. package/src/Api/TeamSharingApi.d.ts +8 -1
  184. package/src/Api/ThemeApi.d.ts +17 -8
  185. package/src/Api/ToolPanelApi.d.ts +12 -7
  186. package/src/Api/UserInterfaceApi.d.ts +10 -1
  187. package/src/Redux/Store/AdaptableStore.js +1 -1
  188. package/src/View/Filter/ColumnFilter/ColumnFilterNew.js +14 -9
  189. package/src/agGrid/Adaptable.d.ts +0 -12
  190. package/src/agGrid/Adaptable.js +0 -52
  191. package/src/agGrid/AdaptableFrameworkComponent.d.ts +12 -0
  192. package/src/agGrid/AdaptableLogger.d.ts +74 -1
  193. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +3 -0
  194. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +3 -0
  195. package/src/agGrid/index.d.ts +1 -6
  196. package/src/agGrid/index.js +1 -3
  197. package/src/aql/ExpressionEvaluation.d.ts +27 -0
  198. package/src/aql/types.d.ts +22 -0
  199. package/src/components/ColorField/index.d.ts +2 -3
  200. package/src/components/ColorField/index.js +22 -2
  201. package/src/components/aql/QueryBuilder/GroupEditor.js +1 -1
  202. package/src/components/aql/QueryBuilder/QueryBuilder.d.ts +5 -0
  203. package/src/components/aql/QueryBuilder/QueryBuilder.js +1 -1
  204. package/src/components/aql/QueryBuilder/context.d.ts +7 -0
  205. package/src/components/aql/QueryBuilder/context.js +3 -1
  206. package/src/env.js +2 -2
  207. package/src/migration/legacyAdaptableQuery.d.ts +29 -4
  208. package/src/setupDevTools.js +223 -0
  209. package/src/types.d.ts +1 -3
  210. package/tsconfig.esm.tsbuildinfo +1 -1
  211. package/vendor/components/ColorField/index.d.ts +12 -2
  212. package/vendor/components/ColorField/index.d.ts.map +1 -1
  213. package/vendor/components/ColorField/index.js +3 -4
  214. package/vendor/components/ColorField/index.js.map +1 -1
  215. package/vendor/components/ColorPicker/index.d.ts +50 -11
  216. package/vendor/components/ColorPicker/index.d.ts.map +1 -1
  217. package/vendor/components/ColorPicker/index.js +172 -54
  218. package/vendor/components/ColorPicker/index.js.map +1 -1
  219. package/vendor/components/ColorPicker/themeColors.d.ts +42 -1
  220. package/vendor/components/ColorPicker/themeColors.d.ts.map +1 -1
  221. package/vendor/components/ColorPicker/themeColors.js +131 -1
  222. package/vendor/components/ColorPicker/themeColors.js.map +1 -1
  223. package/vendor/components/index.css +6 -0
  224. package/vendor/components/index.d.ts +2 -2
  225. package/vendor/components/index.d.ts.map +1 -1
  226. package/vendor/components/index.js +1 -1
  227. package/vendor/components/index.js.map +1 -1
  228. package/src/AdaptableInterfaces/AdaptableNoCodeWizard.d.ts +0 -99
  229. package/src/AdaptableInterfaces/AdaptableNoCodeWizard.js +0 -1
  230. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableConfig.d.ts +0 -15
  231. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableConfig.js +0 -1
  232. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.d.ts +0 -19
  233. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +0 -337
  234. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.d.ts +0 -5
  235. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.js +0 -4
  236. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.d.ts +0 -30
  237. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +0 -162
  238. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.d.ts +0 -18
  239. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.js +0 -12
  240. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.d.ts +0 -8
  241. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +0 -131
  242. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.d.ts +0 -8
  243. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +0 -30
  244. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.d.ts +0 -6
  245. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +0 -80
  246. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.d.ts +0 -6
  247. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +0 -100
  248. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.d.ts +0 -11
  249. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +0 -8
  250. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/index.d.ts +0 -2
  251. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/index.js +0 -2
  252. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/useSelection.d.ts +0 -21
  253. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/useSelection.js +0 -63
  254. package/src/View/AdaptableWizardView/Utilities/Utils.d.ts +0 -1
  255. package/src/View/AdaptableWizardView/Utilities/Utils.js +0 -21
  256. package/src/View/AdaptableWizardView/Utilities/helper.d.ts +0 -19
  257. package/src/View/AdaptableWizardView/Utilities/helper.js +0 -81
  258. package/src/View/AdaptableWizardView/Wizard.d.ts +0 -57
  259. package/src/View/AdaptableWizardView/Wizard.js +0 -98
  260. package/src/View/AdaptableWizardView/index.d.ts +0 -4
  261. package/src/View/AdaptableWizardView/index.js +0 -4
@@ -1,337 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from 'react';
3
- import useSelection from './useSelection';
4
- import { CheckBox } from '../../../components/CheckBox';
5
- import Radio from '../../../components/Radio';
6
- import Dropdown from '../../../components/Dropdown';
7
- import Input from '../../../components/Input';
8
- import { useRef, useState } from 'react';
9
- import StringExtensions from '../../../Utilities/Extensions/StringExtensions';
10
- import { DataSource, InfiniteTableGrid, } from '../../../components/InfiniteTable';
11
- import { Box, Flex } from '../../../components/Flex';
12
- import { throttle } from '../../../Utilities/Helpers/TimingHelper';
13
- import { twMerge } from '../../../twMerge';
14
- const dataTypes = [
15
- {
16
- value: 'text',
17
- label: 'Text (string)',
18
- },
19
- { value: 'number', label: 'Number' },
20
- {
21
- value: 'date',
22
- label: 'Date',
23
- },
24
- {
25
- value: 'boolean',
26
- label: 'Boolean',
27
- },
28
- ];
29
- const inputStyle = {
30
- width: '100%',
31
- minWidth: 80,
32
- textAlign: 'start',
33
- };
34
- const useForceRender = () => {
35
- const [, setNow] = useState(Date.now());
36
- return () => {
37
- setNow(Date.now());
38
- };
39
- };
40
- const ThrottledInput = React.memo((props) => {
41
- const [stateValue, setStateValue] = useState(props.value);
42
- const throttleOnChange = React.useRef(throttle(props.onChange, 600, { leading: false }));
43
- const handleChange = React.useCallback((event) => {
44
- const newValue = event.target.value;
45
- setStateValue(newValue);
46
- throttleOnChange.current(newValue);
47
- }, []);
48
- React.useEffect(() => {
49
- setStateValue(props.value);
50
- }, [props.value]);
51
- return _jsx(Input, { style: props.style, value: stateValue, onChange: handleChange });
52
- });
53
- const tableDOMProps = {
54
- style: {
55
- height: '100%',
56
- minWidth: '10rem',
57
- minHeight: 600,
58
- },
59
- };
60
- const ColumnsList = ({ columns: cols, handle, onValidityChange, onChange, onSelectionChange, selectedColumns, theme, }) => {
61
- const rerender = useForceRender();
62
- const columnsRef = useRef(cols);
63
- const silentSetColumns = (columns) => {
64
- columnsRef.current = columns;
65
- onChange?.(columns);
66
- };
67
- const setColumns = (columns) => {
68
- silentSetColumns(columns);
69
- rerender();
70
- };
71
- const getColumns = () => columnsRef.current;
72
- const columns = columnsRef.current;
73
- const onColumnChange = (col, value, property) => {
74
- col = { ...col, [property]: value };
75
- const cols = getColumns().map((c) => {
76
- if (c.field === col.field) {
77
- return col;
78
- }
79
- return c;
80
- });
81
- setColumns(cols);
82
- };
83
- const onColumnBatchChange = (value, property) => {
84
- const cols = getColumns().map((c) => ({ ...c, [property]: value }));
85
- setColumns(cols);
86
- };
87
- const setColumnCaption = (caption, field) => {
88
- const cols = getColumns().map((c) => {
89
- if (c.field === field) {
90
- const newCol = { ...c, caption };
91
- return newCol;
92
- }
93
- return c;
94
- });
95
- setColumns(cols);
96
- };
97
- const onColumnTypeChange = (col, type) => {
98
- const cols = getColumns().map((c) => {
99
- if (c.field === col.field) {
100
- return { ...c, type };
101
- }
102
- return c;
103
- });
104
- setColumns(cols);
105
- };
106
- const [primaryKeyField, setPrimaryKeyField] = React.useState(columns[0].field);
107
- const { selected: includedColumnsMap, isSelected: isIncludedColumn, isAllSelected: isAllIncludedColumns, isNoneSelected: isNoneIncludedColumns, selectColumn: includeColumn, deselectColumn: excludeColumn, selectAll: includeAllColumns, deselectAll: excludeAllColumns, } = useSelection(columns, selectedColumns ?? true, null, { onChange: onSelectionChange });
108
- handle.current = {
109
- getColumns: () => getColumns().filter((col) => isIncludedColumn(col.field)),
110
- getPrimaryKey: () => primaryKeyField,
111
- };
112
- const { isSelected: isSortableColumn, isAllSelected: isAllSortableColumns, isNoneSelected: isNoneSortableColumns, selectColumn: setSortableColumn, deselectColumn: setUnsortableColumn, selectAll: setAllSortable, deselectAll: setAllUnsortable, } = useSelection(columns, true, 'sortable', {
113
- onBatchChange: (flag) => {
114
- onColumnBatchChange(flag, 'sortable');
115
- },
116
- onChange: (col, flag) => {
117
- onColumnChange(col, flag, 'sortable');
118
- },
119
- });
120
- const { isSelected: isGroupableColumn, isAllSelected: isAllGroupableColumns, isNoneSelected: isNoneGroupableColumns, selectColumn: setGroupableColumn, deselectColumn: setUngroupableColumn, selectAll: setAllGroupable, deselectAll: setAllUngroupable, } = useSelection(columns, true, 'enableRowGroup', {
121
- onBatchChange: (flag) => {
122
- onColumnBatchChange(flag, 'enableRowGroup');
123
- },
124
- onChange: (col, flag) => {
125
- onColumnChange(col, flag, 'enableRowGroup');
126
- },
127
- });
128
- const { isSelected: isResizableColumn, isAllSelected: isAllResizableColumns, isNoneSelected: isNoneResizableColumns, selectColumn: setResizableColumn, deselectColumn: setUnresizableColumn, selectAll: setAllResizable, deselectAll: setAllUnresizable, } = useSelection(columns, true, 'resizable', {
129
- onBatchChange: (flag) => {
130
- onColumnBatchChange(flag, 'resizable');
131
- },
132
- onChange: (col, flag) => {
133
- onColumnChange(col, flag, 'resizable');
134
- },
135
- });
136
- const { isSelected: isEditableColumn, isAllSelected: isAllEditableColumns, isNoneSelected: isNoneEditableColumns, selectColumn: setEditableColumn, deselectColumn: setUneditableColumn, selectAll: setAllEditable, deselectAll: setAllUneditable, } = useSelection(columns, true, 'editable', {
137
- onBatchChange: (flag) => {
138
- onColumnBatchChange(flag, 'editable');
139
- },
140
- onChange: (col, flag) => {
141
- onColumnChange(col, flag, 'editable');
142
- },
143
- });
144
- const { isSelected: isFilterableColumn, isAllSelected: isAllFilterableColumns, isNoneSelected: isNoneFilterableColumns, selectColumn: setFilterableColumn, deselectColumn: setUnFilterableColumn, selectAll: setAllFilterable, deselectAll: setAllUnfilterable, } = useSelection(columns, true, 'filter', {
145
- onBatchChange: (flag) => {
146
- onColumnBatchChange(flag, 'filter');
147
- },
148
- onChange: (col, flag) => {
149
- onColumnChange(col, flag, 'filter');
150
- },
151
- });
152
- const allIncluded = isAllIncludedColumns();
153
- const allExcluded = isNoneIncludedColumns();
154
- React.useEffect(() => {
155
- onValidityChange(isIncludedColumn(primaryKeyField));
156
- }, [includedColumnsMap, primaryKeyField]);
157
- const data = columns;
158
- const CellWrapper = (props) => {
159
- return (_jsx(Flex, { ...props, style: {
160
- ...props.style,
161
- position: 'absolute',
162
- textAlign: 'center',
163
- top: 0,
164
- left: 0,
165
- height: '100%',
166
- width: '100%',
167
- whiteSpace: 'normal',
168
- }, justifyContent: "center", alignItems: "center", children: props.children }));
169
- };
170
- const HeaderCellWrapper = (props) => (_jsx(CellWrapper, { ...props, className: twMerge('twa:text-3 twa:font-bold', props.className) }));
171
- const HeaderWithCheckbox = (props) => {
172
- const { label, onChange, checked, ...flexProps } = props;
173
- return (_jsxs(HeaderCellWrapper, { ...flexProps, flexDirection: "column", children: [_jsx(Box, { children: label }), _jsx(Box, { className: "twa:text-center twa:ml-1", children: _jsx(CheckBox, { checked: checked, onChange: onChange }) })] }));
174
- };
175
- const columnsMap = {
176
- pk: {
177
- header: () => _jsx(HeaderCellWrapper, { children: "Primary Key" }),
178
- maxWidth: 80,
179
- defaultSortable: false,
180
- renderMenuIcon: false,
181
- render: (params) => {
182
- const { data } = params;
183
- const column = data;
184
- const isPrimaryKey = column?.field === primaryKeyField;
185
- return (_jsx(Radio, { checked: isPrimaryKey, onChange: (checked) => {
186
- if (checked && isIncludedColumn(column.field)) {
187
- setPrimaryKeyField(column.field);
188
- }
189
- } }));
190
- },
191
- },
192
- included: {
193
- maxWidth: 80,
194
- resizable: true,
195
- renderMenuIcon: false,
196
- header: () => (_jsx(HeaderWithCheckbox, { label: "Included", checked: allIncluded ? true : allExcluded ? false : null, onChange: (allIncluded) => {
197
- if (allIncluded) {
198
- includeAllColumns();
199
- }
200
- else {
201
- excludeAllColumns();
202
- }
203
- } })),
204
- render: (params) => {
205
- const column = params.data;
206
- return (_jsx(CellWrapper, { children: _jsx(CheckBox, { checked: isIncludedColumn(column.field), onChange: (included) => {
207
- if (included) {
208
- includeColumn(column.field);
209
- }
210
- else {
211
- excludeColumn(column.field);
212
- }
213
- } }) }));
214
- },
215
- },
216
- field: {
217
- header: _jsx(HeaderCellWrapper, { children: "Field" }),
218
- field: 'field',
219
- minWidth: 150,
220
- renderMenuIcon: false,
221
- render: (params) => {
222
- const column = params.data;
223
- const humanized = StringExtensions.Humanize(column.field);
224
- return (_jsx(Box, { className: "twa:p-2", children: _jsx(ThrottledInput, { style: inputStyle, value: column.caption != undefined ? column.caption : humanized, placeholder: humanized, onChange: (value) => {
225
- setColumnCaption(value, column.field);
226
- } }, column.field) }));
227
- },
228
- },
229
- type: {
230
- header: _jsx(HeaderCellWrapper, { children: "Type" }),
231
- maxWidth: 140,
232
- renderMenuIcon: false,
233
- render: (params) => {
234
- const column = params.data;
235
- return (_jsx(CellWrapper, { className: "twa:px-1", children: _jsx(Dropdown, { style: inputStyle, showClearButton: false, options: dataTypes, value: column?.type ?? '', onChange: onColumnTypeChange.bind(null, column) }) }));
236
- },
237
- },
238
- sortable: {
239
- renderMenuIcon: false,
240
- header: (_jsx(HeaderWithCheckbox, { label: "Sortable", checked: isAllSortableColumns() ? true : isNoneSortableColumns() ? false : null, onChange: (allSortable) => {
241
- if (allSortable) {
242
- setAllSortable();
243
- }
244
- else {
245
- setAllUnsortable();
246
- }
247
- } })),
248
- render: (params) => {
249
- const column = params.data;
250
- return (_jsx(CheckBox, { checked: isSortableColumn(column.field), onChange: (sortable) => {
251
- sortable ? setSortableColumn(column.field) : setUnsortableColumn(column.field);
252
- } }));
253
- },
254
- },
255
- editable: {
256
- renderMenuIcon: false,
257
- header: (_jsx(HeaderWithCheckbox, { label: "Editable", checked: isAllEditableColumns() ? true : isNoneEditableColumns() ? false : null, onChange: (allEditable) => {
258
- if (allEditable) {
259
- setAllEditable();
260
- }
261
- else {
262
- setAllUneditable();
263
- }
264
- } })),
265
- render: (params) => {
266
- const col = params.data;
267
- return (_jsx(CellWrapper, { children: _jsx(CheckBox, { checked: isEditableColumn(col.field), onChange: (editable) => {
268
- editable ? setEditableColumn(col.field) : setUneditableColumn(col.field);
269
- } }) }));
270
- },
271
- },
272
- resizable: {
273
- renderMenuIcon: false,
274
- header: (_jsx(HeaderWithCheckbox, { label: "Resizable", checked: isAllResizableColumns() ? true : isNoneResizableColumns() ? false : null, onChange: (allResizable) => {
275
- if (allResizable) {
276
- setAllResizable();
277
- }
278
- else {
279
- setAllUnresizable();
280
- }
281
- } })),
282
- render: (params) => {
283
- const col = params.data;
284
- return (_jsx(CellWrapper, { children: _jsx(CheckBox, { checked: isResizableColumn(col.field), onChange: (resizable) => {
285
- resizable ? setResizableColumn(col.field) : setUnresizableColumn(col.field);
286
- } }) }));
287
- },
288
- },
289
- groupable: {
290
- renderMenuIcon: false,
291
- header: (_jsx(HeaderWithCheckbox, { label: "Groupable", checked: isAllGroupableColumns() ? true : isNoneGroupableColumns() ? false : null, onChange: (allGroupable) => {
292
- if (allGroupable) {
293
- setAllGroupable();
294
- }
295
- else {
296
- setAllUngroupable();
297
- }
298
- } })),
299
- render: (params) => {
300
- const col = params.data;
301
- return (_jsx(CellWrapper, { children: _jsx(CheckBox, { checked: isGroupableColumn(col.field), onChange: (groupable) => {
302
- groupable ? setGroupableColumn(col.field) : setUngroupableColumn(col.field);
303
- } }) }));
304
- },
305
- },
306
- filterable: {
307
- renderMenuIcon: false,
308
- header: (_jsx(HeaderWithCheckbox, { label: "Filterable", checked: isAllFilterableColumns() ? true : isNoneFilterableColumns() ? false : null, onChange: (allFilterable) => {
309
- if (allFilterable) {
310
- setAllFilterable();
311
- }
312
- else {
313
- setAllUnfilterable();
314
- }
315
- } })),
316
- render: (params) => {
317
- const col = params.data;
318
- return (_jsx(CellWrapper, { children: _jsx(CheckBox, { checked: isFilterableColumn(col.field), onChange: (filterable) => {
319
- filterable ? setFilterableColumn(col.field) : setUnFilterableColumn(col.field);
320
- } }) }));
321
- },
322
- },
323
- };
324
- return (_jsx(Box, { className: twMerge('twa:p-2 twa:h-full', theme), children: _jsx(DataSource, { data: data, primaryKey: "colId", children: _jsx(InfiniteTableGrid, { columnTypes: {
325
- default: {
326
- defaultFlex: 1,
327
- align: 'center',
328
- defaultSortable: false,
329
- },
330
- }, rowHeight: 40, columnHeaderHeight: 60, headerOptions: {
331
- alwaysReserveSpaceForSortIcon: false,
332
- }, domProps: tableDOMProps, columns: columnsMap }) }) }));
333
- };
334
- function areEqual() {
335
- return true;
336
- }
337
- export default React.memo(ColumnsList, areEqual);
@@ -1,5 +0,0 @@
1
- import * as React from 'react';
2
- import { BoxProps } from '../../../../components/Flex';
3
- export declare const NocodeWizardFormBox: React.FunctionComponent<React.PropsWithChildren<BoxProps & {
4
- className?: string;
5
- }>>;
@@ -1,4 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Box } from '../../../../components/Flex';
3
- import { twMerge } from '../../../../twMerge';
4
- export const NocodeWizardFormBox = (props) => (_jsx(Box, { ...props, className: twMerge('ab-NocodeWizardFormBox twa:p-2 twa:mb-2', props.className) }));
@@ -1,30 +0,0 @@
1
- import * as React from 'react';
2
- import { OnePageWizardSection } from '../../Wizard/OnePageWizards';
3
- import { AdaptableFrameworkComponent } from '../../../../types';
4
- import { AdaptableConfig } from './AdaptableConfig';
5
- export interface CustomSection<T> {
6
- title: OnePageWizardSection<T>['title'];
7
- details?: AdaptableFrameworkComponent;
8
- isValid?: OnePageWizardSection<T>['isValid'];
9
- isVisible?: OnePageWizardSection<T>['isVisible'];
10
- render: (
11
- /**
12
- * Internal state of adaptableOptions.
13
- */
14
- adaptableConfig: AdaptableConfig,
15
- /**
16
- * With this callback adaptableOptions can be changed.
17
- */
18
- onChange: (newAdaptableConfig: AdaptableConfig) => void,
19
- /**
20
- * Set the selected columns.
21
- */
22
- setSelectedColumns: (selectedColumn: Record<string, boolean>) => void) => React.ReactNode;
23
- }
24
- export interface ConfigurationWizardProps {
25
- adaptableConfig: AdaptableConfig;
26
- onFinish: (adaptableConfig: AdaptableConfig) => void;
27
- onCancel: () => void;
28
- startSections?: CustomSection<AdaptableConfig>[];
29
- }
30
- export declare const ConfigurationWizard: React.FunctionComponent<ConfigurationWizardProps>;
@@ -1,162 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import * as React from 'react';
3
- import { useState } from 'react';
4
- import StringExtensions from '../../../Utilities/Extensions/StringExtensions';
5
- import { OnePageWizard } from '../../Wizard/OnePageWizards';
6
- import { ConfigurationWizardColumnsStep } from './ConfigurationWizardColumnsStep';
7
- import GridOptionsForm from './GridOptionsForm';
8
- import EntitlementsForm from './EntitlementsForm';
9
- import { UIElementsForm } from './UIOptions/UiOptionsForm';
10
- import { applyDefaultAdaptableOptions } from '../../../AdaptableOptions/DefaultAdaptableOptions';
11
- export const ConfigurationWizard = (props) => {
12
- const [isPrimaryKeySelected, setIsValid] = React.useState(true);
13
- const [adaptableConfig, setAdaptableConfig] = useState(() => {
14
- const gridOptionDefaults = {
15
- sideBar: {
16
- toolPanels: ['columns', 'filters', 'adaptable'],
17
- },
18
- };
19
- const gridOptions = {
20
- ...gridOptionDefaults,
21
- ...props.adaptableConfig.gridOptions,
22
- };
23
- const adaptableOptions = applyDefaultAdaptableOptions(props.adaptableConfig.adaptableOptions);
24
- return { gridOptions, adaptableOptions };
25
- });
26
- const [selectedColumns, setSelectedColumns] = useState(() => {
27
- return props.adaptableConfig.gridOptions?.columnDefs?.reduce((acc, col) => {
28
- acc[col.field] = true;
29
- return acc;
30
- }, {});
31
- });
32
- const columnsHandle = React.useRef(null);
33
- const handleFinish = () => {
34
- const newAdaptableOptions = { ...adaptableConfig.adaptableOptions };
35
- const newGridOptions = { ...adaptableConfig.gridOptions };
36
- if (columnsHandle.current) {
37
- adaptableConfig.gridOptions.columnDefs = columnsHandle.current.getColumns().map((column) => {
38
- const newColumn = {
39
- ...column,
40
- headerName: column.caption || StringExtensions.Humanize(column.field),
41
- };
42
- delete newColumn.caption;
43
- return newColumn;
44
- });
45
- const columnDefs = adaptableConfig.gridOptions.columnDefs;
46
- let Layouts = newAdaptableOptions.initialState?.Layout?.Layouts || [];
47
- const NewLayout = {
48
- TableColumns: columnDefs.map((col) => col.colId ?? col.field),
49
- Name: 'Default Layout',
50
- };
51
- let currentLayoutName = NewLayout.Name;
52
- let found = false;
53
- if (!Layouts.length) {
54
- Layouts = [NewLayout];
55
- }
56
- else {
57
- Layouts = Layouts.map((layout) => {
58
- if (found) {
59
- return layout;
60
- }
61
- if (layout.TableColumns?.length === 0) {
62
- found = true;
63
- currentLayoutName = layout.Name;
64
- layout = { ...layout };
65
- layout.TableColumns = NewLayout.TableColumns;
66
- }
67
- return layout;
68
- });
69
- if (!found) {
70
- Layouts.push(NewLayout);
71
- }
72
- }
73
- newAdaptableOptions.initialState = {
74
- ...newAdaptableOptions.initialState,
75
- Layout: {
76
- ...newAdaptableOptions.initialState.Layout,
77
- Layouts: Layouts,
78
- CurrentLayout: currentLayoutName,
79
- },
80
- };
81
- newAdaptableOptions.primaryKey = columnsHandle.current.getPrimaryKey();
82
- }
83
- const newAdaptableConfig = {
84
- adaptableOptions: newAdaptableOptions,
85
- gridOptions: newGridOptions,
86
- };
87
- setAdaptableConfig(newAdaptableConfig);
88
- props.onFinish(newAdaptableConfig);
89
- };
90
- const handlePrimaryKeyColumnIsNotSelected = React.useCallback((newIsValid) => {
91
- setIsValid(newIsValid);
92
- }, []);
93
- const handleColumnsChange = React.useCallback((columns) => {
94
- setAdaptableConfig((adaptableConfig) => ({
95
- ...adaptableConfig,
96
- gridOptions: { ...adaptableConfig.gridOptions, columnDefs: columns },
97
- }));
98
- }, []);
99
- const handleColumnSelectionChange = React.useCallback((col, flag) => {
100
- setSelectedColumns((selectedColumns) => {
101
- const newSelectedColumns = selectedColumns ?? {};
102
- newSelectedColumns[col.field] = flag;
103
- return newSelectedColumns;
104
- });
105
- }, []);
106
- const handleAdaptableOptionsChange = React.useCallback((adaptableOptions) => {
107
- setAdaptableConfig((adaptableConfig) => ({
108
- ...adaptableConfig,
109
- adaptableOptions: adaptableOptions,
110
- }));
111
- }, []);
112
- const handleGridOptionsChange = React.useCallback((gridOptions) => {
113
- setAdaptableConfig((adaptableConfig) => ({
114
- ...adaptableConfig,
115
- gridOptions: gridOptions,
116
- }));
117
- }, []);
118
- let sections = [
119
- {
120
- title: 'Columns',
121
- details: 'Configure Columns',
122
- isValid: () => {
123
- if (!isPrimaryKeySelected) {
124
- return 'Primary key column must be included';
125
- }
126
- return true;
127
- },
128
- render: () => (_jsx(ConfigurationWizardColumnsStep, { adaptableConfig: adaptableConfig, setPrimaryKeyIsNotSelected: handlePrimaryKeyColumnIsNotSelected, onChange: setAdaptableConfig, selectedColumns: selectedColumns, onSelectionChange: handleColumnSelectionChange, onColumnChange: handleColumnsChange, columnsHandle: columnsHandle })),
129
- },
130
- {
131
- title: 'AG Grid Options',
132
- details: 'Configure AG Grid Options',
133
- render: () => (_jsx(GridOptionsForm, { gridOptions: adaptableConfig.gridOptions, onChangedGridOptions: handleGridOptionsChange })),
134
- },
135
- {
136
- title: 'UI Elements',
137
- details: 'Configure UI Elements',
138
- render: () => (_jsx(UIElementsForm, { adaptableOptions: adaptableConfig.adaptableOptions, gridOptions: adaptableConfig.gridOptions, onChangedAdaptableOptions: handleAdaptableOptionsChange, onChangedGridOptions: handleGridOptionsChange })),
139
- },
140
- {
141
- title: 'Entitlements',
142
- details: 'Configure Entitlements',
143
- render: () => (_jsx(EntitlementsForm, { adaptableOptions: adaptableConfig.adaptableOptions, onChangedAptableOptions: handleAdaptableOptionsChange })),
144
- },
145
- ].filter(Boolean);
146
- if (props.startSections) {
147
- sections = [
148
- ...props.startSections.map((section) => {
149
- return {
150
- title: section.title,
151
- isValid: section.isValid,
152
- isVisible: section.isVisible,
153
- render: () => {
154
- return section.render(adaptableConfig, setAdaptableConfig, setSelectedColumns);
155
- },
156
- };
157
- }),
158
- ...sections,
159
- ];
160
- }
161
- return (_jsx(OnePageWizard, { data: adaptableConfig, name: "Configure", defaultCurrentSectionName: 'default section name', onHide: () => null, onFinish: handleFinish, sections: sections }));
162
- };
@@ -1,18 +0,0 @@
1
- import * as React from 'react';
2
- import { NocodeColumn } from './ColumnsList';
3
- import { AdaptableConfig } from './AdaptableConfig';
4
- export interface ConfigurationWizardColumnsStepProps {
5
- adaptableConfig: AdaptableConfig;
6
- onChange: (newConfig: AdaptableConfig) => void;
7
- columnsHandle: React.MutableRefObject<{
8
- getColumns: () => any[];
9
- getPrimaryKey: () => string;
10
- }>;
11
- setPrimaryKeyIsNotSelected: (enabled: boolean) => void;
12
- onColumnChange: (columns: NocodeColumn[]) => void;
13
- onSelectionChange: (column: any, flag: boolean) => void;
14
- selectedColumns: {
15
- [key: string]: boolean;
16
- };
17
- }
18
- export declare const ConfigurationWizardColumnsStep: React.FunctionComponent<ConfigurationWizardColumnsStepProps>;
@@ -1,12 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import ColumnsList from './ColumnsList';
3
- export const ConfigurationWizardColumnsStep = (props) => {
4
- let theme = 'light';
5
- if (typeof props.adaptableConfig.adaptableOptions.initialState === 'object' &&
6
- props.adaptableConfig.adaptableOptions.initialState.Theme?.CurrentTheme) {
7
- theme = props.adaptableConfig.adaptableOptions.initialState.Theme.CurrentTheme;
8
- }
9
- return (_jsx(ColumnsList, { theme: theme, handle: props.columnsHandle, onValidityChange: (valid) => {
10
- props.setPrimaryKeyIsNotSelected(valid);
11
- }, selectedColumns: props.selectedColumns, onChange: props.onColumnChange, onSelectionChange: props.onSelectionChange, columns: props.adaptableConfig.gridOptions?.columnDefs }));
12
- };
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- import { AdaptableOptions } from '../../../types';
3
- interface EntitlementsFormOptions {
4
- adaptableOptions: AdaptableOptions;
5
- onChangedAptableOptions: (adaptableOptions: AdaptableOptions) => void;
6
- }
7
- declare const EntitlementsForm: React.FunctionComponent<EntitlementsFormOptions>;
8
- export default EntitlementsForm;