@aimee.shop/sdk 0.26.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/LICENSE +21 -0
- package/README.md +144 -0
- package/dist/browser/browser-auth.d.ts +115 -0
- package/dist/browser/browser-auth.d.ts.map +1 -0
- package/dist/browser/browser-auth.js +234 -0
- package/dist/browser/browser-auth.js.map +1 -0
- package/dist/browser/index.d.ts +62 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +69 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/core/auth/api-key.authenticator.d.ts +16 -0
- package/dist/core/auth/api-key.authenticator.d.ts.map +1 -0
- package/dist/core/auth/api-key.authenticator.js +28 -0
- package/dist/core/auth/api-key.authenticator.js.map +1 -0
- package/dist/core/auth/auth-chain.d.ts +33 -0
- package/dist/core/auth/auth-chain.d.ts.map +1 -0
- package/dist/core/auth/auth-chain.js +65 -0
- package/dist/core/auth/auth-chain.js.map +1 -0
- package/dist/core/auth/authenticator.d.ts +19 -0
- package/dist/core/auth/authenticator.d.ts.map +1 -0
- package/dist/core/auth/authenticator.js +2 -0
- package/dist/core/auth/authenticator.js.map +1 -0
- package/dist/core/auth/cognito.authenticator.d.ts +28 -0
- package/dist/core/auth/cognito.authenticator.d.ts.map +1 -0
- package/dist/core/auth/cognito.authenticator.js +89 -0
- package/dist/core/auth/cognito.authenticator.js.map +1 -0
- package/dist/core/auth/index.d.ts +8 -0
- package/dist/core/auth/index.d.ts.map +1 -0
- package/dist/core/auth/index.js +6 -0
- package/dist/core/auth/index.js.map +1 -0
- package/dist/core/auth/interactive.authenticator.d.ts +22 -0
- package/dist/core/auth/interactive.authenticator.d.ts.map +1 -0
- package/dist/core/auth/interactive.authenticator.js +126 -0
- package/dist/core/auth/interactive.authenticator.js.map +1 -0
- package/dist/core/auth/lazy-interactive.authenticator.d.ts +51 -0
- package/dist/core/auth/lazy-interactive.authenticator.d.ts.map +1 -0
- package/dist/core/auth/lazy-interactive.authenticator.js +112 -0
- package/dist/core/auth/lazy-interactive.authenticator.js.map +1 -0
- package/dist/core/auth/token.authenticator.d.ts +20 -0
- package/dist/core/auth/token.authenticator.d.ts.map +1 -0
- package/dist/core/auth/token.authenticator.js +45 -0
- package/dist/core/auth/token.authenticator.js.map +1 -0
- package/dist/core/config.d.ts +72 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +120 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/errors/index.d.ts +101 -0
- package/dist/core/errors/index.d.ts.map +1 -0
- package/dist/core/errors/index.js +119 -0
- package/dist/core/errors/index.js.map +1 -0
- package/dist/core/events/event-envelope.d.ts +34 -0
- package/dist/core/events/event-envelope.d.ts.map +1 -0
- package/dist/core/events/event-envelope.js +2 -0
- package/dist/core/events/event-envelope.js.map +1 -0
- package/dist/core/events/event-names.d.ts +552 -0
- package/dist/core/events/event-names.d.ts.map +1 -0
- package/dist/core/events/event-names.js +593 -0
- package/dist/core/events/event-names.js.map +1 -0
- package/dist/core/events/index.d.ts +4 -0
- package/dist/core/events/index.d.ts.map +1 -0
- package/dist/core/events/index.js +11 -0
- package/dist/core/events/index.js.map +1 -0
- package/dist/core/http-client.d.ts +88 -0
- package/dist/core/http-client.d.ts.map +1 -0
- package/dist/core/http-client.js +293 -0
- package/dist/core/http-client.js.map +1 -0
- package/dist/core/retry.d.ts +48 -0
- package/dist/core/retry.d.ts.map +1 -0
- package/dist/core/retry.js +57 -0
- package/dist/core/retry.js.map +1 -0
- package/dist/core/sdk.d.ts +153 -0
- package/dist/core/sdk.d.ts.map +1 -0
- package/dist/core/sdk.js +327 -0
- package/dist/core/sdk.js.map +1 -0
- package/dist/core/types/address.d.ts +18 -0
- package/dist/core/types/address.d.ts.map +1 -0
- package/dist/core/types/address.js +2 -0
- package/dist/core/types/address.js.map +1 -0
- package/dist/core/types/geo.d.ts +59 -0
- package/dist/core/types/geo.d.ts.map +1 -0
- package/dist/core/types/geo.js +78 -0
- package/dist/core/types/geo.js.map +1 -0
- package/dist/core/types/pagination.d.ts +42 -0
- package/dist/core/types/pagination.d.ts.map +1 -0
- package/dist/core/types/pagination.js +2 -0
- package/dist/core/types/pagination.js.map +1 -0
- package/dist/index.d.ts +68 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/services/core/assets.client.d.ts +520 -0
- package/dist/services/core/assets.client.d.ts.map +1 -0
- package/dist/services/core/assets.client.js +297 -0
- package/dist/services/core/assets.client.js.map +1 -0
- package/dist/services/core/base-resource.d.ts +70 -0
- package/dist/services/core/base-resource.d.ts.map +1 -0
- package/dist/services/core/base-resource.js +97 -0
- package/dist/services/core/base-resource.js.map +1 -0
- package/dist/services/core/cart-messages/cart-messages.client.d.ts +30 -0
- package/dist/services/core/cart-messages/cart-messages.client.d.ts.map +1 -0
- package/dist/services/core/cart-messages/cart-messages.client.js +30 -0
- package/dist/services/core/cart-messages/cart-messages.client.js.map +1 -0
- package/dist/services/core/cart-messages/index.d.ts +4 -0
- package/dist/services/core/cart-messages/index.d.ts.map +1 -0
- package/dist/services/core/cart-messages/index.js +3 -0
- package/dist/services/core/cart-messages/index.js.map +1 -0
- package/dist/services/core/cart-messages/types.d.ts +106 -0
- package/dist/services/core/cart-messages/types.d.ts.map +1 -0
- package/dist/services/core/cart-messages/types.js +6 -0
- package/dist/services/core/cart-messages/types.js.map +1 -0
- package/dist/services/core/carts.client.d.ts +253 -0
- package/dist/services/core/carts.client.d.ts.map +1 -0
- package/dist/services/core/carts.client.js +110 -0
- package/dist/services/core/carts.client.js.map +1 -0
- package/dist/services/core/categories.client.d.ts +105 -0
- package/dist/services/core/categories.client.d.ts.map +1 -0
- package/dist/services/core/categories.client.js +135 -0
- package/dist/services/core/categories.client.js.map +1 -0
- package/dist/services/core/checkout.client.d.ts +414 -0
- package/dist/services/core/checkout.client.d.ts.map +1 -0
- package/dist/services/core/checkout.client.js +153 -0
- package/dist/services/core/checkout.client.js.map +1 -0
- package/dist/services/core/cms/cms.client.d.ts +111 -0
- package/dist/services/core/cms/cms.client.d.ts.map +1 -0
- package/dist/services/core/cms/cms.client.js +148 -0
- package/dist/services/core/cms/cms.client.js.map +1 -0
- package/dist/services/core/cms/collections.client.d.ts +45 -0
- package/dist/services/core/cms/collections.client.d.ts.map +1 -0
- package/dist/services/core/cms/collections.client.js +67 -0
- package/dist/services/core/cms/collections.client.js.map +1 -0
- package/dist/services/core/cms/content-types.client.d.ts +101 -0
- package/dist/services/core/cms/content-types.client.d.ts.map +1 -0
- package/dist/services/core/cms/content-types.client.js +143 -0
- package/dist/services/core/cms/content-types.client.js.map +1 -0
- package/dist/services/core/cms/entries.client.d.ts +187 -0
- package/dist/services/core/cms/entries.client.d.ts.map +1 -0
- package/dist/services/core/cms/entries.client.js +265 -0
- package/dist/services/core/cms/entries.client.js.map +1 -0
- package/dist/services/core/cms/index.d.ts +10 -0
- package/dist/services/core/cms/index.d.ts.map +1 -0
- package/dist/services/core/cms/index.js +10 -0
- package/dist/services/core/cms/index.js.map +1 -0
- package/dist/services/core/cms/media.client.d.ts +63 -0
- package/dist/services/core/cms/media.client.d.ts.map +1 -0
- package/dist/services/core/cms/media.client.js +95 -0
- package/dist/services/core/cms/media.client.js.map +1 -0
- package/dist/services/core/cms/modules.client.d.ts +64 -0
- package/dist/services/core/cms/modules.client.d.ts.map +1 -0
- package/dist/services/core/cms/modules.client.js +88 -0
- package/dist/services/core/cms/modules.client.js.map +1 -0
- package/dist/services/core/cms/navigation.client.d.ts +78 -0
- package/dist/services/core/cms/navigation.client.d.ts.map +1 -0
- package/dist/services/core/cms/navigation.client.js +116 -0
- package/dist/services/core/cms/navigation.client.js.map +1 -0
- package/dist/services/core/cms/public.client.d.ts +64 -0
- package/dist/services/core/cms/public.client.d.ts.map +1 -0
- package/dist/services/core/cms/public.client.js +102 -0
- package/dist/services/core/cms/public.client.js.map +1 -0
- package/dist/services/core/cms/types.d.ts +804 -0
- package/dist/services/core/cms/types.d.ts.map +1 -0
- package/dist/services/core/cms/types.js +43 -0
- package/dist/services/core/cms/types.js.map +1 -0
- package/dist/services/core/customers.client.d.ts +285 -0
- package/dist/services/core/customers.client.d.ts.map +1 -0
- package/dist/services/core/customers.client.js +133 -0
- package/dist/services/core/customers.client.js.map +1 -0
- package/dist/services/core/discounts.client.d.ts +197 -0
- package/dist/services/core/discounts.client.d.ts.map +1 -0
- package/dist/services/core/discounts.client.js +81 -0
- package/dist/services/core/discounts.client.js.map +1 -0
- package/dist/services/core/exports/exports.client.d.ts +55 -0
- package/dist/services/core/exports/exports.client.d.ts.map +1 -0
- package/dist/services/core/exports/exports.client.js +80 -0
- package/dist/services/core/exports/exports.client.js.map +1 -0
- package/dist/services/core/exports/index.d.ts +4 -0
- package/dist/services/core/exports/index.d.ts.map +1 -0
- package/dist/services/core/exports/index.js +3 -0
- package/dist/services/core/exports/index.js.map +1 -0
- package/dist/services/core/exports/types.d.ts +68 -0
- package/dist/services/core/exports/types.d.ts.map +1 -0
- package/dist/services/core/exports/types.js +25 -0
- package/dist/services/core/exports/types.js.map +1 -0
- package/dist/services/core/facets.client.d.ts +127 -0
- package/dist/services/core/facets.client.d.ts.map +1 -0
- package/dist/services/core/facets.client.js +81 -0
- package/dist/services/core/facets.client.js.map +1 -0
- package/dist/services/core/fulfillments.client.d.ts +94 -0
- package/dist/services/core/fulfillments.client.d.ts.map +1 -0
- package/dist/services/core/fulfillments.client.js +66 -0
- package/dist/services/core/fulfillments.client.js.map +1 -0
- package/dist/services/core/inventory/adjustments.client.d.ts +60 -0
- package/dist/services/core/inventory/adjustments.client.d.ts.map +1 -0
- package/dist/services/core/inventory/adjustments.client.js +76 -0
- package/dist/services/core/inventory/adjustments.client.js.map +1 -0
- package/dist/services/core/inventory/index.d.ts +8 -0
- package/dist/services/core/inventory/index.d.ts.map +1 -0
- package/dist/services/core/inventory/index.js +7 -0
- package/dist/services/core/inventory/index.js.map +1 -0
- package/dist/services/core/inventory/inventory.client.d.ts +90 -0
- package/dist/services/core/inventory/inventory.client.d.ts.map +1 -0
- package/dist/services/core/inventory/inventory.client.js +135 -0
- package/dist/services/core/inventory/inventory.client.js.map +1 -0
- package/dist/services/core/inventory/locations.client.d.ts +71 -0
- package/dist/services/core/inventory/locations.client.d.ts.map +1 -0
- package/dist/services/core/inventory/locations.client.js +107 -0
- package/dist/services/core/inventory/locations.client.js.map +1 -0
- package/dist/services/core/inventory/reservations.client.d.ts +58 -0
- package/dist/services/core/inventory/reservations.client.d.ts.map +1 -0
- package/dist/services/core/inventory/reservations.client.js +87 -0
- package/dist/services/core/inventory/reservations.client.js.map +1 -0
- package/dist/services/core/inventory/stock.client.d.ts +74 -0
- package/dist/services/core/inventory/stock.client.d.ts.map +1 -0
- package/dist/services/core/inventory/stock.client.js +113 -0
- package/dist/services/core/inventory/stock.client.js.map +1 -0
- package/dist/services/core/inventory/types.d.ts +337 -0
- package/dist/services/core/inventory/types.d.ts.map +1 -0
- package/dist/services/core/inventory/types.js +2 -0
- package/dist/services/core/inventory/types.js.map +1 -0
- package/dist/services/core/invoices.client.d.ts +92 -0
- package/dist/services/core/invoices.client.d.ts.map +1 -0
- package/dist/services/core/invoices.client.js +68 -0
- package/dist/services/core/invoices.client.js.map +1 -0
- package/dist/services/core/notification-config.client.d.ts +57 -0
- package/dist/services/core/notification-config.client.d.ts.map +1 -0
- package/dist/services/core/notification-config.client.js +41 -0
- package/dist/services/core/notification-config.client.js.map +1 -0
- package/dist/services/core/openai-feed.client.d.ts +90 -0
- package/dist/services/core/openai-feed.client.d.ts.map +1 -0
- package/dist/services/core/openai-feed.client.js +63 -0
- package/dist/services/core/openai-feed.client.js.map +1 -0
- package/dist/services/core/option-types.client.d.ts +119 -0
- package/dist/services/core/option-types.client.d.ts.map +1 -0
- package/dist/services/core/option-types.client.js +81 -0
- package/dist/services/core/option-types.client.js.map +1 -0
- package/dist/services/core/option-values.client.d.ts +72 -0
- package/dist/services/core/option-values.client.d.ts.map +1 -0
- package/dist/services/core/option-values.client.js +64 -0
- package/dist/services/core/option-values.client.js.map +1 -0
- package/dist/services/core/order-edits.client.d.ts +88 -0
- package/dist/services/core/order-edits.client.d.ts.map +1 -0
- package/dist/services/core/order-edits.client.js +62 -0
- package/dist/services/core/order-edits.client.js.map +1 -0
- package/dist/services/core/orders.client.d.ts +284 -0
- package/dist/services/core/orders.client.d.ts.map +1 -0
- package/dist/services/core/orders.client.js +150 -0
- package/dist/services/core/orders.client.js.map +1 -0
- package/dist/services/core/pricing/currencies.client.d.ts +109 -0
- package/dist/services/core/pricing/currencies.client.d.ts.map +1 -0
- package/dist/services/core/pricing/currencies.client.js +145 -0
- package/dist/services/core/pricing/currencies.client.js.map +1 -0
- package/dist/services/core/pricing/customer-groups.client.d.ts +126 -0
- package/dist/services/core/pricing/customer-groups.client.d.ts.map +1 -0
- package/dist/services/core/pricing/customer-groups.client.js +154 -0
- package/dist/services/core/pricing/customer-groups.client.js.map +1 -0
- package/dist/services/core/pricing/geo-zones.client.d.ts +89 -0
- package/dist/services/core/pricing/geo-zones.client.d.ts.map +1 -0
- package/dist/services/core/pricing/geo-zones.client.js +116 -0
- package/dist/services/core/pricing/geo-zones.client.js.map +1 -0
- package/dist/services/core/pricing/index.d.ts +13 -0
- package/dist/services/core/pricing/index.d.ts.map +1 -0
- package/dist/services/core/pricing/index.js +13 -0
- package/dist/services/core/pricing/index.js.map +1 -0
- package/dist/services/core/pricing/markets.client.d.ts +154 -0
- package/dist/services/core/pricing/markets.client.d.ts.map +1 -0
- package/dist/services/core/pricing/markets.client.js +194 -0
- package/dist/services/core/pricing/markets.client.js.map +1 -0
- package/dist/services/core/pricing/pricing.client.d.ts +280 -0
- package/dist/services/core/pricing/pricing.client.d.ts.map +1 -0
- package/dist/services/core/pricing/pricing.client.js +363 -0
- package/dist/services/core/pricing/pricing.client.js.map +1 -0
- package/dist/services/core/pricing/product-geo-restrictions.client.d.ts +79 -0
- package/dist/services/core/pricing/product-geo-restrictions.client.d.ts.map +1 -0
- package/dist/services/core/pricing/product-geo-restrictions.client.js +109 -0
- package/dist/services/core/pricing/product-geo-restrictions.client.js.map +1 -0
- package/dist/services/core/pricing/product-market-settings.client.d.ts +168 -0
- package/dist/services/core/pricing/product-market-settings.client.d.ts.map +1 -0
- package/dist/services/core/pricing/product-market-settings.client.js +213 -0
- package/dist/services/core/pricing/product-market-settings.client.js.map +1 -0
- package/dist/services/core/pricing/rules.client.d.ts +46 -0
- package/dist/services/core/pricing/rules.client.d.ts.map +1 -0
- package/dist/services/core/pricing/rules.client.js +57 -0
- package/dist/services/core/pricing/rules.client.js.map +1 -0
- package/dist/services/core/pricing/store-markets.client.d.ts +168 -0
- package/dist/services/core/pricing/store-markets.client.d.ts.map +1 -0
- package/dist/services/core/pricing/store-markets.client.js +209 -0
- package/dist/services/core/pricing/store-markets.client.js.map +1 -0
- package/dist/services/core/pricing/tiers.client.d.ts +57 -0
- package/dist/services/core/pricing/tiers.client.d.ts.map +1 -0
- package/dist/services/core/pricing/tiers.client.js +72 -0
- package/dist/services/core/pricing/tiers.client.js.map +1 -0
- package/dist/services/core/pricing/types.d.ts +782 -0
- package/dist/services/core/pricing/types.d.ts.map +1 -0
- package/dist/services/core/pricing/types.js +2 -0
- package/dist/services/core/pricing/types.js.map +1 -0
- package/dist/services/core/pricing/variant-prices.client.d.ts +307 -0
- package/dist/services/core/pricing/variant-prices.client.d.ts.map +1 -0
- package/dist/services/core/pricing/variant-prices.client.js +347 -0
- package/dist/services/core/pricing/variant-prices.client.js.map +1 -0
- package/dist/services/core/product-relations.client.d.ts +260 -0
- package/dist/services/core/product-relations.client.d.ts.map +1 -0
- package/dist/services/core/product-relations.client.js +141 -0
- package/dist/services/core/product-relations.client.js.map +1 -0
- package/dist/services/core/products.client.d.ts +564 -0
- package/dist/services/core/products.client.d.ts.map +1 -0
- package/dist/services/core/products.client.js +277 -0
- package/dist/services/core/products.client.js.map +1 -0
- package/dist/services/core/returns.client.d.ts +199 -0
- package/dist/services/core/returns.client.d.ts.map +1 -0
- package/dist/services/core/returns.client.js +106 -0
- package/dist/services/core/returns.client.js.map +1 -0
- package/dist/services/core/reviews.client.d.ts +218 -0
- package/dist/services/core/reviews.client.d.ts.map +1 -0
- package/dist/services/core/reviews.client.js +161 -0
- package/dist/services/core/reviews.client.js.map +1 -0
- package/dist/services/core/search.client.d.ts +127 -0
- package/dist/services/core/search.client.d.ts.map +1 -0
- package/dist/services/core/search.client.js +120 -0
- package/dist/services/core/search.client.js.map +1 -0
- package/dist/services/core/shipping/classes.client.d.ts +20 -0
- package/dist/services/core/shipping/classes.client.d.ts.map +1 -0
- package/dist/services/core/shipping/classes.client.js +43 -0
- package/dist/services/core/shipping/classes.client.js.map +1 -0
- package/dist/services/core/shipping/index.d.ts +11 -0
- package/dist/services/core/shipping/index.d.ts.map +1 -0
- package/dist/services/core/shipping/index.js +11 -0
- package/dist/services/core/shipping/index.js.map +1 -0
- package/dist/services/core/shipping/labels.client.d.ts +20 -0
- package/dist/services/core/shipping/labels.client.d.ts.map +1 -0
- package/dist/services/core/shipping/labels.client.js +49 -0
- package/dist/services/core/shipping/labels.client.js.map +1 -0
- package/dist/services/core/shipping/providers.client.d.ts +19 -0
- package/dist/services/core/shipping/providers.client.d.ts.map +1 -0
- package/dist/services/core/shipping/providers.client.js +46 -0
- package/dist/services/core/shipping/providers.client.js.map +1 -0
- package/dist/services/core/shipping/rates.client.d.ts +19 -0
- package/dist/services/core/shipping/rates.client.d.ts.map +1 -0
- package/dist/services/core/shipping/rates.client.js +37 -0
- package/dist/services/core/shipping/rates.client.js.map +1 -0
- package/dist/services/core/shipping/rules.client.d.ts +17 -0
- package/dist/services/core/shipping/rules.client.d.ts.map +1 -0
- package/dist/services/core/shipping/rules.client.js +34 -0
- package/dist/services/core/shipping/rules.client.js.map +1 -0
- package/dist/services/core/shipping/shipper-identity.client.d.ts +49 -0
- package/dist/services/core/shipping/shipper-identity.client.d.ts.map +1 -0
- package/dist/services/core/shipping/shipper-identity.client.js +61 -0
- package/dist/services/core/shipping/shipper-identity.client.js.map +1 -0
- package/dist/services/core/shipping/shipping.client.d.ts +99 -0
- package/dist/services/core/shipping/shipping.client.d.ts.map +1 -0
- package/dist/services/core/shipping/shipping.client.js +165 -0
- package/dist/services/core/shipping/shipping.client.js.map +1 -0
- package/dist/services/core/shipping/store-providers.client.d.ts +48 -0
- package/dist/services/core/shipping/store-providers.client.d.ts.map +1 -0
- package/dist/services/core/shipping/store-providers.client.js +59 -0
- package/dist/services/core/shipping/store-providers.client.js.map +1 -0
- package/dist/services/core/shipping/types.d.ts +488 -0
- package/dist/services/core/shipping/types.d.ts.map +1 -0
- package/dist/services/core/shipping/types.js +3 -0
- package/dist/services/core/shipping/types.js.map +1 -0
- package/dist/services/core/shipping/zones.client.d.ts +16 -0
- package/dist/services/core/shipping/zones.client.d.ts.map +1 -0
- package/dist/services/core/shipping/zones.client.js +29 -0
- package/dist/services/core/shipping/zones.client.js.map +1 -0
- package/dist/services/core/storefront/index.d.ts +10 -0
- package/dist/services/core/storefront/index.d.ts.map +1 -0
- package/dist/services/core/storefront/index.js +10 -0
- package/dist/services/core/storefront/index.js.map +1 -0
- package/dist/services/core/storefront/storefront-addresses.client.d.ts +67 -0
- package/dist/services/core/storefront/storefront-addresses.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-addresses.client.js +95 -0
- package/dist/services/core/storefront/storefront-addresses.client.js.map +1 -0
- package/dist/services/core/storefront/storefront-auth.client.d.ts +104 -0
- package/dist/services/core/storefront/storefront-auth.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-auth.client.js +132 -0
- package/dist/services/core/storefront/storefront-auth.client.js.map +1 -0
- package/dist/services/core/storefront/storefront-orders.client.d.ts +73 -0
- package/dist/services/core/storefront/storefront-orders.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-orders.client.js +78 -0
- package/dist/services/core/storefront/storefront-orders.client.js.map +1 -0
- package/dist/services/core/storefront/storefront-plans.client.d.ts +76 -0
- package/dist/services/core/storefront/storefront-plans.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-plans.client.js +52 -0
- package/dist/services/core/storefront/storefront-plans.client.js.map +1 -0
- package/dist/services/core/storefront/storefront-reviews.client.d.ts +60 -0
- package/dist/services/core/storefront/storefront-reviews.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-reviews.client.js +88 -0
- package/dist/services/core/storefront/storefront-reviews.client.js.map +1 -0
- package/dist/services/core/storefront/storefront-subscriptions.client.d.ts +199 -0
- package/dist/services/core/storefront/storefront-subscriptions.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront-subscriptions.client.js +149 -0
- package/dist/services/core/storefront/storefront-subscriptions.client.js.map +1 -0
- package/dist/services/core/storefront/storefront.client.d.ts +166 -0
- package/dist/services/core/storefront/storefront.client.d.ts.map +1 -0
- package/dist/services/core/storefront/storefront.client.js +228 -0
- package/dist/services/core/storefront/storefront.client.js.map +1 -0
- package/dist/services/core/storefront/types.d.ts +131 -0
- package/dist/services/core/storefront/types.d.ts.map +1 -0
- package/dist/services/core/storefront/types.js +3 -0
- package/dist/services/core/storefront/types.js.map +1 -0
- package/dist/services/core/storefront-redirects/index.d.ts +4 -0
- package/dist/services/core/storefront-redirects/index.d.ts.map +1 -0
- package/dist/services/core/storefront-redirects/index.js +3 -0
- package/dist/services/core/storefront-redirects/index.js.map +1 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.client.d.ts +79 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.client.d.ts.map +1 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.client.js +132 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.client.js.map +1 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.public.client.d.ts +35 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.public.client.d.ts.map +1 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.public.client.js +42 -0
- package/dist/services/core/storefront-redirects/storefront-redirects.public.client.js.map +1 -0
- package/dist/services/core/storefront-redirects/types.d.ts +117 -0
- package/dist/services/core/storefront-redirects/types.d.ts.map +1 -0
- package/dist/services/core/storefront-redirects/types.js +2 -0
- package/dist/services/core/storefront-redirects/types.js.map +1 -0
- package/dist/services/core/stores/ai-discovery.client.d.ts +98 -0
- package/dist/services/core/stores/ai-discovery.client.d.ts.map +1 -0
- package/dist/services/core/stores/ai-discovery.client.js +72 -0
- package/dist/services/core/stores/ai-discovery.client.js.map +1 -0
- package/dist/services/core/stores/configuration.client.d.ts +238 -0
- package/dist/services/core/stores/configuration.client.d.ts.map +1 -0
- package/dist/services/core/stores/configuration.client.js +88 -0
- package/dist/services/core/stores/configuration.client.js.map +1 -0
- package/dist/services/core/stores/index.d.ts +11 -0
- package/dist/services/core/stores/index.d.ts.map +1 -0
- package/dist/services/core/stores/index.js +6 -0
- package/dist/services/core/stores/index.js.map +1 -0
- package/dist/services/core/stores/members.client.d.ts +91 -0
- package/dist/services/core/stores/members.client.d.ts.map +1 -0
- package/dist/services/core/stores/members.client.js +70 -0
- package/dist/services/core/stores/members.client.js.map +1 -0
- package/dist/services/core/stores/stores.client.d.ts +190 -0
- package/dist/services/core/stores/stores.client.d.ts.map +1 -0
- package/dist/services/core/stores/stores.client.js +177 -0
- package/dist/services/core/stores/stores.client.js.map +1 -0
- package/dist/services/core/stores/theme.types.d.ts +109 -0
- package/dist/services/core/stores/theme.types.d.ts.map +1 -0
- package/dist/services/core/stores/theme.types.js +27 -0
- package/dist/services/core/stores/theme.types.js.map +1 -0
- package/dist/services/core/taxes/index.d.ts +7 -0
- package/dist/services/core/taxes/index.d.ts.map +1 -0
- package/dist/services/core/taxes/index.js +7 -0
- package/dist/services/core/taxes/index.js.map +1 -0
- package/dist/services/core/taxes/jurisdictions.client.d.ts +61 -0
- package/dist/services/core/taxes/jurisdictions.client.d.ts.map +1 -0
- package/dist/services/core/taxes/jurisdictions.client.js +93 -0
- package/dist/services/core/taxes/jurisdictions.client.js.map +1 -0
- package/dist/services/core/taxes/providers.client.d.ts +111 -0
- package/dist/services/core/taxes/providers.client.d.ts.map +1 -0
- package/dist/services/core/taxes/providers.client.js +188 -0
- package/dist/services/core/taxes/providers.client.js.map +1 -0
- package/dist/services/core/taxes/rates.client.d.ts +63 -0
- package/dist/services/core/taxes/rates.client.d.ts.map +1 -0
- package/dist/services/core/taxes/rates.client.js +97 -0
- package/dist/services/core/taxes/rates.client.js.map +1 -0
- package/dist/services/core/taxes/store-providers.client.d.ts +48 -0
- package/dist/services/core/taxes/store-providers.client.d.ts.map +1 -0
- package/dist/services/core/taxes/store-providers.client.js +59 -0
- package/dist/services/core/taxes/store-providers.client.js.map +1 -0
- package/dist/services/core/taxes/taxes.client.d.ts +81 -0
- package/dist/services/core/taxes/taxes.client.d.ts.map +1 -0
- package/dist/services/core/taxes/taxes.client.js +117 -0
- package/dist/services/core/taxes/taxes.client.js.map +1 -0
- package/dist/services/core/taxes/types.d.ts +406 -0
- package/dist/services/core/taxes/types.d.ts.map +1 -0
- package/dist/services/core/taxes/types.js +3 -0
- package/dist/services/core/taxes/types.js.map +1 -0
- package/dist/services/core/variants.client.d.ts +415 -0
- package/dist/services/core/variants.client.d.ts.map +1 -0
- package/dist/services/core/variants.client.js +289 -0
- package/dist/services/core/variants.client.js.map +1 -0
- package/dist/services/core/wishlists.client.d.ts +151 -0
- package/dist/services/core/wishlists.client.d.ts.map +1 -0
- package/dist/services/core/wishlists.client.js +125 -0
- package/dist/services/core/wishlists.client.js.map +1 -0
- package/dist/storefront/index.d.ts +152 -0
- package/dist/storefront/index.d.ts.map +1 -0
- package/dist/storefront/index.js +189 -0
- package/dist/storefront/index.js.map +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storefront browser entry point (`@aimee.shop/sdk/storefront`).
|
|
3
|
+
*
|
|
4
|
+
* Built for browser storefronts authenticating with a PUBLISHABLE API key:
|
|
5
|
+
* - Factory, not a singleton: safe under SSR, no module-scope state or env reads.
|
|
6
|
+
* - Accepts pk_live_/pk_test_ keys only and hard-fails on secret (sk_) keys,
|
|
7
|
+
* which must never reach a browser bundle.
|
|
8
|
+
* - Never imports Cognito (admin auth) -- enforced by a CI import-graph guard --
|
|
9
|
+
* so storefront bundles stay lean.
|
|
10
|
+
* - Publishable keys are origin-public by design: the server rate-limits them
|
|
11
|
+
* (rateLimitPerMin) and scopes them to storefront-safe permissions. CORS on
|
|
12
|
+
* core-api must allow the x-api-key and Authorization headers for the
|
|
13
|
+
* dual-header customer flows (withCustomer me()/logout()).
|
|
14
|
+
*/
|
|
15
|
+
import type { AxiosRequestConfig } from 'axios';
|
|
16
|
+
import { type ZiftrError } from '../core/errors/index.js';
|
|
17
|
+
import type { RetryOptions } from '../core/retry.js';
|
|
18
|
+
import { ProductsClient } from '../services/core/products.client.js';
|
|
19
|
+
import { CategoriesClient } from '../services/core/categories.client.js';
|
|
20
|
+
import { SearchClient } from '../services/core/search.client.js';
|
|
21
|
+
import { FacetsClient } from '../services/core/facets.client.js';
|
|
22
|
+
import { CartsClient } from '../services/core/carts.client.js';
|
|
23
|
+
import { CheckoutClient } from '../services/core/checkout.client.js';
|
|
24
|
+
import { CmsClient } from '../services/core/cms/cms.client.js';
|
|
25
|
+
import { StoresClient } from '../services/core/stores/stores.client.js';
|
|
26
|
+
import { StorefrontClient } from '../services/core/storefront/storefront.client.js';
|
|
27
|
+
export interface StorefrontClientConfig {
|
|
28
|
+
/** Publishable API key (pk_live_... or pk_test_...). Browser-safe; secret keys are rejected */
|
|
29
|
+
publishableKey: string;
|
|
30
|
+
/** Store ID sent as x-store-id on every request */
|
|
31
|
+
storeId?: string;
|
|
32
|
+
/** Tenant ID sent as x-tenant-id on every request */
|
|
33
|
+
tenantId?: string;
|
|
34
|
+
/** Core API base URL. Default: https://api.ziftr.ai */
|
|
35
|
+
baseUrl?: string;
|
|
36
|
+
/** Request timeout in milliseconds. Default: 30000 */
|
|
37
|
+
timeout?: number;
|
|
38
|
+
/** Automatic retry policy. On by default; disable with { enabled: false } */
|
|
39
|
+
retry?: RetryOptions;
|
|
40
|
+
/** Enable debug logging. Default: false */
|
|
41
|
+
debug?: boolean;
|
|
42
|
+
/** Optional request interceptor hook */
|
|
43
|
+
onRequest?: (config: AxiosRequestConfig) => AxiosRequestConfig | Promise<AxiosRequestConfig>;
|
|
44
|
+
/** Optional response interceptor hook */
|
|
45
|
+
onResponse?: <T>(response: T) => T | Promise<T>;
|
|
46
|
+
/** Optional error handler hook, called once per request after retries are exhausted */
|
|
47
|
+
onError?: (error: ZiftrError) => void | Promise<void>;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Storefront-scoped SDK client exposing the merchant-storefront surface:
|
|
51
|
+
* catalog reads (products, categories, search, facets, cms, stores) and
|
|
52
|
+
* commerce flows (carts, checkout, storefront auth incl. withCustomer).
|
|
53
|
+
*/
|
|
54
|
+
export declare class ZiftrStorefrontClient {
|
|
55
|
+
private readonly http;
|
|
56
|
+
private readonly baseUrl;
|
|
57
|
+
private _products?;
|
|
58
|
+
private _categories?;
|
|
59
|
+
private _search?;
|
|
60
|
+
private _facets?;
|
|
61
|
+
private _carts?;
|
|
62
|
+
private _checkout?;
|
|
63
|
+
private _cms?;
|
|
64
|
+
private _stores?;
|
|
65
|
+
private _storefront?;
|
|
66
|
+
constructor(config: StorefrontClientConfig);
|
|
67
|
+
get products(): ProductsClient;
|
|
68
|
+
get categories(): CategoriesClient;
|
|
69
|
+
get search(): SearchClient;
|
|
70
|
+
get facets(): FacetsClient;
|
|
71
|
+
get carts(): CartsClient;
|
|
72
|
+
get checkout(): CheckoutClient;
|
|
73
|
+
get cms(): CmsClient;
|
|
74
|
+
get stores(): StoresClient;
|
|
75
|
+
/** Storefront customer auth; use storefront.withCustomer(token) for customer-scoped calls */
|
|
76
|
+
get storefront(): StorefrontClient;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Create a storefront SDK client bound to a publishable API key.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* const client = createStorefrontClient({
|
|
84
|
+
* publishableKey: 'pk_live_abc123',
|
|
85
|
+
* storeId: 'store-uuid',
|
|
86
|
+
* });
|
|
87
|
+
* const products = await client.products.list();
|
|
88
|
+
* const scoped = client.storefront.withCustomer(token);
|
|
89
|
+
* const me = await scoped.auth.me();
|
|
90
|
+
* const addresses = await scoped.addresses.list();
|
|
91
|
+
* const subscriptions = await scoped.subscriptions.list();
|
|
92
|
+
* const cadences = await client.storefront.plans.listForVariant('variant-uuid');
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* @example Guest cart through pre-payment checkout (complete on the server)
|
|
96
|
+
* ```typescript
|
|
97
|
+
* const client = createStorefrontClient({
|
|
98
|
+
* publishableKey: 'pk_test_abc123',
|
|
99
|
+
* storeId: 'store-uuid',
|
|
100
|
+
* });
|
|
101
|
+
*
|
|
102
|
+
* // Create a guest cart and add an item
|
|
103
|
+
* const cart = await client.carts.create({ currency: 'USD' });
|
|
104
|
+
* await client.carts.addItem(cart.id, {
|
|
105
|
+
* productId: 'product-uuid',
|
|
106
|
+
* productVariantId: 'variant-uuid',
|
|
107
|
+
* quantity: 1,
|
|
108
|
+
* });
|
|
109
|
+
* await client.carts.setShippingAddress(cart.id, {
|
|
110
|
+
* firstName: 'Ada',
|
|
111
|
+
* lastName: 'Lovelace',
|
|
112
|
+
* address1: '1 Analytical Way',
|
|
113
|
+
* city: 'London',
|
|
114
|
+
* zip: 'SW1A 1AA',
|
|
115
|
+
* country: 'GB',
|
|
116
|
+
* });
|
|
117
|
+
*
|
|
118
|
+
* // Open a checkout session for the cart
|
|
119
|
+
* const session = await client.checkout.create({
|
|
120
|
+
* cartId: cart.id,
|
|
121
|
+
* });
|
|
122
|
+
*
|
|
123
|
+
* // Choose shipping and settle totals
|
|
124
|
+
* const rates = await client.checkout.getShippingRates(session.id);
|
|
125
|
+
* await client.checkout.selectShippingMethod(session.id, {
|
|
126
|
+
* shippingMethod: rates[0].code,
|
|
127
|
+
* shippingRateId: rates[0].id,
|
|
128
|
+
* });
|
|
129
|
+
* const totals = await client.checkout.calculateTotals(session.id);
|
|
130
|
+
*
|
|
131
|
+
* // Payment capture and order finalization stay server-side.
|
|
132
|
+
* // Publishable keys cannot call checkout.complete -- checkout:complete is
|
|
133
|
+
* // excluded from the pk permission ceiling by design.
|
|
134
|
+
* import { ZiftrSDK } from '@aimee.shop/sdk';
|
|
135
|
+
*
|
|
136
|
+
* const sdk = new ZiftrSDK({
|
|
137
|
+
* apiKey: process.env.ZIFTR_API_KEY,
|
|
138
|
+
* storeId: 'store-uuid',
|
|
139
|
+
* });
|
|
140
|
+
* const { orderId } = await sdk.checkout.complete(session.id, {
|
|
141
|
+
* paymentIntentId: 'pi_123',
|
|
142
|
+
* });
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
export declare function createStorefrontClient(config: StorefrontClientConfig): ZiftrStorefrontClient;
|
|
146
|
+
export { ZiftrError, AuthenticationError, AuthorizationError, ValidationError, NotFoundError, ConflictError, NotModifiedError, RateLimitError, ConfigurationError, ApiError, } from '../core/errors/index.js';
|
|
147
|
+
export type { RetryOptions } from '../core/retry.js';
|
|
148
|
+
export type { GeoRestrictionMode, GeoErrorCode, GeoRegionParams, RestrictedItem, GeoRestrictedErrorDetails, StorefrontRegion, StorefrontRegionSource, } from '../core/types/geo.js';
|
|
149
|
+
export { GEO_ERROR_CODES, PRODUCT_GEO_RESTRICTED, GEO_RESTRICTED, STOREFRONT_REGION_SOURCES, isGeoRestrictedErrorDetails, getGeoRestrictedErrorDetails, } from '../core/types/geo.js';
|
|
150
|
+
export { CART_MESSAGE_PLACEMENTS, CART_MESSAGE_TONES, } from '../services/core/cart-messages/types.js';
|
|
151
|
+
export type { CartMessagePlacement, CartMessageTone, CartMessageResolved, } from '../services/core/cart-messages/types.js';
|
|
152
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storefront/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { HttpClient } from '../core/http-client.js';
|
|
2
|
+
import { AuthChain } from '../core/auth/auth-chain.js';
|
|
3
|
+
import { ApiKeyAuthenticator } from '../core/auth/api-key.authenticator.js';
|
|
4
|
+
import { ConfigurationError } from '../core/errors/index.js';
|
|
5
|
+
import { ProductsClient } from '../services/core/products.client.js';
|
|
6
|
+
import { CategoriesClient } from '../services/core/categories.client.js';
|
|
7
|
+
import { SearchClient } from '../services/core/search.client.js';
|
|
8
|
+
import { FacetsClient } from '../services/core/facets.client.js';
|
|
9
|
+
import { CartsClient } from '../services/core/carts.client.js';
|
|
10
|
+
import { CheckoutClient } from '../services/core/checkout.client.js';
|
|
11
|
+
import { CmsClient } from '../services/core/cms/cms.client.js';
|
|
12
|
+
import { StoresClient } from '../services/core/stores/stores.client.js';
|
|
13
|
+
import { StorefrontClient } from '../services/core/storefront/storefront.client.js';
|
|
14
|
+
const DEFAULT_BASE_URL = 'https://api.ziftr.ai';
|
|
15
|
+
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
16
|
+
const PUBLISHABLE_KEY_PATTERN = /^pk_(live|test)_/;
|
|
17
|
+
/**
|
|
18
|
+
* Storefront-scoped SDK client exposing the merchant-storefront surface:
|
|
19
|
+
* catalog reads (products, categories, search, facets, cms, stores) and
|
|
20
|
+
* commerce flows (carts, checkout, storefront auth incl. withCustomer).
|
|
21
|
+
*/
|
|
22
|
+
export class ZiftrStorefrontClient {
|
|
23
|
+
http;
|
|
24
|
+
baseUrl;
|
|
25
|
+
_products;
|
|
26
|
+
_categories;
|
|
27
|
+
_search;
|
|
28
|
+
_facets;
|
|
29
|
+
_carts;
|
|
30
|
+
_checkout;
|
|
31
|
+
_cms;
|
|
32
|
+
_stores;
|
|
33
|
+
_storefront;
|
|
34
|
+
constructor(config) {
|
|
35
|
+
validatePublishableKey(config.publishableKey);
|
|
36
|
+
// Use || so empty string (common for unset NEXT_PUBLIC_* env vars) falls back.
|
|
37
|
+
this.baseUrl = config.baseUrl || DEFAULT_BASE_URL;
|
|
38
|
+
validateBaseUrl(this.baseUrl);
|
|
39
|
+
const authChain = new AuthChain();
|
|
40
|
+
authChain.add(new ApiKeyAuthenticator(config.publishableKey));
|
|
41
|
+
this.http = new HttpClient({
|
|
42
|
+
timeout: config.timeout ?? DEFAULT_TIMEOUT_MS,
|
|
43
|
+
debug: config.debug ?? false,
|
|
44
|
+
authChain,
|
|
45
|
+
getTenantId: () => config.tenantId,
|
|
46
|
+
getStoreId: () => config.storeId,
|
|
47
|
+
retry: config.retry,
|
|
48
|
+
onRequest: config.onRequest,
|
|
49
|
+
onResponse: config.onResponse,
|
|
50
|
+
onError: config.onError,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
get products() {
|
|
54
|
+
this._products ??= new ProductsClient(this.http, this.baseUrl);
|
|
55
|
+
return this._products;
|
|
56
|
+
}
|
|
57
|
+
get categories() {
|
|
58
|
+
this._categories ??= new CategoriesClient(this.http, this.baseUrl);
|
|
59
|
+
return this._categories;
|
|
60
|
+
}
|
|
61
|
+
get search() {
|
|
62
|
+
this._search ??= new SearchClient(this.http, this.baseUrl);
|
|
63
|
+
return this._search;
|
|
64
|
+
}
|
|
65
|
+
get facets() {
|
|
66
|
+
this._facets ??= new FacetsClient(this.http, this.baseUrl);
|
|
67
|
+
return this._facets;
|
|
68
|
+
}
|
|
69
|
+
get carts() {
|
|
70
|
+
this._carts ??= new CartsClient(this.http, this.baseUrl);
|
|
71
|
+
return this._carts;
|
|
72
|
+
}
|
|
73
|
+
get checkout() {
|
|
74
|
+
this._checkout ??= new CheckoutClient(this.http, this.baseUrl);
|
|
75
|
+
return this._checkout;
|
|
76
|
+
}
|
|
77
|
+
get cms() {
|
|
78
|
+
this._cms ??= new CmsClient(this.http, this.baseUrl);
|
|
79
|
+
return this._cms;
|
|
80
|
+
}
|
|
81
|
+
get stores() {
|
|
82
|
+
this._stores ??= new StoresClient(this.http, this.baseUrl);
|
|
83
|
+
return this._stores;
|
|
84
|
+
}
|
|
85
|
+
/** Storefront customer auth; use storefront.withCustomer(token) for customer-scoped calls */
|
|
86
|
+
get storefront() {
|
|
87
|
+
this._storefront ??= new StorefrontClient(this.http, this.baseUrl);
|
|
88
|
+
return this._storefront;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
function validatePublishableKey(key) {
|
|
92
|
+
if (key.startsWith('sk_')) {
|
|
93
|
+
throw new ConfigurationError('A secret key (sk_) must never be used in a browser/storefront context. Use a publishable key (pk_live_/pk_test_).');
|
|
94
|
+
}
|
|
95
|
+
if (!PUBLISHABLE_KEY_PATTERN.test(key)) {
|
|
96
|
+
throw new ConfigurationError('publishableKey must be a publishable API key starting with pk_live_ or pk_test_.');
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Allow only http(s) base URLs so file:/javascript:/data: schemes cannot be
|
|
101
|
+
* used as an accidental request target from a misconfigured factory call.
|
|
102
|
+
*/
|
|
103
|
+
function validateBaseUrl(baseUrl) {
|
|
104
|
+
let parsed;
|
|
105
|
+
try {
|
|
106
|
+
parsed = new URL(baseUrl);
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
throw new ConfigurationError('baseUrl must be a valid absolute URL');
|
|
110
|
+
}
|
|
111
|
+
if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') {
|
|
112
|
+
throw new ConfigurationError('baseUrl must use http: or https: protocol');
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Create a storefront SDK client bound to a publishable API key.
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```typescript
|
|
120
|
+
* const client = createStorefrontClient({
|
|
121
|
+
* publishableKey: 'pk_live_abc123',
|
|
122
|
+
* storeId: 'store-uuid',
|
|
123
|
+
* });
|
|
124
|
+
* const products = await client.products.list();
|
|
125
|
+
* const scoped = client.storefront.withCustomer(token);
|
|
126
|
+
* const me = await scoped.auth.me();
|
|
127
|
+
* const addresses = await scoped.addresses.list();
|
|
128
|
+
* const subscriptions = await scoped.subscriptions.list();
|
|
129
|
+
* const cadences = await client.storefront.plans.listForVariant('variant-uuid');
|
|
130
|
+
* ```
|
|
131
|
+
*
|
|
132
|
+
* @example Guest cart through pre-payment checkout (complete on the server)
|
|
133
|
+
* ```typescript
|
|
134
|
+
* const client = createStorefrontClient({
|
|
135
|
+
* publishableKey: 'pk_test_abc123',
|
|
136
|
+
* storeId: 'store-uuid',
|
|
137
|
+
* });
|
|
138
|
+
*
|
|
139
|
+
* // Create a guest cart and add an item
|
|
140
|
+
* const cart = await client.carts.create({ currency: 'USD' });
|
|
141
|
+
* await client.carts.addItem(cart.id, {
|
|
142
|
+
* productId: 'product-uuid',
|
|
143
|
+
* productVariantId: 'variant-uuid',
|
|
144
|
+
* quantity: 1,
|
|
145
|
+
* });
|
|
146
|
+
* await client.carts.setShippingAddress(cart.id, {
|
|
147
|
+
* firstName: 'Ada',
|
|
148
|
+
* lastName: 'Lovelace',
|
|
149
|
+
* address1: '1 Analytical Way',
|
|
150
|
+
* city: 'London',
|
|
151
|
+
* zip: 'SW1A 1AA',
|
|
152
|
+
* country: 'GB',
|
|
153
|
+
* });
|
|
154
|
+
*
|
|
155
|
+
* // Open a checkout session for the cart
|
|
156
|
+
* const session = await client.checkout.create({
|
|
157
|
+
* cartId: cart.id,
|
|
158
|
+
* });
|
|
159
|
+
*
|
|
160
|
+
* // Choose shipping and settle totals
|
|
161
|
+
* const rates = await client.checkout.getShippingRates(session.id);
|
|
162
|
+
* await client.checkout.selectShippingMethod(session.id, {
|
|
163
|
+
* shippingMethod: rates[0].code,
|
|
164
|
+
* shippingRateId: rates[0].id,
|
|
165
|
+
* });
|
|
166
|
+
* const totals = await client.checkout.calculateTotals(session.id);
|
|
167
|
+
*
|
|
168
|
+
* // Payment capture and order finalization stay server-side.
|
|
169
|
+
* // Publishable keys cannot call checkout.complete -- checkout:complete is
|
|
170
|
+
* // excluded from the pk permission ceiling by design.
|
|
171
|
+
* import { ZiftrSDK } from '@aimee.shop/sdk';
|
|
172
|
+
*
|
|
173
|
+
* const sdk = new ZiftrSDK({
|
|
174
|
+
* apiKey: process.env.ZIFTR_API_KEY,
|
|
175
|
+
* storeId: 'store-uuid',
|
|
176
|
+
* });
|
|
177
|
+
* const { orderId } = await sdk.checkout.complete(session.id, {
|
|
178
|
+
* paymentIntentId: 'pi_123',
|
|
179
|
+
* });
|
|
180
|
+
* ```
|
|
181
|
+
*/
|
|
182
|
+
export function createStorefrontClient(config) {
|
|
183
|
+
return new ZiftrStorefrontClient(config);
|
|
184
|
+
}
|
|
185
|
+
// Error classes consumers need for instanceof checks
|
|
186
|
+
export { ZiftrError, AuthenticationError, AuthorizationError, ValidationError, NotFoundError, ConflictError, NotModifiedError, RateLimitError, ConfigurationError, ApiError, } from '../core/errors/index.js';
|
|
187
|
+
export { GEO_ERROR_CODES, PRODUCT_GEO_RESTRICTED, GEO_RESTRICTED, STOREFRONT_REGION_SOURCES, isGeoRestrictedErrorDetails, getGeoRestrictedErrorDetails, } from '../core/types/geo.js';
|
|
188
|
+
export { CART_MESSAGE_PLACEMENTS, CART_MESSAGE_TONES, } from '../services/core/cart-messages/types.js';
|
|
189
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/storefront/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aimee.shop/sdk",
|
|
3
|
+
"version": "0.26.0",
|
|
4
|
+
"description": "Public TypeScript SDK for Aimee storefront and merchant-safe APIs",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./browser": {
|
|
14
|
+
"types": "./dist/browser/index.d.ts",
|
|
15
|
+
"import": "./dist/browser/index.js"
|
|
16
|
+
},
|
|
17
|
+
"./storefront": {
|
|
18
|
+
"types": "./dist/storefront/index.d.ts",
|
|
19
|
+
"import": "./dist/storefront/index.js"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"dist",
|
|
24
|
+
"README.md",
|
|
25
|
+
"LICENSE"
|
|
26
|
+
],
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.build.json && tsc-esm-fix --target dist",
|
|
29
|
+
"typecheck": "tsc -p tsconfig.build.json --noEmit",
|
|
30
|
+
"prepublishOnly": "npm run build"
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@aws-sdk/client-cognito-identity-provider": "^3.712.0",
|
|
34
|
+
"axios": "^1.7.9"
|
|
35
|
+
},
|
|
36
|
+
"peerDependencies": {
|
|
37
|
+
"amazon-cognito-identity-js": "^6.3.18"
|
|
38
|
+
},
|
|
39
|
+
"peerDependenciesMeta": {
|
|
40
|
+
"amazon-cognito-identity-js": {
|
|
41
|
+
"optional": true
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"engines": {
|
|
45
|
+
"node": ">=22"
|
|
46
|
+
},
|
|
47
|
+
"repository": {
|
|
48
|
+
"type": "git",
|
|
49
|
+
"url": "https://gitlab.com/ziftr1/zs2-sdk.git"
|
|
50
|
+
},
|
|
51
|
+
"homepage": "https://ziftr.ai",
|
|
52
|
+
"bugs": "https://gitlab.com/ziftr1/zs2-sdk/-/issues",
|
|
53
|
+
"publishConfig": {
|
|
54
|
+
"registry": "https://registry.npmjs.org/",
|
|
55
|
+
"access": "public"
|
|
56
|
+
},
|
|
57
|
+
"keywords": [
|
|
58
|
+
"aimee",
|
|
59
|
+
"ziftr",
|
|
60
|
+
"sdk",
|
|
61
|
+
"ecommerce",
|
|
62
|
+
"api-client"
|
|
63
|
+
],
|
|
64
|
+
"author": "Aimee",
|
|
65
|
+
"license": "MIT"
|
|
66
|
+
}
|