@adaptabletools/adaptable 12.0.0-canary.8 → 12.0.1

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 (127) hide show
  1. package/base.css +6 -19
  2. package/bundle.cjs.js +125 -125
  3. package/index.css +7 -23
  4. package/package.json +2 -2
  5. package/publishTimestamp.d.ts +1 -1
  6. package/publishTimestamp.js +1 -1
  7. package/src/AdaptableOptions/ActionOptions.d.ts +1 -1
  8. package/src/Api/FilterApi.d.ts +7 -2
  9. package/src/Api/Implementation/FilterApiImpl.d.ts +1 -0
  10. package/src/Api/Implementation/FilterApiImpl.js +5 -0
  11. package/src/Api/Implementation/InternalApiImpl.d.ts +4 -1
  12. package/src/Api/Implementation/InternalApiImpl.js +16 -3
  13. package/src/Api/Implementation/TeamSharingApiImpl.d.ts +1 -0
  14. package/src/Api/Implementation/TeamSharingApiImpl.js +5 -0
  15. package/src/Api/InternalApi.d.ts +4 -1
  16. package/src/Api/TeamSharingApi.d.ts +4 -0
  17. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +27 -6
  18. package/src/PredefinedConfig/Common/AdaptablePredicate.js +2 -2
  19. package/src/PredefinedConfig/Selection/GridCellRange.d.ts +19 -0
  20. package/src/PredefinedConfig/StatusBarState.d.ts +1 -1
  21. package/src/Redux/ActionsReducers/LayoutRedux.js +3 -0
  22. package/src/Strategy/AdaptableModuleBase.d.ts +10 -5
  23. package/src/Strategy/AdaptableModuleBase.js +6 -0
  24. package/src/Strategy/AlertModule.d.ts +2 -8
  25. package/src/Strategy/AlertModule.js +3 -0
  26. package/src/Strategy/DashboardModule.js +1 -0
  27. package/src/Strategy/ExportModule.js +1 -0
  28. package/src/Strategy/FormatColumnModule.js +3 -3
  29. package/src/Strategy/GridInfoModule.js +2 -0
  30. package/src/Strategy/Interface/IModule.d.ts +16 -4
  31. package/src/Strategy/LayoutModule.js +2 -0
  32. package/src/Strategy/TeamSharingModule.d.ts +11 -1
  33. package/src/Strategy/TeamSharingModule.js +104 -0
  34. package/src/Utilities/MenuItem.d.ts +4 -4
  35. package/src/Utilities/Services/TeamSharingService.js +0 -2
  36. package/src/View/AdaptableViewFactory.js +0 -2
  37. package/src/View/Alert/ActiveAlertsPanelItemLabel.d.ts +5 -0
  38. package/src/View/Alert/ActiveAlertsPanelItemLabel.js +22 -0
  39. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +2 -2
  40. package/src/View/ColorPicker.d.ts +1 -1
  41. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  42. package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +8 -4
  43. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +13 -1
  44. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +23 -15
  45. package/src/View/Components/Buttons/ButtonDelete.js +3 -3
  46. package/src/View/Components/Buttons/ButtonPause.js +11 -1
  47. package/src/View/Components/FilterForm/QuickFilterForm.js +23 -2
  48. package/src/View/Components/Panels/PanelWithButton.d.ts +2 -1
  49. package/src/View/Components/Panels/PanelWithImage.d.ts +3 -2
  50. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +4 -0
  51. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +1 -1
  52. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +1 -11
  53. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -11
  54. package/src/View/Dashboard/CustomDashboardButton.js +2 -15
  55. package/src/View/Dashboard/CustomToolbarWrapper.js +2 -11
  56. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +6 -0
  57. package/src/View/GridInfo/GridInfoPopup.js +1 -1
  58. package/src/View/Layout/LayoutEditorStandalonePopup.js +3 -1
  59. package/src/View/Layout/LayoutPopup.d.ts +1 -1
  60. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  61. package/src/View/Layout/Wizard/LayoutEditorWizard.d.ts +2 -27
  62. package/src/View/TeamSharing/SharedEntityDependencies.d.ts +8 -0
  63. package/src/View/TeamSharing/SharedEntityDependencies.js +27 -0
  64. package/src/View/TeamSharing/SharedEntityObjectView.d.ts +9 -0
  65. package/src/View/TeamSharing/SharedEntityObjectView.js +84 -0
  66. package/src/View/TeamSharing/TeamSharingApplyButton.d.ts +6 -0
  67. package/src/View/TeamSharing/TeamSharingApplyButton.js +15 -0
  68. package/src/View/UIHelper.d.ts +2 -2
  69. package/src/agGrid/ActionColumnRenderer.js +5 -11
  70. package/src/agGrid/Adaptable.d.ts +2 -26
  71. package/src/agGrid/Adaptable.js +51 -52
  72. package/src/agGrid/agGridMenuHelper.d.ts +1 -0
  73. package/src/agGrid/agGridMenuHelper.js +15 -4
  74. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +6 -12
  75. package/src/components/AdaptableIconComponent/index.d.ts +2 -1
  76. package/src/components/AdaptableIconComponent/index.js +36 -3
  77. package/src/components/Datepicker/index.d.ts +1 -1
  78. package/src/components/Input/index.d.ts +1 -1
  79. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  80. package/src/components/PopupWithFooter.d.ts +1 -1
  81. package/src/components/SimpleButton/index.js +1 -1
  82. package/src/components/Textarea/index.d.ts +1 -1
  83. package/src/components/icons/{color-drop.d.ts → ends-with.d.ts} +0 -0
  84. package/src/components/icons/{format-letter-ends-with.js → ends-with.js} +0 -0
  85. package/src/components/icons/{filter-outline.d.ts → filter.d.ts} +0 -0
  86. package/src/components/icons/{filter-outline.js → filter.js} +0 -0
  87. package/src/components/icons/index.d.ts +5 -7
  88. package/src/components/icons/index.js +7 -21
  89. package/src/components/icons/{format-letter-ends-with.d.ts → starts-with.d.ts} +0 -0
  90. package/src/components/icons/{format-letter-starts-with.js → starts-with.js} +0 -0
  91. package/src/metamodel/adaptable.metamodel.d.ts +75 -0
  92. package/src/metamodel/adaptable.metamodel.js +1 -1
  93. package/src/types.d.ts +1 -1
  94. package/version.d.ts +1 -1
  95. package/version.js +1 -1
  96. package/src/View/Alert/AlertSharedEntity.d.ts +0 -5
  97. package/src/View/Alert/AlertSharedEntity.js +0 -19
  98. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.d.ts +0 -5
  99. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.js +0 -20
  100. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.d.ts +0 -5
  101. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.js +0 -23
  102. package/src/View/CustomSort/CustomSortSharedEntity.d.ts +0 -6
  103. package/src/View/CustomSort/CustomSortSharedEntity.js +0 -24
  104. package/src/View/Export/ExportSharedEntity.d.ts +0 -5
  105. package/src/View/Export/ExportSharedEntity.js +0 -16
  106. package/src/View/Filter/FilterSharedEntity.d.ts +0 -5
  107. package/src/View/Filter/FilterSharedEntity.js +0 -15
  108. package/src/View/FormatColumn/FormatColumnSharedEntity.d.ts +0 -5
  109. package/src/View/FormatColumn/FormatColumnSharedEntity.js +0 -18
  110. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.d.ts +0 -5
  111. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.js +0 -24
  112. package/src/View/Layout/LayoutSharedEntity.d.ts +0 -5
  113. package/src/View/Layout/LayoutSharedEntity.js +0 -15
  114. package/src/View/PlusMinus/PlusMinusSharedEntity.d.ts +0 -5
  115. package/src/View/PlusMinus/PlusMinusSharedEntity.js +0 -21
  116. package/src/View/Query/NamedQuerySharedEntity.d.ts +0 -5
  117. package/src/View/Query/NamedQuerySharedEntity.js +0 -19
  118. package/src/View/Shortcut/ShortcutSharedEntity.d.ts +0 -5
  119. package/src/View/Shortcut/ShortcutSharedEntity.js +0 -19
  120. package/src/View/TeamSharing/TeamSharingPopup.d.ts +0 -23
  121. package/src/View/TeamSharing/TeamSharingPopup.js +0 -163
  122. package/src/agGrid/rowEditIcons.d.ts +0 -5
  123. package/src/agGrid/rowEditIcons.js +0 -10
  124. package/src/components/icons/color-drop.js +0 -7
  125. package/src/components/icons/format-letter-starts-with.d.ts +0 -3
  126. package/src/components/icons/pause-red.d.ts +0 -3
  127. package/src/components/icons/pause-red.js +0 -7
@@ -33,7 +33,7 @@ const AdaptablePopupTeamSharing = (props) => {
33
33
  React.createElement("strong", null, "Active"),
34
34
  ": a \"live\" share that is automatically updated with every local change"))),
35
35
  React.createElement(FormLayout_1.default, { padding: 2 },
36
- React.createElement(FormLayout_1.FormRow, { label: "Description: " },
36
+ React.createElement(FormLayout_1.FormRow, { label: "Name: " },
37
37
  React.createElement(Input_1.default, { autoFocus: true, value: config.description, type: "string", width: 300, placeholder: "Enter text", onChange: (e) => setConfig(Object.assign(Object.assign({}, config), { description: e.target.value })) })),
38
38
  React.createElement(FormLayout_1.FormRow, { label: "Share: " },
39
39
  React.createElement(rebass_1.Flex, { flexDirection: "row" },
@@ -148,19 +148,11 @@ const AdaptableToolPanelComponent = (props) => {
148
148
  return props.api.toolPanelApi.getCustomToolPanelButtons().map((button) => {
149
149
  // TODO: variants of this mapping are present in several places (just search for api.internalApi.getStyleForButton() usages)
150
150
  // with the next opportunity we should abstract it
151
- // the default size of AdapTable SVG ModuleButtons
152
- const defaultIconProps = {
153
- style: {
154
- height: 'var(--ab-cmp-simple-button__height)',
155
- width: 'var(--ab-cmp-simple-button__width)',
156
- },
157
- };
158
151
  const toolPanelContext = {
159
152
  adaptableApi: props.api,
160
153
  toolPanelState: props.api.toolPanelApi.getToolPanelState(),
161
154
  };
162
155
  const buttonIcon = props.api.internalApi.getIconForButton(button, toolPanelContext);
163
- const iconProps = buttonIcon && Object.assign({}, defaultIconProps, buttonIcon);
164
156
  let buttonStyle = props.api.internalApi.getStyleForButton(button, toolPanelContext);
165
157
  let buttonLabel = props.api.internalApi.getLabelForButton(button, toolPanelContext);
166
158
  let buttonTooltip = props.api.internalApi.getTooltipForButton(button, toolPanelContext);
@@ -171,9 +163,7 @@ const AdaptableToolPanelComponent = (props) => {
171
163
  const buttonVariant = buttonStyle && buttonStyle.variant ? buttonStyle.variant : 'text';
172
164
  const buttonTone = buttonStyle && buttonStyle.tone ? buttonStyle.tone : 'none';
173
165
  const uniqueKey = buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : uuid_1.createUuid();
174
- return (React.createElement(SimpleButton_1.default, { key: uniqueKey, variant: buttonVariant, tone: buttonTone, className: `ab-ToolPanel__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, disabled: disabled, onClick: () => button.onClick(button, toolPanelContext), accessLevel: 'Full' },
175
- buttonIcon ? React.createElement("img", Object.assign({}, iconProps)) : null,
176
- buttonLabel));
166
+ return (React.createElement(SimpleButton_1.default, { key: uniqueKey, variant: buttonVariant, tone: buttonTone, className: `ab-ToolPanel__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, icon: buttonIcon, disabled: disabled, onClick: () => button.onClick(button, toolPanelContext), accessLevel: 'Full' }, buttonLabel));
177
167
  });
178
168
  };
179
169
  const onSetColumnVisibility = (name) => {
@@ -44,20 +44,12 @@ const CustomToolPanelContent = (props) => {
44
44
  ((_a = customToolPanel.buttons) === null || _a === void 0 ? void 0 : _a.length) && (React.createElement("div", { id: buttonsDivId, className: `ab-ToolPanel__custom-content__buttons ${buttonsDivId}` }, customToolPanel.buttons.map((button) => {
45
45
  // TODO: variants of this mapping are present in several places (just search for api.internalApi.getStyleForButton() usages)
46
46
  // with the next opportunity we should abstract it
47
- // the default size of AdapTable SVG ModuleButtons
48
- const defaultIconProps = {
49
- style: {
50
- height: 'var(--ab-cmp-simple-button__height)',
51
- width: 'var(--ab-cmp-simple-button__width)',
52
- },
53
- };
54
47
  const toolPanelContext = {
55
48
  adaptableApi: api,
56
49
  toolPanelState: api.toolPanelApi.getToolPanelState(),
57
50
  customToolPanel: customToolPanel,
58
51
  };
59
52
  const buttonIcon = api.internalApi.getIconForButton(button, toolPanelContext);
60
- const iconProps = buttonIcon && Object.assign({}, defaultIconProps, buttonIcon);
61
53
  let buttonStyle = api.internalApi.getStyleForButton(button, toolPanelContext);
62
54
  let buttonLabel = api.internalApi.getLabelForButton(button, toolPanelContext);
63
55
  let buttonTooltip = api.internalApi.getTooltipForButton(button, toolPanelContext);
@@ -68,9 +60,7 @@ const CustomToolPanelContent = (props) => {
68
60
  const buttonVariant = buttonStyle && buttonStyle.variant ? buttonStyle.variant : 'text';
69
61
  const buttonTone = buttonStyle && buttonStyle.tone ? buttonStyle.tone : 'none';
70
62
  const uniqueKey = buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : uuid_1.createUuid();
71
- return (React.createElement(SimpleButton_1.default, { key: uniqueKey, variant: buttonVariant, tone: buttonTone, className: `ab-ToolPanel__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, disabled: disabled, onClick: () => button.onClick(button, toolPanelContext), accessLevel: 'Full' },
72
- buttonIcon ? React.createElement("img", Object.assign({}, iconProps)) : null,
73
- buttonLabel));
63
+ return (React.createElement(SimpleButton_1.default, { key: uniqueKey, variant: buttonVariant, tone: buttonTone, className: `ab-ToolPanel__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, icon: buttonIcon, disabled: disabled, onClick: () => button.onClick(button, toolPanelContext), accessLevel: 'Full' }, buttonLabel));
74
64
  })))));
75
65
  };
76
66
  exports.CustomToolPanelContent = CustomToolPanelContent;
@@ -15,18 +15,7 @@ const CustomDashboardButton = (props) => {
15
15
  adaptableApi: props.api,
16
16
  dashboardState: props.api.dashboardApi.getDashboardState(),
17
17
  };
18
- const defaultIconProps = {
19
- style: {
20
- height: 'var(--ab-cmp-simple-button__height)',
21
- width: 'var(--ab-cmp-simple-button__width)',
22
- },
23
- };
24
18
  const buttonIcon = props.api.internalApi.getIconForButton(button, dashboardContext);
25
- const iconProps = buttonIcon && Object.assign({}, defaultIconProps, buttonIcon);
26
- // const iconProps: any = button.icon ? { ...button.icon } : null;
27
- // if (iconProps) {
28
- // delete iconProps.Uuid;
29
- // }
30
19
  let buttonStyle = props.api.internalApi.getStyleForButton(button, dashboardContext);
31
20
  let buttonLabel = props.api.internalApi.getLabelForButton(button, dashboardContext);
32
21
  let buttonTooltip = props.api.internalApi.getTooltipForButton(button, dashboardContext);
@@ -34,15 +23,13 @@ const CustomDashboardButton = (props) => {
34
23
  return null;
35
24
  }
36
25
  const disabled = button.disabled && button.disabled(button, dashboardContext);
37
- return (React.createElement(SimpleButton_1.default, { key: buttonLabel, variant: buttonStyle && buttonStyle.variant ? buttonStyle.variant : 'text', tone: buttonStyle && buttonStyle.tone ? buttonStyle.tone : 'none', className: `ab-DashboardToolbar__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, disabled: disabled || props.accessLevel == 'ReadOnly', onClick: () => {
26
+ return (React.createElement(SimpleButton_1.default, { key: buttonLabel, variant: buttonStyle && buttonStyle.variant ? buttonStyle.variant : 'text', tone: buttonStyle && buttonStyle.tone ? buttonStyle.tone : 'none', className: `ab-DashboardToolbar__Home__${kebabCase_1.default(buttonLabel)} ${(buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className) || ''}`, tooltip: buttonTooltip, icon: buttonIcon, disabled: disabled || props.accessLevel == 'ReadOnly', onClick: () => {
38
27
  var _a;
39
28
  (_a = button.onClick) === null || _a === void 0 ? void 0 : _a.call(button, button, dashboardContext);
40
29
  setTimeout(() => {
41
30
  // mutate state to force a re-rendering
42
31
  setComponentRevision(componentRevision + 1);
43
32
  }, 16);
44
- }, accessLevel: 'Full' },
45
- buttonIcon ? React.createElement("img", Object.assign({}, iconProps)) : null,
46
- buttonLabel));
33
+ }, accessLevel: 'Full' }, buttonLabel));
47
34
  };
48
35
  exports.CustomDashboardButton = CustomDashboardButton;
@@ -69,14 +69,7 @@ const CustomToolbarWrapper = (props) => {
69
69
  adaptableApi: api,
70
70
  dashboardState: api.dashboardApi.getDashboardState(),
71
71
  };
72
- const defaultIconProps = {
73
- style: {
74
- height: 'var(--ab-cmp-simple-button__height)',
75
- width: 'var(--ab-cmp-simple-button__width)',
76
- },
77
- };
78
72
  const buttonIcon = api.internalApi.getIconForButton(button, dashboardContext);
79
- const iconProps = buttonIcon && Object.assign({}, defaultIconProps, buttonIcon);
80
73
  let buttonStyle = api.internalApi.getStyleForButton(button, dashboardContext);
81
74
  let buttonLabel = api.internalApi.getLabelForButton(button, dashboardContext);
82
75
  let buttonTooltip = api.internalApi.getTooltipForButton(button, dashboardContext);
@@ -86,15 +79,13 @@ const CustomToolbarWrapper = (props) => {
86
79
  const disabled = button.disabled && button.disabled(button, dashboardContext);
87
80
  let buttonVariant = buttonStyle && buttonStyle.variant ? buttonStyle.variant : 'outlined';
88
81
  let buttonTone = buttonStyle && buttonStyle.tone ? buttonStyle.tone : 'neutral';
89
- return (React.createElement(SimpleButton_1.default, { style: { marginLeft: index ? 'var(--ab-space-1)' : 0 }, key: index, disabled: disabled, tooltip: buttonTooltip, variant: buttonVariant, tone: buttonTone, onClick: () => {
82
+ return (React.createElement(SimpleButton_1.default, { style: { marginLeft: index ? 'var(--ab-space-1)' : 0 }, key: index, disabled: disabled, tooltip: buttonTooltip, icon: buttonIcon, variant: buttonVariant, tone: buttonTone, onClick: () => {
90
83
  button.onClick ? button.onClick(button, dashboardContext) : null;
91
84
  setTimeout(() => {
92
85
  // mutate state to force a re-rendering
93
86
  setComponentRevision(componentRevision + 1);
94
87
  }, 16);
95
- } },
96
- buttonIcon ? React.createElement("img", Object.assign({}, iconProps)) : null,
97
- buttonLabel));
88
+ } }, buttonLabel));
98
89
  }))));
99
90
  };
100
91
  exports.CustomToolbarWrapper = CustomToolbarWrapper;
@@ -60,6 +60,7 @@ const isValidFreeTextColumn = (data, api) => {
60
60
  };
61
61
  exports.isValidFreeTextColumn = isValidFreeTextColumn;
62
62
  const FreeTextColumnSettingsWizardSection = (props) => {
63
+ var _a;
63
64
  const { data, api } = OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext();
64
65
  const Pattern = api.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat;
65
66
  const [ColumnNameFocused, setColumnNameFocused] = react_1.useState(false);
@@ -128,6 +129,11 @@ const FreeTextColumnSettingsWizardSection = (props) => {
128
129
  } })) : (React.createElement(AdaptableInput_1.default, { value: data.DataType === 'Date' && data.DefaultValue
129
130
  ? DateHelper_1.parseToISO(data.DefaultValue, Pattern) || ''
130
131
  : data.DefaultValue || '', style: { width: '100%', maxWidth: 500 }, type: data.DataType === 'Number' ? 'number' : data.DataType === 'Date' ? 'date' : 'text', placeholder: "Default Column Value (not required)", onChange: (e) => handleDefaultValueChange(e) }))),
132
+ React.createElement(FormLayout_1.FormRow, { label: "Header Tooltip" },
133
+ React.createElement(Input_1.default, { "data-name": "header-tooltip", type: "text", style: { width: '100%', maxWidth: 500 }, value: ((_a = data.FreeTextColumnSettings) === null || _a === void 0 ? void 0 : _a.HeaderToolTip) || '', onChange: (e) => handleSpecialColumnSettingsChange({
134
+ HeaderToolTip: e.target.value,
135
+ }) })),
136
+ ' ',
131
137
  data.DataType == 'String' && (React.createElement(FormLayout_1.FormRow, { label: "Editor Type" },
132
138
  React.createElement(Radio_1.default, { value: "Inline", checked: data.TextEditor == 'Inline', onChange: (_, e) => onDynamicSelectChanged(e), marginRight: 2 }, "Inline Editor"),
133
139
  React.createElement(Radio_1.default, { value: "Large", checked: data.TextEditor == 'Large', onChange: (_, e) => onDynamicSelectChanged(e) }, "Large Editor")))),
@@ -102,7 +102,7 @@ const GridInfoPopup = (props) => {
102
102
  return React.createElement(AdaptableObjectRow_1.AdaptableObjectRow, { key: index, colItems: x });
103
103
  });
104
104
  const showRadioButtons = [showGridSummary, showAdaptableOptions, showColumnInfo, showAdaptableObjects].filter((item) => item).length > 1;
105
- return (React.createElement(PopupPanel_1.PopupPanel, { headerText: 'Grid Info', glyphicon: 'info-sign' },
105
+ return (React.createElement(PopupPanel_1.PopupPanel, { headerText: 'Grid Info', glyphicon: 'info' },
106
106
  React.createElement(rebass_1.Flex, { marginBottom: 2, padding: 3 }, showRadioButtons && (React.createElement(React.Fragment, null,
107
107
  showGridSummary && (React.createElement(Radio_1.default, { "data-name": "radioButton-GridSummary", marginRight: 3, value: "GridSummary", checked: state.ActiveTab == 'GridSummary', onChange: (_, e) => onShowGridSummaryChanged('GridSummary') }, "Summary")),
108
108
  showAdaptableOptions && (React.createElement(Radio_1.default, { "data-name": "radioButton-AdaptableOptions", marginRight: 3, value: "AdaptableOptions", checked: state.ActiveTab == 'AdaptableOptions', onChange: (_, e) => onShowGridSummaryChanged('AdaptableOptions') }, "Options")),
@@ -70,7 +70,9 @@ const LayoutEditorStandalonePopup = (props) => {
70
70
  }, []);
71
71
  const finishDisabled = !layoutData.Name;
72
72
  return (React.createElement(rebass_1.Flex, { height: "100%", flexDirection: "column" },
73
- React.createElement(LayoutEditorWizard_1.LayoutEditorWizard, { data: layoutData, api: adaptable.api, Layouts: layouts, moduleInfo: layoutModule.moduleInfo, onLayoutChange: setStateLayout, updateGoBackState: () => null }),
73
+ React.createElement(LayoutEditorWizard_1.LayoutEditorWizard, { data: layoutData, api: adaptable.api, Layouts: layouts, moduleInfo: layoutModule.moduleInfo, onLayoutChange: setStateLayout,
74
+ // @ts-ignore
75
+ updateGoBackState: () => null }),
74
76
  React.createElement(PanelFooter_1.PanelFooter, { acceptDisabled: finishDisabled, onAccept: handleAccept, onCancel: handleCancel })));
75
77
  };
76
78
  exports.LayoutEditorStandalonePopup = LayoutEditorStandalonePopup;
@@ -28,5 +28,5 @@ declare class LayoutPopupComponent extends React.Component<LayoutPopupProps, Edi
28
28
  canFinishWizard(): boolean;
29
29
  private getCurrentLayout;
30
30
  }
31
- export declare let LayoutPopup: import("react-redux").ConnectedComponent<typeof LayoutPopupComponent, import("react-redux").Omit<React.ClassAttributes<LayoutPopupComponent> & LayoutPopupProps, "ref" | "key" | "api" | "onSuspend" | "accessLevel" | "popupParams" | "onClearPopupParams" | "teamSharingActivated" | "onClosePopup" | "moduleInfo" | "onUnSuspend" | "modalContainer" | "onShare" | "Layouts" | "onSelectLayout" | "onSaveLayout" | "CurrentLayoutName" | "CurrentLayoutDraft" | "onAddLayout">>;
31
+ export declare let LayoutPopup: import("react-redux").ConnectedComponent<typeof LayoutPopupComponent, import("react-redux").Omit<React.ClassAttributes<LayoutPopupComponent> & LayoutPopupProps, "ref" | "key" | "api" | "onSuspend" | "accessLevel" | "popupParams" | "onClearPopupParams" | "teamSharingActivated" | "onClosePopup" | "moduleInfo" | "onUnSuspend" | "modalContainer" | "onShare" | "onSelectLayout" | "onSaveLayout" | "Layouts" | "CurrentLayoutName" | "CurrentLayoutDraft" | "onAddLayout">>;
32
32
  export {};
@@ -15,5 +15,5 @@ declare class LayoutViewPanelComponent extends React.Component<LayoutViewPanelCo
15
15
  render(): any;
16
16
  private onSaveLayout;
17
17
  }
18
- export declare let LayoutViewPanelControl: import("react-redux").ConnectedComponent<typeof LayoutViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<LayoutViewPanelComponent> & LayoutViewPanelComponentProps, "api" | "accessLevel" | "moduleInfo" | "viewType" | "Layouts" | "onSelectLayout" | "onSaveLayout" | "CurrentDraftLayout" | "CanSave" | "CurrentLayoutName"> & LayoutViewPanelComponentProps>;
18
+ export declare let LayoutViewPanelControl: import("react-redux").ConnectedComponent<typeof LayoutViewPanelComponent, import("react-redux").Omit<React.ClassAttributes<LayoutViewPanelComponent> & LayoutViewPanelComponentProps, "api" | "accessLevel" | "moduleInfo" | "viewType" | "onSelectLayout" | "onSaveLayout" | "Layouts" | "CurrentDraftLayout" | "CanSave" | "CurrentLayoutName"> & LayoutViewPanelComponentProps>;
19
19
  export {};
@@ -10,7 +10,7 @@ export interface LayoutEditorWizardState {
10
10
  layout: Layout;
11
11
  errorMessage: string;
12
12
  }
13
- export declare class LayoutEditorWizard extends React.Component<LayoutEditorWizardProps, LayoutEditorWizardState> implements AdaptableWizardStep {
13
+ export declare class LayoutEditorWizard extends React.Component<any, any> implements AdaptableWizardStep {
14
14
  constructor(props: LayoutEditorWizardProps);
15
15
  render(): any;
16
16
  onLayoutNameChange: (event: React.FormEvent<any>) => void;
@@ -20,32 +20,7 @@ export declare class LayoutEditorWizard extends React.Component<LayoutEditorWiza
20
20
  }) => string;
21
21
  updateLayout: (layout: Partial<Layout>) => void;
22
22
  onLayoutChange: (layout: Layout) => void;
23
- getLayout: () => {
24
- Name: string;
25
- Columns: string[];
26
- ColumnWidthMap?: {
27
- [columnId: string]: number;
28
- };
29
- ColumnSorts?: import("../../../types").ColumnSort[];
30
- ColumnFilters?: import("../../../types").ColumnFilter[];
31
- RowGroupedColumns?: string[];
32
- ExpandedRowGroupValues?: any[];
33
- AggregationColumns?: Record<string, string | true>;
34
- EnablePivot?: boolean;
35
- PivotColumns?: string[];
36
- PinnedColumnsMap?: {
37
- [columnId: string]: "left" | "right";
38
- };
39
- AutoSave?: boolean;
40
- ColumnHeadersMap?: {
41
- [columnId: string]: string;
42
- };
43
- SuppressAggFuncInHeader?: boolean;
44
- Uuid?: string;
45
- Source?: "Config" | "User";
46
- IsReadOnly?: boolean;
47
- Tags?: string[];
48
- };
23
+ getLayout: () => any;
49
24
  canNext(): boolean;
50
25
  canBack(): boolean;
51
26
  next(): void;
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import { SharedEntity } from '../../../types';
3
+ export declare const Dependencies: React.FunctionComponent<{
4
+ sharedEntity: SharedEntity;
5
+ }>;
6
+ export declare const SharedEntityDependencies: React.FunctionComponent<{
7
+ data: SharedEntity;
8
+ }>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharedEntityDependencies = exports.Dependencies = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const rebass_1 = require("rebass");
7
+ const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
8
+ const AdaptableContext_1 = require("../AdaptableContext");
9
+ const AdaptableObjectList_1 = require("../Components/AdaptableObjectList/AdaptableObjectList");
10
+ const Dependencies = (props) => {
11
+ const adaptable = AdaptableContext_1.useAdaptable();
12
+ const dependencies = adaptable.api.teamSharingApi.getSharedEntryDependencies(props.sharedEntity);
13
+ return (React.createElement(React.Fragment, null, dependencies.map((sharedEntity) => {
14
+ const module = adaptable.ModuleService.getModuleById('TeamSharing');
15
+ const itemView = module.toView(sharedEntity);
16
+ return (React.createElement(rebass_1.Box, { as: "ul", padding: 0, key: sharedEntity.Uuid, className: "ab-Shared-Entity-Shared-Object", mb: 2 },
17
+ React.createElement(AdaptableObjectList_1.AdaptableObjectListItem, { deleteTooltip: 'Cannot delete dependencies.', deleteDisabled: true, module: module, data: itemView })));
18
+ })));
19
+ };
20
+ exports.Dependencies = Dependencies;
21
+ const SharedEntityDependencies = (props) => {
22
+ const [isExpanded, setIsExpanded] = React.useState(false);
23
+ return (React.createElement(React.Fragment, null,
24
+ React.createElement(rebass_1.Box, { mb: 3, mt: 2 }, isExpanded ? (React.createElement(SimpleButton_1.default, { onClick: () => setIsExpanded(false), icon: "arrow-up" }, "Collapse")) : (React.createElement(SimpleButton_1.default, { onClick: () => setIsExpanded(true), icon: "arrow-down" }, "Expand"))),
25
+ isExpanded && React.createElement(exports.Dependencies, { sharedEntity: props.data })));
26
+ };
27
+ exports.SharedEntityDependencies = SharedEntityDependencies;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import { SharedEntity } from '../../../types';
3
+ export declare const SharedEntityTypeItemView: React.FunctionComponent<{
4
+ data: SharedEntity;
5
+ }>;
6
+ export declare const getSharedEntityActiveStatusObjectView: (isDependency: boolean) => (props: {
7
+ data: SharedEntity;
8
+ }) => JSX.Element;
9
+ export declare const getSharedEntityStaleDepsItemView: (staleDependencies: SharedEntity[]) => () => JSX.Element;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSharedEntityStaleDepsItemView = exports.getSharedEntityActiveStatusObjectView = exports.SharedEntityTypeItemView = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const rebass_1 = require("rebass");
7
+ const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
8
+ const Tag_1 = require("../../components/Tag");
9
+ const AdaptableContext_1 = require("../AdaptableContext");
10
+ const AdaptableObjectList_1 = require("../Components/AdaptableObjectList/AdaptableObjectList");
11
+ const SharedEntityTypeItemView = (props) => {
12
+ const [isExpanded, setIsExpanded] = React.useState(false);
13
+ const adaptable = AdaptableContext_1.useAdaptable();
14
+ const moduleName = props.data.Module;
15
+ const module = adaptable.ModuleService.getModuleById(moduleName);
16
+ const sharedObject = props.data.Entity;
17
+ const item = module.toView(sharedObject);
18
+ return (React.createElement(React.Fragment, null,
19
+ React.createElement(rebass_1.Flex, { mb: 2, mt: 2 },
20
+ React.createElement(rebass_1.Flex, { mr: 2, alignItems: "center" },
21
+ React.createElement(Tag_1.Tag, { style: { margin: 0 } }, props.data.Module)),
22
+ isExpanded ? (React.createElement(SimpleButton_1.default, { onClick: () => setIsExpanded(false), icon: "arrow-up" }, "Collapse")) : (React.createElement(SimpleButton_1.default, { onClick: () => setIsExpanded(true), icon: "arrow-down" }, "Expand"))),
23
+ isExpanded && (React.createElement(rebass_1.Box, { as: "ul", padding: 0, className: "ab-Shared-Entity-Shared-Object" },
24
+ React.createElement(AdaptableObjectList_1.AdaptableObjectListItem, { hideControls: true, data: item, module: module })))));
25
+ };
26
+ exports.SharedEntityTypeItemView = SharedEntityTypeItemView;
27
+ const getSharedEntityActiveStatusObjectView = (isDependency) => (props) => {
28
+ var _a, _b;
29
+ const adaptable = AdaptableContext_1.useAdaptable();
30
+ const activeEntries = adaptable.api.internalApi.getState().TeamSharing.ActiveSharedEntityMap;
31
+ const sharedEntity = props.data;
32
+ const isAdaptableObjectPresentInLocalState = !!adaptable.api.internalApi
33
+ .getModuleService()
34
+ .getModuleById(sharedEntity.Module)
35
+ .getModuleAdaptableObjects()
36
+ .find((adaptableObject) => adaptableObject.Uuid === sharedEntity.Entity.Uuid);
37
+ const isUpToDateAndActive = isAdaptableObjectPresentInLocalState &&
38
+ sharedEntity.Type === 'Active' &&
39
+ ((_a = activeEntries[sharedEntity.Entity.Uuid]) === null || _a === void 0 ? void 0 : _a.Revision) === sharedEntity.Revision;
40
+ const staleActiveEntities = adaptable.api.internalApi
41
+ .getTeamSharingService()
42
+ .getStaleActiveSharedEntities();
43
+ const isStaleAndActive = isAdaptableObjectPresentInLocalState && !!staleActiveEntities[sharedEntity.Uuid];
44
+ let activeInfo = null;
45
+ if (isAdaptableObjectPresentInLocalState) {
46
+ const activeRevision = (_b = activeEntries === null || activeEntries === void 0 ? void 0 : activeEntries[sharedEntity.Entity.Uuid]) === null || _b === void 0 ? void 0 : _b.Revision;
47
+ if (sharedEntity.Type === 'Active') {
48
+ const newRevision = sharedEntity.Revision;
49
+ let statusInfo = null;
50
+ if (isUpToDateAndActive) {
51
+ statusInfo = (React.createElement(rebass_1.Box, { ml: 1, style: { color: 'var(--ab-color-success)' } },
52
+ React.createElement("b", null, "up-to-date")));
53
+ }
54
+ if (isStaleAndActive) {
55
+ statusInfo = (React.createElement(rebass_1.Box, { ml: 1, style: { color: 'var(--ab-color-warn)' } }, ` (Rev. ${newRevision} available)`));
56
+ }
57
+ activeInfo = (React.createElement(React.Fragment, null,
58
+ `Imported Rev. ${activeRevision} ${isStaleAndActive ? 'is stale' : ''} `,
59
+ " ",
60
+ statusInfo));
61
+ }
62
+ else {
63
+ // snapshot
64
+ activeInfo = React.createElement(React.Fragment, null, `Imported Rev. ${activeRevision}`);
65
+ }
66
+ }
67
+ const sharedValue = `by ${sharedEntity.UserName} at ${new Date(sharedEntity.Timestamp).toLocaleString()}`;
68
+ return (React.createElement(React.Fragment, null,
69
+ !isDependency && React.createElement(Tag_1.Tag, null, sharedValue),
70
+ activeInfo && React.createElement(Tag_1.Tag, null, activeInfo)));
71
+ };
72
+ exports.getSharedEntityActiveStatusObjectView = getSharedEntityActiveStatusObjectView;
73
+ const getSharedEntityStaleDepsItemView = (staleDependencies) => () => {
74
+ let staleDepsString = 'Shared entity has';
75
+ if ((staleDependencies === null || staleDependencies === void 0 ? void 0 : staleDependencies.length) === 1) {
76
+ staleDepsString += ` one (${staleDependencies[0].Module}) stale dependency`;
77
+ }
78
+ else {
79
+ staleDepsString += ` ${staleDependencies.length} stale dependencies`;
80
+ }
81
+ return (React.createElement(Tag_1.Tag, null,
82
+ React.createElement(rebass_1.Box, { ml: 1, style: { color: 'var(--ab-color-warn)' } }, staleDepsString)));
83
+ };
84
+ exports.getSharedEntityStaleDepsItemView = getSharedEntityStaleDepsItemView;
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import { AccessLevel, SharedEntity } from '../../../types';
3
+ export declare const TeamSharingApplyButton: React.FunctionComponent<{
4
+ data: SharedEntity;
5
+ accessLevel: AccessLevel;
6
+ }>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TeamSharingApplyButton = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const SimpleButton_1 = tslib_1.__importDefault(require("../../components/SimpleButton"));
7
+ const AdaptableContext_1 = require("../AdaptableContext");
8
+ const TeamSharingApplyButton = (props) => {
9
+ const adaptable = AdaptableContext_1.useAdaptable();
10
+ const handleImport = React.useCallback(() => {
11
+ adaptable.api.teamSharingApi.importSharedEntry(props.data);
12
+ }, []);
13
+ return (React.createElement(SimpleButton_1.default, { onClick: handleImport, variant: "text", tooltip: "Apply Adaptable Object", icon: "import-export" }));
14
+ };
15
+ exports.TeamSharingApplyButton = TeamSharingApplyButton;
@@ -3,7 +3,7 @@ import { EditableConfigEntityState } from './Components/SharedProps/EditableConf
3
3
  import { StatusColour } from '../PredefinedConfig/Common/Enums';
4
4
  import { AdaptableStyle } from '../PredefinedConfig/Common/AdaptableStyle';
5
5
  import { Schedule, Weekday } from '../PredefinedConfig/Common/Schedule';
6
- import { AdaptableColumnDataType, AdaptableOptions } from '../types';
6
+ import { AdaptableColumnDataType, AdaptableInternalIconName, AdaptableOptions } from '../types';
7
7
  import { AdaptableAlert } from '../PredefinedConfig/Common/AdaptableAlert';
8
8
  import { AdaptableMessageType } from '../PredefinedConfig/Common/AdaptableMessageType';
9
9
  export declare const BLACK: string;
@@ -36,7 +36,7 @@ export declare function IsEmptyStyle(style: AdaptableStyle): boolean;
36
36
  export declare function IsNotEmptyStyle(style: AdaptableStyle): boolean;
37
37
  export declare function getMessageTypeByStatusColour(statusColour: StatusColour): AdaptableMessageType;
38
38
  export declare function getButtonToneByMessageType(messageType: AdaptableMessageType): 'success' | 'error' | 'neutral' | 'none' | 'warning' | 'info' | 'accent';
39
- export declare function getGlyphByMessageType(messageType: AdaptableMessageType): string;
39
+ export declare function getGlyphByMessageType(messageType: AdaptableMessageType): AdaptableInternalIconName;
40
40
  export declare function getColorByMessageType(messageType: AdaptableMessageType): string;
41
41
  export declare function getStyleForStatusColour(statusColour: StatusColour): CSSProperties;
42
42
  export declare function getStyleForMessageType(messageType: AdaptableMessageType): CSSProperties;
@@ -45,14 +45,10 @@ class ActionColumnRenderer {
45
45
  if (button.hidden && button.hidden(button, context)) {
46
46
  return;
47
47
  }
48
- const defaultIconProps = {
49
- style: {
50
- height: 15,
51
- width: 15,
52
- },
53
- };
54
- const buttonIcon = adaptableApi.internalApi.getIconForButton(button, context);
55
- const iconProps = buttonIcon && Object.assign({}, defaultIconProps, buttonIcon);
48
+ const buttonIcon = adaptableApi.internalApi.getIconForButton(button, context, {
49
+ height: 15,
50
+ width: 15,
51
+ });
56
52
  const buttonStyle = adaptableApi.internalApi.getStyleForButton(button, context);
57
53
  const buttonLabel = adaptableApi.internalApi.getLabelForButton(button, context);
58
54
  const buttonTooltip = adaptableApi.internalApi.getTooltipForButton(button, context);
@@ -66,9 +62,7 @@ class ActionColumnRenderer {
66
62
  }, 16);
67
63
  };
68
64
  const disabled = button.disabled && button.disabled(button, context);
69
- return (React.createElement(SimpleButton_1.default, { key: button.Uuid, "data-name": `action-button-${index + 1}`, variant: (_a = buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.variant) !== null && _a !== void 0 ? _a : 'text', disabled: disabled, tooltip: buttonTooltip, tone: (_b = buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.tone) !== null && _b !== void 0 ? _b : 'none', onClick: handleClick, className: buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className, accessLevel: 'Full' },
70
- buttonIcon ? React.createElement("img", Object.assign({}, iconProps)) : null,
71
- buttonLabel));
65
+ return (React.createElement(SimpleButton_1.default, { key: button.Uuid, "data-name": `action-button-${index + 1}`, variant: (_a = buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.variant) !== null && _a !== void 0 ? _a : 'text', disabled: disabled, tooltip: buttonTooltip, icon: buttonIcon, tone: (_b = buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.tone) !== null && _b !== void 0 ? _b : 'none', onClick: handleClick, className: buttonStyle === null || buttonStyle === void 0 ? void 0 : buttonStyle.className, accessLevel: 'Full' }, buttonLabel));
72
66
  })));
73
67
  };
74
68
  const eGui = this.eGui;
@@ -1,4 +1,4 @@
1
- import { ColDef, ColGroupDef, Column, ExcelStyle, GridOptions, Module, RowNode, ValueGetterParams, ValueSetterParams } from '@ag-grid-community/all-modules';
1
+ import { ColDef, ColGroupDef, Column, ExcelStyle, GridOptions, Module, RowNode } from '@ag-grid-community/all-modules';
2
2
  import { AdaptableNoCodeWizardOptions, IAdaptableNoCodeWizard } from '../AdaptableInterfaces/AdaptableNoCodeWizard';
3
3
  import { IAdaptable } from '../AdaptableInterfaces/IAdaptable';
4
4
  import { AdaptableOptions } from '../AdaptableOptions/AdaptableOptions';
@@ -18,7 +18,6 @@ import { SelectedRowInfo } from '../PredefinedConfig/Selection/SelectedRowInfo';
18
18
  import { AdaptableTheme } from '../PredefinedConfig/ThemeState';
19
19
  import { IAdaptableStore } from '../Redux/Store/Interface/IAdaptableStore';
20
20
  import { IModuleCollection } from '../Strategy/Interface/IModule';
21
- import { AdaptableColumnType } from '../types';
22
21
  import { EmitterCallback } from '../Utilities/Emitter';
23
22
  import { IPPStyle } from '../Utilities/Interface/IPPStyle';
24
23
  import { LicenseService } from '../Utilities/Services/LicenseService';
@@ -31,8 +30,6 @@ import { IModuleService } from '../Utilities/Services/Interface/IModuleService';
31
30
  import { IEntitlementService } from '../Utilities/Services/Interface/IEntitlementService';
32
31
  import { IQueryLanguageService } from '../Utilities/Services/Interface/IQueryLanguageService';
33
32
  import { IAlertService } from '../Utilities/Services/Interface/IAlertService';
34
- import { AdaptableNumberEditor } from './editors/AdaptableNumberEditor';
35
- import { AdaptableDateEditor } from './editors/AdaptableDateEditor';
36
33
  import { ColumnSetupInfo } from './ColumnSetupInfo';
37
34
  import { CustomSort } from '../PredefinedConfig/CustomSortState';
38
35
  import { ColumnValuesComparer } from '../AdaptableOptions/GeneralOptions';
@@ -224,28 +221,7 @@ export declare class Adaptable implements IAdaptable {
224
221
  */
225
222
  private mapColumnDefs;
226
223
  private getColDefsForSpecialColumns;
227
- getColDefsForFreeTextColumns(): {
228
- headerName: string;
229
- colId: string;
230
- editable: boolean;
231
- hide: boolean;
232
- width: number;
233
- enableValue: boolean;
234
- filter: boolean;
235
- floatingFilter: boolean;
236
- resizable: boolean;
237
- enableRowGroup: boolean;
238
- sortable: boolean;
239
- enablePivot: boolean;
240
- suppressMenu: boolean;
241
- suppressMovable: boolean;
242
- headerTooltip: string;
243
- cellEditor: string | typeof AdaptableNumberEditor | typeof AdaptableDateEditor;
244
- type: AdaptableColumnType[];
245
- valueSetter: (params: ValueSetterParams) => any;
246
- cellRenderer: import("@ag-grid-community/all-modules").ICellRendererFunc;
247
- valueGetter: (params: ValueGetterParams) => any;
248
- }[];
224
+ getColDefsForFreeTextColumns(): ColDef[];
249
225
  setupColumnValueGetter({ col }: ColumnSetupInfo): void;
250
226
  setupColumnAggFunc({ col }: ColumnSetupInfo): void;
251
227
  private getColDefsForRowEditColumns;