mdt-client 31.3.21 → 31.3.22
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/dist/index.d.ts +11 -10
- package/dist/index.js +16 -16
- package/package.json +29 -29
- package/readme.md +15 -15
- package/types/common/Datasource.d.ts +9 -9
- package/types/common/Field.d.ts +51 -51
- package/types/common/FieldSettings.schema.d.ts +8 -8
- package/types/common/MdtField.d.ts +9 -9
- package/types/common/MdtObject.d.ts +7 -7
- package/types/common/Record.d.ts +27 -27
- package/types/common/Table.d.ts +66 -66
- package/types/common/list/group/groupTypes.d.ts +30 -30
- package/types/common/list/hierarchy/hierarchyTypes.d.ts +48 -48
- package/types/common/serverMessage/ServerMessageTypes.d.ts +17 -17
- package/types/components/baseFormControls/input/inputOptions.d.ts +31 -30
- package/types/components/baseFormControls/maskedInput/MaskFormatter.types.d.ts +2 -2
- package/types/components/button/baseButton/buttonOptions.d.ts +12 -12
- package/types/components/buttonGroup/buttonGroupOptions.d.ts +7 -7
- package/types/components/dropdown/menu/item/dropdownInputItemOptions.d.ts +5 -5
- package/types/components/dropdown/menu/item/dropdownItemWrapOptions.d.ts +19 -19
- package/types/components/dropdown/menuActionItem/dropdownMenuItemOptions.d.ts +32 -32
- package/types/components/form/fieldView/fieldViewOptions.d.ts +13 -13
- package/types/components/form/header/types.d.ts +14 -0
- package/types/components/form/label/labelOptions.d.ts +22 -22
- package/types/components/icon/iconOptions.d.ts +22 -21
- package/types/components/iconButton/iconButtonOptions.d.ts +10 -9
- package/types/components/processPrincipalsList/ProcessPrincipalsListItem.d.ts +5 -5
- package/types/components/resizablePanels/panelTitle/panelTitleOptions.d.ts +16 -16
- package/types/components/resizablePanels/panelToolbar/panelToolbarOptions.d.ts +4 -4
- package/types/components/resizablePanels/resizablePanel/resizablePanelOptions.d.ts +24 -24
- package/types/components/resizablePanels/resizablePanelsOptions.d.ts +22 -22
- package/types/components/toggleablePanels/toggleablePanelsOptions.d.ts +40 -40
- package/types/data/active/ActivationListAdapterTypes.d.ts +6 -6
- package/types/data/periods/helpers/types.d.ts +4 -0
- package/types/datasources/FetchResult.d.ts +5 -5
- package/types/helpers/IUi.d.ts +2 -2
- package/types/helpers/deleteFromArray.d.ts +1 -1
- package/types/helpers/events/EventEmitter.d.ts +12 -12
- package/types/helpers/fireEvent.d.ts +4 -4
- package/types/helpers/formatOptions.d.ts +16 -14
- package/types/helpers/formattedText.d.ts +8 -8
- package/types/helpers/pipeline/ImmutableArgPipeline.d.ts +7 -7
- package/types/helpers/pipeline/Pipeline.d.ts +20 -20
- package/types/helpers/redraw.d.ts +16 -16
- package/types/helpers/types.d.ts +85 -84
- package/types/helpers/ui/elementModificators/focusableComponent.d.ts +15 -14
- package/types/helpers/ui/elementModificators/modificatorsTypes.d.ts +4 -4
- package/types/helpers/ui/keyboardUtils/getKeySymbol.d.ts +2 -2
- package/types/helpers/ui/keyboardUtils/keyboardUtils.d.ts +23 -23
- package/types/helpers/ui/keyboardUtils/osByUserAgent.d.ts +1 -1
- package/types/helpers/utils/classNames.d.ts +20 -20
- package/types/helpers/utils/keyStorage/KeyStorage.d.ts +6 -6
- package/types/helpers/utils/memoization/memoize.d.ts +18 -18
- package/types/helpers/utils/object.d.ts +4 -4
- package/types/helpers/utils/stringifyControlSize.d.ts +3 -3
- package/types/helpers/utils/valued/getValued.d.ts +18 -18
- package/types/helpers/zone/IZone.d.ts +8 -7
- package/types/security/PermissionLevel.d.ts +40 -40
- package/types/security/User.d.ts +19 -19
- package/types/services/HotkeyManager.d.ts +6 -6
- package/types/services/IFilter.d.ts +322 -322
- package/types/services/ModuleData.d.ts +9 -9
- package/types/services/api/ApiAccessor/apiV1Types.d.ts +266 -266
- package/types/services/api/ApiAccessor/apiV2Types.d.ts +583 -583
- package/types/services/api/ApiAccessor/binding/bindingApiTypes.d.ts +37 -37
- package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/count/count.d.ts +10 -10
- package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/query/exts/hierarchy/hierarchyQueryHelpersTypes.d.ts +28 -28
- package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/query/exts/placeIn/placeInQueryTypes.d.ts +9 -9
- package/types/services/api/ApiAccessorRequestAdapter/handlers/messageTypes.d.ts +37 -37
- package/types/services/api/ApiAccessorRequestAdapter/message/apiV2MessageTypes.d.ts +2 -2
- package/types/services/api/ApiRequestOptions.d.ts +43 -43
- package/types/services/api/BaseQuery.d.ts +23 -23
- package/types/services/api/Query.d.ts +59 -59
- package/types/services/api/QuerySorting.d.ts +18 -18
- package/types/services/api/ServerResonseType.d.ts +2 -2
- package/types/services/commands/Command.d.ts +22 -22
- package/types/services/commands/CommandGroup.d.ts +15 -15
- package/types/services/commands/CommandManager.d.ts +77 -77
- package/types/services/customModules/facades/Form/IFieldControlFacade.d.ts +26 -26
- package/types/services/customModules/facades/Form/IFieldControlManagerFacade.d.ts +36 -36
- package/types/services/customModules/facades/Form/IFieldStateFacade.d.ts +13 -13
- package/types/services/customModules/facades/Form/IFormControlFacade.d.ts +133 -133
- package/types/services/customModules/facades/Form/IFormFacade.d.ts +101 -101
- package/types/services/customModules/facades/Form/IFormLayout.d.ts +12 -0
- package/types/services/customModules/facades/IAppFacade.d.ts +38 -38
- package/types/services/customModules/facades/IAuthFacade.d.ts +9 -9
- package/types/services/customModules/facades/ILegacyFacade.d.ts +151 -151
- package/types/services/customModules/facades/IMdtFacade.d.ts +82 -81
- package/types/services/customModules/facades/IModuleRegistryFacade.d.ts +5 -5
- package/types/services/customModules/facades/IPageFacade.d.ts +7 -7
- package/types/services/customModules/facades/List/Column/IColumnFacade.d.ts +7 -7
- package/types/services/customModules/facades/List/IListCellFacade.d.ts +8 -8
- package/types/services/customModules/facades/List/IListComponentFacade.d.ts +10 -10
- package/types/services/customModules/facades/List/IListControlFacade.d.ts +88 -88
- package/types/services/customModules/facades/List/IListRowFacade.d.ts +2 -2
- package/types/services/customModules/facades/List/IListServiceFacade.d.ts +53 -53
- package/types/services/customModules/facades/components/CodeEditorFacade.d.ts +9 -9
- package/types/services/customModules/facades/components/ModalFacade.d.ts +4 -4
- package/types/services/customModules/facades/formDashboard/IFormDashboard.d.ts +20 -15
- package/types/services/customModules/facades/internalModules/importFormCtrl.types.d.ts +76 -76
- package/types/services/customModules/facades/internalModules/importModuleFacade.d.ts +48 -48
- package/types/services/customModules/facades/internalModules/modulesFacadeTypes.d.ts +11 -11
- package/types/services/customModules/facades/internalModules/statusFacade.d.ts +13 -13
- package/types/services/customModules/facades/record/IRecordFacade.d.ts +13 -13
- package/types/services/customModules/facades/record/IRecordManagerFacade.d.ts +5 -5
- package/types/services/customModules/facades/schema/IFieldFacade.d.ts +12 -11
- package/types/services/customModules/facades/schema/IObjectFacade.d.ts +15 -15
- package/types/services/customModules/facades/schema/ISchemaFacade.d.ts +11 -11
- package/types/services/customModules/facades/services/CommandManagerFacade.d.ts +11 -11
- package/types/services/customModules/facades/services/IListButtonExtendPipelineService.d.ts +13 -13
- package/types/services/customModules/facades/services/INavigationFacade.d.ts +87 -87
- package/types/services/customModules/facades/services/ISecurityFacade.d.ts +13 -13
- package/types/services/customModules/facades/utils/IApiFacade.d.ts +91 -91
- package/types/services/customModules/facades/utils/IUiComponentsFacade.d.ts +92 -85
- package/types/services/customModules/facades/utils/IUiFacade.d.ts +84 -83
- package/types/services/customModules/facades/utils/IUtilsFacade.d.ts +26 -26
- package/types/services/customModules/facades/utils/ImUtilsFacade.d.ts +26 -25
- package/types/services/dropdown/IDropDownMenu.d.ts +41 -40
- package/types/services/e2e/e2eServiceType.d.ts +11 -11
- package/types/views/controls/Control.d.ts +7 -7
- package/types/views/controls/panels/panelOptions.d.ts +15 -15
- package/types/views/form/controls/commonControl/ICommonControl.d.ts +29 -28
- package/types/views/form/controls/fileupload/FileInputFacade.types.d.ts +6 -6
- package/types/views/form/controls/monacoEditor/MonacoCodeOptions.schema.d.ts +23 -23
- package/types/views/form/controls/monacoEditor/jsonSchemas/Button.schema.d.ts +70 -70
- package/types/views/form/controls/picker/multiPickerFacade/IMultiPickerFacade.d.ts +36 -36
- package/types/views/form/controls/toggleablePanels/editor/toggleablePanelsEditorFacadeOptions.d.ts +21 -21
- package/types/views/form/formTypes.d.ts +4 -4
- package/types/views/form/schema/FormPageOptions.schema.d.ts +19 -19
- package/types/views/list/IListView.d.ts +71 -70
- package/types/views/list/schema/ListPageOptions.schema.d.ts +116 -116
- package/types/views/page/PageZoneTypes.d.ts +1 -1
- package/types/views/page/charts/ChartControlOptions.schema.d.ts +617 -617
- package/types/views/page/charts/facade/IChartControlFacade.d.ts +25 -0
- package/types/views/page/charts/facade/I/320/241hartControlFacade.d.ts +24 -24
- package/types/views/page/charts/reportDashboard/config/chartConfig.d.ts +31 -0
- package/types/views/page/charts/reportDashboard/config/filterConfig.d.ts +52 -0
- package/types/views/page/charts/reportDashboard/config/listConfig.d.ts +9 -0
- package/types/views/page/charts/reportDashboard/config/reportDashboardConfig.d.ts +45 -0
- package/types/views/page/charts/reportDashboard/controls/dynamicChart/dynamicChartControlPublicOptions.d.ts +3 -0
- package/types/views/page/charts/reportDashboard/index.d.ts +5 -0
- package/types/views/page/charts/reportDashboard/utils/formJsonVarParser.d.ts +13 -0
|
@@ -1,617 +1,617 @@
|
|
|
1
|
-
declare type MdtChartsDataRow = Record<string, any>;
|
|
2
|
-
declare type TitleFunctionParams = {
|
|
3
|
-
data: MdtChartsDataRow[];
|
|
4
|
-
};
|
|
5
|
-
declare type TitleFunction = (params: TitleFunctionParams) => string;
|
|
6
|
-
declare type Title = string | TitleFunction;
|
|
7
|
-
export declare type Orientation = "horizontal" | "vertical";
|
|
8
|
-
declare type AxisPosition = "start" | "end";
|
|
9
|
-
export declare type AxisLabelPosition = "vertical" | "horizontal";
|
|
10
|
-
export declare type TwoDimChartLegendPosition = "top" | "bottom";
|
|
11
|
-
declare type ChartField = string;
|
|
12
|
-
export declare type TwoDimensionalValueField = ChartField | {
|
|
13
|
-
name: string;
|
|
14
|
-
color?: string;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* @defaultSnippets
|
|
18
|
-
* [
|
|
19
|
-
* {
|
|
20
|
-
* "label": "Вертикальная гистограмма (bar)",
|
|
21
|
-
* "body": {
|
|
22
|
-
* "title": "$1",
|
|
23
|
-
* "type": "2d",
|
|
24
|
-
* "keyField": "$2",
|
|
25
|
-
* "charts": [
|
|
26
|
-
* {
|
|
27
|
-
* "type": "bar",
|
|
28
|
-
* "data": {
|
|
29
|
-
* "valueFields": [
|
|
30
|
-
* "$3"
|
|
31
|
-
* ]
|
|
32
|
-
* }
|
|
33
|
-
* }
|
|
34
|
-
* ]
|
|
35
|
-
* }
|
|
36
|
-
* },
|
|
37
|
-
* {
|
|
38
|
-
* "label": "Вертикальная линейная диаграмма (line)",
|
|
39
|
-
* "body": {
|
|
40
|
-
* "title": "$1",
|
|
41
|
-
* "type": "2d",
|
|
42
|
-
* "keyField": "$2",
|
|
43
|
-
* "charts": [
|
|
44
|
-
* {
|
|
45
|
-
* "type": "line",
|
|
46
|
-
* "data": {
|
|
47
|
-
* "valueFields": [
|
|
48
|
-
* "$3"
|
|
49
|
-
* ]
|
|
50
|
-
* }
|
|
51
|
-
* }
|
|
52
|
-
* ]
|
|
53
|
-
* }
|
|
54
|
-
* },
|
|
55
|
-
* {
|
|
56
|
-
* "label": "Вертикальная диаграмма с областями (area)",
|
|
57
|
-
* "body": {
|
|
58
|
-
* "title": "$1",
|
|
59
|
-
* "type": "2d",
|
|
60
|
-
* "keyField": "$2",
|
|
61
|
-
* "charts": [
|
|
62
|
-
* {
|
|
63
|
-
* "type": "area",
|
|
64
|
-
* "data": {
|
|
65
|
-
* "valueFields": [
|
|
66
|
-
* "$3"
|
|
67
|
-
* ]
|
|
68
|
-
* }
|
|
69
|
-
* }
|
|
70
|
-
* ]
|
|
71
|
-
* }
|
|
72
|
-
* },
|
|
73
|
-
* {
|
|
74
|
-
* "label": "Горизонтальная гистограмма (bar)",
|
|
75
|
-
* "body": {
|
|
76
|
-
* "title": "$1",
|
|
77
|
-
* "type": "2d",
|
|
78
|
-
* "keyField": "$2",
|
|
79
|
-
* "axes": {
|
|
80
|
-
* "orientation": "horizontal"
|
|
81
|
-
* },
|
|
82
|
-
* "charts": [
|
|
83
|
-
* {
|
|
84
|
-
* "type": "bar",
|
|
85
|
-
* "data": {
|
|
86
|
-
* "valueFields": [
|
|
87
|
-
* "$3"
|
|
88
|
-
* ]
|
|
89
|
-
* }
|
|
90
|
-
* }
|
|
91
|
-
* ]
|
|
92
|
-
* }
|
|
93
|
-
* },
|
|
94
|
-
* {
|
|
95
|
-
* "label": "Кольцевая диаграмма (donut)",
|
|
96
|
-
* "body": {
|
|
97
|
-
* "title": "$1",
|
|
98
|
-
* "type": "polar",
|
|
99
|
-
* "keyField": "$2",
|
|
100
|
-
* "chart": {
|
|
101
|
-
* "valueField": "$3"
|
|
102
|
-
* }
|
|
103
|
-
* }
|
|
104
|
-
* }
|
|
105
|
-
* ]
|
|
106
|
-
*/
|
|
107
|
-
export declare type ChartControlOptions = TwoDimensionalOptions | PolarOptions | CardChartPublicOptions;
|
|
108
|
-
/**
|
|
109
|
-
* @defaultSnippets
|
|
110
|
-
* [
|
|
111
|
-
* {
|
|
112
|
-
* "label": "Вертикальная ориентация, ось ключей снизу, ось значений слева",
|
|
113
|
-
* "body": {
|
|
114
|
-
* "orientation": "vertical",
|
|
115
|
-
* "key": {
|
|
116
|
-
* "position": "end"
|
|
117
|
-
* },
|
|
118
|
-
* "value": {
|
|
119
|
-
* "position": "start"
|
|
120
|
-
* }
|
|
121
|
-
* }
|
|
122
|
-
* },
|
|
123
|
-
* {
|
|
124
|
-
* "label": "Вертикальная ориентация, ось ключей сверху, ось значений слева",
|
|
125
|
-
* "body": {
|
|
126
|
-
* "orientation": "vertical",
|
|
127
|
-
* "key": {
|
|
128
|
-
* "position": "start"
|
|
129
|
-
* },
|
|
130
|
-
* "value": {
|
|
131
|
-
* "position": "start"
|
|
132
|
-
* }
|
|
133
|
-
* }
|
|
134
|
-
* },
|
|
135
|
-
* {
|
|
136
|
-
* "label": "Горизонтальная ориентация, ось ключей слева, ось значений снизу",
|
|
137
|
-
* "body": {
|
|
138
|
-
* "orientation": "horizontal",
|
|
139
|
-
* "key": {
|
|
140
|
-
* "position": "start"
|
|
141
|
-
* },
|
|
142
|
-
* "value": {
|
|
143
|
-
* "position": "start"
|
|
144
|
-
* }
|
|
145
|
-
* }
|
|
146
|
-
* },
|
|
147
|
-
* {
|
|
148
|
-
* "label": "Горизонтальная ориентация, ось ключей справа, ось значений снизу",
|
|
149
|
-
* "body": {
|
|
150
|
-
* "orientation": "horizontal",
|
|
151
|
-
* "key": {
|
|
152
|
-
* "position": "end"
|
|
153
|
-
* },
|
|
154
|
-
* "value": {
|
|
155
|
-
* "position": "end"
|
|
156
|
-
* }
|
|
157
|
-
* }
|
|
158
|
-
* }
|
|
159
|
-
* ]
|
|
160
|
-
*/
|
|
161
|
-
export interface Axes {
|
|
162
|
-
/**
|
|
163
|
-
* @title Ориентация диаграмм
|
|
164
|
-
* @description При вертикальной ориентации ось ключей будет расположена сверху или снизу.
|
|
165
|
-
* При горизонтальной ориентации ось ключей будет расположена слева или справа.
|
|
166
|
-
* По умолчанию вертикальная.
|
|
167
|
-
*/
|
|
168
|
-
orientation?: Orientation;
|
|
169
|
-
/** @title Общая настройка подписей осей */
|
|
170
|
-
labels?: BaseAxesLabelsOptions;
|
|
171
|
-
/**
|
|
172
|
-
* @title Параметры оси ключей
|
|
173
|
-
*/
|
|
174
|
-
key?: {
|
|
175
|
-
/**
|
|
176
|
-
* @title Позиция оси ключей
|
|
177
|
-
* @description По умолчанию равна "end", если диаграма вертикальная и "start" - если диаграмма горизонтальная
|
|
178
|
-
*/
|
|
179
|
-
position?: AxisPosition;
|
|
180
|
-
/**
|
|
181
|
-
* @title Отображение оси
|
|
182
|
-
* @description По умолчанию всегда отображается
|
|
183
|
-
*/
|
|
184
|
-
visible?: boolean;
|
|
185
|
-
/**
|
|
186
|
-
* @title Отображение линий сетки оси
|
|
187
|
-
* @description По умолчанию всегда скрывается
|
|
188
|
-
*/
|
|
189
|
-
gridLine?: boolean;
|
|
190
|
-
/**
|
|
191
|
-
* @title Настройка подписей оси
|
|
192
|
-
*/
|
|
193
|
-
labels?: {
|
|
194
|
-
/**
|
|
195
|
-
* @title Настройки позиции оси
|
|
196
|
-
* @description Настраивается при вертикальном расположении. По умолчанию позиция определяется по количеству свободного места для одной подписи.
|
|
197
|
-
*/
|
|
198
|
-
position?: AxisLabelPosition;
|
|
199
|
-
/**
|
|
200
|
-
* @title Количество места, выделенного для подписи в px
|
|
201
|
-
* @default 20
|
|
202
|
-
*/
|
|
203
|
-
space?: number;
|
|
204
|
-
};
|
|
205
|
-
};
|
|
206
|
-
/**
|
|
207
|
-
* @title Параметры оси значений
|
|
208
|
-
*/
|
|
209
|
-
value?: BaseValueAxisOptions & {
|
|
210
|
-
/**
|
|
211
|
-
* @title Позиция оси значений
|
|
212
|
-
* @description По умолчанию равна "start", если диаграмма вертикальная и "end" - если диаграмма горизонтальная
|
|
213
|
-
*/
|
|
214
|
-
position?: AxisPosition;
|
|
215
|
-
/**
|
|
216
|
-
* @title Отображение оси
|
|
217
|
-
* @description По умолчанию
|
|
218
|
-
*/
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
}
|
|
248
|
-
export interface BaseAxesLabelsOptions {
|
|
249
|
-
/**
|
|
250
|
-
* @title Максимальный размер подписи в px
|
|
251
|
-
* @description Для вертикальных осей этот параметр определяет максимальную ширину подписи, а для горизонтальных - максимальную высоту подписи (если подписи расположены вертикально).
|
|
252
|
-
* @default 80
|
|
253
|
-
*/
|
|
254
|
-
maxSize?: number;
|
|
255
|
-
}
|
|
256
|
-
interface BaseChartBlockOptions {
|
|
257
|
-
/**
|
|
258
|
-
* @title Высота блока графика (px)
|
|
259
|
-
* @description По умолчанию равна 510 для 2d и polar диаграмм и 150 для card. Минимально возможная высота: 100. Максимально возможная: 800.
|
|
260
|
-
* @default 510
|
|
261
|
-
*/
|
|
262
|
-
height?: number;
|
|
263
|
-
/** @title Настройки стилей */
|
|
264
|
-
style?: {
|
|
265
|
-
/** @title Цвет фона */
|
|
266
|
-
backgroundColor?: string;
|
|
267
|
-
};
|
|
268
|
-
}
|
|
269
|
-
interface GraphicChartBlockOptions extends BaseChartBlockOptions {
|
|
270
|
-
/**
|
|
271
|
-
* @title Заголовок диаграммы
|
|
272
|
-
*/
|
|
273
|
-
title?: Title;
|
|
274
|
-
/**
|
|
275
|
-
* @title Наименование поля-ключа
|
|
276
|
-
*/
|
|
277
|
-
keyField: ChartField;
|
|
278
|
-
/**
|
|
279
|
-
* @title Маркдаун тултипа
|
|
280
|
-
*/
|
|
281
|
-
tooltipMarkdown?: string;
|
|
282
|
-
/** @title Логический тип поля значений */
|
|
283
|
-
valueFieldType?: string;
|
|
284
|
-
/**
|
|
285
|
-
* @title Максимальное количество отображаемых записей
|
|
286
|
-
* @description По умолчанию равно `50`
|
|
287
|
-
* @default 50
|
|
288
|
-
*/
|
|
289
|
-
maxRecordCount?: number;
|
|
290
|
-
tooltip?: {
|
|
291
|
-
aggregator?: TooltipAggregator;
|
|
292
|
-
};
|
|
293
|
-
}
|
|
294
|
-
interface TooltipAggregator {
|
|
295
|
-
content?: (options: {
|
|
296
|
-
row: MdtChartsDataRow;
|
|
297
|
-
}) => TooltipAggregatorContent;
|
|
298
|
-
position?: "underKey" | "underValues";
|
|
299
|
-
}
|
|
300
|
-
declare type TooltipAggregatorContent = {
|
|
301
|
-
type: "plainText";
|
|
302
|
-
textContent: string;
|
|
303
|
-
} | {
|
|
304
|
-
type: "captionValue";
|
|
305
|
-
caption: string;
|
|
306
|
-
value: any;
|
|
307
|
-
};
|
|
308
|
-
export interface CommonCanvasOptions {
|
|
309
|
-
bar?: BarCanvasOptions;
|
|
310
|
-
}
|
|
311
|
-
interface BarCanvasOptions {
|
|
312
|
-
/** @title минимальная ширина столбца в px */
|
|
313
|
-
minBarWidth?: number;
|
|
314
|
-
/** @title максимальная ширина столбца в px */
|
|
315
|
-
maxBarWidth?: number;
|
|
316
|
-
/** @title минимальный размер расстояния между группами столбцов для разных ключей */
|
|
317
|
-
groupMinDistance?: number;
|
|
318
|
-
/** @title максимальный размер расстояния между группами столбцов для разных ключей */
|
|
319
|
-
groupMaxDistance?: number;
|
|
320
|
-
/** @title расстояние между столбцами в одной группе */
|
|
321
|
-
barDistance?: number;
|
|
322
|
-
}
|
|
323
|
-
/**
|
|
324
|
-
* @title Двумерная диаграмма
|
|
325
|
-
*/
|
|
326
|
-
export interface TwoDimensionalOptions extends GraphicChartBlockOptions {
|
|
327
|
-
/**
|
|
328
|
-
* @title Тип исчисления диаграммы
|
|
329
|
-
*/
|
|
330
|
-
type: "2d";
|
|
331
|
-
/**
|
|
332
|
-
* @title Параметры осей двумерной диаграммы
|
|
333
|
-
*
|
|
334
|
-
*/
|
|
335
|
-
axes?: Axes;
|
|
336
|
-
/**
|
|
337
|
-
* @title Параметры двумерных диаграмм
|
|
338
|
-
*/
|
|
339
|
-
charts: TwoDimensionalChart[];
|
|
340
|
-
/**
|
|
341
|
-
* @title Общие параметры холста графика
|
|
342
|
-
*/
|
|
343
|
-
commonCanvasOptions?: CommonCanvasOptions;
|
|
344
|
-
legend?: boolean | {
|
|
345
|
-
show?: boolean;
|
|
346
|
-
position?: TwoDimChartLegendPosition;
|
|
347
|
-
};
|
|
348
|
-
valueLabels?: {
|
|
349
|
-
style?: ValueLabelsStyleOptions;
|
|
350
|
-
collision?: {
|
|
351
|
-
otherValueLabels?: "hide" | "none";
|
|
352
|
-
};
|
|
353
|
-
};
|
|
354
|
-
}
|
|
355
|
-
interface ValueLabelsStyleOptions {
|
|
356
|
-
cssClassName?: string;
|
|
357
|
-
/**
|
|
358
|
-
* @default 10
|
|
359
|
-
*/
|
|
360
|
-
fontSize?: number;
|
|
361
|
-
/**
|
|
362
|
-
* @default rgba(68, 68, 68, 0.5)
|
|
363
|
-
*/
|
|
364
|
-
color?: string;
|
|
365
|
-
}
|
|
366
|
-
/**
|
|
367
|
-
* @title Круговая диаграмма
|
|
368
|
-
*/
|
|
369
|
-
export interface PolarOptions extends GraphicChartBlockOptions {
|
|
370
|
-
/**
|
|
371
|
-
* @title Тип исчисления диаграммы
|
|
372
|
-
*/
|
|
373
|
-
type: "polar";
|
|
374
|
-
/**
|
|
375
|
-
* @title Параметры круговой диаграммы
|
|
376
|
-
*/
|
|
377
|
-
chart: PolarChart;
|
|
378
|
-
/**
|
|
379
|
-
* @title Наименование поля с цветом
|
|
380
|
-
* @description Наименование поля, в котором хранится цвет для сегментов диаграммы.
|
|
381
|
-
*/
|
|
382
|
-
colorField?: string;
|
|
383
|
-
/**
|
|
384
|
-
* @title Отображение легенды
|
|
385
|
-
* @description По умолчанию для круговых диаграмм отображается всегда
|
|
386
|
-
*/
|
|
387
|
-
legend?: boolean;
|
|
388
|
-
}
|
|
389
|
-
export declare type TwoDimensionalChart = BarChart | LineChart | AreaChart | DotChart;
|
|
390
|
-
interface TwoDimensionalChartOptions {
|
|
391
|
-
/**
|
|
392
|
-
* @title Параметры данных, привязанных к диаграмме
|
|
393
|
-
*/
|
|
394
|
-
data: {
|
|
395
|
-
/**
|
|
396
|
-
* @title Наименования отображаемых полей-значений
|
|
397
|
-
*/
|
|
398
|
-
valueFields: TwoDimensionalValueField[];
|
|
399
|
-
secondaryValue?: boolean;
|
|
400
|
-
};
|
|
401
|
-
/**
|
|
402
|
-
* @title Отображение диаграммы в сегментированном виде
|
|
403
|
-
*/
|
|
404
|
-
isSegmented?: boolean;
|
|
405
|
-
/**
|
|
406
|
-
* @title Отображение подписей значений на диаграмме
|
|
407
|
-
*/
|
|
408
|
-
valueLabels?: boolean | ValueLabelsChartOptions;
|
|
409
|
-
}
|
|
410
|
-
export declare type ValueLabelsPositionMode = "center" | "afterElement";
|
|
411
|
-
export interface ValueLabelsChartOptions {
|
|
412
|
-
on?: boolean;
|
|
413
|
-
/** @default "afterElement" */
|
|
414
|
-
position?: ValueLabelsPositionMode;
|
|
415
|
-
rotation?: {
|
|
416
|
-
angle?: number;
|
|
417
|
-
};
|
|
418
|
-
handleElement?: (options: {
|
|
419
|
-
element: SVGElement;
|
|
420
|
-
value: number;
|
|
421
|
-
}) => void;
|
|
422
|
-
format?: (options: {
|
|
423
|
-
value: number;
|
|
424
|
-
}) => string | number;
|
|
425
|
-
}
|
|
426
|
-
/**
|
|
427
|
-
* @title Гистограмма
|
|
428
|
-
* @defaultSnippets
|
|
429
|
-
* [
|
|
430
|
-
* {
|
|
431
|
-
* "label": "Несегментированная гистограмма (bar)",
|
|
432
|
-
* "body": {
|
|
433
|
-
* "type": "bar",
|
|
434
|
-
* "isSegmented": false,
|
|
435
|
-
* "data": {
|
|
436
|
-
* "valueFields": [
|
|
437
|
-
* "$1"
|
|
438
|
-
* ]
|
|
439
|
-
* }
|
|
440
|
-
* }
|
|
441
|
-
* },
|
|
442
|
-
* {
|
|
443
|
-
* "label": "Сегментированная гистограмма (bar)",
|
|
444
|
-
* "body": {
|
|
445
|
-
* "type": "bar",
|
|
446
|
-
* "isSegmented": true,
|
|
447
|
-
* "data": {
|
|
448
|
-
* "valueFields": [
|
|
449
|
-
* "$1"
|
|
450
|
-
* ]
|
|
451
|
-
* }
|
|
452
|
-
* }
|
|
453
|
-
* },
|
|
454
|
-
* {
|
|
455
|
-
* "label": "Сегментированная линейная диаграмма (line)",
|
|
456
|
-
* "body": {
|
|
457
|
-
* "type": "line",
|
|
458
|
-
* "isSegmented": true,
|
|
459
|
-
* "data": {
|
|
460
|
-
* "valueFields": [
|
|
461
|
-
* "$1"
|
|
462
|
-
* ]
|
|
463
|
-
* }
|
|
464
|
-
* }
|
|
465
|
-
* },
|
|
466
|
-
* {
|
|
467
|
-
* "label": "Несегментированная линейна диаграмма (line)",
|
|
468
|
-
* "body": {
|
|
469
|
-
* "type": "line",
|
|
470
|
-
* "isSegmented": false,
|
|
471
|
-
* "data": {
|
|
472
|
-
* "valueFields": [
|
|
473
|
-
* "$1"
|
|
474
|
-
* ]
|
|
475
|
-
* }
|
|
476
|
-
* }
|
|
477
|
-
* },
|
|
478
|
-
* {
|
|
479
|
-
* "label": "Сегментированная диаграмма с областями (area)",
|
|
480
|
-
* "body": {
|
|
481
|
-
* "type": "area",
|
|
482
|
-
* "isSegmented": true,
|
|
483
|
-
* "data": {
|
|
484
|
-
* "valueFields": [
|
|
485
|
-
* "$1"
|
|
486
|
-
* ]
|
|
487
|
-
* }
|
|
488
|
-
* }
|
|
489
|
-
* },
|
|
490
|
-
* {
|
|
491
|
-
* "label": "Несегментированная диаграмма с областями (area)",
|
|
492
|
-
* "body": {
|
|
493
|
-
* "type": "area",
|
|
494
|
-
* "isSegmented": false,
|
|
495
|
-
* "data": {
|
|
496
|
-
* "valueFields": [
|
|
497
|
-
* "$1"
|
|
498
|
-
* ]
|
|
499
|
-
* }
|
|
500
|
-
* }
|
|
501
|
-
* }
|
|
502
|
-
* ]
|
|
503
|
-
*/
|
|
504
|
-
interface BarChart extends TwoDimensionalChartOptions {
|
|
505
|
-
/**
|
|
506
|
-
* @title Тип 2D-диаграммы
|
|
507
|
-
*/
|
|
508
|
-
type: "bar";
|
|
509
|
-
/**
|
|
510
|
-
* @title Отображение встроенных надписей со значением
|
|
511
|
-
* @description Надписи отображаются только при горизонтальном отображении. По умолчанию равно `true`
|
|
512
|
-
* @default true
|
|
513
|
-
*/
|
|
514
|
-
labels?: boolean;
|
|
515
|
-
/** @title Отображать в заштрихованном виде */
|
|
516
|
-
hatched?: boolean;
|
|
517
|
-
borderRadius?: BarChartBorderRadius;
|
|
518
|
-
}
|
|
519
|
-
interface BarChartBorderRadius {
|
|
520
|
-
value?: number;
|
|
521
|
-
}
|
|
522
|
-
/**
|
|
523
|
-
* @title Линейная диаграмма
|
|
524
|
-
*/
|
|
525
|
-
interface LineAreaChart extends TwoDimensionalChartOptions {
|
|
526
|
-
/**
|
|
527
|
-
* @title Отображение маркеров
|
|
528
|
-
* @description По умолчанию всегда скрыты
|
|
529
|
-
*/
|
|
530
|
-
markers?: boolean;
|
|
531
|
-
}
|
|
532
|
-
interface AreaChart extends LineAreaChart {
|
|
533
|
-
/**
|
|
534
|
-
* @title Тип 2D-диаграммы
|
|
535
|
-
*/
|
|
536
|
-
type: "area";
|
|
537
|
-
/** @title Включить градиент */
|
|
538
|
-
gradient?: boolean;
|
|
539
|
-
}
|
|
540
|
-
interface LineChart extends LineAreaChart {
|
|
541
|
-
/**
|
|
542
|
-
* @title Тип 2D-диаграммы
|
|
543
|
-
*/
|
|
544
|
-
type: "line";
|
|
545
|
-
/** @title Управление пунктиром */
|
|
546
|
-
dash?: LineDash;
|
|
547
|
-
width?: number;
|
|
548
|
-
}
|
|
549
|
-
interface LineDash {
|
|
550
|
-
/** @title Включить пунктир */
|
|
551
|
-
on?: boolean;
|
|
552
|
-
/** @title Длина одной черты в px */
|
|
553
|
-
dashSize?: number;
|
|
554
|
-
/** @title Размер между чертами в px */
|
|
555
|
-
gapSize?: number;
|
|
556
|
-
}
|
|
557
|
-
export interface DotChart extends TwoDimensionalChartOptions {
|
|
558
|
-
type: "dot";
|
|
559
|
-
}
|
|
560
|
-
export interface PolarChart {
|
|
561
|
-
/**
|
|
562
|
-
* @title Наименование отображаемого поля-значения
|
|
563
|
-
*/
|
|
564
|
-
valueField: ChartField;
|
|
565
|
-
/**
|
|
566
|
-
* @title Управление агрегатором
|
|
567
|
-
*/
|
|
568
|
-
aggregator?: {
|
|
569
|
-
/**
|
|
570
|
-
* @title Контент агрегатора
|
|
571
|
-
*/
|
|
572
|
-
content?: string;
|
|
573
|
-
};
|
|
574
|
-
}
|
|
575
|
-
export interface CardChartPublicOptions extends BaseChartBlockOptions {
|
|
576
|
-
/** @title Тип исчисления диаграммы */
|
|
577
|
-
type: "card";
|
|
578
|
-
/** @title Название */
|
|
579
|
-
title: string;
|
|
580
|
-
/** @title Описание */
|
|
581
|
-
description?: string;
|
|
582
|
-
/** @title Иконка */
|
|
583
|
-
icon?: string;
|
|
584
|
-
/** @title Значение */
|
|
585
|
-
value: CardChartValueOptions;
|
|
586
|
-
/** @title Опции блока с изменением показателя */
|
|
587
|
-
change?: CardChartChangePublicOptions;
|
|
588
|
-
/** @title Цвет текста карточки */
|
|
589
|
-
color?: CardColorOptions;
|
|
590
|
-
}
|
|
591
|
-
export interface CardChartValueOptions {
|
|
592
|
-
/** @title Наименование поля */
|
|
593
|
-
field: ChartField;
|
|
594
|
-
/** @title Логический тип поля */
|
|
595
|
-
dataType?: string;
|
|
596
|
-
/** @title Шаблон выводимого значения */
|
|
597
|
-
template?: string;
|
|
598
|
-
}
|
|
599
|
-
export interface CardChartChangePublicOptions {
|
|
600
|
-
/** @title Значение блока */
|
|
601
|
-
value: CardChartValueOptions;
|
|
602
|
-
/** @title Описание блока */
|
|
603
|
-
description?: string;
|
|
604
|
-
/** @title Цвет текста */
|
|
605
|
-
color?: CardColorOptions;
|
|
606
|
-
}
|
|
607
|
-
interface CardColorOptions {
|
|
608
|
-
/** @title Набор цветов */
|
|
609
|
-
range: ColorRangeItem[];
|
|
610
|
-
}
|
|
611
|
-
export interface ColorRangeItem {
|
|
612
|
-
/** @title Значение с которого начинается цвет */
|
|
613
|
-
value?: number;
|
|
614
|
-
/** @title Название цвета */
|
|
615
|
-
color: string;
|
|
616
|
-
}
|
|
617
|
-
export {};
|
|
1
|
+
declare type MdtChartsDataRow = Record<string, any>;
|
|
2
|
+
declare type TitleFunctionParams = {
|
|
3
|
+
data: MdtChartsDataRow[];
|
|
4
|
+
};
|
|
5
|
+
declare type TitleFunction = (params: TitleFunctionParams) => string;
|
|
6
|
+
declare type Title = string | TitleFunction;
|
|
7
|
+
export declare type Orientation = "horizontal" | "vertical";
|
|
8
|
+
declare type AxisPosition = "start" | "end";
|
|
9
|
+
export declare type AxisLabelPosition = "vertical" | "horizontal";
|
|
10
|
+
export declare type TwoDimChartLegendPosition = "top" | "bottom";
|
|
11
|
+
declare type ChartField = string;
|
|
12
|
+
export declare type TwoDimensionalValueField = ChartField | {
|
|
13
|
+
name: string;
|
|
14
|
+
color?: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* @defaultSnippets
|
|
18
|
+
* [
|
|
19
|
+
* {
|
|
20
|
+
* "label": "Вертикальная гистограмма (bar)",
|
|
21
|
+
* "body": {
|
|
22
|
+
* "title": "$1",
|
|
23
|
+
* "type": "2d",
|
|
24
|
+
* "keyField": "$2",
|
|
25
|
+
* "charts": [
|
|
26
|
+
* {
|
|
27
|
+
* "type": "bar",
|
|
28
|
+
* "data": {
|
|
29
|
+
* "valueFields": [
|
|
30
|
+
* "$3"
|
|
31
|
+
* ]
|
|
32
|
+
* }
|
|
33
|
+
* }
|
|
34
|
+
* ]
|
|
35
|
+
* }
|
|
36
|
+
* },
|
|
37
|
+
* {
|
|
38
|
+
* "label": "Вертикальная линейная диаграмма (line)",
|
|
39
|
+
* "body": {
|
|
40
|
+
* "title": "$1",
|
|
41
|
+
* "type": "2d",
|
|
42
|
+
* "keyField": "$2",
|
|
43
|
+
* "charts": [
|
|
44
|
+
* {
|
|
45
|
+
* "type": "line",
|
|
46
|
+
* "data": {
|
|
47
|
+
* "valueFields": [
|
|
48
|
+
* "$3"
|
|
49
|
+
* ]
|
|
50
|
+
* }
|
|
51
|
+
* }
|
|
52
|
+
* ]
|
|
53
|
+
* }
|
|
54
|
+
* },
|
|
55
|
+
* {
|
|
56
|
+
* "label": "Вертикальная диаграмма с областями (area)",
|
|
57
|
+
* "body": {
|
|
58
|
+
* "title": "$1",
|
|
59
|
+
* "type": "2d",
|
|
60
|
+
* "keyField": "$2",
|
|
61
|
+
* "charts": [
|
|
62
|
+
* {
|
|
63
|
+
* "type": "area",
|
|
64
|
+
* "data": {
|
|
65
|
+
* "valueFields": [
|
|
66
|
+
* "$3"
|
|
67
|
+
* ]
|
|
68
|
+
* }
|
|
69
|
+
* }
|
|
70
|
+
* ]
|
|
71
|
+
* }
|
|
72
|
+
* },
|
|
73
|
+
* {
|
|
74
|
+
* "label": "Горизонтальная гистограмма (bar)",
|
|
75
|
+
* "body": {
|
|
76
|
+
* "title": "$1",
|
|
77
|
+
* "type": "2d",
|
|
78
|
+
* "keyField": "$2",
|
|
79
|
+
* "axes": {
|
|
80
|
+
* "orientation": "horizontal"
|
|
81
|
+
* },
|
|
82
|
+
* "charts": [
|
|
83
|
+
* {
|
|
84
|
+
* "type": "bar",
|
|
85
|
+
* "data": {
|
|
86
|
+
* "valueFields": [
|
|
87
|
+
* "$3"
|
|
88
|
+
* ]
|
|
89
|
+
* }
|
|
90
|
+
* }
|
|
91
|
+
* ]
|
|
92
|
+
* }
|
|
93
|
+
* },
|
|
94
|
+
* {
|
|
95
|
+
* "label": "Кольцевая диаграмма (donut)",
|
|
96
|
+
* "body": {
|
|
97
|
+
* "title": "$1",
|
|
98
|
+
* "type": "polar",
|
|
99
|
+
* "keyField": "$2",
|
|
100
|
+
* "chart": {
|
|
101
|
+
* "valueField": "$3"
|
|
102
|
+
* }
|
|
103
|
+
* }
|
|
104
|
+
* }
|
|
105
|
+
* ]
|
|
106
|
+
*/
|
|
107
|
+
export declare type ChartControlOptions = TwoDimensionalOptions | PolarOptions | CardChartPublicOptions;
|
|
108
|
+
/**
|
|
109
|
+
* @defaultSnippets
|
|
110
|
+
* [
|
|
111
|
+
* {
|
|
112
|
+
* "label": "Вертикальная ориентация, ось ключей снизу, ось значений слева",
|
|
113
|
+
* "body": {
|
|
114
|
+
* "orientation": "vertical",
|
|
115
|
+
* "key": {
|
|
116
|
+
* "position": "end"
|
|
117
|
+
* },
|
|
118
|
+
* "value": {
|
|
119
|
+
* "position": "start"
|
|
120
|
+
* }
|
|
121
|
+
* }
|
|
122
|
+
* },
|
|
123
|
+
* {
|
|
124
|
+
* "label": "Вертикальная ориентация, ось ключей сверху, ось значений слева",
|
|
125
|
+
* "body": {
|
|
126
|
+
* "orientation": "vertical",
|
|
127
|
+
* "key": {
|
|
128
|
+
* "position": "start"
|
|
129
|
+
* },
|
|
130
|
+
* "value": {
|
|
131
|
+
* "position": "start"
|
|
132
|
+
* }
|
|
133
|
+
* }
|
|
134
|
+
* },
|
|
135
|
+
* {
|
|
136
|
+
* "label": "Горизонтальная ориентация, ось ключей слева, ось значений снизу",
|
|
137
|
+
* "body": {
|
|
138
|
+
* "orientation": "horizontal",
|
|
139
|
+
* "key": {
|
|
140
|
+
* "position": "start"
|
|
141
|
+
* },
|
|
142
|
+
* "value": {
|
|
143
|
+
* "position": "start"
|
|
144
|
+
* }
|
|
145
|
+
* }
|
|
146
|
+
* },
|
|
147
|
+
* {
|
|
148
|
+
* "label": "Горизонтальная ориентация, ось ключей справа, ось значений снизу",
|
|
149
|
+
* "body": {
|
|
150
|
+
* "orientation": "horizontal",
|
|
151
|
+
* "key": {
|
|
152
|
+
* "position": "end"
|
|
153
|
+
* },
|
|
154
|
+
* "value": {
|
|
155
|
+
* "position": "end"
|
|
156
|
+
* }
|
|
157
|
+
* }
|
|
158
|
+
* }
|
|
159
|
+
* ]
|
|
160
|
+
*/
|
|
161
|
+
export interface Axes {
|
|
162
|
+
/**
|
|
163
|
+
* @title Ориентация диаграмм
|
|
164
|
+
* @description При вертикальной ориентации ось ключей будет расположена сверху или снизу.
|
|
165
|
+
* При горизонтальной ориентации ось ключей будет расположена слева или справа.
|
|
166
|
+
* По умолчанию вертикальная.
|
|
167
|
+
*/
|
|
168
|
+
orientation?: Orientation;
|
|
169
|
+
/** @title Общая настройка подписей осей */
|
|
170
|
+
labels?: BaseAxesLabelsOptions;
|
|
171
|
+
/**
|
|
172
|
+
* @title Параметры оси ключей
|
|
173
|
+
*/
|
|
174
|
+
key?: {
|
|
175
|
+
/**
|
|
176
|
+
* @title Позиция оси ключей
|
|
177
|
+
* @description По умолчанию равна "end", если диаграма вертикальная и "start" - если диаграмма горизонтальная
|
|
178
|
+
*/
|
|
179
|
+
position?: AxisPosition;
|
|
180
|
+
/**
|
|
181
|
+
* @title Отображение оси
|
|
182
|
+
* @description По умолчанию всегда отображается
|
|
183
|
+
*/
|
|
184
|
+
visible?: boolean;
|
|
185
|
+
/**
|
|
186
|
+
* @title Отображение линий сетки оси
|
|
187
|
+
* @description По умолчанию всегда скрывается
|
|
188
|
+
*/
|
|
189
|
+
gridLine?: boolean;
|
|
190
|
+
/**
|
|
191
|
+
* @title Настройка подписей оси
|
|
192
|
+
*/
|
|
193
|
+
labels?: {
|
|
194
|
+
/**
|
|
195
|
+
* @title Настройки позиции оси
|
|
196
|
+
* @description Настраивается при вертикальном расположении. По умолчанию позиция определяется по количеству свободного места для одной подписи.
|
|
197
|
+
*/
|
|
198
|
+
position?: AxisLabelPosition;
|
|
199
|
+
/**
|
|
200
|
+
* @title Количество места, выделенного для подписи в px
|
|
201
|
+
* @default 20
|
|
202
|
+
*/
|
|
203
|
+
space?: number;
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
/**
|
|
207
|
+
* @title Параметры оси значений
|
|
208
|
+
*/
|
|
209
|
+
value?: BaseValueAxisOptions & {
|
|
210
|
+
/**
|
|
211
|
+
* @title Позиция оси значений
|
|
212
|
+
* @description По умолчанию равна "start", если диаграмма вертикальная и "end" - если диаграмма горизонтальная
|
|
213
|
+
*/
|
|
214
|
+
position?: AxisPosition;
|
|
215
|
+
/**
|
|
216
|
+
* @title Отображение линий сетки оси
|
|
217
|
+
* @description По умолчанию всегда отображается
|
|
218
|
+
*/
|
|
219
|
+
gridLine?: boolean;
|
|
220
|
+
line?: {
|
|
221
|
+
visible?: boolean;
|
|
222
|
+
};
|
|
223
|
+
};
|
|
224
|
+
valueSecondary?: BaseValueAxisOptions;
|
|
225
|
+
}
|
|
226
|
+
interface BaseValueAxisOptions {
|
|
227
|
+
/** @title Размер отступа между подписями в px */
|
|
228
|
+
stepSize?: number;
|
|
229
|
+
/**
|
|
230
|
+
* @title Настройка диапазона осей
|
|
231
|
+
* @param options Опции с данными диаграммы
|
|
232
|
+
* @returns Объект с диапазоном осей. Оставить -1 для автоматического определения диапазона
|
|
233
|
+
*/
|
|
234
|
+
domain?: (options: {
|
|
235
|
+
data: MdtChartsDataRow[];
|
|
236
|
+
}) => {
|
|
237
|
+
start: number;
|
|
238
|
+
end: number;
|
|
239
|
+
};
|
|
240
|
+
/** @title Функция форматирования значений */
|
|
241
|
+
formatValue?: string;
|
|
242
|
+
/**
|
|
243
|
+
* @title Отображение оси
|
|
244
|
+
* @description По умолчанию не отображается только тогда, когда все диаграммы имеют встроенные лейблы, показывающие значения
|
|
245
|
+
*/
|
|
246
|
+
visible?: boolean;
|
|
247
|
+
}
|
|
248
|
+
export interface BaseAxesLabelsOptions {
|
|
249
|
+
/**
|
|
250
|
+
* @title Максимальный размер подписи в px
|
|
251
|
+
* @description Для вертикальных осей этот параметр определяет максимальную ширину подписи, а для горизонтальных - максимальную высоту подписи (если подписи расположены вертикально).
|
|
252
|
+
* @default 80
|
|
253
|
+
*/
|
|
254
|
+
maxSize?: number;
|
|
255
|
+
}
|
|
256
|
+
interface BaseChartBlockOptions {
|
|
257
|
+
/**
|
|
258
|
+
* @title Высота блока графика (px)
|
|
259
|
+
* @description По умолчанию равна 510 для 2d и polar диаграмм и 150 для card. Минимально возможная высота: 100. Максимально возможная: 800.
|
|
260
|
+
* @default 510
|
|
261
|
+
*/
|
|
262
|
+
height?: number;
|
|
263
|
+
/** @title Настройки стилей */
|
|
264
|
+
style?: {
|
|
265
|
+
/** @title Цвет фона */
|
|
266
|
+
backgroundColor?: string;
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
interface GraphicChartBlockOptions extends BaseChartBlockOptions {
|
|
270
|
+
/**
|
|
271
|
+
* @title Заголовок диаграммы
|
|
272
|
+
*/
|
|
273
|
+
title?: Title;
|
|
274
|
+
/**
|
|
275
|
+
* @title Наименование поля-ключа
|
|
276
|
+
*/
|
|
277
|
+
keyField: ChartField;
|
|
278
|
+
/**
|
|
279
|
+
* @title Маркдаун тултипа
|
|
280
|
+
*/
|
|
281
|
+
tooltipMarkdown?: string;
|
|
282
|
+
/** @title Логический тип поля значений */
|
|
283
|
+
valueFieldType?: string;
|
|
284
|
+
/**
|
|
285
|
+
* @title Максимальное количество отображаемых записей
|
|
286
|
+
* @description По умолчанию равно `50`
|
|
287
|
+
* @default 50
|
|
288
|
+
*/
|
|
289
|
+
maxRecordCount?: number;
|
|
290
|
+
tooltip?: {
|
|
291
|
+
aggregator?: TooltipAggregator;
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
interface TooltipAggregator {
|
|
295
|
+
content?: (options: {
|
|
296
|
+
row: MdtChartsDataRow;
|
|
297
|
+
}) => TooltipAggregatorContent;
|
|
298
|
+
position?: "underKey" | "underValues";
|
|
299
|
+
}
|
|
300
|
+
declare type TooltipAggregatorContent = {
|
|
301
|
+
type: "plainText";
|
|
302
|
+
textContent: string;
|
|
303
|
+
} | {
|
|
304
|
+
type: "captionValue";
|
|
305
|
+
caption: string;
|
|
306
|
+
value: any;
|
|
307
|
+
};
|
|
308
|
+
export interface CommonCanvasOptions {
|
|
309
|
+
bar?: BarCanvasOptions;
|
|
310
|
+
}
|
|
311
|
+
interface BarCanvasOptions {
|
|
312
|
+
/** @title минимальная ширина столбца в px */
|
|
313
|
+
minBarWidth?: number;
|
|
314
|
+
/** @title максимальная ширина столбца в px */
|
|
315
|
+
maxBarWidth?: number;
|
|
316
|
+
/** @title минимальный размер расстояния между группами столбцов для разных ключей */
|
|
317
|
+
groupMinDistance?: number;
|
|
318
|
+
/** @title максимальный размер расстояния между группами столбцов для разных ключей */
|
|
319
|
+
groupMaxDistance?: number;
|
|
320
|
+
/** @title расстояние между столбцами в одной группе */
|
|
321
|
+
barDistance?: number;
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* @title Двумерная диаграмма
|
|
325
|
+
*/
|
|
326
|
+
export interface TwoDimensionalOptions extends GraphicChartBlockOptions {
|
|
327
|
+
/**
|
|
328
|
+
* @title Тип исчисления диаграммы
|
|
329
|
+
*/
|
|
330
|
+
type: "2d";
|
|
331
|
+
/**
|
|
332
|
+
* @title Параметры осей двумерной диаграммы
|
|
333
|
+
*
|
|
334
|
+
*/
|
|
335
|
+
axes?: Axes;
|
|
336
|
+
/**
|
|
337
|
+
* @title Параметры двумерных диаграмм
|
|
338
|
+
*/
|
|
339
|
+
charts: TwoDimensionalChart[];
|
|
340
|
+
/**
|
|
341
|
+
* @title Общие параметры холста графика
|
|
342
|
+
*/
|
|
343
|
+
commonCanvasOptions?: CommonCanvasOptions;
|
|
344
|
+
legend?: boolean | {
|
|
345
|
+
show?: boolean;
|
|
346
|
+
position?: TwoDimChartLegendPosition;
|
|
347
|
+
};
|
|
348
|
+
valueLabels?: {
|
|
349
|
+
style?: ValueLabelsStyleOptions;
|
|
350
|
+
collision?: {
|
|
351
|
+
otherValueLabels?: "hide" | "none";
|
|
352
|
+
};
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
interface ValueLabelsStyleOptions {
|
|
356
|
+
cssClassName?: string;
|
|
357
|
+
/**
|
|
358
|
+
* @default 10
|
|
359
|
+
*/
|
|
360
|
+
fontSize?: number;
|
|
361
|
+
/**
|
|
362
|
+
* @default rgba(68, 68, 68, 0.5)
|
|
363
|
+
*/
|
|
364
|
+
color?: string;
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* @title Круговая диаграмма
|
|
368
|
+
*/
|
|
369
|
+
export interface PolarOptions extends GraphicChartBlockOptions {
|
|
370
|
+
/**
|
|
371
|
+
* @title Тип исчисления диаграммы
|
|
372
|
+
*/
|
|
373
|
+
type: "polar";
|
|
374
|
+
/**
|
|
375
|
+
* @title Параметры круговой диаграммы
|
|
376
|
+
*/
|
|
377
|
+
chart: PolarChart;
|
|
378
|
+
/**
|
|
379
|
+
* @title Наименование поля с цветом
|
|
380
|
+
* @description Наименование поля, в котором хранится цвет для сегментов диаграммы.
|
|
381
|
+
*/
|
|
382
|
+
colorField?: string;
|
|
383
|
+
/**
|
|
384
|
+
* @title Отображение легенды
|
|
385
|
+
* @description По умолчанию для круговых диаграмм отображается всегда
|
|
386
|
+
*/
|
|
387
|
+
legend?: boolean;
|
|
388
|
+
}
|
|
389
|
+
export declare type TwoDimensionalChart = BarChart | LineChart | AreaChart | DotChart;
|
|
390
|
+
interface TwoDimensionalChartOptions {
|
|
391
|
+
/**
|
|
392
|
+
* @title Параметры данных, привязанных к диаграмме
|
|
393
|
+
*/
|
|
394
|
+
data: {
|
|
395
|
+
/**
|
|
396
|
+
* @title Наименования отображаемых полей-значений
|
|
397
|
+
*/
|
|
398
|
+
valueFields: TwoDimensionalValueField[];
|
|
399
|
+
secondaryValue?: boolean;
|
|
400
|
+
};
|
|
401
|
+
/**
|
|
402
|
+
* @title Отображение диаграммы в сегментированном виде
|
|
403
|
+
*/
|
|
404
|
+
isSegmented?: boolean;
|
|
405
|
+
/**
|
|
406
|
+
* @title Отображение подписей значений на диаграмме
|
|
407
|
+
*/
|
|
408
|
+
valueLabels?: boolean | ValueLabelsChartOptions;
|
|
409
|
+
}
|
|
410
|
+
export declare type ValueLabelsPositionMode = "center" | "afterElement";
|
|
411
|
+
export interface ValueLabelsChartOptions {
|
|
412
|
+
on?: boolean;
|
|
413
|
+
/** @default "afterElement" */
|
|
414
|
+
position?: ValueLabelsPositionMode;
|
|
415
|
+
rotation?: {
|
|
416
|
+
angle?: number;
|
|
417
|
+
};
|
|
418
|
+
handleElement?: (options: {
|
|
419
|
+
element: SVGElement;
|
|
420
|
+
value: number;
|
|
421
|
+
}) => void;
|
|
422
|
+
format?: (options: {
|
|
423
|
+
value: number;
|
|
424
|
+
}) => string | number;
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* @title Гистограмма
|
|
428
|
+
* @defaultSnippets
|
|
429
|
+
* [
|
|
430
|
+
* {
|
|
431
|
+
* "label": "Несегментированная гистограмма (bar)",
|
|
432
|
+
* "body": {
|
|
433
|
+
* "type": "bar",
|
|
434
|
+
* "isSegmented": false,
|
|
435
|
+
* "data": {
|
|
436
|
+
* "valueFields": [
|
|
437
|
+
* "$1"
|
|
438
|
+
* ]
|
|
439
|
+
* }
|
|
440
|
+
* }
|
|
441
|
+
* },
|
|
442
|
+
* {
|
|
443
|
+
* "label": "Сегментированная гистограмма (bar)",
|
|
444
|
+
* "body": {
|
|
445
|
+
* "type": "bar",
|
|
446
|
+
* "isSegmented": true,
|
|
447
|
+
* "data": {
|
|
448
|
+
* "valueFields": [
|
|
449
|
+
* "$1"
|
|
450
|
+
* ]
|
|
451
|
+
* }
|
|
452
|
+
* }
|
|
453
|
+
* },
|
|
454
|
+
* {
|
|
455
|
+
* "label": "Сегментированная линейная диаграмма (line)",
|
|
456
|
+
* "body": {
|
|
457
|
+
* "type": "line",
|
|
458
|
+
* "isSegmented": true,
|
|
459
|
+
* "data": {
|
|
460
|
+
* "valueFields": [
|
|
461
|
+
* "$1"
|
|
462
|
+
* ]
|
|
463
|
+
* }
|
|
464
|
+
* }
|
|
465
|
+
* },
|
|
466
|
+
* {
|
|
467
|
+
* "label": "Несегментированная линейна диаграмма (line)",
|
|
468
|
+
* "body": {
|
|
469
|
+
* "type": "line",
|
|
470
|
+
* "isSegmented": false,
|
|
471
|
+
* "data": {
|
|
472
|
+
* "valueFields": [
|
|
473
|
+
* "$1"
|
|
474
|
+
* ]
|
|
475
|
+
* }
|
|
476
|
+
* }
|
|
477
|
+
* },
|
|
478
|
+
* {
|
|
479
|
+
* "label": "Сегментированная диаграмма с областями (area)",
|
|
480
|
+
* "body": {
|
|
481
|
+
* "type": "area",
|
|
482
|
+
* "isSegmented": true,
|
|
483
|
+
* "data": {
|
|
484
|
+
* "valueFields": [
|
|
485
|
+
* "$1"
|
|
486
|
+
* ]
|
|
487
|
+
* }
|
|
488
|
+
* }
|
|
489
|
+
* },
|
|
490
|
+
* {
|
|
491
|
+
* "label": "Несегментированная диаграмма с областями (area)",
|
|
492
|
+
* "body": {
|
|
493
|
+
* "type": "area",
|
|
494
|
+
* "isSegmented": false,
|
|
495
|
+
* "data": {
|
|
496
|
+
* "valueFields": [
|
|
497
|
+
* "$1"
|
|
498
|
+
* ]
|
|
499
|
+
* }
|
|
500
|
+
* }
|
|
501
|
+
* }
|
|
502
|
+
* ]
|
|
503
|
+
*/
|
|
504
|
+
interface BarChart extends TwoDimensionalChartOptions {
|
|
505
|
+
/**
|
|
506
|
+
* @title Тип 2D-диаграммы
|
|
507
|
+
*/
|
|
508
|
+
type: "bar";
|
|
509
|
+
/**
|
|
510
|
+
* @title Отображение встроенных надписей со значением
|
|
511
|
+
* @description Надписи отображаются только при горизонтальном отображении. По умолчанию равно `true`
|
|
512
|
+
* @default true
|
|
513
|
+
*/
|
|
514
|
+
labels?: boolean;
|
|
515
|
+
/** @title Отображать в заштрихованном виде */
|
|
516
|
+
hatched?: boolean;
|
|
517
|
+
borderRadius?: BarChartBorderRadius;
|
|
518
|
+
}
|
|
519
|
+
interface BarChartBorderRadius {
|
|
520
|
+
value?: number;
|
|
521
|
+
}
|
|
522
|
+
/**
|
|
523
|
+
* @title Линейная диаграмма
|
|
524
|
+
*/
|
|
525
|
+
interface LineAreaChart extends TwoDimensionalChartOptions {
|
|
526
|
+
/**
|
|
527
|
+
* @title Отображение маркеров
|
|
528
|
+
* @description По умолчанию всегда скрыты
|
|
529
|
+
*/
|
|
530
|
+
markers?: boolean;
|
|
531
|
+
}
|
|
532
|
+
interface AreaChart extends LineAreaChart {
|
|
533
|
+
/**
|
|
534
|
+
* @title Тип 2D-диаграммы
|
|
535
|
+
*/
|
|
536
|
+
type: "area";
|
|
537
|
+
/** @title Включить градиент */
|
|
538
|
+
gradient?: boolean;
|
|
539
|
+
}
|
|
540
|
+
interface LineChart extends LineAreaChart {
|
|
541
|
+
/**
|
|
542
|
+
* @title Тип 2D-диаграммы
|
|
543
|
+
*/
|
|
544
|
+
type: "line";
|
|
545
|
+
/** @title Управление пунктиром */
|
|
546
|
+
dash?: LineDash;
|
|
547
|
+
width?: number;
|
|
548
|
+
}
|
|
549
|
+
interface LineDash {
|
|
550
|
+
/** @title Включить пунктир */
|
|
551
|
+
on?: boolean;
|
|
552
|
+
/** @title Длина одной черты в px */
|
|
553
|
+
dashSize?: number;
|
|
554
|
+
/** @title Размер между чертами в px */
|
|
555
|
+
gapSize?: number;
|
|
556
|
+
}
|
|
557
|
+
export interface DotChart extends TwoDimensionalChartOptions {
|
|
558
|
+
type: "dot";
|
|
559
|
+
}
|
|
560
|
+
export interface PolarChart {
|
|
561
|
+
/**
|
|
562
|
+
* @title Наименование отображаемого поля-значения
|
|
563
|
+
*/
|
|
564
|
+
valueField: ChartField;
|
|
565
|
+
/**
|
|
566
|
+
* @title Управление агрегатором
|
|
567
|
+
*/
|
|
568
|
+
aggregator?: {
|
|
569
|
+
/**
|
|
570
|
+
* @title Контент агрегатора
|
|
571
|
+
*/
|
|
572
|
+
content?: string;
|
|
573
|
+
};
|
|
574
|
+
}
|
|
575
|
+
export interface CardChartPublicOptions extends BaseChartBlockOptions {
|
|
576
|
+
/** @title Тип исчисления диаграммы */
|
|
577
|
+
type: "card";
|
|
578
|
+
/** @title Название */
|
|
579
|
+
title: string;
|
|
580
|
+
/** @title Описание */
|
|
581
|
+
description?: string;
|
|
582
|
+
/** @title Иконка */
|
|
583
|
+
icon?: string;
|
|
584
|
+
/** @title Значение */
|
|
585
|
+
value: CardChartValueOptions;
|
|
586
|
+
/** @title Опции блока с изменением показателя */
|
|
587
|
+
change?: CardChartChangePublicOptions;
|
|
588
|
+
/** @title Цвет текста карточки */
|
|
589
|
+
color?: CardColorOptions;
|
|
590
|
+
}
|
|
591
|
+
export interface CardChartValueOptions {
|
|
592
|
+
/** @title Наименование поля */
|
|
593
|
+
field: ChartField;
|
|
594
|
+
/** @title Логический тип поля */
|
|
595
|
+
dataType?: string;
|
|
596
|
+
/** @title Шаблон выводимого значения */
|
|
597
|
+
template?: string;
|
|
598
|
+
}
|
|
599
|
+
export interface CardChartChangePublicOptions {
|
|
600
|
+
/** @title Значение блока */
|
|
601
|
+
value: CardChartValueOptions;
|
|
602
|
+
/** @title Описание блока */
|
|
603
|
+
description?: string;
|
|
604
|
+
/** @title Цвет текста */
|
|
605
|
+
color?: CardColorOptions;
|
|
606
|
+
}
|
|
607
|
+
interface CardColorOptions {
|
|
608
|
+
/** @title Набор цветов */
|
|
609
|
+
range: ColorRangeItem[];
|
|
610
|
+
}
|
|
611
|
+
export interface ColorRangeItem {
|
|
612
|
+
/** @title Значение с которого начинается цвет */
|
|
613
|
+
value?: number;
|
|
614
|
+
/** @title Название цвета */
|
|
615
|
+
color: string;
|
|
616
|
+
}
|
|
617
|
+
export {};
|