@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
@@ -9,6 +9,11 @@ const TeamSharingRedux_1 = require("../Redux/ActionsReducers/TeamSharingRedux");
9
9
  const TeamSharingRedux = tslib_1.__importStar(require("../Redux/ActionsReducers/TeamSharingRedux"));
10
10
  const isEqual_1 = tslib_1.__importDefault(require("lodash/isEqual"));
11
11
  const LayoutRedux_1 = require("../Redux/ActionsReducers/LayoutRedux");
12
+ const SharedEntityObjectView_1 = require("../View/TeamSharing/SharedEntityObjectView");
13
+ const TeamSharingApplyButton_1 = require("../View/TeamSharing/TeamSharingApplyButton");
14
+ const SharedEntityDependencies_1 = require("../View/TeamSharing/SharedEntityDependencies");
15
+ const ArrayExtensions_1 = tslib_1.__importDefault(require("../Utilities/Extensions/ArrayExtensions"));
16
+ const flatten_1 = tslib_1.__importDefault(require("lodash/flatten"));
12
17
  class TeamSharingModule extends AdaptableModuleBase_1.AdaptableModuleBase {
13
18
  constructor(api) {
14
19
  super(ModuleConstants.TeamSharingModuleId, 'Team Sharing', 'team-share', 'TeamSharingPopup', 'Team Sharing allows users to share - at run-time - Adaptable Objects between colleagues.', api);
@@ -27,10 +32,14 @@ class TeamSharingModule extends AdaptableModuleBase_1.AdaptableModuleBase {
27
32
  // make sure there is no zombie import process remaining (in case a previous import crashed)
28
33
  this.api.internalApi.dispatchReduxAction(TeamSharingRedux.TeamSharingCommitImport());
29
34
  });
35
+ this.api.teamSharingApi.triggerLoadingTeamSharingEntries();
30
36
  }
31
37
  isModuleAvailable() {
32
38
  return super.isModuleAvailable() && this.api.teamSharingApi.isTeamSharingActivated();
33
39
  }
40
+ isModuleObjectsShareable() {
41
+ return false;
42
+ }
34
43
  getPopupMaxWidth() {
35
44
  return 1000;
36
45
  }
@@ -69,5 +78,100 @@ class TeamSharingModule extends AdaptableModuleBase_1.AdaptableModuleBase {
69
78
  }
70
79
  return Object.values(action).find((actionProperty) => isAdaptableObject_1.isAdaptableObject(actionProperty));
71
80
  }
81
+ isAdaptableObjectPresentInLocalState(sharedEntity) {
82
+ return !!this.api.internalApi
83
+ .getModuleService()
84
+ .getModuleById(sharedEntity.Module)
85
+ .getModuleAdaptableObjects()
86
+ .find((adaptableObject) => adaptableObject.Uuid === sharedEntity.Entity.Uuid);
87
+ }
88
+ isSharedEntityADependency(sharedEntity) {
89
+ const allSharedEntries = this.api.teamSharingApi.getLoadedSharedEntities();
90
+ return allSharedEntries.some((sharedEntryCandidate) => {
91
+ var _a;
92
+ return (_a = sharedEntryCandidate === null || sharedEntryCandidate === void 0 ? void 0 : sharedEntryCandidate.EntityDependencyIds) === null || _a === void 0 ? void 0 : _a.includes(sharedEntity.Uuid);
93
+ });
94
+ }
95
+ isStaleAndActive(sharedEntity) {
96
+ const staleActiveEntities = this.api.internalApi
97
+ .getTeamSharingService()
98
+ .getStaleActiveSharedEntities();
99
+ return (this.isAdaptableObjectPresentInLocalState(sharedEntity) &&
100
+ !!staleActiveEntities[sharedEntity.Uuid]);
101
+ }
102
+ getDependencies(sharedEntity) {
103
+ if (!Array.isArray(sharedEntity.EntityDependencyIds) ||
104
+ sharedEntity.EntityDependencyIds.length === 0) {
105
+ return [sharedEntity];
106
+ }
107
+ const allSharedEntities = this.api.teamSharingApi.getLoadedSharedEntities();
108
+ const dependencies = sharedEntity.EntityDependencyIds.map((dependencyUuid) => allSharedEntities.find((entity) => entity.Uuid === dependencyUuid));
109
+ return flatten_1.default(dependencies.map((dependency) => this.getDependencies(dependency)));
110
+ }
111
+ getStaleDependencies(sharedEntity) {
112
+ return this.getDependencies(sharedEntity).filter((dependency) => dependency.Uuid !== sharedEntity.Uuid && this.isStaleAndActive(dependency));
113
+ }
114
+ toView(sharedEntity) {
115
+ const isDependency = this.isSharedEntityADependency(sharedEntity);
116
+ const staleDependencies = this.getStaleDependencies(sharedEntity);
117
+ const staleDependenciesViewItems = [];
118
+ if (staleDependencies === null || staleDependencies === void 0 ? void 0 : staleDependencies.length) {
119
+ staleDependenciesViewItems.push({
120
+ name: 'Stale Deps',
121
+ view: SharedEntityObjectView_1.getSharedEntityStaleDepsItemView(staleDependencies),
122
+ });
123
+ }
124
+ const sharedViewItems = [];
125
+ const isStaleAndActive = this.isStaleAndActive(sharedEntity);
126
+ if (!isDependency || isStaleAndActive) {
127
+ sharedViewItems.push({
128
+ name: 'Shared',
129
+ view: SharedEntityObjectView_1.getSharedEntityActiveStatusObjectView(isDependency),
130
+ });
131
+ }
132
+ return {
133
+ items: [
134
+ !isDependency &&
135
+ sharedEntity.Description && {
136
+ name: 'Name',
137
+ values: [sharedEntity.Description],
138
+ },
139
+ !isDependency && {
140
+ name: 'Share Mode',
141
+ values: [sharedEntity.Type],
142
+ },
143
+ ...sharedViewItems,
144
+ {
145
+ name: 'Type',
146
+ view: SharedEntityObjectView_1.SharedEntityTypeItemView,
147
+ },
148
+ ...staleDependenciesViewItems,
149
+ ArrayExtensions_1.default.IsNotNullOrEmpty(sharedEntity.EntityDependencyIds) && {
150
+ name: 'Dependencies',
151
+ view: SharedEntityDependencies_1.SharedEntityDependencies,
152
+ },
153
+ ].filter(Boolean),
154
+ abObject: sharedEntity,
155
+ };
156
+ }
157
+ toViewAll() {
158
+ var _a;
159
+ return (((_a = this.api.teamSharingApi.getLoadedSharedEntities()) !== null && _a !== void 0 ? _a : [])
160
+ // only top level
161
+ .filter((sharedEntity) => !this.isSharedEntityADependency(sharedEntity))
162
+ .map((item) => this.toView(item)));
163
+ }
164
+ getViewProperties() {
165
+ return {
166
+ actions: [TeamSharingApplyButton_1.TeamSharingApplyButton],
167
+ onMount: () => {
168
+ this.api.teamSharingApi.triggerLoadingTeamSharingEntries();
169
+ },
170
+ getDeleteAction: (sharedEntity) => {
171
+ return TeamSharingRedux.TeamSharingRemoveItem(sharedEntity.Uuid);
172
+ },
173
+ emptyView: 'Shared Items will appear here when available.',
174
+ };
175
+ }
72
176
  }
73
177
  exports.TeamSharingModule = TeamSharingModule;
@@ -2,9 +2,9 @@ import * as Redux from 'redux';
2
2
  import { ModuleParams } from '../View/Components/SharedProps/ModuleViewPopupProps';
3
3
  import { AdaptableMenuItem } from '../PredefinedConfig/Common/Menu';
4
4
  import { AdaptableModule } from '../PredefinedConfig/Common/Types';
5
- import { AdaptableIcon } from '../PredefinedConfig/Common/AdaptableIcon';
5
+ import { AdaptableIcon, AdaptableInternalIconName } from '../PredefinedConfig/Common/AdaptableIcon';
6
6
  export declare class MenuItemDoReduxAction implements AdaptableMenuItem {
7
- constructor(label: string, module: AdaptableModule, reduxAction: Redux.Action, icon: string, isVisible: boolean);
7
+ constructor(label: string, module: AdaptableModule, reduxAction: Redux.Action, icon: AdaptableInternalIconName, isVisible: boolean);
8
8
  reduxAction: Redux.Action;
9
9
  label: string;
10
10
  module: AdaptableModule;
@@ -12,7 +12,7 @@ export declare class MenuItemDoReduxAction implements AdaptableMenuItem {
12
12
  icon: AdaptableIcon;
13
13
  }
14
14
  export declare class MenuItemDoClickFunction implements AdaptableMenuItem {
15
- constructor(label: string, module: AdaptableModule, clickFunction: () => void, icon: string, isVisible: boolean);
15
+ constructor(label: string, module: AdaptableModule, clickFunction: () => void, icon: AdaptableInternalIconName, isVisible: boolean);
16
16
  onClick: () => void;
17
17
  label: string;
18
18
  module: AdaptableModule;
@@ -20,7 +20,7 @@ export declare class MenuItemDoClickFunction implements AdaptableMenuItem {
20
20
  icon: AdaptableIcon;
21
21
  }
22
22
  export declare class MenuItemShowPopup implements AdaptableMenuItem {
23
- constructor(label: string, module: AdaptableModule, componentName: string, icon: string, isVisible: boolean, popupParams?: ModuleParams);
23
+ constructor(label: string, module: AdaptableModule, componentName: string, icon: AdaptableInternalIconName, isVisible: boolean, popupParams?: ModuleParams);
24
24
  reduxAction: Redux.Action;
25
25
  label: string;
26
26
  module: AdaptableModule;
@@ -148,8 +148,6 @@ class TeamSharingService {
148
148
  // for every dependency, create recursively the corresponding shared entities
149
149
  teamSharingDependencies.forEach((teamSharingDependency) => {
150
150
  const sharedEntityDependency = this.createSharedEntity(teamSharingDependency.Reference, teamSharingDependency.Module, configuration, sharingUserName, sharingTimestamp, createdSharedEntities);
151
- // update description
152
- sharedEntityDependency.Description = `${configuration.description} (Dependency of ${mainSharedEntity.Module})`;
153
151
  // update dependency IDs for the main shared entity
154
152
  mainSharedEntity.EntityDependencyIds.push(sharedEntityDependency.Uuid);
155
153
  });
@@ -7,7 +7,6 @@ const QuickSearchPopup_1 = require("./QuickSearch/QuickSearchPopup");
7
7
  const ThemePopup_1 = require("./Theme/ThemePopup");
8
8
  const ToolPanelPopup_1 = require("./Components/ToolPanel/ToolPanelPopup");
9
9
  const GridInfoPopup_1 = require("./GridInfo/GridInfoPopup");
10
- const TeamSharingPopup_1 = require("./TeamSharing/TeamSharingPopup");
11
10
  const DashboardPopup_1 = require("./Dashboard/DashboardPopup");
12
11
  const StateManagementPopup_1 = require("./StateManagement/StateManagementPopup");
13
12
  const ModuleConstants = tslib_1.__importStar(require("../Utilities/Constants/ModuleConstants"));
@@ -41,7 +40,6 @@ exports.AdaptableViewFactory = {
41
40
  CellSummaryPopup: CellSummaryPopup_1.CellSummaryPopup,
42
41
  SmartEditPopup: SmartEditPopup_1.SmartEditPopup,
43
42
  ThemePopup: ThemePopup_1.ThemePopup,
44
- TeamSharingPopup: TeamSharingPopup_1.TeamSharingPopup,
45
43
  ToolPanelPopup: ToolPanelPopup_1.ToolPanelPopup,
46
44
  SystemStatusPopup: SystemStatusPopup_1.SystemStatusPopup,
47
45
  DataChangeHistoryPopup: DataChangeHistoryPopup_1.DataChangeHistoryPopup,
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ import { AdaptableAlert } from '../../../types';
3
+ export declare const ActiveAlertsPanelItemLabel: React.FunctionComponent<{
4
+ data: AdaptableAlert;
5
+ }>;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActiveAlertsPanelItemLabel = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const rebass_1 = require("rebass");
7
+ const icons_1 = tslib_1.__importDefault(require("../../components/icons"));
8
+ const UIHelper_1 = tslib_1.__importDefault(require("../UIHelper"));
9
+ const ActiveAlertsPanelItemLabel = (props) => {
10
+ const iconColor = UIHelper_1.default.getColorByMessageType(props.data.alertDefinition.MessageType);
11
+ const iconStyle = {
12
+ color: iconColor,
13
+ fill: iconColor,
14
+ };
15
+ const iconName = UIHelper_1.default.getGlyphByMessageType(props.data.alertDefinition.MessageType);
16
+ const IconCmp = icons_1.default[iconName];
17
+ const icon = IconCmp ? React.createElement(IconCmp, null) : null;
18
+ return (React.createElement(rebass_1.Box, null,
19
+ React.createElement(rebass_1.Text, { style: Object.assign({ float: 'left' }, iconStyle) }, icon),
20
+ props.data.header));
21
+ };
22
+ exports.ActiveAlertsPanelItemLabel = ActiveAlertsPanelItemLabel;
@@ -113,8 +113,8 @@ const CalculatedColumnSettingsWizardSection = (props) => {
113
113
  React.createElement(Input_1.default, { "data-name": "column-width", type: "number", width: 300, value: Width || '', onChange: (e) => handleSpecialColumnSettingsChange({
114
114
  Width: Number(e.target.value),
115
115
  }) })),
116
- React.createElement(FormLayout_1.FormRow, { label: "Header ToolTip" },
117
- React.createElement(Input_1.default, { "data-name": "column-width", type: "text", width: 300, value: HeaderToolTip, onChange: (e) => handleSpecialColumnSettingsChange({
116
+ React.createElement(FormLayout_1.FormRow, { label: "Header Tooltip" },
117
+ React.createElement(Input_1.default, { "data-name": "header-tooltip", type: "text", width: 300, value: HeaderToolTip, onChange: (e) => handleSpecialColumnSettingsChange({
118
118
  HeaderToolTip: e.target.value,
119
119
  }) })),
120
120
  ' ',
@@ -11,4 +11,4 @@ export declare const ColorPicker: React.ForwardRefExoticComponent<Pick<Omit<Reac
11
11
  api: AdaptableApi;
12
12
  onChange: (color: string) => void;
13
13
  value: string;
14
- } & Omit<BoxProps, "onChange">, "max" | "required" | "default" | "high" | "low" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "disabled" | "m" | "color" | "content" | "size" | "flex" | "wrap" | "padding" | "multiple" | "alignSelf" | "backgroundColor" | "fontSize" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "opacity" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "width" | "margin" | "children" | "key" | "list" | "step" | "type" | "min" | "contextMenu" | "api" | "value" | "onKeyDown" | "rows" | "name" | "className" | "id" | "lang" | "method" | "target" | "role" | "tabIndex" | "crossOrigin" | "href" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "src" | "srcLang" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "readOnly" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "poster" | "challenge" | "keyType" | "keyParams" | "mt" | "mb" | "ml" | "mr" | "my" | "marginY" | "mx" | "marginX" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "css" | "bg"> & React.RefAttributes<unknown>>;
14
+ } & Omit<BoxProps, "onChange">, "max" | "required" | "default" | "high" | "low" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "disabled" | "m" | "color" | "content" | "size" | "flex" | "wrap" | "padding" | "multiple" | "alignSelf" | "backgroundColor" | "fontSize" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "opacity" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "width" | "margin" | "children" | "key" | "list" | "step" | "type" | "min" | "contextMenu" | "api" | "value" | "onKeyDown" | "rows" | "name" | "checked" | "className" | "id" | "lang" | "method" | "target" | "role" | "tabIndex" | "crossOrigin" | "href" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "src" | "srcLang" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "maxLength" | "minLength" | "readOnly" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "poster" | "challenge" | "keyType" | "keyParams" | "mt" | "mb" | "ml" | "mr" | "my" | "marginY" | "mx" | "marginX" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "css" | "bg"> & React.RefAttributes<unknown>>;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { AdaptableInputProps } from '../AdaptableInput';
3
3
  export declare type AdaptableDateInputProps = AdaptableInputProps;
4
- declare const AdaptableDateInput: React.ForwardRefExoticComponent<Pick<import("../../../components/Input").InputProps, "max" | "required" | "default" | "high" | "low" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "disabled" | "m" | "color" | "content" | "size" | "flex" | "wrap" | "padding" | "multiple" | "alignSelf" | "backgroundColor" | "fontSize" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "opacity" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "width" | "margin" | "children" | "key" | "list" | "step" | "type" | "min" | "contextMenu" | "value" | "onKeyDown" | "rows" | "name" | "className" | "id" | "lang" | "method" | "target" | "role" | "tabIndex" | "crossOrigin" | "href" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "src" | "srcLang" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "readOnly" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "poster" | "challenge" | "keyType" | "keyParams" | "mt" | "mb" | "ml" | "mr" | "my" | "marginY" | "mx" | "marginX" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "css" | "bg" | "placehoder"> & React.RefAttributes<HTMLInputElement>>;
4
+ declare const AdaptableDateInput: React.ForwardRefExoticComponent<Pick<import("../../../components/Input").InputProps, "max" | "required" | "default" | "high" | "low" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "p" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "disabled" | "m" | "color" | "content" | "size" | "flex" | "wrap" | "padding" | "multiple" | "alignSelf" | "backgroundColor" | "fontSize" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "opacity" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "width" | "margin" | "children" | "key" | "list" | "step" | "type" | "min" | "contextMenu" | "value" | "onKeyDown" | "rows" | "name" | "checked" | "className" | "id" | "lang" | "method" | "target" | "role" | "tabIndex" | "crossOrigin" | "href" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "src" | "srcLang" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "maxLength" | "minLength" | "readOnly" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "poster" | "challenge" | "keyType" | "keyParams" | "mt" | "mb" | "ml" | "mr" | "my" | "marginY" | "mx" | "marginX" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "css" | "bg" | "placehoder"> & React.RefAttributes<HTMLInputElement>>;
5
5
  export default AdaptableDateInput;
@@ -11,7 +11,7 @@ const ValueSelector_1 = require("../ValueSelector");
11
11
  const baseClassName = 'ab-Adaptable-Object-Compact-List';
12
12
  const ICON_SIZE = 20;
13
13
  const AdaptableObjectCompactListItem = (props) => {
14
- var _a, _b, _c, _d, _e, _f, _g, _h;
14
+ var _a, _b, _c, _d, _e, _f;
15
15
  const dispatch = react_redux_1.useDispatch();
16
16
  const adaptable = AdaptableContext_1.useAdaptable();
17
17
  const objectView = props.module.toViewCompact(props.abObject);
@@ -23,15 +23,19 @@ const AdaptableObjectCompactListItem = (props) => {
23
23
  const handleDelete = React.useCallback(() => {
24
24
  dispatch(deleteAction);
25
25
  }, []);
26
- const name = (_d = objectView.item.label) !== null && _d !== void 0 ? _d : objectView.item.name;
26
+ let labelEl = objectView.item.label;
27
+ if (typeof labelEl === 'function') {
28
+ labelEl = React.createElement(labelEl, { data: props.abObject });
29
+ }
30
+ labelEl = labelEl !== null && labelEl !== void 0 ? labelEl : objectView.item.name;
27
31
  return (React.createElement(rebass_1.Flex, { className: `${baseClassName}__Item`, alignItems: "center" },
28
- name && (React.createElement(rebass_1.Flex, { className: `${baseClassName}__Item__Name` }, (_e = objectView.item.label) !== null && _e !== void 0 ? _e : objectView.item.name)),
32
+ labelEl && React.createElement(rebass_1.Flex, { className: `${baseClassName}__Item__Name` }, labelEl),
29
33
  React.createElement(rebass_1.Box, { flex: 1 },
30
34
  objectView.item.view &&
31
35
  React.createElement(objectView.item.view, {
32
36
  data: props.abObject,
33
37
  }),
34
- Boolean(((_f = objectView.item) === null || _f === void 0 ? void 0 : _f.values) && ((_h = (_g = objectView.item) === null || _g === void 0 ? void 0 : _g.values) === null || _h === void 0 ? void 0 : _h.length)) && (React.createElement(rebass_1.Box, { mb: 2, className: `${baseClassName}__Item__Values` },
38
+ Boolean(((_d = objectView.item) === null || _d === void 0 ? void 0 : _d.values) && ((_f = (_e = objectView.item) === null || _e === void 0 ? void 0 : _e.values) === null || _f === void 0 ? void 0 : _f.length)) && (React.createElement(rebass_1.Box, { mb: 2, className: `${baseClassName}__Item__Values` },
35
39
  React.createElement(ValueSelector_1.ValueOptionsTags, { style: { marginRight: 0 }, readOnly: true, options: objectView.item.values, value: objectView.item.values, allowWrap: true, toIdentifier: (c) => c, toLabel: (c) => React.createElement(React.Fragment, null, c) })))),
36
40
  React.createElement(rebass_1.Flex, { ml: 1 }, deleteAction && (React.createElement(SimpleButton_1.default, { iconSize: ICON_SIZE, icon: "delete", variant: "text", onClick: handleDelete, accessLevel: moduleAccessLevel })))));
37
41
  };
@@ -3,7 +3,19 @@ import { AdaptableObjectView, IModule } from '../../../Strategy/Interface/IModul
3
3
  interface AdaptableObjectListItemProps {
4
4
  data: AdaptableObjectView;
5
5
  module: IModule;
6
- baseClassName: string;
6
+ /**
7
+ * Used for team sharing.
8
+ * If this gets more complicated the underlying UI for the adaptable item should be extracted.
9
+ *
10
+ * @defaults false
11
+ */
12
+ hideControls?: boolean;
13
+ /**
14
+ * Used for team sharing.
15
+ * @defaults false
16
+ */
17
+ deleteDisabled?: boolean;
18
+ deleteTooltip?: string;
7
19
  }
8
20
  export declare const AdaptableObjectListItem: React.FunctionComponent<AdaptableObjectListItemProps>;
9
21
  interface AdaptableObjectListProps {
@@ -15,6 +15,7 @@ const ButtonShare_1 = require("../Buttons/ButtonShare");
15
15
  const SuspendToggleButton_1 = require("../Buttons/SuspendToggleButton/SuspendToggleButton");
16
16
  const ValueSelector_1 = require("../ValueSelector");
17
17
  const ICON_SIZE = 26;
18
+ const baseClassName = 'ab-Adaptable-Object-List';
18
19
  const AdaptableObjectListItem = (props) => {
19
20
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
20
21
  const adaptable = AdaptableContext_1.useAdaptable();
@@ -24,15 +25,17 @@ const AdaptableObjectListItem = (props) => {
24
25
  const viewOptions = (_b = (_a = props.module) === null || _a === void 0 ? void 0 : _a.getViewProperties) === null || _b === void 0 ? void 0 : _b.call(_a);
25
26
  const EditWizard = (_c = viewOptions.getEditWizard) === null || _c === void 0 ? void 0 : _c.call(viewOptions, props.data.abObject);
26
27
  const deleteAction = (_d = viewOptions === null || viewOptions === void 0 ? void 0 : viewOptions.getDeleteAction) === null || _d === void 0 ? void 0 : _d.call(viewOptions, props.data.abObject);
27
- const teamSharingActivated = adaptable.api.teamSharingApi.isTeamSharingActivated() &&
28
+ const isObjectShareable = props.module.isModuleObjectsShareable();
29
+ const teamSharingActivated = isObjectShareable &&
30
+ adaptable.api.teamSharingApi.isTeamSharingActivated() &&
28
31
  adaptable.api.teamSharingApi.hasTeamSharingFullRights();
29
32
  const entityType = props.module.moduleInfo.FriendlyName;
30
33
  const moduleAccessLevel = adaptable.api.internalApi
31
34
  .getEntitlementService()
32
35
  .getEntitlementAccessLevelForModule(props.module.moduleInfo.ModuleName);
33
36
  const accessLevel = AdaptableHelper_1.default.getAppropriateAccessLevel(props.data.abObject, moduleAccessLevel);
34
- const baseClassName = `${props.baseClassName}__Item`;
35
- const itemClassName = join_1.default(baseClassName, props.data.abObject.IsSuspended && `${baseClassName}--is-suspended`);
37
+ const itemBaseClassName = `${baseClassName}__Item`;
38
+ const itemClassName = join_1.default(props.data.className, itemBaseClassName, props.data.abObject.IsSuspended && `${itemBaseClassName}--is-suspended`);
36
39
  const handleCloseWizard = React.useCallback(() => {
37
40
  setIsEditWizardVisible(false);
38
41
  setWizardStepName(null);
@@ -56,37 +59,42 @@ const AdaptableObjectListItem = (props) => {
56
59
  });
57
60
  });
58
61
  const isEditDisabled = !Boolean(EditWizard || viewOptions.onOpenEditPopup);
59
- return (React.createElement(rebass_1.Flex, { "data-name": "adaptable-object-list-item", "data-value": props.data.abObject.Uuid, as: "li", mb: 3, className: itemClassName },
60
- React.createElement(rebass_1.Box, { flex: 1, className: `${baseClassName}__rows` }, (_j = (_h = (_g = props.data.items).filter) === null || _h === void 0 ? void 0 : _h.call(_g, Boolean)) === null || _j === void 0 ? void 0 : _j.map((tag, index) => {
62
+ const showActions = !props.hideControls;
63
+ return (React.createElement(rebass_1.Flex, { "data-name": "adaptable-object-list-item", "data-value": props.data.abObject.Uuid, as: "li", mb: 3, className: itemClassName, style: props.data.style },
64
+ React.createElement(rebass_1.Box, { flex: 1, className: `${itemBaseClassName}__rows` }, (_j = (_h = (_g = props.data.items).filter) === null || _h === void 0 ? void 0 : _h.call(_g, Boolean)) === null || _j === void 0 ? void 0 : _j.map((tag, index) => {
61
65
  var _a;
62
- return (React.createElement(rebass_1.Flex, { "data-name": tag.name, key: index, mb: 2, className: `${baseClassName}__row` },
63
- React.createElement(rebass_1.Box, { className: `${baseClassName}__label`, mr: 3 },
64
- tag.label || tag.name,
65
- EditWizard && (React.createElement(SimpleButton_1.default, { accessLevel: accessLevel, className: `${baseClassName}__edit-property`, ml: 1, icon: "edit", tooltip: "edit", iconSize: 18, variant: "text", onClick: () => {
66
+ let labelEl = tag.label;
67
+ if (typeof tag.label === 'function') {
68
+ labelEl = React.createElement(tag.label, { data: props.data.abObject });
69
+ }
70
+ labelEl = labelEl !== null && labelEl !== void 0 ? labelEl : tag.name;
71
+ return (React.createElement(rebass_1.Flex, { "data-name": tag.name, key: index, mb: 2, className: `${itemBaseClassName}__row` },
72
+ React.createElement(rebass_1.Box, { className: `${itemBaseClassName}__label`, mr: 3 },
73
+ labelEl,
74
+ EditWizard && (React.createElement(SimpleButton_1.default, { accessLevel: accessLevel, className: `${itemBaseClassName}__edit-property`, ml: 1, icon: "edit", tooltip: "edit", iconSize: 18, variant: "text", onClick: () => {
66
75
  handleOnEdit(tag.name);
67
76
  } }))),
68
- React.createElement(rebass_1.Box, { flex: 1, className: `${baseClassName}__values` },
77
+ React.createElement(rebass_1.Box, { flex: 1, className: `${itemBaseClassName}__values` },
69
78
  tag.view &&
70
79
  React.createElement(tag.view, {
71
80
  data: props.data.abObject,
72
81
  }),
73
82
  Boolean((tag === null || tag === void 0 ? void 0 : tag.values) && ((_a = tag === null || tag === void 0 ? void 0 : tag.values) === null || _a === void 0 ? void 0 : _a.length)) && (React.createElement(ValueSelector_1.ValueOptionsTags, { style: { marginRight: 0 }, readOnly: true, options: tag.values, value: tag.values, allowWrap: true, toIdentifier: (c) => c, toLabel: (c) => React.createElement(React.Fragment, null, c) })))));
74
83
  })),
75
- React.createElement(rebass_1.Flex, { flexDirection: "column", className: `${baseClassName}__buttons` },
84
+ showActions && (React.createElement(rebass_1.Flex, { flexDirection: "column", className: `${itemBaseClassName}__buttons` },
76
85
  React.createElement(rebass_1.Flex, { justifyContent: "end" },
77
86
  actions,
78
87
  teamSharingActivated && (React.createElement(ButtonShare_1.ButtonShare, { iconSize: ICON_SIZE, Header: `TeamSharing ${entityType}`, accessLevel: accessLevel, onShare: (config) => adaptable.api.teamSharingApi.shareEntity(props.data.abObject, props.module.moduleInfo.ModuleName, config) })),
79
- deleteAction && (React.createElement(ButtonDelete_1.ButtonDelete, { iconSize: ICON_SIZE, ConfirmationMsg: `Are you sure you want to delete this ${entityType}?`, ConfirmationTitle: `Delete ${entityType}`, ConfirmAction: deleteAction, accessLevel: accessLevel })),
88
+ deleteAction && (React.createElement(ButtonDelete_1.ButtonDelete, { disabled: props.deleteDisabled, tooltip: props.deleteTooltip, iconSize: ICON_SIZE, ConfirmationMsg: `Are you sure you want to delete this ${entityType}?`, ConfirmationTitle: `Delete ${entityType}`, ConfirmAction: deleteAction, accessLevel: accessLevel })),
80
89
  React.createElement(ButtonEdit_1.ButtonEdit, { iconSize: ICON_SIZE, disabled: isEditDisabled, accessLevel: accessLevel, onClick: () => handleOnEdit() })),
81
90
  React.createElement(rebass_1.Box, { flex: 1 }),
82
91
  hasSuspend && (React.createElement(rebass_1.Flex, { justifyContent: "end" },
83
- React.createElement(SuspendToggleButton_1.SuspendToggleButton, { onSuspend: () => dispatch(viewOptions.getSuspendAction(props.data.abObject)), onUnSuspend: () => dispatch(viewOptions.getUnSuspendAction(props.data.abObject)), suspendableObject: props.data.abObject, accessLevel: accessLevel })))),
92
+ React.createElement(SuspendToggleButton_1.SuspendToggleButton, { onSuspend: () => dispatch(viewOptions.getSuspendAction(props.data.abObject)), onUnSuspend: () => dispatch(viewOptions.getUnSuspendAction(props.data.abObject)), suspendableObject: props.data.abObject, accessLevel: accessLevel }))))),
84
93
  isEditWizardVisible && EditWizard && (React.createElement(EditWizard, { defaultCurrentSectionName: wizardStepName, moduleInfo: props.module.moduleInfo, data: props.data.abObject, configEntities: null, onCloseWizard: handleCloseWizard, onFinishWizard: handleCloseWizard }))));
85
94
  };
86
95
  exports.AdaptableObjectListItem = AdaptableObjectListItem;
87
96
  const AdaptableObjectList = (props) => {
88
97
  var _a;
89
- const baseClassName = 'ab-Adaptable-Object-List';
90
- return (React.createElement("ul", { className: baseClassName }, (_a = props === null || props === void 0 ? void 0 : props.items) === null || _a === void 0 ? void 0 : _a.map((item) => (React.createElement(exports.AdaptableObjectListItem, { key: item.abObject.Uuid, baseClassName: baseClassName, data: item, module: props.module })))));
98
+ return (React.createElement("ul", { className: baseClassName }, (_a = props === null || props === void 0 ? void 0 : props.items) === null || _a === void 0 ? void 0 : _a.map((item) => (React.createElement(exports.AdaptableObjectListItem, { key: item.abObject.Uuid, data: item, module: props.module })))));
91
99
  };
92
100
  exports.AdaptableObjectList = AdaptableObjectList;
@@ -8,9 +8,9 @@ const PopupRedux = tslib_1.__importStar(require("../../../Redux/ActionsReducers/
8
8
  const SimpleButton_1 = tslib_1.__importDefault(require("../../../components/SimpleButton"));
9
9
  class ButtonDeleteComponent extends React.Component {
10
10
  render() {
11
- var _a;
12
- const _b = this.props, { onConfirmWarning, ConfirmAction, ConfirmationMsg, ConfirmationTitle, onClickAction } = _b, props = tslib_1.__rest(_b, ["onConfirmWarning", "ConfirmAction", "ConfirmationMsg", "ConfirmationTitle", "onClickAction"]);
13
- return (React.createElement(SimpleButton_1.default, Object.assign({ "data-name": "delete", tooltip: "Delete", variant: "text", icon: "trash", iconSize: (_a = props.iconSize) !== null && _a !== void 0 ? _a : 24 }, props, { onClick: () => this.onClick() })));
11
+ var _a, _b;
12
+ const _c = this.props, { onConfirmWarning, ConfirmAction, ConfirmationMsg, ConfirmationTitle, onClickAction } = _c, props = tslib_1.__rest(_c, ["onConfirmWarning", "ConfirmAction", "ConfirmationMsg", "ConfirmationTitle", "onClickAction"]);
13
+ return (React.createElement(SimpleButton_1.default, Object.assign({ "data-name": "delete", tooltip: (_a = props.tooltip) !== null && _a !== void 0 ? _a : 'Delete', variant: "text", icon: "trash", iconSize: (_b = props.iconSize) !== null && _b !== void 0 ? _b : 24 }, props, { onClick: () => this.onClick() })));
14
14
  }
15
15
  onClick() {
16
16
  if (this.props.ConfirmAction) {
@@ -6,7 +6,17 @@ const React = tslib_1.__importStar(require("react"));
6
6
  const SimpleButton_1 = tslib_1.__importDefault(require("../../../components/SimpleButton"));
7
7
  class ButtonPause extends React.Component {
8
8
  render() {
9
- return (React.createElement(SimpleButton_1.default, Object.assign({ "data-name": "pause", tooltip: "Pause", iconSize: 20, icon: this.props.fillColor === 'red' ? 'pause-red' : 'pause', variant: "text" }, this.props)));
9
+ const buttonIcon = this.props.fillColor === 'red'
10
+ ? {
11
+ name: 'pause',
12
+ style: {
13
+ fill: 'red',
14
+ },
15
+ }
16
+ : {
17
+ name: 'pause',
18
+ };
19
+ return (React.createElement(SimpleButton_1.default, Object.assign({ "data-name": "pause", tooltip: "Pause", iconSize: 20, icon: buttonIcon, variant: "text" }, this.props)));
10
20
  }
11
21
  }
12
22
  exports.ButtonPause = ButtonPause;
@@ -44,6 +44,7 @@ class QuickFilterFormComponent extends React.Component {
44
44
  };
45
45
  this.debouncedAddFilter = debounce_1.default(() => this.props.onAddColumnFilter(this.state.filter), 250);
46
46
  this.debouncedEditFilter = debounce_1.default(() => this.props.onEditColumnFilter(this.state.filter), 250);
47
+ this.debouncedLoadPermittedValues = debounce_1.default(() => this.loadPermittedValues(), 500);
47
48
  const filter = this.getFilterFromProps();
48
49
  this._isMounted = true;
49
50
  this.state = {
@@ -58,9 +59,19 @@ class QuickFilterFormComponent extends React.Component {
58
59
  if (this.hasValuesPredicate((_b = (_a = this.state) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.Predicate)) {
59
60
  this.loadPermittedValues();
60
61
  }
62
+ this.unsubscribeOnCellChanged = this.props.api.eventApi.on('CellChanged', (cellChangedInfo) => {
63
+ this.handleGridValueChange(cellChangedInfo.cellChange.column.columnId);
64
+ });
65
+ this.unsubscribeOnGridDataChanged = this.props.api.eventApi.on('GridDataChanged', () => {
66
+ // there is no way to find out if the changed rows are relevant for this filter, so we have to update it every time :/
67
+ this.handleGridValueChange();
68
+ });
61
69
  }
62
70
  componentWillUnmount() {
71
+ var _a, _b;
63
72
  this._isMounted = false;
73
+ (_a = this.unsubscribeOnCellChanged) === null || _a === void 0 ? void 0 : _a.call(this);
74
+ (_b = this.unsubscribeOnGridDataChanged) === null || _b === void 0 ? void 0 : _b.call(this);
64
75
  }
65
76
  UNSAFE_componentWillReceiveProps(nextProps) {
66
77
  const filter = this.getFilterFromProps(nextProps);
@@ -153,7 +164,7 @@ class QuickFilterFormComponent extends React.Component {
153
164
  }
154
165
  renderPredicateIcon(predicateDef) {
155
166
  if (!predicateDef || !predicateDef.icon) {
156
- return React.createElement(icons_1.Icon, { name: "filter-outline" });
167
+ return React.createElement(icons_1.Icon, { name: "filter" });
157
168
  }
158
169
  if ('text' in predicateDef.icon) {
159
170
  return React.createElement("span", null, predicateDef.icon.text);
@@ -239,7 +250,7 @@ class QuickFilterFormComponent extends React.Component {
239
250
  return (React.createElement(rebass_1.Flex, { onMouseEnter: () => {
240
251
  var _a;
241
252
  if (showEvent === 'click') {
242
- // For showEvent=mouseneter this is not needed.
253
+ // For showEvent=mousenter this is not needed.
243
254
  // When mouseenter is triggered on the overlay, onShowFn is called, the overlay is no longer hidden.
244
255
  // But in this case because the trigger is click, another show is not triggered.
245
256
  (_a = this.valuesDropdown) === null || _a === void 0 ? void 0 : _a.show();
@@ -295,6 +306,16 @@ class QuickFilterFormComponent extends React.Component {
295
306
  });
296
307
  }
297
308
  }
309
+ handleGridValueChange(changedColumnId) {
310
+ var _a, _b, _c, _d;
311
+ if (!this.hasValuesPredicate((_b = (_a = this.state) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.Predicate)) {
312
+ return;
313
+ }
314
+ if (changedColumnId && changedColumnId !== ((_d = (_c = this.state) === null || _c === void 0 ? void 0 : _c.filter) === null || _d === void 0 ? void 0 : _d.ColumnId)) {
315
+ return;
316
+ }
317
+ this.debouncedLoadPermittedValues();
318
+ }
298
319
  updateFilter(filter) {
299
320
  this.setState({ filter });
300
321
  if (filter.Uuid) {
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PanelProps } from '../../../components/Panel';
3
3
  import { BoxProps } from 'rebass';
4
+ import { AdaptableInternalIconName } from '../../../PredefinedConfig/Common/AdaptableIcon';
4
5
  export interface PanelWithButtonProps extends PanelProps {
5
6
  buttonContent?: React.ReactNode;
6
7
  buttonClick?: () => void;
@@ -10,7 +11,7 @@ export interface PanelWithButtonProps extends PanelProps {
10
11
  headerProps?: BoxProps & {
11
12
  'data-name': string;
12
13
  };
13
- glyphicon?: string;
14
+ glyphicon?: AdaptableInternalIconName;
14
15
  buttonDisabled?: boolean;
15
16
  buttonStyle?: string;
16
17
  borderRadius?: string;
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { PanelProps } from '../../../components/Panel';
3
3
  import { BoxProps } from 'rebass';
4
+ import { AdaptableInternalIconName } from '../../../PredefinedConfig/Common/AdaptableIcon';
4
5
  export interface PanelWithImageProps extends PanelProps {
5
- glyphicon?: string;
6
- icon?: string;
6
+ glyphicon?: AdaptableInternalIconName;
7
+ icon?: AdaptableInternalIconName;
7
8
  infoLink?: string;
8
9
  infoLinkDisabled?: boolean;
9
10
  borderRadius?: string;
@@ -37,6 +37,10 @@ const AdaptablePopupModuleView = (props) => {
37
37
  moduleViewProperties.onOpenEditPopup();
38
38
  }
39
39
  }, []);
40
+ React.useEffect(() => {
41
+ var _a;
42
+ (_a = moduleViewProperties === null || moduleViewProperties === void 0 ? void 0 : moduleViewProperties.onMount) === null || _a === void 0 ? void 0 : _a.call(moduleViewProperties);
43
+ }, []);
40
44
  React.useEffect(() => {
41
45
  var _a, _b;
42
46
  if (((_a = props.popupParams) === null || _a === void 0 ? void 0 : _a.action) === 'New' || ((_b = props.popupParams) === null || _b === void 0 ? void 0 : _b.action) === 'Edit') {