@adaptabletools/adaptable 13.0.0-canary.9 → 13.0.0
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 +1231 -733
- package/base.css.map +1 -0
- package/bundle.cjs.js +236 -219
- package/index.css +1249 -734
- package/index.css.map +1 -0
- package/package.json +5 -5
- package/publishTimestamp.d.ts +1 -1
- package/publishTimestamp.js +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +3 -0
- package/src/AdaptableOptions/AdaptableQLOptions.d.ts +30 -6
- package/src/AdaptableOptions/ExportOptions.d.ts +2 -2
- package/src/AdaptableOptions/GeneralOptions.d.ts +0 -5
- package/src/AdaptableOptions/LayoutOptions.d.ts +2 -1
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +2 -2
- package/src/Api/AdaptableApi.d.ts +2 -5
- package/src/Api/ColumnApi.d.ts +8 -2
- package/src/Api/ConfigApi.d.ts +0 -5
- package/src/Api/ExportApi.d.ts +6 -6
- package/src/Api/FormatColumnApi.d.ts +46 -73
- package/src/Api/Implementation/AdaptableApiImpl.d.ts +2 -2
- package/src/Api/Implementation/AdaptableApiImpl.js +2 -3
- package/src/Api/Implementation/AlertApiImpl.js +9 -4
- package/src/Api/Implementation/ColumnApiImpl.d.ts +2 -1
- package/src/Api/Implementation/ColumnApiImpl.js +15 -11
- package/src/Api/Implementation/ConfigApiImpl.d.ts +0 -2
- package/src/Api/Implementation/ConfigApiImpl.js +0 -11
- package/src/Api/Implementation/ExportApiImpl.d.ts +4 -4
- package/src/Api/Implementation/ExportApiImpl.js +14 -14
- package/src/Api/Implementation/FlashingCellApiImpl.js +4 -1
- package/src/Api/Implementation/FormatColumnApiImpl.d.ts +24 -22
- package/src/Api/Implementation/FormatColumnApiImpl.js +57 -224
- package/src/Api/Implementation/InternalApiImpl.d.ts +1 -1
- package/src/Api/Implementation/InternalApiImpl.js +4 -3
- package/src/Api/Implementation/QueryLanguageApiImpl.d.ts +2 -1
- package/src/Api/Implementation/QueryLanguageApiImpl.js +9 -15
- package/src/Api/Implementation/ScopeApiImpl.d.ts +1 -1
- package/src/Api/Implementation/StyledColumnApiImpl.d.ts +25 -0
- package/src/Api/Implementation/StyledColumnApiImpl.js +193 -0
- package/src/Api/InternalApi.d.ts +1 -1
- package/src/Api/QueryLanguageApi.d.ts +3 -2
- package/src/Api/ScopeApi.d.ts +1 -1
- package/src/Api/StyledColumnApi.d.ts +106 -0
- package/src/Api/{ConditionalStyleApi.js → StyledColumnApi.js} +0 -0
- package/src/PredefinedConfig/AdaptableState.d.ts +2 -0
- package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
- package/src/PredefinedConfig/Common/Types.d.ts +3 -3
- package/src/PredefinedConfig/Common/Types.js +1 -0
- package/src/PredefinedConfig/FormatColumnState.d.ts +6 -90
- package/src/PredefinedConfig/PredefinedConfig.d.ts +5 -0
- package/src/PredefinedConfig/StyledColumnState.d.ts +119 -0
- package/src/{Strategy/Interface/IConditionalStyleModule.js → PredefinedConfig/StyledColumnState.js} +0 -0
- package/src/Redux/ActionsReducers/PluginsRedux.d.ts +4 -4
- package/src/Redux/ActionsReducers/PluginsRedux.js +5 -5
- package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +49 -0
- package/src/Redux/ActionsReducers/StyledColumnRedux.js +92 -0
- package/src/Redux/DeadRedux.d.ts +6 -0
- package/src/Redux/DeadRedux.js +19 -1
- package/src/Redux/Store/AdaptableStore.js +9 -8
- package/src/Strategy/ConditionalStyleModule.d.ts +2 -27
- package/src/Strategy/ConditionalStyleModule.js +0 -219
- package/src/Strategy/FormatColumnModule.d.ts +0 -2
- package/src/Strategy/FormatColumnModule.js +30 -221
- package/src/Strategy/LayoutModule.js +0 -4
- package/src/Strategy/StyledColumnModule.d.ts +24 -0
- package/src/Strategy/StyledColumnModule.js +165 -0
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +1 -16
- package/src/Strategy/Utilities/getScopeViewItems.js +1 -1
- package/src/Utilities/Constants/ModuleConstants.d.ts +3 -0
- package/src/Utilities/Constants/ModuleConstants.js +4 -1
- package/src/Utilities/Defaults/DefaultAdaptableOptions.js +1 -3
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +1 -1
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.d.ts +1 -4
- package/src/Utilities/ObjectFactory.d.ts +5 -2
- package/src/Utilities/ObjectFactory.js +14 -6
- package/src/Utilities/Services/ModuleService.js +2 -2
- package/src/Utilities/Services/QueryLanguageService.js +1 -1
- package/src/Utilities/Services/ReportService.js +6 -6
- package/src/View/AdaptablePopover/index.js +1 -1
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +15 -14
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +24 -1
- package/src/View/Alert/Wizard/AlertDisplayWizardSection.js +6 -5
- package/src/View/Alert/Wizard/BaseAlertRulesWizardSection.js +3 -3
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +3 -3
- package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
- package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
- package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +1 -1
- package/src/View/Components/AdaptableObjectRow/index.js +1 -6
- package/src/View/Components/Buttons/ButtonInfo.d.ts +1 -3
- package/src/View/Components/Buttons/ButtonInfo.js +3 -5
- package/src/View/Components/EntityRulesEditor/index.js +8 -17
- package/src/View/Components/FilterForm/FilterForm.js +11 -16
- package/src/View/Components/FilterForm/ListBoxFilterForm.js +2 -1
- package/src/View/Components/FilterForm/QuickFilterForm.js +7 -13
- package/src/View/Components/NewScopeComponent.js +3 -3
- package/src/View/Components/Panels/PanelWithButton.js +1 -5
- package/src/View/Components/Panels/PanelWithImage.js +1 -5
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -2
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.d.ts +1 -0
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +3 -16
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +1 -1
- package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +5 -5
- package/src/View/Components/RangesComponent.d.ts +8 -1
- package/src/View/Components/RangesComponent.js +60 -24
- package/src/View/Components/ScopeComponent.js +6 -6
- package/src/View/Components/Selectors/ColumnSelector.d.ts +1 -0
- package/src/View/Components/Selectors/ColumnSelector.js +2 -1
- package/src/View/Components/Selectors/ColumnValueSelector.js +2 -2
- package/src/View/Components/StyleComponent.js +14 -19
- package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +1 -11
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +21 -9
- package/src/View/Components/ToolPanel/CustomToolPanelContent.js +1 -1
- package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
- package/src/View/DataSet/DataSetSelector.js +1 -1
- package/src/View/DataSet/DataSetViewPanel.d.ts +1 -1
- package/src/View/Export/ExportViewPanel.d.ts +1 -1
- package/src/View/Export/ExportViewPanel.js +4 -4
- package/src/View/Export/ReportExportDropdown.js +1 -1
- package/src/View/Export/Wizard/ReportNameWizardSection.js +10 -11
- package/src/View/Filter/FilterSummary.d.ts +1 -1
- package/src/View/Filter/FilterViewPanel.d.ts +1 -1
- package/src/View/FlashingCell/FlashingCellStyle.js +3 -3
- package/src/View/FlashingCell/Wizard/FlashingCellRulesWizardSection.js +3 -3
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +6 -6
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +4 -4
- package/src/View/FormatColumn/FormatColumnSummary.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +27 -27
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +4 -5
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +2 -6
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +3 -3
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +6 -300
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +3 -10
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +7 -7
- package/src/View/GridInfo/ColumnInfoComponent.js +0 -7
- package/src/View/Layout/LayoutRadioSelector.js +1 -1
- package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
- package/src/View/Layout/Wizard/Components/ColumnLabels.js +1 -1
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +1 -1
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +7 -6
- package/src/View/Layout/Wizard/sections/SettingsSection.js +2 -2
- package/src/View/PlusMinus/Wizard/PlusMinusRuleWizardSection.js +1 -1
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +3 -3
- package/src/View/Query/QueryViewPanel.d.ts +1 -1
- package/src/View/Query/Wizard/NamedQuerySettingsWizardSection.js +1 -1
- package/src/View/QuickSearch/QuickSearchPopup.js +2 -2
- package/src/View/QuickSearch/QuickSearchViewPanel.d.ts +1 -1
- package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsGlue42.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +2 -2
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +3 -3
- package/src/View/SmartEdit/SmartEditPopup.js +3 -3
- package/src/View/SpecialColumnSettingsWizardStep.js +10 -10
- package/src/View/StateManagement/StateManagementPopup.js +4 -4
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.d.ts +7 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +77 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.d.ts +9 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +65 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection.d.ts +9 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection.js +234 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.d.ts +7 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +59 -0
- package/src/View/SystemStatus/SystemStatusEntityRow.js +4 -6
- package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +1 -1
- package/src/View/TeamSharing/SharedEntityObjectView.js +1 -1
- package/src/View/TeamSharing/TeamSharingApplyButton.js +1 -1
- package/src/View/Theme/ThemePopup.js +1 -1
- package/src/View/Wizard/OnePageAdaptableWizard.d.ts +1 -1
- package/src/View/Wizard/OnePageAdaptableWizard.js +1 -2
- package/src/agGrid/ActionColumnRenderer.d.ts +2 -0
- package/src/agGrid/ActionColumnRenderer.js +94 -62
- package/src/agGrid/Adaptable.d.ts +10 -11
- package/src/agGrid/Adaptable.js +161 -222
- package/src/agGrid/CheckboxRenderer.js +1 -1
- package/src/agGrid/FilterWrapper.js +60 -16
- package/src/agGrid/FloatingFilterWrapper.d.ts +2 -2
- package/src/agGrid/FloatingFilterWrapper.js +71 -32
- package/src/agGrid/PercentBarRenderer.d.ts +6 -2
- package/src/agGrid/PercentBarRenderer.js +19 -17
- package/src/agGrid/agGridHelper.d.ts +6 -2
- package/src/agGrid/agGridHelper.js +17 -17
- package/src/agGrid/createAgStatusPanelComponent.d.ts +1 -1
- package/src/agGrid/createAgStatusPanelComponent.js +17 -0
- package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +4 -1
- package/src/agGrid/editors/AdaptableDateEditor/index.js +84 -17
- package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -1
- package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +78 -27
- package/src/agGrid/weightedAverage.js +19 -11
- package/src/components/CheckBox/index.js +7 -2
- package/src/components/Datepicker/index.d.ts +1 -1
- package/src/components/ExpressionEditor/BaseEditorInput.js +13 -32
- package/src/components/ExpressionEditor/index.js +9 -17
- package/src/components/FormLayout/index.js +1 -1
- package/src/components/StylePreview.js +2 -1
- package/src/components/icons/brush.d.ts +3 -0
- package/src/components/icons/brush.js +7 -0
- package/src/components/icons/index.js +2 -0
- package/src/metamodel/adaptable.metamodel.d.ts +113 -57
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/renderReactRoot.d.ts +2 -0
- package/src/renderReactRoot.js +11 -9
- package/src/types.d.ts +5 -5
- package/themes/dark.css +8 -4
- package/themes/dark.css.map +1 -0
- package/themes/light.css +4 -1
- package/themes/light.css.map +1 -0
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/src/AdaptableComponents.d.ts +0 -1
- package/src/AdaptableComponents.js +0 -5
- package/src/Api/ConditionalStyleApi.d.ts +0 -86
- package/src/Api/Implementation/ConditionalStyleApiImpl.d.ts +0 -29
- package/src/Api/Implementation/ConditionalStyleApiImpl.js +0 -98
- package/src/Redux/ActionsReducers/ConditionalStyleRedux.d.ts +0 -49
- package/src/Redux/ActionsReducers/ConditionalStyleRedux.js +0 -95
- package/src/Strategy/Interface/IConditionalStyleModule.d.ts +0 -6
- package/src/Strategy/Utilities/getStyleViewItems.d.ts +0 -2
- package/src/Strategy/Utilities/getStyleViewItems.js +0 -16
- package/src/View/ConditionalStyle/ConditionalStylePopupHeader.d.ts +0 -2
- package/src/View/ConditionalStyle/ConditionalStylePopupHeader.js +0 -18
- package/src/View/ConditionalStyle/ConditionalStyleSummary.d.ts +0 -25
- package/src/View/ConditionalStyle/ConditionalStyleSummary.js +0 -108
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleRuleWizardSection.d.ts +0 -9
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleRuleWizardSection.js +0 -42
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleScopeWizardSection.d.ts +0 -8
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleScopeWizardSection.js +0 -43
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.d.ts +0 -8
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleSettingsWizardSettings.js +0 -29
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleStyleWizardSection.d.ts +0 -8
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleStyleWizardSection.js +0 -23
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.d.ts +0 -6
- package/src/View/ConditionalStyle/Wizard/ConditionalStyleWizard.js +0 -114
- package/src/View/ConditionalStyle/Wizard/DEFAULT_PREDICATE_ID_FOR_CONDITIONAL_STYLE.d.ts +0 -1
- package/src/View/ConditionalStyle/Wizard/DEFAULT_PREDICATE_ID_FOR_CONDITIONAL_STYLE.js +0 -4
|
@@ -27,7 +27,7 @@ const ListBoxFilterForm = (props) => {
|
|
|
27
27
|
internalUpdateUISelectedColumnValues(props.uiSelectedColumnValues);
|
|
28
28
|
}, [props.uiSelectedColumnValues]);
|
|
29
29
|
const renderItemForAgGridStyle = (props) => {
|
|
30
|
-
return (React.createElement(CheckBox_1.CheckBox, Object.assign({}, props, { variant: "agGrid", fontSize: 2, marginTop: 1, marginBottom: 1, marginLeft: 1, marginRight: 1 })));
|
|
30
|
+
return (React.createElement(CheckBox_1.CheckBox, Object.assign({}, props, { variant: "agGrid", fontSize: 2, marginTop: 1, marginBottom: 1, marginLeft: 1, marginRight: 1, title: typeof props.children === 'string' ? props.children : null })));
|
|
31
31
|
};
|
|
32
32
|
const onClickItemColumnValue = (item) => {
|
|
33
33
|
const index = UiSelectedColumnValues.indexOf(item);
|
|
@@ -59,6 +59,7 @@ const ListBoxFilterForm = (props) => {
|
|
|
59
59
|
checked: isActive,
|
|
60
60
|
onChange: () => onClickItemColumnValue(distinctValue.value),
|
|
61
61
|
disabled: props.disabled,
|
|
62
|
+
style: { width: '100%' },
|
|
62
63
|
});
|
|
63
64
|
}
|
|
64
65
|
return (React.createElement(ListGroupItem_1.default, { noZebra: props.useAgGridStyle, key: 'columnValue' + index, onClick: () => onClickItemColumnValue(distinctValue.value), active: isActive, value: distinctValue.value }, distinctValue.label));
|
|
@@ -142,21 +142,15 @@ class QuickFilterFormComponent extends React.Component {
|
|
|
142
142
|
showQuickFilterInput = !hideQuickFilterInputFunction(this.props.currentColumn);
|
|
143
143
|
}
|
|
144
144
|
return (React.createElement(React.Fragment, null,
|
|
145
|
-
showQuickFilterDropdown && (React.createElement(OverlayTrigger_1.default, { showEvent: showEvent, hideEvent: hideEvent, preventPortalEventPropagation: showEvent === 'click', alignHorizontal: "left", targetOffset: 10, hideDelay: 300, "data-name": "quick-filter-overlay",
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
(filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId) && (React.createElement(React.Fragment, null,
|
|
152
|
-
React.createElement(SimpleButton_1.default, { p: 2, variant: "text", onClick: () => this.clearFilter() },
|
|
153
|
-
React.createElement("span", { style: { width: 20, marginRight: 10 } },
|
|
154
|
-
React.createElement(icons_1.Icon, { name: "delete" })),
|
|
155
|
-
"Clear"))),
|
|
156
|
-
predicateDefs.map((p) => (React.createElement(SimpleButton_1.default, { disabled: this.isFilterDisabled(), key: p.id, p: 2, variant: "text", tone: (filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId) === p.id ? 'info' : 'none', onClick: () => this.selectColumnPredicate(p.id) },
|
|
145
|
+
showQuickFilterDropdown && (React.createElement(OverlayTrigger_1.default, { className: "ab-QuickFilter", showEvent: showEvent, hideEvent: hideEvent, preventPortalEventPropagation: showEvent === 'click', alignHorizontal: "left", targetOffset: 10, hideDelay: 300, "data-name": "quick-filter-overlay", render: () => (React.createElement(rebass_1.Flex, { flexDirection: "column", "data-name": "quick-filter" },
|
|
146
|
+
(filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId) && (React.createElement(SimpleButton_1.default, { p: 2, variant: "text", onClick: () => this.clearFilter() },
|
|
147
|
+
React.createElement("span", { style: { width: 20, marginRight: 10 } },
|
|
148
|
+
React.createElement(icons_1.Icon, { name: "delete" })),
|
|
149
|
+
"Clear")),
|
|
150
|
+
predicateDefs.map((p) => (React.createElement(SimpleButton_1.default, { "data-name": filter.Predicate.PredicateId, disabled: this.isFilterDisabled(), key: p.id, p: 2, variant: "text", tone: (filter === null || filter === void 0 ? void 0 : filter.Predicate.PredicateId) === p.id ? 'info' : 'none', onClick: () => this.selectColumnPredicate(p.id) },
|
|
157
151
|
React.createElement("span", { style: { width: 20, marginRight: 10 } }, this.renderPredicateIcon(p)),
|
|
158
152
|
p.label))))) },
|
|
159
|
-
React.createElement(SimpleButton_1.default, { style: {
|
|
153
|
+
React.createElement(SimpleButton_1.default, { "data-name": filter.Predicate.PredicateId, style: {
|
|
160
154
|
borderRadius: 0,
|
|
161
155
|
borderColor: 'var(--ab-color-primarydark)',
|
|
162
156
|
} }, this.renderPredicateIcon(activePredicateDef)))),
|
|
@@ -130,9 +130,9 @@ const NewScopeComponent = (props) => {
|
|
|
130
130
|
}
|
|
131
131
|
return (React.createElement(Tabs_1.Tabs, { "data-name": 'scope-component', className: "ab-ScopeComponent", value: scopeChoice, style: Object.assign({ height: '100%' }, props.style), onValueChange: onScopeSelectChanged },
|
|
132
132
|
props.hideWholeRow ? null : (React.createElement(Tabs_1.Tabs.Tab, { value: "Row" },
|
|
133
|
-
React.createElement(Radio_1.default, { margin: 0, checked: scopeChoice == 'All', tabIndex: -1 }, "
|
|
133
|
+
React.createElement(Radio_1.default, { margin: 0, checked: scopeChoice == 'All', tabIndex: -1 }, "All Columns"))),
|
|
134
134
|
React.createElement(Tabs_1.Tabs.Tab, { value: "Column" },
|
|
135
|
-
React.createElement(Radio_1.default, { margin: 0, value: "Column", checked: scopeChoice == 'Column', tabIndex: -1 }, "Columns")),
|
|
135
|
+
React.createElement(Radio_1.default, { margin: 0, value: "Column", checked: scopeChoice == 'Column', tabIndex: -1 }, "Selected Columns")),
|
|
136
136
|
React.createElement(Tabs_1.Tabs.Tab, { value: "DataType" },
|
|
137
137
|
React.createElement(Radio_1.default, { margin: 0, value: "DataType", checked: scopeChoice == 'DataType', tabIndex: -1 }, "Data Types")),
|
|
138
138
|
props.hideWholeRow ? null : (React.createElement(Tabs_1.Tabs.Content, { value: "Row", style: { flex: 'none' }, "data-name": "row-scope" },
|
|
@@ -144,6 +144,6 @@ const NewScopeComponent = (props) => {
|
|
|
144
144
|
React.createElement(AdaptableFormControlTextClear_1.AdaptableFormControlTextClear, { value: columnsSearchText, OnTextChange: setColumnsSearchText, placeholder: "Type to search columns", style: { flex: 1 } })),
|
|
145
145
|
React.createElement(rebass_1.Flex, { paddingLeft: 2, flex: 1, style: { overflow: 'hidden' } },
|
|
146
146
|
React.createElement(ColumnSelector_1.NewColumnSelector, { columnFilterText: columnsSearchText, allowReorder: false, availableColumns: scopeColumns, selected: scopeApi.getColumnIdsInScope(props.scope), onChange: onColumnsSelectedChanged }))),
|
|
147
|
-
React.createElement(Tabs_1.Tabs.Content, { value: "DataType", style: { flex: 'none' }, "data-name": "datatype-scope" }, dataTypeOptions.map((dataTypeOption) => (React.createElement(CheckBox_1.CheckBox, {
|
|
147
|
+
React.createElement(Tabs_1.Tabs.Content, { value: "DataType", style: { flex: 'none' }, "data-name": "datatype-scope" }, dataTypeOptions.map((dataTypeOption) => (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": dataTypeOption.value, key: dataTypeOption.value, checked: dataTypesInScope && dataTypesInScope.includes(dataTypeOption.value), onChange: (checked) => onCheckBoxDataTypeChecked(checked, dataTypeOption.value) }, dataTypeOption.label))))));
|
|
148
148
|
};
|
|
149
149
|
exports.NewScopeComponent = NewScopeComponent;
|
|
@@ -21,11 +21,7 @@ class PanelWithButton extends React.Component {
|
|
|
21
21
|
React.createElement(rebass_1.Box, { marginRight: 2, "data-name": "space-before" }),
|
|
22
22
|
this.props.headerText,
|
|
23
23
|
React.createElement(rebass_1.Box, { marginRight: 2, "data-name": "space-after" }),
|
|
24
|
-
this.props.infoLink != null && !this.props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, {
|
|
25
|
-
color: 'var(--ab-color-text-on-add)',
|
|
26
|
-
fill: 'var(--ab-color-text-on-add)',
|
|
27
|
-
background: 'var(--ab-color-action-add)',
|
|
28
|
-
}, onClick: () => window.open(this.props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
24
|
+
this.props.infoLink != null && !this.props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, { onClick: () => window.open(this.props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
29
25
|
) }))),
|
|
30
26
|
React.createElement(rebass_1.Box, { style: { flex: 1 } }),
|
|
31
27
|
buttonContent ? (React.createElement(SimpleButton_1.default, { variant: "raised", tone: "accent", disabled: this.props.buttonDisabled, onClick: () => (this.props.buttonClick ? this.props.buttonClick() : null) }, buttonContent)) : null,
|
|
@@ -26,11 +26,7 @@ class PanelWithImageCmp extends React.Component {
|
|
|
26
26
|
React.createElement(rebass_1.Box, { marginRight: 2 }),
|
|
27
27
|
this.props.header,
|
|
28
28
|
React.createElement(rebass_1.Box, { marginRight: 2, "data-name": "space-after" }),
|
|
29
|
-
this.props.infoLink != null && !this.props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, {
|
|
30
|
-
color: 'var(--ab-color-text-on-add)',
|
|
31
|
-
fill: 'var(--ab-color-text-on-add)',
|
|
32
|
-
background: 'var(--ab-color-action-add)',
|
|
33
|
-
}, onClick: () => window.open(this.props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
29
|
+
this.props.infoLink != null && !this.props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, { onClick: () => window.open(this.props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
34
30
|
) }))),
|
|
35
31
|
React.createElement(rebass_1.Box, { flex: 1 }),
|
|
36
32
|
this.props.button && React.cloneElement(this.props.button))));
|
|
@@ -71,9 +71,9 @@ const AdaptablePopup = (props) => {
|
|
|
71
71
|
}
|
|
72
72
|
},
|
|
73
73
|
} },
|
|
74
|
-
React.createElement(AdaptablePopupDialog_1.AdaptablePopupDialog, { baseClassName: baseClassName, className: className, friendlyName: friendlyName, isActionModule: isStandalone, isWindowModal: isWindowModal, onHide: props.onHide, modalContainer: modalContainer },
|
|
74
|
+
React.createElement(AdaptablePopupDialog_1.AdaptablePopupDialog, { dataName: componentModule, baseClassName: baseClassName, className: className, friendlyName: friendlyName, isActionModule: isStandalone, isWindowModal: isWindowModal, onHide: props.onHide, modalContainer: modalContainer },
|
|
75
75
|
!isStandalone && React.createElement(TopBar_1.default, { icon: settingsPanelOptions.icon }, settingsPanelTitle),
|
|
76
|
-
React.createElement(rebass_1.Flex, {
|
|
76
|
+
React.createElement(rebass_1.Flex, { flexDirection: "row", flex: "1 1 0", style: { minHeight: 0 }, className: accessLevel == 'ReadOnly' ? GeneralConstants.READ_ONLY_STYLE : '' },
|
|
77
77
|
!isStandalone && (React.createElement(Navigation_1.Navigation, { menuItems: menuItems, api: props.api, activeItem: activeItem, customSettingsPanels: settingsPanelOptions.customSettingsPanels })),
|
|
78
78
|
React.createElement(rebass_1.Flex, { flex: 1, className: "ab-Adaptable-Popup__Body" }, moduleViewContent)))));
|
|
79
79
|
};
|
|
@@ -46,19 +46,6 @@ const PopupDialog = (props) => {
|
|
|
46
46
|
};
|
|
47
47
|
const AdaptablePopupDialog = (props) => {
|
|
48
48
|
const { isActionModule, style, friendlyName, baseClassName, className, children, onHide, isWindowModal, modalContainer, } = props;
|
|
49
|
-
const elementRef = React.useMemo(() => {
|
|
50
|
-
if (!modalContainer) {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
let ref = null;
|
|
54
|
-
if (typeof modalContainer === 'string') {
|
|
55
|
-
ref = globalThis.document.querySelector(modalContainer);
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
ref = modalContainer;
|
|
59
|
-
}
|
|
60
|
-
return ref;
|
|
61
|
-
}, [modalContainer]);
|
|
62
49
|
if (modalContainer) {
|
|
63
50
|
let ref = null;
|
|
64
51
|
if (typeof modalContainer === 'string') {
|
|
@@ -67,15 +54,15 @@ const AdaptablePopupDialog = (props) => {
|
|
|
67
54
|
else {
|
|
68
55
|
ref = modalContainer;
|
|
69
56
|
}
|
|
70
|
-
return (0, react_dom_1.createPortal)(React.createElement(Dialog_1.default, { modal: false, fixed: false, onDismiss: onHide, className: className }, children), ref);
|
|
57
|
+
return (0, react_dom_1.createPortal)(React.createElement(Dialog_1.default, { "data-name": props.dataName, modal: false, fixed: false, onDismiss: onHide, className: className }, children), ref);
|
|
71
58
|
}
|
|
72
59
|
if (isWindowModal) {
|
|
73
60
|
const settingsPanelOptionsKey = isActionModule ? `action-${friendlyName}` : 'settings';
|
|
74
|
-
return (React.createElement(WindowDialog, { settingsPanelOptionsKey: settingsPanelOptionsKey, isActionModule: isActionModule, onHide: onHide, style: style, baseClassName: baseClassName, className: className }, children));
|
|
61
|
+
return (React.createElement(WindowDialog, { dataName: props.dataName, settingsPanelOptionsKey: settingsPanelOptionsKey, isActionModule: isActionModule, onHide: onHide, style: style, baseClassName: baseClassName, className: className }, children));
|
|
75
62
|
}
|
|
76
63
|
else {
|
|
77
64
|
const modalStyle = Object.assign(Object.assign({}, style), (isActionModule ? { maxWidth: 800, maxHeight: 600 } : { maxWidth: 1200, maxHeight: 1000 }));
|
|
78
|
-
return (React.createElement(PopupDialog, { onHide: onHide, style: modalStyle, className: className }, children));
|
|
65
|
+
return (React.createElement(PopupDialog, { "data-name": props.dataName, onHide: onHide, style: modalStyle, className: className }, children));
|
|
79
66
|
}
|
|
80
67
|
};
|
|
81
68
|
exports.AdaptablePopupDialog = AdaptablePopupDialog;
|
|
@@ -15,7 +15,7 @@ const PopupPanel = (props) => {
|
|
|
15
15
|
React.createElement(rebass_1.Box, { marginRight: 0, "data-name": "space-before" }),
|
|
16
16
|
React.createElement("div", { className: `${baseClassName}__Header__Title` }, props.headerText),
|
|
17
17
|
React.createElement(rebass_1.Box, { marginRight: 2, "data-name": "space-after" }),
|
|
18
|
-
props.infoLink != null && !props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, { iconSize: 24, onClick: () => window.open(props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
18
|
+
props.infoLink != null && !props.infoLinkDisabled && (React.createElement(ButtonInfo_1.ButtonInfo, { tone: "none", variant: "text", iconSize: 24, onClick: () => window.open(props.infoLink, '_blank' // <- opens the link in a new tab or window.
|
|
19
19
|
) }))),
|
|
20
20
|
React.createElement(rebass_1.Box, { style: { flex: 1 } }),
|
|
21
21
|
props.button),
|
|
@@ -34,17 +34,17 @@ const AdaptablePopupTeamSharing = (props) => {
|
|
|
34
34
|
": a \"live\" share that is automatically updated with every local change"))),
|
|
35
35
|
React.createElement(FormLayout_1.default, { padding: 2 },
|
|
36
36
|
React.createElement(FormLayout_1.FormRow, { label: "Name: " },
|
|
37
|
-
React.createElement(Input_1.default, { autoFocus: true, value: config.description, type: "string", width: 300, placeholder: "Enter text", onChange: (e) => setConfig(Object.assign(Object.assign({}, config), { description: e.target.value })) })),
|
|
37
|
+
React.createElement(Input_1.default, { "data-name": "teamsharing-entity-name", autoFocus: true, value: config.description, type: "string", width: 300, placeholder: "Enter text", onChange: (e) => setConfig(Object.assign(Object.assign({}, config), { description: e.target.value })) })),
|
|
38
38
|
React.createElement(FormLayout_1.FormRow, { label: "Share: " },
|
|
39
39
|
React.createElement(rebass_1.Flex, { flexDirection: "row" },
|
|
40
|
-
React.createElement(Radio_1.default, { checked: config.type === 'Snapshot', onChange: () => setConfig(Object.assign(Object.assign({}, config), { type: 'Snapshot' })) }, "Snapshot"),
|
|
40
|
+
React.createElement(Radio_1.default, { "data-name": "teamsharing-entity-type-snapshot", checked: config.type === 'Snapshot', onChange: () => setConfig(Object.assign(Object.assign({}, config), { type: 'Snapshot' })) }, "Snapshot"),
|
|
41
41
|
' ',
|
|
42
|
-
React.createElement(Radio_1.default, { marginLeft: 3, checked: config.type === 'Active', onChange: () => setConfig(Object.assign(Object.assign({}, config), { type: 'Active' })) }, "Active"),
|
|
42
|
+
React.createElement(Radio_1.default, { "data-name": "teamsharing-entity-type-active", marginLeft: 3, checked: config.type === 'Active', onChange: () => setConfig(Object.assign(Object.assign({}, config), { type: 'Active' })) }, "Active"),
|
|
43
43
|
' '))),
|
|
44
44
|
React.createElement(rebass_1.Box, { marginTop: 3 },
|
|
45
45
|
React.createElement(rebass_1.Flex, { padding: 2 },
|
|
46
|
-
React.createElement(SimpleButton_1.default, { tone: "neutral", variant: "raised", onClick: () => onClose()
|
|
46
|
+
React.createElement(SimpleButton_1.default, { "data-name": "cancel", tone: "neutral", variant: "raised", onClick: () => onClose() }, "Cancel"),
|
|
47
47
|
React.createElement("div", { style: { flex: 1 } }),
|
|
48
|
-
React.createElement(SimpleButton_1.default, {
|
|
48
|
+
React.createElement(SimpleButton_1.default, { "data-name": "ok", tone: "accent", variant: "raised", disabled: StringExtensions_1.StringExtensions.IsNullOrEmpty(config.description), onClick: () => onConfirm(config) }, "OK")))))));
|
|
49
49
|
};
|
|
50
50
|
exports.AdaptablePopupTeamSharing = AdaptablePopupTeamSharing;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { AdaptableApi } from '../../Api/AdaptableApi';
|
|
3
|
-
import { CellColorRange, ColumnComparison } from '../../PredefinedConfig/
|
|
3
|
+
import { CellColorRange, ColumnComparison } from '../../PredefinedConfig/StyledColumnState';
|
|
4
4
|
import { AdaptableScope } from '../../PredefinedConfig/Common/AdaptableScope';
|
|
5
5
|
export interface RangesComponentProps extends React.ClassAttributes<RangesComponent> {
|
|
6
6
|
ranges: CellColorRange[];
|
|
@@ -10,6 +10,11 @@ export interface RangesComponentProps extends React.ClassAttributes<RangesCompon
|
|
|
10
10
|
showRangeDirection: boolean;
|
|
11
11
|
updateRanges: (ranges: CellColorRange[]) => void;
|
|
12
12
|
updateColumnComparison: (columnComparison?: ColumnComparison) => void;
|
|
13
|
+
minMaxRangeValues: {
|
|
14
|
+
min: number;
|
|
15
|
+
max: number;
|
|
16
|
+
};
|
|
17
|
+
disabled?: boolean;
|
|
13
18
|
}
|
|
14
19
|
export interface RangesComponentState {
|
|
15
20
|
ranges: CellColorRange[];
|
|
@@ -25,6 +30,8 @@ export declare class RangesComponent extends React.Component<RangesComponentProp
|
|
|
25
30
|
changeRangeColor(index: number, value: string): void;
|
|
26
31
|
changeRangeDirectionUp(index: number, checked: boolean): void;
|
|
27
32
|
removeRange(index: number): void;
|
|
33
|
+
setRangeColMin(range: CellColorRange): void;
|
|
34
|
+
setRangeColMax(range: CellColorRange): void;
|
|
28
35
|
addRange(): void;
|
|
29
36
|
changeColumnComparisonMinValue(event: React.FormEvent<any>): void;
|
|
30
37
|
private onMinColumnSelectedChanged;
|
|
@@ -54,22 +54,27 @@ class RangesComponent extends React.Component {
|
|
|
54
54
|
this.state.rangesType == 'Standard' && (React.createElement(Tabs_1.Tabs, { autoFocus: false, marginTop: 2 },
|
|
55
55
|
React.createElement(Tabs_1.Tabs.Tab, null, "Ranges"),
|
|
56
56
|
React.createElement(Tabs_1.Tabs.Content, null, (_a = this.state.ranges) === null || _a === void 0 ? void 0 :
|
|
57
|
-
_a.map((range, index) => (React.createElement(rebass_1.Flex, { key: index, mb: 2, "data-name": "percent-bar-range" },
|
|
58
|
-
React.createElement(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
React.createElement(
|
|
57
|
+
_a.map((range, index, list) => (React.createElement(rebass_1.Flex, { key: index, alignItems: "end", mb: 2, "data-name": "percent-bar-range" },
|
|
58
|
+
React.createElement(rebass_1.Flex, { flexDirection: "column" },
|
|
59
|
+
index === 0 && (React.createElement(CheckBox_1.CheckBox, { onClick: () => this.setRangeColMin(range), checked: range.Min === 'Col-Min', mt: 0, mb: 1, fontSize: 3, disabled: this.props.disabled }, "Col Min")),
|
|
60
|
+
React.createElement(Input_1.default, { type: typeof range.Min == 'number' ? 'number' : 'text', disabled: this.props.disabled || range.Min === 'Col-Min', value: range.Min, onChange: (event) => {
|
|
61
|
+
const { value } = event.target;
|
|
62
|
+
this.changeRangeMin(index, value);
|
|
63
|
+
}, mr: 2 })),
|
|
64
|
+
React.createElement(rebass_1.Flex, { flexDirection: "column" },
|
|
65
|
+
index === list.length - 1 && (React.createElement(CheckBox_1.CheckBox, { mt: 0, mb: 1, onClick: () => this.setRangeColMax(range), checked: range.Max === 'Col-Max', fontSize: 3, disabled: this.props.disabled }, "Col Max")),
|
|
66
|
+
React.createElement(Input_1.default, { value: range.Max, type: typeof range.Max == 'number' ? 'number' : 'text', disabled: this.props.disabled || range.Max === 'Col-Max', onChange: (event) => {
|
|
67
|
+
const { value } = event.target;
|
|
68
|
+
this.changeRangeMax(index, value);
|
|
69
|
+
}, mr: 2 })),
|
|
70
|
+
React.createElement(rebass_1.Flex, { alignItems: "center", height: "100%" },
|
|
71
|
+
React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: range.Color, onChange: (color) => {
|
|
72
|
+
this.changeRangeColor(index, color);
|
|
73
|
+
}, mr: 2, height: 33 })),
|
|
74
|
+
this.props.showRangeDirection && (React.createElement(CheckBox_1.CheckBox, { disabled: this.props.disabled, checked: range.ReverseGradient && range.ReverseGradient == true, onChange: (checked) => this.changeRangeDirectionUp(index, checked) }, "Reverse Gradient")),
|
|
75
|
+
React.createElement(SimpleButton_1.default, { ml: 2, mb: 1, icon: "delete", disabled: this.props.disabled || (this.state.ranges && this.state.ranges.length == 1), onClick: () => this.removeRange(index) })))),
|
|
71
76
|
React.createElement("div", null,
|
|
72
|
-
React.createElement(SimpleButton_1.default, { variant: "raised", "data-name": "add", onClick: () => this.addRange() }, "Add New Range"))))),
|
|
77
|
+
React.createElement(SimpleButton_1.default, { disabled: this.props.disabled, variant: "raised", "data-name": "add", onClick: () => this.addRange() }, "Add New Range"))))),
|
|
73
78
|
this.state.rangesType == 'ColumnComparison' && (React.createElement(Tabs_1.Tabs, { autoFocus: false, marginTop: 2 },
|
|
74
79
|
React.createElement(Tabs_1.Tabs.Tab, null, "Column Comparison"),
|
|
75
80
|
React.createElement(Tabs_1.Tabs.Content, null,
|
|
@@ -80,14 +85,14 @@ class RangesComponent extends React.Component {
|
|
|
80
85
|
this.props.api.internalApi.getCorrectEnglishVariant('Colour'),
|
|
81
86
|
" for the Bar."),
|
|
82
87
|
React.createElement(FormLayout_1.default, { columns: ['label', 'first', 'or', 'second'], sizes: ['auto', 'auto', 'auto', '1fr'] },
|
|
83
|
-
React.createElement(FormLayout_1.FormRow, { label: "Min Value:", first: React.createElement(Input_1.default, { type: "number", value: comparisonMinValueNumber, onChange: (e) => {
|
|
88
|
+
React.createElement(FormLayout_1.FormRow, { label: "Min Value:", first: React.createElement(Input_1.default, { disabled: this.props.disabled, type: "number", value: comparisonMinValueNumber, onChange: (e) => {
|
|
84
89
|
this.changeColumnComparisonMinValue(e);
|
|
85
|
-
} }), or: "OR", second: React.createElement(ColumnSelector_1.ColumnSelector, { style: { maxWidth: '15rem' }, SelectedColumnIds: [comparisonMinValueColumnId], ColumnList: this.props.api.columnApi.getNumericColumns(), onColumnChange: (columns) => this.onMinColumnSelectedChanged(columns), SelectionMode: Enums_1.SelectionMode.Single }) }),
|
|
90
|
+
} }), or: "OR", second: React.createElement(ColumnSelector_1.ColumnSelector, { disabled: this.props.disabled, style: { maxWidth: '15rem' }, SelectedColumnIds: [comparisonMinValueColumnId], ColumnList: this.props.api.columnApi.getNumericColumns(), onColumnChange: (columns) => this.onMinColumnSelectedChanged(columns), SelectionMode: Enums_1.SelectionMode.Single }) }),
|
|
86
91
|
' ',
|
|
87
|
-
React.createElement(FormLayout_1.FormRow, { label: "Max Value:", first: React.createElement(Input_1.default, { type: "number", value: comparisonMaxValueNumber, onChange: (e) => {
|
|
92
|
+
React.createElement(FormLayout_1.FormRow, { label: "Max Value:", first: React.createElement(Input_1.default, { disabled: this.props.disabled, type: "number", value: comparisonMaxValueNumber, onChange: (e) => {
|
|
88
93
|
this.changeColumnComparisonMaxValue(e);
|
|
89
|
-
} }), or: "OR", second: React.createElement(ColumnSelector_1.ColumnSelector, { style: { maxWidth: '15rem' }, SelectedColumnIds: [comparisonMaxValueColumnId], ColumnList: this.props.api.columnApi.getNumericColumns(), onColumnChange: (columns) => this.onMaxColumnSelectedChanged(columns), SelectionMode: Enums_1.SelectionMode.Single }) }),
|
|
90
|
-
React.createElement(FormLayout_1.FormRow, { label: `Bar ${this.props.api.internalApi.getCorrectEnglishVariant('Colour')}`, first: React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: comparisonColor, onChange: (color) => {
|
|
94
|
+
} }), or: "OR", second: React.createElement(ColumnSelector_1.ColumnSelector, { disabled: this.props.disabled, style: { maxWidth: '15rem' }, SelectedColumnIds: [comparisonMaxValueColumnId], ColumnList: this.props.api.columnApi.getNumericColumns(), onColumnChange: (columns) => this.onMaxColumnSelectedChanged(columns), SelectionMode: Enums_1.SelectionMode.Single }) }),
|
|
95
|
+
React.createElement(FormLayout_1.FormRow, { label: `Bar ${this.props.api.internalApi.getCorrectEnglishVariant('Colour')}`, first: React.createElement(ColorPicker_1.ColorPicker, { disabled: this.props.disabled, api: this.props.api, value: comparisonColor, onChange: (color) => {
|
|
91
96
|
this.changeColumnComparisonColor(color);
|
|
92
97
|
} }) }))))))));
|
|
93
98
|
}
|
|
@@ -144,14 +149,45 @@ class RangesComponent extends React.Component {
|
|
|
144
149
|
ranges.splice(index, 1);
|
|
145
150
|
this.props.updateRanges(ranges);
|
|
146
151
|
}
|
|
152
|
+
setRangeColMin(range) {
|
|
153
|
+
const newRanges = this.state.ranges.map((rangeItem) => {
|
|
154
|
+
if (rangeItem === range) {
|
|
155
|
+
let newMin = rangeItem.Min === 'Col-Min' ? this.props.minMaxRangeValues.min : 'Col-Min';
|
|
156
|
+
return Object.assign(Object.assign({}, rangeItem), { Min: newMin });
|
|
157
|
+
}
|
|
158
|
+
return rangeItem;
|
|
159
|
+
});
|
|
160
|
+
this.setState({ ranges: newRanges }, () => this.props.updateRanges(this.state.ranges));
|
|
161
|
+
}
|
|
162
|
+
setRangeColMax(range) {
|
|
163
|
+
const newRanges = this.state.ranges.map((rangeItem) => {
|
|
164
|
+
if (rangeItem === range) {
|
|
165
|
+
let newMax = rangeItem.Max === 'Col-Max' ? this.props.minMaxRangeValues.max : 'Col-Max';
|
|
166
|
+
return Object.assign(Object.assign({}, rangeItem), { Max: newMax });
|
|
167
|
+
}
|
|
168
|
+
return rangeItem;
|
|
169
|
+
});
|
|
170
|
+
this.setState({ ranges: newRanges }, () => this.props.updateRanges(this.state.ranges));
|
|
171
|
+
}
|
|
147
172
|
addRange() {
|
|
148
173
|
const lastRange = this.state.ranges[this.state.ranges.length - 1];
|
|
149
|
-
|
|
150
|
-
|
|
174
|
+
let previousRange = lastRange;
|
|
175
|
+
let Min = null;
|
|
176
|
+
if (lastRange.Max === 'Col-Max') {
|
|
177
|
+
Min = this.props.minMaxRangeValues.max;
|
|
178
|
+
previousRange = Object.assign(Object.assign({}, previousRange), { Max: this.props.minMaxRangeValues.max });
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
Min = lastRange.Max;
|
|
182
|
+
}
|
|
183
|
+
const newRange = {
|
|
184
|
+
Min,
|
|
151
185
|
Max: lastRange.Max,
|
|
152
186
|
Color: (0, UIHelper_1.getHexForName)(UIHelper_1.GRAY),
|
|
153
|
-
}
|
|
154
|
-
|
|
187
|
+
};
|
|
188
|
+
const newRanges = [...this.state.ranges.slice(0, -1), previousRange, newRange];
|
|
189
|
+
// this.state.ranges.push(newRange);
|
|
190
|
+
this.setState({ ranges: newRanges }, () => this.props.updateRanges(this.state.ranges));
|
|
155
191
|
}
|
|
156
192
|
changeColumnComparisonMinValue(event) {
|
|
157
193
|
let e = event.target;
|
|
@@ -32,31 +32,31 @@ class ScopeComponent extends React.Component {
|
|
|
32
32
|
React.createElement(HelpBlock_1.default, { marginBottom: 1 }, displayMessage),
|
|
33
33
|
' ',
|
|
34
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) }, "
|
|
35
|
+
React.createElement(Radio_1.default, { value: "Row", checked: this.state.ScopeChoice == 'All', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "All Columns"),
|
|
36
36
|
' ',
|
|
37
|
-
React.createElement(Radio_1.default, { marginLeft: 3, value: "Column", checked: this.state.ScopeChoice == 'Column', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "Column(s)"),
|
|
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
38
|
' ',
|
|
39
39
|
React.createElement(Radio_1.default, { marginLeft: 3, value: "DataType", checked: this.state.ScopeChoice == 'DataType', onChange: (checked, e) => this.onScopeSelectChanged(e) }, "DataType(s)")),
|
|
40
40
|
this.state.ScopeChoice == 'Column' && (React.createElement(rebass_1.Box, { marginBottom: 2, "data-name": "column-scope" },
|
|
41
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
42
|
this.state.ScopeChoice == 'DataType' && (React.createElement(Panel_1.default, { "data-name": "datatype-scope", variant: "modern" },
|
|
43
43
|
React.createElement(rebass_1.Flex, { flexDirection: "row" },
|
|
44
|
-
this.state.availableDataTypes.includes('Date') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", checked: this.state.componentScope &&
|
|
44
|
+
this.state.availableDataTypes.includes('Date') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "date", checked: this.state.componentScope &&
|
|
45
45
|
'DataTypes' in this.state.componentScope &&
|
|
46
46
|
this.props.api.scopeApi
|
|
47
47
|
.getDataTypesInScope(this.state.componentScope)
|
|
48
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", checked: this.state.componentScope &&
|
|
49
|
+
this.state.availableDataTypes.includes('Number') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "number", checked: this.state.componentScope &&
|
|
50
50
|
'DataTypes' in this.state.componentScope &&
|
|
51
51
|
this.props.api.scopeApi
|
|
52
52
|
.getDataTypesInScope(this.state.componentScope)
|
|
53
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", checked: this.state.componentScope &&
|
|
54
|
+
this.state.availableDataTypes.includes('String') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "string", checked: this.state.componentScope &&
|
|
55
55
|
'DataTypes' in this.state.componentScope &&
|
|
56
56
|
this.props.api.scopeApi
|
|
57
57
|
.getDataTypesInScope(this.state.componentScope)
|
|
58
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", checked: this.state.componentScope &&
|
|
59
|
+
this.state.availableDataTypes.includes('Boolean') && (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": "boolean", checked: this.state.componentScope &&
|
|
60
60
|
'DataTypes' in this.state.componentScope &&
|
|
61
61
|
this.props.api.scopeApi
|
|
62
62
|
.getDataTypesInScope(this.state.componentScope)
|
|
@@ -9,6 +9,7 @@ export interface ColumnSelectorProps extends React.HTMLProps<ColumnSelector> {
|
|
|
9
9
|
className?: string;
|
|
10
10
|
placeHolder?: string;
|
|
11
11
|
showClearButton?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
12
13
|
}
|
|
13
14
|
export declare class ColumnSelector extends React.Component<ColumnSelectorProps, {}> {
|
|
14
15
|
render(): JSX.Element;
|
|
@@ -23,6 +23,7 @@ class ColumnSelector extends React.Component {
|
|
|
23
23
|
return {
|
|
24
24
|
label: column.friendlyName,
|
|
25
25
|
value: column.columnId,
|
|
26
|
+
disabled: this.props.disabled,
|
|
26
27
|
onClick: () => {
|
|
27
28
|
const selected = sortedColumns.filter((c) => c.columnId === column.columnId);
|
|
28
29
|
if (!selected.length) {
|
|
@@ -40,7 +41,7 @@ class ColumnSelector extends React.Component {
|
|
|
40
41
|
return (React.createElement("div", { "data-name": 'column-selector' },
|
|
41
42
|
React.createElement(FormLayout_1.default, { columns: [{ name: 'columnSelector', style: { display: 'flex' } }], style: this.props.style },
|
|
42
43
|
React.createElement(FormLayout_1.FormRow, null,
|
|
43
|
-
React.createElement(DropdownButton_1.default, { marginRight: 2, columns: ['label'], showClearButton: currentColumnName != 'Select a column', onClear: () => this.onClearButton(), style: { width: '100%', fontSize: 'small' }, className: "ab-DashboardToolbar__Layout__select", items: sortedColumnOptions, disabled: sortedColumnOptions.length == 0 }, currentColumnName)))));
|
|
44
|
+
React.createElement(DropdownButton_1.default, { marginRight: 2, columns: ['label'], showClearButton: currentColumnName != 'Select a column', onClear: () => this.onClearButton(), style: { width: '100%', fontSize: 'small' }, className: "ab-DashboardToolbar__Layout__select", items: sortedColumnOptions, disabled: this.props.disabled || sortedColumnOptions.length == 0 }, currentColumnName)))));
|
|
44
45
|
}
|
|
45
46
|
onClearButton() {
|
|
46
47
|
this.props.onColumnChange([]);
|
|
@@ -74,8 +74,8 @@ class ColumnValueSelector extends React.Component {
|
|
|
74
74
|
]
|
|
75
75
|
: this.state.distinctColumnValues;
|
|
76
76
|
const dd = (React.createElement("div", null,
|
|
77
|
-
React.createElement(DropdownButton_1.default, { className: className, columns: ['label'], variant: "text", showClearButton: true, onClear: () => this.onSelectedValueChange([]), style: { fontSize: 'small' }, disabled: this.props.disabled, items: items, onExpand: this.handleSelectedValueExpand }, this.props.selectedColumnValue ? this.props.selectedColumnValue : placeholderText)));
|
|
78
|
-
const input = (React.createElement(AdaptableInput_1.default, { type: this.props.selectedColumn
|
|
77
|
+
React.createElement(DropdownButton_1.default, { "data-name": "bulkupdate-value-selector", className: className, columns: ['label'], variant: "text", showClearButton: true, onClear: () => this.onSelectedValueChange([]), style: { fontSize: 'small' }, disabled: this.props.disabled, items: items, onExpand: this.handleSelectedValueExpand }, this.props.selectedColumnValue ? this.props.selectedColumnValue : placeholderText)));
|
|
78
|
+
const input = (React.createElement(AdaptableInput_1.default, { "data-name": "bulkupdate-value-input", type: this.props.selectedColumn
|
|
79
79
|
? UIHelper_1.default.getDescriptionForDataType(this.props.selectedColumn.dataType)
|
|
80
80
|
: 'text', placeholder: this.props.selectedColumn
|
|
81
81
|
? UIHelper_1.default.getPlaceHolderforDataType(this.props.selectedColumn.dataType)
|
|
@@ -25,7 +25,7 @@ class StyleComponent extends React.Component {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
render() {
|
|
28
|
-
const Cmp = this.props.headless ?
|
|
28
|
+
const Cmp = this.props.headless ? rebass_1.Box : Panel_1.default;
|
|
29
29
|
const cmpProps = this.props.headless
|
|
30
30
|
? {}
|
|
31
31
|
: {
|
|
@@ -36,15 +36,15 @@ class StyleComponent extends React.Component {
|
|
|
36
36
|
const styleClassNames = this.props.api.userInterfaceApi.getStyleClassNames();
|
|
37
37
|
const colourSpellingVariant = this.props.api.internalApi.getCorrectEnglishVariant('Colour');
|
|
38
38
|
const coloursSpellingVariant = this.props.api.internalApi.getCorrectEnglishVariant('colours');
|
|
39
|
-
return (React.createElement(Cmp, Object.assign({}, cmpProps),
|
|
39
|
+
return (React.createElement(Cmp, Object.assign({}, cmpProps, { className: "ab-StyleComponent" }),
|
|
40
40
|
ArrayExtensions_1.default.IsNotNullOrEmpty(styleClassNames) && (React.createElement(rebass_1.Flex, { flexDirection: "row", padding: 2 },
|
|
41
|
-
React.createElement(Radio_1.default, { value: "Predicate", checked: this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(checked) }, "Use Style Class Name"),
|
|
41
|
+
React.createElement(Radio_1.default, { "data-name": "show-class-name", value: "Predicate", checked: this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(checked) }, "Use Style Class Name"),
|
|
42
42
|
' ',
|
|
43
|
-
React.createElement(Radio_1.default, { marginLeft: 3, value: "Expression", checked: !this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(!checked) }, "Create Style"),
|
|
43
|
+
React.createElement(Radio_1.default, { "data-name": "create-style", marginLeft: 3, value: "Expression", checked: !this.state.ShowClassName, onChange: (checked) => this.onShowClassNameChanged(!checked) }, "Create Style"),
|
|
44
44
|
' ')),
|
|
45
45
|
this.state.ShowClassName ? (React.createElement("div", null,
|
|
46
46
|
React.createElement(HelpBlock_1.default, { fontSize: 2 }, 'Select a CSS Class Name'),
|
|
47
|
-
React.createElement(DropdownButton_1.default, { margin: 3, placeholder: "Select", variant: "outlined", columns: ['label'], tone: "none", disabled: ArrayExtensions_1.default.IsNullOrEmpty(styleClassNames), style: {
|
|
47
|
+
React.createElement(DropdownButton_1.default, { "data-name": "select-class-anme", margin: 3, placeholder: "Select", variant: "outlined", columns: ['label'], tone: "none", disabled: ArrayExtensions_1.default.IsNullOrEmpty(styleClassNames), style: {
|
|
48
48
|
minWidth: '15rem',
|
|
49
49
|
whiteSpace: 'nowrap',
|
|
50
50
|
overflow: 'hidden',
|
|
@@ -64,35 +64,30 @@ class StyleComponent extends React.Component {
|
|
|
64
64
|
coloursSpellingVariant),
|
|
65
65
|
React.createElement(FormLayout_1.default, { columns: [1, 2] },
|
|
66
66
|
React.createElement(FormLayout_1.FormRow, null,
|
|
67
|
-
React.createElement(CheckBox_1.CheckBox, { value: "existing", margin: 1, checked: !!this.state.componentStyle.BackColor, onChange: (checked) => this.onUseBackColorCheckChange(checked) },
|
|
67
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-background-color", value: "existing", margin: 1, checked: !!this.state.componentStyle.BackColor, onChange: (checked) => this.onUseBackColorCheckChange(checked) },
|
|
68
68
|
"Set Back ",
|
|
69
69
|
colourSpellingVariant),
|
|
70
70
|
this.state.componentStyle.BackColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.BackColor, onChange: (x) => this.onBackColorSelectChange(x) })) : (React.createElement("span", null))),
|
|
71
71
|
React.createElement(FormLayout_1.FormRow, null,
|
|
72
|
-
React.createElement(CheckBox_1.CheckBox, { margin: 1, value: "existing", checked: this.state.componentStyle.ForeColor ? true : false, onChange: (checked) => this.onUseForeColorCheckChange(checked) },
|
|
72
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-foreground-color", margin: 1, value: "existing", checked: this.state.componentStyle.ForeColor ? true : false, onChange: (checked) => this.onUseForeColorCheckChange(checked) },
|
|
73
73
|
"Set Fore ",
|
|
74
74
|
colourSpellingVariant),
|
|
75
75
|
this.state.componentStyle.ForeColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.ForeColor, onChange: (x) => this.onForeColorSelectChange(x) })) : (React.createElement("span", null))),
|
|
76
76
|
React.createElement(FormLayout_1.FormRow, null,
|
|
77
|
-
React.createElement(CheckBox_1.CheckBox, { margin: 1, value: "existing", checked: this.state.componentStyle.BorderColor ? true : false, onChange: (checked) => this.onUseBorderColorCheckChange(checked) },
|
|
77
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-border-color", margin: 1, value: "existing", checked: this.state.componentStyle.BorderColor ? true : false, onChange: (checked) => this.onUseBorderColorCheckChange(checked) },
|
|
78
78
|
"Set Border ",
|
|
79
79
|
colourSpellingVariant),
|
|
80
80
|
this.state.componentStyle.BorderColor != null ? (React.createElement(ColorPicker_1.ColorPicker, { api: this.props.api, value: this.state.componentStyle.BorderColor, onChange: (x) => this.onBorderColorSelectChange(x) })) : (React.createElement("span", null)))),
|
|
81
81
|
React.createElement(HelpBlock_1.default, { fontSize: 2, marginTop: 2, marginBottom: 2 }, "Set the font properties of the Style"),
|
|
82
82
|
React.createElement(FormLayout_1.default, { columns: [1] },
|
|
83
83
|
React.createElement(FormLayout_1.FormRow, null,
|
|
84
|
-
React.createElement(CheckBox_1.CheckBox, { margin: 1, value: Enums_1.FontWeight.Normal.toString(), checked: this.state.componentStyle.FontWeight == Enums_1.FontWeight.Bold, onChange: (checked) => this.onFontWeightChange(checked) }, "Bold")),
|
|
84
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-weight-bold", margin: 1, value: Enums_1.FontWeight.Normal.toString(), checked: this.state.componentStyle.FontWeight == Enums_1.FontWeight.Bold, onChange: (checked) => this.onFontWeightChange(checked) }, "Bold")),
|
|
85
85
|
React.createElement(FormLayout_1.FormRow, null,
|
|
86
|
-
React.createElement(CheckBox_1.CheckBox, { margin: 1, value: Enums_1.FontStyle.Normal.toString(), checked: this.state.componentStyle.FontStyle == Enums_1.FontStyle.Italic, onChange: (checked) => this.onFontStyleChange(checked) }, "Italic")),
|
|
86
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-style-italic", margin: 1, value: Enums_1.FontStyle.Normal.toString(), checked: this.state.componentStyle.FontStyle == Enums_1.FontStyle.Italic, onChange: (checked) => this.onFontStyleChange(checked) }, "Italic")),
|
|
87
87
|
React.createElement(FormLayout_1.FormRow, null,
|
|
88
|
-
React.createElement(CheckBox_1.CheckBox, { margin: 1, checked: this.state.componentStyle.FontSize ? true : false, onChange: (checked) => this.onUseFontSizeCheckChange(checked) }, "Set Font Size")),
|
|
88
|
+
React.createElement(CheckBox_1.CheckBox, { "data-name": "set-font-size", margin: 1, checked: this.state.componentStyle.FontSize ? true : false, onChange: (checked) => this.onUseFontSizeCheckChange(checked) }, "Set Font Size")),
|
|
89
89
|
React.createElement(FormLayout_1.FormRow, null, this.state.componentStyle.FontSize != null && (React.createElement(rebass_1.Flex, { flexDirection: "row", alignItems: "center" },
|
|
90
|
-
React.createElement(DropdownButton_1.default, {
|
|
91
|
-
whiteSpace: 'nowrap',
|
|
92
|
-
overflow: 'hidden',
|
|
93
|
-
textOverflow: 'ellipsis',
|
|
94
|
-
maxWidth: 'inherit',
|
|
95
|
-
}, mr: 1, items: EnumExtensions_1.EnumExtensions.getNames(Enums_1.FontSize).map((enumName) => ({
|
|
90
|
+
React.createElement(DropdownButton_1.default, { mr: 1, items: EnumExtensions_1.EnumExtensions.getNames(Enums_1.FontSize).map((enumName) => ({
|
|
96
91
|
value: enumName,
|
|
97
92
|
label: enumName,
|
|
98
93
|
onClick: () => this.onFontSizeChange(enumName),
|
|
@@ -145,12 +140,12 @@ class StyleComponent extends React.Component {
|
|
|
145
140
|
this.props.UpdateStyle(this.state.componentStyle);
|
|
146
141
|
}
|
|
147
142
|
onFontWeightChange(checked) {
|
|
148
|
-
let fontWeight = checked ? Enums_1.FontWeight.Bold :
|
|
143
|
+
let fontWeight = checked ? Enums_1.FontWeight.Bold : undefined;
|
|
149
144
|
this.state.componentStyle.FontWeight = fontWeight;
|
|
150
145
|
this.props.UpdateStyle(this.state.componentStyle);
|
|
151
146
|
}
|
|
152
147
|
onFontStyleChange(checked) {
|
|
153
|
-
let fontStyle = checked ? Enums_1.FontStyle.Italic :
|
|
148
|
+
let fontStyle = checked ? Enums_1.FontStyle.Italic : undefined;
|
|
154
149
|
this.state.componentStyle.FontStyle = fontStyle;
|
|
155
150
|
this.props.UpdateStyle(this.state.componentStyle);
|
|
156
151
|
}
|
|
@@ -24,17 +24,7 @@ interface AdaptableToolPanelProps {
|
|
|
24
24
|
onCollapseToolPanel: (toolPanel: AdaptableToolPanel | string) => ToolPanelRedux.ToolPanelCollapseToolPanelAction;
|
|
25
25
|
}
|
|
26
26
|
export declare const ConnectedAdaptableToolPanel: import("react-redux").ConnectedComponent<(props: AdaptableToolPanelProps) => JSX.Element, import("react-redux").Omit<AdaptableToolPanelProps, "onClick" | "Columns" | "ModuleButtons" | "ToolPanels" | "MainMenuItems" | "onNewColumnListOrder" | "onShowToolPanel" | "onHideToolPanel" | "onExpandToolPanel" | "onCollapseToolPanel">>;
|
|
27
|
-
export declare const getAdaptableToolPanelAgGridComponent: (adaptable
|
|
28
|
-
new (): {
|
|
29
|
-
gui: HTMLElement;
|
|
30
|
-
unmountReactRoot?: VoidFunction;
|
|
31
|
-
init(params?: IToolPanelParams): void;
|
|
32
|
-
getGui(): HTMLElement;
|
|
33
|
-
refresh(): void;
|
|
34
|
-
destroy(): void;
|
|
35
|
-
};
|
|
36
|
-
};
|
|
37
|
-
export declare const AdaptableToolPanelAgGridComponent: {
|
|
27
|
+
export declare const getAdaptableToolPanelAgGridComponent: (adaptable: IAdaptable) => (() => JSX.Element) | {
|
|
38
28
|
new (): {
|
|
39
29
|
gui: HTMLElement;
|
|
40
30
|
unmountReactRoot?: VoidFunction;
|