@adaptabletools/adaptable 12.1.7 → 12.2.0-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/base.css +127 -71
  2. package/bundle.cjs.js +108 -108
  3. package/index.css +145 -83
  4. package/package.json +1 -1
  5. package/publishTimestamp.d.ts +1 -1
  6. package/publishTimestamp.js +1 -1
  7. package/src/AdaptableInterfaces/IAdaptable.d.ts +1 -0
  8. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +44 -10
  9. package/src/AdaptableOptions/FilterOptions.d.ts +12 -0
  10. package/src/AdaptableOptions/FinancePluginOptions.d.ts +22 -1
  11. package/src/AdaptableOptions/LayoutOptions.d.ts +10 -1
  12. package/src/AdaptableOptions/StateOptions.d.ts +25 -12
  13. package/src/Api/ColumnApi.d.ts +5 -0
  14. package/src/Api/ExportApi.d.ts +5 -0
  15. package/src/Api/FilterApi.d.ts +23 -0
  16. package/src/Api/GridApi.d.ts +1 -0
  17. package/src/Api/Implementation/AlertApiImpl.js +1 -2
  18. package/src/Api/Implementation/ColumnApiImpl.d.ts +1 -0
  19. package/src/Api/Implementation/ColumnApiImpl.js +5 -0
  20. package/src/Api/Implementation/ExportApiImpl.d.ts +3 -1
  21. package/src/Api/Implementation/ExportApiImpl.js +19 -3
  22. package/src/Api/Implementation/FilterApiImpl.d.ts +5 -0
  23. package/src/Api/Implementation/FilterApiImpl.js +25 -2
  24. package/src/Api/Implementation/GridApiImpl.d.ts +1 -0
  25. package/src/Api/Implementation/InternalApiImpl.d.ts +3 -2
  26. package/src/Api/Implementation/InternalApiImpl.js +34 -3
  27. package/src/Api/Implementation/PredicateApiImpl.js +4 -0
  28. package/src/Api/Implementation/QueryLanguageApiImpl.d.ts +1 -0
  29. package/src/Api/Implementation/QueryLanguageApiImpl.js +14 -1
  30. package/src/Api/InternalApi.d.ts +6 -2
  31. package/src/Api/QueryLanguageApi.d.ts +5 -0
  32. package/src/PredefinedConfig/CalculatedColumnState.d.ts +2 -2
  33. package/src/PredefinedConfig/Common/AdaptablePredicate.js +16 -4
  34. package/src/PredefinedConfig/Common/AdaptableQuery.js +1 -1
  35. package/src/PredefinedConfig/Common/AggregationColumns.d.ts +6 -0
  36. package/src/PredefinedConfig/Common/AggregationColumns.js +4 -0
  37. package/src/PredefinedConfig/Common/ColumnFilter.d.ts +2 -2
  38. package/src/PredefinedConfig/Common/Enums.d.ts +0 -15
  39. package/src/PredefinedConfig/Common/Enums.js +1 -18
  40. package/src/PredefinedConfig/ExportState.d.ts +12 -4
  41. package/src/PredefinedConfig/LayoutState.d.ts +2 -1
  42. package/src/PredefinedConfig/PopupState.d.ts +1 -2
  43. package/src/Redux/ActionsReducers/AlertRedux.d.ts +1 -1
  44. package/src/Redux/ActionsReducers/AlertRedux.js +1 -1
  45. package/src/Redux/ActionsReducers/ConditionalStyleRedux.d.ts +1 -1
  46. package/src/Redux/ActionsReducers/ConditionalStyleRedux.js +1 -1
  47. package/src/Redux/ActionsReducers/CustomSortRedux.d.ts +1 -1
  48. package/src/Redux/ActionsReducers/CustomSortRedux.js +1 -1
  49. package/src/Redux/ActionsReducers/FlashingCellRedux.d.ts +1 -1
  50. package/src/Redux/ActionsReducers/FlashingCellRedux.js +1 -1
  51. package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +1 -1
  52. package/src/Redux/ActionsReducers/FormatColumnRedux.js +1 -1
  53. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +28 -0
  54. package/src/Redux/ActionsReducers/LayoutRedux.js +80 -2
  55. package/src/Redux/ActionsReducers/PlusMinusRedux.d.ts +1 -1
  56. package/src/Redux/ActionsReducers/PlusMinusRedux.js +1 -1
  57. package/src/Redux/ActionsReducers/PopupRedux.d.ts +0 -2
  58. package/src/Redux/ActionsReducers/PopupRedux.js +1 -28
  59. package/src/Redux/ActionsReducers/ScheduleRedux.d.ts +5 -5
  60. package/src/Redux/ActionsReducers/ScheduleRedux.js +5 -5
  61. package/src/Redux/ActionsReducers/ShortcutRedux.d.ts +1 -1
  62. package/src/Redux/ActionsReducers/ShortcutRedux.js +1 -1
  63. package/src/Redux/Store/AdaptableStore.js +15 -6
  64. package/src/Strategy/AlertModule.d.ts +1 -0
  65. package/src/Strategy/AlertModule.js +20 -0
  66. package/src/Strategy/BulkUpdateModule.d.ts +1 -1
  67. package/src/Strategy/CalculatedColumnModule.js +3 -3
  68. package/src/Strategy/ExportModule.d.ts +0 -1
  69. package/src/Strategy/ExportModule.js +0 -16
  70. package/src/Strategy/FilterModule.js +6 -0
  71. package/src/Strategy/Interface/IModule.d.ts +4 -0
  72. package/src/Strategy/LayoutModule.js +20 -20
  73. package/src/Strategy/QueryModule.js +1 -1
  74. package/src/Strategy/Utilities/Export/getExportRowsViewItems.js +0 -13
  75. package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +16 -1
  76. package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +15 -11
  77. package/src/Strategy/Utilities/getExpressionViewItems.d.ts +3 -4
  78. package/src/Strategy/Utilities/getExpressionViewItems.js +3 -3
  79. package/src/Strategy/Utilities/getRuleViewItems.js +1 -1
  80. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -0
  81. package/src/Utilities/Constants/DocumentationLinkConstants.js +2 -1
  82. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +3 -0
  83. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.d.ts +12 -2
  84. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +30 -66
  85. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +22 -6
  86. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +423 -220
  87. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +7 -1
  88. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +25 -7
  89. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.d.ts +0 -1
  90. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +6 -54
  91. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
  92. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +31 -5
  93. package/src/Utilities/Interface/MessagePopups.d.ts +0 -4
  94. package/src/Utilities/ObjectFactory.d.ts +4 -2
  95. package/src/Utilities/ObjectFactory.js +16 -3
  96. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +25 -0
  97. package/src/Utilities/Services/AggregatedScalarLiveValue.js +103 -0
  98. package/src/Utilities/Services/AlertService.d.ts +0 -1
  99. package/src/Utilities/Services/AlertService.js +5 -17
  100. package/src/Utilities/Services/CalculatedColumnExpressionService.d.ts +4 -4
  101. package/src/Utilities/Services/CalculatedColumnExpressionService.js +29 -154
  102. package/src/Utilities/Services/Interface/ICalculatedColumnExpressionService.d.ts +2 -2
  103. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +8 -3
  104. package/src/Utilities/Services/QueryLanguageService.d.ts +8 -4
  105. package/src/Utilities/Services/QueryLanguageService.js +68 -25
  106. package/src/Utilities/Services/ReportService.js +48 -48
  107. package/src/View/AdaptableView.js +1 -2
  108. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.d.ts +1 -1
  109. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +10 -10
  110. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.d.ts +3 -0
  111. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.js +9 -0
  112. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +14 -15
  113. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.d.ts +1 -1
  114. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +2 -2
  115. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.d.ts +7 -0
  116. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.js +280 -0
  117. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/index.d.ts +1 -0
  118. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/index.js +5 -0
  119. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.d.ts +1 -1
  120. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +4 -4
  121. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +2 -8
  122. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.d.ts +1 -1
  123. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +3 -3
  124. package/src/View/AdaptableWizardView/Wizard.js +2 -2
  125. package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +0 -1
  126. package/src/View/CalculatedColumn/CalculatedColumnSummary.js +1 -8
  127. package/src/View/CalculatedColumn/Utilities/getCalculatedColumnSettingsTags.d.ts +2 -0
  128. package/src/View/CalculatedColumn/Utilities/{getCalculatedColumnSettingTags.js → getCalculatedColumnSettingsTags.js} +3 -3
  129. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.d.ts +10 -0
  130. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +80 -0
  131. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +24 -14
  132. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.d.ts +1 -2
  133. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +9 -52
  134. package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +17 -6
  135. package/src/View/Components/AdaptableObjectCollection/index.d.ts +3 -4
  136. package/src/View/Components/AdaptableObjectCollection/index.js +7 -8
  137. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +42 -6
  138. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +1 -1
  139. package/src/View/Components/AdaptableObjectRow/index.js +1 -4
  140. package/src/View/Components/EntityRulesEditor/index.js +28 -7
  141. package/src/View/Components/FilterForm/FilterForm.js +8 -4
  142. package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -0
  143. package/src/View/Components/FilterForm/QuickFilterForm.js +19 -7
  144. package/src/View/Components/PermittedValuesSelector/PermitedValuesSelector.d.ts +9 -0
  145. package/src/View/Components/PermittedValuesSelector/PermitedValuesSelector.js +28 -0
  146. package/src/View/Components/PermittedValuesSelector/index.d.ts +1 -0
  147. package/src/View/Components/PermittedValuesSelector/index.js +5 -0
  148. package/src/View/Components/Popups/AdaptablePopup/Navigation.js +2 -2
  149. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.d.ts +1 -0
  150. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +2 -1
  151. package/src/View/Components/Popups/AdaptableToaster.js +2 -7
  152. package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +0 -1
  153. package/src/View/Components/Popups/WindowPopups/windowFactory.js +1 -4
  154. package/src/View/Components/ValueSelector/index.js +8 -19
  155. package/src/View/CustomSort/CustomSortSummary.js +1 -1
  156. package/src/View/Dashboard/DashboardPopup.js +11 -10
  157. package/src/View/Export/ExportViewPanel.d.ts +1 -2
  158. package/src/View/Export/ExportViewPanel.js +4 -8
  159. package/src/View/Export/Wizard/ReportColumnTypeWizard.d.ts +1 -2
  160. package/src/View/Export/Wizard/ReportColumnTypeWizard.js +11 -12
  161. package/src/View/Export/Wizard/ReportRowTypeWizard.d.ts +1 -2
  162. package/src/View/Export/Wizard/ReportRowTypeWizard.js +12 -13
  163. package/src/View/Export/Wizard/ReportRowsWizardSection.js +4 -3
  164. package/src/View/Export/Wizard/ReportSettingsWizard.js +1 -2
  165. package/src/View/Filter/FilterViewPanel.js +21 -4
  166. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +1 -1
  167. package/src/View/GridInfo/AdaptableObjectsSummary.js +5 -3
  168. package/src/View/GridInfo/AdaptableOptionsComponent.js +1 -1
  169. package/src/View/GridInfo/GridInfoPopup.js +6 -7
  170. package/src/View/Layout/Wizard/{LayoutEditor → Components}/ColumnLabels.d.ts +0 -0
  171. package/src/View/Layout/Wizard/{LayoutEditor → Components}/ColumnLabels.js +0 -0
  172. package/src/View/Layout/Wizard/LayoutWizard.js +1 -0
  173. package/src/View/Layout/Wizard/sections/AggregationsSection.d.ts +1 -0
  174. package/src/View/Layout/Wizard/sections/AggregationsSection.js +69 -8
  175. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  176. package/src/View/Query/QueryViewPanel.js +1 -1
  177. package/src/View/Query/Wizard/NamedQueryExpressionWizardSection.js +3 -4
  178. package/src/View/StateManagement/StateManagementPopup.js +18 -19
  179. package/src/agGrid/Adaptable.d.ts +12 -3
  180. package/src/agGrid/Adaptable.js +264 -148
  181. package/src/agGrid/agGridHelper.d.ts +1 -0
  182. package/src/agGrid/agGridHelper.js +5 -3
  183. package/src/agGrid/agGridMenuHelper.d.ts +1 -0
  184. package/src/agGrid/agGridMenuHelper.js +4 -2
  185. package/src/agGrid/weightedAverage.d.ts +6 -0
  186. package/src/agGrid/weightedAverage.js +66 -0
  187. package/src/bundle-dependencies/bundles/react-toastify/index.js +1 -1
  188. package/src/components/DragAndDropContext/ModuleManager.js +3 -4
  189. package/src/components/DragAndDropContext/TabList.js +9 -30
  190. package/src/components/DragAndDropContext/UnusedPanel.js +1 -7
  191. package/src/components/DropdownButton/index.js +2 -2
  192. package/src/components/EmptyContent/index.js +2 -2
  193. package/src/components/ExpressionEditor/BaseEditorInput.d.ts +1 -0
  194. package/src/components/ExpressionEditor/BaseEditorInput.js +3 -3
  195. package/src/components/ExpressionEditor/EditorInput.d.ts +1 -1
  196. package/src/components/ExpressionEditor/EditorInput.js +24 -4
  197. package/src/components/ExpressionEditor/{EditorInputReactive.d.ts → EditorInputWithWhereClause.d.ts} +3 -3
  198. package/src/components/ExpressionEditor/{EditorInputReactive.js → EditorInputWithWhereClause.js} +6 -5
  199. package/src/components/ExpressionEditor/editorButtonsAggregatedBoolean.d.ts +2 -0
  200. package/src/components/ExpressionEditor/{editorButtonsReactive.js → editorButtonsAggregatedBoolean.js} +22 -37
  201. package/src/components/ExpressionEditor/editorButtonsAggregatedScalar.js +5 -10
  202. package/src/components/ExpressionEditor/editorButtonsCumulativeAggregatedScalar.d.ts +2 -0
  203. package/src/components/ExpressionEditor/editorButtonsCumulativeAggregatedScalar.js +50 -0
  204. package/src/components/ExpressionEditor/editorButtonsObservable.d.ts +2 -0
  205. package/src/components/ExpressionEditor/editorButtonsObservable.js +40 -0
  206. package/src/components/ExpressionEditor/index.d.ts +1 -1
  207. package/src/components/ExpressionEditor/index.js +50 -19
  208. package/src/metamodel/adaptable.metamodel.d.ts +86 -5
  209. package/src/metamodel/adaptable.metamodel.js +1 -1
  210. package/src/parser/src/types.d.ts +14 -10
  211. package/src/types.d.ts +4 -4
  212. package/version.d.ts +1 -1
  213. package/version.js +1 -1
  214. package/src/View/CalculatedColumn/Utilities/getCalculatedColumnSettingTags.d.ts +0 -2
  215. package/src/View/Layout/LayoutEditorStandalonePopup.d.ts +0 -3
  216. package/src/View/Layout/LayoutEditorStandalonePopup.js +0 -78
  217. package/src/View/Layout/Wizard/LayoutEditor/ColumnList.d.ts +0 -27
  218. package/src/View/Layout/Wizard/LayoutEditor/ColumnList.js +0 -86
  219. package/src/View/Layout/Wizard/LayoutEditor/ColumnSortList.d.ts +0 -16
  220. package/src/View/Layout/Wizard/LayoutEditor/ColumnSortList.js +0 -89
  221. package/src/View/Layout/Wizard/LayoutEditor/PivotList.d.ts +0 -15
  222. package/src/View/Layout/Wizard/LayoutEditor/PivotList.js +0 -70
  223. package/src/View/Layout/Wizard/LayoutEditor/RowGroupsList.d.ts +0 -15
  224. package/src/View/Layout/Wizard/LayoutEditor/RowGroupsList.js +0 -70
  225. package/src/View/Layout/Wizard/LayoutEditor/droppableIds.d.ts +0 -7
  226. package/src/View/Layout/Wizard/LayoutEditor/droppableIds.js +0 -11
  227. package/src/View/Layout/Wizard/LayoutEditor/getItemStyle.d.ts +0 -6
  228. package/src/View/Layout/Wizard/LayoutEditor/getItemStyle.js +0 -26
  229. package/src/View/Layout/Wizard/LayoutEditor/index.d.ts +0 -9
  230. package/src/View/Layout/Wizard/LayoutEditor/index.js +0 -367
  231. package/src/View/Layout/Wizard/LayoutEditor/reducer.d.ts +0 -28
  232. package/src/View/Layout/Wizard/LayoutEditor/reducer.js +0 -46
  233. package/src/View/Layout/Wizard/LayoutEditor/utils.d.ts +0 -10
  234. package/src/View/Layout/Wizard/LayoutEditor/utils.js +0 -14
  235. package/src/View/Layout/Wizard/LayoutEditorWizard.d.ts +0 -30
  236. package/src/View/Layout/Wizard/LayoutEditorWizard.js +0 -132
  237. package/src/components/ExpressionEditor/editorButtonsReactive.d.ts +0 -2
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.editorButtonsObservable = void 0;
4
+ exports.editorButtonsObservable = [
5
+ {
6
+ functionName: 'ROW_CHANGE',
7
+ data: 'ROW_CHANGE()',
8
+ text: 'RowChange',
9
+ },
10
+ {
11
+ functionName: 'GRID_CHANGE',
12
+ data: 'GRID_CHANGE()',
13
+ text: 'GridChange',
14
+ },
15
+ {
16
+ functionName: 'COUNT',
17
+ data: 'COUNT()',
18
+ text: 'Count',
19
+ },
20
+ {
21
+ functionName: 'NONE',
22
+ data: 'NONE()',
23
+ text: 'None',
24
+ },
25
+ {
26
+ functionName: 'MIN',
27
+ data: 'MIN()',
28
+ text: 'Min',
29
+ },
30
+ {
31
+ functionName: 'MAX',
32
+ data: 'MAX()',
33
+ text: 'Max',
34
+ },
35
+ {
36
+ functionName: 'TIMEFRAME',
37
+ data: 'TIMEFRAME()',
38
+ text: 'Timeframe',
39
+ },
40
+ ];
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { AdaptableApi, AdaptableColumn, AdaptableModule } from '../../types';
3
3
  import { NamedQuery } from '../../PredefinedConfig/QueryState';
4
- declare type ExpressionEditorType = 'boolean' | 'scalar' | 'observable' | 'aggregatedBoolean' | 'aggregatedScalar';
4
+ declare type ExpressionEditorType = 'boolean' | 'scalar' | 'observable' | 'aggregatedBoolean' | 'aggregatedScalar' | 'cumulativeAggregatedScalar';
5
5
  interface ExpressionEditorProps {
6
6
  value: string;
7
7
  onChange: (value: string) => void;
@@ -13,7 +13,7 @@ const EditorButton_1 = tslib_1.__importDefault(require("./EditorButton"));
13
13
  const AdaptableInput_1 = tslib_1.__importDefault(require("../../View/Components/AdaptableInput"));
14
14
  const Radio_1 = tslib_1.__importDefault(require("../Radio"));
15
15
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/ArrayExtensions"));
16
- const EditorInputReactive_1 = tslib_1.__importDefault(require("./EditorInputReactive"));
16
+ const EditorInputWithWhereClause_1 = tslib_1.__importDefault(require("./EditorInputWithWhereClause"));
17
17
  const EditorInput_1 = tslib_1.__importDefault(require("./EditorInput"));
18
18
  const EditorContext_1 = require("./EditorContext");
19
19
  const ExpressionFunctionDocumentation_1 = require("./ExpressionFunctionDocumentation");
@@ -24,6 +24,7 @@ const CodeBlock_1 = require("../CodeBlock");
24
24
  const NamedQueryContext_1 = require("./NamedQueryContext");
25
25
  const ModuleConstants_1 = require("../../Utilities/Constants/ModuleConstants");
26
26
  const DateHelper_1 = require("../../Utilities/Helpers/DateHelper");
27
+ const AdaptableFormControlTextClear_1 = require("../../View/Components/Forms/AdaptableFormControlTextClear");
27
28
  function ExpressionEditor(props) {
28
29
  var _a;
29
30
  const { type, module } = props;
@@ -35,11 +36,11 @@ function ExpressionEditor(props) {
35
36
  const { namedQuery, setNamedQuery } = NamedQueryContext_1.useNamedQueryContext();
36
37
  const textAreaRef = react_1.useRef(null);
37
38
  const allowSaveNamedQuery = (_a = props.allowSaveNamedQuery) !== null && _a !== void 0 ? _a : type === 'boolean';
38
- const editorInput = type === 'observable' || type === 'aggregatedBoolean' ? (React.createElement(EditorInputReactive_1.default, { type: type, module: module, value: props.value, onChange: (value) => {
39
+ const editorInput = type === 'observable' || type === 'aggregatedBoolean' ? (React.createElement(EditorInputWithWhereClause_1.default, { type: type, module: module, value: props.value, onChange: (value) => {
39
40
  setExpressionText(value);
40
41
  props.onChange(value);
41
42
  }, testData: data, api: props.api })) : (
42
- // 'boolean','scalar' or 'aggregatedScalar'
43
+ // 'boolean','scalar' or 'aggregatedScalar'/'cumulativeAggregatedScalar'
43
44
  React.createElement(EditorInput_1.default, { type: type, module: module, value: props.value, onChange: (value) => {
44
45
  setExpressionText(value);
45
46
  props.onChange(value);
@@ -99,6 +100,7 @@ function ExpressionEditor(props) {
99
100
  ? new Date(colValue).toISOString().substr(0, 10)
100
101
  : '';
101
102
  };
103
+ const [searchInputValue, setSearchInputValue] = React.useState('');
102
104
  const dataTableEditor = (React.createElement(React.Fragment, null,
103
105
  React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start", style: { marginTop: 2 } },
104
106
  React.createElement(CheckBox_1.CheckBox, { checked: showColumnIds, onChange: (checked) => setShowColumnIds(checked), style: {
@@ -106,8 +108,17 @@ function ExpressionEditor(props) {
106
108
  margin: 0,
107
109
  paddingTop: 'var(--ab-space-1)',
108
110
  paddingBottom: 'var(--ab-space-1)',
109
- } }, 'Show Column IDs')),
110
- React.createElement(FormLayout_1.default, { className: "ab-ExpressionEditor__columns", gridColumnGap: "var(--ab-space-1)", gridRowGap: "var(--ab-space-1)", sizes: ['auto', '100px'], style: { alignItems: 'stretch' } }, queryableColumns.map((column) => (React.createElement(FormLayout_1.FormRow, { key: column.columnId, label: React.createElement(EditorButton_1.default, { width: "100%", height: "100%", style: {
111
+ } }, 'Show Column IDs'),
112
+ React.createElement(AdaptableFormControlTextClear_1.AdaptableFormControlTextClear, { value: searchInputValue, OnTextChange: setSearchInputValue, placeholder: "Filter columns...", style: { flex: 1, marginBottom: 3 } })),
113
+ React.createElement(FormLayout_1.default, { className: "ab-ExpressionEditor__columns", gridColumnGap: "var(--ab-space-1)", gridRowGap: "var(--ab-space-1)", sizes: ['auto', '100px'], style: { alignItems: 'stretch' } }, queryableColumns
114
+ .filter((column) => {
115
+ if (!searchInputValue) {
116
+ return true;
117
+ }
118
+ return (column.columnId.includes(searchInputValue) ||
119
+ column.friendlyName.includes(searchInputValue));
120
+ })
121
+ .map((column) => (React.createElement(FormLayout_1.FormRow, { key: column.columnId, label: React.createElement(EditorButton_1.default, { width: "100%", height: "100%", style: {
111
122
  background: 'var(--ab-color-primary)',
112
123
  cursor: 'grab',
113
124
  marginRight: 'var(--ab-space-1)',
@@ -115,20 +126,30 @@ function ExpressionEditor(props) {
115
126
  React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start" }, showColumnIds ? `[${column.columnId}]` : column.friendlyName)) }, column.dataType === 'Number' ? (React.createElement(Input_1.default, { type: "number", "data-name": "column-input", "data-value": column.columnId, value: getColValue(column), onChange: (e) => setData(updateColValue(data, column, Number(e.target.value))), width: "100%", disabled: column.readOnly })) : column.dataType === 'String' ? (React.createElement(Input_1.default, { type: "text", "data-name": "column-input", "data-value": column.columnId, value: getColValue(column), onChange: (e) => setData(updateColValue(data, column, e.target.value)), width: "100%", disabled: column.readOnly })) : column.dataType === 'Date' ? (React.createElement(AdaptableInput_1.default, { type: "date", "data-name": "column-input", "data-value": column.columnId, value: getColDateValue(column), onChange: (e) => {
116
127
  setData(updateColValue(data, column, new Date(e.target.value)));
117
128
  }, style: { width: '100%' }, disabled: column.readOnly })) : column.dataType === 'Boolean' ? (React.createElement(CheckBox_1.CheckBox, { "data-name": "column-input", "data-value": column.columnId, checked: getColValue(column), onChange: (checked) => setData(updateColValue(data, column, checked)), disabled: column.readOnly })) : null))))));
118
- const namedQueries = (React.createElement("div", null, props.namedQueries.map((namedQuery) => (React.createElement(rebass_1.Flex, { key: namedQuery.Uuid, flexDirection: "column", alignItems: "start", style: {
119
- padding: 3,
120
- marginTop: 'var(--ab-space-2)',
121
- marginBottom: 'var(--ab-space-2)',
122
- }, backgroundColor: "primarylight" },
123
- ' ',
124
- React.createElement(EditorButton_1.default, { width: "100%", height: "100%", style: {
125
- background: 'var(--ab-color-primary)',
126
- cursor: 'grab',
127
- }, data: `QUERY("${namedQuery.Name}")`, "data-name": "column", icon: "drag" },
128
- React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start" }, namedQuery.Name)),
129
- React.createElement(rebass_1.Flex, { alignItems: "start", style: {
130
- padding: 5,
131
- } }, namedQuery.BooleanExpression))))));
129
+ const namedQueries = (React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start", style: { marginTop: 2 } },
130
+ React.createElement(CheckBox_1.CheckBox, { checked: showColumnIds, onChange: (checked) => setShowColumnIds(checked), style: {
131
+ float: 'right',
132
+ margin: 0,
133
+ paddingTop: 'var(--ab-space-1)',
134
+ paddingBottom: 'var(--ab-space-1)',
135
+ } }, 'Show Column IDs'),
136
+ props.namedQueries.map((namedQuery) => (React.createElement(rebass_1.Flex, { key: namedQuery.Uuid, flexDirection: "column", alignItems: "start", style: {
137
+ padding: 3,
138
+ marginTop: 'var(--ab-space-2)',
139
+ marginBottom: 'var(--ab-space-2)',
140
+ width: '100%',
141
+ }, backgroundColor: "primarylight" },
142
+ ' ',
143
+ React.createElement(EditorButton_1.default, { width: "100%", height: "100%", style: {
144
+ background: 'var(--ab-color-primary)',
145
+ cursor: 'grab',
146
+ }, data: `QUERY("${namedQuery.Name}")`, "data-name": "column", icon: "drag" },
147
+ React.createElement(rebass_1.Flex, { flexDirection: "column", alignItems: "start" }, namedQuery.Name)),
148
+ React.createElement(rebass_1.Flex, { alignItems: "start", style: {
149
+ padding: 5,
150
+ } }, showColumnIds
151
+ ? namedQuery.BooleanExpression
152
+ : props.api.queryLanguageApi.getAdaptableQueryExpressionWithColumnFriendlyNames(namedQuery)))))));
132
153
  const showDocumentationLinks = props.api.internalApi.isDocumentationLinksDisplayed();
133
154
  const queryDocumentationLink = queryDocumentationLinks[type];
134
155
  return (React.createElement(EditorContext_1.ExpressionEditorContext.Provider, { value: {
@@ -219,6 +240,15 @@ const renderQueryHints = (type) => {
219
240
  examples.push({
220
241
  code: 'AVG([stargazers_count], GROUP_BY([language]))',
221
242
  description: 'Average popularity (number of stars) of all the Github repositories, grouped by programming language',
243
+ }, {
244
+ code: 'MAX([PnL]), GROUP_BY([currency], [country])',
245
+ description: "The maximum 'PnL' value, grouped by currency and country",
246
+ });
247
+ }
248
+ if (type === 'cumulativeAggregatedScalar') {
249
+ examples.push({
250
+ code: 'CUMUL(AVG([stargazers_count], GROUP_BY([language])), OVER([TradeDate]))',
251
+ description: "The cumulative average popularity (number of stars) of all the Github repositories, grouped by programming language in the order given by the 'TradeDate' column",
222
252
  }, {
223
253
  code: 'CUMUL( SUM([PnL]), OVER([TradeDate]))',
224
254
  description: "The cumulative sum of all 'PnL' columns in the order given by the 'TradeDate' column",
@@ -247,4 +277,5 @@ const queryDocumentationLinks = {
247
277
  observable: DocumentationLinkConstants_1.ObservableQueryDocsLink,
248
278
  aggregatedBoolean: DocumentationLinkConstants_1.AggregatedBooleanQueryDocsLink,
249
279
  aggregatedScalar: DocumentationLinkConstants_1.AggregatedScalarQueryDocsLink,
280
+ cumulativeAggregatedScalar: DocumentationLinkConstants_1.CumulativeAggregatedScalarQueryDocsLink,
250
281
  };
@@ -245,6 +245,11 @@ export declare const ADAPTABLE_METAMODEL: {
245
245
  reference: string;
246
246
  }[];
247
247
  };
248
+ AdaptableClearStateFunction: {
249
+ name: string;
250
+ kind: string;
251
+ description: string;
252
+ };
248
253
  AdaptableColumn: {
249
254
  name: string;
250
255
  kind: string;
@@ -684,6 +689,15 @@ export declare const ADAPTABLE_METAMODEL: {
684
689
  gridInfo?: undefined;
685
690
  defaultValue?: undefined;
686
691
  reference?: undefined;
692
+ } | {
693
+ name: string;
694
+ kind: string;
695
+ description: string;
696
+ uiLabel: string;
697
+ isOptional: boolean;
698
+ defaultValue: string;
699
+ gridInfo?: undefined;
700
+ reference?: undefined;
687
701
  } | {
688
702
  name: string;
689
703
  kind: string;
@@ -733,6 +747,11 @@ export declare const ADAPTABLE_METAMODEL: {
733
747
  reference: string;
734
748
  }[];
735
749
  };
750
+ AdaptableSaveStateFunction: {
751
+ name: string;
752
+ kind: string;
753
+ description: string;
754
+ };
736
755
  AdaptableScope: {
737
756
  name: string;
738
757
  kind: string;
@@ -783,6 +802,24 @@ export declare const ADAPTABLE_METAMODEL: {
783
802
  reference: string;
784
803
  })[];
785
804
  };
805
+ AdaptableStateFunctionConfig: {
806
+ name: string;
807
+ kind: string;
808
+ description: string;
809
+ properties: ({
810
+ name: string;
811
+ kind: string;
812
+ description: string;
813
+ uiLabel: string;
814
+ isOptional?: undefined;
815
+ } | {
816
+ name: string;
817
+ kind: string;
818
+ description: string;
819
+ uiLabel: string;
820
+ isOptional: boolean;
821
+ })[];
822
+ };
786
823
  AdaptableStatusBar: {
787
824
  name: string;
788
825
  kind: string;
@@ -1205,6 +1242,13 @@ export declare const ADAPTABLE_METAMODEL: {
1205
1242
  uiLabel: string;
1206
1243
  isOptional: boolean;
1207
1244
  reference?: undefined;
1245
+ } | {
1246
+ name: string;
1247
+ kind: string;
1248
+ description: string;
1249
+ uiLabel: string;
1250
+ reference: string;
1251
+ isOptional?: undefined;
1208
1252
  })[];
1209
1253
  };
1210
1254
  CalculatedColumnApi: {
@@ -1227,7 +1271,7 @@ export declare const ADAPTABLE_METAMODEL: {
1227
1271
  kind: string;
1228
1272
  description: string;
1229
1273
  uiLabel: string;
1230
- isOptional: boolean;
1274
+ isOptional?: undefined;
1231
1275
  defaultValue?: undefined;
1232
1276
  } | {
1233
1277
  name: string;
@@ -2582,22 +2626,22 @@ export declare const ADAPTABLE_METAMODEL: {
2582
2626
  kind: string;
2583
2627
  description: string;
2584
2628
  uiLabel: string;
2585
- isOptional: boolean;
2629
+ isOptional?: undefined;
2586
2630
  reference?: undefined;
2587
2631
  } | {
2588
2632
  name: string;
2589
2633
  kind: string;
2590
2634
  description: string;
2591
2635
  uiLabel: string;
2592
- reference: string;
2593
- isOptional?: undefined;
2636
+ isOptional: boolean;
2637
+ reference?: undefined;
2594
2638
  } | {
2595
2639
  name: string;
2596
2640
  kind: string;
2597
2641
  description: string;
2598
2642
  uiLabel: string;
2643
+ reference: string;
2599
2644
  isOptional?: undefined;
2600
- reference?: undefined;
2601
2645
  } | {
2602
2646
  name: string;
2603
2647
  kind: string;
@@ -2642,6 +2686,15 @@ export declare const ADAPTABLE_METAMODEL: {
2642
2686
  kind: string;
2643
2687
  description: string;
2644
2688
  properties: ({
2689
+ name: string;
2690
+ kind: string;
2691
+ description: string;
2692
+ uiLabel: string;
2693
+ isOptional: boolean;
2694
+ gridInfo?: undefined;
2695
+ defaultValue?: undefined;
2696
+ reference?: undefined;
2697
+ } | {
2645
2698
  name: string;
2646
2699
  kind: string;
2647
2700
  description: string;
@@ -3475,12 +3528,21 @@ export declare const ADAPTABLE_METAMODEL: {
3475
3528
  description: string;
3476
3529
  uiLabel: string;
3477
3530
  isOptional: boolean;
3531
+ reference: string;
3532
+ } | {
3533
+ name: string;
3534
+ kind: string;
3535
+ description: string;
3536
+ uiLabel: string;
3537
+ isOptional: boolean;
3538
+ reference?: undefined;
3478
3539
  } | {
3479
3540
  name: string;
3480
3541
  kind: string;
3481
3542
  description: string;
3482
3543
  uiLabel: string;
3483
3544
  isOptional?: undefined;
3545
+ reference?: undefined;
3484
3546
  })[];
3485
3547
  };
3486
3548
  LayoutApi: {
@@ -3547,6 +3609,15 @@ export declare const ADAPTABLE_METAMODEL: {
3547
3609
  gridInfo: string;
3548
3610
  defaultValue: string;
3549
3611
  reference?: undefined;
3612
+ } | {
3613
+ name: string;
3614
+ kind: string;
3615
+ description: string;
3616
+ uiLabel: string;
3617
+ isOptional: boolean;
3618
+ gridInfo?: undefined;
3619
+ defaultValue?: undefined;
3620
+ reference?: undefined;
3550
3621
  } | {
3551
3622
  name: string;
3552
3623
  kind: string;
@@ -4186,6 +4257,11 @@ export declare const ADAPTABLE_METAMODEL: {
4186
4257
  isOptional?: undefined;
4187
4258
  })[];
4188
4259
  };
4260
+ ReportColumnScope: {
4261
+ name: string;
4262
+ kind: string;
4263
+ description: string;
4264
+ };
4189
4265
  ReportContext: {
4190
4266
  name: string;
4191
4267
  kind: string;
@@ -4209,6 +4285,11 @@ export declare const ADAPTABLE_METAMODEL: {
4209
4285
  uiLabel: string;
4210
4286
  }[];
4211
4287
  };
4288
+ ReportRowScope: {
4289
+ name: string;
4290
+ kind: string;
4291
+ description: string;
4292
+ };
4212
4293
  ReportSchedule: {
4213
4294
  name: string;
4214
4295
  kind: string;