@experteam-mx/ngx-services 18.4.1 → 18.4.2
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/esm2022/lib/apis/api-billing-do.service.mjs +41 -0
- package/esm2022/lib/apis/api-billing-mx.service.mjs +62 -0
- package/esm2022/lib/apis/api-companies.service.mjs +20 -21
- package/esm2022/lib/apis/api-external-pickups.service.mjs +74 -0
- package/esm2022/lib/apis/api-invoices.service.mjs +78 -8
- package/esm2022/lib/apis/api-open-items.service.mjs +62 -0
- package/esm2022/lib/apis/api-reports.service.mjs +47 -1
- package/esm2022/lib/apis/api-security.service.mjs +55 -38
- package/esm2022/lib/apis/api-shipments.service.mjs +12 -2
- package/esm2022/lib/apis/models/api-billing.interfaces.mjs +2 -0
- package/esm2022/lib/apis/models/api-billing.types.mjs +2 -0
- package/esm2022/lib/apis/models/api-catalog.interfaces.mjs +1 -1
- package/esm2022/lib/apis/models/api-companies.types.mjs +1 -1
- package/esm2022/lib/apis/models/api-external-pickups.types.mjs +2 -0
- package/esm2022/lib/apis/models/api-invoices.interfaces.mjs +1 -1
- package/esm2022/lib/apis/models/api-invoices.types.mjs +1 -1
- package/esm2022/lib/apis/models/api-open-items.interfaces.mjs +2 -0
- package/esm2022/lib/apis/models/api-open-items.types.mjs +2 -0
- package/esm2022/lib/apis/models/api-reports.interfaces.mjs +1 -1
- package/esm2022/lib/apis/models/api-reports.types.mjs +1 -1
- package/esm2022/lib/apis/models/api-security.types.mjs +1 -1
- package/esm2022/lib/apis/models/api-shipments.types.mjs +1 -1
- package/esm2022/lib/ngx-services.models.mjs +1 -1
- package/esm2022/lib/websockets/web-sockets.service.mjs +115 -0
- package/esm2022/public-api.mjs +11 -1
- package/fesm2022/experteam-mx-ngx-services.mjs +610 -132
- package/fesm2022/experteam-mx-ngx-services.mjs.map +1 -1
- package/lib/apis/api-billing-do.service.d.ts +24 -0
- package/lib/apis/api-billing-mx.service.d.ts +39 -0
- package/lib/apis/api-companies.service.d.ts +9 -9
- package/lib/apis/api-external-pickups.service.d.ts +46 -0
- package/lib/apis/api-invoices.service.d.ts +59 -9
- package/lib/apis/api-open-items.service.d.ts +41 -0
- package/lib/apis/api-reports.service.d.ts +24 -1
- package/lib/apis/api-security.service.d.ts +45 -32
- package/lib/apis/api-shipments.service.d.ts +10 -3
- package/lib/apis/models/api-billing.interfaces.d.ts +41 -0
- package/lib/apis/models/api-billing.types.d.ts +17 -0
- package/lib/apis/models/api-catalog.interfaces.d.ts +6 -0
- package/lib/apis/models/api-companies.types.d.ts +7 -13
- package/lib/apis/models/api-external-pickups.types.d.ts +31 -0
- package/lib/apis/models/api-invoices.interfaces.d.ts +35 -1
- package/lib/apis/models/api-invoices.types.d.ts +57 -5
- package/lib/apis/models/api-open-items.interfaces.d.ts +32 -0
- package/lib/apis/models/api-open-items.types.d.ts +58 -0
- package/lib/apis/models/api-reports.interfaces.d.ts +149 -0
- package/lib/apis/models/api-reports.types.d.ts +13 -4
- package/lib/apis/models/api-security.types.d.ts +9 -8
- package/lib/apis/models/api-shipments.types.d.ts +41 -0
- package/lib/ngx-services.models.d.ts +11 -0
- package/lib/websockets/web-sockets.service.d.ts +49 -0
- package/package.json +11 -2
- package/public-api.d.ts +9 -0
|
@@ -17,13 +17,23 @@ export class ApiInvoicesService {
|
|
|
17
17
|
get url() {
|
|
18
18
|
return this.environments.apiInvoicesUrl ?? '';
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Sends an operation document to the server and processes the response.
|
|
22
|
+
*
|
|
23
|
+
* @param {OperationDocumentIn} body - The input data for the operation document.
|
|
24
|
+
* @return {Observable<OperationDocumentOut>} An observable containing the processed operation document output.
|
|
25
|
+
*/
|
|
26
|
+
postOperationDocument(body) {
|
|
27
|
+
return this.http.post(`${this.url}/operation/document`, body)
|
|
28
|
+
.pipe(map(({ data }) => data));
|
|
29
|
+
}
|
|
20
30
|
/**
|
|
21
31
|
* Fetches and returns the collection receipt data for a given collection ID.
|
|
22
32
|
*
|
|
23
33
|
* @param {number} id - The unique identifier of the collection for which the receipt needs to be retrieved.
|
|
24
|
-
* @return {Observable<
|
|
34
|
+
* @return {Observable<PrintCollectionReceiptOut>} An observable containing the collection receipt data.
|
|
25
35
|
*/
|
|
26
|
-
|
|
36
|
+
getPrintCollectionReceipt(id) {
|
|
27
37
|
return this.http.get(`${this.url}/operation/print/collection-receipt/${id}`)
|
|
28
38
|
.pipe(map(({ data }) => data));
|
|
29
39
|
}
|
|
@@ -31,10 +41,10 @@ export class ApiInvoicesService {
|
|
|
31
41
|
* Handles the account payment operation by sending a POST request to the specified endpoint.
|
|
32
42
|
* Processes the response and returns the operation data.
|
|
33
43
|
*
|
|
34
|
-
* @param {
|
|
35
|
-
* @return {Observable<
|
|
44
|
+
* @param {OperationAccountPaymentIn} body The payload containing information for the account payment operation.
|
|
45
|
+
* @return {Observable<OperationAccountPaymentOut>} An observable emitting the processed account payment operation data.
|
|
36
46
|
*/
|
|
37
|
-
|
|
47
|
+
postOperationAccountPayment(body) {
|
|
38
48
|
return this.http.post(`${this.url}/operation/account-payment`, body)
|
|
39
49
|
.pipe(map(({ data }) => data));
|
|
40
50
|
}
|
|
@@ -45,7 +55,7 @@ export class ApiInvoicesService {
|
|
|
45
55
|
* @param body The data required to cancel the payment receipt, encapsulated in a CancelPaymentReceiptIn object.
|
|
46
56
|
* @return An Observable representing the result of the cancellation. Emits an empty object on success.
|
|
47
57
|
*/
|
|
48
|
-
|
|
58
|
+
postOperationCancelDocument(body) {
|
|
49
59
|
return this.http.post(`${this.url}/operation/cancel-document`, body)
|
|
50
60
|
.pipe(map(({ data }) => data));
|
|
51
61
|
}
|
|
@@ -55,10 +65,70 @@ export class ApiInvoicesService {
|
|
|
55
65
|
* @param {Object} parameters - The parameters required to cancel the invoice, encapsulated in a CancelBillingIn object.
|
|
56
66
|
* @return {Observable<Object>} An observable that emits the response of the cancellation operation.
|
|
57
67
|
*/
|
|
58
|
-
|
|
68
|
+
postOperationCancelBilling({ invoiceId, ...body }) {
|
|
59
69
|
return this.http.post(`${this.url}/operation/cancel-billing/${invoiceId}`, body)
|
|
60
70
|
.pipe(map(({ data }) => data));
|
|
61
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Fetches a list of customer types from the server.
|
|
74
|
+
*
|
|
75
|
+
* @param {QueryParams} params - Query parameters to filter or customize the request.
|
|
76
|
+
* @return {Observable<CustomerTypesOut>} An observable emitting the customer types fetched from the server.
|
|
77
|
+
*/
|
|
78
|
+
getCustomerTypes(params) {
|
|
79
|
+
return this.http.get(`${this.url}/customer-types`, { params })
|
|
80
|
+
.pipe(map(({ data }) => data));
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Retrieves document types specific to a given country.
|
|
84
|
+
*
|
|
85
|
+
* @param {QueryParams} params - The query parameters containing country-specific information.
|
|
86
|
+
* @return {Observable<CustomerDocumentTypesOut>} An observable emitting the document types available for the specified country.
|
|
87
|
+
*/
|
|
88
|
+
getCustomerDocumentTypes(params) {
|
|
89
|
+
return this.http.get(`${this.url}/customer-country-document-types`, { params })
|
|
90
|
+
.pipe(map(({ data }) => data));
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Fetches customer invoice details filtered by a custom invoice type.
|
|
94
|
+
*
|
|
95
|
+
* @param {InvoiceTypeCustomParamsIn} params - An object containing the filter parameters for the custom invoice type.
|
|
96
|
+
* @return {Observable<CustomersOut>} An observable containing customer invoice details of the specified type.
|
|
97
|
+
*/
|
|
98
|
+
getCustomers(params) {
|
|
99
|
+
return this.http.get(`${this.url}/customers`, { params })
|
|
100
|
+
.pipe(map(({ data }) => data));
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Sends a POST request to create or update an external shipment operation.
|
|
104
|
+
*
|
|
105
|
+
* @param {OperationShipmentExternalIn} params - The input parameters for the external shipment operation.
|
|
106
|
+
* @return {Observable<OperationShipmentExternalOut>} An observable that emits the result of the external shipment operation.
|
|
107
|
+
*/
|
|
108
|
+
postOperationShipmentExternal(params) {
|
|
109
|
+
return this.http.post(`${this.url}/operation/shipment/external`, params)
|
|
110
|
+
.pipe(map(({ data }) => data));
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Processes an external payment operation for a shipment.
|
|
114
|
+
*
|
|
115
|
+
* @param {OperationShipmentExternalIn} params - The input parameters required for the external payment operation.
|
|
116
|
+
* @return {Observable<OperationShipmentExternalOut>} An observable that emits the result of the external payment operation for a shipment.
|
|
117
|
+
*/
|
|
118
|
+
postOperationShipmentExternalPayment(params) {
|
|
119
|
+
return this.http.post(`${this.url}/operation/shipment/external/payment`, params)
|
|
120
|
+
.pipe(map(({ data }) => data));
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Retrieves and returns billing operation print details for a given document ID.
|
|
124
|
+
*
|
|
125
|
+
* @param {number} documentId - The ID of the document for which to fetch the print billing operation details.
|
|
126
|
+
* @return {Observable<OperationPrintDocumentOut>} An observable emitting the print billing operation details for the specified document.
|
|
127
|
+
*/
|
|
128
|
+
getOperationPrintDocument(documentId) {
|
|
129
|
+
return this.http.get(`${this.url}/operation/print/document/${documentId}`)
|
|
130
|
+
.pipe(map(({ data }) => data));
|
|
131
|
+
}
|
|
62
132
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiInvoicesService, deps: [{ token: 'env' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
133
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiInvoicesService, providedIn: 'root' });
|
|
64
134
|
}
|
|
@@ -71,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
71
141
|
type: Inject,
|
|
72
142
|
args: ['env']
|
|
73
143
|
}] }, { type: i1.HttpClient }] });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWludm9pY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHBlcnRlYW0tbXgvbmd4LXNlcnZpY2VzL3NyYy9saWIvYXBpcy9hcGktaW52b2ljZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUdsRCxPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFBOzs7QUFhdEMsTUFBTSxPQUFPLGtCQUFrQjtJQUVKO0lBQ2Y7SUFGVixZQUN5QixZQUF5QixFQUN4QyxJQUFnQjtRQURELGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQ3hDLFNBQUksR0FBSixJQUFJLENBQVk7SUFDdEIsQ0FBQztJQUVMOzs7O09BSUc7SUFDSCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxJQUFJLEVBQUUsQ0FBQTtJQUMvQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxzQkFBc0IsQ0FBRSxFQUFVO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW1DLEdBQUcsSUFBSSxDQUFDLEdBQUcsdUNBQXVDLEVBQUUsRUFBRSxDQUFDO2FBQzNHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCx1QkFBdUIsQ0FBRSxJQUErQjtRQUN0RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUF5QyxHQUFHLElBQUksQ0FBQyxHQUFHLDRCQUE0QixFQUFFLElBQUksQ0FBQzthQUN6RyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsb0JBQW9CLENBQUUsSUFBNEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBaUIsR0FBRyxJQUFJLENBQUMsR0FBRyw0QkFBNEIsRUFBRSxJQUFJLENBQUM7YUFDakYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxFQUFtQjtRQUNwRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFpQixHQUFHLElBQUksQ0FBQyxHQUFHLDZCQUE2QixTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUM7YUFDN0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQzt3R0EzRFUsa0JBQWtCLGtCQUVuQixLQUFLOzRHQUZKLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFHSSxNQUFNOzJCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL25neC1zZXJ2aWNlcy5tb2RlbHMnXHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcclxuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgQXBpU3VjY2VzcyB9IGZyb20gJy4vbW9kZWxzL2FwaS5tb2RlbHMnXHJcbmltcG9ydCB7XHJcbiAgQWNjb3VudFBheW1lbnRPcGVyYXRpb25JbixcclxuICBBY2NvdW50UGF5bWVudE9wZXJhdGlvbk91dCxcclxuICBDYW5jZWxCaWxsaW5nSW4sXHJcbiAgQ2FuY2VsUGF5bWVudFJlY2VpcHRJbixcclxuICBDb2xsZWN0aW9uUmVjZWlwdE91dFxyXG59IGZyb20gJy4vbW9kZWxzL2FwaS1pbnZvaWNlcy50eXBlcydcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaUludm9pY2VzU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IgKFxyXG4gICAgQEluamVjdCgnZW52JykgcHJpdmF0ZSBlbnZpcm9ubWVudHM6IEVudmlyb25tZW50LFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50XHJcbiAgKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHRoZSBBUEkgVVJMIGZvciBpbnZvaWNlcyBmcm9tIHRoZSBlbnZpcm9ubWVudHMgY29uZmlndXJhdGlvbi5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIEFQSSBVUkwgZm9yIGludm9pY2VzLlxyXG4gICAqL1xyXG4gIGdldCB1cmwgKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5lbnZpcm9ubWVudHMuYXBpSW52b2ljZXNVcmwgPz8gJydcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgYW5kIHJldHVybnMgdGhlIGNvbGxlY3Rpb24gcmVjZWlwdCBkYXRhIGZvciBhIGdpdmVuIGNvbGxlY3Rpb24gSUQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge251bWJlcn0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGNvbGxlY3Rpb24gZm9yIHdoaWNoIHRoZSByZWNlaXB0IG5lZWRzIHRvIGJlIHJldHJpZXZlZC5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPENvbGxlY3Rpb25SZWNlaXB0T3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIHJlY2VpcHQgZGF0YS5cclxuICAgKi9cclxuICBwcmludENvbGxlY3Rpb25SZWNlaXB0IChpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxDb2xsZWN0aW9uUmVjZWlwdE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxDb2xsZWN0aW9uUmVjZWlwdE91dD4+KGAke3RoaXMudXJsfS9vcGVyYXRpb24vcHJpbnQvY29sbGVjdGlvbi1yZWNlaXB0LyR7aWR9YClcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIHRoZSBhY2NvdW50IHBheW1lbnQgb3BlcmF0aW9uIGJ5IHNlbmRpbmcgYSBQT1NUIHJlcXVlc3QgdG8gdGhlIHNwZWNpZmllZCBlbmRwb2ludC5cclxuICAgKiBQcm9jZXNzZXMgdGhlIHJlc3BvbnNlIGFuZCByZXR1cm5zIHRoZSBvcGVyYXRpb24gZGF0YS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7QWNjb3VudFBheW1lbnRPcGVyYXRpb25Jbn0gYm9keSBUaGUgcGF5bG9hZCBjb250YWluaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgYWNjb3VudCBwYXltZW50IG9wZXJhdGlvbi5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPEFjY291bnRQYXltZW50T3BlcmF0aW9uT3V0Pn0gQW4gb2JzZXJ2YWJsZSBlbWl0dGluZyB0aGUgcHJvY2Vzc2VkIGFjY291bnQgcGF5bWVudCBvcGVyYXRpb24gZGF0YS5cclxuICAgKi9cclxuICBhY2NvdW50UGF5bWVudE9wZXJhdGlvbiAoYm9keTogQWNjb3VudFBheW1lbnRPcGVyYXRpb25Jbik6IE9ic2VydmFibGU8QWNjb3VudFBheW1lbnRPcGVyYXRpb25PdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPEFjY291bnRQYXltZW50T3BlcmF0aW9uT3V0Pj4oYCR7dGhpcy51cmx9L29wZXJhdGlvbi9hY2NvdW50LXBheW1lbnRgLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbmNlbHMgYSBwYXltZW50IHJlY2VpcHQgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGlucHV0LlxyXG4gICAqIFRoaXMgbWV0aG9kIHNlbmRzIGEgUE9TVCByZXF1ZXN0IHRvIGNhbmNlbCBhIGRvY3VtZW50LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGJvZHkgVGhlIGRhdGEgcmVxdWlyZWQgdG8gY2FuY2VsIHRoZSBwYXltZW50IHJlY2VpcHQsIGVuY2Fwc3VsYXRlZCBpbiBhIENhbmNlbFBheW1lbnRSZWNlaXB0SW4gb2JqZWN0LlxyXG4gICAqIEByZXR1cm4gQW4gT2JzZXJ2YWJsZSByZXByZXNlbnRpbmcgdGhlIHJlc3VsdCBvZiB0aGUgY2FuY2VsbGF0aW9uLiBFbWl0cyBhbiBlbXB0eSBvYmplY3Qgb24gc3VjY2Vzcy5cclxuICAgKi9cclxuICBjYW5jZWxQYXltZW50UmVjZWlwdCAoYm9keTogQ2FuY2VsUGF5bWVudFJlY2VpcHRJbik6IE9ic2VydmFibGU8e30+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPHt9Pj4oYCR7dGhpcy51cmx9L29wZXJhdGlvbi9jYW5jZWwtZG9jdW1lbnRgLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbmNlbHMgYW4gaW52b2ljZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW52b2ljZSBJRCBhbmQgYWRkaXRpb25hbCBwYXJhbWV0ZXJzLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtZXRlcnMgLSBUaGUgcGFyYW1ldGVycyByZXF1aXJlZCB0byBjYW5jZWwgdGhlIGludm9pY2UsIGVuY2Fwc3VsYXRlZCBpbiBhIENhbmNlbEJpbGxpbmdJbiBvYmplY3QuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPYmplY3Q+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3BvbnNlIG9mIHRoZSBjYW5jZWxsYXRpb24gb3BlcmF0aW9uLlxyXG4gICAqL1xyXG4gIGNhbmNlbEludm9pY2UgKHsgaW52b2ljZUlkLCAuLi5ib2R5IH06IENhbmNlbEJpbGxpbmdJbik6IE9ic2VydmFibGU8e30+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPHt9Pj4oYCR7dGhpcy51cmx9L29wZXJhdGlvbi9jYW5jZWwtYmlsbGluZy8ke2ludm9pY2VJZH1gLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcbn1cclxuIl19
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWludm9pY2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHBlcnRlYW0tbXgvbmd4LXNlcnZpY2VzL3NyYy9saWIvYXBpcy9hcGktaW52b2ljZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFBOzs7QUF1QnRDLE1BQU0sT0FBTyxrQkFBa0I7SUFFSjtJQUNmO0lBRlYsWUFDeUIsWUFBeUIsRUFDeEMsSUFBZ0I7UUFERCxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN4QyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3RCLENBQUM7SUFFTDs7OztPQUlHO0lBQ0gsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUE7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUUsSUFBeUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBbUMsR0FBRyxJQUFJLENBQUMsR0FBRyxxQkFBcUIsRUFBRSxJQUFJLENBQUM7YUFDNUYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gseUJBQXlCLENBQUUsRUFBVTtRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF3QyxHQUFHLElBQUksQ0FBQyxHQUFHLHVDQUF1QyxFQUFFLEVBQUUsQ0FBQzthQUNoSCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFD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S0c7SUFDSCx5QkFBeUIsQ0FBRSxVQUFrQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF3QyxHQUFHLElBQUksQ0FBQyxHQUFHLDZCQUE2QixVQUFVLEVBQUUsQ0FBQzthQUM5RyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO3dHQXhJVSxrQkFBa0Isa0JBRW5CLEtBQUs7NEdBRkosa0JBQWtCLGNBRmpCLE1BQU07OzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUdJLE1BQU07MkJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9uZ3gtc2VydmljZXMubW9kZWxzJ1xyXG5pbXBvcnQge1xyXG4gIENhbmNlbFBheW1lbnRSZWNlaXB0SW4sXHJcbiAgQ3VzdG9tZXJEb2N1bWVudFR5cGVzT3V0LFxyXG4gIEN1c3RvbWVyc091dCxcclxuICBDdXN0b21lclR5cGVzT3V0LFxyXG4gIEludm9pY2VUeXBlQ3VzdG9tUGFyYW1zSW4sXHJcbiAgT3BlcmF0aW9uQWNjb3VudFBheW1lbnRJbixcclxuICBPcGVyYXRpb25BY2NvdW50UGF5bWVudE91dCxcclxuICBPcGVyYXRpb25DYW5jZWxCaWxsaW5nSW4sXHJcbiAgT3BlcmF0aW9uRG9jdW1lbnRJbixcclxuICBPcGVyYXRpb25Eb2N1bWVudE91dCxcclxuICBPcGVyYXRpb25QcmludERvY3VtZW50T3V0LFxyXG4gIE9wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWxJbixcclxuICBPcGVyYXRpb25TaGlwbWVudEV4dGVybmFsT3V0LFxyXG4gIFByaW50Q29sbGVjdGlvblJlY2VpcHRPdXRcclxufSBmcm9tICcuL21vZGVscy9hcGktaW52b2ljZXMudHlwZXMnXHJcbmltcG9ydCB7IEFwaVN1Y2Nlc3MsIFF1ZXJ5UGFyYW1zIH0gZnJvbSAnLi9tb2RlbHMvYXBpLm1vZGVscydcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaUludm9pY2VzU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IgKFxyXG4gICAgQEluamVjdCgnZW52JykgcHJpdmF0ZSBlbnZpcm9ubWVudHM6IEVudmlyb25tZW50LFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50XHJcbiAgKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHRoZSBBUEkgVVJMIGZvciBpbnZvaWNlcyBmcm9tIHRoZSBlbnZpcm9ubWVudHMgY29uZmlndXJhdGlvbi5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIEFQSSBVUkwgZm9yIGludm9pY2VzLlxyXG4gICAqL1xyXG4gIGdldCB1cmwgKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5lbnZpcm9ubWVudHMuYXBpSW52b2ljZXNVcmwgPz8gJydcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlbmRzIGFuIG9wZXJhdGlvbiBkb2N1bWVudCB0byB0aGUgc2VydmVyIGFuZCBwcm9jZXNzZXMgdGhlIHJlc3BvbnNlLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPcGVyYXRpb25Eb2N1bWVudElufSBib2R5IC0gVGhlIGlucHV0IGRhdGEgZm9yIHRoZSBvcGVyYXRpb24gZG9jdW1lbnQuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPcGVyYXRpb25Eb2N1bWVudE91dD59IEFuIG9ic2VydmFibGUgY29udGFpbmluZyB0aGUgcHJvY2Vzc2VkIG9wZXJhdGlvbiBkb2N1bWVudCBvdXRwdXQuXHJcbiAgICovXHJcbiAgcG9zdE9wZXJhdGlvbkRvY3VtZW50IChib2R5OiBPcGVyYXRpb25Eb2N1bWVudEluKTogT2JzZXJ2YWJsZTxPcGVyYXRpb25Eb2N1bWVudE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVN1Y2Nlc3M8T3BlcmF0aW9uRG9jdW1lbnRPdXQ+PihgJHt0aGlzLnVybH0vb3BlcmF0aW9uL2RvY3VtZW50YCwgYm9keSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGZXRjaGVzIGFuZCByZXR1cm5zIHRoZSBjb2xsZWN0aW9uIHJlY2VpcHQgZGF0YSBmb3IgYSBnaXZlbiBjb2xsZWN0aW9uIElELlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBjb2xsZWN0aW9uIGZvciB3aGljaCB0aGUgcmVjZWlwdCBuZWVkcyB0byBiZSByZXRyaWV2ZWQuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxQcmludENvbGxlY3Rpb25SZWNlaXB0T3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSBjb2xsZWN0aW9uIHJlY2VpcHQgZGF0YS5cclxuICAgKi9cclxuICBnZXRQcmludENvbGxlY3Rpb25SZWNlaXB0IChpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxQcmludENvbGxlY3Rpb25SZWNlaXB0T3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPFByaW50Q29sbGVjdGlvblJlY2VpcHRPdXQ+PihgJHt0aGlzLnVybH0vb3BlcmF0aW9uL3ByaW50L2NvbGxlY3Rpb24tcmVjZWlwdC8ke2lkfWApXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyB0aGUgYWNjb3VudCBwYXltZW50IG9wZXJhdGlvbiBieSBzZW5kaW5nIGEgUE9TVCByZXF1ZXN0IHRvIHRoZSBzcGVjaWZpZWQgZW5kcG9pbnQuXHJcbiAgICogUHJvY2Vzc2VzIHRoZSByZXNwb25zZSBhbmQgcmV0dXJucyB0aGUgb3BlcmF0aW9uIGRhdGEuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge09wZXJhdGlvbkFjY291bnRQYXltZW50SW59IGJvZHkgVGhlIHBheWxvYWQgY29udGFpbmluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGFjY291bnQgcGF5bWVudCBvcGVyYXRpb24uXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPcGVyYXRpb25BY2NvdW50UGF5bWVudE91dD59IEFuIG9ic2VydmFibGUgZW1pdHRpbmcgdGhlIHByb2Nlc3NlZCBhY2NvdW50IHBheW1lbnQgb3BlcmF0aW9uIGRhdGEuXHJcbiAgICovXHJcbiAgcG9zdE9wZXJhdGlvbkFjY291bnRQYXltZW50IChib2R5OiBPcGVyYXRpb25BY2NvdW50UGF5bWVudEluKTogT2JzZXJ2YWJsZTxPcGVyYXRpb25BY2NvdW50UGF5bWVudE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVN1Y2Nlc3M8T3BlcmF0aW9uQWNjb3VudFBheW1lbnRPdXQ+PihgJHt0aGlzLnVybH0vb3BlcmF0aW9uL2FjY291bnQtcGF5bWVudGAsIGJvZHkpXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FuY2VscyBhIHBheW1lbnQgcmVjZWlwdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXQuXHJcbiAgICogVGhpcyBtZXRob2Qgc2VuZHMgYSBQT1NUIHJlcXVlc3QgdG8gY2FuY2VsIGEgZG9jdW1lbnQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gYm9keSBUaGUgZGF0YSByZXF1aXJlZCB0byBjYW5jZWwgdGhlIHBheW1lbnQgcmVjZWlwdCwgZW5jYXBzdWxhdGVkIGluIGEgQ2FuY2VsUGF5bWVudFJlY2VpcHRJbiBvYmplY3QuXHJcbiAgICogQHJldHVybiBBbiBPYnNlcnZhYmxlIHJlcHJlc2VudGluZyB0aGUgcmVzdWx0IG9mIHRoZSBjYW5jZWxsYXRpb24uIEVtaXRzIGFuIGVtcHR5IG9iamVjdCBvbiBzdWNjZXNzLlxyXG4gICAqL1xyXG4gIHBvc3RPcGVyYXRpb25DYW5jZWxEb2N1bWVudCAoYm9keTogQ2FuY2VsUGF5bWVudFJlY2VpcHRJbik6IE9ic2VydmFibGU8e30+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPHt9Pj4oYCR7dGhpcy51cmx9L29wZXJhdGlvbi9jYW5jZWwtZG9jdW1lbnRgLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbmNlbHMgYW4gaW52b2ljZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW52b2ljZSBJRCBhbmQgYWRkaXRpb25hbCBwYXJhbWV0ZXJzLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtZXRlcnMgLSBUaGUgcGFyYW1ldGVycyByZXF1aXJlZCB0byBjYW5jZWwgdGhlIGludm9pY2UsIGVuY2Fwc3VsYXRlZCBpbiBhIENhbmNlbEJpbGxpbmdJbiBvYmplY3QuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPYmplY3Q+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3BvbnNlIG9mIHRoZSBjYW5jZWxsYXRpb24gb3BlcmF0aW9uLlxyXG4gICAqL1xyXG4gIHBvc3RPcGVyYXRpb25DYW5jZWxCaWxsaW5nICh7IGludm9pY2VJZCwgLi4uYm9keSB9OiBPcGVyYXRpb25DYW5jZWxCaWxsaW5nSW4pOiBPYnNlcnZhYmxlPHt9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2Vzczx7fT4+KGAke3RoaXMudXJsfS9vcGVyYXRpb24vY2FuY2VsLWJpbGxpbmcvJHtpbnZvaWNlSWR9YCwgYm9keSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGZXRjaGVzIGEgbGlzdCBvZiBjdXN0b21lciB0eXBlcyBmcm9tIHRoZSBzZXJ2ZXIuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBRdWVyeSBwYXJhbWV0ZXJzIHRvIGZpbHRlciBvciBjdXN0b21pemUgdGhlIHJlcXVlc3QuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxDdXN0b21lclR5cGVzT3V0Pn0gQW4gb2JzZXJ2YWJsZSBlbWl0dGluZyB0aGUgY3VzdG9tZXIgdHlwZXMgZmV0Y2hlZCBmcm9tIHRoZSBzZXJ2ZXIuXHJcbiAgICovXHJcbiAgZ2V0Q3VzdG9tZXJUeXBlcyAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8Q3VzdG9tZXJUeXBlc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxDdXN0b21lclR5cGVzT3V0Pj4oYCR7dGhpcy51cmx9L2N1c3RvbWVyLXR5cGVzYCwgeyBwYXJhbXMgfSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgZG9jdW1lbnQgdHlwZXMgc3BlY2lmaWMgdG8gYSBnaXZlbiBjb3VudHJ5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtRdWVyeVBhcmFtc30gcGFyYW1zIC0gVGhlIHF1ZXJ5IHBhcmFtZXRlcnMgY29udGFpbmluZyBjb3VudHJ5LXNwZWNpZmljIGluZm9ybWF0aW9uLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8Q3VzdG9tZXJEb2N1bWVudFR5cGVzT3V0Pn0gQW4gb2JzZXJ2YWJsZSBlbWl0dGluZyB0aGUgZG9jdW1lbnQgdHlwZXMgYXZhaWxhYmxlIGZvciB0aGUgc3BlY2lmaWVkIGNvdW50cnkuXHJcbiAgICovXHJcbiAgZ2V0Q3VzdG9tZXJEb2N1bWVudFR5cGVzIChwYXJhbXM6IFF1ZXJ5UGFyYW1zKTogT2JzZXJ2YWJsZTxDdXN0b21lckRvY3VtZW50VHlwZXNPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8Q3VzdG9tZXJEb2N1bWVudFR5cGVzT3V0Pj4oYCR7dGhpcy51cmx9L2N1c3RvbWVyLWNvdW50cnktZG9jdW1lbnQtdHlwZXNgLCB7IHBhcmFtcyB9KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgY3VzdG9tZXIgaW52b2ljZSBkZXRhaWxzIGZpbHRlcmVkIGJ5IGEgY3VzdG9tIGludm9pY2UgdHlwZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7SW52b2ljZVR5cGVDdXN0b21QYXJhbXNJbn0gcGFyYW1zIC0gQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpbHRlciBwYXJhbWV0ZXJzIGZvciB0aGUgY3VzdG9tIGludm9pY2UgdHlwZS5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPEN1c3RvbWVyc091dD59IEFuIG9ic2VydmFibGUgY29udGFpbmluZyBjdXN0b21lciBpbnZvaWNlIGRldGFpbHMgb2YgdGhlIHNwZWNpZmllZCB0eXBlLlxyXG4gICAqL1xyXG4gIGdldEN1c3RvbWVycyAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8Q3VzdG9tZXJzT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPEN1c3RvbWVyc091dD4+KGAke3RoaXMudXJsfS9jdXN0b21lcnNgLCB7IHBhcmFtcyB9KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlbmRzIGEgUE9TVCByZXF1ZXN0IHRvIGNyZWF0ZSBvciB1cGRhdGUgYW4gZXh0ZXJuYWwgc2hpcG1lbnQgb3BlcmF0aW9uLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPcGVyYXRpb25TaGlwbWVudEV4dGVybmFsSW59IHBhcmFtcyAtIFRoZSBpbnB1dCBwYXJhbWV0ZXJzIGZvciB0aGUgZXh0ZXJuYWwgc2hpcG1lbnQgb3BlcmF0aW9uLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8T3BlcmF0aW9uU2hpcG1lbnRFeHRlcm5hbE91dD59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzdWx0IG9mIHRoZSBleHRlcm5hbCBzaGlwbWVudCBvcGVyYXRpb24uXHJcbiAgICovXHJcbiAgcG9zdE9wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWwgKHBhcmFtczogT3BlcmF0aW9uU2hpcG1lbnRFeHRlcm5hbEluKTogT2JzZXJ2YWJsZTxPcGVyYXRpb25TaGlwbWVudEV4dGVybmFsT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2VzczxPcGVyYXRpb25TaGlwbWVudEV4dGVybmFsT3V0Pj4oYCR7dGhpcy51cmx9L29wZXJhdGlvbi9zaGlwbWVudC9leHRlcm5hbGAsIHBhcmFtcylcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQcm9jZXNzZXMgYW4gZXh0ZXJuYWwgcGF5bWVudCBvcGVyYXRpb24gZm9yIGEgc2hpcG1lbnQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge09wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWxJbn0gcGFyYW1zIC0gVGhlIGlucHV0IHBhcmFtZXRlcnMgcmVxdWlyZWQgZm9yIHRoZSBleHRlcm5hbCBwYXltZW50IG9wZXJhdGlvbi5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPE9wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWxPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3VsdCBvZiB0aGUgZXh0ZXJuYWwgcGF5bWVudCBvcGVyYXRpb24gZm9yIGEgc2hpcG1lbnQuXHJcbiAgICovXHJcbiAgcG9zdE9wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWxQYXltZW50IChwYXJhbXM6IE9wZXJhdGlvblNoaXBtZW50RXh0ZXJuYWxJbik6IE9ic2VydmFibGU8T3BlcmF0aW9uU2hpcG1lbnRFeHRlcm5hbE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVN1Y2Nlc3M8T3BlcmF0aW9uU2hpcG1lbnRFeHRlcm5hbE91dD4+KGAke3RoaXMudXJsfS9vcGVyYXRpb24vc2hpcG1lbnQvZXh0ZXJuYWwvcGF5bWVudGAsIHBhcmFtcylcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYW5kIHJldHVybnMgYmlsbGluZyBvcGVyYXRpb24gcHJpbnQgZGV0YWlscyBmb3IgYSBnaXZlbiBkb2N1bWVudCBJRC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBkb2N1bWVudElkIC0gVGhlIElEIG9mIHRoZSBkb2N1bWVudCBmb3Igd2hpY2ggdG8gZmV0Y2ggdGhlIHByaW50IGJpbGxpbmcgb3BlcmF0aW9uIGRldGFpbHMuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPcGVyYXRpb25QcmludERvY3VtZW50T3V0Pn0gQW4gb2JzZXJ2YWJsZSBlbWl0dGluZyB0aGUgcHJpbnQgYmlsbGluZyBvcGVyYXRpb24gZGV0YWlscyBmb3IgdGhlIHNwZWNpZmllZCBkb2N1bWVudC5cclxuICAgKi9cclxuICBnZXRPcGVyYXRpb25QcmludERvY3VtZW50IChkb2N1bWVudElkOiBudW1iZXIpOiBPYnNlcnZhYmxlPE9wZXJhdGlvblByaW50RG9jdW1lbnRPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8T3BlcmF0aW9uUHJpbnREb2N1bWVudE91dD4+KGAke3RoaXMudXJsfS9vcGVyYXRpb24vcHJpbnQvZG9jdW1lbnQvJHtkb2N1bWVudElkfWApXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { map } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common/http";
|
|
5
|
+
export class ApiOpenItemsService {
|
|
6
|
+
environments;
|
|
7
|
+
http;
|
|
8
|
+
constructor(environments, http) {
|
|
9
|
+
this.environments = environments;
|
|
10
|
+
this.http = http;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Retrieves the API URL for open-items from the environments' configuration.
|
|
14
|
+
*
|
|
15
|
+
* @return {string} The API URL for open-items.
|
|
16
|
+
*/
|
|
17
|
+
get url() {
|
|
18
|
+
return this.environments.apiOpenItemsUrl ?? '';
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Retrieves a list of open-items based on the provided query parameters.
|
|
22
|
+
*
|
|
23
|
+
* @param {QueryParams} params - The parameters to use for querying open-items.
|
|
24
|
+
* @return {Observable<OpenItemsOut>} An observable that emits the open-item's data.
|
|
25
|
+
*/
|
|
26
|
+
getOpenItems(params) {
|
|
27
|
+
return this.http.get(`${this.url}/open-items`, { params })
|
|
28
|
+
.pipe(map(({ data }) => data));
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Processes a payment for an open item.
|
|
32
|
+
*
|
|
33
|
+
* @param {PaymentOpenItemIn} body - The payment details for the open item.
|
|
34
|
+
* @return {Observable<PaymentOut>} An observable that emits the result of the payment processing.
|
|
35
|
+
*/
|
|
36
|
+
postPayment(body) {
|
|
37
|
+
return this.http.post(`${this.url}/payment`, body)
|
|
38
|
+
.pipe(map(({ data }) => data));
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Processes a payment for other invoice.
|
|
42
|
+
*
|
|
43
|
+
* @param {OtherInvoiceIn} body - The payment details for the other invoice.
|
|
44
|
+
* @return {Observable<OtherInvoiceOut>} An observable that emits the result of the payment processing.
|
|
45
|
+
*/
|
|
46
|
+
postOtherInvoice(body) {
|
|
47
|
+
return this.http.post(`${this.url}/other-invoices`, body)
|
|
48
|
+
.pipe(map(({ data }) => data));
|
|
49
|
+
}
|
|
50
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, deps: [{ token: 'env' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
51
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, providedIn: 'root' });
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, decorators: [{
|
|
54
|
+
type: Injectable,
|
|
55
|
+
args: [{
|
|
56
|
+
providedIn: 'root'
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
59
|
+
type: Inject,
|
|
60
|
+
args: ['env']
|
|
61
|
+
}] }, { type: i1.HttpClient }] });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9wZW4taXRlbXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4cGVydGVhbS1teC9uZ3gtc2VydmljZXMvc3JjL2xpYi9hcGlzL2FwaS1vcGVuLWl0ZW1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFLbEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQTs7O0FBTXRDLE1BQU0sT0FBTyxtQkFBbUI7SUFFTDtJQUNmO0lBRlYsWUFDeUIsWUFBeUIsRUFDeEMsSUFBZ0I7UUFERCxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN4QyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3ZCLENBQUM7SUFFSjs7OztPQUlHO0lBQ0gsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUE7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFFLE1BQW1CO1FBQy9CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQTJCLEdBQUcsSUFBSSxDQUFDLEdBQUcsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUM7YUFDakYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFFLElBQXVCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsVUFBVSxFQUFFLElBQUksQ0FBQzthQUN2RSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxnQkFBZ0IsQ0FBRSxJQUFvQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE4QixHQUFHLElBQUksQ0FBQyxHQUFHLGlCQUFpQixFQUFFLElBQUksQ0FBQzthQUNuRixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO3dHQTlDVSxtQkFBbUIsa0JBRXBCLEtBQUs7NEdBRkosbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUdJLE1BQU07MkJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IEVudmlyb25tZW50IH0gZnJvbSAnLi4vbmd4LXNlcnZpY2VzLm1vZGVscydcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBBcGlTdWNjZXNzLCBRdWVyeVBhcmFtcyB9IGZyb20gJy4vbW9kZWxzL2FwaS5tb2RlbHMnXHJcbmltcG9ydCB7IE9wZW5JdGVtc091dCwgT3RoZXJJbnZvaWNlT3V0LCBQYXltZW50T3V0IH0gZnJvbSAnLi9tb2RlbHMvYXBpLW9wZW4taXRlbXMudHlwZXMnXHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXHJcbmltcG9ydCB7IE90aGVySW52b2ljZUluLCBQYXltZW50T3Blbkl0ZW1JbiB9IGZyb20gJy4vbW9kZWxzL2FwaS1vcGVuLWl0ZW1zLmludGVyZmFjZXMnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcGlPcGVuSXRlbXNTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvciAoXHJcbiAgICBASW5qZWN0KCdlbnYnKSBwcml2YXRlIGVudmlyb25tZW50czogRW52aXJvbm1lbnQsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgQVBJIFVSTCBmb3Igb3Blbi1pdGVtcyBmcm9tIHRoZSBlbnZpcm9ubWVudHMnIGNvbmZpZ3VyYXRpb24uXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IFRoZSBBUEkgVVJMIGZvciBvcGVuLWl0ZW1zLlxyXG4gICAqL1xyXG4gIGdldCB1cmwgKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5lbnZpcm9ubWVudHMuYXBpT3Blbkl0ZW1zVXJsID8/ICcnXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIG9wZW4taXRlbXMgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHF1ZXJ5IHBhcmFtZXRlcnMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyB0byB1c2UgZm9yIHF1ZXJ5aW5nIG9wZW4taXRlbXMuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPcGVuSXRlbXNPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIG9wZW4taXRlbSdzIGRhdGEuXHJcbiAgICovXHJcbiAgZ2V0T3Blbkl0ZW1zIChwYXJhbXM6IFF1ZXJ5UGFyYW1zKTogT2JzZXJ2YWJsZTxPcGVuSXRlbXNPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8T3Blbkl0ZW1zT3V0Pj4oYCR7dGhpcy51cmx9L29wZW4taXRlbXNgLCB7IHBhcmFtcyB9KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb2Nlc3NlcyBhIHBheW1lbnQgZm9yIGFuIG9wZW4gaXRlbS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UGF5bWVudE9wZW5JdGVtSW59IGJvZHkgLSBUaGUgcGF5bWVudCBkZXRhaWxzIGZvciB0aGUgb3BlbiBpdGVtLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8UGF5bWVudE91dD59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzdWx0IG9mIHRoZSBwYXltZW50IHByb2Nlc3NpbmcuXHJcbiAgICovXHJcbiAgcG9zdFBheW1lbnQgKGJvZHk6IFBheW1lbnRPcGVuSXRlbUluKTogT2JzZXJ2YWJsZTxQYXltZW50T3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2VzczxQYXltZW50T3V0Pj4oYCR7dGhpcy51cmx9L3BheW1lbnRgLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb2Nlc3NlcyBhIHBheW1lbnQgZm9yIG90aGVyIGludm9pY2UuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge090aGVySW52b2ljZUlufSBib2R5IC0gVGhlIHBheW1lbnQgZGV0YWlscyBmb3IgdGhlIG90aGVyIGludm9pY2UuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPdGhlckludm9pY2VPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3VsdCBvZiB0aGUgcGF5bWVudCBwcm9jZXNzaW5nLlxyXG4gICAqL1xyXG4gIHBvc3RPdGhlckludm9pY2UgKGJvZHk6IE90aGVySW52b2ljZUluKTogT2JzZXJ2YWJsZTxPdGhlckludm9pY2VPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPE90aGVySW52b2ljZU91dD4+KGAke3RoaXMudXJsfS9vdGhlci1pbnZvaWNlc2AsIGJvZHkpXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -28,6 +28,52 @@ export class ApiReportsService {
|
|
|
28
28
|
params
|
|
29
29
|
}).pipe(map(({ data }) => data));
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Fetches the list of shipments with pending payments.
|
|
33
|
+
*
|
|
34
|
+
* @param {ExistPendingPaymentsIn} params - The parameters to filter pending payment shipments.
|
|
35
|
+
* @return {Observable<ShipmentsReportOut>} An observable emitting the shipments report data.
|
|
36
|
+
*/
|
|
37
|
+
shipmentsPendingPayments(params) {
|
|
38
|
+
return this.http.get(`${this.url}/shipments-report`, {
|
|
39
|
+
params: {
|
|
40
|
+
...params,
|
|
41
|
+
limit: 1,
|
|
42
|
+
offset: 0,
|
|
43
|
+
to_landing: true,
|
|
44
|
+
shipment_status_code: 'PMPEN',
|
|
45
|
+
},
|
|
46
|
+
}).pipe(map(({ data }) => data));
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Fetches shipment reports that are pending invoices based on the specified parameters.
|
|
50
|
+
* This method retrieves a filtered list of shipments with pending invoice statuses.
|
|
51
|
+
*
|
|
52
|
+
* @param {ExistPendingInvoicesIn} params - The parameters to filter the pending invoices, including
|
|
53
|
+
* shipment status codes, and pagination options.
|
|
54
|
+
* @return {Observable<ShipmentsReportOut>} An observable that emits the shipment report data based on the filter criteria.
|
|
55
|
+
*/
|
|
56
|
+
shipmentsPendingInvoices(params) {
|
|
57
|
+
return this.http.get(`${this.url}/shipments-report`, {
|
|
58
|
+
params: {
|
|
59
|
+
...params,
|
|
60
|
+
limit: 1,
|
|
61
|
+
offset: 0,
|
|
62
|
+
to_landing: true,
|
|
63
|
+
'shipment_status_code[in]': 'IPMPE,IMPEN,IPPEN',
|
|
64
|
+
},
|
|
65
|
+
}).pipe(map(({ data }) => data));
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Fetches shipment reports based on the provided query parameters.
|
|
69
|
+
*
|
|
70
|
+
* @param {QueryParams} params - The query parameters used to filter or define the shipment reports.
|
|
71
|
+
* @return {Observable<ShipmentsReportOut>} An observable emitting the shipment report data.
|
|
72
|
+
*/
|
|
73
|
+
getShipmentsReport(params) {
|
|
74
|
+
return this.http.get(`${this.url}/shipments-report`, { params })
|
|
75
|
+
.pipe(map(({ data }) => data));
|
|
76
|
+
}
|
|
31
77
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiReportsService, deps: [{ token: 'env' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
32
78
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiReportsService, providedIn: 'root' });
|
|
33
79
|
}
|
|
@@ -40,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
40
86
|
type: Inject,
|
|
41
87
|
args: ['env']
|
|
42
88
|
}] }, { type: i1.HttpClient }] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXJlcG9ydHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4cGVydGVhbS1teC9uZ3gtc2VydmljZXMvc3JjL2xpYi9hcGlzL2FwaS1yZXBvcnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHbEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQTs7O0FBWXRDLE1BQU0sT0FBTyxpQkFBaUI7SUFFSDtJQUNmO0lBRlYsWUFDeUIsWUFBeUIsRUFDeEMsSUFBZ0I7UUFERCxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN4QyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3RCLENBQUM7SUFFTDs7OztPQUlHO0lBQ0gsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUE7SUFDOUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUUsTUFBbUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBb0MsR0FBRyxJQUFJLENBQUMsR0FBRyxxQkFBcUIsRUFBRTtZQUN4RixNQUFNO1NBQ1AsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILHdCQUF3QixDQUFFLE1BQThCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWlDLEdBQUcsSUFBSSxDQUFDLEdBQUcsbUJBQW1CLEVBQUU7WUFDbkYsTUFBTSxFQUFFO2dCQUNOLEdBQUcsTUFBTTtnQkFDVCxLQUFLLEVBQUUsQ0FBQztnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxVQUFVLEVBQUUsSUFBSTtnQkFDaEIsb0JBQW9CLEVBQUUsT0FBTzthQUM5QjtTQUNGLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILHdCQUF3QixDQUFFLE1BQThCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWlDLEdBQUcsSUFBSSxDQUFDLEdBQUcsbUJBQW1CLEVBQUU7WUFDbkYsTUFBTSxFQUFFO2dCQUNOLEdBQUcsTUFBTTtnQkFDVCxLQUFLLEVBQUUsQ0FBQztnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxVQUFVLEVBQUUsSUFBSTtnQkFDaEIsMEJBQTBCLEVBQUUsbUJBQW1CO2FBQ2hEO1NBQ0YsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGtCQUFrQixDQUFFLE1BQW1CO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWlDLEdBQUcsSUFBSSxDQUFDLEdBQUcsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQzthQUM3RixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO3dHQTFFVSxpQkFBaUIsa0JBRWxCLEtBQUs7NEdBRkosaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUdJLE1BQU07MkJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IEVudmlyb25tZW50IH0gZnJvbSAnLi4vbmd4LXNlcnZpY2VzLm1vZGVscydcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBBcGlTdWNjZXNzLCBRdWVyeVBhcmFtcyB9IGZyb20gJy4vbW9kZWxzL2FwaS5tb2RlbHMnXHJcbmltcG9ydCB7XHJcbiAgQ29sbGVjdGlvblBheW1lbnRzT3V0LFxyXG4gIEV4aXN0UGVuZGluZ0ludm9pY2VzSW4sXHJcbiAgRXhpc3RQZW5kaW5nUGF5bWVudHNJbixcclxuICBTaGlwbWVudHNSZXBvcnRPdXRcclxufSBmcm9tICcuL21vZGVscy9hcGktcmVwb3J0cy50eXBlcydcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaVJlcG9ydHNTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvciAoXHJcbiAgICBASW5qZWN0KCdlbnYnKSBwcml2YXRlIGVudmlyb25tZW50czogRW52aXJvbm1lbnQsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIFVSTCBmb3IgdGhlIHJlcG9ydHMgQVBJIGZyb20gdGhlIGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25zLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7c3RyaW5nfSBUaGUgVVJMIG9mIHRoZSByZXBvcnRzIEFQSS5cclxuICAgKi9cclxuICBnZXQgdXJsICgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZW52aXJvbm1lbnRzLmFwaVJlcG9ydHNVcmwgPz8gJydcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgbGlzdCBvZiBjb2xsZWN0aW9uIHBheW1lbnRzXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBUaGUgcXVlcnkgcGFyYW1ldGVycyB1c2VkIHRvIGZldGNoIHRoZSBjb2xsZWN0aW9uIHBheW1lbnRzLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8Q29sbGVjdGlvblBheW1lbnRzT3V0W10+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgYW4gYXJyYXkgb2YgY29sbGVjdGlvbiBwYXltZW50LlxyXG4gICAqL1xyXG4gIGdldENvbGxlY3Rpb25QYXltZW50cyAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8Q29sbGVjdGlvblBheW1lbnRzT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPENvbGxlY3Rpb25QYXltZW50c091dD4+KGAke3RoaXMudXJsfS9jb2xsZWN0aW9uLXBheW1lbnRgLCB7XHJcbiAgICAgIHBhcmFtc1xyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgdGhlIGxpc3Qgb2Ygc2hpcG1lbnRzIHdpdGggcGVuZGluZyBwYXltZW50cy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7RXhpc3RQZW5kaW5nUGF5bWVudHNJbn0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgdG8gZmlsdGVyIHBlbmRpbmcgcGF5bWVudCBzaGlwbWVudHMuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxTaGlwbWVudHNSZXBvcnRPdXQ+fSBBbiBvYnNlcnZhYmxlIGVtaXR0aW5nIHRoZSBzaGlwbWVudHMgcmVwb3J0IGRhdGEuXHJcbiAgICovXHJcbiAgc2hpcG1lbnRzUGVuZGluZ1BheW1lbnRzIChwYXJhbXM6IEV4aXN0UGVuZGluZ1BheW1lbnRzSW4pOiBPYnNlcnZhYmxlPFNoaXBtZW50c1JlcG9ydE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxTaGlwbWVudHNSZXBvcnRPdXQ+PihgJHt0aGlzLnVybH0vc2hpcG1lbnRzLXJlcG9ydGAsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgLi4ucGFyYW1zLFxyXG4gICAgICAgIGxpbWl0OiAxLFxyXG4gICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICB0b19sYW5kaW5nOiB0cnVlLFxyXG4gICAgICAgIHNoaXBtZW50X3N0YXR1c19jb2RlOiAnUE1QRU4nLFxyXG4gICAgICB9LFxyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgc2hpcG1lbnQgcmVwb3J0cyB0aGF0IGFyZSBwZW5kaW5nIGludm9pY2VzIGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgcGFyYW1ldGVycy5cclxuICAgKiBUaGlzIG1ldGhvZCByZXRyaWV2ZXMgYSBmaWx0ZXJlZCBsaXN0IG9mIHNoaXBtZW50cyB3aXRoIHBlbmRpbmcgaW52b2ljZSBzdGF0dXNlcy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7RXhpc3RQZW5kaW5nSW52b2ljZXNJbn0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgdG8gZmlsdGVyIHRoZSBwZW5kaW5nIGludm9pY2VzLCBpbmNsdWRpbmdcclxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlwbWVudCBzdGF0dXMgY29kZXMsIGFuZCBwYWdpbmF0aW9uIG9wdGlvbnMuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxTaGlwbWVudHNSZXBvcnRPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHNoaXBtZW50IHJlcG9ydCBkYXRhIGJhc2VkIG9uIHRoZSBmaWx0ZXIgY3JpdGVyaWEuXHJcbiAgICovXHJcbiAgc2hpcG1lbnRzUGVuZGluZ0ludm9pY2VzIChwYXJhbXM6IEV4aXN0UGVuZGluZ0ludm9pY2VzSW4pOiBPYnNlcnZhYmxlPFNoaXBtZW50c1JlcG9ydE91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxTaGlwbWVudHNSZXBvcnRPdXQ+PihgJHt0aGlzLnVybH0vc2hpcG1lbnRzLXJlcG9ydGAsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgLi4ucGFyYW1zLFxyXG4gICAgICAgIGxpbWl0OiAxLFxyXG4gICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICB0b19sYW5kaW5nOiB0cnVlLFxyXG4gICAgICAgICdzaGlwbWVudF9zdGF0dXNfY29kZVtpbl0nOiAnSVBNUEUsSU1QRU4sSVBQRU4nLFxyXG4gICAgICB9LFxyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgc2hpcG1lbnQgcmVwb3J0cyBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcXVlcnkgcGFyYW1ldGVycy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UXVlcnlQYXJhbXN9IHBhcmFtcyAtIFRoZSBxdWVyeSBwYXJhbWV0ZXJzIHVzZWQgdG8gZmlsdGVyIG9yIGRlZmluZSB0aGUgc2hpcG1lbnQgcmVwb3J0cy5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPFNoaXBtZW50c1JlcG9ydE91dD59IEFuIG9ic2VydmFibGUgZW1pdHRpbmcgdGhlIHNoaXBtZW50IHJlcG9ydCBkYXRhLlxyXG4gICAqL1xyXG4gIGdldFNoaXBtZW50c1JlcG9ydCAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8U2hpcG1lbnRzUmVwb3J0T3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPFNoaXBtZW50c1JlcG9ydE91dD4+KGAke3RoaXMudXJsfS9zaGlwbWVudHMtcmVwb3J0YCwgeyBwYXJhbXMgfSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -22,20 +22,22 @@ export class ApiSecurityService {
|
|
|
22
22
|
return this.environments.apiSecurityUrl ?? '';
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
|
-
*
|
|
25
|
+
* Performs user authentication by sending login credentials to the server.
|
|
26
26
|
*
|
|
27
|
-
* @param {Object}
|
|
28
|
-
* @param {string}
|
|
29
|
-
* @param {string}
|
|
30
|
-
* @param {string}
|
|
31
|
-
* @
|
|
27
|
+
* @param {Object} params - An object containing the user's login credentials and system details.
|
|
28
|
+
* @param {string} params.username - The username of the user attempting to log in.
|
|
29
|
+
* @param {string} params.password - The user's password.
|
|
30
|
+
* @param {string} params.role - The role of the user (e.g., admin, user).
|
|
31
|
+
* @param {string} params.system_name - The name of the system the user is logging into.
|
|
32
|
+
*
|
|
33
|
+
* @return {Observable<AuthLoginOut>} An observable that emits the authentication result, including tokens and user information.
|
|
32
34
|
*/
|
|
33
|
-
|
|
35
|
+
postAuthLogin({ username, password, role, system_name }) {
|
|
34
36
|
return this.http.post(`${this.url}/auth/login`, {
|
|
35
|
-
system_name: 'CRA',
|
|
36
37
|
username,
|
|
37
38
|
password,
|
|
38
39
|
role,
|
|
40
|
+
system_name,
|
|
39
41
|
}).pipe(map(({ data }) => data), tap(({ access_token }) => this.cookie.set(this.environments.authCookie, access_token, { path: '/' })));
|
|
40
42
|
}
|
|
41
43
|
/**
|
|
@@ -45,7 +47,7 @@ export class ApiSecurityService {
|
|
|
45
47
|
*
|
|
46
48
|
* @return {Observable<{}>} An observable that emits the server's response to the logout request.
|
|
47
49
|
*/
|
|
48
|
-
|
|
50
|
+
postAuthLogout() {
|
|
49
51
|
return this.http.post(`${this.url}/auth/logout`, null)
|
|
50
52
|
.pipe(map(({ data }) => data), tap(() => this.cookie.delete(this.environments.authCookie, '/')));
|
|
51
53
|
}
|
|
@@ -57,9 +59,9 @@ export class ApiSecurityService {
|
|
|
57
59
|
* @param {string} params.modelId - The ID of the model.
|
|
58
60
|
* @param {string} [params.token] - Optional authorization token.
|
|
59
61
|
*
|
|
60
|
-
* @return {Observable<
|
|
62
|
+
* @return {Observable<SessionOut>} An observable containing the created session details.
|
|
61
63
|
*/
|
|
62
|
-
|
|
64
|
+
postSession({ modelType, modelId, token, }) {
|
|
63
65
|
let headers = new HttpHeaders({});
|
|
64
66
|
if (token) {
|
|
65
67
|
headers = headers.set('Authorization', `Bearer ${token}`);
|
|
@@ -76,9 +78,9 @@ export class ApiSecurityService {
|
|
|
76
78
|
* Sends a GET request to the endpoint '/auth/me' to retrieve information
|
|
77
79
|
* about the currently authenticated user.
|
|
78
80
|
*
|
|
79
|
-
* @return {Observable<
|
|
81
|
+
* @return {Observable<AuthMeOut>} An observable that emits the authenticated user's data.
|
|
80
82
|
*/
|
|
81
|
-
|
|
83
|
+
getAuthMe() {
|
|
82
84
|
return this.http.get(`${this.url}/auth/me`)
|
|
83
85
|
.pipe(map(({ data }) => data));
|
|
84
86
|
}
|
|
@@ -88,7 +90,7 @@ export class ApiSecurityService {
|
|
|
88
90
|
* @param token The JWT token used for authorization.
|
|
89
91
|
* @return An Observable that emits the user's details encapsulated in a MeOut object.
|
|
90
92
|
*/
|
|
91
|
-
|
|
93
|
+
getOtherMe(token) {
|
|
92
94
|
return this.http.get(`${this.url}/auth/me`, {
|
|
93
95
|
headers: {
|
|
94
96
|
Authorization: `Bearer ${token}`
|
|
@@ -101,7 +103,7 @@ export class ApiSecurityService {
|
|
|
101
103
|
* @param {number} id - The unique identifier of the user to be fetched.
|
|
102
104
|
* @return {Observable<GetUserOut>} An observable containing the user information.
|
|
103
105
|
*/
|
|
104
|
-
|
|
106
|
+
getUser(id) {
|
|
105
107
|
return this.http.get(`${this.url}/users/${id}`)
|
|
106
108
|
.pipe(map(({ data }) => data));
|
|
107
109
|
}
|
|
@@ -110,9 +112,9 @@ export class ApiSecurityService {
|
|
|
110
112
|
*
|
|
111
113
|
* @param {Object} params - The input parameters for changing the language.
|
|
112
114
|
* @param {string} params.languageId - The ID of the new language to be set.
|
|
113
|
-
* @return {Observable<ApiSuccess<
|
|
115
|
+
* @return {Observable<ApiSuccess<AuthMeOut>>} An observable that emits the result of the language change request.
|
|
114
116
|
*/
|
|
115
|
-
|
|
117
|
+
putChangeLanguage({ languageId }) {
|
|
116
118
|
return this.http.put(`${this.url}/auth/me`, {
|
|
117
119
|
language_id: languageId
|
|
118
120
|
}).pipe(map(({ data }) => data));
|
|
@@ -121,7 +123,7 @@ export class ApiSecurityService {
|
|
|
121
123
|
* Retrieves a list of roles with their permissions.
|
|
122
124
|
*
|
|
123
125
|
* @param {QueryParams} params - The query parameters to filter the roles.
|
|
124
|
-
* @returns {Observable<
|
|
126
|
+
* @returns {Observable<RoleIn[]>} An observable that emits an array of role permissions.
|
|
125
127
|
*/
|
|
126
128
|
getRoles(params) {
|
|
127
129
|
return this.http.get(`${this.url}/roles`, {
|
|
@@ -139,34 +141,23 @@ export class ApiSecurityService {
|
|
|
139
141
|
params
|
|
140
142
|
}).pipe(map(({ data }) => data));
|
|
141
143
|
}
|
|
142
|
-
/**
|
|
143
|
-
* Retrieves the permissions for a module.
|
|
144
|
-
*
|
|
145
|
-
* @param {QueryParams} params - The query parameters to be sent with the request.
|
|
146
|
-
* @returns {Observable<ModulePermissionsOut>} An observable containing the module permissions.
|
|
147
|
-
*/
|
|
148
|
-
getPermissions(params) {
|
|
149
|
-
return this.http.get(`${this.url}/modules`, {
|
|
150
|
-
params
|
|
151
|
-
}).pipe(map(({ data }) => data));
|
|
152
|
-
}
|
|
153
144
|
/**
|
|
154
145
|
* Retrieves roles by the specified ID.
|
|
155
146
|
*
|
|
156
|
-
* @param
|
|
147
|
+
* @param id - The ID of the role to retrieve.
|
|
157
148
|
* @returns An Observable that emits the role data.
|
|
158
149
|
*/
|
|
159
|
-
|
|
160
|
-
return this.http.get(`${this.url}/roles/${
|
|
150
|
+
getRole(id) {
|
|
151
|
+
return this.http.get(`${this.url}/roles/${id}`)
|
|
161
152
|
.pipe(map(({ data }) => data));
|
|
162
153
|
}
|
|
163
154
|
/**
|
|
164
155
|
* Creates a new role with the specified permissions.
|
|
165
156
|
*
|
|
166
|
-
* @param {
|
|
167
|
-
* @returns {Observable<
|
|
157
|
+
* @param {RoleIn} body - The permissions and details for the new role.
|
|
158
|
+
* @returns {Observable<RoleOut>} An observable containing the created role's permissions.
|
|
168
159
|
*/
|
|
169
|
-
|
|
160
|
+
postRole(body) {
|
|
170
161
|
return this.http.post(`${this.url}/roles`, body)
|
|
171
162
|
.pipe(map(({ data }) => data));
|
|
172
163
|
}
|
|
@@ -177,7 +168,7 @@ export class ApiSecurityService {
|
|
|
177
168
|
* @param body - The new permissions to assign to the role.
|
|
178
169
|
* @returns An Observable that emits the updated module permissions.
|
|
179
170
|
*/
|
|
180
|
-
|
|
171
|
+
putRole(id, body) {
|
|
181
172
|
return this.http.put(`${this.url}/roles/${id}`, body)
|
|
182
173
|
.pipe(map(({ data }) => data));
|
|
183
174
|
}
|
|
@@ -187,10 +178,36 @@ export class ApiSecurityService {
|
|
|
187
178
|
* @param {number} id - The unique identifier of the role whose permissions are to be deleted.
|
|
188
179
|
* @returns {Observable<{}>} An observable that emits the result of the delete operation.
|
|
189
180
|
*/
|
|
190
|
-
|
|
181
|
+
deleteRole(id) {
|
|
191
182
|
return this.http.delete(`${this.url}/roles/${id}`)
|
|
192
183
|
.pipe(map(({ data }) => data));
|
|
193
184
|
}
|
|
185
|
+
/**
|
|
186
|
+
* Retrieves a list of modules and permissions
|
|
187
|
+
*
|
|
188
|
+
* @param queryParams - The query parameters to filter the modules.
|
|
189
|
+
* @returns Observable<ModulesOut[]> - An observable that emits an array of modules and permissions.
|
|
190
|
+
*/
|
|
191
|
+
getModules(queryParams) {
|
|
192
|
+
return this.http.get(`${this.url}/modules`, {
|
|
193
|
+
params: queryParams
|
|
194
|
+
}).pipe(map(({ data }) => data));
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Retrieves a list of modules and permissions
|
|
198
|
+
*
|
|
199
|
+
* @param params.token - Custom token for authorization.
|
|
200
|
+
* @param params.queryParams - The query parameters to filter the modules.
|
|
201
|
+
* @returns Observable<ModulesOut[]> - An observable that emits an array of modules and permissions.
|
|
202
|
+
*/
|
|
203
|
+
getModulesByToken(params) {
|
|
204
|
+
return this.http.get(`${this.url}/modules`, {
|
|
205
|
+
params: params.queryParams,
|
|
206
|
+
headers: {
|
|
207
|
+
Authorization: `Bearer ${params.token}`
|
|
208
|
+
}
|
|
209
|
+
}).pipe(map(({ data }) => data));
|
|
210
|
+
}
|
|
194
211
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiSecurityService, deps: [{ token: 'env' }, { token: i1.CookieService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
195
212
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiSecurityService, providedIn: 'root' });
|
|
196
213
|
}
|
|
@@ -203,4 +220,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
203
220
|
type: Inject,
|
|
204
221
|
args: ['env']
|
|
205
222
|
}] }, { type: i1.CookieService }, { type: i2.HttpClient }] });
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXNlY3VyaXR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHBlcnRlYW0tbXgvbmd4LXNlcnZpY2VzL3NyYy9saWIvYXBpcy9hcGktc2VjdXJpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQWdCbEQsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRTlELE9BQU8sRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBOzs7O0FBTTNDLE1BQU0sT0FBTyxrQkFBa0I7SUFFSjtJQUNmO0lBQ0E7SUFIVixZQUN5QixZQUF5QixFQUN4QyxNQUFxQixFQUNyQixJQUFnQjtRQUZELGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDO0lBRUo7Ozs7T0FJRztJQUNILElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFBO0lBQy9DLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILEtBQUssQ0FBRSxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsSUFBSSxHQUNJO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBdUIsR0FBRyxJQUFJLENBQUMsR0FBRyxhQUFhLEVBQUU7WUFDcEUsV0FBVyxFQUFFLEtBQUs7WUFDbEIsUUFBUTtZQUNSLFFBQVE7WUFDUixJQUFJO1NBQ0wsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFDdkIsR0FBRyxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUs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O1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQW1DLEdBQUcsSUFBSSxDQUFDLEdBQUcsUUFBUSxFQUFFLElBQUksQ0FBQzthQUMvRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gscUJBQXFCLENBQUUsRUFBVSxFQUFFLElBQXVCO1FBQ3hELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW1DLEdBQUcsSUFBSSxDQUFDLEdBQUcsVUFBVSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUM7YUFDcEYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUUsRUFBVTtRQUMvQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFpQixHQUFHLElBQUksQ0FBQyxHQUFHLFVBQVUsRUFBRSxFQUFFLENBQUM7YUFDL0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQzt3R0F2TlUsa0JBQWtCLGtCQUVuQixLQUFLOzRHQUZKLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFHSSxNQUFNOzJCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBBcGlTdWNjZXNzLCBRdWVyeVBhcmFtcyB9IGZyb20gJy4vbW9kZWxzL2FwaS5tb2RlbHMnXHJcbmltcG9ydCB7XHJcbiAgQ2hhbmdlTGFuZ3VhZ2VJbixcclxuICBDcmVhdGVTZXNzaW9uSW4sXHJcbiAgQ3JlYXRlU2Vzc2lvbk91dCxcclxuICBHZXRVc2VyT3V0LFxyXG4gIExvZ2luSW4sXHJcbiAgTG9naW5PdXQsXHJcbiAgTWVPdXQsXHJcbiAgTW9kdWxlUGVybWlzc2lvbnNPdXQsXHJcbiAgUm9sZUJ5SWRPdXQsXHJcbiAgUm9sZVBlcm1pc3Npb25zSW4sXHJcbiAgUm9sZXNPdXQsXHJcbiAgUm9sZVR5cGVzT3V0XHJcbn0gZnJvbSAnLi9tb2RlbHMvYXBpLXNlY3VyaXR5LnR5cGVzJ1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL25neC1zZXJ2aWNlcy5tb2RlbHMnXHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSdcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaVNlY3VyaXR5U2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IgKFxyXG4gICAgQEluamVjdCgnZW52JykgcHJpdmF0ZSBlbnZpcm9ubWVudHM6IEVudmlyb25tZW50LFxyXG4gICAgcHJpdmF0ZSBjb29raWU6IENvb2tpZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgQVBJIHNlY3VyaXR5IFVSTCBmcm9tIHRoZSBlbnZpcm9ubWVudHMgY29uZmlndXJhdGlvbi5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIEFQSSBzZWN1cml0eSBVUkwuXHJcbiAgICovXHJcbiAgZ2V0IHVybCAoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmVudmlyb25tZW50cy5hcGlTZWN1cml0eVVybCA/PyAnJ1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQXV0aGVudGljYXRlcyBhIHVzZXIgd2l0aCB0aGUgcHJvdmlkZWQgY3JlZGVudGlhbHMgYW5kIHJvbGUuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW0wIC0gVGhlIGxvZ2luIGlucHV0IG9iamVjdC5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW0wLnVzZXJuYW1lIC0gVGhlIHVzZXJuYW1lIG9mIHRoZSB1c2VyLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYXJhbTAucGFzc3dvcmQgLSBUaGUgcGFzc3dvcmQgb2YgdGhlIHVzZXIuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhcmFtMC5yb2xlIC0gVGhlIHJvbGUgb2YgdGhlIHVzZXIuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxMb2dpbk91dD59IEFuIG9ic2VydmFibGUgZW1pdHRpbmcgdGhlIGxvZ2luIG91dHB1dCBvYmplY3QuXHJcbiAgICovXHJcbiAgbG9naW4gKHtcclxuICAgIHVzZXJuYW1lLFxyXG4gICAgcGFzc3dvcmQsXHJcbiAgICByb2xlLFxyXG4gIH06IExvZ2luSW4pOiBPYnNlcnZhYmxlPExvZ2luT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2VzczxMb2dpbk91dD4+KGAke3RoaXMudXJsfS9hdXRoL2xvZ2luYCwge1xyXG4gICAgICBzeXN0ZW1fbmFtZTogJ0NSQScsXHJcbiAgICAgIHVzZXJuYW1lLFxyXG4gICAgICBwYXNzd29yZCxcclxuICAgICAgcm9sZSxcclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpLFxyXG4gICAgICB0YXAoKHsgYWNjZXNzX3Rva2VuIH0pID0+IHRoaXMuY29va2llLnNldCh0aGlzLmVudmlyb25tZW50cy5hdXRoQ29va2llLCBhY2Nlc3NfdG9rZW4sIHsgcGF0aDogJy8nIH0pKVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTG9ncyBvdXQgdGhlIGN1cnJlbnQgdXNlciBieSBtYWtpbmcgYSBQT1NUIHJlcXVlc3QgdG8gdGhlIGxvZ291dCBlbmRwb2ludC5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIGRlbGV0ZXMgYWxsIGNvb2tpZXMgYWZ0ZXIgYSBzdWNjZXNzZnVsIGxvZ291dC5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8e30+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHNlcnZlcidzIHJlc3BvbnNlIHRvIHRoZSBsb2dvdXQgcmVxdWVzdC5cclxuICAgKi9cclxuICBsb2dvdXQgKCk6IE9ic2VydmFibGU8e30+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPHt9Pj4oYCR7dGhpcy51cmx9L2F1dGgvbG9nb3V0YCwgbnVsbClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKCh7IGRhdGEgfSkgPT4gZGF0YSksXHJcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuY29va2llLmRlbGV0ZSh0aGlzLmVudmlyb25tZW50cy5hdXRoQ29va2llLCAnLycpKVxyXG4gICAgICApXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbmV3IHNlc3Npb24gZm9yIGEgc3BlY2lmaWVkIG1vZGVsLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzIGZvciBjcmVhdGluZyB0aGUgc2Vzc2lvbi5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1zLm1vZGVsVHlwZSAtIFRoZSB0eXBlIG9mIHRoZSBtb2RlbC5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1zLm1vZGVsSWQgLSBUaGUgSUQgb2YgdGhlIG1vZGVsLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbcGFyYW1zLnRva2VuXSAtIE9wdGlvbmFsIGF1dGhvcml6YXRpb24gdG9rZW4uXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPENyZWF0ZVNlc3Npb25PdXQ+fSBBbiBvYnNlcnZhYmxlIGNvbnRhaW5pbmcgdGhlIGNyZWF0ZWQgc2Vzc2lvbiBkZXRhaWxzLlxyXG4gICAqL1xyXG4gIGNyZWF0ZVNlc3Npb24gKHtcclxuICAgIG1vZGVsVHlwZSxcclxuICAgIG1vZGVsSWQsXHJcbiAgICB0b2tlbixcclxuICB9OiBDcmVhdGVTZXNzaW9uSW4pOiBPYnNlcnZhYmxlPENyZWF0ZVNlc3Npb25PdXQ+IHtcclxuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHt9KVxyXG5cclxuICAgIGlmICh0b2tlbikgeyBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0F1dGhvcml6YXRpb24nLCBgQmVhcmVyICR7dG9rZW59YCkgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPENyZWF0ZVNlc3Npb25PdXQ+PihcclxuICAgICAgYCR7dGhpcy51cmx9L3Nlc3Npb25zYCwge1xyXG4gICAgICAgIG1vZGVsX3R5cGU6IG1vZGVsVHlwZSxcclxuICAgICAgICBtb2RlbF9pZDogbW9kZWxJZCxcclxuICAgICAgfSwge1xyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgdGhlIGF1dGhlbnRpY2F0ZWQgdXNlcidzIGluZm9ybWF0aW9uLlxyXG4gICAqIFNlbmRzIGEgR0VUIHJlcXVlc3QgdG8gdGhlIGVuZHBvaW50ICcvYXV0aC9tZScgdG8gcmV0cmlldmUgaW5mb3JtYXRpb25cclxuICAgKiBhYm91dCB0aGUgY3VycmVudGx5IGF1dGhlbnRpY2F0ZWQgdXNlci5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8TWVPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGF1dGhlbnRpY2F0ZWQgdXNlcidzIGRhdGEuXHJcbiAgICovXHJcbiAgbWUgKCk6IE9ic2VydmFibGU8TWVPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8TWVPdXQ+PihgJHt0aGlzLnVybH0vYXV0aC9tZWApXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmV0Y2hlcyB0aGUgYXV0aGVudGljYXRlZCB1c2VyJ3MgZGV0YWlscyBmcm9tIHRoZSBzZXJ2ZXIuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdG9rZW4gVGhlIEpXVCB0b2tlbiB1c2VkIGZvciBhdXRob3JpemF0aW9uLlxyXG4gICAqIEByZXR1cm4gQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSB1c2VyJ3MgZGV0YWlscyBlbmNhcHN1bGF0ZWQgaW4gYSBNZU91dCBvYmplY3QuXHJcbiAgICovXHJcbiAgb3RoZXJNZSAodG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8TWVPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8TWVPdXQ+PihgJHt0aGlzLnVybH0vYXV0aC9tZWAsIHtcclxuICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0b2tlbn1gXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGZXRjaGVzIGEgdXNlciBieSB0aGVpciB1bmlxdWUgSUQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge251bWJlcn0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHVzZXIgdG8gYmUgZmV0Y2hlZC5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPEdldFVzZXJPdXQ+fSBBbiBvYnNlcnZhYmxlIGNvbnRhaW5pbmcgdGhlIHVzZXIgaW5mb3JtYXRpb24uXHJcbiAgICovXHJcbiAgdXNlciAoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8R2V0VXNlck91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxHZXRVc2VyT3V0Pj4oYCR7dGhpcy51cmx9L3VzZXJzLyR7aWR9YClcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2VzIHRoZSBsYW5ndWFnZSBmb3IgdGhlIGF1dGhlbnRpY2F0ZWQgdXNlci5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXMgLSBUaGUgaW5wdXQgcGFyYW1ldGVycyBmb3IgY2hhbmdpbmcgdGhlIGxhbmd1YWdlLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYXJhbXMubGFuZ3VhZ2VJZCAtIFRoZSBJRCBvZiB0aGUgbmV3IGxhbmd1YWdlIHRvIGJlIHNldC5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPEFwaVN1Y2Nlc3M8TWVPdXQ+Pn0gQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSByZXN1bHQgb2YgdGhlIGxhbmd1YWdlIGNoYW5nZSByZXF1ZXN0LlxyXG4gICAqL1xyXG4gIGNoYW5nZUxhbmd1YWdlICh7XHJcbiAgICBsYW5ndWFnZUlkXHJcbiAgfTogQ2hhbmdlTGFuZ3VhZ2VJbik6IE9ic2VydmFibGU8TWVPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PEFwaVN1Y2Nlc3M8TWVPdXQ+PihgJHt0aGlzLnVybH0vYXV0aC9tZWAsIHtcclxuICAgICAgbGFuZ3VhZ2VfaWQ6IGxhbmd1YWdlSWRcclxuICAgIH0pLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHJvbGVzIHdpdGggdGhlaXIgcGVybWlzc2lvbnMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBUaGUgcXVlcnkgcGFyYW1ldGVycyB0byBmaWx0ZXIgdGhlIHJvbGVzLlxyXG4gICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPFJvbGVQZXJtaXNzaW9uc0luW10+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgYW4gYXJyYXkgb2Ygcm9sZSBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICBnZXRSb2xlcyhwYXJhbXM6IFF1ZXJ5UGFyYW1zKTogT2JzZXJ2YWJsZTxSb2xlc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxSb2xlc091dD4+KGAke3RoaXMudXJsfS9yb2xlc2AsIHtcclxuICAgICAgcGFyYW1zXHJcbiAgICB9KS5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHRoZSByb2xlIHR5cGVzIGZyb20gdGhlIEFQSS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UXVlcnlQYXJhbXN9IHBhcmFtcyAtIFRoZSBxdWVyeSBwYXJhbWV0ZXJzIHRvIGJlIHNlbnQgd2l0aCB0aGUgcmVxdWVzdC5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTxSb2xlVHlwZXNPdXQ+fSBBbiBvYnNlcnZhYmxlIGNvbnRhaW5pbmcgdGhlIHJvbGUgdHlwZXMgb3V0cHV0LlxyXG4gICAqL1xyXG4gIGdldFJvbGVUeXBlcyAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8Um9sZVR5cGVzT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPFJvbGVUeXBlc091dD4+KGAke3RoaXMudXJsfS9yb2xlLXR5cGVzYCwge1xyXG4gICAgICBwYXJhbXNcclxuICAgIH0pLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIHBlcm1pc3Npb25zIGZvciBhIG1vZHVsZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UXVlcnlQYXJhbXN9IHBhcmFtcyAtIFRoZSBxdWVyeSBwYXJhbWV0ZXJzIHRvIGJlIHNlbnQgd2l0aCB0aGUgcmVxdWVzdC5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTxNb2R1bGVQZXJtaXNzaW9uc091dD59IEFuIG9ic2VydmFibGUgY29udGFpbmluZyB0aGUgbW9kdWxlIHBlcm1pc3Npb25zLlxyXG4gICAqL1xyXG4gIGdldFBlcm1pc3Npb25zIChwYXJhbXM6IFF1ZXJ5UGFyYW1zKTogT2JzZXJ2YWJsZTxNb2R1bGVQZXJtaXNzaW9uc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxNb2R1bGVQZXJtaXNzaW9uc091dD4+KGAke3RoaXMudXJsfS9tb2R1bGVzYCwge1xyXG4gICAgICBwYXJhbXNcclxuICAgIH0pLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgcm9sZXMgYnkgdGhlIHNwZWNpZmllZCBJRC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgSUQgb2YgdGhlIHJvbGUgdG8gcmV0cmlldmUuXHJcbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSByb2xlIGRhdGEuXHJcbiAgICovXHJcbiAgZ2V0Um9sZXNCeUlkIChwYXJhbXM6IG51bWJlcik6IE9ic2VydmFibGU8Um9sZUJ5SWRPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8Um9sZUJ5SWRPdXQ+PihgJHt0aGlzLnVybH0vcm9sZXMvJHtwYXJhbXN9YClcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbmV3IHJvbGUgd2l0aCB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb25zLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtSb2xlUGVybWlzc2lvbnNJbn0gYm9keSAtIFRoZSBwZXJtaXNzaW9ucyBhbmQgZGV0YWlscyBmb3IgdGhlIG5ldyByb2xlLlxyXG4gICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPE1vZHVsZVBlcm1pc3Npb25zT3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSBjcmVhdGVkIHJvbGUncyBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICBjcmVhdGVSb2xlIChib2R5OiBSb2xlUGVybWlzc2lvbnNJbik6IE9ic2VydmFibGU8TW9kdWxlUGVybWlzc2lvbnNPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPE1vZHVsZVBlcm1pc3Npb25zT3V0Pj4oYCR7dGhpcy51cmx9L3JvbGVzYCwgYm9keSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBwZXJtaXNzaW9ucyBvZiBhIHNwZWNpZmljIHJvbGUuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdG8gdXBkYXRlLlxyXG4gICAqIEBwYXJhbSBib2R5IC0gVGhlIG5ldyBwZXJtaXNzaW9ucyB0byBhc3NpZ24gdG8gdGhlIHJvbGUuXHJcbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSB1cGRhdGVkIG1vZHVsZSBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICB1cGRhdGVSb2xlUGVybWlzc2lvbnMgKGlkOiBudW1iZXIsIGJvZHk6IFJvbGVQZXJtaXNzaW9uc0luKTogT2JzZXJ2YWJsZTxNb2R1bGVQZXJtaXNzaW9uc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8QXBpU3VjY2VzczxNb2R1bGVQZXJtaXNzaW9uc091dD4+KGAke3RoaXMudXJsfS9yb2xlcy8ke2lkfWAsIGJvZHkpXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVsZXRlcyB0aGUgcGVybWlzc2lvbnMgYXNzb2NpYXRlZCB3aXRoIGEgc3BlY2lmaWMgcm9sZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB3aG9zZSBwZXJtaXNzaW9ucyBhcmUgdG8gYmUgZGVsZXRlZC5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx7fT59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzdWx0IG9mIHRoZSBkZWxldGUgb3BlcmF0aW9uLlxyXG4gICAqL1xyXG4gIGRlbGV0ZVJvbGVQZXJtaXNzaW9ucyAoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8e30+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPEFwaVN1Y2Nlc3M8e30+PihgJHt0aGlzLnVybH0vcm9sZXMvJHtpZH1gKVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcbn1cclxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXNlY3VyaXR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHBlcnRlYW0tbXgvbmd4LXNlcnZpY2VzL3NyYy9saWIvYXBpcy9hcGktc2VjdXJpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQWdCbEQsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRTlELE9BQU8sRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBOzs7O0FBTTNDLE1BQU0sT0FBTyxrQkFBa0I7SUFFSjtJQUNmO0lBQ0E7SUFIVixZQUN5QixZQUF5QixFQUN4QyxNQUFxQixFQUNyQixJQUFnQjtRQUZELGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDO0lBRUo7Ozs7T0FJRztJQUNILElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFBO0lBQy9DLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsYUFBYSxDQUFFLEVBQ2IsUUFBUSxFQUNSLFFBQVEsRUFDUixJQUFJLEVBQ0osV0FBVyxFQUNDO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBMkIsR0FBRyxJQUFJLENBQUMsR0FBRyxhQUFhLEVBQUU7WUFDeEUsUUFBUTtZQUNSLFFBQVE7WUFDUixJQUFJO1lBQ0osV0FBVztTQUNaLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQ3ZCLEdBQUcsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFF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QUFJLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7d0dBN09VLGtCQUFrQixrQkFFbkIsS0FBSzs0R0FGSixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBR0ksTUFBTTsyQkFBQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQXBpU3VjY2VzcywgUXVlcnlQYXJhbXMgfSBmcm9tICcuL21vZGVscy9hcGkubW9kZWxzJ1xyXG5pbXBvcnQge1xyXG4gIEF1dGhMb2dpbkluLFxyXG4gIEF1dGhMb2dpbk91dCxcclxuICBBdXRoTWVPdXQsXHJcbiAgQ2hhbmdlTGFuZ3VhZ2VJbixcclxuICBHZXRVc2VyT3V0LFxyXG4gIE1vZHVsZXNPdXQsXHJcbiAgUm9sZUluLFxyXG4gIFJvbGVPdXQsXHJcbiAgUm9sZXNPdXQsXHJcbiAgUm9sZVR5cGVzT3V0LFxyXG4gIFNlc3Npb25JbixcclxuICBTZXNzaW9uT3V0XHJcbn0gZnJvbSAnLi9tb2RlbHMvYXBpLXNlY3VyaXR5LnR5cGVzJ1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL25neC1zZXJ2aWNlcy5tb2RlbHMnXHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSdcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaVNlY3VyaXR5U2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IgKFxyXG4gICAgQEluamVjdCgnZW52JykgcHJpdmF0ZSBlbnZpcm9ubWVudHM6IEVudmlyb25tZW50LFxyXG4gICAgcHJpdmF0ZSBjb29raWU6IENvb2tpZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgQVBJIHNlY3VyaXR5IFVSTCBmcm9tIHRoZSBlbnZpcm9ubWVudHMgY29uZmlndXJhdGlvbi5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIEFQSSBzZWN1cml0eSBVUkwuXHJcbiAgICovXHJcbiAgZ2V0IHVybCAoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmVudmlyb25tZW50cy5hcGlTZWN1cml0eVVybCA/PyAnJ1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVyZm9ybXMgdXNlciBhdXRoZW50aWNhdGlvbiBieSBzZW5kaW5nIGxvZ2luIGNyZWRlbnRpYWxzIHRvIHRoZSBzZXJ2ZXIuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zIC0gQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHVzZXIncyBsb2dpbiBjcmVkZW50aWFscyBhbmQgc3lzdGVtIGRldGFpbHMuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhcmFtcy51c2VybmFtZSAtIFRoZSB1c2VybmFtZSBvZiB0aGUgdXNlciBhdHRlbXB0aW5nIHRvIGxvZyBpbi5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1zLnBhc3N3b3JkIC0gVGhlIHVzZXIncyBwYXNzd29yZC5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFyYW1zLnJvbGUgLSBUaGUgcm9sZSBvZiB0aGUgdXNlciAoZS5nLiwgYWRtaW4sIHVzZXIpLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYXJhbXMuc3lzdGVtX25hbWUgLSBUaGUgbmFtZSBvZiB0aGUgc3lzdGVtIHRoZSB1c2VyIGlzIGxvZ2dpbmcgaW50by5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8QXV0aExvZ2luT3V0Pn0gQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBhdXRoZW50aWNhdGlvbiByZXN1bHQsIGluY2x1ZGluZyB0b2tlbnMgYW5kIHVzZXIgaW5mb3JtYXRpb24uXHJcbiAgICovXHJcbiAgcG9zdEF1dGhMb2dpbiAoe1xyXG4gICAgdXNlcm5hbWUsXHJcbiAgICBwYXNzd29yZCxcclxuICAgIHJvbGUsXHJcbiAgICBzeXN0ZW1fbmFtZVxyXG4gIH06IEF1dGhMb2dpbkluKTogT2JzZXJ2YWJsZTxBdXRoTG9naW5PdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPEF1dGhMb2dpbk91dD4+KGAke3RoaXMudXJsfS9hdXRoL2xvZ2luYCwge1xyXG4gICAgICB1c2VybmFtZSxcclxuICAgICAgcGFzc3dvcmQsXHJcbiAgICAgIHJvbGUsXHJcbiAgICAgIHN5c3RlbV9uYW1lLFxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4gZGF0YSksXHJcbiAgICAgIHRhcCgoeyBhY2Nlc3NfdG9rZW4gfSkgPT4gdGhpcy5jb29raWUuc2V0KHRoaXMuZW52aXJvbm1lbnRzLmF1dGhDb29raWUsIGFjY2Vzc190b2tlbiwgeyBwYXRoOiAnLycgfSkpXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBMb2dzIG91dCB0aGUgY3VycmVudCB1c2VyIGJ5IG1ha2luZyBhIFBPU1QgcmVxdWVzdCB0byB0aGUgbG9nb3V0IGVuZHBvaW50LlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgZGVsZXRlcyBhbGwgY29va2llcyBhZnRlciBhIHN1Y2Nlc3NmdWwgbG9nb3V0LlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTx7fT59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgc2VydmVyJ3MgcmVzcG9uc2UgdG8gdGhlIGxvZ291dCByZXF1ZXN0LlxyXG4gICAqL1xyXG4gIHBvc3RBdXRoTG9nb3V0ICgpOiBPYnNlcnZhYmxlPHt9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2Vzczx7fT4+KGAke3RoaXMudXJsfS9hdXRoL2xvZ291dGAsIG51bGwpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpLFxyXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmNvb2tpZS5kZWxldGUodGhpcy5lbnZpcm9ubWVudHMuYXV0aENvb2tpZSwgJy8nKSlcclxuICAgICAgKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlcyBhIG5ldyBzZXNzaW9uIGZvciBhIHNwZWNpZmllZCBtb2RlbC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgY3JlYXRpbmcgdGhlIHNlc3Npb24uXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhcmFtcy5tb2RlbFR5cGUgLSBUaGUgdHlwZSBvZiB0aGUgbW9kZWwuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhcmFtcy5tb2RlbElkIC0gVGhlIElEIG9mIHRoZSBtb2RlbC5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gW3BhcmFtcy50b2tlbl0gLSBPcHRpb25hbCBhdXRob3JpemF0aW9uIHRva2VuLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxTZXNzaW9uT3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSBjcmVhdGVkIHNlc3Npb24gZGV0YWlscy5cclxuICAgKi9cclxuICBwb3N0U2Vzc2lvbiAoe1xyXG4gICAgbW9kZWxUeXBlLFxyXG4gICAgbW9kZWxJZCxcclxuICAgIHRva2VuLFxyXG4gIH06IFNlc3Npb25Jbik6IE9ic2VydmFibGU8U2Vzc2lvbk91dD4ge1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe30pXHJcblxyXG4gICAgaWYgKHRva2VuKSB7IGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCZWFyZXIgJHt0b2tlbn1gKSB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVN1Y2Nlc3M8U2Vzc2lvbk91dD4+KFxyXG4gICAgICBgJHt0aGlzLnVybH0vc2Vzc2lvbnNgLCB7XHJcbiAgICAgICAgbW9kZWxfdHlwZTogbW9kZWxUeXBlLFxyXG4gICAgICAgIG1vZGVsX2lkOiBtb2RlbElkLFxyXG4gICAgICB9LCB7XHJcbiAgICAgICAgaGVhZGVyc1xyXG4gICAgICB9KS5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmV0Y2hlcyB0aGUgYXV0aGVudGljYXRlZCB1c2VyJ3MgaW5mb3JtYXRpb24uXHJcbiAgICogU2VuZHMgYSBHRVQgcmVxdWVzdCB0byB0aGUgZW5kcG9pbnQgJy9hdXRoL21lJyB0byByZXRyaWV2ZSBpbmZvcm1hdGlvblxyXG4gICAqIGFib3V0IHRoZSBjdXJyZW50bHkgYXV0aGVudGljYXRlZCB1c2VyLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxBdXRoTWVPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGF1dGhlbnRpY2F0ZWQgdXNlcidzIGRhdGEuXHJcbiAgICovXHJcbiAgZ2V0QXV0aE1lICgpOiBPYnNlcnZhYmxlPEF1dGhNZU91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxBdXRoTWVPdXQ+PihgJHt0aGlzLnVybH0vYXV0aC9tZWApXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmV0Y2hlcyB0aGUgYXV0aGVudGljYXRlZCB1c2VyJ3MgZGV0YWlscyBmcm9tIHRoZSBzZXJ2ZXIuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdG9rZW4gVGhlIEpXVCB0b2tlbiB1c2VkIGZvciBhdXRob3JpemF0aW9uLlxyXG4gICAqIEByZXR1cm4gQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSB1c2VyJ3MgZGV0YWlscyBlbmNhcHN1bGF0ZWQgaW4gYSBNZU91dCBvYmplY3QuXHJcbiAgICovXHJcbiAgZ2V0T3RoZXJNZSAodG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8QXV0aE1lT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPEF1dGhNZU91dD4+KGAke3RoaXMudXJsfS9hdXRoL21lYCwge1xyXG4gICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWBcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZldGNoZXMgYSB1c2VyIGJ5IHRoZWlyIHVuaXF1ZSBJRC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgdXNlciB0byBiZSBmZXRjaGVkLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8R2V0VXNlck91dD59IEFuIG9ic2VydmFibGUgY29udGFpbmluZyB0aGUgdXNlciBpbmZvcm1hdGlvbi5cclxuICAgKi9cclxuICBnZXRVc2VyIChpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxHZXRVc2VyT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPEdldFVzZXJPdXQ+PihgJHt0aGlzLnVybH0vdXNlcnMvJHtpZH1gKVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZXMgdGhlIGxhbmd1YWdlIGZvciB0aGUgYXV0aGVudGljYXRlZCB1c2VyLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtcyAtIFRoZSBpbnB1dCBwYXJhbWV0ZXJzIGZvciBjaGFuZ2luZyB0aGUgbGFuZ3VhZ2UuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhcmFtcy5sYW5ndWFnZUlkIC0gVGhlIElEIG9mIHRoZSBuZXcgbGFuZ3VhZ2UgdG8gYmUgc2V0LlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8QXBpU3VjY2VzczxBdXRoTWVPdXQ+Pn0gQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSByZXN1bHQgb2YgdGhlIGxhbmd1YWdlIGNoYW5nZSByZXF1ZXN0LlxyXG4gICAqL1xyXG4gIHB1dENoYW5nZUxhbmd1YWdlICh7XHJcbiAgICBsYW5ndWFnZUlkXHJcbiAgfTogQ2hhbmdlTGFuZ3VhZ2VJbik6IE9ic2VydmFibGU8QXV0aE1lT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxBcGlTdWNjZXNzPEF1dGhNZU91dD4+KGAke3RoaXMudXJsfS9hdXRoL21lYCwge1xyXG4gICAgICBsYW5ndWFnZV9pZDogbGFuZ3VhZ2VJZFxyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyBhIGxpc3Qgb2Ygcm9sZXMgd2l0aCB0aGVpciBwZXJtaXNzaW9ucy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UXVlcnlQYXJhbXN9IHBhcmFtcyAtIFRoZSBxdWVyeSBwYXJhbWV0ZXJzIHRvIGZpbHRlciB0aGUgcm9sZXMuXHJcbiAgICogQHJldHVybnMge09ic2VydmFibGU8Um9sZUluW10+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgYW4gYXJyYXkgb2Ygcm9sZSBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICBnZXRSb2xlcyAocGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8Um9sZXNPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8Um9sZXNPdXQ+PihgJHt0aGlzLnVybH0vcm9sZXNgLCB7XHJcbiAgICAgIHBhcmFtc1xyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgcm9sZSB0eXBlcyBmcm9tIHRoZSBBUEkuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBUaGUgcXVlcnkgcGFyYW1ldGVycyB0byBiZSBzZW50IHdpdGggdGhlIHJlcXVlc3QuXHJcbiAgICogQHJldHVybnMge09ic2VydmFibGU8Um9sZVR5cGVzT3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSByb2xlIHR5cGVzIG91dHB1dC5cclxuICAgKi9cclxuICBnZXRSb2xlVHlwZXMgKHBhcmFtczogUXVlcnlQYXJhbXMpOiBPYnNlcnZhYmxlPFJvbGVUeXBlc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxSb2xlVHlwZXNPdXQ+PihgJHt0aGlzLnVybH0vcm9sZS10eXBlc2AsIHtcclxuICAgICAgcGFyYW1zXHJcbiAgICB9KS5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHJvbGVzIGJ5IHRoZSBzcGVjaWZpZWQgSUQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaWQgLSBUaGUgSUQgb2YgdGhlIHJvbGUgdG8gcmV0cmlldmUuXHJcbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSByb2xlIGRhdGEuXHJcbiAgICovXHJcbiAgZ2V0Um9sZSAoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8Um9sZU91dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxSb2xlT3V0Pj4oYCR7dGhpcy51cmx9L3JvbGVzLyR7aWR9YClcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbmV3IHJvbGUgd2l0aCB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb25zLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtSb2xlSW59IGJvZHkgLSBUaGUgcGVybWlzc2lvbnMgYW5kIGRldGFpbHMgZm9yIHRoZSBuZXcgcm9sZS5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTxSb2xlT3V0Pn0gQW4gb2JzZXJ2YWJsZSBjb250YWluaW5nIHRoZSBjcmVhdGVkIHJvbGUncyBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICBwb3N0Um9sZSAoYm9keTogUm9sZUluKTogT2JzZXJ2YWJsZTxSb2xlT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2VzczxSb2xlT3V0Pj4oYCR7dGhpcy51cmx9L3JvbGVzYCwgYm9keSlcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBwZXJtaXNzaW9ucyBvZiBhIHNwZWNpZmljIHJvbGUuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdG8gdXBkYXRlLlxyXG4gICAqIEBwYXJhbSBib2R5IC0gVGhlIG5ldyBwZXJtaXNzaW9ucyB0byBhc3NpZ24gdG8gdGhlIHJvbGUuXHJcbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSB1cGRhdGVkIG1vZHVsZSBwZXJtaXNzaW9ucy5cclxuICAgKi9cclxuICBwdXRSb2xlIChpZDogbnVtYmVyLCBib2R5OiBSb2xlSW4pOiBPYnNlcnZhYmxlPFJvbGVPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PEFwaVN1Y2Nlc3M8Um9sZU91dD4+KGAke3RoaXMudXJsfS9yb2xlcy8ke2lkfWAsIGJvZHkpXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVsZXRlcyB0aGUgcGVybWlzc2lvbnMgYXNzb2NpYXRlZCB3aXRoIGEgc3BlY2lmaWMgcm9sZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB3aG9zZSBwZXJtaXNzaW9ucyBhcmUgdG8gYmUgZGVsZXRlZC5cclxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx7fT59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzdWx0IG9mIHRoZSBkZWxldGUgb3BlcmF0aW9uLlxyXG4gICAqL1xyXG4gIGRlbGV0ZVJvbGUgKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHt9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTxBcGlTdWNjZXNzPHt9Pj4oYCR7dGhpcy51cmx9L3JvbGVzLyR7aWR9YClcclxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIG1vZHVsZXMgYW5kIHBlcm1pc3Npb25zXHJcbiAgICpcclxuICAgKiBAcGFyYW0gcXVlcnlQYXJhbXMgLSBUaGUgcXVlcnkgcGFyYW1ldGVycyB0byBmaWx0ZXIgdGhlIG1vZHVsZXMuXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxNb2R1bGVzT3V0W10+IC0gQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGFycmF5IG9mIG1vZHVsZXMgYW5kIHBlcm1pc3Npb25zLlxyXG4gICAqL1xyXG4gIGdldE1vZHVsZXMgKHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtcyk6IE9ic2VydmFibGU8TW9kdWxlc091dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpU3VjY2VzczxNb2R1bGVzT3V0Pj4oYCR7dGhpcy51cmx9L21vZHVsZXNgLCB7XHJcbiAgICAgIHBhcmFtczogcXVlcnlQYXJhbXNcclxuICAgIH0pLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSkpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIG1vZHVsZXMgYW5kIHBlcm1pc3Npb25zXHJcbiAgICpcclxuICAgKiBAcGFyYW0gcGFyYW1zLnRva2VuIC0gQ3VzdG9tIHRva2VuIGZvciBhdXRob3JpemF0aW9uLlxyXG4gICAqIEBwYXJhbSBwYXJhbXMucXVlcnlQYXJhbXMgLSBUaGUgcXVlcnkgcGFyYW1ldGVycyB0byBmaWx0ZXIgdGhlIG1vZHVsZXMuXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxNb2R1bGVzT3V0W10+IC0gQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGFycmF5IG9mIG1vZHVsZXMgYW5kIHBlcm1pc3Npb25zLlxyXG4gICAqL1xyXG4gIGdldE1vZHVsZXNCeVRva2VuIChwYXJhbXM6IHtcclxuICAgIHRva2VuOiBzdHJpbmcsXHJcbiAgICBxdWVyeVBhcmFtczogUXVlcnlQYXJhbXNcclxuICB9KTogT2JzZXJ2YWJsZTxNb2R1bGVzT3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBcGlTdWNjZXNzPE1vZHVsZXNPdXQ+PihgJHt0aGlzLnVybH0vbW9kdWxlc2AsIHtcclxuICAgICAgcGFyYW1zOiBwYXJhbXMucXVlcnlQYXJhbXMsXHJcbiAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7cGFyYW1zLnRva2VufWBcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcbn1cclxuIl19
|