d5-api-initializer 1.7.4 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +11 -6
- package/publish/cjs/d5-api-initializer.cjs +30 -0
- package/publish/d5-api-initializer.d.cts +776 -0
- package/publish/d5-api-initializer.d.mts +16 -0
- package/publish/d5-api-initializer.d.ts +776 -0
- package/publish/d5-api-initializer.legacy-esm.js +30 -0
- package/publish/d5-api-initializer.mjs +30 -0
- package/CHANGELOG.md +0 -0
|
@@ -0,0 +1,776 @@
|
|
|
1
|
+
type SendZipJsWapiArgs = {
|
|
2
|
+
name: string;
|
|
3
|
+
contentType?: string;
|
|
4
|
+
callback: (zip: any) => void;
|
|
5
|
+
};
|
|
6
|
+
type SendFileJsWapiArgs = {
|
|
7
|
+
name: string;
|
|
8
|
+
contentType?: string;
|
|
9
|
+
file: {
|
|
10
|
+
object: string;
|
|
11
|
+
oper: string;
|
|
12
|
+
keyValue: any;
|
|
13
|
+
field: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
declare namespace jsWapi {
|
|
17
|
+
interface JSRequestModesSetter {
|
|
18
|
+
setAutocompleteLinkedObjectFields(isAutocompleteLinkedObjectFields: boolean): void;
|
|
19
|
+
setAutocompleteKeyField(isAutocompleteKeyField: boolean): void;
|
|
20
|
+
}
|
|
21
|
+
type JSWapiInvoker = {
|
|
22
|
+
putRequestModes(cb: (rm: JSRequestModesSetter) => void): JSWapiInvoker;
|
|
23
|
+
setFilters(filters: any): JSWapiInvoker;
|
|
24
|
+
setParams(params: any): JSWapiInvoker;
|
|
25
|
+
setRowsPerPage(number: number): JSWapiInvoker;
|
|
26
|
+
setPage(number: number): JSWapiInvoker;
|
|
27
|
+
setPagesPredict(number: number): JSWapiInvoker;
|
|
28
|
+
setColumns(columns: string[]): JSWapiInvoker;
|
|
29
|
+
addColumns(columns: string[]): JSWapiInvoker;
|
|
30
|
+
setSorts(sorts: string[]): JSWapiInvoker;
|
|
31
|
+
addSorts(sorts: string[]): JSWapiInvoker;
|
|
32
|
+
setAggregatedColumns(columns: any): JSWapiInvoker;
|
|
33
|
+
putAggregatedColumns(columns: any): JSWapiInvoker;
|
|
34
|
+
putAggregatedFilter(name: string, value: any): JSWapiInvoker;
|
|
35
|
+
putAggregatedFilters(filters: IFiltersCollection): JSWapiInvoker;
|
|
36
|
+
setNestedColumns(columns: any): JSWapiInvoker;
|
|
37
|
+
putNestedColumns(columns: any): JSWapiInvoker;
|
|
38
|
+
putFilters(filters: IFiltersCollection): JSWapiInvoker;
|
|
39
|
+
setHierarchy(parentColumn: string, requestKind?: number): JSWapiInvoker;
|
|
40
|
+
setSrcRequest(srcRequest: any): JSWapiInvoker;
|
|
41
|
+
setFirstRows(number: number): JSWapiInvoker;
|
|
42
|
+
setOperRightCheck(check: boolean): JSWapiInvoker;
|
|
43
|
+
putRequest(objectName: string, req: any): JSWapiInvoker;
|
|
44
|
+
setRequest(req: any): JSWapiInvoker;
|
|
45
|
+
getRequest(objectName?: string): Record<string, any>[];
|
|
46
|
+
getSrcRequest(): Record<string, any>[];
|
|
47
|
+
getFirstRows(): number;
|
|
48
|
+
setKeyValue(keyValue: number | string): JSWapiInvoker;
|
|
49
|
+
setSingleColumn(column: string): JSWapiInvoker;
|
|
50
|
+
invokeAndGetFileAsString(): string;
|
|
51
|
+
invokeAndGetExcelFileAsJson(): Map<string, any>;
|
|
52
|
+
addRequestRow(row: Record<string, any>): JSWapiInvoker;
|
|
53
|
+
addFile(fileID: string, file: any): JSWapiInvoker;
|
|
54
|
+
invoke(): JSWapiResponse;
|
|
55
|
+
};
|
|
56
|
+
type JSWapiRequest = {
|
|
57
|
+
getColumns(): string[];
|
|
58
|
+
getSorts(): string[];
|
|
59
|
+
getAggregatedColumns(): any;
|
|
60
|
+
getNestedColumns(): any;
|
|
61
|
+
getFilters(): any;
|
|
62
|
+
getParams(): any;
|
|
63
|
+
getUserId(): number;
|
|
64
|
+
getPage(): number;
|
|
65
|
+
addSorts(sorts: string[]): JSWapiRequest;
|
|
66
|
+
putAggregatedColumns(columns: any): JSWapiRequest;
|
|
67
|
+
addColumns(columns: string[]): JSWapiRequest;
|
|
68
|
+
putNestedColumns(columns: Record<string, any>): JSWapiRequest;
|
|
69
|
+
putFilters(filters: IFiltersCollection): JSWapiRequest;
|
|
70
|
+
putParam(params: Record<string, any>): JSWapiRequest;
|
|
71
|
+
removeSorts(sortsNames: string[]): JSWapiRequest;
|
|
72
|
+
removeColumns(columnsNames: string[]): JSWapiRequest;
|
|
73
|
+
removeAggregatedColumns(aggregatedColumnsNames: string[]): JSWapiRequest;
|
|
74
|
+
removeNestedColumns(nestedColumnsNames: string[]): JSWapiRequest;
|
|
75
|
+
removeParams(paramsNames: string[]): JSWapiRequest;
|
|
76
|
+
removeFilters(filtersNames: string[]): JSWapiRequest;
|
|
77
|
+
isFilterExists(filterName: string): boolean;
|
|
78
|
+
invoke(): JSWapiResponse;
|
|
79
|
+
newJSWapiInvoker(objectName: string, operName: string): JSWapiInvoker;
|
|
80
|
+
getFirstRows(): number;
|
|
81
|
+
getRowsPerPage(): number;
|
|
82
|
+
getLanguage(): string;
|
|
83
|
+
pdf(): JSWapiPdf;
|
|
84
|
+
zip(): JSWapiZip;
|
|
85
|
+
xls(): JSWapiXls;
|
|
86
|
+
getMultiFileAsString(...arg: string[]): any;
|
|
87
|
+
getMultiExcelFileAsJson(...arg: string[]): any;
|
|
88
|
+
getRequest(object: string): Record<string, any>[];
|
|
89
|
+
getFilter(filterName: string): any;
|
|
90
|
+
getFilterEqualOneValue(filterName: string): any;
|
|
91
|
+
getParam(filterName: string): any;
|
|
92
|
+
getExcelFileAsJson(fileRequestId: string): any;
|
|
93
|
+
getFileAsString(fileRequestId: string): any;
|
|
94
|
+
setColumns(columns: string[]): JSWapiRequest;
|
|
95
|
+
setSorts(sorts: string[]): JSWapiRequest;
|
|
96
|
+
setAggregatedColumns(columns: any): JSWapiRequest;
|
|
97
|
+
setNestedColumns(columns: any): JSWapiRequest;
|
|
98
|
+
setFilters(filters: any): JSWapiRequest;
|
|
99
|
+
setParams(params: any): JSWapiRequest;
|
|
100
|
+
setPage(number: number): JSWapiRequest;
|
|
101
|
+
setRowsPerPage(number: number): JSWapiRequest;
|
|
102
|
+
setFirstRows(number: number): JSWapiRequest;
|
|
103
|
+
setRequest(request: any): JSWapiRequest;
|
|
104
|
+
putRequest(objectName: string, req: any): JSWapiRequest;
|
|
105
|
+
setHierarchy(parentColumn: string, requestKind?: number): JSWapiRequest;
|
|
106
|
+
getAggregatedFilter(name: string): any;
|
|
107
|
+
getAggregatedFilters(): any;
|
|
108
|
+
putAggregatedFilter(name: string, value: any): any;
|
|
109
|
+
putAggregatedFilters(filters: any): any;
|
|
110
|
+
removeAggregatedFilter(name: string): any;
|
|
111
|
+
removeAggregatedFilters(names: string[]): any;
|
|
112
|
+
};
|
|
113
|
+
type JSWapiResponse = {
|
|
114
|
+
getResponse(): {
|
|
115
|
+
[key: string]: Record<string, any>[];
|
|
116
|
+
};
|
|
117
|
+
getResponse(objectName: string): Record<string, any>[] | null;
|
|
118
|
+
putResponse(objectName: string, records: Record<string, any>[]): void;
|
|
119
|
+
setResponse(resp: {
|
|
120
|
+
[key: string]: Record<string, any>[];
|
|
121
|
+
}): void;
|
|
122
|
+
sendHttpResponse(body: string | BinaryDataStream): void;
|
|
123
|
+
sendHttpResponse(headers: Record<string, any>, body: string | BinaryDataStream): void;
|
|
124
|
+
getPagesPredict(): number;
|
|
125
|
+
sendZip({ name, contentType, callback }: SendZipJsWapiArgs): void;
|
|
126
|
+
sendFile({ name, contentType, file }: SendFileJsWapiArgs): void;
|
|
127
|
+
setPagesPredict(pagesPredict: number): void;
|
|
128
|
+
getPage(): number;
|
|
129
|
+
setPage(page: number): void;
|
|
130
|
+
};
|
|
131
|
+
type BinaryDataStream = unknown;
|
|
132
|
+
interface JSWapiHttpResponse {
|
|
133
|
+
getStatusCode(): number;
|
|
134
|
+
getBody(): string;
|
|
135
|
+
getBodyAsInputStream(): BinaryDataStream;
|
|
136
|
+
getHeader(name: string): string;
|
|
137
|
+
isSuccessful(): boolean;
|
|
138
|
+
}
|
|
139
|
+
type IHttpCallback = (resp: JSWapiHttpResponse) => any;
|
|
140
|
+
interface JSWapiHttp {
|
|
141
|
+
setHeader(key: string, value: string): JSWapiHttp;
|
|
142
|
+
setTimeout(milliseconds: number): JSWapiHttp;
|
|
143
|
+
GET(cb: IHttpCallback): any;
|
|
144
|
+
POST(body: string, cb: IHttpCallback): any;
|
|
145
|
+
POST(body: (req: JSWapiHttpRequest) => JSWapiHttpRequest, cb: IHttpCallback): any;
|
|
146
|
+
DELETE(body: string, cb: IHttpCallback): any;
|
|
147
|
+
PUT(body: string, cb: IHttpCallback): any;
|
|
148
|
+
PATCH(body: string, cb: IHttpCallback): any;
|
|
149
|
+
}
|
|
150
|
+
interface JSWapiHttpRequest {
|
|
151
|
+
setBody(body: string): JSWapiHttpRequest;
|
|
152
|
+
setBody(bodySetter: (body: JSWapiHttpRequestBody) => JSWapiHttpRequestBody): JSWapiHttpRequest;
|
|
153
|
+
setMultipartBody(bodySetter: (body: JSWapiMultipartBody) => JSWapiMultipartBody): JSWapiHttpRequest;
|
|
154
|
+
}
|
|
155
|
+
interface JSWapiHttpRequestBody {
|
|
156
|
+
setFileLink(fileLink: string): JSWapiHttpRequestBody;
|
|
157
|
+
setFileRequestId(id: string): JSWapiHttpRequestBody;
|
|
158
|
+
}
|
|
159
|
+
interface JSWapiMultipartBody {
|
|
160
|
+
addPart(name: string, value: string): JSWapiMultipartBody;
|
|
161
|
+
addFilePart(name: string, fileName: string, cb: (body: JSWapiMultipartBodyFilePart) => JSWapiMultipartBodyFilePart): JSWapiMultipartBody;
|
|
162
|
+
}
|
|
163
|
+
interface JSWapiMultipartBodyFilePart {
|
|
164
|
+
setFileLink(fileLink: string): JSWapiMultipartBodyFilePart;
|
|
165
|
+
setFileRequestId(id: string): JSWapiMultipartBodyFilePart;
|
|
166
|
+
setBody(body: string): JSWapiMultipartBodyFilePart;
|
|
167
|
+
}
|
|
168
|
+
type JSWapiMeta<Params = {}> = {
|
|
169
|
+
parameters?: Params;
|
|
170
|
+
externalObject?: string;
|
|
171
|
+
objectName: string;
|
|
172
|
+
externalFieldsMap?: Record<string, string>;
|
|
173
|
+
};
|
|
174
|
+
interface JSWapiObject {
|
|
175
|
+
getName(): string;
|
|
176
|
+
newJSWapiHttp(url: string): JSWapiHttp;
|
|
177
|
+
putJSWapiOper(operation: string, callback: (request: JSWapiRequest, response: JSWapiResponse) => void): void;
|
|
178
|
+
}
|
|
179
|
+
function putJSWapiObject(objectName: string, init: (object: JSWapiObject) => void): void;
|
|
180
|
+
interface JSWapiEngine {
|
|
181
|
+
getExternalName(): string;
|
|
182
|
+
getExternalObjectFields(): Record<string, string>;
|
|
183
|
+
getExternalSystemParameters(): Record<string, any>;
|
|
184
|
+
getName(): string;
|
|
185
|
+
newJSWapiHttp(url: string): JSWapiHttp;
|
|
186
|
+
putJSWapiOper(operation: string, callback: (jsWapiRequest: JSWapiRequest, jsWapiResponse: JSWapiResponse) => void): void;
|
|
187
|
+
}
|
|
188
|
+
function setJSWapiEngine(init: (object: JSWapiEngine) => void): void;
|
|
189
|
+
interface JSWapiApplication {
|
|
190
|
+
getName(): string;
|
|
191
|
+
newJSWapiHttp(url: string): JSWapiHttp;
|
|
192
|
+
putJSWapiOper(operation: string, callback: (request: JSWapiRequest, response: JSWapiResponse) => void): void;
|
|
193
|
+
}
|
|
194
|
+
function setJSWapiObject(init: (object: JSWapiApplication) => void): void;
|
|
195
|
+
type JSWapiPdfLoadParamsObject = {
|
|
196
|
+
object: string;
|
|
197
|
+
field: string;
|
|
198
|
+
keyValue: any;
|
|
199
|
+
callback: (pdf: JSWapiPdfDocument) => void;
|
|
200
|
+
};
|
|
201
|
+
type JSWapiPdfLoadParamsReport = {
|
|
202
|
+
report: {
|
|
203
|
+
type: 'dx' | 'xls';
|
|
204
|
+
name: string;
|
|
205
|
+
params: Record<string, any>;
|
|
206
|
+
} | {
|
|
207
|
+
type: 'tax';
|
|
208
|
+
code: string;
|
|
209
|
+
params: Record<string, any>;
|
|
210
|
+
};
|
|
211
|
+
callback: (pdf: JSWapiPdfDocument) => void;
|
|
212
|
+
};
|
|
213
|
+
type JSWapiPdfLoadParams = JSWapiPdfLoadParamsObject | JSWapiPdfLoadParamsReport;
|
|
214
|
+
type JSWapiStampPosition = {
|
|
215
|
+
page: number;
|
|
216
|
+
x: number;
|
|
217
|
+
y: number;
|
|
218
|
+
};
|
|
219
|
+
interface JSWapiPdfDocument {
|
|
220
|
+
save(params: {
|
|
221
|
+
object: string;
|
|
222
|
+
keyValue: any;
|
|
223
|
+
field: string;
|
|
224
|
+
fileName: string;
|
|
225
|
+
}): void;
|
|
226
|
+
/**
|
|
227
|
+
* На поточний документ накласти печать stampPdf
|
|
228
|
+
* @param stampPdf PDF документ на который будет наложено текущий документ
|
|
229
|
+
* @param params
|
|
230
|
+
* @param params.page номер страницы, на которую накладывать. Если page < 0, то нумерация с конца (т.е. page = -1 - последняя страница)
|
|
231
|
+
* @param params.x координата левого угла в мм
|
|
232
|
+
* @param params.y координата верхнего угла в мм
|
|
233
|
+
*/
|
|
234
|
+
overlay(stampPdf: JSWapiPdfDocument, params: JSWapiStampPosition): void;
|
|
235
|
+
/**
|
|
236
|
+
* Ширина страницы в мм
|
|
237
|
+
* @param pageNumber Номер страницы. Если pageNumber < 0, то нумеровать с конца
|
|
238
|
+
*/
|
|
239
|
+
getPageWidth(pageNumber: number): number;
|
|
240
|
+
/**
|
|
241
|
+
* Высота страницы в мм
|
|
242
|
+
* @param pageNumber Номер страницы. Если pageNumber < 0, то нумеровать с конца
|
|
243
|
+
*/
|
|
244
|
+
getPageHeight(pageNumber: number): number;
|
|
245
|
+
/**
|
|
246
|
+
* Количество страниц
|
|
247
|
+
*/
|
|
248
|
+
getPageCount(): number;
|
|
249
|
+
}
|
|
250
|
+
interface JSWapiPdf {
|
|
251
|
+
load(params: JSWapiPdfLoadParams): JSWapiPdf;
|
|
252
|
+
}
|
|
253
|
+
interface JSZipEntity {
|
|
254
|
+
/**
|
|
255
|
+
* полное имя файла вместе с директориями
|
|
256
|
+
* @example
|
|
257
|
+
* zipEntry.name() === "1/2/3/tax.xlsx"
|
|
258
|
+
*/
|
|
259
|
+
name(): string;
|
|
260
|
+
/**
|
|
261
|
+
* true, если это директория
|
|
262
|
+
*/
|
|
263
|
+
isDirectory(): boolean;
|
|
264
|
+
}
|
|
265
|
+
interface JSWapiZip {
|
|
266
|
+
/**
|
|
267
|
+
*
|
|
268
|
+
* @param {Object} params
|
|
269
|
+
* @param params.callback Функция в callback вызывается для каждого элемента zip-файла.
|
|
270
|
+
*
|
|
271
|
+
*/
|
|
272
|
+
unzip(params: {
|
|
273
|
+
fileRequestId: string;
|
|
274
|
+
callback: (zipEntry: JSZipEntity) => void;
|
|
275
|
+
}): JSWapiPdf;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Вернуть содержимое meta-Excel в виде JSON-объекта:
|
|
279
|
+
{
|
|
280
|
+
"sheet123": {
|
|
281
|
+
"TaxBillHeader" : [
|
|
282
|
+
{"R001G3": "", "R01G1": "", ...}, ...
|
|
283
|
+
], ...
|
|
284
|
+
}, ...
|
|
285
|
+
}
|
|
286
|
+
*
|
|
287
|
+
* @param fileRequestId имя поля в multipart-запросе с Excel-файлом
|
|
288
|
+
*/
|
|
289
|
+
interface JSWapiXls {
|
|
290
|
+
getMetaExcelFileAsJson(fileRequestId: string): JSWapiPdf;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
declare class FileLink {
|
|
295
|
+
private readonly _link;
|
|
296
|
+
constructor(_link: string);
|
|
297
|
+
get link(): string;
|
|
298
|
+
}
|
|
299
|
+
declare class FileRequestId {
|
|
300
|
+
private readonly _id;
|
|
301
|
+
constructor(_id: string);
|
|
302
|
+
get id(): string;
|
|
303
|
+
}
|
|
304
|
+
declare function fileLink(link: string): FileLink;
|
|
305
|
+
declare function fileRequestId(id: string): FileRequestId;
|
|
306
|
+
type MultipartFileType = FileRequestId | FileLink | string;
|
|
307
|
+
declare class MultipartFormData {
|
|
308
|
+
private _formData;
|
|
309
|
+
private _fileNames;
|
|
310
|
+
set(name: string, value: unknown): void;
|
|
311
|
+
set(name: string, file: MultipartFileType, filename: string): void;
|
|
312
|
+
get(name: string): MultipartFileType | undefined;
|
|
313
|
+
delete(name: string): void;
|
|
314
|
+
isFile(name: string): boolean;
|
|
315
|
+
iterator(): Generator<{
|
|
316
|
+
name: string;
|
|
317
|
+
data: MultipartFileType;
|
|
318
|
+
fileName: string;
|
|
319
|
+
}, void, unknown>;
|
|
320
|
+
}
|
|
321
|
+
declare class ApiHttpRequest {
|
|
322
|
+
private _jsWapiHttp;
|
|
323
|
+
constructor(jsWapiHttp: jsWapi.JSWapiHttp);
|
|
324
|
+
set headers(headers: Record<string, string>);
|
|
325
|
+
set timeout(milliseconds: number);
|
|
326
|
+
setHeader(header: string, value: string): ApiHttpRequest;
|
|
327
|
+
setHeaders(headers: Record<string, string>): ApiHttpRequest;
|
|
328
|
+
setTimeout(milliseconds: number): ApiHttpRequest;
|
|
329
|
+
GET(callback?: IHttpCallback): any;
|
|
330
|
+
POST(request?: FileLink | FileRequestId | MultipartFormData | Record<string, any> | string, callback?: IHttpCallback): any;
|
|
331
|
+
private setMultipartBody;
|
|
332
|
+
PUT(body?: Record<string, any> | string, callback?: IHttpCallback): any;
|
|
333
|
+
DELETE(body?: Record<string, any> | string, callback?: IHttpCallback): any;
|
|
334
|
+
PATCH(body: Record<string, any> | string, callback: IHttpCallback): any;
|
|
335
|
+
private _getWrappedCallback;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
type FileEntry = {
|
|
339
|
+
name: string;
|
|
340
|
+
objectName?: string;
|
|
341
|
+
operation?: string;
|
|
342
|
+
keyValue?: any;
|
|
343
|
+
field?: string;
|
|
344
|
+
};
|
|
345
|
+
type SendZipOptions = {
|
|
346
|
+
name: string;
|
|
347
|
+
contentType?: string;
|
|
348
|
+
files: FileEntry[];
|
|
349
|
+
};
|
|
350
|
+
type SendFileOptions = {
|
|
351
|
+
name: string;
|
|
352
|
+
contentType?: string;
|
|
353
|
+
file: FileEntry;
|
|
354
|
+
};
|
|
355
|
+
declare class ApiResponse {
|
|
356
|
+
private _jsWapiResponse;
|
|
357
|
+
private readonly _objectName;
|
|
358
|
+
constructor(jsWapiResponse: jsWapi.JSWapiResponse, objectName: string);
|
|
359
|
+
get objectName(): string;
|
|
360
|
+
set response(response: IMappedCollection | any[]);
|
|
361
|
+
getResponse(responseName?: string): IMappedCollection[] | any;
|
|
362
|
+
getResponseObject(): IMappedCollection[] | any;
|
|
363
|
+
setResponse(response: IMappedCollection | any[], fieldsMap?: Record<string, any>): this;
|
|
364
|
+
sendHttpResponse(body: string | jsWapi.BinaryDataStream): ApiResponse;
|
|
365
|
+
sendHttpResponse(headers: Record<string, string>, body: string | jsWapi.BinaryDataStream): ApiResponse;
|
|
366
|
+
sendHttpBody(body: string | jsWapi.BinaryDataStream): this;
|
|
367
|
+
getPage(): number;
|
|
368
|
+
setPage(page: number): this;
|
|
369
|
+
getPagesPredict(): number;
|
|
370
|
+
setPagesPredict(pagesPredict: number): this;
|
|
371
|
+
sendZip({ name, contentType, files }: SendZipOptions): void;
|
|
372
|
+
sendFile({ name, contentType, file }: SendFileOptions): void;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
interface IInvoker$1<T> {
|
|
376
|
+
setColumns(columns: string[]): T;
|
|
377
|
+
setFilters(filters: IFiltersCollection): T;
|
|
378
|
+
setSorts(sorts: string[]): T;
|
|
379
|
+
addColumns(columns: string[]): T;
|
|
380
|
+
addSorts(sorts: string[]): T;
|
|
381
|
+
setRowsPerPage(amount: number): T;
|
|
382
|
+
objectName: string;
|
|
383
|
+
}
|
|
384
|
+
declare class ApiInvoker implements IInvoker$1<ApiInvoker> {
|
|
385
|
+
_jsWapiInvoker: jsWapi.JSWapiInvoker;
|
|
386
|
+
protected readonly _objectName: string;
|
|
387
|
+
constructor(jsWapiInvoker: jsWapi.JSWapiInvoker, objectName: string);
|
|
388
|
+
get objectName(): string;
|
|
389
|
+
set filters(filters: IFiltersCollection);
|
|
390
|
+
set params(params: IMappedCollection);
|
|
391
|
+
set rowsPerPage(amount: number);
|
|
392
|
+
set page(number: number);
|
|
393
|
+
set pagesPredict(amount: number);
|
|
394
|
+
set request(request: IMappedCollection | any[]);
|
|
395
|
+
get request(): IMappedCollection | any[];
|
|
396
|
+
set columns(columns: string[]);
|
|
397
|
+
set sorts(sorts: string[]);
|
|
398
|
+
set aggregatedColumns(aggregatedColumns: IMappedCollection);
|
|
399
|
+
set nestedColumns(nestedColumns: IMappedCollection);
|
|
400
|
+
set autocompleteLinkedObjectFields(value: boolean);
|
|
401
|
+
set autocompleteKeyField(value: boolean);
|
|
402
|
+
setAutocompleteLinkedObjectFields(value: boolean): this;
|
|
403
|
+
setAutocompleteKeyField(value: boolean): this;
|
|
404
|
+
setHierarchy(parentColumn: string, requestKind?: number): this;
|
|
405
|
+
setFilters(filters: IFiltersCollection): ApiInvoker;
|
|
406
|
+
setParams(params: IMappedCollection): ApiInvoker;
|
|
407
|
+
setPage(number: number): ApiInvoker;
|
|
408
|
+
setRowsPerPage(amount: number): ApiInvoker;
|
|
409
|
+
setPagesPredict(amount: number): ApiInvoker;
|
|
410
|
+
setRequest(request: IMappedCollection | any[]): ApiInvoker;
|
|
411
|
+
getRequest(requestName: string): IMappedCollection[];
|
|
412
|
+
setSrcRequest(srcRequest: IMappedCollection): ApiInvoker;
|
|
413
|
+
getSrcRequest(): Record<string, any>;
|
|
414
|
+
setColumns(columns: string[]): ApiInvoker;
|
|
415
|
+
setAggregatedColumns(aggregatedColumns: IMappedCollection): ApiInvoker;
|
|
416
|
+
setNestedColumns(nestedColumns: IMappedCollection): ApiInvoker;
|
|
417
|
+
setSorts(sorts: string[]): ApiInvoker;
|
|
418
|
+
setFirstRows(firstRows: number): this;
|
|
419
|
+
setOperRightCheck(check: boolean): this;
|
|
420
|
+
getFirstRows(): number;
|
|
421
|
+
addColumns(columns: string[]): ApiInvoker;
|
|
422
|
+
addAggregatedColumns(aggregatedColumns: IMappedCollection): ApiInvoker;
|
|
423
|
+
addNestedColumns(nestedColumns: IMappedCollection): ApiInvoker;
|
|
424
|
+
addFilters(filters: IFiltersCollection): ApiInvoker;
|
|
425
|
+
addAggregatedFilter(name: string, value: any): ApiInvoker;
|
|
426
|
+
addAggregatedFilters(filters: IFiltersCollection): ApiInvoker;
|
|
427
|
+
addSorts(sorts: string[]): ApiInvoker;
|
|
428
|
+
addFile(fileID: string, fileStream: any): ApiInvoker;
|
|
429
|
+
addRequestRow(data: Record<string, any>): ApiInvoker;
|
|
430
|
+
invoke(): ApiResponse;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
type SourceTypeReport = {
|
|
434
|
+
sourceType: 'report';
|
|
435
|
+
config: jsWapi.JSWapiPdfLoadParamsReport['report'];
|
|
436
|
+
};
|
|
437
|
+
type SourceTypeObject = {
|
|
438
|
+
sourceType: 'object';
|
|
439
|
+
config: Omit<jsWapi.JSWapiPdfLoadParamsObject, 'callback'>;
|
|
440
|
+
};
|
|
441
|
+
type SourceTypeList = SourceTypeReport | SourceTypeObject;
|
|
442
|
+
type SaveConfig = {
|
|
443
|
+
object: string;
|
|
444
|
+
keyValue: any;
|
|
445
|
+
field: string;
|
|
446
|
+
fileName: string;
|
|
447
|
+
};
|
|
448
|
+
type WaterMarkSourceType = SourceTypeList & {
|
|
449
|
+
position: ((sourcePdf: jsWapi.JSWapiPdfDocument, stampPdf: jsWapi.JSWapiPdfDocument) => jsWapi.JSWapiStampPosition) | jsWapi.JSWapiStampPosition;
|
|
450
|
+
};
|
|
451
|
+
type AddWatermarkToPdfParams = {
|
|
452
|
+
sourcePdf: SourceTypeList;
|
|
453
|
+
watermarks?: Array<WaterMarkSourceType>;
|
|
454
|
+
saveConfig: SaveConfig;
|
|
455
|
+
};
|
|
456
|
+
|
|
457
|
+
declare class ApiRequest {
|
|
458
|
+
private _jsWapiRequest;
|
|
459
|
+
private readonly _objectName;
|
|
460
|
+
constructor(jsWapiRequest: jsWapi.JSWapiRequest, objectName: string);
|
|
461
|
+
get objectName(): string;
|
|
462
|
+
get columns(): string[];
|
|
463
|
+
get aggregatedColumns(): IMappedCollection;
|
|
464
|
+
get nestedColumns(): IMappedCollection;
|
|
465
|
+
get filters(): IFiltersCollection;
|
|
466
|
+
get params(): IMappedCollection;
|
|
467
|
+
get request(): IMappedCollection | Array<IMappedCollection>;
|
|
468
|
+
get userId(): number;
|
|
469
|
+
get page(): number;
|
|
470
|
+
get rowsPerPage(): number;
|
|
471
|
+
get sorts(): string[];
|
|
472
|
+
get lang(): LanguageCode;
|
|
473
|
+
set columns(columns: string[]);
|
|
474
|
+
set aggregatedColumns(columns: IMappedCollection);
|
|
475
|
+
set nestedColumns(columns: IMappedCollection);
|
|
476
|
+
set filters(filters: IFiltersCollection);
|
|
477
|
+
set params(params: IMappedCollection);
|
|
478
|
+
set sorts(sorts: string[]);
|
|
479
|
+
set page(number: number);
|
|
480
|
+
set rowsPerPage(amount: number);
|
|
481
|
+
getFilter(filterName: string): any;
|
|
482
|
+
/**
|
|
483
|
+
* Вернуть значение фильтра типа "равно".
|
|
484
|
+
* Возможные варианты:
|
|
485
|
+
* "поле": "значение"
|
|
486
|
+
* "поле": {"=": "значение"}
|
|
487
|
+
* "поле": ["значение"]
|
|
488
|
+
* "поле": {"=": [123]}
|
|
489
|
+
* Это чтобы не парсить каждый раз все эти варианты.
|
|
490
|
+
*
|
|
491
|
+
* Работает только для условия "равно", для други возвращает null!!!!
|
|
492
|
+
*/
|
|
493
|
+
getFilterValue(fieldName: string): any;
|
|
494
|
+
getParam(paramName: string): any;
|
|
495
|
+
getExcelFileAsJson(fileRequestId: string): any;
|
|
496
|
+
getFileAsString(fileRequestId: string): string;
|
|
497
|
+
getFilesListAsString(filesRequestIds: string[] | number[]): IMappedCollection;
|
|
498
|
+
getExcelFilesListAsJson(filesRequestIds: string[] | number[]): IMappedCollection;
|
|
499
|
+
getRequest(requestName: string): IMappedCollection[];
|
|
500
|
+
setHierarchy(parentColumn: string, requestKind?: number): this;
|
|
501
|
+
setColumns(columns: string[]): this;
|
|
502
|
+
setNestedColumns(nestedColumns: IMappedCollection): this;
|
|
503
|
+
setAggregatedColumns(aggregatedColumns: IMappedCollection): this;
|
|
504
|
+
getAggregatedFilter(name: string): any;
|
|
505
|
+
getAggregatedFilters(): any;
|
|
506
|
+
removeAggregatedFilter(name: string): this;
|
|
507
|
+
removeAggregatedFilters(names: string[]): this;
|
|
508
|
+
setFilters(filters: IFiltersCollection): ApiRequest;
|
|
509
|
+
setSorts(sorts: string[]): this;
|
|
510
|
+
setParams(params: IMappedCollection): ApiRequest;
|
|
511
|
+
setPage(number: number): ApiRequest;
|
|
512
|
+
setRowsPerPage(amount: number): ApiRequest;
|
|
513
|
+
setRequest(request: IMappedCollection | any[]): ApiRequest;
|
|
514
|
+
setFirstRows(firstRows: number): this;
|
|
515
|
+
getFirstRows(): number;
|
|
516
|
+
addSorts(sorts: string[]): ApiRequest;
|
|
517
|
+
addColumns(columns: string[]): ApiRequest;
|
|
518
|
+
addAggregatedColumns(columns: IMappedCollection): ApiRequest;
|
|
519
|
+
/**
|
|
520
|
+
* @link http://d5.develop.erp-director.com/userscript-docs/docs/server_scripts/api-request/api-request#addnestedcolumnscolumns
|
|
521
|
+
* @example
|
|
522
|
+
* apiRequest.addNestedColumns({
|
|
523
|
+
* 'AuthorsNested': {
|
|
524
|
+
* 'Columns': ['ID', 'Name']
|
|
525
|
+
* }
|
|
526
|
+
* });
|
|
527
|
+
*/
|
|
528
|
+
addNestedColumns(columns: IMappedCollection): ApiRequest;
|
|
529
|
+
addFilters(filters: IFiltersCollection): ApiRequest;
|
|
530
|
+
addAggregatedFilter(name: string, value: any): this;
|
|
531
|
+
addAggregatedFilters(filters: IFiltersCollection): this;
|
|
532
|
+
addParams(params: IMappedCollection): ApiRequest;
|
|
533
|
+
removeSorts(sortsNames: string[]): ApiRequest;
|
|
534
|
+
removeColumns(columnsNames: string[]): ApiRequest;
|
|
535
|
+
removeAggregatedColumns(aggregatedColumnsNames: string[]): ApiRequest;
|
|
536
|
+
removeNestedColumns(nestedColumnsNames: string[]): ApiRequest;
|
|
537
|
+
removeParams(paramsNames: string[]): ApiRequest;
|
|
538
|
+
removeFilters(filtersNames: string[]): ApiRequest;
|
|
539
|
+
hasFilter(filterName: string): boolean;
|
|
540
|
+
invoke(): ApiResponse;
|
|
541
|
+
newJSWapiInvoker(objectName: string, operName: string): jsWapi.JSWapiInvoker;
|
|
542
|
+
newApiInvoker(objectName: string, operName: string): ApiInvoker;
|
|
543
|
+
addWatermarkToPdf(params: AddWatermarkToPdfParams): void;
|
|
544
|
+
unzip(params: {
|
|
545
|
+
fileRequestId: string;
|
|
546
|
+
callback: (zipEntry: jsWapi.JSZipEntity) => void;
|
|
547
|
+
}): jsWapi.JSWapiPdf;
|
|
548
|
+
/**
|
|
549
|
+
* Вернуть содержимое meta-Excel в виде JSON-объекта:
|
|
550
|
+
* @param fileRequestId имя поля в multipart-запросе с Excel-файлом
|
|
551
|
+
*/
|
|
552
|
+
getMetaExcelFileAsJson(fileRequestId: string): Record<string, any>;
|
|
553
|
+
/**
|
|
554
|
+
* Переводит и форматирует строку из словаря переводов согласно текущего языка приложения.
|
|
555
|
+
* @param msgKey
|
|
556
|
+
* @param params
|
|
557
|
+
*
|
|
558
|
+
* @example
|
|
559
|
+
* {
|
|
560
|
+
* ...
|
|
561
|
+
* "myKey": 'some text with {0}'
|
|
562
|
+
* ...
|
|
563
|
+
* }
|
|
564
|
+
* t('myKey', ['placeholder text']) // 'some text with placeholder text'
|
|
565
|
+
*/
|
|
566
|
+
t(msgKey: string, params?: string[]): string;
|
|
567
|
+
_getWithStringifiedElements(array: any[]): string[];
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
declare class ApiObjectCollectionIterator implements IInvoker$1<ApiObjectCollectionIterator> {
|
|
571
|
+
private _invoker;
|
|
572
|
+
private _rowsPerPage;
|
|
573
|
+
constructor({ invoker }: {
|
|
574
|
+
invoker: ApiInvoker;
|
|
575
|
+
});
|
|
576
|
+
get objectName(): string;
|
|
577
|
+
setColumns(columns: string[]): ApiObjectCollectionIterator;
|
|
578
|
+
setFilters(filters: IFiltersCollection): ApiObjectCollectionIterator;
|
|
579
|
+
setSorts(sorts: string[]): ApiObjectCollectionIterator;
|
|
580
|
+
addSorts(sorts: string[]): ApiObjectCollectionIterator;
|
|
581
|
+
addColumns(columns: string[]): ApiObjectCollectionIterator;
|
|
582
|
+
setRowsPerPage(amount: number): ApiObjectCollectionIterator;
|
|
583
|
+
invoke(): Generator<ApiResponse>;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
interface IInvoker {
|
|
587
|
+
getExcelFileAsJson(): Map<string, any>;
|
|
588
|
+
getFileAsString(): string;
|
|
589
|
+
objectName: string;
|
|
590
|
+
}
|
|
591
|
+
interface IParams {
|
|
592
|
+
objectName: string;
|
|
593
|
+
keyValue: string | number;
|
|
594
|
+
fileFieldName: string;
|
|
595
|
+
}
|
|
596
|
+
declare class ApiFileInvoker implements IInvoker {
|
|
597
|
+
_jsWapiInvoker: jsWapi.JSWapiInvoker;
|
|
598
|
+
protected readonly _objectName: string;
|
|
599
|
+
constructor(jsWapiInvoker: jsWapi.JSWapiInvoker, params: IParams);
|
|
600
|
+
get objectName(): string;
|
|
601
|
+
setParams(keyValue: string | number, fileFieldName: string): void;
|
|
602
|
+
getExcelFileAsJson(): Map<string, any>;
|
|
603
|
+
getFileAsString(): string;
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
type HTTPSender = {
|
|
607
|
+
newJSWapiHttp(url: string): jsWapi.JSWapiHttp;
|
|
608
|
+
/** Если не валидируется, то будет exception. */
|
|
609
|
+
validateXml?(xsd: string, xml: string, options?: {
|
|
610
|
+
macroses: Record<string, any>;
|
|
611
|
+
}): boolean;
|
|
612
|
+
};
|
|
613
|
+
declare class ApiCore {
|
|
614
|
+
private readonly httpSender;
|
|
615
|
+
private readonly _request;
|
|
616
|
+
constructor({ http, request }: {
|
|
617
|
+
http: HTTPSender;
|
|
618
|
+
request: ApiRequest;
|
|
619
|
+
});
|
|
620
|
+
/**
|
|
621
|
+
* Переводит и форматирует строку из словаря переводов согласно текущего языка приложения.
|
|
622
|
+
* @param msgKey
|
|
623
|
+
* @param params
|
|
624
|
+
*
|
|
625
|
+
* @example
|
|
626
|
+
* {
|
|
627
|
+
* ...
|
|
628
|
+
* "myKey": 'some text with {0}'
|
|
629
|
+
* ...
|
|
630
|
+
* }
|
|
631
|
+
* t('myKey', ['placeholder text']) // 'some text with placeholder text'
|
|
632
|
+
*/
|
|
633
|
+
t(msgKey: string, params?: string[]): string;
|
|
634
|
+
newHttpRequest(url: string): ApiHttpRequest;
|
|
635
|
+
newApiInvoker(objectName: string, operName: string): ApiInvoker;
|
|
636
|
+
newApiFileInvoker(objectName: string, keyValue: string | number, fileFieldName: string): ApiFileInvoker;
|
|
637
|
+
newApiObjectCollectionIterator(objectName: string): ApiObjectCollectionIterator;
|
|
638
|
+
newApiException(message: string, code?: string | number): Error;
|
|
639
|
+
/**
|
|
640
|
+
* Валидирует xml по переданому xsd.
|
|
641
|
+
* Если валидация происходит с ошибками, то бросается исключение.
|
|
642
|
+
*/
|
|
643
|
+
validateXml(xml: string, xsd: string, options?: {
|
|
644
|
+
macroses: Record<string, any>;
|
|
645
|
+
}): boolean;
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
declare class ApiHttpResponse {
|
|
649
|
+
private readonly _jsWapiHttpResponse;
|
|
650
|
+
constructor(jsWapiHttpResponse: jsWapi.JSWapiHttpResponse);
|
|
651
|
+
get statusCode(): number;
|
|
652
|
+
get body(): string;
|
|
653
|
+
get bodyAsStream(): jsWapi.BinaryDataStream;
|
|
654
|
+
getHeader(name: string): string;
|
|
655
|
+
isSuccessful(): boolean;
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
interface IFilterValue {
|
|
659
|
+
'='?: string | number | null | Array<string | number>;
|
|
660
|
+
'=~'?: string | null | Array<string>;
|
|
661
|
+
'>'?: string | number;
|
|
662
|
+
'>='?: string | number;
|
|
663
|
+
'<'?: string | number;
|
|
664
|
+
'<='?: string | number;
|
|
665
|
+
'!='?: string | number | null | Array<string | number>;
|
|
666
|
+
'<>'?: string | number | null | Array<string | number>;
|
|
667
|
+
'between'?: [string | number, string | number];
|
|
668
|
+
'like'?: string | number;
|
|
669
|
+
'%'?: string;
|
|
670
|
+
'%~'?: string;
|
|
671
|
+
}
|
|
672
|
+
interface IFilter {
|
|
673
|
+
[fieldName: string]: IFilterValue;
|
|
674
|
+
}
|
|
675
|
+
type IFiltersCollection = {
|
|
676
|
+
[fieldName: string]: IFilterValue | IFilterValue[] | IFiltersCollection[];
|
|
677
|
+
};
|
|
678
|
+
interface IMappedCollection {
|
|
679
|
+
[name: string]: any;
|
|
680
|
+
}
|
|
681
|
+
type IApiOperation<MetaParams> = (apiCore: ApiCore, apiRequest: ApiRequest, apiResponse: ApiResponse, meta?: jsWapi.JSWapiMeta<MetaParams>) => void;
|
|
682
|
+
interface IApiOperations<MetaParams = Record<string, any>> {
|
|
683
|
+
[key: string]: IApiOperation<MetaParams>;
|
|
684
|
+
}
|
|
685
|
+
type IHttpCallback = (apiHttpResponse: ApiHttpResponse) => any | void;
|
|
686
|
+
declare enum LanguageCode {
|
|
687
|
+
ua = "ua",
|
|
688
|
+
ru = "ru",
|
|
689
|
+
en = "eng"
|
|
690
|
+
}
|
|
691
|
+
|
|
692
|
+
interface ApiObjectInitializerConstructor {
|
|
693
|
+
objectName: string;
|
|
694
|
+
operations: IApiOperations;
|
|
695
|
+
translations?: Record<LanguageCode, Record<string, string>>;
|
|
696
|
+
}
|
|
697
|
+
declare abstract class ApiInitializer<MetaParams> {
|
|
698
|
+
protected _api: typeof jsWapi;
|
|
699
|
+
protected _operations: IApiOperations<MetaParams>;
|
|
700
|
+
constructor(settings: ApiObjectInitializerConstructor);
|
|
701
|
+
constructor(objectName: string, operations: IApiOperations<MetaParams>);
|
|
702
|
+
constructor(objectName: string, operations: IApiOperations<MetaParams>, options: Pick<ApiObjectInitializerConstructor, 'translations'>);
|
|
703
|
+
protected _initOperations(objectName?: string): void;
|
|
704
|
+
protected abstract internalCreate(objectName: string): void;
|
|
705
|
+
protected abstract putOperation(operationName: string, objectName?: string): void;
|
|
706
|
+
/**
|
|
707
|
+
* Инициализация словаря переводов.
|
|
708
|
+
* @param translations
|
|
709
|
+
* @example Пример строки перевода
|
|
710
|
+
* { ...
|
|
711
|
+
* "ru": {"key": 'some text {0} {1}'}
|
|
712
|
+
* ...
|
|
713
|
+
* }
|
|
714
|
+
*
|
|
715
|
+
* core.t('key', ['test1', 'test2']); // 'some text test1 test2'
|
|
716
|
+
*/
|
|
717
|
+
initTranslation(translations: Record<LanguageCode, Record<string, string>>): void;
|
|
718
|
+
}
|
|
719
|
+
declare class ApiObjectInitializer<MetaParams = undefined> extends ApiInitializer<MetaParams> {
|
|
720
|
+
private jsWapiObject;
|
|
721
|
+
protected internalCreate(objectName: string): void;
|
|
722
|
+
protected putOperation(operationName: string, objectName?: string): void;
|
|
723
|
+
}
|
|
724
|
+
|
|
725
|
+
declare class EngineInitializer<MetaParams = Record<string, any>> {
|
|
726
|
+
private engine;
|
|
727
|
+
protected _operations: IApiOperations<MetaParams>;
|
|
728
|
+
constructor(options: Omit<ApiObjectInitializerConstructor, 'objectName'>);
|
|
729
|
+
constructor(operations: IApiOperations<MetaParams>);
|
|
730
|
+
constructor(operations: IApiOperations<MetaParams>, options: Pick<ApiObjectInitializerConstructor, 'translations'>);
|
|
731
|
+
private internalCreate;
|
|
732
|
+
private putOperation;
|
|
733
|
+
/**
|
|
734
|
+
* Инициализация словаря переводов.
|
|
735
|
+
* @param translations
|
|
736
|
+
* @example Пример строки перевода
|
|
737
|
+
* { ...
|
|
738
|
+
* "ru": {"key": 'some text {0} {1}'}
|
|
739
|
+
* ...
|
|
740
|
+
* }
|
|
741
|
+
*
|
|
742
|
+
* core.t('key', ['test1', 'test2']); // 'some text test1 test2'
|
|
743
|
+
*/
|
|
744
|
+
initTranslation(translations: Record<LanguageCode, Record<string, string>>): void;
|
|
745
|
+
call({ apiCore, apiRequest, apiResponse, operation, meta }: {
|
|
746
|
+
apiCore: ApiCore;
|
|
747
|
+
apiRequest: ApiRequest;
|
|
748
|
+
apiResponse: ApiResponse;
|
|
749
|
+
operation: string;
|
|
750
|
+
meta: jsWapi.JSWapiMeta<MetaParams>;
|
|
751
|
+
}): void;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
declare class ApplicationInitializer<MetaParams = undefined> {
|
|
755
|
+
private jSWapiApplication;
|
|
756
|
+
protected _operations: IApiOperations<MetaParams>;
|
|
757
|
+
constructor(operations: IApiOperations<MetaParams>);
|
|
758
|
+
private internalCreate;
|
|
759
|
+
private putOperation;
|
|
760
|
+
}
|
|
761
|
+
|
|
762
|
+
declare class ApiJoinInvoker {
|
|
763
|
+
readonly _jsWapiJoinInvoker: any;
|
|
764
|
+
constructor(jsWapiJoinInvoker: any);
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
declare class UserMessages {
|
|
768
|
+
private _messages;
|
|
769
|
+
private _lang;
|
|
770
|
+
appendDictionary(newDictionary: Record<LanguageCode, Record<string, string>>): void;
|
|
771
|
+
format(msgKey: string, params?: string[]): string;
|
|
772
|
+
set lang(value: LanguageCode);
|
|
773
|
+
}
|
|
774
|
+
declare const _default: UserMessages;
|
|
775
|
+
|
|
776
|
+
export { ApiCore, ApiHttpRequest, ApiHttpResponse, ApiInvoker, ApiJoinInvoker, ApiObjectCollectionIterator, ApiRequest, ApiResponse, ApplicationInitializer, EngineInitializer, type IApiOperations, type IFilter, type IFilterValue, type IFiltersCollection, type IHttpCallback, type IMappedCollection, LanguageCode, MultipartFormData, _default as UserMessages, ApiObjectInitializer as default, fileLink, fileRequestId };
|