@acorex/connectivity 20.6.0-next.1 → 20.6.0-next.10
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/api/index.d.ts +198 -2
- package/fesm2022/{acorex-connectivity-api-execute.command-BesxhDsD.mjs → acorex-connectivity-api-execute.command-BwXw_Kn7.mjs} +4 -4
- package/fesm2022/{acorex-connectivity-api-execute.command-BesxhDsD.mjs.map → acorex-connectivity-api-execute.command-BwXw_Kn7.mjs.map} +1 -1
- package/fesm2022/acorex-connectivity-api.mjs +260 -117
- package/fesm2022/acorex-connectivity-api.mjs.map +1 -1
- package/fesm2022/{acorex-connectivity-mock-category-with-items.query-Cii5As1T.mjs → acorex-connectivity-mock-category-with-items.query-NY9J0cQ0.mjs} +4 -4
- package/fesm2022/{acorex-connectivity-mock-category-with-items.query-Cii5As1T.mjs.map → acorex-connectivity-mock-category-with-items.query-NY9J0cQ0.mjs.map} +1 -1
- package/fesm2022/{acorex-connectivity-mock-distribution-record.command-w3zoeELy.mjs → acorex-connectivity-mock-distribution-record.command-B-Xviv6G.mjs} +4 -4
- package/fesm2022/{acorex-connectivity-mock-distribution-record.command-w3zoeELy.mjs.map → acorex-connectivity-mock-distribution-record.command-B-Xviv6G.mjs.map} +1 -1
- package/fesm2022/{acorex-connectivity-mock-sample.command-C5jZuYcW.mjs → acorex-connectivity-mock-sample.command-BkxMgq1C.mjs} +4 -4
- package/fesm2022/{acorex-connectivity-mock-sample.command-C5jZuYcW.mjs.map → acorex-connectivity-mock-sample.command-BkxMgq1C.mjs.map} +1 -1
- package/fesm2022/acorex-connectivity-mock.mjs +2537 -1050
- package/fesm2022/acorex-connectivity-mock.mjs.map +1 -1
- package/fesm2022/acorex-connectivity-utils.mjs +7 -7
- package/fesm2022/acorex-connectivity-utils.mjs.map +1 -1
- package/mock/index.d.ts +306 -61
- package/package.json +6 -6
package/api/index.d.ts
CHANGED
|
@@ -9,6 +9,9 @@ import { AXPApplicationLoader, AXPApplication, AXPFeatureLoader, AXPFeature, AXP
|
|
|
9
9
|
import * as i3 from '@acorex/connectivity/utils';
|
|
10
10
|
import * as i1 from '@acorex/platform/runtime';
|
|
11
11
|
import { Observable } from 'rxjs';
|
|
12
|
+
import { AXPUserAvatarProvider, AXPUserAvatarData } from '@acorex/platform/layout/components';
|
|
13
|
+
import * as _acorex_modules_report_management from '@acorex/modules/report-management';
|
|
14
|
+
import { AXPReportCategoryProvider, AXPReportCategory, AXPReportDefinitionProvider, AXPReportDefinition } from '@acorex/modules/report-management';
|
|
12
15
|
|
|
13
16
|
declare class AXCApiEntityStorageService implements AXPEntityStorageService<string, any> {
|
|
14
17
|
private http;
|
|
@@ -207,6 +210,12 @@ declare class AXMOidcTenantLoader implements AXPTenantLoader {
|
|
|
207
210
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXMOidcTenantLoader>;
|
|
208
211
|
}
|
|
209
212
|
|
|
213
|
+
declare class AXCApiUserAvatarProvider implements AXPUserAvatarProvider {
|
|
214
|
+
private userService;
|
|
215
|
+
private sessionService;
|
|
216
|
+
provide(userId: string): Promise<AXPUserAvatarData>;
|
|
217
|
+
}
|
|
218
|
+
|
|
210
219
|
declare class APIGoogleStrategy extends AXPAuthStrategy {
|
|
211
220
|
private aXMAuthConfigs;
|
|
212
221
|
private oauthService;
|
|
@@ -234,5 +243,192 @@ declare class APIGoogleStrategy extends AXPAuthStrategy {
|
|
|
234
243
|
static ɵprov: i0.ɵɵInjectableDeclaration<APIGoogleStrategy>;
|
|
235
244
|
}
|
|
236
245
|
|
|
237
|
-
|
|
238
|
-
|
|
246
|
+
/**
|
|
247
|
+
* Execute Report DTO - Response from report execution API
|
|
248
|
+
*/
|
|
249
|
+
interface AXPExecuteReportDto {
|
|
250
|
+
type: string;
|
|
251
|
+
items: Record<string, unknown>[];
|
|
252
|
+
totalCount: number;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* API Response for Category endpoint
|
|
256
|
+
* Used by: GET /api/v1/global/report-management/category
|
|
257
|
+
* GET /api/v1/global/report-management/category/{parentId}
|
|
258
|
+
*/
|
|
259
|
+
interface AXCReportCategoryApiResponse {
|
|
260
|
+
totalCount: number;
|
|
261
|
+
items: AXCReportCategoryApiItem[];
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Category Item with recursive structure
|
|
265
|
+
* Each category can contain child categories (folderItems) and reports (reportDefinitionItems)
|
|
266
|
+
*/
|
|
267
|
+
interface AXCReportCategoryApiItem {
|
|
268
|
+
reportCategoryParentId: string | null;
|
|
269
|
+
name: string;
|
|
270
|
+
title: string;
|
|
271
|
+
description: string | null;
|
|
272
|
+
folderCount: number;
|
|
273
|
+
itemCount: number;
|
|
274
|
+
isArchived: boolean;
|
|
275
|
+
reportDefinitionItems: AXCReportDefinitionApiItem[];
|
|
276
|
+
folderItems: AXCReportCategoryApiItem[];
|
|
277
|
+
id: string;
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Report Definition Item (in category list, without full layout)
|
|
281
|
+
*/
|
|
282
|
+
interface AXCReportDefinitionApiItem {
|
|
283
|
+
categoryIds: string[];
|
|
284
|
+
name: string;
|
|
285
|
+
title: string;
|
|
286
|
+
description: string | null;
|
|
287
|
+
isArchived: boolean;
|
|
288
|
+
id: string;
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Full Report Definition with complete details including layouts
|
|
292
|
+
* Used by: GET /api/v1/global/report-management/report/{reportId}
|
|
293
|
+
*/
|
|
294
|
+
interface AXCReportDefinitionApiResponse {
|
|
295
|
+
id: string;
|
|
296
|
+
name: string;
|
|
297
|
+
title: string;
|
|
298
|
+
description: string | null;
|
|
299
|
+
categoryIds: string[];
|
|
300
|
+
parameterGroups: AXCReportParameterGroup[];
|
|
301
|
+
layouts: AXCReportLayoutDefinition[];
|
|
302
|
+
defaultLayoutId: string;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Parameter Group for report parameters
|
|
306
|
+
*/
|
|
307
|
+
interface AXCReportParameterGroup {
|
|
308
|
+
name: string;
|
|
309
|
+
title: string;
|
|
310
|
+
parameters: AXCReportParameter[];
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Report Parameter definition
|
|
314
|
+
*/
|
|
315
|
+
interface AXCReportParameter {
|
|
316
|
+
path: string;
|
|
317
|
+
title: string;
|
|
318
|
+
description?: string;
|
|
319
|
+
widget: {
|
|
320
|
+
type: string;
|
|
321
|
+
path?: string | null;
|
|
322
|
+
options?: any;
|
|
323
|
+
valueTransforms?: any;
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Layout Definition for report display
|
|
328
|
+
*/
|
|
329
|
+
interface AXCReportLayoutDefinition {
|
|
330
|
+
id: string;
|
|
331
|
+
title: string;
|
|
332
|
+
layout: any;
|
|
333
|
+
dataSource?: {
|
|
334
|
+
type: string;
|
|
335
|
+
name?: string;
|
|
336
|
+
provider?: string;
|
|
337
|
+
};
|
|
338
|
+
export?: {
|
|
339
|
+
fileNameTemplate: string;
|
|
340
|
+
pdf?: any;
|
|
341
|
+
excel?: any;
|
|
342
|
+
csv?: any;
|
|
343
|
+
};
|
|
344
|
+
isDefault?: boolean;
|
|
345
|
+
}
|
|
346
|
+
declare class AXCReportManagementDataService {
|
|
347
|
+
private readonly http;
|
|
348
|
+
private readonly configs;
|
|
349
|
+
private readonly baseUrl;
|
|
350
|
+
private categoryDataCache;
|
|
351
|
+
private rootCategoriesCache;
|
|
352
|
+
private pendingRequests;
|
|
353
|
+
private pendingRootCategoriesRequest;
|
|
354
|
+
/**
|
|
355
|
+
* Fetch root categories (no parent). Only root categories without reports and children.
|
|
356
|
+
* Uses cache and pending requests to avoid duplicate API calls.
|
|
357
|
+
*/
|
|
358
|
+
getRootCategories(): Promise<AXCReportCategoryApiItem[]>;
|
|
359
|
+
/**
|
|
360
|
+
* Fetch category data for a given parentId.
|
|
361
|
+
* Returns the parent category with its FolderItems (children) and ReportDefinitionItems (reports).
|
|
362
|
+
* Uses cache to avoid duplicate API calls.
|
|
363
|
+
*/
|
|
364
|
+
getCategoryData(parentId: string): Promise<AXCReportCategoryApiItem | undefined>;
|
|
365
|
+
/**
|
|
366
|
+
* Fetch both child categories and reports for a given parentId.
|
|
367
|
+
* This method ensures only one API call is made and both results are returned.
|
|
368
|
+
*/
|
|
369
|
+
getCategoryChildrenAndReports(parentId: string): Promise<{
|
|
370
|
+
categories: AXCReportCategoryApiItem[];
|
|
371
|
+
reports: AXCReportDefinitionApiItem[];
|
|
372
|
+
}>;
|
|
373
|
+
/**
|
|
374
|
+
* Fetch child categories of a given parent.
|
|
375
|
+
* Uses getCategoryData to get FolderItems (children) from the parent category.
|
|
376
|
+
*/
|
|
377
|
+
getChildCategories(parentId: string): Promise<AXCReportCategoryApiItem[]>;
|
|
378
|
+
/**
|
|
379
|
+
* Fetch report definitions that belong to a specific category.
|
|
380
|
+
* Uses getCategoryData to get ReportDefinitionItems (reports) from the category.
|
|
381
|
+
*/
|
|
382
|
+
getCategoryReports(categoryId: string): Promise<AXCReportDefinitionApiItem[]>;
|
|
383
|
+
/**
|
|
384
|
+
* Fetch a single category by id.
|
|
385
|
+
* First checks cache, then uses getCategoryData if not found in cache.
|
|
386
|
+
*/
|
|
387
|
+
getCategoryById(id: string): Promise<AXCReportCategoryApiItem | undefined>;
|
|
388
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXCReportManagementDataService, never>;
|
|
389
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXCReportManagementDataService>;
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Category provider that uses the shared data service.
|
|
393
|
+
* Both providers use the same dataService instance which ensures proper caching.
|
|
394
|
+
*/
|
|
395
|
+
declare class AXCReportCategoryApiProvider implements AXPReportCategoryProvider {
|
|
396
|
+
private readonly dataService;
|
|
397
|
+
getList(parentId?: string): Promise<AXPReportCategory[]>;
|
|
398
|
+
getById(id: string): Promise<AXPReportCategory | undefined>;
|
|
399
|
+
private mapApiCategoryToReportCategory;
|
|
400
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXCReportCategoryApiProvider, never>;
|
|
401
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXCReportCategoryApiProvider>;
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* Definition provider that uses the shared data service.
|
|
405
|
+
* Both providers use the same dataService instance which ensures proper caching.
|
|
406
|
+
*/
|
|
407
|
+
declare class AXCReportDefinitionApiProvider implements AXPReportDefinitionProvider {
|
|
408
|
+
private readonly dataService;
|
|
409
|
+
private readonly http;
|
|
410
|
+
getList(categoryId: string): Promise<AXPReportDefinition[]>;
|
|
411
|
+
getById(id: string): Promise<AXPReportDefinition | undefined>;
|
|
412
|
+
private mapApiReportDefinitionItemToReportDefinition;
|
|
413
|
+
private mapApiReportDefinitionToReportDefinition;
|
|
414
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXCReportDefinitionApiProvider, never>;
|
|
415
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXCReportDefinitionApiProvider>;
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* Both providers use the same dataService instance (which is a singleton),
|
|
419
|
+
* ensuring they share the same cache and only one API call is made when both
|
|
420
|
+
* getCategories and getReportsByCategoryId are called for the same categoryId.
|
|
421
|
+
*/
|
|
422
|
+
declare const AXC_REPORT_CATEGORY_API_PROVIDER: {
|
|
423
|
+
provide: i0.InjectionToken<_acorex_modules_report_management.AXPReportCategoryProviderToken[]>;
|
|
424
|
+
useClass: typeof AXCReportCategoryApiProvider;
|
|
425
|
+
multi: boolean;
|
|
426
|
+
};
|
|
427
|
+
declare const AXC_REPORT_DEFINITION_API_PROVIDER: {
|
|
428
|
+
provide: i0.InjectionToken<_acorex_modules_report_management.AXPReportDefinitionProviderToken[]>;
|
|
429
|
+
useClass: typeof AXCReportDefinitionApiProvider;
|
|
430
|
+
multi: boolean;
|
|
431
|
+
};
|
|
432
|
+
|
|
433
|
+
export { APIGoogleStrategy, AXCAPIOidcStrategy, AXCApiEntityStorageService, AXCApiModule, AXCApiUserAvatarProvider, AXCReportCategoryApiProvider, AXCReportDefinitionApiProvider, AXCReportManagementApiModule, AXCReportManagementDataService, AXC_REPORT_CATEGORY_API_PROVIDER, AXC_REPORT_DEFINITION_API_PROVIDER, AXMConfigurationService, AXMOidcApplicationLoader, AXMOidcFeatureLoader, AXMOidcPermissionLoader, AXMOidcTenantLoader };
|
|
434
|
+
export type { AXCReportCategoryApiItem, AXCReportCategoryApiResponse, AXCReportDefinitionApiItem, AXCReportDefinitionApiResponse, AXCReportLayoutDefinition, AXCReportParameter, AXCReportParameterGroup, AXPExecuteReportDto, AXPOAuthExternalCredentials, AXPUserPassCredentials, ApplicationConfiguration, Auth, Culture, IAuthenticationDataModel, Language, Localization, NameValue, Resource };
|
|
@@ -72,10 +72,10 @@ class AXCReportExecuteCommand {
|
|
|
72
72
|
throw new Error(`Failed to execute report: ${errorMessage}`);
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
76
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
75
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXCReportExecuteCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
76
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXCReportExecuteCommand, providedIn: 'root' }); }
|
|
77
77
|
}
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXCReportExecuteCommand, decorators: [{
|
|
79
79
|
type: Injectable,
|
|
80
80
|
args: [{
|
|
81
81
|
providedIn: 'root',
|
|
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.10", ngImpo
|
|
|
83
83
|
}] });
|
|
84
84
|
|
|
85
85
|
export { AXCReportExecuteCommand };
|
|
86
|
-
//# sourceMappingURL=acorex-connectivity-api-execute.command-
|
|
86
|
+
//# sourceMappingURL=acorex-connectivity-api-execute.command-BwXw_Kn7.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-connectivity-api-execute.command-BesxhDsD.mjs","sources":["../tmp-esm2022/api/lib/report-management/execute.command.js"],"sourcesContent":["import { AXPReportDefinitionService, } from '@acorex/modules/report-management';\nimport { AXP_ROOT_CONFIG_TOKEN } from '@acorex/platform/common';\nimport { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXCReportExecuteCommand {\n constructor() {\n this.http = inject(HttpClient);\n this.reportDefinitionService = inject(AXPReportDefinitionService);\n this.configs = inject(AXP_ROOT_CONFIG_TOKEN);\n this.baseUrl = this.configs.baseUrl;\n }\n //#region ---- Command Implementation ----\n async execute(context) {\n try {\n const { reportId, layoutId, parameters } = context;\n // Get the report definition to find the layout\n const reportDefinition = await this.reportDefinitionService.getReportById(reportId);\n if (!reportDefinition) {\n throw new Error(`Report with ID ${reportId} not found`);\n }\n // Find the specific layout\n const layoutDefinition = reportDefinition.layouts.find((l) => l.id === layoutId);\n if (!layoutDefinition) {\n throw new Error(`Layout with ID ${layoutId} not found in report ${reportId}`);\n }\n // Call the Execute API endpoint\n const url = `${this.baseUrl}/v1/global/Report-Management/report/Execute`;\n const body = {\n reportId,\n parameters,\n };\n const executeResult = await firstValueFrom(this.http.post(url, body));\n // Convert ExecuteReportDto to AXPExecutionReportResult format\n let executionResult;\n if (executeResult.type === 'table') {\n executionResult = {\n type: 'table',\n items: executeResult.items,\n total: executeResult.totalCount,\n };\n }\n else if (executeResult.type === 'chart') {\n executionResult = {\n type: 'chart',\n data: executeResult.items[0] || {},\n };\n }\n else if (executeResult.type === 'cards') {\n executionResult = {\n type: 'cards',\n items: executeResult.items,\n };\n }\n else {\n executionResult = {\n type: 'custom',\n data: executeResult.items,\n };\n }\n // Return the combined layout configuration and data\n return {\n ...layoutDefinition.layout,\n data: executionResult,\n };\n }\n catch (error) {\n console.error('Error executing report:', error);\n const errorMessage = error instanceof Error ? error.message : 'Unknown error';\n throw new Error(`Failed to execute report: ${errorMessage}`);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.10\", ngImport: i0, type: AXCReportExecuteCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.10\", ngImport: i0, type: AXCReportExecuteCommand, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.10\", ngImport: i0, type: AXCReportExecuteCommand, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS5jb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb25uZWN0aXZpdHkvYXBpL3NyYy9saWIvcmVwb3J0LW1hbmFnZW1lbnQvZXhlY3V0ZS5jb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFLTCwwQkFBMEIsR0FFM0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNdEMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUltQixTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLDRCQUF1QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzdELFlBQU8sR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7S0FvRWpEO0lBbEVDLDhDQUE4QztJQUU5QyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWtDO1FBQzlDLElBQUksQ0FBQztZQUNILE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQztZQUVuRCwrQ0FBK0M7WUFDL0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLFFBQVEsWUFBWSxDQUFDLENBQUM7WUFDMUQsQ0FBQztZQUVELDJCQUEyQjtZQUMzQixNQUFNLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUE0QixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBQzVHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixRQUFRLHdCQUF3QixRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ2hGLENBQUM7WUFFRCxnQ0FBZ0M7WUFDaEMsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyw2Q0FBNkMsQ0FBQztZQUN6RSxNQUFNLElBQUksR0FBRztnQkFDWCxRQUFRO2dCQUNSLFVBQVU7YUFDWCxDQUFDO1lBRUYsTUFBTSxhQUFhLEdBQXdCLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFzQixHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUVoSCw4REFBOEQ7WUFDOUQsSUFBSSxlQUF5QyxDQUFDO1lBRTlDLElBQUksYUFBYSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDbkMsZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7b0JBQzFCLEtBQUssRUFBRSxhQUFhLENBQUMsVUFBVTtpQkFDaEMsQ0FBQztZQUNKLENBQUM7aUJBQU0sSUFBSSxhQUFhLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMxQyxlQUFlLEdBQUc7b0JBQ2hCLElBQUksRUFBRSxPQUFPO29CQUNiLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUU7aUJBQ25DLENBQUM7WUFDSixDQUFDO2lCQUFNLElBQUksYUFBYSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUMsZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7aUJBQzNCLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUs7aUJBQzFCLENBQUM7WUFDSixDQUFDO1lBRUQsb0RBQW9EO1lBQ3BELE9BQU87Z0JBQ0wsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNO2dCQUMxQixJQUFJLEVBQUUsZUFBZTthQUN0QixDQUFDO1FBQ0osQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2hELE1BQU0sWUFBWSxHQUFHLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQztZQUM5RSxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELENBQUM7SUFDSCxDQUFDOytHQXJFVSx1QkFBdUI7bUhBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzs0RkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZCxcbiAgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZFJlc3VsdCxcbiAgQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0LFxuICBBWFBMYXlvdXRFeGVjdXRpb25Db250ZXh0LFxuICBBWFBSZXBvcnREZWZpbml0aW9uU2VydmljZSxcbiAgQVhQUmVwb3J0TGF5b3V0RGVmaW5pdGlvbixcbn0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL3JlcG9ydC1tYW5hZ2VtZW50JztcbmltcG9ydCB7IEFYUF9ST09UX0NPTkZJR19UT0tFTiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBFeGVjdXRlUmVwb3J0RHRvIH0gZnJvbSAnLi9yZXBvcnQtbWFuYWdlbWVudC1hcGkucHJvdmlkZXJzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYQ1JlcG9ydEV4ZWN1dGVDb21tYW5kIGltcGxlbWVudHMgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXBvcnREZWZpbml0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXBvcnREZWZpbml0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlncyA9IGluamVjdChBWFBfUk9PVF9DT05GSUdfVE9LRU4pO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VVcmwgPSB0aGlzLmNvbmZpZ3MuYmFzZVVybDtcblxuICAvLyNyZWdpb24gLS0tLSAgIENvbW1hbmQgSW1wbGVtZW50YXRpb24gICAtLS0tXG5cbiAgYXN5bmMgZXhlY3V0ZShjb250ZXh0OiBBWFBMYXlvdXRFeGVjdXRpb25Db250ZXh0KTogUHJvbWlzZTxBWFBFeGVjdXRpb25SZXBvcnRDb21tYW5kUmVzdWx0PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgcmVwb3J0SWQsIGxheW91dElkLCBwYXJhbWV0ZXJzIH0gPSBjb250ZXh0O1xuXG4gICAgICAvLyBHZXQgdGhlIHJlcG9ydCBkZWZpbml0aW9uIHRvIGZpbmQgdGhlIGxheW91dFxuICAgICAgY29uc3QgcmVwb3J0RGVmaW5pdGlvbiA9IGF3YWl0IHRoaXMucmVwb3J0RGVmaW5pdGlvblNlcnZpY2UuZ2V0UmVwb3J0QnlJZChyZXBvcnRJZCk7XG4gICAgICBpZiAoIXJlcG9ydERlZmluaXRpb24pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBSZXBvcnQgd2l0aCBJRCAke3JlcG9ydElkfSBub3QgZm91bmRgKTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluZCB0aGUgc3BlY2lmaWMgbGF5b3V0XG4gICAgICBjb25zdCBsYXlvdXREZWZpbml0aW9uID0gcmVwb3J0RGVmaW5pdGlvbi5sYXlvdXRzLmZpbmQoKGw6IEFYUFJlcG9ydExheW91dERlZmluaXRpb24pID0+IGwuaWQgPT09IGxheW91dElkKTtcbiAgICAgIGlmICghbGF5b3V0RGVmaW5pdGlvbikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYExheW91dCB3aXRoIElEICR7bGF5b3V0SWR9IG5vdCBmb3VuZCBpbiByZXBvcnQgJHtyZXBvcnRJZH1gKTtcbiAgICAgIH1cblxuICAgICAgLy8gQ2FsbCB0aGUgRXhlY3V0ZSBBUEkgZW5kcG9pbnRcbiAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYmFzZVVybH0vdjEvZ2xvYmFsL1JlcG9ydC1NYW5hZ2VtZW50L3JlcG9ydC9FeGVjdXRlYDtcbiAgICAgIGNvbnN0IGJvZHkgPSB7XG4gICAgICAgIHJlcG9ydElkLFxuICAgICAgICBwYXJhbWV0ZXJzLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgZXhlY3V0ZVJlc3VsdDogQVhQRXhlY3V0ZVJlcG9ydER0byA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuaHR0cC5wb3N0PEFYUEV4ZWN1dGVSZXBvcnREdG8+KHVybCwgYm9keSkpO1xuXG4gICAgICAvLyBDb252ZXJ0IEV4ZWN1dGVSZXBvcnREdG8gdG8gQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0IGZvcm1hdFxuICAgICAgbGV0IGV4ZWN1dGlvblJlc3VsdDogQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0O1xuXG4gICAgICBpZiAoZXhlY3V0ZVJlc3VsdC50eXBlID09PSAndGFibGUnKSB7XG4gICAgICAgIGV4ZWN1dGlvblJlc3VsdCA9IHtcbiAgICAgICAgICB0eXBlOiAndGFibGUnLFxuICAgICAgICAgIGl0ZW1zOiBleGVjdXRlUmVzdWx0Lml0ZW1zLFxuICAgICAgICAgIHRvdGFsOiBleGVjdXRlUmVzdWx0LnRvdGFsQ291bnQsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2UgaWYgKGV4ZWN1dGVSZXN1bHQudHlwZSA9PT0gJ2NoYXJ0Jykge1xuICAgICAgICBleGVjdXRpb25SZXN1bHQgPSB7XG4gICAgICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgICAgICBkYXRhOiBleGVjdXRlUmVzdWx0Lml0ZW1zWzBdIHx8IHt9LFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChleGVjdXRlUmVzdWx0LnR5cGUgPT09ICdjYXJkcycpIHtcbiAgICAgICAgZXhlY3V0aW9uUmVzdWx0ID0ge1xuICAgICAgICAgIHR5cGU6ICdjYXJkcycsXG4gICAgICAgICAgaXRlbXM6IGV4ZWN1dGVSZXN1bHQuaXRlbXMsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBleGVjdXRpb25SZXN1bHQgPSB7XG4gICAgICAgICAgdHlwZTogJ2N1c3RvbScsXG4gICAgICAgICAgZGF0YTogZXhlY3V0ZVJlc3VsdC5pdGVtcyxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgLy8gUmV0dXJuIHRoZSBjb21iaW5lZCBsYXlvdXQgY29uZmlndXJhdGlvbiBhbmQgZGF0YVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ubGF5b3V0RGVmaW5pdGlvbi5sYXlvdXQsXG4gICAgICAgIGRhdGE6IGV4ZWN1dGlvblJlc3VsdCxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV4ZWN1dGluZyByZXBvcnQ6JywgZXJyb3IpO1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcic7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBleGVjdXRlIHJlcG9ydDogJHtlcnJvck1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG59XG4iXX0="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-connectivity-api-execute.command-BwXw_Kn7.mjs","sources":["../tmp-esm2022/api/lib/report-management/execute.command.js"],"sourcesContent":["import { AXPReportDefinitionService, } from '@acorex/modules/report-management';\nimport { AXP_ROOT_CONFIG_TOKEN } from '@acorex/platform/common';\nimport { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXCReportExecuteCommand {\n constructor() {\n this.http = inject(HttpClient);\n this.reportDefinitionService = inject(AXPReportDefinitionService);\n this.configs = inject(AXP_ROOT_CONFIG_TOKEN);\n this.baseUrl = this.configs.baseUrl;\n }\n //#region ---- Command Implementation ----\n async execute(context) {\n try {\n const { reportId, layoutId, parameters } = context;\n // Get the report definition to find the layout\n const reportDefinition = await this.reportDefinitionService.getReportById(reportId);\n if (!reportDefinition) {\n throw new Error(`Report with ID ${reportId} not found`);\n }\n // Find the specific layout\n const layoutDefinition = reportDefinition.layouts.find((l) => l.id === layoutId);\n if (!layoutDefinition) {\n throw new Error(`Layout with ID ${layoutId} not found in report ${reportId}`);\n }\n // Call the Execute API endpoint\n const url = `${this.baseUrl}/v1/global/Report-Management/report/Execute`;\n const body = {\n reportId,\n parameters,\n };\n const executeResult = await firstValueFrom(this.http.post(url, body));\n // Convert ExecuteReportDto to AXPExecutionReportResult format\n let executionResult;\n if (executeResult.type === 'table') {\n executionResult = {\n type: 'table',\n items: executeResult.items,\n total: executeResult.totalCount,\n };\n }\n else if (executeResult.type === 'chart') {\n executionResult = {\n type: 'chart',\n data: executeResult.items[0] || {},\n };\n }\n else if (executeResult.type === 'cards') {\n executionResult = {\n type: 'cards',\n items: executeResult.items,\n };\n }\n else {\n executionResult = {\n type: 'custom',\n data: executeResult.items,\n };\n }\n // Return the combined layout configuration and data\n return {\n ...layoutDefinition.layout,\n data: executionResult,\n };\n }\n catch (error) {\n console.error('Error executing report:', error);\n const errorMessage = error instanceof Error ? error.message : 'Unknown error';\n throw new Error(`Failed to execute report: ${errorMessage}`);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXCReportExecuteCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXCReportExecuteCommand, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXCReportExecuteCommand, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS5jb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb25uZWN0aXZpdHkvYXBpL3NyYy9saWIvcmVwb3J0LW1hbmFnZW1lbnQvZXhlY3V0ZS5jb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFLTCwwQkFBMEIsR0FFM0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNdEMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUltQixTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLDRCQUF1QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzdELFlBQU8sR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN4QyxZQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7S0FvRWpEO0lBbEVDLDhDQUE4QztJQUU5QyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWtDO1FBQzlDLElBQUksQ0FBQztZQUNILE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQztZQUVuRCwrQ0FBK0M7WUFDL0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLFFBQVEsWUFBWSxDQUFDLENBQUM7WUFDMUQsQ0FBQztZQUVELDJCQUEyQjtZQUMzQixNQUFNLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUE0QixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBQzVHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixRQUFRLHdCQUF3QixRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ2hGLENBQUM7WUFFRCxnQ0FBZ0M7WUFDaEMsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyw2Q0FBNkMsQ0FBQztZQUN6RSxNQUFNLElBQUksR0FBRztnQkFDWCxRQUFRO2dCQUNSLFVBQVU7YUFDWCxDQUFDO1lBRUYsTUFBTSxhQUFhLEdBQXdCLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFzQixHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUVoSCw4REFBOEQ7WUFDOUQsSUFBSSxlQUF5QyxDQUFDO1lBRTlDLElBQUksYUFBYSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDbkMsZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7b0JBQzFCLEtBQUssRUFBRSxhQUFhLENBQUMsVUFBVTtpQkFDaEMsQ0FBQztZQUNKLENBQUM7aUJBQU0sSUFBSSxhQUFhLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMxQyxlQUFlLEdBQUc7b0JBQ2hCLElBQUksRUFBRSxPQUFPO29CQUNiLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUU7aUJBQ25DLENBQUM7WUFDSixDQUFDO2lCQUFNLElBQUksYUFBYSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUMsZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7aUJBQzNCLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZUFBZSxHQUFHO29CQUNoQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUs7aUJBQzFCLENBQUM7WUFDSixDQUFDO1lBRUQsb0RBQW9EO1lBQ3BELE9BQU87Z0JBQ0wsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNO2dCQUMxQixJQUFJLEVBQUUsZUFBZTthQUN0QixDQUFDO1FBQ0osQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2hELE1BQU0sWUFBWSxHQUFHLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQztZQUM5RSxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELENBQUM7SUFDSCxDQUFDOytHQXJFVSx1QkFBdUI7bUhBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzs0RkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZCxcbiAgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZFJlc3VsdCxcbiAgQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0LFxuICBBWFBMYXlvdXRFeGVjdXRpb25Db250ZXh0LFxuICBBWFBSZXBvcnREZWZpbml0aW9uU2VydmljZSxcbiAgQVhQUmVwb3J0TGF5b3V0RGVmaW5pdGlvbixcbn0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL3JlcG9ydC1tYW5hZ2VtZW50JztcbmltcG9ydCB7IEFYUF9ST09UX0NPTkZJR19UT0tFTiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBFeGVjdXRlUmVwb3J0RHRvIH0gZnJvbSAnLi9yZXBvcnQtbWFuYWdlbWVudC1hcGkucHJvdmlkZXJzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYQ1JlcG9ydEV4ZWN1dGVDb21tYW5kIGltcGxlbWVudHMgQVhQRXhlY3V0aW9uUmVwb3J0Q29tbWFuZCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXBvcnREZWZpbml0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXBvcnREZWZpbml0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlncyA9IGluamVjdChBWFBfUk9PVF9DT05GSUdfVE9LRU4pO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VVcmwgPSB0aGlzLmNvbmZpZ3MuYmFzZVVybDtcblxuICAvLyNyZWdpb24gLS0tLSAgIENvbW1hbmQgSW1wbGVtZW50YXRpb24gICAtLS0tXG5cbiAgYXN5bmMgZXhlY3V0ZShjb250ZXh0OiBBWFBMYXlvdXRFeGVjdXRpb25Db250ZXh0KTogUHJvbWlzZTxBWFBFeGVjdXRpb25SZXBvcnRDb21tYW5kUmVzdWx0PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgcmVwb3J0SWQsIGxheW91dElkLCBwYXJhbWV0ZXJzIH0gPSBjb250ZXh0O1xuXG4gICAgICAvLyBHZXQgdGhlIHJlcG9ydCBkZWZpbml0aW9uIHRvIGZpbmQgdGhlIGxheW91dFxuICAgICAgY29uc3QgcmVwb3J0RGVmaW5pdGlvbiA9IGF3YWl0IHRoaXMucmVwb3J0RGVmaW5pdGlvblNlcnZpY2UuZ2V0UmVwb3J0QnlJZChyZXBvcnRJZCk7XG4gICAgICBpZiAoIXJlcG9ydERlZmluaXRpb24pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBSZXBvcnQgd2l0aCBJRCAke3JlcG9ydElkfSBub3QgZm91bmRgKTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluZCB0aGUgc3BlY2lmaWMgbGF5b3V0XG4gICAgICBjb25zdCBsYXlvdXREZWZpbml0aW9uID0gcmVwb3J0RGVmaW5pdGlvbi5sYXlvdXRzLmZpbmQoKGw6IEFYUFJlcG9ydExheW91dERlZmluaXRpb24pID0+IGwuaWQgPT09IGxheW91dElkKTtcbiAgICAgIGlmICghbGF5b3V0RGVmaW5pdGlvbikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYExheW91dCB3aXRoIElEICR7bGF5b3V0SWR9IG5vdCBmb3VuZCBpbiByZXBvcnQgJHtyZXBvcnRJZH1gKTtcbiAgICAgIH1cblxuICAgICAgLy8gQ2FsbCB0aGUgRXhlY3V0ZSBBUEkgZW5kcG9pbnRcbiAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYmFzZVVybH0vdjEvZ2xvYmFsL1JlcG9ydC1NYW5hZ2VtZW50L3JlcG9ydC9FeGVjdXRlYDtcbiAgICAgIGNvbnN0IGJvZHkgPSB7XG4gICAgICAgIHJlcG9ydElkLFxuICAgICAgICBwYXJhbWV0ZXJzLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgZXhlY3V0ZVJlc3VsdDogQVhQRXhlY3V0ZVJlcG9ydER0byA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuaHR0cC5wb3N0PEFYUEV4ZWN1dGVSZXBvcnREdG8+KHVybCwgYm9keSkpO1xuXG4gICAgICAvLyBDb252ZXJ0IEV4ZWN1dGVSZXBvcnREdG8gdG8gQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0IGZvcm1hdFxuICAgICAgbGV0IGV4ZWN1dGlvblJlc3VsdDogQVhQRXhlY3V0aW9uUmVwb3J0UmVzdWx0O1xuXG4gICAgICBpZiAoZXhlY3V0ZVJlc3VsdC50eXBlID09PSAndGFibGUnKSB7XG4gICAgICAgIGV4ZWN1dGlvblJlc3VsdCA9IHtcbiAgICAgICAgICB0eXBlOiAndGFibGUnLFxuICAgICAgICAgIGl0ZW1zOiBleGVjdXRlUmVzdWx0Lml0ZW1zLFxuICAgICAgICAgIHRvdGFsOiBleGVjdXRlUmVzdWx0LnRvdGFsQ291bnQsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2UgaWYgKGV4ZWN1dGVSZXN1bHQudHlwZSA9PT0gJ2NoYXJ0Jykge1xuICAgICAgICBleGVjdXRpb25SZXN1bHQgPSB7XG4gICAgICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgICAgICBkYXRhOiBleGVjdXRlUmVzdWx0Lml0ZW1zWzBdIHx8IHt9LFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChleGVjdXRlUmVzdWx0LnR5cGUgPT09ICdjYXJkcycpIHtcbiAgICAgICAgZXhlY3V0aW9uUmVzdWx0ID0ge1xuICAgICAgICAgIHR5cGU6ICdjYXJkcycsXG4gICAgICAgICAgaXRlbXM6IGV4ZWN1dGVSZXN1bHQuaXRlbXMsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBleGVjdXRpb25SZXN1bHQgPSB7XG4gICAgICAgICAgdHlwZTogJ2N1c3RvbScsXG4gICAgICAgICAgZGF0YTogZXhlY3V0ZVJlc3VsdC5pdGVtcyxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgLy8gUmV0dXJuIHRoZSBjb21iaW5lZCBsYXlvdXQgY29uZmlndXJhdGlvbiBhbmQgZGF0YVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ubGF5b3V0RGVmaW5pdGlvbi5sYXlvdXQsXG4gICAgICAgIGRhdGE6IGV4ZWN1dGlvblJlc3VsdCxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV4ZWN1dGluZyByZXBvcnQ6JywgZXJyb3IpO1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcic7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBleGVjdXRlIHJlcG9ydDogJHtlcnJvck1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG59XG4iXX0="],"names":[],"mappings":"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"}
|