crmbonus-component-wake 2.0.97 → 2.0.99

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 (92) hide show
  1. package/dist/cjs/countdown-timer_5.cjs.entry.js +8 -5
  2. package/dist/cjs/countdown-timer_5.cjs.entry.js.map +1 -1
  3. package/dist/cjs/crm-bonus-form.cjs.entry.js +1 -1
  4. package/dist/cjs/crm-bonus.cjs.entry.js +1 -1
  5. package/dist/cjs/crm-giftback-form_2.cjs.entry.js +18 -10
  6. package/dist/cjs/crm-giftback-form_2.cjs.entry.js.map +1 -1
  7. package/dist/cjs/crmbonus-component-wake.cjs.js +1 -1
  8. package/dist/cjs/crmbonus.service-b31b7396.js.map +1 -1
  9. package/dist/cjs/{index-f903012c.js → index-6054ed44.js} +3 -3
  10. package/dist/cjs/index-6054ed44.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/phone-input-mask.cjs.entry.js +1 -1
  14. package/dist/cjs/{utils-666a842d.js → utils-e9413ee3.js} +4 -3
  15. package/dist/cjs/utils-e9413ee3.js.map +1 -0
  16. package/dist/collection/components/giftback-form/giftback-form.js +18 -10
  17. package/dist/collection/components/giftback-form/giftback-form.js.map +1 -1
  18. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js +9 -5
  19. package/dist/collection/components/giftback-form/subcomponents/giftback-info/giftback-info.js.map +1 -1
  20. package/dist/collection/services/crmbonus.service.js.map +1 -1
  21. package/dist/collection/utils/utils.js +3 -2
  22. package/dist/collection/utils/utils.js.map +1 -1
  23. package/dist/components/crm-bonus-form.js +1 -1
  24. package/dist/components/crm-bonus.js +5 -5
  25. package/dist/components/crm-giftback-form.js +1 -1
  26. package/dist/components/giftback-info.js +1 -1
  27. package/dist/components/index.js +1 -1
  28. package/dist/components/{p-cb164cb2.js → p-3c196b20.js} +22 -14
  29. package/dist/components/p-3c196b20.js.map +1 -0
  30. package/dist/components/{p-f0449fc0.js → p-69799798.js} +2 -2
  31. package/dist/components/{p-f0449fc0.js.map → p-69799798.js.map} +1 -1
  32. package/dist/components/{p-24bdfca4.js → p-7cfea8fe.js} +2 -2
  33. package/dist/components/p-7cfea8fe.js.map +1 -0
  34. package/dist/components/{p-f9381072.js → p-a6fefb58.js} +11 -7
  35. package/dist/components/p-a6fefb58.js.map +1 -0
  36. package/dist/components/{p-d3bfac80.js → p-ba369e65.js} +4 -3
  37. package/dist/components/p-ba369e65.js.map +1 -0
  38. package/dist/components/p-c44e2f02.js.map +1 -1
  39. package/dist/components/{p-3dd9a571.js → p-ffa42f74.js} +2 -2
  40. package/dist/components/{p-3dd9a571.js.map → p-ffa42f74.js.map} +1 -1
  41. package/dist/components/phone-cancel-input.js +1 -1
  42. package/dist/components/phone-form.js +1 -1
  43. package/dist/components/phone-input-mask.js +1 -1
  44. package/dist/components/phone-input.js +1 -1
  45. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js +1 -1
  46. package/dist/crmbonus-component-wake/crmbonus-component-wake.esm.js.map +1 -1
  47. package/dist/crmbonus-component-wake/index.esm.js +1 -1
  48. package/dist/crmbonus-component-wake/{p-a5a145b8.entry.js → p-147ba861.entry.js} +2 -2
  49. package/dist/crmbonus-component-wake/p-2833eaeb.entry.js +2 -0
  50. package/dist/crmbonus-component-wake/p-2833eaeb.entry.js.map +1 -0
  51. package/dist/crmbonus-component-wake/{p-e118fc35.entry.js → p-33c1eeca.entry.js} +2 -2
  52. package/dist/crmbonus-component-wake/p-3ccbcc11.entry.js +2 -0
  53. package/dist/crmbonus-component-wake/p-3ccbcc11.entry.js.map +1 -0
  54. package/dist/crmbonus-component-wake/{p-24bdfca4.js → p-7cfea8fe.js} +2 -2
  55. package/dist/crmbonus-component-wake/{p-24bdfca4.js.map → p-7cfea8fe.js.map} +1 -1
  56. package/dist/crmbonus-component-wake/{p-5eddbe5e.entry.js → p-9cd20349.entry.js} +2 -2
  57. package/dist/crmbonus-component-wake/{p-d3bfac80.js → p-ba369e65.js} +2 -2
  58. package/dist/crmbonus-component-wake/p-ba369e65.js.map +1 -0
  59. package/dist/crmbonus-component-wake/p-c44e2f02.js.map +1 -1
  60. package/dist/esm/countdown-timer_5.entry.js +8 -5
  61. package/dist/esm/countdown-timer_5.entry.js.map +1 -1
  62. package/dist/esm/crm-bonus-form.entry.js +1 -1
  63. package/dist/esm/crm-bonus.entry.js +1 -1
  64. package/dist/esm/crm-giftback-form_2.entry.js +18 -10
  65. package/dist/esm/crm-giftback-form_2.entry.js.map +1 -1
  66. package/dist/esm/crmbonus-component-wake.js +1 -1
  67. package/dist/esm/crmbonus.service-774ebe83.js.map +1 -1
  68. package/dist/esm/{index-23a034bf.js → index-5b567099.js} +2 -2
  69. package/dist/esm/index-5b567099.js.map +1 -0
  70. package/dist/esm/index.js +1 -1
  71. package/dist/esm/loader.js +1 -1
  72. package/dist/esm/phone-input-mask.entry.js +1 -1
  73. package/dist/esm/{utils-02d50e38.js → utils-d642b4db.js} +4 -3
  74. package/dist/esm/utils-d642b4db.js.map +1 -0
  75. package/dist/types/components/giftback-form/subcomponents/giftback-info/giftback-info.d.ts +1 -0
  76. package/package.json +1 -1
  77. package/dist/cjs/index-f903012c.js.map +0 -1
  78. package/dist/cjs/utils-666a842d.js.map +0 -1
  79. package/dist/components/p-24bdfca4.js.map +0 -1
  80. package/dist/components/p-cb164cb2.js.map +0 -1
  81. package/dist/components/p-d3bfac80.js.map +0 -1
  82. package/dist/components/p-f9381072.js.map +0 -1
  83. package/dist/crmbonus-component-wake/p-5f8b033a.entry.js +0 -2
  84. package/dist/crmbonus-component-wake/p-5f8b033a.entry.js.map +0 -1
  85. package/dist/crmbonus-component-wake/p-d3bfac80.js.map +0 -1
  86. package/dist/crmbonus-component-wake/p-e37a10a1.entry.js +0 -2
  87. package/dist/crmbonus-component-wake/p-e37a10a1.entry.js.map +0 -1
  88. package/dist/esm/index-23a034bf.js.map +0 -1
  89. package/dist/esm/utils-02d50e38.js.map +0 -1
  90. /package/dist/crmbonus-component-wake/{p-a5a145b8.entry.js.map → p-147ba861.entry.js.map} +0 -0
  91. /package/dist/crmbonus-component-wake/{p-e118fc35.entry.js.map → p-33c1eeca.entry.js.map} +0 -0
  92. /package/dist/crmbonus-component-wake/{p-5eddbe5e.entry.js.map → p-9cd20349.entry.js.map} +0 -0
@@ -10,12 +10,12 @@ exports.StepFormEnum = void 0;
10
10
  StepFormEnum[StepFormEnum["STEP_NO_BONUS"] = 5] = "STEP_NO_BONUS";
11
11
  })(exports.StepFormEnum || (exports.StepFormEnum = {}));
12
12
  const MESSAGE_ERROR_INVALID_NUMBER = "Número inválido";
13
- exports.StatusGiftBackProcess = void 0;
13
+ var StatusGiftBackProcess;
14
14
  (function (StatusGiftBackProcess) {
15
15
  StatusGiftBackProcess["VALIDATE"] = "validate";
16
16
  StatusGiftBackProcess["NO_BONUS"] = "no_bonus";
17
- })(exports.StatusGiftBackProcess || (exports.StatusGiftBackProcess = {}));
17
+ })(StatusGiftBackProcess || (StatusGiftBackProcess = {}));
18
18
 
19
19
  exports.MESSAGE_ERROR_INVALID_NUMBER = MESSAGE_ERROR_INVALID_NUMBER;
20
20
 
21
- //# sourceMappingURL=index-f903012c.js.map
21
+ //# sourceMappingURL=index-6054ed44.js.map
@@ -0,0 +1 @@
1
+ {"file":"index-6054ed44.js","mappings":";;AAAYA;AAAZ,WAAY,YAAY;IACpB,yDAAa,CAAA;IACb,2DAAc,CAAA;IACd,uDAAY,CAAA;IACZ,+DAAgB,CAAA;IAChB,2DAAc,CAAA;IACd,iEAAiB,CAAA;AACrB,CAAC,EAPWA,oBAAY,KAAZA,oBAAY,QAOvB;MAEY,4BAA4B,GAAE,kBAAiB;AAG5D,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC7B,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;AACzB,CAAC,EAHW,qBAAqB,KAArB,qBAAqB;;;;","names":["StepFormEnum"],"sources":["src/contants/index.ts"],"sourcesContent":["export enum StepFormEnum {\n STEP_NAME = 0,\n STEP_PHONE = 1,\n STEP_PIN = 2,\n STEP_RESERVE = 3,\n STEP_APPLY = 4,\n STEP_NO_BONUS = 5\n}\n\nexport const MESSAGE_ERROR_INVALID_NUMBER= \"Número inválido\"\n\n\nexport enum StatusGiftBackProcess {\n VALIDATE = \"validate\",\n NO_BONUS = \"no_bonus\"\n}"],"version":3}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const utils = require('./utils-666a842d.js');
5
+ const utils = require('./utils-e9413ee3.js');
6
6
 
7
7
 
8
8
 
@@ -8,7 +8,7 @@ const appGlobals = require('./app-globals-3a1e7e63.js');
8
8
  const defineCustomElements = async (win, options) => {
9
9
  if (typeof window === 'undefined') return undefined;
10
10
  await appGlobals.globalScripts();
11
- return index.bootstrapLazy([["crm-bonus.cjs",[[2,"crm-bonus",{"userId":[2,"userid"],"storeName":[8,"storename"],"productsInString":[1,"products"],"cartId":[8,"cartid"],"showModal":[32],"products":[32],"customer":[32],"loading":[32],"message":[32],"phone":[32],"canCancel":[32],"amountCancel":[32],"sent":[32],"session":[32],"loading_reprocess":[32],"resetBonus":[64],"reprocess":[64]},null,{"productsInString":["watchProducts"]}]]],["crm-bonus-form.cjs",[[1,"crm-bonus-form",{"storeName":[8,"storename"],"cartId":[8,"cart-id"],"products":[16],"customer":[16],"sent":[16],"stepNext":[2,"step-next"],"phone":[2],"loadingModal":[4,"loading-modal"],"saveStore":[16],"cancel":[16],"handleCustomerName":[16],"loading":[32],"step":[32],"message":[32],"bonus":[32],"setStep":[64]}]]],["crm-bonus-note.cjs",[[0,"crm-bonus-note",{"cartId":[8,"cartid"],"storename":[8],"url":[32],"config":[32],"bonus":[32]}]]],["phone-cancel-input.cjs",[[0,"phone-cancel-input",{"sendPin":[16],"loading":[4],"value":[1]}]]],["phone-input.cjs",[[0,"phone-input",{"sendPin":[16],"loading":[4],"value":[1]}]]],["app-modal.cjs",[[1,"app-modal",{"isOpen":[516,"is-open"],"modalTitle":[1,"modal-title"]}]]],["pedido-finalizado.cjs",[[0,"pedido-finalizado",{"cartId":[1,"cartid"],"orderId":[2,"orderid"],"metadadoString":[1,"metadado"]}]]],["crm-button.cjs",[[0,"crm-button",{"txtBtn":[1,"txt-btn"],"loading":[4],"handleClick":[16]}]]],["phone-input-mask.cjs",[[1,"phone-input-mask",{"initialValue":[1,"initial-value"],"disabled":[4],"phone":[32],"message":[32],"getPhone":[64]}]]],["loading-spinner.cjs",[[1,"loading-spinner",{"size":[1],"color":[1]}]]],["countdown-timer_5.cjs",[[0,"phone-form",{"value":[1],"loading":[4],"handlerSubmit":[16],"config":[16]}],[1,"pin-form",{"validate":[16],"cancel":[16],"resend":[16],"sent":[16],"loading":[4],"phone":[1],"config":[16],"pin":[32],"isVerified":[32],"canResend":[32]}],[0,"giftback-info",{"loading":[4],"bonus":[16],"reserve":[16],"cancel":[16],"usedValue":[32],"selectedOption":[32],"sliderPosition":[32]},null,{"bonus":["changedBonus"]}],[1,"countdown-timer",{"downtime":[16],"counter":[32]}],[0,"crm-tooltip",{"text":[1],"identity":[1]}]]],["crm-giftback-form_2.cjs",[[0,"crm-giftback-form",{"storeName":[8,"storename"],"cartId":[8,"cart-id"],"products":[16],"customer":[16],"loadProducts":[16],"value":[32],"loading":[32],"message":[32],"phone":[32],"pinInfo":[32],"step":[32],"bonus":[32],"sucess":[32],"error":[32],"config":[32],"hasApplyBonus":[32],"setStep":[64],"processBonus":[64]}],[4,"loading-container",{"loading":[4]}]]],["giftback-finish_4.cjs",[[1,"giftback-pin",{"sent":[16],"validate":[16],"cancel":[16],"loading":[4],"pin":[32],"isVerified":[32]}],[1,"giftback-progress",{"loading":[4],"bonus":[16],"reserve":[16],"cancel":[16],"usedValue":[32]}],[0,"name-input",{"value":[1],"loading":[4],"applyName":[16],"cancel":[16],"newValue":[32],"message":[32]}],[1,"giftback-finish"]]]], options);
11
+ return index.bootstrapLazy([["crm-bonus.cjs",[[2,"crm-bonus",{"userId":[2,"userid"],"storeName":[8,"storename"],"productsInString":[1,"products"],"cartId":[8,"cartid"],"showModal":[32],"products":[32],"customer":[32],"loading":[32],"message":[32],"phone":[32],"canCancel":[32],"amountCancel":[32],"sent":[32],"session":[32],"loading_reprocess":[32],"resetBonus":[64],"reprocess":[64]},null,{"productsInString":["watchProducts"]}]]],["crm-bonus-form.cjs",[[1,"crm-bonus-form",{"storeName":[8,"storename"],"cartId":[8,"cart-id"],"products":[16],"customer":[16],"sent":[16],"stepNext":[2,"step-next"],"phone":[2],"loadingModal":[4,"loading-modal"],"saveStore":[16],"cancel":[16],"handleCustomerName":[16],"loading":[32],"step":[32],"message":[32],"bonus":[32],"setStep":[64]}]]],["crm-bonus-note.cjs",[[0,"crm-bonus-note",{"cartId":[8,"cartid"],"storename":[8],"url":[32],"config":[32],"bonus":[32]}]]],["phone-cancel-input.cjs",[[0,"phone-cancel-input",{"sendPin":[16],"loading":[4],"value":[1]}]]],["phone-input.cjs",[[0,"phone-input",{"sendPin":[16],"loading":[4],"value":[1]}]]],["app-modal.cjs",[[1,"app-modal",{"isOpen":[516,"is-open"],"modalTitle":[1,"modal-title"]}]]],["pedido-finalizado.cjs",[[0,"pedido-finalizado",{"cartId":[1,"cartid"],"orderId":[2,"orderid"],"metadadoString":[1,"metadado"]}]]],["crm-button.cjs",[[0,"crm-button",{"txtBtn":[1,"txt-btn"],"loading":[4],"handleClick":[16]}]]],["phone-input-mask.cjs",[[1,"phone-input-mask",{"initialValue":[1,"initial-value"],"disabled":[4],"phone":[32],"message":[32],"getPhone":[64]}]]],["loading-spinner.cjs",[[1,"loading-spinner",{"size":[1],"color":[1]}]]],["countdown-timer_5.cjs",[[0,"phone-form",{"value":[1],"loading":[4],"handlerSubmit":[16],"config":[16]}],[1,"pin-form",{"validate":[16],"cancel":[16],"resend":[16],"sent":[16],"loading":[4],"phone":[1],"config":[16],"pin":[32],"isVerified":[32],"canResend":[32]}],[0,"giftback-info",{"loading":[4],"bonus":[16],"reserve":[16],"cancel":[16],"usedValue":[32],"selectedOption":[32],"sliderPosition":[32],"sliderValuePosition":[32]},null,{"bonus":["changedBonus"]}],[1,"countdown-timer",{"downtime":[16],"counter":[32]}],[0,"crm-tooltip",{"text":[1],"identity":[1]}]]],["crm-giftback-form_2.cjs",[[0,"crm-giftback-form",{"storeName":[8,"storename"],"cartId":[8,"cart-id"],"products":[16],"customer":[16],"loadProducts":[16],"value":[32],"loading":[32],"message":[32],"phone":[32],"pinInfo":[32],"step":[32],"bonus":[32],"sucess":[32],"error":[32],"config":[32],"hasApplyBonus":[32],"setStep":[64],"processBonus":[64]}],[4,"loading-container",{"loading":[4]}]]],["giftback-finish_4.cjs",[[1,"giftback-pin",{"sent":[16],"validate":[16],"cancel":[16],"loading":[4],"pin":[32],"isVerified":[32]}],[1,"giftback-progress",{"loading":[4],"bonus":[16],"reserve":[16],"cancel":[16],"usedValue":[32]}],[0,"name-input",{"value":[1],"loading":[4],"applyName":[16],"cancel":[16],"newValue":[32],"message":[32]}],[1,"giftback-finish"]]]], options);
12
12
  };
13
13
 
14
14
  exports.setNonce = index.setNonce;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d11684bd.js');
6
- const index$1 = require('./index-f903012c.js');
6
+ const index$1 = require('./index-6054ed44.js');
7
7
 
8
8
  const phoneInputMaskCss = "*{margin:0;padding:0;box-sizing:border-box}.phone{display:block;width:100%;height:24px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:0px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);-webkit-transition:border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}.phone-input-form{width:100%;height:48px;padding:13px 16px 13px 16px;border:1px solid #CCCCCC;font-size:14px}.crm-erro-msg{color:#E11D48;font-size:12px;font-weight:500;margin-top:11px}";
9
9
  const PhoneInputMaskStyle0 = phoneInputMaskCss;
@@ -12,8 +12,9 @@ function defineLimit(remainingGiftback) {
12
12
  function formatDateToBr(dateTime) {
13
13
  // const decodedDateTime = decodeHtmlEntities(dateTime);
14
14
  const [date] = dateTime.split(" ");
15
- if (date.length != 10)
16
- throw new Error("Invalid validateDate");
15
+ if (date.length != 10) {
16
+ return "";
17
+ }
17
18
  return date.split("-").reverse().join("/");
18
19
  }
19
20
 
@@ -21,4 +22,4 @@ exports.defineLimit = defineLimit;
21
22
  exports.format = format;
22
23
  exports.formatDateToBr = formatDateToBr;
23
24
 
24
- //# sourceMappingURL=utils-666a842d.js.map
25
+ //# sourceMappingURL=utils-e9413ee3.js.map
@@ -0,0 +1 @@
1
+ {"file":"utils-e9413ee3.js","mappings":";;SAAgB,MAAM,CAAC,KAAc,EAAE,MAAe,EAAE,IAAa;IACnE,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;AACjF,CAAC;SAEe,WAAW,CAAC,iBAAyB;IAEnD,OAAO;QACL,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,GAAG,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;QAClG,UAAU,GAAG,iBAAiB,GAAG,CAAC,CAAC;KACpC,CAAA;AACH,CAAC;SAEe,cAAc,CAAC,QAAgB;;IAI7C,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;QACrB,OAAO,EAAE,CAAA;KACV;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7C;;;;;;","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["export function format(first?: string, middle?: string, last?: string): string {\n return (first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : '');\n}\n\nexport function defineLimit(remainingGiftback: number) {\n\n return {\n remainingGiftback: remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\"),\n isComplete: (remainingGiftback < 0)\n }\n}\n\nexport function formatDateToBr(dateTime: string) {\n\n // const decodedDateTime = decodeHtmlEntities(dateTime);\n\n const [date] = dateTime.split(\" \");\n\n if (date.length != 10) {\n return \"\"\n }\n\n return date.split(\"-\").reverse().join(\"/\");\n}\n\n\n// Decodifica entidades HTML, se houver\nexport const decodeHtmlEntities = (str: string) => {\n const parser = new DOMParser();\n const doc = parser.parseFromString(str, 'text/html');\n\n console.log(\"doc.documentElement\")\n\n return doc.documentElement.textContent || str;\n};\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { CrmBonusService } from "../../services/crmbonus.service";
3
- import { StatusGiftBackProcess, StepFormEnum } from "../../contants";
3
+ import { StepFormEnum } from "../../contants";
4
4
  import { getInfoCustomization } from "../../helpers/info.config.helper";
5
5
  import i18next from "../../i18n/i18n";
6
6
  import { USED_KEY, getKeyReserveByCartId } from "../../utils/keys.storage";
@@ -18,7 +18,7 @@ export class CrmBonus {
18
18
  this.message = undefined;
19
19
  this.phone = undefined;
20
20
  this.pinInfo = undefined;
21
- this.step = StepFormEnum.STEP_PHONE;
21
+ this.step = StepFormEnum.STEP_RESERVE;
22
22
  this.bonus = undefined;
23
23
  this.sucess = "";
24
24
  this.error = "";
@@ -87,8 +87,16 @@ export class CrmBonus {
87
87
  this.error = "";
88
88
  try {
89
89
  const _phone = this.convertStringToNumber();
90
- this.pinInfo = await this.crmBonusService.sendPin(_phone, (_a = this.customer) === null || _a === void 0 ? void 0 : _a.name, this.storeName);
91
- if (localStorage.getItem(`bc:${this.phone}`)) {
90
+ const pinInfoCache = localStorage.getItem(`bc:${this.phone}`);
91
+ if (!pinInfoCache) {
92
+ this.pinInfo = await this.crmBonusService.sendPin(_phone, (_a = this.customer) === null || _a === void 0 ? void 0 : _a.name, this.storeName);
93
+ }
94
+ if (pinInfoCache) {
95
+ const bonus = JSON.parse(pinInfoCache);
96
+ this.pinInfo = {
97
+ storeId: bonus.storeId,
98
+ userId: bonus.userId
99
+ };
92
100
  await this.validateBonus("2018");
93
101
  this.step = StepFormEnum.STEP_RESERVE;
94
102
  }
@@ -140,7 +148,7 @@ export class CrmBonus {
140
148
  }
141
149
  this.sucess = "Código validado com sucesso!";
142
150
  localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify(Object.assign(Object.assign({}, this.bonus), { phone: this.phone })));
143
- localStorage.setItem(`bc:${this.phone}`, StatusGiftBackProcess.VALIDATE);
151
+ localStorage.setItem(`bc:${this.phone}`, JSON.stringify(this.bonus));
144
152
  localStorage.setItem(USED_KEY, "use");
145
153
  localStorage.setItem(this.cartId, this.bonus.bonusBalance.toString());
146
154
  this.step = StepFormEnum.STEP_RESERVE;
@@ -209,11 +217,11 @@ export class CrmBonus {
209
217
  });
210
218
  }
211
219
  render() {
212
- return (h("div", { key: '778583d054357862ca4ad6a1bd524c409b430911', class: "crm-container-form fbits-responsive-carrinho-desconto" }, h("label", { key: 'ae1c6c8afbf88d07bb526b0a158916e7ec0014d3', class: "crm-title" }, this.config.giftbackTitle), this.step === StepFormEnum.STEP_PHONE &&
213
- h("phone-form", { key: '31bf9898b1fdb575ed560aa13b73ec9fd9a5537c', value: this.customer.phone, config: this.config, loading: this.loading, handlerSubmit: (phone) => this.handleSendPin(phone) }), this.step === StepFormEnum.STEP_PIN &&
214
- h("pin-form", { key: '55812e5fa6d92c280d65c8f67c45242ca364ac27', config: this.config, phone: this.phone, cancel: () => this.changePhone(), resend: () => this.sendPin(), validate: (data) => this.validateBonus(data), loading: this.loading }, this.sucess && h("p", { key: 'cac22336738f13aa8e9ae046786e5a94546677f8', class: "crm-message-info" }, this.sucess), this.error && h("p", { key: 'd774390972549f09cf11283521729af42b9d56c8', class: "crm-message-error" }, this.error)), this.step === StepFormEnum.STEP_RESERVE &&
215
- h("giftback-info", { key: 'b42c9837a08e2061e03a484fd897f7e8801f0390', loading: this.loading, cancel: () => this.handleCancel(), bonus: this.bonus, reserve: () => this.processBonus() }), this.step === StepFormEnum.STEP_NO_BONUS &&
216
- (h("div", { key: 'f18f039e27fec65525bb7e19ed230718bf8213a6', class: "container-message" }, i18next.t("noGiftback", { storename: this.config.giftbackTitle })))));
220
+ return (h("div", { key: '8688dac964a3a3daecf5986f90b4a59b853d523a', class: "crm-container-form fbits-responsive-carrinho-desconto" }, h("label", { key: '741e87d6f9e1cb552e02de008ed3b2367212b7a2', class: "crm-title" }, this.config.giftbackTitle), this.step === StepFormEnum.STEP_PHONE &&
221
+ h("phone-form", { key: '3a4d3dc394992b125ef5d4f1b866f2564c7b94f2', value: this.customer.phone, config: this.config, loading: this.loading, handlerSubmit: (phone) => this.handleSendPin(phone) }), this.step === StepFormEnum.STEP_PIN &&
222
+ h("pin-form", { key: '51f2971e70e2754c2239829beed107bac0662ed0', config: this.config, phone: this.phone, cancel: () => this.changePhone(), resend: () => this.sendPin(), validate: (data) => this.validateBonus(data), loading: this.loading }, this.sucess && h("p", { key: 'efad1263d619e957538e3a762474565623472452', class: "crm-message-info" }, this.sucess), this.error && h("p", { key: '8a285abd7c1c6c080bb1373ebdb38d310773a780', class: "crm-message-error" }, this.error)), this.step === StepFormEnum.STEP_RESERVE &&
223
+ h("giftback-info", { key: '24b5eb9c0343d735e5b2c4353e6bf5481a1ab9ba', loading: this.loading, cancel: () => this.handleCancel(), bonus: this.bonus, reserve: () => this.processBonus() }), this.step === StepFormEnum.STEP_NO_BONUS &&
224
+ (h("div", { key: '8f9d285c771f3af288c4b54df4ff8c83c0e2bc7b', class: "container-message" }, i18next.t("noGiftback", { storename: this.config.giftbackTitle })))));
217
225
  }
218
226
  static get is() { return "crm-giftback-form"; }
219
227
  static get originalStyleUrls() {
@@ -1 +1 @@
1
- {"version":3,"file":"giftback-form.js","sourceRoot":"","sources":["../../../../src/components/giftback-form/giftback-form.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Method, Prop, State, h } from \"@stencil/core\";\nimport { CrmBonusService } from \"../../services/crmbonus.service\";\nimport { StatusGiftBackProcess, 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\";\n\n@Component({\n tag: 'crm-giftback-form',\n styleUrl: 'giftback-form.css'\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\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_PHONE;\n @State() bonus: IBonus;\n\n @State() sucess: string = \"\";\n @State() error: string = \"\";\n @State() config: IInfoStore;\n\n @State() hasApplyBonus = false;\n\n\n @Method()\n async setStep(step: StepFormEnum) {\n this.step = step\n }\n\n @Method()\n async processBonus(products: IProduct[] = [], hasNewProduct = false) {\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 await this.validateBonus(\"2018\");\n //this.step = StepFormEnum.STEP_RESERVE;\n\n }\n\n\n }\n\n async handleSendPin(phone: string) {\n\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 console.log('phoneAgain', phoneAgain)\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 false;\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\n this.pinInfo = await this.crmBonusService.sendPin(_phone, this.customer?.name, this.storeName);\n\n if (localStorage.getItem(`bc:${this.phone}`)) {\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 console.log('this.phone', this.phone)\n\n 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}`, StatusGiftBackProcess.VALIDATE)\n\n localStorage.setItem(USED_KEY, \"use\");\n localStorage.setItem(this.cartId, this.bonus.bonusBalance.toString());\n\n this.step = StepFormEnum.STEP_RESERVE;\n\n } catch (error) {\n const _error: string = error?.response?.data?.message;\n\n if (_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\n\n } finally {\n this.loading = false;\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 } 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 return (\n <div class=\"crm-container-form fbits-responsive-carrinho-desconto\" >\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 loading={this.loading}\n cancel={() => this.handleCancel()}\n bonus={this.bonus}\n reserve={() => this.processBonus()}\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}"]}
1
+ {"version":3,"file":"giftback-form.js","sourceRoot":"","sources":["../../../../src/components/giftback-form/giftback-form.tsx"],"names":[],"mappings":"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","sourcesContent":["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\";\n\n@Component({\n tag: 'crm-giftback-form',\n styleUrl: 'giftback-form.css'\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\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\n @State() hasApplyBonus = false;\n\n\n @Method()\n async setStep(step: StepFormEnum) {\n this.step = step\n }\n\n @Method()\n async processBonus(products: IProduct[] = [], hasNewProduct = false) {\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 await this.validateBonus(\"2018\");\n //this.step = StepFormEnum.STEP_RESERVE;\n\n }\n }\n\n async handleSendPin(phone: string) {\n\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 console.log('phoneAgain', phoneAgain)\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 false;\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 console.log('this.phone', this.phone)\n\n 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 this.step = StepFormEnum.STEP_RESERVE;\n\n } catch (error) {\n const _error: string = error?.response?.data?.message;\n\n if (_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\n\n } finally {\n this.loading = false;\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 } 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 return (\n <div class=\"crm-container-form fbits-responsive-carrinho-desconto\" >\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 loading={this.loading}\n cancel={() => this.handleCancel()}\n bonus={this.bonus}\n reserve={() => this.processBonus()}\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}"]}
@@ -19,6 +19,7 @@ export class GiftbackInfo {
19
19
  this.reserve = undefined;
20
20
  this.cancel = undefined;
21
21
  this.sliderPosition = 0;
22
+ this.sliderValuePosition = 0;
22
23
  }
23
24
  changedBonus() {
24
25
  this.updateBonus();
@@ -44,9 +45,11 @@ export class GiftbackInfo {
44
45
  input.value = this.bonus.bonusBalance;
45
46
  }
46
47
  buildPositionSlider(min, max) {
48
+ const percentage_init = max * 0.1;
47
49
  // Calculando a posição do texto com base no valor do slider
48
50
  const percentage = ((this.usedValue - min) / (max - min)) * 100;
49
51
  this.sliderPosition = percentage;
52
+ this.sliderValuePosition = percentage + (this.usedValue <= percentage_init ? 10 : 0);
50
53
  }
51
54
  async handleOptionChange(option) {
52
55
  this.selectedOption = option;
@@ -65,11 +68,11 @@ export class GiftbackInfo {
65
68
  const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;
66
69
  const translateDescription = i18next.t("giftDescription", { amount: `${this.bonus.totalBonus.toFixed(2).replace(".", ",")}`, custom_name: "Giftback" });
67
70
  const limit = defineLimit(remainingGiftback);
68
- return (h("div", { key: '06bd5fda8f1b1dff75d27133fb27a222ea79475d', class: "giftback-container" }, h("div", { key: 'e770facaaf3c938dda000885ef42fe30f4b88eaf', class: "container-description" }, h("p", { key: '7d7aa390bb8f2c7a1973b38f0071522e7943af47', innerHTML: translateDescription }), h("crm-tooltip", { key: 'f209c195a0fcd7c4bec0b6227549ba139c41f637', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: '6160a64dd8a3eea3b1f554349c2d6d0fc7113641', class: "slider-wrapper" }, h("div", { key: 'e3ca74f1b47613bd0b05339bd2856a942172cb0f', class: "slider-value", style: {
69
- left: `calc(${this.sliderPosition}% - 20px)`, // Ajuste para centralizar o texto
70
- } }, "R$ ", this.usedValue.toFixed(2).replace(".", ",")), h("input", { key: 'e748d506d25076173a1da4ae02a4869969228e16', 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: {
71
+ return (h("div", { key: 'c469a9271d3407423640607e16e30b36ff14a3f5', class: "giftback-container" }, h("div", { key: '6a0379d8f8f9d95976268fb062f1c84653588343', class: "container-description" }, h("p", { key: '5207bb742def05dcdadbc04c7b6a1dae3d728f35', innerHTML: translateDescription }), h("crm-tooltip", { key: 'ba3d3bd7b6bc61444546ead70eeefa0c324b9316', identity: "crm-role-description", text: i18next.t("labelUseGiftback", { minimumPurchase: this.bonus.minimumPurchase, expírationDate: formatDateToBr(this.bonus.firstValidityDate) }) })), h("div", { key: '771552eab7769c74bb54e8a740f4ac2d19f0804e', class: "slider-wrapper" }, h("div", { key: 'fe1bd6b776460040356adb813875ef8d8caa8a41', class: "slider-value", style: {
72
+ left: `calc(${this.sliderValuePosition}% - 20px)`, // Ajuste para centralizar o texto
73
+ } }, "R$ ", this.usedValue.toFixed(2).replace(".", ",")), h("input", { key: '512ebfcf538df0a8ad3f7dee73e25ca6603c3466', 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: {
71
74
  background: `linear-gradient(to right, #6D6D5F ${this.sliderPosition}%, #ddd ${this.sliderPosition}%)`,
72
- } })), limit.isComplete && (h("p", { key: '49b1525e9e04c7fc08db78a9c999540fdd0df6ea' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: '771cdc242af285229b6d23fd9738627f2e419385', class: "container-description" }, h("p", { key: '43dca214826cb8dc2a292400c5b02f40e7ce620a' }, "Adicione ", h("strong", { key: '3ffbe7777e5e3be5283012de568eddfe3ff1b23d' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo! ", h("crm-tooltip", { key: '71bae07de4470c5f9234e74a632713803cda2d7e', identity: "crm-max-description", text: i18next.t("labelamountPartial") })))), h("div", { key: '23c5cbcea13c5cad47384815b6277fced7529f84', class: "options" }, h("div", { key: '5212788f1c1c258324ba83057c60fd0ecb76e29c', class: "options-option" }, h("input", { key: '14bf5fceb36b5b9db660e5e067e1ed9c89d31b81', type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: '487dc829efdca6754c967fcc85c58cb2cb7c63e1' }, "Usar o meu Giftback")), h("div", { key: 'd90651744aa5d3904b61be7d4adc1ec49e3c6676', class: "options-option" }, h("input", { key: '4ed8e68cfd86b871668e9de19d4c5420487f4e52', type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: '344fbf40dadc0ef4e3a870e5251a1beb3b5ffd27' }, "N\u00E3o usar o meu Giftback"))), h("div", { key: '3b9a91dad6803aac48b96100c2bbded009677aa1', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa.")));
75
+ } })), limit.isComplete && (h("p", { key: 'c02f0c6e34fc26337c49dc5eb2050edae3243d38' }, i18next.t("maxAmount"))), !limit.isComplete && (h("div", { key: '190a80876bf13be6c3e72eab1f63efa0f3916b5f', class: "container-description" }, h("p", { key: 'cee35b1ace21fe56a897a92529031e65965c52a4' }, "Adicione ", h("strong", { key: 'd0cf9b91edfc5011284912a9c4901937744a7889' }, "R$ ", remainingGiftback < 0 ? "0,00" : remainingGiftback.toFixed(2).replace(".", ",")), " ao carrinho para atingir o valor m\u00E1ximo! ", h("crm-tooltip", { key: 'e1c97f8e51fa7ef17af07c5e50541dbbdbbd9f08', identity: "crm-max-description", text: i18next.t("labelamountPartial") })))), h("div", { key: 'f82a7e5602bd64eb1df08037f379357f82c6a35a', class: "options" }, h("div", { key: 'd8a57cd6d8195e04628e3163bfc4546549f589d4', class: "options-option" }, h("input", { key: 'b1fe16b00c8ad9986711f2478f287813331cbeea', type: "radio", name: "giftbackOption", value: "use", checked: this.selectedOption === 'use', onChange: () => this.handleOptionChange('use') }), h("p", { key: '38d56b3d9bf8f04b1363d4d8ef0ddbf50c42f327' }, "Usar o meu Giftback")), h("div", { key: '6e39fe821a477de2dd79128ce1b9c6fca39bf52c', class: "options-option" }, h("input", { key: '1d5a4179c5029afd31acb79b7d484fe516bcca8a', type: "radio", name: "giftbackOption", value: "dontUse", checked: this.selectedOption === 'dontUse', onChange: () => this.handleOptionChange('dontUse') }), h("p", { key: '16d5cb40ce7c70157887052477f35807d5b306ff' }, "N\u00E3o usar o meu Giftback"))), h("div", { key: '871faee85d34a10b7986abdd94668b95d922b2ea', class: "info-box" }, "O Giftback ser\u00E1 aplicado na pr\u00F3xima etapa.")));
73
76
  }
74
77
  static get is() { return "giftback-info"; }
75
78
  static get originalStyleUrls() {
@@ -164,7 +167,8 @@ export class GiftbackInfo {
164
167
  return {
165
168
  "usedValue": {},
166
169
  "selectedOption": {},
167
- "sliderPosition": {}
170
+ "sliderPosition": {},
171
+ "sliderValuePosition": {}
168
172
  };
169
173
  }
170
174
  static get watchers() {
@@ -1 +1 @@
1
- {"version":3,"file":"giftback-info.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-info/giftback-info.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, Watch, h } from \"@stencil/core\";\nimport { IBonus } from \"../../../../dto/validate.pin.bonus\";\n\nimport i18next from '../../../../i18n/i18n'\nimport { USED_KEY } from \"../../../../utils/keys.storage\";\nimport { defineLimit, formatDateToBr } from \"../../../../utils/utils\";\n\n@Component({\n tag: 'giftback-info',\n styleUrls: ['giftback-info.css']\n})\nexport class GiftbackInfo {\n @State() usedValue: number = 0;\n @State() selectedOption: string = 'none';\n\n @Prop() loading: boolean = false;\n @Prop() bonus: Partial<IBonus> = {\n totalBonus: 0,\n cartId: \"\",\n minimumPurchase: 0,\n bonusBalance: 0,\n calculatedValue: 0,\n firstValidityDate: \"\",\n totalValue: 0\n };\n @Prop() reserve: (amountRedeemed: number) => void;\n @Prop() cancel: () => void;\n\n @State() sliderPosition: number = 0;\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 const input: any = document.getElementById(\"position_value_id\")\n\n input.value = this.bonus.bonusBalance;\n }\n\n\n private buildPositionSlider(min: number, max: number) {\n // Calculando a posição do texto com base no valor do slider\n const percentage = ((this.usedValue - min) / (max - min)) * 100;\n this.sliderPosition = percentage;\n }\n\n async handleOptionChange(option: string) {\n this.selectedOption = option;\n\n localStorage.setItem(USED_KEY, option);\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 render() {\n const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;\n\n const translateDescription = i18next.t(\"giftDescription\", { amount: `${this.bonus.totalBonus.toFixed(2).replace(\".\", \",\")}`, custom_name: \"Giftback\" })\n\n const limit = defineLimit(remainingGiftback)\n 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.sliderPosition}% - 20px)`, // Ajuste para centralizar o texto\n\n }}\n >\n R$ {this.usedValue.toFixed(2).replace(\".\", \",\")}\n </div>\n <input\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! <crm-tooltip identity=\"crm-max-description\" text={i18next.t(\"labelamountPartial\")} />\n </p>\n </div>\n )\n }\n\n\n <div class=\"options\">\n <div class=\"options-option\">\n <input\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 Giftback</p>\n </div>\n <div class=\"options-option\">\n <input\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 Giftback</p>\n </div>\n </div>\n <div class=\"info-box\">\n O Giftback será aplicado na próxima etapa.\n </div>\n </div>\n );\n }\n}"]}
1
+ {"version":3,"file":"giftback-info.js","sourceRoot":"","sources":["../../../../../../src/components/giftback-form/subcomponents/giftback-info/giftback-info.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, Watch, h } from \"@stencil/core\";\nimport { IBonus } from \"../../../../dto/validate.pin.bonus\";\n\nimport i18next from '../../../../i18n/i18n'\nimport { USED_KEY } from \"../../../../utils/keys.storage\";\nimport { defineLimit, formatDateToBr } from \"../../../../utils/utils\";\n\n@Component({\n tag: 'giftback-info',\n styleUrls: ['giftback-info.css']\n})\nexport class GiftbackInfo {\n @State() usedValue: number = 0;\n @State() selectedOption: string = 'none';\n\n @Prop() loading: boolean = false;\n @Prop() bonus: Partial<IBonus> = {\n totalBonus: 0,\n cartId: \"\",\n minimumPurchase: 0,\n bonusBalance: 0,\n calculatedValue: 0,\n firstValidityDate: \"\",\n totalValue: 0\n };\n @Prop() reserve: (amountRedeemed: number) => void;\n @Prop() cancel: () => void;\n\n @State() sliderPosition: number = 0;\n @State() sliderValuePosition: number = 0;\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 const input: any = document.getElementById(\"position_value_id\")\n\n input.value = this.bonus.bonusBalance;\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 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 render() {\n const remainingGiftback = this.bonus.minimumPurchase - this.bonus.totalValue;\n\n const translateDescription = i18next.t(\"giftDescription\", { amount: `${this.bonus.totalBonus.toFixed(2).replace(\".\", \",\")}`, custom_name: \"Giftback\" })\n\n const limit = defineLimit(remainingGiftback)\n 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 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! <crm-tooltip identity=\"crm-max-description\" text={i18next.t(\"labelamountPartial\")} />\n </p>\n \n </div>\n )\n }\n\n\n <div class=\"options\">\n <div class=\"options-option\">\n <input\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 Giftback</p>\n </div>\n <div class=\"options-option\">\n <input\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 Giftback</p>\n </div>\n </div>\n <div class=\"info-box\">\n O Giftback será aplicado na próxima etapa.\n </div>\n </div>\n );\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"crmbonus.service.js","sourceRoot":"","sources":["../../../src/services/crmbonus.service.ts"],"names":[],"mappings":"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","sourcesContent":["import axios, { AxiosInstance } from 'axios';\nimport { CRM_BONUS_API_URL } from '../../env'\nimport { IPinSent } from '../dto/pin.sent';\nimport { IBonus, IProccesPinBonusDto, IReserveDTO } from '../dto/validate.pin.bonus';\nimport { UpdateOrderDTO } from '../dto/update.order.dto';\nimport { BYCODERS_KEY, USED_KEY, getKeyConfigByStoreName, getKeyReserveByCartId } from '../utils/keys.storage';\n\nexport class CrmBonusService {\n private axiosInstance: AxiosInstance;\n private token: string;\n\n private static _instance: CrmBonusService = null;\n\n constructor() {\n this.axiosInstance = axios.create({\n baseURL: CRM_BONUS_API_URL,\n headers: {\n 'Content-Type': 'application/json',\n 'accept': 'application/json',\n },\n });\n }\n\n public static getInstance(): CrmBonusService {\n if (this._instance) {\n return this._instance;\n }\n\n this._instance = new CrmBonusService()\n\n return this._instance;\n }\n\n async getCustomer(userId: number, store: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.get(`/store/${store}/customer/${userId}`, { headers: headers })\n\n this.token = response?.data?.token\n\n return response?.data?.customer\n }\n\n async updateOrder(updateOrderDTO: UpdateOrderDTO) {\n\n const token = localStorage.getItem(\"@BYCODERS_KEY\");\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n }\n\n await this.axiosInstance.patch(`/checkouts/${updateOrderDTO.cartId}/updateOrder`,\n {\n orderId: updateOrderDTO.orderId,\n externalId: updateOrderDTO.cartIdCrm\n }, { headers: headers })\n\n localStorage.removeItem(\"@BYCODERS_KEY\");\n localStorage.removeItem(USED_KEY);\n localStorage.removeItem(getKeyReserveByCartId(updateOrderDTO.cartId))\n }\n\n async sendPin(phone: number, name: string, store: string): Promise<IPinSent> {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n\n const response = await this.axiosInstance.post(\"/crmbonus/send-pin\", { cellphone: phone, name: name, storeName: store }, { headers: headers });\n return {\n storeId: response.data.storeId,\n userId: response.data.userId\n }\n }\n\n async validatePinBonus(payload: IProccesPinBonusDto): Promise<IBonus> {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.post(\"/crmbonus/process-pin-bonus\", payload, { headers })\n\n return response.data;\n }\n\n async reserve(payload: IReserveDTO) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n const response = await this.axiosInstance.post(\"/crmbonus/redeem-bonus\", payload, { headers });\n return response.data;\n }\n\n async cancel(cartId: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.post(\"/crmbonus/cancel-apply-bonus\", {\n ticket: cartId\n }, { headers });\n return response.data;\n }\n\n async getToken(store: string): Promise<string> {\n const response = await this.axiosInstance.post(\"/wake/requestToken\", { storeName: store })\n this.token = response?.data?.token;\n\n localStorage.setItem(BYCODERS_KEY, this.token);\n\n return response?.data?.token;\n }\n\n async getCustomization(storeName: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.get(`/stores/${storeName}/customizations`, { headers });\n\n localStorage.setItem(getKeyConfigByStoreName(storeName), JSON.stringify(response.data))\n }\n\n async cancelBonus(cartId: string, storeName: string) {\n const token = localStorage.getItem(BYCODERS_KEY);\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n }\n\n await this.axiosInstance.post(`/crmbonus/cancel-bonus`,\n {\n cartId,\n usedBonus: true,\n storeName: storeName\n }, { headers: headers })\n\n localStorage.setItem(cartId, \"0\");\n\n localStorage.removeItem(USED_KEY)\n }\n\n async getInfoCart() {\n const response = await this.axiosInstance.get('https://bycoders.checkout.fbits.store/api/carrinho')\n \n return response.data;\n }\n}"]}
1
+ {"version":3,"file":"crmbonus.service.js","sourceRoot":"","sources":["../../../src/services/crmbonus.service.ts"],"names":[],"mappings":"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","sourcesContent":["import axios, { AxiosInstance } from 'axios';\nimport { CRM_BONUS_API_URL } from '../../env'\nimport { IPinSent } from '../dto/pin.sent';\nimport { IBonus, IProccesPinBonusDto, IReserveDTO } from '../dto/validate.pin.bonus';\nimport { UpdateOrderDTO } from '../dto/update.order.dto';\nimport { BYCODERS_KEY, USED_KEY, getKeyConfigByStoreName, getKeyReserveByCartId } from '../utils/keys.storage';\n\nexport class CrmBonusService {\n private axiosInstance: AxiosInstance;\n private token: string;\n\n private static _instance: CrmBonusService = null;\n\n constructor() {\n this.axiosInstance = axios.create({\n baseURL: CRM_BONUS_API_URL,\n headers: {\n 'Content-Type': 'application/json',\n 'accept': 'application/json',\n },\n });\n }\n\n public static getInstance(): CrmBonusService {\n if (this._instance) {\n return this._instance;\n }\n\n this._instance = new CrmBonusService()\n\n return this._instance;\n }\n\n async getCustomer(userId: number, store: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.get(`/store/${store}/customer/${userId}`, { headers: headers })\n\n this.token = response?.data?.token\n\n return response?.data?.customer\n }\n\n async updateOrder(updateOrderDTO: UpdateOrderDTO) {\n\n const token = localStorage.getItem(\"@BYCODERS_KEY\");\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n }\n\n await this.axiosInstance.patch(`/checkouts/${updateOrderDTO.cartId}/updateOrder`,\n {\n orderId: updateOrderDTO.orderId,\n externalId: updateOrderDTO.cartIdCrm\n }, { headers: headers })\n\n localStorage.removeItem(\"@BYCODERS_KEY\");\n localStorage.removeItem(USED_KEY);\n localStorage.removeItem(getKeyReserveByCartId(updateOrderDTO.cartId))\n }\n\n async sendPin(phone: number, name: string, store: string): Promise<IPinSent> {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n\n const response = await this.axiosInstance.post(\"/crmbonus/send-pin\", { cellphone: phone, name: name, storeName: store }, { headers: headers });\n return {\n storeId: response.data.storeId,\n userId: response.data.userId\n }\n }\n\n async validatePinBonus(payload: IProccesPinBonusDto): Promise<IBonus> {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.post(\"/crmbonus/process-pin-bonus\", payload, { headers })\n\n return response.data;\n }\n\n async reserve(payload: IReserveDTO) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n const response = await this.axiosInstance.post(\"/crmbonus/redeem-bonus\", payload, { headers });\n return response.data;\n }\n\n async cancel(cartId: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.post(\"/crmbonus/cancel-apply-bonus\", {\n ticket: cartId\n }, { headers });\n return response.data;\n }\n\n async getToken(store: string): Promise<string> {\n const response = await this.axiosInstance.post(\"/wake/requestToken\", { storeName: store })\n this.token = response?.data?.token;\n\n localStorage.setItem(BYCODERS_KEY, this.token);\n\n return response?.data?.token;\n }\n\n async getCustomization(storeName: string) {\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${this.token}`\n }\n\n const response = await this.axiosInstance.get(`/stores/${storeName}/customizations`, { headers });\n\n localStorage.setItem(getKeyConfigByStoreName(storeName), JSON.stringify(response.data))\n }\n\n async cancelBonus(cartId: string, storeName: string) {\n const token = localStorage.getItem(BYCODERS_KEY);\n\n const headers = {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n }\n\n await this.axiosInstance.post(`/crmbonus/cancel-bonus`,\n {\n cartId,\n usedBonus: true,\n storeName: storeName\n }, { headers: headers })\n\n localStorage.setItem(cartId, \"0\");\n\n localStorage.removeItem(USED_KEY)\n }\n\n async getInfoCart() {\n const response = await this.axiosInstance.get('https://bycoders.checkout.fbits.store/api/carrinho')\n return response.data;\n }\n}"]}
@@ -10,8 +10,9 @@ export function defineLimit(remainingGiftback) {
10
10
  export function formatDateToBr(dateTime) {
11
11
  // const decodedDateTime = decodeHtmlEntities(dateTime);
12
12
  const [date] = dateTime.split(" ");
13
- if (date.length != 10)
14
- throw new Error("Invalid validateDate");
13
+ if (date.length != 10) {
14
+ return "";
15
+ }
15
16
  return date.split("-").reverse().join("/");
16
17
  }
17
18
  // Decodifica entidades HTML, se houver
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,MAAM,CAAC,KAAc,EAAE,MAAe,EAAE,IAAa;IACnE,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,iBAAyB;IAEnD,OAAO;QACL,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;QAClG,UAAU,EAAE,CAAC,iBAAiB,GAAG,CAAC,CAAC;KACpC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAgB;IAE7C,wDAAwD;IAExD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAE1C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC;AAGD,uCAAuC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE;IAChD,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAErD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IAElC,OAAO,GAAG,CAAC,eAAe,CAAC,WAAW,IAAI,GAAG,CAAC;AAChD,CAAC,CAAC","sourcesContent":["export function format(first?: string, middle?: string, last?: string): string {\n return (first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : '');\n}\n\nexport function defineLimit(remainingGiftback: number) {\n\n return {\n remainingGiftback: remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\"),\n isComplete: (remainingGiftback < 0)\n }\n}\n\nexport function formatDateToBr(dateTime: string) {\n\n // const decodedDateTime = decodeHtmlEntities(dateTime);\n\n const [date] = dateTime.split(\" \");\n\n if (date.length != 10)\n throw new Error(\"Invalid validateDate\");\n\n return date.split(\"-\").reverse().join(\"/\");\n}\n\n\n// Decodifica entidades HTML, se houver\nexport const decodeHtmlEntities = (str: string) => {\n const parser = new DOMParser();\n const doc = parser.parseFromString(str, 'text/html');\n\n console.log(\"doc.documentElement\")\n\n return doc.documentElement.textContent || str;\n};\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,MAAM,CAAC,KAAc,EAAE,MAAe,EAAE,IAAa;IACnE,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,iBAAyB;IAEnD,OAAO;QACL,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;QAClG,UAAU,EAAE,CAAC,iBAAiB,GAAG,CAAC,CAAC;KACpC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAgB;IAE7C,wDAAwD;IAExD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC;AAGD,uCAAuC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE;IAChD,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAErD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IAElC,OAAO,GAAG,CAAC,eAAe,CAAC,WAAW,IAAI,GAAG,CAAC;AAChD,CAAC,CAAC","sourcesContent":["export function format(first?: string, middle?: string, last?: string): string {\n return (first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : '');\n}\n\nexport function defineLimit(remainingGiftback: number) {\n\n return {\n remainingGiftback: remainingGiftback < 0 ? \"0,00\" : remainingGiftback.toFixed(2).replace(\".\", \",\"),\n isComplete: (remainingGiftback < 0)\n }\n}\n\nexport function formatDateToBr(dateTime: string) {\n\n // const decodedDateTime = decodeHtmlEntities(dateTime);\n\n const [date] = dateTime.split(\" \");\n\n if (date.length != 10) {\n return \"\"\n }\n\n return date.split(\"-\").reverse().join(\"/\");\n}\n\n\n// Decodifica entidades HTML, se houver\nexport const decodeHtmlEntities = (str: string) => {\n const parser = new DOMParser();\n const doc = parser.parseFromString(str, 'text/html');\n\n console.log(\"doc.documentElement\")\n\n return doc.documentElement.textContent || str;\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  import { p as proxyCustomElement, H, h, d as Host } from './p-3e84f78c.js';
2
2
  import { C as CrmBonusService } from './p-c44e2f02.js';
3
- import { S as StepFormEnum } from './p-24bdfca4.js';
3
+ import { S as StepFormEnum } from './p-7cfea8fe.js';
4
4
  import { d as defineCustomElement$6 } from './p-b79c86a8.js';
5
5
  import { d as defineCustomElement$5 } from './p-86564a17.js';
6
6
  import { d as defineCustomElement$4 } from './p-d1a21f41.js';
@@ -1,16 +1,16 @@
1
1
  import { p as proxyCustomElement, H, h } from './p-3e84f78c.js';
2
2
  import { C as CrmBonusService } from './p-c44e2f02.js';
3
- import { S as StepFormEnum } from './p-24bdfca4.js';
3
+ import { S as StepFormEnum } from './p-7cfea8fe.js';
4
4
  import { i as instance } from './p-e8c19a64.js';
5
5
  import { d as defineCustomElement$b } from './p-078fe899.js';
6
6
  import { d as defineCustomElement$a } from './p-2f30297f.js';
7
- import { d as defineCustomElement$9 } from './p-cb164cb2.js';
7
+ import { d as defineCustomElement$9 } from './p-3c196b20.js';
8
8
  import { d as defineCustomElement$8 } from './p-53259f8a.js';
9
- import { d as defineCustomElement$7 } from './p-f9381072.js';
9
+ import { d as defineCustomElement$7 } from './p-a6fefb58.js';
10
10
  import { d as defineCustomElement$6 } from './p-f1fb885c.js';
11
11
  import { d as defineCustomElement$5 } from './p-169fe768.js';
12
- import { d as defineCustomElement$4 } from './p-f0449fc0.js';
13
- import { d as defineCustomElement$3 } from './p-3dd9a571.js';
12
+ import { d as defineCustomElement$4 } from './p-69799798.js';
13
+ import { d as defineCustomElement$3 } from './p-ffa42f74.js';
14
14
  import { d as defineCustomElement$2 } from './p-735f01da.js';
15
15
 
16
16
  var AjustesTipoEnum;
@@ -1,4 +1,4 @@
1
- import { C as CrmBonus, d as defineCustomElement$1 } from './p-cb164cb2.js';
1
+ import { C as CrmBonus, d as defineCustomElement$1 } from './p-3c196b20.js';
2
2
 
3
3
  const CrmGiftbackForm = CrmBonus;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { G as GiftbackInfo$1, d as defineCustomElement$1 } from './p-f9381072.js';
1
+ import { G as GiftbackInfo$1, d as defineCustomElement$1 } from './p-a6fefb58.js';
2
2
 
3
3
  const GiftbackInfo = GiftbackInfo$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
1
  export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-3e84f78c.js';
2
- export { f as format } from './p-d3bfac80.js';
2
+ export { f as format } from './p-ba369e65.js';
3
3
 
4
4
  //# sourceMappingURL=index.js.map
@@ -1,16 +1,16 @@
1
1
  import { p as proxyCustomElement, H, h } from './p-3e84f78c.js';
2
2
  import { C as CrmBonusService } from './p-c44e2f02.js';
3
- import { S as StepFormEnum, a as StatusGiftBackProcess } from './p-24bdfca4.js';
3
+ import { S as StepFormEnum } from './p-7cfea8fe.js';
4
4
  import { g as getInfoCustomization } from './p-75ba7b9a.js';
5
5
  import { i as instance } from './p-e8c19a64.js';
6
6
  import { g as getKeyReserveByCartId, U as USED_KEY } from './p-f9aeffc1.js';
7
7
  import { d as defineCustomElement$8 } from './p-078fe899.js';
8
8
  import { d as defineCustomElement$7 } from './p-2f30297f.js';
9
9
  import { d as defineCustomElement$6 } from './p-53259f8a.js';
10
- import { d as defineCustomElement$5 } from './p-f9381072.js';
10
+ import { d as defineCustomElement$5 } from './p-a6fefb58.js';
11
11
  import { d as defineCustomElement$4 } from './p-169fe768.js';
12
- import { d as defineCustomElement$3 } from './p-f0449fc0.js';
13
- import { d as defineCustomElement$2 } from './p-3dd9a571.js';
12
+ import { d as defineCustomElement$3 } from './p-69799798.js';
13
+ import { d as defineCustomElement$2 } from './p-ffa42f74.js';
14
14
  import { d as defineCustomElement$1 } from './p-735f01da.js';
15
15
 
16
16
  const giftbackFormCss = "*{margin:0;padding:0;box-sizing:border-box}:host{--crmfont-sizebodymd:14px;--crmline-heightbodymd:20px;--crmletter-spacingtitle-md:0px}.container-message{font-family:Roboto;font-size:var(--crmfont-sizebodymd);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:14px;color:var(--crm-btn);font-weight:100}.crm-title{font-weight:700;line-height:20px;color:#262626;font-size:16px}.crm-message-info{color:#619013;font-weight:500;font-size:12px}.crm-message-error{color:#E11D48;font-weight:500;font-size:12px}";
@@ -32,7 +32,7 @@ const CrmBonus = /*@__PURE__*/ proxyCustomElement(class CrmBonus extends H {
32
32
  this.message = undefined;
33
33
  this.phone = undefined;
34
34
  this.pinInfo = undefined;
35
- this.step = StepFormEnum.STEP_PHONE;
35
+ this.step = StepFormEnum.STEP_RESERVE;
36
36
  this.bonus = undefined;
37
37
  this.sucess = "";
38
38
  this.error = "";
@@ -101,8 +101,16 @@ const CrmBonus = /*@__PURE__*/ proxyCustomElement(class CrmBonus extends H {
101
101
  this.error = "";
102
102
  try {
103
103
  const _phone = this.convertStringToNumber();
104
- this.pinInfo = await this.crmBonusService.sendPin(_phone, (_a = this.customer) === null || _a === void 0 ? void 0 : _a.name, this.storeName);
105
- if (localStorage.getItem(`bc:${this.phone}`)) {
104
+ const pinInfoCache = localStorage.getItem(`bc:${this.phone}`);
105
+ if (!pinInfoCache) {
106
+ this.pinInfo = await this.crmBonusService.sendPin(_phone, (_a = this.customer) === null || _a === void 0 ? void 0 : _a.name, this.storeName);
107
+ }
108
+ if (pinInfoCache) {
109
+ const bonus = JSON.parse(pinInfoCache);
110
+ this.pinInfo = {
111
+ storeId: bonus.storeId,
112
+ userId: bonus.userId
113
+ };
106
114
  await this.validateBonus("2018");
107
115
  this.step = StepFormEnum.STEP_RESERVE;
108
116
  }
@@ -154,7 +162,7 @@ const CrmBonus = /*@__PURE__*/ proxyCustomElement(class CrmBonus extends H {
154
162
  }
155
163
  this.sucess = "Código validado com sucesso!";
156
164
  localStorage.setItem(getKeyReserveByCartId(this.cartId), JSON.stringify(Object.assign(Object.assign({}, this.bonus), { phone: this.phone })));
157
- localStorage.setItem(`bc:${this.phone}`, StatusGiftBackProcess.VALIDATE);
165
+ localStorage.setItem(`bc:${this.phone}`, JSON.stringify(this.bonus));
158
166
  localStorage.setItem(USED_KEY, "use");
159
167
  localStorage.setItem(this.cartId, this.bonus.bonusBalance.toString());
160
168
  this.step = StepFormEnum.STEP_RESERVE;
@@ -223,11 +231,11 @@ const CrmBonus = /*@__PURE__*/ proxyCustomElement(class CrmBonus extends H {
223
231
  });
224
232
  }
225
233
  render() {
226
- return (h("div", { key: '778583d054357862ca4ad6a1bd524c409b430911', class: "crm-container-form fbits-responsive-carrinho-desconto" }, h("label", { key: 'ae1c6c8afbf88d07bb526b0a158916e7ec0014d3', class: "crm-title" }, this.config.giftbackTitle), this.step === StepFormEnum.STEP_PHONE &&
227
- h("phone-form", { key: '31bf9898b1fdb575ed560aa13b73ec9fd9a5537c', value: this.customer.phone, config: this.config, loading: this.loading, handlerSubmit: (phone) => this.handleSendPin(phone) }), this.step === StepFormEnum.STEP_PIN &&
228
- h("pin-form", { key: '55812e5fa6d92c280d65c8f67c45242ca364ac27', config: this.config, phone: this.phone, cancel: () => this.changePhone(), resend: () => this.sendPin(), validate: (data) => this.validateBonus(data), loading: this.loading }, this.sucess && h("p", { key: 'cac22336738f13aa8e9ae046786e5a94546677f8', class: "crm-message-info" }, this.sucess), this.error && h("p", { key: 'd774390972549f09cf11283521729af42b9d56c8', class: "crm-message-error" }, this.error)), this.step === StepFormEnum.STEP_RESERVE &&
229
- h("giftback-info", { key: 'b42c9837a08e2061e03a484fd897f7e8801f0390', loading: this.loading, cancel: () => this.handleCancel(), bonus: this.bonus, reserve: () => this.processBonus() }), this.step === StepFormEnum.STEP_NO_BONUS &&
230
- (h("div", { key: 'f18f039e27fec65525bb7e19ed230718bf8213a6', class: "container-message" }, instance.t("noGiftback", { storename: this.config.giftbackTitle })))));
234
+ return (h("div", { key: '8688dac964a3a3daecf5986f90b4a59b853d523a', class: "crm-container-form fbits-responsive-carrinho-desconto" }, h("label", { key: '741e87d6f9e1cb552e02de008ed3b2367212b7a2', class: "crm-title" }, this.config.giftbackTitle), this.step === StepFormEnum.STEP_PHONE &&
235
+ h("phone-form", { key: '3a4d3dc394992b125ef5d4f1b866f2564c7b94f2', value: this.customer.phone, config: this.config, loading: this.loading, handlerSubmit: (phone) => this.handleSendPin(phone) }), this.step === StepFormEnum.STEP_PIN &&
236
+ h("pin-form", { key: '51f2971e70e2754c2239829beed107bac0662ed0', config: this.config, phone: this.phone, cancel: () => this.changePhone(), resend: () => this.sendPin(), validate: (data) => this.validateBonus(data), loading: this.loading }, this.sucess && h("p", { key: 'efad1263d619e957538e3a762474565623472452', class: "crm-message-info" }, this.sucess), this.error && h("p", { key: '8a285abd7c1c6c080bb1373ebdb38d310773a780', class: "crm-message-error" }, this.error)), this.step === StepFormEnum.STEP_RESERVE &&
237
+ h("giftback-info", { key: '24b5eb9c0343d735e5b2c4353e6bf5481a1ab9ba', loading: this.loading, cancel: () => this.handleCancel(), bonus: this.bonus, reserve: () => this.processBonus() }), this.step === StepFormEnum.STEP_NO_BONUS &&
238
+ (h("div", { key: '8f9d285c771f3af288c4b54df4ff8c83c0e2bc7b', class: "container-message" }, instance.t("noGiftback", { storename: this.config.giftbackTitle })))));
231
239
  }
232
240
  static get style() { return CrmGiftbackFormStyle0; }
233
241
  }, [0, "crm-giftback-form", {
@@ -307,4 +315,4 @@ defineCustomElement();
307
315
 
308
316
  export { CrmBonus as C, defineCustomElement as d };
309
317
 
310
- //# sourceMappingURL=p-cb164cb2.js.map
318
+ //# sourceMappingURL=p-3c196b20.js.map