crmbonus-component-wake 2.1.39-ngrok → 2.1.40-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 (192) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/app-modal.cjs.entry.js +1 -1
  3. package/dist/cjs/app-modal.cjs.entry.js.map +1 -1
  4. package/dist/cjs/{cart.helper-31ba8997.js → cart.helper-96d1b9db.js} +3 -3
  5. package/dist/cjs/{cart.helper-31ba8997.js.map → cart.helper-96d1b9db.js.map} +1 -1
  6. package/dist/cjs/container-empty.cjs.entry.js +1 -1
  7. package/dist/cjs/container-empty.cjs.entry.js.map +1 -1
  8. package/dist/cjs/countdown-timer-v2.cjs.entry.js +1 -1
  9. package/dist/cjs/countdown-timer-v2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/countdown-timer_11.cjs.entry.js +27 -33
  11. package/dist/cjs/countdown-timer_11.cjs.entry.js.map +1 -1
  12. package/dist/cjs/crm-bonus-note.cjs.entry.js +5 -5
  13. package/dist/cjs/crm-bonus-note.cjs.entry.js.map +1 -1
  14. package/dist/cjs/info.config.helper-d4b1291b.js.map +1 -1
  15. package/dist/cjs/pedido-finalizado.cjs.entry.js +2 -2
  16. package/dist/cjs/pedido-finalizado.cjs.entry.js.map +1 -1
  17. package/dist/cjs/utils-5d59acb1.js.map +1 -1
  18. package/dist/collection/assets/svg/money-dollars-svgrepo-com.svg +5 -5
  19. package/dist/collection/components/button/crm-button.css +21 -21
  20. package/dist/collection/components/button/index.js +1 -1
  21. package/dist/collection/components/button/index.js.map +1 -1
  22. package/dist/collection/components/countdown-timer/countdown-timer.js +1 -1
  23. package/dist/collection/components/countdown-timer/countdown-timer.js.map +1 -1
  24. package/dist/collection/components/countdown-timer/countdown-timer.v2.js +2 -2
  25. package/dist/collection/components/countdown-timer/countdown-timer.v2.js.map +1 -1
  26. package/dist/collection/components/crm-bonus/assets/logo.svg +17 -17
  27. package/dist/collection/components/crm-bonus/assets/svg/logo.svg +17 -17
  28. package/dist/collection/components/crm-bonus/crm-bonus.css +82 -82
  29. package/dist/collection/components/crm-bonus/crm-bonus.js +0 -1
  30. package/dist/collection/components/crm-bonus/crm-bonus.js.map +1 -1
  31. package/dist/collection/components/giftback-form/giftback-form.css +74 -74
  32. package/dist/collection/components/giftback-form/giftback-form.js +5 -5
  33. package/dist/collection/components/giftback-form/giftback-form.js.map +1 -1
  34. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.css +181 -181
  35. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js +6 -6
  36. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js.map +1 -1
  37. package/dist/collection/components/giftback-form/subcomponents/giftback-message/giftback-massage.js.map +1 -1
  38. package/dist/collection/components/giftback-form/subcomponents/phone-form/phone-form.js +1 -1
  39. package/dist/collection/components/giftback-form/subcomponents/phone-form/phone-form.js.map +1 -1
  40. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.css +83 -83
  41. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js +1 -1
  42. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js.map +1 -1
  43. package/dist/collection/components/loading-container/container-empty.js +1 -1
  44. package/dist/collection/components/loading-container/container-empty.js.map +1 -1
  45. package/dist/collection/components/loading-container/loading-container.css +53 -53
  46. package/dist/collection/components/loading-container/loading-container.js +1 -1
  47. package/dist/collection/components/loading-container/loading-container.js.map +1 -1
  48. package/dist/collection/components/loading-spinner/loading-spinner.css +16 -16
  49. package/dist/collection/components/loading-spinner/loading-spinner.js +1 -1
  50. package/dist/collection/components/loading-spinner/loading-spinner.js.map +1 -1
  51. package/dist/collection/components/modal/app-modal.css +44 -44
  52. package/dist/collection/components/modal/app-modal.js +1 -1
  53. package/dist/collection/components/modal/app-modal.js.map +1 -1
  54. package/dist/collection/components/note/crm-bonus-note.css +68 -68
  55. package/dist/collection/components/note/crm-bonus-note.js +2 -2
  56. package/dist/collection/components/note/crm-bonus-note.js.map +1 -1
  57. package/dist/collection/components/pedido/pedido.js +1 -1
  58. package/dist/collection/components/pedido/pedido.js.map +1 -1
  59. package/dist/collection/components/phone/phone-input-mask.css +40 -40
  60. package/dist/collection/components/phone/phone-input-mask.js +1 -1
  61. package/dist/collection/components/phone/phone-input-mask.js.map +1 -1
  62. package/dist/collection/components/tooltip/crm-tooltip.css +48 -48
  63. package/dist/collection/components/tooltip/tooltip.js +1 -1
  64. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  65. package/dist/collection/contants/index.js.map +1 -1
  66. package/dist/collection/contants/mocks.js.map +1 -1
  67. package/dist/collection/dto/pin.sent.js.map +1 -1
  68. package/dist/collection/dto/reserved-info.dto.js.map +1 -1
  69. package/dist/collection/dto/update.order.dto.js.map +1 -1
  70. package/dist/collection/dto/validate.pin.bonus.js.map +1 -1
  71. package/dist/collection/helpers/build.payload.helper.js +7 -12
  72. package/dist/collection/helpers/build.payload.helper.js.map +1 -1
  73. package/dist/collection/helpers/cart.helper.js.map +1 -1
  74. package/dist/collection/helpers/info.config.helper.js.map +1 -1
  75. package/dist/collection/helpers/payload.interface.js.map +1 -1
  76. package/dist/collection/helpers/time.helper.js.map +1 -1
  77. package/dist/collection/i18n/i18n.js.map +1 -1
  78. package/dist/collection/index.js.map +1 -1
  79. package/dist/collection/objectvalues/cart.wake.js.map +1 -1
  80. package/dist/collection/services/crmbonus.service.js.map +1 -1
  81. package/dist/collection/utils/keys.storage.js.map +1 -1
  82. package/dist/collection/utils/retry.utils.js.map +1 -1
  83. package/dist/collection/utils/utils.js.map +1 -1
  84. package/dist/components/app-modal.js +1 -1
  85. package/dist/components/app-modal.js.map +1 -1
  86. package/dist/components/container-empty.js +1 -1
  87. package/dist/components/container-empty.js.map +1 -1
  88. package/dist/components/countdown-timer-v2.js +1 -1
  89. package/dist/components/countdown-timer-v2.js.map +1 -1
  90. package/dist/components/countdown-timer.js +1 -1
  91. package/dist/components/crm-bonus-note.js +6 -6
  92. package/dist/components/crm-bonus-note.js.map +1 -1
  93. package/dist/components/crm-bonus.js +18 -24
  94. package/dist/components/crm-bonus.js.map +1 -1
  95. package/dist/components/crm-button.js +1 -1
  96. package/dist/components/crm-giftback-form.js +1 -1
  97. package/dist/components/crm-tooltip.js +1 -1
  98. package/dist/components/giftback-info.js +1 -1
  99. package/dist/components/loading-container.js +1 -1
  100. package/dist/components/loading-spinner.js +1 -1
  101. package/dist/components/p-1b441909.js.map +1 -1
  102. package/dist/components/{p-8274e2c4.js → p-208e1c91.js} +2 -2
  103. package/dist/components/p-208e1c91.js.map +1 -0
  104. package/dist/components/{p-11520f0f.js → p-52f945ff.js} +2 -2
  105. package/dist/components/p-52f945ff.js.map +1 -0
  106. package/dist/components/{p-c250687d.js → p-5c3df678.js} +3 -3
  107. package/dist/components/p-5c3df678.js.map +1 -0
  108. package/dist/components/{p-0a7ccd8c.js → p-ad1226cf.js} +5 -5
  109. package/dist/components/p-ad1226cf.js.map +1 -0
  110. package/dist/components/p-af3ba015.js.map +1 -1
  111. package/dist/components/p-c53241bf.js.map +1 -1
  112. package/dist/components/{p-3c8ae82e.js → p-cdf8a023.js} +9 -9
  113. package/dist/components/p-cdf8a023.js.map +1 -0
  114. package/dist/components/{p-2cece106.js → p-d1c68cfc.js} +2 -2
  115. package/dist/components/p-d1c68cfc.js.map +1 -0
  116. package/dist/components/{p-786485b2.js → p-de1ecb89.js} +2 -2
  117. package/dist/components/p-de1ecb89.js.map +1 -0
  118. package/dist/components/{p-0d09c221.js → p-e632b13e.js} +3 -3
  119. package/dist/components/{p-0d09c221.js.map → p-e632b13e.js.map} +1 -1
  120. package/dist/components/{p-9b5c07d8.js → p-e8494ec8.js} +3 -3
  121. package/dist/components/p-e8494ec8.js.map +1 -0
  122. package/dist/components/{p-e6863cf5.js → p-ea9ebc32.js} +5 -5
  123. package/dist/components/p-ea9ebc32.js.map +1 -0
  124. package/dist/components/p-ecc51430.js.map +1 -1
  125. package/dist/components/{p-144c34f6.js → p-f03f4355.js} +15 -15
  126. package/dist/components/p-f03f4355.js.map +1 -0
  127. package/dist/components/pedido-finalizado.js +2 -2
  128. package/dist/components/pedido-finalizado.js.map +1 -1
  129. package/dist/components/phone-form.js +1 -1
  130. package/dist/components/phone-input-mask.js +1 -1
  131. package/dist/components/pin-form.js +1 -1
  132. package/dist/crmbonus-component-wake/assets/logo.svg +17 -17
  133. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js +1 -1
  134. package/dist/crmbonus-component-wake/p-0022358e.entry.js +2 -0
  135. package/dist/crmbonus-component-wake/p-0022358e.entry.js.map +1 -0
  136. package/dist/crmbonus-component-wake/p-7200b5b6.entry.js +2 -0
  137. package/dist/crmbonus-component-wake/p-7200b5b6.entry.js.map +1 -0
  138. package/dist/crmbonus-component-wake/{p-ac027576.entry.js → p-8ea219da.entry.js} +2 -2
  139. package/dist/crmbonus-component-wake/p-8ea219da.entry.js.map +1 -0
  140. package/dist/crmbonus-component-wake/p-951beb29.entry.js +2 -0
  141. package/dist/crmbonus-component-wake/p-951beb29.entry.js.map +1 -0
  142. package/dist/crmbonus-component-wake/p-af3ba015.js.map +1 -1
  143. package/dist/crmbonus-component-wake/p-b4f52f79.js.map +1 -1
  144. package/dist/crmbonus-component-wake/p-bbe4fb1e.entry.js +2 -0
  145. package/dist/crmbonus-component-wake/p-bbe4fb1e.entry.js.map +1 -0
  146. package/dist/crmbonus-component-wake/{p-0d09c221.js → p-e632b13e.js} +2 -2
  147. package/dist/crmbonus-component-wake/{p-0d09c221.js.map → p-e632b13e.js.map} +1 -1
  148. package/dist/crmbonus-component-wake/p-f845f93c.entry.js +2 -0
  149. package/dist/crmbonus-component-wake/p-f845f93c.entry.js.map +1 -0
  150. package/dist/env.js +2 -2
  151. package/dist/env.js.map +1 -1
  152. package/dist/esm/app-modal.entry.js +1 -1
  153. package/dist/esm/app-modal.entry.js.map +1 -1
  154. package/dist/esm/{cart.helper-8c8d4a0a.js → cart.helper-4bf51ec4.js} +3 -3
  155. package/dist/esm/{cart.helper-8c8d4a0a.js.map → cart.helper-4bf51ec4.js.map} +1 -1
  156. package/dist/esm/container-empty.entry.js +1 -1
  157. package/dist/esm/container-empty.entry.js.map +1 -1
  158. package/dist/esm/countdown-timer-v2.entry.js +1 -1
  159. package/dist/esm/countdown-timer-v2.entry.js.map +1 -1
  160. package/dist/esm/countdown-timer_11.entry.js +27 -33
  161. package/dist/esm/countdown-timer_11.entry.js.map +1 -1
  162. package/dist/esm/crm-bonus-note.entry.js +5 -5
  163. package/dist/esm/crm-bonus-note.entry.js.map +1 -1
  164. package/dist/esm/info.config.helper-e4b8c478.js.map +1 -1
  165. package/dist/esm/pedido-finalizado.entry.js +2 -2
  166. package/dist/esm/pedido-finalizado.entry.js.map +1 -1
  167. package/dist/esm/utils-dec6df66.js.map +1 -1
  168. package/dist/types/home/darlison/Projects/Bycoders/crmbonus/crmbonus-component/.stencil/env.d.ts +2 -0
  169. package/package.json +58 -58
  170. package/readme.md +114 -114
  171. package/dist/components/p-0a7ccd8c.js.map +0 -1
  172. package/dist/components/p-11520f0f.js.map +0 -1
  173. package/dist/components/p-144c34f6.js.map +0 -1
  174. package/dist/components/p-2cece106.js.map +0 -1
  175. package/dist/components/p-3c8ae82e.js.map +0 -1
  176. package/dist/components/p-786485b2.js.map +0 -1
  177. package/dist/components/p-8274e2c4.js.map +0 -1
  178. package/dist/components/p-9b5c07d8.js.map +0 -1
  179. package/dist/components/p-c250687d.js.map +0 -1
  180. package/dist/components/p-e6863cf5.js.map +0 -1
  181. package/dist/crmbonus-component-wake/p-0b369ee2.entry.js +0 -2
  182. package/dist/crmbonus-component-wake/p-0b369ee2.entry.js.map +0 -1
  183. package/dist/crmbonus-component-wake/p-1644deef.entry.js +0 -2
  184. package/dist/crmbonus-component-wake/p-1644deef.entry.js.map +0 -1
  185. package/dist/crmbonus-component-wake/p-7e52727e.entry.js +0 -2
  186. package/dist/crmbonus-component-wake/p-7e52727e.entry.js.map +0 -1
  187. package/dist/crmbonus-component-wake/p-ac027576.entry.js.map +0 -1
  188. package/dist/crmbonus-component-wake/p-ac1e7c32.entry.js +0 -2
  189. package/dist/crmbonus-component-wake/p-ac1e7c32.entry.js.map +0 -1
  190. package/dist/crmbonus-component-wake/p-df80d1b0.entry.js +0 -2
  191. package/dist/crmbonus-component-wake/p-df80d1b0.entry.js.map +0 -1
  192. package/dist/types/Users/Darlison/Projects/Bycoders/crmbonus/crmbonus-component/.stencil/env.d.ts +0 -2
@@ -100,14 +100,14 @@ export class GiftbackInfo {
100
100
  const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;
101
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" });
102
102
  const limit = defineLimit(remainingGiftback);
103
- return (h("div", { key: 'baf90a1de29b3275c1c3cfd31f9d004ca3187a84', class: "giftback-container" }, h("div", { key: '57af5fe5b40b3292a275065f577a9444470f8bf0', class: "container-description" }, h("p", { key: 'fff28c85077c36854f37d5f23f2908fa47197dac', innerHTML: translateDescription }), h("crm-tooltip", { key: 'b66b1914dfa5e0806f85a9695840fdd4bd52d21e', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: 'e13afe9428744084443697df22048ac05b41ffd0', class: "slider-wrapper" }, h("div", { key: '1826a50e4e1b474322dbb0020db0154fe9ed5b80', class: "slider-value", style: {
103
+ return (h("div", { key: 'b0bad3ffe129067775bc8e003bce792b5df73a35', class: "giftback-container" }, h("div", { key: '50a523afc91d4832d8f63f3b42bc143a906da8b4', class: "container-description" }, h("p", { key: 'd65a1031581f4edd6c7f3e7771439086bdb8ec63', innerHTML: translateDescription }), h("crm-tooltip", { key: 'd7a84e830631c983c6b143fa983213db39e72809', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: 'b23127fe5b2fd1d007ec2eb64e901df32dec2f6d', class: "slider-wrapper" }, h("div", { key: 'cf98c2a9dfcf8ce324cebff2c296989d80eb96c3', class: "slider-value", style: {
104
104
  left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto
105
- } }, "R$ ", this.usedValue.toFixed(2).replace(".", ",")), h("input", { key: '73b42919b8e4e0223dc8490a6190697d1975e96d', 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: 'f3a555f9641d0362319d79aa66ac4229495482b3', 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: {
106
106
  background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,
107
- } })), limit.isComplete && (h("p", { key: 'b9b853490c112bf3e98d14c2ceee25d0b7604983' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: '50b23f6c4bde42ca12b077a33f0ffbde25601e3d', class: "container-description" }, h("p", { key: '73bfbcc779b8775aecc63050816909ba9120af3e' }, "Adicione ", h("strong", { key: '6d5a2ea943a1d3eee80b0f4d0cdda159a300bb25' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo!"), h("crm-tooltip", { key: '5a5bbbeb32abd51fbfb84c63d3e7a06f8d459ea0', identity: "crm-max-description", text: i18next.t("labelamountPartial") }))), h("div", { key: 'ea3f6aa8f4668b759b912bac36d9780e183a6180', class: "options" }, h("div", { key: '6f7f70930c8cd97f1215301d823f8631d071b472', class: "options-option" }, h("input", { key: '35b4f8380f34becd4dc94c1bcb1572c2b3401db8', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: '228beeb474e10a67811925bee00e5c1d0f5d64b6' }, "Usar o meu ", (_c = this.config) === null || _c === void 0 ? void 0 :
108
- _c.giftbackTitle)), h("div", { key: '2a9ad1052f869057d5e36c3eba0cf1a24af88e1b', class: "options-option" }, h("input", { key: '3cc3fae293fda510873f9c5f4d906308affca8e1', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: '364f7de414a6f536680f849fe3efdee803d9a596' }, "N\u00E3o usar o meu ", (_d = this.config) === null || _d === void 0 ? void 0 :
107
+ } })), limit.isComplete && (h("p", { key: '29121ab93d4cb435b9c2d599dff16a8cbac6ccbc' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: '7821e699c9b8b6ca6d62bea4ea7793d0beaff5ba', class: "container-description" }, h("p", { key: 'e384b3cec08d9ae160f03a3623029e7c4dd410a0' }, "Adicione ", h("strong", { key: '8c0876f3c1c3881d96cee5328c98143e5ead154f' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo!"), h("crm-tooltip", { key: '269c710ccb49afe750190ba2f63b6528b384c095', identity: "crm-max-description", text: i18next.t("labelamountPartial") }))), h("div", { key: '28243802a10069d56219c7613bb9c4d14e97248b', class: "options" }, h("div", { key: '861c3f4f7aa9b85650c6a7129350759356d6951b', class: "options-option" }, h("input", { key: '78775b169a6e108256c0fe71b153e8118f928bdd', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: 'd6945b714fd21676feecceaaacca5b60f8827e4f' }, "Usar o meu ", (_c = this.config) === null || _c === void 0 ? void 0 :
108
+ _c.giftbackTitle)), h("div", { key: 'a9e146b79685a77b834214f22dca02636b5c6f62', class: "options-option" }, h("input", { key: '51a3d206cb3bc204585ecc8cecfd6eed7c474d5f', disabled: this.showTime(), type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: '5a2e0f8cd8e4e1ebd3d83be101e979eaedd85615' }, "N\u00E3o usar o meu ", (_d = this.config) === null || _d === void 0 ? void 0 :
109
109
  _d.giftbackTitle))), this.showTime() &&
110
- (h("div", { key: '8fe525904208e2fc13ebd80615bbe7856cc2dc2c', class: "info-box" }, "Ap\u00F3s ", h("countdown-timer", { key: '3913bc9060980620654f03a987f62f628d6ee440', 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: 'aecd80b9920c8b483d38a1c24a6b38ce03d52b64', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa."))));
110
+ (h("div", { key: 'edd0d02becfc9cfb78a5651fdba03d6163dc184f', class: "info-box" }, "Ap\u00F3s ", h("countdown-timer", { key: 'dc7431190118c4bec059c7a5b7ede20bee7a6969', 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: '91fbdd9d96526b34f2993a8190d7b02c2d61c2a3', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa."))));
111
111
  }
112
112
  static get is() { return "giftback-info"; }
113
113
  static get originalStyleUrls() {
@@ -181,7 +181,7 @@ export class GiftbackInfo {
181
181
  "tags": [],
182
182
  "text": ""
183
183
  },
184
- "defaultValue": "{\r\n totalBonus: 0,\r\n cartId: \"\",\r\n minimumPurchase: 0,\r\n bonusBalance: 0,\r\n calculatedValue: 0,\r\n firstValidityDate: \"\",\r\n totalValue: 0\r\n }"
184
+ "defaultValue": "{\n totalBonus: 0,\n cartId: \"\",\n minimumPurchase: 0,\n bonusBalance: 0,\n calculatedValue: 0,\n firstValidityDate: \"\",\n totalValue: 0\n }"
185
185
  },
186
186
  "reserve": {
187
187
  "type": "unknown",
@@ -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\";\r\nimport { IBonus } from \"../../../../dto/validate.pin.bonus\";\r\n\r\nimport i18next from '../../../../i18n/i18n'\r\nimport { USED_KEY } from \"../../../../utils/keys.storage\";\r\nimport { defineLimit, formatDateToBr } from \"../../../../utils/utils\";\r\nimport { IInfoStore } from \"../../../../helpers/info.config.helper\";\r\nimport { ReservedInfoDTO } from \"../../../../dto/reserved-info.dto\";\r\nimport { persisteMetadata } from \"../../../../helpers/cart.helper\";\r\n\r\n@Component({\r\n tag: 'giftback-info',\r\n styleUrls: ['giftback-info.css']\r\n})\r\nexport class GiftbackInfo {\r\n\r\n private _refIinputRange: HTMLInputElement;\r\n\r\n @State() usedValue: number = 0;\r\n @State() selectedOption: string = 'none';\r\n\r\n @Prop() cartId;\r\n @Prop() loading: boolean = false;\r\n @Prop() bonus: Partial<IBonus> = {\r\n totalBonus: 0,\r\n cartId: \"\",\r\n minimumPurchase: 0,\r\n bonusBalance: 0,\r\n calculatedValue: 0,\r\n firstValidityDate: \"\",\r\n totalValue: 0\r\n };\r\n @Prop() reserve: (amountRedeemed: number) => void;\r\n @Prop() cancel: () => void;\r\n @Prop() config: IInfoStore;\r\n @Prop() infoBonus: ReservedInfoDTO;\r\n @Prop() storeName: string\r\n\r\n @State() sliderPosition: number = 0;\r\n @State() sliderValuePosition: number = 0;\r\n\r\n @State() loadingTime = false;\r\n\r\n @Watch(\"bonus\")\r\n changedBonus() {\r\n this.updateBonus()\r\n }\r\n\r\n private updateBonus() {\r\n this.usedValue = this.bonus.bonusBalance;\r\n this.buildPositionSlider(0, this.bonus.totalBonus);\r\n }\r\n\r\n componentWillLoad() {\r\n this.updateBonus();\r\n this.selectedOption = localStorage.getItem(USED_KEY);\r\n }\r\n\r\n handleSliderChange(event: Event) {\r\n const input = event.target as HTMLInputElement;\r\n this.usedValue = parseFloat(input.value);\r\n\r\n // Calculando a posição do texto com base no valor do slider\r\n // const percentage = ((this.usedValue - parseInt(input.min)) / (parseInt(input.max) - parseInt(input.min))) * 100;\r\n // this.sliderPosition = percentage;\r\n\r\n this.buildPositionSlider(parseFloat(input.min), parseFloat(input.max))\r\n }\r\n\r\n componentDidLoad() {\r\n if (this.bonus) {\r\n this._refIinputRange.value = this.bonus?.bonusBalance.toString();\r\n }\r\n }\r\n\r\n private buildPositionSlider(min: number, max: number) {\r\n\r\n const percentage_init = max * 0.1;\r\n\r\n // Calculando a posição do texto com base no valor do slider\r\n const percentage = ((this.usedValue - min) / (max - min)) * 100;\r\n\r\n this.sliderPosition = percentage;\r\n this.sliderValuePosition = percentage + (this.usedValue <= percentage_init ? 10 : 0);\r\n }\r\n\r\n async handleOptionChange(option: string) {\r\n this.selectedOption = option;\r\n\r\n localStorage.setItem(USED_KEY, option);\r\n\r\n await persisteMetadata(this.storeName, this.cartId, { ...this.infoBonus.metadata, createdAt: null })\r\n\r\n switch (this.selectedOption) {\r\n case 'use':\r\n await this.reserve(this.usedValue);\r\n break;\r\n case 'dontUse':\r\n await this.cancel();\r\n break;\r\n default:\r\n }\r\n }\r\n\r\n showTime() {\r\n if (!this.infoBonus) return false;\r\n\r\n return !this.infoBonus.isExpired();\r\n\r\n // return this.infoBonus.isBonusProcessed\r\n }\r\n\r\n getTime() {\r\n\r\n const createdAt = new Date(this.infoBonus?.metadata?.createdAt);\r\n const expiration = new Date(createdAt);\r\n expiration.setMinutes(expiration.getMinutes() + 6);\r\n\r\n return {\r\n createdAt,\r\n expiration\r\n }\r\n }\r\n\r\n async downtime() {\r\n await persisteMetadata(this.storeName, this.bonus.cartId, {\r\n createdAt: null,\r\n })\r\n }\r\n\r\n render() {\r\n console.log('this.bonus', this.bonus)\r\n const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;\r\n\r\n const translateDescription = i18next.t(\"giftDescription\", { amount: `${this.bonus?.totalBonus?.toFixed(2).replace(\".\", \",\")}`, custom_name: \"Giftback\" })\r\n\r\n const limit = defineLimit(remainingGiftback);\r\n\r\n return (\r\n\r\n <div class=\"giftback-container\">\r\n <div class=\"container-description\">\r\n <p innerHTML={translateDescription}></p>\r\n <crm-tooltip identity=\"crm-role-description\" text={i18next.t(\"labelUseGiftback\", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) })} />\r\n </div>\r\n <div class=\"slider-wrapper\">\r\n <div\r\n class=\"slider-value\"\r\n style={{\r\n left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto\r\n\r\n }}\r\n >\r\n R$ {this.usedValue.toFixed(2).replace(\".\", \",\")}\r\n </div>\r\n <input\r\n ref={ref => this._refIinputRange = ref}\r\n id=\"position_value_id\"\r\n disabled\r\n type=\"range\"\r\n min=\"0\"\r\n max={this.bonus.totalBonus}\r\n value={this.usedValue}\r\n class=\"slider\"\r\n step=\"0.01\"\r\n onInput={(event) => this.handleSliderChange(event)}\r\n style={{\r\n background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,\r\n }}\r\n />\r\n </div>\r\n\r\n {\r\n limit.isComplete && (\r\n <p>\r\n {i18next.t(\"maxAmount\")}\r\n </p>\r\n )\r\n }\r\n\r\n {\r\n !limit.isComplete && (\r\n <div class=\"container-description\">\r\n <p>\r\n Adicione <strong>R$ {remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\")}</strong> ao carrinho para atingir o valor\r\n máximo!\r\n </p>\r\n <crm-tooltip identity=\"crm-max-description\" text={i18next.t(\"labelamountPartial\")} />\r\n </div>\r\n )\r\n }\r\n\r\n\r\n <div class=\"options\">\r\n <div class=\"options-option\">\r\n <input\r\n disabled={this.showTime()}\r\n type=\"radio\"\r\n name=\"giftbackOption\"\r\n value=\"use\"\r\n checked={this.selectedOption === 'use'}\r\n onChange={() => this.handleOptionChange('use')}\r\n />\r\n <p>Usar o meu {this.config?.giftbackTitle}</p>\r\n </div>\r\n <div class=\"options-option\">\r\n <input\r\n disabled={this.showTime()}\r\n type=\"radio\"\r\n name=\"giftbackOption\"\r\n value=\"dontUse\"\r\n checked={this.selectedOption === 'dontUse'}\r\n onChange={() => this.handleOptionChange('dontUse')}\r\n />\r\n <p>Não usar o meu {this.config?.giftbackTitle}</p>\r\n </div>\r\n </div>\r\n\r\n {\r\n this.showTime() &&\r\n (\r\n <div class=\"info-box\">\r\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.\r\n </div>\r\n )\r\n }\r\n\r\n {\r\n !this?.infoBonus?.isBonusProcessed && (\r\n <div class=\"info-box\">\r\n O Giftback será aplicado na próxima etapa.\r\n </div>\r\n )\r\n }\r\n\r\n </div>\r\n );\r\n }\r\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}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"giftback-massage.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-message/giftback-massage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AAElD,SAAS,CAAC;IACN,GAAG,EAAE,kBAAkB;IACvB,SAAS,EAAE,CAAC,sBAAsB,CAAC;CACtC,CAAC,CAAA;AACF,MAAM,OAAO,eAAe;IACxB,MAAM;QACF,OAAO,CACH,EAAC,IAAI,IAAC,KAAK,EAAC,mBAAmB;YAC3B,qFAA8D,CAC3D,CACV,CAAA;IACL,CAAC;CACJ","sourcesContent":["import { Component, Host, h } from \"@stencil/core\"\r\n\r\nComponent({\r\n tag: 'giftback-message',\r\n styleUrls: ['giftback-message.css']\r\n})\r\nexport class GiftbackMessage {\r\n render() {\r\n return (\r\n <Host class=\"container-message\">\r\n <h1>Você não possui Giftback disponível para essa compra.</h1>\r\n </Host>\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"file":"giftback-massage.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-message/giftback-massage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AAElD,SAAS,CAAC;IACN,GAAG,EAAE,kBAAkB;IACvB,SAAS,EAAE,CAAC,sBAAsB,CAAC;CACtC,CAAC,CAAA;AACF,MAAM,OAAO,eAAe;IACxB,MAAM;QACF,OAAO,CACH,EAAC,IAAI,IAAC,KAAK,EAAC,mBAAmB;YAC3B,qFAA8D,CAC3D,CACV,CAAA;IACL,CAAC;CACJ","sourcesContent":["import { Component, Host, h } from \"@stencil/core\"\n\nComponent({\n tag: 'giftback-message',\n styleUrls: ['giftback-message.css']\n})\nexport class GiftbackMessage {\n render() {\n return (\n <Host class=\"container-message\">\n <h1>Você não possui Giftback disponível para essa compra.</h1>\n </Host>\n )\n }\n}"]}
@@ -12,7 +12,7 @@ export class PhoneForm {
12
12
  }
13
13
  render() {
14
14
  var _a;
15
- return (h(Host, { key: 'b27f64d8464d4c6b259d2d5f0113f55a6f809afb', class: "crm-phone-form" }, h("p", { key: '6f279841f43cd7f70f7a1b5340288b9c2d11c551', class: "crm-subtitle" }, "Digite o seu celular para verificar se h\u00E1 desconto dispon\u00EDvel nessa compra:"), h("phone-input-mask", { key: '7e86f63998a4f35d134b8f4e867a5e5c0b9df20a', initialValue: this.value, ref: ref => this.phoneInputMask = ref }), h("crm-button", { key: '462b7cc91f166c8fc588a5c922ba943a6715dca5', 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: '5d6b2714caf878d9971982337a164e50e890888a', class: "crm-phone-form" }, h("p", { key: '74f319cbf7c764b5b514407793700d6a240eb478', class: "crm-subtitle" }, "Digite o seu celular para verificar se h\u00E1 desconto dispon\u00EDvel nessa compra:"), h("phone-input-mask", { key: '168ee6a82a4597295dc27d037fd4059fe4435cf8', initialValue: this.value, ref: ref => this.phoneInputMask = ref }), h("crm-button", { key: '174990425c63239c7178edbccc942db3e6116004', 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() {
@@ -1 +1 @@
1
- {"version":3,"file":"phone-form.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/phone-form/phone-form.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQzD,MAAM,OAAO,SAAS;;;;;;;IAWlB,KAAK,CAAC,WAAW;QAEb,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;QAElD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAGD,MAAM;;QACF,OAAO,CACH,EAAC,IAAI,qDAAC,KAAK,EAAC,gBAAgB;YACxB,0DAAG,KAAK,EAAC,cAAc,4FAAiF;YACxG,yEAAkB,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,GAAG,GAAI;YAErF,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,GAAK,CAChI,CACV,CAAA;IACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, Host, Prop, h } from \"@stencil/core\";\r\nimport { IInfoStore } from \"../../../../helpers/info.config.helper\";\r\n\r\n@Component({\r\n tag: 'phone-form',\r\n styleUrl: '../../giftback-form.css',\r\n shadow: false\r\n})\r\nexport class PhoneForm {\r\n\r\n private phoneInputMask: HTMLPhoneInputMaskElement;\r\n\r\n @Prop() value: string;\r\n @Prop() loading: boolean;\r\n @Prop() handlerSubmit: (phone: string) => void;\r\n\r\n @Prop() config: IInfoStore;\r\n\r\n\r\n async handlePhone() {\r\n\r\n const phone = await this.phoneInputMask.getPhone()\r\n\r\n await this.handlerSubmit(phone);\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n <Host class=\"crm-phone-form\">\r\n <p class=\"crm-subtitle\" >Digite o seu celular para verificar se há desconto disponível nessa compra:</p>\r\n <phone-input-mask initialValue={this.value} ref={ref => this.phoneInputMask = ref} />\r\n\r\n <crm-button txtBtn={this.config?.btnApplyBonusLabel || \"Avançar\"} loading={this.loading} handleClick={() => this.handlePhone() } />\r\n </Host>\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"file":"phone-form.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/phone-form/phone-form.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQzD,MAAM,OAAO,SAAS;;;;;;;IAWlB,KAAK,CAAC,WAAW;QAEb,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;QAElD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAGD,MAAM;;QACF,OAAO,CACH,EAAC,IAAI,qDAAC,KAAK,EAAC,gBAAgB;YACxB,0DAAG,KAAK,EAAC,cAAc,4FAAiF;YACxG,yEAAkB,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,GAAG,GAAI;YAErF,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,GAAK,CAChI,CACV,CAAA;IACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, Host, Prop, h } from \"@stencil/core\";\nimport { IInfoStore } from \"../../../../helpers/info.config.helper\";\n\n@Component({\n tag: 'phone-form',\n styleUrl: '../../giftback-form.css',\n shadow: false\n})\nexport class PhoneForm {\n\n private phoneInputMask: HTMLPhoneInputMaskElement;\n\n @Prop() value: string;\n @Prop() loading: boolean;\n @Prop() handlerSubmit: (phone: string) => void;\n\n @Prop() config: IInfoStore;\n\n\n async handlePhone() {\n\n const phone = await this.phoneInputMask.getPhone()\n\n await this.handlerSubmit(phone);\n }\n\n\n render() {\n return (\n <Host class=\"crm-phone-form\">\n <p class=\"crm-subtitle\" >Digite o seu celular para verificar se há desconto disponível nessa compra:</p>\n <phone-input-mask initialValue={this.value} ref={ref => this.phoneInputMask = ref} />\n\n <crm-button txtBtn={this.config?.btnApplyBonusLabel || \"Avançar\"} loading={this.loading} handleClick={() => this.handlePhone() } />\n </Host>\n )\n }\n}"]}
@@ -1,84 +1,84 @@
1
- :host {
2
- display: block;
3
- }
4
-
5
- .form-container-pin {
6
- display: flex;
7
- flex-direction: column;
8
- align-items: center;
9
- }
10
-
11
- .pin-container {
12
- display: flex;
13
- /* margin: 26px 0; */
14
- justify-content: start;
15
- gap: 10px;
16
- }
17
-
18
- .pin-container input {
19
- width: 100%;
20
- height: 48px;
21
- /* font-size: 14px; */
22
- text-align: center;
23
- border: 1px solid #ccc;
24
- border-radius: 5px;
25
- }
26
-
27
- button {
28
- padding: 10px 20px;
29
- background-color: #ddd;
30
- border: none;
31
- border-radius: 5px;
32
- cursor: pointer;
33
- }
34
-
35
-
36
- .success {
37
- color: green;
38
- margin-top: 10px;
39
- }
40
-
41
- .button {
42
- top: 50%;
43
- background-color: #6c6c7e;
44
- color: #fff;
45
- border: none;
46
- border-radius: 10px;
47
- padding: 15px;
48
- min-height: 30px;
49
- min-width: 120px;
50
- /* font-size: 20px; */
51
- cursor: pointer;
52
- }
53
-
54
- .button-cancel {
55
- top: 50%;
56
- background-color: #ffffff;
57
- color: #1e1c1c;
58
- border: 1px solid gray;
59
- border-radius: 10px;
60
- padding: 10px;
61
- min-height: 30px;
62
- min-width: 120px;
63
- /* font-size: 19px; */
64
- cursor: pointer;
65
- }
66
-
67
- .crm-description {
68
- /* font-size: 14px; */
69
- width: 100%;
70
- display: flex;
71
- gap: 9px;
72
- flex-wrap: wrap;
73
- }
74
-
75
- .crm-description a {
76
- font-weight: bold;
77
- cursor: pointer;
78
- text-decoration: underline;
79
- }
80
-
81
- .crm-description div {
82
- display: flex;
83
- gap: 5px;
1
+ :host {
2
+ display: block;
3
+ }
4
+
5
+ .form-container-pin {
6
+ display: flex;
7
+ flex-direction: column;
8
+ align-items: center;
9
+ }
10
+
11
+ .pin-container {
12
+ display: flex;
13
+ /* margin: 26px 0; */
14
+ justify-content: start;
15
+ gap: 10px;
16
+ }
17
+
18
+ .pin-container input {
19
+ width: 100%;
20
+ height: 48px;
21
+ /* font-size: 14px; */
22
+ text-align: center;
23
+ border: 1px solid #ccc;
24
+ border-radius: 5px;
25
+ }
26
+
27
+ button {
28
+ padding: 10px 20px;
29
+ background-color: #ddd;
30
+ border: none;
31
+ border-radius: 5px;
32
+ cursor: pointer;
33
+ }
34
+
35
+
36
+ .success {
37
+ color: green;
38
+ margin-top: 10px;
39
+ }
40
+
41
+ .button {
42
+ top: 50%;
43
+ background-color: #6c6c7e;
44
+ color: #fff;
45
+ border: none;
46
+ border-radius: 10px;
47
+ padding: 15px;
48
+ min-height: 30px;
49
+ min-width: 120px;
50
+ /* font-size: 20px; */
51
+ cursor: pointer;
52
+ }
53
+
54
+ .button-cancel {
55
+ top: 50%;
56
+ background-color: #ffffff;
57
+ color: #1e1c1c;
58
+ border: 1px solid gray;
59
+ border-radius: 10px;
60
+ padding: 10px;
61
+ min-height: 30px;
62
+ min-width: 120px;
63
+ /* font-size: 19px; */
64
+ cursor: pointer;
65
+ }
66
+
67
+ .crm-description {
68
+ /* font-size: 14px; */
69
+ width: 100%;
70
+ display: flex;
71
+ gap: 9px;
72
+ flex-wrap: wrap;
73
+ }
74
+
75
+ .crm-description a {
76
+ font-weight: bold;
77
+ cursor: pointer;
78
+ text-decoration: underline;
79
+ }
80
+
81
+ .crm-description div {
82
+ display: flex;
83
+ gap: 5px;
84
84
  }
@@ -59,7 +59,7 @@ export class GiftbackPin {
59
59
  }
60
60
  render() {
61
61
  var _a;
62
- return (h("div", { key: '3f60e4c74c925daf656092812f40ae0d1f3b5a99', class: "crm-phone-form" }, h("label", { key: 'd0c023e22ff7eb8978ee6cc0ca4ced8192c53c20', class: "crm-subtitle" }, i18next.t('pin-sutitle'), " ", h("strong", { key: '05bb0e2493c99abaa29031a7cc787260266bb417' }, "+55 ", this.phone)), h("div", { key: '24c8eb55625f3b880741086c66decd96ecf40044', 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: '02276aa80396d16f779a92a381e75506fa37d56d' }), h("p", { key: '27af068858b3ead8a70b8ec961d367c7beb04d94', class: "crm-description" }, " N\u00E3o recebeu?", !this.canResend && h("label", { key: '8ef93baf6f92142292078e5e4bcc125ff12b80d7' }, " Reenviar em", h("countdown-timer", { key: 'f3a0c60c7a88229e37add445886c44b00c60913f', minutos: 0, segundos: 30, dataCriacao: this.buildTime(), downtime: () => this.handleTimeout() }), " "), this.canResend && (h("div", { key: '2d1b5b028a7085d912acb0d0c696436e8aa75a29' }, h("a", { key: 'ad9aea2c6f167f1270c75b8dbd2ee79879f7567d', onClick: () => this.handleResend() }, "Reenviar"), h("a", { key: 'b0734ab0e472c5cf24fa083c0a712e4f29cf8d79', onClick: () => this.cancel() }, "Trocar n\u00FAmero")))), h("crm-button", { key: '39095211d007c871f48971509c3ff52b0f257c29', 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: '05f3ded47b176892e8c59dddd08b1c43fd2f26bb', class: "crm-phone-form" }, h("label", { key: '973cbc7e98431cd8ee44f3453416b5696b7d292c', class: "crm-subtitle" }, i18next.t('pin-sutitle'), " ", h("strong", { key: '8cae1cc584781460060fd84361a539c82194f26f' }, "+55 ", this.phone)), h("div", { key: 'fc1d2cf4d6ea858a56f943f9c33249ea1c7a1702', 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: 'c5eeb7932b47c042c45c895e340177b2c9256156' }), h("p", { key: '706785a6e4cb01efb5eb24a00944e3833e401edf', class: "crm-description" }, " N\u00E3o recebeu?", !this.canResend && h("label", { key: 'bedd4eb47d1d17c042ae90dd391948e8da613999' }, " Reenviar em", h("countdown-timer", { key: '1752550acfc64b0cac4e39817196802fbe2f24bf', minutos: 0, segundos: 30, dataCriacao: this.buildTime(), downtime: () => this.handleTimeout() }), " "), this.canResend && (h("div", { key: '440e2fa2c5aae57d0c9b3500d2e7f94da248e522' }, h("a", { key: 'f00fd4ffa19991bb3027b031bb9acba487ddde76', onClick: () => this.handleResend() }, "Reenviar"), h("a", { key: '59749f8abf49c358dee5526f1ade91904eab209e', onClick: () => this.cancel() }, "Trocar n\u00FAmero")))), h("crm-button", { key: '8a5f9e66a197262c0e10632e9275d8fe70360b11', txtBtn: ((_a = this.config) === null || _a === void 0 ? void 0 : _a.btnApplyBonusLabel) || "Avançar", loading: this.loading, handleClick: () => this.validatePin() })));
63
63
  }
64
64
  static get is() { return "pin-form"; }
65
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';\r\nimport { IPinSent } from '../../../../dto/pin.sent';\r\nimport i18next from '../../../../i18n/i18n'\r\nimport { IInfoStore } from '../../../../helpers/info.config.helper';\r\n\r\n@Component({\r\n tag: 'pin-form',\r\n styleUrls: ['pin-form.css', '../../giftback-form.css'],\r\n shadow: true,\r\n})\r\nexport class GiftbackPin {\r\n\r\n @Prop() validate: (pin: string) => void;\r\n @Prop() cancel: () => void;\r\n @Prop() resend: () => void;\r\n\r\n @Prop() sent: IPinSent;\r\n @Prop() loading: boolean = false;\r\n @Prop() phone: string;\r\n @Prop() config: IInfoStore;\r\n\r\n @State() pin: string[] = ['', '', '', ''];\r\n @State() isVerified: boolean = false;\r\n @State() canResend: boolean = false;\r\n\r\n componentWillLoad() {\r\n this.canResend = false;\r\n }\r\n\r\n handleInput(event: Event, index: number) {\r\n const input = event.target as HTMLInputElement;\r\n const value = input.value.slice(0, 1); // Limitar a um único dígito\r\n this.pin[index] = value;\r\n\r\n // Focar no próximo campo, se possível\r\n if (value && index < this.pin.length - 1) {\r\n const nextInput = input.nextElementSibling as HTMLInputElement;\r\n nextInput?.focus();\r\n }\r\n\r\n this.pin = [...this.pin];\r\n }\r\n\r\n validatePin() {\r\n localStorage.removeItem(\"bc:resend\")\r\n this.validate(this.pin.join(\"\"))\r\n }\r\n\r\n verifyPin() {\r\n const pinCode = this.pin.join('');\r\n if (pinCode === '9999') {\r\n this.isVerified = true;\r\n }\r\n }\r\n\r\n handleTimeout() {\r\n localStorage.removeItem(\"bc:resend\")\r\n this.canResend = true;\r\n }\r\n\r\n async handleResend() {\r\n await this.resend();\r\n\r\n this.canResend = false;\r\n this.pin = ['', '', '', ''];\r\n localStorage.removeItem(\"bc:resend\")\r\n }\r\n\r\n buildTime() {\r\n const resendDate = localStorage.getItem(\"bc:resend\");\r\n\r\n if(resendDate) {\r\n return resendDate;\r\n }\r\n\r\n const date = new Date();\r\n date.setSeconds(date.getSeconds() + 30);\r\n localStorage.setItem(\"bc:resend\", date.toString());\r\n\r\n return date.toString();\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"crm-phone-form\">\r\n <label class=\"crm-subtitle\" >{i18next.t('pin-sutitle')} <strong>+55 {this.phone}</strong></label>\r\n <div class=\"pin-container\">\r\n {this.pin.map((_, index) => (\r\n <input\r\n type=\"text\"\r\n maxLength={1}\r\n value={this.pin[index]}\r\n onInput={(event) => this.handleInput(event, index)}\r\n />\r\n ))}\r\n </div>\r\n\r\n <slot></slot>\r\n\r\n <p class=\"crm-description\"> Não recebeu?\r\n {\r\n !this.canResend && <label> Reenviar em \r\n <countdown-timer minutos={0} segundos={30} dataCriacao={this.buildTime()} downtime={() => this.handleTimeout()} /> </label>\r\n }\r\n {\r\n this.canResend && (\r\n <div >\r\n <a onClick={() => this.handleResend()}>Reenviar</a>\r\n <a onClick={() => this.cancel()}>Trocar número</a>\r\n </div>\r\n )\r\n }\r\n </p>\r\n <crm-button txtBtn={this.config?.btnApplyBonusLabel || \"Avançar\"} loading={this.loading} handleClick={() => this.validatePin()} />\r\n </div >\r\n );\r\n }\r\n}\r\n"]}
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 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"]}
@@ -1,7 +1,7 @@
1
1
  import { h } from "@stencil/core";
2
2
  export class ContainerEmpty {
3
3
  render() {
4
- return (h("div", { key: 'f7b7e7419831285f4cd4dacbca2e1e4b3809c609', class: "crm-empty" }, "dww"));
4
+ return (h("div", { key: '4539873f651bb2cb8d75235d233f30b1f89fa5d8', class: "crm-empty" }, "dww"));
5
5
  }
6
6
  static get is() { return "container-empty"; }
7
7
  static get styles() { return "container-empty.css"; }
@@ -1 +1 @@
1
- {"version":3,"file":"container-empty.js","sourceRoot":"","sources":["../../../../src/components/loading-container/container-empty.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAM7C,MAAM,OAAO,cAAc;IAEvB,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,WAAW,UAEhB,CACT,CAAA;IACL,CAAC;;;CACJ","sourcesContent":["import { Component, h } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'container-empty',\r\n styles: 'container-empty.css'\r\n})\r\nexport class ContainerEmpty {\r\n\r\n render() {\r\n return (\r\n <div class=\"crm-empty\">\r\n dww\r\n </div>\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"file":"container-empty.js","sourceRoot":"","sources":["../../../../src/components/loading-container/container-empty.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAM7C,MAAM,OAAO,cAAc;IAEvB,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,WAAW,UAEhB,CACT,CAAA;IACL,CAAC;;;CACJ","sourcesContent":["import { Component, h } from \"@stencil/core\";\n\n@Component({\n tag: 'container-empty',\n styles: 'container-empty.css'\n})\nexport class ContainerEmpty {\n\n render() {\n return (\n <div class=\"crm-empty\">\n dww\n </div>\n )\n }\n}"]}
@@ -1,54 +1,54 @@
1
- /* Estilo para centralizar o container do loading */
2
- .loading-container {
3
- position: absolute;
4
- /* Fixa o loading na tela */
5
- top: 0;
6
- left: 0;
7
- width: 100%;
8
- /* Tamanho total da tela */
9
- height: 100%;
10
- background-color: rgba(0, 0, 0, 0.5);
11
- /* Fundo semitransparente */
12
- display: flex;
13
- /* Centraliza o conteúdo */
14
- justify-content: center;
15
- align-items: center;
16
- z-index: 1000;
17
- flex-direction: column;
18
- /* Coloca o loading acima de outros elementos */
19
- }
20
-
21
- .loading-container p {
22
- margin: 6px 0px;
23
- color: white;
24
- font-size: large;
25
- }
26
-
27
- /* Estilo do spinner (círculo giratório) */
28
- .loading-spinner {
29
- width: 40px;
30
- height: 40px;
31
- border: 5px solid rgba(255, 255, 255, 0.3);
32
- /* Borda semitransparente */
33
- border-top: 5px solid white;
34
- /* Borda que será animada */
35
- border-radius: 50%;
36
- /* Faz o círculo */
37
- animation: spin 1s linear infinite;
38
- /* Gira continuamente */
39
- }
40
-
41
- /* Keyframes para a animação de rotação */
42
- @keyframes spin {
43
- 0% {
44
- transform: rotate(0deg);
45
- }
46
-
47
- 100% {
48
- transform: rotate(360deg);
49
- }
50
- }
51
-
52
- .relative-xy {
53
- position: relative;
1
+ /* Estilo para centralizar o container do loading */
2
+ .loading-container {
3
+ position: absolute;
4
+ /* Fixa o loading na tela */
5
+ top: 0;
6
+ left: 0;
7
+ width: 100%;
8
+ /* Tamanho total da tela */
9
+ height: 100%;
10
+ background-color: rgba(0, 0, 0, 0.5);
11
+ /* Fundo semitransparente */
12
+ display: flex;
13
+ /* Centraliza o conteúdo */
14
+ justify-content: center;
15
+ align-items: center;
16
+ z-index: 1000;
17
+ flex-direction: column;
18
+ /* Coloca o loading acima de outros elementos */
19
+ }
20
+
21
+ .loading-container p {
22
+ margin: 6px 0px;
23
+ color: white;
24
+ font-size: large;
25
+ }
26
+
27
+ /* Estilo do spinner (círculo giratório) */
28
+ .loading-spinner {
29
+ width: 40px;
30
+ height: 40px;
31
+ border: 5px solid rgba(255, 255, 255, 0.3);
32
+ /* Borda semitransparente */
33
+ border-top: 5px solid white;
34
+ /* Borda que será animada */
35
+ border-radius: 50%;
36
+ /* Faz o círculo */
37
+ animation: spin 1s linear infinite;
38
+ /* Gira continuamente */
39
+ }
40
+
41
+ /* Keyframes para a animação de rotação */
42
+ @keyframes spin {
43
+ 0% {
44
+ transform: rotate(0deg);
45
+ }
46
+
47
+ 100% {
48
+ transform: rotate(360deg);
49
+ }
50
+ }
51
+
52
+ .relative-xy {
53
+ position: relative;
54
54
  }
@@ -5,7 +5,7 @@ export class LoadingContainer {
5
5
  this.text = null;
6
6
  }
7
7
  render() {
8
- return (h("div", { key: '5e323e6b562ee4d770bb2c9f786a23d6b47ce06e', class: "relative-xy" }, this.loading && (h("div", { key: '31183c82285ec32c7de0348885d0fd30e4a82502', class: "loading-container" }, h("div", { key: '1de235c7594a15e822d044364de0700d3c9e1fa4', class: "loading-spinner" }), this.text && h("p", { key: '82daa6b96a1e14d83be2fc22fd879b3a41896d0e' }, this.text))), h("slot", { key: '09c654783fde15f7b34c4a0804fcec07cfa28b30' })));
8
+ return (h("div", { key: '7b7d88c96033493ef652f0b331245b644b44e6b6', class: "relative-xy" }, this.loading && (h("div", { key: 'a8be02caf61d0cdfb4fcd725faefe5a0a03b513d', class: "loading-container" }, h("div", { key: 'ba672afc6fc7ba7afe18c1e44e392dee7ca312bc', class: "loading-spinner" }), this.text && h("p", { key: '80f2f8e365f078a13fcf94e2284853d4194862bb' }, this.text))), h("slot", { key: 'a37b15c9dea5d39b448565cc71d67525660bf85b' })));
9
9
  }
10
10
  static get is() { return "loading-container"; }
11
11
  static get originalStyleUrls() {
@@ -1 +1 @@
1
- {"version":3,"file":"loading-container.js","sourceRoot":"","sources":["../../../../src/components/loading-container/loading-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAMnD,MAAM,OAAO,gBAAgB;;uBAEE,IAAI;oBACR,IAAI;;IAE3B,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,aAAa;YAEhB,IAAI,CAAC,OAAO,IAAI,CACZ,4DAAK,KAAK,EAAC,mBAAmB;gBAC1B,4DAAK,KAAK,EAAC,iBAAiB,GAAO;gBAClC,IAAI,CAAC,IAAI,IAAI,4DAAI,IAAI,CAAC,IAAI,CAAK,CAC9B,CACT;YAEL,8DAAa,CACX,CACT,CAAA;IACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, Prop, h } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'loading-container',\r\n styleUrl: 'loading-container.css'\r\n})\r\nexport class LoadingContainer {\r\n\r\n @Prop() loading: boolean = true;\r\n @Prop() text: string = null;\r\n\r\n render() {\r\n return (\r\n <div class=\"relative-xy\">\r\n {\r\n this.loading && (\r\n <div class=\"loading-container\">\r\n <div class=\"loading-spinner\"></div>\r\n {this.text && <p>{this.text}</p>}\r\n </div>\r\n )\r\n }\r\n <slot></slot>\r\n </div>\r\n )\r\n }\r\n}"]}
1
+ {"version":3,"file":"loading-container.js","sourceRoot":"","sources":["../../../../src/components/loading-container/loading-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAMnD,MAAM,OAAO,gBAAgB;;uBAEE,IAAI;oBACR,IAAI;;IAE3B,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,aAAa;YAEhB,IAAI,CAAC,OAAO,IAAI,CACZ,4DAAK,KAAK,EAAC,mBAAmB;gBAC1B,4DAAK,KAAK,EAAC,iBAAiB,GAAO;gBAClC,IAAI,CAAC,IAAI,IAAI,4DAAI,IAAI,CAAC,IAAI,CAAK,CAC9B,CACT;YAEL,8DAAa,CACX,CACT,CAAA;IACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, Prop, h } from \"@stencil/core\";\n\n@Component({\n tag: 'loading-container',\n styleUrl: 'loading-container.css'\n})\nexport class LoadingContainer {\n\n @Prop() loading: boolean = true;\n @Prop() text: string = null;\n\n render() {\n return (\n <div class=\"relative-xy\">\n {\n this.loading && (\n <div class=\"loading-container\">\n <div class=\"loading-spinner\"></div>\n {this.text && <p>{this.text}</p>}\n </div>\n )\n }\n <slot></slot>\n </div>\n )\n }\n}"]}
@@ -1,17 +1,17 @@
1
- .spinner {
2
- display: inline-block;
3
- border: 4px solid transparent;
4
- border-radius: 50%;
5
- border-top-color: var(--color, #0078d7);
6
- animation: spin 1s linear infinite;
7
- }
8
-
9
- @keyframes spin {
10
- 0% {
11
- transform: rotate(0deg);
12
- }
13
-
14
- 100% {
15
- transform: rotate(360deg);
16
- }
1
+ .spinner {
2
+ display: inline-block;
3
+ border: 4px solid transparent;
4
+ border-radius: 50%;
5
+ border-top-color: var(--color, #0078d7);
6
+ animation: spin 1s linear infinite;
7
+ }
8
+
9
+ @keyframes spin {
10
+ 0% {
11
+ transform: rotate(0deg);
12
+ }
13
+
14
+ 100% {
15
+ transform: rotate(360deg);
16
+ }
17
17
  }
@@ -5,7 +5,7 @@ export class LoadingSpinner {
5
5
  this.color = '#0078d7';
6
6
  }
7
7
  render() {
8
- return (h("div", { key: 'e1916d264937b0470cd5b1581c87184061b40c3a', class: "spinner", style: { width: this.size, height: this.size, borderColor: `${this.color} transparent transparent transparent` } }));
8
+ return (h("div", { key: 'cf39cac39aa41032b67a1d1b28b4d3f379490c42', 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"; }
@@ -1 +1 @@
1
- {"version":3,"file":"loading-spinner.js","sourceRoot":"","sources":["../../../../src/components/loading-spinner/loading-spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOnD,MAAM,OAAO,cAAc;;oBACA,MAAM;qBACL,SAAS;;IAEjC,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,sCAAsC,EAAE,GAAQ,CAChJ,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, h, Prop } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'loading-spinner',\r\n styleUrl: 'loading-spinner.css',\r\n shadow: true,\r\n})\r\nexport class LoadingSpinner {\r\n @Prop() size: string = '50px'; // Tamanho do spinner (padrão 50px)\r\n @Prop() color: string = '#0078d7'; // Cor do spinner (padrão azul)\r\n\r\n render() {\r\n return (\r\n <div class=\"spinner\" style={{ width: this.size, height: this.size, borderColor: `${this.color} transparent transparent transparent` }}></div>\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"loading-spinner.js","sourceRoot":"","sources":["../../../../src/components/loading-spinner/loading-spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOnD,MAAM,OAAO,cAAc;;oBACA,MAAM;qBACL,SAAS;;IAEjC,MAAM;QACF,OAAO,CACH,4DAAK,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,sCAAsC,EAAE,GAAQ,CAChJ,CAAC;IACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'loading-spinner',\n styleUrl: 'loading-spinner.css',\n shadow: true,\n})\nexport class LoadingSpinner {\n @Prop() size: string = '50px'; // Tamanho do spinner (padrão 50px)\n @Prop() color: string = '#0078d7'; // Cor do spinner (padrão azul)\n\n render() {\n return (\n <div class=\"spinner\" style={{ width: this.size, height: this.size, borderColor: `${this.color} transparent transparent transparent` }}></div>\n );\n }\n}\n"]}