@adaptabletools/adaptable-cjs 18.0.0-canary.7 → 18.0.0-canary.9

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 (90) hide show
  1. package/base.css +7 -2
  2. package/base.css.map +1 -1
  3. package/index.css +9 -2
  4. package/index.css.map +1 -1
  5. package/package.json +2 -2
  6. package/src/AdaptableInterfaces/IAdaptable.d.ts +8 -1
  7. package/src/AdaptableOptions/AdaptableOptions.d.ts +1 -1
  8. package/src/Api/ConfigApi.d.ts +1 -1
  9. package/src/Api/GridApi.d.ts +4 -0
  10. package/src/Api/Implementation/CommentsApiImpl.d.ts +4 -0
  11. package/src/Api/Implementation/CommentsApiImpl.js +5 -0
  12. package/src/Api/Implementation/ConfigApiImpl.js +6 -3
  13. package/src/Api/Implementation/GridApiImpl.d.ts +1 -0
  14. package/src/Api/Implementation/GridApiImpl.js +13 -0
  15. package/src/Api/Implementation/LayoutApiImpl.d.ts +2 -4
  16. package/src/Api/Implementation/LayoutApiImpl.js +15 -14
  17. package/src/Api/Implementation/NotesApiImpl.d.ts +4 -0
  18. package/src/Api/Implementation/NotesApiImpl.js +5 -0
  19. package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
  20. package/src/Api/Implementation/ScopeApiImpl.js +20 -7
  21. package/src/Api/Internal/CalculatedColumnInternalApi.js +1 -1
  22. package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
  23. package/src/Api/Internal/CommentsInternalApi.js +17 -0
  24. package/src/Api/Internal/FormatColumnInternalApi.js +3 -2
  25. package/src/Api/Internal/FreeTextColumnInternalApi.js +1 -1
  26. package/src/Api/Internal/NotesInternalApi.d.ts +4 -0
  27. package/src/Api/Internal/NotesInternalApi.js +17 -0
  28. package/src/Api/LayoutApi.d.ts +11 -8
  29. package/src/Api/ScopeApi.d.ts +10 -0
  30. package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
  31. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
  32. package/src/PredefinedConfig/Common/AdaptableScope.d.ts +4 -1
  33. package/src/PredefinedConfig/Common/RowSummary.d.ts +7 -0
  34. package/src/PredefinedConfig/Common/RowSummary.js +4 -0
  35. package/src/PredefinedConfig/LayoutState.d.ts +5 -0
  36. package/src/PredefinedConfig/SystemState.d.ts +7 -0
  37. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
  38. package/src/Redux/ActionsReducers/LayoutRedux.js +22 -1
  39. package/src/Redux/ActionsReducers/SystemRedux.d.ts +5 -0
  40. package/src/Redux/ActionsReducers/SystemRedux.js +16 -3
  41. package/src/Redux/Store/AdaptableStore.js +11 -0
  42. package/src/Redux/Store/Interface/IAdaptableStore.d.ts +2 -2
  43. package/src/Strategy/CellSummaryModule.d.ts +1 -0
  44. package/src/Strategy/CellSummaryModule.js +50 -21
  45. package/src/Strategy/CommentsModule.js +3 -0
  46. package/src/Strategy/LayoutModule.d.ts +7 -0
  47. package/src/Strategy/LayoutModule.js +102 -3
  48. package/src/Strategy/NotesModule.js +3 -4
  49. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +2 -1
  50. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +294 -0
  51. package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
  52. package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
  53. package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
  54. package/src/Utilities/ObjectFactory.js +6 -6
  55. package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +3 -2
  56. package/src/Utilities/Services/AggregatedScalarLiveValue.js +11 -8
  57. package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
  58. package/src/Utilities/Services/LicenseService/index.js +10 -5
  59. package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
  60. package/src/Utilities/Services/QueryLanguageService.js +2 -1
  61. package/src/Utilities/Services/SummaryService.d.ts +19 -0
  62. package/src/Utilities/Services/SummaryService.js +33 -0
  63. package/src/View/AdaptableView.js +1 -1
  64. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  65. package/src/View/Components/NewScopeComponent.js +32 -1
  66. package/src/View/Components/Popups/AdaptableToaster.js +1 -1
  67. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +7 -7
  68. package/src/View/Layout/TransposedPopup.js +7 -6
  69. package/src/agGrid/ActionColumnRenderer.js +3 -2
  70. package/src/agGrid/AdaptableAgGrid.d.ts +16 -2
  71. package/src/agGrid/AdaptableAgGrid.js +200 -90
  72. package/src/agGrid/AgGridAdapter.d.ts +1 -0
  73. package/src/agGrid/AgGridAdapter.js +8 -0
  74. package/src/agGrid/AgGridColumnAdapter.js +14 -3
  75. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  76. package/src/components/Datepicker/index.d.ts +1 -1
  77. package/src/components/Input/index.d.ts +1 -1
  78. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  79. package/src/components/icons/index.js +2 -0
  80. package/src/components/icons/rows.d.ts +3 -0
  81. package/src/components/icons/rows.js +7 -0
  82. package/src/env.js +2 -2
  83. package/src/metamodel/adaptable.metamodel.d.ts +8 -0
  84. package/src/metamodel/adaptable.metamodel.js +18 -0
  85. package/src/parser/src/types.d.ts +5 -0
  86. package/tsconfig.cjs.tsbuildinfo +1 -1
  87. package/src/View/Components/ScopeComponent.d.ts +0 -24
  88. package/src/View/Components/ScopeComponent.js +0 -138
  89. package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
  90. package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
@@ -1,24 +0,0 @@
1
- import * as React from 'react';
2
- import { AdaptableApi } from '../../Api/AdaptableApi';
3
- import { AdaptableScope } from '../../PredefinedConfig/Common/AdaptableScope';
4
- export interface ScopeComponentProps extends React.ClassAttributes<ScopeComponent> {
5
- api: AdaptableApi;
6
- scope: AdaptableScope;
7
- updateScope: (scope: AdaptableScope) => void;
8
- displayMessage?: string;
9
- availableDataTypes?: string[];
10
- }
11
- export interface ScopeComponentState {
12
- ScopeChoice: 'All' | 'Column' | 'DataType';
13
- componentScope: AdaptableScope;
14
- selectedColumnValues: string[] | undefined;
15
- availableDataTypes?: string[];
16
- }
17
- export declare class ScopeComponent extends React.Component<ScopeComponentProps, ScopeComponentState> {
18
- constructor(props: ScopeComponentProps);
19
- render(): JSX.Element;
20
- private setScopeChoice;
21
- private onScopeSelectChanged;
22
- private onColumnsSelectedChanged;
23
- private onCheckBoxDataTypeChecked;
24
- }
@@ -1,138 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScopeComponent = void 0;
4
- const tslib_1 = require("tslib");
5
- const React = tslib_1.__importStar(require("react"));
6
- const rebass_1 = require("rebass");
7
- const Panel_1 = tslib_1.__importDefault(require("../../components/Panel"));
8
- const HelpBlock_1 = tslib_1.__importDefault(require("../../components/HelpBlock"));
9
- const Radio_1 = tslib_1.__importDefault(require("../../components/Radio"));
10
- const DualListBoxEditor_1 = require("./ListBox/DualListBoxEditor");
11
- const CheckBox_1 = require("../../components/CheckBox");
12
- class ScopeComponent extends React.Component {
13
- constructor(props) {
14
- super(props);
15
- this.state = {
16
- ScopeChoice: this.setScopeChoice(this.props.scope),
17
- componentScope: this.props.scope,
18
- selectedColumnValues: this.props.api.columnApi.getFriendlyNamesForColumnIds(this.props.api.scopeApi.getColumnIdsInScope(this.props.scope)),
19
- availableDataTypes: this.props.availableDataTypes
20
- ? this.props.availableDataTypes
21
- : ['Date', 'Number', 'String', 'Boolean'],
22
- };
23
- }
24
- render() {
25
- let availableValues = this.props.api.columnApi.internalApi.getAllColumnFriendlyNames();
26
- let displayMessage = this.props.displayMessage
27
- ? this.props.displayMessage
28
- : 'Apply Scope for: Row, or one or more Columns, or one or more Data Types';
29
- return (React.createElement("div", { "data-name": 'scope-component' },
30
- React.createElement(Panel_1.default, { header: "Scope", margin: 2, className: "ab-ScopeComponent" },
31
- React.createElement(rebass_1.Flex, { flexDirection: "column", "data-name": "scope-block" },
32
- React.createElement(HelpBlock_1.default, { marginBottom: 1 }, displayMessage),
33
- ' ',
34
- React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "center", padding: 2 },
35
- React.createElement(Radio_1.default, { value: "Row", checked: this.state.ScopeChoice == 'All', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "All Columns"),
36
- ' ',
37
- React.createElement(Radio_1.default, { marginLeft: 3, value: "Column", checked: this.state.ScopeChoice == 'Column', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "Selected Column(s)"),
38
- ' ',
39
- React.createElement(Radio_1.default, { marginLeft: 3, value: "DataType", checked: this.state.ScopeChoice == 'DataType', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "DataType(s)")),
40
- this.state.ScopeChoice == 'Column' && (React.createElement(rebass_1.Box, { marginBottom: 2, "data-name": "column-scope" },
41
- React.createElement(DualListBoxEditor_1.DualListBoxEditor, { style: { flex: 1, overflow: 'hidden', height: '250px' }, AvailableValues: availableValues, SelectedValues: this.state.selectedColumnValues, HeaderAvailable: "Columns", HeaderSelected: "Columns In Style", onChange: (SelectedValues) => this.onColumnsSelectedChanged(SelectedValues) }))),
42
- this.state.ScopeChoice == 'DataType' && (React.createElement(Panel_1.default, { "data-name": "datatype-scope", variant: "modern" },
43
- React.createElement(rebass_1.Flex, { flexDirection: "row" },
44
- this.state.availableDataTypes.includes('Date') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "date", checked: this.state.componentScope &&
45
- 'DataTypes' in this.state.componentScope &&
46
- this.props.api.scopeApi
47
- .getDataTypesInScope(this.state.componentScope)
48
- .includes('Date'), marginLeft: 2, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'Date') }, "Date")),
49
- this.state.availableDataTypes.includes('Number') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "number", checked: this.state.componentScope &&
50
- 'DataTypes' in this.state.componentScope &&
51
- this.props.api.scopeApi
52
- .getDataTypesInScope(this.state.componentScope)
53
- .includes('Number'), marginLeft: 4, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'Number') }, "Number")),
54
- this.state.availableDataTypes.includes('String') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "string", checked: this.state.componentScope &&
55
- 'DataTypes' in this.state.componentScope &&
56
- this.props.api.scopeApi
57
- .getDataTypesInScope(this.state.componentScope)
58
- .includes('String'), marginLeft: 4, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'String') }, "String")),
59
- this.state.availableDataTypes.includes('Boolean') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "boolean", checked: this.state.componentScope &&
60
- 'DataTypes' in this.state.componentScope &&
61
- this.props.api.scopeApi
62
- .getDataTypesInScope(this.state.componentScope)
63
- .includes('Boolean'), marginLeft: 4, onChange: (checked) => this.onCheckBoxDataTypeChecked(checked, 'Boolean') }, "Boolean")))))))));
64
- }
65
- setScopeChoice(scope) {
66
- if (!scope) {
67
- return undefined;
68
- }
69
- if (this.props.api.scopeApi.scopeIsAll(scope)) {
70
- return 'All';
71
- }
72
- if (this.props.api.scopeApi.scopeHasColumns(this.props.scope)) {
73
- return 'Column';
74
- }
75
- if (this.props.api.scopeApi.scopeHasDataType(this.props.scope)) {
76
- return 'DataType';
77
- }
78
- return undefined;
79
- }
80
- onScopeSelectChanged(event) {
81
- let e = event.target;
82
- let newScope;
83
- let newScopeChoice;
84
- if (e.value == 'Column') {
85
- newScope = {
86
- ColumnIds: [],
87
- };
88
- newScopeChoice = 'Column';
89
- }
90
- else if (e.value == 'DataType') {
91
- newScope = {
92
- DataTypes: [],
93
- };
94
- newScopeChoice = 'DataType';
95
- }
96
- else {
97
- newScope = {
98
- All: true,
99
- };
100
- newScopeChoice = 'All';
101
- }
102
- this.setState({
103
- ScopeChoice: newScopeChoice,
104
- componentScope: newScope,
105
- }, () => this.forceUpdate());
106
- this.props.updateScope(newScope);
107
- }
108
- onColumnsSelectedChanged(columnFriendlyNames) {
109
- let cols = this.props.api.columnApi.getColumnIdsForFriendlyNames(columnFriendlyNames);
110
- let newScope = {
111
- ColumnIds: cols,
112
- };
113
- this.setState({
114
- componentScope: newScope,
115
- selectedColumnValues: columnFriendlyNames,
116
- }, () => this.forceUpdate());
117
- // this.updateScope();
118
- this.props.updateScope(newScope);
119
- }
120
- onCheckBoxDataTypeChecked(checked, item) {
121
- let dataTypes = [].concat(this.props.api.scopeApi.getDataTypesInScope(this.state.componentScope));
122
- if (checked) {
123
- dataTypes.push(item);
124
- }
125
- else {
126
- const index = dataTypes.indexOf(item, 0);
127
- if (index > -1) {
128
- dataTypes.splice(index, 1);
129
- }
130
- }
131
- let newScope = {
132
- DataTypes: dataTypes,
133
- };
134
- this.setState({ componentScope: newScope }, () => this.forceUpdate());
135
- this.props.updateScope(newScope);
136
- }
137
- }
138
- exports.ScopeComponent = ScopeComponent;
@@ -1,17 +0,0 @@
1
- import * as React from 'react';
2
- import { AdaptableWizardStep, AdaptableWizardStepProps } from '../../Wizard/Interface/IAdaptableWizard';
3
- import { WizardScopeState } from '../../Components/SharedProps/WizardScopeState';
4
- import { Report } from '../../../PredefinedConfig/ExportState';
5
- export interface ReportScopeWizardProps extends AdaptableWizardStepProps<Report> {
6
- }
7
- export declare class ReportScopeWizard extends React.Component<ReportScopeWizardProps, WizardScopeState> implements AdaptableWizardStep {
8
- constructor(props: ReportScopeWizardProps);
9
- render(): any;
10
- private onUpdateScope;
11
- canNext(): boolean;
12
- canBack(): boolean;
13
- next(): void;
14
- back(): void;
15
- getIndexStepIncrement(): number;
16
- getIndexStepDecrement(): number;
17
- }
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReportScopeWizard = void 0;
4
- const tslib_1 = require("tslib");
5
- const React = tslib_1.__importStar(require("react"));
6
- const WizardPanel_1 = tslib_1.__importDefault(require("../../../components/WizardPanel"));
7
- const ScopeComponent_1 = require("../../Components/ScopeComponent");
8
- const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/ArrayExtensions"));
9
- class ReportScopeWizard extends React.Component {
10
- constructor(props) {
11
- super(props);
12
- this.state = {
13
- scope: this.props.data.Scope ? this.props.data.Scope : { All: true },
14
- };
15
- }
16
- render() {
17
- return (React.createElement(WizardPanel_1.default, { "data-name": "scope-container", bodyProps: { padding: 0 } },
18
- React.createElement(ScopeComponent_1.ScopeComponent, { api: this.props.api, scope: this.state.scope, updateScope: (scope) => this.onUpdateScope(scope) }),
19
- ' '));
20
- }
21
- onUpdateScope(scope) {
22
- this.setState({ scope: scope }, () => this.props.updateGoBackState());
23
- }
24
- canNext() {
25
- if (this.state.scope == undefined) {
26
- return false;
27
- }
28
- if ('ColumnIds' in this.state.scope &&
29
- ArrayExtensions_1.default.IsNullOrEmpty(this.props.api.scopeApi.getColumnIdsInScope(this.state.scope))) {
30
- return false;
31
- }
32
- if ('DataTypes' in this.state.scope &&
33
- ArrayExtensions_1.default.IsNullOrEmpty(this.props.api.scopeApi.getDataTypesInScope(this.state.scope))) {
34
- return false;
35
- }
36
- return true;
37
- }
38
- canBack() {
39
- return false;
40
- }
41
- next() {
42
- this.props.data.Scope = this.state.scope;
43
- }
44
- back() { }
45
- getIndexStepIncrement() {
46
- return 1;
47
- }
48
- getIndexStepDecrement() {
49
- return 1;
50
- }
51
- }
52
- exports.ReportScopeWizard = ReportScopeWizard;