mdt-client 31.3.29 → 31.3.31
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/package.json +1 -1
- package/types/common/FieldSettings.schema.d.ts +1 -1
- package/types/common/form/tabs/TabsFormExtenderOptions.d.ts +12 -0
- package/types/common/list/aggregation/AggregayionTypes.d.ts +2 -0
- package/types/common/list/cacheUpdateTime/CacheUpdateTimePublicOptions.d.ts +6 -0
- package/types/common/list/cellControlExtender/CellControlExtender.d.ts +1 -0
- package/types/common/list/columnMenu/ColumnMenuOptions.d.ts +17 -0
- package/types/common/list/columnMenu/QuickFilterOptions.d.ts +7 -0
- package/types/common/list/columnMenu/ValuesFilterOptions.d.ts +24 -0
- package/types/common/list/form/FormListPublicOptions.d.ts +40 -0
- package/types/common/list/gallery/GalleryListExtenderPublicOptions.d.ts +11 -0
- package/types/common/list/group/groupTypes.d.ts +158 -12
- package/types/common/list/historyType/HistoryTypeListExtenderOptions.d.ts +3 -0
- package/types/common/list/labelStyle/LabelStylePublicOptions.d.ts +6 -0
- package/types/common/list/legend/LegendListExtenderOptions.d.ts +8 -0
- package/types/common/list/listView/ListViewListExtenderOptions.d.ts +25 -0
- package/types/common/list/namedFilter/InMemoryNamedFilterOptions.d.ts +23 -0
- package/types/common/list/namedFilter/NamedFilterListExtenderPublicOptions.d.ts +29 -0
- package/types/common/list/reorder/ReorderListExtenderPublicOptions.d.ts +4 -0
- package/types/common/list/select/SelectPublicOptions.d.ts +18 -0
- package/types/common/list/styleField/StyleFieldListExtenderPublicOptions.d.ts +3 -0
- package/types/common/list/toolbar/ToolbarPublicOptions.d.ts +22 -0
- package/types/common/list/virtualScroll/VIrtualScrollPublicOptions.d.ts +7 -0
- package/types/components/textWithIcon/textWithIconOptions.d.ts +17 -0
- package/types/data/fieldFilter/ToolbarFieldFilterOptions.d.ts +21 -0
- package/types/helpers/dateUtils.d.ts +23 -0
- package/types/services/api/ApiAccessor/apiV1Types.d.ts +1 -1
- package/types/services/api/ApiAccessor/apiV2Types.d.ts +6 -4
- package/types/services/api/ApiAccessor/binding/bindingApiTypes.d.ts +10 -5
- package/types/services/api/BaseQuery.d.ts +2 -0
- package/types/services/api/Query.d.ts +1 -2
- package/types/services/customModules/facades/Form/IFormFacade.d.ts +2 -1
- package/types/services/customModules/facades/ILegacyFacade.d.ts +35 -0
- package/types/services/customModules/facades/List/IListCellFacade.d.ts +1 -1
- package/types/services/customModules/facades/List/IListControlFacade.d.ts +1 -1
- package/types/services/customModules/facades/List/IListServiceFacade.d.ts +26 -7
- package/types/services/customModules/facades/List/ListOptions/IListOptions.d.ts +4 -0
- package/types/services/customModules/facades/internalModules/importModuleFacade.d.ts +5 -0
- package/types/services/customModules/facades/schema/IObjectFacade.d.ts +6 -1
- package/types/services/customModules/facades/schema/ISchemaFacade.d.ts +15 -2
- package/types/services/customModules/facades/schema/fieldBuilder/fieldBuilder/IFieldBuilder.d.ts +23 -0
- package/types/services/customModules/facades/schema/fieldBuilder/fieldFkBuilder/IFieldFkBuilder.d.ts +8 -0
- package/types/services/customModules/facades/services/INavigationFacade.d.ts +5 -1
- package/types/services/customModules/facades/utils/IApiFacade.d.ts +1 -1
- package/types/services/customModules/facades/utils/IUiComponentsFacade.d.ts +56 -0
- package/types/services/customModules/facades/utils/IUtilsFacade.d.ts +199 -1
- package/types/services/customModules/facades/utils/ImUtilsFacade.d.ts +16 -0
- package/types/views/form/schema/FormPageExtOptions.schema.d.ts +22 -0
- package/types/views/gallery/ImageFetchOptions.d.ts +5 -0
- package/types/views/list/{IListView.d.ts → ListViewOptions.d.ts} +20 -3
- package/types/views/list/features/aggregation/AggregationRowListOptions.d.ts +23 -0
- package/types/views/list/schema/ListPageExtOptions.schema.d.ts +123 -0
- package/types/views/list/schema/ListPageOptions.schema.d.ts +30 -1
- package/types/views/page/charts/ChartControlOptions.schema.d.ts +146 -8
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/types/helpers/ui/keyboardUtils/getCommandKey.d.ts +0 -2
- package/types/services/customModules/facades/formDashboard/IFormDashboardFacade.d.ts +0 -14
- package/types/views/page/charts/facade/I/320/241hartControlFacade.d.ts +0 -22
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@ import IMask from "imask";
|
|
|
2
2
|
export interface FieldSettings {
|
|
3
3
|
/**
|
|
4
4
|
* Маска отображает значение в заданном формате в списке и на форме. Например, число можно отобразить как "1 234,56" или "1234.56".
|
|
5
|
-
* [Подробнее о маске в документации](https://ics-it.gram.ax/mdt/content/
|
|
5
|
+
* [Подробнее о маске в документации](https://ics-it.gram.ax/mdt/content/dataView/formatMask).
|
|
6
6
|
*/
|
|
7
7
|
maskOptions?: IMask.AnyMaskedOptions;
|
|
8
8
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type CellControlExtenderOptions = {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { QuickFilterOptions } from "./QuickFilterOptions";
|
|
2
|
+
import { ValuesFilterOptions } from "./ValuesFilterOptions";
|
|
3
|
+
/**
|
|
4
|
+
* @title Настройки выпадающего меню в колонке
|
|
5
|
+
* @description Настройки задаются по пути в колонке. Например, `Title` или `ID_Department/Title`.
|
|
6
|
+
* @defaultSnippets [{ "label": "Настройка по умолчанию", "body": { "$1": { "valuesFilter": {} }}}]
|
|
7
|
+
*/
|
|
8
|
+
export interface ColumnMenuOptions {
|
|
9
|
+
[column: string]: ColumnMenuItemOptions;
|
|
10
|
+
}
|
|
11
|
+
export interface ColumnMenuItemOptions {
|
|
12
|
+
valuesFilter?: ValuesFilterOptions;
|
|
13
|
+
/**
|
|
14
|
+
* Настройки фильтра колоночного меню
|
|
15
|
+
*/
|
|
16
|
+
quickFilter?: QuickFilterOptions;
|
|
17
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { QuerySorting } from "mdtServices/api/QuerySorting";
|
|
2
|
+
/**
|
|
3
|
+
* Настройки фильтра по значениям
|
|
4
|
+
* @defaultSnippets
|
|
5
|
+
* [
|
|
6
|
+
* {
|
|
7
|
+
* "label": "Пример настройки",
|
|
8
|
+
* "body": { "sorting": [{ "path": "$1", "asc": true }], "mode": "show" }
|
|
9
|
+
* }
|
|
10
|
+
* ]
|
|
11
|
+
*/
|
|
12
|
+
export interface ValuesFilterOptions {
|
|
13
|
+
/**
|
|
14
|
+
* Настройки сортировки
|
|
15
|
+
*/
|
|
16
|
+
sorting?: QuerySorting[];
|
|
17
|
+
/**
|
|
18
|
+
* Режим отображения фильтра по значениям в меню колонки:
|
|
19
|
+
* - show - показать фильтр. Используется по умолчанию.
|
|
20
|
+
* - submenu - показать фильтр в подменю.
|
|
21
|
+
* - hide - скрыть фильтр.
|
|
22
|
+
*/
|
|
23
|
+
mode?: "show" | "submenu" | "hide";
|
|
24
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Button as ButtonPub } from "mdtScripts/views/form/controls/monacoEditor/jsonSchemas/Button.schema";
|
|
2
|
+
import { FormPageOptions } from "mdtScripts/views/form/schema/FormPageOptions.schema";
|
|
3
|
+
import { FormPageExtOptions } from "mdtScripts/views/form/schema/FormPageExtOptions.schema";
|
|
4
|
+
export interface FormListPublicOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Открытие формы в модальном окне
|
|
7
|
+
*/
|
|
8
|
+
modal?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Открытие формы в боковой панели
|
|
11
|
+
*/
|
|
12
|
+
sidebar?: boolean;
|
|
13
|
+
/** Настройки формы */
|
|
14
|
+
options?: FormPageOptions;
|
|
15
|
+
/** Настройки расширений формы */
|
|
16
|
+
extOptions?: FormPageExtOptions;
|
|
17
|
+
/**
|
|
18
|
+
* Отображение кнопки "удалить"
|
|
19
|
+
*/
|
|
20
|
+
delete?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Отображение кнопки "добавить"
|
|
23
|
+
*/
|
|
24
|
+
add?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Отображение кнопки "редактировать"
|
|
27
|
+
*/
|
|
28
|
+
edit?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Отображение колонки с кнопками "редактировать" для записей.
|
|
31
|
+
* По умолчанию колонка отображается.
|
|
32
|
+
*/
|
|
33
|
+
editColumn?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Иконка кнопки "редактировать"
|
|
36
|
+
*/
|
|
37
|
+
editIcon?: string;
|
|
38
|
+
/** Расширение кнопки "добавить" */
|
|
39
|
+
addButton?: ButtonPub;
|
|
40
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ImageFetchOptions } from "mdtScripts/views/gallery/ImageFetchOptions";
|
|
2
|
+
export interface GalleryListExtenderPublicOptions {
|
|
3
|
+
/** Отображение кнопки скачивания zip */
|
|
4
|
+
downloadZipButton?: boolean;
|
|
5
|
+
/** Отображение кнопки распечатки */
|
|
6
|
+
printButton?: boolean;
|
|
7
|
+
/** Настройка изображения предпросмотра */
|
|
8
|
+
thumb?: ImageFetchOptions;
|
|
9
|
+
/** Отображение кнопок поворота изображения */
|
|
10
|
+
showRotateButtons?: boolean;
|
|
11
|
+
}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
|
+
import { MdtRecord, RecordId } from "mdtScripts/common/Record";
|
|
1
2
|
import { FieldPath } from "../../../helpers/types";
|
|
2
3
|
import { QuerySortingObject } from "../../../services/api/QuerySorting";
|
|
4
|
+
import { Field } from "mdtScripts/common/Field";
|
|
5
|
+
import { ILayoutColumn } from "mdtScripts/views/list/ListViewOptions";
|
|
6
|
+
export declare type GroupingItemPublic = Grouping.ListExtender.Options.Settings.GroupItem;
|
|
7
|
+
export declare type GroupingItemDetails = Grouping.ListExtender.Options.Settings.ItemDetails;
|
|
8
|
+
export declare type GroupingListExtenderPublicOptions = Grouping.ListExtender.Options;
|
|
9
|
+
export interface GroupListExtenderOptions {
|
|
10
|
+
/**
|
|
11
|
+
* Группировочное поле
|
|
12
|
+
*/
|
|
13
|
+
groupField: string;
|
|
14
|
+
}
|
|
3
15
|
export declare namespace Grouping {
|
|
4
|
-
interface
|
|
5
|
-
groups?: GroupItem[];
|
|
16
|
+
interface Query {
|
|
17
|
+
groups?: Query.GroupItem[];
|
|
6
18
|
allParents?: boolean;
|
|
7
19
|
orphans?: boolean;
|
|
8
20
|
toggledValues?: string[][];
|
|
@@ -11,16 +23,20 @@ export declare namespace Grouping {
|
|
|
11
23
|
*/
|
|
12
24
|
calculateIsEmpty?: boolean;
|
|
13
25
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
namespace Query {
|
|
27
|
+
interface GroupItem {
|
|
28
|
+
fieldPath: FieldPath;
|
|
29
|
+
toggledValues?: any[];
|
|
30
|
+
withEmpty?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* @deprecated
|
|
33
|
+
* Направление сортировки группировочных записей (true - по убыванию, false - по возрастанию). Необходим для работы v1
|
|
34
|
+
*/
|
|
35
|
+
sortDesc?: boolean;
|
|
36
|
+
collapsed?: boolean;
|
|
37
|
+
select?: string[];
|
|
38
|
+
sorting?: QuerySortingObject[];
|
|
39
|
+
}
|
|
24
40
|
}
|
|
25
41
|
type GroupLabel = {
|
|
26
42
|
title?: string;
|
|
@@ -28,4 +44,134 @@ export declare namespace Grouping {
|
|
|
28
44
|
color?: string;
|
|
29
45
|
textColor?: string;
|
|
30
46
|
};
|
|
47
|
+
namespace Common { }
|
|
48
|
+
namespace ListExtender {
|
|
49
|
+
interface Options {
|
|
50
|
+
/** Настройки группировки */
|
|
51
|
+
settings?: Options.Settings;
|
|
52
|
+
/** Редактирование записей перетаскиванием */
|
|
53
|
+
dragDropEnabled?: boolean;
|
|
54
|
+
/** Дает пользователю возможность редактировать группировку */
|
|
55
|
+
userConfigurable?: boolean;
|
|
56
|
+
}
|
|
57
|
+
namespace Options {
|
|
58
|
+
interface Settings {
|
|
59
|
+
/** Настройки групп */
|
|
60
|
+
groups?: Omit<Settings.GroupItem, "sortDesc">[];
|
|
61
|
+
/** Отображать пустые группы */
|
|
62
|
+
allParents?: boolean;
|
|
63
|
+
/** Отображать записи без групп */
|
|
64
|
+
orphans?: boolean;
|
|
65
|
+
/** Обрабатывать группировочные строки как обычные записи, если их путь ссылается на FK поле на эту же таблицу */
|
|
66
|
+
treatSelfReferencingGroupsAsRecords?: boolean;
|
|
67
|
+
/** Если флаг включен, то у пустых групп будет скрыта иконка сворачивания.
|
|
68
|
+
* Работает только с APIv2
|
|
69
|
+
*/
|
|
70
|
+
calculateIsEmpty?: boolean;
|
|
71
|
+
}
|
|
72
|
+
namespace Settings {
|
|
73
|
+
interface GroupItem extends ItemDetails {
|
|
74
|
+
/** Путь группировки */
|
|
75
|
+
path: string;
|
|
76
|
+
/** Схлопнута по умолчанию */
|
|
77
|
+
collapsed?: boolean;
|
|
78
|
+
/** Дополнительная информация по группе (только если путь ссылается на FK) */
|
|
79
|
+
select?: string[];
|
|
80
|
+
/** Настройки метки группы */
|
|
81
|
+
label?: Grouping.GroupLabel | false;
|
|
82
|
+
/** Иконка, отображаемая в заголовке столбца для данного уровня группировки */
|
|
83
|
+
levelIcon?: string;
|
|
84
|
+
/**
|
|
85
|
+
* @deprecated
|
|
86
|
+
* Направление сортировки группировочных записей (true - по убыванию, false - по возрастанию). Необходим для работы v1
|
|
87
|
+
*/
|
|
88
|
+
sortDesc?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Настройка сортировки группировочных записей.
|
|
91
|
+
*/
|
|
92
|
+
sorting?: QuerySortingObject[];
|
|
93
|
+
/**
|
|
94
|
+
* Параметры отображения дополнительной информации, указанной в select.
|
|
95
|
+
* Объект, где ключ - это путь к полю из массива select, а значение - объект с настройками отображения.
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* selectView: {
|
|
100
|
+
* "name": { title: "Название" },
|
|
101
|
+
* "description": { title: "Описание" }
|
|
102
|
+
* }
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* Используется для настройки заголовков полей дополнительной информации,
|
|
106
|
+
* которая отображается в группировочных строках для связанных записей.
|
|
107
|
+
*/
|
|
108
|
+
selectView?: SelectView;
|
|
109
|
+
}
|
|
110
|
+
interface ItemDetails {
|
|
111
|
+
/** Максимальная ширина дополнительной информации */
|
|
112
|
+
detailsMaxWidth?: string;
|
|
113
|
+
/** Отображение дополнительной информации в одну строку */
|
|
114
|
+
detailsSingleLine?: boolean;
|
|
115
|
+
/** Отображение значений полей дополнительной информации в одну строку */
|
|
116
|
+
detailsValueSingleLine?: boolean;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
type GroupItem = {
|
|
121
|
+
fieldPath: FieldPath;
|
|
122
|
+
fieldPathFull: string;
|
|
123
|
+
$field: Field;
|
|
124
|
+
$pathFields: Field[];
|
|
125
|
+
groupsForDrop: GroupItem[];
|
|
126
|
+
} & Options.Settings.GroupItem;
|
|
127
|
+
interface ApplyGroupingSettings {
|
|
128
|
+
groupSettings: Options.Settings.GroupItem[];
|
|
129
|
+
flagAllParents: boolean;
|
|
130
|
+
flagOrphans: boolean;
|
|
131
|
+
}
|
|
132
|
+
interface Column extends ILayoutColumn {
|
|
133
|
+
$grouping?: boolean;
|
|
134
|
+
$group?: Grouping.ListExtender.GroupItem;
|
|
135
|
+
$groupIndex?: number;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
export declare type SelectView = {
|
|
140
|
+
[key: string]: {
|
|
141
|
+
title: string;
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
export interface GroupPayloadData {
|
|
145
|
+
Value: any;
|
|
146
|
+
Object?: MdtRecord;
|
|
147
|
+
Count: number;
|
|
148
|
+
Groups?: GroupData[];
|
|
149
|
+
/** Приходит только для APIv2 */
|
|
150
|
+
Empty?: boolean;
|
|
151
|
+
}
|
|
152
|
+
export interface GroupData extends GroupPayloadData {
|
|
153
|
+
Empty?: boolean;
|
|
154
|
+
$isLast?: boolean;
|
|
155
|
+
}
|
|
156
|
+
export interface GroupingRow {
|
|
157
|
+
$level: number;
|
|
158
|
+
$key: number | string;
|
|
159
|
+
$group: Grouping.ListExtender.GroupItem;
|
|
160
|
+
$groups: Grouping.ListExtender.GroupItem[];
|
|
161
|
+
$isLast?: boolean;
|
|
162
|
+
$data: GroupData;
|
|
163
|
+
$parentGroupsData: GroupData[];
|
|
164
|
+
$groupsDataFull: GroupData[];
|
|
165
|
+
$values: any[];
|
|
166
|
+
$pathValues: {
|
|
167
|
+
path: string;
|
|
168
|
+
value: any;
|
|
169
|
+
}[];
|
|
170
|
+
$groupingRow: boolean;
|
|
171
|
+
$system: boolean;
|
|
172
|
+
$attrs: any;
|
|
173
|
+
$expanded: boolean;
|
|
174
|
+
$hasChildGroups: boolean;
|
|
175
|
+
/** ID записи, если строка группировки соответствует записи этого же списка */
|
|
176
|
+
$id?: RecordId;
|
|
31
177
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IFilter } from "mdtServices/IFilter";
|
|
2
|
+
export interface ListViewListExtenderPublicOptions {
|
|
3
|
+
/**
|
|
4
|
+
* ListView, который будет применен к списку по умолчанию
|
|
5
|
+
*/
|
|
6
|
+
active?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Позволять менять выбранное по умолчанию представление в интерфейсе
|
|
9
|
+
*/
|
|
10
|
+
activeChangeable?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* @default { "op": "in", "p1": "Title", "p2": ["Название ListView"] }
|
|
13
|
+
* @description
|
|
14
|
+
* Фильтр для списка ListView
|
|
15
|
+
* Пример фильтрации по названию:
|
|
16
|
+
* ```
|
|
17
|
+
* {
|
|
18
|
+
* "op": "in",
|
|
19
|
+
* "p1": "Title",
|
|
20
|
+
* "p2": ["Название ListView"]
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
filter?: IFilter;
|
|
25
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IFilter } from "mdtServices/IFilter";
|
|
2
|
+
export interface InMemoryNamedFilterListExtenderPublicOptions {
|
|
3
|
+
/** Группы фильтров */
|
|
4
|
+
groups: InMemoryNamedFilterListExtenderItem[];
|
|
5
|
+
}
|
|
6
|
+
export declare type InMemoryNamedFilterListExtenderOptions = InMemoryNamedFilterListExtenderPublicOptions;
|
|
7
|
+
export interface InMemoryNamedFilterListExtenderItem {
|
|
8
|
+
/** Код группы */
|
|
9
|
+
code: string;
|
|
10
|
+
icon?: string;
|
|
11
|
+
order?: number;
|
|
12
|
+
select?: any;
|
|
13
|
+
/** Подсказка при наведении */
|
|
14
|
+
tooltip?: string;
|
|
15
|
+
filters: Array<{
|
|
16
|
+
/** Выбран по умолчанию */
|
|
17
|
+
selected?: boolean;
|
|
18
|
+
/** Заголовок фильтра */
|
|
19
|
+
title?: string;
|
|
20
|
+
/** Фильтр */
|
|
21
|
+
filter?: IFilter;
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { IFilter } from "mdtServices/IFilter";
|
|
2
|
+
export interface NamedFilterListExtenderPublicOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Код фильтра по умолчанию
|
|
5
|
+
*/
|
|
6
|
+
active?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Позволяет менять фильтр по умолчанию
|
|
9
|
+
*/
|
|
10
|
+
activeChangeable?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* @default { "op": "in", "p1": "Title", "p2": ["Название именованного фильтра"] }
|
|
13
|
+
* @description
|
|
14
|
+
* Фильтр для списка доступных фильтров
|
|
15
|
+
* Пример фильтрации по названию:
|
|
16
|
+
* ```
|
|
17
|
+
* {
|
|
18
|
+
* "op": "in",
|
|
19
|
+
* "p1": "Title",
|
|
20
|
+
* "p2": ["Название именованного фильтра"]
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
filter?: IFilter;
|
|
25
|
+
/**
|
|
26
|
+
* Список полей, которые доступны для фильтрации
|
|
27
|
+
*/
|
|
28
|
+
fieldFilter?: string[];
|
|
29
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface SelectListPublicOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Множественный выбор
|
|
4
|
+
*/
|
|
5
|
+
multi?: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Выбор по нажатию на всю строку
|
|
8
|
+
*/
|
|
9
|
+
wholeRow?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Игнорирование отсутствия Primary-поля
|
|
12
|
+
*/
|
|
13
|
+
ignorePrimaryFieldCheck?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Максимальное количество одновременно выбранных записей
|
|
16
|
+
*/
|
|
17
|
+
limit?: number;
|
|
18
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ViewElement } from "mdtScripts/helpers/types";
|
|
2
|
+
export interface ToolbarPublicOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Отображать количество записей
|
|
5
|
+
*/
|
|
6
|
+
count?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Отображать кнопку обновления
|
|
9
|
+
*/
|
|
10
|
+
refresh?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Добавление пользовательских элементов в левую область тулбара
|
|
13
|
+
*/
|
|
14
|
+
zones?: {
|
|
15
|
+
left?: ViewElement[];
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Скрыть меню расширенных кнопок
|
|
19
|
+
* @default true
|
|
20
|
+
*/
|
|
21
|
+
hideMore?: boolean;
|
|
22
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="../../../../mithril" />
|
|
2
|
+
/// <reference types="mithril" />
|
|
3
|
+
import { ViewElement } from "mdtScripts/helpers/types";
|
|
4
|
+
import { IconOptions } from "../icon/iconOptions";
|
|
5
|
+
export interface TextWithIconOptions {
|
|
6
|
+
icon?: BeforeTextIconOptions;
|
|
7
|
+
textContent: TextContentOptions;
|
|
8
|
+
}
|
|
9
|
+
export interface BeforeTextIconOptions {
|
|
10
|
+
name: string;
|
|
11
|
+
options?: IconOptions;
|
|
12
|
+
}
|
|
13
|
+
export interface TextContentOptions {
|
|
14
|
+
text: ViewElement | string[];
|
|
15
|
+
className?: string;
|
|
16
|
+
attrs?: _mithril.MithrilAttributes;
|
|
17
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FieldPath } from "mdtScripts/helpers/types";
|
|
2
|
+
import { BaseQuery } from "mdtServices/api/BaseQuery";
|
|
3
|
+
import { IFilter } from "mdtServices/IFilter";
|
|
4
|
+
/**
|
|
5
|
+
* @defaultSnippets [[{ "label": "Настройка по умолчанию", "body": { "query": { "filter": { "op": "eq", "p1": "$1", "p2": "$2" } }}}]
|
|
6
|
+
*/
|
|
7
|
+
export interface ToolbarAutopickOptions {
|
|
8
|
+
query: {
|
|
9
|
+
filter: IFilter;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export interface ToolbarFieldFilterListExtenderOptions {
|
|
13
|
+
/** Путь до поля по которому будет фильтроваться список */
|
|
14
|
+
fieldPath: FieldPath;
|
|
15
|
+
/** Наименование кнопки в тулбаре */
|
|
16
|
+
title?: string;
|
|
17
|
+
/** Дополнительные настройки для запроса значений фильтра */
|
|
18
|
+
query?: Omit<BaseQuery, "select">;
|
|
19
|
+
/** Настройки автоматического выбора фильтра по заданному условию */
|
|
20
|
+
autopick?: ToolbarAutopickOptions;
|
|
21
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const regexIso8601DateOnly: RegExp;
|
|
2
|
+
export declare function toISOString(date: Date, dateOnly?: boolean): string;
|
|
3
|
+
export declare function toISO8601DateString(date: Date): ISO8601DateString;
|
|
4
|
+
export declare function toUiDateString(date: Date): string;
|
|
5
|
+
export declare function toTimeString(date: Date): string;
|
|
6
|
+
export declare function toDateTimeNotZApiFormat(date: Date): string;
|
|
7
|
+
export declare function dateTimeModelFromUiDateString(dateString: MdtDateStringFormat): DateTimeModel;
|
|
8
|
+
export declare function dateFromUiDateString(dateString: MdtDateStringFormat): Date;
|
|
9
|
+
export interface DateTimeModel {
|
|
10
|
+
day: number;
|
|
11
|
+
monthIndex: number;
|
|
12
|
+
year: number;
|
|
13
|
+
time?: {
|
|
14
|
+
hours: number;
|
|
15
|
+
minutes: number;
|
|
16
|
+
seconds: number;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Строка с датой в формате "dd.mm.yyyy hh:mm:ss" или "dd.mm.yyyy"
|
|
21
|
+
*/
|
|
22
|
+
export declare type MdtDateStringFormat = string;
|
|
23
|
+
export declare type ISO8601DateString = string;
|
|
@@ -270,10 +270,7 @@ export declare namespace ApiV2 {
|
|
|
270
270
|
ticket: string;
|
|
271
271
|
};
|
|
272
272
|
dependency?: FetchDependencyTypes.RecordExtResponse;
|
|
273
|
-
hierarchy?:
|
|
274
|
-
hasChildren: boolean;
|
|
275
|
-
children?: Row[];
|
|
276
|
-
};
|
|
273
|
+
hierarchy?: Exts.Hierarchy;
|
|
277
274
|
binding?: {
|
|
278
275
|
status: BindingRowTypes;
|
|
279
276
|
};
|
|
@@ -301,12 +298,17 @@ export declare namespace ApiV2 {
|
|
|
301
298
|
}
|
|
302
299
|
interface Exts {
|
|
303
300
|
hierarchyLegacy?: Exts.HierarchyLegacy;
|
|
301
|
+
hierarchy?: Exts.Hierarchy;
|
|
304
302
|
group?: Exts.GroupQuery;
|
|
305
303
|
}
|
|
306
304
|
namespace Exts {
|
|
307
305
|
interface HierarchyLegacy {
|
|
308
306
|
rows: HierarchicalRecord[];
|
|
309
307
|
}
|
|
308
|
+
interface Hierarchy {
|
|
309
|
+
hasChildren: boolean;
|
|
310
|
+
children?: Fetch.Row[];
|
|
311
|
+
}
|
|
310
312
|
interface GroupQuery {
|
|
311
313
|
groups: OutputGroup[];
|
|
312
314
|
skippedRowsCount?: number;
|
|
@@ -28,10 +28,15 @@ export interface UnbindingDataItemTypes {
|
|
|
28
28
|
DateEnd?: Date | unknown;
|
|
29
29
|
}
|
|
30
30
|
export declare type BindingRowTypes = "Bound" | "NotBound" | "BoundOutside";
|
|
31
|
+
export interface BindingFilterParams {
|
|
32
|
+
targetRecordIds?: RecordId[];
|
|
33
|
+
dimensionId?: RecordId;
|
|
34
|
+
customFilterId?: RecordId;
|
|
35
|
+
}
|
|
31
36
|
export interface BindingExtData {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
};
|
|
37
|
+
bindingObjectId?: RecordId;
|
|
38
|
+
date?: Date | unknown;
|
|
39
|
+
filter?: {
|
|
40
|
+
status?: BindingRowTypes;
|
|
41
|
+
} & BindingFilterParams;
|
|
37
42
|
}
|