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.
Files changed (58) hide show
  1. package/package.json +1 -1
  2. package/types/common/FieldSettings.schema.d.ts +1 -1
  3. package/types/common/form/tabs/TabsFormExtenderOptions.d.ts +12 -0
  4. package/types/common/list/aggregation/AggregayionTypes.d.ts +2 -0
  5. package/types/common/list/cacheUpdateTime/CacheUpdateTimePublicOptions.d.ts +6 -0
  6. package/types/common/list/cellControlExtender/CellControlExtender.d.ts +1 -0
  7. package/types/common/list/columnMenu/ColumnMenuOptions.d.ts +17 -0
  8. package/types/common/list/columnMenu/QuickFilterOptions.d.ts +7 -0
  9. package/types/common/list/columnMenu/ValuesFilterOptions.d.ts +24 -0
  10. package/types/common/list/form/FormListPublicOptions.d.ts +40 -0
  11. package/types/common/list/gallery/GalleryListExtenderPublicOptions.d.ts +11 -0
  12. package/types/common/list/group/groupTypes.d.ts +158 -12
  13. package/types/common/list/historyType/HistoryTypeListExtenderOptions.d.ts +3 -0
  14. package/types/common/list/labelStyle/LabelStylePublicOptions.d.ts +6 -0
  15. package/types/common/list/legend/LegendListExtenderOptions.d.ts +8 -0
  16. package/types/common/list/listView/ListViewListExtenderOptions.d.ts +25 -0
  17. package/types/common/list/namedFilter/InMemoryNamedFilterOptions.d.ts +23 -0
  18. package/types/common/list/namedFilter/NamedFilterListExtenderPublicOptions.d.ts +29 -0
  19. package/types/common/list/reorder/ReorderListExtenderPublicOptions.d.ts +4 -0
  20. package/types/common/list/select/SelectPublicOptions.d.ts +18 -0
  21. package/types/common/list/styleField/StyleFieldListExtenderPublicOptions.d.ts +3 -0
  22. package/types/common/list/toolbar/ToolbarPublicOptions.d.ts +22 -0
  23. package/types/common/list/virtualScroll/VIrtualScrollPublicOptions.d.ts +7 -0
  24. package/types/components/textWithIcon/textWithIconOptions.d.ts +17 -0
  25. package/types/data/fieldFilter/ToolbarFieldFilterOptions.d.ts +21 -0
  26. package/types/helpers/dateUtils.d.ts +23 -0
  27. package/types/services/api/ApiAccessor/apiV1Types.d.ts +1 -1
  28. package/types/services/api/ApiAccessor/apiV2Types.d.ts +6 -4
  29. package/types/services/api/ApiAccessor/binding/bindingApiTypes.d.ts +10 -5
  30. package/types/services/api/BaseQuery.d.ts +2 -0
  31. package/types/services/api/Query.d.ts +1 -2
  32. package/types/services/customModules/facades/Form/IFormFacade.d.ts +2 -1
  33. package/types/services/customModules/facades/ILegacyFacade.d.ts +35 -0
  34. package/types/services/customModules/facades/List/IListCellFacade.d.ts +1 -1
  35. package/types/services/customModules/facades/List/IListControlFacade.d.ts +1 -1
  36. package/types/services/customModules/facades/List/IListServiceFacade.d.ts +26 -7
  37. package/types/services/customModules/facades/List/ListOptions/IListOptions.d.ts +4 -0
  38. package/types/services/customModules/facades/internalModules/importModuleFacade.d.ts +5 -0
  39. package/types/services/customModules/facades/schema/IObjectFacade.d.ts +6 -1
  40. package/types/services/customModules/facades/schema/ISchemaFacade.d.ts +15 -2
  41. package/types/services/customModules/facades/schema/fieldBuilder/fieldBuilder/IFieldBuilder.d.ts +23 -0
  42. package/types/services/customModules/facades/schema/fieldBuilder/fieldFkBuilder/IFieldFkBuilder.d.ts +8 -0
  43. package/types/services/customModules/facades/services/INavigationFacade.d.ts +5 -1
  44. package/types/services/customModules/facades/utils/IApiFacade.d.ts +1 -1
  45. package/types/services/customModules/facades/utils/IUiComponentsFacade.d.ts +56 -0
  46. package/types/services/customModules/facades/utils/IUtilsFacade.d.ts +199 -1
  47. package/types/services/customModules/facades/utils/ImUtilsFacade.d.ts +16 -0
  48. package/types/views/form/schema/FormPageExtOptions.schema.d.ts +22 -0
  49. package/types/views/gallery/ImageFetchOptions.d.ts +5 -0
  50. package/types/views/list/{IListView.d.ts → ListViewOptions.d.ts} +20 -3
  51. package/types/views/list/features/aggregation/AggregationRowListOptions.d.ts +23 -0
  52. package/types/views/list/schema/ListPageExtOptions.schema.d.ts +123 -0
  53. package/types/views/list/schema/ListPageOptions.schema.d.ts +30 -1
  54. package/types/views/page/charts/ChartControlOptions.schema.d.ts +146 -8
  55. package/dist/tsconfig.tsbuildinfo +0 -1
  56. package/types/helpers/ui/keyboardUtils/getCommandKey.d.ts +0 -2
  57. package/types/services/customModules/facades/formDashboard/IFormDashboardFacade.d.ts +0 -14
  58. package/types/views/page/charts/facade/I/320/241hartControlFacade.d.ts +0 -22
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mdt-client",
3
- "version": "31.3.29",
3
+ "version": "31.3.31",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -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/list/dataView/formatMask).
5
+ * [Подробнее о маске в документации](https://ics-it.gram.ax/mdt/content/dataView/formatMask).
6
6
  */
7
7
  maskOptions?: IMask.AnyMaskedOptions;
8
8
  }
@@ -0,0 +1,12 @@
1
+ export interface TabsFormExtenderPublicOptions {
2
+ tabs: FormTab[];
3
+ }
4
+ export interface FormTab {
5
+ code?: string;
6
+ icon?: string;
7
+ title: string;
8
+ layout?: any;
9
+ order?: number;
10
+ visible?: () => boolean;
11
+ onShow?: (init: boolean) => void;
12
+ }
@@ -0,0 +1,2 @@
1
+ import { ApiV1 } from "mdtServices/api/ApiAccessor/apiV1Types";
2
+ export declare type AggregationType = ApiV1.AggregationType;
@@ -0,0 +1,6 @@
1
+ export interface CacheUpdateTimePublicOptions {
2
+ /**
3
+ * Название параметра, содержащего дату
4
+ */
5
+ param: string;
6
+ }
@@ -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,7 @@
1
+ export interface QuickFilterOptions {
2
+ /**
3
+ * Задержка перед выполнением поиска (ms).
4
+ * @default 600
5
+ */
6
+ delayBeforeSearch?: number;
7
+ }
@@ -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 Group {
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
- interface GroupItem {
15
- fieldPath: FieldPath;
16
- collapsed?: boolean;
17
- select?: FieldPath[];
18
- sorting?: QuerySortingObject[];
19
- label?: GroupLabel | false;
20
- levelIcon?: string;
21
- toggledValues?: any[];
22
- withEmpty?: boolean;
23
- sortDesc?: boolean;
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,3 @@
1
+ export interface HistoryTypeListExtenderOptions {
2
+ enabled: boolean;
3
+ }
@@ -0,0 +1,6 @@
1
+ export interface LabelStylePublicOptions {
2
+ /**
3
+ * Тип отображения: default - простое отображение стиля, icon - отображение с иконкой
4
+ */
5
+ viewStyle?: "default" | "icon";
6
+ }
@@ -0,0 +1,8 @@
1
+ import { IButton } from "mdtScripts/views/form/controls/monacoEditor/jsonSchemas/Button.schema";
2
+ export interface LegendListExtenderOptions {
3
+ items?: LegendItem[];
4
+ }
5
+ export interface LegendItem extends IButton {
6
+ title: string;
7
+ cssClass: string;
8
+ }
@@ -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,4 @@
1
+ export interface ReorderListExtenderPublicOptions {
2
+ orderField?: string;
3
+ startNumber?: number;
4
+ }
@@ -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,3 @@
1
+ export interface StyleFieldListExtenderPublicOptions {
2
+ styleField?: string;
3
+ }
@@ -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,7 @@
1
+ export interface VirtualScrollListPublicOptions {
2
+ /**
3
+ * Количество подгружаемых элементов
4
+ * @default 50
5
+ */
6
+ pageSize?: number;
7
+ }
@@ -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;
@@ -139,7 +139,7 @@ export declare namespace ApiV1 {
139
139
  ticket: string;
140
140
  list: RecordId[];
141
141
  };
142
- $audit: {
142
+ $audit?: {
143
143
  ticket: string;
144
144
  };
145
145
  /**
@@ -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
- BindingObjectId?: RecordId;
33
- Date?: Date | unknown;
34
- Filter?: {
35
- Status?: BindingRowTypes;
36
- };
37
+ bindingObjectId?: RecordId;
38
+ date?: Date | unknown;
39
+ filter?: {
40
+ status?: BindingRowTypes;
41
+ } & BindingFilterParams;
37
42
  }
@@ -19,5 +19,7 @@ export interface BaseQuery {
19
19
  * { "search": "Some value" }
20
20
  */
21
21
  functionParams?: Record<string, any>;
22
+ /** Получение уникальных записей */
23
+ distinct?: boolean;
22
24
  }
23
25
  export declare type QuerySelect = string[];