fiscalapi 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/LICENSE.txt +373 -0
  2. package/README.md +388 -0
  3. package/dist/cjs/abstractions/api-key-service.interface.js +3 -0
  4. package/dist/cjs/abstractions/catalog-service.interface.js +3 -0
  5. package/dist/cjs/abstractions/fiscalapi-client.interface.js +3 -0
  6. package/dist/cjs/abstractions/fiscalapi-service.interface.js +3 -0
  7. package/dist/cjs/abstractions/invoice-service.interface.js +3 -0
  8. package/dist/cjs/abstractions/person-service.interface.js +3 -0
  9. package/dist/cjs/abstractions/product-service.interface.js +3 -0
  10. package/dist/cjs/abstractions/tax-file-service.interface.js +3 -0
  11. package/dist/cjs/common/api-response.js +3 -0
  12. package/dist/cjs/common/auditable-dto.js +11 -0
  13. package/dist/cjs/common/base-dto.js +11 -0
  14. package/dist/cjs/common/catalog-dto.js +8 -0
  15. package/dist/cjs/common/file-response.js +3 -0
  16. package/dist/cjs/common/fiscalapi-settings.js +3 -0
  17. package/dist/cjs/common/paged-list.js +18 -0
  18. package/dist/cjs/common/serializable-dto.js +37 -0
  19. package/dist/cjs/http/fiscalapi-http-client-factory.js +66 -0
  20. package/dist/cjs/http/fiscalapi-http-client.interface.js +3 -0
  21. package/dist/cjs/http/fiscalapi-http-client.js +306 -0
  22. package/dist/cjs/index.js +31 -0
  23. package/dist/cjs/models/api-key.js +3 -0
  24. package/dist/cjs/models/invoice.js +3 -0
  25. package/dist/cjs/models/person.js +3 -0
  26. package/dist/cjs/models/product.js +3 -0
  27. package/dist/cjs/models/tax-file.js +3 -0
  28. package/dist/cjs/sdk-constants.js +25 -0
  29. package/dist/cjs/services/api-key-service.js +19 -0
  30. package/dist/cjs/services/base-fiscalapi-service.js +170 -0
  31. package/dist/cjs/services/catalog-service.js +51 -0
  32. package/dist/cjs/services/fiscalapi-client.js +67 -0
  33. package/dist/cjs/services/invoice-service.js +116 -0
  34. package/dist/cjs/services/person-service.js +19 -0
  35. package/dist/cjs/services/product-service.js +19 -0
  36. package/dist/cjs/services/tax-file-service.js +43 -0
  37. package/dist/cjs/utils/date-utils.js +36 -0
  38. package/dist/cjs/utils/encoding-utils.js +21 -0
  39. package/dist/cjs/utils/validation-utils.js +40 -0
  40. package/dist/esm/abstractions/api-key-service.interface.js +2 -0
  41. package/dist/esm/abstractions/catalog-service.interface.js +2 -0
  42. package/dist/esm/abstractions/fiscalapi-client.interface.js +2 -0
  43. package/dist/esm/abstractions/fiscalapi-service.interface.js +2 -0
  44. package/dist/esm/abstractions/invoice-service.interface.js +2 -0
  45. package/dist/esm/abstractions/person-service.interface.js +2 -0
  46. package/dist/esm/abstractions/product-service.interface.js +2 -0
  47. package/dist/esm/abstractions/tax-file-service.interface.js +2 -0
  48. package/dist/esm/common/api-response.js +2 -0
  49. package/dist/esm/common/auditable-dto.js +7 -0
  50. package/dist/esm/common/base-dto.js +7 -0
  51. package/dist/esm/common/catalog-dto.js +4 -0
  52. package/dist/esm/common/file-response.js +2 -0
  53. package/dist/esm/common/fiscalapi-settings.js +2 -0
  54. package/dist/esm/common/paged-list.js +14 -0
  55. package/dist/esm/common/serializable-dto.js +33 -0
  56. package/dist/esm/http/fiscalapi-http-client-factory.js +59 -0
  57. package/dist/esm/http/fiscalapi-http-client.interface.js +2 -0
  58. package/dist/esm/http/fiscalapi-http-client.js +302 -0
  59. package/dist/esm/index.js +13 -0
  60. package/dist/esm/models/api-key.js +2 -0
  61. package/dist/esm/models/invoice.js +2 -0
  62. package/dist/esm/models/person.js +2 -0
  63. package/dist/esm/models/product.js +2 -0
  64. package/dist/esm/models/tax-file.js +2 -0
  65. package/dist/esm/sdk-constants.js +22 -0
  66. package/dist/esm/services/api-key-service.js +15 -0
  67. package/dist/esm/services/base-fiscalapi-service.js +166 -0
  68. package/dist/esm/services/catalog-service.js +47 -0
  69. package/dist/esm/services/fiscalapi-client.js +63 -0
  70. package/dist/esm/services/invoice-service.js +112 -0
  71. package/dist/esm/services/person-service.js +15 -0
  72. package/dist/esm/services/product-service.js +15 -0
  73. package/dist/esm/services/tax-file-service.js +39 -0
  74. package/dist/esm/utils/date-utils.js +31 -0
  75. package/dist/esm/utils/encoding-utils.js +17 -0
  76. package/dist/esm/utils/validation-utils.js +34 -0
  77. package/dist/types/abstractions/api-key-service.interface.d.ts +7 -0
  78. package/dist/types/abstractions/catalog-service.interface.d.ts +27 -0
  79. package/dist/types/abstractions/fiscalapi-client.interface.d.ts +35 -0
  80. package/dist/types/abstractions/fiscalapi-service.interface.d.ts +94 -0
  81. package/dist/types/abstractions/invoice-service.interface.d.ts +39 -0
  82. package/dist/types/abstractions/person-service.interface.d.ts +7 -0
  83. package/dist/types/abstractions/product-service.interface.d.ts +7 -0
  84. package/dist/types/abstractions/tax-file-service.interface.d.ts +22 -0
  85. package/dist/types/common/api-response.d.ts +56 -0
  86. package/dist/types/common/auditable-dto.d.ts +9 -0
  87. package/dist/types/common/base-dto.d.ts +7 -0
  88. package/dist/types/common/catalog-dto.d.ts +8 -0
  89. package/dist/types/common/file-response.d.ts +18 -0
  90. package/dist/types/common/fiscalapi-settings.d.ts +30 -0
  91. package/dist/types/common/paged-list.d.ts +39 -0
  92. package/dist/types/common/serializable-dto.d.ts +10 -0
  93. package/dist/types/http/fiscalapi-http-client-factory.d.ts +22 -0
  94. package/dist/types/http/fiscalapi-http-client.d.ts +113 -0
  95. package/dist/types/http/fiscalapi-http-client.interface.d.ts +80 -0
  96. package/dist/types/index.d.ts +25 -0
  97. package/dist/types/models/api-key.d.ts +21 -0
  98. package/dist/types/models/invoice.d.ts +337 -0
  99. package/dist/types/models/person.d.ts +42 -0
  100. package/dist/types/models/product.d.ts +49 -0
  101. package/dist/types/models/tax-file.d.ts +23 -0
  102. package/dist/types/sdk-constants.d.ts +21 -0
  103. package/dist/types/services/api-key-service.d.ts +15 -0
  104. package/dist/types/services/base-fiscalapi-service.d.ts +72 -0
  105. package/dist/types/services/catalog-service.d.ts +34 -0
  106. package/dist/types/services/fiscalapi-client.d.ts +49 -0
  107. package/dist/types/services/invoice-service.d.ts +54 -0
  108. package/dist/types/services/person-service.d.ts +15 -0
  109. package/dist/types/services/product-service.d.ts +15 -0
  110. package/dist/types/services/tax-file-service.d.ts +30 -0
  111. package/dist/types/utils/date-utils.d.ts +17 -0
  112. package/dist/types/utils/encoding-utils.d.ts +12 -0
  113. package/dist/types/utils/validation-utils.d.ts +25 -0
  114. package/fiscalapi.ico +0 -0
  115. package/fiscalapi.png +0 -0
  116. package/package.json +64 -0
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isNullOrUndefined = isNullOrUndefined;
4
+ exports.isNullOrEmpty = isNullOrEmpty;
5
+ exports.isArrayNullOrEmpty = isArrayNullOrEmpty;
6
+ exports.isObjectEmpty = isObjectEmpty;
7
+ /**
8
+ * Comprueba si un valor es nulo o indefinido
9
+ * @param {any} value - Valor a comprobar
10
+ * @returns {boolean} Verdadero si el valor es nulo o indefinido, falso en caso contrario
11
+ */
12
+ function isNullOrUndefined(value) {
13
+ return value === null || value === undefined;
14
+ }
15
+ /**
16
+ * Comprueba si una cadena es nula, indefinida o vacía
17
+ * @param {string|null|undefined} value - Cadena a comprobar
18
+ * @returns {boolean} Verdadero si la cadena es nula, indefinida o vacía, falso en caso contrario
19
+ */
20
+ function isNullOrEmpty(value) {
21
+ return isNullOrUndefined(value) || value === '';
22
+ }
23
+ /**
24
+ * Comprueba si un array es nulo, indefinido o vacío
25
+ * @param {T[]|null|undefined} value - Array a comprobar
26
+ * @returns {boolean} Verdadero si el array es nulo, indefinido o vacío, falso en caso contrario
27
+ * @template T
28
+ */
29
+ function isArrayNullOrEmpty(value) {
30
+ return isNullOrUndefined(value) || (Array.isArray(value) && value.length === 0);
31
+ }
32
+ /**
33
+ * Comprueba si un objeto es nulo, indefinido o no tiene propiedades
34
+ * @param {object|null|undefined} value - Objeto a comprobar
35
+ * @returns {boolean} Verdadero si el objeto es nulo, indefinido o no tiene propiedades, falso en caso contrario
36
+ */
37
+ function isObjectEmpty(value) {
38
+ return isNullOrUndefined(value) || (typeof value === 'object' && value !== null && Object.keys(value).length === 0);
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy92YWxpZGF0aW9uLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsOENBRUc7QUFPRCxzQ0FFQztBQVFELGdEQUVDO0FBT0Qsc0NBRUM7QUFuQ0g7Ozs7R0FJRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLEtBQVU7SUFDeEMsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUM7QUFDL0MsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixhQUFhLENBQUMsS0FBZ0M7SUFDNUQsT0FBTyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO0FBQ2xELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLGtCQUFrQixDQUFJLEtBQTZCO0lBQ2pFLE9BQU8saUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDbEYsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixhQUFhLENBQUMsS0FBZ0M7SUFDNUQsT0FBTyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ3RILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIgXG4vKipcbiAqIENvbXBydWViYSBzaSB1biB2YWxvciBlcyBudWxvIG8gaW5kZWZpbmlkb1xuICogQHBhcmFtIHthbnl9IHZhbHVlIC0gVmFsb3IgYSBjb21wcm9iYXJcbiAqIEByZXR1cm5zIHtib29sZWFufSBWZXJkYWRlcm8gc2kgZWwgdmFsb3IgZXMgbnVsbyBvIGluZGVmaW5pZG8sIGZhbHNvIGVuIGNhc28gY29udHJhcmlvXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc051bGxPclVuZGVmaW5lZCh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQ7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb21wcnVlYmEgc2kgdW5hIGNhZGVuYSBlcyBudWxhLCBpbmRlZmluaWRhIG8gdmFjw61hXG4gICAqIEBwYXJhbSB7c3RyaW5nfG51bGx8dW5kZWZpbmVkfSB2YWx1ZSAtIENhZGVuYSBhIGNvbXByb2JhclxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVmVyZGFkZXJvIHNpIGxhIGNhZGVuYSBlcyBudWxhLCBpbmRlZmluaWRhIG8gdmFjw61hLCBmYWxzbyBlbiBjYXNvIGNvbnRyYXJpb1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzTnVsbE9yRW1wdHkodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpIHx8IHZhbHVlID09PSAnJztcbiAgfVxuICBcbiAgLyoqXG4gICAqIENvbXBydWViYSBzaSB1biBhcnJheSBlcyBudWxvLCBpbmRlZmluaWRvIG8gdmFjw61vXG4gICAqIEBwYXJhbSB7VFtdfG51bGx8dW5kZWZpbmVkfSB2YWx1ZSAtIEFycmF5IGEgY29tcHJvYmFyXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBWZXJkYWRlcm8gc2kgZWwgYXJyYXkgZXMgbnVsbywgaW5kZWZpbmlkbyBvIHZhY8OtbywgZmFsc28gZW4gY2FzbyBjb250cmFyaW9cbiAgICogQHRlbXBsYXRlIFRcbiAgICovXG4gIGV4cG9ydCBmdW5jdGlvbiBpc0FycmF5TnVsbE9yRW1wdHk8VD4odmFsdWU6IFRbXSB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpIHx8IChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApO1xuICB9XG4gIFxuICAvKipcbiAgICogQ29tcHJ1ZWJhIHNpIHVuIG9iamV0byBlcyBudWxvLCBpbmRlZmluaWRvIG8gbm8gdGllbmUgcHJvcGllZGFkZXNcbiAgICogQHBhcmFtIHtvYmplY3R8bnVsbHx1bmRlZmluZWR9IHZhbHVlIC0gT2JqZXRvIGEgY29tcHJvYmFyXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBWZXJkYWRlcm8gc2kgZWwgb2JqZXRvIGVzIG51bG8sIGluZGVmaW5pZG8gbyBubyB0aWVuZSBwcm9waWVkYWRlcywgZmFsc28gZW4gY2FzbyBjb250cmFyaW9cbiAgICovXG4gIGV4cG9ydCBmdW5jdGlvbiBpc09iamVjdEVtcHR5KHZhbHVlOiBvYmplY3QgfCBudWxsIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzTnVsbE9yVW5kZWZpbmVkKHZhbHVlKSB8fCAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyh2YWx1ZSkubGVuZ3RoID09PSAwKTtcbiAgfSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWtleS1zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hYnN0cmFjdGlvbnMvYXBpLWtleS1zZXJ2aWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUZpc2NhbGFwaVNlcnZpY2UgfSBmcm9tICcuL2Zpc2NhbGFwaS1zZXJ2aWNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcGlLZXkgfSBmcm9tICcuLi9tb2RlbHMvYXBpLWtleSc7XG5cbi8qKlxuICogSW50ZXJmYXogZGVsIHNlcnZpY2lvIGRlIGNsYXZlcyBkZSBBUElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQXBpS2V5U2VydmljZSBleHRlbmRzIElGaXNjYWxhcGlTZXJ2aWNlPEFwaUtleT4ge1xuICAvLyBBcXXDrSBpcsOtYW4gbcOpdG9kb3MgZXNwZWPDrWZpY29zIHBhcmEgY2xhdmVzIGRlIEFQSVxufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hYnN0cmFjdGlvbnMvY2F0YWxvZy1zZXJ2aWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiIFxuaW1wb3J0IHsgSUZpc2NhbGFwaVNlcnZpY2UgfSBmcm9tICcuL2Zpc2NhbGFwaS1zZXJ2aWNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDYXRhbG9nRHRvIH0gZnJvbSAnLi4vY29tbW9uL2NhdGFsb2ctZHRvJztcbmltcG9ydCB7IEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vY29tbW9uL2FwaS1yZXNwb25zZSc7XG5pbXBvcnQgeyBQYWdlZExpc3QgfSBmcm9tICcuLi9jb21tb24vcGFnZWQtbGlzdCc7XG5cbi8qKlxuICogSW50ZXJmYXogZGVsIHNlcnZpY2lvIGRlIGNhdMOhbG9nb3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2F0YWxvZ1NlcnZpY2UgZXh0ZW5kcyBJRmlzY2FsYXBpU2VydmljZTxDYXRhbG9nRHRvPiB7XG4gXG5cbiAgLyoqXG4gICAqIC9hcGkvdjQvY2F0YWxvZ3MvPGNhdGFsb2dOYW1lPi9rZXkvPGlkPlxuICAgKiBSZWN1cGVyYSB1biByZWdpc3RybyBlc3BlY8OtZmljbyBwb3IgY2F0YWxvZ05hbWUgZSBpZFxuICAgKiBcbiAgICogQHBhcmFtIGNhdGFsb2dOYW1lIC0gTm9tYnJlIGRlbCBjYXTDoWxvZ29cbiAgICogQHBhcmFtIGlkIC0gSWRlbnRpZmljYWRvciBkZWwgcmVnaXN0cm9cbiAgICovXG4gIGdldFJlY29yZEJ5SWQoY2F0YWxvZ05hbWU6IHN0cmluZywgaWQ6IHN0cmluZyk6IFByb21pc2U8QXBpUmVzcG9uc2U8Q2F0YWxvZ0R0bz4+O1xuXG4gIC8qKlxuICAgKiBHRVQgL2FwaS92NC9jYXRhbG9ncy97Y2F0YWxvZ05hbWV9L3tzZWFyY2hUZXh0fVxuICAgKiBCdXNjYSByZWdpc3Ryb3MgZW4gdW4gY2F0w6Fsb2dvIGVzcGVjw61maWNvXG4gICAqIFxuICAgKiBAcGFyYW0gY2F0YWxvZ05hbWUgLSBOb21icmUgZGVsIGNhdMOhbG9nb1xuICAgKiBAcGFyYW0gc2VhcmNoVGV4dCAtIFRleHRvIGRlIGLDunNxdWVkYVxuICAgKiBAcGFyYW0gcGFnZU51bWJlciAtIE7Dum1lcm8gZGUgcMOhZ2luYSAob3BjaW9uYWwsIGRlZmF1bHQ6IDEpXG4gICAqIEBwYXJhbSBwYWdlU2l6ZSAtIFRhbWHDsW8gZGUgcMOhZ2luYSAob3BjaW9uYWwsIGRlZmF1bHQ6IDUwKVxuICAgKi9cbiAgc2VhcmNoQ2F0YWxvZyhcbiAgICAgIGNhdGFsb2dOYW1lOiBzdHJpbmcsIFxuICAgICAgc2VhcmNoVGV4dDogc3RyaW5nLCBcbiAgICAgIHBhZ2VOdW1iZXI/OiBudW1iZXIsIFxuICAgICAgcGFnZVNpemU/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxBcGlSZXNwb25zZTxQYWdlZExpc3Q8Q2F0YWxvZ0R0bz4+PjtcblxuICBcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlzY2FsYXBpLWNsaWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWJzdHJhY3Rpb25zL2Zpc2NhbGFwaS1jbGllbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXBpS2V5U2VydmljZSB9IGZyb20gJy4vYXBpLWtleS1zZXJ2aWNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJQ2F0YWxvZ1NlcnZpY2UgfSBmcm9tICcuL2NhdGFsb2ctc2VydmljZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUludm9pY2VTZXJ2aWNlIH0gZnJvbSAnLi9pbnZvaWNlLXNlcnZpY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IElQZXJzb25TZXJ2aWNlIH0gZnJvbSAnLi9wZXJzb24tc2VydmljZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSVByb2R1Y3RTZXJ2aWNlIH0gZnJvbSAnLi9wcm9kdWN0LXNlcnZpY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IElUYXhGaWxlU2VydmljZSB9IGZyb20gJy4vdGF4LWZpbGUtc2VydmljZS5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEludGVyZmF6IHByaW5jaXBhbCBkZWwgY2xpZW50ZSBwYXJhIEZpc2NhbEFQSVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElGaXNjYWxhcGlDbGllbnQge1xuICAvKipcbiAgICogU2VydmljaW8gZGUgZmFjdHVyYXNcbiAgICovXG4gIGludm9pY2VzOiBJSW52b2ljZVNlcnZpY2U7XG4gIFxuICAvKipcbiAgICogU2VydmljaW8gZGUgcHJvZHVjdG9zXG4gICAqL1xuICBwcm9kdWN0czogSVByb2R1Y3RTZXJ2aWNlO1xuICBcbiAgLyoqXG4gICAqIFNlcnZpY2lvIGRlIHBlcnNvbmFzXG4gICAqL1xuICBwZXJzb25zOiBJUGVyc29uU2VydmljZTtcbiAgXG4gIC8qKlxuICAgKiBTZXJ2aWNpbyBkZSBjbGF2ZXMgZGUgQVBJXG4gICAqL1xuICBhcGlLZXlzOiBJQXBpS2V5U2VydmljZTtcbiAgXG4gIC8qKlxuICAgKiBTZXJ2aWNpbyBkZSBjYXTDoWxvZ29zXG4gICAqL1xuICBjYXRhbG9nczogSUNhdGFsb2dTZXJ2aWNlO1xuICBcbiAgLyoqXG4gICAqIFNlcnZpY2lvIGRlIGFyY2hpdm9zIGZpc2NhbGVzXG4gICAqL1xuICB0YXhGaWxlczogSVRheEZpbGVTZXJ2aWNlO1xufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlzY2FsYXBpLXNlcnZpY2UuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fic3RyYWN0aW9ucy9maXNjYWxhcGktc2VydmljZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF4aW9zUmVxdWVzdENvbmZpZyB9IGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vY29tbW9uL2FwaS1yZXNwb25zZSc7XG5pbXBvcnQgeyBCYXNlRHRvIH0gZnJvbSAnLi4vY29tbW9uL2Jhc2UtZHRvJztcbmltcG9ydCB7IFBhZ2VkTGlzdCB9IGZyb20gJy4uL2NvbW1vbi9wYWdlZC1saXN0JztcbmltcG9ydCB7IEh0dHBNZXRob2QgfSBmcm9tICcuLi9odHRwL2Zpc2NhbGFwaS1odHRwLWNsaWVudC5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIE9wY2lvbmVzIHBhcmEgZWplY3V0YXIgdW5hIG9wZXJhY2nDs25cbiAqIEB0ZW1wbGF0ZSBURGF0YSAtIFRpcG8gZGUgZGF0b3MgZGUgZW50cmFkYVxuICovXG5leHBvcnQgdHlwZSBPcGVyYXRpb25PcHRpb25zPFREYXRhID0gYW55PiA9IHtcbiAgLyoqIFJ1dGEgbyBub21icmUgZGUgbGEgb3BlcmFjacOzbiAqL1xuICBwYXRoOiBzdHJpbmc7XG4gIC8qKiBEYXRvcyBwYXJhIGxhIG9wZXJhY2nDs24gKG9wY2lvbmFsKSAqL1xuICBkYXRhPzogVERhdGE7XG4gIC8qKiBQYXLDoW1ldHJvcyBkZSBjb25zdWx0YSAob3BjaW9uYWwpICovXG4gIHF1ZXJ5UGFyYW1zPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqIE3DqXRvZG8gSFRUUCBhIHV0aWxpemFyICovXG4gIG1ldGhvZD86ICdHRVQnIHwgJ1BPU1QnIHwgJ1BVVCcgfCAnUEFUQ0gnIHwgJ0RFTEVURSc7XG4gIC8qKiBDb25maWd1cmFjacOzbiBhZGljaW9uYWwgcGFyYSBBeGlvcyAob3BjaW9uYWwpICovXG4gIGNvbmZpZz86IEF4aW9zUmVxdWVzdENvbmZpZztcbn07XG5cbi8qKlxuICogT3BjaW9uZXMgcGFyYSBlamVjdXRhciB1bmEgcGV0aWNpw7NuIHBlcnNvbmFsaXphZGFcbiAqIEB0ZW1wbGF0ZSBURGF0YSAtIFRpcG8gZGUgZGF0b3MgZGUgZW50cmFkYVxuICovXG5leHBvcnQgdHlwZSBSZXF1ZXN0T3B0aW9uczxURGF0YSA9IGFueT4gPSB7XG4gIC8qKiBNw6l0b2RvIEhUVFAgYSB1dGlsaXphciAqL1xuICBtZXRob2Q6IEh0dHBNZXRob2Q7XG4gIC8qKiBSdXRhIGFkaWNpb25hbCAob3BjaW9uYWwpICovXG4gIHBhdGg/OiBzdHJpbmc7XG4gIC8qKiBJRCBkZWwgcmVjdXJzbyAob3BjaW9uYWwpICovXG4gIGlkPzogc3RyaW5nO1xuICAvKiogRGF0b3MgcGFyYSBsYSBwZXRpY2nDs24gKG9wY2lvbmFsKSAqL1xuICBkYXRhPzogVERhdGE7XG4gIC8qKiBQYXLDoW1ldHJvcyBkZSBjb25zdWx0YSAob3BjaW9uYWwpICovXG4gIHF1ZXJ5UGFyYW1zPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqIENvbmZpZ3VyYWNpw7NuIGFkaWNpb25hbCBwYXJhIEF4aW9zIChvcGNpb25hbCkgKi9cbiAgY29uZmlnPzogQXhpb3NSZXF1ZXN0Q29uZmlnO1xuICAvKiogVHJhbnNmb3JtYWRvciBwZXJzb25hbGl6YWRvIHBhcmEgbGEgcmVzcHVlc3RhIChvcGNpb25hbCkgKi9cbiAgcmVzcG9uc2VUcmFuc2Zvcm1lcj86IDxUPihyZXNwb25zZTogYW55KSA9PiBUO1xufTtcblxuLyoqXG4gKiBJbnRlcmZheiBiYXNlIHBhcmEgdG9kb3MgbG9zIHNlcnZpY2lvcyBkZSBGaXNjYWxBUElcbiAqIEB0ZW1wbGF0ZSBUIC0gVGlwbyBkZSBEVE8gcXVlIG1hbmVqYSBlbCBzZXJ2aWNpb1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElGaXNjYWxhcGlTZXJ2aWNlPFQgZXh0ZW5kcyBCYXNlRHRvPiB7XG4gIC8qKlxuICAgKiBSZWN1cGVyYSB1bmEgbGlzdGEgcGFnaW5hZGEgZGUgcmVjdXJzb3NcbiAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2VOdW1iZXIgLSBOw7ptZXJvIGRlIHDDoWdpbmEgKGJhc2UgMSlcbiAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2VTaXplIC0gTsO6bWVybyBkZSBlbGVtZW50b3MgcG9yIHDDoWdpbmFcbiAgICogQHJldHVybnMge1Byb21pc2U8QXBpUmVzcG9uc2U8UGFnZWRMaXN0PFQ+Pj59IExpc3RhIHBhZ2luYWRhIGRlIHJlY3Vyc29zXG4gICAqL1xuICBnZXRMaXN0KHBhZ2VOdW1iZXI6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcik6IFByb21pc2U8QXBpUmVzcG9uc2U8UGFnZWRMaXN0PFQ+Pj47XG4gIFxuICAvKipcbiAgICogUmVjdXBlcmEgdW4gcmVjdXJzbyBlc3BlY8OtZmljbyBwb3IgSURcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gSUQgZGVsIHJlY3Vyc29cbiAgICogQHBhcmFtIHtib29sZWFufSBbZGV0YWlscz1mYWxzZV0gLSBTaSBlcyB2ZXJkYWRlcm8sIGluY2x1eWUgb2JqZXRvcyByZWxhY2lvbmFkb3NcbiAgICogQHJldHVybnMge1Byb21pc2U8QXBpUmVzcG9uc2U8VD4+fSBSZWN1cnNvIHNvbGljaXRhZG9cbiAgICovXG4gIGdldEJ5SWQoaWQ6IHN0cmluZywgZGV0YWlscz86IGJvb2xlYW4pOiBQcm9taXNlPEFwaVJlc3BvbnNlPFQ+PjtcbiAgXG4gIC8qKlxuICAgKiBDcmVhIHVuIG51ZXZvIHJlY3Vyc29cbiAgICogQHBhcmFtIHtUfSBtb2RlbCAtIERhdG9zIGRlbCByZWN1cnNvXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFwaVJlc3BvbnNlPFQ+Pn0gUmVjdXJzbyBjcmVhZG9cbiAgICovXG4gIGNyZWF0ZShtb2RlbDogVCk6IFByb21pc2U8QXBpUmVzcG9uc2U8VD4+O1xuICBcbiAgLyoqXG4gICAqIEFjdHVhbGl6YSB1biByZWN1cnNvIGV4aXN0ZW50ZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWQgLSBJRCBkZWwgcmVjdXJzb1xuICAgKiBAcGFyYW0ge1R9IG1vZGVsIC0gRGF0b3MgYWN0dWFsaXphZG9zIGRlbCByZWN1cnNvXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFwaVJlc3BvbnNlPFQ+Pn0gUmVjdXJzbyBhY3R1YWxpemFkb1xuICAgKi9cbiAgdXBkYXRlKG1vZGVsOiBUKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUPj47XG4gIFxuICAvKipcbiAgICogRWxpbWluYSB1biByZWN1cnNvXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZCAtIElEIGRlbCByZWN1cnNvXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFwaVJlc3BvbnNlPGJvb2xlYW4+Pn0gUmVzdWx0YWRvIGRlIGxhIG9wZXJhY2nDs25cbiAgICovXG4gIGRlbGV0ZShpZDogc3RyaW5nKTogUHJvbWlzZTxBcGlSZXNwb25zZTxib29sZWFuPj47XG4gIFxuICAvKipcbiAgICogUmVhbGl6YSB1bmEgYsO6c3F1ZWRhIGVuIGVsIHJlY3Vyc29cbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSBzZWFyY2hQYXJhbXMgLSBQYXLDoW1ldHJvcyBkZSBiw7pzcXVlZGFcbiAgICogQHJldHVybnMge1Byb21pc2U8QXBpUmVzcG9uc2U8UGFnZWRMaXN0PFQ+Pj59IFJlc3VsdGFkb3MgZGUgbGEgYsO6c3F1ZWRhXG4gICAqL1xuICBzZWFyY2goc2VhcmNoUGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogUHJvbWlzZTxBcGlSZXNwb25zZTxQYWdlZExpc3Q8VD4+PjtcbiAgXG4gIFxuICAvKipcbiAgICogRWplY3V0YSB1bmEgcGV0aWNpw7NuIEhUVFAgcGVyc29uYWxpemFkYSBjb24gbcOheGltYSBmbGV4aWJpbGlkYWRcbiAgICogQHBhcmFtIHtSZXF1ZXN0T3B0aW9uczxURGF0YT59IG9wdGlvbnMgLSBPcGNpb25lcyBwYXJhIGxhIHBldGljacOzblxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcGlSZXNwb25zZTxUUmVzdWx0Pj59IFJlc3VsdGFkbyBkZSBsYSBwZXRpY2nDs25cbiAgICogQHRlbXBsYXRlIFRSZXN1bHQgLSBUaXBvIGRlIHJlc3VsdGFkbyBlc3BlcmFkb1xuICAgKiBAdGVtcGxhdGUgVERhdGEgLSBUaXBvIGRlIGRhdG9zIGRlIGVudHJhZGFcbiAgICovXG4gIGV4ZWN1dGVSZXF1ZXN0PFRSZXN1bHQsIFREYXRhID0gYW55PihcbiAgICBvcHRpb25zOiBSZXF1ZXN0T3B0aW9uczxURGF0YT5cbiAgKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUUmVzdWx0Pj47XG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS1zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hYnN0cmFjdGlvbnMvaW52b2ljZS1zZXJ2aWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi9jb21tb24vYXBpLXJlc3BvbnNlJztcbmltcG9ydCB7IEZpbGVSZXNwb25zZSB9IGZyb20gJy4uL2NvbW1vbi9maWxlLXJlc3BvbnNlJztcbmltcG9ydCB7IFxuICBJbnZvaWNlLCBcbiAgQ2FuY2VsSW52b2ljZVJlcXVlc3QsIFxuICBDYW5jZWxJbnZvaWNlUmVzcG9uc2UsIFxuICBDcmVhdGVQZGZSZXF1ZXN0LCBcbiAgU2VuZEludm9pY2VSZXF1ZXN0LFxuICBJbnZvaWNlU3RhdHVzUmVxdWVzdCxcbiAgSW52b2ljZVN0YXR1c1Jlc3BvbnNlXG59IGZyb20gJy4uL21vZGVscy9pbnZvaWNlJztcbmltcG9ydCB7IElGaXNjYWxhcGlTZXJ2aWNlIH0gZnJvbSAnLi9maXNjYWxhcGktc2VydmljZS5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEludGVyZmF6IHBhcmEgZWwgc2VydmljaW8gZGUgZmFjdHVyYXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJSW52b2ljZVNlcnZpY2UgZXh0ZW5kcyBJRmlzY2FsYXBpU2VydmljZTxJbnZvaWNlPiB7XG4gIC8qKlxuICAgKiBDYW5jZWxhIHVuYSBmYWN0dXJhXG4gICAqIEBwYXJhbSB7Q2FuY2VsSW52b2ljZVJlcXVlc3R9IHJlcXVlc3QgLSBTb2xpY2l0dWQgcGFyYSBjYW5jZWxhciBmYWN0dXJhXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFwaVJlc3BvbnNlPENhbmNlbEludm9pY2VSZXNwb25zZT4+fSBSZXNwdWVzdGEgZGUgbGEgY2FuY2VsYWNpw7NuXG4gICAqL1xuICBjYW5jZWwocmVxdWVzdDogQ2FuY2VsSW52b2ljZVJlcXVlc3QpOiBQcm9taXNlPEFwaVJlc3BvbnNlPENhbmNlbEludm9pY2VSZXNwb25zZT4+O1xuICBcbiAgLyoqXG4gICAqIE9idGllbmUgZWwgUERGIGRlIHVuYSBmYWN0dXJhXG4gICAqIEBwYXJhbSB7Q3JlYXRlUGRmUmVxdWVzdH0gcmVxdWVzdCAtIFNvbGljaXR1ZCBwYXJhIGNyZWFyIFBERlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcGlSZXNwb25zZTxGaWxlUmVzcG9uc2U+Pn0gUmVzcHVlc3RhIGNvbiBlbCBhcmNoaXZvIFBERlxuICAgKi9cbiAgZ2V0UGRmKHJlcXVlc3Q6IENyZWF0ZVBkZlJlcXVlc3QpOiBQcm9taXNlPEFwaVJlc3BvbnNlPEZpbGVSZXNwb25zZT4+O1xuICBcbiAgLyoqXG4gICAqIE9idGllbmUgZWwgWE1MIGRlIHVuYSBmYWN0dXJhXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZCAtIElEIGRlIGxhIGZhY3R1cmFcbiAgICogQHJldHVybnMge1Byb21pc2U8QXBpUmVzcG9uc2U8RmlsZVJlc3BvbnNlPj59IFJlc3B1ZXN0YSBjb24gZWwgYXJjaGl2byBYTUxcbiAgICovXG4gIGdldFhtbChpZDogc3RyaW5nKTogUHJvbWlzZTxBcGlSZXNwb25zZTxGaWxlUmVzcG9uc2U+PjtcbiAgXG4gIC8qKlxuICAgKiBFbnbDrWEgdW5hIGZhY3R1cmEgcG9yIGNvcnJlbyBlbGVjdHLDs25pY29cbiAgICogQHBhcmFtIHtTZW5kSW52b2ljZVJlcXVlc3R9IHJlcXVlc3QgLSBTb2xpY2l0dWQgcGFyYSBlbnZpYXIgZmFjdHVyYVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcGlSZXNwb25zZTxib29sZWFuPj59IFJlc3VsdGFkbyBkZSBsYSBvcGVyYWNpw7NuXG4gICAqL1xuICBzZW5kKHJlcXVlc3Q6IFNlbmRJbnZvaWNlUmVxdWVzdCk6IFByb21pc2U8QXBpUmVzcG9uc2U8Ym9vbGVhbj4+O1xuICBcbiAgLyoqXG4gICAqIE9idGllbmUgZWwgZXN0YWRvIGRlIHVuYSBmYWN0dXJhXG4gICAqIEBwYXJhbSB7SW52b2ljZVN0YXR1c1JlcXVlc3R9IHJlcXVlc3QgLSBTb2xpY2l0dWQgcGFyYSBjb25zdWx0YXIgZXN0YWRvXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFwaVJlc3BvbnNlPEludm9pY2VTdGF0dXNSZXNwb25zZT4+fSBSZXNwdWVzdGEgY29uIGVsIGVzdGFkbyBkZSBsYSBmYWN0dXJhXG4gICAqL1xuICBnZXRTdGF0dXMocmVxdWVzdDogSW52b2ljZVN0YXR1c1JlcXVlc3QpOiBQcm9taXNlPEFwaVJlc3BvbnNlPEludm9pY2VTdGF0dXNSZXNwb25zZT4+O1xufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLXNlcnZpY2UuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fic3RyYWN0aW9ucy9wZXJzb24tc2VydmljZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIiBcbmltcG9ydCB7IElGaXNjYWxhcGlTZXJ2aWNlIH0gZnJvbSAnLi9maXNjYWxhcGktc2VydmljZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGVyc29uIH0gZnJvbSAnLi4vbW9kZWxzL3BlcnNvbic7XG5cbi8qKlxuICogSW50ZXJmYXogZGVsIHNlcnZpY2lvIGRlIHBlcnNvbmFzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcnNvblNlcnZpY2UgZXh0ZW5kcyBJRmlzY2FsYXBpU2VydmljZTxQZXJzb24+IHtcbiAgLy8gQXF1w60gaXLDrWFuIG3DqXRvZG9zIGVzcGVjw61maWNvcyBwYXJhIHBlcnNvbmFzXG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zZXJ2aWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hYnN0cmFjdGlvbnMvcHJvZHVjdC1zZXJ2aWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiIFxuLy8gc3JjL2Fic3RyYWN0aW9ucy9pbnRlcmZhY2VzL3Byb2R1Y3Qtc2VydmljZS5pbnRlcmZhY2UudHNcbmltcG9ydCB7IElGaXNjYWxhcGlTZXJ2aWNlIH0gZnJvbSAnLi9maXNjYWxhcGktc2VydmljZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4uL21vZGVscy9wcm9kdWN0JztcblxuLyoqXG4gKiBJbnRlcmZheiBkZWwgc2VydmljaW8gZGUgcHJvZHVjdG9zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVByb2R1Y3RTZXJ2aWNlIGV4dGVuZHMgSUZpc2NhbGFwaVNlcnZpY2U8UHJvZHVjdD4ge1xuICAvLyBBcXXDrSBpcsOtYW4gbcOpdG9kb3MgZXNwZWPDrWZpY29zIHBhcmEgcHJvZHVjdG9zXG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LWZpbGUtc2VydmljZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWJzdHJhY3Rpb25zL3RheC1maWxlLXNlcnZpY2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIgXG5pbXBvcnQgeyBJRmlzY2FsYXBpU2VydmljZSB9IGZyb20gJy4vZmlzY2FsYXBpLXNlcnZpY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRheEZpbGUgfSBmcm9tICcuLi9tb2RlbHMvdGF4LWZpbGUnO1xuaW1wb3J0IHsgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi9jb21tb24vYXBpLXJlc3BvbnNlJztcbmltcG9ydCB7IEZpbGVSZXNwb25zZSB9IGZyb20gJy4uL2NvbW1vbi9maWxlLXJlc3BvbnNlJztcblxuLyoqXG4gKiBJbnRlcmZheiBkZWwgc2VydmljaW8gZGUgYXJjaGl2b3MgZmlzY2FsZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJVGF4RmlsZVNlcnZpY2UgZXh0ZW5kcyBJRmlzY2FsYXBpU2VydmljZTxUYXhGaWxlPiB7XG5cblxuICAvKipcbiAgICAgKiBPYnRpZW5lIGVsIMO6bHRpbW8gcGFyIGRlIGlkcyBkZSBjZXJ0aWZpY2Fkb3MgdsOhbGlkb3MgeSB2aWdlbnRlIGRlIHVuYSBwZXJzb25hLiBFcyBkZWNpciBzdXMgY2VydGlmaWNhZG9zIHBvciBkZWZlY3RvIChpZHMpXG4gICAgICogXG4gICAgICogQHBhcmFtIHBlcnNvbklkIC0gSWQgZGUgbGEgcGVyc29uYSBwcm9waWV0YXJpYSBkZSBsb3MgY2VydGlmaWNhZG9zXG4gICAgICogQHJldHVybnMgUHJvbWlzZSBxdWUgcmVzdWVsdmUgZW4gdW5hIHJlc3B1ZXN0YSBBUEkgY29uIHVuYSBsaXN0YSBkZSB1biBwYXIgZGUgY2VydGlmaWNhZG9zLCBwZXJvIHNpbiBjb250ZW5pZG8sIHNvbG8gc3VzIElkc1xuICAgICAqL1xuICBnZXREZWZhdWx0UmVmZXJlbmNlcyhwZXJzb25JZDogc3RyaW5nKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUYXhGaWxlW10+PlxuXG4gIC8qKlxuICAgICogT2J0aWVuZSBlbCDDumx0aW1vIHBhciBkZSBjZXJ0aWZpY2Fkb3MgdsOhbGlkb3MgeSB2aWdlbnRlIGRlIHVuYSBwZXJzb25hLiBFcyBkZWNpciBzdXMgY2VydGlmaWNhZG9zIHBvciBkZWZlY3RvXG4gICAgKiBcbiAgICAqIEBwYXJhbSBwZXJzb25JZCAtIElkIGRlIGxhIHBlcnNvbmEgZHVlw7FhIGRlIGxvcyBjZXJ0aWZpY2Fkb3NcbiAgICAqIEByZXR1cm5zIFByb21pc2UgcXVlIHJlc3VlbHZlIGVuIHVuYSByZXNwdWVzdGEgQVBJIGNvbiB1bmEgbGlzdGEgZGUgdW4gcGFyIGRlIGNlcnRpZmljYWRvc1xuICAgICovXG4gIGdldERlZmF1bHRWYWx1ZXMocGVyc29uSWQ6IHN0cmluZyk6IFByb21pc2U8QXBpUmVzcG9uc2U8VGF4RmlsZVtdPj5cblxufVxuXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1vbi9hcGktcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIiBcbi8qKlxuICogRW5jYXBzdWxhZG9yIGdlbsOpcmljbyBwYXJhIHJlc3B1ZXN0YXMgZGUgbGEgQVBJXG4gKiBAdGVtcGxhdGUgVFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaVJlc3BvbnNlPFQ+IHtcbiAgICAvKipcbiAgICAgKiBEYXRvcyBkZSBsYSByZXNwdWVzdGFcbiAgICAgKi9cbiAgICBkYXRhOiBUO1xuICAgIFxuICAgIC8qKlxuICAgICAqIEluZGljYSBzaSBsYSBwZXRpY2nDs24gZnVlIGV4aXRvc2FcbiAgICAgKi9cbiAgICBzdWNjZWVkZWQ6IGJvb2xlYW47XG4gICAgXG4gICAgLyoqXG4gICAgICogTWVuc2FqZSBkZSBlcnJvciBvIGRlIMOpeGl0b1xuICAgICAqL1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBcbiAgICAvKipcbiAgICAgKiBEZXRhbGxlcyBhZGljaW9uYWxlcyBkZWwgZXJyb3JcbiAgICAgKi9cbiAgICBkZXRhaWxzOiBzdHJpbmc7XG4gICAgXG4gICAgLyoqXG4gICAgICogQ8OzZGlnbyBkZSBlc3RhZG8gSFRUUFxuICAgICAqL1xuICAgIGh0dHBTdGF0dXNDb2RlOiBudW1iZXI7XG4gIH1cbiAgXG4gIC8qKlxuICogRGV0YWxsZXMgZGUgZXJyb3JlcyBkZSB2YWxpZGFjacOzblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZhbGlkYXRpb25GYWlsdXJlIHtcbiAgICAvKipcbiAgICAgKiBOb21icmUgZGUgbGEgcHJvcGllZGFkIHF1ZSBmYWxsw7MgZW4gbGEgdmFsaWRhY2nDs25cbiAgICAgKi9cbiAgICBwcm9wZXJ0eU5hbWU6IHN0cmluZztcbiAgICBcbiAgICAvKipcbiAgICAgKiBNZW5zYWplIGRlIGVycm9yXG4gICAgICovXG4gICAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIFxuICB9XG5cbiAgLyoqXG4gICAqIEludGVyZmF6IHBhcmEgbG9zIGRldGFsbGVzIGRlIHByb2JsZW1hcyBzZWfDum4gUkZDIDk0NTdcbiAgICovXG4gIGV4cG9ydCBpbnRlcmZhY2UgUHJvYmxlbURldGFpbHMge1xuICAgIC8qKiBVUkkgZGUgcmVmZXJlbmNpYSBxdWUgaWRlbnRpZmljYSBlbCB0aXBvIGRlIHByb2JsZW1hICovXG4gICAgdHlwZTogc3RyaW5nO1xuICAgIC8qKiBSZXN1bWVuIGJyZXZlIHkgbGVnaWJsZSBkZWwgdGlwbyBkZSBwcm9ibGVtYSAqL1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgLyoqIEPDs2RpZ28gZGUgZXN0YWRvIEhUVFAgKi9cbiAgICBzdGF0dXM6IG51bWJlcjtcbiAgICAvKiogRXhwbGljYWNpw7NuIGVzcGVjw61maWNhIHkgbGVnaWJsZSBkZSBlc3RhIG9jdXJyZW5jaWEgZGVsIHByb2JsZW1hICovXG4gICAgZGV0YWlsOiBzdHJpbmc7XG4gICAgLyoqIFVSSSBkZSByZWZlcmVuY2lhIHF1ZSBpZGVudGlmaWNhIGxhIG9jdXJyZW5jaWEgZXNwZWPDrWZpY2EgZGVsIHByb2JsZW1hICovXG4gICAgaW5zdGFuY2U/OiBzdHJpbmc7XG4gICAgLyoqIFByb3BpZWRhZGVzIGFkaWNpb25hbGVzIGV4dGVuZGlkYXMgKi9cbiAgICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xuICB9Il19
@@ -0,0 +1,7 @@
1
+ import { SerializableDto } from './serializable-dto';
2
+ /**
3
+ * Clase que extiende SerializableDto agregando propiedades de auditoría
4
+ */
5
+ export class AuditableDto extends SerializableDto {
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXRhYmxlLWR0by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vYXVkaXRhYmxlLWR0by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBYSxTQUFRLGVBQWU7Q0FHaEQiLCJzb3VyY2VzQ29udGVudCI6WyIgXG5pbXBvcnQgeyBEYXRlVGltZSB9IGZyb20gJ2x1eG9uJztcbmltcG9ydCB7IFNlcmlhbGl6YWJsZUR0byB9IGZyb20gJy4vc2VyaWFsaXphYmxlLWR0byc7XG5cbi8qKlxuICogQ2xhc2UgcXVlIGV4dGllbmRlIFNlcmlhbGl6YWJsZUR0byBhZ3JlZ2FuZG8gcHJvcGllZGFkZXMgZGUgYXVkaXRvcsOtYVxuICovXG5leHBvcnQgY2xhc3MgQXVkaXRhYmxlRHRvIGV4dGVuZHMgU2VyaWFsaXphYmxlRHRvIHtcbiAgY3JlYXRlZEF0PzogRGF0ZVRpbWU7XG4gIHVwZGF0ZWRBdD86IERhdGVUaW1lO1xufSJdfQ==
@@ -0,0 +1,7 @@
1
+ import { AuditableDto } from "./auditable-dto";
2
+ /**
3
+ * Clase base para todos los DTOs de la API
4
+ */
5
+ export class BaseDto extends AuditableDto {
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kdG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2Jhc2UtZHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQzs7R0FFRztBQUNILE1BQU0sT0FBTyxPQUFRLFNBQVEsWUFBWTtDQUV4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGF0ZVRpbWV9IGZyb20gJ2x1eG9uJztcbmltcG9ydCB7IEF1ZGl0YWJsZUR0byB9IGZyb20gXCIuL2F1ZGl0YWJsZS1kdG9cIjtcblxuLyoqXG4gKiBDbGFzZSBiYXNlIHBhcmEgdG9kb3MgbG9zIERUT3MgZGUgbGEgQVBJXG4gKi9cbmV4cG9ydCBjbGFzcyBCYXNlRHRvIGV4dGVuZHMgQXVkaXRhYmxlRHRvIHtcbiAgICBpZD86IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ import { BaseDto } from "./base-dto";
2
+ export class CatalogDto extends BaseDto {
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1kdG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2NhdGFsb2ctZHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHckMsTUFBTSxPQUFPLFVBQVcsU0FBUSxPQUFPO0NBTXRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUR0byB9IGZyb20gXCIuL2Jhc2UtZHRvXCI7XG5cblxuZXhwb3J0IGNsYXNzIENhdGFsb2dEdG8gZXh0ZW5kcyBCYXNlRHRvIHtcbiAgICAvKipcbiAgICAgKiBDYXRhbG9nIGRlc2NyaXB0aW9uXG4gICAgICogQGV4YW1wbGUgXCJDYXRhbG9nbyBkZSBmb3JtYXMgZGUgcGFnb1wiXG4gICAgICovXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1yZXNwb25zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vZmlsZS1yZXNwb25zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiIFxuLyoqXG4gKiBGaWxlIHJlc3BvbnNlIGZyb20gdGhlIEFQSS5cbiAqUG9yIGVqZW1wbG86IE1vZGVsbyBkZSByZXNwdWVzdGEgZGUgZ2VuZXJhY2nDs24gZGUgUERGIG8gcmVjdXBlcmFjacOzbiBkZSBYTUxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWxlUmVzcG9uc2Uge1xuICAgIC8qKlxuICAgICAqIEZpbGUgY29udGVudCBhcyBhIGJhc2U2NCBzdHJpbmdcbiAgICAgKi9cbiAgICBiYXNlNjRDb250ZW50OiBzdHJpbmc7XG4gICAgXG4gICAgLyoqXG4gICAgICogRmlsZSBuYW1lXG4gICAgICovXG4gICAgZmlsZU5hbWU6IHN0cmluZztcbiAgICBcbiAgICAvKipcbiAgICAgKiBDb250ZW50IHR5cGVcbiAgICAgKi9cbiAgICBjb250ZW50VHlwZTogc3RyaW5nO1xuICB9Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlzY2FsYXBpLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1vbi9maXNjYWxhcGktc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIiBcblxuLyoqXG4gKiBDb25maWd1cmFjacOzbiBwYXJhIGVsIGNsaWVudGUgZGUgRmlzY2FsQVBJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlzY2FsYXBpU2V0dGluZ3Mge1xuICAgIC8qKlxuICAgKiBVUkwgYmFzZSBkZSBsYSBBUEkgZGUgRmlzY2FsQVBJXG4gICAqL1xuICBhcGlVcmw6IHN0cmluZztcbiAgXG4gIC8qKlxuICAgKiBDbGF2ZSBkZSBBUEkgcGFyYSBhdXRlbnRpY2FjacOzblxuICAgKi9cbiAgYXBpS2V5OiBzdHJpbmc7XG4gIFxuICAvKipcbiAgICogVmVyc2nDs24gZGUgbGEgQVBJIChwcmVkZXRlcm1pbmFkbzogJ3Y0JylcbiAgICovXG4gIGFwaVZlcnNpb24/OiBzdHJpbmc7XG4gIFxuICAvKipcbiAgICogSWRlbnRpZmljYWRvciBkZWwgaW5xdWlsaW5vXG4gICAqL1xuICB0ZW5hbnQ6IHN0cmluZztcbiAgXG4gIC8qKlxuICAgKiBab25hIGhvcmFyaWEgcGFyYSBsYSBBUEkgKHByZWRldGVybWluYWRvOiAnQW1lcmljYS9NZXhpY29fQ2l0eScpXG4gICAqL1xuICB0aW1lWm9uZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhIHNpIGRlIGRlYmUgZWplY3V0YXIgZW4gbW9kbyBkZXB1cmFjacOzbiwgZXN0byBlcywgc2kgc2UgZGViZW4gbW9zdHJhciBsb3MgbG9ncyBkZSBsYSBBUEkgeSBkZXNoYWJpbGl0YXIgbGEgdmFsaWRhY2nDs24gZGVsIGNlcnRpZmljYWRvIFNTTFxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZGVidWc/OiBib29sZWFuO1xufSJdfQ==
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Lista paginada genérica para respuestas de la API
3
+ * @template T
4
+ */
5
+ export class PagedList {
6
+ /**
7
+ * Comprueba si la colección está vacía
8
+ * @returns {boolean} Verdadero si la colección está vacía
9
+ */
10
+ isEmpty() {
11
+ return !this.items || this.items.length === 0;
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZWQtbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vcGFnZWQtbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sU0FBUztJQW9DbEI7OztPQUdHO0lBQ0gsT0FBTztRQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIgXG4vKipcbiAqIExpc3RhIHBhZ2luYWRhIGdlbsOpcmljYSBwYXJhIHJlc3B1ZXN0YXMgZGUgbGEgQVBJXG4gKiBAdGVtcGxhdGUgVFxuICovXG5leHBvcnQgY2xhc3MgUGFnZWRMaXN0PFQ+IHtcbiAgICAvKipcbiAgICAgKiBOw7ptZXJvIGRlIHDDoWdpbmEgYWN0dWFsXG4gICAgICovXG4gICAgcGFnZU51bWJlciE6IG51bWJlcjtcbiAgICBcbiAgICAvKipcbiAgICAgKiBUYW1hw7FvIGRlIHDDoWdpbmFcbiAgICAgKi9cbiAgICBwYWdlU2l6ZSE6IG51bWJlcjtcbiAgICBcbiAgICAvKipcbiAgICAgKiBOw7ptZXJvIHRvdGFsIGRlIGVsZW1lbnRvcyBlbiB0b2RhcyBsYXMgcMOhZ2luYXNcbiAgICAgKi9cbiAgICB0b3RhbEl0ZW1zITogbnVtYmVyO1xuICAgIFxuICAgIC8qKlxuICAgICAqIE7Dum1lcm8gdG90YWwgZGUgcMOhZ2luYXNcbiAgICAgKi9cbiAgICB0b3RhbFBhZ2VzITogbnVtYmVyO1xuICAgIFxuICAgIC8qKlxuICAgICAqIEluZGljYSBzaSBoYXkgdW5hIHDDoWdpbmEgYW50ZXJpb3JcbiAgICAgKi9cbiAgICBoYXNQcmV2aW91c1BhZ2UhOiBib29sZWFuO1xuICAgIFxuICAgIC8qKlxuICAgICAqIEluZGljYSBzaSBoYXkgdW5hIHDDoWdpbmEgc2lndWllbnRlXG4gICAgICovXG4gICAgaGFzTmV4dFBhZ2UhOiBib29sZWFuO1xuICAgIFxuICAgIC8qKlxuICAgICAqIEVsZW1lbnRvcyBlbiBsYSBww6FnaW5hIGFjdHVhbFxuICAgICAqL1xuICAgIGl0ZW1zITogVFtdO1xuICAgIFxuICAgIC8qKlxuICAgICAqIENvbXBydWViYSBzaSBsYSBjb2xlY2Npw7NuIGVzdMOhIHZhY8OtYVxuICAgICAqIEByZXR1cm5zIHtib29sZWFufSBWZXJkYWRlcm8gc2kgbGEgY29sZWNjacOzbiBlc3TDoSB2YWPDrWFcbiAgICAgKi9cbiAgICBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICF0aGlzLml0ZW1zIHx8IHRoaXMuaXRlbXMubGVuZ3RoID09PSAwO1xuICAgIH1cbiAgfSJdfQ==
@@ -0,0 +1,33 @@
1
+ import { DateTime } from 'luxon';
2
+ /**
3
+ * Clase base que proporciona funcionalidad de serialización para modelos de datos
4
+ */
5
+ export class SerializableDto {
6
+ /**
7
+ * Convierte la instancia a una representación JSON en forma de string
8
+ * @returns {string} Representación JSON del objeto
9
+ */
10
+ toString() {
11
+ try {
12
+ // Custom replacer function to handle dates correctly
13
+ const replacer = (_key, value) => {
14
+ // Handle DateTime objects
15
+ if (value instanceof DateTime) {
16
+ return value.toISO();
17
+ }
18
+ return value;
19
+ };
20
+ return JSON.stringify(this, replacer, 2);
21
+ }
22
+ catch (error) {
23
+ return '{"error":"Error generating JSON"}';
24
+ }
25
+ }
26
+ /**
27
+ * Custom implementation to ensure object is correctly serialized in console.log
28
+ */
29
+ [Symbol.for('nodejs.util.inspect.custom')]() {
30
+ return this.toString();
31
+ }
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXphYmxlLWR0by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vc2VyaWFsaXphYmxlLWR0by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRWpDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFFMUI7OztPQUdHO0lBQ0gsUUFBUTtRQUNOLElBQUksQ0FBQztZQUNILHFEQUFxRDtZQUNyRCxNQUFNLFFBQVEsR0FBRyxDQUFDLElBQVksRUFBRSxLQUFVLEVBQUUsRUFBRTtnQkFDNUMsMEJBQTBCO2dCQUMxQixJQUFJLEtBQUssWUFBWSxRQUFRLEVBQUUsQ0FBQztvQkFDOUIsT0FBTyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3ZCLENBQUM7Z0JBQ0QsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDLENBQUM7WUFFRixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sbUNBQW1DLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xuXG4vKipcbiAqIENsYXNlIGJhc2UgcXVlIHByb3BvcmNpb25hIGZ1bmNpb25hbGlkYWQgZGUgc2VyaWFsaXphY2nDs24gcGFyYSBtb2RlbG9zIGRlIGRhdG9zXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJpYWxpemFibGVEdG8ge1xuICBcbiAgLyoqXG4gICAqIENvbnZpZXJ0ZSBsYSBpbnN0YW5jaWEgYSB1bmEgcmVwcmVzZW50YWNpw7NuIEpTT04gZW4gZm9ybWEgZGUgc3RyaW5nXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFJlcHJlc2VudGFjacOzbiBKU09OIGRlbCBvYmpldG9cbiAgICovXG4gIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIEN1c3RvbSByZXBsYWNlciBmdW5jdGlvbiB0byBoYW5kbGUgZGF0ZXMgY29ycmVjdGx5XG4gICAgICBjb25zdCByZXBsYWNlciA9IChfa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpID0+IHtcbiAgICAgICAgLy8gSGFuZGxlIERhdGVUaW1lIG9iamVjdHNcbiAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZVRpbWUpIHtcbiAgICAgICAgICByZXR1cm4gdmFsdWUudG9JU08oKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9O1xuICAgICAgXG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcywgcmVwbGFjZXIsIDIpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gJ3tcImVycm9yXCI6XCJFcnJvciBnZW5lcmF0aW5nIEpTT05cIn0nO1xuICAgIH1cbiAgfVxuICBcbiAgLyoqXG4gICAqIEN1c3RvbSBpbXBsZW1lbnRhdGlvbiB0byBlbnN1cmUgb2JqZWN0IGlzIGNvcnJlY3RseSBzZXJpYWxpemVkIGluIGNvbnNvbGUubG9nXG4gICAqL1xuICBbU3ltYm9sLmZvcignbm9kZWpzLnV0aWwuaW5zcGVjdC5jdXN0b20nKV0oKSB7XG4gICAgcmV0dXJuIHRoaXMudG9TdHJpbmcoKTtcbiAgfVxufSJdfQ==
@@ -0,0 +1,59 @@
1
+ import axios from 'axios';
2
+ import https from 'https';
3
+ import { FiscalapiHttpClient } from './fiscalapi-http-client';
4
+ /**
5
+ * Fábrica para crear clientes HTTP para FiscalAPI
6
+ */
7
+ export class FiscalapiHttpClientFactory {
8
+ /**
9
+ * Crea un nuevo cliente HTTP para FiscalAPI
10
+ * @param {FiscalapiSettings} settings - Configuración de FiscalAPI
11
+ * @returns {IFiscalapiHttpClient} Instancia del cliente HTTP
12
+ * @throws {Error} Si la configuración es nula o indefinida
13
+ */
14
+ static create(settings) {
15
+ if (!settings) {
16
+ throw new Error('La configuración no puede ser nula o indefinida');
17
+ }
18
+ // Crea una clave única para cachear el cliente
19
+ const clientKey = `${settings.apiKey}:${settings.tenant}:${settings.apiUrl}`;
20
+ // Devuelve el cliente cacheado si existe
21
+ if (this.clients.has(clientKey)) {
22
+ return this.clients.get(clientKey);
23
+ }
24
+ // Crea una instancia de Axios configurada
25
+ const axiosInstance = this.createAxiosInstance(settings);
26
+ // Crea y cachea el cliente
27
+ const client = new FiscalapiHttpClient(axiosInstance, settings);
28
+ this.clients.set(clientKey, client);
29
+ return client;
30
+ }
31
+ /**
32
+ * Crea una instancia de Axios configurada según los ajustes de FiscalAPI
33
+ * @param {FiscalapiSettings} settings - Configuración de FiscalAPI
34
+ * @returns {AxiosInstance} Instancia de Axios configurada
35
+ * @private
36
+ */
37
+ static createAxiosInstance(settings) {
38
+ // Agente HTTPS que ignora la validación del certificado autofirmado si está en modo depuración
39
+ const httpsAgent = new https.Agent({
40
+ //rejectUnauthorized: !settings.debug
41
+ rejectUnauthorized: false, // Cambiado a true para producción
42
+ });
43
+ // Crea y configura una nueva instancia de axios
44
+ return axios.create({
45
+ baseURL: settings.apiUrl,
46
+ timeout: 30000, // 30 segundos
47
+ headers: {
48
+ 'X-API-KEY': settings.apiKey,
49
+ 'X-TENANT-KEY': settings.tenant,
50
+ 'X-TIMEZONE': settings.timeZone || 'America/Mexico_City',
51
+ 'Accept': 'application/json',
52
+ 'Content-Type': 'application/json'
53
+ },
54
+ httpsAgent: httpsAgent
55
+ });
56
+ }
57
+ }
58
+ FiscalapiHttpClientFactory.clients = new Map();
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlzY2FsYXBpLWh0dHAtY2xpZW50LWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaHR0cC9maXNjYWxhcGktaHR0cC1jbGllbnQtZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQXdCLE1BQU0sT0FBTyxDQUFDO0FBQzdDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUUxQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUc5RDs7R0FFRztBQUNILE1BQU0sT0FBTywwQkFBMEI7SUFHckM7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQTJCO1FBQzlDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBRUQsK0NBQStDO1FBQy9DLE1BQU0sU0FBUyxHQUFHLEdBQUcsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUU3RSx5Q0FBeUM7UUFDekMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFFLENBQUM7UUFDdEMsQ0FBQztRQUVELDBDQUEwQztRQUMxQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekQsMkJBQTJCO1FBQzNCLE1BQU0sTUFBTSxHQUFHLElBQUksbUJBQW1CLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUVwQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxNQUFNLENBQUMsbUJBQW1CLENBQUMsUUFBMkI7UUFDNUQsK0ZBQStGO1FBQy9GLE1BQU0sVUFBVSxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNqQyxxQ0FBcUM7WUFDckMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLGtDQUFrQztTQUM5RCxDQUFDLENBQUM7UUFFSCxnREFBZ0Q7UUFDaEQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2xCLE9BQU8sRUFBRSxRQUFRLENBQUMsTUFBTTtZQUN4QixPQUFPLEVBQUUsS0FBSyxFQUFFLGNBQWM7WUFDOUIsT0FBTyxFQUFFO2dCQUNQLFdBQVcsRUFBRSxRQUFRLENBQUMsTUFBTTtnQkFDNUIsY0FBYyxFQUFFLFFBQVEsQ0FBQyxNQUFNO2dCQUMvQixZQUFZLEVBQUUsUUFBUSxDQUFDLFFBQVEsSUFBSSxxQkFBcUI7Z0JBQ3hELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLGNBQWMsRUFBRSxrQkFBa0I7YUFDbkM7WUFDRCxVQUFVLEVBQUUsVUFBVTtTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDOztBQXpEYyxrQ0FBTyxHQUFzQyxJQUFJLEdBQUcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGF4aW9zLCB7IEF4aW9zSW5zdGFuY2UgfSBmcm9tICdheGlvcyc7XG5pbXBvcnQgaHR0cHMgZnJvbSAnaHR0cHMnO1xuaW1wb3J0IHsgRmlzY2FsYXBpU2V0dGluZ3MgfSBmcm9tICcuLi9jb21tb24vZmlzY2FsYXBpLXNldHRpbmdzJztcbmltcG9ydCB7IEZpc2NhbGFwaUh0dHBDbGllbnQgfSBmcm9tICcuL2Zpc2NhbGFwaS1odHRwLWNsaWVudCc7XG5pbXBvcnQgeyBJRmlzY2FsYXBpSHR0cENsaWVudCB9IGZyb20gJy4vZmlzY2FsYXBpLWh0dHAtY2xpZW50LmludGVyZmFjZSc7XG5cbi8qKlxuICogRsOhYnJpY2EgcGFyYSBjcmVhciBjbGllbnRlcyBIVFRQIHBhcmEgRmlzY2FsQVBJXG4gKi9cbmV4cG9ydCBjbGFzcyBGaXNjYWxhcGlIdHRwQ2xpZW50RmFjdG9yeSB7XG4gIHByaXZhdGUgc3RhdGljIGNsaWVudHM6IE1hcDxzdHJpbmcsIElGaXNjYWxhcGlIdHRwQ2xpZW50PiA9IG5ldyBNYXAoKTtcblxuICAvKipcbiAgICogQ3JlYSB1biBudWV2byBjbGllbnRlIEhUVFAgcGFyYSBGaXNjYWxBUElcbiAgICogQHBhcmFtIHtGaXNjYWxhcGlTZXR0aW5nc30gc2V0dGluZ3MgLSBDb25maWd1cmFjacOzbiBkZSBGaXNjYWxBUElcbiAgICogQHJldHVybnMge0lGaXNjYWxhcGlIdHRwQ2xpZW50fSBJbnN0YW5jaWEgZGVsIGNsaWVudGUgSFRUUFxuICAgKiBAdGhyb3dzIHtFcnJvcn0gU2kgbGEgY29uZmlndXJhY2nDs24gZXMgbnVsYSBvIGluZGVmaW5pZGFcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY3JlYXRlKHNldHRpbmdzOiBGaXNjYWxhcGlTZXR0aW5ncyk6IElGaXNjYWxhcGlIdHRwQ2xpZW50IHtcbiAgICBpZiAoIXNldHRpbmdzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0xhIGNvbmZpZ3VyYWNpw7NuIG5vIHB1ZWRlIHNlciBudWxhIG8gaW5kZWZpbmlkYScpO1xuICAgIH1cblxuICAgIC8vIENyZWEgdW5hIGNsYXZlIMO6bmljYSBwYXJhIGNhY2hlYXIgZWwgY2xpZW50ZVxuICAgIGNvbnN0IGNsaWVudEtleSA9IGAke3NldHRpbmdzLmFwaUtleX06JHtzZXR0aW5ncy50ZW5hbnR9OiR7c2V0dGluZ3MuYXBpVXJsfWA7XG5cbiAgICAvLyBEZXZ1ZWx2ZSBlbCBjbGllbnRlIGNhY2hlYWRvIHNpIGV4aXN0ZVxuICAgIGlmICh0aGlzLmNsaWVudHMuaGFzKGNsaWVudEtleSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmNsaWVudHMuZ2V0KGNsaWVudEtleSkhO1xuICAgIH1cblxuICAgIC8vIENyZWEgdW5hIGluc3RhbmNpYSBkZSBBeGlvcyBjb25maWd1cmFkYVxuICAgIGNvbnN0IGF4aW9zSW5zdGFuY2UgPSB0aGlzLmNyZWF0ZUF4aW9zSW5zdGFuY2Uoc2V0dGluZ3MpO1xuXG4gICAgLy8gQ3JlYSB5IGNhY2hlYSBlbCBjbGllbnRlXG4gICAgY29uc3QgY2xpZW50ID0gbmV3IEZpc2NhbGFwaUh0dHBDbGllbnQoYXhpb3NJbnN0YW5jZSwgc2V0dGluZ3MpO1xuICAgIHRoaXMuY2xpZW50cy5zZXQoY2xpZW50S2V5LCBjbGllbnQpO1xuXG4gICAgcmV0dXJuIGNsaWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhIHVuYSBpbnN0YW5jaWEgZGUgQXhpb3MgY29uZmlndXJhZGEgc2Vnw7puIGxvcyBhanVzdGVzIGRlIEZpc2NhbEFQSVxuICAgKiBAcGFyYW0ge0Zpc2NhbGFwaVNldHRpbmdzfSBzZXR0aW5ncyAtIENvbmZpZ3VyYWNpw7NuIGRlIEZpc2NhbEFQSVxuICAgKiBAcmV0dXJucyB7QXhpb3NJbnN0YW5jZX0gSW5zdGFuY2lhIGRlIEF4aW9zIGNvbmZpZ3VyYWRhXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBjcmVhdGVBeGlvc0luc3RhbmNlKHNldHRpbmdzOiBGaXNjYWxhcGlTZXR0aW5ncyk6IEF4aW9zSW5zdGFuY2Uge1xuICAgIC8vIEFnZW50ZSBIVFRQUyBxdWUgaWdub3JhIGxhIHZhbGlkYWNpw7NuIGRlbCBjZXJ0aWZpY2FkbyBhdXRvZmlybWFkbyBzaSBlc3TDoSBlbiBtb2RvIGRlcHVyYWNpw7NuXG4gICAgY29uc3QgaHR0cHNBZ2VudCA9IG5ldyBodHRwcy5BZ2VudCh7XG4gICAgICAvL3JlamVjdFVuYXV0aG9yaXplZDogIXNldHRpbmdzLmRlYnVnXG4gICAgICByZWplY3RVbmF1dGhvcml6ZWQ6IGZhbHNlLCAvLyBDYW1iaWFkbyBhIHRydWUgcGFyYSBwcm9kdWNjacOzblxuICAgIH0pO1xuXG4gICAgLy8gQ3JlYSB5IGNvbmZpZ3VyYSB1bmEgbnVldmEgaW5zdGFuY2lhIGRlIGF4aW9zXG4gICAgcmV0dXJuIGF4aW9zLmNyZWF0ZSh7XG4gICAgICBiYXNlVVJMOiBzZXR0aW5ncy5hcGlVcmwsXG4gICAgICB0aW1lb3V0OiAzMDAwMCwgLy8gMzAgc2VndW5kb3NcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ1gtQVBJLUtFWSc6IHNldHRpbmdzLmFwaUtleSxcbiAgICAgICAgJ1gtVEVOQU5ULUtFWSc6IHNldHRpbmdzLnRlbmFudCxcbiAgICAgICAgJ1gtVElNRVpPTkUnOiBzZXR0aW5ncy50aW1lWm9uZSB8fCAnQW1lcmljYS9NZXhpY29fQ2l0eScsXG4gICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgIH0sXG4gICAgICBodHRwc0FnZW50OiBodHRwc0FnZW50XG4gICAgfSk7XG4gIH1cbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlzY2FsYXBpLWh0dHAtY2xpZW50LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9odHRwL2Zpc2NhbGFwaS1odHRwLWNsaWVudC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF4aW9zUmVxdWVzdENvbmZpZyB9IGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vY29tbW9uL2FwaS1yZXNwb25zZSc7XG5cbi8qKlxuICogTcOpdG9kb3MgSFRUUCBzb3BvcnRhZG9zXG4gKi9cbmV4cG9ydCB0eXBlIEh0dHBNZXRob2QgPSAnR0VUJyB8ICdQT1NUJyB8ICdQVVQnIHwgJ1BBVENIJyB8ICdERUxFVEUnIHwgJ0hFQUQnIHwgJ09QVElPTlMnO1xuXG4vKipcbiAqIE9wY2lvbmVzIHBhcmEgdW5hIHBldGljacOzbiBIVFRQIGdlbsOpcmljYVxuICogQHRlbXBsYXRlIFREYXRhIC0gVGlwbyBkZSBkYXRvcyBkZSBlbnRyYWRhIChvcGNpb25hbClcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0T3B0aW9uczxURGF0YSA9IGFueT4ge1xuICAvKiogRGF0b3MgcGFyYSBlbnZpYXIgZW4gZWwgY3VlcnBvIGRlIGxhIHBldGljacOzbiAob3BjaW9uYWwpICovXG4gIGRhdGE/OiBURGF0YTtcbiAgLyoqIFBhcsOhbWV0cm9zIGRlIGNvbnN1bHRhIChxdWVyeSBzdHJpbmcpIChvcGNpb25hbCkgKi9cbiAgcXVlcnlQYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKiogQ29uZmlndXJhY2nDs24gYWRpY2lvbmFsIHBhcmEgQXhpb3MgKG9wY2lvbmFsKSAqL1xuICBjb25maWc/OiBBeGlvc1JlcXVlc3RDb25maWc7XG4gIC8qKiBUcmFuc2Zvcm1hZG9yIGRlIHJlc3B1ZXN0YSBwZXJzb25hbGl6YWRvIChvcGNpb25hbCkgKi9cbiAgcmVzcG9uc2VUcmFuc2Zvcm1lcj86IDxUPihyZXNwb25zZTogYW55KSA9PiBUO1xufVxuXG4vKipcbiAqIEludGVyZmF6IHBhcmEgZWwgY2xpZW50ZSBIVFRQIGRlIEZpc2NhbEFQSVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElGaXNjYWxhcGlIdHRwQ2xpZW50IHtcbiAgLyoqXG4gICAqIFJlYWxpemEgdW5hIHBldGljacOzbiBHRVQgYSBsYSBBUElcbiAgICogQHBhcmFtIGVuZHBvaW50IC0gUHVudG8gZmluYWwgZGUgbGEgQVBJXG4gICAqIEBwYXJhbSBjb25maWcgLSBDb25maWd1cmFjacOzbiBhZGljaW9uYWwgcGFyYSBsYSBwZXRpY2nDs25cbiAgICogQHJldHVybnMgUmVzcHVlc3RhIGRlIGxhIEFQSVxuICAgKi9cbiAgZ2V0QXN5bmM8VD4oZW5kcG9pbnQ6IHN0cmluZywgY29uZmlnPzogQXhpb3NSZXF1ZXN0Q29uZmlnKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUPj47XG5cbiAgLyoqXG4gICAqIFJlYWxpemEgdW5hIHBldGljacOzbiBHRVQgcG9yIElEIGEgbGEgQVBJXG4gICAqIEBwYXJhbSBlbmRwb2ludCAtIFB1bnRvIGZpbmFsIGRlIGxhIEFQSSBjb24gSURcbiAgICogQHBhcmFtIGNvbmZpZyAtIENvbmZpZ3VyYWNpw7NuIGFkaWNpb25hbCBwYXJhIGxhIHBldGljacOzblxuICAgKiBAcmV0dXJucyBSZXNwdWVzdGEgZGUgbGEgQVBJXG4gICAqL1xuICBnZXRCeUlkQXN5bmM8VD4oZW5kcG9pbnQ6IHN0cmluZywgY29uZmlnPzogQXhpb3NSZXF1ZXN0Q29uZmlnKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUPj47XG5cbiAgLyoqXG4gICAqIFJlYWxpemEgdW5hIHBldGljacOzbiBQT1NUIGEgbGEgQVBJXG4gICAqIEBwYXJhbSBlbmRwb2ludCAtIFB1bnRvIGZpbmFsIGRlIGxhIEFQSVxuICAgKiBAcGFyYW0gZGF0YSAtIERhdG9zIGEgZW52aWFyIGVuIGxhIHBldGljacOzblxuICAgKiBAcGFyYW0gY29uZmlnIC0gQ29uZmlndXJhY2nDs24gYWRpY2lvbmFsIHBhcmEgbGEgcGV0aWNpw7NuXG4gICAqIEByZXR1cm5zIFJlc3B1ZXN0YSBkZSBsYSBBUElcbiAgICovXG4gIHBvc3RBc3luYzxULCBURGF0YSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgICBlbmRwb2ludDogc3RyaW5nLFxuICAgIGRhdGE6IFREYXRhLFxuICAgIGNvbmZpZz86IEF4aW9zUmVxdWVzdENvbmZpZ1xuICApOiBQcm9taXNlPEFwaVJlc3BvbnNlPFQ+PjtcblxuICAvKipcbiAgICogUmVhbGl6YSB1bmEgcGV0aWNpw7NuIFBVVCBhIGxhIEFQSVxuICAgKiBAcGFyYW0gZW5kcG9pbnQgLSBQdW50byBmaW5hbCBkZSBsYSBBUElcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRvcyBhIGVudmlhciBlbiBsYSBwZXRpY2nDs25cbiAgICogQHBhcmFtIGNvbmZpZyAtIENvbmZpZ3VyYWNpw7NuIGFkaWNpb25hbCBwYXJhIGxhIHBldGljacOzblxuICAgKiBAcmV0dXJucyBSZXNwdWVzdGEgZGUgbGEgQVBJXG4gICAqL1xuICBwdXRBc3luYzxULCBURGF0YSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgICBlbmRwb2ludDogc3RyaW5nLFxuICAgIGRhdGE6IFREYXRhLFxuICAgIGNvbmZpZz86IEF4aW9zUmVxdWVzdENvbmZpZ1xuICApOiBQcm9taXNlPEFwaVJlc3BvbnNlPFQ+PjtcblxuICAvKipcbiAgICogUmVhbGl6YSB1bmEgcGV0aWNpw7NuIERFTEVURSBhIGxhIEFQSVxuICAgKiBAcGFyYW0gZW5kcG9pbnQgLSBQdW50byBmaW5hbCBkZSBsYSBBUElcbiAgICogQHBhcmFtIGNvbmZpZyAtIENvbmZpZ3VyYWNpw7NuIGFkaWNpb25hbCBwYXJhIGxhIHBldGljacOzblxuICAgKiBAcmV0dXJucyBSZXNwdWVzdGEgZGUgbGEgQVBJXG4gICAqL1xuICBkZWxldGVBc3luYyhlbmRwb2ludDogc3RyaW5nLCBjb25maWc/OiBBeGlvc1JlcXVlc3RDb25maWcpOiBQcm9taXNlPEFwaVJlc3BvbnNlPGJvb2xlYW4+PjtcblxuICAvKipcbiAgICogUmVhbGl6YSB1bmEgcGV0aWNpw7NuIFBBVENIIGEgbGEgQVBJXG4gICAqIEBwYXJhbSBlbmRwb2ludCAtIFB1bnRvIGZpbmFsIGRlIGxhIEFQSVxuICAgKiBAcGFyYW0gZGF0YSAtIERhdG9zIGEgZW52aWFyIGVuIGxhIHBldGljacOzblxuICAgKiBAcGFyYW0gY29uZmlnIC0gQ29uZmlndXJhY2nDs24gYWRpY2lvbmFsIHBhcmEgbGEgcGV0aWNpw7NuXG4gICAqIEByZXR1cm5zIFJlc3B1ZXN0YSBkZSBsYSBBUElcbiAgICovXG4gIHBhdGNoQXN5bmM8VCwgVERhdGEgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oXG4gICAgZW5kcG9pbnQ6IHN0cmluZyxcbiAgICBkYXRhOiBURGF0YSxcbiAgICBjb25maWc/OiBBeGlvc1JlcXVlc3RDb25maWdcbiAgKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUPj47XG5cbiAgLyoqXG4gICAqIEVqZWN1dGEgdW5hIHBldGljacOzbiBIVFRQIGdlbsOpcmljYSBjb24gY29udHJvbCBjb21wbGV0byBzb2JyZSBsb3MgcGFyw6FtZXRyb3NcbiAgICogQHBhcmFtIG1ldGhvZCAtIE3DqXRvZG8gSFRUUCBhIHV0aWxpemFyXG4gICAqIEBwYXJhbSBlbmRwb2ludCAtIFB1bnRvIGZpbmFsIGRlIGxhIEFQSVxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE9wY2lvbmVzIGRlIGxhIHBldGljacOzblxuICAgKiBAcmV0dXJucyBSZXNwdWVzdGEgZGUgbGEgQVBJXG4gICAqIEB0ZW1wbGF0ZSBUUmVzdWx0IC0gVGlwbyBkZSBkYXRvcyBlc3BlcmFkbyBlbiBsYSByZXNwdWVzdGFcbiAgICogQHRlbXBsYXRlIFREYXRhIC0gVGlwbyBkZSBkYXRvcyBhIGVudmlhciBlbiBsYSBwZXRpY2nDs24gKG9wY2lvbmFsKVxuICAgKi9cbiAgZXhlY3V0ZVJlcXVlc3Q8VFJlc3VsdCwgVERhdGEgPSBhbnk+KFxuICAgIG1ldGhvZDogSHR0cE1ldGhvZCxcbiAgICBlbmRwb2ludDogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uczxURGF0YT5cbiAgKTogUHJvbWlzZTxBcGlSZXNwb25zZTxUUmVzdWx0Pj47XG59Il19