@adaptabletools/adaptable 13.0.0-canary.2 → 13.0.0-canary.20

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 (263) hide show
  1. package/agGrid.d.ts +23 -1
  2. package/agGrid.js +23 -1
  3. package/base.css +1232 -733
  4. package/base.css.map +1 -0
  5. package/bundle.cjs.js +191 -174
  6. package/index.css +1250 -734
  7. package/index.css.map +1 -0
  8. package/package.json +5 -5
  9. package/publishTimestamp.d.ts +1 -1
  10. package/publishTimestamp.js +1 -1
  11. package/src/AdaptableInterfaces/IAdaptable.d.ts +7 -3
  12. package/src/AdaptableOptions/AdaptableOptions.d.ts +0 -2
  13. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +136 -27
  14. package/src/AdaptableOptions/ExportOptions.d.ts +2 -2
  15. package/src/AdaptableOptions/FinsemblePluginOptions.d.ts +32 -0
  16. package/src/AdaptableOptions/FinsemblePluginOptions.js +2 -0
  17. package/src/AdaptableOptions/LayoutOptions.d.ts +2 -1
  18. package/src/Api/AdaptableApi.d.ts +2 -0
  19. package/src/Api/ColumnApi.d.ts +8 -2
  20. package/src/Api/ConditionalStyleApi.d.ts +20 -42
  21. package/src/Api/ConfigApi.d.ts +1 -2
  22. package/src/Api/ExportApi.d.ts +6 -6
  23. package/src/Api/FinsembleApi.d.ts +10 -0
  24. package/src/Api/FinsembleApi.js +2 -0
  25. package/src/Api/FormatColumnApi.d.ts +76 -59
  26. package/src/Api/Implementation/AdaptableApiImpl.d.ts +2 -0
  27. package/src/Api/Implementation/AdaptableApiImpl.js +2 -0
  28. package/src/Api/Implementation/ColumnApiImpl.d.ts +2 -1
  29. package/src/Api/Implementation/ColumnApiImpl.js +18 -14
  30. package/src/Api/Implementation/ExportApiImpl.d.ts +4 -4
  31. package/src/Api/Implementation/ExportApiImpl.js +14 -14
  32. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +36 -17
  33. package/src/Api/Implementation/FormatColumnApiImpl.js +101 -185
  34. package/src/Api/Implementation/PluginsApiImpl.d.ts +2 -0
  35. package/src/Api/Implementation/PluginsApiImpl.js +6 -0
  36. package/src/Api/Implementation/QueryLanguageApiImpl.d.ts +2 -3
  37. package/src/Api/Implementation/QueryLanguageApiImpl.js +9 -18
  38. package/src/Api/Implementation/ScopeApiImpl.d.ts +1 -1
  39. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +25 -0
  40. package/src/Api/Implementation/StyledColumnApiImpl.js +193 -0
  41. package/src/Api/Implementation/SystemStatusApiImpl.js +1 -2
  42. package/src/Api/Implementation/ToolPanelApiImpl.d.ts +3 -1
  43. package/src/Api/Implementation/ToolPanelApiImpl.js +8 -0
  44. package/src/Api/PluginsApi.d.ts +5 -0
  45. package/src/Api/QueryLanguageApi.d.ts +3 -7
  46. package/src/Api/ScopeApi.d.ts +1 -1
  47. package/src/Api/StyledColumnApi.d.ts +106 -0
  48. package/src/Api/StyledColumnApi.js +2 -0
  49. package/src/Api/ToolPanelApi.d.ts +10 -1
  50. package/src/PredefinedConfig/AdaptableState.d.ts +2 -0
  51. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  52. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +1 -1
  53. package/src/PredefinedConfig/Common/AdaptablePredicate.js +37 -37
  54. package/src/PredefinedConfig/Common/Types.d.ts +3 -3
  55. package/src/PredefinedConfig/Common/Types.js +1 -0
  56. package/src/PredefinedConfig/ConditionalStyleState.d.ts +10 -19
  57. package/src/PredefinedConfig/FormatColumnState.d.ts +21 -92
  58. package/src/PredefinedConfig/PredefinedConfig.d.ts +6 -0
  59. package/src/PredefinedConfig/StyledColumnState.d.ts +119 -0
  60. package/src/PredefinedConfig/StyledColumnState.js +2 -0
  61. package/src/Redux/ActionsReducers/ConditionalStyleRedux.d.ts +0 -18
  62. package/src/Redux/ActionsReducers/ConditionalStyleRedux.js +0 -18
  63. package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +14 -0
  64. package/src/Redux/ActionsReducers/FormatColumnRedux.js +43 -1
  65. package/src/Redux/ActionsReducers/PluginsRedux.d.ts +4 -4
  66. package/src/Redux/ActionsReducers/PluginsRedux.js +5 -5
  67. package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +49 -0
  68. package/src/Redux/ActionsReducers/StyledColumnRedux.js +92 -0
  69. package/src/Redux/Store/AdaptableStore.js +9 -0
  70. package/src/Strategy/ConditionalStyleModule.d.ts +0 -2
  71. package/src/Strategy/ConditionalStyleModule.js +3 -27
  72. package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
  73. package/src/Strategy/DataChangeHistoryModule.js +12 -0
  74. package/src/Strategy/FormatColumnModule.d.ts +3 -10
  75. package/src/Strategy/FormatColumnModule.js +42 -183
  76. package/src/Strategy/Interface/IModule.d.ts +1 -0
  77. package/src/Strategy/StyledColumnModule.d.ts +24 -0
  78. package/src/Strategy/StyledColumnModule.js +165 -0
  79. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.d.ts +1 -1
  80. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +3 -4
  81. package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +1 -16
  82. package/src/Strategy/Utilities/getScopeViewItems.js +1 -1
  83. package/src/Utilities/Constants/ModuleConstants.d.ts +3 -0
  84. package/src/Utilities/Constants/ModuleConstants.js +4 -1
  85. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +6 -12
  86. package/src/Utilities/Defaults/DefaultSettingsPanel.js +1 -0
  87. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.d.ts +3 -2
  88. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +3 -1
  89. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +1 -0
  90. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +3 -1
  91. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.d.ts +1 -0
  92. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.js +3 -1
  93. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.d.ts +2 -4
  94. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -1
  95. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -0
  96. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +3 -1
  97. package/src/Utilities/Extensions/TypeExtensions.d.ts +1 -0
  98. package/src/Utilities/Extensions/TypeExtensions.js +5 -0
  99. package/src/Utilities/ObjectFactory.d.ts +5 -2
  100. package/src/Utilities/ObjectFactory.js +14 -7
  101. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +14 -4
  102. package/src/Utilities/Services/{LicenseService.d.ts → LicenseService/index.d.ts} +3 -3
  103. package/src/Utilities/Services/LicenseService/index.js +1 -0
  104. package/src/Utilities/Services/LicenseService/shouldLogThankYouMessage.d.ts +1 -0
  105. package/src/Utilities/Services/LicenseService/shouldLogThankYouMessage.js +15 -0
  106. package/src/Utilities/Services/ModuleService.js +2 -0
  107. package/src/Utilities/Services/QueryLanguageService.d.ts +3 -3
  108. package/src/Utilities/Services/QueryLanguageService.js +88 -39
  109. package/src/Utilities/Services/ReportService.js +6 -6
  110. package/src/Utilities/license/LicenseDetails.d.ts +1 -1
  111. package/src/Utilities/license/decode.d.ts +1 -0
  112. package/src/Utilities/license/decode.js +1 -1
  113. package/src/View/AdaptablePopover/index.js +1 -1
  114. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +9 -9
  115. package/src/View/Alert/Wizard/AlertDisplayWizardSection.js +6 -5
  116. package/src/View/Alert/Wizard/BaseAlertRulesWizardSection.js +3 -3
  117. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +3 -3
  118. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  119. package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
  120. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +1 -1
  121. package/src/View/Components/AdaptableObjectRow/index.js +1 -6
  122. package/src/View/Components/Buttons/ButtonInfo.d.ts +1 -3
  123. package/src/View/Components/Buttons/ButtonInfo.js +3 -5
  124. package/src/View/Components/EntityRulesEditor/index.d.ts +2 -1
  125. package/src/View/Components/EntityRulesEditor/index.js +36 -35
  126. package/src/View/Components/FilterForm/FilterForm.js +11 -16
  127. package/src/View/Components/FilterForm/ListBoxFilterForm.js +2 -1
  128. package/src/View/Components/FilterForm/QuickFilterForm.js +7 -13
  129. package/src/View/Components/NewScopeComponent.js +3 -3
  130. package/src/View/Components/Panels/PanelWithButton.js +1 -5
  131. package/src/View/Components/Panels/PanelWithImage.js +1 -5
  132. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -2
  133. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.d.ts +1 -0
  134. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +3 -16
  135. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +1 -0
  136. package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +1 -1
  137. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +5 -5
  138. package/src/View/Components/RangesComponent.d.ts +8 -1
  139. package/src/View/Components/RangesComponent.js +60 -24
  140. package/src/View/Components/ScopeComponent.js +6 -6
  141. package/src/View/Components/Selectors/ColumnSelector.d.ts +1 -0
  142. package/src/View/Components/Selectors/ColumnSelector.js +2 -1
  143. package/src/View/Components/Selectors/ColumnValueSelector.js +2 -2
  144. package/src/View/Components/StyleComponent.js +14 -19
  145. package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +3 -9
  146. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +25 -10
  147. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -1
  148. package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
  149. package/src/View/ConditionalStyle/ConditionalStylePopupHeader.d.ts +2 -0
  150. package/src/View/ConditionalStyle/ConditionalStylePopupHeader.js +18 -0
  151. package/src/View/ConditionalStyle/Wizard/ConditionalStyleRuleWizardSection.js +3 -3
  152. package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.js +1 -1
  153. package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.js +1 -11
  154. package/src/View/DataSet/DataSetSelector.js +1 -1
  155. package/src/View/DataSet/DataSetViewPanel.d.ts +1 -1
  156. package/src/View/Export/ExportViewPanel.d.ts +1 -1
  157. package/src/View/Export/ExportViewPanel.js +4 -4
  158. package/src/View/Export/ReportExportDropdown.js +1 -1
  159. package/src/View/Export/Wizard/ReportNameWizardSection.js +10 -11
  160. package/src/View/Filter/FilterSummary.d.ts +1 -1
  161. package/src/View/Filter/FilterViewPanel.d.ts +1 -1
  162. package/src/View/FlashingCell/FlashingCellStyle.js +3 -3
  163. package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +3 -3
  164. package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +6 -6
  165. package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +4 -4
  166. package/src/View/FormatColumn/FormatColumnSummary.js +1 -1
  167. package/src/View/FormatColumn/MoveFormatColumn.d.ts +7 -0
  168. package/src/View/FormatColumn/MoveFormatColumn.js +27 -0
  169. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +28 -28
  170. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.d.ts +8 -0
  171. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +28 -0
  172. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +21 -3
  173. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +2 -28
  174. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +3 -3
  175. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +6 -300
  176. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +15 -9
  177. package/src/View/FormatColumn/Wizard/constants.d.ts +1 -0
  178. package/src/View/FormatColumn/Wizard/constants.js +4 -0
  179. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +7 -7
  180. package/src/View/Layout/LayoutRadioSelector.js +1 -1
  181. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  182. package/src/View/Layout/Wizard/Components/ColumnLabels.js +1 -1
  183. package/src/View/Layout/Wizard/sections/AggregationsSection.js +1 -1
  184. package/src/View/Layout/Wizard/sections/ColumnsSection.js +7 -6
  185. package/src/View/Layout/Wizard/sections/SettingsSection.js +2 -2
  186. package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +1 -1
  187. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +3 -3
  188. package/src/View/Query/QueryViewPanel.d.ts +1 -1
  189. package/src/View/Query/Wizard/NamedQuerySettingsWizardSection.js +1 -1
  190. package/src/View/QuickSearch/QuickSearchPopup.js +2 -2
  191. package/src/View/QuickSearch/QuickSearchViewPanel.d.ts +1 -1
  192. package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +5 -5
  193. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsGlue42.js +1 -1
  194. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +5 -5
  195. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +1 -1
  196. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +5 -5
  197. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +2 -2
  198. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +3 -3
  199. package/src/View/SmartEdit/SmartEditPopup.js +3 -3
  200. package/src/View/SpecialColumnSettingsWizardStep.js +10 -10
  201. package/src/View/StateManagement/StateManagementPopup.js +4 -4
  202. package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +7 -0
  203. package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +77 -0
  204. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.d.ts +9 -0
  205. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +65 -0
  206. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection.d.ts +9 -0
  207. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection.js +234 -0
  208. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.d.ts +7 -0
  209. package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +59 -0
  210. package/src/View/SystemStatus/SystemStatusEntityRow.js +4 -6
  211. package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +1 -1
  212. package/src/View/TeamSharing/SharedEntityObjectView.js +1 -1
  213. package/src/View/TeamSharing/TeamSharingApplyButton.js +1 -1
  214. package/src/View/Theme/ThemePopup.js +1 -1
  215. package/src/View/Wizard/OnePageAdaptableWizard.d.ts +1 -1
  216. package/src/View/Wizard/OnePageAdaptableWizard.js +1 -2
  217. package/src/agGrid/ActionColumnRenderer.d.ts +3 -0
  218. package/src/agGrid/ActionColumnRenderer.js +96 -64
  219. package/src/agGrid/Adaptable.d.ts +13 -9
  220. package/src/agGrid/Adaptable.js +207 -221
  221. package/src/agGrid/CheckboxRenderer.js +1 -1
  222. package/src/agGrid/FilterWrapper.js +60 -16
  223. package/src/agGrid/FloatingFilterWrapper.d.ts +2 -2
  224. package/src/agGrid/FloatingFilterWrapper.js +71 -32
  225. package/src/agGrid/PercentBarRenderer.d.ts +6 -2
  226. package/src/agGrid/PercentBarRenderer.js +19 -17
  227. package/src/agGrid/agGridHelper.d.ts +6 -2
  228. package/src/agGrid/agGridHelper.js +16 -15
  229. package/src/agGrid/createAgStatusPanelComponent.d.ts +1 -1
  230. package/src/agGrid/createAgStatusPanelComponent.js +17 -0
  231. package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +5 -1
  232. package/src/agGrid/editors/AdaptableDateEditor/index.js +87 -20
  233. package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
  234. package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +3 -3
  235. package/src/agGrid/editors/AdaptableNumberEditor/index.js +81 -30
  236. package/src/agGrid/weightedAverage.js +19 -11
  237. package/src/components/CheckBox/index.js +7 -2
  238. package/src/components/Datepicker/index.d.ts +1 -1
  239. package/src/components/ExpressionEditor/BaseEditorInput.d.ts +1 -1
  240. package/src/components/ExpressionEditor/BaseEditorInput.js +13 -32
  241. package/src/components/ExpressionEditor/EditorInput.js +1 -1
  242. package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +1 -1
  243. package/src/components/ExpressionEditor/index.js +9 -17
  244. package/src/components/FormLayout/index.js +1 -1
  245. package/src/components/StylePreview.js +2 -1
  246. package/src/components/icons/brush.d.ts +3 -0
  247. package/src/components/icons/brush.js +7 -0
  248. package/src/components/icons/index.js +2 -0
  249. package/src/metamodel/adaptable.metamodel.d.ts +191 -95
  250. package/src/metamodel/adaptable.metamodel.js +1 -1
  251. package/src/parser/src/types.d.ts +6 -3
  252. package/src/renderReactRoot.d.ts +2 -0
  253. package/src/renderReactRoot.js +11 -9
  254. package/src/types.d.ts +8 -4
  255. package/themes/dark.css +8 -4
  256. package/themes/dark.css.map +1 -0
  257. package/themes/light.css +4 -1
  258. package/themes/light.css.map +1 -0
  259. package/version.d.ts +1 -1
  260. package/version.js +1 -1
  261. package/src/AdaptableComponents.d.ts +0 -1
  262. package/src/AdaptableComponents.js +0 -5
  263. package/src/Utilities/Services/LicenseService.js +0 -1
@@ -32,31 +32,31 @@ class ScopeComponent extends React.Component {
32
32
  React.createElement(HelpBlock_1.default, { marginBottom: 1 }, displayMessage),
33
33
  ' ',
34
34
  React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "center", padding: 2 },
35
- React.createElement(Radio_1.default, { value: "Row", checked: this.state.ScopeChoice == 'All', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "Whole Row"),
35
+ React.createElement(Radio_1.default, { value: "Row", checked: this.state.ScopeChoice == 'All', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "All Columns"),
36
36
  ' ',
37
- React.createElement(Radio_1.default, { marginLeft: 3, value: "Column", checked: this.state.ScopeChoice == 'Column', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "Column(s)"),
37
+ React.createElement(Radio_1.default, { marginLeft: 3, value: "Column", checked: this.state.ScopeChoice == 'Column', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "Selected Column(s)"),
38
38
  ' ',
39
39
  React.createElement(Radio_1.default, { marginLeft: 3, value: "DataType", checked: this.state.ScopeChoice == 'DataType', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "DataType(s)")),
40
40
  this.state.ScopeChoice == 'Column' && (React.createElement(rebass_1.Box, { marginBottom: 2, "data-name": "column-scope" },
41
41
  React.createElement(DualListBoxEditor_1.DualListBoxEditor, { style: { flex: 1, overflow: 'hidden', height: '250px' }, AvailableValues: availableValues, SelectedValues: this.state.selectedColumnValues, HeaderAvailable: "Columns", HeaderSelected: "Columns In Style", onChange: (SelectedValues) => this.onColumnsSelectedChanged(SelectedValues) }))),
42
42
  this.state.ScopeChoice == 'DataType' && (React.createElement(Panel_1.default, { "data-name": "datatype-scope", variant: "modern" },
43
43
  React.createElement(rebass_1.Flex, { flexDirection: "row" },
44
- this.state.availableDataTypes.includes('Date') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", checked: this.state.componentScope &&
44
+ this.state.availableDataTypes.includes('Date') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "date", checked: this.state.componentScope &&
45
45
  'DataTypes' in this.state.componentScope &&
46
46
  this.props.api.scopeApi
47
47
  .getDataTypesInScope(this.state.componentScope)
48
48
  .includes('Date'), marginLeft: 2, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'Date') }, "Date")),
49
- this.state.availableDataTypes.includes('Number') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", checked: this.state.componentScope &&
49
+ this.state.availableDataTypes.includes('Number') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "number", checked: this.state.componentScope &&
50
50
  'DataTypes' in this.state.componentScope &&
51
51
  this.props.api.scopeApi
52
52
  .getDataTypesInScope(this.state.componentScope)
53
53
  .includes('Number'), marginLeft: 4, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'Number') }, "Number")),
54
- this.state.availableDataTypes.includes('String') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", checked: this.state.componentScope &&
54
+ this.state.availableDataTypes.includes('String') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "string", checked: this.state.componentScope &&
55
55
  'DataTypes' in this.state.componentScope &&
56
56
  this.props.api.scopeApi
57
57
  .getDataTypesInScope(this.state.componentScope)
58
58
  .includes('String'), marginLeft: 4, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'String') }, "String")),
59
- this.state.availableDataTypes.includes('Boolean') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", checked: this.state.componentScope &&
59
+ this.state.availableDataTypes.includes('Boolean') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "boolean", checked: this.state.componentScope &&
60
60
  'DataTypes' in this.state.componentScope &&
61
61
  this.props.api.scopeApi
62
62
  .getDataTypesInScope(this.state.componentScope)
@@ -9,6 +9,7 @@ export interface ColumnSelectorProps extends React.HTMLProps<ColumnSelector> {
9
9
  className?: string;
10
10
  placeHolder?: string;
11
11
  showClearButton?: boolean;
12
+ disabled?: boolean;
12
13
  }
13
14
  export declare class ColumnSelector extends React.Component<ColumnSelectorProps, {}> {
14
15
  render(): JSX.Element;
@@ -23,6 +23,7 @@ class ColumnSelector extends React.Component {
23
23
  return {
24
24
  label: column.friendlyName,
25
25
  value: column.columnId,
26
+ disabled: this.props.disabled,
26
27
  onClick: () => {
27
28
  const selected = sortedColumns.filter((c) => c.columnId === column.columnId);
28
29
  if (!selected.length) {
@@ -40,7 +41,7 @@ class ColumnSelector extends React.Component {
40
41
  return (React.createElement("div", { "data-name": 'column-selector' },
41
42
  React.createElement(FormLayout_1.default, { columns: [{ name: 'columnSelector', style: { display: 'flex' } }], style: this.props.style },
42
43
  React.createElement(FormLayout_1.FormRow, null,
43
- React.createElement(DropdownButton_1.default, { marginRight: 2, columns: ['label'], showClearButton: currentColumnName != 'Select a column', onClear: () => this.onClearButton(), style: { width: '100%', fontSize: 'small' }, className: "ab-DashboardToolbar__Layout__select", items: sortedColumnOptions, disabled: sortedColumnOptions.length == 0 }, currentColumnName)))));
44
+ React.createElement(DropdownButton_1.default, { marginRight: 2, columns: ['label'], showClearButton: currentColumnName != 'Select a column', onClear: () => this.onClearButton(), style: { width: '100%', fontSize: 'small' }, className: "ab-DashboardToolbar__Layout__select", items: sortedColumnOptions, disabled: this.props.disabled || sortedColumnOptions.length == 0 }, currentColumnName)))));
44
45
  }
45
46
  onClearButton() {
46
47
  this.props.onColumnChange([]);
@@ -74,8 +74,8 @@ class ColumnValueSelector extends React.Component {
74
74
  ]
75
75
  : this.state.distinctColumnValues;
76
76
  const dd = (React.createElement("div", null,
77
- React.createElement(DropdownButton_1.default, { className: className, columns: ['label'], variant: "text", showClearButton: true, onClear: () => this.onSelectedValueChange([]), style: { fontSize: 'small' }, disabled: this.props.disabled, items: items, onExpand: this.handleSelectedValueExpand }, this.props.selectedColumnValue ? this.props.selectedColumnValue : placeholderText)));
78
- const input = (React.createElement(AdaptableInput_1.default, { type: this.props.selectedColumn
77
+ React.createElement(DropdownButton_1.default, { "data-name": "bulkupdate-value-selector", className: className, columns: ['label'], variant: "text", showClearButton: true, onClear: () => this.onSelectedValueChange([]), style: { fontSize: 'small' }, disabled: this.props.disabled, items: items, onExpand: this.handleSelectedValueExpand }, this.props.selectedColumnValue ? this.props.selectedColumnValue : placeholderText)));
78
+ const input = (React.createElement(AdaptableInput_1.default, { "data-name": "bulkupdate-value-input", type: this.props.selectedColumn
79
79
  ? UIHelper_1.default.getDescriptionForDataType(this.props.selectedColumn.dataType)
80
80
  : 'text', placeholder: this.props.selectedColumn
81
81
  ? UIHelper_1.default.getPlaceHolderforDataType(this.props.selectedColumn.dataType)
@@ -25,7 +25,7 @@ class StyleComponent extends React.Component {
25
25
  };
26
26
  }
27
27
  render() {
28
- const Cmp = this.props.headless ? React.Fragment : Panel_1.default;
28
+ const Cmp = this.props.headless ? rebass_1.Box : Panel_1.default;
29
29
  const cmpProps = this.props.headless
30
30
  ? {}
31
31
  : {
@@ -36,15 +36,15 @@ class StyleComponent extends React.Component {
36
36
  const styleClassNames = this.props.api.userInterfaceApi.getStyleClassNames();
37
37
  const colourSpellingVariant = this.props.api.internalApi.getCorrectEnglishVariant('Colour');
38
38
  const coloursSpellingVariant = this.props.api.internalApi.getCorrectEnglishVariant('colours');
39
- return (React.createElement(Cmp, Object.assign({}, cmpProps),
39
+ return (React.createElement(Cmp, Object.assign({}, cmpProps, { className: "ab-StyleComponent" }),
40
40
  ArrayExtensions_1.default.IsNotNullOrEmpty(styleClassNames) && (React.createElement(rebass_1.Flex, { flexDirection: "row", padding: 2 },
41
- React.createElement(Radio_1.default, { value: "Predicate", checked: this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(checked) }, "Use Style Class Name"),
41
+ React.createElement(Radio_1.default, { "data-name": "show-class-name", value: "Predicate", checked: this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(checked) }, "Use Style Class Name"),
42
42
  ' ',
43
- React.createElement(Radio_1.default, { marginLeft: 3, value: "Expression", checked: !this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(!checked) }, "Create Style"),
43
+ React.createElement(Radio_1.default, { "data-name": "create-style", marginLeft: 3, value: "Expression", checked: !this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(!checked) }, "Create Style"),
44
44
  ' ')),
45
45
  this.state.ShowClassName ? (React.createElement("div", null,
46
46
  React.createElement(HelpBlock_1.default, { fontSize: 2 }, 'Select a CSS Class Name'),
47
- React.createElement(DropdownButton_1.default, { margin: 3, placeholder: "Select", variant: "outlined", columns: ['label'], tone: "none", disabled: ArrayExtensions_1.default.IsNullOrEmpty(styleClassNames), style: {
47
+ React.createElement(DropdownButton_1.default, { "data-name": "select-class-anme", margin: 3, placeholder: "Select", variant: "outlined", columns: ['label'], tone: "none", disabled: ArrayExtensions_1.default.IsNullOrEmpty(styleClassNames), style: {
48
48
  minWidth: '15rem',
49
49
  whiteSpace: 'nowrap',
50
50
  overflow: 'hidden',
@@ -64,35 +64,30 @@ class StyleComponent extends React.Component {
64
64
  coloursSpellingVariant),
65
65
  React.createElement(FormLayout_1.default, { columns: [1, 2] },
66
66
  React.createElement(FormLayout_1.FormRow, null,
67
- React.createElement(CheckBox_1.CheckBox, { value: "existing", margin: 1, checked: !!this.state.componentStyle.BackColor, onChange: (checked) => this.onUseBackColorCheckChange(checked) },
67
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-background-color", value: "existing", margin: 1, checked: !!this.state.componentStyle.BackColor, onChange: (checked) => this.onUseBackColorCheckChange(checked) },
68
68
  "Set Back ",
69
69
  colourSpellingVariant),
70
70
  this.state.componentStyle.BackColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.BackColor, onChange: (x) => this.onBackColorSelectChange(x) })) : (React.createElement("span", null))),
71
71
  React.createElement(FormLayout_1.FormRow, null,
72
- React.createElement(CheckBox_1.CheckBox, { margin: 1, value: "existing", checked: this.state.componentStyle.ForeColor ? true : false, onChange: (checked) => this.onUseForeColorCheckChange(checked) },
72
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-foreground-color", margin: 1, value: "existing", checked: this.state.componentStyle.ForeColor ? true : false, onChange: (checked) => this.onUseForeColorCheckChange(checked) },
73
73
  "Set Fore ",
74
74
  colourSpellingVariant),
75
75
  this.state.componentStyle.ForeColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.ForeColor, onChange: (x) => this.onForeColorSelectChange(x) })) : (React.createElement("span", null))),
76
76
  React.createElement(FormLayout_1.FormRow, null,
77
- React.createElement(CheckBox_1.CheckBox, { margin: 1, value: "existing", checked: this.state.componentStyle.BorderColor ? true : false, onChange: (checked) => this.onUseBorderColorCheckChange(checked) },
77
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-border-color", margin: 1, value: "existing", checked: this.state.componentStyle.BorderColor ? true : false, onChange: (checked) => this.onUseBorderColorCheckChange(checked) },
78
78
  "Set Border ",
79
79
  colourSpellingVariant),
80
80
  this.state.componentStyle.BorderColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.BorderColor, onChange: (x) => this.onBorderColorSelectChange(x) })) : (React.createElement("span", null)))),
81
81
  React.createElement(HelpBlock_1.default, { fontSize: 2, marginTop: 2, marginBottom: 2 }, "Set the font properties of the Style"),
82
82
  React.createElement(FormLayout_1.default, { columns: [1] },
83
83
  React.createElement(FormLayout_1.FormRow, null,
84
- React.createElement(CheckBox_1.CheckBox, { margin: 1, value: Enums_1.FontWeight.Normal.toString(), checked: this.state.componentStyle.FontWeight == Enums_1.FontWeight.Bold, onChange: (checked) => this.onFontWeightChange(checked) }, "Bold")),
84
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-weight-bold", margin: 1, value: Enums_1.FontWeight.Normal.toString(), checked: this.state.componentStyle.FontWeight == Enums_1.FontWeight.Bold, onChange: (checked) => this.onFontWeightChange(checked) }, "Bold")),
85
85
  React.createElement(FormLayout_1.FormRow, null,
86
- React.createElement(CheckBox_1.CheckBox, { margin: 1, value: Enums_1.FontStyle.Normal.toString(), checked: this.state.componentStyle.FontStyle == Enums_1.FontStyle.Italic, onChange: (checked) => this.onFontStyleChange(checked) }, "Italic")),
86
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-style-italic", margin: 1, value: Enums_1.FontStyle.Normal.toString(), checked: this.state.componentStyle.FontStyle == Enums_1.FontStyle.Italic, onChange: (checked) => this.onFontStyleChange(checked) }, "Italic")),
87
87
  React.createElement(FormLayout_1.FormRow, null,
88
- React.createElement(CheckBox_1.CheckBox, { margin: 1, checked: this.state.componentStyle.FontSize ? true : false, onChange: (checked) => this.onUseFontSizeCheckChange(checked) }, "Set Font Size")),
88
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-size", margin: 1, checked: this.state.componentStyle.FontSize ? true : false, onChange: (checked) => this.onUseFontSizeCheckChange(checked) }, "Set Font Size")),
89
89
  React.createElement(FormLayout_1.FormRow, null, this.state.componentStyle.FontSize != null && (React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "center" },
90
- React.createElement(DropdownButton_1.default, { style: {
91
- whiteSpace: 'nowrap',
92
- overflow: 'hidden',
93
- textOverflow: 'ellipsis',
94
- maxWidth: 'inherit',
95
- }, mr: 1, items: EnumExtensions_1.EnumExtensions.getNames(Enums_1.FontSize).map((enumName) => ({
90
+ React.createElement(DropdownButton_1.default, { mr: 1, items: EnumExtensions_1.EnumExtensions.getNames(Enums_1.FontSize).map((enumName) => ({
96
91
  value: enumName,
97
92
  label: enumName,
98
93
  onClick: () => this.onFontSizeChange(enumName),
@@ -145,12 +140,12 @@ class StyleComponent extends React.Component {
145
140
  this.props.UpdateStyle(this.state.componentStyle);
146
141
  }
147
142
  onFontWeightChange(checked) {
148
- let fontWeight = checked ? Enums_1.FontWeight.Bold : Enums_1.FontWeight.Normal;
143
+ let fontWeight = checked ? Enums_1.FontWeight.Bold : undefined;
149
144
  this.state.componentStyle.FontWeight = fontWeight;
150
145
  this.props.UpdateStyle(this.state.componentStyle);
151
146
  }
152
147
  onFontStyleChange(checked) {
153
- let fontStyle = checked ? Enums_1.FontStyle.Italic : Enums_1.FontStyle.Normal;
148
+ let fontStyle = checked ? Enums_1.FontStyle.Italic : undefined;
154
149
  this.state.componentStyle.FontStyle = fontStyle;
155
150
  this.props.UpdateStyle(this.state.componentStyle);
156
151
  }
@@ -24,20 +24,14 @@ interface AdaptableToolPanelProps {
24
24
  onCollapseToolPanel: (toolPanel: AdaptableToolPanel | string) => ToolPanelRedux.ToolPanelCollapseToolPanelAction;
25
25
  }
26
26
  export declare const ConnectedAdaptableToolPanel: import("react-redux").ConnectedComponent<(props: AdaptableToolPanelProps) => JSX.Element, import("react-redux").Omit<AdaptableToolPanelProps, "onClick" | "Columns" | "ModuleButtons" | "ToolPanels" | "MainMenuItems" | "onNewColumnListOrder" | "onShowToolPanel" | "onHideToolPanel" | "onExpandToolPanel" | "onCollapseToolPanel">>;
27
- export declare const getAdaptableToolPanelAgGridComponent: (adaptable?: IAdaptable) => {
28
- new (): {
29
- gui: HTMLElement;
30
- init(params?: IToolPanelParams): void;
31
- getGui(): HTMLElement;
32
- refresh(): void;
33
- };
34
- };
35
- export declare const AdaptableToolPanelAgGridComponent: {
27
+ export declare const getAdaptableToolPanelAgGridComponent: (adaptable: IAdaptable) => (() => JSX.Element) | {
36
28
  new (): {
37
29
  gui: HTMLElement;
30
+ unmountReactRoot?: VoidFunction;
38
31
  init(params?: IToolPanelParams): void;
39
32
  getGui(): HTMLElement;
40
33
  refresh(): void;
34
+ destroy(): void;
41
35
  };
42
36
  };
43
37
  export {};
@@ -1,13 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdaptableToolPanelAgGridComponent = exports.getAdaptableToolPanelAgGridComponent = exports.ConnectedAdaptableToolPanel = void 0;
3
+ exports.getAdaptableToolPanelAgGridComponent = exports.ConnectedAdaptableToolPanel = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
6
  const kebabCase_1 = tslib_1.__importDefault(require("lodash/kebabCase"));
7
7
  const ToolPanelRedux = tslib_1.__importStar(require("../../../Redux/ActionsReducers/ToolPanelRedux"));
8
8
  const SystemRedux = tslib_1.__importStar(require("../../../Redux/ActionsReducers/SystemRedux"));
9
9
  const react_redux_1 = require("react-redux");
10
- const react_dom_1 = require("react-dom");
11
10
  const rebass_1 = require("rebass");
12
11
  const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/ArrayExtensions"));
13
12
  const icons_1 = require("../../../components/icons");
@@ -226,19 +225,32 @@ function mapDispatchToProps(dispatch) {
226
225
  };
227
226
  }
228
227
  exports.ConnectedAdaptableToolPanel = (0, react_redux_1.connect)(mapStateToProps, mapDispatchToProps)(AdaptableToolPanelComponent);
228
+ const toolPanelContainerStyle = {
229
+ width: '100%',
230
+ overflow: 'auto',
231
+ };
229
232
  const getAdaptableToolPanelAgGridComponent = (adaptable) => {
233
+ function getContainerId() {
234
+ return 'adaptable-tool-panel_' + adaptable.adaptableOptions.adaptableId;
235
+ }
236
+ if (adaptable.variant === 'react') {
237
+ return () => {
238
+ const content = (0, renderWithAdaptableContext_1.renderWithAdaptableContext)(React.createElement(exports.ConnectedAdaptableToolPanel, { api: adaptable.api, teamSharingActivated: false }), adaptable);
239
+ return (React.createElement("div", { id: getContainerId(), className: 'ag-adaptable-panel', style: toolPanelContainerStyle }, content));
240
+ };
241
+ }
230
242
  return class AdaptableToolPanelAgGridComponent {
231
243
  init(params) {
232
- const agGridApi = params.api;
233
- const Adaptable = agGridApi.__adaptable || adaptable;
234
- const api = Adaptable.api;
244
+ const api = adaptable.api;
235
245
  this.gui = document.createElement('div');
236
- this.gui.id = 'adaptable-tool-panel_' + Adaptable.adaptableOptions.adaptableId;
246
+ this.gui.id = getContainerId();
237
247
  // preserve ag-grid naming convention
238
248
  this.gui.className = 'ag-adaptable-panel';
239
- this.gui.style.width = '100%';
240
- this.gui.style.overflow = 'auto';
241
- (0, react_dom_1.render)((0, renderWithAdaptableContext_1.renderWithAdaptableContext)(React.createElement(exports.ConnectedAdaptableToolPanel, { api: api, teamSharingActivated: false }), Adaptable), this.gui);
249
+ Object.keys(toolPanelContainerStyle).forEach((key) => {
250
+ //@ts-ignore
251
+ this.gui.style[key] = toolPanelContainerStyle[key];
252
+ });
253
+ this.unmountReactRoot = adaptable.renderReactRoot((0, renderWithAdaptableContext_1.renderWithAdaptableContext)(React.createElement(exports.ConnectedAdaptableToolPanel, { api: api, teamSharingActivated: false }), adaptable), this.gui);
242
254
  }
243
255
  getGui() {
244
256
  if (!this.gui) {
@@ -249,7 +261,10 @@ const getAdaptableToolPanelAgGridComponent = (adaptable) => {
249
261
  refresh() {
250
262
  // no refresh logic needed
251
263
  }
264
+ destroy() {
265
+ var _a;
266
+ (_a = this.unmountReactRoot) === null || _a === void 0 ? void 0 : _a.call(this);
267
+ }
252
268
  };
253
269
  };
254
270
  exports.getAdaptableToolPanelAgGridComponent = getAdaptableToolPanelAgGridComponent;
255
- exports.AdaptableToolPanelAgGridComponent = (0, exports.getAdaptableToolPanelAgGridComponent)();
@@ -34,7 +34,7 @@ const CustomToolPanelContent = (props) => {
34
34
  if (hasCustomRenderFn(customToolPanel)) {
35
35
  customToolPanel.render({ visible: false, element, adaptableApi: api });
36
36
  }
37
- else if (hasCustomFrameworkComponent(customToolPanel)) {
37
+ else if (hasCustomFrameworkComponent(customToolPanel) && !api.isDestroyed()) {
38
38
  api.internalApi.destroyFrameworkComponent(element, customToolPanel.frameworkComponent, 'toolPanel');
39
39
  }
40
40
  };
@@ -23,5 +23,5 @@ declare class ToolPanelPopupComponent extends React.Component<ToolPanelPopupComp
23
23
  onShowGridPropertiesChanged(event: React.FormEvent<any>): void;
24
24
  onToolPanelToolPanelsChanged(selectedValues: AdaptableToolPanels): void;
25
25
  }
26
- export declare let ToolPanelPopup: import("react-redux").ConnectedComponent<typeof ToolPanelPopupComponent, import("react-redux").Omit<React.ClassAttributes<ToolPanelPopupComponent> & ToolPanelPopupComponentProps, "key" | "ref" | "onSuspend" | "api" | "modalContainer" | "moduleInfo" | "accessLevel" | "popupParams" | "onClearPopupParams" | "teamSharingActivated" | "onClosePopup" | "onUnSuspend" | "ToolPanelState" | "GridState" | "onToolPanelSetModuleButtons" | "onToolPanelSetToolPanels">>;
26
+ export declare let ToolPanelPopup: import("react-redux").ConnectedComponent<typeof ToolPanelPopupComponent, import("react-redux").Omit<React.ClassAttributes<ToolPanelPopupComponent> & ToolPanelPopupComponentProps, "key" | "ref" | "onSuspend" | "api" | "accessLevel" | "modalContainer" | "moduleInfo" | "onUnSuspend" | "teamSharingActivated" | "ToolPanelState" | "popupParams" | "onClearPopupParams" | "onClosePopup" | "GridState" | "onToolPanelSetModuleButtons" | "onToolPanelSetToolPanels">>;
27
27
  export {};
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const ConditionalStylePopupHeader: React.FunctionComponent;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConditionalStylePopupHeader = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const HelpBlock_1 = tslib_1.__importDefault(require("../../components/HelpBlock"));
7
+ const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
8
+ const AdaptableContext_1 = require("../AdaptableContext");
9
+ const ConditionalStylePopupHeader = () => {
10
+ const adaptable = (0, AdaptableContext_1.useAdaptable)();
11
+ return (React.createElement(HelpBlock_1.default, null,
12
+ "Conditional Styles are deprecated, use",
13
+ ' ',
14
+ React.createElement(SimpleButton_1.default, { onClick: () => adaptable.api.settingsPanelApi.showSettingsPanel('FormatColumn'), variant: "outlined" }, "Format Columns"),
15
+ ' ',
16
+ "instead."));
17
+ };
18
+ exports.ConditionalStylePopupHeader = ConditionalStylePopupHeader;
@@ -28,15 +28,15 @@ function ConditionalStyleRuleWizardSection(props) {
28
28
  useBooleanQuery: (React.createElement(React.Fragment, null,
29
29
  "Use an BooleanQuery if ",
30
30
  React.createElement("i", null, "Scope"),
31
- " is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression")),
31
+ " is 'All Columns' - so any data change may be evaluated in a complex BooleanExpression")),
32
32
  useObservableQuery: (React.createElement(React.Fragment, null,
33
33
  "Use an ObservableQuery if ",
34
34
  React.createElement("i", null, "Scope"),
35
- " is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression")),
35
+ " is 'All Columns' - so any data change may be evaluated in a complex ObservableExpression")),
36
36
  useAggregationQuery: (React.createElement(React.Fragment, null,
37
37
  "Use an AggregatedBooleanQuery if ",
38
38
  React.createElement("i", null, "Scope"),
39
- " is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")),
39
+ " is 'All Columns' - so any data change may be evaluated in a complex AggregatedBooleanExpression")),
40
40
  } })));
41
41
  }
42
42
  exports.ConditionalStyleRuleWizardSection = ConditionalStyleRuleWizardSection;
@@ -24,6 +24,6 @@ const ConditionalStyleSettingsWizardSettings = (props) => {
24
24
  React.createElement(FormLayout_1.default, null,
25
25
  React.createElement(FormLayout_1.FormRow, { label: "Include Grouped Rows:" },
26
26
  React.createElement(rebass_1.Flex, { alignItems: "center", marginLeft: 2 },
27
- React.createElement(CheckBox_1.CheckBox, { checked: data.IncludeGroupedRows, onChange: onIncludeGroupedRowsChanged, mr: 2 }))))))));
27
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "inlcude-grouped-rows", checked: data.IncludeGroupedRows, onChange: onIncludeGroupedRowsChanged, mr: 2 }))))))));
28
28
  };
29
29
  exports.ConditionalStyleSettingsWizardSettings = ConditionalStyleSettingsWizardSettings;
@@ -16,7 +16,6 @@ const NewScopeComponent_1 = require("../../Components/NewScopeComponent");
16
16
  const EntityRulesEditor_1 = require("../../Components/EntityRulesEditor");
17
17
  const ObjectFactory_1 = tslib_1.__importDefault(require("../../../Utilities/ObjectFactory"));
18
18
  const react_redux_1 = require("react-redux");
19
- const ConditionalStyleRedux = tslib_1.__importStar(require("../../../Redux/ActionsReducers/ConditionalStyleRedux"));
20
19
  const ConditionalStyleSettingsWizardSettings_1 = require("./ConditionalStyleSettingsWizardSettings");
21
20
  const ObjectTagsWizardSection_1 = require("../../Wizard/ObjectTagsWizardSection");
22
21
  const ConditionalStyleWizard = (props) => {
@@ -43,16 +42,7 @@ const ConditionalStyleWizard = (props) => {
43
42
  return conditionalStyle;
44
43
  });
45
44
  const dispatch = (0, react_redux_1.useDispatch)();
46
- const handleFinish = () => {
47
- if (data) {
48
- dispatch(ConditionalStyleRedux.ConditionalStyleEdit(conditionalStyle));
49
- }
50
- else {
51
- dispatch(ConditionalStyleRedux.ConditionalStyleAdd(conditionalStyle));
52
- }
53
- props.onCloseWizard();
54
- };
55
- return (React.createElement(OnePageAdaptableWizard_1.OnePageAdaptableWizard, { defaultCurrentSectionName: props.defaultCurrentSectionName, moduleInfo: props.moduleInfo, data: conditionalStyle, onHide: props.onCloseWizard, onFinish: handleFinish, sections: [
45
+ return (React.createElement(OnePageAdaptableWizard_1.OnePageAdaptableWizard, { defaultCurrentSectionName: props.defaultCurrentSectionName, moduleInfo: props.moduleInfo, data: conditionalStyle, onHide: props.onCloseWizard, sections: [
56
46
  {
57
47
  title: 'Style',
58
48
  details: 'Specify the Style to be applied conditionally',
@@ -14,6 +14,6 @@ const DataSetSelector = ({ data }) => {
14
14
  const handleToggle = React.useCallback(() => {
15
15
  adaptable.api.dataSetApi.setDataSet(data.name);
16
16
  }, [isSelected]);
17
- return React.createElement(Radio_1.default, { id: data.name, disabled: isDisabled, checked: isSelected, onClick: handleToggle });
17
+ return (React.createElement(Radio_1.default, { "data-name": "select-dataset-button", "data-value": data.name, disabled: isDisabled, checked: isSelected, onClick: handleToggle }));
18
18
  };
19
19
  exports.DataSetSelector = DataSetSelector;
@@ -15,5 +15,5 @@ declare class DataSetViewPanelComponent extends React.Component<DataSetViewPanel
15
15
  render(): JSX.Element;
16
16
  onSelectedDataSetChanged(dataSetName: string): void;
17
17
  }
18
- export declare let DataSetViewPanelControl: import("react-redux").ConnectedComponent<typeof DataSetViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<DataSetViewPanelComponent> & DataSetViewPanelComponentProps, "api" | "moduleInfo" | "accessLevel" | "viewType" | "CurrentDataSetName" | "onSelectDataSet">>;
18
+ export declare let DataSetViewPanelControl: import("react-redux").ConnectedComponent<typeof DataSetViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<DataSetViewPanelComponent> & DataSetViewPanelComponentProps, "api" | "accessLevel" | "moduleInfo" | "viewType" | "CurrentDataSetName" | "onSelectDataSet">>;
19
19
  export {};
@@ -25,5 +25,5 @@ declare class ExportViewPanelComponent extends React.Component<ExportViewPanelCo
25
25
  private isCustomDestination;
26
26
  private onNewReportSchedule;
27
27
  }
28
- export declare let ExportViewPanelControl: import("react-redux").ConnectedComponent<typeof ExportViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<ExportViewPanelComponent> & ExportViewPanelComponentProps, "api" | "Columns" | "CurrentReport" | "CurrentDestination" | "moduleInfo" | "accessLevel" | "viewType" | "onApplyExport" | "onSelectReport" | "onSelectDestination" | "onNewReport" | "onEditReport" | "onNewReportSchedule" | "UserReports">>;
28
+ export declare let ExportViewPanelControl: import("react-redux").ConnectedComponent<typeof ExportViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<ExportViewPanelComponent> & ExportViewPanelComponentProps, "api" | "accessLevel" | "moduleInfo" | "CurrentReport" | "CurrentDestination" | "Columns" | "viewType" | "onApplyExport" | "onSelectReport" | "onSelectDestination" | "onNewReport" | "onEditReport" | "onNewReportSchedule" | "UserReports">>;
29
29
  export {};
@@ -84,7 +84,7 @@ class ExportViewPanelComponent extends React.Component {
84
84
  React.createElement(DropdownButton_1.default, { disabled: currentReportId === constants_1.SELECT_REPORT_STRING, width: "100%", fontSize: "small", items: destinationItems, columns: ['label'], className: `ab-${elementType}__Export__export`, onClear: () => this.onSelectedDestinationChanged(null), showClearButton: !!currentDestination, variant: "outlined", marginRight: 2 }, currentDestinationId)),
85
85
  React.createElement(rebass_1.Flex, { className: (0, join_1.default)(accessLevel == 'ReadOnly' ? GeneralConstants.READ_ONLY_STYLE : '', `ab-${elementType}__Export__controls`), style: { width: '100%' } },
86
86
  React.createElement(ButtonExport_1.ButtonExport, { onClick: () => onApplyExport(), tooltip: "Export Report", className: `ab-${elementType}__Export__export`, disabled: currentReport == null || currentDestination == null }),
87
- React.createElement(ButtonEdit_1.ButtonEdit, { onClick: () => this.props.onEditReport(this.props.moduleInfo.Popup), tooltip: "Edit Report", className: `ab-${elementType}__Export__edit`, disabled: currentReport == null || this.props.api.exportApi.isCustomReport(currentReport), accessLevel: accessLevel }),
87
+ React.createElement(ButtonEdit_1.ButtonEdit, { onClick: () => this.props.onEditReport(this.props.moduleInfo.Popup), tooltip: "Edit Report", className: `ab-${elementType}__Export__edit`, disabled: currentReport == null || this.props.api.exportApi.isServerReport(currentReport), accessLevel: accessLevel }),
88
88
  React.createElement(ButtonNew_1.ButtonNew, { variant: "text", className: `ab-${elementType}__Export__new`, tone: "neutral", children: null, onClick: () => this.props.onNewReport(this.props.moduleInfo.Popup), tooltip: "Create New Report", accessLevel: accessLevel }),
89
89
  React.createElement(ButtonDelete_1.ButtonDelete, { tooltip: "Delete Report", className: `ab-${elementType}__Export__delete`, disabled: currentReport == null, ConfirmAction: ExportRedux.ReportDelete(currentReport), ConfirmationMsg: deleteMessage, ConfirmationTitle: 'Delete Report', accessLevel: accessLevel }),
90
90
  this.props.api.internalApi
@@ -102,9 +102,9 @@ class ExportViewPanelComponent extends React.Component {
102
102
  ...this.props.api.exportApi.getAvailableSystemReports(),
103
103
  ...this.props.UserReports.map((r) => r.Name),
104
104
  ];
105
- const customReports = this.props.api.exportApi.getAllCustomReports();
106
- if (ArrayExtensions_1.default.IsNotNullOrEmpty(customReports)) {
107
- reportNames.push(...customReports.map((r) => r.name));
105
+ const serverReports = this.props.api.exportApi.getAllServerReports();
106
+ if (ArrayExtensions_1.default.IsNotNullOrEmpty(serverReports)) {
107
+ reportNames.push(...serverReports.map((r) => r.name));
108
108
  }
109
109
  return reportNames;
110
110
  }
@@ -32,7 +32,7 @@ const ReportExportDropdown = (props) => {
32
32
  if ((report === null || report === void 0 ? void 0 : report.Name) === GeneralConstants_1.VISUAL_DATA_REPORT) {
33
33
  destinationItems.forEach((item) => (item.disabled = item.label === Enums_1.ExportDestination.Excel ? false : true));
34
34
  }
35
- return (React.createElement(DropdownButton_1.default, { columns: ['label'], tooltip: "Export Report", variant: "text", items: destinationItems },
35
+ return (React.createElement(DropdownButton_1.default, { "data-name": "export-dropdown", columns: ['label'], tooltip: "Export Report", variant: "text", items: destinationItems },
36
36
  React.createElement(icons_1.Icon, { name: "export" })));
37
37
  };
38
38
  exports.ReportExportDropdown = ReportExportDropdown;
@@ -33,16 +33,15 @@ const ReportNameWizardSection = (props) => {
33
33
  const { api, data } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
34
34
  const validCheck = (0, exports.isValidReportName)(data, api);
35
35
  const ErrorMessage = validCheck === true ? null : validCheck;
36
- return (React.createElement(React.Fragment, null,
37
- React.createElement(rebass_1.Box, null,
38
- React.createElement(FormLayout_1.default, { columns: [1, 2] },
39
- React.createElement(FormLayout_1.FormRow, null,
40
- React.createElement(rebass_1.Text, { marginRight: 2 }, "Name:"),
41
- React.createElement(Input_1.default, { width: "100%", type: "text", autoFocus: true, placeholder: "Name", value: data.Name, onChange: (e) => {
42
- props.onChange(Object.assign(Object.assign({}, data), { Name: e.target.value }));
43
- } })),
44
- React.createElement(FormLayout_1.FormRow, null,
45
- React.createElement(React.Fragment, null),
46
- ErrorMessage ? React.createElement(ErrorBox_1.default, null, ErrorMessage) : null)))));
36
+ return (React.createElement(rebass_1.Box, null,
37
+ React.createElement(FormLayout_1.default, { columns: [1, 2] },
38
+ React.createElement(FormLayout_1.FormRow, null,
39
+ React.createElement(rebass_1.Text, { marginRight: 2 }, "Name:"),
40
+ React.createElement(Input_1.default, { "data-name": "export-name", width: "100%", type: "text", autoFocus: true, placeholder: "Name", value: data.Name, onChange: (e) => {
41
+ props.onChange(Object.assign(Object.assign({}, data), { Name: e.target.value }));
42
+ } })),
43
+ React.createElement(FormLayout_1.FormRow, null,
44
+ React.createElement(React.Fragment, null),
45
+ ErrorMessage ? React.createElement(ErrorBox_1.default, null, ErrorMessage) : null))));
47
46
  };
48
47
  exports.ReportNameWizardSection = ReportNameWizardSection;
@@ -12,4 +12,4 @@ export declare class FilterSummaryComponent extends React.Component<FilterSummar
12
12
  render(): any;
13
13
  getDescription(columnFilter: ColumnFilter): string;
14
14
  }
15
- export declare let FilterSummary: import("react-redux").ConnectedComponent<typeof FilterSummaryComponent, import("react-redux").Omit<React.ClassAttributes<FilterSummaryComponent> & FilterSummaryProps, "ColumnFilters" | "onClearPopupParams" | "onShare" | "onClearFilter">>;
15
+ export declare let FilterSummary: import("react-redux").ConnectedComponent<typeof FilterSummaryComponent, import("react-redux").Omit<React.ClassAttributes<FilterSummaryComponent> & FilterSummaryProps, "ColumnFilters" | "onShare" | "onClearPopupParams" | "onClearFilter">>;
@@ -18,5 +18,5 @@ declare class FilterViewPanelComponent extends React.Component<FilterViewPanelCo
18
18
  private onClearFilters;
19
19
  private onClearColumnFilter;
20
20
  }
21
- export declare const FilterViewPanelControl: import("react-redux").ConnectedComponent<typeof FilterViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<FilterViewPanelComponent> & FilterViewPanelComponentProps, "api" | "Columns" | "ColumnFilters" | "moduleInfo" | "accessLevel" | "IsQuickFilterVisible" | "viewType" | "onHideQuickFilterBar" | "onShowQuickFilterBar" | "Entitlements">>;
21
+ export declare const FilterViewPanelControl: import("react-redux").ConnectedComponent<typeof FilterViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<FilterViewPanelComponent> & FilterViewPanelComponentProps, "api" | "accessLevel" | "moduleInfo" | "Columns" | "ColumnFilters" | "IsQuickFilterVisible" | "viewType" | "onHideQuickFilterBar" | "onShowQuickFilterBar" | "Entitlements">>;
22
22
  export {};
@@ -8,13 +8,13 @@ const StylePreview_1 = require("../../components/StylePreview");
8
8
  const FlashingCellStyle = (props) => {
9
9
  const { data } = props, boxProps = tslib_1.__rest(props, ["data"]);
10
10
  return (react_1.default.createElement(rebass_1.Flex, Object.assign({ flexDirection: "row" }, boxProps),
11
- react_1.default.createElement(StylePreview_1.StylePreview, { mr: 1, flex: 1, styleObject: props.data.UpChangeStyle },
11
+ react_1.default.createElement(StylePreview_1.StylePreview, { "data-value": "up-style", mr: 1, flex: 1, styleObject: props.data.UpChangeStyle },
12
12
  "Up ",
13
13
  !props.data.UpChangeStyle ? ' - no style' : ''),
14
- react_1.default.createElement(StylePreview_1.StylePreview, { mr: 1, flex: 1, styleObject: props.data.DownChangeStyle },
14
+ react_1.default.createElement(StylePreview_1.StylePreview, { "data-value": "down-style", mr: 1, flex: 1, styleObject: props.data.DownChangeStyle },
15
15
  "Down",
16
16
  !props.data.DownChangeStyle ? ' - no style' : ''),
17
- react_1.default.createElement(StylePreview_1.StylePreview, { flex: 1, styleObject: props.data.NeutralChangeStyle },
17
+ react_1.default.createElement(StylePreview_1.StylePreview, { "data-value": "neutral-style", flex: 1, styleObject: props.data.NeutralChangeStyle },
18
18
  "Neutral ",
19
19
  !props.data.NeutralChangeStyle ? ' - no style' : '')));
20
20
  };
@@ -36,15 +36,15 @@ const FlashingAlertRulesWizardSection = (props) => {
36
36
  useBooleanQuery: (React.createElement(React.Fragment, null,
37
37
  "Use an BooleanQuery if ",
38
38
  React.createElement("i", null, "Scope"),
39
- " is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression")),
39
+ " is 'All Columns' - so any data change may be evaluated in a complex BooleanExpression")),
40
40
  useObservableQuery: (React.createElement(React.Fragment, null,
41
41
  "Use an ObservableQuery if ",
42
42
  React.createElement("i", null, "Scope"),
43
- " is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression")),
43
+ " is 'All Columns' - so any data change may be evaluated in a complex ObservableExpression")),
44
44
  useAggregationQuery: (React.createElement(React.Fragment, null,
45
45
  "Use an AggregatedBooleanQuery if ",
46
46
  React.createElement("i", null, "Scope"),
47
- " is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")),
47
+ " is 'All Columns' - so any data change may be evaluated in a complex AggregatedBooleanExpression")),
48
48
  } }));
49
49
  };
50
50
  exports.FlashingAlertRulesWizardSection = FlashingAlertRulesWizardSection;
@@ -64,23 +64,23 @@ const FlashingAlertSettingsWizardSection = (props) => {
64
64
  React.createElement(Tabs_1.Tabs.Content, null,
65
65
  React.createElement(FormLayout_1.default, null,
66
66
  React.createElement(FormLayout_1.FormRow, { label: "Duration Type" },
67
- React.createElement(Radio_1.default, { mr: 3, checked: duration == 'always', tabIndex: -1, onChange: () => handleTypeChange('always') }, "Always"),
68
- React.createElement(Radio_1.default, { checked: duration !== 'always', tabIndex: -1, onChange: () => handleTypeChange('number') }, "Limited (ms)")),
67
+ React.createElement(Radio_1.default, { "data-name": "duration-type-always", mr: 3, checked: duration == 'always', tabIndex: -1, onChange: () => handleTypeChange('always') }, "Always"),
68
+ React.createElement(Radio_1.default, { "data-name": "duration-type-number", checked: duration !== 'always', tabIndex: -1, onChange: () => handleTypeChange('number') }, "Limited (ms)")),
69
69
  React.createElement(FormLayout_1.FormRow, { label: "" },
70
70
  duration !== 'always' && (React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "baseline" },
71
71
  React.createElement(rebass_1.Text, { fontSize: 2, mr: 2 }, "After"),
72
- React.createElement(Input_1.default, { readOnly: props.readOnly, type: "text", name: "value", ref: inputRef, mt: 2, mr: 1, value: duration, onChange: (event) => {
72
+ React.createElement(Input_1.default, { "data-name": "duration-input", readOnly: props.readOnly, type: "text", name: "value", ref: inputRef, mt: 2, mr: 1, value: duration, onChange: (event) => {
73
73
  const value = event.target.value;
74
74
  setDuration(isNaN(Number(value)) ? 500 : Number(value));
75
75
  } }),
76
76
  React.createElement(rebass_1.Text, { fontSize: 2 }, "milliseconds"))),
77
77
  duration === 'always' && (React.createElement(rebass_1.Text, { height: 43, fontSize: 3 }, "Persists the flashing style indeterminately - can be removed manually"))),
78
78
  React.createElement(FormLayout_1.FormRow, { label: "Flash Target" },
79
- React.createElement(CheckBox_1.CheckBox, { onChange: (checked) => handleTargetChange('cell', checked), mr: 3, checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'cell' ||
79
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "flashing-target", onChange: (checked) => handleTargetChange('cell', checked), mr: 3, checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'cell' ||
80
80
  ((_c = (_b = flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === null || _b === void 0 ? void 0 : _b.includes) === null || _c === void 0 ? void 0 : _c.call(_b, 'cell')), tabIndex: -1 }, "Cell"),
81
- React.createElement(CheckBox_1.CheckBox, { mr: 3, onChange: (checked) => handleTargetChange('row', checked), checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'row' ||
81
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "flashing-target-row", mr: 3, onChange: (checked) => handleTargetChange('row', checked), checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'row' ||
82
82
  ((_e = (_d = flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === null || _d === void 0 ? void 0 : _d.includes) === null || _e === void 0 ? void 0 : _e.call(_d, 'row')), tabIndex: -1 }, "Row"),
83
- React.createElement(CheckBox_1.CheckBox, { onChange: (checked) => handleTargetChange('aggFuncCell', checked), checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'aggFuncCell' ||
83
+ React.createElement(CheckBox_1.CheckBox, { "data-name": "flashing-target-aggFuncCell", onChange: (checked) => handleTargetChange('aggFuncCell', checked), checked: (flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === 'aggFuncCell' ||
84
84
  ((_g = (_f = flashingCell === null || flashingCell === void 0 ? void 0 : flashingCell.FlashTarget) === null || _f === void 0 ? void 0 : _f.includes) === null || _g === void 0 ? void 0 : _g.call(_f, 'aggFuncCell')), tabIndex: -1 }, "Aggregated Function Cell")))))));
85
85
  };
86
86
  exports.FlashingAlertSettingsWizardSection = FlashingAlertSettingsWizardSection;
@@ -44,9 +44,6 @@ const FlashingCellWizard = (props) => {
44
44
  UpChangeStyle: (0, react_1.useCallback)(updateProperty('UpChangeStyle'), []),
45
45
  NeutralChangeStyle: (0, react_1.useCallback)(updateProperty('NeutralChangeStyle'), []),
46
46
  };
47
- const flashStyleComponent = (React.createElement(FlashingCellStyleWizardSection_1.FlashingAlertStyleWizardSection, { onStyleChange: (styleName, style) => {
48
- updateStyles[styleName](style);
49
- } }));
50
47
  const dispatch = (0, react_redux_1.useDispatch)();
51
48
  const handleFinish = () => {
52
49
  if (props.data) {
@@ -81,7 +78,10 @@ const FlashingCellWizard = (props) => {
81
78
  },
82
79
  {
83
80
  details: 'Choose the Flashing Styles',
84
- render: () => React.createElement(rebass_1.Box, { padding: 2 }, flashStyleComponent),
81
+ render: () => (React.createElement(rebass_1.Box, { padding: 2 },
82
+ React.createElement(FlashingCellStyleWizardSection_1.FlashingAlertStyleWizardSection, { onStyleChange: (styleName, style) => {
83
+ updateStyles[styleName](style);
84
+ } }))),
85
85
  renderSummary: FlashingCellStyleWizardSection_1.renderFlashingAlertStyleSummary,
86
86
  title: 'Flash Styles',
87
87
  },
@@ -35,7 +35,7 @@ class FormatColumnSummaryComponent extends React.Component {
35
35
  this.state = UIHelper_1.UIHelper.getEmptyConfigState();
36
36
  }
37
37
  render() {
38
- let formatColumn = this.props.api.formatColumnApi.getFormatColumnForColumn(this.props.summarisedColumn);
38
+ const [formatColumn] = this.props.api.formatColumnApi.getFormatColumnsForColumn(this.props.summarisedColumn);
39
39
  let noFormatColumn = formatColumn == null;
40
40
  let formatColumnRow;
41
41
  if (noFormatColumn) {