crmbonus-component-wake 2.1.21-homolog-tray → 2.1.22-ngrok

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 (361) 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/build.payload.helper-409e6cc9.js +49 -0
  5. package/dist/cjs/build.payload.helper-409e6cc9.js.map +1 -0
  6. package/dist/cjs/{cart.helper-0a401d80.js → cart.helper-18589347.js} +4 -2
  7. package/dist/cjs/cart.helper-18589347.js.map +1 -0
  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.cjs.entry.js → countdown-timer_2.cjs.entry.js} +19 -2
  11. package/dist/cjs/countdown-timer_2.cjs.entry.js.map +1 -0
  12. package/dist/cjs/crm-bonus-form.cjs.entry.js +2 -2
  13. package/dist/cjs/crm-bonus-form.cjs.entry.js.map +1 -1
  14. package/dist/cjs/crm-bonus-note.cjs.entry.js +64 -15
  15. package/dist/cjs/crm-bonus-note.cjs.entry.js.map +1 -1
  16. package/dist/cjs/crm-bonus-tray.cjs.entry.js +1 -1
  17. package/dist/cjs/crm-bonus-tray.cjs.entry.js.map +1 -1
  18. package/dist/cjs/crm-bonus.cjs.entry.js +30 -37
  19. package/dist/cjs/crm-bonus.cjs.entry.js.map +1 -1
  20. package/dist/cjs/{crm-giftback-form_2.cjs.entry.js → crm-giftback-form.cjs.entry.js} +43 -37
  21. package/dist/cjs/crm-giftback-form.cjs.entry.js.map +1 -0
  22. package/dist/cjs/crm-tooltip_4.cjs.entry.js +11 -11
  23. package/dist/cjs/crm-tooltip_4.cjs.entry.js.map +1 -1
  24. package/dist/cjs/crmbonus-component-wake.cjs.js +1 -1
  25. package/dist/cjs/{crmbonus.service-7a4f6786.js → crmbonus.service-36e689a4.js} +17 -12
  26. package/dist/cjs/crmbonus.service-36e689a4.js.map +1 -0
  27. package/dist/cjs/giftback-finish_4.cjs.entry.js +4 -4
  28. package/dist/cjs/giftback-finish_4.cjs.entry.js.map +1 -1
  29. package/dist/cjs/i18n-defaa4f8.js.map +1 -1
  30. package/dist/cjs/index-7a7d7882.js.map +1 -1
  31. package/dist/cjs/info.config.helper-e35e6e20.js.map +1 -1
  32. package/dist/cjs/loader.cjs.js +1 -1
  33. package/dist/cjs/loading-container.cjs.entry.js +23 -0
  34. package/dist/cjs/loading-container.cjs.entry.js.map +1 -0
  35. package/dist/cjs/loading-spinner.cjs.entry.js +1 -1
  36. package/dist/cjs/loading-spinner.cjs.entry.js.map +1 -1
  37. package/dist/cjs/pedido-finalizado.cjs.entry.js +3 -3
  38. package/dist/cjs/pedido-finalizado.cjs.entry.js.map +1 -1
  39. package/dist/cjs/phone-cancel-input.cjs.entry.js +1 -1
  40. package/dist/cjs/phone-cancel-input.cjs.entry.js.map +1 -1
  41. package/dist/cjs/phone-input-mask.cjs.entry.js +1 -1
  42. package/dist/cjs/phone-input-mask.cjs.entry.js.map +1 -1
  43. package/dist/cjs/phone-input.cjs.entry.js +1 -1
  44. package/dist/cjs/phone-input.cjs.entry.js.map +1 -1
  45. package/dist/cjs/utils-5d59acb1.js.map +1 -1
  46. package/dist/collection/assets/svg/money-dollars-svgrepo-com.svg +5 -5
  47. package/dist/collection/components/_crm-bonus-form/crm-bonus-form.css +17 -17
  48. package/dist/collection/components/_crm-bonus-form/crm-bonus-form.js +2 -2
  49. package/dist/collection/components/_crm-bonus-form/crm-bonus-form.js.map +1 -1
  50. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-finish/giftback-finish.css +8 -8
  51. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-finish/giftback-finish.js +1 -1
  52. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-finish/giftback-finish.js.map +1 -1
  53. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-pin/giftback-pin.css +68 -68
  54. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-pin/giftback-pin.js +1 -1
  55. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-pin/giftback-pin.js.map +1 -1
  56. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-progress/giftback-progress.css +108 -108
  57. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-progress/giftback-progress.js +2 -2
  58. package/dist/collection/components/_crm-bonus-form/subcomponents/giftback-progress/giftback-progress.js.map +1 -1
  59. package/dist/collection/components/_crm-bonus-form/subcomponents/name-input/name-input.css +107 -107
  60. package/dist/collection/components/_crm-bonus-form/subcomponents/name-input/name-input.js +1 -1
  61. package/dist/collection/components/_crm-bonus-form/subcomponents/name-input/name-input.js.map +1 -1
  62. package/dist/collection/components/_crm-bonus-form/subcomponents/phone/phone.input.js +1 -1
  63. package/dist/collection/components/_crm-bonus-form/subcomponents/phone/phone.input.js.map +1 -1
  64. package/dist/collection/components/_crm-bonus-form/subcomponents/phone-cancel/phone.cancel.input.js +1 -1
  65. package/dist/collection/components/_crm-bonus-form/subcomponents/phone-cancel/phone.cancel.input.js.map +1 -1
  66. package/dist/collection/components/button/crm-button.css +21 -21
  67. package/dist/collection/components/button/index.js +1 -1
  68. package/dist/collection/components/button/index.js.map +1 -1
  69. package/dist/collection/components/countdown-timer/countdown-timer.js +1 -1
  70. package/dist/collection/components/countdown-timer/countdown-timer.js.map +1 -1
  71. package/dist/collection/components/countdown-timer/countdown-timer.v2.js +2 -2
  72. package/dist/collection/components/countdown-timer/countdown-timer.v2.js.map +1 -1
  73. package/dist/collection/components/crm-bonus/assets/logo.svg +17 -17
  74. package/dist/collection/components/crm-bonus/assets/svg/logo.svg +17 -17
  75. package/dist/collection/components/crm-bonus/crm-bonus.css +82 -82
  76. package/dist/collection/components/crm-bonus/crm-bonus.js +44 -5
  77. package/dist/collection/components/crm-bonus/crm-bonus.js.map +1 -1
  78. package/dist/collection/components/giftback-form/giftback-form.css +74 -74
  79. package/dist/collection/components/giftback-form/giftback-form.js +42 -20
  80. package/dist/collection/components/giftback-form/giftback-form.js.map +1 -1
  81. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.css +181 -181
  82. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js +6 -6
  83. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js.map +1 -1
  84. package/dist/collection/components/giftback-form/subcomponents/giftback-message/giftback-massage.js.map +1 -1
  85. package/dist/collection/components/giftback-form/subcomponents/phone-form/phone-form.js +1 -1
  86. package/dist/collection/components/giftback-form/subcomponents/phone-form/phone-form.js.map +1 -1
  87. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.css +83 -83
  88. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js +1 -1
  89. package/dist/collection/components/giftback-form/subcomponents/pin-form/pin-form.js.map +1 -1
  90. package/dist/collection/components/loading-container/loading-container.css +46 -46
  91. package/dist/collection/components/loading-container/loading-container.js +1 -1
  92. package/dist/collection/components/loading-container/loading-container.js.map +1 -1
  93. package/dist/collection/components/loading-spinner/loading-spinner.css +16 -16
  94. package/dist/collection/components/loading-spinner/loading-spinner.js +1 -1
  95. package/dist/collection/components/loading-spinner/loading-spinner.js.map +1 -1
  96. package/dist/collection/components/modal/app-modal.css +44 -44
  97. package/dist/collection/components/modal/app-modal.js +1 -1
  98. package/dist/collection/components/modal/app-modal.js.map +1 -1
  99. package/dist/collection/components/note/crm-bonus-note.css +68 -68
  100. package/dist/collection/components/note/crm-bonus-note.js +63 -11
  101. package/dist/collection/components/note/crm-bonus-note.js.map +1 -1
  102. package/dist/collection/components/pedido/pedido.js +1 -1
  103. package/dist/collection/components/pedido/pedido.js.map +1 -1
  104. package/dist/collection/components/phone/phone-input-mask.css +40 -40
  105. package/dist/collection/components/phone/phone-input-mask.js +1 -1
  106. package/dist/collection/components/phone/phone-input-mask.js.map +1 -1
  107. package/dist/collection/components/tooltip/crm-tooltip.css +48 -48
  108. package/dist/collection/components/tooltip/tooltip.js +1 -1
  109. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  110. package/dist/collection/contants/index.js.map +1 -1
  111. package/dist/collection/contants/mocks.js.map +1 -1
  112. package/dist/collection/dto/pin.sent.js.map +1 -1
  113. package/dist/collection/dto/reserved-info.dto.js.map +1 -1
  114. package/dist/collection/dto/update.order.dto.js.map +1 -1
  115. package/dist/collection/dto/validate.pin.bonus.js +3 -0
  116. package/dist/collection/dto/validate.pin.bonus.js.map +1 -1
  117. package/dist/collection/helpers/build.payload.helper.js +15 -3
  118. package/dist/collection/helpers/build.payload.helper.js.map +1 -1
  119. package/dist/collection/helpers/cart.helper.js +2 -0
  120. package/dist/collection/helpers/cart.helper.js.map +1 -1
  121. package/dist/collection/helpers/info.config.helper.js.map +1 -1
  122. package/dist/collection/helpers/payload.interface.js.map +1 -1
  123. package/dist/collection/helpers/time.helper.js.map +1 -1
  124. package/dist/collection/i18n/i18n.js.map +1 -1
  125. package/dist/collection/index.js.map +1 -1
  126. package/dist/collection/objectvalues/cart.wake.js.map +1 -1
  127. package/dist/collection/services/crmbonus.service.js +15 -10
  128. package/dist/collection/services/crmbonus.service.js.map +1 -1
  129. package/dist/collection/tray-ecommerce/crm-bonus-tray.js +1 -1
  130. package/dist/collection/tray-ecommerce/crm-bonus-tray.js.map +1 -1
  131. package/dist/collection/utils/keys.storage.js.map +1 -1
  132. package/dist/collection/utils/utils.js.map +1 -1
  133. package/dist/components/app-modal.js +1 -1
  134. package/dist/components/app-modal.js.map +1 -1
  135. package/dist/components/countdown-timer-v2.js +1 -1
  136. package/dist/components/countdown-timer-v2.js.map +1 -1
  137. package/dist/components/countdown-timer.js +1 -1
  138. package/dist/components/crm-bonus-form.js +7 -7
  139. package/dist/components/crm-bonus-form.js.map +1 -1
  140. package/dist/components/crm-bonus-note.js +69 -18
  141. package/dist/components/crm-bonus-note.js.map +1 -1
  142. package/dist/components/crm-bonus-tray.js +1 -1
  143. package/dist/components/crm-bonus-tray.js.map +1 -1
  144. package/dist/components/crm-bonus.js +40 -46
  145. package/dist/components/crm-bonus.js.map +1 -1
  146. package/dist/components/crm-button.js +1 -1
  147. package/dist/components/crm-giftback-form.js +1 -1
  148. package/dist/components/crm-tooltip.js +1 -1
  149. package/dist/components/giftback-finish.js +1 -1
  150. package/dist/components/giftback-info.js +1 -1
  151. package/dist/components/giftback-pin.js +1 -1
  152. package/dist/components/giftback-progress.js +1 -1
  153. package/dist/components/loading-container.js +1 -1
  154. package/dist/components/loading-spinner.js +1 -1
  155. package/dist/components/name-input.js +1 -1
  156. package/dist/components/{p-63ca9208.js → p-0a33e90f.js} +5 -5
  157. package/dist/components/p-0a33e90f.js.map +1 -0
  158. package/dist/components/{p-a428d5df.js → p-142e8246.js} +17 -12
  159. package/dist/components/p-142e8246.js.map +1 -0
  160. package/dist/components/p-1b441909.js.map +1 -1
  161. package/dist/components/p-1bc79b08.js +47 -0
  162. package/dist/components/p-1bc79b08.js.map +1 -0
  163. package/dist/components/{p-c4788672.js → p-234f35c4.js} +3 -3
  164. package/dist/components/p-234f35c4.js.map +1 -0
  165. package/dist/components/{p-cd108989.js → p-6b1f5521.js} +2 -2
  166. package/dist/components/p-6b1f5521.js.map +1 -0
  167. package/dist/components/{p-ec317fb9.js → p-6d61406c.js} +52 -30
  168. package/dist/components/p-6d61406c.js.map +1 -0
  169. package/dist/components/{p-dc1871cf.js → p-6ff4aa18.js} +3 -3
  170. package/dist/components/p-6ff4aa18.js.map +1 -0
  171. package/dist/{esm/cart.helper-c6fd0b36.js → components/p-7a92a786.js} +4 -2
  172. package/dist/components/p-7a92a786.js.map +1 -0
  173. package/dist/components/{p-4ac2b98e.js → p-86dfe7ca.js} +5 -5
  174. package/dist/components/p-86dfe7ca.js.map +1 -0
  175. package/dist/components/{p-e81cd527.js → p-8e6146ae.js} +3 -3
  176. package/dist/components/p-8e6146ae.js.map +1 -0
  177. package/dist/components/{p-a70a82a3.js → p-ab662b24.js} +3 -3
  178. package/dist/components/p-ab662b24.js.map +1 -0
  179. package/dist/components/p-af3ba015.js.map +1 -1
  180. package/dist/components/{p-39cc3ce4.js → p-b86c93cc.js} +3 -3
  181. package/dist/components/p-b86c93cc.js.map +1 -0
  182. package/dist/components/p-c53241bf.js.map +1 -1
  183. package/dist/components/{p-d8bd654a.js → p-dc0f6d66.js} +10 -10
  184. package/dist/components/p-dc0f6d66.js.map +1 -0
  185. package/dist/components/{p-5a7b0549.js → p-e068510c.js} +2 -2
  186. package/dist/components/p-e068510c.js.map +1 -0
  187. package/dist/components/{p-e25a1b64.js → p-e31b6c28.js} +2 -2
  188. package/dist/components/p-e31b6c28.js.map +1 -0
  189. package/dist/components/{p-86b95c83.js → p-eb1f4328.js} +2 -2
  190. package/dist/components/p-eb1f4328.js.map +1 -0
  191. package/dist/components/p-ecc51430.js.map +1 -1
  192. package/dist/components/{p-3cd7a20f.js → p-f09b7364.js} +2 -2
  193. package/dist/components/{p-3cd7a20f.js.map → p-f09b7364.js.map} +1 -1
  194. package/dist/components/pedido-finalizado.js +3 -3
  195. package/dist/components/pedido-finalizado.js.map +1 -1
  196. package/dist/components/phone-cancel-input.js +3 -3
  197. package/dist/components/phone-cancel-input.js.map +1 -1
  198. package/dist/components/phone-form.js +1 -1
  199. package/dist/components/phone-input-mask.js +1 -1
  200. package/dist/components/phone-input.js +3 -3
  201. package/dist/components/phone-input.js.map +1 -1
  202. package/dist/components/pin-form.js +1 -1
  203. package/dist/crmbonus-component-wake/assets/logo.svg +17 -17
  204. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js +1 -1
  205. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js.map +1 -1
  206. package/dist/crmbonus-component-wake/{p-a428d5df.js → p-142e8246.js} +2 -2
  207. package/dist/crmbonus-component-wake/p-142e8246.js.map +1 -0
  208. package/dist/crmbonus-component-wake/p-1b441909.js.map +1 -1
  209. package/dist/crmbonus-component-wake/p-1bc79b08.js +2 -0
  210. package/dist/crmbonus-component-wake/p-1bc79b08.js.map +1 -0
  211. package/dist/crmbonus-component-wake/p-2bd29eae.entry.js +2 -0
  212. package/dist/crmbonus-component-wake/p-2bd29eae.entry.js.map +1 -0
  213. package/dist/crmbonus-component-wake/{p-0a40bcba.entry.js → p-39abc114.entry.js} +2 -2
  214. package/dist/crmbonus-component-wake/p-39abc114.entry.js.map +1 -0
  215. package/dist/crmbonus-component-wake/p-427c86db.entry.js +2 -0
  216. package/dist/crmbonus-component-wake/p-427c86db.entry.js.map +1 -0
  217. package/dist/crmbonus-component-wake/p-568072fe.entry.js +2 -0
  218. package/dist/crmbonus-component-wake/p-568072fe.entry.js.map +1 -0
  219. package/dist/crmbonus-component-wake/p-6d5bd437.entry.js +2 -0
  220. package/dist/crmbonus-component-wake/p-6d5bd437.entry.js.map +1 -0
  221. package/dist/crmbonus-component-wake/p-74335744.entry.js +2 -0
  222. package/dist/crmbonus-component-wake/p-74335744.entry.js.map +1 -0
  223. package/dist/crmbonus-component-wake/p-7a92a786.js +2 -0
  224. package/dist/crmbonus-component-wake/p-7a92a786.js.map +1 -0
  225. package/dist/crmbonus-component-wake/p-7beb0b90.entry.js +2 -0
  226. package/dist/crmbonus-component-wake/p-7beb0b90.entry.js.map +1 -0
  227. package/dist/crmbonus-component-wake/p-7ee5c218.entry.js +2 -0
  228. package/dist/crmbonus-component-wake/p-7ee5c218.entry.js.map +1 -0
  229. package/dist/crmbonus-component-wake/p-85d2747a.entry.js +2 -0
  230. package/dist/crmbonus-component-wake/p-85d2747a.entry.js.map +1 -0
  231. package/dist/crmbonus-component-wake/p-8c4ae16d.entry.js +2 -0
  232. package/dist/crmbonus-component-wake/p-8c4ae16d.entry.js.map +1 -0
  233. package/dist/crmbonus-component-wake/{p-77d8e96c.entry.js → p-9a32f685.entry.js} +2 -2
  234. package/dist/crmbonus-component-wake/p-9a32f685.entry.js.map +1 -0
  235. package/dist/crmbonus-component-wake/p-a7f6ff4a.entry.js +2 -0
  236. package/dist/crmbonus-component-wake/p-a7f6ff4a.entry.js.map +1 -0
  237. package/dist/crmbonus-component-wake/p-af3ba015.js.map +1 -1
  238. package/dist/crmbonus-component-wake/{p-154b5318.entry.js → p-b5e9a5ea.entry.js} +2 -2
  239. package/dist/crmbonus-component-wake/p-b5e9a5ea.entry.js.map +1 -0
  240. package/dist/crmbonus-component-wake/{p-bcb65b4e.entry.js → p-b9baad26.entry.js} +2 -2
  241. package/dist/crmbonus-component-wake/p-b9baad26.entry.js.map +1 -0
  242. package/dist/crmbonus-component-wake/p-c53241bf.js.map +1 -1
  243. package/dist/crmbonus-component-wake/p-d2e98cc5.entry.js +2 -0
  244. package/dist/crmbonus-component-wake/p-d2e98cc5.entry.js.map +1 -0
  245. package/dist/crmbonus-component-wake/p-e5d8700b.entry.js +2 -0
  246. package/dist/crmbonus-component-wake/p-e5d8700b.entry.js.map +1 -0
  247. package/dist/crmbonus-component-wake/p-ecc51430.js.map +1 -1
  248. package/dist/env.js +1 -1
  249. package/dist/env.js.map +1 -1
  250. package/dist/esm/app-modal.entry.js +1 -1
  251. package/dist/esm/app-modal.entry.js.map +1 -1
  252. package/dist/esm/build.payload.helper-96f9c8b8.js +47 -0
  253. package/dist/esm/build.payload.helper-96f9c8b8.js.map +1 -0
  254. package/dist/{components/p-9ca28ea7.js → esm/cart.helper-107db11e.js} +4 -2
  255. package/dist/esm/cart.helper-107db11e.js.map +1 -0
  256. package/dist/esm/countdown-timer-v2.entry.js +1 -1
  257. package/dist/esm/countdown-timer-v2.entry.js.map +1 -1
  258. package/dist/esm/{countdown-timer.entry.js → countdown-timer_2.entry.js} +19 -3
  259. package/dist/esm/countdown-timer_2.entry.js.map +1 -0
  260. package/dist/esm/crm-bonus-form.entry.js +2 -2
  261. package/dist/esm/crm-bonus-form.entry.js.map +1 -1
  262. package/dist/esm/crm-bonus-note.entry.js +64 -15
  263. package/dist/esm/crm-bonus-note.entry.js.map +1 -1
  264. package/dist/esm/crm-bonus-tray.entry.js +1 -1
  265. package/dist/esm/crm-bonus-tray.entry.js.map +1 -1
  266. package/dist/esm/crm-bonus.entry.js +29 -36
  267. package/dist/esm/crm-bonus.entry.js.map +1 -1
  268. package/dist/esm/{crm-giftback-form_2.entry.js → crm-giftback-form.entry.js} +44 -37
  269. package/dist/esm/crm-giftback-form.entry.js.map +1 -0
  270. package/dist/esm/crm-tooltip_4.entry.js +11 -11
  271. package/dist/esm/crm-tooltip_4.entry.js.map +1 -1
  272. package/dist/esm/crmbonus-component-wake.js +1 -1
  273. package/dist/esm/{crmbonus.service-0bd0a5ac.js → crmbonus.service-652502f6.js} +17 -12
  274. package/dist/esm/crmbonus.service-652502f6.js.map +1 -0
  275. package/dist/esm/giftback-finish_4.entry.js +4 -4
  276. package/dist/esm/giftback-finish_4.entry.js.map +1 -1
  277. package/dist/esm/i18n-b9d8b0cc.js.map +1 -1
  278. package/dist/esm/index-dc3ebdf0.js.map +1 -1
  279. package/dist/esm/info.config.helper-7cad7a9c.js.map +1 -1
  280. package/dist/esm/loader.js +1 -1
  281. package/dist/esm/loading-container.entry.js +19 -0
  282. package/dist/esm/loading-container.entry.js.map +1 -0
  283. package/dist/esm/loading-spinner.entry.js +1 -1
  284. package/dist/esm/loading-spinner.entry.js.map +1 -1
  285. package/dist/esm/pedido-finalizado.entry.js +3 -3
  286. package/dist/esm/pedido-finalizado.entry.js.map +1 -1
  287. package/dist/esm/phone-cancel-input.entry.js +1 -1
  288. package/dist/esm/phone-cancel-input.entry.js.map +1 -1
  289. package/dist/esm/phone-input-mask.entry.js +1 -1
  290. package/dist/esm/phone-input-mask.entry.js.map +1 -1
  291. package/dist/esm/phone-input.entry.js +1 -1
  292. package/dist/esm/phone-input.entry.js.map +1 -1
  293. package/dist/esm/utils-dec6df66.js.map +1 -1
  294. package/dist/types/Users/Darlison/Projects/Bycoders/crmbonus/crmbonus-component/.stencil/env.d.ts +2 -0
  295. package/dist/types/components/crm-bonus/crm-bonus.d.ts +2 -0
  296. package/dist/types/components/giftback-form/giftback-form.d.ts +1 -0
  297. package/dist/types/components/note/crm-bonus-note.d.ts +8 -1
  298. package/dist/types/components.d.ts +2 -0
  299. package/dist/types/dto/reserved-info.dto.d.ts +3 -0
  300. package/dist/types/dto/validate.pin.bonus.d.ts +4 -1
  301. package/package.json +58 -58
  302. package/readme.md +114 -114
  303. package/dist/cjs/cart.helper-0a401d80.js.map +0 -1
  304. package/dist/cjs/countdown-timer.cjs.entry.js.map +0 -1
  305. package/dist/cjs/crm-button.cjs.entry.js +0 -25
  306. package/dist/cjs/crm-button.cjs.entry.js.map +0 -1
  307. package/dist/cjs/crm-giftback-form_2.cjs.entry.js.map +0 -1
  308. package/dist/cjs/crmbonus.service-7a4f6786.js.map +0 -1
  309. package/dist/components/p-39cc3ce4.js.map +0 -1
  310. package/dist/components/p-4ac2b98e.js.map +0 -1
  311. package/dist/components/p-5a7b0549.js.map +0 -1
  312. package/dist/components/p-63ca9208.js.map +0 -1
  313. package/dist/components/p-86b95c83.js.map +0 -1
  314. package/dist/components/p-9ca28ea7.js.map +0 -1
  315. package/dist/components/p-a428d5df.js.map +0 -1
  316. package/dist/components/p-a70a82a3.js.map +0 -1
  317. package/dist/components/p-c4788672.js.map +0 -1
  318. package/dist/components/p-cd108989.js.map +0 -1
  319. package/dist/components/p-d8bd654a.js.map +0 -1
  320. package/dist/components/p-dc1871cf.js.map +0 -1
  321. package/dist/components/p-e25a1b64.js.map +0 -1
  322. package/dist/components/p-e81cd527.js.map +0 -1
  323. package/dist/components/p-ec317fb9.js.map +0 -1
  324. package/dist/crmbonus-component-wake/p-0055876c.entry.js +0 -2
  325. package/dist/crmbonus-component-wake/p-0055876c.entry.js.map +0 -1
  326. package/dist/crmbonus-component-wake/p-0a40bcba.entry.js.map +0 -1
  327. package/dist/crmbonus-component-wake/p-154b5318.entry.js.map +0 -1
  328. package/dist/crmbonus-component-wake/p-1b0969ff.entry.js +0 -2
  329. package/dist/crmbonus-component-wake/p-1b0969ff.entry.js.map +0 -1
  330. package/dist/crmbonus-component-wake/p-35b95848.entry.js +0 -2
  331. package/dist/crmbonus-component-wake/p-35b95848.entry.js.map +0 -1
  332. package/dist/crmbonus-component-wake/p-4792c140.entry.js +0 -2
  333. package/dist/crmbonus-component-wake/p-4792c140.entry.js.map +0 -1
  334. package/dist/crmbonus-component-wake/p-53b6a7e8.entry.js +0 -2
  335. package/dist/crmbonus-component-wake/p-53b6a7e8.entry.js.map +0 -1
  336. package/dist/crmbonus-component-wake/p-5aa35e0f.entry.js +0 -2
  337. package/dist/crmbonus-component-wake/p-5aa35e0f.entry.js.map +0 -1
  338. package/dist/crmbonus-component-wake/p-77d8e96c.entry.js.map +0 -1
  339. package/dist/crmbonus-component-wake/p-81ec64ff.entry.js +0 -2
  340. package/dist/crmbonus-component-wake/p-81ec64ff.entry.js.map +0 -1
  341. package/dist/crmbonus-component-wake/p-8e2d6659.entry.js +0 -2
  342. package/dist/crmbonus-component-wake/p-8e2d6659.entry.js.map +0 -1
  343. package/dist/crmbonus-component-wake/p-9ca28ea7.js +0 -2
  344. package/dist/crmbonus-component-wake/p-9ca28ea7.js.map +0 -1
  345. package/dist/crmbonus-component-wake/p-a428d5df.js.map +0 -1
  346. package/dist/crmbonus-component-wake/p-b2941d60.entry.js +0 -2
  347. package/dist/crmbonus-component-wake/p-b2941d60.entry.js.map +0 -1
  348. package/dist/crmbonus-component-wake/p-bcb65b4e.entry.js.map +0 -1
  349. package/dist/crmbonus-component-wake/p-cc754208.entry.js +0 -2
  350. package/dist/crmbonus-component-wake/p-cc754208.entry.js.map +0 -1
  351. package/dist/crmbonus-component-wake/p-e4aae2ed.entry.js +0 -2
  352. package/dist/crmbonus-component-wake/p-e4aae2ed.entry.js.map +0 -1
  353. package/dist/crmbonus-component-wake/p-ed22d88f.entry.js +0 -2
  354. package/dist/crmbonus-component-wake/p-ed22d88f.entry.js.map +0 -1
  355. package/dist/esm/cart.helper-c6fd0b36.js.map +0 -1
  356. package/dist/esm/countdown-timer.entry.js.map +0 -1
  357. package/dist/esm/crm-button.entry.js +0 -21
  358. package/dist/esm/crm-button.entry.js.map +0 -1
  359. package/dist/esm/crm-giftback-form_2.entry.js.map +0 -1
  360. package/dist/esm/crmbonus.service-0bd0a5ac.js.map +0 -1
  361. package/dist/types/home/darlison/Projects/Bycoders/crmbonus/crmbonus-component/.stencil/env.d.ts +0 -2
@@ -1,2 +0,0 @@
1
- import{r as t,h as i}from"./p-8c362346.js";import{C as s,g as e,U as a}from"./p-a428d5df.js";import{S as o}from"./p-ecc51430.js";import{g as n}from"./p-1b441909.js";import{i as h}from"./p-c53241bf.js";import{p as r}from"./p-9ca28ea7.js";const c="*{margin:0;padding:0;box-sizing:border-box}:host{--crmfont-sizebodymd:14px;--crmline-heightbodymd:20px;--crmletter-spacingtitle-md:0px}.container-message{font-weight:400;line-height:var(--crmline-heightbodymd);letter-spacing:var(--crmletter-spacingtitle-md);text-align:left;text-underline-position:from-font;text-decoration-skip-ink:none}.crm-container-form{display:flex;flex-direction:column;justify-content:space-around;height:auto;padding:20px 24px 20px 24px;border:1px solid #CCCC;writing-mode:horizontal-tb;gap:16px;border-top:1px solid #ccc !important;border-bottom:1px solid #ccc !important}.crm-phone-form{display:flex;flex-direction:column;height:100%;gap:16px}.crm-subtitle{font-size:.875rem;line-height:1.25rem}.crm-title{font-weight:700;line-height:20px;color:#262626;}.crm-message-info{color:#619013;font-weight:500;}.crm-message-error{color:#E11D48;font-weight:500;}";const d=c;const l=class{constructor(i){t(this,i);this.crmBonusService=s.getInstance();this.storeName=undefined;this.cartId=undefined;this.products=undefined;this.customer=undefined;this.loadProducts=undefined;this.loadAll=undefined;this.customStyles=undefined;this.reservedInfo=undefined;this.value=undefined;this.loading=false;this.message=undefined;this.phone=undefined;this.pinInfo=undefined;this.step=o.STEP_RESERVE;this.bonus=undefined;this.sucess="";this.error="";this.config=undefined;this.hasApplyBonus=false}async setStep(t){this.step=t}async processBonus(t=[],i=false){await this.loadProducts();this.sucess="";console.log("processBonus",[]);if(i){this.products=t}const s=localStorage.getItem(e(this.cartId));if(s){const t=JSON.parse(s);this.bonus=t;this.phone=t.phone;this.pinInfo={storeId:t.storeId,userId:t.userId};await this.validateBonus("2018")}}async handleSendPin(t){await this.loadAll();this.message="";if(!t){this.message="Informe seu telefone";return}this.phone=t;this.sendPin()}async componentWillLoad(){this.sucess="";this.error="";this.config=n(this.storeName);const t=this.getPhoneNumberAgain();if(t){this.step=o.STEP_PHONE;return}await this.processBonus()}getPhoneNumberAgain(){const t=localStorage.getItem(e(this.cartId));if(!t)return true;const i=JSON.parse(t);return!i.hasBonus}convertStringToNumber(){const t=this.phone.replace(/\D/g,"");return Number(t)}async sendPin(){var t,i,s;this.loading=true;this.message="";this.sucess="";this.error="";try{const i=this.convertStringToNumber();const s=localStorage.getItem(`bc:${this.phone}`);if(!s){this.pinInfo=await this.crmBonusService.sendPin(i,(t=this.customer)===null||t===void 0?void 0:t.name,this.storeName)}if(s){const t=JSON.parse(s);this.pinInfo={storeId:t.storeId,userId:t.userId};await this.validateBonus("2018");this.step=o.STEP_RESERVE}else{this.step=o.STEP_PIN}}catch(t){this.message=(s=(i=t===null||t===void 0?void 0:t.response)===null||i===void 0?void 0:i.data)===null||s===void 0?void 0:s.message}finally{this.loading=false}}changePhone(){this.sucess="";this.error="";this.step=o.STEP_PHONE}async validateBonus(t){var i,s,n;await this.loadProducts();const h=localStorage.getItem(a);if(h=="dontUse"){this.step=o.STEP_RESERVE;return}this.loading=true;this.sucess="";this.error="";const r={pin:t,cellphone:this.convertStringToNumber(),storeId:this.pinInfo.storeId.toString(),userId:this.pinInfo.userId.toString(),checkoutId:this.cartId,checkoutProducts:this.products,name:(i=this.customer)===null||i===void 0?void 0:i.name,storeName:this.storeName};try{this.bonus=await this.crmBonusService.validatePinBonus(r);if(!this.bonus.hasBonus){localStorage.setItem(e(this.cartId),JSON.stringify(Object.assign(Object.assign({},this.bonus),{phone:this.phone})));this.loading=false;this.step=o.STEP_NO_BONUS;return}this.sucess="Código validado com sucesso!";localStorage.setItem(e(this.cartId),JSON.stringify(Object.assign(Object.assign({},this.bonus),{phone:this.phone})));localStorage.setItem(`bc:${this.phone}`,JSON.stringify(this.bonus));localStorage.setItem(a,"use");localStorage.setItem(this.cartId,this.bonus.bonusBalance.toString());await this.updateMetadata();this.step=o.STEP_RESERVE}catch(t){const i=(n=(s=t===null||t===void 0?void 0:t.response)===null||s===void 0?void 0:s.data)===null||n===void 0?void 0:n.response;if(i&&i.includes("Pin")){this.error="Código inválido!"}else{this.error=i;this.step=o.STEP_NO_BONUS}}finally{this.loading=false}}async updateMetadata(){try{if(!this.reservedInfo.isBonusProcessed)return;if(this.reservedInfo.isExpired()){console.log("[CRM:updateMetadata]");await r(this.storeName,this.cartId,{createdAt:Date.now(),url:window.location.href});localStorage.removeItem("bc:time")}}catch(t){console.error("[CRMBONUS:updateMetadata]: ",t)}}handleCancel(){this.cancel()}async cancel(){this.message="";this.loading=true;try{await this.crmBonusService.cancel(this.cartId);localStorage.setItem(a,"dontUse");this.save(0);await this.updateMetadata()}catch(t){this.message="Não consegui cancelar o bônus, tente novamente!"}finally{this.loading=false}}async reserveApply(t){this.loading=true;this.message="";try{await this.reserve(t);this.save(t)}catch(t){this.message="ocorreu um error ao solicitar a aplicação do bonus! tente novamente";this.step=o.STEP_NO_BONUS;localStorage.removeItem(this.cartId)}finally{this.loading=false}}save(t){localStorage.setItem(this.cartId,t.toString())}async reserve(t){await this.crmBonusService.reserve({redeemedBonus:t,cartId:this.cartId,ticket:this.cartId,grossValue:Number(this.bonus.totalValue),storeName:this.storeName,storeId:this.bonus.storeId.toString(),userId:this.bonus.userId})}render(){console.log("cartId",this.cartId);return i("div",{key:"9bf7b12fff0d3a546ec65ad23a5d427f50f889b0",class:"crm-container-form fbits-responsive-carrinho-desconto",style:this.customStyles},i("label",{key:"4f85edd446d41922947687f91de10eae6c575ac2",class:"crm-title"},this.config.giftbackTitle),this.step===o.STEP_PHONE&&i("phone-form",{key:"60bd8e8268061b113d8c07680276dcac8f2dc57f",value:this.customer.phone,config:this.config,loading:this.loading,handlerSubmit:t=>this.handleSendPin(t)}),this.step===o.STEP_PIN&&i("pin-form",{key:"2cafec0da8d445eb9fddaff2a6bb03b62d956ab3",config:this.config,phone:this.phone,cancel:()=>this.changePhone(),resend:()=>this.sendPin(),validate:t=>this.validateBonus(t),loading:this.loading},this.sucess&&i("p",{key:"7a45765d3c7cf2009858b330ddaa4749de4238a6",class:"crm-message-info"},this.sucess),this.error&&i("p",{key:"2c5fdc1a7c8737b69f0f6d2d253a114089c6be60",class:"crm-message-error"},this.error)),this.step===o.STEP_RESERVE&&i("giftback-info",{key:"409d87bbbd48b510d18c2c85f99514a4a4a026f4",storeName:this.storeName,infoBonus:this.reservedInfo,config:this.config,loading:this.loading,cancel:()=>this.handleCancel(),bonus:this.bonus,reserve:()=>this.processBonus(),cartId:this.cartId}),this.step===o.STEP_NO_BONUS&&i("div",{key:"7d31c5b48add98eef78aee93d352067b4ca28302",class:"container-message"},h.t("noGiftback",{storename:this.config.giftbackTitle})))}};l.style=d;const f=".loading-container{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.5);display:flex;justify-content:center;align-items:center;z-index:1000;}.loading-spinner{width:50px;height:50px;border:5px solid rgba(255, 255, 255, 0.3);border-top:5px solid white;border-radius:50%;animation:spin 1s linear infinite;}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.relative-xy{position:relative}";const u=f;const m=class{constructor(i){t(this,i);this.loading=true}render(){return i("div",{key:"679060e14b019ddb99823cb9b49c251bc0d2e1f1",class:"relative-xy"},this.loading&&i("div",{key:"cc10e466321732aae1cbf9ad321176f86fc60471",class:"loading-container"},i("div",{key:"ab1aa3a08cf62c0a631204810c35631bdc3efef0",class:"loading-spinner"})),i("slot",{key:"84e00dbb82a035c847dc5e0c0e3018f49cbdfdc0"}))}};m.style=u;export{l as crm_giftback_form,m as loading_container};
2
- //# sourceMappingURL=p-ed22d88f.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["giftbackFormCss","CrmGiftbackFormStyle0","CrmBonus","this","crmBonusService","CrmBonusService","getInstance","StepFormEnum","STEP_RESERVE","setStep","step","processBonus","products","hasNewProduct","loadProducts","sucess","console","log","_bonus","localStorage","getItem","getKeyReserveByCartId","cartId","bonus","JSON","parse","phone","pinInfo","storeId","userId","validateBonus","handleSendPin","loadAll","message","sendPin","componentWillLoad","error","config","getInfoCustomization","storeName","phoneAgain","getPhoneNumberAgain","STEP_PHONE","consulta_bonus","hasBonus","convertStringToNumber","_phone","replace","Number","loading","pinInfoCache","_a","customer","name","STEP_PIN","_c","_b","response","data","changePhone","pin","used_or_no","USED_KEY","payload","cellphone","toString","checkoutId","checkoutProducts","validatePinBonus","setItem","stringify","Object","assign","STEP_NO_BONUS","bonusBalance","updateMetadata","_error","includes","reservedInfo","isBonusProcessed","isExpired","persisteMetadata","createdAt","Date","now","url","window","location","href","removeItem","handleCancel","cancel","save","reserveApply","amount","reserve","redeemedBonus","ticket","grossValue","totalValue","render","h","key","class","style","customStyles","giftbackTitle","value","handlerSubmit","resend","validate","infoBonus","i18next","t","storename","loadingContainerCss","LoadingContainerStyle0","LoadingContainer"],"sources":["src/components/giftback-form/giftback-form.css?tag=crm-giftback-form","src/components/giftback-form/giftback-form.tsx","src/components/loading-container/loading-container.css?tag=loading-container","src/components/loading-container/loading-container.tsx"],"sourcesContent":["* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n:host {\n --crmfont-sizebodymd: 14px;\n --crmline-heightbodymd: 20px;\n --crmletter-spacingtitle-md: 0px\n}\n\n.container-message {\n /* font-size: var(--crmfont-sizebodymd); */\n font-weight: 400;\n line-height: var(--crmline-heightbodymd);\n letter-spacing: var(--crmletter-spacingtitle-md);\n text-align: left;\n text-underline-position: from-font;\n text-decoration-skip-ink: none;\n}\n\n.crm-container-form {\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n height: auto;\n padding: 20px 24px 20px 24px;\n border: 1px solid #CCCC;\n writing-mode: horizontal-tb;\n gap: 16px;\n border-top: 1px solid #ccc !important;\n border-bottom: 1px solid #ccc !important;\n}\n\n/* .fbits-responsive-carrinho-desconto {\n overflow: hidden;\n border: 1px solid #ccc;\n border-top: 0;\n border-bottom: 0;\n} */\n\n.crm-phone-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n /* justify-content: space-around; */\n gap: 16px;\n}\n\n.crm-subtitle {\n /* font-size: 14px; */\n font-size: .875rem;\n line-height: 1.25rem;\n \n}\n\n.crm-title {\n font-weight: 700;\n line-height: 20px;\n color: #262626;\n /* font-size: 16px; */\n}\n\n.crm-message-info {\n color: #619013;\n font-weight: 500;\n /* font-size: 12px; */\n}\n\n.crm-message-error {\n color: #E11D48;\n font-weight: 500;\n /* font-size: 12px; */\n}","import { Component, Method, Prop, State, h } from \"@stencil/core\";\nimport { CrmBonusService } from \"../../services/crmbonus.service\";\nimport { StepFormEnum } from \"../../contants\";\nimport { IPinSent } from '../../dto/pin.sent'\nimport { IBonus, ICustomer, IProccesPinBonusDto, IProduct } from \"../../dto/validate.pin.bonus\";\nimport { IInfoStore, getInfoCustomization } from \"../../helpers/info.config.helper\";\n\nimport i18next from \"../../i18n/i18n\"\nimport { USED_KEY, getKeyReserveByCartId } from \"../../utils/keys.storage\";\nimport { persisteMetadata } from \"../../helpers/cart.helper\";\nimport { ReservedInfoDTO } from \"../../dto/reserved-info.dto\";\n\n@Component({\n tag: 'crm-giftback-form',\n styleUrl: 'giftback-form.css',\n shadow: false\n})\nexport class CrmBonus {\n // private phoneInputMask: HTMLPhoneFormElement;\n\n private crmBonusService: CrmBonusService = CrmBonusService.getInstance();\n\n @Prop({ attribute: 'storename' }) storeName;\n @Prop() cartId;\n @Prop() products: Array<IProduct>;\n @Prop() customer: ICustomer;\n @Prop() loadProducts: () => void;\n @Prop() loadAll: () => void;\n\n @Prop() customStyles;\n @Prop() reservedInfo: ReservedInfoDTO;\n\n @State() value: string;\n @State() loading: boolean = false;\n @State() message: string;\n @State() phone: string;\n @State() pinInfo: IPinSent;\n @State() step: StepFormEnum = StepFormEnum.STEP_RESERVE;\n @State() bonus: IBonus;\n\n @State() sucess: string = \"\";\n @State() error: string = \"\";\n @State() config: IInfoStore;\n @State() hasApplyBonus = false;\n\n @Method()\n async setStep(step: StepFormEnum) {\n this.step = step\n }\n\n @Method()\n async processBonus(products: IProduct[] = [], hasNewProduct = false) {\n await this.loadProducts();\n this.sucess = \"\";\n\n console.log('processBonus', [])\n if (hasNewProduct) {\n this.products = products;\n }\n\n const _bonus = localStorage.getItem(getKeyReserveByCartId(this.cartId));\n\n if (_bonus) {\n\n const bonus = JSON.parse(_bonus)\n\n this.bonus = bonus;\n\n this.phone = bonus.phone;\n this.pinInfo = {\n storeId: bonus.storeId,\n userId: bonus.userId\n }\n\n \n\n await this.validateBonus(\"2018\");\n //this.step = StepFormEnum.STEP_RESERVE;\n\n }\n }\n\n async handleSendPin(phone: string) {\n await this.loadAll()\n this.message = \"\"\n if (!phone) {\n this.message = \"Informe seu telefone\";\n return;\n }\n\n this.phone = phone;\n\n this.sendPin();\n }\n\n async componentWillLoad() {\n this.sucess = \"\";\n this.error = \"\"\n this.config = getInfoCustomization(this.storeName);\n\n const phoneAgain = this.getPhoneNumberAgain();\n\n if (phoneAgain) {\n this.step = StepFormEnum.STEP_PHONE;\n return\n }\n\n await this.processBonus();\n\n }\n\n getPhoneNumberAgain() {\n const consulta_bonus = localStorage.getItem(getKeyReserveByCartId(this.cartId));\n\n if (!consulta_bonus) return true;\n\n const bonus = JSON.parse(consulta_bonus);\n\n return !bonus.hasBonus;\n }\n\n private convertStringToNumber(): number {\n const _phone = this.phone.replace(/\\D/g, '');\n return Number(_phone);\n }\n\n public async sendPin() {\n this.loading = true;\n this.message = \"\";\n this.sucess = \"\";\n this.error = \"\"\n\n try {\n\n const _phone = this.convertStringToNumber();\n const pinInfoCache = localStorage.getItem(`bc:${this.phone}`);\n\n if (!pinInfoCache) {\n this.pinInfo = await this.crmBonusService.sendPin(_phone, this.customer?.name, this.storeName);\n }\n\n if (pinInfoCache) {\n\n const bonus = JSON.parse(pinInfoCache);\n\n this.pinInfo = {\n storeId: bonus.storeId,\n userId: bonus.userId\n }\n\n await this.validateBonus(\"2018\");\n this.step = StepFormEnum.STEP_RESERVE;\n } else {\n this.step = StepFormEnum.STEP_PIN;\n }\n\n } catch (error) {\n this.message = error?.response?.data?.message\n } finally {\n this.loading = false\n }\n }\n\n changePhone() {\n this.sucess = \"\";\n this.error = \"\"\n this.step = StepFormEnum.STEP_PHONE;\n }\n\n public async validateBonus(pin: string) {\n\n await this.loadProducts();\n\n const used_or_no = localStorage.getItem(USED_KEY);\n\n if (used_or_no == \"dontUse\") {\n this.step = StepFormEnum.STEP_RESERVE;\n return\n }\n\n this.loading = true;\n this.sucess = \"\";\n this.error = \"\";\n const payload: IProccesPinBonusDto = {\n pin: pin,\n cellphone: this.convertStringToNumber(),\n storeId: this.pinInfo.storeId.toString(),\n userId: this.pinInfo.userId.toString(),\n checkoutId: this.cartId,\n checkoutProducts: this.products,\n name: this.customer?.name,\n storeName: this.storeName\n }\n\n try {\n this.bonus = await this.crmBonusService.validatePinBonus(payload);\n\n if (!this.bonus.hasBonus) {\n\n localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify({ ...this.bonus, phone: this.phone }));\n\n this.loading = false;\n this.step = StepFormEnum.STEP_NO_BONUS;\n return\n }\n\n this.sucess = \"Código validado com sucesso!\";\n localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify({ ...this.bonus, phone: this.phone }));\n localStorage.setItem(`bc:${this.phone}`, JSON.stringify(this.bonus));\n\n localStorage.setItem(USED_KEY, \"use\");\n localStorage.setItem(this.cartId, this.bonus.bonusBalance.toString());\n\n await this.updateMetadata();\n\n this.step = StepFormEnum.STEP_RESERVE;\n\n } catch (error) {\n const _error: string = error?.response?.data?.response;\n\n if (_error && _error.includes(\"Pin\")) {\n this.error = \"Código inválido!\"\n } else {\n this.error = _error;\n this.step = StepFormEnum.STEP_NO_BONUS;\n }\n } finally {\n this.loading = false;\n }\n }\n\n private async updateMetadata() {\n try {\n\n if(!this.reservedInfo.isBonusProcessed) return;\n\n if (this.reservedInfo.isExpired()) {\n console.log('[CRM:updateMetadata]')\n await persisteMetadata(this.storeName, this.cartId, {\n createdAt: Date.now(),\n url: window.location.href\n });\n\n localStorage.removeItem(\"bc:time\");\n }\n } catch (error) {\n console.error('[CRMBONUS:updateMetadata]: ', error);\n }\n }\n\n public handleCancel() {\n // this.step = StepFormEnum.STEP_PHONE;\n this.cancel()\n }\n\n async cancel() {\n this.message = \"\";\n this.loading = true;\n try {\n await this.crmBonusService.cancel(this.cartId);\n\n localStorage.setItem(USED_KEY, \"dontUse\");\n this.save(0)\n await this.updateMetadata();\n } catch (error) {\n this.message = \"Não consegui cancelar o bônus, tente novamente!\"\n } finally {\n this.loading = false;\n }\n }\n\n public async reserveApply(amount: number) {\n this.loading = true;\n this.message = \"\";\n try {\n await this.reserve(amount);\n this.save(amount);\n\n } catch (error) {\n this.message = \"ocorreu um error ao solicitar a aplicação do bonus! tente novamente\"\n\n this.step = StepFormEnum.STEP_NO_BONUS;\n localStorage.removeItem(this.cartId);\n } finally {\n this.loading = false;\n }\n }\n\n save(amount: number) {\n localStorage.setItem(this.cartId, amount.toString());\n }\n\n public async reserve(amount: number) {\n\n await this.crmBonusService.reserve({\n redeemedBonus: amount,\n cartId: this.cartId,\n ticket: this.cartId,\n grossValue: Number(this.bonus.totalValue),\n storeName: this.storeName,\n storeId: this.bonus.storeId.toString(),\n userId: this.bonus.userId\n });\n }\n\n render() {\n console.log(\"cartId\", this.cartId)\n return (\n <div class=\"crm-container-form fbits-responsive-carrinho-desconto\" style={this.customStyles} >\n\n {/* <loading-container /> */}\n\n <label class=\"crm-title\">{this.config.giftbackTitle}</label>\n\n {this.step === StepFormEnum.STEP_PHONE &&\n <phone-form\n value={this.customer.phone}\n config={this.config}\n loading={this.loading}\n handlerSubmit={(phone) => this.handleSendPin(phone)}\n />}\n {\n this.step === StepFormEnum.STEP_PIN &&\n <pin-form\n config={this.config}\n phone={this.phone}\n cancel={() => this.changePhone()}\n resend={() => this.sendPin()}\n validate={(data) => this.validateBonus(data)}\n loading={this.loading}\n >\n {this.sucess && <p class=\"crm-message-info\">{this.sucess}</p>}\n {this.error && <p class=\"crm-message-error\">{this.error}</p>}\n\n </pin-form>\n }\n\n {\n this.step === StepFormEnum.STEP_RESERVE &&\n <giftback-info\n storeName={this.storeName}\n infoBonus={this.reservedInfo}\n config={this.config}\n loading={this.loading}\n cancel={() => this.handleCancel()}\n bonus={this.bonus}\n reserve={() => this.processBonus()}\n cartId={this.cartId}\n />\n }\n\n {\n this.step === StepFormEnum.STEP_NO_BONUS &&\n (\n <div class=\"container-message\">\n {i18next.t(\"noGiftback\", { storename: this.config.giftbackTitle })}\n </div>\n )\n\n }\n </div>\n )\n }\n}","/* Estilo para centralizar o container do loading */\n.loading-container {\n position: absolute;\n /* Fixa o loading na tela */\n top: 0;\n left: 0;\n width: 100%;\n /* Tamanho total da tela */\n height: 100%;\n background-color: rgba(0, 0, 0, 0.5);\n /* Fundo semitransparente */\n display: flex;\n /* Centraliza o conteúdo */\n justify-content: center;\n align-items: center;\n z-index: 1000;\n /* Coloca o loading acima de outros elementos */\n}\n\n/* Estilo do spinner (círculo giratório) */\n.loading-spinner {\n width: 50px;\n height: 50px;\n border: 5px solid rgba(255, 255, 255, 0.3);\n /* Borda semitransparente */\n border-top: 5px solid white;\n /* Borda que será animada */\n border-radius: 50%;\n /* Faz o círculo */\n animation: spin 1s linear infinite;\n /* Gira continuamente */\n}\n\n/* Keyframes para a animação de rotação */\n@keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.relative-xy {\n position: relative;\n}","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\n render() {\n return (\n <div class=\"relative-xy\">\n {\n this.loading && (\n <div class=\"loading-container\">\n <div class=\"loading-spinner\">\n\n </div>\n \n </div>\n )\n }\n <slot></slot>\n </div>\n )\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"file":"cart.helper-c6fd0b36.js","mappings":"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","names":[],"sources":["src/objectvalues/cart.wake.ts","src/dto/reserved-info.dto.ts","src/helpers/cart.helper.ts"],"sourcesContent":["import { IProductWake, IStore, IUser } from \"../dto/validate.pin.bonus\";\n\nexport class CartWake {\n id: string;\n middlewareId: string;\n orderId: number;\n products: IProductWake[] = [];\n user: IUser;\n store: IStore;\n\n constructor(cart) {\n this.id = cart.Metadados.id || cart.Id;\n this.middlewareId = cart.Metadados?.id;\n this.orderId = cart.PedidoId;\n this.buildUserInfo(cart);\n this.buildStoreInfo(cart);\n this.products = this.buildStoreCart( cart.Produtos);\n }\n\n private buildStoreCart(newProducts = []) {\n const cache = localStorage.getItem(\"bc:cart\");\n\n if(!cache) {\n return this.saveStore(newProducts)\n \n }\n \n const cacheProducts:IProductWake[] = JSON.parse(cache);\n\n if(newProducts.length !== cacheProducts.length) {\n return this.saveStore(newProducts);\n }\n\n for (const p of newProducts) {\n const [cp] = cacheProducts.filter(cpp => cpp.ProdutoVarianteId == p.ProdutoVarianteId);\n\n if(cp) {\n cp.Quantidade != p.Quantidade;\n\n return newProducts;\n }\n }\n\n return cacheProducts;\n\n }\n\n\n private saveStore(newProducts) {\n localStorage.setItem(\"bc:cart\", JSON.stringify(newProducts));\n\n return newProducts;\n }\n\n private buildUserInfo(cart) {\n this.user = {\n id: cart.Usuario ? cart.Usuario.Id : null\n }\n }\n\n private buildStoreInfo(cart) {\n this.store = {\n name: cart.Loja?.Nome\n }\n }\n}","export class ReservedInfoDTO {\n bonusBalance: string;\n bonusIds: string;\n calculatedValue: string;\n cartId: string;\n metadata: {\n url: string,\n createdAt: number\n }\n orderId: string;\n status: number;\n totalDiscount: string;\n totalValue: string;\n isBonusProcessed?: boolean;\n\n\n public static of(payload: any) {\n const info = new ReservedInfoDTO();\n info.bonusBalance = payload.bonusBalance;\n info.bonusIds = payload.bonusIds;\n info.calculatedValue = payload.calculatedValue;\n info.cartId = payload.cartId;\n info.metadata = payload.metadata;\n info.orderId = payload.orderId;\n info.status = payload.status;\n info.totalDiscount = payload.totalDiscount;\n info.totalValue = payload.totalValue;\n info.isBonusProcessed = payload.isBonusProcessed;\n return info;\n }\n\n public isExpired(): boolean {\n const createdAt = this?.metadata?.createdAt;\n if(!createdAt) return true; \n \n const current = Date.now();\n\n const diffms = current - createdAt;\n\n const diffMinutes = diffms / (1000 * 60);\n\n console.log('diffMinutes', diffMinutes);\n\n return diffMinutes > 6;\n\n }\n\n}","import { CHECKOUT_CART_WAKE } from \"../../env\";\nimport { CartWake } from \"../objectvalues/cart.wake\";\nimport { CrmBonusService } from \"../services/crmbonus.service\";\nimport { ReservedInfoDTO } from '../dto/reserved-info.dto'\n\nconst crmBonusService: CrmBonusService = CrmBonusService.getInstance();\n\nexport const getCart = async (): Promise<CartWake> => {\n const baseUrl = buildUrlBase(); // window.location.origin; //\"https://bycoders.fbits.store\" //window.location.origin;\n \n console.log('[URL STORE]: ', baseUrl)\n\n const cart = await crmBonusService.getInfoCart(baseUrl);\n\n return new CartWake(cart);\n}\n\nexport const getInfoBonusByCartIdAndStoreName = async (cartId, storeName) => {\n const info = await crmBonusService.getInfoBonus(cartId, storeName)\n\n return ReservedInfoDTO.of(info);\n}\n\nexport const persisteMetadata = async (storeName: string, cartId: string, metadata = {}) => {\n await crmBonusService.patchInfoBonus({\n storeName,\n cartId,\n metadata\n })\n}\n\nconst buildUrlBase = () => {\n\n const url = window.location.origin; //\"https://bycoders.checkout.fbits.store\" //\n\n if(url.includes('localhost')) {\n return CHECKOUT_CART_WAKE;\n }\n\n if(url.includes('checkout')) {\n return url;\n }\n\n if(url.includes('fbits')) {\n return url;\n }\n\n if(url.includes(\"www.\")) {\n return url.replace(\"www\", \"checkout\")\n }\n\n return `${window.location.protocol}//checkout.${window.location.host}`;\n\n}"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"countdown-timer.entry.js","mappings":";;MAKa,cAAc;;;;;uBAIG,CAAC;wBACA,EAAE;;;IAM7B,iBAAiB;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAEtD,IAAI,YAAY,IAAI,UAAU,EAAE;YAC5B,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;SAC1B;aAAM;YACH,IAAI,CAAC,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC;YAC/C,IAAI,CAAC,cAAc,EAAE,CAAC;SACzB;KACJ;IAED,oBAAoB;QAChB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAClC;IAED,cAAc;QACV,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;YAC1B,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC;YAC3B,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,EAAE;gBACzB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;gBACvB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/B,IAAI,CAAC,eAAe,EAAE,CAAC;aAC1B;SACJ,EAAE,IAAI,CAAC,CAAC;KACZ;IAED,eAAe;QACX,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAA;KAClB;IAED,MAAM;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAElG,QACI,qEAAS,cAAc,CAAS,EAClC;KACL;;;;;","names":[],"sources":["src/components/countdown-timer/countdown-timer.tsx"],"sourcesContent":["import { Component, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'countdown-timer',\n})\nexport class CountdownTimer {\n\n @Prop() downtime: () => void;\n @Prop() dataCriacao: string;\n @Prop() minutos: number = 6;\n @Prop() segundos: number = 60;\n\n @State() tempoRestante: number; // em milissegundos\n\n private intervalId: any;\n\n componentWillLoad() {\n const tempoTotal = this.minutos * this.segundos * 1000;\n const data = new Date(this.dataCriacao);\n const agora = new Date();\n const tempoPassado = agora.getTime() - data.getTime();\n\n if (tempoPassado >= tempoTotal) {\n this.tempoRestante = 0;\n this.onTempoEsgotado();\n } else {\n this.tempoRestante = tempoTotal - tempoPassado;\n this.startCountdown();\n }\n }\n\n disconnectedCallback() {\n clearInterval(this.intervalId);\n }\n\n startCountdown() {\n this.intervalId = setInterval(() => {\n this.tempoRestante -= 1000;\n if (this.tempoRestante <= 0) {\n this.tempoRestante = 0;\n clearInterval(this.intervalId);\n this.onTempoEsgotado();\n }\n }, 1000);\n }\n\n onTempoEsgotado() {\n console.log('Tempo esgotado! Executando ação...');\n this.downtime()\n }\n\n render() {\n const minutos = Math.floor(this.tempoRestante / 60000);\n const segundos = Math.floor((this.tempoRestante % 60000) / 1000);\n const tempoFormatado = `${String(minutos).padStart(2, '0')}:${String(segundos).padStart(2, '0')}`;\n\n return (\n <label> {tempoFormatado}</label>\n );\n }\n}\n"],"version":3}
@@ -1,21 +0,0 @@
1
- import { r as registerInstance, h } from './index-bdb70d5a.js';
2
-
3
- const crmButtonCss = "input,button{margin:0;padding:10px;}.crm-contaner-button{height:auto;width:auto}.crm-button{height:48px;width:100%;border:1px solid #000;padding:14px 20px;background-color:#000;color:#fff;line-height:20px;font-weight:500;cursor:pointer}";
4
- const CrmButtonStyle0 = crmButtonCss;
5
-
6
- const Button = class {
7
- constructor(hostRef) {
8
- registerInstance(this, hostRef);
9
- this.txtBtn = undefined;
10
- this.loading = undefined;
11
- this.handleClick = undefined;
12
- }
13
- render() {
14
- return (h("div", { key: '6fce890879cd807d0893166b22de304739e6dcd7', class: "crm-contaner-button" }, h("button", { key: '843f7745bf183fb7ad88e70a60f25ac462de4e84', class: "crm-button", onClick: () => this.handleClick() }, !this.loading ? this.txtBtn : h("loading-spinner", { size: "15px", color: "#fff" }))));
15
- }
16
- };
17
- Button.style = CrmButtonStyle0;
18
-
19
- export { Button as crm_button };
20
-
21
- //# sourceMappingURL=crm-button.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"crm-button.entry.js","mappings":";;AAAA,MAAM,YAAY,GAAG,8OAA8O,CAAC;AACpQ,wBAAe,YAAY;;MCKd,MAAM;;;;;;;IAOf,MAAM;QACF,QACI,4DAAK,KAAK,EAAC,qBAAqB,IAC5B,+DAAQ,KAAK,EAAC,YAAY,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEpD,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,uBAAiB,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,GAAG,CAEzE,CACP,EACT;KACJ;;;;;;","names":[],"sources":["src/components/button/crm-button.css?tag=crm-button","src/components/button/index.tsx"],"sourcesContent":["input, button {\n margin: 0;\n padding: 10px; /* Ajuste o valor conforme necessário */\n}\n\n.crm-contaner-button {\n height: auto;\n width: auto;\n}\n\n.crm-button {\n height: 48px;\n width: 100%;\n border: 1px solid #000;\n padding: 14px 20px;\n background-color: #000;\n color: #fff;\n /* font-size: 14px; */\n line-height: 20px;\n font-weight: 500;\n cursor: pointer;\n}","import { Component, Prop, h } from \"@stencil/core\";\n\n@Component({\n tag: 'crm-button',\n styleUrl: 'crm-button.css'\n})\nexport class Button {\n\n @Prop() txtBtn: string;\n @Prop() loading: boolean;\n\n @Prop() handleClick: () => void;\n\n render() {\n return (\n <div class=\"crm-contaner-button\">\n <button class=\"crm-button\" onClick={() => this.handleClick()}>\n {\n !this.loading ? this.txtBtn : <loading-spinner size=\"15px\" color=\"#fff\" />\n }\n </button>\n </div>\n )\n }\n}"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"crm-giftback-form.loading-container.entry.js","mappings":"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","names":["i18next"],"sources":["src/components/giftback-form/giftback-form.css?tag=crm-giftback-form","src/components/giftback-form/giftback-form.tsx","src/components/loading-container/loading-container.css?tag=loading-container","src/components/loading-container/loading-container.tsx"],"sourcesContent":["* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n:host {\n --crmfont-sizebodymd: 14px;\n --crmline-heightbodymd: 20px;\n --crmletter-spacingtitle-md: 0px\n}\n\n.container-message {\n /* font-size: var(--crmfont-sizebodymd); */\n font-weight: 400;\n line-height: var(--crmline-heightbodymd);\n letter-spacing: var(--crmletter-spacingtitle-md);\n text-align: left;\n text-underline-position: from-font;\n text-decoration-skip-ink: none;\n}\n\n.crm-container-form {\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n height: auto;\n padding: 20px 24px 20px 24px;\n border: 1px solid #CCCC;\n writing-mode: horizontal-tb;\n gap: 16px;\n border-top: 1px solid #ccc !important;\n border-bottom: 1px solid #ccc !important;\n}\n\n/* .fbits-responsive-carrinho-desconto {\n overflow: hidden;\n border: 1px solid #ccc;\n border-top: 0;\n border-bottom: 0;\n} */\n\n.crm-phone-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n /* justify-content: space-around; */\n gap: 16px;\n}\n\n.crm-subtitle {\n /* font-size: 14px; */\n font-size: .875rem;\n line-height: 1.25rem;\n \n}\n\n.crm-title {\n font-weight: 700;\n line-height: 20px;\n color: #262626;\n /* font-size: 16px; */\n}\n\n.crm-message-info {\n color: #619013;\n font-weight: 500;\n /* font-size: 12px; */\n}\n\n.crm-message-error {\n color: #E11D48;\n font-weight: 500;\n /* font-size: 12px; */\n}","import { Component, Method, Prop, State, h } from \"@stencil/core\";\nimport { CrmBonusService } from \"../../services/crmbonus.service\";\nimport { StepFormEnum } from \"../../contants\";\nimport { IPinSent } from '../../dto/pin.sent'\nimport { IBonus, ICustomer, IProccesPinBonusDto, IProduct } from \"../../dto/validate.pin.bonus\";\nimport { IInfoStore, getInfoCustomization } from \"../../helpers/info.config.helper\";\n\nimport i18next from \"../../i18n/i18n\"\nimport { USED_KEY, getKeyReserveByCartId } from \"../../utils/keys.storage\";\nimport { persisteMetadata } from \"../../helpers/cart.helper\";\nimport { ReservedInfoDTO } from \"../../dto/reserved-info.dto\";\n\n@Component({\n tag: 'crm-giftback-form',\n styleUrl: 'giftback-form.css',\n shadow: false\n})\nexport class CrmBonus {\n // private phoneInputMask: HTMLPhoneFormElement;\n\n private crmBonusService: CrmBonusService = CrmBonusService.getInstance();\n\n @Prop({ attribute: 'storename' }) storeName;\n @Prop() cartId;\n @Prop() products: Array<IProduct>;\n @Prop() customer: ICustomer;\n @Prop() loadProducts: () => void;\n @Prop() loadAll: () => void;\n\n @Prop() customStyles;\n @Prop() reservedInfo: ReservedInfoDTO;\n\n @State() value: string;\n @State() loading: boolean = false;\n @State() message: string;\n @State() phone: string;\n @State() pinInfo: IPinSent;\n @State() step: StepFormEnum = StepFormEnum.STEP_RESERVE;\n @State() bonus: IBonus;\n\n @State() sucess: string = \"\";\n @State() error: string = \"\";\n @State() config: IInfoStore;\n @State() hasApplyBonus = false;\n\n @Method()\n async setStep(step: StepFormEnum) {\n this.step = step\n }\n\n @Method()\n async processBonus(products: IProduct[] = [], hasNewProduct = false) {\n await this.loadProducts();\n this.sucess = \"\";\n\n console.log('processBonus', [])\n if (hasNewProduct) {\n this.products = products;\n }\n\n const _bonus = localStorage.getItem(getKeyReserveByCartId(this.cartId));\n\n if (_bonus) {\n\n const bonus = JSON.parse(_bonus)\n\n this.bonus = bonus;\n\n this.phone = bonus.phone;\n this.pinInfo = {\n storeId: bonus.storeId,\n userId: bonus.userId\n }\n\n \n\n await this.validateBonus(\"2018\");\n //this.step = StepFormEnum.STEP_RESERVE;\n\n }\n }\n\n async handleSendPin(phone: string) {\n await this.loadAll()\n this.message = \"\"\n if (!phone) {\n this.message = \"Informe seu telefone\";\n return;\n }\n\n this.phone = phone;\n\n this.sendPin();\n }\n\n async componentWillLoad() {\n this.sucess = \"\";\n this.error = \"\"\n this.config = getInfoCustomization(this.storeName);\n\n const phoneAgain = this.getPhoneNumberAgain();\n\n if (phoneAgain) {\n this.step = StepFormEnum.STEP_PHONE;\n return\n }\n\n await this.processBonus();\n\n }\n\n getPhoneNumberAgain() {\n const consulta_bonus = localStorage.getItem(getKeyReserveByCartId(this.cartId));\n\n if (!consulta_bonus) return true;\n\n const bonus = JSON.parse(consulta_bonus);\n\n return !bonus.hasBonus;\n }\n\n private convertStringToNumber(): number {\n const _phone = this.phone.replace(/\\D/g, '');\n return Number(_phone);\n }\n\n public async sendPin() {\n this.loading = true;\n this.message = \"\";\n this.sucess = \"\";\n this.error = \"\"\n\n try {\n\n const _phone = this.convertStringToNumber();\n const pinInfoCache = localStorage.getItem(`bc:${this.phone}`);\n\n if (!pinInfoCache) {\n this.pinInfo = await this.crmBonusService.sendPin(_phone, this.customer?.name, this.storeName);\n }\n\n if (pinInfoCache) {\n\n const bonus = JSON.parse(pinInfoCache);\n\n this.pinInfo = {\n storeId: bonus.storeId,\n userId: bonus.userId\n }\n\n await this.validateBonus(\"2018\");\n this.step = StepFormEnum.STEP_RESERVE;\n } else {\n this.step = StepFormEnum.STEP_PIN;\n }\n\n } catch (error) {\n this.message = error?.response?.data?.message\n } finally {\n this.loading = false\n }\n }\n\n changePhone() {\n this.sucess = \"\";\n this.error = \"\"\n this.step = StepFormEnum.STEP_PHONE;\n }\n\n public async validateBonus(pin: string) {\n\n await this.loadProducts();\n\n const used_or_no = localStorage.getItem(USED_KEY);\n\n if (used_or_no == \"dontUse\") {\n this.step = StepFormEnum.STEP_RESERVE;\n return\n }\n\n this.loading = true;\n this.sucess = \"\";\n this.error = \"\";\n const payload: IProccesPinBonusDto = {\n pin: pin,\n cellphone: this.convertStringToNumber(),\n storeId: this.pinInfo.storeId.toString(),\n userId: this.pinInfo.userId.toString(),\n checkoutId: this.cartId,\n checkoutProducts: this.products,\n name: this.customer?.name,\n storeName: this.storeName\n }\n\n try {\n this.bonus = await this.crmBonusService.validatePinBonus(payload);\n\n if (!this.bonus.hasBonus) {\n\n localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify({ ...this.bonus, phone: this.phone }));\n\n this.loading = false;\n this.step = StepFormEnum.STEP_NO_BONUS;\n return\n }\n\n this.sucess = \"Código validado com sucesso!\";\n localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify({ ...this.bonus, phone: this.phone }));\n localStorage.setItem(`bc:${this.phone}`, JSON.stringify(this.bonus));\n\n localStorage.setItem(USED_KEY, \"use\");\n localStorage.setItem(this.cartId, this.bonus.bonusBalance.toString());\n\n await this.updateMetadata();\n\n this.step = StepFormEnum.STEP_RESERVE;\n\n } catch (error) {\n const _error: string = error?.response?.data?.response;\n\n if (_error && _error.includes(\"Pin\")) {\n this.error = \"Código inválido!\"\n } else {\n this.error = _error;\n this.step = StepFormEnum.STEP_NO_BONUS;\n }\n } finally {\n this.loading = false;\n }\n }\n\n private async updateMetadata() {\n try {\n\n if(!this.reservedInfo.isBonusProcessed) return;\n\n if (this.reservedInfo.isExpired()) {\n console.log('[CRM:updateMetadata]')\n await persisteMetadata(this.storeName, this.cartId, {\n createdAt: Date.now(),\n url: window.location.href\n });\n\n localStorage.removeItem(\"bc:time\");\n }\n } catch (error) {\n console.error('[CRMBONUS:updateMetadata]: ', error);\n }\n }\n\n public handleCancel() {\n // this.step = StepFormEnum.STEP_PHONE;\n this.cancel()\n }\n\n async cancel() {\n this.message = \"\";\n this.loading = true;\n try {\n await this.crmBonusService.cancel(this.cartId);\n\n localStorage.setItem(USED_KEY, \"dontUse\");\n this.save(0)\n await this.updateMetadata();\n } catch (error) {\n this.message = \"Não consegui cancelar o bônus, tente novamente!\"\n } finally {\n this.loading = false;\n }\n }\n\n public async reserveApply(amount: number) {\n this.loading = true;\n this.message = \"\";\n try {\n await this.reserve(amount);\n this.save(amount);\n\n } catch (error) {\n this.message = \"ocorreu um error ao solicitar a aplicação do bonus! tente novamente\"\n\n this.step = StepFormEnum.STEP_NO_BONUS;\n localStorage.removeItem(this.cartId);\n } finally {\n this.loading = false;\n }\n }\n\n save(amount: number) {\n localStorage.setItem(this.cartId, amount.toString());\n }\n\n public async reserve(amount: number) {\n\n await this.crmBonusService.reserve({\n redeemedBonus: amount,\n cartId: this.cartId,\n ticket: this.cartId,\n grossValue: Number(this.bonus.totalValue),\n storeName: this.storeName,\n storeId: this.bonus.storeId.toString(),\n userId: this.bonus.userId\n });\n }\n\n render() {\n console.log(\"cartId\", this.cartId)\n return (\n <div class=\"crm-container-form fbits-responsive-carrinho-desconto\" style={this.customStyles} >\n\n {/* <loading-container /> */}\n\n <label class=\"crm-title\">{this.config.giftbackTitle}</label>\n\n {this.step === StepFormEnum.STEP_PHONE &&\n <phone-form\n value={this.customer.phone}\n config={this.config}\n loading={this.loading}\n handlerSubmit={(phone) => this.handleSendPin(phone)}\n />}\n {\n this.step === StepFormEnum.STEP_PIN &&\n <pin-form\n config={this.config}\n phone={this.phone}\n cancel={() => this.changePhone()}\n resend={() => this.sendPin()}\n validate={(data) => this.validateBonus(data)}\n loading={this.loading}\n >\n {this.sucess && <p class=\"crm-message-info\">{this.sucess}</p>}\n {this.error && <p class=\"crm-message-error\">{this.error}</p>}\n\n </pin-form>\n }\n\n {\n this.step === StepFormEnum.STEP_RESERVE &&\n <giftback-info\n storeName={this.storeName}\n infoBonus={this.reservedInfo}\n config={this.config}\n loading={this.loading}\n cancel={() => this.handleCancel()}\n bonus={this.bonus}\n reserve={() => this.processBonus()}\n cartId={this.cartId}\n />\n }\n\n {\n this.step === StepFormEnum.STEP_NO_BONUS &&\n (\n <div class=\"container-message\">\n {i18next.t(\"noGiftback\", { storename: this.config.giftbackTitle })}\n </div>\n )\n\n }\n </div>\n )\n }\n}","/* Estilo para centralizar o container do loading */\n.loading-container {\n position: absolute;\n /* Fixa o loading na tela */\n top: 0;\n left: 0;\n width: 100%;\n /* Tamanho total da tela */\n height: 100%;\n background-color: rgba(0, 0, 0, 0.5);\n /* Fundo semitransparente */\n display: flex;\n /* Centraliza o conteúdo */\n justify-content: center;\n align-items: center;\n z-index: 1000;\n /* Coloca o loading acima de outros elementos */\n}\n\n/* Estilo do spinner (círculo giratório) */\n.loading-spinner {\n width: 50px;\n height: 50px;\n border: 5px solid rgba(255, 255, 255, 0.3);\n /* Borda semitransparente */\n border-top: 5px solid white;\n /* Borda que será animada */\n border-radius: 50%;\n /* Faz o círculo */\n animation: spin 1s linear infinite;\n /* Gira continuamente */\n}\n\n/* Keyframes para a animação de rotação */\n@keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.relative-xy {\n position: relative;\n}","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\n render() {\n return (\n <div class=\"relative-xy\">\n {\n this.loading && (\n <div class=\"loading-container\">\n <div class=\"loading-spinner\">\n\n </div>\n \n </div>\n )\n }\n <slot></slot>\n </div>\n )\n }\n}"],"version":3}