mdt-client 31.3.7 → 31.3.9

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 (120) hide show
  1. package/dist/index.d.ts +11 -11
  2. package/dist/index.js +16 -16
  3. package/dist/tsconfig.tsbuildinfo +1 -1
  4. package/package.json +29 -29
  5. package/readme.md +15 -15
  6. package/types/common/Datasource.d.ts +9 -9
  7. package/types/common/Field.d.ts +41 -41
  8. package/types/common/MdtField.d.ts +9 -9
  9. package/types/common/MdtObject.d.ts +7 -7
  10. package/types/common/Record.d.ts +24 -24
  11. package/types/common/Table.d.ts +58 -47
  12. package/types/common/list/group/groupTypes.d.ts +26 -26
  13. package/types/common/list/hierarchy/hierarchyTypes.d.ts +48 -48
  14. package/types/common/serverMessage/ServerMessageTypes.d.ts +17 -0
  15. package/types/components/baseFormControls/input/inputOptions.d.ts +31 -31
  16. package/types/components/button/baseButton/buttonOptions.d.ts +12 -12
  17. package/types/components/buttonGroup/buttonGroupOptions.d.ts +7 -7
  18. package/types/components/dropdown/menu/item/dropdownInputItemOptions.d.ts +5 -5
  19. package/types/components/dropdown/menu/item/dropdownItemWrapOptions.d.ts +19 -19
  20. package/types/components/dropdown/menuActionItem/dropdownMenuItemOptions.d.ts +32 -30
  21. package/types/components/form/fieldView/fieldViewOptions.d.ts +12 -12
  22. package/types/components/form/label/labelOptions.d.ts +22 -22
  23. package/types/components/icon/iconOptions.d.ts +21 -22
  24. package/types/components/iconButton/iconButtonOptions.d.ts +10 -10
  25. package/types/components/processPrincipalsList/ProcessPrincipalsListItem.d.ts +5 -5
  26. package/types/components/resizablePanels/panelTitle/panelTitleOptions.d.ts +16 -16
  27. package/types/components/resizablePanels/panelToolbar/panelToolbarOptions.d.ts +4 -4
  28. package/types/components/resizablePanels/resizablePanel/resizablePanelOptions.d.ts +24 -24
  29. package/types/components/resizablePanels/resizablePanelsOptions.d.ts +22 -22
  30. package/types/components/toggleablePanels/toggleablePanelsOptions.d.ts +40 -40
  31. package/types/data/active/ActivationListAdapterTypes.d.ts +6 -6
  32. package/types/datasources/FetchResult.d.ts +5 -5
  33. package/types/helpers/IUi.d.ts +2 -1
  34. package/types/helpers/deleteFromArray.d.ts +1 -1
  35. package/types/helpers/events/EventEmitter.d.ts +7 -7
  36. package/types/helpers/fireEvent.d.ts +4 -4
  37. package/types/helpers/formatOptions.d.ts +6 -6
  38. package/types/helpers/formattedText.d.ts +9 -9
  39. package/types/helpers/pipeline/Pipeline.d.ts +20 -20
  40. package/types/helpers/redraw.d.ts +16 -16
  41. package/types/helpers/types.d.ts +85 -84
  42. package/types/helpers/ui/elementModificators/focusableComponent.d.ts +15 -15
  43. package/types/helpers/ui/elementModificators/modificatorsTypes.d.ts +4 -4
  44. package/types/helpers/ui/keyboardUtils/keyboardUtils.d.ts +23 -23
  45. package/types/helpers/utils/classNames.d.ts +20 -20
  46. package/types/helpers/utils/keyStorage/KeyStorage.d.ts +6 -6
  47. package/types/helpers/utils/object.d.ts +3 -3
  48. package/types/helpers/utils/stringifyControlSize.d.ts +3 -3
  49. package/types/helpers/utils/valued/getValued.d.ts +18 -18
  50. package/types/helpers/zone/IZone.d.ts +8 -8
  51. package/types/security/PermissionLevel.d.ts +40 -40
  52. package/types/security/User.d.ts +19 -19
  53. package/types/services/HotkeyManager.d.ts +4 -4
  54. package/types/services/IFilter.d.ts +309 -309
  55. package/types/services/ModuleData.d.ts +9 -9
  56. package/types/services/api/ApiAccessor/apiV1Types.d.ts +266 -266
  57. package/types/services/api/ApiAccessor/apiV2Types.d.ts +556 -529
  58. package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/count/count.d.ts +10 -10
  59. package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/query/exts/hierarchy/hierarchyQueryHelpersTypes.d.ts +28 -28
  60. package/types/services/api/ApiAccessorRequestAdapter/handlers/fetch/helpers/query/exts/placeIn/placeInQueryTypes.d.ts +9 -9
  61. package/types/services/api/ApiAccessorRequestAdapter/handlers/messageTypes.d.ts +37 -37
  62. package/types/services/api/ApiAccessorRequestAdapter/message/apiV2MessageTypes.d.ts +2 -2
  63. package/types/services/api/ApiRequestOptions.d.ts +43 -35
  64. package/types/services/api/BaseQuery.d.ts +23 -23
  65. package/types/services/api/Query.d.ts +59 -59
  66. package/types/services/api/QuerySorting.d.ts +18 -18
  67. package/types/services/api/ServerResonseType.d.ts +2 -2
  68. package/types/services/commands/Command.d.ts +22 -22
  69. package/types/services/commands/CommandGroup.d.ts +15 -15
  70. package/types/services/commands/CommandManager.d.ts +77 -77
  71. package/types/services/customModules/facades/Form/IFieldControlFacade.d.ts +26 -26
  72. package/types/services/customModules/facades/Form/IFieldControlManagerFacade.d.ts +36 -36
  73. package/types/services/customModules/facades/Form/IFieldStateFacade.d.ts +13 -13
  74. package/types/services/customModules/facades/Form/IFormControlFacade.d.ts +133 -133
  75. package/types/services/customModules/facades/Form/IFormFacade.d.ts +92 -92
  76. package/types/services/customModules/facades/IAppFacade.d.ts +38 -38
  77. package/types/services/customModules/facades/IAuthFacade.d.ts +9 -9
  78. package/types/services/customModules/facades/ILegacyFacade.d.ts +129 -126
  79. package/types/services/customModules/facades/IMdtFacade.d.ts +77 -77
  80. package/types/services/customModules/facades/IModuleRegistryFacade.d.ts +5 -5
  81. package/types/services/customModules/facades/IPageFacade.d.ts +7 -7
  82. package/types/services/customModules/facades/List/Column/IColumnFacade.d.ts +7 -7
  83. package/types/services/customModules/facades/List/IListCellFacade.d.ts +8 -8
  84. package/types/services/customModules/facades/List/IListComponentFacade.d.ts +10 -10
  85. package/types/services/customModules/facades/List/IListControlFacade.d.ts +69 -69
  86. package/types/services/customModules/facades/List/IListRowFacade.d.ts +2 -2
  87. package/types/services/customModules/facades/List/IListServiceFacade.d.ts +48 -48
  88. package/types/services/customModules/facades/components/CodeEditorFacade.d.ts +9 -9
  89. package/types/services/customModules/facades/components/ModalFacade.d.ts +4 -4
  90. package/types/services/customModules/facades/internalModules/importFormCtrl.types.d.ts +76 -70
  91. package/types/services/customModules/facades/internalModules/importModuleFacade.d.ts +48 -48
  92. package/types/services/customModules/facades/internalModules/modulesFacadeTypes.d.ts +11 -11
  93. package/types/services/customModules/facades/internalModules/statusFacade.d.ts +13 -13
  94. package/types/services/customModules/facades/record/IRecordFacade.d.ts +13 -13
  95. package/types/services/customModules/facades/record/IRecordManagerFacade.d.ts +5 -5
  96. package/types/services/customModules/facades/schema/IFieldFacade.d.ts +9 -9
  97. package/types/services/customModules/facades/schema/IObjectFacade.d.ts +15 -15
  98. package/types/services/customModules/facades/schema/ISchemaFacade.d.ts +5 -5
  99. package/types/services/customModules/facades/services/CommandManagerFacade.d.ts +11 -11
  100. package/types/services/customModules/facades/services/IListButtonExtendPipelineService.d.ts +13 -13
  101. package/types/services/customModules/facades/services/INavigationFacade.d.ts +74 -53
  102. package/types/services/customModules/facades/services/ISecurityFacade.d.ts +13 -13
  103. package/types/services/customModules/facades/utils/IApiFacade.d.ts +72 -72
  104. package/types/services/customModules/facades/utils/IUiComponentsFacade.d.ts +61 -57
  105. package/types/services/customModules/facades/utils/IUiFacade.d.ts +84 -84
  106. package/types/services/customModules/facades/utils/IUtilsFacade.d.ts +19 -19
  107. package/types/services/customModules/facades/utils/ImUtilsFacade.d.ts +26 -26
  108. package/types/services/dropdown/IDropDownMenu.d.ts +41 -41
  109. package/types/views/controls/Control.d.ts +7 -7
  110. package/types/views/controls/panels/panelOptions.d.ts +15 -15
  111. package/types/views/form/controls/commonControl/ICommonControl.d.ts +29 -29
  112. package/types/views/form/controls/fileupload/FileInputFacade.types.d.ts +6 -6
  113. package/types/views/form/controls/monacoEditor/MonacoCodeOptions.schema.d.ts +23 -23
  114. package/types/views/form/controls/monacoEditor/jsonSchemas/Button.schema.d.ts +70 -70
  115. package/types/views/form/controls/toggleablePanels/editor/toggleablePanelsEditorFacadeOptions.d.ts +21 -21
  116. package/types/views/form/formTypes.d.ts +4 -4
  117. package/types/views/form/schema/FormPageOptions.schema.d.ts +19 -19
  118. package/types/views/list/IListView.d.ts +71 -71
  119. package/types/views/list/schema/ListPageOptions.schema.d.ts +114 -114
  120. package/types/views/page/PageZoneTypes.d.ts +1 -1
@@ -1,309 +1,309 @@
1
- /**
2
- * Фильтр
3
- *
4
- * @default { "op": "eq", "p1": "", "p2": "" }
5
- */
6
- export declare type IFilter = IFilterItem | IFilterGroup | IFilterIn;
7
- export declare type FilterKeys = keyof IFilter | keyof IFilterItem | keyof IFilterGroup;
8
- export declare type FilterUserIdOp = "userId";
9
- export declare type FilterOp = "eq" | "ne" | "gt" | "ge" | "lt" | "le" | "startsWith" | "endsWith" | "contains" | "fulltext" | "equalTemplate" | "queryIn" | "notStartsWith" | "notContains" | "notEndsWith" | "null" | "notNull" | FilterUserIdOp | FilterInOperation;
10
- export declare type FilterGroupOp = "and" | "or";
11
- export declare type AnyFilterOp = FilterOp | FilterGroupOp;
12
- export interface QueryInValue {
13
- table?: string;
14
- field?: string;
15
- args?: string;
16
- filter?: IFilter;
17
- }
18
- /** Группировка фильтров */
19
- export interface IFilterGroup {
20
- op: FilterGroupOp;
21
- groups: IFilter[];
22
- not?: boolean;
23
- }
24
- /** Фильтр */
25
- export interface IFilterItem {
26
- op: FilterOp;
27
- /** Поле, по которому происходит фильтрация */
28
- p1: string;
29
- /** Значение фильтра */
30
- p2: string | number | Date | QueryInValue;
31
- not?: boolean;
32
- cast?: "date";
33
- }
34
- export declare type FilterInOperation = "in";
35
- /** Фильтр */
36
- export interface IFilterIn extends Omit<IFilterItem, "op" | "p2"> {
37
- op: FilterInOperation;
38
- p2: {
39
- table: string;
40
- field: string;
41
- filter?: IFilter;
42
- args?: any;
43
- } | (string | Date)[];
44
- }
45
- export interface FilterSetterOptions {
46
- fireEvents?: boolean;
47
- }
48
- export interface FilterConstructor {
49
- new (): Filter;
50
- /**
51
- * Создает группу фильтров, где все условия должны быть выполнены
52
- *
53
- * @param groups Группа фильтров - указываются необходимые фильтры
54
- *
55
- * **Пример**
56
- *
57
- * Поле `Name` должно быть равно `Ivan` и поле `LastName` должно быть равно `Ivanov`
58
- * ```js
59
- * Filter.and(Filter.eq('Name', 'Ivan'), Filter.eq('LastName', 'Ivanov'))
60
- * ```
61
- */
62
- and(...groups: IFilter[]): IFilterGroup;
63
- /**
64
- * Создает группу фильтров, где хотя бы одно условие должно быть выполнено
65
- *
66
- * @param groups Группа фильтров - указываются необходимые фильтры
67
- *
68
- * Поле `Name` должно быть равно `Ivan` или поле `Name` должно быть равно `Petr`
69
- * **Пример**
70
- *
71
- * ```js
72
- * Filter.or(Filter.eq('Name', 'Ivan'), Filter.eq('Name', 'Petr'))
73
- * ```
74
- */
75
- or(...groups: IFilter[]): IFilterGroup;
76
- /**
77
- * Создает фильтр, который проверяет равенство значения поля заданному значению
78
- *
79
- * @param fieldPath Поле, по которому происходит фильтрация
80
- * @param value Значение фильтра
81
- *
82
- * **Пример**
83
- *
84
- * Поле `Name` должно быть равно `Ivan`
85
- * ```js
86
- * Filter.eq('Name', 'Ivan')
87
- * ```
88
- */
89
- eq(fieldPath: string, value: any): IFilterItem;
90
- /**
91
- * Создает фильтр, который проверяет неравенство значения поля заданному значению
92
- *
93
- * @param fieldPath Поле, по которому происходит фильтрация
94
- * @param value Значение фильтра
95
- *
96
- * **Пример**
97
- *
98
- * Поле `Name` не должно быть равно `Ivan`
99
- * ```js
100
- * Filter.ne('Name', 'Ivan')
101
- * ```
102
- */
103
- ne(fieldPath: string, value: any): IFilterItem;
104
- /**
105
- * Создает фильтр, который проверяет, что значение указанного поля больше заданного значения
106
- *
107
- * @param fieldPath Поле, по которому происходит фильтрация
108
- * @param value Значение фильтра
109
- *
110
- * **Пример**
111
- *
112
- * Поле `SumOrder` должно быть больше `100000`
113
- * ```js
114
- * Filter.gt('SumOrder', 100000)
115
- * ```
116
- */
117
- gt(fieldPath: string, value: any): IFilterItem;
118
- /**
119
- * Создает фильтр, который проверяет, что значение указанного поля больше или равно заданному значению
120
- *
121
- * @param fieldPath Поле, по которому происходит фильтрация
122
- * @param value Значение фильтра
123
- *
124
- * **Пример**
125
- *
126
- * Поле `SumOrder` должно быть больше или равно `100000`
127
- * ```js
128
- * Filter.ge('SumOrder', 100000)
129
- * ```
130
- */
131
- ge(fieldPath: string, value: any): IFilterItem;
132
- /**
133
- * Создает фильтр, который проверяет, что значение указанного поля меньше заданного значения
134
- *
135
- * @param fieldPath Поле, по которому происходит фильтрация
136
- * @param value Значение фильтра
137
- *
138
- * **Пример**
139
- *
140
- * Поле `SumOrder` должно быть меньше `100000`
141
- * ```js
142
- * Filter.lt('SumOrder', 100000)
143
- * ```
144
- */
145
- lt(fieldPath: string, value: any): IFilterItem;
146
- /**
147
- * Создает фильтр, который проверяет, что значение указанного поля меньше или равно заданному значению
148
- *
149
- * @param fieldPath Поле, по которому происходит фильтрация
150
- * @param value Значение фильтра
151
- *
152
- * **Пример**
153
- *
154
- * Поле `SumOrder` должно быть меньше или равно `100000`
155
- * ```js
156
- * Filter.le('SumOrder', 100000)
157
- * ```
158
- */
159
- le(fieldPath: string, value: any): IFilterItem;
160
- /**
161
- * Создает фильтр, который проверяет, начинается ли значение указанного поля с заданной подстроки
162
- *
163
- * @param fieldPath Поле, по которому происходит фильтрация
164
- * @param value Подстрока, с которой должно начинаться значение
165
- *
166
- * **Пример**
167
- *
168
- * Поле `LastName` должно начинаться с `Al`
169
- * ```js
170
- * Filter.startsWith('LastName', 'Al')
171
- * ```
172
- */
173
- startsWith(fieldPath: string, value: any): IFilterItem;
174
- /**
175
- * Создает фильтр, который проверяет, заканчивается ли значение указанного поля на заданную подстроку
176
- *
177
- * @param fieldPath Поле, по которому происходит фильтрация
178
- * @param value Подстрока, с которой должно заканчиваться значение
179
- *
180
- * **Пример**
181
- *
182
- * Поле `LastName` должно заканчиваться на `ov`
183
- * ```js
184
- * Filter.endsWith('LastName', 'ov')
185
- * ```
186
- */
187
- endsWith(fieldPath: string, value: any): IFilterItem;
188
- /**
189
- * Создает фильтр, который проверяет, содержит ли значение указанного поля заданную подстроку
190
- *
191
- * @param fieldPath Поле, по которому происходит фильтрация
192
- * @param value Подстрока, которую должно содержать значение
193
- *
194
- * **Пример**
195
- *
196
- * Поле `LastName` должно содержать `an`
197
- * ```js
198
- * Filter.contains('LastName', 'an')
199
- * ```
200
- */
201
- contains(fieldPath: string, value: any): IFilterItem;
202
- /**
203
- * Создает фильтр для полнотекстового поиска по указанному полю
204
- *
205
- * @param fieldPath Поле, по которому происходит фильтрация
206
- * @param value Подстрока, которую должно содержать значение
207
- *
208
- * **Пример**
209
- *
210
- * Поле `Description` должно содержать `example`
211
- * ```js
212
- * Filter.fulltext('Description', 'example');
213
- * ```
214
- */
215
- fulltext(fieldPath: string, value: any): IFilterItem;
216
- /**
217
- * Создает фильтр, который исключает значения, соответствующие указанному фильтру
218
- *
219
- * @param filter Фильтр
220
- *
221
- * **Пример**
222
- *
223
- * Поле `Name` должно содержать любое значение кроме `Ivan`
224
- * ```js
225
- * Filter.not(Filter.eq('Name', 'Ivan'))
226
- * ```
227
- */
228
- not(filter: IFilterItem): IFilterItem;
229
- /**
230
- * Фильтр, проверяющий, что поле содержит одно из перечисленных значений
231
- *
232
- * @param fieldPath Поле, по которому происходит фильтрация
233
- * @param array Массив значений
234
- *
235
- * **Пример**
236
- *
237
- * Поле `Name` должно содержать либо значение `Ivan`, либо `Petr`
238
- * ```js
239
- * Filter.in('Name', ['Ivan', 'Petr'])
240
- * ```
241
- */
242
- in(fieldPath: string, array: any[]): IFilterIn;
243
- /**
244
- * Строится фильтр для поля на основании значений из другой таблицы
245
- * @param field Поле, по которому происходит фильтрация
246
- * @param objectCode Код объекта, из которой берутся значения. Может быть таблицей, представлением, функцей и т.д.
247
- * @param subField Поле, по которому происходит фильтрация в другой таблице
248
- * @param filter Фильтр, который применяется к другой таблице
249
- * @param args Аргументы для объекта (например для функции). Можно задать, например, в виде `{ Search: "Москва" }`.
250
- *
251
- * **Пример**
252
- *
253
- * Отфильтруется поле `Title` текущей таблицы по полю `Name` таблицы `mdt.Employee`, где поле `Name` равно `Ivan`
254
- * ```js
255
- * Filter.queryIn('Title', 'mdt.Employee', 'Name', Filter.eq('Name', 'Ivan'))
256
- * ```
257
- */
258
- queryIn(field: string, objectCode: string, subField: string, filter?: IFilter, args?: any): IFilterIn;
259
- /**
260
- * Преобразует тип данных фильтра
261
- *
262
- * @param filter Фильтр
263
- * @param cast Значение, к типу которого приводится фильтр
264
- *
265
- * **Пример**
266
- *
267
- * Значение поля `DateTime` приводится к типу `date` (`value` содержит значение типа `datetime`)
268
- * ```js
269
- * Filter.cast(Filter.eq('DateTime', value), 'date')
270
- * ```
271
- */
272
- cast(filter: IFilter, cast: string): IFilter;
273
- /**
274
- * Проверка, что фильтр пустой
275
- *
276
- * **Пример**
277
- *
278
- * Проверка, что `filter` пустой
279
- * ```js
280
- * if (filter === Filter.empty) { ... }
281
- * ```
282
- */
283
- empty: any;
284
- }
285
- export declare class Filter {
286
- static empty: IFilter;
287
- static isEmptyFilter(filter: IFilter): boolean;
288
- static mergeFilters(orig: IFilter, filter: IFilter): IFilter;
289
- static and(...groups: any[]): IFilterGroup;
290
- static or(...groups: any[]): IFilterGroup;
291
- static eq(p1: any, p2: any): IFilterItem;
292
- static ne(p1: any, p2: any): IFilterItem;
293
- static gt(p1: any, p2: any): IFilterItem;
294
- static ge(p1: any, p2: any): IFilterItem;
295
- static lt(p1: any, p2: any): IFilterItem;
296
- static le(p1: any, p2: any): IFilterItem;
297
- static startsWith(p1: any, p2: any): IFilterItem;
298
- static endsWith(p1: any, p2: any): IFilterItem;
299
- static contains(p1: any, p2: any): IFilterItem;
300
- static fulltext(p1: any, p2: any): IFilterItem;
301
- static not(f: any): IFilterItem;
302
- static in(p1: any, ar: any): IFilterIn;
303
- static queryIn(field: any, table: any, subField: any, filter?: any, args?: any): IFilterIn;
304
- static cast(filter: any, cast: any): IFilter;
305
- static equalTemplate(p1: any, p2: any): IFilter;
306
- static isFilterGroup(filter: IFilter): filter is IFilterGroup;
307
- static isFilterItem(filter: IFilter): filter is IFilterItem;
308
- static getP2(filter: IFilter): string | number | QueryInValue | Date;
309
- }
1
+ /**
2
+ * Фильтр
3
+ *
4
+ * @default { "op": "eq", "p1": "", "p2": "" }
5
+ */
6
+ export declare type IFilter = IFilterItem | IFilterGroup | IFilterIn;
7
+ export declare type FilterKeys = keyof IFilter | keyof IFilterItem | keyof IFilterGroup;
8
+ export declare type FilterUserIdOp = "userId";
9
+ export declare type FilterOp = "eq" | "ne" | "gt" | "ge" | "lt" | "le" | "startsWith" | "endsWith" | "contains" | "fulltext" | "equalTemplate" | "queryIn" | "notStartsWith" | "notContains" | "notEndsWith" | "null" | "notNull" | FilterUserIdOp | FilterInOperation;
10
+ export declare type FilterGroupOp = "and" | "or";
11
+ export declare type AnyFilterOp = FilterOp | FilterGroupOp;
12
+ export interface QueryInValue {
13
+ table?: string;
14
+ field?: string;
15
+ args?: string;
16
+ filter?: IFilter;
17
+ }
18
+ /** Группировка фильтров */
19
+ export interface IFilterGroup {
20
+ op: FilterGroupOp;
21
+ groups: IFilter[];
22
+ not?: boolean;
23
+ }
24
+ /** Фильтр */
25
+ export interface IFilterItem {
26
+ op: FilterOp;
27
+ /** Поле, по которому происходит фильтрация */
28
+ p1: string;
29
+ /** Значение фильтра */
30
+ p2: string | number | Date | QueryInValue;
31
+ not?: boolean;
32
+ cast?: "date";
33
+ }
34
+ export declare type FilterInOperation = "in";
35
+ /** Фильтр */
36
+ export interface IFilterIn extends Omit<IFilterItem, "op" | "p2"> {
37
+ op: FilterInOperation;
38
+ p2: {
39
+ table: string;
40
+ field: string;
41
+ filter?: IFilter;
42
+ args?: any;
43
+ } | (string | Date)[];
44
+ }
45
+ export interface FilterSetterOptions {
46
+ fireEvents?: boolean;
47
+ }
48
+ export interface FilterConstructor {
49
+ new (): Filter;
50
+ /**
51
+ * Создает группу фильтров, где все условия должны быть выполнены
52
+ *
53
+ * @param groups Группа фильтров - указываются необходимые фильтры
54
+ *
55
+ * **Пример**
56
+ *
57
+ * Поле `Name` должно быть равно `Ivan` и поле `LastName` должно быть равно `Ivanov`
58
+ * ```js
59
+ * Filter.and(Filter.eq('Name', 'Ivan'), Filter.eq('LastName', 'Ivanov'))
60
+ * ```
61
+ */
62
+ and(...groups: IFilter[]): IFilterGroup;
63
+ /**
64
+ * Создает группу фильтров, где хотя бы одно условие должно быть выполнено
65
+ *
66
+ * @param groups Группа фильтров - указываются необходимые фильтры
67
+ *
68
+ * Поле `Name` должно быть равно `Ivan` или поле `Name` должно быть равно `Petr`
69
+ * **Пример**
70
+ *
71
+ * ```js
72
+ * Filter.or(Filter.eq('Name', 'Ivan'), Filter.eq('Name', 'Petr'))
73
+ * ```
74
+ */
75
+ or(...groups: IFilter[]): IFilterGroup;
76
+ /**
77
+ * Создает фильтр, который проверяет равенство значения поля заданному значению
78
+ *
79
+ * @param fieldPath Поле, по которому происходит фильтрация
80
+ * @param value Значение фильтра
81
+ *
82
+ * **Пример**
83
+ *
84
+ * Поле `Name` должно быть равно `Ivan`
85
+ * ```js
86
+ * Filter.eq('Name', 'Ivan')
87
+ * ```
88
+ */
89
+ eq(fieldPath: string, value: any): IFilterItem;
90
+ /**
91
+ * Создает фильтр, который проверяет неравенство значения поля заданному значению
92
+ *
93
+ * @param fieldPath Поле, по которому происходит фильтрация
94
+ * @param value Значение фильтра
95
+ *
96
+ * **Пример**
97
+ *
98
+ * Поле `Name` не должно быть равно `Ivan`
99
+ * ```js
100
+ * Filter.ne('Name', 'Ivan')
101
+ * ```
102
+ */
103
+ ne(fieldPath: string, value: any): IFilterItem;
104
+ /**
105
+ * Создает фильтр, который проверяет, что значение указанного поля больше заданного значения
106
+ *
107
+ * @param fieldPath Поле, по которому происходит фильтрация
108
+ * @param value Значение фильтра
109
+ *
110
+ * **Пример**
111
+ *
112
+ * Поле `SumOrder` должно быть больше `100000`
113
+ * ```js
114
+ * Filter.gt('SumOrder', 100000)
115
+ * ```
116
+ */
117
+ gt(fieldPath: string, value: any): IFilterItem;
118
+ /**
119
+ * Создает фильтр, который проверяет, что значение указанного поля больше или равно заданному значению
120
+ *
121
+ * @param fieldPath Поле, по которому происходит фильтрация
122
+ * @param value Значение фильтра
123
+ *
124
+ * **Пример**
125
+ *
126
+ * Поле `SumOrder` должно быть больше или равно `100000`
127
+ * ```js
128
+ * Filter.ge('SumOrder', 100000)
129
+ * ```
130
+ */
131
+ ge(fieldPath: string, value: any): IFilterItem;
132
+ /**
133
+ * Создает фильтр, который проверяет, что значение указанного поля меньше заданного значения
134
+ *
135
+ * @param fieldPath Поле, по которому происходит фильтрация
136
+ * @param value Значение фильтра
137
+ *
138
+ * **Пример**
139
+ *
140
+ * Поле `SumOrder` должно быть меньше `100000`
141
+ * ```js
142
+ * Filter.lt('SumOrder', 100000)
143
+ * ```
144
+ */
145
+ lt(fieldPath: string, value: any): IFilterItem;
146
+ /**
147
+ * Создает фильтр, который проверяет, что значение указанного поля меньше или равно заданному значению
148
+ *
149
+ * @param fieldPath Поле, по которому происходит фильтрация
150
+ * @param value Значение фильтра
151
+ *
152
+ * **Пример**
153
+ *
154
+ * Поле `SumOrder` должно быть меньше или равно `100000`
155
+ * ```js
156
+ * Filter.le('SumOrder', 100000)
157
+ * ```
158
+ */
159
+ le(fieldPath: string, value: any): IFilterItem;
160
+ /**
161
+ * Создает фильтр, который проверяет, начинается ли значение указанного поля с заданной подстроки
162
+ *
163
+ * @param fieldPath Поле, по которому происходит фильтрация
164
+ * @param value Подстрока, с которой должно начинаться значение
165
+ *
166
+ * **Пример**
167
+ *
168
+ * Поле `LastName` должно начинаться с `Al`
169
+ * ```js
170
+ * Filter.startsWith('LastName', 'Al')
171
+ * ```
172
+ */
173
+ startsWith(fieldPath: string, value: any): IFilterItem;
174
+ /**
175
+ * Создает фильтр, который проверяет, заканчивается ли значение указанного поля на заданную подстроку
176
+ *
177
+ * @param fieldPath Поле, по которому происходит фильтрация
178
+ * @param value Подстрока, с которой должно заканчиваться значение
179
+ *
180
+ * **Пример**
181
+ *
182
+ * Поле `LastName` должно заканчиваться на `ov`
183
+ * ```js
184
+ * Filter.endsWith('LastName', 'ov')
185
+ * ```
186
+ */
187
+ endsWith(fieldPath: string, value: any): IFilterItem;
188
+ /**
189
+ * Создает фильтр, который проверяет, содержит ли значение указанного поля заданную подстроку
190
+ *
191
+ * @param fieldPath Поле, по которому происходит фильтрация
192
+ * @param value Подстрока, которую должно содержать значение
193
+ *
194
+ * **Пример**
195
+ *
196
+ * Поле `LastName` должно содержать `an`
197
+ * ```js
198
+ * Filter.contains('LastName', 'an')
199
+ * ```
200
+ */
201
+ contains(fieldPath: string, value: any): IFilterItem;
202
+ /**
203
+ * Создает фильтр для полнотекстового поиска по указанному полю
204
+ *
205
+ * @param fieldPath Поле, по которому происходит фильтрация
206
+ * @param value Подстрока, которую должно содержать значение
207
+ *
208
+ * **Пример**
209
+ *
210
+ * Поле `Description` должно содержать `example`
211
+ * ```js
212
+ * Filter.fulltext('Description', 'example');
213
+ * ```
214
+ */
215
+ fulltext(fieldPath: string, value: any): IFilterItem;
216
+ /**
217
+ * Создает фильтр, который исключает значения, соответствующие указанному фильтру
218
+ *
219
+ * @param filter Фильтр
220
+ *
221
+ * **Пример**
222
+ *
223
+ * Поле `Name` должно содержать любое значение кроме `Ivan`
224
+ * ```js
225
+ * Filter.not(Filter.eq('Name', 'Ivan'))
226
+ * ```
227
+ */
228
+ not(filter: IFilterItem): IFilterItem;
229
+ /**
230
+ * Фильтр, проверяющий, что поле содержит одно из перечисленных значений
231
+ *
232
+ * @param fieldPath Поле, по которому происходит фильтрация
233
+ * @param array Массив значений
234
+ *
235
+ * **Пример**
236
+ *
237
+ * Поле `Name` должно содержать либо значение `Ivan`, либо `Petr`
238
+ * ```js
239
+ * Filter.in('Name', ['Ivan', 'Petr'])
240
+ * ```
241
+ */
242
+ in(fieldPath: string, array: any[]): IFilterIn;
243
+ /**
244
+ * Строится фильтр для поля на основании значений из другой таблицы
245
+ * @param field Поле, по которому происходит фильтрация
246
+ * @param objectCode Код объекта, из которой берутся значения. Может быть таблицей, представлением, функцей и т.д.
247
+ * @param subField Поле, по которому происходит фильтрация в другой таблице
248
+ * @param filter Фильтр, который применяется к другой таблице
249
+ * @param args Аргументы для объекта (например для функции). Можно задать, например, в виде `{ Search: "Москва" }`.
250
+ *
251
+ * **Пример**
252
+ *
253
+ * Отфильтруется поле `Title` текущей таблицы по полю `Name` таблицы `mdt.Employee`, где поле `Name` равно `Ivan`
254
+ * ```js
255
+ * Filter.queryIn('Title', 'mdt.Employee', 'Name', Filter.eq('Name', 'Ivan'))
256
+ * ```
257
+ */
258
+ queryIn(field: string, objectCode: string, subField: string, filter?: IFilter, args?: any): IFilterIn;
259
+ /**
260
+ * Преобразует тип данных фильтра
261
+ *
262
+ * @param filter Фильтр
263
+ * @param cast Значение, к типу которого приводится фильтр
264
+ *
265
+ * **Пример**
266
+ *
267
+ * Значение поля `DateTime` приводится к типу `date` (`value` содержит значение типа `datetime`)
268
+ * ```js
269
+ * Filter.cast(Filter.eq('DateTime', value), 'date')
270
+ * ```
271
+ */
272
+ cast(filter: IFilter, cast: string): IFilter;
273
+ /**
274
+ * Проверка, что фильтр пустой
275
+ *
276
+ * **Пример**
277
+ *
278
+ * Проверка, что `filter` пустой
279
+ * ```js
280
+ * if (filter === Filter.empty) { ... }
281
+ * ```
282
+ */
283
+ empty: any;
284
+ }
285
+ export declare class Filter {
286
+ static empty: IFilter;
287
+ static isEmptyFilter(filter: IFilter): boolean;
288
+ static mergeFilters(orig: IFilter, filter: IFilter): IFilter;
289
+ static and(...groups: any[]): IFilterGroup;
290
+ static or(...groups: any[]): IFilterGroup;
291
+ static eq(p1: any, p2: any): IFilterItem;
292
+ static ne(p1: any, p2: any): IFilterItem;
293
+ static gt(p1: any, p2: any): IFilterItem;
294
+ static ge(p1: any, p2: any): IFilterItem;
295
+ static lt(p1: any, p2: any): IFilterItem;
296
+ static le(p1: any, p2: any): IFilterItem;
297
+ static startsWith(p1: any, p2: any): IFilterItem;
298
+ static endsWith(p1: any, p2: any): IFilterItem;
299
+ static contains(p1: any, p2: any): IFilterItem;
300
+ static fulltext(p1: any, p2: any): IFilterItem;
301
+ static not(f: any): IFilterItem;
302
+ static in(p1: any, ar: any): IFilterIn;
303
+ static queryIn(field: any, table: any, subField: any, filter?: any, args?: any): IFilterIn;
304
+ static cast(filter: any, cast: any): IFilter;
305
+ static equalTemplate(p1: any, p2: any): IFilter;
306
+ static isFilterGroup(filter: IFilter): filter is IFilterGroup;
307
+ static isFilterItem(filter: IFilter): filter is IFilterItem;
308
+ static getP2(filter: IFilter): string | number | QueryInValue | Date;
309
+ }
@@ -1,9 +1,9 @@
1
- import { ModuleCode } from "../helpers/types";
2
- import { RecordId } from "../common/Record";
3
- import { Record } from "../common/Record";
4
- export interface ModuleData extends Record {
5
- Code: ModuleCode;
6
- ID_Package?: RecordId;
7
- Icon?: string;
8
- Title?: string;
9
- }
1
+ import { ModuleCode } from "../helpers/types";
2
+ import { RecordId } from "../common/Record";
3
+ import { Record } from "../common/Record";
4
+ export interface ModuleData extends Record {
5
+ Code: ModuleCode;
6
+ ID_Package?: RecordId;
7
+ Icon?: string;
8
+ Title?: string;
9
+ }