@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.
Files changed (216) hide show
  1. package/esm2020/index.mjs +2 -45
  2. package/esm2020/src/index.mjs +16 -0
  3. package/esm2020/src/lib/api.module.mjs +60 -0
  4. package/esm2020/src/lib/services/account-api.service.mjs +87 -0
  5. package/esm2020/src/lib/services/auth.service.mjs +22 -0
  6. package/esm2020/src/lib/services/contracted-price-api.service.mjs +45 -0
  7. package/esm2020/src/lib/services/flow-state-api.mjs +142 -0
  8. package/esm2020/src/lib/services/offers-api.service.mjs +76 -0
  9. package/esm2020/src/lib/services/org-info-api.service.mjs +54 -0
  10. package/esm2020/src/lib/services/portals-api.service.mjs +76 -0
  11. package/esm2020/src/lib/services/promotions-api.service.mjs +68 -0
  12. package/esm2020/src/lib/services/rebate-program-api.service.mjs +68 -0
  13. package/esm2020/src/lib/services/rebate-type-api.service.mjs +68 -0
  14. package/esm2020/src/lib/services/sandbox-manager-api.service.mjs +94 -0
  15. package/esm2020/src/lib/services/stateful-configuration-api.mjs +51 -0
  16. package/esm2020/src/lib/types/auth.types.mjs +2 -0
  17. package/esm2020/src/lib/types/clone-request.types.mjs +2 -0
  18. package/esm2020/src/lib/types/delta-request.types.mjs +2 -0
  19. package/esm2020/src/lib/types/dto/offers-dto.types.mjs +2 -0
  20. package/esm2020/src/lib/types/index.mjs +6 -0
  21. package/esm2020/src/lib/types/org-info.types.mjs +2 -0
  22. package/esm2020/src/lib/types/search-request.types.mjs +2 -0
  23. package/esm2020/src/lib/types/stateful-configuration.types.mjs +2 -0
  24. package/esm2020/src/lib/utils/canvas.utils.mjs +33 -0
  25. package/esm2020/src/lib/utils/index.mjs +2 -0
  26. package/esm2020/v2/api-v2.module.mjs +70 -0
  27. package/esm2020/v2/index.mjs +4 -0
  28. package/esm2020/v2/services/cache-api.service.mjs +22 -0
  29. package/esm2020/v2/services/catalog-admin-api.service.mjs +192 -0
  30. package/esm2020/v2/services/catalog-api.service.mjs +90 -0
  31. package/esm2020/v2/services/configuration-processors-api.service.mjs +38 -0
  32. package/esm2020/v2/services/configuration-settings-api.service.mjs +89 -0
  33. package/esm2020/v2/services/context-definition-admin-api.service.mjs +70 -0
  34. package/esm2020/v2/services/document-attachment-api.service.mjs +66 -0
  35. package/esm2020/v2/services/endpoints-admin-api.service.mjs +79 -0
  36. package/esm2020/v2/services/flows-api.service.mjs +29 -0
  37. package/esm2020/v2/services/functions-admin-api.service.mjs +116 -0
  38. package/esm2020/v2/services/guided-sellings-admin-api.service.mjs +65 -0
  39. package/esm2020/v2/services/guided-sellings-api.service.mjs +37 -0
  40. package/esm2020/v2/services/index.mjs +24 -0
  41. package/esm2020/v2/services/orchestrations-admin-api.service.mjs +87 -0
  42. package/esm2020/v2/services/orchestrations-api.service.mjs +23 -0
  43. package/esm2020/v2/services/pcm-api.service.mjs +38 -0
  44. package/esm2020/v2/services/picklists-admin-api.service.mjs +41 -0
  45. package/esm2020/v2/services/products-admin-api.service.mjs +90 -0
  46. package/esm2020/v2/services/sales-transactions-api.service.mjs +52 -0
  47. package/esm2020/v2/services/salesforce-api.service.mjs +83 -0
  48. package/esm2020/v2/services/shopping-cart-settings-api.service.mjs +28 -0
  49. package/esm2020/v2/services/ui-definitions-admin-api.service.mjs +68 -0
  50. package/esm2020/v2/services/ui-templates-admin-api.service.mjs +286 -0
  51. package/esm2020/v2/services/veloce-objects-api.service.mjs +90 -0
  52. package/esm2020/v2/types/attachment.types.mjs +2 -0
  53. package/esm2020/v2/types/clone-request.types.mjs +2 -0
  54. package/esm2020/v2/types/dto/configuration-settings-dto.types.mjs +22 -0
  55. package/esm2020/v2/types/dto/ui-definition-dto.types.mjs +2 -0
  56. package/esm2020/v2/types/dto/ui-template-dto.types.mjs +2 -0
  57. package/esm2020/v2/types/function.types.mjs +2 -0
  58. package/esm2020/v2/types/index.mjs +7 -0
  59. package/esm2020/v2/types/pcm.types.mjs +2 -0
  60. package/esm2020/v2/types/procedure.types.mjs +2 -0
  61. package/esm2020/v2/types/sales-transaction.types.mjs +2 -0
  62. package/esm2020/v2/types/search-request.types.mjs +2 -0
  63. package/esm2020/v2/utils/ui-definition.utils.mjs +23 -0
  64. package/esm2020/v2/utils/ui-template.utils.mjs +13 -0
  65. package/esm2020/v2/veloceapps-api-v2.mjs +5 -0
  66. package/esm2020/veloceapps-api.mjs +1 -1
  67. package/fesm2015/veloceapps-api-v2.mjs +1726 -0
  68. package/fesm2015/veloceapps-api-v2.mjs.map +1 -0
  69. package/fesm2015/veloceapps-api.mjs +553 -2892
  70. package/fesm2015/veloceapps-api.mjs.map +1 -1
  71. package/fesm2020/veloceapps-api-v2.mjs +1809 -0
  72. package/fesm2020/veloceapps-api-v2.mjs.map +1 -0
  73. package/fesm2020/veloceapps-api.mjs +552 -2993
  74. package/fesm2020/veloceapps-api.mjs.map +1 -1
  75. package/index.d.ts +1 -44
  76. package/package.json +9 -1
  77. package/src/index.d.ts +15 -0
  78. package/{lib → src/lib}/api.module.d.ts +2 -1
  79. package/{lib → src/lib}/types/index.d.ts +0 -2
  80. package/{lib → src/lib}/types/stateful-configuration.types.d.ts +1 -2
  81. package/src/lib/utils/index.d.ts +1 -0
  82. package/v2/api-v2.module.d.ts +7 -0
  83. package/v2/index.d.ts +3 -0
  84. package/v2/services/cache-api.service.d.ts +11 -0
  85. package/{lib → v2}/services/catalog-admin-api.service.d.ts +2 -2
  86. package/{lib → v2}/services/catalog-api.service.d.ts +5 -5
  87. package/{lib → v2}/services/configuration-settings-api.service.d.ts +1 -2
  88. package/{lib/services/rlm-api.service.d.ts → v2/services/context-definition-admin-api.service.d.ts} +5 -4
  89. package/{lib → v2}/services/document-attachment-api.service.d.ts +1 -1
  90. package/{lib/services/endpoints-api.service.d.ts → v2/services/endpoints-admin-api.service.d.ts} +3 -4
  91. package/v2/services/functions-admin-api.service.d.ts +25 -0
  92. package/v2/services/index.d.ts +23 -0
  93. package/v2/services/orchestrations-admin-api.service.d.ts +21 -0
  94. package/v2/services/orchestrations-api.service.d.ts +12 -0
  95. package/v2/services/pcm-api.service.d.ts +12 -0
  96. package/{lib/services/picklists-api.service.d.ts → v2/services/picklists-admin-api.service.d.ts} +3 -3
  97. package/v2/services/products-admin-api.service.d.ts +21 -0
  98. package/v2/services/sales-transactions-api.service.d.ts +26 -0
  99. package/{lib → v2}/services/salesforce-api.service.d.ts +1 -0
  100. package/v2/services/ui-definitions-admin-api.service.d.ts +18 -0
  101. package/{lib/services/ui-templates-api.service.d.ts → v2/services/ui-templates-admin-api.service.d.ts} +3 -3
  102. package/{lib → v2}/services/veloce-objects-api.service.d.ts +3 -3
  103. package/v2/types/clone-request.types.d.ts +5 -0
  104. package/v2/types/dto/ui-definition-dto.types.d.ts +7 -0
  105. package/v2/types/function.types.d.ts +13 -0
  106. package/v2/types/index.d.ts +6 -0
  107. package/v2/types/pcm.types.d.ts +10 -0
  108. package/v2/types/procedure.types.d.ts +61 -0
  109. package/v2/types/sales-transaction.types.d.ts +13 -0
  110. package/v2/types/search-request.types.d.ts +8 -0
  111. package/v2/utils/ui-definition.utils.d.ts +5 -0
  112. package/esm2020/lib/api.module.mjs +0 -146
  113. package/esm2020/lib/services/account-api.service.mjs +0 -87
  114. package/esm2020/lib/services/auth.service.mjs +0 -22
  115. package/esm2020/lib/services/catalog-admin-api.service.mjs +0 -192
  116. package/esm2020/lib/services/catalog-api.service.mjs +0 -90
  117. package/esm2020/lib/services/configuration-api.service.mjs +0 -122
  118. package/esm2020/lib/services/configuration-processors-api.service.mjs +0 -38
  119. package/esm2020/lib/services/configuration-settings-api.service.mjs +0 -96
  120. package/esm2020/lib/services/context-api.service.mjs +0 -26
  121. package/esm2020/lib/services/contracted-price-api.service.mjs +0 -45
  122. package/esm2020/lib/services/delta-api.service.mjs +0 -23
  123. package/esm2020/lib/services/document-attachment-api.service.mjs +0 -66
  124. package/esm2020/lib/services/endpoints-api.service.mjs +0 -80
  125. package/esm2020/lib/services/flow-state-api.mjs +0 -142
  126. package/esm2020/lib/services/flows-api.service.mjs +0 -29
  127. package/esm2020/lib/services/guided-sellings-admin-api.service.mjs +0 -65
  128. package/esm2020/lib/services/guided-sellings-api.service.mjs +0 -37
  129. package/esm2020/lib/services/offers-api.service.mjs +0 -76
  130. package/esm2020/lib/services/org-info-api.service.mjs +0 -54
  131. package/esm2020/lib/services/picklists-api.service.mjs +0 -41
  132. package/esm2020/lib/services/portals-api.service.mjs +0 -76
  133. package/esm2020/lib/services/price-api.service.mjs +0 -63
  134. package/esm2020/lib/services/procedures-api.service.mjs +0 -113
  135. package/esm2020/lib/services/product-api.service.mjs +0 -153
  136. package/esm2020/lib/services/product-model-api.service.mjs +0 -223
  137. package/esm2020/lib/services/promotions-api.service.mjs +0 -68
  138. package/esm2020/lib/services/quote-api.service.mjs +0 -56
  139. package/esm2020/lib/services/ramp-api.service.mjs +0 -31
  140. package/esm2020/lib/services/rebate-program-api.service.mjs +0 -68
  141. package/esm2020/lib/services/rebate-type-api.service.mjs +0 -68
  142. package/esm2020/lib/services/rlm-api.service.mjs +0 -64
  143. package/esm2020/lib/services/rlm-quote-api.service.mjs +0 -27
  144. package/esm2020/lib/services/rule-groups-api.service.mjs +0 -62
  145. package/esm2020/lib/services/rules-api.service.mjs +0 -98
  146. package/esm2020/lib/services/salesforce-api.service.mjs +0 -79
  147. package/esm2020/lib/services/sandbox-manager-api.service.mjs +0 -94
  148. package/esm2020/lib/services/scripts-api.service.mjs +0 -83
  149. package/esm2020/lib/services/shopping-cart-settings-api.service.mjs +0 -28
  150. package/esm2020/lib/services/stateful-configuration-api.mjs +0 -51
  151. package/esm2020/lib/services/ui-definitions-api.service.mjs +0 -122
  152. package/esm2020/lib/services/ui-templates-api.service.mjs +0 -286
  153. package/esm2020/lib/services/veloce-objects-api.service.mjs +0 -90
  154. package/esm2020/lib/types/attachment.types.mjs +0 -2
  155. package/esm2020/lib/types/auth.types.mjs +0 -2
  156. package/esm2020/lib/types/clone-request.types.mjs +0 -2
  157. package/esm2020/lib/types/delta-request.types.mjs +0 -2
  158. package/esm2020/lib/types/dto/configuration-settings-dto.types.mjs +0 -22
  159. package/esm2020/lib/types/dto/offers-dto.types.mjs +0 -2
  160. package/esm2020/lib/types/dto/ui-template-dto.types.mjs +0 -2
  161. package/esm2020/lib/types/index.mjs +0 -8
  162. package/esm2020/lib/types/org-info.types.mjs +0 -2
  163. package/esm2020/lib/types/price.types.mjs +0 -2
  164. package/esm2020/lib/types/quote.types.mjs +0 -2
  165. package/esm2020/lib/types/ramp-request.types.mjs +0 -2
  166. package/esm2020/lib/types/search-request.types.mjs +0 -2
  167. package/esm2020/lib/types/stateful-configuration.types.mjs +0 -2
  168. package/esm2020/lib/utils/canvas.utils.mjs +0 -33
  169. package/esm2020/lib/utils/index.mjs +0 -3
  170. package/esm2020/lib/utils/ui-template.utils.mjs +0 -13
  171. package/lib/services/configuration-api.service.d.ts +0 -23
  172. package/lib/services/context-api.service.d.ts +0 -11
  173. package/lib/services/delta-api.service.d.ts +0 -12
  174. package/lib/services/price-api.service.d.ts +0 -16
  175. package/lib/services/procedures-api.service.d.ts +0 -30
  176. package/lib/services/product-api.service.d.ts +0 -31
  177. package/lib/services/product-model-api.service.d.ts +0 -29
  178. package/lib/services/quote-api.service.d.ts +0 -22
  179. package/lib/services/ramp-api.service.d.ts +0 -13
  180. package/lib/services/rlm-quote-api.service.d.ts +0 -11
  181. package/lib/services/rule-groups-api.service.d.ts +0 -18
  182. package/lib/services/rules-api.service.d.ts +0 -22
  183. package/lib/services/scripts-api.service.d.ts +0 -21
  184. package/lib/services/ui-definitions-api.service.d.ts +0 -21
  185. package/lib/types/price.types.d.ts +0 -5
  186. package/lib/types/quote.types.d.ts +0 -8
  187. package/lib/types/ramp-request.types.d.ts +0 -13
  188. package/lib/utils/index.d.ts +0 -2
  189. /package/{lib → src/lib}/services/account-api.service.d.ts +0 -0
  190. /package/{lib → src/lib}/services/auth.service.d.ts +0 -0
  191. /package/{lib → src/lib}/services/contracted-price-api.service.d.ts +0 -0
  192. /package/{lib → src/lib}/services/flow-state-api.d.ts +0 -0
  193. /package/{lib → src/lib}/services/offers-api.service.d.ts +0 -0
  194. /package/{lib → src/lib}/services/org-info-api.service.d.ts +0 -0
  195. /package/{lib → src/lib}/services/portals-api.service.d.ts +0 -0
  196. /package/{lib → src/lib}/services/promotions-api.service.d.ts +0 -0
  197. /package/{lib → src/lib}/services/rebate-program-api.service.d.ts +0 -0
  198. /package/{lib → src/lib}/services/rebate-type-api.service.d.ts +0 -0
  199. /package/{lib → src/lib}/services/sandbox-manager-api.service.d.ts +0 -0
  200. /package/{lib → src/lib}/services/stateful-configuration-api.d.ts +0 -0
  201. /package/{lib → src/lib}/types/auth.types.d.ts +0 -0
  202. /package/{lib → src/lib}/types/clone-request.types.d.ts +0 -0
  203. /package/{lib → src/lib}/types/delta-request.types.d.ts +0 -0
  204. /package/{lib → src/lib}/types/dto/offers-dto.types.d.ts +0 -0
  205. /package/{lib → src/lib}/types/org-info.types.d.ts +0 -0
  206. /package/{lib → src/lib}/types/search-request.types.d.ts +0 -0
  207. /package/{lib → src/lib}/utils/canvas.utils.d.ts +0 -0
  208. /package/{lib → v2}/services/configuration-processors-api.service.d.ts +0 -0
  209. /package/{lib → v2}/services/flows-api.service.d.ts +0 -0
  210. /package/{lib → v2}/services/guided-sellings-admin-api.service.d.ts +0 -0
  211. /package/{lib → v2}/services/guided-sellings-api.service.d.ts +0 -0
  212. /package/{lib → v2}/services/shopping-cart-settings-api.service.d.ts +0 -0
  213. /package/{lib → v2}/types/attachment.types.d.ts +0 -0
  214. /package/{lib → v2}/types/dto/configuration-settings-dto.types.d.ts +0 -0
  215. /package/{lib → v2}/types/dto/ui-template-dto.types.d.ts +0 -0
  216. /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