cloudcommerce 0.0.133 → 0.1.1

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 (304) hide show
  1. package/.vscode/settings.json +2 -1
  2. package/CHANGELOG.md +37 -0
  3. package/action.yml +13 -5
  4. package/ecomplus-stores/monocard/.vscode/settings.json +5 -1
  5. package/ecomplus-stores/monocard/functions/core/package.json +2 -2
  6. package/ecomplus-stores/monocard/functions/events/package.json +3 -3
  7. package/ecomplus-stores/monocard/functions/modules/package.json +3 -3
  8. package/ecomplus-stores/monocard/functions/passport/package.json +3 -3
  9. package/ecomplus-stores/monocard/functions/ssr/package.json +15 -11
  10. package/ecomplus-stores/monocard/functions/ssr/src/pages/_vue.ts +3 -0
  11. package/ecomplus-stores/monocard/package.json +1 -1
  12. package/ecomplus-stores/tia-sonia/.firebaserc +5 -0
  13. package/ecomplus-stores/tia-sonia/.vscode/settings.json +5 -1
  14. package/ecomplus-stores/tia-sonia/functions/config.json +2 -2
  15. package/ecomplus-stores/tia-sonia/functions/core/package.json +2 -2
  16. package/ecomplus-stores/tia-sonia/functions/events/package.json +3 -3
  17. package/ecomplus-stores/tia-sonia/functions/modules/package.json +3 -3
  18. package/ecomplus-stores/tia-sonia/functions/passport/package.json +3 -3
  19. package/ecomplus-stores/tia-sonia/functions/ssr/package.json +15 -7
  20. package/ecomplus-stores/tia-sonia/functions/ssr/src/pages/_vue.ts +3 -0
  21. package/ecomplus-stores/tia-sonia/functions/ssr/src/scripts/InlineScripts.astro +6 -7
  22. package/ecomplus-stores/tia-sonia/package.json +1 -1
  23. package/package.json +8 -9
  24. package/packages/api/fetch-polyfill.js +1 -1
  25. package/packages/api/package.json +1 -1
  26. package/packages/api/tests/index.test.ts +0 -1
  27. package/packages/apps/correios/package.json +1 -1
  28. package/packages/apps/custom-payment/CHANGELOG.md +1 -0
  29. package/packages/apps/custom-payment/README.md +1 -0
  30. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.d.ts +68 -0
  31. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.js +55 -0
  32. package/packages/apps/custom-payment/lib/custom-payment-create-transaction.js.map +1 -0
  33. package/packages/apps/custom-payment/lib/custom-payment-list-payments.d.ts +3 -0
  34. package/packages/apps/custom-payment/lib/custom-payment-list-payments.js +79 -0
  35. package/packages/apps/custom-payment/lib/custom-payment-list-payments.js.map +1 -0
  36. package/packages/apps/custom-payment/lib/custom-payment.d.ts +68 -0
  37. package/packages/apps/custom-payment/lib/custom-payment.js +11 -0
  38. package/packages/apps/custom-payment/lib/custom-payment.js.map +1 -0
  39. package/packages/apps/custom-payment/lib/index.d.ts +1 -0
  40. package/packages/apps/custom-payment/lib/index.js +2 -0
  41. package/packages/apps/custom-payment/lib/index.js.map +1 -0
  42. package/packages/apps/custom-payment/package.json +27 -0
  43. package/packages/apps/custom-payment/src/custom-payment-create-transaction.ts +67 -0
  44. package/packages/apps/custom-payment/src/custom-payment-list-payments.ts +96 -0
  45. package/packages/apps/custom-payment/src/custom-payment.ts +11 -0
  46. package/packages/apps/custom-payment/src/index.ts +1 -0
  47. package/packages/apps/custom-payment/tsconfig.json +6 -0
  48. package/packages/apps/custom-shipping/package.json +1 -1
  49. package/packages/apps/discounts/package.json +1 -1
  50. package/packages/apps/emails/package.json +2 -2
  51. package/packages/apps/frenet/package.json +1 -1
  52. package/packages/apps/galaxpay/CHANGELOG.md +1 -0
  53. package/packages/apps/galaxpay/README.md +1 -0
  54. package/packages/apps/galaxpay/assets/onload-expression.js +23 -0
  55. package/packages/apps/galaxpay/events.js +1 -0
  56. package/packages/apps/galaxpay/lib/functions-lib/all-parses.d.ts +5 -0
  57. package/packages/apps/galaxpay/lib/functions-lib/all-parses.js +79 -0
  58. package/packages/apps/galaxpay/lib/functions-lib/all-parses.js.map +1 -0
  59. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.d.ts +3 -0
  60. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js +75 -0
  61. package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js.map +1 -0
  62. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.d.ts +11 -0
  63. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.js +60 -0
  64. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.js.map +1 -0
  65. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.d.ts +2 -0
  66. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.js +20 -0
  67. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-axios.js.map +1 -0
  68. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.d.ts +2 -0
  69. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.js +32 -0
  70. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/gerate-token.js.map +1 -0
  71. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.d.ts +30 -0
  72. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.js +73 -0
  73. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.js.map +1 -0
  74. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.d.ts +8 -0
  75. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js +56 -0
  76. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js.map +1 -0
  77. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.d.ts +3 -0
  78. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js +291 -0
  79. package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js.map +1 -0
  80. package/packages/apps/galaxpay/lib/functions-lib/utils.d.ts +8 -0
  81. package/packages/apps/galaxpay/lib/functions-lib/utils.js +17 -0
  82. package/packages/apps/galaxpay/lib/functions-lib/utils.js.map +1 -0
  83. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.d.ts +71 -0
  84. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js +199 -0
  85. package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js.map +1 -0
  86. package/packages/apps/galaxpay/lib/galaxpay-events.d.ts +6 -0
  87. package/packages/apps/galaxpay/lib/galaxpay-events.js +21 -0
  88. package/packages/apps/galaxpay/lib/galaxpay-events.js.map +1 -0
  89. package/packages/apps/galaxpay/lib/galaxpay-list-payments.d.ts +7 -0
  90. package/packages/apps/galaxpay/lib/galaxpay-list-payments.js +105 -0
  91. package/packages/apps/galaxpay/lib/galaxpay-list-payments.js.map +1 -0
  92. package/packages/apps/galaxpay/lib/galaxpay.d.ts +76 -0
  93. package/packages/apps/galaxpay/lib/galaxpay.js +12 -0
  94. package/packages/apps/galaxpay/lib/galaxpay.js.map +1 -0
  95. package/packages/apps/galaxpay/lib/index.d.ts +1 -0
  96. package/packages/apps/galaxpay/lib/index.js +3 -0
  97. package/packages/apps/galaxpay/lib/index.js.map +1 -0
  98. package/packages/apps/galaxpay/package.json +36 -0
  99. package/packages/apps/galaxpay/scripts/build.sh +5 -0
  100. package/packages/apps/galaxpay/src/functions-lib/all-parses.ts +91 -0
  101. package/packages/apps/galaxpay/src/functions-lib/ecom/events-to-galaxpay.ts +85 -0
  102. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/create-access.ts +80 -0
  103. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/create-axios.ts +21 -0
  104. package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/gerate-token.ts +36 -0
  105. package/packages/apps/galaxpay/src/functions-lib/galaxpay/handle-plans.ts +92 -0
  106. package/packages/apps/galaxpay/src/functions-lib/galaxpay/update-subscription.ts +73 -0
  107. package/packages/apps/galaxpay/src/functions-lib/galaxpay/webhook.ts +381 -0
  108. package/packages/apps/galaxpay/src/functions-lib/utils.ts +23 -0
  109. package/packages/apps/galaxpay/src/galaxpay-create-transaction.ts +240 -0
  110. package/packages/apps/galaxpay/src/galaxpay-events.ts +28 -0
  111. package/packages/apps/galaxpay/src/galaxpay-list-payments.ts +130 -0
  112. package/packages/apps/galaxpay/src/galaxpay.ts +12 -0
  113. package/packages/apps/galaxpay/src/index.ts +2 -0
  114. package/packages/apps/galaxpay/tsconfig.json +6 -0
  115. package/packages/apps/galaxpay/types/config-app.d.ts +99 -0
  116. package/packages/apps/infinitepay/lib/infinitepay.js +1 -2
  117. package/packages/apps/infinitepay/lib/infinitepay.js.map +1 -1
  118. package/packages/apps/infinitepay/lib/ip-create-transaction.d.ts +1 -2
  119. package/packages/apps/infinitepay/lib/ip-create-transaction.js +3 -2
  120. package/packages/apps/infinitepay/lib/ip-create-transaction.js.map +1 -1
  121. package/packages/apps/infinitepay/lib/ip-list-payments.d.ts +1 -2
  122. package/packages/apps/infinitepay/lib/ip-list-payments.js.map +1 -1
  123. package/packages/apps/infinitepay/package.json +3 -3
  124. package/packages/apps/infinitepay/src/infinitepay.ts +1 -2
  125. package/packages/apps/infinitepay/src/ip-create-transaction.ts +8 -6
  126. package/packages/apps/infinitepay/src/ip-list-payments.ts +5 -3
  127. package/packages/apps/jadlog/CHANGELOG.md +1 -0
  128. package/packages/apps/jadlog/README.md +1 -0
  129. package/packages/apps/jadlog/lib/index.d.ts +1 -0
  130. package/packages/apps/jadlog/lib/index.js +2 -0
  131. package/packages/apps/jadlog/lib/index.js.map +1 -0
  132. package/packages/apps/jadlog/lib/jadlog.d.ts +2 -0
  133. package/packages/apps/jadlog/lib/jadlog.js +6 -0
  134. package/packages/apps/jadlog/lib/jadlog.js.map +1 -0
  135. package/packages/apps/jadlog/lib-mjs/calculate-jadlog.mjs +408 -0
  136. package/packages/apps/jadlog/lib-mjs/deadlines/range-0.mjs +147 -0
  137. package/packages/apps/jadlog/lib-mjs/deadlines/range-1.mjs +1149 -0
  138. package/packages/apps/jadlog/lib-mjs/deadlines/range-2.mjs +1137 -0
  139. package/packages/apps/jadlog/lib-mjs/deadlines/range-3.mjs +1638 -0
  140. package/packages/apps/jadlog/lib-mjs/deadlines/range-4.mjs +1089 -0
  141. package/packages/apps/jadlog/lib-mjs/deadlines/range-5.mjs +1101 -0
  142. package/packages/apps/jadlog/lib-mjs/deadlines/range-6.mjs +1893 -0
  143. package/packages/apps/jadlog/lib-mjs/deadlines/range-7.mjs +1371 -0
  144. package/packages/apps/jadlog/lib-mjs/deadlines/range-8.mjs +1401 -0
  145. package/packages/apps/jadlog/lib-mjs/deadlines/range-9.mjs +963 -0
  146. package/packages/apps/jadlog/lib-mjs/jadlog-get-deadlines.mjs +32 -0
  147. package/packages/apps/jadlog/package.json +28 -0
  148. package/packages/apps/jadlog/src/index.ts +1 -0
  149. package/packages/apps/jadlog/src/jadlog.ts +7 -0
  150. package/packages/apps/jadlog/tsconfig.json +6 -0
  151. package/packages/apps/loyalty-points/CHANGELOG.md +1 -0
  152. package/packages/apps/loyalty-points/README.md +1 -0
  153. package/packages/apps/loyalty-points/events.js +1 -0
  154. package/packages/apps/loyalty-points/lib/functions-lib/get-program-id.d.ts +5 -0
  155. package/packages/apps/loyalty-points/lib/functions-lib/get-program-id.js +20 -0
  156. package/packages/apps/loyalty-points/lib/functions-lib/get-program-id.js.map +1 -0
  157. package/packages/apps/loyalty-points/lib/functions-lib/handle-loyalty-points-event.d.ts +3 -0
  158. package/packages/apps/loyalty-points/lib/functions-lib/handle-loyalty-points-event.js +172 -0
  159. package/packages/apps/loyalty-points/lib/functions-lib/handle-loyalty-points-event.js.map +1 -0
  160. package/packages/apps/loyalty-points/lib/index.d.ts +1 -0
  161. package/packages/apps/loyalty-points/lib/index.js +2 -0
  162. package/packages/apps/loyalty-points/lib/index.js.map +1 -0
  163. package/packages/apps/loyalty-points/lib/loyalty-create-transaction.d.ts +76 -0
  164. package/packages/apps/loyalty-points/lib/loyalty-create-transaction.js +210 -0
  165. package/packages/apps/loyalty-points/lib/loyalty-create-transaction.js.map +1 -0
  166. package/packages/apps/loyalty-points/lib/loyalty-list-payments.d.ts +3 -0
  167. package/packages/apps/loyalty-points/lib/loyalty-list-payments.js +44 -0
  168. package/packages/apps/loyalty-points/lib/loyalty-list-payments.js.map +1 -0
  169. package/packages/apps/loyalty-points/lib/loyalty-points-events.d.ts +4 -0
  170. package/packages/apps/loyalty-points/lib/loyalty-points-events.js +28 -0
  171. package/packages/apps/loyalty-points/lib/loyalty-points-events.js.map +1 -0
  172. package/packages/apps/loyalty-points/lib/loyalty-points.d.ts +77 -0
  173. package/packages/apps/loyalty-points/lib/loyalty-points.js +12 -0
  174. package/packages/apps/loyalty-points/lib/loyalty-points.js.map +1 -0
  175. package/packages/apps/loyalty-points/package.json +32 -0
  176. package/packages/apps/loyalty-points/src/functions-lib/get-program-id.ts +23 -0
  177. package/packages/apps/loyalty-points/src/functions-lib/handle-loyalty-points-event.ts +207 -0
  178. package/packages/apps/loyalty-points/src/index.ts +1 -0
  179. package/packages/apps/loyalty-points/src/loyalty-create-transaction.ts +241 -0
  180. package/packages/apps/loyalty-points/src/loyalty-list-payments.ts +55 -0
  181. package/packages/apps/loyalty-points/src/loyalty-points-events.ts +41 -0
  182. package/packages/apps/loyalty-points/src/loyalty-points.ts +12 -0
  183. package/packages/apps/loyalty-points/tsconfig.json +6 -0
  184. package/packages/apps/mercadopago/lib/mercadopago.js +1 -2
  185. package/packages/apps/mercadopago/lib/mercadopago.js.map +1 -1
  186. package/packages/apps/mercadopago/lib/mp-create-transaction.d.ts +1 -2
  187. package/packages/apps/mercadopago/lib/mp-create-transaction.js +3 -2
  188. package/packages/apps/mercadopago/lib/mp-create-transaction.js.map +1 -1
  189. package/packages/apps/mercadopago/lib/mp-list-payments.d.ts +1 -2
  190. package/packages/apps/mercadopago/lib/mp-list-payments.js +2 -1
  191. package/packages/apps/mercadopago/lib/mp-list-payments.js.map +1 -1
  192. package/packages/apps/mercadopago/package.json +3 -3
  193. package/packages/apps/mercadopago/src/mercadopago.ts +1 -2
  194. package/packages/apps/mercadopago/src/mp-create-transaction.ts +12 -10
  195. package/packages/apps/mercadopago/src/mp-list-payments.ts +9 -7
  196. package/packages/apps/pagarme/lib/pagarme-create-transaction.js.map +1 -1
  197. package/packages/apps/pagarme/lib/pagarme-list-payments.d.ts +1 -2
  198. package/packages/apps/pagarme/lib/pagarme-list-payments.js.map +1 -1
  199. package/packages/apps/pagarme/package.json +3 -3
  200. package/packages/apps/pagarme/src/pagarme-create-transaction.ts +5 -3
  201. package/packages/apps/pagarme/src/pagarme-list-payments.ts +5 -3
  202. package/packages/apps/pix/lib/functions-lib/pix-auth/construtor.js +1 -1
  203. package/packages/apps/pix/lib/functions-lib/pix-auth/construtor.js.map +1 -1
  204. package/packages/apps/pix/lib/pix-create-transaction.d.ts +1 -2
  205. package/packages/apps/pix/lib/pix-create-transaction.js +6 -5
  206. package/packages/apps/pix/lib/pix-create-transaction.js.map +1 -1
  207. package/packages/apps/pix/lib/pix-list-payments.d.ts +1 -2
  208. package/packages/apps/pix/lib/pix-list-payments.js.map +1 -1
  209. package/packages/apps/pix/lib/pix-webhook.js +1 -1
  210. package/packages/apps/pix/lib/pix-webhook.js.map +1 -1
  211. package/packages/apps/pix/lib/pix.js +1 -2
  212. package/packages/apps/pix/lib/pix.js.map +1 -1
  213. package/packages/apps/pix/package.json +3 -3
  214. package/packages/apps/pix/src/functions-lib/pix-auth/construtor.ts +1 -1
  215. package/packages/apps/pix/src/pix-create-transaction.ts +10 -9
  216. package/packages/apps/pix/src/pix-list-payments.ts +5 -3
  217. package/packages/apps/pix/src/pix-webhook.ts +1 -1
  218. package/packages/apps/pix/src/pix.ts +1 -2
  219. package/packages/apps/tiny-erp/package.json +3 -3
  220. package/packages/cli/package.json +1 -1
  221. package/packages/config/package.json +1 -1
  222. package/packages/emails/package.json +2 -2
  223. package/packages/events/lib/firebase.js +4 -0
  224. package/packages/events/lib/firebase.js.map +1 -1
  225. package/packages/events/package.json +5 -3
  226. package/packages/events/src/firebase.ts +4 -0
  227. package/packages/firebase/lib/config.d.ts +14 -0
  228. package/packages/firebase/lib/config.js +21 -0
  229. package/packages/firebase/lib/config.js.map +1 -1
  230. package/packages/firebase/lib/init.d.ts +0 -1
  231. package/packages/firebase/lib/init.js +0 -1
  232. package/packages/firebase/lib/init.js.map +1 -1
  233. package/packages/firebase/package.json +3 -4
  234. package/packages/firebase/src/config.ts +23 -0
  235. package/packages/firebase/src/init.ts +0 -1
  236. package/packages/i18n/lib/en_us/i19get$1back.txt +1 -0
  237. package/packages/i18n/lib/en_us.d.ts +1 -0
  238. package/packages/i18n/lib/en_us.js +1 -0
  239. package/packages/i18n/lib/en_us.js.map +1 -1
  240. package/packages/i18n/lib/pt_br/i19get$1back.txt +1 -0
  241. package/packages/i18n/lib/pt_br/i19get.txt +1 -1
  242. package/packages/i18n/lib/pt_br.d.ts +2 -1
  243. package/packages/i18n/lib/pt_br.js +2 -1
  244. package/packages/i18n/lib/pt_br.js.map +1 -1
  245. package/packages/i18n/package.json +1 -1
  246. package/packages/i18n/src/en_us.ts +1 -0
  247. package/packages/i18n/src/pt_br.ts +2 -1
  248. package/packages/modules/lib/firebase/call-app-module.js +83 -51
  249. package/packages/modules/lib/firebase/call-app-module.js.map +1 -1
  250. package/packages/modules/package.json +7 -3
  251. package/packages/modules/src/firebase/call-app-module.ts +49 -24
  252. package/packages/passport/package.json +3 -3
  253. package/packages/ssr/lib/firebase.js +1 -2
  254. package/packages/ssr/lib/firebase.js.map +1 -1
  255. package/packages/ssr/package.json +5 -5
  256. package/packages/ssr/src/firebase.ts +1 -2
  257. package/packages/storefront/.eslintrc.cjs +1 -1
  258. package/packages/storefront/.nvmrc +1 -0
  259. package/packages/storefront/dist/client/HeaderButtons.8acf8a3b.js +1 -0
  260. package/packages/storefront/dist/client/Prices.9099fe99.js +1 -0
  261. package/packages/storefront/dist/client/ProductCard.7b68cc35.js +1 -0
  262. package/packages/storefront/dist/client/assets/_...slug_.f19a16ca.css +1 -0
  263. package/packages/storefront/dist/client/assets/index.e6a09532.css +1 -0
  264. package/packages/storefront/dist/client/assets/server.55b8d73d.css +1 -0
  265. package/packages/storefront/dist/client/chunks/HeaderButtons.cbbb059d.js +1 -0
  266. package/packages/storefront/dist/client/chunks/{LoginForm.83fec3a1.js → LoginForm.ac2f1b1f.js} +1 -1
  267. package/packages/storefront/dist/client/chunks/Prices.vue_vue_type_script_setup_true_lang.c37148c1.js +1 -0
  268. package/packages/storefront/dist/client/chunks/_plugin-vue_export-helper.5ccc5d75.js +1 -0
  269. package/packages/storefront/dist/client/chunks/{price.130e6005.js → price.ecf7fed4.js} +1 -1
  270. package/packages/storefront/dist/client/chunks/runtime-core.esm-bundler.d5646b29.js +1 -0
  271. package/packages/storefront/dist/client/client.9783ef49.js +1 -0
  272. package/packages/storefront/dist/client/hoisted.f6ee2883.js +1 -0
  273. package/packages/storefront/dist/client/sw.js +1 -1
  274. package/packages/storefront/dist/server/entry.mjs +2400 -250
  275. package/packages/storefront/package.json +12 -9
  276. package/packages/storefront/src/lib/assets/base.css +4 -0
  277. package/packages/storefront/src/lib/components/Prices.vue +165 -0
  278. package/packages/storefront/src/lib/components/ProductCard.vue +36 -0
  279. package/packages/storefront/src/lib/components/globals/Fade.vue +171 -0
  280. package/packages/storefront/src/lib/composables/use-component-variant.ts +13 -0
  281. package/packages/storefront/src/lib/composables/use-prices.ts +172 -0
  282. package/packages/storefront/src/lib/layouts/BaseBody.astro +1 -0
  283. package/packages/storefront/src/lib/pages/_vue.ts +13 -1
  284. package/packages/storefront/src/lib/state/modules-info.ts +1 -1
  285. package/packages/storefront/src/vue-globals.d.ts +9 -2
  286. package/packages/storefront/tailwind.config.cjs +1 -0
  287. package/packages/storefront/uno.config.cjs +1 -0
  288. package/packages/types/package.json +1 -1
  289. package/store.renovate.json +2 -1
  290. package/packages/storefront/dist/client/HeaderButtons.1968a9ac.js +0 -1
  291. package/packages/storefront/dist/client/Price.c4aab3ea.js +0 -1
  292. package/packages/storefront/dist/client/assets/_...slug_.580c5aa4.css +0 -1
  293. package/packages/storefront/dist/client/chunks/HeaderButtons.5a0e371e.js +0 -1
  294. package/packages/storefront/dist/client/chunks/runtime-core.esm-bundler.4dae6bc1.js +0 -1
  295. package/packages/storefront/dist/client/chunks/runtime-dom.esm-bundler.7a999c6c.js +0 -1
  296. package/packages/storefront/dist/client/client.79a40b9d.js +0 -1
  297. package/packages/storefront/dist/client/hoisted.cce93d56.js +0 -1
  298. package/packages/storefront/src/lib/components/Price/PriceCashback.vue +0 -13
  299. package/packages/storefront/src/lib/components/Price/PriceCompare.vue +0 -13
  300. package/packages/storefront/src/lib/components/Price/PriceDiscountLabel.vue +0 -13
  301. package/packages/storefront/src/lib/components/Price/PriceInstallments.vue +0 -13
  302. package/packages/storefront/src/lib/components/Price/PriceSale.vue +0 -13
  303. package/packages/storefront/src/lib/components/Price/PriceWithDiscount.vue +0 -13
  304. package/packages/storefront/src/lib/components/Price.vue +0 -57
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events-to-galaxpay.js","sourceRoot":"","sources":["../../../src/functions-lib/ecom/events-to-galaxpay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { AxiosInstance } from 'axios';
2
+ type Option = {
3
+ galaxpayId: string;
4
+ galaxpayHash: string;
5
+ };
6
+ export default class GalaxPay {
7
+ preparing: Promise<unknown>;
8
+ axios: AxiosInstance | undefined;
9
+ constructor(options: Option);
10
+ }
11
+ export {};
@@ -0,0 +1,60 @@
1
+ import { getFirestore } from 'firebase-admin/firestore';
2
+ import logger from 'firebase-functions/logger';
3
+ import { isSandbox } from '../../utils.js';
4
+ import gerateAccessToken from './gerate-token.js';
5
+ import createAxios from './create-axios.js';
6
+
7
+ const { GALAXPAY_PARTNER_ID, GALAXPAY_PARTNER_HASH } = process.env;
8
+ const firestoreColl = 'galaxpayTokens';
9
+
10
+ export default class GalaxPay {
11
+ constructor(options) {
12
+ const { galaxpayId, galaxpayHash } = options;
13
+ const self = this;
14
+ let documentRef;
15
+ const hashLogin = Buffer.from(`${galaxpayId}:${galaxpayHash}`).toString('base64');
16
+ if (firestoreColl) {
17
+ documentRef = getFirestore()
18
+ .doc(`${firestoreColl}/${hashLogin}`);
19
+ }
20
+ let galaxpayPartnerHash;
21
+ if (GALAXPAY_PARTNER_ID && GALAXPAY_PARTNER_HASH) {
22
+ galaxpayPartnerHash = Buffer.from(`${GALAXPAY_PARTNER_ID}:${GALAXPAY_PARTNER_HASH}`).toString('base64');
23
+ }
24
+ this.preparing = new Promise((resolve, reject) => {
25
+ const authenticate = (token) => {
26
+ self.axios = createAxios(token, isSandbox);
27
+ resolve(self);
28
+ };
29
+ const handleAuth = () => {
30
+ logger.log('>(App Galaxpay) Auth02 ');
31
+ gerateAccessToken(hashLogin, isSandbox, galaxpayPartnerHash)
32
+ .then((accessToken) => {
33
+ // logger.log(`>(App Galaxpay) ${hashLogin}: ${accessToken}`);
34
+ authenticate(accessToken);
35
+ if (documentRef) {
36
+ documentRef.set({ accessToken }).catch(logger.error);
37
+ }
38
+ })
39
+ .catch(reject);
40
+ };
41
+ if (documentRef) {
42
+ documentRef.get()
43
+ .then((documentSnapshot) => {
44
+ if (documentSnapshot.exists
45
+ && Date.now() - documentSnapshot.updateTime.toDate().getTime()
46
+ <= 9 * 60 * 1000 // access token expires in 10 minutes
47
+ ) {
48
+ authenticate(documentSnapshot.get('accessToken'));
49
+ } else {
50
+ handleAuth();
51
+ }
52
+ })
53
+ .catch(logger.error);
54
+ } else {
55
+ handleAuth();
56
+ }
57
+ });
58
+ }
59
+ }
60
+ // # sourceMappingURL=create-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-access.js","sourceRoot":"","sources":["../../../../src/functions-lib/galaxpay/auth/create-access.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,iBAAiB,MAAM,gBAAgB,CAAC;AAC/C,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,MAAM,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEnE,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAOvC,MAAM,CAAC,OAAO,OAAO,QAAQ;IAI3B,YAAY,OAAe;QACzB,MAAM,EACJ,UAAU,EACV,YAAY,GACb,GAAG,OAAO,CAAC;QAEZ,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,WAAW,CAAC;QAChB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAElF,IAAI,aAAa,EAAE;YACjB,WAAW,GAAG,YAAY,EAAE;iBACzB,GAAG,CAAC,GAAG,aAAa,IAAI,SAAS,EAAE,CAAC,CAAC;SACzC;QAED,IAAI,mBAAuC,CAAC;QAE5C,IAAI,mBAAmB,IAAI,qBAAqB,EAAE;YAChD,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,mBAAmB,IAAI,qBAAqB,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SACzG;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/C,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;gBACrC,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,GAAG,EAAE;gBACtB,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACtC,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,mBAAmB,CAAC;qBACzD,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;oBACpB,8DAA8D;oBAC9D,YAAY,CAAC,WAAqB,CAAC,CAAC;oBACpC,IAAI,WAAW,EAAE;wBACf,WAAW,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;qBACtD;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC,CAAC;YAEF,IAAI,WAAW,EAAE;gBACf,WAAW,CAAC,GAAG,EAAE;qBACd,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBACzB,IAAI,gBAAgB,CAAC,MAAM;2BACtB,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;+BAC3D,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qCAAqC;sBACtD;wBACA,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;qBACnD;yBAAM;wBACL,UAAU,EAAE,CAAC;qBACd;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACxB;iBAAM;gBACL,UAAU,EAAE,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ declare const _default: (accessToken: string | undefined | null, isSandbox?: boolean) => import("axios").AxiosInstance;
2
+ export default _default;
@@ -0,0 +1,20 @@
1
+ import axios from 'axios';
2
+
3
+ // import logger from 'firebase-functions/logger';
4
+ export default (accessToken, isSandbox) => {
5
+ // https://docs.galaxpay.com.br/autenticacao
6
+ // https://docs.galaxpay.com.br/auth/token
7
+ const headers = {
8
+ 'Content-Type': 'application/json',
9
+ };
10
+ if (accessToken) {
11
+ // logger.log('>(App GalaxPay) token: ', accessToken);
12
+ Object.assign(headers, { Authorization: `Bearer ${accessToken}` });
13
+ Object.assign(headers, { 'Accept-Encoding': 'gzip,deflate,compress' });
14
+ }
15
+ return axios.create({
16
+ baseURL: `https://api.${isSandbox ? 'sandbox.cloud.' : ''}galaxpay.com.br/v2`,
17
+ headers,
18
+ });
19
+ };
20
+ // # sourceMappingURL=create-axios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-axios.js","sourceRoot":"","sources":["../../../../src/functions-lib/galaxpay/auth/create-axios.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,kDAAkD;AAElD,eAAe,CAAC,WAAsC,EAAE,SAAmB,EAAE,EAAE;IAC7E,4CAA4C;IAC5C,0CAA0C;IAE1C,MAAM,OAAO,GAAG;QACd,cAAc,EAAE,kBAAkB;KACnC,CAAC;IACF,IAAI,WAAW,EAAE;QACf,sDAAsD;QACtD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,CAAC,CAAC;KACxE;IAED,OAAO,KAAK,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,eAAe,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB;QAC7E,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const gereteToken: (hashLogin: string, isSandbox?: boolean, galaxpayPartnerHash?: string) => Promise<unknown>;
2
+ export default gereteToken;
@@ -0,0 +1,32 @@
1
+ // import logger from 'firebase-functions/logger';
2
+ import Axios from './create-axios.js';
3
+
4
+ const gereteToken = (hashLogin, isSandbox, galaxpayPartnerHash) => new Promise((resolve, reject) => {
5
+ // https://docs.galaxpay.com.br/autenticacao
6
+ // https://docs.galaxpay.com.br/auth/token
7
+ const axios = Axios(null, isSandbox);
8
+ const request = (isRetry) => {
9
+ const headers = { Authorization: `Basic ${hashLogin}` };
10
+ if (!isSandbox && galaxpayPartnerHash) {
11
+ // logger.log('#AuthorizationPartner ');
12
+ Object.assign(headers, { AuthorizationPartner: galaxpayPartnerHash });
13
+ }
14
+ axios.post('/token', {
15
+ grant_type: 'authorization_code',
16
+ scope: 'customers.read customers.write plans.read plans.write transactions.read transactions.write webhooks.write cards.read cards.write card-brands.read subscriptions.read subscriptions.write charges.read charges.write boletos.read',
17
+ }, { headers })
18
+ .then(({ data }) => {
19
+ resolve(data.access_token);
20
+ })
21
+ .catch((err) => {
22
+ if (!isRetry && err.response && err.response.status >= 429) {
23
+ setTimeout(() => request(true), 700);
24
+ }
25
+ reject(err);
26
+ });
27
+ };
28
+ request();
29
+ });
30
+
31
+ export default gereteToken;
32
+ // # sourceMappingURL=gerate-token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gerate-token.js","sourceRoot":"","sources":["../../../../src/functions-lib/galaxpay/auth/gerate-token.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC,MAAM,WAAW,GAAG,CAClB,SAAiB,EACjB,SAAmB,EACnB,mBAA4B,EAC5B,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IACnC,4CAA4C;IAC5C,0CAA0C;IAE1C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,CAAC,OAAiB,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,EAAE,aAAa,EAAE,SAAS,SAAS,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,SAAS,IAAI,mBAAmB,EAAE;YACrC,wCAAwC;YACxC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC,CAAC;SACvE;QACD,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;YACnB,UAAU,EAAE,oBAAoB;YAChC,KAAK,EAAE,kOAAkO;SAC1O,EAAE,EAAE,OAAO,EAAE,CAAC;aACZ,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;YACjB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7B,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE;gBAC1D,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;aACtC;YACD,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IACF,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { GalaxpayApp } from '../../../types/config-app';
2
+ import type { ListPaymentsParams } from '@cloudcommerce/types/modules/list_payments:params';
3
+ declare const handleGateway: (appData: GalaxpayApp) => {
4
+ label: string;
5
+ periodicity: "Semanal" | "Quinzenal" | "Mensal" | "Bimestral" | "Trimestral" | "Semestral" | "Anual";
6
+ quantity: any;
7
+ discount: {
8
+ percentage: boolean;
9
+ value: number;
10
+ apply_at: "total" | "subtotal" | "frete";
11
+ min_amount?: number | undefined;
12
+ };
13
+ }[];
14
+ declare const findPlanToCreateTransction: (label: string | undefined, appData: GalaxpayApp) => {
15
+ label: string;
16
+ periodicity: "Semanal" | "Quinzenal" | "Mensal" | "Bimestral" | "Trimestral" | "Semestral" | "Anual";
17
+ quantity: any;
18
+ discount: {
19
+ percentage: boolean;
20
+ value: number;
21
+ apply_at: "total" | "subtotal" | "frete";
22
+ min_amount?: number | undefined;
23
+ };
24
+ } | undefined;
25
+ declare const discountPlan: (planDiscount: Exclude<GalaxpayApp['plans'], undefined>[number]['discount'], amount: Exclude<ListPaymentsParams['amount'], undefined>) => {
26
+ value: number;
27
+ apply_at: "total" | "subtotal" | "freight";
28
+ type: "fixed" | "percentage" | undefined;
29
+ } | null;
30
+ export { handleGateway, findPlanToCreateTransction, discountPlan, };
@@ -0,0 +1,73 @@
1
+ // type Gateway = ListPaymentsResponse['payment_gateways'][number]
2
+ const handleGateway = (appData) => {
3
+ const plans = [];
4
+ if (appData.plans) {
5
+ // Newer versions of the app will have a list of plans
6
+ appData.plans.forEach((plan) => {
7
+ plans.push(plan);
8
+ });
9
+ }
10
+ return plans;
11
+ };
12
+ // for create-transaction
13
+ const findPlanToCreateTransction = (label, appData) => {
14
+ let sendPlan;
15
+ if (appData.plans) {
16
+ /*
17
+ More recent versions of the application will have a list of plans,
18
+ where it will be necessary to find the plan by name,
19
+ and return it since it will be necessary to use the periodicity and quantity property
20
+ */
21
+ // find plan by name (label)
22
+ appData.plans.forEach((plan) => {
23
+ // if the name of the plan is blank, on the list-payments side it is set to 'Plano'
24
+ let planLabel = plan.label || 'Plano';
25
+ planLabel = `${planLabel} ${plan.periodicity}`;
26
+ label = label?.trim();
27
+ if (label === planLabel) {
28
+ sendPlan = plan;
29
+ }
30
+ });
31
+ }
32
+ return sendPlan;
33
+ };
34
+ const discountPlan = (planDiscount, amount) => {
35
+ if (planDiscount && planDiscount.value > 0) {
36
+ // default discount option
37
+ const discountOption = {
38
+ value: planDiscount.value,
39
+ apply_at: (planDiscount.apply_at === 'frete' ? 'freight' : planDiscount),
40
+ type: planDiscount.percentage ? 'percentage' : 'fixed',
41
+ };
42
+ if (amount.total) {
43
+ // check amount value to apply discount
44
+ if (planDiscount.min_amount && amount.total < planDiscount.min_amount) {
45
+ planDiscount.value = 0;
46
+ } else {
47
+ delete planDiscount.min_amount;
48
+ const maxDiscount = amount[discountOption.apply_at || 'subtotal'];
49
+ let discountValue;
50
+ if (maxDiscount && discountOption.type === 'percentage') {
51
+ discountValue = (maxDiscount * planDiscount.value) / 100;
52
+ } else {
53
+ discountValue = planDiscount.value;
54
+ if (maxDiscount && discountValue > maxDiscount) {
55
+ discountValue = maxDiscount;
56
+ }
57
+ }
58
+ if (discountValue && discountValue > 0) {
59
+ amount.discount = (amount.discount || 0) + discountValue;
60
+ amount.total -= discountValue;
61
+ if (amount.total < 0) {
62
+ amount.total = 0;
63
+ }
64
+ }
65
+ }
66
+ }
67
+ return discountOption;
68
+ }
69
+ return null;
70
+ };
71
+
72
+ export { handleGateway, findPlanToCreateTransction, discountPlan };
73
+ // # sourceMappingURL=handle-plans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-plans.js","sourceRoot":"","sources":["../../../src/functions-lib/galaxpay/handle-plans.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { Orders, Applications } from '@cloudcommerce/types';
2
+ declare const checkAmountItemsOrder: (amount: Orders['amount'], items: Exclude<Orders['items'], undefined>, plan: {
3
+ [x: string]: any;
4
+ }) => number;
5
+ declare const updateValueSubscription: (appData: Applications, subscriptionId: string, amount: Orders['amount'], items: Exclude<Orders['items'], undefined>, plan: {
6
+ [x: string]: any;
7
+ }) => Promise<unknown>;
8
+ export { updateValueSubscription, checkAmountItemsOrder, };
@@ -0,0 +1,56 @@
1
+ import GalaxpayAxios from './auth/create-access.js';
2
+
3
+ const checkAmountItemsOrder = (amount, items, plan) => {
4
+ let subtotal = 0;
5
+ let item;
6
+ for (let i = 0; i < items.length; i++) {
7
+ item = items[i];
8
+ if (item.flags && (item.flags.includes('freebie') || item.flags.includes('discount-set-free'))) {
9
+ items.splice(i, 1);
10
+ } else {
11
+ subtotal += item.quantity * (item.final_price || item.price);
12
+ }
13
+ }
14
+ amount.subtotal = subtotal;
15
+ amount.total = amount.subtotal + (amount.tax || 0) + (amount.freight || 0) + (amount.extra || 0);
16
+ let planDiscount;
17
+ if (plan && plan.discount) {
18
+ if (plan.discount.percentage) {
19
+ planDiscount = amount[plan.discount.apply_at];
20
+ planDiscount *= ((plan.discount.value) / 100);
21
+ }
22
+ }
23
+ // if the plan doesn't exist, because it's subscription before the update
24
+ if (plan) {
25
+ amount.discount = (plan.discount && !plan.discount.percentage
26
+ ? plan.discount.value : planDiscount) || 0;
27
+ }
28
+ if (amount.discount) {
29
+ amount.total -= amount.discount;
30
+ }
31
+ const total = amount.total - (amount.discount || 0); // BUG :(
32
+ return Math.floor(total.toFixed(2) * 100);
33
+ };
34
+ const updateValueSubscription = (appData, subscriptionId, amount, items, plan) => {
35
+ const value = checkAmountItemsOrder({ ...amount }, [...items], { ...plan });
36
+ return new Promise((resolve, reject) => {
37
+ const galaxpayAxios = new GalaxpayAxios({
38
+ galaxpayId: appData.hidden_data?.galaxpay_id,
39
+ galaxpayHash: appData.hidden_data?.galaxpay_hash,
40
+ });
41
+ galaxpayAxios.preparing
42
+ .then(async () => {
43
+ if (galaxpayAxios.axios) {
44
+ const { data } = await galaxpayAxios.axios.put(`subscriptions/${subscriptionId}/myId`, { value });
45
+ if (data.type) {
46
+ resolve(true);
47
+ }
48
+ }
49
+ }).catch((err) => {
50
+ reject(err);
51
+ });
52
+ });
53
+ };
54
+
55
+ export { updateValueSubscription, checkAmountItemsOrder };
56
+ // # sourceMappingURL=update-subscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-subscription.js","sourceRoot":"","sources":["../../../src/functions-lib/galaxpay/update-subscription.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Request, Response } from 'firebase-functions';
2
+ declare const handleWehook: (req: Request, res: Response) => Promise<Response<any>>;
3
+ export default handleWehook;
@@ -0,0 +1,291 @@
1
+ import api from '@cloudcommerce/api';
2
+ import { getFirestore } from 'firebase-admin/firestore';
3
+ import logger from 'firebase-functions/logger';
4
+ import { parseStatus, parsePeriodicityToEcom, gerateId } from '../all-parses.js';
5
+ import { updateValueSubscription, checkAmountItemsOrder } from './update-subscription.js';
6
+
7
+ const collectionSubscription = getFirestore().collection('subscriptions');
8
+ const getApp = async () => {
9
+ return new Promise((resolve, reject) => {
10
+ api.get('applications?app_id=123188&fields=hidden_data')
11
+ .then(({ data: result }) => {
12
+ resolve(result[0]);
13
+ })
14
+ .catch((err) => {
15
+ reject(err);
16
+ });
17
+ });
18
+ };
19
+ const checkStatus = (financialStatus, GalaxPayTransaction) => {
20
+ if (financialStatus.current === parseStatus(GalaxPayTransaction.status)) {
21
+ return true;
22
+ }
23
+ if ((financialStatus.current === 'paid' || financialStatus.current === 'authorized')
24
+ && parseStatus(GalaxPayTransaction.status) !== 'refunded') {
25
+ return true;
26
+ }
27
+ return false;
28
+ };
29
+ const checkStatusNotValid = (status) => {
30
+ const parsedStatus = parseStatus(status);
31
+ // logger.log('>> Status (', status, ')=> ', parsedStatus);
32
+ if (parsedStatus === 'unauthorized' || parsedStatus === 'refunded' || parsedStatus === 'voided') {
33
+ return true;
34
+ }
35
+ return false;
36
+ };
37
+ const checkPayDay = (strDate) => {
38
+ // check if today is 3 days before payday.
39
+ const payDay = new Date(strDate);
40
+ const nowTime = new Date().getTime() + 259200000; // add 3day to today
41
+ const now = new Date(nowTime);
42
+ return (now >= payDay);
43
+ };
44
+ const findOrderByTransactionId = (transactionId) => {
45
+ return new Promise((resolve, reject) => {
46
+ api.get(`orders?transactions._id=${transactionId}`)
47
+ .then(({ data: response }) => {
48
+ const resp = response; // TODO:
49
+ resolve(resp);
50
+ })
51
+ .catch((err) => {
52
+ reject(err);
53
+ });
54
+ });
55
+ };
56
+ const findOrderById = async (orderId) => new Promise((resolve) => {
57
+ api.get(`orders/${orderId}?fields=transactions,financial_status`).then(({ data: order }) => {
58
+ resolve(order);
59
+ });
60
+ });
61
+ const createTransaction = async (res, subscriptionLabel, plan, orderNumber, galaxpayFristTransactionId, GalaxPayTransaction, GalaxPaySubscription, GalaxPayTransactionValue, originalOrderId) => {
62
+ if (galaxpayFristTransactionId !== GalaxPayTransaction.galaxPayId) {
63
+ // let body;
64
+ const originalOrder = (await api.get(`orders/${originalOrderId}`)).data;
65
+ // logger.log('> Create new Order ')
66
+ if (originalOrder.transactions && originalOrder.items) {
67
+ const { installment } = GalaxPayTransaction;
68
+ const {
69
+ buyers, items, domain, amount,
70
+ } = originalOrder;
71
+ const channelType = originalOrder.channel_type;
72
+ const shippingLines = originalOrder.shipping_lines;
73
+ const shippingMethodLabel = originalOrder.shipping_method_label;
74
+ const paymentMethodLabel = originalOrder.payment_method_label;
75
+ const originalTransaction = originalOrder.transactions[0];
76
+ const quantity = installment;
77
+ const periodicity = parsePeriodicityToEcom(GalaxPaySubscription.periodicity);
78
+ const dateUpdate = GalaxPayTransaction.datetimeLastSentToOperator
79
+ ? new Date(GalaxPayTransaction.datetimeLastSentToOperator).toISOString()
80
+ : new Date().toISOString();
81
+ // remove items free in new orders subscription
82
+ checkAmountItemsOrder(amount, items, plan);
83
+ if (amount.balance) {
84
+ delete amount.balance;
85
+ }
86
+ const transactionId = String(gerateId(GalaxPayTransaction.galaxPayId));
87
+ const transactions = [
88
+ {
89
+ amount: originalTransaction.amount,
90
+ status: {
91
+ updated_at: dateUpdate,
92
+ current: parseStatus(GalaxPayTransaction.status),
93
+ },
94
+ intermediator: {
95
+ transaction_id: GalaxPayTransaction.tid || '',
96
+ transaction_code: GalaxPayTransaction.authorizationCode || '',
97
+ },
98
+ payment_method: originalTransaction.payment_method,
99
+ app: originalTransaction.app,
100
+ _id: transactionId,
101
+ notes: `Parcela #${quantity} referente à ${subscriptionLabel} ${periodicity}`,
102
+ custom_fields: originalTransaction.custom_fields,
103
+ },
104
+ ];
105
+ transactions[0].payment_link = GalaxPaySubscription.paymentLink;
106
+ const financialStatus = {
107
+ updated_at: dateUpdate,
108
+ current: parseStatus(GalaxPayTransaction.status),
109
+ };
110
+ const body = {
111
+ opened_at: new Date().toISOString(),
112
+ items,
113
+ shipping_lines: shippingLines,
114
+ buyers,
115
+ channel_type: channelType,
116
+ domain,
117
+ amount,
118
+ shipping_method_label: shippingMethodLabel,
119
+ payment_method_label: paymentMethodLabel,
120
+ transactions,
121
+ financial_status: financialStatus,
122
+ subscription_order: {
123
+ _id: originalOrderId,
124
+ number: parseInt(orderNumber, 10),
125
+ },
126
+ notes: `Pedido #${quantity} referente à ${subscriptionLabel} ${periodicity}`,
127
+ staff_notes: `Valor cobrado no GalaxPay R$${GalaxPayTransactionValue}`,
128
+ };
129
+ const { result } = await findOrderByTransactionId(transactionId);
130
+ if (!result.length) {
131
+ await api.post('orders', body);
132
+ // logger.log('> Created new order API')
133
+ return res.sendStatus(200);
134
+ }
135
+ // Order Exists
136
+ return res.sendStatus(200);
137
+ }
138
+ }
139
+ // logger.log('> Not Found Subscritpion or Transaction exists')
140
+ return res.sendStatus(404);
141
+ };
142
+ const handleWehook = async (req, res) => {
143
+ // https://docs.galaxpay.com.br/webhooks
144
+ // POST transaction.updateStatus update Transation status
145
+ // POST subscription.addTransaction add transation in subscription
146
+ const galaxpayHook = req.body;
147
+ const type = galaxpayHook.event;
148
+ const GalaxPaySubscription = galaxpayHook.Subscription;
149
+ const GalaxPaySubscriptionQuantity = GalaxPaySubscription.quantity;
150
+ const originalOrderId = GalaxPaySubscription.myId;
151
+ const GalaxPayTransaction = galaxpayHook.Transaction;
152
+ const GalaxPayTransactionValue = GalaxPayTransaction.value / 100;
153
+ logger.log(`> (App GalaxPay) WebHook ${type}, Body ${JSON.stringify(galaxpayHook)}, quantity:
154
+ ${GalaxPaySubscriptionQuantity}, status: ${GalaxPayTransaction.status} <`);
155
+ // if (galaxpayHook.confirmHash) {
156
+ // logger.log('> ', galaxpayHook.confirmHash);
157
+ // }
158
+ try {
159
+ if (type === 'transaction.updateStatus') {
160
+ const documentSnapshot = await collectionSubscription.doc(originalOrderId).get();
161
+ if (documentSnapshot && documentSnapshot.exists) {
162
+ const docSubscription = documentSnapshot.data();
163
+ if (docSubscription) {
164
+ const {
165
+ galaxpayFristTransactionId, plan, orderNumber, subscriptionLabel,
166
+ } = docSubscription.data();
167
+ if (galaxpayFristTransactionId === GalaxPayTransaction.galaxPayId) {
168
+ // update frist payment
169
+ const order = await findOrderById(originalOrderId);
170
+ // Update value Subscription in GalaxPay
171
+ // logger.log('plan-> ', JSON.stringify(plan));
172
+ // not update subscripton canceled
173
+ if (!checkStatusNotValid(GalaxPayTransaction.status) && order.items) {
174
+ const app = await getApp();
175
+ await updateValueSubscription(app, originalOrderId, order.amount, order.items, plan);
176
+ }
177
+ // logger.log('ORDER: ', JSON.stringify(order.amount), ' **');
178
+ // logger.log('> order ', order)
179
+ if (order.financial_status
180
+ && checkStatus(order.financial_status, GalaxPayTransaction)) {
181
+ return res.sendStatus(200);
182
+ }
183
+ if (order.transactions) {
184
+ // update payment
185
+ const transactionId = order.transactions[0]._id;
186
+ const bodyPaymentHistory = {
187
+ date_time: new Date().toISOString(),
188
+ status: parseStatus(GalaxPayTransaction.status),
189
+ transaction_id: transactionId,
190
+ notification_code: `${type};${galaxpayHook.webhookId}`,
191
+ flags: ['GalaxPay'],
192
+ }; // TODO: incompatible type=> amount and status;;
193
+ await api.post(`orders/${order._id}/payments_history`, bodyPaymentHistory);
194
+ await api.patch(`orders/${order._id}/transactions/${transactionId}`, {
195
+ intermediator: {
196
+ transaction_id: GalaxPayTransaction.tid || '',
197
+ transaction_code: GalaxPayTransaction.authorizationCode || '',
198
+ },
199
+ });
200
+ return res.sendStatus(200);
201
+ }
202
+ } else {
203
+ /*
204
+ add order, because recurrence creates all transactions in the
205
+ first transaction when quantity is non-zero,search for the order by ID,
206
+ if not found, create the transaction, and if found, check if it will be
207
+ necessary to update the transaction status
208
+ */
209
+ const transactionId = String(gerateId(GalaxPayTransaction.galaxPayId));
210
+ const { result } = await findOrderByTransactionId(transactionId);
211
+ if (!result || !result.length) {
212
+ // logger.log('> Not found Transaction in API')
213
+ if (!checkStatusNotValid(GalaxPayTransaction.status)
214
+ && checkPayDay(GalaxPayTransaction.payday)) {
215
+ // necessary to create order
216
+ return createTransaction(res, subscriptionLabel, plan, orderNumber, galaxpayFristTransactionId, GalaxPayTransaction, GalaxPaySubscription, GalaxPayTransactionValue, originalOrderId);
217
+ }
218
+ // TODO: status 400 or 500?
219
+ return res.status(404).send('Status or checkPayDay invalid');
220
+ }
221
+ const order = result[0];
222
+ if (order.financial_status
223
+ && checkStatus(order.financial_status, GalaxPayTransaction)) {
224
+ // logger.log('> Equals Status')
225
+ return res.sendStatus(200);
226
+ }
227
+ // logger.log('> Order id ')
228
+ // update payment
229
+ const bodyPaymentHistory = {
230
+ date_time: new Date().toISOString(),
231
+ status: parseStatus(GalaxPayTransaction.status),
232
+ transaction_id: transactionId,
233
+ notification_code: `${type};${galaxpayHook.webhookId}`,
234
+ flags: ['GalaxPay'],
235
+ }; // TODO: incompatible type=> amount and status;
236
+ await api.post(`orders/${order._id}/payments_history`, bodyPaymentHistory);
237
+ // logger.log('> create Payment History')
238
+ await api.patch(`orders/${order._id}/transactions/${transactionId}`, {
239
+ intermediator: {
240
+ transaction_id: GalaxPayTransaction.tid || '',
241
+ transaction_code: GalaxPayTransaction.authorizationCode || '',
242
+ },
243
+ });
244
+ if (parseStatus(GalaxPayTransaction.status) === 'voided'
245
+ || parseStatus(GalaxPayTransaction.status) === 'refunded') {
246
+ await api.patch(`orders/${order._id}`, { status: 'cancelled' });
247
+ // logger.log('> UPDATE ORDER OK')
248
+ return res.sendStatus(200);
249
+ }
250
+ // logger.log('> UPDATE Transaction OK')
251
+ return res.sendStatus(200);
252
+ }
253
+ }
254
+ }
255
+ //
256
+ return res.status(404).send('Document not found in firestore');
257
+ }
258
+ if (type === 'subscription.addTransaction') {
259
+ if (GalaxPaySubscriptionQuantity === 0) {
260
+ // find transaction in firebase
261
+ const documentSnapshot = await collectionSubscription.doc(originalOrderId).get();
262
+ if (documentSnapshot && documentSnapshot.exists) {
263
+ const docSubscription = documentSnapshot.data();
264
+ if (docSubscription) {
265
+ const {
266
+ galaxpayFristTransactionId, plan, orderNumber, subscriptionLabel,
267
+ } = docSubscription.data();
268
+ if (checkPayDay(GalaxPayTransaction.payday)) {
269
+ return createTransaction(res, subscriptionLabel, plan, orderNumber, galaxpayFristTransactionId, GalaxPayTransaction, GalaxPaySubscription, GalaxPayTransactionValue, originalOrderId);
270
+ }
271
+ }
272
+ }
273
+ //
274
+ return res.status(404).send('Document not found in firestore');
275
+ }
276
+ // Avoid retries of this GalaxPay webhook
277
+ return res.status(200)
278
+ .send(`Subscription webhook with non-zero quantity.
279
+ The Order will be analyzed with the updateStatus webhook.`);
280
+ }
281
+ //
282
+ return res.status(404).send('Unidentified webhook type');
283
+ } catch (err) {
284
+ // verificar catch
285
+ logger.error(err);
286
+ return res.sendStatus(500);
287
+ }
288
+ };
289
+
290
+ export default handleWehook;
291
+ // # sourceMappingURL=webhook.js.map