cloudcommerce 0.14.0 → 0.15.0
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.
- package/.github/renovate.json +20 -3
- package/.github/workflows/{e2e-tests.yml → test-e2e.yml} +28 -19
- package/.vscode/settings.json +6 -0
- package/CHANGELOG.md +99 -0
- package/action.yml +74 -2
- package/ecomplus-stores/monocard/README.md +1 -1
- package/ecomplus-stores/monocard/README.pt-BR.md +1 -1
- package/ecomplus-stores/monocard/functions/ssr/tailwind.config.cjs +2 -3
- package/ecomplus-stores/monocard/functions/ssr/uno.config.cjs +3 -3
- package/ecomplus-stores/tia-sonia/README.md +1 -1
- package/ecomplus-stores/tia-sonia/README.pt-BR.md +1 -1
- package/ecomplus-stores/tia-sonia/functions/ssr/tailwind.config.cjs +2 -3
- package/ecomplus-stores/tia-sonia/functions/ssr/uno.config.cjs +3 -3
- package/package.json +14 -14
- package/packages/api/lib/api.d.ts +13 -12
- package/packages/api/lib/api.js +51 -29
- package/packages/api/lib/api.js.map +1 -1
- package/packages/api/package.json +3 -3
- package/packages/api/src/api.ts +52 -22
- package/packages/api/tests/index.test.ts +18 -3
- package/packages/api/{src/types → types}/brands.d.ts +1 -1
- package/packages/api/{lib/types → types}/carts.d.ts +5 -5
- package/packages/api/{src/types → types}/categories.d.ts +2 -2
- package/packages/api/{src/types → types}/collections.d.ts +2 -2
- package/packages/api/{src/types → types}/customers.d.ts +1 -1
- package/packages/api/{src/types → types}/grids.d.ts +1 -1
- package/packages/api/{lib/types → types}/orders.d.ts +13 -13
- package/packages/api/{lib/types → types}/products.d.ts +10 -10
- package/packages/api/{src/types.ts → types.d.ts} +254 -31
- package/packages/api/types.ts +1 -1
- package/packages/apps/affilate-program/CHANGELOG.md +1 -0
- package/packages/apps/affilate-program/README.md +1 -0
- package/packages/apps/affilate-program/lib/affilate-program.js +9 -0
- package/packages/apps/affilate-program/lib/affilate-program.js.map +1 -0
- package/packages/apps/affilate-program/lib/events-to-affilate-program.js +154 -0
- package/packages/apps/affilate-program/lib/events-to-affilate-program.js.map +1 -0
- package/packages/apps/affilate-program/lib/index.js +2 -0
- package/packages/apps/affilate-program/lib/index.js.map +1 -0
- package/packages/apps/affilate-program/package.json +30 -0
- package/packages/apps/affilate-program/src/affilate-program.ts +14 -0
- package/packages/apps/affilate-program/src/events-to-affilate-program.ts +184 -0
- package/packages/apps/affilate-program/src/index.ts +1 -0
- package/packages/apps/affilate-program/tsconfig.json +3 -0
- package/packages/apps/correios/package.json +2 -2
- package/packages/apps/custom-payment/lib/custom-payment-create-transaction.d.ts +4 -0
- package/packages/apps/custom-payment/lib/custom-payment.d.ts +4 -0
- package/packages/apps/custom-payment/package.json +1 -1
- package/packages/apps/custom-shipping/package.json +1 -1
- package/packages/apps/datafrete/package.json +4 -4
- package/packages/apps/discounts/lib-mjs/apply-discount.mjs +27 -2
- package/packages/apps/discounts/lib-mjs/helpers.mjs +4 -2
- package/packages/apps/discounts/package.json +2 -2
- package/packages/apps/emails/lib/functios-lib/utils.js.map +1 -1
- package/packages/apps/emails/package.json +3 -3
- package/packages/apps/emails/src/functios-lib/utils.ts +2 -1
- package/packages/apps/fb-conversions/lib/fb-conversions-events.js +20 -6
- package/packages/apps/fb-conversions/lib/fb-conversions-events.js.map +1 -1
- package/packages/apps/fb-conversions/package.json +3 -3
- package/packages/apps/fb-conversions/src/fb-conversions-events.ts +21 -6
- package/packages/apps/flash-courier/CHANGELOG.md +1 -0
- package/packages/apps/flash-courier/README.md +1 -0
- package/packages/apps/flash-courier/events.js +1 -0
- package/packages/apps/flash-courier/lib/flash-courier-events.d.ts +5 -0
- package/packages/apps/flash-courier/lib/flash-courier-events.js +14 -0
- package/packages/apps/flash-courier/lib/flash-courier-events.js.map +1 -0
- package/packages/apps/flash-courier/lib/flash-courier.d.ts +2 -0
- package/packages/apps/flash-courier/lib/flash-courier.js +6 -0
- package/packages/apps/flash-courier/lib/flash-courier.js.map +1 -0
- package/packages/apps/flash-courier/lib/index.d.ts +1 -0
- package/packages/apps/flash-courier/lib/index.js +2 -0
- package/packages/apps/flash-courier/lib/index.js.map +1 -0
- package/packages/apps/flash-courier/lib-mjs/calculate-flash-courier.mjs +246 -0
- package/packages/apps/flash-courier/lib-mjs/update-tracking.mjs +176 -0
- package/packages/apps/flash-courier/package.json +34 -0
- package/packages/apps/flash-courier/src/flash-courier-events.ts +13 -0
- package/packages/apps/flash-courier/src/flash-courier.ts +7 -0
- package/packages/apps/flash-courier/src/index.ts +1 -0
- package/packages/apps/flash-courier/tsconfig.json +6 -0
- package/packages/apps/frenet/lib/functions-lib/database.d.ts +4 -3
- package/packages/apps/frenet/lib/functions-lib/database.js.map +1 -1
- package/packages/apps/frenet/lib/functions-lib/update-fulfillments.d.ts +3 -2
- package/packages/apps/frenet/lib/functions-lib/update-fulfillments.js.map +1 -1
- package/packages/apps/frenet/lib-mjs/calculate-frenet.mjs +13 -6
- package/packages/apps/frenet/package.json +3 -3
- package/packages/apps/frenet/src/functions-lib/database.ts +4 -3
- package/packages/apps/frenet/src/functions-lib/update-fulfillments.ts +2 -1
- package/packages/apps/galaxpay/lib/functions-lib/all-parses.js +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/all-parses.js.map +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js +18 -2
- package/packages/apps/galaxpay/lib/functions-lib/ecom/events-to-galaxpay.js.map +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/auth/create-access.d.ts +2 -2
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.d.ts +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/handle-plans.js.map +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js +19 -2
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/update-subscription.js.map +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js +18 -2
- package/packages/apps/galaxpay/lib/functions-lib/galaxpay/webhook.js.map +1 -1
- package/packages/apps/galaxpay/lib/functions-lib/utils.js +3 -3
- package/packages/apps/galaxpay/lib/functions-lib/utils.js.map +1 -1
- package/packages/apps/galaxpay/lib/galaxpay-create-transaction.d.ts +4 -0
- package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js +19 -3
- package/packages/apps/galaxpay/lib/galaxpay-create-transaction.js.map +1 -1
- package/packages/apps/galaxpay/lib/galaxpay-list-payments.js +17 -1
- package/packages/apps/galaxpay/lib/galaxpay-list-payments.js.map +1 -1
- package/packages/apps/galaxpay/lib/galaxpay.d.ts +4 -0
- package/packages/apps/galaxpay/package.json +3 -3
- package/packages/apps/galaxpay/src/functions-lib/all-parses.ts +1 -1
- package/packages/apps/galaxpay/src/functions-lib/ecom/events-to-galaxpay.ts +21 -2
- package/packages/apps/galaxpay/src/functions-lib/galaxpay/auth/create-access.ts +2 -2
- package/packages/apps/galaxpay/src/functions-lib/galaxpay/handle-plans.ts +1 -2
- package/packages/apps/galaxpay/src/functions-lib/galaxpay/update-subscription.ts +21 -2
- package/packages/apps/galaxpay/src/functions-lib/galaxpay/webhook.ts +23 -5
- package/packages/apps/galaxpay/src/functions-lib/utils.ts +3 -3
- package/packages/apps/galaxpay/src/galaxpay-create-transaction.ts +19 -2
- package/packages/apps/galaxpay/src/galaxpay-list-payments.ts +19 -1
- package/packages/apps/google-analytics/lib/google-analytics-events.js +20 -4
- package/packages/apps/google-analytics/lib/google-analytics-events.js.map +1 -1
- package/packages/apps/google-analytics/package.json +3 -3
- package/packages/apps/google-analytics/src/google-analytics-events.ts +21 -4
- package/packages/apps/infinitepay/lib/functions-lib/add-installments.d.ts +1 -1
- package/packages/apps/infinitepay/lib/functions-lib/ip-auth/create-access.d.ts +2 -2
- package/packages/apps/infinitepay/lib/functions-lib/ip-auth/create-access.js +12 -8
- package/packages/apps/infinitepay/lib/functions-lib/ip-auth/create-access.js.map +1 -1
- package/packages/apps/infinitepay/lib/functions-lib/utils.js +3 -3
- package/packages/apps/infinitepay/lib/functions-lib/utils.js.map +1 -1
- package/packages/apps/infinitepay/lib/infinitepay.d.ts +4 -0
- package/packages/apps/infinitepay/lib/ip-create-transaction.d.ts +4 -0
- package/packages/apps/infinitepay/lib/ip-create-transaction.js +18 -2
- package/packages/apps/infinitepay/lib/ip-create-transaction.js.map +1 -1
- package/packages/apps/infinitepay/lib/ip-list-payments.js +19 -3
- package/packages/apps/infinitepay/lib/ip-list-payments.js.map +1 -1
- package/packages/apps/infinitepay/lib/ip-webhook.js.map +1 -1
- package/packages/apps/infinitepay/package.json +3 -3
- package/packages/apps/infinitepay/src/functions-lib/add-installments.ts +1 -1
- package/packages/apps/infinitepay/src/functions-lib/ip-auth/create-access.ts +14 -10
- package/packages/apps/infinitepay/src/functions-lib/utils.ts +3 -3
- package/packages/apps/infinitepay/src/ip-create-transaction.ts +20 -2
- package/packages/apps/infinitepay/src/ip-list-payments.ts +21 -3
- package/packages/apps/infinitepay/src/ip-webhook.ts +4 -5
- package/packages/apps/jadlog/lib-mjs/calculate-jadlog.mjs +19 -6
- package/packages/apps/jadlog/package.json +1 -1
- package/packages/apps/loyalty-points/lib/functions-lib/handle-loyalty-points-event.js.map +1 -1
- package/packages/apps/loyalty-points/lib/loyalty-create-transaction.d.ts +4 -0
- package/packages/apps/loyalty-points/lib/loyalty-create-transaction.js.map +1 -1
- package/packages/apps/loyalty-points/lib/loyalty-points.d.ts +4 -0
- package/packages/apps/loyalty-points/package.json +1 -1
- package/packages/apps/loyalty-points/src/functions-lib/handle-loyalty-points-event.ts +2 -2
- package/packages/apps/loyalty-points/src/loyalty-create-transaction.ts +4 -3
- package/packages/apps/melhor-envio/lib/functions-lib/events-to-melhor-envio.js +18 -14
- package/packages/apps/melhor-envio/lib/functions-lib/events-to-melhor-envio.js.map +1 -1
- package/packages/apps/melhor-envio/lib-mjs/calculate-melhor-envio.mjs +21 -15
- package/packages/apps/melhor-envio/package.json +3 -3
- package/packages/apps/melhor-envio/src/functions-lib/events-to-melhor-envio.ts +34 -22
- package/packages/apps/mercadopago/lib/mercadopago.d.ts +4 -0
- package/packages/apps/mercadopago/lib/mp-create-transaction.d.ts +4 -0
- package/packages/apps/mercadopago/lib/mp-create-transaction.js +14 -1
- package/packages/apps/mercadopago/lib/mp-create-transaction.js.map +1 -1
- package/packages/apps/mercadopago/lib/mp-list-payments.js +16 -7
- package/packages/apps/mercadopago/lib/mp-list-payments.js.map +1 -1
- package/packages/apps/mercadopago/lib/mp-webhook.js +10 -3
- package/packages/apps/mercadopago/lib/mp-webhook.js.map +1 -1
- package/packages/apps/mercadopago/package.json +3 -3
- package/packages/apps/mercadopago/src/mp-create-transaction.ts +15 -1
- package/packages/apps/mercadopago/src/mp-list-payments.ts +17 -7
- package/packages/apps/mercadopago/src/mp-webhook.ts +11 -3
- package/packages/apps/pagarme/assets/onload-expression.js +22 -8
- package/packages/apps/pagarme/assets/onload-expression.min.js +1 -1
- package/packages/apps/pagarme/lib/functions-lib/add-installments.d.ts +3 -3
- package/packages/apps/pagarme/lib/functions-lib/add-installments.js +5 -1
- package/packages/apps/pagarme/lib/functions-lib/add-installments.js.map +1 -1
- package/packages/apps/pagarme/lib/pagarme-create-transaction.d.ts +4 -0
- package/packages/apps/pagarme/lib/pagarme-create-transaction.js +27 -2
- package/packages/apps/pagarme/lib/pagarme-create-transaction.js.map +1 -1
- package/packages/apps/pagarme/lib/pagarme-list-payments.js +28 -6
- package/packages/apps/pagarme/lib/pagarme-list-payments.js.map +1 -1
- package/packages/apps/pagarme/lib/pagarme-webhook.js +10 -2
- package/packages/apps/pagarme/lib/pagarme-webhook.js.map +1 -1
- package/packages/apps/pagarme/lib/pagarme.d.ts +4 -0
- package/packages/apps/pagarme/package.json +3 -3
- package/packages/apps/pagarme/src/functions-lib/add-installments.ts +8 -2
- package/packages/apps/pagarme/src/pagarme-create-transaction.ts +28 -2
- package/packages/apps/pagarme/src/pagarme-list-payments.ts +37 -6
- package/packages/apps/pagarme/src/pagarme-webhook.ts +11 -2
- package/packages/apps/paghiper/lib/functions-lib/handle-webhook.js +11 -3
- package/packages/apps/paghiper/lib/functions-lib/handle-webhook.js.map +1 -1
- package/packages/apps/paghiper/lib/paghiper-create-transaction.d.ts +4 -0
- package/packages/apps/paghiper/lib/paghiper-create-transaction.js +9 -1
- package/packages/apps/paghiper/lib/paghiper-create-transaction.js.map +1 -1
- package/packages/apps/paghiper/lib/paghiper-list-payments.js +11 -4
- package/packages/apps/paghiper/lib/paghiper-list-payments.js.map +1 -1
- package/packages/apps/paghiper/lib/paghiper.d.ts +4 -0
- package/packages/apps/paghiper/package.json +3 -3
- package/packages/apps/paghiper/src/functions-lib/handle-webhook.ts +13 -4
- package/packages/apps/paghiper/src/paghiper-create-transaction.ts +9 -1
- package/packages/apps/paghiper/src/paghiper-list-payments.ts +15 -8
- package/packages/apps/pix/lib/functions-lib/get-certificate.js +3 -3
- package/packages/apps/pix/lib/functions-lib/get-certificate.js.map +1 -1
- package/packages/apps/pix/lib/pix-create-transaction.d.ts +4 -0
- package/packages/apps/pix/lib/pix-create-transaction.js +23 -3
- package/packages/apps/pix/lib/pix-create-transaction.js.map +1 -1
- package/packages/apps/pix/lib/pix-list-payments.js +23 -1
- package/packages/apps/pix/lib/pix-list-payments.js.map +1 -1
- package/packages/apps/pix/lib/pix.d.ts +4 -0
- package/packages/apps/pix/package.json +3 -3
- package/packages/apps/pix/src/functions-lib/get-certificate.ts +3 -3
- package/packages/apps/pix/src/pix-create-transaction.ts +26 -3
- package/packages/apps/pix/src/pix-list-payments.ts +26 -1
- package/packages/apps/tiny-erp/lib/integration/import-order-from-tiny.js +8 -7
- package/packages/apps/tiny-erp/lib/integration/import-order-from-tiny.js.map +1 -1
- package/packages/apps/tiny-erp/lib/integration/import-product-from-tiny.js +4 -2
- package/packages/apps/tiny-erp/lib/integration/import-product-from-tiny.js.map +1 -1
- package/packages/apps/tiny-erp/lib/integration/parsers/product-from-tiny.js.map +1 -1
- package/packages/apps/tiny-erp/package.json +4 -4
- package/packages/apps/tiny-erp/src/integration/import-order-from-tiny.ts +9 -9
- package/packages/apps/tiny-erp/src/integration/import-product-from-tiny.ts +4 -2
- package/packages/apps/tiny-erp/src/integration/parsers/product-from-tiny.ts +1 -1
- package/packages/apps/webhooks/lib/events-to-webhooks-app.js +12 -8
- package/packages/apps/webhooks/lib/events-to-webhooks-app.js.map +1 -1
- package/packages/apps/webhooks/package.json +3 -3
- package/packages/apps/webhooks/src/events-to-webhooks-app.ts +22 -12
- package/packages/cli/package.json +1 -1
- package/packages/config/lib/config.js +2 -4
- package/packages/config/lib/config.js.map +1 -1
- package/packages/config/lib/env.js +2 -4
- package/packages/config/lib/env.js.map +1 -1
- package/packages/config/package.json +1 -1
- package/packages/config/src/config.ts +4 -4
- package/packages/config/src/env.ts +4 -4
- package/packages/emails/package.json +3 -3
- package/packages/emails/tests/sendgrid.test.ts +2 -2
- package/packages/emails/tests/smtp.test.ts +2 -2
- package/packages/events/lib/firebase.js +4 -0
- package/packages/events/lib/firebase.js.map +1 -1
- package/packages/events/package.json +5 -3
- package/packages/events/src/firebase.ts +4 -0
- package/packages/feeds/lib/firebase.js +3 -3
- package/packages/feeds/lib/firebase.js.map +1 -1
- package/packages/feeds/package.json +2 -2
- package/packages/feeds/src/firebase.ts +5 -3
- package/packages/firebase/lib/config.d.ts +11 -1
- package/packages/firebase/lib/config.js +12 -0
- package/packages/firebase/lib/config.js.map +1 -1
- package/packages/firebase/lib/helpers/update-app-data.d.ts +1 -1
- package/packages/firebase/package.json +4 -4
- package/packages/firebase/src/config.ts +14 -1
- package/packages/i18n/package.json +1 -1
- package/packages/modules/lib/firebase/call-app-module.js +5 -0
- package/packages/modules/lib/firebase/call-app-module.js.map +1 -1
- package/packages/modules/lib/firebase/checkout.js.map +1 -1
- package/packages/modules/lib/firebase/functions-checkout/fix-items.js.map +1 -1
- package/packages/modules/lib/firebase/functions-checkout/handle-order-transaction.js.map +1 -1
- package/packages/modules/lib/firebase/functions-checkout/new-order.js.map +1 -1
- package/packages/modules/lib/firebase/functions-checkout/request-to-module.js +1 -1
- package/packages/modules/lib/firebase/functions-checkout/request-to-module.js.map +1 -1
- package/packages/modules/lib/firebase/functions-checkout/utils.js +1 -1
- package/packages/modules/lib/firebase/functions-checkout/utils.js.map +1 -1
- package/packages/modules/package.json +6 -5
- package/packages/modules/schemas/@checkout.cjs +5 -0
- package/packages/modules/schemas/apply_discount.cjs +6 -0
- package/packages/modules/schemas/create_transaction.cjs +22 -0
- package/packages/modules/src/firebase/call-app-module.ts +5 -0
- package/packages/modules/src/firebase/checkout.ts +9 -9
- package/packages/modules/src/firebase/functions-checkout/fix-items.ts +3 -3
- package/packages/modules/src/firebase/functions-checkout/handle-order-transaction.ts +8 -8
- package/packages/modules/src/firebase/functions-checkout/new-order.ts +6 -7
- package/packages/modules/src/firebase/functions-checkout/request-to-module.ts +2 -4
- package/packages/modules/src/firebase/functions-checkout/utils.ts +23 -23
- package/packages/modules/src/types/index.d.ts +4 -8
- package/packages/modules/tests/modules.test.mjs +1 -1
- package/packages/passport/package.json +3 -3
- package/packages/ssr/lib/firebase/serve-storefront.js +2 -2
- package/packages/ssr/lib/firebase/serve-storefront.js.map +1 -1
- package/packages/ssr/package.json +10 -10
- package/packages/ssr/src/firebase/serve-storefront.ts +2 -2
- package/packages/storefront/.base.eslintrc.cjs +4 -0
- package/packages/storefront/.eslintrc.cjs +4 -1
- package/packages/storefront/astro.config.mjs +6 -2
- package/packages/storefront/config/{storefront.cms.cjs → storefront.cms.js} +6 -5
- package/packages/storefront/{storefront.config.mjs → config/storefront.config.mjs} +5 -5
- package/packages/storefront/config/storefront.tailwind.cjs +266 -0
- package/packages/storefront/config/storefront.unocss.cjs +139 -0
- package/packages/storefront/dist/client/_astro/Carousel.93c2309b.js +1 -0
- package/packages/storefront/dist/client/_astro/HeroSlider.c5b673b3.js +1 -0
- package/packages/storefront/dist/client/_astro/{PitchBar.94f525f9.js → PitchBar.d0e3362e.js} +1 -1
- package/packages/storefront/dist/client/_astro/Prices.51598206.js +1 -0
- package/packages/storefront/dist/client/_astro/Prices.5186c09f.js +1 -0
- package/packages/storefront/dist/client/_astro/ProductShelf.d90bfc6e.js +1 -0
- package/packages/storefront/dist/client/_astro/ShopHeader.06c4c46e.js +4 -0
- package/packages/storefront/dist/client/_astro/_...slug_.ab554647.css +1 -0
- package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.8870d8dc.js +1 -0
- package/packages/storefront/dist/client/_astro/api.7f62c1ff.js +1 -0
- package/packages/storefront/dist/client/_astro/client.06720904.js +1 -0
- package/packages/storefront/dist/client/_astro/{firebase-app.d513d4b8.js → firebase-app.4381f424.js} +17 -4
- package/packages/storefront/dist/client/_astro/{format-money.1a95a3b5.js → format-money.3868f219.js} +1 -1
- package/packages/storefront/dist/client/_astro/{hoisted.be7b77c7.js → hoisted.6aebc438.js} +1 -1
- package/packages/storefront/dist/client/_astro/img.2ae78c70.js +1 -0
- package/packages/storefront/dist/client/_astro/index.3de006ba.js +1 -0
- package/packages/storefront/dist/client/_astro/{modules-info.bc2146d9.js → modules-info.c65d970c.js} +1 -1
- package/packages/storefront/dist/client/_astro/{runtime-dom.esm-bundler.e2053595.js → runtime-dom.esm-bundler.7a95af90.js} +1 -1
- package/packages/storefront/dist/client/_astro/{workbox-window.prod.es5.dc90f814.js → workbox-window.prod.es5.a7b12eab.js} +2 -2
- package/packages/storefront/dist/client/sw.js +1 -1
- package/packages/storefront/dist/client/{workbox-e0d788d4.js → workbox-5e0bf4e4.js} +1 -1
- package/packages/storefront/dist/server/_empty-middleware.mjs +3 -0
- package/packages/storefront/dist/server/chunks/_...51f243e0.mjs +35 -0
- package/packages/storefront/dist/server/chunks/account@_@astro.70d0a2b6.mjs +35 -0
- package/packages/storefront/dist/server/chunks/{astro.7ac24846.mjs → astro.c449fda8.mjs} +1479 -1217
- package/packages/storefront/dist/server/chunks/endpoint@_@js.58e19bda.mjs +35 -0
- package/packages/storefront/dist/server/chunks/fallback@_@astro.6c6e2bf9.mjs +35 -0
- package/packages/storefront/dist/server/chunks/index@_@astro.09a10813.mjs +35 -0
- package/packages/storefront/dist/server/chunks/index@_@astro.81422b02.mjs +35 -0
- package/packages/storefront/dist/server/chunks/pages/{all.a42f9fc6.mjs → _...slug_.astro.5667273a.mjs} +215 -1017
- package/packages/storefront/dist/server/chunks/pages/account.astro.72dc24f9.mjs +23 -0
- package/packages/storefront/dist/server/chunks/pages/endpoint.js.5d128d9d.mjs +119 -0
- package/packages/storefront/dist/server/chunks/pages/fallback.astro.72b8d520.mjs +64 -0
- package/packages/storefront/dist/server/chunks/pages/index.astro.e80eea52.mjs +1098 -0
- package/packages/storefront/dist/server/entry.mjs +57 -313
- package/packages/storefront/dist/server/renderers.mjs +333 -0
- package/packages/storefront/package.json +18 -21
- package/packages/storefront/scripts/prepare-monorepo.sh +0 -1
- package/packages/storefront/server.d.ts +8 -1
- package/packages/storefront/src/env.d.ts +0 -1
- package/packages/storefront/src/helpers/afetch.ts +2 -2
- package/packages/storefront/src/lib/assets/components.css +28 -0
- package/packages/storefront/src/lib/components/Carousel.vue +9 -23
- package/packages/storefront/src/lib/components/CarouselControl.vue +2 -2
- package/packages/storefront/src/lib/components/globals/AImg.vue +4 -7
- package/packages/storefront/src/lib/components/globals/ALink.vue +1 -1
- package/packages/storefront/src/lib/components/globals/Fade.vue +5 -30
- package/packages/storefront/src/lib/composables/use-hero-slider.ts +2 -0
- package/packages/storefront/src/lib/composables/use-prices.ts +4 -1
- package/packages/storefront/src/lib/composables/use-product-card.ts +104 -0
- package/packages/storefront/src/lib/composables/use-product-shelf.ts +91 -0
- package/packages/storefront/src/lib/composables/use-shop-header-submenu.ts +2 -0
- package/packages/storefront/src/lib/composables/use-sticky-header.ts +2 -0
- package/packages/storefront/src/lib/content.d.ts +3 -4
- package/packages/storefront/src/lib/layouts/Base.astro +5 -7
- package/packages/storefront/src/lib/layouts/BaseBody.astro +4 -8
- package/packages/storefront/src/lib/layouts/BaseHead.astro +1 -7
- package/packages/storefront/src/lib/layouts/BaseStateJson.astro +11 -18
- package/packages/storefront/src/lib/layouts/{sections/use-hero-section.ts → main/use-page-hero.ts} +7 -8
- package/packages/storefront/src/lib/layouts/main/use-page-sections.ts +98 -0
- package/packages/storefront/src/lib/layouts/use-page-layout.ts +4 -4
- package/packages/storefront/src/lib/ssr-context.ts +26 -19
- package/packages/storefront/src/lib/state/customer-session.ts +1 -1
- package/packages/storefront/tailwind.config.cjs +2 -225
- package/packages/storefront/uno.config.cjs +2 -141
- package/packages/types/index.ts +5 -1
- package/packages/types/modules/@checkout:params.d.ts +4 -0
- package/packages/types/modules/apply_discount:params.d.ts +4 -0
- package/packages/types/modules/create_transaction:response.d.ts +15 -0
- package/packages/types/package.json +1 -1
- package/packages/api/lib/types/brands.d.ts +0 -157
- package/packages/api/lib/types/categories.d.ts +0 -199
- package/packages/api/lib/types/collections.d.ts +0 -159
- package/packages/api/lib/types/customers.d.ts +0 -523
- package/packages/api/lib/types/grids.d.ts +0 -157
- package/packages/api/lib/types.d.ts +0 -132
- package/packages/api/lib/types.js +0 -2
- package/packages/api/lib/types.js.map +0 -1
- package/packages/api/src/types/applications.d.ts +0 -165
- package/packages/api/src/types/authentications.d.ts +0 -107
- package/packages/api/src/types/carts.d.ts +0 -360
- package/packages/api/src/types/orders.d.ts +0 -1720
- package/packages/api/src/types/products.d.ts +0 -1424
- package/packages/api/src/types/stores.d.ts +0 -123
- package/packages/storefront/.astro/types.d.ts +0 -117
- package/packages/storefront/config/storefront.cms.mjs +0 -72
- package/packages/storefront/dist/client/_astro/Carousel.e137cab2.js +0 -1
- package/packages/storefront/dist/client/_astro/HeroSlider.d677b64a.js +0 -1
- package/packages/storefront/dist/client/_astro/Prices.b8d4b8e4.js +0 -1
- package/packages/storefront/dist/client/_astro/ShopHeader.f12e72f6.js +0 -4
- package/packages/storefront/dist/client/_astro/_...slug_.48ea2ee1.css +0 -1
- package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.116fec5b.js +0 -1
- package/packages/storefront/dist/client/_astro/client.c2102734.js +0 -1
- package/packages/storefront/dist/client/_astro/index.1190ddf5.js +0 -1
- package/packages/storefront/dist/client/_astro/index.1eaf97c3.css +0 -1
- package/packages/storefront/dist/client/_astro/index.e56fc6b3.css +0 -1
- package/packages/storefront/dist/client/_astro/server.1dabec03.css +0 -1
- package/packages/storefront/src/lib/layouts/use-home-main.ts +0 -16
- /package/packages/api/{lib/types → types}/applications.d.ts +0 -0
- /package/packages/api/{lib/types → types}/authentications.d.ts +0 -0
- /package/packages/api/{lib/types → types}/stores.d.ts +0 -0
- /package/packages/storefront/src/lib/assets/{preflight.css → reset.css} +0 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import type { ApiEventHandler } from '@cloudcommerce/firebase/lib/helpers/pubsub';
|
|
2
|
+
import type {
|
|
3
|
+
ResourceId,
|
|
4
|
+
Customers,
|
|
5
|
+
Orders,
|
|
6
|
+
ResourceAndId,
|
|
7
|
+
} from '@cloudcommerce/api/types';
|
|
8
|
+
import { getFirestore, Timestamp } from 'firebase-admin/firestore';
|
|
9
|
+
import { logger } from 'firebase-functions/v1';
|
|
10
|
+
import api from '@cloudcommerce/api';
|
|
11
|
+
|
|
12
|
+
const handleApiEvent: ApiEventHandler = async ({
|
|
13
|
+
evName,
|
|
14
|
+
apiEvent,
|
|
15
|
+
apiDoc,
|
|
16
|
+
app,
|
|
17
|
+
}) => {
|
|
18
|
+
const appData = { ...app.data, ...app.hidden_data };
|
|
19
|
+
const resourceId = apiEvent.resource_id;
|
|
20
|
+
const key = `${evName}_${resourceId}`;
|
|
21
|
+
|
|
22
|
+
const isOrder = evName.startsWith('orders-');
|
|
23
|
+
const isCustomer = evName.startsWith('customers-');
|
|
24
|
+
|
|
25
|
+
const firestoreColl = getFirestore().collection('affilateProgramOrders');
|
|
26
|
+
|
|
27
|
+
if (
|
|
28
|
+
(Array.isArray(appData.ignore_events)
|
|
29
|
+
&& appData.ignore_events.includes(evName))
|
|
30
|
+
|| (!isCustomer && !isOrder)
|
|
31
|
+
) {
|
|
32
|
+
logger.info('>> ', key, ' - Ignored event');
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
let newCustomerId: ResourceId | undefined;
|
|
37
|
+
let newCustomerEmail: Customers['main_email'] | undefined;
|
|
38
|
+
let referralId: ResourceId | undefined;
|
|
39
|
+
if (isCustomer) {
|
|
40
|
+
const customer = apiDoc as Customers;
|
|
41
|
+
newCustomerId = customer._id;
|
|
42
|
+
referralId = customer.affiliate_code as ResourceId;
|
|
43
|
+
newCustomerEmail = customer.main_email;
|
|
44
|
+
if (!newCustomerId || !newCustomerEmail || !referralId) {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
if (!/^[a-f0-9]{24}$/.test(referralId)) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
let orderId: Orders['_id'] | undefined;
|
|
53
|
+
let buyerId: ResourceId | undefined;
|
|
54
|
+
let orderSubtotal: number = 0;
|
|
55
|
+
let isPaid: boolean = false;
|
|
56
|
+
let isCancelled: boolean = false;
|
|
57
|
+
|
|
58
|
+
if (isOrder) {
|
|
59
|
+
const order = apiDoc as Orders;
|
|
60
|
+
orderId = order._id;
|
|
61
|
+
orderSubtotal = order.amount?.subtotal || 0;
|
|
62
|
+
const orderStatus = order.financial_status?.current;
|
|
63
|
+
buyerId = order.buyers?.[0]?._id;
|
|
64
|
+
if (!orderId || !orderSubtotal || !orderStatus || !buyerId) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
switch (orderStatus) {
|
|
69
|
+
case 'paid':
|
|
70
|
+
isPaid = true;
|
|
71
|
+
break;
|
|
72
|
+
case 'unauthorized':
|
|
73
|
+
case 'partially_refunded':
|
|
74
|
+
case 'refunded':
|
|
75
|
+
case 'voided':
|
|
76
|
+
isCancelled = true;
|
|
77
|
+
break;
|
|
78
|
+
default:
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
if (!isPaid && !isCancelled) {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
logger.info(`${isOrder ? 'Orders' : 'Customers'}`);
|
|
87
|
+
try {
|
|
88
|
+
if (isCustomer && appData.points_on_signup) {
|
|
89
|
+
const referralCustomer = (await api.get(`customers/${referralId}`)).data;
|
|
90
|
+
if (!referralCustomer?.enabled) {
|
|
91
|
+
logger.warn('Inactive customer');
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
if (referralCustomer.main_email === newCustomerEmail) {
|
|
95
|
+
logger.warn('new customer is the affiliate, same email');
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
// save new customer points
|
|
99
|
+
// TODO: set type for partial body in post method
|
|
100
|
+
const pointsEndpoint = `customers/${newCustomerId}/loyalty_points_entries` as `${ResourceAndId}/string`;
|
|
101
|
+
const d = new Date();
|
|
102
|
+
d.setDate(d.getDate() + 120);
|
|
103
|
+
const validThru = d.toISOString();
|
|
104
|
+
await api.post(
|
|
105
|
+
pointsEndpoint,
|
|
106
|
+
{
|
|
107
|
+
name: 'Convite',
|
|
108
|
+
program_id: 'referreds0',
|
|
109
|
+
earned_points: appData.points_on_signup,
|
|
110
|
+
active_points: appData.points_on_signup,
|
|
111
|
+
ratio: 1,
|
|
112
|
+
valid_thru: validThru,
|
|
113
|
+
},
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
if (isOrder && isPaid && appData.points_on_referral && orderId) {
|
|
118
|
+
if (appData.min_subtotal_to_earn > orderSubtotal) {
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
const buyerCustomer = (await api.get(`customers/${buyerId}`)).data;
|
|
122
|
+
|
|
123
|
+
if (!buyerCustomer?.enabled) {
|
|
124
|
+
logger.warn('Inactive customer');
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (!buyerCustomer.affiliate_code) {
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
const referralCustomer = (await api.get(`customers/${buyerCustomer.affiliate_code}`)).data;
|
|
132
|
+
if (referralCustomer.doc_number === buyerCustomer.doc_number) {
|
|
133
|
+
logger.warn('Order placed by affiliate');
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
logger.info(`Order ${orderId} paid by ${buyerId} validated`);
|
|
137
|
+
|
|
138
|
+
const docRef = firestoreColl.doc(`${orderId}`);
|
|
139
|
+
if (!appData.on_all_orders) {
|
|
140
|
+
// check if points not already paid for this order
|
|
141
|
+
const docSnapshot = await docRef.get();
|
|
142
|
+
if (docSnapshot.exists) {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
let earnedPoints: number;
|
|
147
|
+
if (typeof appData.points_on_referral === 'number') {
|
|
148
|
+
earnedPoints = appData.points_on_referral;
|
|
149
|
+
} else if (appData.points_on_referral.type === 'percentage') {
|
|
150
|
+
earnedPoints = (orderSubtotal * appData.points_on_referral.value) / 100;
|
|
151
|
+
} else {
|
|
152
|
+
earnedPoints = appData.points_on_referral.value;
|
|
153
|
+
}
|
|
154
|
+
if (!(earnedPoints > 0)) {
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
157
|
+
// TODO: set type for partial body in post method
|
|
158
|
+
const pointsEndpoint = `/customers/${buyerCustomer.affiliate_code}/loyalty_points_entries` as `${ResourceAndId}/string`;
|
|
159
|
+
await api.post(
|
|
160
|
+
pointsEndpoint,
|
|
161
|
+
{
|
|
162
|
+
name: 'Afiliado',
|
|
163
|
+
program_id: 'affiliates0',
|
|
164
|
+
earned_points: earnedPoints,
|
|
165
|
+
active_points: earnedPoints,
|
|
166
|
+
ratio: 1,
|
|
167
|
+
},
|
|
168
|
+
);
|
|
169
|
+
await docRef.set({
|
|
170
|
+
buyerId,
|
|
171
|
+
referralId: buyerCustomer.affiliate_code,
|
|
172
|
+
earnedPoints,
|
|
173
|
+
t: Timestamp.fromDate(new Date()),
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
return null;
|
|
178
|
+
} catch (err) {
|
|
179
|
+
logger.error(err);
|
|
180
|
+
return null;
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
export default handleApiEvent;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './affilate-program';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/app-correios",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app for Correios shipping calculation",
|
|
6
6
|
"main": "lib/correios.js",
|
|
7
7
|
"repository": {
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@cloudcommerce/api": "workspace:*",
|
|
23
23
|
"axios": "^1.4.0",
|
|
24
|
-
"xml2js": "^0.
|
|
24
|
+
"xml2js": "^0.6.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@cloudcommerce/types": "workspace:*"
|
|
@@ -37,6 +37,10 @@ declare const _default: (appData: AppModuleBody) => Promise<{
|
|
|
37
37
|
points_value: number;
|
|
38
38
|
ratio?: number | undefined;
|
|
39
39
|
} | undefined;
|
|
40
|
+
account_deposit?: {
|
|
41
|
+
valid_thru?: string | undefined;
|
|
42
|
+
text_lines?: string[] | undefined;
|
|
43
|
+
} | undefined;
|
|
40
44
|
currency_id?: string | undefined;
|
|
41
45
|
currency_symbol?: string | undefined;
|
|
42
46
|
discount?: number | undefined;
|
|
@@ -38,6 +38,10 @@ export declare const createTransaction: (modBody: AppModuleBody) => Promise<{
|
|
|
38
38
|
points_value: number;
|
|
39
39
|
ratio?: number | undefined;
|
|
40
40
|
} | undefined;
|
|
41
|
+
account_deposit?: {
|
|
42
|
+
valid_thru?: string | undefined;
|
|
43
|
+
text_lines?: string[] | undefined;
|
|
44
|
+
} | undefined;
|
|
41
45
|
currency_id?: string | undefined;
|
|
42
46
|
currency_symbol?: string | undefined;
|
|
43
47
|
discount?: number | undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/app-datafrete",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app to integrate Datafrete shipping gateway ",
|
|
6
6
|
"main": "lib/datafrete.js",
|
|
7
7
|
"exports": {
|
|
@@ -25,10 +25,10 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@cloudcommerce/api": "workspace:*",
|
|
27
27
|
"@cloudcommerce/firebase": "workspace:*",
|
|
28
|
-
"@ecomplus/utils": "1.5.0-rc.
|
|
28
|
+
"@ecomplus/utils": "1.5.0-rc.5",
|
|
29
29
|
"axios": "^1.4.0",
|
|
30
|
-
"firebase-admin": "^11.
|
|
31
|
-
"firebase-functions": "^4.4.
|
|
30
|
+
"firebase-admin": "^11.9.0",
|
|
31
|
+
"firebase-functions": "^4.4.1"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@cloudcommerce/types": "workspace:*",
|
|
@@ -344,10 +344,33 @@ export default async ({ params, application }) => {
|
|
|
344
344
|
if (discountRule.description) {
|
|
345
345
|
response.discount_rule.description = discountRule.description;
|
|
346
346
|
}
|
|
347
|
+
if (!checkOpenPromotion(discountRule)) {
|
|
348
|
+
// check for additional open discount
|
|
349
|
+
const {
|
|
350
|
+
discountRule: openDiscountRule,
|
|
351
|
+
discountMatchEnum: openDiscountMatchEnum,
|
|
352
|
+
} = matchDiscountRule(discountRules, {});
|
|
353
|
+
if (
|
|
354
|
+
openDiscountRule
|
|
355
|
+
&& openDiscountRule.cumulative_discount !== false
|
|
356
|
+
&& openDiscountRule.discount.min_amount
|
|
357
|
+
) {
|
|
358
|
+
let checkAmount = params.amount[openDiscountRule.discount.amount_field || 'total'];
|
|
359
|
+
if (checkAmount) {
|
|
360
|
+
// subtract current discount to validate cumulative open discount min amount
|
|
361
|
+
if (response.discount_rule) {
|
|
362
|
+
checkAmount -= response.discount_rule.extra_discount.value;
|
|
363
|
+
}
|
|
364
|
+
if (openDiscountRule.discount.min_amount <= checkAmount) {
|
|
365
|
+
addDiscount(openDiscountRule.discount, openDiscountMatchEnum);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
347
370
|
|
|
348
371
|
const { customer } = params;
|
|
349
372
|
if (
|
|
350
|
-
customer && customer._id
|
|
373
|
+
customer && (customer._id || customer.doc_number)
|
|
351
374
|
&& (discountRule.usage_limit > 0 || discountRule.total_usage_limit > 0)
|
|
352
375
|
) {
|
|
353
376
|
// list orders to check discount usage limits
|
|
@@ -357,7 +380,9 @@ export default async ({ params, application }) => {
|
|
|
357
380
|
+ encodeURIComponent(label);
|
|
358
381
|
const usageLimits = [{
|
|
359
382
|
// limit by customer
|
|
360
|
-
query:
|
|
383
|
+
query: customer.doc_number
|
|
384
|
+
? `&buyers.doc_number=${customer.doc_number}`
|
|
385
|
+
: `&buyers._id=${customer._id}`,
|
|
361
386
|
max: discountRule.usage_limit,
|
|
362
387
|
}, {
|
|
363
388
|
// total limit
|
|
@@ -65,8 +65,10 @@ const getValidDiscountRules = (discountRules, params, items) => {
|
|
|
65
65
|
if (rule.discount && rule.discount.value) {
|
|
66
66
|
if (rule.discount.type === 'percentage') {
|
|
67
67
|
value *= rule.discount.value / 100;
|
|
68
|
+
} else if (rule.discount_kit_subtotal) {
|
|
69
|
+
value = rule.discount.value;
|
|
68
70
|
} else {
|
|
69
|
-
value
|
|
71
|
+
value = Math.min(value, rule.discount.value);
|
|
70
72
|
}
|
|
71
73
|
}
|
|
72
74
|
rule.discount = {
|
|
@@ -88,7 +90,7 @@ const getValidDiscountRules = (discountRules, params, items) => {
|
|
|
88
90
|
return [];
|
|
89
91
|
};
|
|
90
92
|
|
|
91
|
-
const matchDiscountRule = (discountRules, params) => {
|
|
93
|
+
const matchDiscountRule = (discountRules, params = {}) => {
|
|
92
94
|
// try to match a promotion
|
|
93
95
|
if (params.discount_coupon) {
|
|
94
96
|
// match only by discount coupon
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/app-discounts",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app for complex discount rules",
|
|
6
6
|
"main": "lib/discounts.js",
|
|
7
7
|
"repository": {
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@cloudcommerce/api": "workspace:*",
|
|
23
|
-
"@ecomplus/utils": "1.5.0-rc.
|
|
23
|
+
"@ecomplus/utils": "1.5.0-rc.5"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@cloudcommerce/types": "workspace:*"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/functios-lib/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/functios-lib/utils.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,oBAAoB,CAAC;AACrC,OAAO,MAAM,MAAM,oCAAoC,CAAC;AAExD,MAAM,sBAAsB,GAAG,CAC7B,OAAmB,EACnB,WAAmB,EACnB,eAAuC,EACvC,UAAkB,EAClB,EAAE;IACF,MAAM,cAAc,GAAW,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;IAElF,MAAM,IAAI,GAAG;QACX,iBAAiB,EAAE,IAAI;KACxB,CAAC;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,UAAU,OAAO,IAAI,WAAW,IAAI,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;AAC/E,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;IACrC,OAAO,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACvD,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;IACzC,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,IAAI;QAC1B,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,IAAI,EAAE,eAAe,CAAC,IAAI;QAC1B,cAAc,EAAE,eAAe,CAAC,cAAc,IAAI,eAAe,CAAC,IAAI;QACtE,aAAa,EAAE,eAAe,CAAC,KAAK;QACpC,IAAI,EAAE;YACJ,GAAG,EAAE,WAAW,eAAe,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE;SAChE;QACD,OAAO,EAAE,eAAe,CAAC,OAAO;KACjC,CAAC;AACJ,CAAC,CAAC;AAEF,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,QAAQ,GACT,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/app-emails",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce default transactional email app",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"repository": {
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"@cloudcommerce/emails": "workspace:*",
|
|
24
24
|
"@cloudcommerce/firebase": "workspace:*",
|
|
25
25
|
"@ecomplus/transactional-mails": "^2.0.0",
|
|
26
|
-
"firebase-admin": "^11.
|
|
27
|
-
"firebase-functions": "^
|
|
26
|
+
"firebase-admin": "^11.9.0",
|
|
27
|
+
"firebase-functions": "^4.4.1"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@cloudcommerce/types": "workspace:*",
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { ResourceId } from '@cloudcommerce/types';
|
|
1
2
|
import api from '@cloudcommerce/api';
|
|
2
3
|
import config from '@cloudcommerce/firebase/lib/config';
|
|
3
4
|
|
|
4
5
|
const updateOrderSubresource = (
|
|
5
|
-
orderId:
|
|
6
|
+
orderId: ResourceId,
|
|
6
7
|
subresource: string,
|
|
7
8
|
lastValidRecord: { [key: string]: any },
|
|
8
9
|
insertedId: string,
|
|
@@ -19,10 +19,24 @@ const handleApiEvent = async ({
|
|
|
19
19
|
return null;
|
|
20
20
|
}
|
|
21
21
|
logger.info(`> Webhook ${resourceId} [${evName}]`);
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
if (!process.env.FB_GRAPH_TOKEN) {
|
|
23
|
+
const fbGraphToken = appData.fb_graph_token;
|
|
24
|
+
if (typeof fbGraphToken === 'string' && fbGraphToken) {
|
|
25
|
+
process.env.FB_GRAPH_TOKEN = fbGraphToken;
|
|
26
|
+
} else {
|
|
27
|
+
logger.warn('Missing Facebook Graph token');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (!process.env.FB_PIXEL_ID) {
|
|
31
|
+
const fbPixelId = appData.fb_pixel_id;
|
|
32
|
+
if (typeof fbPixelId === 'string' && fbPixelId) {
|
|
33
|
+
process.env.FB_PIXEL_ID = fbPixelId;
|
|
34
|
+
} else {
|
|
35
|
+
logger.warn('Missing Facebook pixel ID');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (process.env.FB_PIXEL_ID && process.env.FB_GRAPH_TOKEN) {
|
|
39
|
+
FacebookAdsApi.init(process.env.FB_GRAPH_TOKEN);
|
|
26
40
|
if (evName === 'orders-new') {
|
|
27
41
|
const order = apiDoc;
|
|
28
42
|
if (order.status === 'cancelled') {
|
|
@@ -79,7 +93,7 @@ const handleApiEvent = async ({
|
|
|
79
93
|
}
|
|
80
94
|
const serverEvent = createServeEvent('Purchase', eventMs, userData, customData, eventID || orderId, eventSourceUrl);
|
|
81
95
|
const eventsData = [serverEvent];
|
|
82
|
-
const eventRequest = (new EventRequest(
|
|
96
|
+
const eventRequest = (new EventRequest(process.env.FB_GRAPH_TOKEN, process.env.FB_PIXEL_ID))
|
|
83
97
|
.setEvents(eventsData);
|
|
84
98
|
try {
|
|
85
99
|
const response = await eventRequest.execute();
|
|
@@ -143,7 +157,7 @@ const handleApiEvent = async ({
|
|
|
143
157
|
}
|
|
144
158
|
const serverEvent = createServeEvent('InitiateCheckout', eventMs, userData, customData, cart._id, eventSourceUrl);
|
|
145
159
|
const eventsData = [serverEvent];
|
|
146
|
-
const eventRequest = (new EventRequest(
|
|
160
|
+
const eventRequest = (new EventRequest(process.env.FB_GRAPH_TOKEN, process.env.FB_PIXEL_ID))
|
|
147
161
|
.setEvents(eventsData);
|
|
148
162
|
try {
|
|
149
163
|
const response = await eventRequest.execute();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fb-conversions-events.js","sourceRoot":"","sources":["../src/fb-conversions-events.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,GAExB,MAAM,4CAA4C,CAAC;AACpD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAEL,YAAY,EACZ,cAAc,GAEf,MAAM,8BAA8B,CAAC;AACtC,OAAO,GAAG,MAAM,oBAAoB,CAAC;AACrC,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACf,MAAM,mCAAmC,CAAC;AAE3C,MAAM,cAAc,GAAoB,KAAK,EAAE,EAC7C,MAAM,EACN,QAAQ,EACR,MAAM,EACN,GAAG,GACJ,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IACpD,IACE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;WACjC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EACzC;QACA,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;KACb;IACD,MAAM,CAAC,IAAI,CAAC,aAAa,UAAU,KAAK,MAAM,GAAG,CAAC,CAAC;IAEnD,MAAM,
|
|
1
|
+
{"version":3,"file":"fb-conversions-events.js","sourceRoot":"","sources":["../src/fb-conversions-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/app-fb-conversions",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app to send carts/orders to Facebook Conversions API",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"repository": {
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"@cloudcommerce/api": "workspace:*",
|
|
23
23
|
"@cloudcommerce/firebase": "workspace:*",
|
|
24
24
|
"facebook-nodejs-business-sdk": "^16.0.2",
|
|
25
|
-
"firebase-admin": "^11.
|
|
26
|
-
"firebase-functions": "^4.4.
|
|
25
|
+
"firebase-admin": "^11.9.0",
|
|
26
|
+
"firebase-functions": "^4.4.1"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@cloudcommerce/types": "workspace:*",
|
|
@@ -38,11 +38,26 @@ const handleApiEvent: ApiEventHandler = async ({
|
|
|
38
38
|
}
|
|
39
39
|
logger.info(`> Webhook ${resourceId} [${evName}]`);
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
if (!process.env.FB_GRAPH_TOKEN) {
|
|
42
|
+
const fbGraphToken = appData.fb_graph_token;
|
|
43
|
+
if (typeof fbGraphToken === 'string' && fbGraphToken) {
|
|
44
|
+
process.env.FB_GRAPH_TOKEN = fbGraphToken;
|
|
45
|
+
} else {
|
|
46
|
+
logger.warn('Missing Facebook Graph token');
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (!process.env.FB_PIXEL_ID) {
|
|
51
|
+
const fbPixelId = appData.fb_pixel_id;
|
|
52
|
+
if (typeof fbPixelId === 'string' && fbPixelId) {
|
|
53
|
+
process.env.FB_PIXEL_ID = fbPixelId;
|
|
54
|
+
} else {
|
|
55
|
+
logger.warn('Missing Facebook pixel ID');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
43
58
|
|
|
44
|
-
if (
|
|
45
|
-
FacebookAdsApi.init(
|
|
59
|
+
if (process.env.FB_PIXEL_ID && process.env.FB_GRAPH_TOKEN) {
|
|
60
|
+
FacebookAdsApi.init(process.env.FB_GRAPH_TOKEN);
|
|
46
61
|
|
|
47
62
|
if (evName === 'orders-new') {
|
|
48
63
|
const order = apiDoc as Orders;
|
|
@@ -119,7 +134,7 @@ const handleApiEvent: ApiEventHandler = async ({
|
|
|
119
134
|
);
|
|
120
135
|
|
|
121
136
|
const eventsData = [serverEvent];
|
|
122
|
-
const eventRequest = (new EventRequest(
|
|
137
|
+
const eventRequest = (new EventRequest(process.env.FB_GRAPH_TOKEN, process.env.FB_PIXEL_ID))
|
|
123
138
|
.setEvents(eventsData);
|
|
124
139
|
|
|
125
140
|
try {
|
|
@@ -201,7 +216,7 @@ const handleApiEvent: ApiEventHandler = async ({
|
|
|
201
216
|
);
|
|
202
217
|
|
|
203
218
|
const eventsData = [serverEvent];
|
|
204
|
-
const eventRequest = (new EventRequest(
|
|
219
|
+
const eventRequest = (new EventRequest(process.env.FB_GRAPH_TOKEN, process.env.FB_PIXEL_ID))
|
|
205
220
|
.setEvents(eventsData);
|
|
206
221
|
|
|
207
222
|
try {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Please refer to GitHub [repository releases](https://github.com/ecomplus/cloud-commerce/releases) or monorepo unified [CHANGELOG.md](https://github.com/ecomplus/cloud-commerce/blob/main/CHANGELOG.md).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# `@cloudcommerce/app-flash-courier`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lib/flash-courier-events';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* eslint-disable import/prefer-default-export */
|
|
2
|
+
import '@cloudcommerce/firebase/lib/init';
|
|
3
|
+
import * as functions from 'firebase-functions/v1';
|
|
4
|
+
import config from '@cloudcommerce/firebase/lib/config';
|
|
5
|
+
import handleTrackingCodes from '../lib-mjs/update-tracking.mjs';
|
|
6
|
+
|
|
7
|
+
export const flashcourier = {
|
|
8
|
+
cronTrackingCodes: functions.region(config.get().httpsFunctionOptions.region).pubsub
|
|
9
|
+
.schedule('19 * * * *')
|
|
10
|
+
.onRun(() => {
|
|
11
|
+
return handleTrackingCodes();
|
|
12
|
+
}),
|
|
13
|
+
};
|
|
14
|
+
// # sourceMappingURL=flash-courier-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flash-courier-events.js","sourceRoot":"","sources":["../src/flash-courier-events.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACnD,OAAO,MAAM,MAAM,oCAAoC,CAAC;AACxD,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AAEjE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,iBAAiB,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM;SACjF,QAAQ,CAAC,YAAY,CAAC;SACtB,KAAK,CAAC,GAAG,EAAE;QACV,OAAO,mBAAmB,EAAE,CAAC;IAC/B,CAAC,CAAC;CACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flash-courier.js","sourceRoot":"","sources":["../src/flash-courier.ts"],"names":[],"mappings":"AAEA,OAAO,uBAAuB,MAAM,wCAAwC,CAAC;AAE7E,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,OAAsB,EAAE,EAAE;IAChE,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './flash-courier';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|