crmbonus-component-wake 2.1.17-homolog → 2.1.20-homolog

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 (178) hide show
  1. package/dist/cjs/app-modal.cjs.entry.js +1 -1
  2. package/dist/cjs/{cart.helper-d216033e.js → cart.helper-0a401d80.js} +2 -2
  3. package/dist/cjs/{cart.helper-d216033e.js.map → cart.helper-0a401d80.js.map} +1 -1
  4. package/dist/cjs/countdown-timer-v2.cjs.entry.js +77 -0
  5. package/dist/cjs/countdown-timer-v2.cjs.entry.js.map +1 -0
  6. package/dist/cjs/countdown-timer.cjs.entry.js +31 -50
  7. package/dist/cjs/countdown-timer.cjs.entry.js.map +1 -1
  8. package/dist/cjs/crm-bonus-form.cjs.entry.js +1 -1
  9. package/dist/cjs/crm-bonus-note.cjs.entry.js +16 -7
  10. package/dist/cjs/crm-bonus-note.cjs.entry.js.map +1 -1
  11. package/dist/cjs/crm-bonus.cjs.entry.js +4 -4
  12. package/dist/cjs/crm-giftback-form_2.cjs.entry.js +11 -9
  13. package/dist/cjs/crm-giftback-form_2.cjs.entry.js.map +1 -1
  14. package/dist/cjs/crm-tooltip_4.cjs.entry.js +30 -15
  15. package/dist/cjs/crm-tooltip_4.cjs.entry.js.map +1 -1
  16. package/dist/cjs/crmbonus-component-wake.cjs.js +1 -1
  17. package/dist/cjs/{crmbonus.service-5537cef5.js → crmbonus.service-7a4f6786.js} +2 -2
  18. package/dist/cjs/{crmbonus.service-5537cef5.js.map → crmbonus.service-7a4f6786.js.map} +1 -1
  19. package/dist/cjs/{i18n-f2a6f60e.js → i18n-defaa4f8.js} +2 -2
  20. package/dist/cjs/{i18n-f2a6f60e.js.map → i18n-defaa4f8.js.map} +1 -1
  21. package/dist/cjs/loader.cjs.js +1 -1
  22. package/dist/cjs/loading-spinner.cjs.entry.js +1 -1
  23. package/dist/cjs/pedido-finalizado.cjs.entry.js +3 -3
  24. package/dist/cjs/phone-input-mask.cjs.entry.js +1 -1
  25. package/dist/collection/collection-manifest.json +1 -0
  26. package/dist/collection/components/countdown-timer/countdown-timer.js +60 -67
  27. package/dist/collection/components/countdown-timer/countdown-timer.js.map +1 -1
  28. package/dist/collection/components/countdown-timer/countdown-timer.v2.js +134 -0
  29. package/dist/collection/components/countdown-timer/countdown-timer.v2.js.map +1 -0
  30. package/dist/collection/components/crm-bonus/crm-bonus.js +1 -1
  31. package/dist/collection/components/giftback-form/giftback-form.js +7 -5
  32. package/dist/collection/components/giftback-form/giftback-form.js.map +1 -1
  33. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js +28 -9
  34. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js.map +1 -1
  35. package/dist/collection/components/giftback-form/subcomponents/phone-form/phone-form.js +1 -1
  36. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js +14 -1
  37. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js.map +1 -1
  38. package/dist/collection/components/loading-container/loading-container.js +1 -1
  39. package/dist/collection/components/loading-spinner/loading-spinner.js +1 -1
  40. package/dist/collection/components/modal/app-modal.js +1 -1
  41. package/dist/collection/components/note/crm-bonus-note.js +15 -5
  42. package/dist/collection/components/note/crm-bonus-note.js.map +1 -1
  43. package/dist/collection/components/pedido/pedido.js +1 -1
  44. package/dist/collection/components/phone/phone-input-mask.js +1 -1
  45. package/dist/collection/components/tooltip/tooltip.js +1 -1
  46. package/dist/collection/i18n/i18n.js +1 -1
  47. package/dist/collection/i18n/i18n.js.map +1 -1
  48. package/dist/components/app-modal.js +1 -1
  49. package/dist/components/countdown-timer-v2.d.ts +11 -0
  50. package/dist/components/{p-30d12b1b.js → countdown-timer-v2.js} +15 -11
  51. package/dist/components/countdown-timer-v2.js.map +1 -0
  52. package/dist/components/countdown-timer.js +1 -1
  53. package/dist/components/crm-bonus-form.js +5 -5
  54. package/dist/components/crm-bonus-note.js +19 -9
  55. package/dist/components/crm-bonus-note.js.map +1 -1
  56. package/dist/components/crm-bonus.js +14 -14
  57. package/dist/components/crm-button.js +1 -1
  58. package/dist/components/crm-giftback-form.js +1 -1
  59. package/dist/components/crm-tooltip.js +1 -1
  60. package/dist/components/giftback-info.js +1 -1
  61. package/dist/components/giftback-pin.js +1 -1
  62. package/dist/components/giftback-progress.js +1 -1
  63. package/dist/components/loading-container.js +1 -1
  64. package/dist/components/loading-spinner.js +1 -1
  65. package/dist/components/name-input.js +1 -1
  66. package/dist/components/{p-8f1485e7.js → p-39cc3ce4.js} +2 -2
  67. package/dist/components/{p-8f1485e7.js.map → p-39cc3ce4.js.map} +1 -1
  68. package/dist/components/{p-70b3b7b3.js → p-4ac2b98e.js} +19 -6
  69. package/dist/components/p-4ac2b98e.js.map +1 -0
  70. package/dist/components/{p-c6153eb6.js → p-5a7b0549.js} +2 -2
  71. package/dist/components/{p-c6153eb6.js.map → p-5a7b0549.js.map} +1 -1
  72. package/dist/components/{p-a7809d51.js → p-63ca9208.js} +5 -5
  73. package/dist/components/{p-a7809d51.js.map → p-63ca9208.js.map} +1 -1
  74. package/dist/components/p-86b95c83.js +74 -0
  75. package/dist/components/p-86b95c83.js.map +1 -0
  76. package/dist/components/{p-b57fbd6d.js → p-9ca28ea7.js} +2 -2
  77. package/dist/components/{p-b57fbd6d.js.map → p-9ca28ea7.js.map} +1 -1
  78. package/dist/components/{p-3eba0eba.js → p-a428d5df.js} +2 -2
  79. package/dist/components/{p-3eba0eba.js.map → p-a428d5df.js.map} +1 -1
  80. package/dist/components/{p-b42db369.js → p-a70a82a3.js} +2 -2
  81. package/dist/components/{p-b42db369.js.map → p-a70a82a3.js.map} +1 -1
  82. package/dist/components/{p-220754a5.js → p-c4788672.js} +2 -2
  83. package/dist/components/{p-220754a5.js.map → p-c4788672.js.map} +1 -1
  84. package/dist/components/{p-e8c19a64.js → p-c53241bf.js} +2 -2
  85. package/dist/components/{p-e8c19a64.js.map → p-c53241bf.js.map} +1 -1
  86. package/dist/components/{p-fc6f781f.js → p-cd108989.js} +2 -2
  87. package/dist/components/{p-fc6f781f.js.map → p-cd108989.js.map} +1 -1
  88. package/dist/components/{p-3af6c647.js → p-d8bd654a.js} +18 -15
  89. package/dist/components/p-d8bd654a.js.map +1 -0
  90. package/dist/components/{p-34803421.js → p-dc1871cf.js} +2 -2
  91. package/dist/components/{p-34803421.js.map → p-dc1871cf.js.map} +1 -1
  92. package/dist/components/{p-82ea12ff.js → p-e25a1b64.js} +2 -2
  93. package/dist/components/{p-82ea12ff.js.map → p-e25a1b64.js.map} +1 -1
  94. package/dist/components/{p-83249636.js → p-e81cd527.js} +2 -2
  95. package/dist/components/{p-83249636.js.map → p-e81cd527.js.map} +1 -1
  96. package/dist/components/{p-4b131051.js → p-f9372dc4.js} +19 -17
  97. package/dist/components/{p-4b131051.js.map → p-f9372dc4.js.map} +1 -1
  98. package/dist/components/pedido-finalizado.js +3 -3
  99. package/dist/components/phone-cancel-input.js +2 -2
  100. package/dist/components/phone-form.js +1 -1
  101. package/dist/components/phone-input-mask.js +1 -1
  102. package/dist/components/phone-input.js +2 -2
  103. package/dist/components/pin-form.js +1 -1
  104. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js +1 -1
  105. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js.map +1 -1
  106. package/dist/crmbonus-component-wake/{p-50d1cbaa.entry.js → p-0055876c.entry.js} +2 -2
  107. package/dist/crmbonus-component-wake/p-0a40bcba.entry.js +2 -0
  108. package/dist/crmbonus-component-wake/p-0a40bcba.entry.js.map +1 -0
  109. package/dist/crmbonus-component-wake/{p-402ead13.entry.js → p-154b5318.entry.js} +2 -2
  110. package/dist/crmbonus-component-wake/{p-09e26da2.entry.js → p-35b95848.entry.js} +2 -2
  111. package/dist/crmbonus-component-wake/p-4cdd8038.entry.js +2 -0
  112. package/dist/crmbonus-component-wake/{p-68de3204.entry.js.map → p-4cdd8038.entry.js.map} +1 -1
  113. package/dist/crmbonus-component-wake/p-5aa35e0f.entry.js +2 -0
  114. package/dist/crmbonus-component-wake/p-5aa35e0f.entry.js.map +1 -0
  115. package/dist/crmbonus-component-wake/{p-a6a4a314.entry.js → p-77d8e96c.entry.js} +2 -2
  116. package/dist/crmbonus-component-wake/p-81ec64ff.entry.js +2 -0
  117. package/dist/crmbonus-component-wake/p-81ec64ff.entry.js.map +1 -0
  118. package/dist/crmbonus-component-wake/p-8e2d6659.entry.js +2 -0
  119. package/dist/crmbonus-component-wake/p-8e2d6659.entry.js.map +1 -0
  120. package/dist/crmbonus-component-wake/{p-b57fbd6d.js → p-9ca28ea7.js} +2 -2
  121. package/dist/crmbonus-component-wake/{p-3eba0eba.js → p-a428d5df.js} +2 -2
  122. package/dist/crmbonus-component-wake/{p-3eba0eba.js.map → p-a428d5df.js.map} +1 -1
  123. package/dist/crmbonus-component-wake/p-b2941d60.entry.js +2 -0
  124. package/dist/crmbonus-component-wake/{p-e8c19a64.js → p-c53241bf.js} +2 -2
  125. package/dist/crmbonus-component-wake/{p-e8c19a64.js.map → p-c53241bf.js.map} +1 -1
  126. package/dist/crmbonus-component-wake/{p-d3ed9573.entry.js → p-e4aae2ed.entry.js} +2 -2
  127. package/dist/env.js +1 -1
  128. package/dist/env.js.map +1 -1
  129. package/dist/esm/app-modal.entry.js +1 -1
  130. package/dist/esm/{cart.helper-8be1bc35.js → cart.helper-c6fd0b36.js} +2 -2
  131. package/dist/esm/{cart.helper-8be1bc35.js.map → cart.helper-c6fd0b36.js.map} +1 -1
  132. package/dist/esm/countdown-timer-v2.entry.js +73 -0
  133. package/dist/esm/countdown-timer-v2.entry.js.map +1 -0
  134. package/dist/esm/countdown-timer.entry.js +31 -50
  135. package/dist/esm/countdown-timer.entry.js.map +1 -1
  136. package/dist/esm/crm-bonus-form.entry.js +1 -1
  137. package/dist/esm/crm-bonus-note.entry.js +16 -7
  138. package/dist/esm/crm-bonus-note.entry.js.map +1 -1
  139. package/dist/esm/crm-bonus.entry.js +4 -4
  140. package/dist/esm/crm-giftback-form_2.entry.js +11 -9
  141. package/dist/esm/crm-giftback-form_2.entry.js.map +1 -1
  142. package/dist/esm/crm-tooltip_4.entry.js +30 -15
  143. package/dist/esm/crm-tooltip_4.entry.js.map +1 -1
  144. package/dist/esm/crmbonus-component-wake.js +1 -1
  145. package/dist/esm/{crmbonus.service-5bc16be9.js → crmbonus.service-0bd0a5ac.js} +2 -2
  146. package/dist/esm/{crmbonus.service-5bc16be9.js.map → crmbonus.service-0bd0a5ac.js.map} +1 -1
  147. package/dist/esm/{i18n-e8150dff.js → i18n-b9d8b0cc.js} +2 -2
  148. package/dist/esm/{i18n-e8150dff.js.map → i18n-b9d8b0cc.js.map} +1 -1
  149. package/dist/esm/loader.js +1 -1
  150. package/dist/esm/loading-spinner.entry.js +1 -1
  151. package/dist/esm/pedido-finalizado.entry.js +3 -3
  152. package/dist/esm/phone-input-mask.entry.js +1 -1
  153. package/dist/types/components/countdown-timer/countdown-timer.d.ts +6 -10
  154. package/dist/types/components/countdown-timer/countdown-timer.v2.d.ts +17 -0
  155. package/dist/types/components/giftback-form/subcomponents/giftback-info/giftback-info.d.ts +1 -0
  156. package/dist/types/components/giftback-form/subcomponents/pin-form/pin-form.d.ts +1 -0
  157. package/dist/types/components/note/crm-bonus-note.d.ts +3 -1
  158. package/dist/types/components.d.ts +25 -2
  159. package/dist/types/home/darlison/Projects/Bycoders/crmbonus/crmbonus-component/.stencil/env.d.ts +1 -1
  160. package/package.json +1 -1
  161. package/dist/components/p-30d12b1b.js.map +0 -1
  162. package/dist/components/p-3af6c647.js.map +0 -1
  163. package/dist/components/p-70b3b7b3.js.map +0 -1
  164. package/dist/crmbonus-component-wake/p-08af385f.entry.js +0 -2
  165. package/dist/crmbonus-component-wake/p-5cfc2702.entry.js +0 -2
  166. package/dist/crmbonus-component-wake/p-5cfc2702.entry.js.map +0 -1
  167. package/dist/crmbonus-component-wake/p-68de3204.entry.js +0 -2
  168. package/dist/crmbonus-component-wake/p-73efceb1.entry.js +0 -2
  169. package/dist/crmbonus-component-wake/p-73efceb1.entry.js.map +0 -1
  170. package/dist/crmbonus-component-wake/p-ac32b78a.entry.js +0 -2
  171. package/dist/crmbonus-component-wake/p-ac32b78a.entry.js.map +0 -1
  172. /package/dist/crmbonus-component-wake/{p-50d1cbaa.entry.js.map → p-0055876c.entry.js.map} +0 -0
  173. /package/dist/crmbonus-component-wake/{p-402ead13.entry.js.map → p-154b5318.entry.js.map} +0 -0
  174. /package/dist/crmbonus-component-wake/{p-09e26da2.entry.js.map → p-35b95848.entry.js.map} +0 -0
  175. /package/dist/crmbonus-component-wake/{p-a6a4a314.entry.js.map → p-77d8e96c.entry.js.map} +0 -0
  176. /package/dist/crmbonus-component-wake/{p-b57fbd6d.js.map → p-9ca28ea7.js.map} +0 -0
  177. /package/dist/crmbonus-component-wake/{p-08af385f.entry.js.map → p-b2941d60.entry.js.map} +0 -0
  178. /package/dist/crmbonus-component-wake/{p-d3ed9573.entry.js.map → p-e4aae2ed.entry.js.map} +0 -0
@@ -7,6 +7,7 @@ export class GiftbackInfo {
7
7
  constructor() {
8
8
  this.usedValue = 0;
9
9
  this.selectedOption = 'none';
10
+ this.cartId = undefined;
10
11
  this.loading = false;
11
12
  this.bonus = {
12
13
  totalBonus: 0,
@@ -61,7 +62,7 @@ export class GiftbackInfo {
61
62
  async handleOptionChange(option) {
62
63
  this.selectedOption = option;
63
64
  localStorage.setItem(USED_KEY, option);
64
- localStorage.removeItem("bc:time-allow");
65
+ await persisteMetadata(this.storeName, this.cartId, Object.assign(Object.assign({}, this.infoBonus.metadata), { createdAt: null }));
65
66
  switch (this.selectedOption) {
66
67
  case 'use':
67
68
  await this.reserve(this.usedValue);
@@ -94,18 +95,19 @@ export class GiftbackInfo {
94
95
  });
95
96
  }
96
97
  render() {
97
- var _a, _b;
98
+ var _a, _b, _c, _d, _e, _f, _g;
99
+ console.log('this.bonus', this.bonus);
98
100
  const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;
99
- const translateDescription = i18next.t("giftDescription", { amount: `${this.bonus.totalBonus.toFixed(2).replace(".", ",")}`, custom_name: "Giftback" });
101
+ const translateDescription = i18next.t("giftDescription", { amount: `${(_b = (_a = this.bonus) === null || _a === void 0 ? void 0 : _a.totalBonus) === null || _b === void 0 ? void 0 : _b.toFixed(2).replace(".", ",")}`, custom_name: "Giftback" });
100
102
  const limit = defineLimit(remainingGiftback);
101
- return (h("div", { key: 'a86a8d4456ffda158bc75e6e43147503bba77da3', class: "giftback-container" }, h("div", { key: 'c891c439db4c2da4ccfcab92df28293e7a009f3f', class: "container-description" }, h("p", { key: 'be590b46b37b2b021c97bda3cdc30f6c236bd0e9', innerHTML: translateDescription }), h("crm-tooltip", { key: '8ef31c5e27dc9b83366e8cd99d0a00035db4744e', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: '9b679e11adc1aa626b547e32dc5e35bbc0202b75', class: "slider-wrapper" }, h("div", { key: 'df732d13dadc8d58ecaad022aea3b004640fee51', class: "slider-value", style: {
103
+ return (h("div", { key: '7be5addfd9908dd56bd16e28034a19760caff647', class: "giftback-container" }, h("div", { key: '81cd844e7933006c889b72698336ff9998233356', class: "container-description" }, h("p", { key: '17fa71645dc1488f06b6b437ace56e8c18b672f0', innerHTML: translateDescription }), h("crm-tooltip", { key: '01c482a897941eb8e1351abb91c42c7dc499d97b', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: 'af9fefeb49b7a94639d70b98659a710081beadd8', class: "slider-wrapper" }, h("div", { key: '2bf443b10a1fa450e782782108bd970238f87f5e', class: "slider-value", style: {
102
104
  left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto
103
- } }, "R$ ", this.usedValue.toFixed(2).replace(".", ",")), h("input", { key: '22f06e0778eae76caf456577703161ecc5b44541', ref: ref => this._refIinputRange = ref, id: "position_value_id", disabled: true, type: "range", min: "0", max: this.bonus.totalBonus, value: this.usedValue, class: "slider", step: "0.01", onInput: (event) => this.handleSliderChange(event), style: {
105
+ } }, "R$ ", this.usedValue.toFixed(2).replace(".", ",")), h("input", { key: '7e05fd29fbad9560787ca648b52b613cf21ef190', ref: ref => this._refIinputRange = ref, id: "position_value_id", disabled: true, type: "range", min: "0", max: this.bonus.totalBonus, value: this.usedValue, class: "slider", step: "0.01", onInput: (event) => this.handleSliderChange(event), style: {
104
106
  background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,
105
- } })), limit.isComplete && (h("p", { key: '5e3a41f04ac519093ae792427313a088e3c2714a' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: '22ffa8e7ec5f896569398f4426dad6f805867923', class: "container-description" }, h("p", { key: 'f75c135130cfc1a5a76fe49d6da9219bbbb9c6ea' }, "Adicione ", h("strong", { key: 'dd5bdae84c8fb91ea3baeea3f85ba511c3b0f1b7' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo!"), h("crm-tooltip", { key: 'c91ff2664fbfc6bf20253764d374a82e5461fd3c', identity: "crm-max-description", text: i18next.t("labelamountPartial") }))), h("div", { key: '939eb1983893ad1946f620fe13274e4b7b3e556b', class: "options" }, h("div", { key: '3a65941099e08476365b0f60c59698644a7816c0', class: "options-option" }, h("input", { key: '5f5c36f87a81edfe4ec6602bc14c0a7d9ef0c7ab', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: 'cd94d13c30fb8ac308627081d06455860c333c98' }, "Usar o meu ", (_a = this.config) === null || _a === void 0 ? void 0 :
106
- _a.giftbackTitle)), h("div", { key: '0a9229b7ea36a31551c7cefb49cbfd435ce93f9c', class: "options-option" }, h("input", { key: 'a8a195e042b1b93beddfa25615d85fc6a248f7a0', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: '5bb2d69d189e19e55e7552a9807fe82c57514c79' }, "N\u00E3o usar o meu ", (_b = this.config) === null || _b === void 0 ? void 0 :
107
- _b.giftbackTitle))), this.showTime() &&
108
- (h("div", { key: '24f91ae971733aa15a61b0bca6089006bab90855', class: "info-box" }, "Ap\u00F3s ", h("countdown-timer", { key: '52393e979fc45ac4eaf2ca9757f0f7c87d8efa0e', dates: this.getTime(), downtime: () => { this.loadingTime = true; } }), ", voc\u00EA poder\u00E1 alterar sua escolha de usar ou n\u00E3o o Giftback.")), h("div", { key: 'ebdcfafb89fe697a1f845f7a864e96788a3da852', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa.")));
107
+ } })), limit.isComplete && (h("p", { key: '9977d40603bbe8d323f44a42094f7c1576b4993a' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: 'a9eb9058a5c9bbb0d525552dcc58c863839db623', class: "container-description" }, h("p", { key: '2df2a8725e57552f4fc3de8faf0e775bfe602605' }, "Adicione ", h("strong", { key: '903da6080220321ba7f9a7b06af9669ff2cd4b1d' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo!"), h("crm-tooltip", { key: 'eeab4e7c00483ef8fe7158637743a82a4b1b9e89', identity: "crm-max-description", text: i18next.t("labelamountPartial") }))), h("div", { key: '9ffdef39ffed71c2c2477c5f3a27886c5b1f3b72', class: "options" }, h("div", { key: '71c3e57423c2d88e08ffb87bf28523f33c729d29', class: "options-option" }, h("input", { key: '9dc7c161e7787925763d47881094ac61e9a7ef55', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: '90669945f849cddac286cd97f083991a2f933946' }, "Usar o meu ", (_c = this.config) === null || _c === void 0 ? void 0 :
108
+ _c.giftbackTitle)), h("div", { key: '214f0fb360bafc46dcd2da11ec036f20120dd905', class: "options-option" }, h("input", { key: '2032942447e8c11d2431e06fecdf21fe3980f8e5', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: 'c07aec8f2844eb35e5c50b3f0a9003c7c8236b06' }, "N\u00E3o usar o meu ", (_d = this.config) === null || _d === void 0 ? void 0 :
109
+ _d.giftbackTitle))), this.showTime() &&
110
+ (h("div", { key: '1ea742b19016627544836644f15f5e9327e91b26', class: "info-box" }, "Ap\u00F3s ", h("countdown-timer", { key: '4a9a9128f89973911c65f9777af687f998bafd7e', dataCriacao: new Date((_f = (_e = this.infoBonus) === null || _e === void 0 ? void 0 : _e.metadata) === null || _f === void 0 ? void 0 : _f.createdAt).toString(), downtime: () => { window.location.reload(); } }), ", voc\u00EA poder\u00E1 alterar sua escolha de usar ou n\u00E3o o Giftback.")), !((_g = this === null || this === void 0 ? void 0 : this.infoBonus) === null || _g === void 0 ? void 0 : _g.isBonusProcessed) && (h("div", { key: '06dc5915c5e487b7001c2018e627351b70a319c9', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa."))));
109
111
  }
110
112
  static get is() { return "giftback-info"; }
111
113
  static get originalStyleUrls() {
@@ -120,6 +122,23 @@ export class GiftbackInfo {
120
122
  }
121
123
  static get properties() {
122
124
  return {
125
+ "cartId": {
126
+ "type": "any",
127
+ "mutable": false,
128
+ "complexType": {
129
+ "original": "any",
130
+ "resolved": "any",
131
+ "references": {}
132
+ },
133
+ "required": false,
134
+ "optional": false,
135
+ "docs": {
136
+ "tags": [],
137
+ "text": ""
138
+ },
139
+ "attribute": "cart-id",
140
+ "reflect": false
141
+ },
123
142
  "loading": {
124
143
  "type": "boolean",
125
144
  "mutable": false,
@@ -1 +1 @@
1
- {"version":3,"file":"giftback-info.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-info/giftback-info.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, Watch, h } from \"@stencil/core\";\nimport { IBonus } from \"../../../../dto/validate.pin.bonus\";\n\nimport i18next from '../../../../i18n/i18n'\nimport { USED_KEY } from \"../../../../utils/keys.storage\";\nimport { defineLimit, formatDateToBr } from \"../../../../utils/utils\";\nimport { IInfoStore } from \"../../../../helpers/info.config.helper\";\nimport { ReservedInfoDTO } from \"../../../../dto/reserved-info.dto\";\nimport { persisteMetadata } from \"../../../../helpers/cart.helper\";\n\n@Component({\n tag: 'giftback-info',\n styleUrls: ['giftback-info.css']\n})\nexport class GiftbackInfo {\n\n private _refIinputRange: HTMLInputElement;\n\n @State() usedValue: number = 0;\n @State() selectedOption: string = 'none';\n\n @Prop() loading: boolean = false;\n @Prop() bonus: Partial<IBonus> = {\n totalBonus: 0,\n cartId: \"\",\n minimumPurchase: 0,\n bonusBalance: 0,\n calculatedValue: 0,\n firstValidityDate: \"\",\n totalValue: 0\n };\n @Prop() reserve: (amountRedeemed: number) => void;\n @Prop() cancel: () => void;\n @Prop() config: IInfoStore;\n @Prop() infoBonus: ReservedInfoDTO;\n @Prop() storeName: string\n\n @State() sliderPosition: number = 0;\n @State() sliderValuePosition: number = 0;\n\n @State() loadingTime = false;\n\n @Watch(\"bonus\")\n changedBonus() {\n this.updateBonus()\n }\n\n private updateBonus() {\n this.usedValue = this.bonus.bonusBalance;\n this.buildPositionSlider(0, this.bonus.totalBonus);\n }\n\n componentWillLoad() {\n this.updateBonus();\n this.selectedOption = localStorage.getItem(USED_KEY);\n }\n\n handleSliderChange(event: Event) {\n const input = event.target as HTMLInputElement;\n this.usedValue = parseFloat(input.value);\n\n // Calculando a posição do texto com base no valor do slider\n // const percentage = ((this.usedValue - parseInt(input.min)) / (parseInt(input.max) - parseInt(input.min))) * 100;\n // this.sliderPosition = percentage;\n\n this.buildPositionSlider(parseFloat(input.min), parseFloat(input.max))\n }\n\n componentDidLoad() {\n if(this.bonus) {\n this._refIinputRange.value = this.bonus?.bonusBalance.toString();\n }\n }\n\n private buildPositionSlider(min: number, max: number) {\n\n const percentage_init = max * 0.1;\n\n // Calculando a posição do texto com base no valor do slider\n const percentage = ((this.usedValue - min) / (max - min)) * 100;\n\n this.sliderPosition = percentage;\n this.sliderValuePosition = percentage + (this.usedValue <= percentage_init ? 10 : 0);\n }\n\n async handleOptionChange(option: string) {\n this.selectedOption = option;\n\n localStorage.setItem(USED_KEY, option);\n\n localStorage.removeItem(\"bc:time-allow\")\n\n switch (this.selectedOption) {\n case 'use':\n await this.reserve(this.usedValue);\n break;\n case 'dontUse':\n await this.cancel();\n break;\n default:\n }\n }\n\n showTime() {\n if(!this.infoBonus) return false;\n\n return !this.infoBonus.isExpired();\n\n // return this.infoBonus.isBonusProcessed\n }\n\n getTime() {\n \n const createdAt = new Date(this.infoBonus?.metadata?.createdAt);\n const expiration = new Date(createdAt);\n expiration.setMinutes(expiration.getMinutes() + 6);\n\n return {\n createdAt,\n expiration\n }\n }\n\n async downtime() {\n await persisteMetadata(this.storeName, this.bonus.cartId, {\n createdAt: null,\n })\n }\n\n render() {\n const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;\n\n const translateDescription = i18next.t(\"giftDescription\", { amount: `${this.bonus.totalBonus.toFixed(2).replace(\".\", \",\")}`, custom_name: \"Giftback\" })\n\n const limit = defineLimit(remainingGiftback);\n\n return (\n\n <div class=\"giftback-container\">\n <div class=\"container-description\">\n <p innerHTML={translateDescription}></p>\n <crm-tooltip identity=\"crm-role-description\" text={i18next.t(\"labelUseGiftback\", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) })} />\n </div>\n <div class=\"slider-wrapper\">\n <div\n class=\"slider-value\"\n style={{\n left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto\n\n }}\n >\n R$ {this.usedValue.toFixed(2).replace(\".\", \",\")}\n </div>\n <input\n ref={ref => this._refIinputRange = ref}\n id=\"position_value_id\"\n disabled\n type=\"range\"\n min=\"0\"\n max={this.bonus.totalBonus}\n value={this.usedValue}\n class=\"slider\"\n step=\"0.01\"\n onInput={(event) => this.handleSliderChange(event)}\n style={{\n background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,\n }}\n />\n </div>\n\n {\n limit.isComplete && (\n <p>\n {i18next.t(\"maxAmount\")}\n </p>\n )\n }\n\n {\n !limit.isComplete && (\n <div class=\"container-description\">\n <p>\n Adicione <strong>R$ {remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\")}</strong> ao carrinho para atingir o valor\n máximo!\n </p>\n <crm-tooltip identity=\"crm-max-description\" text={i18next.t(\"labelamountPartial\")} />\n </div>\n )\n }\n\n\n <div class=\"options\">\n <div class=\"options-option\">\n <input\n disabled={this.showTime()}\n type=\"radio\"\n name=\"giftbackOption\"\n value=\"use\"\n checked={this.selectedOption === 'use'}\n onChange={() => this.handleOptionChange('use')}\n />\n <p>Usar o meu {this.config?.giftbackTitle}</p>\n </div>\n <div class=\"options-option\">\n <input\n disabled={this.showTime()}\n type=\"radio\"\n name=\"giftbackOption\"\n value=\"dontUse\"\n checked={this.selectedOption === 'dontUse'}\n onChange={() => this.handleOptionChange('dontUse')}\n />\n <p>Não usar o meu {this.config?.giftbackTitle}</p>\n </div>\n </div>\n\n {\n this.showTime() &&\n (\n <div class=\"info-box\">\n Após <countdown-timer dates={this.getTime()} downtime={() => { this.loadingTime = true }} />, você poderá alterar sua escolha de usar ou não o Giftback.\n </div>\n )\n }\n\n\n <div class=\"info-box\">\n O Giftback será aplicado na próxima etapa.\n </div>\n </div>\n );\n }\n}"]}
1
+ {"version":3,"file":"giftback-info.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-info/giftback-info.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, Watch, h } from \"@stencil/core\";\nimport { IBonus } from \"../../../../dto/validate.pin.bonus\";\n\nimport i18next from '../../../../i18n/i18n'\nimport { USED_KEY } from \"../../../../utils/keys.storage\";\nimport { defineLimit, formatDateToBr } from \"../../../../utils/utils\";\nimport { IInfoStore } from \"../../../../helpers/info.config.helper\";\nimport { ReservedInfoDTO } from \"../../../../dto/reserved-info.dto\";\nimport { persisteMetadata } from \"../../../../helpers/cart.helper\";\n\n@Component({\n tag: 'giftback-info',\n styleUrls: ['giftback-info.css']\n})\nexport class GiftbackInfo {\n\n private _refIinputRange: HTMLInputElement;\n\n @State() usedValue: number = 0;\n @State() selectedOption: string = 'none';\n\n @Prop() cartId;\n @Prop() loading: boolean = false;\n @Prop() bonus: Partial<IBonus> = {\n totalBonus: 0,\n cartId: \"\",\n minimumPurchase: 0,\n bonusBalance: 0,\n calculatedValue: 0,\n firstValidityDate: \"\",\n totalValue: 0\n };\n @Prop() reserve: (amountRedeemed: number) => void;\n @Prop() cancel: () => void;\n @Prop() config: IInfoStore;\n @Prop() infoBonus: ReservedInfoDTO;\n @Prop() storeName: string\n\n @State() sliderPosition: number = 0;\n @State() sliderValuePosition: number = 0;\n\n @State() loadingTime = false;\n\n @Watch(\"bonus\")\n changedBonus() {\n this.updateBonus()\n }\n\n private updateBonus() {\n this.usedValue = this.bonus.bonusBalance;\n this.buildPositionSlider(0, this.bonus.totalBonus);\n }\n\n componentWillLoad() {\n this.updateBonus();\n this.selectedOption = localStorage.getItem(USED_KEY);\n }\n\n handleSliderChange(event: Event) {\n const input = event.target as HTMLInputElement;\n this.usedValue = parseFloat(input.value);\n\n // Calculando a posição do texto com base no valor do slider\n // const percentage = ((this.usedValue - parseInt(input.min)) / (parseInt(input.max) - parseInt(input.min))) * 100;\n // this.sliderPosition = percentage;\n\n this.buildPositionSlider(parseFloat(input.min), parseFloat(input.max))\n }\n\n componentDidLoad() {\n if (this.bonus) {\n this._refIinputRange.value = this.bonus?.bonusBalance.toString();\n }\n }\n\n private buildPositionSlider(min: number, max: number) {\n\n const percentage_init = max * 0.1;\n\n // Calculando a posição do texto com base no valor do slider\n const percentage = ((this.usedValue - min) / (max - min)) * 100;\n\n this.sliderPosition = percentage;\n this.sliderValuePosition = percentage + (this.usedValue <= percentage_init ? 10 : 0);\n }\n\n async handleOptionChange(option: string) {\n this.selectedOption = option;\n\n localStorage.setItem(USED_KEY, option);\n\n await persisteMetadata(this.storeName, this.cartId, { ...this.infoBonus.metadata, createdAt: null })\n\n switch (this.selectedOption) {\n case 'use':\n await this.reserve(this.usedValue);\n break;\n case 'dontUse':\n await this.cancel();\n break;\n default:\n }\n }\n\n showTime() {\n if (!this.infoBonus) return false;\n\n return !this.infoBonus.isExpired();\n\n // return this.infoBonus.isBonusProcessed\n }\n\n getTime() {\n\n const createdAt = new Date(this.infoBonus?.metadata?.createdAt);\n const expiration = new Date(createdAt);\n expiration.setMinutes(expiration.getMinutes() + 6);\n\n return {\n createdAt,\n expiration\n }\n }\n\n async downtime() {\n await persisteMetadata(this.storeName, this.bonus.cartId, {\n createdAt: null,\n })\n }\n\n render() {\n console.log('this.bonus', this.bonus)\n const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;\n\n const translateDescription = i18next.t(\"giftDescription\", { amount: `${this.bonus?.totalBonus?.toFixed(2).replace(\".\", \",\")}`, custom_name: \"Giftback\" })\n\n const limit = defineLimit(remainingGiftback);\n\n return (\n\n <div class=\"giftback-container\">\n <div class=\"container-description\">\n <p innerHTML={translateDescription}></p>\n <crm-tooltip identity=\"crm-role-description\" text={i18next.t(\"labelUseGiftback\", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) })} />\n </div>\n <div class=\"slider-wrapper\">\n <div\n class=\"slider-value\"\n style={{\n left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto\n\n }}\n >\n R$ {this.usedValue.toFixed(2).replace(\".\", \",\")}\n </div>\n <input\n ref={ref => this._refIinputRange = ref}\n id=\"position_value_id\"\n disabled\n type=\"range\"\n min=\"0\"\n max={this.bonus.totalBonus}\n value={this.usedValue}\n class=\"slider\"\n step=\"0.01\"\n onInput={(event) => this.handleSliderChange(event)}\n style={{\n background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,\n }}\n />\n </div>\n\n {\n limit.isComplete && (\n <p>\n {i18next.t(\"maxAmount\")}\n </p>\n )\n }\n\n {\n !limit.isComplete && (\n <div class=\"container-description\">\n <p>\n Adicione <strong>R$ {remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\")}</strong> ao carrinho para atingir o valor\n máximo!\n </p>\n <crm-tooltip identity=\"crm-max-description\" text={i18next.t(\"labelamountPartial\")} />\n </div>\n )\n }\n\n\n <div class=\"options\">\n <div class=\"options-option\">\n <input\n disabled={this.showTime()}\n type=\"radio\"\n name=\"giftbackOption\"\n value=\"use\"\n checked={this.selectedOption === 'use'}\n onChange={() => this.handleOptionChange('use')}\n />\n <p>Usar o meu {this.config?.giftbackTitle}</p>\n </div>\n <div class=\"options-option\">\n <input\n disabled={this.showTime()}\n type=\"radio\"\n name=\"giftbackOption\"\n value=\"dontUse\"\n checked={this.selectedOption === 'dontUse'}\n onChange={() => this.handleOptionChange('dontUse')}\n />\n <p>Não usar o meu {this.config?.giftbackTitle}</p>\n </div>\n </div>\n\n {\n this.showTime() &&\n (\n <div class=\"info-box\">\n Após <countdown-timer dataCriacao={new Date(this.infoBonus?.metadata?.createdAt).toString()} downtime={() => { window.location.reload() }} />, você poderá alterar sua escolha de usar ou não o Giftback.\n </div>\n )\n }\n\n {\n !this?.infoBonus?.isBonusProcessed && (\n <div class=\"info-box\">\n O Giftback será aplicado na próxima etapa.\n </div>\n )\n }\n\n </div>\n );\n }\n}"]}
@@ -12,7 +12,7 @@ export class PhoneForm {
12
12
  }
13
13
  render() {
14
14
  var _a;
15
- return (h(Host, { key: '33cfa4dfdd805c81743db679267b82a63fa753e7', class: "crm-phone-form" }, h("p", { key: '0ef790c33e48c646898feb1a5cdb98cea7e5be43', class: "crm-subtitle" }, "Digite o seu celular para verificar se h\u00E1 desconto dispon\u00EDvel nessa compra:"), h("phone-input-mask", { key: '46eb2b3b3741ffce1ff7d28b39c6964180919e1e', initialValue: this.value, ref: ref => this.phoneInputMask = ref }), h("crm-button", { key: '9b75600c3c8e0352eab7778f5f281b71035383d8', txtBtn: ((_a = this.config) === null || _a === void 0 ? void 0 : _a.btnApplyBonusLabel) || "Avançar", loading: this.loading, handleClick: () => this.handlePhone() })));
15
+ return (h(Host, { key: '05b900838ae89b5ad7f3cc52aca24253636c19ef', class: "crm-phone-form" }, h("p", { key: '03779c38d3762c0d3a6b1f810086a5ece9b69614', class: "crm-subtitle" }, "Digite o seu celular para verificar se h\u00E1 desconto dispon\u00EDvel nessa compra:"), h("phone-input-mask", { key: 'a3e1ec8445208627d6eb977dcf3fda068e3f7e1c', initialValue: this.value, ref: ref => this.phoneInputMask = ref }), h("crm-button", { key: '9148871287f30ff91aac845428f564ad79118bd7', txtBtn: ((_a = this.config) === null || _a === void 0 ? void 0 : _a.btnApplyBonusLabel) || "Avançar", loading: this.loading, handleClick: () => this.handlePhone() })));
16
16
  }
17
17
  static get is() { return "phone-form"; }
18
18
  static get originalStyleUrls() {
@@ -28,6 +28,7 @@ export class GiftbackPin {
28
28
  this.pin = [...this.pin];
29
29
  }
30
30
  validatePin() {
31
+ localStorage.removeItem("bc:resend");
31
32
  this.validate(this.pin.join(""));
32
33
  }
33
34
  verifyPin() {
@@ -37,16 +38,28 @@ export class GiftbackPin {
37
38
  }
38
39
  }
39
40
  handleTimeout() {
41
+ localStorage.removeItem("bc:resend");
40
42
  this.canResend = true;
41
43
  }
42
44
  async handleResend() {
43
45
  await this.resend();
44
46
  this.canResend = false;
45
47
  this.pin = ['', '', '', ''];
48
+ localStorage.removeItem("bc:resend");
49
+ }
50
+ buildTime() {
51
+ const resendDate = localStorage.getItem("bc:resend");
52
+ if (resendDate) {
53
+ return resendDate;
54
+ }
55
+ const date = new Date();
56
+ date.setSeconds(date.getSeconds() + 30);
57
+ localStorage.setItem("bc:resend", date.toString());
58
+ return date.toString();
46
59
  }
47
60
  render() {
48
61
  var _a;
49
- return (h("div", { key: '15aa6a8fe4e0fa3ea1a35e68b7853a4ca392899c', class: "crm-phone-form" }, h("label", { key: '83d48a38bc6cbbdbd391d7253a1e1fc3d01c44d2', class: "crm-subtitle" }, i18next.t('pin-sutitle'), " ", h("strong", { key: 'e88a16f28032afb4746dc8f97e83e2794b75f3fd' }, "+55 ", this.phone)), h("div", { key: '516969313ac099dfa1e4761784ef5f4e5c5225c3', class: "pin-container" }, this.pin.map((_, index) => (h("input", { type: "text", maxLength: 1, value: this.pin[index], onInput: (event) => this.handleInput(event, index) })))), h("slot", { key: 'b0ffbe2329a9e010766f3cf8e52943ebdbfe101e' }), h("p", { key: '91e9372e69f32ce93806ca194bf6347cd0a0a3ce', class: "crm-description" }, " N\u00E3o recebeu?", !this.canResend && h("label", { key: 'ed22df22e0498434ff3d6a187387aa8ddc48f6ef' }, " Reenviar em ", h("countdown-timer", { key: 'a81630d82997e9b74ceb08b52cd818d0aa81f00e', initialValue: 30, downtime: () => this.handleTimeout() }), " "), this.canResend && (h("div", { key: '417c6dc13b0e87993c8dbb71d9e263678e1025d8' }, h("a", { key: '9832f3c85b503e820d2452d76dc60a008ec250c9', onClick: () => this.handleResend() }, "Reenviar"), h("a", { key: '9c6ff0ab7b1e0f46235eed0a2e0c2142f3bd41f6', onClick: () => this.cancel() }, "Trocar n\u00FAmero")))), h("crm-button", { key: 'f347d33b491d5dae491ce5ed77e7f20734cfa76b', txtBtn: ((_a = this.config) === null || _a === void 0 ? void 0 : _a.btnApplyBonusLabel) || "Avançar", loading: this.loading, handleClick: () => this.validatePin() })));
62
+ return (h("div", { key: '190042377a7f0e1837bf3680e7447b819fe62ddb', class: "crm-phone-form" }, h("label", { key: '6e4deaad2d2b0d840bdae8b00d33e27e21e61f2c', class: "crm-subtitle" }, i18next.t('pin-sutitle'), " ", h("strong", { key: 'cb8942dd64dfa53f3d4d0b4f8005b683cf7e0414' }, "+55 ", this.phone)), h("div", { key: 'af31bb510091bc25346ede3cd4084c5e51648917', class: "pin-container" }, this.pin.map((_, index) => (h("input", { type: "text", maxLength: 1, value: this.pin[index], onInput: (event) => this.handleInput(event, index) })))), h("slot", { key: 'cbb6201f65b6a30e897697d11eb28cb4f90f580d' }), h("p", { key: '2ee78c98d57a66ef1f50c4f5ae0c7967f322a9d5', class: "crm-description" }, " N\u00E3o recebeu?", !this.canResend && h("label", { key: 'd3699dd40e2c1a3ba25c2af5f47965e1a8b00b4c' }, " Reenviar em", h("countdown-timer", { key: '0f8c0f6881aa4a45266eb8c873920a95fbd888fd', minutos: 0, segundos: 30, dataCriacao: this.buildTime(), downtime: () => this.handleTimeout() }), " "), this.canResend && (h("div", { key: '5bb4dfb686db4ef67e5fb49140f7c4e0a4c26b9a' }, h("a", { key: 'fae2ffb3f1b2c618316471a198a8492df04ab07e', onClick: () => this.handleResend() }, "Reenviar"), h("a", { key: '8ad3ce7f8a29398f7c5b4f2ff5373e48ede49070', onClick: () => this.cancel() }, "Trocar n\u00FAmero")))), h("crm-button", { key: '367ddb80c24e0282db737dfac6621b8091bcb67e', txtBtn: ((_a = this.config) === null || _a === void 0 ? void 0 : _a.btnApplyBonusLabel) || "Avançar", loading: this.loading, handleClick: () => this.validatePin() })));
50
63
  }
51
64
  static get is() { return "pin-form"; }
52
65
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"pin-form.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/pin-form/pin-form.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop, State } from '@stencil/core';\nimport { IPinSent } from '../../../../dto/pin.sent';\nimport i18next from '../../../../i18n/i18n'\nimport { IInfoStore } from '../../../../helpers/info.config.helper';\n\n@Component({\n tag: 'pin-form',\n styleUrls: ['pin-form.css', '../../giftback-form.css'],\n shadow: true,\n})\nexport class GiftbackPin {\n\n @Prop() validate: (pin: string) => void;\n @Prop() cancel: () => void;\n @Prop() resend: () => void;\n\n @Prop() sent: IPinSent;\n @Prop() loading: boolean = false;\n @Prop() phone: string;\n @Prop() config: IInfoStore;\n\n @State() pin: string[] = ['', '', '', ''];\n @State() isVerified: boolean = false;\n @State() canResend: boolean = false;\n\n componentWillLoad() {\n this.canResend = false;\n }\n\n handleInput(event: Event, index: number) {\n const input = event.target as HTMLInputElement;\n const value = input.value.slice(0, 1); // Limitar a um único dígito\n this.pin[index] = value;\n\n // Focar no próximo campo, se possível\n if (value && index < this.pin.length - 1) {\n const nextInput = input.nextElementSibling as HTMLInputElement;\n nextInput?.focus();\n }\n\n this.pin = [...this.pin];\n }\n\n validatePin() {\n this.validate(this.pin.join(\"\"))\n }\n\n verifyPin() {\n const pinCode = this.pin.join('');\n if (pinCode === '9999') {\n this.isVerified = true;\n }\n }\n\n handleTimeout() {\n this.canResend = true;\n }\n\n async handleResend() {\n await this.resend();\n\n this.canResend = false;\n this.pin = ['', '', '', '']\n }\n\n render() {\n return (\n <div class=\"crm-phone-form\">\n <label class=\"crm-subtitle\" >{i18next.t('pin-sutitle')} <strong>+55 {this.phone}</strong></label>\n <div class=\"pin-container\">\n {this.pin.map((_, index) => (\n <input\n type=\"text\"\n maxLength={1}\n value={this.pin[index]}\n onInput={(event) => this.handleInput(event, index)}\n />\n ))}\n </div>\n\n <slot></slot>\n\n <p class=\"crm-description\"> Não recebeu?\n {\n !this.canResend && <label> Reenviar em <countdown-timer initialValue={30} downtime={() => this.handleTimeout()} /> </label>\n }\n {\n this.canResend && (\n <div >\n <a onClick={() => this.handleResend()}>Reenviar</a>\n <a onClick={() => this.cancel()}>Trocar número</a>\n </div>\n )\n }\n </p>\n <crm-button txtBtn={this.config?.btnApplyBonusLabel || \"Avançar\"} loading={this.loading} handleClick={() => this.validatePin()} />\n </div >\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pin-form.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/pin-form/pin-form.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,OAAO,MAAM,uBAAuB,CAAA;AAQ3C,MAAM,OAAO,WAAW;;;;;;uBAOO,KAAK;;;mBAIP,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;0BACV,KAAK;yBACN,KAAK;;IAEnC,iBAAiB;QACb,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,WAAW,CAAC,KAAY,EAAE,KAAa;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B,CAAC;QAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAA4B;QACnE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QAExB,sCAAsC;QACtC,IAAI,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAsC,CAAC;YAC/D,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,EAAE,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW;QACP,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IACpC,CAAC;IAED,SAAS;QACL,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,aAAa;QACT,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5B,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;IACxC,CAAC;IAED,SAAS;QACL,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAErD,IAAG,UAAU,EAAE,CAAC;YACZ,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACxC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM;;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,gBAAgB;YACvB,8DAAO,KAAK,EAAC,cAAc;gBAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;;gBAAE;;oBAAa,IAAI,CAAC,KAAK,CAAU,CAAQ;YACjG,4DAAK,KAAK,EAAC,eAAe,IACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,aACI,IAAI,EAAC,MAAM,EACX,SAAS,EAAE,CAAC,EACZ,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EACtB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,GACpD,CACL,CAAC,CACA;YAEN,8DAAa;YAEb,0DAAG,KAAK,EAAC,iBAAiB;;gBAElB,CAAC,IAAI,CAAC,SAAS,IAAI;;oBACf,wEAAiB,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,GAAI;wBAAS;gBAG/H,IAAI,CAAC,SAAS,IAAI,CACd;oBACI,0DAAG,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,eAAc;oBACnD,0DAAG,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,yBAAmB,CAChD,CACT,CAEL;YACJ,mEAAY,MAAM,EAAE,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,kBAAkB,KAAI,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,GAAI,CAC/H,CACV,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, h, Prop, State } from '@stencil/core';\nimport { IPinSent } from '../../../../dto/pin.sent';\nimport i18next from '../../../../i18n/i18n'\nimport { IInfoStore } from '../../../../helpers/info.config.helper';\n\n@Component({\n tag: 'pin-form',\n styleUrls: ['pin-form.css', '../../giftback-form.css'],\n shadow: true,\n})\nexport class GiftbackPin {\n\n @Prop() validate: (pin: string) => void;\n @Prop() cancel: () => void;\n @Prop() resend: () => void;\n\n @Prop() sent: IPinSent;\n @Prop() loading: boolean = false;\n @Prop() phone: string;\n @Prop() config: IInfoStore;\n\n @State() pin: string[] = ['', '', '', ''];\n @State() isVerified: boolean = false;\n @State() canResend: boolean = false;\n\n componentWillLoad() {\n this.canResend = false;\n }\n\n handleInput(event: Event, index: number) {\n const input = event.target as HTMLInputElement;\n const value = input.value.slice(0, 1); // Limitar a um único dígito\n this.pin[index] = value;\n\n // Focar no próximo campo, se possível\n if (value && index < this.pin.length - 1) {\n const nextInput = input.nextElementSibling as HTMLInputElement;\n nextInput?.focus();\n }\n\n this.pin = [...this.pin];\n }\n\n validatePin() {\n localStorage.removeItem(\"bc:resend\")\n this.validate(this.pin.join(\"\"))\n }\n\n verifyPin() {\n const pinCode = this.pin.join('');\n if (pinCode === '9999') {\n this.isVerified = true;\n }\n }\n\n handleTimeout() {\n localStorage.removeItem(\"bc:resend\")\n this.canResend = true;\n }\n\n async handleResend() {\n await this.resend();\n\n this.canResend = false;\n this.pin = ['', '', '', ''];\n localStorage.removeItem(\"bc:resend\")\n }\n\n buildTime() {\n const resendDate = localStorage.getItem(\"bc:resend\");\n\n if(resendDate) {\n return resendDate;\n }\n\n const date = new Date();\n date.setSeconds(date.getSeconds() + 30);\n localStorage.setItem(\"bc:resend\", date.toString());\n\n return date.toString();\n }\n\n render() {\n return (\n <div class=\"crm-phone-form\">\n <label class=\"crm-subtitle\" >{i18next.t('pin-sutitle')} <strong>+55 {this.phone}</strong></label>\n <div class=\"pin-container\">\n {this.pin.map((_, index) => (\n <input\n type=\"text\"\n maxLength={1}\n value={this.pin[index]}\n onInput={(event) => this.handleInput(event, index)}\n />\n ))}\n </div>\n\n <slot></slot>\n\n <p class=\"crm-description\"> Não recebeu?\n {\n !this.canResend && <label> Reenviar em \n <countdown-timer minutos={0} segundos={30} dataCriacao={this.buildTime()} downtime={() => this.handleTimeout()} /> </label>\n }\n {\n this.canResend && (\n <div >\n <a onClick={() => this.handleResend()}>Reenviar</a>\n <a onClick={() => this.cancel()}>Trocar número</a>\n </div>\n )\n }\n </p>\n <crm-button txtBtn={this.config?.btnApplyBonusLabel || \"Avançar\"} loading={this.loading} handleClick={() => this.validatePin()} />\n </div >\n );\n }\n}\n"]}
@@ -4,7 +4,7 @@ export class LoadingContainer {
4
4
  this.loading = true;
5
5
  }
6
6
  render() {
7
- return (h("div", { key: '06a7a57acb07c91ca75d00dd42ca568ac708a3ef', class: "relative-xy" }, this.loading && (h("div", { key: '6eee6954ce47b3a60cc9d3f599aa826c30e522db', class: "loading-container" }, h("div", { key: '8747ac17ca30704d18739ccd1cf7d31fbbb05419', class: "loading-spinner" }))), h("slot", { key: '32ffc7a17474372cf35fe7812fa4f193d00aa224' })));
7
+ return (h("div", { key: '679060e14b019ddb99823cb9b49c251bc0d2e1f1', class: "relative-xy" }, this.loading && (h("div", { key: 'cc10e466321732aae1cbf9ad321176f86fc60471', class: "loading-container" }, h("div", { key: 'ab1aa3a08cf62c0a631204810c35631bdc3efef0', class: "loading-spinner" }))), h("slot", { key: '84e00dbb82a035c847dc5e0c0e3018f49cbdfdc0' })));
8
8
  }
9
9
  static get is() { return "loading-container"; }
10
10
  static get originalStyleUrls() {
@@ -5,7 +5,7 @@ export class LoadingSpinner {
5
5
  this.color = '#0078d7';
6
6
  }
7
7
  render() {
8
- return (h("div", { key: '148b1ced74314541178bf725d205e8271b682335', class: "spinner", style: { width: this.size, height: this.size, borderColor: `${this.color} transparent transparent transparent` } }));
8
+ return (h("div", { key: '679ae15e2aff1beb1547d096985a77dd124fee9d', class: "spinner", style: { width: this.size, height: this.size, borderColor: `${this.color} transparent transparent transparent` } }));
9
9
  }
10
10
  static get is() { return "loading-spinner"; }
11
11
  static get encapsulation() { return "shadow"; }
@@ -8,7 +8,7 @@ export class AppModal {
8
8
  this.modalClosed.emit();
9
9
  }
10
10
  render() {
11
- return (h("div", { key: '3f44609d2835224eea0668475f6851eab807cfce', class: `modal-backdrop ${this.isOpen ? 'visible' : ''}` }, h("div", { key: 'c7998d2ab6ce04ce722a52712267b0493495cb29', class: "modal" }, h("div", { key: 'dcc7438d690866d20972f04c6c9ad39f4f2e84da', class: "modal-header" }, h("h3", { key: '0257c585eeec3daf72b7b371b557ae699891dba9' }, this.modalTitle), h("button", { key: 'e0b4f89907a4da774c021bcc3797f5b2fb1f0c0e', class: "close-button", onClick: () => this.closeModal() }, "\u00D7")), h("div", { key: 'e9efd84c1fd89da8b9df15970b71beae66ea6fb8', class: "modal-body" }, h("slot", { key: '6e3371866a4a2adf86a04e30e7a1ed843e7492fb' })))));
11
+ return (h("div", { key: 'c7e578637bb1a96ccc8e305281e2608c75c9f959', class: `modal-backdrop ${this.isOpen ? 'visible' : ''}` }, h("div", { key: '85c02a2e3af93968cf8a7866f6443405f2b379c3', class: "modal" }, h("div", { key: '955224cdd340b8e039e0a3e08867e7614d8a1760', class: "modal-header" }, h("h3", { key: '2021357a5db7ae60f54fd60dd8e20bedae438844' }, this.modalTitle), h("button", { key: 'e7109497945b0beb6796bb6c0defdf7c69fc224d', class: "close-button", onClick: () => this.closeModal() }, "\u00D7")), h("div", { key: '02ca0913b2edf22ae7aabfe2049ff9fc921e6759', class: "modal-body" }, h("slot", { key: 'd288e69b32da330c6fd7687527eaa41093e4e700' })))));
12
12
  }
13
13
  static get is() { return "app-modal"; }
14
14
  static get encapsulation() { return "shadow"; }
@@ -16,6 +16,7 @@ export class CrmBonusNote {
16
16
  this.bonus = undefined;
17
17
  this.showEdit = false;
18
18
  this.styles = defaultStyles;
19
+ this.info = undefined;
19
20
  }
20
21
  async componentWillLoad() {
21
22
  await this.upadateCheckToFreteAndGetUrl();
@@ -38,6 +39,8 @@ export class CrmBonusNote {
38
39
  if ((_a = info === null || info === void 0 ? void 0 : info.metadata) === null || _a === void 0 ? void 0 : _a.url) {
39
40
  this.url = (_b = info === null || info === void 0 ? void 0 : info.metadata) === null || _b === void 0 ? void 0 : _b.url;
40
41
  }
42
+ console.log('info', info);
43
+ this.info = info;
41
44
  }
42
45
  catch (error) {
43
46
  localStorage.removeItem(key);
@@ -69,6 +72,12 @@ export class CrmBonusNote {
69
72
  }
70
73
  setTime();
71
74
  }
75
+ buildTime() {
76
+ var _a, _b, _c, _d;
77
+ if (!((_b = (_a = this.info) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.createdAt))
78
+ return "";
79
+ return new Date((_d = (_c = this.info) === null || _c === void 0 ? void 0 : _c.metadata) === null || _d === void 0 ? void 0 : _d.createdAt).toString();
80
+ }
72
81
  hasBonus() {
73
82
  const _bonus = localStorage.getItem(getKeyReserveByCartId(this.cartWake.id));
74
83
  const info = {
@@ -90,10 +99,10 @@ export class CrmBonusNote {
90
99
  var _a;
91
100
  const giftbackname = ((_a = this.config) === null || _a === void 0 ? void 0 : _a.giftbackTitle) || "Giftback";
92
101
  const infobonus = this.hasBonus();
93
- return (h("div", { key: 'fd8ca59342bc33fc8db3a9a399e3614ed86959bd' }, h("div", { key: '6a0e0bce936f02c956cc0c31ca61f98e2793d99f', class: "note-container", style: this.styles }, h("div", { key: '1170f4012c0e22f213ec2446ee41b9298ac3ec3b', class: "note-header" }, h("p", { key: 'b195b60edada5bdea110449dd9485fbcc0e50ea2', class: "note-title" }, h("img", { key: '313b7a196f2ee87b89e69c8d8d6cd38b2380d513', src: money, width: 23 }), this.config.giftbackTitle), infobonus.hasBonus && (h("div", { key: '0d086a75b97b113785c6be6a91c51852b4daa520' }, this.showEdit && (h("p", { key: '0e9a7c9fab9310d88231de48191f9cfc10fe2119', class: "back-cart", onClick: () => this.backCart() }, i18next.t("edit"))), !this.showEdit && h("countdown-timer", { key: '4a064288b3fc08fed7b27148fc148930af605f35', initialValue: this.getTime(), downtime: () => { this.showEdit = true; } })))), infobonus.hasBonus &&
94
- (h("p", { key: '762bab2b91604e2d4a773c06ea602d401df6790f', class: "note-description-2" }, i18next.t("withApplyBonus", { giftbackname: giftbackname }), " ", h("strong", { key: '43c4638723b7014d2f7296a1f36b16cd62bd3115' }, "R$ ", this.getAmount(), "."))), (infobonus.requestBonus && !infobonus.hasBonus) &&
95
- (h("p", { key: '139565c352e860b3e9c4638e2f62e27d3f4381a2', class: "note-description-not" }, i18next.t("noBonus", { giftbackname: giftbackname }))), !infobonus.requestBonus &&
96
- (h("div", { key: '99e63a5fa9756422df50baca30aa574d7cefedec', class: "description" }, h("p", { key: '6696ee6017cf88ccd00943cfeedd38bd631582b8', class: "note-description-not" }, i18next.t("noBonus", { giftbackname: giftbackname })))))));
102
+ return (h("div", { key: '4a533319aa37125573d1b97fff762beba1e21b73' }, h("div", { key: '48dce1be2670c11ac3b78e595a24117127ace8c8', class: "note-container", style: this.styles }, h("div", { key: 'fa59aa8bd0d0a7ccf5ca9e8ee5b44d0a9626516f', class: "note-header" }, h("p", { key: '89f0ee41f4c0e275339038b2f7561328abc971d2', class: "note-title" }, h("img", { key: 'de17828dfec537a452ff1b79ca0b6c42f9cedd47', src: money, width: 23 }), this.config.giftbackTitle), infobonus.hasBonus && (h("div", { key: '1a963fa9e86cb8c93c738d92ebbcc74aee46c1fc' }, this.showEdit && (h("p", { key: 'e9ab4dcc36fb81ef844ddbe2451f3c822b53a465', class: "back-cart", onClick: () => this.backCart() }, i18next.t("edit"))), !this.showEdit && h("countdown-timer", { key: '82f77de37ed0a714f7a96faefd0790481597e3f6', dataCriacao: this.buildTime(), downtime: () => { this.showEdit = true; } })))), infobonus.hasBonus &&
103
+ (h("p", { key: '6f2a3eeb27a64ab131fdbc92bcb4f5ce261b522e', class: "note-description-2" }, i18next.t("withApplyBonus", { giftbackname: giftbackname }), " ", h("strong", { key: '4a2b5829e8c5df8275a393f78dbead011a882cb9' }, "R$ ", this.getAmount(), "."))), (infobonus.requestBonus && !infobonus.hasBonus) &&
104
+ (h("p", { key: '54607ce969f8b7b8ac9abf3e51b31b5d4c5bb253', class: "note-description-not" }, i18next.t("noBonus", { giftbackname: giftbackname }))), !infobonus.requestBonus &&
105
+ (h("div", { key: '2981b854d04078013f1051890fcd1de676a4da9e', class: "description" }, h("p", { key: '8a3fc01141db28d93025b1cc80816406c3a5879c', class: "note-description-not" }, i18next.t("noBonus", { giftbackname: giftbackname })))))));
97
106
  }
98
107
  static get is() { return "crm-bonus-note"; }
99
108
  static get originalStyleUrls() {
@@ -134,7 +143,8 @@ export class CrmBonusNote {
134
143
  "config": {},
135
144
  "bonus": {},
136
145
  "showEdit": {},
137
- "styles": {}
146
+ "styles": {},
147
+ "info": {}
138
148
  };
139
149
  }
140
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crm-bonus-note.js","sourceRoot":"","sources":["../../../../src/components/note/crm-bonus-note.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, h } from \"@stencil/core\";\nimport { IInfoStore, getInfoCustomization } from \"../../helpers/info.config.helper\";\n\nimport money from '../../assets/svg/money-dollars-svgrepo-com.svg'\nimport { getKeyReserveByCartId } from \"../../utils/keys.storage\";\nimport i18next from \"../../i18n/i18n\"\nimport { IBonus } from \"../../components\";\nimport { setTime } from \"../../helpers/time.helper\";\nimport { CartWake } from \"../../objectvalues/cart.wake\";\nimport { getCart, getInfoBonusByCartIdAndStoreName } from \"../../helpers/cart.helper\";\nimport { defaultStyles } from \"../../contants\";\n\n@Component({\n tag: 'crm-bonus-note',\n styleUrl: 'crm-bonus-note.css'\n})\nexport class CrmBonusNote {\n\n @Prop() cart;\n\n @State() cartWake: CartWake;\n @State() url: string;\n @State() config: IInfoStore;\n @State() bonus: IBonus;\n @State() showEdit: boolean = false;\n @State() styles = defaultStyles;\n async componentWillLoad() {\n await this.upadateCheckToFreteAndGetUrl();\n }\n\n async upadateCheckToFreteAndGetUrl() {\n\n this.cartWake = this.cart ? new CartWake(JSON.parse(this.cart)) : await getCart();\n\n const key = getKeyReserveByCartId(this.cartWake.id);\n try {\n const info = await getInfoBonusByCartIdAndStoreName(this.cartWake.id, this.cartWake.store.name);\n\n if (info.bonusBalance) {\n localStorage.setItem(this.cartWake.id, info.bonusBalance);\n localStorage.setItem(key, JSON.stringify({\n hasBonus: true,\n }));\n }\n\n if (info.isBonusProcessed) {\n this.startTime();\n }\n\n if(info?.metadata?.url) {\n this.url = info?.metadata?.url;\n }\n\n } catch (error) {\n localStorage.removeItem(key);\n localStorage.removeItem(this.cartWake.id);\n }\n\n this.config = getInfoCustomization(this.cartWake.store.name);\n\n if (this.config.keepStoreFrontStyle) {\n this.styles = null;\n }\n\n const envios = document.getElementsByName('forma-envio');\n envios.forEach((envio: any) => {\n envio.checked = false;\n });\n\n }\n\n handleHide() {\n const amount = localStorage.getItem(this.cartWake.id);\n return !!amount;\n }\n\n getAmount() {\n const amount = localStorage.getItem(this.cartWake.id);\n\n return amount ? Number(amount).toFixed(2).replace(\".\", \",\") || \"0,00\" : \"0,00\";\n }\n\n async backCart() {\n window.location.href = this.url;\n }\n\n\n private startTime() {\n\n if (!localStorage.getItem(\"bc:time-allow\")) {\n localStorage.removeItem(\"bc:time\")\n }\n\n setTime();\n }\n\n\n hasBonus() {\n const _bonus = localStorage.getItem(getKeyReserveByCartId(this.cartWake.id));\n\n const info = {\n hasBonus: false,\n requestBonus: false\n }\n\n if (_bonus) {\n this.bonus = JSON.parse(_bonus);\n info.hasBonus = this.bonus.hasBonus;\n info.requestBonus = true;\n }\n\n return info;\n }\n\n getTime() {\n const time = localStorage.getItem(\"bc:time\")\n\n return time ? Number(time) : 0;\n }\n\n render() {\n\n const giftbackname = this.config?.giftbackTitle || \"Giftback\";\n\n const infobonus = this.hasBonus()\n\n return (\n <div>\n <div class=\"note-container\" style={this.styles}>\n <div class=\"note-header\">\n\n <p class=\"note-title\">\n <img src={money} width={23} />\n {this.config.giftbackTitle}\n </p>\n {\n infobonus.hasBonus && (\n <div>\n {this.showEdit && (\n <p class=\"back-cart\" onClick={() => this.backCart()}>\n {i18next.t(\"edit\")}\n </p>\n )}\n {!this.showEdit && <countdown-timer initialValue={this.getTime()} downtime={() => { this.showEdit = true }} />}\n </div>\n )\n }\n </div>\n\n {\n infobonus.hasBonus &&\n (\n <p class=\"note-description-2\">\n {i18next.t(\"withApplyBonus\", { giftbackname: giftbackname })} <strong>R$ {this.getAmount()}.</strong>\n </p>\n )\n }\n\n {\n (infobonus.requestBonus && !infobonus.hasBonus) &&\n (\n <p class=\"note-description-not\">\n {i18next.t(\"noBonus\", { giftbackname: giftbackname })}\n </p>\n )\n }\n\n {\n !infobonus.requestBonus &&\n (\n <div class=\"description\">\n <p class=\"note-description-not\">\n {i18next.t(\"noBonus\", { giftbackname: giftbackname })}\n </p>\n </div>\n )\n }\n </div>\n </div>\n )\n }\n}"]}
1
+ {"version":3,"file":"crm-bonus-note.js","sourceRoot":"","sources":["../../../../src/components/note/crm-bonus-note.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, h } from \"@stencil/core\";\nimport { IInfoStore, getInfoCustomization } from \"../../helpers/info.config.helper\";\n\nimport money from '../../assets/svg/money-dollars-svgrepo-com.svg'\nimport { getKeyReserveByCartId } from \"../../utils/keys.storage\";\nimport i18next from \"../../i18n/i18n\"\nimport { IBonus, ReservedInfoDTO } from \"../../components\";\nimport { setTime } from \"../../helpers/time.helper\";\nimport { CartWake } from \"../../objectvalues/cart.wake\";\nimport { getCart, getInfoBonusByCartIdAndStoreName } from \"../../helpers/cart.helper\";\nimport { defaultStyles } from \"../../contants\";\n\n@Component({\n tag: 'crm-bonus-note',\n styleUrl: 'crm-bonus-note.css'\n})\nexport class CrmBonusNote {\n\n @Prop() cart;\n\n @State() cartWake: CartWake;\n @State() url: string;\n @State() config: IInfoStore;\n @State() bonus: IBonus;\n @State() showEdit: boolean = false;\n\n @State() styles = defaultStyles;\n @State() info: ReservedInfoDTO;\n\n async componentWillLoad() {\n await this.upadateCheckToFreteAndGetUrl();\n }\n\n async upadateCheckToFreteAndGetUrl() {\n\n this.cartWake = this.cart ? new CartWake(JSON.parse(this.cart)) : await getCart();\n\n const key = getKeyReserveByCartId(this.cartWake.id);\n try {\n const info = await getInfoBonusByCartIdAndStoreName(this.cartWake.id, this.cartWake.store.name);\n\n if (info.bonusBalance) {\n localStorage.setItem(this.cartWake.id, info.bonusBalance);\n localStorage.setItem(key, JSON.stringify({\n hasBonus: true,\n }));\n }\n\n if (info.isBonusProcessed) {\n this.startTime();\n }\n\n if(info?.metadata?.url) {\n this.url = info?.metadata?.url;\n }\n\n console.log('info', info);\n\n this.info = info;\n } catch (error) {\n localStorage.removeItem(key);\n localStorage.removeItem(this.cartWake.id);\n }\n\n this.config = getInfoCustomization(this.cartWake.store.name);\n\n if (this.config.keepStoreFrontStyle) {\n this.styles = null;\n }\n\n const envios = document.getElementsByName('forma-envio');\n envios.forEach((envio: any) => {\n envio.checked = false;\n });\n\n }\n\n handleHide() {\n const amount = localStorage.getItem(this.cartWake.id);\n return !!amount;\n }\n\n getAmount() {\n const amount = localStorage.getItem(this.cartWake.id);\n\n return amount ? Number(amount).toFixed(2).replace(\".\", \",\") || \"0,00\" : \"0,00\";\n }\n\n async backCart() {\n window.location.href = this.url;\n }\n\n\n private startTime() {\n\n if (!localStorage.getItem(\"bc:time-allow\")) {\n localStorage.removeItem(\"bc:time\")\n }\n\n setTime();\n }\n\n private buildTime() {\n if(!this.info?.metadata?.createdAt)\n return \"\";\n\n return new Date(this.info?.metadata?.createdAt).toString();\n }\n\n\n hasBonus() {\n const _bonus = localStorage.getItem(getKeyReserveByCartId(this.cartWake.id));\n\n const info = {\n hasBonus: false,\n requestBonus: false\n }\n\n if (_bonus) {\n this.bonus = JSON.parse(_bonus);\n info.hasBonus = this.bonus.hasBonus;\n info.requestBonus = true;\n }\n\n return info;\n }\n\n getTime() {\n const time = localStorage.getItem(\"bc:time\")\n\n return time ? Number(time) : 0;\n }\n\n render() {\n\n const giftbackname = this.config?.giftbackTitle || \"Giftback\";\n\n const infobonus = this.hasBonus()\n\n return (\n <div>\n <div class=\"note-container\" style={this.styles}>\n <div class=\"note-header\">\n\n <p class=\"note-title\">\n <img src={money} width={23} />\n {this.config.giftbackTitle}\n </p>\n {\n infobonus.hasBonus && (\n <div>\n {this.showEdit && (\n <p class=\"back-cart\" onClick={() => this.backCart()}>\n {i18next.t(\"edit\")}\n </p>\n )}\n {!this.showEdit && <countdown-timer dataCriacao={this.buildTime()} downtime={() => { this.showEdit = true }} />}\n </div>\n )\n }\n </div>\n\n {\n infobonus.hasBonus &&\n (\n <p class=\"note-description-2\">\n {i18next.t(\"withApplyBonus\", { giftbackname: giftbackname })} <strong>R$ {this.getAmount()}.</strong>\n </p>\n )\n }\n\n {\n (infobonus.requestBonus && !infobonus.hasBonus) &&\n (\n <p class=\"note-description-not\">\n {i18next.t(\"noBonus\", { giftbackname: giftbackname })}\n </p>\n )\n }\n\n {\n !infobonus.requestBonus &&\n (\n <div class=\"description\">\n <p class=\"note-description-not\">\n {i18next.t(\"noBonus\", { giftbackname: giftbackname })}\n </p>\n </div>\n )\n }\n </div>\n </div>\n )\n }\n}"]}
@@ -23,7 +23,7 @@ export class Pedido {
23
23
  }
24
24
  }
25
25
  render() {
26
- return (h("div", { key: 'e4cb230dffbefcc6e5d45bfd765f00f55a0ae754' }));
26
+ return (h("div", { key: 'eafbe75598a3ee964f68266293e3d26572e0f759' }));
27
27
  }
28
28
  static get is() { return "pedido-finalizado"; }
29
29
  static get properties() {
@@ -42,7 +42,7 @@ export class PhoneInputMask {
42
42
  return this.phone;
43
43
  }
44
44
  render() {
45
- return (h("div", { key: 'c80098f2bcedaa085d136be5fdaa9f60400f85a5' }, h("input", { key: '4ee5f1b3e227777315b059f3f8da7614dcfb694e', disabled: this.disabled, id: "phone", type: "text", class: "phone-input-form", value: this.phone, onInput: (event) => this.handleInput(event), placeholder: "(99) 99999 9999" }), h("p", { key: '943427f82918af1ade76a22afa860d105ce3ae1e', class: "crm-erro-msg" }, this.message)));
45
+ return (h("div", { key: '44d9a3f88829cdf269da2ea029ca81197a9ca31e' }, h("input", { key: '4af46e5c7eb38f108f3a3b58937b3b5560a0757d', disabled: this.disabled, id: "phone", type: "text", class: "phone-input-form", value: this.phone, onInput: (event) => this.handleInput(event), placeholder: "(99) 99999 9999" }), h("p", { key: '5058284a0a7bda9e750cbf4e1134fdc47c7de83e', class: "crm-erro-msg" }, this.message)));
46
46
  }
47
47
  static get is() { return "phone-input-mask"; }
48
48
  static get encapsulation() { return "shadow"; }
@@ -6,7 +6,7 @@ export class Tooltip {
6
6
  this.identity = undefined;
7
7
  }
8
8
  render() {
9
- return (h("div", { key: '3582af9cc751c10b237ab086a711ecaaedaded27', class: "crm-tooltip-container crm-tooltip" }, h("img", { key: '4f8c3e3da55ec000759864d8facde5002c759426', src: info }), h("span", { key: '7f1f591d486d51c31adc5c383dcbbcce6732f765', id: this.identity, class: "tooltiptext" }, this.text)));
9
+ return (h("div", { key: 'e5adedc85f8db34ef347ee41b804f97e254b1692', class: "crm-tooltip-container crm-tooltip" }, h("img", { key: '76bd6d6aa860c81ba748cd92d1ee42de48140b56', src: info }), h("span", { key: 'ca2ce50e7ba71165c244de210200275eb705bf9c', id: this.identity, class: "tooltiptext" }, this.text)));
10
10
  }
11
11
  static get is() { return "crm-tooltip"; }
12
12
  static get originalStyleUrls() {
@@ -20,7 +20,7 @@ i18next.init({
20
20
  description: "Este é um exemplo",
21
21
  'pin-sutitle': "Digite o código de 4 dígitos enviado por SMS ao número",
22
22
  giftDescription: "Você tem até <strong>R$ {{amount}}</strong> de {{custom_name}}",
23
- noGiftback: "Você não possui {{storename}} disponível para essa compra.",
23
+ noGiftback: "O seu bônus não se aplica aos produtos selecionados.",
24
24
  noBonus: "Não há {{giftbackname}} disponível para essa compra.",
25
25
  withApplyBonus: "{{giftbackname}} aplicado ao pedido: ",
26
26
  maxAmount: "Você atingiu o valor máximo!",
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/i18n/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,CAAC,IAAI,CAAC;IACX,GAAG,EAAE,IAAI,EAAE,gBAAgB;IAC3B,WAAW,EAAE,IAAI,EAAE,qBAAqB;IACxC,aAAa,EAAE;QACb,WAAW,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACT,EAAE,EAAE;YACF,WAAW,EAAE;gBACX,OAAO,EAAE,SAAS;gBAClB,WAAW,EAAE,oBAAoB;gBACjC,aAAa,EAAE,mDAAmD;aACnE;SACF;QACD,EAAE,EAAE;YACF,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,mBAAmB;gBAChC,aAAa,EAAE,wDAAwD;gBACvE,eAAe,EAAE,gEAAgE;gBACjF,UAAU,EAAE,4DAA4D;gBACxE,OAAO,EAAE,sDAAsD;gBAC/D,cAAc,EAAE,uCAAuC;gBACvD,SAAS,EAAE,8BAA8B;gBACzC,kBAAkB,EAAE,gEAAgE;gBACpF,gBAAgB,EAAE,oIAAoI;gBACtJ,QAAQ,EAAE,0EAA0E;aACrF;SACF;KACF;CACF,CAAC,CAAC;AAEH,eAAe,OAAO,CAAC","sourcesContent":["import i18next from 'i18next';\n\ni18next.init({\n lng: 'pt', // Idioma padrão\n fallbackLng: 'en', // Idioma de fallback\n interpolation: {\n escapeValue: false\n },\n resources: {\n en: {\n translation: {\n welcome: \"Welcome\",\n description: \"This is an example\",\n 'pin-sutitle': \"Enter the 4-digit code sent via SMS to the number\"\n },\n },\n pt: {\n translation: {\n edit: \"Editar\",\n welcome: \"Bem-vindo\",\n description: \"Este é um exemplo\",\n 'pin-sutitle': \"Digite o código de 4 dígitos enviado por SMS ao número\",\n giftDescription: \"Você tem até <strong>R$ {{amount}}</strong> de {{custom_name}}\",\n noGiftback: \"Você não possui {{storename}} disponível para essa compra.\",\n noBonus: \"Não há {{giftbackname}} disponível para essa compra.\",\n withApplyBonus: \"{{giftbackname}} aplicado ao pedido: \",\n maxAmount: \"Você atingiu o valor máximo!\",\n labelamountPartial: \"Ao utilizar um valor parcial, você perderá a quantia restante.\",\n labelUseGiftback: \"Regra de utilização: Valor mínimo de compra de {{minimumPurchase}} reais para usar 100% do Giftback, válido até {{expírationDate}}\",\n backCart: \"Retorne ao carrinho e verifique se há descontos disponíveis nessa compra\"\n },\n },\n },\n});\n\nexport default i18next;\n"]}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/i18n/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,CAAC,IAAI,CAAC;IACX,GAAG,EAAE,IAAI,EAAE,gBAAgB;IAC3B,WAAW,EAAE,IAAI,EAAE,qBAAqB;IACxC,aAAa,EAAE;QACb,WAAW,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACT,EAAE,EAAE;YACF,WAAW,EAAE;gBACX,OAAO,EAAE,SAAS;gBAClB,WAAW,EAAE,oBAAoB;gBACjC,aAAa,EAAE,mDAAmD;aACnE;SACF;QACD,EAAE,EAAE;YACF,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,mBAAmB;gBAChC,aAAa,EAAE,wDAAwD;gBACvE,eAAe,EAAE,gEAAgE;gBACjF,UAAU,EAAE,sDAAsD;gBAClE,OAAO,EAAE,sDAAsD;gBAC/D,cAAc,EAAE,uCAAuC;gBACvD,SAAS,EAAE,8BAA8B;gBACzC,kBAAkB,EAAE,gEAAgE;gBACpF,gBAAgB,EAAE,oIAAoI;gBACtJ,QAAQ,EAAE,0EAA0E;aACrF;SACF;KACF;CACF,CAAC,CAAC;AAEH,eAAe,OAAO,CAAC","sourcesContent":["import i18next from 'i18next';\n\ni18next.init({\n lng: 'pt', // Idioma padrão\n fallbackLng: 'en', // Idioma de fallback\n interpolation: {\n escapeValue: false\n },\n resources: {\n en: {\n translation: {\n welcome: \"Welcome\",\n description: \"This is an example\",\n 'pin-sutitle': \"Enter the 4-digit code sent via SMS to the number\"\n },\n },\n pt: {\n translation: {\n edit: \"Editar\",\n welcome: \"Bem-vindo\",\n description: \"Este é um exemplo\",\n 'pin-sutitle': \"Digite o código de 4 dígitos enviado por SMS ao número\",\n giftDescription: \"Você tem até <strong>R$ {{amount}}</strong> de {{custom_name}}\",\n noGiftback: \"O seu bônus não se aplica aos produtos selecionados.\",\n noBonus: \"Não há {{giftbackname}} disponível para essa compra.\",\n withApplyBonus: \"{{giftbackname}} aplicado ao pedido: \",\n maxAmount: \"Você atingiu o valor máximo!\",\n labelamountPartial: \"Ao utilizar um valor parcial, você perderá a quantia restante.\",\n labelUseGiftback: \"Regra de utilização: Valor mínimo de compra de {{minimumPurchase}} reais para usar 100% do Giftback, válido até {{expírationDate}}\",\n backCart: \"Retorne ao carrinho e verifique se há descontos disponíveis nessa compra\"\n },\n },\n },\n});\n\nexport default i18next;\n"]}
@@ -16,7 +16,7 @@ const AppModal$1 = /*@__PURE__*/ proxyCustomElement(class AppModal extends H {
16
16
  this.modalClosed.emit();
17
17
  }
18
18
  render() {
19
- return (h("div", { key: '3f44609d2835224eea0668475f6851eab807cfce', class: `modal-backdrop ${this.isOpen ? 'visible' : ''}` }, h("div", { key: 'c7998d2ab6ce04ce722a52712267b0493495cb29', class: "modal" }, h("div", { key: 'dcc7438d690866d20972f04c6c9ad39f4f2e84da', class: "modal-header" }, h("h3", { key: '0257c585eeec3daf72b7b371b557ae699891dba9' }, this.modalTitle), h("button", { key: 'e0b4f89907a4da774c021bcc3797f5b2fb1f0c0e', class: "close-button", onClick: () => this.closeModal() }, "\u00D7")), h("div", { key: 'e9efd84c1fd89da8b9df15970b71beae66ea6fb8', class: "modal-body" }, h("slot", { key: '6e3371866a4a2adf86a04e30e7a1ed843e7492fb' })))));
19
+ return (h("div", { key: 'c7e578637bb1a96ccc8e305281e2608c75c9f959', class: `modal-backdrop ${this.isOpen ? 'visible' : ''}` }, h("div", { key: '85c02a2e3af93968cf8a7866f6443405f2b379c3', class: "modal" }, h("div", { key: '955224cdd340b8e039e0a3e08867e7614d8a1760', class: "modal-header" }, h("h3", { key: '2021357a5db7ae60f54fd60dd8e20bedae438844' }, this.modalTitle), h("button", { key: 'e7109497945b0beb6796bb6c0defdf7c69fc224d', class: "close-button", onClick: () => this.closeModal() }, "\u00D7")), h("div", { key: '02ca0913b2edf22ae7aabfe2049ff9fc921e6759', class: "modal-body" }, h("slot", { key: 'd288e69b32da330c6fd7687527eaa41093e4e700' })))));
20
20
  }
21
21
  static get style() { return AppModalStyle0; }
22
22
  }, [1, "app-modal", {
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface CountdownTimerV2 extends Components.CountdownTimerV2, HTMLElement {}
4
+ export const CountdownTimerV2: {
5
+ prototype: CountdownTimerV2;
6
+ new (): CountdownTimerV2;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -6,7 +6,7 @@ const CountdownTimer = /*@__PURE__*/ proxyCustomElement(class CountdownTimer ext
6
6
  this.__registerHost();
7
7
  this.__attachShadow();
8
8
  this.downtime = undefined;
9
- this.initialValue = 0;
9
+ this.reload = false;
10
10
  this.dates = {
11
11
  expiration: new Date(),
12
12
  createdAt: new Date()
@@ -20,7 +20,7 @@ const CountdownTimer = /*@__PURE__*/ proxyCustomElement(class CountdownTimer ext
20
20
  }
21
21
  buildTime() {
22
22
  const initial = localStorage.getItem("bc:time");
23
- if (initial) {
23
+ if (initial && !this.reload) {
24
24
  return Number(initial);
25
25
  }
26
26
  const dataFinal = new Date(this.dates.expiration);
@@ -47,6 +47,7 @@ const CountdownTimer = /*@__PURE__*/ proxyCustomElement(class CountdownTimer ext
47
47
  clearInterval(intervalo);
48
48
  textContent = "00:00";
49
49
  localStorage.removeItem("bc:time");
50
+ this.downtime();
50
51
  return;
51
52
  }
52
53
  segundosRestantes--;
@@ -65,30 +66,33 @@ const CountdownTimer = /*@__PURE__*/ proxyCustomElement(class CountdownTimer ext
65
66
  return `${parseInt(minutes.toString())}m ${seconds}s`;
66
67
  }
67
68
  render() {
68
- return (h("label", { key: '8fd06b21879dd42305970d6b29f1ed6bc93e5d69' }, this.minutes));
69
+ return (h("label", { key: '8b5a53ebe28cf67809136e2d71d993e26cdff364' }, " ", this.minutes));
69
70
  }
70
- }, [1, "countdown-timer", {
71
+ }, [1, "countdown-timer-v2", {
71
72
  "downtime": [16],
72
- "initialValue": [2, "initial-value"],
73
+ "reload": [4],
73
74
  "dates": [16],
74
75
  "seconds": [32],
75
76
  "minutes": [32]
76
77
  }]);
77
- function defineCustomElement() {
78
+ function defineCustomElement$1() {
78
79
  if (typeof customElements === "undefined") {
79
80
  return;
80
81
  }
81
- const components = ["countdown-timer"];
82
+ const components = ["countdown-timer-v2"];
82
83
  components.forEach(tagName => { switch (tagName) {
83
- case "countdown-timer":
84
+ case "countdown-timer-v2":
84
85
  if (!customElements.get(tagName)) {
85
86
  customElements.define(tagName, CountdownTimer);
86
87
  }
87
88
  break;
88
89
  } });
89
90
  }
90
- defineCustomElement();
91
+ defineCustomElement$1();
91
92
 
92
- export { CountdownTimer as C, defineCustomElement as d };
93
+ const CountdownTimerV2 = CountdownTimer;
94
+ const defineCustomElement = defineCustomElement$1;
93
95
 
94
- //# sourceMappingURL=p-30d12b1b.js.map
96
+ export { CountdownTimerV2, defineCustomElement };
97
+
98
+ //# sourceMappingURL=countdown-timer-v2.js.map
@@ -0,0 +1 @@
1
+ {"file":"countdown-timer-v2.js","mappings":";;MAMa,cAAc;;;;;;sBAGG,KAAK;qBAEf;YACZ,UAAU,EAAE,IAAI,IAAI,EAAE;YACtB,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB;uBAG0B,CAAC;;;IAK5B,iBAAiB;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;KAC9B;IAEO,SAAS;QAEb,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEhD,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;SAC1B;QAED,MAAM,SAAS,GAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,KAAK,GAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAE1D,IAAI,WAAW,IAAI,CAAC,EAAE;YAClB,OAAO,WAAW,CAAC;SACtB;QAED,MAAM,iBAAiB,GAAG,WAAW,GAAG,IAAI,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;QAEpD,MAAM,CAAC,GAAG,OAAO,IAAI,EAAE,GAAG,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;QACjD,MAAM,CAAC,GAAG,QAAQ,IAAI,EAAE,GAAG,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;QAEpD,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAE3B,OAAO,iBAAiB,CAAC;KAE5B;IAED,eAAe,CAAC,MAAM;QAClB,IAAI,iBAAiB,GAAG,MAAM,CAAC;QAC/B,MAAM,SAAS,GAAG,WAAW,CAAC;YAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;YAC3D,MAAM,gBAAgB,GAAG,CAAC,iBAAiB,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC;YAE5D,IAAI,WAAW,GACX,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YAE/F,IAAI,iBAAiB,GAAG,CAAC,EAAE;gBACvB,aAAa,CAAC,SAAS,CAAC,CAAC;gBACzB,WAAW,GAAG,OAAO,CAAC;gBACtB,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ,EAAE,CAAA;gBACf,OAAO;aACV;YAED,iBAAiB,EAAE,CAAC;YAEpB,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAA;SAC7B,EAAE,IAAI,CAAC,CAAC;KACZ;IAED,oBAAoB;QAChB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAClC;IAED,OAAO;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAElC,IAAI,OAAO,GAAG,CAAC;YAAE,OAAO,GAAG,OAAO,GAAG,CAAA;QAErC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,OAAO,GAAG,CAAA;KACxD;IAED,MAAM;QACF,QACI,qEAAS,IAAI,CAAC,OAAO,CAAS,EAChC;KACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/countdown-timer/countdown-timer.v2.tsx"],"sourcesContent":["import { Component, h, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'countdown-timer-v2',\n shadow: true,\n})\nexport class CountdownTimer {\n\n @Prop() downtime: () => void;\n @Prop() reload: boolean = false;\n\n @Prop() dates = {\n expiration: new Date(),\n createdAt: new Date()\n };\n\n\n @State() seconds: number = 0;\n @State() minutes: string;\n\n private intervalId: NodeJS.Timer;\n\n componentWillLoad() {\n const time = this.buildTime();\n this.iniciarContador(time);\n }\n\n private buildTime(): number {\n\n const initial = localStorage.getItem(\"bc:time\");\n\n if (initial && !this.reload) {\n return Number(initial);\n }\n\n const dataFinal: Date = new Date(this.dates.expiration);\n const agora: Date = new Date(this.dates.createdAt);\n\n const diferencaMs = dataFinal.getTime() - agora.getTime();\n\n if (diferencaMs <= 0) {\n return diferencaMs;\n }\n\n const diferencaSegundos = diferencaMs / 1000; // Converter milissegundos para segundos\n const minutos = Math.floor(diferencaSegundos / 60); // Calcular minutos\n const segundos = Math.floor(diferencaSegundos % 60); // Calcular segundos restantes\n\n const m = minutos >= 10 ? minutos : `0${minutos}`\n const s = segundos >= 10 ? segundos : `0${segundos}`\n\n this.minutes = `${m}:${s}`;\n\n return diferencaSegundos;\n\n }\n\n iniciarContador(params) {\n let segundosRestantes = params;\n const intervalo = setInterval(() => {\n const minutosExibidos = Math.floor(segundosRestantes / 60);\n const segundosExibidos = (segundosRestantes % 60).toFixed();\n\n let textContent =\n `${String(minutosExibidos).padStart(2, '0')}:${String(segundosExibidos).padStart(2, '0')}`;\n\n if (segundosRestantes < 0) {\n clearInterval(intervalo);\n textContent = \"00:00\";\n localStorage.removeItem(\"bc:time\");\n this.downtime()\n return;\n }\n\n segundosRestantes--;\n\n localStorage.setItem(\"bc:time\", segundosRestantes);\n this.minutes = textContent\n }, 1000);\n }\n\n disconnectedCallback() {\n clearInterval(this.intervalId);\n }\n\n padLeft() {\n const minutes = this.seconds / 60;\n const seconds = this.seconds % 60;\n\n if (minutes < 1) return `${seconds}s`\n\n return `${parseInt(minutes.toString())}m ${seconds}s`\n }\n\n render() {\n return (\n <label> {this.minutes}</label>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { C as CountdownTimer$1, d as defineCustomElement$1 } from './p-30d12b1b.js';
1
+ import { C as CountdownTimer$1, d as defineCustomElement$1 } from './p-86b95c83.js';
2
2
 
3
3
  const CountdownTimer = CountdownTimer$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,11 +1,11 @@
1
1
  import { p as proxyCustomElement, H, h, d as Host } from './p-9d950d25.js';
2
- import { C as CrmBonusService } from './p-3eba0eba.js';
2
+ import { C as CrmBonusService } from './p-a428d5df.js';
3
3
  import { S as StepFormEnum } from './p-ecc51430.js';
4
4
  import { d as defineCustomElement$6 } from './p-3cd7a20f.js';
5
- import { d as defineCustomElement$5 } from './p-34803421.js';
6
- import { d as defineCustomElement$4 } from './p-220754a5.js';
7
- import { d as defineCustomElement$3 } from './p-82ea12ff.js';
8
- import { d as defineCustomElement$2 } from './p-83249636.js';
5
+ import { d as defineCustomElement$5 } from './p-dc1871cf.js';
6
+ import { d as defineCustomElement$4 } from './p-c4788672.js';
7
+ import { d as defineCustomElement$3 } from './p-e25a1b64.js';
8
+ import { d as defineCustomElement$2 } from './p-e81cd527.js';
9
9
 
10
10
  const crmBonusFormCss = ".form-container{width:100%;display:flex;justify-content:center;justify-content:space-around}.disabled{opacity:0.6;cursor:not-allowed}.message-error{color:#d11111;font-weight:bold;margin-left:16px}";
11
11
  const CrmBonusFormStyle0 = crmBonusFormCss;