@veloceapps/api 11.0.0-9 → 11.0.0-91
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/esm2020/index.mjs +2 -45
- package/esm2020/src/index.mjs +16 -0
- package/esm2020/src/lib/api.module.mjs +60 -0
- package/esm2020/src/lib/services/account-api.service.mjs +87 -0
- package/esm2020/src/lib/services/auth.service.mjs +22 -0
- package/esm2020/src/lib/services/contracted-price-api.service.mjs +45 -0
- package/esm2020/src/lib/services/flow-state-api.mjs +142 -0
- package/esm2020/src/lib/services/offers-api.service.mjs +76 -0
- package/esm2020/src/lib/services/org-info-api.service.mjs +54 -0
- package/esm2020/src/lib/services/portals-api.service.mjs +76 -0
- package/esm2020/src/lib/services/promotions-api.service.mjs +68 -0
- package/esm2020/src/lib/services/rebate-program-api.service.mjs +68 -0
- package/esm2020/src/lib/services/rebate-type-api.service.mjs +68 -0
- package/esm2020/src/lib/services/sandbox-manager-api.service.mjs +94 -0
- package/esm2020/src/lib/services/stateful-configuration-api.mjs +51 -0
- package/esm2020/src/lib/types/auth.types.mjs +2 -0
- package/esm2020/src/lib/types/clone-request.types.mjs +2 -0
- package/esm2020/src/lib/types/delta-request.types.mjs +2 -0
- package/esm2020/src/lib/types/dto/offers-dto.types.mjs +2 -0
- package/esm2020/src/lib/types/index.mjs +6 -0
- package/esm2020/src/lib/types/org-info.types.mjs +2 -0
- package/esm2020/src/lib/types/search-request.types.mjs +2 -0
- package/esm2020/src/lib/types/stateful-configuration.types.mjs +2 -0
- package/esm2020/src/lib/utils/canvas.utils.mjs +33 -0
- package/esm2020/src/lib/utils/index.mjs +2 -0
- package/esm2020/v2/api-v2.module.mjs +70 -0
- package/esm2020/v2/index.mjs +4 -0
- package/esm2020/v2/services/cache-api.service.mjs +22 -0
- package/esm2020/v2/services/catalog-admin-api.service.mjs +192 -0
- package/esm2020/v2/services/catalog-api.service.mjs +90 -0
- package/esm2020/v2/services/configuration-processors-api.service.mjs +38 -0
- package/esm2020/v2/services/configuration-settings-api.service.mjs +89 -0
- package/esm2020/v2/services/context-definition-admin-api.service.mjs +70 -0
- package/esm2020/v2/services/document-attachment-api.service.mjs +66 -0
- package/esm2020/v2/services/endpoints-admin-api.service.mjs +79 -0
- package/esm2020/v2/services/flows-api.service.mjs +29 -0
- package/esm2020/v2/services/functions-admin-api.service.mjs +116 -0
- package/esm2020/v2/services/guided-sellings-admin-api.service.mjs +65 -0
- package/esm2020/v2/services/guided-sellings-api.service.mjs +37 -0
- package/esm2020/v2/services/index.mjs +24 -0
- package/esm2020/v2/services/orchestrations-admin-api.service.mjs +87 -0
- package/esm2020/v2/services/orchestrations-api.service.mjs +23 -0
- package/esm2020/v2/services/pcm-api.service.mjs +38 -0
- package/esm2020/v2/services/picklists-admin-api.service.mjs +41 -0
- package/esm2020/v2/services/products-admin-api.service.mjs +90 -0
- package/esm2020/v2/services/sales-transactions-api.service.mjs +52 -0
- package/esm2020/v2/services/salesforce-api.service.mjs +83 -0
- package/esm2020/v2/services/shopping-cart-settings-api.service.mjs +28 -0
- package/esm2020/v2/services/ui-definitions-admin-api.service.mjs +68 -0
- package/esm2020/v2/services/ui-templates-admin-api.service.mjs +286 -0
- package/esm2020/v2/services/veloce-objects-api.service.mjs +90 -0
- package/esm2020/v2/types/attachment.types.mjs +2 -0
- package/esm2020/v2/types/clone-request.types.mjs +2 -0
- package/esm2020/v2/types/dto/configuration-settings-dto.types.mjs +22 -0
- package/esm2020/v2/types/dto/ui-definition-dto.types.mjs +2 -0
- package/esm2020/v2/types/dto/ui-template-dto.types.mjs +2 -0
- package/esm2020/v2/types/function.types.mjs +2 -0
- package/esm2020/v2/types/index.mjs +7 -0
- package/esm2020/v2/types/pcm.types.mjs +2 -0
- package/esm2020/v2/types/procedure.types.mjs +2 -0
- package/esm2020/v2/types/sales-transaction.types.mjs +2 -0
- package/esm2020/v2/types/search-request.types.mjs +2 -0
- package/esm2020/v2/utils/ui-definition.utils.mjs +23 -0
- package/esm2020/v2/utils/ui-template.utils.mjs +13 -0
- package/esm2020/v2/veloceapps-api-v2.mjs +5 -0
- package/esm2020/veloceapps-api.mjs +1 -1
- package/fesm2015/veloceapps-api-v2.mjs +1726 -0
- package/fesm2015/veloceapps-api-v2.mjs.map +1 -0
- package/fesm2015/veloceapps-api.mjs +553 -2892
- package/fesm2015/veloceapps-api.mjs.map +1 -1
- package/fesm2020/veloceapps-api-v2.mjs +1809 -0
- package/fesm2020/veloceapps-api-v2.mjs.map +1 -0
- package/fesm2020/veloceapps-api.mjs +552 -2993
- package/fesm2020/veloceapps-api.mjs.map +1 -1
- package/index.d.ts +1 -44
- package/package.json +9 -1
- package/src/index.d.ts +15 -0
- package/{lib → src/lib}/api.module.d.ts +2 -1
- package/{lib → src/lib}/types/index.d.ts +0 -2
- package/{lib → src/lib}/types/stateful-configuration.types.d.ts +1 -2
- package/src/lib/utils/index.d.ts +1 -0
- package/v2/api-v2.module.d.ts +7 -0
- package/v2/index.d.ts +3 -0
- package/v2/services/cache-api.service.d.ts +11 -0
- package/{lib → v2}/services/catalog-admin-api.service.d.ts +2 -2
- package/{lib → v2}/services/catalog-api.service.d.ts +5 -5
- package/{lib → v2}/services/configuration-settings-api.service.d.ts +1 -2
- package/{lib/services/rlm-api.service.d.ts → v2/services/context-definition-admin-api.service.d.ts} +5 -4
- package/{lib → v2}/services/document-attachment-api.service.d.ts +1 -1
- package/{lib/services/endpoints-api.service.d.ts → v2/services/endpoints-admin-api.service.d.ts} +3 -4
- package/v2/services/functions-admin-api.service.d.ts +25 -0
- package/v2/services/index.d.ts +23 -0
- package/v2/services/orchestrations-admin-api.service.d.ts +21 -0
- package/v2/services/orchestrations-api.service.d.ts +12 -0
- package/v2/services/pcm-api.service.d.ts +12 -0
- package/{lib/services/picklists-api.service.d.ts → v2/services/picklists-admin-api.service.d.ts} +3 -3
- package/v2/services/products-admin-api.service.d.ts +21 -0
- package/v2/services/sales-transactions-api.service.d.ts +26 -0
- package/{lib → v2}/services/salesforce-api.service.d.ts +1 -0
- package/v2/services/ui-definitions-admin-api.service.d.ts +18 -0
- package/{lib/services/ui-templates-api.service.d.ts → v2/services/ui-templates-admin-api.service.d.ts} +3 -3
- package/{lib → v2}/services/veloce-objects-api.service.d.ts +3 -3
- package/v2/types/clone-request.types.d.ts +5 -0
- package/v2/types/dto/ui-definition-dto.types.d.ts +7 -0
- package/v2/types/function.types.d.ts +13 -0
- package/v2/types/index.d.ts +6 -0
- package/v2/types/pcm.types.d.ts +10 -0
- package/v2/types/procedure.types.d.ts +61 -0
- package/v2/types/sales-transaction.types.d.ts +13 -0
- package/v2/types/search-request.types.d.ts +8 -0
- package/v2/utils/ui-definition.utils.d.ts +5 -0
- package/esm2020/lib/api.module.mjs +0 -146
- package/esm2020/lib/services/account-api.service.mjs +0 -87
- package/esm2020/lib/services/auth.service.mjs +0 -22
- package/esm2020/lib/services/catalog-admin-api.service.mjs +0 -192
- package/esm2020/lib/services/catalog-api.service.mjs +0 -90
- package/esm2020/lib/services/configuration-api.service.mjs +0 -122
- package/esm2020/lib/services/configuration-processors-api.service.mjs +0 -38
- package/esm2020/lib/services/configuration-settings-api.service.mjs +0 -96
- package/esm2020/lib/services/context-api.service.mjs +0 -26
- package/esm2020/lib/services/contracted-price-api.service.mjs +0 -45
- package/esm2020/lib/services/delta-api.service.mjs +0 -23
- package/esm2020/lib/services/document-attachment-api.service.mjs +0 -66
- package/esm2020/lib/services/endpoints-api.service.mjs +0 -80
- package/esm2020/lib/services/flow-state-api.mjs +0 -142
- package/esm2020/lib/services/flows-api.service.mjs +0 -29
- package/esm2020/lib/services/guided-sellings-admin-api.service.mjs +0 -65
- package/esm2020/lib/services/guided-sellings-api.service.mjs +0 -37
- package/esm2020/lib/services/offers-api.service.mjs +0 -76
- package/esm2020/lib/services/org-info-api.service.mjs +0 -54
- package/esm2020/lib/services/picklists-api.service.mjs +0 -41
- package/esm2020/lib/services/portals-api.service.mjs +0 -76
- package/esm2020/lib/services/price-api.service.mjs +0 -63
- package/esm2020/lib/services/procedures-api.service.mjs +0 -113
- package/esm2020/lib/services/product-api.service.mjs +0 -153
- package/esm2020/lib/services/product-model-api.service.mjs +0 -223
- package/esm2020/lib/services/promotions-api.service.mjs +0 -68
- package/esm2020/lib/services/quote-api.service.mjs +0 -56
- package/esm2020/lib/services/ramp-api.service.mjs +0 -31
- package/esm2020/lib/services/rebate-program-api.service.mjs +0 -68
- package/esm2020/lib/services/rebate-type-api.service.mjs +0 -68
- package/esm2020/lib/services/rlm-api.service.mjs +0 -64
- package/esm2020/lib/services/rlm-quote-api.service.mjs +0 -27
- package/esm2020/lib/services/rule-groups-api.service.mjs +0 -62
- package/esm2020/lib/services/rules-api.service.mjs +0 -98
- package/esm2020/lib/services/salesforce-api.service.mjs +0 -79
- package/esm2020/lib/services/sandbox-manager-api.service.mjs +0 -94
- package/esm2020/lib/services/scripts-api.service.mjs +0 -83
- package/esm2020/lib/services/shopping-cart-settings-api.service.mjs +0 -28
- package/esm2020/lib/services/stateful-configuration-api.mjs +0 -51
- package/esm2020/lib/services/ui-definitions-api.service.mjs +0 -122
- package/esm2020/lib/services/ui-templates-api.service.mjs +0 -286
- package/esm2020/lib/services/veloce-objects-api.service.mjs +0 -90
- package/esm2020/lib/types/attachment.types.mjs +0 -2
- package/esm2020/lib/types/auth.types.mjs +0 -2
- package/esm2020/lib/types/clone-request.types.mjs +0 -2
- package/esm2020/lib/types/delta-request.types.mjs +0 -2
- package/esm2020/lib/types/dto/configuration-settings-dto.types.mjs +0 -22
- package/esm2020/lib/types/dto/offers-dto.types.mjs +0 -2
- package/esm2020/lib/types/dto/ui-template-dto.types.mjs +0 -2
- package/esm2020/lib/types/index.mjs +0 -8
- package/esm2020/lib/types/org-info.types.mjs +0 -2
- package/esm2020/lib/types/price.types.mjs +0 -2
- package/esm2020/lib/types/quote.types.mjs +0 -2
- package/esm2020/lib/types/ramp-request.types.mjs +0 -2
- package/esm2020/lib/types/search-request.types.mjs +0 -2
- package/esm2020/lib/types/stateful-configuration.types.mjs +0 -2
- package/esm2020/lib/utils/canvas.utils.mjs +0 -33
- package/esm2020/lib/utils/index.mjs +0 -3
- package/esm2020/lib/utils/ui-template.utils.mjs +0 -13
- package/lib/services/configuration-api.service.d.ts +0 -23
- package/lib/services/context-api.service.d.ts +0 -11
- package/lib/services/delta-api.service.d.ts +0 -12
- package/lib/services/price-api.service.d.ts +0 -16
- package/lib/services/procedures-api.service.d.ts +0 -30
- package/lib/services/product-api.service.d.ts +0 -31
- package/lib/services/product-model-api.service.d.ts +0 -29
- package/lib/services/quote-api.service.d.ts +0 -22
- package/lib/services/ramp-api.service.d.ts +0 -13
- package/lib/services/rlm-quote-api.service.d.ts +0 -11
- package/lib/services/rule-groups-api.service.d.ts +0 -18
- package/lib/services/rules-api.service.d.ts +0 -22
- package/lib/services/scripts-api.service.d.ts +0 -21
- package/lib/services/ui-definitions-api.service.d.ts +0 -21
- package/lib/types/price.types.d.ts +0 -5
- package/lib/types/quote.types.d.ts +0 -8
- package/lib/types/ramp-request.types.d.ts +0 -13
- package/lib/utils/index.d.ts +0 -2
- /package/{lib → src/lib}/services/account-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/auth.service.d.ts +0 -0
- /package/{lib → src/lib}/services/contracted-price-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/flow-state-api.d.ts +0 -0
- /package/{lib → src/lib}/services/offers-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/org-info-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/portals-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/promotions-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/rebate-program-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/rebate-type-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/sandbox-manager-api.service.d.ts +0 -0
- /package/{lib → src/lib}/services/stateful-configuration-api.d.ts +0 -0
- /package/{lib → src/lib}/types/auth.types.d.ts +0 -0
- /package/{lib → src/lib}/types/clone-request.types.d.ts +0 -0
- /package/{lib → src/lib}/types/delta-request.types.d.ts +0 -0
- /package/{lib → src/lib}/types/dto/offers-dto.types.d.ts +0 -0
- /package/{lib → src/lib}/types/org-info.types.d.ts +0 -0
- /package/{lib → src/lib}/types/search-request.types.d.ts +0 -0
- /package/{lib → src/lib}/utils/canvas.utils.d.ts +0 -0
- /package/{lib → v2}/services/configuration-processors-api.service.d.ts +0 -0
- /package/{lib → v2}/services/flows-api.service.d.ts +0 -0
- /package/{lib → v2}/services/guided-sellings-admin-api.service.d.ts +0 -0
- /package/{lib → v2}/services/guided-sellings-api.service.d.ts +0 -0
- /package/{lib → v2}/services/shopping-cart-settings-api.service.d.ts +0 -0
- /package/{lib → v2}/types/attachment.types.d.ts +0 -0
- /package/{lib → v2}/types/dto/configuration-settings-dto.types.d.ts +0 -0
- /package/{lib → v2}/types/dto/ui-template-dto.types.d.ts +0 -0
- /package/{lib → v2}/utils/ui-template.utils.d.ts +0 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
import { isApexError, isCanvasError } from '@veloceapps/core';
|
2
|
+
import { isArray } from 'lodash';
|
3
|
+
/**
|
4
|
+
* Parses the response from Canvas and checks for errors.
|
5
|
+
* - If an error is found, publishes an error message and returns the failover value.
|
6
|
+
* - If no error is found, returns the parsed response.
|
7
|
+
*
|
8
|
+
* Note! The API call first goes to APEX before reaching the Canvas, so errors can originate from either APEX or Canvas.
|
9
|
+
*
|
10
|
+
* @param {string} response - The JSON string response from the Canvas call.
|
11
|
+
* @param {T} failover - The value to return in case of error.
|
12
|
+
* @returns {T | K} The parsed response or the failover value.
|
13
|
+
*
|
14
|
+
* @template T The expected type of the parsed response.
|
15
|
+
* @template K The type of the failover value.
|
16
|
+
*
|
17
|
+
* @remarks If there's an Apex error, the response data can be an array.
|
18
|
+
* In such cases, the function extracts the first element of the array.
|
19
|
+
*/
|
20
|
+
export const handleCanvasResponse = (response, failover, errorPublisher) => {
|
21
|
+
const parsed = JSON.parse(response);
|
22
|
+
const errorCandidate = isArray(parsed) ? parsed[0] : parsed;
|
23
|
+
if (isApexError(errorCandidate)) {
|
24
|
+
errorPublisher(errorCandidate.message);
|
25
|
+
return failover;
|
26
|
+
}
|
27
|
+
if (isCanvasError(errorCandidate)) {
|
28
|
+
errorPublisher(errorCandidate.error);
|
29
|
+
return failover;
|
30
|
+
}
|
31
|
+
return parsed;
|
32
|
+
};
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi91dGlscy9jYW52YXMudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWpDOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FDbEMsUUFBZ0IsRUFDaEIsUUFBVyxFQUNYLGNBQXlDLEVBQ2xDLEVBQUU7SUFDVCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFNUQsSUFBSSxXQUFXLENBQUMsY0FBYyxDQUFDLEVBQUU7UUFDL0IsY0FBYyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxPQUFPLFFBQVEsQ0FBQztLQUNqQjtJQUNELElBQUksYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1FBQ2pDLGNBQWMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFFRCxPQUFPLE1BQVcsQ0FBQztBQUNyQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FwZXhFcnJvciwgaXNDYW52YXNFcnJvciB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ2xvZGFzaCc7XG5cbi8qKlxuICogUGFyc2VzIHRoZSByZXNwb25zZSBmcm9tIENhbnZhcyBhbmQgY2hlY2tzIGZvciBlcnJvcnMuXG4gKiAgLSBJZiBhbiBlcnJvciBpcyBmb3VuZCwgcHVibGlzaGVzIGFuIGVycm9yIG1lc3NhZ2UgYW5kIHJldHVybnMgdGhlIGZhaWxvdmVyIHZhbHVlLlxuICogIC0gSWYgbm8gZXJyb3IgaXMgZm91bmQsIHJldHVybnMgdGhlIHBhcnNlZCByZXNwb25zZS5cbiAqXG4gKiBOb3RlISBUaGUgQVBJIGNhbGwgZmlyc3QgZ29lcyB0byBBUEVYIGJlZm9yZSByZWFjaGluZyB0aGUgQ2FudmFzLCBzbyBlcnJvcnMgY2FuIG9yaWdpbmF0ZSBmcm9tIGVpdGhlciBBUEVYIG9yIENhbnZhcy5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcmVzcG9uc2UgLSBUaGUgSlNPTiBzdHJpbmcgcmVzcG9uc2UgZnJvbSB0aGUgQ2FudmFzIGNhbGwuXG4gKiBAcGFyYW0ge1R9IGZhaWxvdmVyIC0gVGhlIHZhbHVlIHRvIHJldHVybiBpbiBjYXNlIG9mIGVycm9yLlxuICogQHJldHVybnMge1QgfCBLfSBUaGUgcGFyc2VkIHJlc3BvbnNlIG9yIHRoZSBmYWlsb3ZlciB2YWx1ZS5cbiAqXG4gKiBAdGVtcGxhdGUgVCBUaGUgZXhwZWN0ZWQgdHlwZSBvZiB0aGUgcGFyc2VkIHJlc3BvbnNlLlxuICogQHRlbXBsYXRlIEsgVGhlIHR5cGUgb2YgdGhlIGZhaWxvdmVyIHZhbHVlLlxuICpcbiAqIEByZW1hcmtzIElmIHRoZXJlJ3MgYW4gQXBleCBlcnJvciwgdGhlIHJlc3BvbnNlIGRhdGEgY2FuIGJlIGFuIGFycmF5LlxuICogSW4gc3VjaCBjYXNlcywgdGhlIGZ1bmN0aW9uIGV4dHJhY3RzIHRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheS5cbiAqL1xuZXhwb3J0IGNvbnN0IGhhbmRsZUNhbnZhc1Jlc3BvbnNlID0gPFQsIEs+KFxuICByZXNwb25zZTogc3RyaW5nLFxuICBmYWlsb3ZlcjogSyxcbiAgZXJyb3JQdWJsaXNoZXI6IChtZXNzYWdlOiBzdHJpbmcpID0+IHZvaWQsXG4pOiBUIHwgSyA9PiB7XG4gIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UocmVzcG9uc2UpO1xuICBjb25zdCBlcnJvckNhbmRpZGF0ZSA9IGlzQXJyYXkocGFyc2VkKSA/IHBhcnNlZFswXSA6IHBhcnNlZDtcblxuICBpZiAoaXNBcGV4RXJyb3IoZXJyb3JDYW5kaWRhdGUpKSB7XG4gICAgZXJyb3JQdWJsaXNoZXIoZXJyb3JDYW5kaWRhdGUubWVzc2FnZSk7XG4gICAgcmV0dXJuIGZhaWxvdmVyO1xuICB9XG4gIGlmIChpc0NhbnZhc0Vycm9yKGVycm9yQ2FuZGlkYXRlKSkge1xuICAgIGVycm9yUHVibGlzaGVyKGVycm9yQ2FuZGlkYXRlLmVycm9yKTtcbiAgICByZXR1cm4gZmFpbG92ZXI7XG4gIH1cblxuICByZXR1cm4gcGFyc2VkIGFzIFQ7XG59O1xuIl19
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './canvas.utils';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhbnZhcy51dGlscyc7XG4iXX0=
|
@@ -0,0 +1,70 @@
|
|
1
|
+
import { HttpClientModule } from '@angular/common/http';
|
2
|
+
import { NgModule } from '@angular/core';
|
3
|
+
import { BaseHttpService, XrayService } from '@veloceapps/core';
|
4
|
+
import { CacheApiService, CatalogAdminApiService, CatalogApiService, ConfigurationProcessorsApiService, ConfigurationSettingsApiService, ContextDefinitionAdminApiService, DocumentAttachmentApiService, EndpointsAdminApiService, FlowsApiService, FunctionsAdminApiService, GuidedSellingApiService, GuidedSellingsAdminApiService, OrchestrationsAdminApiService, OrchestrationsApiService, PCMApiService, PicklistsAdminApiService, ProductsAdminApiService, SalesforceApiService, SalesTransactionApiService, ShoppingCartSettingsApiService, UIDefinitionsAdminApiService, UITemplatesAdminApiService, VeloceObjectsAdminApiService, } from './services';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class ApiV2Module {
|
7
|
+
}
|
8
|
+
ApiV2Module.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApiV2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
9
|
+
ApiV2Module.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ApiV2Module, imports: [HttpClientModule] });
|
10
|
+
ApiV2Module.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApiV2Module, providers: [
|
11
|
+
BaseHttpService,
|
12
|
+
CacheApiService,
|
13
|
+
CatalogAdminApiService,
|
14
|
+
CatalogApiService,
|
15
|
+
ConfigurationProcessorsApiService,
|
16
|
+
ConfigurationSettingsApiService,
|
17
|
+
ContextDefinitionAdminApiService,
|
18
|
+
DocumentAttachmentApiService,
|
19
|
+
EndpointsAdminApiService,
|
20
|
+
FlowsApiService,
|
21
|
+
OrchestrationsAdminApiService,
|
22
|
+
OrchestrationsApiService,
|
23
|
+
PCMApiService,
|
24
|
+
PicklistsAdminApiService,
|
25
|
+
ProductsAdminApiService,
|
26
|
+
FunctionsAdminApiService,
|
27
|
+
GuidedSellingsAdminApiService,
|
28
|
+
GuidedSellingApiService,
|
29
|
+
SalesforceApiService,
|
30
|
+
SalesTransactionApiService,
|
31
|
+
ShoppingCartSettingsApiService,
|
32
|
+
UIDefinitionsAdminApiService,
|
33
|
+
UITemplatesAdminApiService,
|
34
|
+
VeloceObjectsAdminApiService,
|
35
|
+
XrayService,
|
36
|
+
], imports: [HttpClientModule] });
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApiV2Module, decorators: [{
|
38
|
+
type: NgModule,
|
39
|
+
args: [{
|
40
|
+
imports: [HttpClientModule],
|
41
|
+
providers: [
|
42
|
+
BaseHttpService,
|
43
|
+
CacheApiService,
|
44
|
+
CatalogAdminApiService,
|
45
|
+
CatalogApiService,
|
46
|
+
ConfigurationProcessorsApiService,
|
47
|
+
ConfigurationSettingsApiService,
|
48
|
+
ContextDefinitionAdminApiService,
|
49
|
+
DocumentAttachmentApiService,
|
50
|
+
EndpointsAdminApiService,
|
51
|
+
FlowsApiService,
|
52
|
+
OrchestrationsAdminApiService,
|
53
|
+
OrchestrationsApiService,
|
54
|
+
PCMApiService,
|
55
|
+
PicklistsAdminApiService,
|
56
|
+
ProductsAdminApiService,
|
57
|
+
FunctionsAdminApiService,
|
58
|
+
GuidedSellingsAdminApiService,
|
59
|
+
GuidedSellingApiService,
|
60
|
+
SalesforceApiService,
|
61
|
+
SalesTransactionApiService,
|
62
|
+
ShoppingCartSettingsApiService,
|
63
|
+
UIDefinitionsAdminApiService,
|
64
|
+
UITemplatesAdminApiService,
|
65
|
+
VeloceObjectsAdminApiService,
|
66
|
+
XrayService,
|
67
|
+
],
|
68
|
+
}]
|
69
|
+
}] });
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXYyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3YyL2FwaS12Mi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixpQ0FBaUMsRUFDakMsK0JBQStCLEVBQy9CLGdDQUFnQyxFQUNoQyw0QkFBNEIsRUFDNUIsd0JBQXdCLEVBQ3hCLGVBQWUsRUFDZix3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3ZCLDZCQUE2QixFQUM3Qiw2QkFBNkIsRUFDN0Isd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYix3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3ZCLG9CQUFvQixFQUNwQiwwQkFBMEIsRUFDMUIsOEJBQThCLEVBQzlCLDRCQUE0QixFQUM1QiwwQkFBMEIsRUFDMUIsNEJBQTRCLEdBQzdCLE1BQU0sWUFBWSxDQUFDOztBQWdDcEIsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxZQTdCWixnQkFBZ0I7eUdBNkJmLFdBQVcsYUE1Qlg7UUFDVCxlQUFlO1FBQ2YsZUFBZTtRQUNmLHNCQUFzQjtRQUN0QixpQkFBaUI7UUFDakIsaUNBQWlDO1FBQ2pDLCtCQUErQjtRQUMvQixnQ0FBZ0M7UUFDaEMsNEJBQTRCO1FBQzVCLHdCQUF3QjtRQUN4QixlQUFlO1FBQ2YsNkJBQTZCO1FBQzdCLHdCQUF3QjtRQUN4QixhQUFhO1FBQ2Isd0JBQXdCO1FBQ3hCLHVCQUF1QjtRQUN2Qix3QkFBd0I7UUFDeEIsNkJBQTZCO1FBQzdCLHVCQUF1QjtRQUN2QixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLDhCQUE4QjtRQUM5Qiw0QkFBNEI7UUFDNUIsMEJBQTBCO1FBQzFCLDRCQUE0QjtRQUM1QixXQUFXO0tBQ1osWUEzQlMsZ0JBQWdCOzJGQTZCZixXQUFXO2tCQTlCdkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDM0IsU0FBUyxFQUFFO3dCQUNULGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsaUNBQWlDO3dCQUNqQywrQkFBK0I7d0JBQy9CLGdDQUFnQzt3QkFDaEMsNEJBQTRCO3dCQUM1Qix3QkFBd0I7d0JBQ3hCLGVBQWU7d0JBQ2YsNkJBQTZCO3dCQUM3Qix3QkFBd0I7d0JBQ3hCLGFBQWE7d0JBQ2Isd0JBQXdCO3dCQUN4Qix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsNkJBQTZCO3dCQUM3Qix1QkFBdUI7d0JBQ3ZCLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQiw4QkFBOEI7d0JBQzlCLDRCQUE0Qjt3QkFDNUIsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLFdBQVc7cUJBQ1o7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VIdHRwU2VydmljZSwgWHJheVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7XG4gIENhY2hlQXBpU2VydmljZSxcbiAgQ2F0YWxvZ0FkbWluQXBpU2VydmljZSxcbiAgQ2F0YWxvZ0FwaVNlcnZpY2UsXG4gIENvbmZpZ3VyYXRpb25Qcm9jZXNzb3JzQXBpU2VydmljZSxcbiAgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSxcbiAgQ29udGV4dERlZmluaXRpb25BZG1pbkFwaVNlcnZpY2UsXG4gIERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UsXG4gIEVuZHBvaW50c0FkbWluQXBpU2VydmljZSxcbiAgRmxvd3NBcGlTZXJ2aWNlLFxuICBGdW5jdGlvbnNBZG1pbkFwaVNlcnZpY2UsXG4gIEd1aWRlZFNlbGxpbmdBcGlTZXJ2aWNlLFxuICBHdWlkZWRTZWxsaW5nc0FkbWluQXBpU2VydmljZSxcbiAgT3JjaGVzdHJhdGlvbnNBZG1pbkFwaVNlcnZpY2UsXG4gIE9yY2hlc3RyYXRpb25zQXBpU2VydmljZSxcbiAgUENNQXBpU2VydmljZSxcbiAgUGlja2xpc3RzQWRtaW5BcGlTZXJ2aWNlLFxuICBQcm9kdWN0c0FkbWluQXBpU2VydmljZSxcbiAgU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gIFNhbGVzVHJhbnNhY3Rpb25BcGlTZXJ2aWNlLFxuICBTaG9wcGluZ0NhcnRTZXR0aW5nc0FwaVNlcnZpY2UsXG4gIFVJRGVmaW5pdGlvbnNBZG1pbkFwaVNlcnZpY2UsXG4gIFVJVGVtcGxhdGVzQWRtaW5BcGlTZXJ2aWNlLFxuICBWZWxvY2VPYmplY3RzQWRtaW5BcGlTZXJ2aWNlLFxufSBmcm9tICcuL3NlcnZpY2VzJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0h0dHBDbGllbnRNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtcbiAgICBCYXNlSHR0cFNlcnZpY2UsXG4gICAgQ2FjaGVBcGlTZXJ2aWNlLFxuICAgIENhdGFsb2dBZG1pbkFwaVNlcnZpY2UsXG4gICAgQ2F0YWxvZ0FwaVNlcnZpY2UsXG4gICAgQ29uZmlndXJhdGlvblByb2Nlc3NvcnNBcGlTZXJ2aWNlLFxuICAgIENvbmZpZ3VyYXRpb25TZXR0aW5nc0FwaVNlcnZpY2UsXG4gICAgQ29udGV4dERlZmluaXRpb25BZG1pbkFwaVNlcnZpY2UsXG4gICAgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSxcbiAgICBFbmRwb2ludHNBZG1pbkFwaVNlcnZpY2UsXG4gICAgRmxvd3NBcGlTZXJ2aWNlLFxuICAgIE9yY2hlc3RyYXRpb25zQWRtaW5BcGlTZXJ2aWNlLFxuICAgIE9yY2hlc3RyYXRpb25zQXBpU2VydmljZSxcbiAgICBQQ01BcGlTZXJ2aWNlLFxuICAgIFBpY2tsaXN0c0FkbWluQXBpU2VydmljZSxcbiAgICBQcm9kdWN0c0FkbWluQXBpU2VydmljZSxcbiAgICBGdW5jdGlvbnNBZG1pbkFwaVNlcnZpY2UsXG4gICAgR3VpZGVkU2VsbGluZ3NBZG1pbkFwaVNlcnZpY2UsXG4gICAgR3VpZGVkU2VsbGluZ0FwaVNlcnZpY2UsXG4gICAgU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gICAgU2FsZXNUcmFuc2FjdGlvbkFwaVNlcnZpY2UsXG4gICAgU2hvcHBpbmdDYXJ0U2V0dGluZ3NBcGlTZXJ2aWNlLFxuICAgIFVJRGVmaW5pdGlvbnNBZG1pbkFwaVNlcnZpY2UsXG4gICAgVUlUZW1wbGF0ZXNBZG1pbkFwaVNlcnZpY2UsXG4gICAgVmVsb2NlT2JqZWN0c0FkbWluQXBpU2VydmljZSxcbiAgICBYcmF5U2VydmljZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXBpVjJNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,4 @@
|
|
1
|
+
export * from './api-v2.module';
|
2
|
+
export * from './services';
|
3
|
+
export * from './types';
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FwaS92Mi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcGktdjIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG4iXX0=
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@veloceapps/core";
|
4
|
+
export class CacheApiService {
|
5
|
+
constructor(httpService) {
|
6
|
+
this.httpService = httpService;
|
7
|
+
this.SERVICE_URL = '/v2/cache/evict';
|
8
|
+
}
|
9
|
+
clear$(name, options) {
|
10
|
+
return this.httpService.api({
|
11
|
+
method: 'get',
|
12
|
+
url: `${this.SERVICE_URL}/` + name,
|
13
|
+
...options,
|
14
|
+
});
|
15
|
+
}
|
16
|
+
}
|
17
|
+
CacheApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CacheApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
18
|
+
CacheApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CacheApiService });
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CacheApiService, decorators: [{
|
20
|
+
type: Injectable
|
21
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS92Mi9zZXJ2aWNlcy9jYWNoZS1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFBb0IsV0FBNEI7UUFBNUIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBRi9CLGdCQUFXLEdBQVcsaUJBQWlCLENBQUM7SUFFTixDQUFDO0lBRTdDLE1BQU0sQ0FBQyxJQUE2QixFQUFFLE9BQXdDO1FBQ25GLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsSUFBSTtZQUNsQyxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDOzs0R0FYVSxlQUFlO2dIQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VIdHRwU2VydmljZSwgRGF0YUFkbWluaXN0cmF0aW9uRmllbGQsIEh0dHBSZXF1ZXN0Q29uZmlndXJhYmxlT3B0aW9ucyB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2FjaGVBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTDogc3RyaW5nID0gJy92Mi9jYWNoZS9ldmljdCc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBjbGVhciQobmFtZTogRGF0YUFkbWluaXN0cmF0aW9uRmllbGQsIG9wdGlvbnM/OiBIdHRwUmVxdWVzdENvbmZpZ3VyYWJsZU9wdGlvbnMpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vYCArIG5hbWUsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,192 @@
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
2
|
+
import { Injectable } from '@angular/core';
|
3
|
+
import { noop } from 'rxjs';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "@veloceapps/core";
|
6
|
+
export class CatalogAdminApiService {
|
7
|
+
constructor(baseHttpService) {
|
8
|
+
this.baseHttpService = baseHttpService;
|
9
|
+
this.serviceUrl = '/v2/catalogs';
|
10
|
+
this.fetchCatalogs$ = (searchParams) => {
|
11
|
+
const params = new HttpParams({ fromObject: { ...searchParams } });
|
12
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}`, params });
|
13
|
+
};
|
14
|
+
this.searchCatalogs$ = (searchParams, expression) => {
|
15
|
+
const params = new HttpParams({ fromObject: { ...searchParams } });
|
16
|
+
return this.baseHttpService.api({
|
17
|
+
method: 'post',
|
18
|
+
url: `${this.serviceUrl}/search`,
|
19
|
+
params,
|
20
|
+
body: expression || {},
|
21
|
+
});
|
22
|
+
};
|
23
|
+
this.fetchCategories$ = (catalogId) => {
|
24
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}/${catalogId}/categories` });
|
25
|
+
};
|
26
|
+
this.searchProducts$ = (catalogId, categoryId) => {
|
27
|
+
return this.baseHttpService.api({
|
28
|
+
method: 'post',
|
29
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/search`,
|
30
|
+
body: {},
|
31
|
+
});
|
32
|
+
};
|
33
|
+
this.fetchAttributes$ = (catalogId, categoryId) => {
|
34
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes` });
|
35
|
+
};
|
36
|
+
this.createNewCatalog$ = (catalogData) => {
|
37
|
+
return this.baseHttpService.api({
|
38
|
+
url: `${this.serviceUrl}`,
|
39
|
+
method: 'post',
|
40
|
+
body: catalogData,
|
41
|
+
});
|
42
|
+
};
|
43
|
+
this.duplicateCatalog$ = (cloneRequest) => {
|
44
|
+
return this.baseHttpService.api({
|
45
|
+
url: `${this.serviceUrl}/${cloneRequest.id}/clone`,
|
46
|
+
method: 'post',
|
47
|
+
body: cloneRequest,
|
48
|
+
});
|
49
|
+
};
|
50
|
+
this.updateCatalog$ = (data) => {
|
51
|
+
return this.baseHttpService.api({
|
52
|
+
url: `${this.serviceUrl}/${data.id}`,
|
53
|
+
method: 'put',
|
54
|
+
body: data,
|
55
|
+
});
|
56
|
+
};
|
57
|
+
this.removeCatalog$ = (id) => {
|
58
|
+
return this.baseHttpService.api({
|
59
|
+
url: `${this.serviceUrl}/${id}`,
|
60
|
+
method: 'delete',
|
61
|
+
});
|
62
|
+
};
|
63
|
+
this.restoreCatalog$ = (id) => {
|
64
|
+
return this.baseHttpService.api({
|
65
|
+
url: `${this.serviceUrl}/${id}/restore`,
|
66
|
+
method: 'patch',
|
67
|
+
});
|
68
|
+
};
|
69
|
+
this.createNewCategory$ = (categoryData) => {
|
70
|
+
return this.baseHttpService.api({
|
71
|
+
url: `${this.serviceUrl}/${categoryData.catalogId}/categories`,
|
72
|
+
method: 'post',
|
73
|
+
body: categoryData,
|
74
|
+
});
|
75
|
+
};
|
76
|
+
this.updateCategory$ = (category) => {
|
77
|
+
return this.baseHttpService.api({
|
78
|
+
url: `${this.serviceUrl}/${category.catalogId}/categories/${category.id}`,
|
79
|
+
method: 'put',
|
80
|
+
body: category,
|
81
|
+
});
|
82
|
+
};
|
83
|
+
this.duplicateCategory$ = (catalogId, cloneRequest) => {
|
84
|
+
return this.baseHttpService.api({
|
85
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${cloneRequest.id}/clone`,
|
86
|
+
method: 'post',
|
87
|
+
body: cloneRequest,
|
88
|
+
});
|
89
|
+
};
|
90
|
+
this.removeCategory$ = (id, catalogId) => {
|
91
|
+
return this.baseHttpService.api({
|
92
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${id}`,
|
93
|
+
method: 'delete',
|
94
|
+
});
|
95
|
+
};
|
96
|
+
this.restoreCategory$ = (id, catalogId) => {
|
97
|
+
return this.baseHttpService.api({
|
98
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${id}/restore`,
|
99
|
+
method: 'patch',
|
100
|
+
});
|
101
|
+
};
|
102
|
+
this.removeAttribute$ = ({ catalogId, categoryId, data, }) => {
|
103
|
+
return this.baseHttpService.api({
|
104
|
+
method: 'delete',
|
105
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}`,
|
106
|
+
body: data,
|
107
|
+
});
|
108
|
+
};
|
109
|
+
this.restoreAttribute$ = ({ catalogId, categoryId, data, }) => {
|
110
|
+
return this.baseHttpService.api({
|
111
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}/restore`,
|
112
|
+
method: 'patch',
|
113
|
+
});
|
114
|
+
};
|
115
|
+
this.createNewAttribute$ = ({ catalogId, categoryId, data, }) => {
|
116
|
+
return this.baseHttpService.api({
|
117
|
+
method: 'post',
|
118
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes`,
|
119
|
+
body: data,
|
120
|
+
});
|
121
|
+
};
|
122
|
+
this.updateAttribute$ = ({ catalogId, categoryId, data, }) => {
|
123
|
+
return this.baseHttpService.api({
|
124
|
+
method: 'put',
|
125
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}`,
|
126
|
+
body: data,
|
127
|
+
});
|
128
|
+
};
|
129
|
+
this.searchProductCandidates$ = (catalogId, categoryId, expression, searchParams) => {
|
130
|
+
const params = new HttpParams({ fromObject: { ...searchParams } });
|
131
|
+
return this.baseHttpService.api({
|
132
|
+
method: 'post',
|
133
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/candidates/search`,
|
134
|
+
params,
|
135
|
+
body: expression,
|
136
|
+
});
|
137
|
+
};
|
138
|
+
this.addProduct$ = (product, catalogId, categoryId) => {
|
139
|
+
return this.baseHttpService.api({
|
140
|
+
method: 'post',
|
141
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products`,
|
142
|
+
body: product,
|
143
|
+
});
|
144
|
+
};
|
145
|
+
this.updateProduct$ = (product, catalogId, categoryId) => {
|
146
|
+
return this.baseHttpService.api({
|
147
|
+
method: 'put',
|
148
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/${product.id}`,
|
149
|
+
body: product,
|
150
|
+
});
|
151
|
+
};
|
152
|
+
this.removeProduct$ = ({ catalogId, categoryId, data, }) => {
|
153
|
+
return this.baseHttpService.api({
|
154
|
+
method: 'delete',
|
155
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/${data.id}`,
|
156
|
+
});
|
157
|
+
};
|
158
|
+
}
|
159
|
+
attachImage$(catalogId, categoryId, file) {
|
160
|
+
const data = new FormData();
|
161
|
+
data.append('image', file);
|
162
|
+
return this.baseHttpService.upload({
|
163
|
+
method: 'post',
|
164
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
|
165
|
+
body: data,
|
166
|
+
});
|
167
|
+
}
|
168
|
+
removeImage$(catalogId, categoryId) {
|
169
|
+
return this.baseHttpService.api({
|
170
|
+
method: 'delete',
|
171
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
|
172
|
+
});
|
173
|
+
}
|
174
|
+
fetchImage$(catalogId, categoryId) {
|
175
|
+
return this.baseHttpService.api({
|
176
|
+
url: this.getImageUrl(catalogId, categoryId),
|
177
|
+
method: 'get',
|
178
|
+
responseType: 'blob',
|
179
|
+
errorHandler: noop,
|
180
|
+
});
|
181
|
+
}
|
182
|
+
getImageUrl(catalogId, categoryId) {
|
183
|
+
return `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`;
|
184
|
+
}
|
185
|
+
}
|
186
|
+
CatalogAdminApiService.MAX_RESULTS = 60;
|
187
|
+
CatalogAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogAdminApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
188
|
+
CatalogAdminApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogAdminApiService });
|
189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogAdminApiService, decorators: [{
|
190
|
+
type: Injectable
|
191
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3YyL3NlcnZpY2VzL2NhdGFsb2ctYWRtaW4tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFjM0MsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQzs7O0FBSXhDLE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBRm5DLGVBQVUsR0FBVyxjQUFjLENBQUM7UUFJOUMsbUJBQWMsR0FBRyxDQUFDLFlBQWdDLEVBQXlCLEVBQUU7WUFDbEYsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxHQUFHLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNuRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDO1FBRUssb0JBQWUsR0FBRyxDQUFDLFlBQWdDLEVBQUUsVUFBdUIsRUFBeUIsRUFBRTtZQUM1RyxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLEdBQUcsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRW5FLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVM7Z0JBQ2hDLE1BQU07Z0JBQ04sSUFB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R0FBRyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQztZQUM1QyxNQUFNLEVBQUUsS0FBSztZQUNiLFlBQVksRUFBRSxNQUFNO1lBQ3BCLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsU0FBaUIsRUFBRSxVQUFrQjtRQUN0RCxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLGVBQWUsVUFBVSxRQUFRLENBQUM7SUFDMUUsQ0FBQzs7QUE3T2Esa0NBQVcsR0FBRyxFQUFFLENBQUM7bUhBRHBCLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBDYXRhbG9nLFxuICBDYXRhbG9nUHJvZHVjdCxcbiAgQ2F0ZWdvcnksXG4gIENhdGVnb3J5RmlsdGVyLFxuICBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGEsXG4gIEV4cHJlc3Npb24sXG4gIE5ld0NhdGFsb2csXG4gIE5ld0NhdGVnb3J5LFxuICBOZXdDYXRlZ29yeUZpbHRlcixcbiAgUHJvZHVjdCxcbn0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBub29wLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDbG9uZVJlcXVlc3QsIFF1ZXJ5U2VhcmNoUGFyYW1zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0FkbWluQXBpU2VydmljZSB7XG4gIHB1YmxpYyBzdGF0aWMgTUFYX1JFU1VMVFMgPSA2MDtcblxuICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2VVcmw6IHN0cmluZyA9ICcvdjIvY2F0YWxvZ3MnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFzZUh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGZldGNoQ2F0YWxvZ3MkID0gKHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zKTogT2JzZXJ2YWJsZTxDYXRhbG9nW10+ID0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgLi4uc2VhcmNoUGFyYW1zIH0gfSk7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfWAsIHBhcmFtcyB9KTtcbiAgfTtcblxuICBwdWJsaWMgc2VhcmNoQ2F0YWxvZ3MkID0gKHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zLCBleHByZXNzaW9uPzogRXhwcmVzc2lvbik6IE9ic2VydmFibGU8Q2F0YWxvZ1tdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS9zZWFyY2hgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogZXhwcmVzc2lvbiB8fCB7fSxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgZmV0Y2hDYXRlZ29yaWVzJCA9IChjYXRhbG9nSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q2F0ZWdvcnlbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXNgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBzZWFyY2hQcm9kdWN0cyQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8UHJvZHVjdFtdPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L3Byb2R1Y3RzL3NlYXJjaGAsXG4gICAgICBib2R5OiB7fSxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgZmV0Y2hBdHRyaWJ1dGVzJCA9IChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDYXRlZ29yeUZpbHRlcltdPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXNgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVOZXdDYXRhbG9nJCA9IChjYXRhbG9nRGF0YTogTmV3Q2F0YWxvZyk6IE9ic2VydmFibGU8Q2F0YWxvZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9YCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2F0YWxvZ0RhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGR1cGxpY2F0ZUNhdGFsb2ckID0gKGNsb25lUmVxdWVzdDogQ2xvbmVSZXF1ZXN0KTogT2JzZXJ2YWJsZTxDYXRhbG9nPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjbG9uZVJlcXVlc3QuaWR9L2Nsb25lYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2xvbmVSZXF1ZXN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyB1cGRhdGVDYXRhbG9nJCA9IChkYXRhOiBDYXRhbG9nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtkYXRhLmlkfWAsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgYm9keTogZGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgcmVtb3ZlQ2F0YWxvZyQgPSAoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlc3RvcmVDYXRhbG9nJCA9IChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGNyZWF0ZU5ld0NhdGVnb3J5JCA9IChjYXRlZ29yeURhdGE6IE5ld0NhdGVnb3J5KTogT2JzZXJ2YWJsZTxDYXRlZ29yeT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0ZWdvcnlEYXRhLmNhdGFsb2dJZH0vY2F0ZWdvcmllc2AsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNhdGVnb3J5RGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgdXBkYXRlQ2F0ZWdvcnkkID0gKGNhdGVnb3J5OiBDYXRlZ29yeSk6IE9ic2VydmFibGU8Q2F0ZWdvcnk+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGVnb3J5LmNhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5LmlkfWAsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgYm9keTogY2F0ZWdvcnksXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGR1cGxpY2F0ZUNhdGVnb3J5JCA9IChjYXRhbG9nSWQ6IHN0cmluZywgY2xvbmVSZXF1ZXN0OiBDbG9uZVJlcXVlc3QpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8c3RyaW5nPih7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjbG9uZVJlcXVlc3QuaWR9L2Nsb25lYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2xvbmVSZXF1ZXN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVDYXRlZ29yeSQgPSAoaWQ6IHN0cmluZywgY2F0YWxvZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQ2F0ZWdvcnkkID0gKGlkOiBzdHJpbmcsIGNhdGFsb2dJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtpZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlbW92ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUZpbHRlcj4pOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXMvJHtkYXRhLmlkfWAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQXR0cmlidXRlJCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPENhdGVnb3J5RmlsdGVyPik6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlcy8ke2RhdGEuaWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVOZXdBdHRyaWJ1dGUkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8TmV3Q2F0ZWdvcnlGaWx0ZXI+KTogT2JzZXJ2YWJsZTxDYXRlZ29yeUZpbHRlcj4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzYCxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUZpbHRlcj4pOiBPYnNlcnZhYmxlPENhdGVnb3J5RmlsdGVyPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlcy8ke2RhdGEuaWR9YCxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHNlYXJjaFByb2R1Y3RDYW5kaWRhdGVzJCA9IChcbiAgICBjYXRhbG9nSWQ6IHN0cmluZyxcbiAgICBjYXRlZ29yeUlkOiBzdHJpbmcsXG4gICAgZXhwcmVzc2lvbjogRXhwcmVzc2lvbixcbiAgICBzZWFyY2hQYXJhbXM6IFF1ZXJ5U2VhcmNoUGFyYW1zLFxuICApOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4gPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogeyAuLi5zZWFyY2hQYXJhbXMgfSB9KTtcblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9jYW5kaWRhdGVzL3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBhZGRQcm9kdWN0JCA9IChwcm9kdWN0OiBQcm9kdWN0LCBjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L3Byb2R1Y3RzYCxcbiAgICAgIGJvZHk6IHByb2R1Y3QsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZVByb2R1Y3QkID0gKFxuICAgIHByb2R1Y3Q6IFBhcnRpYWw8UHJvZHVjdD4sXG4gICAgY2F0YWxvZ0lkOiBzdHJpbmcsXG4gICAgY2F0ZWdvcnlJZDogc3RyaW5nLFxuICApOiBPYnNlcnZhYmxlPENhdGFsb2dQcm9kdWN0PiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHMvJHtwcm9kdWN0LmlkfWAsXG4gICAgICBib2R5OiBwcm9kdWN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVQcm9kdWN0JCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPFByb2R1Y3Q+KTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy8ke2RhdGEuaWR9YCxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgYXR0YWNoSW1hZ2UkKGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcsIGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCBkYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZGF0YS5hcHBlbmQoJ2ltYWdlJywgZmlsZSk7XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UudXBsb2FkKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vaW1hZ2VgLFxuICAgICAgYm9keTogZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJbWFnZSQoY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2ltYWdlYCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaEltYWdlJChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxGaWxlPiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IHRoaXMuZ2V0SW1hZ2VVcmwoY2F0YWxvZ0lkLCBjYXRlZ29yeUlkKSxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgIGVycm9ySGFuZGxlcjogbm9vcCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRJbWFnZVVybChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9pbWFnZWA7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,90 @@
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
2
|
+
import { Injectable } from '@angular/core';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@veloceapps/core";
|
5
|
+
export class CatalogApiService {
|
6
|
+
constructor(service) {
|
7
|
+
this.service = service;
|
8
|
+
this.serviceUrl = '/v2/product-catalogs';
|
9
|
+
}
|
10
|
+
fetchCatalogs$() {
|
11
|
+
return this.service.api({
|
12
|
+
method: 'get',
|
13
|
+
url: `${this.serviceUrl}`,
|
14
|
+
});
|
15
|
+
}
|
16
|
+
searchCatalogs$(searchParams, expression) {
|
17
|
+
const params = new HttpParams({ fromObject: searchParams });
|
18
|
+
return this.service.api({
|
19
|
+
method: 'post',
|
20
|
+
url: `${this.serviceUrl}/search`,
|
21
|
+
params,
|
22
|
+
body: expression,
|
23
|
+
});
|
24
|
+
}
|
25
|
+
getCatalog$(id) {
|
26
|
+
return this.service.api({
|
27
|
+
method: 'get',
|
28
|
+
url: `${this.serviceUrl}/${id}`,
|
29
|
+
});
|
30
|
+
}
|
31
|
+
fetchCategories$(catalogId) {
|
32
|
+
return this.service.api({
|
33
|
+
method: 'get',
|
34
|
+
url: `${this.serviceUrl}/${catalogId}/categories`,
|
35
|
+
});
|
36
|
+
}
|
37
|
+
fetchCatalogProducts$(catalogId, searchParams, context) {
|
38
|
+
const params = new HttpParams({ fromObject: searchParams });
|
39
|
+
return this.service.api({
|
40
|
+
method: 'post',
|
41
|
+
url: `${this.serviceUrl}/${catalogId}/products`,
|
42
|
+
params,
|
43
|
+
body: context,
|
44
|
+
});
|
45
|
+
}
|
46
|
+
fetchCategoryProducts$(catalogId, categoryId, searchParams, context) {
|
47
|
+
const params = new HttpParams({ fromObject: searchParams });
|
48
|
+
return this.service.api({
|
49
|
+
method: 'post',
|
50
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products`,
|
51
|
+
params,
|
52
|
+
body: context,
|
53
|
+
});
|
54
|
+
}
|
55
|
+
searchCategoryProducts$(catalogId, categoryId, searchParams, searchRequest, context) {
|
56
|
+
const params = new HttpParams({ fromObject: searchParams });
|
57
|
+
return this.service.api({
|
58
|
+
method: 'post',
|
59
|
+
url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/search`,
|
60
|
+
params,
|
61
|
+
body: {
|
62
|
+
configurationContext: context,
|
63
|
+
request: searchRequest,
|
64
|
+
},
|
65
|
+
});
|
66
|
+
}
|
67
|
+
fetchEligibleProducts$(searchParams, context) {
|
68
|
+
const params = new HttpParams({ fromObject: searchParams });
|
69
|
+
return this.service.api({
|
70
|
+
method: 'post',
|
71
|
+
url: `${this.serviceUrl}/products`,
|
72
|
+
params: params,
|
73
|
+
body: context,
|
74
|
+
});
|
75
|
+
}
|
76
|
+
fetchProducts$(searchParams) {
|
77
|
+
const params = new HttpParams({ fromObject: searchParams });
|
78
|
+
return this.service.api({
|
79
|
+
method: 'get',
|
80
|
+
url: `${this.serviceUrl}/products`,
|
81
|
+
params: params,
|
82
|
+
});
|
83
|
+
}
|
84
|
+
}
|
85
|
+
CatalogApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
86
|
+
CatalogApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogApiService });
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CatalogApiService, decorators: [{
|
88
|
+
type: Injectable
|
89
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3YyL3NlcnZpY2VzL2NhdGFsb2ctYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU0zQyxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLFlBQW9CLE9BQXdCO1FBQXhCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBRjNCLGVBQVUsR0FBVyxzQkFBc0IsQ0FBQztJQUVkLENBQUM7SUFFekMsY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtTQUMxQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZSxDQUFDLFlBQWdDLEVBQUUsVUFBdUI7UUFDOUUsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU1RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsU0FBUztZQUNoQyxNQUFNO1lBQ04sSUFBSSxFQUFFLFVBQVU7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRTtTQUNoQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsU0FBaUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksU0FBUyxhQUFhO1NBQ2xELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxxQkFBcUIsQ0FDMUIsU0FBaUIsRUFDakIsWUFBZ0MsRUFDaEMsT0FBZ0M7UUFFaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU1RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLFdBQVc7WUFDL0MsTUFBTTtZQUNOLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLHNCQUFzQixDQUMzQixTQUFpQixFQUNqQixVQUFrQixFQUNsQixZQUFnQyxFQUNoQyxPQUFnQztRQUVoQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFNBQVMsZUFBZSxVQUFVLFdBQVc7WUFDeEUsTUFBTTtZQUNOLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLHVCQUF1QixDQUM1QixTQUFpQixFQUNqQixVQUFrQixFQUNsQixZQUFnQyxFQUNoQyxhQUE2QixFQUM3QixPQUFnQztRQUVoQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFNBQVMsZUFBZSxVQUFVLGtCQUFrQjtZQUMvRSxNQUFNO1lBQ04sSUFBSSxFQUFFO2dCQUNKLG9CQUFvQixFQUFFLE9BQU87Z0JBQzdCLE9BQU8sRUFBRSxhQUFhO2FBQ3ZCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLHNCQUFzQixDQUMzQixZQUFnQyxFQUNoQyxPQUFnQztRQUVoQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxXQUFXO1lBQ2xDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLE9BQU87U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLFlBQWdDO1FBQ3BELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFdBQVc7WUFDbEMsTUFBTSxFQUFFLE1BQU07U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0E5R1UsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIENhdGFsb2csIENhdGVnb3J5LCBFeHByZXNzaW9uLCBQcm9kdWN0LCBTZWFyY2hSZXF1ZXN0IH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBRdWVyeVNlYXJjaFBhcmFtcyB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENhdGFsb2dBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL3YyL3Byb2R1Y3QtY2F0YWxvZ3MnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaENhdGFsb2dzJCgpOiBPYnNlcnZhYmxlPENhdGFsb2dbXT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaENhdGFsb2dzJChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcywgZXhwcmVzc2lvbj86IEV4cHJlc3Npb24pOiBPYnNlcnZhYmxlPENhdGFsb2dbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogc2VhcmNoUGFyYW1zIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IGV4cHJlc3Npb24sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2F0YWxvZyQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q2F0YWxvZz4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH1gLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGZldGNoQ2F0ZWdvcmllcyQoY2F0YWxvZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENhdGVnb3J5W10+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzYCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaENhdGFsb2dQcm9kdWN0cyQoXG4gICAgY2F0YWxvZ0lkOiBzdHJpbmcsXG4gICAgc2VhcmNoUGFyYW1zPzogUXVlcnlTZWFyY2hQYXJhbXMsXG4gICAgY29udGV4dD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICk6IE9ic2VydmFibGU8UHJvZHVjdFtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiBzZWFyY2hQYXJhbXMgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vcHJvZHVjdHNgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogY29udGV4dCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaENhdGVnb3J5UHJvZHVjdHMkKFxuICAgIGNhdGFsb2dJZDogc3RyaW5nLFxuICAgIGNhdGVnb3J5SWQ6IHN0cmluZyxcbiAgICBzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgICBjb250ZXh0PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHNgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogY29udGV4dCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hDYXRlZ29yeVByb2R1Y3RzJChcbiAgICBjYXRhbG9nSWQ6IHN0cmluZyxcbiAgICBjYXRlZ29yeUlkOiBzdHJpbmcsXG4gICAgc2VhcmNoUGFyYW1zPzogUXVlcnlTZWFyY2hQYXJhbXMsXG4gICAgc2VhcmNoUmVxdWVzdD86IFNlYXJjaFJlcXVlc3QsXG4gICAgY29udGV4dD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICk6IE9ic2VydmFibGU8UHJvZHVjdFtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiBzZWFyY2hQYXJhbXMgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L3Byb2R1Y3RzL3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiB7XG4gICAgICAgIGNvbmZpZ3VyYXRpb25Db250ZXh0OiBjb250ZXh0LFxuICAgICAgICByZXF1ZXN0OiBzZWFyY2hSZXF1ZXN0LFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaEVsaWdpYmxlUHJvZHVjdHMkKFxuICAgIHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zLFxuICAgIGNvbnRleHQ/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICApOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogc2VhcmNoUGFyYW1zIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vcHJvZHVjdHNgLFxuICAgICAgcGFyYW1zOiBwYXJhbXMsXG4gICAgICBib2R5OiBjb250ZXh0LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGZldGNoUHJvZHVjdHMkKHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vcHJvZHVjdHNgLFxuICAgICAgcGFyYW1zOiBwYXJhbXMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@veloceapps/core";
|
4
|
+
export class ConfigurationProcessorsApiService {
|
5
|
+
constructor(baseHttpService) {
|
6
|
+
this.baseHttpService = baseHttpService;
|
7
|
+
this.serviceUrl = '/v2/configuration/processors/owners';
|
8
|
+
this.fetchConfigurationProcessors$ = (ownerId) => {
|
9
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}/${ownerId}` });
|
10
|
+
};
|
11
|
+
this.createConfigurationProcessors$ = (configurationProcessor) => {
|
12
|
+
return this.baseHttpService.api({
|
13
|
+
method: 'post',
|
14
|
+
url: `${this.serviceUrl}/${configurationProcessor.ownerId}`,
|
15
|
+
body: configurationProcessor,
|
16
|
+
});
|
17
|
+
};
|
18
|
+
this.updateConfigurationProcessors$ = (configurationProcessor) => {
|
19
|
+
return this.baseHttpService.api({
|
20
|
+
method: 'put',
|
21
|
+
url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,
|
22
|
+
body: configurationProcessor,
|
23
|
+
});
|
24
|
+
};
|
25
|
+
this.deleteConfigurationProcessors$ = (configurationProcessor) => {
|
26
|
+
return this.baseHttpService.api({
|
27
|
+
method: 'delete',
|
28
|
+
url: `${this.serviceUrl}/${configurationProcessor.ownerId}/${configurationProcessor.id}`,
|
29
|
+
});
|
30
|
+
};
|
31
|
+
}
|
32
|
+
}
|
33
|
+
ConfigurationProcessorsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationProcessorsApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
34
|
+
ConfigurationProcessorsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationProcessorsApiService });
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationProcessorsApiService, decorators: [{
|
36
|
+
type: Injectable
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1wcm9jZXNzb3JzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvdjIvc2VydmljZXMvY29uZmlndXJhdGlvbi1wcm9jZXNzb3JzLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUszQyxNQUFNLE9BQU8saUNBQWlDO0lBRzVDLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUZuQyxlQUFVLEdBQVcscUNBQXFDLENBQUM7UUFJckUsa0NBQTZCLEdBQUcsQ0FBQyxPQUFlLEVBQXdDLEVBQUU7WUFDL0YsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBMkIsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0RyxDQUFDLENBQUM7UUFFSyxtQ0FBOEIsR0FBRyxDQUN0QyxzQkFBOEMsRUFDVixFQUFFO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQXlCO2dCQUN0RCxNQUFNLEVBQUUsTUFBTTtnQkFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLHNCQUFzQixDQUFDLE9BQU8sRUFBRTtnQkFDM0QsSUFBSSxFQUFFLHNCQUFzQjthQUM3QixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUFFSyxtQ0FBOEIsR0FBRyxDQUN0QyxzQkFBOEMsRUFDVixFQUFFO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQXlCO2dCQUN0RCxNQUFNLEVBQUUsS0FBSztnQkFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLHNCQUFzQixDQUFDLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3hGLElBQUksRUFBRSxzQkFBc0I7YUFDN0IsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUssbUNBQThCLEdBQUcsQ0FBQyxzQkFBOEMsRUFBb0IsRUFBRTtZQUMzRyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxzQkFBc0IsQ0FBQyxPQUFPLElBQUksc0JBQXNCLENBQUMsRUFBRSxFQUFFO2FBQ3pGLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztJQS9CcUQsQ0FBQzs7OEhBSDdDLGlDQUFpQztrSUFBakMsaUNBQWlDOzJGQUFqQyxpQ0FBaUM7a0JBRDdDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIENvbmZpZ3VyYXRpb25Qcm9jZXNzb3IgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25Qcm9jZXNzb3JzQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2VydmljZVVybDogc3RyaW5nID0gJy92Mi9jb25maWd1cmF0aW9uL3Byb2Nlc3NvcnMvb3duZXJzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaENvbmZpZ3VyYXRpb25Qcm9jZXNzb3JzJCA9IChvd25lcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25Qcm9jZXNzb3JbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8Q29uZmlndXJhdGlvblByb2Nlc3NvcltdPih7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke293bmVySWR9YCB9KTtcbiAgfTtcblxuICBwdWJsaWMgY3JlYXRlQ29uZmlndXJhdGlvblByb2Nlc3NvcnMkID0gKFxuICAgIGNvbmZpZ3VyYXRpb25Qcm9jZXNzb3I6IENvbmZpZ3VyYXRpb25Qcm9jZXNzb3IsXG4gICk6IE9ic2VydmFibGU8Q29uZmlndXJhdGlvblByb2Nlc3Nvcj4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8Q29uZmlndXJhdGlvblByb2Nlc3Nvcj4oe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjb25maWd1cmF0aW9uUHJvY2Vzc29yLm93bmVySWR9YCxcbiAgICAgIGJvZHk6IGNvbmZpZ3VyYXRpb25Qcm9jZXNzb3IsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUNvbmZpZ3VyYXRpb25Qcm9jZXNzb3JzJCA9IChcbiAgICBjb25maWd1cmF0aW9uUHJvY2Vzc29yOiBDb25maWd1cmF0aW9uUHJvY2Vzc29yLFxuICApOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25Qcm9jZXNzb3I+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpPENvbmZpZ3VyYXRpb25Qcm9jZXNzb3I+KHtcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjb25maWd1cmF0aW9uUHJvY2Vzc29yLm93bmVySWR9LyR7Y29uZmlndXJhdGlvblByb2Nlc3Nvci5pZH1gLFxuICAgICAgYm9keTogY29uZmlndXJhdGlvblByb2Nlc3NvcixcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgZGVsZXRlQ29uZmlndXJhdGlvblByb2Nlc3NvcnMkID0gKGNvbmZpZ3VyYXRpb25Qcm9jZXNzb3I6IENvbmZpZ3VyYXRpb25Qcm9jZXNzb3IpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjb25maWd1cmF0aW9uUHJvY2Vzc29yLm93bmVySWR9LyR7Y29uZmlndXJhdGlvblByb2Nlc3Nvci5pZH1gLFxuICAgIH0pO1xuICB9O1xufVxuIl19
|
@@ -0,0 +1,89 @@
|
|
1
|
+
import { HttpErrorResponse } from '@angular/common/http';
|
2
|
+
import { Injectable } from '@angular/core';
|
3
|
+
import { of } from 'rxjs';
|
4
|
+
import { catchError, map } from 'rxjs/operators';
|
5
|
+
import { ConfigurationSettingsDTO } from '../types/dto/configuration-settings-dto.types';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
import * as i1 from "@veloceapps/core";
|
8
|
+
import * as i2 from "primeng/api";
|
9
|
+
export class ConfigurationSettingsApiService {
|
10
|
+
constructor(httpService, messageService) {
|
11
|
+
this.httpService = httpService;
|
12
|
+
this.messageService = messageService;
|
13
|
+
this.SERVICE_URL = '/v2/settings';
|
14
|
+
}
|
15
|
+
fetchSettings(options) {
|
16
|
+
return this.httpService
|
17
|
+
.api({
|
18
|
+
url: `${this.SERVICE_URL}`,
|
19
|
+
method: 'get',
|
20
|
+
...options,
|
21
|
+
})
|
22
|
+
.pipe(map((settings) => settings.map(setting => ConfigurationSettingsDTO.fromDTO(setting))));
|
23
|
+
}
|
24
|
+
fetchSetting(settingsKey, options) {
|
25
|
+
return this.httpService
|
26
|
+
.api({
|
27
|
+
url: `${this.SERVICE_URL}/byKey/${settingsKey}`,
|
28
|
+
method: 'get',
|
29
|
+
...options,
|
30
|
+
skipErrorHandler: true,
|
31
|
+
})
|
32
|
+
.pipe(map((setting) => ConfigurationSettingsDTO.fromDTO(setting, settingsKey)), catchError(err => {
|
33
|
+
if (err instanceof HttpErrorResponse && err.status === 404) {
|
34
|
+
if (!options?.skipErrorHandler) {
|
35
|
+
this.messageService.add({
|
36
|
+
severity: 'error',
|
37
|
+
summary: `Configuration Setting "${settingsKey}" is not found`,
|
38
|
+
sticky: true,
|
39
|
+
});
|
40
|
+
}
|
41
|
+
return of(null);
|
42
|
+
}
|
43
|
+
throw err;
|
44
|
+
}));
|
45
|
+
}
|
46
|
+
createSetting(setting, options) {
|
47
|
+
const request = ConfigurationSettingsDTO.toDTO(setting);
|
48
|
+
return this.httpService.api({
|
49
|
+
url: `${this.SERVICE_URL}`,
|
50
|
+
method: 'post',
|
51
|
+
body: {
|
52
|
+
...request,
|
53
|
+
},
|
54
|
+
...options,
|
55
|
+
});
|
56
|
+
}
|
57
|
+
updateSetting(setting, options) {
|
58
|
+
const request = ConfigurationSettingsDTO.toDTO(setting);
|
59
|
+
return this.httpService.api({
|
60
|
+
url: `${this.SERVICE_URL}/${request.id}`,
|
61
|
+
method: 'put',
|
62
|
+
body: {
|
63
|
+
...request,
|
64
|
+
},
|
65
|
+
...options,
|
66
|
+
});
|
67
|
+
}
|
68
|
+
removeSetting(setting, options) {
|
69
|
+
const request = ConfigurationSettingsDTO.toDTO(setting);
|
70
|
+
return this.httpService.api({
|
71
|
+
url: `${this.SERVICE_URL}/${request.id}`,
|
72
|
+
method: 'delete',
|
73
|
+
...options,
|
74
|
+
});
|
75
|
+
}
|
76
|
+
restoreSetting(settingId, options) {
|
77
|
+
return this.httpService.api({
|
78
|
+
url: `${this.SERVICE_URL}/${settingId}/restore`,
|
79
|
+
method: 'patch',
|
80
|
+
...options,
|
81
|
+
});
|
82
|
+
}
|
83
|
+
}
|
84
|
+
ConfigurationSettingsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationSettingsApiService, deps: [{ token: i1.BaseHttpService }, { token: i2.MessageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
85
|
+
ConfigurationSettingsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationSettingsApiService });
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationSettingsApiService, decorators: [{
|
87
|
+
type: Injectable
|
88
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i2.MessageService }]; } });
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1zZXR0aW5ncy1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3YyL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24tc2V0dGluZ3MtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUM7Ozs7QUFHekYsTUFBTSxPQUFPLCtCQUErQjtJQUcxQyxZQUFvQixXQUE0QixFQUFVLGNBQThCO1FBQXBFLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUZ2RSxnQkFBVyxHQUFHLGNBQWMsQ0FBQztJQUU2QyxDQUFDO0lBRXJGLGFBQWEsQ0FBQyxPQUF3QztRQUMzRCxPQUFPLElBQUksQ0FBQyxXQUFXO2FBQ3BCLEdBQUcsQ0FBNkI7WUFDL0IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMxQixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsT0FBTztTQUNYLENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBb0MsRUFBRSxFQUFFLENBQzNDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDbkUsQ0FDRixDQUFDO0lBQ04sQ0FBQztJQUVNLFlBQVksQ0FDakIsV0FBbUIsRUFDbkIsT0FBd0M7UUFFeEMsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixHQUFHLENBQTJCO1lBQzdCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLFVBQVUsV0FBVyxFQUFFO1lBQy9DLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxPQUFPO1lBQ1YsZ0JBQWdCLEVBQUUsSUFBSTtTQUN2QixDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLE9BQWlDLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFDbEcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxHQUFHLFlBQVksaUJBQWlCLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBQzFELElBQUksQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUU7b0JBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO3dCQUN0QixRQUFRLEVBQUUsT0FBTzt3QkFDakIsT0FBTyxFQUFFLDBCQUEwQixXQUFXLGdCQUFnQjt3QkFDOUQsTUFBTSxFQUFFLElBQUk7cUJBQ2IsQ0FBQyxDQUFDO2lCQUNKO2dCQUVELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2pCO1lBRUQsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVNLGFBQWEsQ0FDbEIsT0FBOEIsRUFDOUIsT0FBd0M7UUFFeEMsTUFBTSxPQUFPLEdBQUcsd0JBQXdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMxQixNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRTtnQkFDSixHQUFHLE9BQU87YUFDWDtZQUNELEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxhQUFhLENBQ2xCLE9BQThCLEVBQzlCLE9BQXdDO1FBRXhDLE1BQU0sT0FBTyxHQUFHLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUN4QyxNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRTtnQkFDSixHQUFHLE9BQU87YUFDWDtZQUNELEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxhQUFhLENBQ2xCLE9BQThCLEVBQzlCLE9BQXdDO1FBRXhDLE1BQU0sT0FBTyxHQUFHLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUN4QyxNQUFNLEVBQUUsUUFBUTtZQUNoQixHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLFNBQWlCLEVBQUUsT0FBd0M7UUFDL0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLFNBQVMsVUFBVTtZQUMvQyxNQUFNLEVBQUUsT0FBTztZQUNmLEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7OzRIQXJHVSwrQkFBK0I7Z0lBQS9CLCtCQUErQjsyRkFBL0IsK0JBQStCO2tCQUQzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIENvbmZpZ3VyYXRpb25TZXR0aW5ncywgSHR0cFJlcXVlc3RDb25maWd1cmFibGVPcHRpb25zIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2V0dGluZ3NEVE8gfSBmcm9tICcuLi90eXBlcy9kdG8vY29uZmlndXJhdGlvbi1zZXR0aW5ncy1kdG8udHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL3YyL3NldHRpbmdzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UsIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaFNldHRpbmdzKG9wdGlvbnM/OiBIdHRwUmVxdWVzdENvbmZpZ3VyYWJsZU9wdGlvbnMpOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25TZXR0aW5nc1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8Q29uZmlndXJhdGlvblNldHRpbmdzRFRPW10+KHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfWAsXG4gICAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoc2V0dGluZ3M6IENvbmZpZ3VyYXRpb25TZXR0aW5nc0RUT1tdKSA9PlxuICAgICAgICAgIHNldHRpbmdzLm1hcChzZXR0aW5nID0+IENvbmZpZ3VyYXRpb25TZXR0aW5nc0RUTy5mcm9tRFRPKHNldHRpbmcpKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZmV0Y2hTZXR0aW5nKFxuICAgIHNldHRpbmdzS2V5OiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IEh0dHBSZXF1ZXN0Q29uZmlndXJhYmxlT3B0aW9ucyxcbiAgKTogT2JzZXJ2YWJsZTxDb25maWd1cmF0aW9uU2V0dGluZ3MgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8Q29uZmlndXJhdGlvblNldHRpbmdzRFRPPih7XG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vYnlLZXkvJHtzZXR0aW5nc0tleX1gLFxuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBza2lwRXJyb3JIYW5kbGVyOiB0cnVlLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHNldHRpbmc6IENvbmZpZ3VyYXRpb25TZXR0aW5nc0RUTykgPT4gQ29uZmlndXJhdGlvblNldHRpbmdzRFRPLmZyb21EVE8oc2V0dGluZywgc2V0dGluZ3NLZXkpKSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSAmJiBlcnIuc3RhdHVzID09PSA0MDQpIHtcbiAgICAgICAgICAgIGlmICghb3B0aW9ucz8uc2tpcEVycm9ySGFuZGxlcikge1xuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XG4gICAgICAgICAgICAgICAgc2V2ZXJpdHk6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgc3VtbWFyeTogYENvbmZpZ3VyYXRpb24gU2V0dGluZyBcIiR7c2V0dGluZ3NLZXl9XCIgaXMgbm90IGZvdW5kYCxcbiAgICAgICAgICAgICAgICBzdGlja3k6IHRydWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlU2V0dGluZyhcbiAgICBzZXR0aW5nOiBDb25maWd1cmF0aW9uU2V0dGluZ3MsXG4gICAgb3B0aW9ucz86IEh0dHBSZXF1ZXN0Q29uZmlndXJhYmxlT3B0aW9ucyxcbiAgKTogT2JzZXJ2YWJsZTxDb25maWd1cmF0aW9uU2V0dGluZ3M+IHtcbiAgICBjb25zdCByZXF1ZXN0ID0gQ29uZmlndXJhdGlvblNldHRpbmdzRFRPLnRvRFRPKHNldHRpbmcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiB7XG4gICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICB9LFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVTZXR0aW5nKFxuICAgIHNldHRpbmc6IENvbmZpZ3VyYXRpb25TZXR0aW5ncyxcbiAgICBvcHRpb25zPzogSHR0cFJlcXVlc3RDb25maWd1cmFibGVPcHRpb25zLFxuICApOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25TZXR0aW5ncz4ge1xuICAgIGNvbnN0IHJlcXVlc3QgPSBDb25maWd1cmF0aW9uU2V0dGluZ3NEVE8udG9EVE8oc2V0dGluZyk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke3JlcXVlc3QuaWR9YCxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICBib2R5OiB7XG4gICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICB9LFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVTZXR0aW5nKFxuICAgIHNldHRpbmc6IENvbmZpZ3VyYXRpb25TZXR0aW5ncyxcbiAgICBvcHRpb25zPzogSHR0cFJlcXVlc3RDb25maWd1cmFibGVPcHRpb25zLFxuICApOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25TZXR0aW5ncz4ge1xuICAgIGNvbnN0IHJlcXVlc3QgPSBDb25maWd1cmF0aW9uU2V0dGluZ3NEVE8udG9EVE8oc2V0dGluZyk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke3JlcXVlc3QuaWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmVTZXR0aW5nKHNldHRpbmdJZDogc3RyaW5nLCBvcHRpb25zPzogSHR0cFJlcXVlc3RDb25maWd1cmFibGVPcHRpb25zKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtzZXR0aW5nSWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcbiAgfVxufVxuIl19
|