@adaptabletools/adaptable 16.0.0-canary.1 → 16.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/base.css +31 -31
- package/base.css.map +1 -1
- package/bundle.cjs.js +155 -155
- package/index.css +39 -39
- package/index.css.map +1 -1
- package/package.json +1 -1
- package/publishTimestamp.d.ts +1 -1
- package/publishTimestamp.js +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +12 -1
- package/src/AdaptableOptions/ActionRowOptions.d.ts +8 -5
- package/src/AdaptableOptions/AdaptableOptions.d.ts +7 -2
- package/src/AdaptableOptions/DataChangeHistoryOptions.d.ts +6 -2
- package/src/AdaptableOptions/FilterOptions.d.ts +1 -0
- package/src/AdaptableOptions/FormatColumnOptions.d.ts +51 -0
- package/src/AdaptableOptions/GroupingOptions.d.ts +0 -13
- package/src/AdaptableOptions/{SearchOptions.d.ts → QuickSearchOptions.d.ts} +3 -3
- package/src/AdaptableOptions/QuickSearchOptions.js +2 -0
- package/src/AdaptableOptions/TeamSharingOptions.d.ts +5 -0
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +8 -41
- package/src/Api/ColumnApi.d.ts +18 -7
- package/src/Api/DataChangeHistoryApi.d.ts +6 -0
- package/src/Api/EventApi.d.ts +19 -6
- package/src/Api/Events/ChexboxColumnClicked.d.ts +1 -0
- package/src/Api/Events/ScheduleTriggered.d.ts +11 -0
- package/src/Api/Events/ScheduleTriggered.js +2 -0
- package/src/Api/Implementation/ActionRowApiImpl.js +7 -5
- package/src/Api/Implementation/ApiBase.d.ts +3 -2
- package/src/Api/Implementation/ApiBase.js +5 -2
- package/src/Api/Implementation/ChartingApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ChartingApiImpl.js +4 -0
- package/src/Api/Implementation/ColumnApiImpl.d.ts +4 -1
- package/src/Api/Implementation/ColumnApiImpl.js +22 -3
- package/src/Api/Implementation/DataChangeHistoryApiImpl.d.ts +1 -0
- package/src/Api/Implementation/DataChangeHistoryApiImpl.js +3 -0
- package/src/Api/Implementation/OptionsApiImpl.d.ts +3 -2
- package/src/Api/Implementation/OptionsApiImpl.js +5 -2
- package/src/Api/Implementation/PredicateApiImpl.d.ts +5 -5
- package/src/Api/Implementation/PredicateApiImpl.js +8 -8
- package/src/Api/Implementation/ScheduleApiImpl.d.ts +4 -0
- package/src/Api/Implementation/ScheduleApiImpl.js +5 -0
- package/src/Api/Implementation/StyledColumnApiImpl.d.ts +0 -3
- package/src/Api/Implementation/StyledColumnApiImpl.js +0 -26
- package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +5 -4
- package/src/Api/Implementation/UserInterfaceApiImpl.js +5 -0
- package/src/Api/Internal/AdaptableInternalApi.js +2 -2
- package/src/Api/Internal/AlertInternalApi.js +7 -2
- package/src/Api/Internal/FilterInternalApi.js +8 -4
- package/src/Api/Internal/FormatColumnInternalApi.js +12 -14
- package/src/Api/Internal/ScheduleInternalApi.d.ts +8 -0
- package/src/Api/Internal/ScheduleInternalApi.js +20 -0
- package/src/Api/Internal/StyledColumnInternalApi.d.ts +5 -2
- package/src/Api/Internal/StyledColumnInternalApi.js +29 -2
- package/src/Api/Internal/UserInterfaceInternalApi.d.ts +5 -0
- package/src/Api/Internal/UserInterfaceInternalApi.js +18 -0
- package/src/Api/OptionsApi.d.ts +7 -3
- package/src/Api/PredicateApi.d.ts +5 -5
- package/src/Api/StyledColumnApi.d.ts +0 -14
- package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +1 -1
- package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +7 -7
- package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +8 -15
- package/src/PredefinedConfig/Common/AdaptablePredicate.js +65 -41
- package/src/PredefinedConfig/Common/Types.d.ts +1 -1
- package/src/PredefinedConfig/StyledColumnState.d.ts +3 -2
- package/src/PredefinedConfig/TeamSharingState.d.ts +1 -1
- package/src/Redux/ActionsReducers/SystemRedux.d.ts +5 -0
- package/src/Redux/ActionsReducers/SystemRedux.js +17 -3
- package/src/Redux/Store/AdaptableStore.js +2 -3
- package/src/Strategy/AdaptableModuleBase.d.ts +6 -6
- package/src/Strategy/FlashingCellModule.js +6 -2
- package/src/Strategy/Interface/IModule.d.ts +2 -2
- package/src/Strategy/ScheduleModule.js +3 -2
- package/src/Strategy/StyledColumnModule.js +24 -15
- package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
- package/src/Utilities/Defaults/DefaultAdaptableOptions.js +7 -3
- package/src/Utilities/Helpers/AdaptableHelper.js +1 -1
- package/src/Utilities/MenuItem.d.ts +4 -4
- package/src/Utilities/Services/MetamodelService.js +5 -1
- package/src/Utilities/Services/ModuleService.js +1 -1
- package/src/Utilities/Services/QueryLanguageService.js +1 -1
- package/src/Utilities/Services/RowEditService.js +1 -1
- package/src/Utilities/Services/TeamSharingService.d.ts +2 -0
- package/src/Utilities/Services/TeamSharingService.js +60 -3
- package/src/Utilities/Services/ValidationService.js +6 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableConfig.d.ts +6 -0
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableConfig.js +2 -0
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.d.ts +1 -1
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +1 -1
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.d.ts +6 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +32 -23
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.d.ts +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizardColumnsStep.js +5 -5
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.d.ts +1 -1
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.d.ts +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/FinanceForm/FinanceForm.js +11 -11
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.d.ts +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +11 -21
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.d.ts +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +6 -7
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.d.ts +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.d.ts +4 -1
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +3 -4
- package/src/View/AdaptableWizardView/Wizard.d.ts +4 -1
- package/src/View/AdaptableWizardView/Wizard.js +11 -10
- package/src/View/Charting/useChartingElements.js +1 -1
- package/src/View/Components/AdaptableButton/index.d.ts +3 -0
- package/src/View/Components/AdaptableButton/index.js +18 -0
- package/src/View/Components/AdaptableIconComponent/index.d.ts +7 -0
- package/src/View/Components/AdaptableIconComponent/index.js +16 -0
- package/src/View/Components/AdaptableIconComponent/useCustomIcon.d.ts +2 -0
- package/src/View/Components/AdaptableIconComponent/useCustomIcon.js +12 -0
- package/src/{components → View/Components}/Badge/index.d.ts +1 -1
- package/src/{components → View/Components}/Badge/index.js +1 -1
- package/src/View/Components/FilterForm/FilterForm.js +1 -1
- package/src/View/Components/FilterForm/ListBoxMenu.js +2 -2
- package/src/View/Components/FilterForm/QuickFilterForm.js +3 -2
- package/src/View/Components/Panels/PanelWithButton.d.ts +2 -2
- package/src/View/Components/Panels/PanelWithImage.d.ts +3 -3
- package/src/View/Components/Popups/AdaptablePopup/Navigation.js +1 -1
- package/src/View/Components/Popups/AdaptablePopup/TopBar.js +2 -3
- package/src/View/Components/Popups/AdaptablePopupAlert.js +1 -1
- package/src/View/Components/PredicateEditor/PredicateEditor.js +4 -4
- package/src/View/Dashboard/CustomToolbarWrapper.js +2 -2
- package/src/View/Dashboard/Dashboard.js +4 -4
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.d.ts +1 -0
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +13 -7
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +7 -1
- package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +1 -1
- package/src/View/DataChangeHistory/buildActionColumnButton.js +9 -2
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +1 -1
- package/src/View/QuickSearch/QuickSearchPopup.js +3 -3
- package/src/View/QuickSearch/QuickSearchStatusBarContent.js +1 -1
- package/src/View/QuickSearch/QuickSearchViewPanel.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +2 -9
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +0 -1
- package/src/View/UIHelper.d.ts +2 -2
- package/src/agGrid/ActionColumnRenderer.d.ts +0 -2
- package/src/agGrid/ActionColumnRenderer.js +20 -5
- package/src/agGrid/Adaptable.d.ts +5 -2
- package/src/agGrid/Adaptable.js +61 -25
- package/src/agGrid/BadgeRenderer.js +19 -20
- package/src/agGrid/CheckboxRenderer.js +1 -1
- package/src/agGrid/agGridHelper.js +4 -2
- package/src/agGrid/agGridMenuHelper.js +11 -4
- package/src/agGrid/attachAddaptableColumnTypes.d.ts +1 -0
- package/src/agGrid/attachAddaptableColumnTypes.js +5 -4
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +1 -1
- package/src/components/Icon/index.d.ts +11 -0
- package/src/components/{AdaptableIconComponent → Icon}/index.js +10 -10
- package/src/components/IconSelector/IconSelector.js +3 -3
- package/src/components/SimpleButton/index.js +10 -10
- package/src/components/Toggle/Toggle.d.ts +2 -2
- package/src/components/Toggle/Toggle.js +2 -2
- package/src/components/icons/index.d.ts +4 -4
- package/src/components/icons/index.js +6 -6
- package/src/metamodel/adaptable.metamodel.d.ts +125 -57
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/types.d.ts +9 -6
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/src/View/Components/AdaptableViewIcon/index.d.ts +0 -10
- package/src/View/Components/AdaptableViewIcon/index.js +0 -18
- package/src/components/AdaptableIconComponent/index.d.ts +0 -11
- /package/src/AdaptableOptions/{SearchOptions.js → FormatColumnOptions.js} +0 -0
|
@@ -3,7 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.UserInterfaceApiImpl = void 0;
|
|
4
4
|
const ApiBase_1 = require("./ApiBase");
|
|
5
5
|
const ArrayExtensions_1 = require("../../Utilities/Extensions/ArrayExtensions");
|
|
6
|
+
const UserInterfaceInternalApi_1 = require("../Internal/UserInterfaceInternalApi");
|
|
6
7
|
class UserInterfaceApiImpl extends ApiBase_1.ApiBase {
|
|
8
|
+
constructor(adaptable) {
|
|
9
|
+
super(adaptable);
|
|
10
|
+
this.internalApi = new UserInterfaceInternalApi_1.UserInterfaceInternalApi(adaptable);
|
|
11
|
+
}
|
|
7
12
|
getColorPalette() {
|
|
8
13
|
let colorPalette = this.getUserInterfaceOptions().colorPalette;
|
|
9
14
|
// first do the function then get hardcoded items
|
|
@@ -11,7 +11,7 @@ const ApiBase_1 = require("../Implementation/ApiBase");
|
|
|
11
11
|
const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
|
|
12
12
|
const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
|
|
13
13
|
const waitForCondition_1 = require("../../Utilities/waitForCondition");
|
|
14
|
-
const
|
|
14
|
+
const Icon_1 = require("../../components/Icon");
|
|
15
15
|
class AdaptableInternalApi extends ApiBase_1.ApiBase {
|
|
16
16
|
getSystemState() {
|
|
17
17
|
return this.getAdaptableState().System;
|
|
@@ -182,7 +182,7 @@ class AdaptableInternalApi extends ApiBase_1.ApiBase {
|
|
|
182
182
|
if (!buttonIcon) {
|
|
183
183
|
return;
|
|
184
184
|
}
|
|
185
|
-
if ((0,
|
|
185
|
+
if ((0, Icon_1.isAdaptableSystemIcon)(buttonIcon) || (0, Icon_1.isAdaptableCustomIcon)(buttonIcon)) {
|
|
186
186
|
const defaultIconWidth = (_a = defaultWidthHeight === null || defaultWidthHeight === void 0 ? void 0 : defaultWidthHeight.width) !== null && _a !== void 0 ? _a : 'var(--ab-cmp-simple-button__width)';
|
|
187
187
|
const defaultIconHeight = (_b = defaultWidthHeight === null || defaultWidthHeight === void 0 ? void 0 : defaultWidthHeight.height) !== null && _b !== void 0 ? _b : 'var(--ab-cmp-simple-button__height)';
|
|
188
188
|
const buttonIconStyle = Object.assign({}, { width: defaultIconWidth, height: defaultIconHeight }, buttonIcon.style);
|
|
@@ -474,14 +474,19 @@ class AlertInternalApi extends ApiBase_1.ApiBase {
|
|
|
474
474
|
}
|
|
475
475
|
isAlertPredicateTriggered(alert, dataChangedEvent, defaultNoPredicateReturn = false) {
|
|
476
476
|
var _a;
|
|
477
|
-
|
|
477
|
+
const adapatableApi = this.getAdaptableApi();
|
|
478
|
+
const predicateDefHandlerContext = {
|
|
478
479
|
value: dataChangedEvent.newValue,
|
|
479
480
|
oldValue: dataChangedEvent.oldValue,
|
|
480
481
|
// TODO send real display value
|
|
481
482
|
displayValue: null,
|
|
482
483
|
node: dataChangedEvent.rowNode,
|
|
483
484
|
column: dataChangedEvent.column,
|
|
484
|
-
|
|
485
|
+
adaptableApi: adapatableApi,
|
|
486
|
+
userName: adapatableApi.optionsApi.getUserName(),
|
|
487
|
+
adaptableId: adapatableApi.optionsApi.getAdaptableId(),
|
|
488
|
+
};
|
|
489
|
+
return this.getAdaptableApi().predicateApi.handleColumnPredicates((_a = alert.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, defaultNoPredicateReturn);
|
|
485
490
|
}
|
|
486
491
|
isAlertDefinitionForRowChangeEvent(alertDefinition) {
|
|
487
492
|
return (this.isAlertDefinitionForAddedRowChangeEvent(alertDefinition) ||
|
|
@@ -94,22 +94,26 @@ class FilterInternalApi extends ApiBase_1.ApiBase {
|
|
|
94
94
|
if (someInputsAreEmpty) {
|
|
95
95
|
return true;
|
|
96
96
|
}
|
|
97
|
-
const column = this.
|
|
97
|
+
const column = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnFilter.ColumnId);
|
|
98
98
|
if (!column) {
|
|
99
99
|
return true;
|
|
100
100
|
}
|
|
101
|
-
const gridCell = this.
|
|
101
|
+
const gridCell = this.getAdaptableApi().gridApi.getGridCellFromRowNode(node, columnFilter.ColumnId);
|
|
102
102
|
if (!gridCell) {
|
|
103
103
|
return true;
|
|
104
104
|
}
|
|
105
105
|
let value = gridCell.normalisedValue;
|
|
106
|
-
|
|
106
|
+
const predicateDefHandlerContext = {
|
|
107
107
|
value: value,
|
|
108
108
|
oldValue: null,
|
|
109
109
|
displayValue: gridCell.displayValue,
|
|
110
110
|
node,
|
|
111
111
|
column,
|
|
112
|
-
|
|
112
|
+
adaptableApi: this.getAdaptableApi(),
|
|
113
|
+
userName: this.getAdaptableApi().optionsApi.getUserName(),
|
|
114
|
+
adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
|
|
115
|
+
};
|
|
116
|
+
return this.adaptable.api.predicateApi.handlePredicate(columnFilter.Predicate, predicateDefHandlerContext, true);
|
|
113
117
|
}
|
|
114
118
|
/**
|
|
115
119
|
* Checks if the filter action should trigger grid filtering.
|
|
@@ -129,7 +129,7 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
129
129
|
return value;
|
|
130
130
|
}
|
|
131
131
|
const adaptableOptions = this.adaptable.adaptableOptions;
|
|
132
|
-
const customFormattersFromOptions = (_c = (_b = adaptableOptions === null || adaptableOptions === void 0 ? void 0 : adaptableOptions.
|
|
132
|
+
const customFormattersFromOptions = (_c = (_b = adaptableOptions === null || adaptableOptions === void 0 ? void 0 : adaptableOptions.formatColumnOptions) === null || _b === void 0 ? void 0 : _b.customDisplayFormatters) !== null && _c !== void 0 ? _c : [];
|
|
133
133
|
// formatters are applied in the order they are defined in the options
|
|
134
134
|
const customFormatters = customFormattersFromOptions.filter((customFormatterOption) => columnCustomFormatters.includes(customFormatterOption.id));
|
|
135
135
|
const customDisplayFormatterContext = ObjectFactory_1.default.CreateCustomDisplayFormatterContext(value, node, abColumn, this.getAdaptableApi());
|
|
@@ -171,12 +171,17 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
171
171
|
}
|
|
172
172
|
// first run the predicate
|
|
173
173
|
if (formatColumn.Rule.Predicates && ((_b = (_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates) === null || _b === void 0 ? void 0 : _b.length)) {
|
|
174
|
-
|
|
175
|
-
formatColumn,
|
|
176
|
-
column,
|
|
174
|
+
const predicateDefHandlerContext = {
|
|
177
175
|
value: params.value,
|
|
176
|
+
oldValue: null,
|
|
177
|
+
displayValue: params.value,
|
|
178
178
|
node: params.node,
|
|
179
|
-
|
|
179
|
+
column: column,
|
|
180
|
+
adaptableApi: this.getAdaptableApi(),
|
|
181
|
+
userName: this.getAdaptableApi().optionsApi.getUserName(),
|
|
182
|
+
adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
|
|
183
|
+
};
|
|
184
|
+
return this.evaluatePredicate(formatColumn, predicateDefHandlerContext);
|
|
180
185
|
}
|
|
181
186
|
else if (formatColumn.Rule.BooleanExpression) {
|
|
182
187
|
return this.evaluateExpression(formatColumn, params.node);
|
|
@@ -184,16 +189,9 @@ class FormatColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
184
189
|
// nothing has passed then return false
|
|
185
190
|
return false;
|
|
186
191
|
}
|
|
187
|
-
evaluatePredicate(
|
|
192
|
+
evaluatePredicate(formatColumn, predicateDefHandlerContext) {
|
|
188
193
|
var _a;
|
|
189
|
-
|
|
190
|
-
value: value,
|
|
191
|
-
oldValue: null,
|
|
192
|
-
displayValue: value,
|
|
193
|
-
node: node,
|
|
194
|
-
column: column,
|
|
195
|
-
};
|
|
196
|
-
return this.adaptable.api.predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, params, false);
|
|
194
|
+
return this.adaptable.api.predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, false);
|
|
197
195
|
}
|
|
198
196
|
evaluateExpression(formatColumn, node) {
|
|
199
197
|
const isValidExpression = this.adaptable.api.expressionApi.isValidBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, `Invalid format column rule '${formatColumn.Rule.BooleanExpression}'`);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ApiBase } from '../Implementation/ApiBase';
|
|
2
|
+
import { BaseSchedule } from '../../PredefinedConfig/Common/Schedule';
|
|
3
|
+
export declare class ScheduleInternalApi extends ApiBase {
|
|
4
|
+
/**
|
|
5
|
+
* Fires Schedule Triggered event
|
|
6
|
+
*/
|
|
7
|
+
fireScheduleTriggeredEvent(schedule: BaseSchedule): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ScheduleInternalApi = void 0;
|
|
4
|
+
const ApiBase_1 = require("../Implementation/ApiBase");
|
|
5
|
+
class ScheduleInternalApi extends ApiBase_1.ApiBase {
|
|
6
|
+
/**
|
|
7
|
+
* Fires Schedule Triggered event
|
|
8
|
+
*/
|
|
9
|
+
fireScheduleTriggeredEvent(schedule) {
|
|
10
|
+
const adaptableApi = this.getAdaptableApi();
|
|
11
|
+
const scheduleTriggeredInfo = {
|
|
12
|
+
adaptableApi: adaptableApi,
|
|
13
|
+
userName: adaptableApi.optionsApi.getUserName(),
|
|
14
|
+
adaptableId: adaptableApi.optionsApi.getAdaptableId(),
|
|
15
|
+
schedule: schedule,
|
|
16
|
+
};
|
|
17
|
+
adaptableApi.eventApi.emit('ScheduleTriggered', scheduleTriggeredInfo);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.ScheduleInternalApi = ScheduleInternalApi;
|
|
@@ -2,7 +2,7 @@ import { ApiBase } from '../Implementation/ApiBase';
|
|
|
2
2
|
import { AdaptableColumn } from '../../PredefinedConfig/Common/AdaptableColumn';
|
|
3
3
|
import { BadgeStyleDefinition, CellColorRange, ColumnComparison, NumericStyledColumn, StyledColumn } from '../../PredefinedConfig/StyledColumnState';
|
|
4
4
|
import { IRowNode } from '@ag-grid-community/core';
|
|
5
|
-
import {
|
|
5
|
+
import { PredicateDefHandlerContext } from '../../types';
|
|
6
6
|
export declare class StyledColumnInternalApi extends ApiBase {
|
|
7
7
|
getMinValueForNumericColumn(column: AdaptableColumn): number | undefined;
|
|
8
8
|
getMaxValueForNumericColumn(column: AdaptableColumn): number | undefined;
|
|
@@ -57,6 +57,9 @@ export declare class StyledColumnInternalApi extends ApiBase {
|
|
|
57
57
|
* @param styledColumn Styled Column to Add
|
|
58
58
|
*/
|
|
59
59
|
hasStyledColumnRelativeCellRange(styledColumn: StyledColumn): boolean;
|
|
60
|
-
getApplicableBadge(styledColumn: StyledColumn,
|
|
60
|
+
getApplicableBadge(styledColumn: StyledColumn, context: PredicateDefHandlerContext): BadgeStyleDefinition | null;
|
|
61
61
|
getBadgePredicateDefsForColumn(columnId: string): import("../../types").AdaptablePredicateDef[];
|
|
62
|
+
getCheckBoxStyleStyledColumn(column: AdaptableColumn): StyledColumn | undefined;
|
|
63
|
+
isCheckBoxStyleStyledColumn(column: AdaptableColumn): boolean;
|
|
64
|
+
fireCheckboxColumnClickedEvent(columnId: string, rowData: any, primaryKeyValue: any, isChecked: boolean): void;
|
|
62
65
|
}
|
|
@@ -4,6 +4,7 @@ exports.StyledColumnInternalApi = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const ApiBase_1 = require("../Implementation/ApiBase");
|
|
6
6
|
const ArrayExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/ArrayExtensions"));
|
|
7
|
+
const Helper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/Helper"));
|
|
7
8
|
class StyledColumnInternalApi extends ApiBase_1.ApiBase {
|
|
8
9
|
getMinValueForNumericColumn(column) {
|
|
9
10
|
if (column.dataType !== 'Number') {
|
|
@@ -245,7 +246,7 @@ class StyledColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
245
246
|
return cellColorRange.Min == 'Col-Min' || cellColorRange.Max == 'Col-Max';
|
|
246
247
|
})))) !== null && _e !== void 0 ? _e : false);
|
|
247
248
|
}
|
|
248
|
-
getApplicableBadge(styledColumn,
|
|
249
|
+
getApplicableBadge(styledColumn, context) {
|
|
249
250
|
var _a, _b;
|
|
250
251
|
if (!((_a = styledColumn.BadgeStyle) === null || _a === void 0 ? void 0 : _a.Badges.length)) {
|
|
251
252
|
return null;
|
|
@@ -262,7 +263,7 @@ class StyledColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
262
263
|
}
|
|
263
264
|
}
|
|
264
265
|
for (let badge of badgesWithoutAll) {
|
|
265
|
-
if (this.getPredicateApi().handlePredicate(badge.Predicate,
|
|
266
|
+
if (this.getPredicateApi().handlePredicate(badge.Predicate, context, false)) {
|
|
266
267
|
return badge;
|
|
267
268
|
}
|
|
268
269
|
}
|
|
@@ -281,5 +282,31 @@ class StyledColumnInternalApi extends ApiBase_1.ApiBase {
|
|
|
281
282
|
.predicateApi.internalApi.getBadgeStylePredicateDefs(scope)
|
|
282
283
|
.filter((predicate) => this.adaptable.api.scopeApi.isColumnInScope(column, predicate.columnScope));
|
|
283
284
|
}
|
|
285
|
+
// Deprecated Checkbox Column functions
|
|
286
|
+
getCheckBoxStyleStyledColumn(column) {
|
|
287
|
+
var _a;
|
|
288
|
+
if (column.dataType != 'Boolean') {
|
|
289
|
+
return undefined;
|
|
290
|
+
}
|
|
291
|
+
const checkBoxFormatColumns = (_a = this.getAdaptableApi().styledColumnApi.getStyledColumnState().StyledColumns) === null || _a === void 0 ? void 0 : _a.filter((sc) => sc === null || sc === void 0 ? void 0 : sc.CheckBoxStyle);
|
|
292
|
+
const styledColumn = checkBoxFormatColumns.find((sc) => sc.ColumnId == column.columnId);
|
|
293
|
+
return styledColumn;
|
|
294
|
+
}
|
|
295
|
+
isCheckBoxStyleStyledColumn(column) {
|
|
296
|
+
const styledColumn = this.getCheckBoxStyleStyledColumn(column);
|
|
297
|
+
return Helper_1.default.objectExists(styledColumn);
|
|
298
|
+
}
|
|
299
|
+
fireCheckboxColumnClickedEvent(columnId, rowData, primaryKeyValue, isChecked) {
|
|
300
|
+
let checkboxColumnClickedInfo = {
|
|
301
|
+
adaptableApi: this.adaptable.api,
|
|
302
|
+
column: this.adaptable.api.columnApi.getColumnWithColumnId(columnId),
|
|
303
|
+
rowData: rowData,
|
|
304
|
+
primaryKeyValue: primaryKeyValue,
|
|
305
|
+
isChecked: isChecked,
|
|
306
|
+
userName: this.adaptable.api.optionsApi.getUserName(),
|
|
307
|
+
adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
|
|
308
|
+
};
|
|
309
|
+
this.adaptable.api.eventApi.emit('CheckboxColumnClicked', checkboxColumnClickedInfo);
|
|
310
|
+
}
|
|
284
311
|
}
|
|
285
312
|
exports.StyledColumnInternalApi = StyledColumnInternalApi;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserInterfaceInternalApi = void 0;
|
|
4
|
+
const ApiBase_1 = require("../Implementation/ApiBase");
|
|
5
|
+
class UserInterfaceInternalApi extends ApiBase_1.ApiBase {
|
|
6
|
+
prepareAdaptableIconDef(icon) {
|
|
7
|
+
if (icon && 'name' in icon) {
|
|
8
|
+
let customIcon = icon && 'name' in icon
|
|
9
|
+
? this.adaptable.api.userInterfaceApi.getCustomIconDefinition(icon.name)
|
|
10
|
+
: null;
|
|
11
|
+
if (customIcon) {
|
|
12
|
+
icon = customIcon;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return icon;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.UserInterfaceInternalApi = UserInterfaceInternalApi;
|
package/src/Api/OptionsApi.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CustomSortOptions } from '../AdaptableOptions/CustomSortOptions';
|
|
2
2
|
import { DataSetOptions } from '../AdaptableOptions/DataSetOptions';
|
|
3
3
|
import { GroupingOptions } from '../AdaptableOptions/GroupingOptions';
|
|
4
|
-
import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AdaptableQLOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, EditOptions, EntitlementOptions, ExportOptions, FilterOptions, FlashingCellOptions, LayoutOptions, MenuOptions, NotificationsOptions,
|
|
4
|
+
import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AdaptableQLOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, EditOptions, EntitlementOptions, ExportOptions, FilterOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, MenuOptions, NotificationsOptions, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions } from '../types';
|
|
5
5
|
/**
|
|
6
6
|
* Range of functions to access Adaptable Options
|
|
7
7
|
*/
|
|
@@ -123,9 +123,13 @@ export interface OptionsApi {
|
|
|
123
123
|
*/
|
|
124
124
|
getNotificationsOptions(): Readonly<NotificationsOptions>;
|
|
125
125
|
/**
|
|
126
|
-
* Returns `AdaptableOptions.
|
|
126
|
+
* Returns `AdaptableOptions.quickSearchOptions`
|
|
127
127
|
*/
|
|
128
|
-
|
|
128
|
+
getQuickSearchOptions(): Readonly<QuickSearchOptions>;
|
|
129
|
+
/**
|
|
130
|
+
* Returns `AdaptableOptions.formatColumnOptions`
|
|
131
|
+
*/
|
|
132
|
+
getFormatColumnOptions(): Readonly<FormatColumnOptions>;
|
|
129
133
|
/**
|
|
130
134
|
* Returns `AdaptableOptions.settingsPanelOptions`
|
|
131
135
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AdaptableColumnPredicate } from '../../types';
|
|
2
|
-
import { AdaptablePredicateDef, AdaptablePredicate,
|
|
2
|
+
import { AdaptablePredicateDef, AdaptablePredicate, PredicateDefHandlerContext, PredicateModuleScope } from '../PredefinedConfig/Common/AdaptablePredicate';
|
|
3
3
|
/**
|
|
4
4
|
* Functions which manage the Predicate object in AdapTable
|
|
5
5
|
*/
|
|
@@ -58,7 +58,7 @@ export interface PredicateApi {
|
|
|
58
58
|
* @param params
|
|
59
59
|
* @param defaultReturn
|
|
60
60
|
*/
|
|
61
|
-
handleColumnPredicate(predicate: AdaptableColumnPredicate, params: Omit<
|
|
61
|
+
handleColumnPredicate(predicate: AdaptableColumnPredicate, params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
|
|
62
62
|
/**
|
|
63
63
|
* Same has handle predicates but it tales into account predicate column id.
|
|
64
64
|
*
|
|
@@ -66,19 +66,19 @@ export interface PredicateApi {
|
|
|
66
66
|
* @param params
|
|
67
67
|
* @param defaultReturn
|
|
68
68
|
*/
|
|
69
|
-
handleColumnPredicates(predicate: AdaptableColumnPredicate[], params: Omit<
|
|
69
|
+
handleColumnPredicates(predicate: AdaptableColumnPredicate[], params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
|
|
70
70
|
/**
|
|
71
71
|
* Main Handler function for a Predicate Definition - used by AdapTableQL
|
|
72
72
|
* @param predicate Predicate to handle
|
|
73
73
|
* @param params Additional inputs as required
|
|
74
74
|
* @param defaultReturn Whether to return the default
|
|
75
75
|
*/
|
|
76
|
-
handlePredicate(predicate: AdaptablePredicate | undefined, params: Omit<
|
|
76
|
+
handlePredicate(predicate: AdaptablePredicate | undefined, params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
|
|
77
77
|
/**
|
|
78
78
|
* Handle and compose (with AND) the given Predicate Definitions
|
|
79
79
|
* @param predicate Predicate to handle
|
|
80
80
|
* @param params Additional inputs as required
|
|
81
81
|
* @param defaultReturn Whether to return the default
|
|
82
82
|
*/
|
|
83
|
-
handlePredicates(predicates: AdaptablePredicate[], params: Omit<
|
|
83
|
+
handlePredicates(predicates: AdaptablePredicate[], params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
|
|
84
84
|
}
|
|
@@ -57,11 +57,6 @@ export interface StyledColumnApi {
|
|
|
57
57
|
* @param styledColumn
|
|
58
58
|
*/
|
|
59
59
|
unSuspendStyledColumn(styledColumn: StyledColumn): void;
|
|
60
|
-
/**
|
|
61
|
-
* Returns first Styled Column that contains checkbox style
|
|
62
|
-
* @param columnId column to check
|
|
63
|
-
*/
|
|
64
|
-
getCheckBoxStyleStyledColumn(column: AdaptableColumn): StyledColumn | undefined;
|
|
65
60
|
/**
|
|
66
61
|
* Checks whether Column with given `columnId` has a PercentBar Style applied
|
|
67
62
|
* @param columnId column ID
|
|
@@ -77,15 +72,6 @@ export interface StyledColumnApi {
|
|
|
77
72
|
* @param columnId column ID
|
|
78
73
|
*/
|
|
79
74
|
isSparklineStyleStyledColumn(column: AdaptableColumn): boolean;
|
|
80
|
-
/**
|
|
81
|
-
* Whether given column is a (boolean) checkbox column
|
|
82
|
-
* @param columnId column to check
|
|
83
|
-
*/
|
|
84
|
-
isCheckBoxStyleStyledColumn(column: AdaptableColumn): boolean;
|
|
85
|
-
/**
|
|
86
|
-
* Publishes the CheckboxColumnClickedEvent - when the checkbox in an Checkbox Column is clicked
|
|
87
|
-
*/
|
|
88
|
-
fireCheckboxColumnClickedEvent(columnId: string, rowData: any, primaryKeyValue: any, isChecked: boolean): void;
|
|
89
75
|
/**
|
|
90
76
|
* Returns a Styled Column for a given column
|
|
91
77
|
* @param column Column to check
|
|
@@ -2,7 +2,7 @@ import { AdaptableObject } from './AdaptableObject';
|
|
|
2
2
|
/**
|
|
3
3
|
* Type of data stored in an Adaptable Column
|
|
4
4
|
*/
|
|
5
|
-
export declare type AdaptableColumnDataType = 'String' | 'Number' | 'Boolean' | 'Date' | 'Object' | 'NumberArray' | 'TupleNumberArray' | 'ObjectNumberArray' | 'Unknown';
|
|
5
|
+
export declare type AdaptableColumnDataType = 'String' | 'Number' | 'Boolean' | 'Date' | 'Object' | 'StringArray' | 'NumberArray' | 'TupleNumberArray' | 'ObjectNumberArray' | 'Unknown';
|
|
6
6
|
/**
|
|
7
7
|
* Base class for Adaptable Column containing most important properties
|
|
8
8
|
*/
|
|
@@ -3,17 +3,17 @@ import { TypeHint } from './Types';
|
|
|
3
3
|
/**
|
|
4
4
|
* Defines an icon to be used in AdapTable (e.g. in Dashboard Header, Buttons, Menu, etc.)
|
|
5
5
|
*/
|
|
6
|
-
export declare type AdaptableIcon =
|
|
6
|
+
export declare type AdaptableIcon = AdaptableSystemIcon | AdaptableCustomIcon | AdaptableElementIcon;
|
|
7
7
|
/**
|
|
8
|
-
* Defines an icon from the
|
|
8
|
+
* Defines an icon from the System AdapTable icon set
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface AdaptableSystemIcon extends AdaptableBaseIcon {
|
|
11
11
|
/**
|
|
12
12
|
* The name of the icon to use (referencing the AdapTable Icon Library)
|
|
13
13
|
*
|
|
14
14
|
* The icon can be a adaptable icon or a custom one defined in `interfaceOptions.customIcons`
|
|
15
15
|
*/
|
|
16
|
-
name: TypeHint<string,
|
|
16
|
+
name: TypeHint<string, AdaptableSystemIconName>;
|
|
17
17
|
/**
|
|
18
18
|
* The size (in pixels) of the SVG icon (defaults to `17px`)
|
|
19
19
|
*
|
|
@@ -23,7 +23,7 @@ export interface AdaptableInternalIcon extends AdaptableBaseIcon {
|
|
|
23
23
|
/**
|
|
24
24
|
* Defines an icon from an external source
|
|
25
25
|
*/
|
|
26
|
-
export interface
|
|
26
|
+
export interface AdaptableCustomIcon extends AdaptableBaseIcon {
|
|
27
27
|
/**
|
|
28
28
|
* The URL of the icon to use
|
|
29
29
|
*/
|
|
@@ -52,6 +52,6 @@ export interface AdaptableBaseIcon {
|
|
|
52
52
|
style?: React.CSSProperties;
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
|
-
* All AdapTable
|
|
55
|
+
* All AdapTable System Icon names
|
|
56
56
|
*/
|
|
57
|
-
export declare type
|
|
57
|
+
export declare type AdaptableSystemIconName = 'add' | 'alert' | 'building' | 'laptop' | 'arrow-down' | 'arrow-left' | 'arrow-right' | 'arrow-up' | 'arrow-up-long' | 'arrow-down-long' | 'arrow-expand' | 'paperclip' | 'unfilled-circle' | 'boolean-list' | 'broadcast' | 'brush' | 'spanner' | 'edit-table' | 'chart-and-grid' | 'calendar' | 'call' | 'cells' | 'flag' | 'chart' | 'chat' | 'check' | 'check-circle' | 'checked' | 'clone' | 'close' | 'cloud-upload' | 'collapse' | 'column-add' | 'columns' | 'filter-list' | 'comment' | 'contains' | 'dashboard' | 'data-set' | 'date-range' | 'delete' | 'division' | 'dock' | 'drag' | 'edit' | 'ends-with' | 'equals' | 'equation' | 'error' | 'expand' | 'exponent' | 'export' | 'export-data' | 'fast-backward' | 'fast-forward' | 'filter' | 'lightning' | 'folder' | 'folder-open' | 'folder-shared' | 'color-palette' | 'horizontal-lines' | 'function' | 'greater-than' | 'greater-than-or-equal' | 'history' | 'home' | 'import-export' | 'info' | 'brain' | 'download' | 'grid' | 'less-than' | 'less-than-or-equal' | 'list' | 'logout' | 'menu' | 'minus' | 'multiplication' | 'newpage' | 'news' | 'filled-circle' | 'not-contains' | 'not-equal' | 'open-in-new' | 'pause' | 'percent' | 'percent-tag' | 'person' | 'pie-chart' | 'play' | 'plus' | 'add-circle' | 'search' | 'search-table' | 'quote' | 'refresh' | 'regex' | 'reminder' | 'save' | 'schedule' | 'settings' | 'link' | 'sort-asc' | 'sort-desc' | 'spark-line' | 'starts-with' | 'assignment' | 'statusbar' | 'stop' | 'traffic-lights' | 'tab-unselected' | 'theme' | 'clipboard' | 'target' | 'triangle-down' | 'triangle-up' | 'unchecked' | 'undo' | 'downloaded' | 'upload' | 'warning' | 'gradient' | 'badge' | 'italic' | 'bold' | 'align-left' | 'align-right' | 'align-center' | 'align-justify' | 'underline' | 'strikethrough' | 'overline' | 'case-upper' | 'case-lower' | 'case-sentence' | 'visibility-on' | 'visibility-off' | 'visibility-off-bold' | 'visibility-on-bold';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { AdaptableScope } from './AdaptableScope';
|
|
2
|
-
import { AdaptableColumn, AdaptableColumnDataType } from './AdaptableColumn';
|
|
3
|
-
import { AdaptableApi, AdaptableIcon, ColumnFilter } from '../../types';
|
|
4
1
|
import { IRowNode } from '@ag-grid-community/core';
|
|
2
|
+
import { AdaptableIcon, ColumnFilter } from '../../types';
|
|
3
|
+
import { AdaptableColumn, AdaptableColumnDataType } from './AdaptableColumn';
|
|
4
|
+
import { AdaptableScope } from './AdaptableScope';
|
|
5
|
+
import { BaseContext } from './BaseContext';
|
|
5
6
|
/**
|
|
6
7
|
* Predicate object used by AdapTableQL - essentially a boolean function
|
|
7
8
|
*/
|
|
@@ -51,7 +52,7 @@ export interface AdaptablePredicateDef {
|
|
|
51
52
|
/**
|
|
52
53
|
* Actual boolean function invoked when evaluating the Predicate
|
|
53
54
|
*/
|
|
54
|
-
handler: (params:
|
|
55
|
+
handler: (params: PredicateDefHandlerContext) => boolean;
|
|
55
56
|
/**
|
|
56
57
|
* String representation of the Predicate
|
|
57
58
|
*/
|
|
@@ -66,10 +67,6 @@ export interface AdaptablePredicateDef {
|
|
|
66
67
|
* Keyboard shortcuts to initiate predicate - used in Quick Filter bar
|
|
67
68
|
*/
|
|
68
69
|
shortcuts?: string[];
|
|
69
|
-
/**
|
|
70
|
-
* Display this predicate only in Quick Filter Bar (and NOT in Filter Form)
|
|
71
|
-
*/
|
|
72
|
-
onlyQuickFilter?: boolean;
|
|
73
70
|
}
|
|
74
71
|
/**
|
|
75
72
|
* Defines an Input to a Predicate
|
|
@@ -82,7 +79,7 @@ export interface PredicateDefInput {
|
|
|
82
79
|
/**
|
|
83
80
|
* Object passed into an Adaptable Predicate Definition
|
|
84
81
|
*/
|
|
85
|
-
export interface
|
|
82
|
+
export interface PredicateDefHandlerContext extends BaseContext {
|
|
86
83
|
/**
|
|
87
84
|
* Raw value in cell being evaluated
|
|
88
85
|
*/
|
|
@@ -99,18 +96,14 @@ export interface PredicateDefHandlerParams {
|
|
|
99
96
|
* AG Grid Row node which contains the cell
|
|
100
97
|
*/
|
|
101
98
|
node: IRowNode;
|
|
102
|
-
/**
|
|
103
|
-
* Any inputs required to perform evaluation
|
|
104
|
-
*/
|
|
105
|
-
inputs: any[];
|
|
106
99
|
/**
|
|
107
100
|
* Adaptable Column which contains the cell
|
|
108
101
|
*/
|
|
109
102
|
column: AdaptableColumn;
|
|
110
103
|
/**
|
|
111
|
-
*
|
|
104
|
+
* Any (optional) inputs required to perform evaluation
|
|
112
105
|
*/
|
|
113
|
-
|
|
106
|
+
inputs?: any[];
|
|
114
107
|
}
|
|
115
108
|
/**
|
|
116
109
|
* Inputs required for a Predicate
|