@adaptabletools/adaptable 12.0.1-canary.0 → 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 (74) hide show
  1. package/base.css +5 -18
  2. package/bundle.cjs.js +95 -95
  3. package/index.css +6 -22
  4. package/package.json +1 -1
  5. package/publishTimestamp.d.ts +1 -1
  6. package/publishTimestamp.js +1 -1
  7. package/src/Api/FilterApi.d.ts +7 -2
  8. package/src/Api/Implementation/FilterApiImpl.d.ts +1 -0
  9. package/src/Api/Implementation/FilterApiImpl.js +5 -0
  10. package/src/Api/Implementation/TeamSharingApiImpl.d.ts +1 -0
  11. package/src/Api/Implementation/TeamSharingApiImpl.js +5 -0
  12. package/src/Api/TeamSharingApi.d.ts +4 -0
  13. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +4 -1
  14. package/src/Redux/ActionsReducers/LayoutRedux.js +3 -0
  15. package/src/Strategy/AdaptableModuleBase.d.ts +4 -0
  16. package/src/Strategy/AdaptableModuleBase.js +6 -0
  17. package/src/Strategy/DashboardModule.js +1 -0
  18. package/src/Strategy/ExportModule.js +1 -0
  19. package/src/Strategy/FormatColumnModule.js +3 -3
  20. package/src/Strategy/GridInfoModule.js +2 -0
  21. package/src/Strategy/Interface/IModule.d.ts +11 -1
  22. package/src/Strategy/LayoutModule.js +2 -0
  23. package/src/Strategy/TeamSharingModule.d.ts +11 -1
  24. package/src/Strategy/TeamSharingModule.js +104 -0
  25. package/src/Utilities/Services/TeamSharingService.js +0 -2
  26. package/src/View/AdaptableViewFactory.js +0 -2
  27. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +13 -1
  28. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +17 -14
  29. package/src/View/Components/Buttons/ButtonDelete.js +3 -3
  30. package/src/View/Components/FilterForm/QuickFilterForm.js +22 -1
  31. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +4 -0
  32. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +1 -1
  33. package/src/View/Layout/LayoutEditorStandalonePopup.js +3 -1
  34. package/src/View/Layout/LayoutPopup.d.ts +1 -1
  35. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  36. package/src/View/Layout/Wizard/LayoutEditorWizard.d.ts +2 -27
  37. package/src/View/TeamSharing/SharedEntityDependencies.d.ts +8 -0
  38. package/src/View/TeamSharing/SharedEntityDependencies.js +27 -0
  39. package/src/View/TeamSharing/SharedEntityObjectView.d.ts +9 -0
  40. package/src/View/TeamSharing/SharedEntityObjectView.js +84 -0
  41. package/src/View/TeamSharing/TeamSharingApplyButton.d.ts +6 -0
  42. package/src/View/TeamSharing/TeamSharingApplyButton.js +15 -0
  43. package/src/agGrid/Adaptable.js +0 -1
  44. package/src/components/icons/index.js +0 -4
  45. package/src/metamodel/adaptable.metamodel.d.ts +5 -0
  46. package/src/metamodel/adaptable.metamodel.js +1 -1
  47. package/version.d.ts +1 -1
  48. package/version.js +1 -1
  49. package/src/View/Alert/AlertSharedEntity.d.ts +0 -5
  50. package/src/View/Alert/AlertSharedEntity.js +0 -19
  51. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.d.ts +0 -5
  52. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.js +0 -20
  53. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.d.ts +0 -5
  54. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.js +0 -23
  55. package/src/View/CustomSort/CustomSortSharedEntity.d.ts +0 -6
  56. package/src/View/CustomSort/CustomSortSharedEntity.js +0 -24
  57. package/src/View/Export/ExportSharedEntity.d.ts +0 -5
  58. package/src/View/Export/ExportSharedEntity.js +0 -16
  59. package/src/View/Filter/FilterSharedEntity.d.ts +0 -5
  60. package/src/View/Filter/FilterSharedEntity.js +0 -15
  61. package/src/View/FormatColumn/FormatColumnSharedEntity.d.ts +0 -5
  62. package/src/View/FormatColumn/FormatColumnSharedEntity.js +0 -18
  63. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.d.ts +0 -5
  64. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.js +0 -24
  65. package/src/View/Layout/LayoutSharedEntity.d.ts +0 -5
  66. package/src/View/Layout/LayoutSharedEntity.js +0 -15
  67. package/src/View/PlusMinus/PlusMinusSharedEntity.d.ts +0 -5
  68. package/src/View/PlusMinus/PlusMinusSharedEntity.js +0 -21
  69. package/src/View/Query/NamedQuerySharedEntity.d.ts +0 -5
  70. package/src/View/Query/NamedQuerySharedEntity.js +0 -19
  71. package/src/View/Shortcut/ShortcutSharedEntity.d.ts +0 -5
  72. package/src/View/Shortcut/ShortcutSharedEntity.js +0 -19
  73. package/src/View/TeamSharing/TeamSharingPopup.d.ts +0 -23
  74. package/src/View/TeamSharing/TeamSharingPopup.js +0 -163
@@ -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);
@@ -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) {
@@ -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') {
@@ -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" },
@@ -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;
@@ -2700,7 +2700,6 @@ class Adaptable {
2700
2700
  this.gridOptions.api.addGlobalListener((this.listenerGlobalColumnEventsThatTriggerStateChange = (type) => {
2701
2701
  if (columnEventsThatTriggersStateChange.indexOf(type) > -1) {
2702
2702
  this.debouncedSetColumnIntoStore();
2703
- this.debouncedFilterGrid();
2704
2703
  }
2705
2704
  }));
2706
2705
  /**
@@ -52,7 +52,6 @@ const column_chooser_1 = tslib_1.__importDefault(require("./column-chooser"));
52
52
  const column_add_1 = tslib_1.__importDefault(require("./column-add"));
53
53
  const cell_validation_1 = tslib_1.__importDefault(require("./cell-validation"));
54
54
  const column_filter_1 = tslib_1.__importDefault(require("./column-filter"));
55
- const column_info_1 = tslib_1.__importDefault(require("./column-info"));
56
55
  const custom_sort_1 = tslib_1.__importDefault(require("./custom-sort"));
57
56
  const system_status_1 = tslib_1.__importDefault(require("./system-status"));
58
57
  const data_set_1 = tslib_1.__importDefault(require("./data-set"));
@@ -168,7 +167,6 @@ const allIcons = {
168
167
  'cell-validation': cell_validation_1.default,
169
168
  'conditional-style': conditional_style_1.default,
170
169
  chat: chat_1.default,
171
- 'column-info': column_info_1.default,
172
170
  'custom-sort': custom_sort_1.default,
173
171
  dashboard: dashboard_1.default,
174
172
  'flashing-cell': flashing_cell_1.default,
@@ -191,8 +189,6 @@ const allIcons = {
191
189
  // others
192
190
  edit: edit_1.default,
193
191
  'tab-unselected': tab_unselected_1.default,
194
- 'check-box': check_box_1.default,
195
- 'check-box-outline': check_box_outline_1.default,
196
192
  unchecked: check_box_outline_1.default,
197
193
  checked: check_box_1.default,
198
194
  'boolean-list': boolean_list_1.default,
@@ -466,6 +466,11 @@ export declare const ADAPTABLE_METAMODEL: {
466
466
  reference?: undefined;
467
467
  })[];
468
468
  };
469
+ AdaptableInternalIconName: {
470
+ name: string;
471
+ kind: string;
472
+ description: string;
473
+ };
469
474
  AdaptableLoadStateFunction: {
470
475
  name: string;
471
476
  kind: string;