@senior-agronegocio/angular-components 0.0.9859 → 0.0.9860

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 (109) hide show
  1. package/bundles/senior-agronegocio-angular-components.umd.js +50 -797
  2. package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
  3. package/bundles/senior-agronegocio-angular-components.umd.min.js +2 -2
  4. package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
  5. package/common/agro-regex.constant.d.ts +0 -3
  6. package/common/agro-string-utils.class.d.ts +0 -3
  7. package/components/index.d.ts +0 -1
  8. package/esm2015/common/agro-platform-utils.class.js +7 -8
  9. package/esm2015/common/agro-regex.constant.js +2 -5
  10. package/esm2015/common/agro-string-utils.class.js +11 -27
  11. package/esm2015/components/index.js +1 -2
  12. package/esm2015/lib-translation.module.js +1 -3
  13. package/esm2015/pipe/index.js +1 -5
  14. package/esm2015/public-api.js +3 -3
  15. package/esm2015/senior-agronegocio-angular-components.js +2 -3
  16. package/esm2015/services/i18n/en-US.js +2 -9
  17. package/esm2015/services/i18n/es-CO.js +3 -10
  18. package/esm2015/services/i18n/pt-BR.js +3 -11
  19. package/esm2015/services/lib-translation.service.js +3 -3
  20. package/esm5/common/agro-platform-utils.class.js +7 -8
  21. package/esm5/common/agro-regex.constant.js +2 -5
  22. package/esm5/common/agro-string-utils.class.js +11 -27
  23. package/esm5/components/index.js +1 -2
  24. package/esm5/lib-translation.module.js +1 -3
  25. package/esm5/pipe/index.js +1 -5
  26. package/esm5/public-api.js +3 -3
  27. package/esm5/senior-agronegocio-angular-components.js +2 -3
  28. package/esm5/services/i18n/en-US.js +2 -9
  29. package/esm5/services/i18n/es-CO.js +3 -10
  30. package/esm5/services/i18n/pt-BR.js +3 -11
  31. package/esm5/services/lib-translation.service.js +3 -3
  32. package/fesm2015/senior-agronegocio-angular-components.js +52 -723
  33. package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
  34. package/fesm5/senior-agronegocio-angular-components.js +57 -791
  35. package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
  36. package/package.json +55 -7
  37. package/pipe/index.d.ts +0 -4
  38. package/public-api.d.ts +2 -2
  39. package/senior-agronegocio-angular-components.d.ts +1 -2
  40. package/senior-agronegocio-angular-components.metadata.json +1 -1
  41. package/services/i18n/en-US.d.ts +1 -8
  42. package/services/i18n/es-CO.d.ts +1 -8
  43. package/services/i18n/pt-BR.d.ts +1 -9
  44. package/common/agro-object-stringifier.class.d.ts +0 -16
  45. package/components/modal-invoice-pj-selector/index.d.ts +0 -4
  46. package/components/modal-invoice-pj-selector/modal-invoice-pj-selector-options.interface.d.ts +0 -10
  47. package/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.d.ts +0 -40
  48. package/components/modal-invoice-pj-selector/modal-invoice-pj-selector.module.d.ts +0 -2
  49. package/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.module.d.ts +0 -2
  50. package/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.service.d.ts +0 -16
  51. package/components/modal-invoice-pj-selector/services/agro-invoice/index.d.ts +0 -2
  52. package/components/modal-invoice-pj-selector/services/agro-invoice/interfaces.d.ts +0 -73
  53. package/esm2015/common/agro-object-stringifier.class.js +0 -31
  54. package/esm2015/components/modal-invoice-pj-selector/index.js +0 -4
  55. package/esm2015/components/modal-invoice-pj-selector/modal-invoice-pj-selector-options.interface.js +0 -1
  56. package/esm2015/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.js +0 -188
  57. package/esm2015/components/modal-invoice-pj-selector/modal-invoice-pj-selector.module.js +0 -42
  58. package/esm2015/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.module.js +0 -28
  59. package/esm2015/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.service.js +0 -49
  60. package/esm2015/components/modal-invoice-pj-selector/services/agro-invoice/index.js +0 -3
  61. package/esm2015/components/modal-invoice-pj-selector/services/agro-invoice/interfaces.js +0 -13
  62. package/esm2015/pipe/cnpj-cpf/cnpj-cpf.pipe.js +0 -28
  63. package/esm2015/pipe/cnpj-cpf/cnpj-cpf.pipe.module.js +0 -15
  64. package/esm2015/pipe/cnpj-cpf/index.js +0 -3
  65. package/esm2015/pipe/kilogram/index.js +0 -3
  66. package/esm2015/pipe/kilogram/kilogram.module.js +0 -17
  67. package/esm2015/pipe/kilogram/kilogram.pipe.js +0 -38
  68. package/esm2015/pipe/stringifier/index.js +0 -3
  69. package/esm2015/pipe/stringifier/stringifier.pipe.js +0 -13
  70. package/esm2015/pipe/stringifier/stringifier.pipe.module.js +0 -15
  71. package/esm2015/pipe/telephone/index.js +0 -3
  72. package/esm2015/pipe/telephone/telephone.pipe.js +0 -91
  73. package/esm2015/pipe/telephone/telephone.pipe.module.js +0 -15
  74. package/esm2015/services/entity-service.js +0 -124
  75. package/esm5/common/agro-object-stringifier.class.js +0 -35
  76. package/esm5/components/modal-invoice-pj-selector/index.js +0 -4
  77. package/esm5/components/modal-invoice-pj-selector/modal-invoice-pj-selector-options.interface.js +0 -1
  78. package/esm5/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.js +0 -197
  79. package/esm5/components/modal-invoice-pj-selector/modal-invoice-pj-selector.module.js +0 -45
  80. package/esm5/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.module.js +0 -31
  81. package/esm5/components/modal-invoice-pj-selector/services/agro-invoice/agro-invoice.service.js +0 -56
  82. package/esm5/components/modal-invoice-pj-selector/services/agro-invoice/index.js +0 -3
  83. package/esm5/components/modal-invoice-pj-selector/services/agro-invoice/interfaces.js +0 -13
  84. package/esm5/pipe/cnpj-cpf/cnpj-cpf.pipe.js +0 -35
  85. package/esm5/pipe/cnpj-cpf/cnpj-cpf.pipe.module.js +0 -18
  86. package/esm5/pipe/cnpj-cpf/index.js +0 -3
  87. package/esm5/pipe/kilogram/index.js +0 -3
  88. package/esm5/pipe/kilogram/kilogram.module.js +0 -20
  89. package/esm5/pipe/kilogram/kilogram.pipe.js +0 -41
  90. package/esm5/pipe/stringifier/index.js +0 -3
  91. package/esm5/pipe/stringifier/stringifier.pipe.js +0 -16
  92. package/esm5/pipe/stringifier/stringifier.pipe.module.js +0 -18
  93. package/esm5/pipe/telephone/index.js +0 -3
  94. package/esm5/pipe/telephone/telephone.pipe.js +0 -95
  95. package/esm5/pipe/telephone/telephone.pipe.module.js +0 -18
  96. package/esm5/services/entity-service.js +0 -135
  97. package/pipe/cnpj-cpf/cnpj-cpf.pipe.d.ts +0 -4
  98. package/pipe/cnpj-cpf/cnpj-cpf.pipe.module.d.ts +0 -2
  99. package/pipe/cnpj-cpf/index.d.ts +0 -2
  100. package/pipe/kilogram/index.d.ts +0 -2
  101. package/pipe/kilogram/kilogram.module.d.ts +0 -2
  102. package/pipe/kilogram/kilogram.pipe.d.ts +0 -8
  103. package/pipe/stringifier/index.d.ts +0 -2
  104. package/pipe/stringifier/stringifier.pipe.d.ts +0 -9
  105. package/pipe/stringifier/stringifier.pipe.module.d.ts +0 -2
  106. package/pipe/telephone/index.d.ts +0 -2
  107. package/pipe/telephone/telephone.pipe.d.ts +0 -21
  108. package/pipe/telephone/telephone.pipe.module.d.ts +0 -2
  109. package/services/entity-service.d.ts +0 -72
@@ -1,91 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Pipe } from "@angular/core";
3
- import { AGRO_NUMBERS } from "../../enums/agro-numbers.enum";
4
- let TelephonePipe = class TelephonePipe {
5
- /**
6
- * Transforma um número de telefone aplicando máscara automaticamente.
7
- * @param value Valor do telefone.
8
- * @param withDDI Define se deve forçar formatação com DDI (mesmo que não exista).
9
- */
10
- transform(value, withDDI = false) {
11
- if (!value) {
12
- return "";
13
- }
14
- const digits = this.cleanDigits(value);
15
- if (!digits) {
16
- return value.toString();
17
- }
18
- const { ddi, ddd, number } = this.extractParts(digits, withDDI);
19
- return this.formatPhone(ddi, ddd, number, value.toString(), withDDI);
20
- }
21
- /** Remove todos os caracteres não numéricos */
22
- cleanDigits(value) {
23
- return value.toString().replace(/\D+/g, "");
24
- }
25
- /** Extrai DDI, DDD e número, considerando se deve aplicar DDI forçado */
26
- extractParts(digits, withDDI) {
27
- const len = digits.length;
28
- if (withDDI) {
29
- return this.extractWithDDI(digits);
30
- }
31
- if (len <= AGRO_NUMBERS.NINE) {
32
- return { ddi: "", ddd: "", number: digits };
33
- }
34
- if (len <= AGRO_NUMBERS.ELEVEN) {
35
- return this.extractWithDDD(digits);
36
- }
37
- return this.extractWithDDI(digits);
38
- }
39
- /** Extrai DDD e número (sem DDI) */
40
- extractWithDDD(digits) {
41
- const ddd = digits.slice(0, 2);
42
- const number = digits.slice(2);
43
- return { ddi: "", ddd, number };
44
- }
45
- /** Extrai DDI, DDD e número */
46
- extractWithDDI(digits) {
47
- const len = digits.length;
48
- let ddiLen = AGRO_NUMBERS.ONE;
49
- if (len >= AGRO_NUMBERS.FOURTEEN) {
50
- ddiLen = AGRO_NUMBERS.THREE;
51
- }
52
- if (len >= AGRO_NUMBERS.TWELVE) {
53
- ddiLen = AGRO_NUMBERS.TWO;
54
- }
55
- const ddi = digits.slice(AGRO_NUMBERS.ZERO, ddiLen);
56
- const ddd = digits.slice(ddiLen, ddiLen + AGRO_NUMBERS.TWO);
57
- const number = digits.slice(ddiLen + AGRO_NUMBERS.TWO);
58
- return { ddi, ddd, number };
59
- }
60
- /** Monta o número formatado */
61
- formatPhone(ddi, ddd, number, fallback, withDDI) {
62
- if (!number) {
63
- return fallback;
64
- }
65
- let formatted = "";
66
- if (withDDI || ddi) {
67
- formatted += `+${ddi || "55"} `;
68
- }
69
- if (ddd) {
70
- formatted += `(${ddd}) `;
71
- }
72
- formatted += this.formatNumber(number);
73
- return formatted;
74
- }
75
- /** Aplica máscara de 8 ou 9 dígitos */
76
- formatNumber(number) {
77
- const len = number.length;
78
- if (len === AGRO_NUMBERS.NINE) {
79
- return `${number.slice(AGRO_NUMBERS.ZERO, AGRO_NUMBERS.FIVE)}-${number.slice(AGRO_NUMBERS.FIVE)}`;
80
- }
81
- if (len === AGRO_NUMBERS.EIGHT) {
82
- return `${number.slice(AGRO_NUMBERS.ZERO, AGRO_NUMBERS.FOUR)}-${number.slice(AGRO_NUMBERS.FOUR)}`;
83
- }
84
- return number;
85
- }
86
- };
87
- TelephonePipe = __decorate([
88
- Pipe({ name: "telephone" })
89
- ], TelephonePipe);
90
- export { TelephonePipe };
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsZXBob25lLnBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInBpcGUvdGVsZXBob25lL3RlbGVwaG9uZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHN0QsSUFBYSxhQUFhLEdBQTFCLE1BQWEsYUFBYTtJQUN0Qjs7OztPQUlHO0lBQ0gsU0FBUyxDQUFDLEtBQXNCLEVBQUUsT0FBTyxHQUFHLEtBQUs7UUFDN0MsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFDRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMzQjtRQUVELE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELCtDQUErQztJQUN2QyxXQUFXLENBQUMsS0FBc0I7UUFDdEMsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQseUVBQXlFO0lBQ2pFLFlBQVksQ0FBQyxNQUFjLEVBQUUsT0FBZ0I7UUFDakQsTUFBTSxHQUFHLEdB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Q0FBQztTQUNyRztRQUNELElBQUksR0FBRyxLQUFLLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDNUIsT0FBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUNyRztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7Q0FDSixDQUFBO0FBbEdZLGFBQWE7SUFEekIsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDO0dBQ2YsYUFBYSxDQWtHekI7U0FsR1ksYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tIFwiLi4vLi4vZW51bXMvYWdyby1udW1iZXJzLmVudW1cIjtcclxuXHJcbkBQaXBlKHsgbmFtZTogXCJ0ZWxlcGhvbmVcIiB9KVxyXG5leHBvcnQgY2xhc3MgVGVsZXBob25lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgLyoqXHJcbiAgICAgKiBUcmFuc2Zvcm1hIHVtIG7Dum1lcm8gZGUgdGVsZWZvbmUgYXBsaWNhbmRvIG3DoXNjYXJhIGF1dG9tYXRpY2FtZW50ZS5cclxuICAgICAqIEBwYXJhbSB2YWx1ZSBWYWxvciBkbyB0ZWxlZm9uZS5cclxuICAgICAqIEBwYXJhbSB3aXRoRERJIERlZmluZSBzZSBkZXZlIGZvcsOnYXIgZm9ybWF0YcOnw6NvIGNvbSBEREkgKG1lc21vIHF1ZSBuw6NvIGV4aXN0YSkuXHJcbiAgICAgKi9cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCB3aXRoRERJID0gZmFsc2UpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGRpZ2l0cyA9IHRoaXMuY2xlYW5EaWdpdHModmFsdWUpO1xyXG4gICAgICAgIGlmICghZGlnaXRzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgeyBkZGksIGRkZCwgbnVtYmVyIH0gPSB0aGlzLmV4dHJhY3RQYXJ0cyhkaWdpdHMsIHdpdGhEREkpO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdFBob25lKGRkaSwgZGRkLCBudW1iZXIsIHZhbHVlLnRvU3RyaW5nKCksIHdpdGhEREkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBSZW1vdmUgdG9kb3Mgb3MgY2FyYWN0ZXJlcyBuw6NvIG51bcOpcmljb3MgKi9cclxuICAgIHByaXZhdGUgY2xlYW5EaWdpdHModmFsdWU6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZSgvXFxEKy9nLCBcIlwiKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogRXh0cmFpIERESSwgREREIGUgbsO6bWVybywgY29uc2lkZXJhbmRvIHNlIGRldmUgYXBsaWNhciBEREkgZm9yw6dhZG8gKi9cclxuICAgIHByaXZhdGUgZXh0cmFjdFBhcnRzKGRpZ2l0czogc3RyaW5nLCB3aXRoRERJOiBib29sZWFuKTogeyBkZGk6IHN0cmluZzsgZGRkOiBzdHJpbmc7IG51bWJlcjogc3RyaW5nIH0ge1xyXG4gICAgICAgIGNvbnN0IGxlbiA9IGRpZ2l0cy5sZW5ndGg7XHJcblxyXG4gICAgICAgIGlmICh3aXRoRERJKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmV4dHJhY3RXaXRoRERJKGRpZ2l0cyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAobGVuIDw9IEFHUk9fTlVNQkVSUy5OSU5FKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7IGRkaTogXCJcIiwgZGRkOiBcIlwiLCBudW1iZXI6IGRpZ2l0cyB9O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGxlbiA8PSBBR1JPX05VTUJFUlMuRUxFVkVOKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmV4dHJhY3RXaXRoREREKGRpZ2l0cyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5leHRyYWN0V2l0aERESShkaWdpdHMpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBFeHRyYWkgREREIGUgbsO6bWVybyAoc2VtIERESSkgKi9cclxuICAgIHByaXZhdGUgZXh0cmFjdFdpdGhEREQoZGlnaXRzOiBzdHJpbmcpOiB7IGRkaTogc3RyaW5nOyBkZGQ6IHN0cmluZzsgbnVtYmVyOiBzdHJpbmcgfSB7XHJcbiAgICAgICAgY29uc3QgZGRkID0gZGlnaXRzLnNsaWNlKDAsIDIpO1xyXG4gICAgICAgIGNvbnN0IG51bWJlciA9IGRpZ2l0cy5zbGljZSgyKTtcclxuICAgICAgICByZXR1cm4geyBkZGk6IFwiXCIsIGRkZCwgbnVtYmVyIH07XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEV4dHJhaSBEREksIERERCBlIG7Dum1lcm8gKi9cclxuICAgIHByaXZhdGUgZXh0cmFjdFdpdGhEREkoZGlnaXRzOiBzdHJpbmcpOiB7IGRkaTogc3RyaW5nOyBkZGQ6IHN0cmluZzsgbnVtYmVyOiBzdHJpbmcgfSB7XHJcbiAgICAgICAgY29uc3QgbGVuID0gZGlnaXRzLmxlbmd0aDtcclxuXHJcbiAgICAgICAgbGV0IGRkaUxlbiA9IEFHUk9fTlVNQkVSUy5PTkU7XHJcbiAgICAgICAgaWYgKGxlbiA+PSBBR1JPX05VTUJFUlMuRk9VUlRFRU4pIHtcclxuICAgICAgICAgICAgZGRpTGVuID0gQUdST19OVU1CRVJTLlRIUkVFO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobGVuID49IEFHUk9fTlVNQkVSUy5UV0VMVkUpIHtcclxuICAgICAgICAgICAgZGRpTGVuID0gQUdST19OVU1CRVJTLlRXTztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGRkaSA9IGRpZ2l0cy5zbGljZShBR1JPX05VTUJFUlMuWkVSTywgZGRpTGVuKTtcclxuICAgICAgICBjb25zdCBkZGQgPSBkaWdpdHMuc2xpY2UoZGRpTGVuLCBkZGlMZW4gKyBBR1JPX05VTUJFUlMuVFdPKTtcclxuICAgICAgICBjb25zdCBudW1iZXIgPSBkaWdpdHMuc2xpY2UoZGRpTGVuICsgQUdST19OVU1CRVJTLlRXTyk7XHJcbiAgICAgICAgcmV0dXJuIHsgZGRpLCBkZGQsIG51bWJlciB9O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBNb250YSBvIG7Dum1lcm8gZm9ybWF0YWRvICovXHJcbiAgICBwcml2YXRlIGZvcm1hdFBob25lKGRkaTogc3RyaW5nLCBkZGQ6IHN0cmluZywgbnVtYmVyOiBzdHJpbmcsIGZhbGxiYWNrOiBzdHJpbmcsIHdpdGhEREk6IGJvb2xlYW4pOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghbnVtYmVyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxsYmFjaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBmb3JtYXR0ZWQgPSBcIlwiO1xyXG5cclxuICAgICAgICBpZiAod2l0aERESSB8fCBkZGkpIHtcclxuICAgICAgICAgICAgZm9ybWF0dGVkICs9IGArJHtkZGkgfHwgXCI1NVwifSBgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZGRkKSB7XHJcbiAgICAgICAgICAgIGZvcm1hdHRlZCArPSBgKCR7ZGRkfSkgYDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvcm1hdHRlZCArPSB0aGlzLmZvcm1hdE51bWJlcihudW1iZXIpO1xyXG4gICAgICAgIHJldHVybiBmb3JtYXR0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEFwbGljYSBtw6FzY2FyYSBkZSA4IG91IDkgZMOtZ2l0b3MgKi9cclxuICAgIHByaXZhdGUgZm9ybWF0TnVtYmVyKG51bWJlcjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBsZW4gPSBudW1iZXIubGVuZ3RoO1xyXG4gICAgICAgIGlmIChsZW4gPT09IEFHUk9fTlVNQkVSUy5OSU5FKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHtudW1iZXIuc2xpY2UoQUdST19OVU1CRVJTLlpFUk8sIEFHUk9fTlVNQkVSUy5GSVZFKX0tJHtudW1iZXIuc2xpY2UoQUdST19OVU1CRVJTLkZJVkUpfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChsZW4gPT09IEFHUk9fTlVNQkVSUy5FSUdIVCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7bnVtYmVyLnNsaWNlKEFHUk9fTlVNQkVSUy5aRVJPLCBBR1JPX05VTUJFUlMuRk9VUil9LSR7bnVtYmVyLnNsaWNlKEFHUk9fTlVNQkVSUy5GT1VSKX1gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVtYmVyO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,15 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { NgModule } from "@angular/core";
3
- import { CommonModule } from "@angular/common";
4
- import { TelephonePipe } from "./telephone.pipe";
5
- let TelephonePipeModule = class TelephonePipeModule {
6
- };
7
- TelephonePipeModule = __decorate([
8
- NgModule({
9
- declarations: [TelephonePipe],
10
- imports: [CommonModule],
11
- exports: [TelephonePipe],
12
- })
13
- ], TelephonePipeModule);
14
- export { TelephonePipeModule };
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsZXBob25lLnBpcGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJwaXBlL3RlbGVwaG9uZS90ZWxlcGhvbmUucGlwZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQU9qRCxJQUFhLG1CQUFtQixHQUFoQyxNQUFhLG1CQUFtQjtDQUFHLENBQUE7QUFBdEIsbUJBQW1CO0lBTC9CLFFBQVEsQ0FBQztRQUNOLFlBQVksRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUM3QixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7UUFDdkIsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO0tBQzNCLENBQUM7R0FDVyxtQkFBbUIsQ0FBRztTQUF0QixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgVGVsZXBob25lUGlwZSB9IGZyb20gXCIuL3RlbGVwaG9uZS5waXBlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbVGVsZXBob25lUGlwZV0sXHJcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICAgIGV4cG9ydHM6IFtUZWxlcGhvbmVQaXBlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRlbGVwaG9uZVBpcGVNb2R1bGUge31cclxuIl19
@@ -1,124 +0,0 @@
1
- import { HttpParams } from "@angular/common/http";
2
- import { throwError } from "rxjs";
3
- import { catchError } from "rxjs/operators";
4
- export class AgroEntityService {
5
- constructor(http, messageService, entityUrl, actionsUrl, queriesUrl, translate) {
6
- this.http = http;
7
- this.messageService = messageService;
8
- this.entityUrl = entityUrl;
9
- this.actionsUrl = actionsUrl;
10
- this.queriesUrl = queriesUrl;
11
- this.translate = translate;
12
- this.http = http;
13
- this.messageService = messageService;
14
- this.entityUrl = entityUrl;
15
- this.actionsUrl = actionsUrl;
16
- this.queriesUrl = queriesUrl;
17
- this.translate = translate;
18
- this.defaultCatch = this.defaultCatch.bind(this);
19
- }
20
- getListQueryParams(listParams) {
21
- const ten = 10;
22
- const { page = 0, size = ten, sort = [], filterQuery = "", displayFields = [] } = listParams;
23
- let params = new HttpParams();
24
- params = params.append("size", String(size));
25
- params = params.append("offset", String(page));
26
- if (sort && sort.length) {
27
- params = params.append("orderby", sort.map(this.getBodyFilters()).join(", "));
28
- }
29
- if (filterQuery) {
30
- params = params.append("filter", filterQuery);
31
- }
32
- if (displayFields && displayFields.length) {
33
- params = params.append("displayfields", displayFields.join());
34
- }
35
- return params;
36
- }
37
- getBodyParams(listParams) {
38
- const ten = 10;
39
- const { page = 0, size = ten, sort = [], filterQuery = "", displayFields = [] } = listParams;
40
- const bodyParams = {};
41
- bodyParams.size = size;
42
- bodyParams.offset = page;
43
- if (sort && sort.length) {
44
- bodyParams.orderBy = sort.map(this.getBodyFilters()).join(", ");
45
- }
46
- if (filterQuery) {
47
- bodyParams.filter = filterQuery;
48
- }
49
- if (displayFields && displayFields.length) {
50
- bodyParams.displayfields = displayFields.join();
51
- }
52
- return bodyParams;
53
- }
54
- getBodyFilters() {
55
- return (s) => {
56
- let order = "";
57
- if (s.order === 1) {
58
- order = " asc";
59
- }
60
- if (s.order === -1) {
61
- order = " desc";
62
- }
63
- return `${s.field}${order}`;
64
- };
65
- }
66
- defaultCatch(errorMsgs = []) {
67
- const unauthorized_401 = 401;
68
- // errorMsgs = [...errorMsgs, ...DefaultErrorMessages];
69
- errorMsgs = [...errorMsgs];
70
- const zero = 0;
71
- return catchError((err) => {
72
- if (err) {
73
- const errorMessage = errorMsgs.find((eMsg) => eMsg.status === (err === null || err === void 0 ? void 0 : err.status) || zero);
74
- let summary = err.status ? String(err.status) : "Error";
75
- let detail = this.getErrorMessage(err);
76
- if (err.status === unauthorized_401) {
77
- summary = this.translate.instant("agro.angular_components.error_unauthorized_title");
78
- detail = this.translate.instant("agro.angular_components.error_unauthorized_description");
79
- }
80
- if (errorMessage) {
81
- summary = errorMessage.summary ? this.translate.instant(errorMessage.summary) : summary;
82
- detail = errorMessage.detail ? this.translate.instant(errorMessage.detail) : detail;
83
- }
84
- this.messageService.add({
85
- severity: "error",
86
- summary,
87
- detail,
88
- });
89
- }
90
- return throwError(err);
91
- });
92
- }
93
- getErrorMessage(err) {
94
- if (err.error && err.error.message) {
95
- return err.error.message;
96
- }
97
- if (err.statusText) {
98
- return err.statusText;
99
- }
100
- if (err.message) {
101
- return err.message;
102
- }
103
- return "Error";
104
- }
105
- list(listParams, errorMessage = []) {
106
- return this.http.get(this.entityUrl, { params: this.getListQueryParams(listParams) }).pipe(this.defaultCatch(errorMessage));
107
- }
108
- get(id, errorMessage = []) {
109
- return this.http.get(`${this.entityUrl}/${id}`).pipe(this.defaultCatch(errorMessage));
110
- }
111
- insert(entity, errorMessage = []) {
112
- return this.http.post(`${this.entityUrl}`, entity).pipe(this.defaultCatch(errorMessage));
113
- }
114
- update(id, entity, errorMessage = []) {
115
- return this.http.put(`${this.entityUrl}/${id}`, entity).pipe(this.defaultCatch(errorMessage));
116
- }
117
- delete(id, errorMessage = []) {
118
- return this.http.delete(`${this.entityUrl}/${id}`).pipe(this.defaultCatch(errorMessage));
119
- }
120
- listCustomFilter(listParams, action, errorMessage = []) {
121
- return this.http.post(`${this.actionsUrl}/${action}`, this.getBodyParams(listParams)).pipe(this.defaultCatch(errorMessage));
122
- }
123
- }
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL2VudGl0eS1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUc5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxNQUFNLE9BQU8saUJBQWlCO0lBQzFCLFlBQ2MsSUFBZ0IsRUFDaEIsY0FBOEIsRUFDOUIsU0FBaUIsRUFDakIsVUFBa0IsRUFDbEIsVUFBa0IsRUFDbEIsU0FBMkI7UUFMM0IsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFFckMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFFM0IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sa0JBQWtCLENBQUMsVUFBc0I7UUFDNUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFD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QyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUFPLEVBQUUsTUFBUyxFQUFFLGVBQStCLEVBQUU7UUFDL0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSSxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRU0sTUFBTSxDQUFDLEVBQU8sRUFBRSxlQUErQixFQUFFO1FBQ3BELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsVUFBc0IsRUFBRSxNQUFjLEVBQUUsZUFBK0IsRUFBRTtRQUM3RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxNQUFNLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNySSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zLCBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlLCBTb3J0TWV0YSB9IGZyb20gXCJwcmltZW5nXCI7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSBhcyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQWdyb0VudGl0eVNlcnZpY2U8VD4ge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICAgICAgcHJvdGVjdGVkIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgZW50aXR5VXJsOiBzdHJpbmcsXHJcbiAgICAgICAgcHJvdGVjdGVkIGFjdGlvbnNVcmw6IHN0cmluZyxcclxuICAgICAgICBwcm90ZWN0ZWQgcXVlcmllc1VybDogc3RyaW5nLFxyXG4gICAgICAgIHByb3RlY3RlZCB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuaHR0cCA9IGh0dHA7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZSA9IG1lc3NhZ2VTZXJ2aWNlO1xyXG4gICAgICAgIHRoaXMuZW50aXR5VXJsID0gZW50aXR5VXJsO1xyXG4gICAgICAgIHRoaXMuYWN0aW9uc1VybCA9IGFjdGlvbnNVcmw7XHJcbiAgICAgICAgdGhpcy5xdWVyaWVzVXJsID0gcXVlcmllc1VybDtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZSA9IHRyYW5zbGF0ZTtcclxuXHJcbiAgICAgICAgdGhpcy5kZWZhdWx0Q2F0Y2ggPSB0aGlzLmRlZmF1bHRDYXRjaC5iaW5kKHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRMaXN0UXVlcnlQYXJhbXMobGlzdFBhcmFtczogTGlzdFBhcmFtcykge1xyXG4gICAgICAgIGNvbnN0IHRlbiA9IDEwO1xyXG4gICAgICAgIGNvbnN0IHsgcGFnZSA9IDAsIHNpemUgPSB0ZW4sIHNvcnQgPSBbXSwgZmlsdGVyUXVlcnkgPSBcIlwiLCBkaXNwbGF5RmllbGRzID0gW10gfSA9IGxpc3RQYXJhbXM7XHJcblxyXG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoXCJzaXplXCIsIFN0cmluZyhzaXplKSk7XHJcbiAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZChcIm9mZnNldFwiLCBTdHJpbmcocGFnZSkpO1xyXG5cclxuICAgICAgICBpZiAoc29ydCAmJiBzb3J0Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKFwib3JkZXJieVwiLCBzb3J0Lm1hcCh0aGlzLmdldEJvZHlGaWx0ZXJzKCkpLmpvaW4oXCIsIFwiKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZmlsdGVyUXVlcnkpIHtcclxuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZChcImZpbHRlclwiLCBmaWx0ZXJRdWVyeSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZGlzcGxheUZpZWxkcyAmJiBkaXNwbGF5RmllbGRzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKFwiZGlzcGxheWZpZWxkc1wiLCBkaXNwbGF5RmllbGRzLmpvaW4oKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcGFyYW1zO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0Qm9keVBhcmFtcyhsaXN0UGFyYW1zOiBMaXN0UGFyYW1zKTogQm9keVBhcmFtcyB7XHJcbiAgICAgICAgY29uc3QgdGVuID0gMTA7XHJcbiAgICAgICAgY29uc3QgeyBwYWdlID0gMCwgc2l6ZSA9IHRlbiwgc29ydCA9IFtdLCBmaWx0ZXJRdWVyeSA9IFwiXCIsIGRpc3BsYXlGaWVsZHMgPSBbXSB9ID0gbGlzdFBhcmFtcztcclxuICAgICAgICBjb25zdCBib2R5UGFyYW1zOiBCb2R5UGFyYW1zID0ge307XHJcblxyXG4gICAgICAgIGJvZHlQYXJhbXMuc2l6ZSA9IHNpemU7XHJcbiAgICAgICAgYm9keVBhcmFtcy5vZmZzZXQgPSBwYWdlO1xyXG5cclxuICAgICAgICBpZiAoc29ydCAmJiBzb3J0Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICBib2R5UGFyYW1zLm9yZGVyQnkgPSBzb3J0Lm1hcCh0aGlzLmdldEJvZHlGaWx0ZXJzKCkpLmpvaW4oXCIsIFwiKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChmaWx0ZXJRdWVyeSkge1xyXG4gICAgICAgICAgICBib2R5UGFyYW1zLmZpbHRlciA9IGZpbHRlclF1ZXJ5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGRpc3BsYXlGaWVsZHMgJiYgZGlzcGxheUZpZWxkcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgYm9keVBhcmFtcy5kaXNwbGF5ZmllbGRzID0gZGlzcGxheUZpZWxkcy5qb2luKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYm9keVBhcmFtcztcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldEJvZHlGaWx0ZXJzKCk6ICh2YWx1ZTogU29ydE1ldGEsIGluZGV4OiBudW1iZXIsIGFycmF5OiBTb3J0TWV0YVtdKSA9PiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiAocykgPT4ge1xyXG4gICAgICAgICAgICBsZXQgb3JkZXIgPSBcIlwiO1xyXG4gICAgICAgICAgICBpZiAocy5vcmRlciA9PT0gMSkge1xyXG4gICAgICAgICAgICAgICAgb3JkZXIgPSBcIiBhc2NcIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAocy5vcmRlciA9PT0gLTEpIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyID0gXCIgZGVzY1wiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBgJHtzLmZpZWxkfSR7b3JkZXJ9YDtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkZWZhdWx0Q2F0Y2goZXJyb3JNc2dzOiBFcnJvck1lc3NhZ2VbXSA9IFtdKSB7XHJcbiAgICAgICAgY29uc3QgdW5hdXRob3JpemVkXzQwMSA9IDQwMTtcclxuICAgICAgICAvLyBlcnJvck1zZ3MgPSBbLi4uZXJyb3JNc2dzLCAuLi5EZWZhdWx0RXJyb3JNZXNzYWdlc107XHJcbiAgICAgICAgZXJyb3JNc2dzID0gWy4uLmVycm9yTXNnc107XHJcbiAgICAgICAgY29uc3QgemVybyA9IDA7XHJcbiAgICAgICAgcmV0dXJuIGNhdGNoRXJyb3IoKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGVycm9yTXNncy5maW5kKChlTXNnKSA9PiBlTXNnLnN0YXR1cyA9PT0gZXJyPy5zdGF0dXMgfHwgemVybyk7XHJcbiAgICAgICAgICAgICAgICBsZXQgc3VtbWFyeSA9IGVyci5zdGF0dXMgPyBTdHJpbmcoZXJyLnN0YXR1cykgOiBcIkVycm9yXCI7XHJcbiAgICAgICAgICAgICAgICBsZXQgZGV0YWlsID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZXJyKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gdW5hdXRob3JpemVkXzQwMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnkgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfdW5hdXRob3JpemVkX3RpdGxlXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRldGFpbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl91bmF1dGhvcml6ZWRfZGVzY3JpcHRpb25cIik7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGVycm9yTWVzc2FnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnkgPSBlcnJvck1lc3NhZ2Uuc3VtbWFyeSA/IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoZXJyb3JNZXNzYWdlLnN1bW1hcnkpIDogc3VtbWFyeTtcclxuICAgICAgICAgICAgICAgICAgICBkZXRhaWwgPSBlcnJvck1lc3NhZ2UuZGV0YWlsID8gdGhpcy50cmFuc2xhdGUuaW5zdGFudChlcnJvck1lc3NhZ2UuZGV0YWlsKSA6IGRldGFpbDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V2ZXJpdHk6IFwiZXJyb3JcIixcclxuICAgICAgICAgICAgICAgICAgICBzdW1tYXJ5LFxyXG4gICAgICAgICAgICAgICAgICAgIGRldGFpbCxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnIpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRFcnJvck1lc3NhZ2UoZXJyOiBhbnkpIHtcclxuICAgICAgICBpZiAoZXJyLmVycm9yICYmIGVyci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBlcnIuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGVyci5zdGF0dXNUZXh0KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBlcnIuc3RhdHVzVGV4dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGVyci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBlcnIubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIFwiRXJyb3JcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbGlzdChsaXN0UGFyYW1zOiBMaXN0UGFyYW1zLCBlcnJvck1lc3NhZ2U6IEVycm9yTWVzc2FnZVtdID0gW10pIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxUW10+KHRoaXMuZW50aXR5VXJsLCB7IHBhcmFtczogdGhpcy5nZXRMaXN0UXVlcnlQYXJhbXMobGlzdFBhcmFtcykgfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaChlcnJvck1lc3NhZ2UpKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0KGlkOiBhbnksIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlW10gPSBbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFQ+KGAke3RoaXMuZW50aXR5VXJsfS8ke2lkfWApLnBpcGUodGhpcy5kZWZhdWx0Q2F0Y2goZXJyb3JNZXNzYWdlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGluc2VydChlbnRpdHk6IFQsIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlW10gPSBbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUPihgJHt0aGlzLmVudGl0eVVybH1gLCBlbnRpdHkpLnBpcGUodGhpcy5kZWZhdWx0Q2F0Y2goZXJyb3JNZXNzYWdlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZShpZDogYW55LCBlbnRpdHk6IFQsIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlW10gPSBbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucHV0PFQ+KGAke3RoaXMuZW50aXR5VXJsfS8ke2lkfWAsIGVudGl0eSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaChlcnJvck1lc3NhZ2UpKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGVsZXRlKGlkOiBhbnksIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlW10gPSBbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFQ+KGAke3RoaXMuZW50aXR5VXJsfS8ke2lkfWApLnBpcGUodGhpcy5kZWZhdWx0Q2F0Y2goZXJyb3JNZXNzYWdlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGxpc3RDdXN0b21GaWx0ZXIobGlzdFBhcmFtczogTGlzdFBhcmFtcywgYWN0aW9uOiBzdHJpbmcsIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlW10gPSBbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUW10+KGAke3RoaXMuYWN0aW9uc1VybH0vJHthY3Rpb259YCwgdGhpcy5nZXRCb2R5UGFyYW1zKGxpc3RQYXJhbXMpKS5waXBlKHRoaXMuZGVmYXVsdENhdGNoKGVycm9yTWVzc2FnZSkpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheWxvYWRSZXF1ZXN0IHtcclxuICAgIHNlYXJjaDogUmVjRmlsdHJvc01lbnNhZ2VtSW5mbztcclxuICAgIHBhZ2VSZXF1ZXN0OiBSZWNQYWdlUmVxdWVzdDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZWNGaWx0cm9zTWVuc2FnZW1JbmZvIHtcclxuICAgIHRpdHVsbzogc3RyaW5nO1xyXG4gICAgY29udGV1ZG86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXlsb2FkUmVxdWVzdEdydXBvIHtcclxuICAgIHNlYXJjaDogUmVjRmlsdHJvc0dydXBvUHJvZHV0b3I7XHJcbiAgICBwYWdlUmVxdWVzdDogUmVjUGFnZVJlcXVlc3Q7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVjRmlsdHJvc0dydXBvUHJvZHV0b3Ige1xyXG4gICAgbm9tZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlY1BhZ2VSZXF1ZXN0IHtcclxuICAgIG9mZnNldDogbnVtYmVyO1xyXG4gICAgc2l6ZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExpc3RQYXJhbXMge1xyXG4gICAgcGFnZT86IG51bWJlcjtcclxuICAgIHNpemU/OiBudW1iZXI7XHJcbiAgICBzb3J0PzogU29ydE1ldGFbXTtcclxuICAgIGZpbHRlclF1ZXJ5Pzogc3RyaW5nO1xyXG4gICAgZGlzcGxheUZpZWxkcz86IHN0cmluZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExpc3RQYXJhbXMge1xyXG4gICAgcGFnZT86IG51bWJlcjtcclxuICAgIHNpemU/OiBudW1iZXI7XHJcbiAgICBzb3J0PzogU29ydE1ldGFbXTtcclxuICAgIGZpbHRlclF1ZXJ5Pzogc3RyaW5nO1xyXG4gICAgZGlzcGxheUZpZWxkcz86IHN0cmluZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlY1BhZ2VSZXF1ZXN0IHtcclxuICAgIG9mZnNldDogbnVtYmVyO1xyXG4gICAgc2l6ZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJvZHlQYXJhbXMge1xyXG4gICAgb2Zmc2V0PzogbnVtYmVyO1xyXG4gICAgc2l6ZT86IG51bWJlcjtcclxuICAgIG9yZGVyQnk/OiBzdHJpbmc7XHJcbiAgICBmaWx0ZXI/OiBzdHJpbmc7XHJcbiAgICBkaXNwbGF5ZmllbGRzPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yTWVzc2FnZSB7XHJcbiAgICBzdGF0dXM6IG51bWJlcjtcclxuICAgIHN1bW1hcnk6IHN0cmluZztcclxuICAgIGRldGFpbD86IHN0cmluZztcclxufVxyXG4iXX0=
@@ -1,35 +0,0 @@
1
- import { AgroStringUtils } from "./agro-string-utils.class";
2
- var AgroObjectStringifier = /** @class */ (function () {
3
- function AgroObjectStringifier() {
4
- }
5
- /**
6
- * Formata um objeto concatenando valores segundo as chaves e pipes informados.
7
- *
8
- * @param separator Separador entre os valores (ex: "-")
9
- * @param fields Campos a extrair. Podem conter subpropriedades ("propriedade.subPropriedade") e pipes ("propriedade|nomeDaPipe:arg1:arg2")
10
- * @param obj Objeto origem
11
- */
12
- AgroObjectStringifier.formatObject = function (separator, fields, obj, usePipes) {
13
- function mapField(field) {
14
- var value = AgroObjectStringifier.resolvePath(obj, field);
15
- if (usePipes === null || usePipes === void 0 ? void 0 : usePipes.hasOwnProperty(field)) {
16
- return usePipes[field].transform(value);
17
- }
18
- return value !== null && value !== void 0 ? value : "";
19
- }
20
- function filterValid(v) {
21
- return typeof v === "number" || AgroStringUtils.isValid(v);
22
- }
23
- return fields.map(mapField).filter(filterValid).join(" " + separator + " ");
24
- };
25
- /** Resolve um caminho tipo "empresa.cargo" dentro de um objeto */
26
- AgroObjectStringifier.resolvePath = function (obj, path) {
27
- function reducer(acc, key) {
28
- return acc === null || acc === void 0 ? void 0 : acc[key];
29
- }
30
- return path.split(".").reduce(reducer, obj);
31
- };
32
- return AgroObjectStringifier;
33
- }());
34
- export { AgroObjectStringifier };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1vYmplY3Qtc3RyaW5naWZpZXIuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLW9iamVjdC1zdHJpbmdpZmllci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFNNUQ7SUFBQTtJQStCQSxDQUFDO0lBOUJHOzs7Ozs7T0FNRztJQUNJLGtDQUFZLEdBQW5CLFVBQW9CLFNBQWlCLEVBQUUsTUFBZ0IsRUFBRSxHQUFRLEVBQUUsUUFBbUI7UUFDbEYsU0FBUyxRQUFRLENBQUMsS0FBYTtZQUMzQixJQUFNLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzVELElBQUksUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLGNBQWMsQ0FBQyxLQUFLLEdBQUc7Z0JBQ2pDLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMzQztZQUNELE9BQU8sS0FBSyxhQUFMLEtBQUssY0FBTCxLQUFLLEdBQUksRUFBRSxDQUFDO1FBQ3ZCLENBQUM7UUFFRCxTQUFTLFdBQVcsQ0FBQyxDQUFrQjtZQUNuQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFJLFNBQVMsTUFBRyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELGtFQUFrRTtJQUNuRCxpQ0FBVyxHQUExQixVQUEyQixHQUFRLEVBQUUsSUFBWTtRQUM3QyxTQUFTLE9BQU8sQ0FBQyxHQUFRLEVBQUUsR0FBVztZQUNsQyxPQUFPLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRyxHQUFHLEVBQUU7UUFDdEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDTCw0QkFBQztBQUFELENBQUMsQUEvQkQsSUErQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWdyb1N0cmluZ1V0aWxzIH0gZnJvbSBcIi4vYWdyby1zdHJpbmctdXRpbHMuY2xhc3NcIjtcclxuXHJcbmV4cG9ydCB0eXBlIFVzZVBpcGVzID0ge1xyXG4gICAgW2tleTogc3RyaW5nXTogUGlwZVRyYW5zZm9ybTtcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBBZ3JvT2JqZWN0U3RyaW5naWZpZXIge1xyXG4gICAgLyoqXHJcbiAgICAgKiBGb3JtYXRhIHVtIG9iamV0byBjb25jYXRlbmFuZG8gdmFsb3JlcyBzZWd1bmRvIGFzIGNoYXZlcyBlIHBpcGVzIGluZm9ybWFkb3MuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHNlcGFyYXRvciBTZXBhcmFkb3IgZW50cmUgb3MgdmFsb3JlcyAoZXg6IFwiLVwiKVxyXG4gICAgICogQHBhcmFtIGZpZWxkcyBDYW1wb3MgYSBleHRyYWlyLiBQb2RlbSBjb250ZXIgc3VicHJvcHJpZWRhZGVzIChcInByb3ByaWVkYWRlLnN1YlByb3ByaWVkYWRlXCIpIGUgcGlwZXMgKFwicHJvcHJpZWRhZGV8bm9tZURhUGlwZTphcmcxOmFyZzJcIilcclxuICAgICAqIEBwYXJhbSBvYmogT2JqZXRvIG9yaWdlbVxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZm9ybWF0T2JqZWN0KHNlcGFyYXRvcjogc3RyaW5nLCBmaWVsZHM6IHN0cmluZ1tdLCBvYmo6IGFueSwgdXNlUGlwZXM/OiBVc2VQaXBlcyk6IHN0cmluZyB7XHJcbiAgICAgICAgZnVuY3Rpb24gbWFwRmllbGQoZmllbGQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gQWdyb09iamVjdFN0cmluZ2lmaWVyLnJlc29sdmVQYXRoKG9iaiwgZmllbGQpO1xyXG4gICAgICAgICAgICBpZiAodXNlUGlwZXM/Lmhhc093blByb3BlcnR5KGZpZWxkKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHVzZVBpcGVzW2ZpZWxkXS50cmFuc2Zvcm0odmFsdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/PyBcIlwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gZmlsdGVyVmFsaWQodjogc3RyaW5nIHwgbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAgICAgICAgIHJldHVybiB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fCBBZ3JvU3RyaW5nVXRpbHMuaXNWYWxpZCh2KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmaWVsZHMubWFwKG1hcEZpZWxkKS5maWx0ZXIoZmlsdGVyVmFsaWQpLmpvaW4oYCAke3NlcGFyYXRvcn0gYCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIFJlc29sdmUgdW0gY2FtaW5obyB0aXBvIFwiZW1wcmVzYS5jYXJnb1wiIGRlbnRybyBkZSB1bSBvYmpldG8gKi9cclxuICAgIHByaXZhdGUgc3RhdGljIHJlc29sdmVQYXRoKG9iajogYW55LCBwYXRoOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIGZ1bmN0aW9uIHJlZHVjZXIoYWNjOiBhbnksIGtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICAgICAgcmV0dXJuIGFjYz8uW2tleV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwYXRoLnNwbGl0KFwiLlwiKS5yZWR1Y2UocmVkdWNlciwgb2JqKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,4 +0,0 @@
1
- export { ModalInvoicePjSelectorComponent } from "./modal-invoice-pj-selector.component";
2
- export { ModalInvoicePjSelectorModule } from "./modal-invoice-pj-selector.module";
3
- export { AgroInvoiceModule, AgroInvoiceService } from "./services/agro-invoice/index";
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE1vZGFsSW52b2ljZVBqU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tIFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudFwiO1xyXG5leHBvcnQgeyBNb2RhbEludm9pY2VQalNlbGVjdG9yTW9kdWxlIH0gZnJvbSBcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5tb2R1bGVcIjtcclxuZXhwb3J0IHsgTW9kYWxJbnZvaWNlUGpTZWxlY3Rvck9wdGlvbnMgfSBmcm9tIFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLW9wdGlvbnMuaW50ZXJmYWNlXCI7XHJcbmV4cG9ydCB7IEFncm9JbnZvaWNlTW9kdWxlLCBBZ3JvSW52b2ljZVNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW5kZXhcIjsiXX0=
@@ -1 +0,0 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci1vcHRpb25zLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItYWdyb25lZ29jaW8vYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3Itb3B0aW9ucy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9kYWxJbnZvaWNlUGpTZWxlY3Rvck9wdGlvbnMge1xyXG4gICAgY29tcGFueUlkOiBzdHJpbmc7XHJcbiAgICBicmFuY2hJZDogc3RyaW5nO1xyXG4gICAgcHJvZHVjZXJzSWRzOiBzdHJpbmdbXTtcclxuICAgIHByb2R1Y3RJZDogc3RyaW5nO1xyXG4gICAgcnVyYWxFc3RhdGVJZHM6IHN0cmluZ1tdO1xyXG4gICAgcmVjb3JkU3RhdHVzPzogc3RyaW5nO1xyXG4gICAgaXNzdWFuY2VEYXRlPzogRGF0ZTtcclxuICAgIGludm9pY2VTdGF0dXM/OiBzdHJpbmc7XHJcbn0iXX0=
@@ -1,197 +0,0 @@
1
- import { __awaiter, __decorate, __generator } from "tslib";
2
- import { Component, EventEmitter, Input, Output } from "@angular/core";
3
- import { debounceTime, finalize, takeUntil } from "rxjs/operators";
4
- import { Subject } from "rxjs";
5
- import { FormControl } from "@angular/forms";
6
- import { AgroInvoiceService } from "./services/agro-invoice/agro-invoice.service";
7
- import { ButtonPriority } from "@seniorsistemas/angular-components";
8
- import { AGRO_NUMBERS } from "../../enums/agro-numbers.enum";
9
- import { LibTranslationService } from "../../services/lib-translation.service";
10
- var INVOICE_ITEMS = "invoiceItems.*";
11
- var ModalInvoicePjSelectorComponent = /** @class */ (function () {
12
- function ModalInvoicePjSelectorComponent(translate, invoiceService) {
13
- this.translate = translate;
14
- this.invoiceService = invoiceService;
15
- this.whenSelectInvoices = new EventEmitter();
16
- this.buttonPriority = ButtonPriority;
17
- this.gridColumns = [
18
- { field: "number", header: this.translate.instant("agro.angular_components.number") },
19
- { field: "series", header: this.translate.instant("agro.angular_components.series") },
20
- { field: "invoiceItems", header: this.translate.instant("agro.angular_components.itens") },
21
- { field: "quantity", header: this.translate.instant("agro.angular_components.quantity") },
22
- { field: "issuanceDate", header: this.translate.instant("agro.angular_components.issuance_date") },
23
- ];
24
- this.dontHaveAnyInvoice = false;
25
- this.gridLoading = true;
26
- this.gridTotalRecords = AGRO_NUMBERS.ZERO;
27
- this.selected = [];
28
- this.unselectedIds = new Set();
29
- this.visible = false;
30
- this.searchValue = new FormControl("", []);
31
- this.ngUnsubscribe = new Subject();
32
- this.currentParams = {
33
- page: 0,
34
- size: 10,
35
- sort: [{ field: "issuanceDate", order: 1 }],
36
- displayFields: ["*", INVOICE_ITEMS, "issuanceDate"],
37
- filterQuery: "",
38
- };
39
- }
40
- ModalInvoicePjSelectorComponent.prototype.ngOnDestroy = function () {
41
- this.ngUnsubscribe.next();
42
- this.ngUnsubscribe.complete();
43
- };
44
- ModalInvoicePjSelectorComponent.prototype.ngOnInit = function () {
45
- this.whenSearchValueChanges();
46
- };
47
- ModalInvoicePjSelectorComponent.prototype.whenSearchValueChanges = function () {
48
- var _this = this;
49
- this.searchValue.valueChanges
50
- .pipe(takeUntil(this.ngUnsubscribe))
51
- .pipe(debounceTime(AGRO_NUMBERS.THREE_HUNDRED))
52
- .subscribe(function (value) {
53
- if (value) {
54
- _this.updateGridData({ first: 0, rows: 10, multiSortMeta: [{ field: "issuanceDate", order: 1 }] }, value);
55
- }
56
- else {
57
- _this.updateGridData({ first: 0, rows: 10, multiSortMeta: [{ field: "issuanceDate", order: 1 }] });
58
- }
59
- });
60
- };
61
- ModalInvoicePjSelectorComponent.prototype.tryToSearchAgain = function () {
62
- this.gridLoading = true;
63
- this.updateGridData({ first: 0, rows: 10, multiSortMeta: [{ field: "issuanceDate", order: 1 }] });
64
- };
65
- ModalInvoicePjSelectorComponent.prototype.open = function () {
66
- if (this.checkIfOptionsIsValid()) {
67
- this.visible = true;
68
- this.gridData = [];
69
- this.gridLoading = true;
70
- this.gridTotalRecords = 0;
71
- this.selected = [];
72
- this.unselectedIds.clear();
73
- this.currentParams = {
74
- page: 0,
75
- size: 10,
76
- sort: [],
77
- filterQuery: "",
78
- displayFields: ["*", INVOICE_ITEMS],
79
- };
80
- this.updateGridData({ first: 0, rows: 10, multiSortMeta: [{ field: "issuanceDate", order: 1 }] });
81
- this.selected = [];
82
- }
83
- };
84
- ModalInvoicePjSelectorComponent.prototype.checkIfOptionsIsValid = function () {
85
- if (!this.options) {
86
- return false;
87
- }
88
- if (!this.options.companyId || !this.options.branchId) {
89
- return false;
90
- }
91
- return true;
92
- };
93
- ModalInvoicePjSelectorComponent.prototype.updateGridData = function (event, searchValue) {
94
- var _this = this;
95
- var _a;
96
- this.cancelPooling();
97
- var _b = this.options, companyId = _b.companyId, branchId = _b.branchId;
98
- var producerId = this.options.producersIds[0];
99
- var ruralEstateId = this.options.ruralEstateIds[0];
100
- var size = event.rows;
101
- var page = event.first / size;
102
- var sizePage = event.rows;
103
- this.currentParams = {
104
- page: page,
105
- size: size,
106
- sort: ((_a = event.multiSortMeta) === null || _a === void 0 ? void 0 : _a.length) ? event.multiSortMeta : [{ field: "issuanceDate", order: 1 }],
107
- displayFields: ["*", INVOICE_ITEMS, "issuanceDate"],
108
- };
109
- this.gridLoading = true;
110
- this.dontHaveAnyInvoice = false;
111
- var filterBody = {
112
- filter: {
113
- companyId: companyId,
114
- branchId: branchId,
115
- producerIds: [producerId],
116
- ruralEstateIds: [ruralEstateId],
117
- multiProducts: false,
118
- productId: this.options.productId,
119
- },
120
- pageRequest: {
121
- offset: page,
122
- size: sizePage,
123
- orderBy: this.currentParams.sort.map(function (sort) { return ({ field: sort.field, order: sort.order === 1 ? "asc" : "desc" }); }),
124
- },
125
- };
126
- this.invoiceService
127
- .invoiceLookupFilter(filterBody)
128
- .pipe(takeUntil(this.ngUnsubscribe), finalize(function () {
129
- _this.gridLoading = false;
130
- }))
131
- .subscribe(function (result) {
132
- var _a;
133
- _this.gridData = ((_a = result === null || result === void 0 ? void 0 : result.result) === null || _a === void 0 ? void 0 : _a.invoices) || [];
134
- if (_this.gridData.length === 0 && !searchValue) {
135
- _this.dontHaveAnyInvoice = true;
136
- }
137
- _this.gridTotalRecords = result.result.totalElements;
138
- }, function (error) {
139
- console.info("Erro ao buscar notas fiscais: ", error);
140
- }, function () {
141
- _this.gridLoading = false;
142
- });
143
- };
144
- ModalInvoicePjSelectorComponent.prototype.cancelPooling = function () {
145
- this.invoiceService.cancelActivePooling();
146
- };
147
- ModalInvoicePjSelectorComponent.prototype.add = function () {
148
- return __awaiter(this, void 0, void 0, function () {
149
- return __generator(this, function (_a) {
150
- try {
151
- this.whenSelectInvoices.emit(this.selected);
152
- this.resetSpecs();
153
- }
154
- catch (error) {
155
- console.info("Erro ao selecionar notas fiscais: ", error);
156
- }
157
- return [2 /*return*/];
158
- });
159
- });
160
- };
161
- ModalInvoicePjSelectorComponent.prototype.resetSpecs = function () {
162
- this.selected = [];
163
- this.dontHaveAnyInvoice = false;
164
- this.visible = false;
165
- this.gridData = [];
166
- this.gridLoading = false;
167
- this.gridTotalRecords = 0;
168
- };
169
- ModalInvoicePjSelectorComponent.prototype.cancel = function () {
170
- return __awaiter(this, void 0, void 0, function () {
171
- return __generator(this, function (_a) {
172
- this.resetSpecs();
173
- return [2 /*return*/];
174
- });
175
- });
176
- };
177
- ModalInvoicePjSelectorComponent.ctorParameters = function () { return [
178
- { type: LibTranslationService },
179
- { type: AgroInvoiceService }
180
- ]; };
181
- __decorate([
182
- Input()
183
- ], ModalInvoicePjSelectorComponent.prototype, "options", void 0);
184
- __decorate([
185
- Output()
186
- ], ModalInvoicePjSelectorComponent.prototype, "whenSelectInvoices", void 0);
187
- ModalInvoicePjSelectorComponent = __decorate([
188
- Component({
189
- selector: "s-modal-invoice-pj-selector",
190
- template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number_or_series' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: 'L' | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData?.totalItems || 0 }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'quantity'\">\r\n {{ rowData?.totalItemsQuantity || 0 | kilogram }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'series'\">\r\n {{ rowData?.seriesLegal || rowData?.series || rowData[col.field] }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> {{ rowData[col.field] }} </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
191
- styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
192
- })
193
- ], ModalInvoicePjSelectorComponent);
194
- return ModalInvoicePjSelectorComponent;
195
- }());
196
- export { ModalInvoicePjSelectorComponent };
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxJQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQU92QztJQXlDSSx5Q0FDcUIsU0FBZ0MsRUFDaEMsY0FBa0M7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBekN0Qyx1QkFBa0IsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUc5RSxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUVoQyxnQkFBVyxHQUFHO1lBQ2pCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLEVBQUU7WUFDckYsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQyxFQUFFO1lBQzFGLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQWtDLENBQUMsRUFBRTtZQUN6RixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLEVBQUU7U0FDckcsQ0FBQztRQUVLLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUUzQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixxQkFBZ0IsR0FBVyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQzdDLGFBQVEsR0FBVSxFQUFFLENBQUM7UUFDckIsa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO1FBRWxDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsZ0JBQVcsR0FBZ0IsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXpDLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV2QyxrQkFBYSxHQUFlO1lBQ2hDLElBQUksRUFBRSxDQUFDO1lBQ1AsSUFBSSxFQUFFLEVBQUU7WUFDUixJQUFJLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzNDLGFBQWEsRUFBRSxDQUFDLEdBQUcsRUFBRSxhQUFhLEVBQUUsY0FBYyxDQUFDO1lBQ25ELFdBQVcsRUFBRSxFQUFFO1NBQ2xCLENBQUM7SUFVQyxDQUFDO0lBUkcscURBQVcsR0FBbEI7UUFDSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQU9ELGtEQUFRLEdBQVI7UUFDSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sZ0VBQXNCLEdBQTlCO1FBQUEsaUJBV0M7UUFWRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVk7YUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDOUMsU0FBUyxDQUFDLFVBQUMsS0FBYTtZQUNyQixJQUFJLEtBQUssRUFBRTtnQkFDUCxLQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQzVHO2lCQUFNO2dCQUNILEtBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUNyRztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELDBEQUFnQixHQUFoQjtRQUNJLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBRUQsOENBQUksR0FBSjtRQUNJLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLEVBQUU7WUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUc7Z0JBQ2pCLElBQUksRUFBRSxDQUFDO2dCQUNQLElBQUksRUFBRSxFQUFFO2dCQUNSLElBQUksRUFBRSxFQUFFO2dCQUNSLFdBQVcsRUFBRSxFQUFFO2dCQUNmLGFBQWEsRUFBRSxDQUFDLEdBQUcsRUFBRSxhQUFhLENBQUM7YUFDdEMsQ0FBQztZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNsRyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztTQUN0QjtJQUNMLENBQUM7SUFFTywrREFBcUIsR0FBN0I7UUFDSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDbkQsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sd0RBQWMsR0FBckIsVUFBc0IsS0FBb0IsRUFBRSxXQUFvQjtRQUFoRSxpQkE0REM7O1FBM0RHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNmLElBQUEsaUJBQXNDLEVBQXBDLHdCQUFTLEVBQUUsc0JBQXlCLENBQUM7UUFFN0MsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEQsSUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFckQsSUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFNLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUVoQyxJQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBRTVCLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDakIsSUFBSSxNQUFBO1lBQ0osSUFBSSxNQUFBO1lBQ0osSUFBSSxFQUFFLE9BQUEsS0FBSyxDQUFDLGFBQWEsMENBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDL0YsYUFBYSxFQUFFLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxjQUFjLENBQUM7U0FDdEQsQ0FBQztRQUNGLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFaEMsSUFBTSxVQUFVLEdBQXlCO1lBQ3JDLE1BQU0sRUFBRTtnQkFDSixTQUFTLFdBQUE7Z0JBQ1QsUUFBUSxVQUFBO2dCQUNSLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDekIsY0FBYyxFQUFFLENBQUMsYUFBYSxDQUFDO2dCQUMvQixhQUFhLEVBQUUsS0FBSztnQkFDcEIsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUzthQUNwQztZQUNELFdBQVcsRUFBRTtnQkFDVCxNQUFNLEVBQUUsSUFBSTtnQkFDWixJQUFJLEVBQUUsUUFBUTtnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFqRSxDQUFpRSxDQUFDO2FBQ3BIO1NBQ0osQ0FBQztRQUVGLElBQUksQ0FBQyxjQUFjO2FBQ2QsbUJBQW1CLENBQUMsVUFBVSxDQUFDO2FBQy9CLElBQUksQ0FDRCxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixRQUFRLENBQUM7WUFDTCxLQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FDTDthQUNBLFNBQVMsQ0FDTixVQUFDLE1BQU07O1lBQ0gsS0FBSSxDQUFDLFFBQVEsR0FBRyxPQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLDBDQUFFLFFBQVEsS0FBSSxFQUFFLENBQUM7WUFDL0MsSUFBSSxLQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQzVDLEtBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7YUFDbEM7WUFDRCxLQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7UUFDeEQsQ0FBQyxFQUNELFVBQUMsS0FBSztZQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUQsQ0FBQyxFQUNEO1lBQ0ksS0FBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDN0IsQ0FBQyxDQUNKLENBQUM7SUFDVixDQUFDO0lBRUQsdURBQWEsR0FBYjtRQUNJLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUssNkNBQUcsR0FBVDs7O2dCQUNJLElBQUk7b0JBQ0EsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQzVDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztpQkFDckI7Z0JBQUMsT0FBTyxLQUFLLEVBQUU7b0JBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLENBQUMsQ0FBQztpQkFDN0Q7Ozs7S0FDSjtJQUVPLG9EQUFVLEdBQWxCO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFSyxnREFBTSxHQUFaOzs7Z0JBQ0ksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDOzs7O0tBQ3JCOztnQkFoSitCLHFCQUFxQjtnQkFDaEIsa0JBQWtCOztJQTFDOUM7UUFBUixLQUFLLEVBQUU7b0VBQWdEO0lBQzlDO1FBQVQsTUFBTSxFQUFFOytFQUE0RTtJQUY1RSwrQkFBK0I7UUFMM0MsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLDZCQUE2QjtZQUN2QyxpMk1BQXlEOztTQUU1RCxDQUFDO09BQ1csK0JBQStCLENBNEwzQztJQUFELHNDQUFDO0NBQUEsQUE1TEQsSUE0TEM7U0E1TFksK0JBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTGF6eUxvYWRFdmVudCB9IGZyb20gXCJwcmltZW5nXCI7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmluYWxpemUsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgTGlzdFBhcmFtcyB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9lbnRpdHktc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBZ3JvSW52b2ljZVNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvYWdyby1pbnZvaWNlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpTZWxlY3Rvck9wdGlvbnMgfSBmcm9tIFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLW9wdGlvbnMuaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IEJ1dHRvblByaW9yaXR5IH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgQUdST19OVU1CRVJTIH0gZnJvbSBcIi4uLy4uL2VudW1zL2Fncm8tbnVtYmVycy5lbnVtXCI7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBJSW52b2ljZUxvb2t1cEZpbHRlciB9IGZyb20gXCIuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9pbnRlcmZhY2VzXCI7XHJcblxyXG5jb25zdCBJTlZPSUNFX0lURU1TID0gXCJpbnZvaWNlSXRlbXMuKlwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJzLW1vZGFsLWludm9pY2UtcGotc2VsZWN0b3JcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgc3R5bGVVcmxzOiBbXCIuL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3IuY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEludm9pY2VQalNlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgcHVibGljIG9wdGlvbnMhOiBNb2RhbEludm9pY2VQalNlbGVjdG9yT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgd2hlblNlbGVjdEludm9pY2VzOiBFdmVudEVtaXR0ZXI8YW55W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZERhdGE6IGFueVtdO1xyXG4gICAgcHVibGljIGJ1dHRvblByaW9yaXR5ID0gQnV0dG9uUHJpb3JpdHk7XHJcblxyXG4gICAgcHVibGljIGdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgIHsgZmllbGQ6IFwibnVtYmVyXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm51bWJlclwiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwic2VyaWVzXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNlcmllc1wiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwiaW52b2ljZUl0ZW1zXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLml0ZW5zXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJxdWFudGl0eVwiLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5xdWFudGl0eVwiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmlzc3VhbmNlX2RhdGVcIikgfSxcclxuICAgIF07XHJcblxyXG4gICAgcHVibGljIGRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG5cclxuICAgIHB1YmxpYyBncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICBwdWJsaWMgZ3JpZFRvdGFsUmVjb3JkczogbnVtYmVyID0gQUdST19OVU1CRVJTLlpFUk87XHJcbiAgICBwdWJsaWMgc2VsZWN0ZWQ6IGFueVtdID0gW107XHJcbiAgICBwdWJsaWMgdW5zZWxlY3RlZElkcyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xyXG5cclxuICAgIHB1YmxpYyB2aXNpYmxlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIHNlYXJjaFZhbHVlOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChcIlwiLCBbXSk7XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgICBwcml2YXRlIGN1cnJlbnRQYXJhbXM6IExpc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgcGFnZTogMCxcclxuICAgICAgICBzaXplOiAxMCxcclxuICAgICAgICBzb3J0OiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TLCBcImlzc3VhbmNlRGF0ZVwiXSxcclxuICAgICAgICBmaWx0ZXJRdWVyeTogXCJcIixcclxuICAgIH07XHJcblxyXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2VcclxuICAgICkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLndoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHdoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKSB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZShBR1JPX05VTUJFUlMuVEhSRUVfSFVORFJFRCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9LCB2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJ5VG9TZWFyY2hBZ2FpbigpIHtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICB9XHJcblxyXG4gICAgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja0lmT3B0aW9uc0lzVmFsaWQoKSkge1xyXG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRUb3RhbFJlY29yZHMgPSAwO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgICAgIHRoaXMudW5zZWxlY3RlZElkcy5jbGVhcigpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogMTAsXHJcbiAgICAgICAgICAgICAgICBzb3J0OiBbXSxcclxuICAgICAgICAgICAgICAgIGZpbHRlclF1ZXJ5OiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TXSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZk9wdGlvbnNJc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLmNvbXBhbnlJZCB8fCAhdGhpcy5vcHRpb25zLmJyYW5jaElkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVHcmlkRGF0YShldmVudDogTGF6eUxvYWRFdmVudCwgc2VhcmNoVmFsdWU/OiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmNhbmNlbFBvb2xpbmcoKTtcclxuICAgICAgICBjb25zdCB7IGNvbXBhbnlJZCwgYnJhbmNoSWQgfSA9IHRoaXMub3B0aW9ucztcclxuXHJcbiAgICAgICAgY29uc3QgcHJvZHVjZXJJZCA9IHRoaXMub3B0aW9ucy5wcm9kdWNlcnNJZHNbMF07XHJcbiAgICAgICAgY29uc3QgcnVyYWxFc3RhdGVJZCA9IHRoaXMub3B0aW9ucy5ydXJhbEVzdGF0ZUlkc1swXTtcclxuXHJcbiAgICAgICAgY29uc3Qgc2l6ZSA9IGV2ZW50LnJvd3M7XHJcbiAgICAgICAgY29uc3QgcGFnZSA9IGV2ZW50LmZpcnN0IC8gc2l6ZTtcclxuXHJcbiAgICAgICAgY29uc3Qgc2l6ZVBhZ2UgPSBldmVudC5yb3dzO1xyXG5cclxuICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIHBhZ2UsXHJcbiAgICAgICAgICAgIHNpemUsXHJcbiAgICAgICAgICAgIHNvcnQ6IGV2ZW50Lm11bHRpU29ydE1ldGE/Lmxlbmd0aCA/IGV2ZW50Lm11bHRpU29ydE1ldGEgOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFtcIipcIiwgSU5WT0lDRV9JVEVNUywgXCJpc3N1YW5jZURhdGVcIl0sXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG5cclxuICAgICAgICBjb25zdCBmaWx0ZXJCb2R5OiBJSW52b2ljZUxvb2t1cEZpbHRlciA9IHtcclxuICAgICAgICAgICAgZmlsdGVyOiB7XHJcbiAgICAgICAgICAgICAgICBjb21wYW55SWQsXHJcbiAgICAgICAgICAgICAgICBicmFuY2hJZCxcclxuICAgICAgICAgICAgICAgIHByb2R1Y2VySWRzOiBbcHJvZHVjZXJJZF0sXHJcbiAgICAgICAgICAgICAgICBydXJhbEVzdGF0ZUlkczogW3J1cmFsRXN0YXRlSWRdLFxyXG4gICAgICAgICAgICAgICAgbXVsdGlQcm9kdWN0czogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHRoaXMub3B0aW9ucy5wcm9kdWN0SWQsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHBhZ2VSZXF1ZXN0OiB7XHJcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhZ2UsXHJcbiAgICAgICAgICAgICAgICBzaXplOiBzaXplUGFnZSxcclxuICAgICAgICAgICAgICAgIG9yZGVyQnk6IHRoaXMuY3VycmVudFBhcmFtcy5zb3J0Lm1hcCgoc29ydCkgPT4gKHsgZmllbGQ6IHNvcnQuZmllbGQsIG9yZGVyOiBzb3J0Lm9yZGVyID09PSAxID8gXCJhc2NcIiA6IFwiZGVzY1wiIH0pKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLmludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5pbnZvaWNlTG9va3VwRmlsdGVyKGZpbHRlckJvZHkpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSByZXN1bHQ/LnJlc3VsdD8uaW52b2ljZXMgfHwgW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZ3JpZERhdGEubGVuZ3RoID09PSAwICYmICFzZWFyY2hWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IHJlc3VsdC5yZXN1bHQudG90YWxFbGVtZW50cztcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmluZm8oXCJFcnJvIGFvIGJ1c2NhciBub3RhcyBmaXNjYWlzOiBcIiwgZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsUG9vbGluZygpIHtcclxuICAgICAgICB0aGlzLmludm9pY2VTZXJ2aWNlLmNhbmNlbEFjdGl2ZVBvb2xpbmcoKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhZGQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy53aGVuU2VsZWN0SW52b2ljZXMuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgY29uc29sZS5pbmZvKFwiRXJybyBhbyBzZWxlY2lvbmFyIG5vdGFzIGZpc2NhaXM6IFwiLCBlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVzZXRTcGVjcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgdGhpcy5kb250SGF2ZUFueUludm9pY2UgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMucmVzZXRTcGVjcygpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=