@adaptabletools/adaptable-cjs 22.0.0-canary.2 → 22.0.0-canary.3
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.
- package/index.css +52 -23
- package/index.css.map +1 -1
- package/package.json +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableStyle.d.ts +8 -0
- package/src/AdaptableState/FormatColumnState.d.ts +0 -8
- package/src/Api/DataSetApi.d.ts +1 -1
- package/src/Api/GridApi.d.ts +3 -3
- package/src/Api/Implementation/GridApiImpl.d.ts +9 -9
- package/src/Api/Implementation/GridApiImpl.js +16 -16
- package/src/Api/Internal/ColumnInternalApi.js +1 -1
- package/src/Api/Internal/FormatColumnInternalApi.d.ts +0 -10
- package/src/Api/Internal/FormatColumnInternalApi.js +1 -19
- package/src/Redux/ActionsReducers/NoteRedux.js +1 -1
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +0 -3
- package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +2 -2
- package/src/Utilities/Constants/DocumentationLinkConstants.js +2 -2
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +3 -3
- package/src/Utilities/Helpers/StyleHelper.js +14 -0
- package/src/Utilities/ObjectFactory.js +1 -1
- package/src/Utilities/Services/AnnotationsService.js +1 -1
- package/src/Utilities/Services/ModuleService.js +3 -3
- package/src/View/AdaptablePopover/index.d.ts +1 -0
- package/src/View/AdaptablePopover/index.js +1 -1
- package/src/View/Alert/ActiveAlertsPanel.js +8 -0
- package/src/View/Alert/AlertViewPanel.js +13 -9
- package/src/View/Alert/Utilities/getAlertButtonStyle.d.ts +1 -0
- package/src/View/Alert/Utilities/getAlertButtonStyle.js +8 -0
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +23 -11
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +2 -2
- package/src/View/CellSummary/CellSummaryViewPanel.js +15 -17
- package/src/View/Components/AdaptableDateInput/index.js +1 -1
- package/src/View/Components/Buttons/ButtonApply.js +1 -1
- package/src/View/Components/Buttons/ButtonClear.d.ts +1 -0
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +18 -17
- package/src/View/Components/StyleComponent.js +20 -1
- package/src/View/Dashboard/DashboardPopup.js +4 -5
- package/src/View/Export/ExportDestinationPicker.js +1 -1
- package/src/View/Export/ExportStatusBar.js +4 -2
- package/src/View/Export/ExportViewPanel.js +25 -18
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +0 -23
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +2 -2
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +57 -65
- package/src/View/QuickSearch/QuickSearchPopup.js +4 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +2 -2
- package/src/View/UIHelper.d.ts +2 -0
- package/src/View/UIHelper.js +16 -0
- package/src/agGrid/AdaptableAgGrid.d.ts +2 -2
- package/src/agGrid/AdaptableAgGrid.js +5 -5
- package/src/agGrid/AgGridColumnAdapter.js +3 -18
- package/src/components/Dashboard/DashboardToolbar.js +1 -1
- package/src/components/ExpressionEditor/EditorInput.js +19 -3
- package/src/components/Tree/TreeDropdown/index.js +1 -1
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +9 -7
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/AdaptableUpgradeHelper.js +2 -0
- package/src/migration/VersionUpgrade22.d.ts +6 -0
- package/src/migration/VersionUpgrade22.js +31 -0
- package/src/types.d.ts +1 -1
- package/tsconfig.cjs.tsbuildinfo +1 -1
|
@@ -133,6 +133,14 @@ const StyleComponent = (props) => {
|
|
|
133
133
|
}
|
|
134
134
|
setComponentStyle(newStyle);
|
|
135
135
|
};
|
|
136
|
+
const onAlignmentChange = (alignment) => {
|
|
137
|
+
const newStyle = { ...componentStyle };
|
|
138
|
+
newStyle.Alignment = alignment;
|
|
139
|
+
if (alignment == 'Default') {
|
|
140
|
+
delete newStyle.Alignment;
|
|
141
|
+
}
|
|
142
|
+
setComponentStyle(newStyle);
|
|
143
|
+
};
|
|
136
144
|
const Cmp = props.headless ? Flex_1.Box : Panel_1.default;
|
|
137
145
|
const headerText = props.headerText ?? 'Style';
|
|
138
146
|
const cmpProps = props.headless
|
|
@@ -220,7 +228,18 @@ const StyleComponent = (props) => {
|
|
|
220
228
|
], value: componentStyle.FontSize?.toString() ?? '', onChange: (value) => onFontSizeChange(value) }))) : (React.createElement(Flex_1.Flex, { flexDirection: "row", alignItems: "center", className: "twa:gap-2 twa:flex-wrap" }, fontSizes.map((enumName) => {
|
|
221
229
|
return (React.createElement(Radio_1.default, { onClick: () => onFontSizeChange(enumName), checked: (enumName == 'Default' && !componentStyle.FontSize) ||
|
|
222
230
|
componentStyle.FontSize === enumName, key: enumName }, enumName));
|
|
223
|
-
})))
|
|
231
|
+
}))),
|
|
232
|
+
React.createElement("span", null, "Alignment"),
|
|
233
|
+
React.createElement(Toggle_1.ToggleGroup, null,
|
|
234
|
+
React.createElement(Toggle_1.Toggle, { icon: "align-left", pressed: componentStyle.Alignment === 'Left', onPressedChange: (pressed) => pressed
|
|
235
|
+
? onAlignmentChange('Left')
|
|
236
|
+
: onAlignmentChange('Default') }),
|
|
237
|
+
React.createElement(Toggle_1.Toggle, { icon: "align-center", pressed: componentStyle.Alignment === 'Center', onPressedChange: (pressed) => pressed
|
|
238
|
+
? onAlignmentChange('Center')
|
|
239
|
+
: onAlignmentChange('Default') }),
|
|
240
|
+
React.createElement(Toggle_1.Toggle, { icon: "align-right", pressed: componentStyle.Alignment === 'Right', onPressedChange: (pressed) => pressed
|
|
241
|
+
? onAlignmentChange('Right')
|
|
242
|
+
: onAlignmentChange('Default') })))))),
|
|
224
243
|
!props.hidePreview && (React.createElement(Card_1.Card, { shadow: false },
|
|
225
244
|
React.createElement(Card_1.Card.Title, null, "Preview"),
|
|
226
245
|
React.createElement(Card_1.Card.Body, { className: "twa:grid twa:place-items-center" },
|
|
@@ -73,18 +73,17 @@ class DashboardPopupComponent extends React.Component {
|
|
|
73
73
|
React.createElement(Flex_1.Flex, { flexDirection: "column", className: "twa:h-full twa:gap-4" },
|
|
74
74
|
areDashboardSettingsVisible && (React.createElement(React.Fragment, null,
|
|
75
75
|
React.createElement(Card_1.Card, null,
|
|
76
|
-
React.createElement(Card_1.Card.Title, { gap: 8 },
|
|
77
|
-
"Display Settings",
|
|
78
|
-
React.createElement(ToggleButton_1.ToggleButton, { className: "twa:self-end", onChange: (visible) => this.props.onSetDashboardHidden(!visible), checked: !this.props.IsHidden, "data-name": "dashboard-visibility" }, this.props.IsHidden ? 'Hidden' : 'Visible')),
|
|
76
|
+
React.createElement(Card_1.Card.Title, { gap: 8 }, "Display Settings"),
|
|
79
77
|
React.createElement(Card_1.Card.Body, { gap: 2, className: "twa:p-2" },
|
|
80
|
-
React.createElement(ToggleButton_1.ToggleButton, {
|
|
78
|
+
React.createElement(ToggleButton_1.ToggleButton, { className: "twa:w-24", onChange: (visible) => this.props.onSetDashboardHidden(!visible), checked: !this.props.IsHidden, "data-name": "dashboard-visibility" }, this.props.IsHidden ? 'Hidden' : 'Visible'),
|
|
79
|
+
this.props.DashboardState.Tabs?.length > 0 ? (React.createElement(ToggleButton_1.ToggleButton, { disabled: this.props.IsFloating, className: "twa:w-24", onChange: (expanded) => this.props.onSetDashboardCollapsed(!expanded), checked: !this.props.IsCollapsed, "data-name": "expand-state" }, this.props.IsCollapsed ? 'Collapsed' : 'Expanded')) : null,
|
|
81
80
|
this.props.api.optionsApi.getDashboardOptions().canFloat ? (React.createElement(ToggleButton_1.ToggleButton, { className: "twa:w-24", onChange: (pinned) => this.props.onSetDashboardFloating(!pinned), checked: !this.props.IsFloating, "data-name": "floating" }, this.props.IsFloating ? 'Floating' : 'Pinned')) : null)))),
|
|
82
81
|
React.createElement(Card_1.Card, { className: "twa:flex-1 twa:overflow-hidden", gap: 0 },
|
|
83
82
|
React.createElement(Card_1.Card.Title, null, "Contents"),
|
|
84
83
|
React.createElement(Card_1.Card.Body, { className: "twa:p-2" },
|
|
85
84
|
React.createElement(Tabs_1.Tabs, { className: "twa:flex-1 twa:min-h-0" },
|
|
86
85
|
React.createElement(Tabs_1.Tabs.Tab, { value: "pinned-toolbars" }, "Pinned Toolbars"),
|
|
87
|
-
React.createElement(Tabs_1.Tabs.Tab, { value: "tabbed-toolbars" }, "
|
|
86
|
+
React.createElement(Tabs_1.Tabs.Tab, { value: "tabbed-toolbars" }, "Tabs & Toolbars"),
|
|
88
87
|
React.createElement(Tabs_1.Tabs.Tab, { value: "buttons" }, "Buttons"),
|
|
89
88
|
React.createElement(Tabs_1.Tabs.Content, { value: "pinned-toolbars", className: contentCls },
|
|
90
89
|
React.createElement(PinnedToolbarsSelector_1.PinnedToolbarsSelector, null)),
|
|
@@ -16,7 +16,7 @@ const ExportDestinationPicker = ({ reportName, reportFormat, viewType, }) => {
|
|
|
16
16
|
};
|
|
17
17
|
const supportedDestinations = exportApi.getSupportedExportDestinations(reportFormat);
|
|
18
18
|
if (supportedDestinations.length === 0 || supportedDestinations.length === 1) {
|
|
19
|
-
return (react_1.default.createElement(ButtonExport_1.ButtonExport, { className: (0, clsx_1.default)(viewType !== 'StatusBar' ? '
|
|
19
|
+
return (react_1.default.createElement(ButtonExport_1.ButtonExport, { className: (0, clsx_1.default)(viewType !== 'StatusBar' ? '' : undefined, ''), onClick: () => handleExport(supportedDestinations[0]), tooltip: "Export Report", disabled: reportName == undefined || reportFormat == undefined }));
|
|
20
20
|
}
|
|
21
21
|
const destinationItems = supportedDestinations.map((destination) => ({
|
|
22
22
|
label: destination,
|
|
@@ -8,14 +8,16 @@ const ReportNameSelector_1 = require("./ReportNameSelector");
|
|
|
8
8
|
const ReportFormatSelector_1 = require("./ReportFormatSelector");
|
|
9
9
|
const ExportDestinationPicker_1 = require("./ExportDestinationPicker");
|
|
10
10
|
const AdaptableContext_1 = require("../AdaptableContext");
|
|
11
|
+
const Flex_1 = require("../../components/Flex");
|
|
11
12
|
const ExportStatusBar = () => {
|
|
12
13
|
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
13
14
|
const exportApi = adaptable.api.exportApi;
|
|
14
15
|
const currentReportName = (0, react_redux_1.useSelector)((state) => state.Export.CurrentReport);
|
|
15
16
|
const currentFormat = (0, react_redux_1.useSelector)((state) => state.Export.CurrentFormat);
|
|
16
17
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
17
|
-
react_1.default.createElement(
|
|
18
|
-
|
|
18
|
+
react_1.default.createElement(Flex_1.Flex, { className: "twa:gap-1" },
|
|
19
|
+
react_1.default.createElement(ReportNameSelector_1.ReportNameSelector, { viewType: "StatusBar", reportName: currentReportName, onReportNameSelected: (reportName) => exportApi.selectReport(reportName) }),
|
|
20
|
+
react_1.default.createElement(ReportFormatSelector_1.ReportFormatSelector, { viewType: "StatusBar", reportName: currentReportName, reportFormat: currentFormat, onReportFormatSelected: (reportFormat) => exportApi.selectFormat(reportFormat) })),
|
|
19
21
|
react_1.default.createElement(ExportDestinationPicker_1.ExportDestinationPicker, { viewType: "StatusBar", reportName: currentReportName, reportFormat: currentFormat })));
|
|
20
22
|
};
|
|
21
23
|
exports.ExportStatusBar = ExportStatusBar;
|
|
@@ -19,6 +19,7 @@ const ReportNameSelector_1 = require("./ReportNameSelector");
|
|
|
19
19
|
const ReportFormatSelector_1 = require("./ReportFormatSelector");
|
|
20
20
|
const ExportDestinationPicker_1 = require("./ExportDestinationPicker");
|
|
21
21
|
const Flex_1 = require("../../components/Flex");
|
|
22
|
+
const clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
22
23
|
const ExportViewPanel = (props) => {
|
|
23
24
|
const dispatch = (0, react_redux_1.useDispatch)();
|
|
24
25
|
const exportApi = props.api.exportApi;
|
|
@@ -30,28 +31,34 @@ const ExportViewPanel = (props) => {
|
|
|
30
31
|
const deleteMessage = currentReport
|
|
31
32
|
? `Are you sure you want to delete '${currentReport.Name}'?`
|
|
32
33
|
: 'Are you sure you want to delete this report?';
|
|
33
|
-
const
|
|
34
|
-
|
|
34
|
+
const isToolbar = props.viewType === 'Toolbar';
|
|
35
|
+
const elementType = isToolbar ? 'DashboardToolbar' : 'ToolPanel';
|
|
36
|
+
return (React.createElement(Flex_1.Flex, { flexDirection: "row", className: (0, clsx_1.default)(`ab-${elementType}__CellSummary__wrap twa:gap-2 twa:flex-row`, {
|
|
37
|
+
'twa:min-w-[486px] twa:flex-nowrap': isToolbar,
|
|
38
|
+
'twa:flex-1 twa:flex-wrap': !isToolbar,
|
|
39
|
+
}) },
|
|
35
40
|
React.createElement(ReportNameSelector_1.ReportNameSelector, { viewType: props.viewType, reportName: currentReportName, userReports: userReports, onReportNameSelected: (reportName) => exportApi.selectReport(reportName) }),
|
|
36
41
|
React.createElement(ReportFormatSelector_1.ReportFormatSelector, { viewType: props.viewType, reportName: currentReportName, reportFormat: currentFormat, onReportFormatSelected: (reportFormat) => exportApi.selectFormat(reportFormat) }),
|
|
37
42
|
React.createElement(Flex_1.Flex, { className: (0, join_1.default)(accessLevel == 'ReadOnly' ? GeneralConstants.READ_ONLY_STYLE : '', `ab-${elementType}__Export__controls twa:w-full`) },
|
|
38
|
-
React.createElement(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
})), tooltip: "Create New Report", accessLevel: props.accessLevel }),
|
|
47
|
-
React.createElement(ButtonDelete_1.ButtonDelete, { tooltip: "Delete Report", className: `ab-${elementType}__Export__delete`, disabled: currentReport == null, ConfirmAction: ExportRedux.ReportDelete(currentReport), ConfirmationMsg: deleteMessage, ConfirmationTitle: 'Delete Report', accessLevel: accessLevel }),
|
|
48
|
-
props.api.entitlementApi.isModuleFullEntitlement('Schedule') && (React.createElement(ButtonSchedule_1.ButtonSchedule, { className: `ab-${elementType}__Export__schedule twa:ml-1`, onClick: () => {
|
|
49
|
-
const reportSchedule = ObjectFactory_1.default.CreateReportSchedule(currentReportName, currentFormat);
|
|
50
|
-
dispatch(PopupRedux.PopupShowScreen(ModuleConstants.ScheduleModuleId, 'SchedulePopup', {
|
|
43
|
+
React.createElement(Flex_1.Flex, { className: "twa:min-w-[44px]" },
|
|
44
|
+
React.createElement(ExportDestinationPicker_1.ExportDestinationPicker, { viewType: props.viewType, reportName: currentReportName, reportFormat: currentFormat })),
|
|
45
|
+
React.createElement(Flex_1.Flex, null,
|
|
46
|
+
React.createElement(ButtonEdit_1.ButtonEdit, { onClick: () => dispatch(PopupRedux.PopupShowScreen(ModuleConstants.ExportModuleId, props.moduleInfo.Popup, {
|
|
47
|
+
action: 'Edit',
|
|
48
|
+
source: 'Toolbar',
|
|
49
|
+
})), tooltip: "Edit Report", className: `ab-${elementType}__Export__edit`, disabled: currentReport == null, accessLevel: accessLevel }),
|
|
50
|
+
React.createElement(ButtonNew_1.ButtonNew, { variant: "text", className: `ab-${elementType}__Export__new`, tone: "neutral", children: null, onClick: () => dispatch(PopupRedux.PopupShowScreen(ModuleConstants.ExportModuleId, props.moduleInfo.Popup, {
|
|
51
51
|
action: 'New',
|
|
52
52
|
source: 'Toolbar',
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
})), tooltip: "Create New Report", accessLevel: props.accessLevel }),
|
|
54
|
+
React.createElement(ButtonDelete_1.ButtonDelete, { tooltip: "Delete Report", className: `ab-${elementType}__Export__delete`, disabled: currentReport == null, ConfirmAction: ExportRedux.ReportDelete(currentReport), ConfirmationMsg: deleteMessage, ConfirmationTitle: 'Delete Report', accessLevel: accessLevel }),
|
|
55
|
+
props.api.entitlementApi.isModuleFullEntitlement('Schedule') && (React.createElement(ButtonSchedule_1.ButtonSchedule, { className: `ab-${elementType}__Export__schedule`, onClick: () => {
|
|
56
|
+
const reportSchedule = ObjectFactory_1.default.CreateReportSchedule(currentReportName, currentFormat);
|
|
57
|
+
dispatch(PopupRedux.PopupShowScreen(ModuleConstants.ScheduleModuleId, 'SchedulePopup', {
|
|
58
|
+
action: 'New',
|
|
59
|
+
source: 'Toolbar',
|
|
60
|
+
value: reportSchedule,
|
|
61
|
+
}));
|
|
62
|
+
}, tooltip: "Schedule", disabled: currentReport == null, accessLevel: props.accessLevel }))))));
|
|
56
63
|
};
|
|
57
64
|
exports.ExportViewPanel = ExportViewPanel;
|
|
@@ -7,16 +7,11 @@ const FormLayout_1 = tslib_1.__importStar(require("../../../components/FormLayou
|
|
|
7
7
|
const CheckBox_1 = require("../../../components/CheckBox");
|
|
8
8
|
const OnePageAdaptableWizard_1 = require("../../Wizard/OnePageAdaptableWizard");
|
|
9
9
|
const Tag_1 = require("../../../components/Tag");
|
|
10
|
-
const ToggleGroup_1 = require("../../../components/Toggle/ToggleGroup");
|
|
11
|
-
const Toggle_1 = require("../../../components/Toggle/Toggle");
|
|
12
10
|
const Radio_1 = tslib_1.__importStar(require("../../../components/Radio"));
|
|
13
11
|
const Flex_1 = require("../../../components/Flex");
|
|
14
12
|
const Card_1 = require("../../../components/Card");
|
|
15
13
|
const renderFormatColumnSettingsSummary = (data) => {
|
|
16
14
|
return (React.createElement(Flex_1.Box, { className: "twa:p-2" },
|
|
17
|
-
React.createElement(Flex_1.Box, null,
|
|
18
|
-
"Cell alignment ",
|
|
19
|
-
React.createElement(Tag_1.Tag, null, data.CellAlignment ?? 'default')),
|
|
20
15
|
React.createElement(Flex_1.Box, { className: "twa:mt-3" },
|
|
21
16
|
"Data Rows ",
|
|
22
17
|
React.createElement(Tag_1.Tag, null, data.RowScope?.ExcludeDataRows ? 'no' : 'yes')),
|
|
@@ -40,13 +35,6 @@ const renderFormatColumnSettingsSummary = (data) => {
|
|
|
40
35
|
exports.renderFormatColumnSettingsSummary = renderFormatColumnSettingsSummary;
|
|
41
36
|
const FormatColumnSettingsWizardSection = (props) => {
|
|
42
37
|
const { data } = (0, OnePageAdaptableWizard_1.useOnePageAdaptableWizardContext)();
|
|
43
|
-
const onCellAlignmentSelectChanged = (CellAlignment) => {
|
|
44
|
-
const newData = { ...data, CellAlignment };
|
|
45
|
-
if (CellAlignment === null) {
|
|
46
|
-
delete newData.CellAlignment;
|
|
47
|
-
}
|
|
48
|
-
props.onChange(newData);
|
|
49
|
-
};
|
|
50
38
|
const onExcludeDataRowsChanged = (ExcludeDataRows) => {
|
|
51
39
|
props.onChange({
|
|
52
40
|
...data,
|
|
@@ -88,17 +76,6 @@ const FormatColumnSettingsWizardSection = (props) => {
|
|
|
88
76
|
React.createElement(Card_1.Card.Body, null,
|
|
89
77
|
React.createElement(Flex_1.Flex, { flexDirection: "row" },
|
|
90
78
|
React.createElement(FormLayout_1.default, null,
|
|
91
|
-
React.createElement(FormLayout_1.FormRow, { label: "Cell Alignment" },
|
|
92
|
-
React.createElement(ToggleGroup_1.ToggleGroup, null,
|
|
93
|
-
React.createElement(Toggle_1.Toggle, { icon: "align-left", pressed: data.CellAlignment === 'Left', onPressedChange: (pressed) => pressed
|
|
94
|
-
? onCellAlignmentSelectChanged('Left')
|
|
95
|
-
: onCellAlignmentSelectChanged(null) }),
|
|
96
|
-
React.createElement(Toggle_1.Toggle, { icon: "align-center", pressed: data.CellAlignment === 'Center', onPressedChange: (pressed) => pressed
|
|
97
|
-
? onCellAlignmentSelectChanged('Center')
|
|
98
|
-
: onCellAlignmentSelectChanged(null) }),
|
|
99
|
-
React.createElement(Toggle_1.Toggle, { icon: "align-right", pressed: data.CellAlignment === 'Right', onPressedChange: (pressed) => pressed
|
|
100
|
-
? onCellAlignmentSelectChanged('Right')
|
|
101
|
-
: onCellAlignmentSelectChanged(null) }))),
|
|
102
79
|
data.Target === 'cell' && (React.createElement(React.Fragment, null,
|
|
103
80
|
React.createElement(FormLayout_1.FormRow, { label: "Exclude Data Rows:" },
|
|
104
81
|
React.createElement(Flex_1.Flex, { alignItems: "center", className: "twa:ml-2" },
|
|
@@ -13,7 +13,6 @@ const isFormatColumnStyleValid = (data, api) => {
|
|
|
13
13
|
if (data.Style &&
|
|
14
14
|
UIHelper_1.default.IsEmptyStyle(data.Style) &&
|
|
15
15
|
data.DisplayFormat === undefined &&
|
|
16
|
-
data.CellAlignment === undefined &&
|
|
17
16
|
!api.columnScopeApi.isSingleBooleanColumnScope(data.Scope)) {
|
|
18
17
|
return 'No format applied';
|
|
19
18
|
}
|
|
@@ -25,7 +24,8 @@ const toStyle = (data) => {
|
|
|
25
24
|
...(0, StyleHelper_1.convertAdaptableStyleToCSS)(data.Style ?? {}),
|
|
26
25
|
borderWidth: data.Style?.BorderColor ? 2 : 0,
|
|
27
26
|
borderStyle: 'solid',
|
|
28
|
-
|
|
27
|
+
// ToDO abcdefg
|
|
28
|
+
textAlign: data.Style?.Alignment ? data.Style.Alignment.toLowerCase() : undefined,
|
|
29
29
|
};
|
|
30
30
|
};
|
|
31
31
|
const renderFormatColumnStyleWizardSummary = (data) => {
|
|
@@ -3,84 +3,75 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.GridInfoPopup = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
|
6
|
+
const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/ArrayExtensions"));
|
|
7
|
+
const EnvVars_1 = require("../../../EnvVars");
|
|
8
|
+
const AgGridModulesAdapter_1 = require("../../../agGrid/AgGridModulesAdapter");
|
|
9
|
+
const InfiniteTable_1 = require("../../../components/InfiniteTable");
|
|
6
10
|
const Panel_1 = tslib_1.__importDefault(require("../../../components/Panel"));
|
|
7
11
|
const Tabs_1 = require("../../../components/Tabs");
|
|
8
|
-
const ArrayExtensions_1 = tslib_1.__importDefault(require("../../../Utilities/Extensions/ArrayExtensions"));
|
|
9
|
-
const Helper_1 = tslib_1.__importDefault(require("../../../Utilities/Helpers/Helper"));
|
|
10
|
-
const AdaptablePopover_1 = require("../../AdaptablePopover");
|
|
11
|
-
const AdaptableObjectCollection_1 = require("../../Components/AdaptableObjectCollection");
|
|
12
|
-
const AdaptableObjectRow_1 = require("../../Components/AdaptableObjectRow");
|
|
13
12
|
const PopupPanel_1 = require("../../Components/Popups/AdaptablePopup/PopupPanel");
|
|
14
13
|
const AdaptableObjectsSummary_1 = require("./AdaptableObjectsSummary");
|
|
15
|
-
const EnvVars_1 = require("../../../EnvVars");
|
|
16
|
-
const AgGridModulesAdapter_1 = require("../../../agGrid/AgGridModulesAdapter");
|
|
17
14
|
const clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
18
15
|
const adaptableVersion = EnvVars_1.ADAPTABLE_VERSION;
|
|
19
16
|
const agGridVersion = AgGridModulesAdapter_1.AG_GRID_VERSION;
|
|
20
17
|
const GridInfoPopup = (props) => {
|
|
21
18
|
const api = props.api;
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
returnRows.push(createReadOnlyColItem(colItems, 'Calculated Columns', ArrayExtensions_1.default.IsNotNullOrEmpty(calcColumns)
|
|
19
|
+
const keyValuePairs = [];
|
|
20
|
+
const calcColumns = api.calculatedColumnApi
|
|
21
|
+
.getCalculatedColumns()
|
|
22
|
+
.map((c) => c.ColumnId);
|
|
23
|
+
const actionColumns = api.actionColumnApi
|
|
24
|
+
.getActionColumns()
|
|
25
|
+
.map((ac) => ac.columnId);
|
|
26
|
+
const freeTextColumns = api.freeTextColumnApi
|
|
27
|
+
.getFreeTextColumns()
|
|
28
|
+
.map((c) => c.ColumnId);
|
|
29
|
+
const columnFilterDescription = api.filterApi.columnFilterApi.columnFiltersToString(api.filterApi.columnFilterApi.getColumnFilters());
|
|
30
|
+
const gridFilterExpression = api.filterApi.gridFilterApi.getCurrentGridFilterExpression();
|
|
31
|
+
const sorts = ArrayExtensions_1.default.IsNotNullOrEmpty(props.api.gridApi.getColumnSorts())
|
|
32
|
+
? api.gridApi.getColumnSorts().map((gs) => {
|
|
33
|
+
return api.columnApi.getFriendlyNameForColumnId(gs.ColumnId) + ': ' + gs.SortOrder;
|
|
34
|
+
})
|
|
35
|
+
: null;
|
|
36
|
+
const selectedRowInfo = api.gridApi.getSelectedRowInfo();
|
|
37
|
+
if (api.optionsApi.getUserInterfaceOptions()?.showAdapTableVersion) {
|
|
38
|
+
keyValuePairs.push({ Key: 'AdapTable Version', Value: adaptableVersion });
|
|
39
|
+
}
|
|
40
|
+
if (api.optionsApi.getUserInterfaceOptions()?.showAgGridVersion) {
|
|
41
|
+
keyValuePairs.push({ Key: 'AG Grid Version', Value: agGridVersion });
|
|
42
|
+
}
|
|
43
|
+
keyValuePairs.push({ Key: 'Sorted Columns', Value: ArrayExtensions_1.default.IsNotNullOrEmpty(sorts) ? sorts.join('; ') : 'None' });
|
|
44
|
+
keyValuePairs.push({ Key: 'Column Filters', Value: columnFilterDescription });
|
|
45
|
+
keyValuePairs.push({ Key: 'Grid Filter', Value: gridFilterExpression });
|
|
46
|
+
keyValuePairs.push({ Key: 'All Rows', Value: props.api.gridApi.getRowCount() });
|
|
47
|
+
keyValuePairs.push({ Key: 'Visible Rows', Value: props.api.gridApi.getVisibleRowCount() });
|
|
48
|
+
keyValuePairs.push({ Key: 'Selected Rows', Value: selectedRowInfo?.gridRows.length });
|
|
49
|
+
keyValuePairs.push({ Key: 'Visible Selected Rows', Value: selectedRowInfo?.gridRows.filter((gr) => gr.rowNode?.displayed == true).length });
|
|
50
|
+
keyValuePairs.push({ Key: 'All Columns', Value: props.api.gridApi.getColumnCount() });
|
|
51
|
+
keyValuePairs.push({ Key: 'Visible Columns', Value: props.api.gridApi.getVisibleColumnCount() });
|
|
52
|
+
keyValuePairs.push({ Key: 'Calculated Columns', Value: ArrayExtensions_1.default.IsNotNullOrEmpty(calcColumns)
|
|
57
53
|
? ArrayExtensions_1.default.createCommaSeparatedString(calcColumns)
|
|
58
|
-
: 'None')
|
|
59
|
-
|
|
54
|
+
: 'None' });
|
|
55
|
+
keyValuePairs.push({ Key: 'Free Text Columns', Value: ArrayExtensions_1.default.IsNotNullOrEmpty(freeTextColumns)
|
|
60
56
|
? ArrayExtensions_1.default.createCommaSeparatedString(freeTextColumns)
|
|
61
|
-
: 'None')
|
|
62
|
-
|
|
57
|
+
: 'None' });
|
|
58
|
+
keyValuePairs.push({ Key: 'CalcuActionlated Columns', Value: ArrayExtensions_1.default.IsNotNullOrEmpty(actionColumns)
|
|
63
59
|
? ArrayExtensions_1.default.createCommaSeparatedString(actionColumns)
|
|
64
|
-
: 'None')
|
|
65
|
-
|
|
60
|
+
: 'None' });
|
|
61
|
+
const domProps = {
|
|
62
|
+
className: 'twa:flex-1 twa:min-h-0 twa:w-full',
|
|
66
63
|
};
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
64
|
+
keyValuePairs.map((keyValuePair) => {
|
|
65
|
+
return {
|
|
66
|
+
Key: keyValuePair.Key,
|
|
67
|
+
Value: keyValuePair.Value === 'Ignore' ? null : keyValuePair.Value,
|
|
68
|
+
};
|
|
69
|
+
})
|
|
70
|
+
.filter((x) => x.Value);
|
|
71
|
+
const columnsMap = {
|
|
72
|
+
Key: { field: 'Key', header: 'Property', defaultFlex: 1 },
|
|
73
|
+
Value: { field: 'Value', header: 'Value', defaultFlex: 3 },
|
|
76
74
|
};
|
|
77
|
-
let propValueColItems = [
|
|
78
|
-
{ Content: 'Property', Size: 5 },
|
|
79
|
-
{ Content: 'Value', Size: 7 },
|
|
80
|
-
];
|
|
81
|
-
let gridSummaries = CreateGridSummaries(propValueColItems).map((x, index) => {
|
|
82
|
-
return React.createElement(AdaptableObjectRow_1.AdaptableObjectRow, { key: index, colItems: x });
|
|
83
|
-
});
|
|
84
75
|
const baseClassName = 'ab-GridInfo';
|
|
85
76
|
return (React.createElement(PopupPanel_1.PopupPanel, { className: (0, clsx_1.default)(baseClassName), headerText: 'Grid Info', glyphicon: 'info', scrollable: false },
|
|
86
77
|
React.createElement(Panel_1.default, { className: "twa:flex-1 twa:border-none twa:shadow-md twa:overflow-hidden" },
|
|
@@ -89,7 +80,8 @@ const GridInfoPopup = (props) => {
|
|
|
89
80
|
React.createElement(Tabs_1.Tabs.Tab, null, "Grid Summary"),
|
|
90
81
|
React.createElement(Tabs_1.Tabs.Tab, null, "Grid State"),
|
|
91
82
|
React.createElement(Tabs_1.Tabs.Content, null,
|
|
92
|
-
React.createElement(
|
|
83
|
+
React.createElement(InfiniteTable_1.DataSource, { data: keyValuePairs, primaryKey: "Key" },
|
|
84
|
+
React.createElement(InfiniteTable_1.InfiniteTableGrid, { domProps: domProps, columns: columnsMap }))),
|
|
93
85
|
React.createElement(Tabs_1.Tabs.Content, null,
|
|
94
86
|
React.createElement(AdaptableObjectsSummary_1.AdaptableObjectsSummary, { className: "twa:min-h-0 twa:overflow-auto twa:p-2" })))))));
|
|
95
87
|
};
|
|
@@ -39,7 +39,10 @@ const QuickSearchPopupComponent = (props) => {
|
|
|
39
39
|
React.createElement(Card_1.Card, null,
|
|
40
40
|
React.createElement(Card_1.Card.Title, null, "Behaviour"),
|
|
41
41
|
React.createElement(Card_1.Card.Body, { className: "twa:p-1", gap: 2 },
|
|
42
|
-
React.createElement(HelpBlock_1.default, { className: "twa:text-2 twa:w-fit" },
|
|
42
|
+
React.createElement(HelpBlock_1.default, { className: "twa:text-2 twa:w-fit" },
|
|
43
|
+
"Filter Grid when searching to only show rows with matching cells; ",
|
|
44
|
+
React.createElement("b", null, "use with care"),
|
|
45
|
+
" as can cause performance issues"),
|
|
43
46
|
React.createElement(CheckBox_1.CheckBox, { "data-name": "filter-quick-search-results", value: "existing", checked: state.RunQueryAfterQuickSearch, disabled: StringExtensions_1.default.IsNotNullOrEmpty(searchText), onChange: onQuickSearchBehaviourChange }, "Filter using Quick Search Results"))),
|
|
44
47
|
React.createElement(Card_1.Card.Title, { border: false, className: "twa:pt-3" }, "Cell Matching Style"),
|
|
45
48
|
React.createElement(Card_1.Card, null,
|
|
@@ -24,13 +24,13 @@ const ScheduleSettingsReminder = (props) => {
|
|
|
24
24
|
const handleHeaderChange = (event) => {
|
|
25
25
|
props.onChange({
|
|
26
26
|
...props.reminderSchedule,
|
|
27
|
-
Header: event.target
|
|
27
|
+
Header: event.target.value,
|
|
28
28
|
});
|
|
29
29
|
};
|
|
30
30
|
const handleMessageChange = (event) => {
|
|
31
31
|
props.onChange({
|
|
32
32
|
...props.reminderSchedule,
|
|
33
|
-
Message: event.target
|
|
33
|
+
Message: event.target.value,
|
|
34
34
|
});
|
|
35
35
|
};
|
|
36
36
|
const handleDisplayNotificationChange = (checked) => {
|
package/src/View/UIHelper.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export declare function getMessageTypeByStatusColour(statusColour: StatusColour)
|
|
|
38
38
|
export declare function getButtonToneByMessageType(messageType: AdaptableMessageType): 'success' | 'error' | 'neutral' | 'none' | 'warning' | 'info' | 'accent';
|
|
39
39
|
export declare function getGlyphByMessageType(messageType: AdaptableMessageType): AdaptableSystemIconName;
|
|
40
40
|
export declare function getColorByMessageType(messageType: AdaptableMessageType): string;
|
|
41
|
+
export declare function getCSSColorByMessageType(messageType: AdaptableMessageType): string;
|
|
41
42
|
export declare function getStyleForStatusColour(statusColour: StatusColour): CSSProperties;
|
|
42
43
|
export declare function getStyleForMessageType(messageType: AdaptableMessageType): CSSProperties;
|
|
43
44
|
export declare function getGlyphForStatusColour(statusColour: StatusColour): string;
|
|
@@ -75,6 +76,7 @@ export declare const UIHelper: {
|
|
|
75
76
|
getGlyphForMessageType: typeof getGlyphForMessageType;
|
|
76
77
|
getStyleForMessageType: typeof getStyleForMessageType;
|
|
77
78
|
getMessageTypeFromAdaptableAlerts: typeof getMessageTypeFromAdaptableAlerts;
|
|
79
|
+
getCSSColorByMessageType: typeof getCSSColorByMessageType;
|
|
78
80
|
getButtonColourForAdaptableAlerts: typeof getButtonColourForAdaptableAlerts;
|
|
79
81
|
getButtonTextColourForArrayandMessageType: typeof getButtonTextColourForArrayandMessageType;
|
|
80
82
|
getButtonTextColourForMessageType: typeof getButtonTextColourForMessageType;
|
package/src/View/UIHelper.js
CHANGED
|
@@ -13,6 +13,7 @@ exports.getMessageTypeByStatusColour = getMessageTypeByStatusColour;
|
|
|
13
13
|
exports.getButtonToneByMessageType = getButtonToneByMessageType;
|
|
14
14
|
exports.getGlyphByMessageType = getGlyphByMessageType;
|
|
15
15
|
exports.getColorByMessageType = getColorByMessageType;
|
|
16
|
+
exports.getCSSColorByMessageType = getCSSColorByMessageType;
|
|
16
17
|
exports.getStyleForStatusColour = getStyleForStatusColour;
|
|
17
18
|
exports.getStyleForMessageType = getStyleForMessageType;
|
|
18
19
|
exports.getGlyphForStatusColour = getGlyphForStatusColour;
|
|
@@ -234,6 +235,20 @@ function getColorByMessageType(messageType) {
|
|
|
234
235
|
return 'var(--ab-color-info)';
|
|
235
236
|
}
|
|
236
237
|
}
|
|
238
|
+
function getCSSColorByMessageType(messageType) {
|
|
239
|
+
switch (messageType) {
|
|
240
|
+
case 'Error':
|
|
241
|
+
return 'error';
|
|
242
|
+
case 'Warning':
|
|
243
|
+
return 'warn';
|
|
244
|
+
case 'Success':
|
|
245
|
+
return 'success';
|
|
246
|
+
case 'Info':
|
|
247
|
+
return 'info';
|
|
248
|
+
default:
|
|
249
|
+
return '';
|
|
250
|
+
}
|
|
251
|
+
}
|
|
237
252
|
function getStyleForStatusColour(statusColour) {
|
|
238
253
|
let result;
|
|
239
254
|
switch (statusColour) {
|
|
@@ -481,6 +496,7 @@ exports.UIHelper = {
|
|
|
481
496
|
getGlyphForMessageType,
|
|
482
497
|
getStyleForMessageType,
|
|
483
498
|
getMessageTypeFromAdaptableAlerts,
|
|
499
|
+
getCSSColorByMessageType,
|
|
484
500
|
getButtonColourForAdaptableAlerts,
|
|
485
501
|
getButtonTextColourForArrayandMessageType,
|
|
486
502
|
getButtonTextColourForMessageType,
|
|
@@ -257,10 +257,10 @@ export declare class AdaptableAgGrid implements IAdaptable {
|
|
|
257
257
|
added: IRowNode[];
|
|
258
258
|
updated: IRowNode[];
|
|
259
259
|
}>;
|
|
260
|
-
|
|
260
|
+
manageGridRows(dataRows: {
|
|
261
261
|
add?: any[];
|
|
262
262
|
update?: any[];
|
|
263
|
-
|
|
263
|
+
delete?: any[];
|
|
264
264
|
}, config?: DataUpdateConfig): Promise<{
|
|
265
265
|
addedRows: IRowNode[];
|
|
266
266
|
updatedRows: IRowNode[];
|
|
@@ -2471,18 +2471,18 @@ You need to define at least one Layout!`);
|
|
|
2471
2471
|
});
|
|
2472
2472
|
}
|
|
2473
2473
|
}
|
|
2474
|
-
async
|
|
2474
|
+
async manageGridRows(dataRows, config = {}) {
|
|
2475
2475
|
const result = {
|
|
2476
2476
|
addedRows: [],
|
|
2477
2477
|
updatedRows: [],
|
|
2478
2478
|
removedRows: [],
|
|
2479
2479
|
};
|
|
2480
|
-
if (!
|
|
2480
|
+
if (!dataRows) {
|
|
2481
2481
|
return result;
|
|
2482
2482
|
}
|
|
2483
|
-
const addDataRows =
|
|
2484
|
-
const updateDataRows =
|
|
2485
|
-
const removeDataRows =
|
|
2483
|
+
const addDataRows = dataRows.add;
|
|
2484
|
+
const updateDataRows = dataRows.update;
|
|
2485
|
+
const removeDataRows = dataRows.delete;
|
|
2486
2486
|
if (this.hasAutogeneratedPrimaryKey) {
|
|
2487
2487
|
this.addSyntheticPrimaryKeyIfMissing(addDataRows);
|
|
2488
2488
|
}
|
|
@@ -307,12 +307,10 @@ class AgGridColumnAdapter {
|
|
|
307
307
|
// see #header_text_align
|
|
308
308
|
const formatColumnWithTextAlignment = this.getRelevantFormatColumnHeaderStyles(abColumn)
|
|
309
309
|
// we take the first one only, even if multiple are defined
|
|
310
|
-
.find((fc) => fc.
|
|
310
|
+
.find((fc) => fc.Style?.Alignment != undefined);
|
|
311
311
|
if (formatColumnWithTextAlignment) {
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
`ab-header__align-${formatColumnWithTextAlignment.CellAlignment.toLowerCase()}`,
|
|
315
|
-
];
|
|
312
|
+
const alignment = formatColumnWithTextAlignment.Style.Alignment.toLowerCase();
|
|
313
|
+
baseHeaderClass = [...baseHeaderClass, `ab-header__align-${alignment}`];
|
|
316
314
|
}
|
|
317
315
|
const formatColumns = this.adaptableApi.formatColumnApi.internalApi.getFormatColumnWithStyleClassNameForColumn(abColumn, {
|
|
318
316
|
target,
|
|
@@ -1268,19 +1266,6 @@ class AgGridColumnAdapter {
|
|
|
1268
1266
|
const formatColumnStyle = formatColumn.Style
|
|
1269
1267
|
? (0, StyleHelper_1.convertAdaptableStyleToCSS)(formatColumn.Style)
|
|
1270
1268
|
: {};
|
|
1271
|
-
if (formatColumn.CellAlignment) {
|
|
1272
|
-
switch (formatColumn.CellAlignment) {
|
|
1273
|
-
case 'Left':
|
|
1274
|
-
style.textAlign = 'left';
|
|
1275
|
-
break;
|
|
1276
|
-
case 'Right':
|
|
1277
|
-
style.textAlign = 'right';
|
|
1278
|
-
break;
|
|
1279
|
-
case 'Center':
|
|
1280
|
-
style.textAlign = 'center';
|
|
1281
|
-
break;
|
|
1282
|
-
}
|
|
1283
|
-
}
|
|
1284
1269
|
return { ...style, ...formatColumnStyle };
|
|
1285
1270
|
}, {});
|
|
1286
1271
|
}
|
|
@@ -12,5 +12,5 @@ function DashboardToolbar(props) {
|
|
|
12
12
|
React.createElement(Flex_1.Flex, { className: "ab-Dashboard__toolbar-title twa:items-center twa:justify-center twa:px-2 twa:pb-1 twa:opacity-70", flexDirection: "row" },
|
|
13
13
|
React.createElement("span", { className: "twa:text-2" }, props.title),
|
|
14
14
|
props.showConfigure && (React.createElement(SimpleButton_1.default, { "aria-label": `Configure ${props.title}`, icon: "spanner", variant: "text", tone: "none", "data-name": "configure", iconSize: 16, className: "twa:ml-1", tooltip: props.tooltip || `Configure ${props.title}`, onClick: () => props.onConfigure() })),
|
|
15
|
-
props.showClose && (React.createElement(SimpleButton_1.default, { "aria-label": `Close ${props.title}`, style: { alignSelf: 'flex-end' }, disabled: props.accessLevel == 'ReadOnly', "data-name": "close", icon: "close", variant: "text", tone: "none", iconSize: 16, className: "twa:ml-1", tooltip: props.tooltip || `Close ${props.title} Toolbar`, onClick: () => props.onClose() })))));
|
|
15
|
+
props.showClose && (React.createElement(SimpleButton_1.default, { "aria-label": `Close ${props.title}`, style: { alignSelf: 'flex-end' }, disabled: props.accessLevel == 'ReadOnly', "data-name": "close", icon: "close", variant: "text", tone: "none", iconSize: 16, className: "twa:ml-1", tooltip: props.tooltip || `Close ${props.title} Toolbar`, onClick: () => props.onClose?.() })))));
|
|
16
16
|
}
|
|
@@ -6,7 +6,6 @@ const react_1 = require("react");
|
|
|
6
6
|
const BaseEditorInput_1 = require("./BaseEditorInput");
|
|
7
7
|
const editorButtonsSearch_1 = require("./editorButtonsSearch");
|
|
8
8
|
const EditorContext_1 = require("./EditorContext");
|
|
9
|
-
const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
|
|
10
9
|
const editorButtonsAggregatedScalar_1 = require("./editorButtonsAggregatedScalar");
|
|
11
10
|
const aggregatedScalarExpressionFunctions_1 = require("../../Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions");
|
|
12
11
|
const editorButtonsCumulativeAggregatedScalar_1 = require("./editorButtonsCumulativeAggregatedScalar");
|
|
@@ -52,8 +51,25 @@ function EditorInput(props) {
|
|
|
52
51
|
};
|
|
53
52
|
}, [props.type]);
|
|
54
53
|
const { setSelectedFunction } = (0, EditorContext_1.useExpressionEditor)();
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
let queryName;
|
|
55
|
+
switch (props.type) {
|
|
56
|
+
case 'boolean':
|
|
57
|
+
queryName = 'Create an Expression that returns true / false';
|
|
58
|
+
break;
|
|
59
|
+
case 'scalar':
|
|
60
|
+
queryName = "Create an Expression that returns a single value of any type";
|
|
61
|
+
break;
|
|
62
|
+
case 'aggregatedScalar':
|
|
63
|
+
queryName = "Create an Expression that evaluates multiple rows and returns a value of any type";
|
|
64
|
+
break;
|
|
65
|
+
case 'cumulativeAggregatedScalar':
|
|
66
|
+
queryName = "Create a Cumulative Expression";
|
|
67
|
+
break;
|
|
68
|
+
case 'quantileAggregatedScalar':
|
|
69
|
+
queryName = "Create a Quantile Expression";
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
return (React.createElement(BaseEditorInput_1.BaseEditorInput, { type: 'main', value: props.value, placeholder: queryName, onChange: props.onChange, onSelectedFunctionChange: setSelectedFunction, expressionFunctions: expressionFunctions, editorButtons: props.type === 'aggregatedScalar'
|
|
57
73
|
? editorButtonsAggregatedScalar_1.editorButtonsAggregatedScalar
|
|
58
74
|
: props.type === 'cumulativeAggregatedScalar'
|
|
59
75
|
? editorButtonsCumulativeAggregatedScalar_1.editorButtonsCumulativeAggregatedScalar
|
|
@@ -254,7 +254,7 @@ function TreeDropdown(props) {
|
|
|
254
254
|
} }, children));
|
|
255
255
|
} },
|
|
256
256
|
React.createElement(FieldWrap_1.default, { style: props.fieldStyle, className: "twa:w-full" },
|
|
257
|
-
React.createElement(Input_1.default, { type: "text", readOnly: true, "data-name": "Select Values", placeholder: props.placeholder ?? 'Select a value', className: `twa:w-full ${props.clearable ? 'twa:pr-0' : ''}`, value: props.toDisplayValue ? props.toDisplayValue(value) : toDisplayValueDefault(value), onFocus: () => {
|
|
257
|
+
React.createElement(Input_1.default, { type: "text", readOnly: true, "data-name": "Select Values", "aria-expanded": visible, placeholder: props.placeholder ?? 'Select a value', className: `twa:w-full ${props.clearable ? 'twa:pr-0' : ''}`, value: props.toDisplayValue ? props.toDisplayValue(value) : toDisplayValueDefault(value), onFocus: () => {
|
|
258
258
|
if (!visible) {
|
|
259
259
|
setVisible(true);
|
|
260
260
|
}
|
package/src/env.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.default = {
|
|
4
4
|
NEXT_PUBLIC_INFINITE_TABLE_LICENSE_KEY: "StartDate=2021-06-29|EndDate=2030-01-01|Owner=Adaptable|Type=distribution|TS=1624971462479|C=137829811,1004007071,2756196225,1839832928,3994409405,636616862" || '',
|
|
5
|
-
PUBLISH_TIMESTAMP:
|
|
6
|
-
VERSION: "22.0.0-canary.
|
|
5
|
+
PUBLISH_TIMESTAMP: 1770107080647 || Date.now(),
|
|
6
|
+
VERSION: "22.0.0-canary.3" || '--current-version--',
|
|
7
7
|
};
|