@aglyn/plugins-commerce 1.0.0-beta.230 → 1.0.0-beta.231
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/package.json +13 -13
- package/src/index.d.ts +0 -1
- package/src/index.js +0 -1
- package/src/index.js.map +1 -1
- package/src/lib/barcode/barcode-decode.d.ts +71 -0
- package/src/lib/barcode/barcode-decode.js +498 -0
- package/src/lib/barcode/barcode-decode.js.map +1 -0
- package/src/lib/barcode/barcode-encode.d.ts +44 -0
- package/src/lib/barcode/barcode-encode.js +138 -0
- package/src/lib/barcode/barcode-encode.js.map +1 -0
- package/src/lib/barcode/barcode-scanner.component.d.ts +23 -0
- package/src/lib/barcode/barcode-scanner.component.js +260 -0
- package/src/lib/barcode/barcode-scanner.component.js.map +1 -0
- package/src/lib/barcode/scan-button.component.d.ts +10 -0
- package/src/lib/barcode/scan-button.component.js +62 -0
- package/src/lib/barcode/scan-button.component.js.map +1 -0
- package/src/lib/barcode/scanner-wedge.d.ts +35 -0
- package/src/lib/barcode/scanner-wedge.js +108 -0
- package/src/lib/barcode/scanner-wedge.js.map +1 -0
- package/src/lib/components/account.js +10 -1
- package/src/lib/components/account.js.map +1 -1
- package/src/lib/components/cart-extras.d.ts +45 -0
- package/src/lib/components/cart-extras.js +127 -0
- package/src/lib/components/cart-extras.js.map +1 -0
- package/src/lib/components/cart.js +82 -15
- package/src/lib/components/cart.js.map +1 -1
- package/src/lib/components/checkout-return-notice.d.ts +26 -0
- package/src/lib/components/checkout-return-notice.js +48 -0
- package/src/lib/components/checkout-return-notice.js.map +1 -0
- package/src/lib/components/commerce-console-page.js +124 -0
- package/src/lib/components/commerce-console-page.js.map +1 -1
- package/src/lib/components/commerce-console-sections.d.ts +1 -1
- package/src/lib/components/commerce-console-sections.js +4 -0
- package/src/lib/components/commerce-console-sections.js.map +1 -1
- package/src/lib/components/console/bulk-fulfill.d.ts +44 -0
- package/src/lib/components/console/bulk-fulfill.js +84 -0
- package/src/lib/components/console/bulk-fulfill.js.map +1 -0
- package/src/lib/components/console/customer-notifications-card.component.d.ts +19 -0
- package/src/lib/components/console/customer-notifications-card.component.js +149 -0
- package/src/lib/components/console/customer-notifications-card.component.js.map +1 -0
- package/src/lib/components/console/host-orders-card.component.js +84 -5
- package/src/lib/components/console/host-orders-card.component.js.map +1 -1
- package/src/lib/components/console/locations-card.component.js +164 -57
- package/src/lib/components/console/locations-card.component.js.map +1 -1
- package/src/lib/components/console/order-detail-dialog.component.js +209 -61
- package/src/lib/components/console/order-detail-dialog.component.js.map +1 -1
- package/src/lib/components/console/order-fulfillment-panel.component.d.ts +48 -0
- package/src/lib/components/console/order-fulfillment-panel.component.js +542 -0
- package/src/lib/components/console/order-fulfillment-panel.component.js.map +1 -0
- package/src/lib/components/console/order-invoice.component.d.ts +33 -0
- package/src/lib/components/console/order-invoice.component.js +81 -0
- package/src/lib/components/console/order-invoice.component.js.map +1 -0
- package/src/lib/components/console/order-receipt-resend.component.d.ts +21 -0
- package/src/lib/components/console/order-receipt-resend.component.js +203 -0
- package/src/lib/components/console/order-receipt-resend.component.js.map +1 -0
- package/src/lib/components/console/order-returns.component.d.ts +36 -0
- package/src/lib/components/console/order-returns.component.js +142 -0
- package/src/lib/components/console/order-returns.component.js.map +1 -0
- package/src/lib/components/console/order-shipping-actions.component.d.ts +54 -0
- package/src/lib/components/console/order-shipping-actions.component.js +149 -0
- package/src/lib/components/console/order-shipping-actions.component.js.map +1 -0
- package/src/lib/components/console/order-webhooks-card.component.d.ts +50 -0
- package/src/lib/components/console/order-webhooks-card.component.js +623 -0
- package/src/lib/components/console/order-webhooks-card.component.js.map +1 -0
- package/src/lib/components/console/order-zones.d.ts +155 -0
- package/src/lib/components/console/order-zones.js +40 -0
- package/src/lib/components/console/order-zones.js.map +1 -0
- package/src/lib/components/console/payment-methods-card.component.d.ts +67 -0
- package/src/lib/components/console/payment-methods-card.component.js +395 -0
- package/src/lib/components/console/payment-methods-card.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-api.d.ts +124 -0
- package/src/lib/components/console/pos/pos-api.js +101 -0
- package/src/lib/components/console/pos/pos-api.js.map +1 -0
- package/src/lib/components/console/pos/pos-cart-panel.component.d.ts +36 -0
- package/src/lib/components/console/pos/pos-cart-panel.component.js +160 -0
- package/src/lib/components/console/pos/pos-cart-panel.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-item-dialog.component.d.ts +39 -0
- package/src/lib/components/console/pos/pos-item-dialog.component.js +352 -0
- package/src/lib/components/console/pos/pos-item-dialog.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-product-grid.component.d.ts +47 -0
- package/src/lib/components/console/pos/pos-product-grid.component.js +272 -0
- package/src/lib/components/console/pos/pos-product-grid.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-receipt-panel.component.d.ts +27 -0
- package/src/lib/components/console/pos/pos-receipt-panel.component.js +282 -0
- package/src/lib/components/console/pos/pos-receipt-panel.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-tender-dialogs.component.d.ts +53 -0
- package/src/lib/components/console/pos/pos-tender-dialogs.component.js +445 -0
- package/src/lib/components/console/pos/pos-tender-dialogs.component.js.map +1 -0
- package/src/lib/components/console/pos/pos-tender-panel.component.d.ts +31 -0
- package/src/lib/components/console/pos/pos-tender-panel.component.js +640 -0
- package/src/lib/components/console/pos/pos-tender-panel.component.js.map +1 -0
- package/src/lib/components/console/pos/use-pos-display.d.ts +43 -0
- package/src/lib/components/console/pos/use-pos-display.js +161 -0
- package/src/lib/components/console/pos/use-pos-display.js.map +1 -0
- package/src/lib/components/console/pos-devices-card.component.d.ts +14 -0
- package/src/lib/components/console/pos-devices-card.component.js +546 -0
- package/src/lib/components/console/pos-devices-card.component.js.map +1 -0
- package/src/lib/components/console/pos-display/brand-screen.d.ts +33 -0
- package/src/lib/components/console/pos-display/brand-screen.js +85 -0
- package/src/lib/components/console/pos-display/brand-screen.js.map +1 -0
- package/src/lib/components/console/pos-display/cart-screen.d.ts +29 -0
- package/src/lib/components/console/pos-display/cart-screen.js +166 -0
- package/src/lib/components/console/pos-display/cart-screen.js.map +1 -0
- package/src/lib/components/console/pos-display/pairing-screen.d.ts +24 -0
- package/src/lib/components/console/pos-display/pairing-screen.js +127 -0
- package/src/lib/components/console/pos-display/pairing-screen.js.map +1 -0
- package/src/lib/components/console/pos-display/pos-display-api.d.ts +90 -0
- package/src/lib/components/console/pos-display/pos-display-api.js +140 -0
- package/src/lib/components/console/pos-display/pos-display-api.js.map +1 -0
- package/src/lib/components/console/pos-display/receipt-screen.d.ts +35 -0
- package/src/lib/components/console/pos-display/receipt-screen.js +200 -0
- package/src/lib/components/console/pos-display/receipt-screen.js.map +1 -0
- package/src/lib/components/console/pos-display/tip-screen.d.ts +36 -0
- package/src/lib/components/console/pos-display/tip-screen.js +211 -0
- package/src/lib/components/console/pos-display/tip-screen.js.map +1 -0
- package/src/lib/components/console/pos-display-page.component.d.ts +16 -0
- package/src/lib/components/console/pos-display-page.component.js +407 -0
- package/src/lib/components/console/pos-display-page.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-customer-lookup.component.d.ts +40 -0
- package/src/lib/components/console/pos-ops/pos-customer-lookup.component.js +289 -0
- package/src/lib/components/console/pos-ops/pos-customer-lookup.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-last-receipt.component.d.ts +34 -0
- package/src/lib/components/console/pos-ops/pos-last-receipt.component.js +61 -0
- package/src/lib/components/console/pos-ops/pos-last-receipt.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-operations-bar.component.d.ts +38 -0
- package/src/lib/components/console/pos-ops/pos-operations-bar.component.js +129 -0
- package/src/lib/components/console/pos-ops/pos-operations-bar.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-ops-api.d.ts +37 -0
- package/src/lib/components/console/pos-ops/pos-ops-api.js +60 -0
- package/src/lib/components/console/pos-ops/pos-ops-api.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-pin-pad.component.d.ts +48 -0
- package/src/lib/components/console/pos-ops/pos-pin-pad.component.js +220 -0
- package/src/lib/components/console/pos-ops/pos-pin-pad.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-receipt-actions.component.d.ts +63 -0
- package/src/lib/components/console/pos-ops/pos-receipt-actions.component.js +186 -0
- package/src/lib/components/console/pos-ops/pos-receipt-actions.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-receipt.d.ts +39 -0
- package/src/lib/components/console/pos-ops/pos-receipt.js +182 -0
- package/src/lib/components/console/pos-ops/pos-receipt.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-return-dialog.component.d.ts +40 -0
- package/src/lib/components/console/pos-ops/pos-return-dialog.component.js +465 -0
- package/src/lib/components/console/pos-ops/pos-return-dialog.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-shift-history-card.component.d.ts +29 -0
- package/src/lib/components/console/pos-ops/pos-shift-history-card.component.js +253 -0
- package/src/lib/components/console/pos-ops/pos-shift-history-card.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-shift-panel.component.d.ts +34 -0
- package/src/lib/components/console/pos-ops/pos-shift-panel.component.js +494 -0
- package/src/lib/components/console/pos-ops/pos-shift-panel.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-shift-report.component.d.ts +37 -0
- package/src/lib/components/console/pos-ops/pos-shift-report.component.js +102 -0
- package/src/lib/components/console/pos-ops/pos-shift-report.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/pos-staff-pins-card.component.d.ts +30 -0
- package/src/lib/components/console/pos-ops/pos-staff-pins-card.component.js +277 -0
- package/src/lib/components/console/pos-ops/pos-staff-pins-card.component.js.map +1 -0
- package/src/lib/components/console/pos-ops/register-ops.d.ts +28 -0
- package/src/lib/components/console/pos-ops/register-ops.js +28 -0
- package/src/lib/components/console/pos-ops/register-ops.js.map +1 -0
- package/src/lib/components/console/pos-ops/use-pos-cashier.d.ts +46 -0
- package/src/lib/components/console/pos-ops/use-pos-cashier.js +128 -0
- package/src/lib/components/console/pos-ops/use-pos-cashier.js.map +1 -0
- package/src/lib/components/console/pos-ops/use-pos-sale-receipt.d.ts +36 -0
- package/src/lib/components/console/pos-ops/use-pos-sale-receipt.js +64 -0
- package/src/lib/components/console/pos-ops/use-pos-sale-receipt.js.map +1 -0
- package/src/lib/components/console/pos-page.component.d.ts +13 -5
- package/src/lib/components/console/pos-page.component.js +729 -657
- package/src/lib/components/console/pos-page.component.js.map +1 -1
- package/src/lib/components/console/product-editor-dialog.component.js +51 -7
- package/src/lib/components/console/product-editor-dialog.component.js.map +1 -1
- package/src/lib/components/console/product-labels-dialog.component.d.ts +13 -0
- package/src/lib/components/console/product-labels-dialog.component.js +197 -0
- package/src/lib/components/console/product-labels-dialog.component.js.map +1 -0
- package/src/lib/components/console/product-register-fields.component.d.ts +19 -0
- package/src/lib/components/console/product-register-fields.component.js +241 -0
- package/src/lib/components/console/product-register-fields.component.js.map +1 -0
- package/src/lib/components/console/product-zones.d.ts +44 -0
- package/src/lib/components/console/product-zones.js.map +1 -1
- package/src/lib/components/console/products-hub-card.component.js +12 -0
- package/src/lib/components/console/products-hub-card.component.js.map +1 -1
- package/src/lib/components/console/register-hardware-card.component.d.ts +33 -0
- package/src/lib/components/console/register-hardware-card.component.js +826 -0
- package/src/lib/components/console/register-hardware-card.component.js.map +1 -0
- package/src/lib/components/console/registers-card.component.js +24 -5
- package/src/lib/components/console/registers-card.component.js.map +1 -1
- package/src/lib/components/console/return-actions.d.ts +38 -0
- package/src/lib/components/console/return-actions.js +76 -0
- package/src/lib/components/console/return-actions.js.map +1 -0
- package/src/lib/components/console/return-detail-dialog.component.d.ts +34 -0
- package/src/lib/components/console/return-detail-dialog.component.js +718 -0
- package/src/lib/components/console/return-detail-dialog.component.js.map +1 -0
- package/src/lib/components/console/return-settings-card.component.d.ts +34 -0
- package/src/lib/components/console/return-settings-card.component.js +195 -0
- package/src/lib/components/console/return-settings-card.component.js.map +1 -0
- package/src/lib/components/console/return-zones.d.ts +87 -0
- package/src/lib/components/console/return-zones.js +31 -0
- package/src/lib/components/console/return-zones.js.map +1 -0
- package/src/lib/components/console/returns-card.component.d.ts +45 -0
- package/src/lib/components/console/returns-card.component.js +159 -0
- package/src/lib/components/console/returns-card.component.js.map +1 -0
- package/src/lib/components/console/shipping-settings-card.component.js +161 -5
- package/src/lib/components/console/shipping-settings-card.component.js.map +1 -1
- package/src/lib/components/console/shippingeasy-card.component.d.ts +59 -0
- package/src/lib/components/console/shippingeasy-card.component.js +378 -0
- package/src/lib/components/console/shippingeasy-card.component.js.map +1 -0
- package/src/lib/components/console/shipstation-card.component.d.ts +35 -0
- package/src/lib/components/console/shipstation-card.component.js +345 -0
- package/src/lib/components/console/shipstation-card.component.js.map +1 -0
- package/src/lib/components/console/start-return-dialog.component.d.ts +40 -0
- package/src/lib/components/console/start-return-dialog.component.js +243 -0
- package/src/lib/components/console/start-return-dialog.component.js.map +1 -0
- package/src/lib/components/console/stock-movements-card.component.js +2 -1
- package/src/lib/components/console/stock-movements-card.component.js.map +1 -1
- package/src/lib/components/console/store-settings-card.component.js +2 -66
- package/src/lib/components/console/store-settings-card.component.js.map +1 -1
- package/src/lib/components/console/store-zones.d.ts +42 -0
- package/src/lib/components/console/store-zones.js +39 -0
- package/src/lib/components/console/store-zones.js.map +1 -0
- package/src/lib/components/order-status.d.ts +36 -0
- package/src/lib/components/order-status.js +502 -0
- package/src/lib/components/order-status.js.map +1 -0
- package/src/lib/components/product-detail.js +41 -2
- package/src/lib/components/product-detail.js.map +1 -1
- package/src/lib/components/return-request.d.ts +32 -0
- package/src/lib/components/return-request.js +576 -0
- package/src/lib/components/return-request.js.map +1 -0
- package/src/lib/components/storefront-payment-appearance.d.ts +32 -0
- package/src/lib/components/storefront-payment-appearance.js +114 -0
- package/src/lib/components/storefront-payment-appearance.js.map +1 -0
- package/src/lib/components/storefront-payment-element.d.ts +57 -1
- package/src/lib/components/storefront-payment-element.js +332 -33
- package/src/lib/components/storefront-payment-element.js.map +1 -1
- package/src/lib/constants/order-status.d.ts +22 -0
- package/src/lib/constants/order-status.js +22 -0
- package/src/lib/constants/order-status.js.map +1 -0
- package/src/lib/constants/return-request.d.ts +27 -0
- package/src/lib/constants/return-request.js +32 -0
- package/src/lib/constants/return-request.js.map +1 -0
- package/src/lib/constants/stock-movement-query.js +2 -1
- package/src/lib/constants/stock-movement-query.js.map +1 -1
- package/src/lib/declarations.console-server.js +9 -0
- package/src/lib/declarations.console-server.js.map +1 -1
- package/src/lib/declarations.server.d.ts +2 -1
- package/src/lib/declarations.server.js +47 -1
- package/src/lib/declarations.server.js.map +1 -1
- package/src/lib/model/buyer-notifications.d.ts +59 -0
- package/src/lib/model/buyer-notifications.js +97 -0
- package/src/lib/model/buyer-notifications.js.map +1 -0
- package/src/lib/model/commerce-orders.d.ts +127 -1
- package/src/lib/model/commerce-orders.js +24 -15
- package/src/lib/model/commerce-orders.js.map +1 -1
- package/src/lib/model/commerce-payment-methods.d.ts +146 -0
- package/src/lib/model/commerce-payment-methods.js +247 -0
- package/src/lib/model/commerce-payment-methods.js.map +1 -0
- package/src/lib/model/commerce-pos-ops.d.ts +437 -0
- package/src/lib/model/commerce-pos-ops.js +721 -0
- package/src/lib/model/commerce-pos-ops.js.map +1 -0
- package/src/lib/model/commerce-pos.d.ts +263 -0
- package/src/lib/model/commerce-pos.js +375 -0
- package/src/lib/model/commerce-pos.js.map +1 -0
- package/src/lib/model/commerce-printers.d.ts +211 -0
- package/src/lib/model/commerce-printers.js +181 -0
- package/src/lib/model/commerce-printers.js.map +1 -0
- package/src/lib/model/commerce-receipt.d.ts +97 -0
- package/src/lib/model/commerce-receipt.js +180 -0
- package/src/lib/model/commerce-receipt.js.map +1 -0
- package/src/lib/model/commerce-returns.d.ts +207 -0
- package/src/lib/model/commerce-returns.js +300 -0
- package/src/lib/model/commerce-returns.js.map +1 -0
- package/src/lib/model/commerce-shipping.d.ts +44 -1
- package/src/lib/model/commerce-shipping.js +53 -9
- package/src/lib/model/commerce-shipping.js.map +1 -1
- package/src/lib/model/commerce-tax-engine.d.ts +90 -0
- package/src/lib/model/commerce-tax-engine.js +129 -0
- package/src/lib/model/commerce-tax-engine.js.map +1 -0
- package/src/lib/model/commerce.d.ts +88 -2
- package/src/lib/model/commerce.js +89 -1
- package/src/lib/model/commerce.js.map +1 -1
- package/src/lib/model/index.d.ts +15 -0
- package/src/lib/model/index.js +15 -0
- package/src/lib/model/index.js.map +1 -1
- package/src/lib/model/order-events.d.ts +154 -0
- package/src/lib/model/order-events.js +153 -0
- package/src/lib/model/order-events.js.map +1 -0
- package/src/lib/model/order-fulfillment.d.ts +117 -0
- package/src/lib/model/order-fulfillment.js +217 -0
- package/src/lib/model/order-fulfillment.js.map +1 -0
- package/src/lib/model/order-history.d.ts +58 -0
- package/src/lib/model/order-history.js +22 -0
- package/src/lib/model/order-history.js.map +1 -0
- package/src/lib/model/order-list-fields.d.ts +9 -1
- package/src/lib/model/order-list-fields.js +7 -1
- package/src/lib/model/order-list-fields.js.map +1 -1
- package/src/lib/model/order-shipping-export.d.ts +91 -0
- package/src/lib/model/order-shipping-export.js +192 -0
- package/src/lib/model/order-shipping-export.js.map +1 -0
- package/src/lib/model/order-status-view.d.ts +103 -0
- package/src/lib/model/order-status-view.js +156 -0
- package/src/lib/model/order-status-view.js.map +1 -0
- package/src/lib/model/order-webhooks.d.ts +142 -0
- package/src/lib/model/order-webhooks.js +91 -0
- package/src/lib/model/order-webhooks.js.map +1 -0
- package/src/lib/model/product-channel.d.ts +56 -0
- package/src/lib/model/product-channel.js +86 -0
- package/src/lib/model/product-channel.js.map +1 -0
- package/src/lib/model/product-modifiers.d.ts +80 -0
- package/src/lib/model/product-modifiers.js +140 -0
- package/src/lib/model/product-modifiers.js.map +1 -0
- package/src/lib/model/shippingeasy.d.ts +94 -0
- package/src/lib/model/shippingeasy.js +267 -0
- package/src/lib/model/shippingeasy.js.map +1 -0
- package/src/lib/model/shipstation.d.ts +125 -0
- package/src/lib/model/shipstation.js +399 -0
- package/src/lib/model/shipstation.js.map +1 -0
- package/src/lib/model/smart-collection-reads.d.ts +32 -0
- package/src/lib/model/smart-collection-reads.js +63 -0
- package/src/lib/model/smart-collection-reads.js.map +1 -0
- package/src/lib/model/tracking-url.d.ts +74 -0
- package/src/lib/model/tracking-url.js +159 -0
- package/src/lib/model/tracking-url.js.map +1 -0
- package/src/lib/plugin-config.d.ts +13 -0
- package/src/lib/plugin-config.js +77 -5
- package/src/lib/plugin-config.js.map +1 -1
- package/src/lib/plugin.js +23 -0
- package/src/lib/plugin.js.map +1 -1
- package/src/lib/pos-ops-config.d.ts +39 -0
- package/src/lib/pos-ops-config.js +88 -0
- package/src/lib/pos-ops-config.js.map +1 -0
- package/src/lib/printing/print-document.d.ts +106 -0
- package/src/lib/printing/print-document.js +464 -0
- package/src/lib/printing/print-document.js.map +1 -0
- package/src/lib/printing/product-labels.d.ts +58 -0
- package/src/lib/printing/product-labels.js +116 -0
- package/src/lib/printing/product-labels.js.map +1 -0
- package/src/lib/printing/render-epson.d.ts +57 -0
- package/src/lib/printing/render-epson.js +135 -0
- package/src/lib/printing/render-epson.js.map +1 -0
- package/src/lib/printing/render-star.d.ts +45 -0
- package/src/lib/printing/render-star.js +100 -0
- package/src/lib/printing/render-star.js.map +1 -0
- package/src/lib/printing/render-text.d.ts +25 -0
- package/src/lib/printing/render-text.js +53 -0
- package/src/lib/printing/render-text.js.map +1 -0
- package/src/lib/server/api-v1/openapi.js +27 -4
- package/src/lib/server/api-v1/openapi.js.map +1 -1
- package/src/lib/server/api-v1/order-view.d.ts +67 -0
- package/src/lib/server/api-v1/order-view.js +120 -0
- package/src/lib/server/api-v1/order-view.js.map +1 -0
- package/src/lib/server/api-v1/orders-and-products.js +58 -65
- package/src/lib/server/api-v1/orders-and-products.js.map +1 -1
- package/src/lib/server/billing-webhook.js +135 -28
- package/src/lib/server/billing-webhook.js.map +1 -1
- package/src/lib/server/cancel-order.js +29 -0
- package/src/lib/server/cancel-order.js.map +1 -1
- package/src/lib/server/carrier-rates-availability.d.ts +26 -0
- package/src/lib/server/carrier-rates-availability.js +76 -0
- package/src/lib/server/carrier-rates-availability.js.map +1 -0
- package/src/lib/server/carrier-shipping.d.ts +84 -0
- package/src/lib/server/carrier-shipping.js +135 -0
- package/src/lib/server/carrier-shipping.js.map +1 -0
- package/src/lib/server/cart-checkout.d.ts +2 -0
- package/src/lib/server/cart-checkout.js +226 -22
- package/src/lib/server/cart-checkout.js.map +1 -1
- package/src/lib/server/checkout-extras.d.ts +64 -0
- package/src/lib/server/checkout-extras.js +157 -0
- package/src/lib/server/checkout-extras.js.map +1 -0
- package/src/lib/server/{feed.d.ts → checkout-status.d.ts} +2 -7
- package/src/lib/server/checkout-status.js +111 -0
- package/src/lib/server/checkout-status.js.map +1 -0
- package/src/lib/server/checkout.js +86 -9
- package/src/lib/server/checkout.js.map +1 -1
- package/src/lib/server/draft-order.js +34 -5
- package/src/lib/server/draft-order.js.map +1 -1
- package/src/lib/server/fulfill-order.d.ts +127 -10
- package/src/lib/server/fulfill-order.js +451 -49
- package/src/lib/server/fulfill-order.js.map +1 -1
- package/src/lib/server/legacy-feed.d.ts +28 -0
- package/src/lib/server/legacy-feed.js +52 -0
- package/src/lib/server/legacy-feed.js.map +1 -0
- package/src/lib/server/native-checkout.d.ts +34 -15
- package/src/lib/server/native-checkout.js +32 -17
- package/src/lib/server/native-checkout.js.map +1 -1
- package/src/lib/server/order-event-host-emit.d.ts +23 -0
- package/src/lib/server/order-event-host-emit.js +30 -0
- package/src/lib/server/order-event-host-emit.js.map +1 -0
- package/src/lib/server/order-event-triggers.d.ts +37 -0
- package/src/lib/server/order-event-triggers.js +119 -0
- package/src/lib/server/order-event-triggers.js.map +1 -0
- package/src/lib/server/order-events.d.ts +62 -0
- package/src/lib/server/order-events.js +109 -0
- package/src/lib/server/order-events.js.map +1 -0
- package/src/lib/server/order-history.d.ts +23 -0
- package/src/lib/server/order-history.js +65 -0
- package/src/lib/server/order-history.js.map +1 -0
- package/src/lib/server/order-notifications.d.ts +185 -0
- package/src/lib/server/order-notifications.js +567 -0
- package/src/lib/server/order-notifications.js.map +1 -0
- package/src/lib/server/order-receipt-send.d.ts +39 -0
- package/src/lib/server/order-receipt-send.js +151 -0
- package/src/lib/server/order-receipt-send.js.map +1 -0
- package/src/lib/server/order-status-token.d.ts +31 -0
- package/src/lib/server/order-status-token.js +75 -0
- package/src/lib/server/order-status-token.js.map +1 -0
- package/src/lib/server/order-status.d.ts +58 -0
- package/src/lib/server/order-status.js +141 -0
- package/src/lib/server/order-status.js.map +1 -0
- package/src/lib/server/order-webhooks.d.ts +108 -0
- package/src/lib/server/order-webhooks.js +622 -0
- package/src/lib/server/order-webhooks.js.map +1 -0
- package/src/lib/server/orders-shipping-prepare.d.ts +26 -0
- package/src/lib/server/orders-shipping-prepare.js +121 -0
- package/src/lib/server/orders-shipping-prepare.js.map +1 -0
- package/src/lib/server/payment-method-domains.d.ts +209 -0
- package/src/lib/server/payment-method-domains.js +444 -0
- package/src/lib/server/payment-method-domains.js.map +1 -0
- package/src/lib/server/payment-methods.d.ts +77 -0
- package/src/lib/server/payment-methods.js +284 -0
- package/src/lib/server/payment-methods.js.map +1 -0
- package/src/lib/server/pos-auth.d.ts +50 -0
- package/src/lib/server/pos-auth.js +121 -0
- package/src/lib/server/pos-auth.js.map +1 -0
- package/src/lib/server/pos-customer.d.ts +49 -0
- package/src/lib/server/pos-customer.js +257 -0
- package/src/lib/server/pos-customer.js.map +1 -0
- package/src/lib/server/pos-display.d.ts +57 -0
- package/src/lib/server/pos-display.js +419 -0
- package/src/lib/server/pos-display.js.map +1 -0
- package/src/lib/server/pos-fee-month.d.ts +34 -0
- package/src/lib/server/pos-fee-month.js +36 -0
- package/src/lib/server/pos-fee-month.js.map +1 -0
- package/src/lib/server/pos-ops-gate.d.ts +161 -0
- package/src/lib/server/pos-ops-gate.js +295 -0
- package/src/lib/server/pos-ops-gate.js.map +1 -0
- package/src/lib/server/pos-ops-routes.d.ts +22 -0
- package/src/lib/server/pos-ops-routes.js +36 -0
- package/src/lib/server/pos-ops-routes.js.map +1 -0
- package/src/lib/server/pos-order.d.ts +1 -18
- package/src/lib/server/pos-order.js +222 -42
- package/src/lib/server/pos-order.js.map +1 -1
- package/src/lib/server/pos-payment.d.ts +39 -0
- package/src/lib/server/pos-payment.js +922 -0
- package/src/lib/server/pos-payment.js.map +1 -0
- package/src/lib/server/pos-print.d.ts +82 -0
- package/src/lib/server/pos-print.js +193 -0
- package/src/lib/server/pos-print.js.map +1 -0
- package/src/lib/server/pos-readers.d.ts +27 -0
- package/src/lib/server/pos-readers.js +276 -0
- package/src/lib/server/pos-readers.js.map +1 -0
- package/src/lib/server/pos-refund-authority.d.ts +60 -0
- package/src/lib/server/pos-refund-authority.js +72 -0
- package/src/lib/server/pos-refund-authority.js.map +1 -0
- package/src/lib/server/pos-return.d.ts +58 -0
- package/src/lib/server/pos-return.js +891 -0
- package/src/lib/server/pos-return.js.map +1 -0
- package/src/lib/server/pos-sale-stamp.d.ts +66 -0
- package/src/lib/server/pos-sale-stamp.js +84 -0
- package/src/lib/server/pos-sale-stamp.js.map +1 -0
- package/src/lib/server/pos-sale.d.ts +170 -0
- package/src/lib/server/pos-sale.js +461 -0
- package/src/lib/server/pos-sale.js.map +1 -0
- package/src/lib/server/pos-shift.d.ts +45 -0
- package/src/lib/server/pos-shift.js +484 -0
- package/src/lib/server/pos-shift.js.map +1 -0
- package/src/lib/server/pos-staff-pin.d.ts +26 -0
- package/src/lib/server/pos-staff-pin.js +339 -0
- package/src/lib/server/pos-staff-pin.js.map +1 -0
- package/src/lib/server/pos-stripe.d.ts +91 -0
- package/src/lib/server/pos-stripe.js +129 -0
- package/src/lib/server/pos-stripe.js.map +1 -0
- package/src/lib/server/pos-terminal-connection-token.d.ts +48 -0
- package/src/lib/server/pos-terminal-connection-token.js +166 -0
- package/src/lib/server/pos-terminal-connection-token.js.map +1 -0
- package/src/lib/server/pos-terminal.d.ts +218 -0
- package/src/lib/server/pos-terminal.js +1014 -0
- package/src/lib/server/pos-terminal.js.map +1 -0
- package/src/lib/server/print-queue.d.ts +124 -0
- package/src/lib/server/print-queue.js +301 -0
- package/src/lib/server/print-queue.js.map +1 -0
- package/src/lib/server/printer-poll.d.ts +75 -0
- package/src/lib/server/printer-poll.js +325 -0
- package/src/lib/server/printer-poll.js.map +1 -0
- package/src/lib/server/printer-secret.d.ts +39 -0
- package/src/lib/server/printer-secret.js +56 -0
- package/src/lib/server/printer-secret.js.map +1 -0
- package/src/lib/server/printers.d.ts +114 -0
- package/src/lib/server/printers.js +546 -0
- package/src/lib/server/printers.js.map +1 -0
- package/src/lib/server/product-catalog.d.ts +42 -0
- package/src/lib/server/product-catalog.js +305 -0
- package/src/lib/server/product-catalog.js.map +1 -0
- package/src/lib/server/refund.js +110 -45
- package/src/lib/server/refund.js.map +1 -1
- package/src/lib/server/reserve.js +2 -0
- package/src/lib/server/reserve.js.map +1 -1
- package/src/lib/server/return-status-action.d.ts +37 -0
- package/src/lib/server/return-status-action.js +57 -0
- package/src/lib/server/return-status-action.js.map +1 -0
- package/src/lib/server/returns.d.ts +119 -0
- package/src/lib/server/returns.js +938 -0
- package/src/lib/server/returns.js.map +1 -0
- package/src/lib/server/shipment-records.d.ts +36 -0
- package/src/lib/server/shipment-records.js +289 -0
- package/src/lib/server/shipment-records.js.map +1 -0
- package/src/lib/server/shipping-connector-gates.d.ts +40 -0
- package/src/lib/server/shipping-connector-gates.js +97 -0
- package/src/lib/server/shipping-connector-gates.js.map +1 -0
- package/src/lib/server/shipping-connectors.d.ts +29 -0
- package/src/lib/server/shipping-connectors.js +236 -0
- package/src/lib/server/shipping-connectors.js.map +1 -0
- package/src/lib/server/shippingeasy.d.ts +238 -0
- package/src/lib/server/shippingeasy.js +787 -0
- package/src/lib/server/shippingeasy.js.map +1 -0
- package/src/lib/server/shipstation.d.ts +129 -0
- package/src/lib/server/shipstation.js +483 -0
- package/src/lib/server/shipstation.js.map +1 -0
- package/src/lib/server/site-page-resolver.d.ts +5 -0
- package/src/lib/server/site-page-resolver.js +156 -1
- package/src/lib/server/site-page-resolver.js.map +1 -1
- package/src/lib/server/stock-levels.d.ts +21 -0
- package/src/lib/server/stock-levels.js +263 -0
- package/src/lib/server/stock-levels.js.map +1 -0
- package/src/lib/server/stripe-refund.d.ts +47 -0
- package/src/lib/server/stripe-refund.js +87 -0
- package/src/lib/server/stripe-refund.js.map +1 -0
- package/src/lib/server/supplier-update.js +46 -5
- package/src/lib/server/supplier-update.js.map +1 -1
- package/src/lib/server/tax-engine-quote.d.ts +47 -0
- package/src/lib/server/tax-engine-quote.js +105 -0
- package/src/lib/server/tax-engine-quote.js.map +1 -0
- package/src/lib/server.js +138 -2
- package/src/lib/server.js.map +1 -1
- package/src/lib/site.js +12 -0
- package/src/lib/site.js.map +1 -1
- package/src/lib/subprocessors.d.ts +26 -0
- package/src/lib/subprocessors.js +50 -0
- package/src/lib/subprocessors.js.map +1 -0
- package/src/lib/tenant-emails.js +461 -3
- package/src/lib/tenant-emails.js.map +1 -1
- package/src/lib/testing/fake-firestore.d.ts +45 -0
- package/src/lib/testing/fake-firestore.js +189 -0
- package/src/lib/testing/fake-firestore.js.map +1 -0
- package/src/lib/testing/memory-firestore.d.ts +123 -0
- package/src/lib/testing/memory-firestore.js +274 -0
- package/src/lib/testing/memory-firestore.js.map +1 -0
- package/src/lib/testing/pos-ops-harness.d.ts +50 -0
- package/src/lib/testing/pos-ops-harness.js +184 -0
- package/src/lib/testing/pos-ops-harness.js.map +1 -0
- package/src/lib/testing/pos-ops-memory-firestore.d.ts +55 -0
- package/src/lib/testing/pos-ops-memory-firestore.js +376 -0
- package/src/lib/testing/pos-ops-memory-firestore.js.map +1 -0
- package/src/lib/transfer/records-transfer.d.ts +11 -1
- package/src/lib/transfer/records-transfer.js +127 -5
- package/src/lib/transfer/records-transfer.js.map +1 -1
- package/src/lib/transfer/records.server.d.ts +9 -2
- package/src/lib/transfer/records.server.js +58 -7
- package/src/lib/transfer/records.server.js.map +1 -1
- package/src/lib/transfer/register-transfer-resources.js +40 -1
- package/src/lib/transfer/register-transfer-resources.js.map +1 -1
- package/src/lib/transfer/register-transfer-ui.js +4 -1
- package/src/lib/transfer/register-transfer-ui.js.map +1 -1
- package/src/lib/transfer/shipping-presets.d.ts +23 -0
- package/src/lib/transfer/shipping-presets.js +156 -0
- package/src/lib/transfer/shipping-presets.js.map +1 -0
- package/src/lib/transfer/tracking-transfer.d.ts +101 -0
- package/src/lib/transfer/tracking-transfer.js +546 -0
- package/src/lib/transfer/tracking-transfer.js.map +1 -0
- package/src/lib/transfer/tracking.server.d.ts +37 -0
- package/src/lib/transfer/tracking.server.js +393 -0
- package/src/lib/transfer/tracking.server.js.map +1 -0
- package/src/lib/transfer/transfer-keys.d.ts +2 -1
- package/src/lib/transfer/transfer-keys.js +6 -2
- package/src/lib/transfer/transfer-keys.js.map +1 -1
- package/src/lib/utils/code128.d.ts +37 -0
- package/src/lib/utils/code128.js +199 -0
- package/src/lib/utils/code128.js.map +1 -0
- package/src/lib/utils/order-invoice.d.ts +55 -0
- package/src/lib/utils/order-invoice.js +127 -0
- package/src/lib/utils/order-invoice.js.map +1 -0
- package/src/lib/utils/use-checkout-return-notice.d.ts +34 -0
- package/src/lib/utils/use-checkout-return-notice.js +78 -0
- package/src/lib/utils/use-checkout-return-notice.js.map +1 -0
- package/src/lib/server/feed.js +0 -69
- package/src/lib/server/feed.js.map +0 -1
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/ /**
|
|
17
|
+
* The storefront payment methods a merchant chooses between (AGL-3629).
|
|
18
|
+
*
|
|
19
|
+
* ## Who decides what a shopper sees
|
|
20
|
+
*
|
|
21
|
+
* Every storefront charge is a DESTINATION charge with no `on_behalf_of`, so
|
|
22
|
+
* the PLATFORM is the merchant of record and Stripe offers the methods the
|
|
23
|
+
* platform's payment method configuration turns on ("dynamic payment
|
|
24
|
+
* methods"), filtered by currency, amount, the shopper's country and device.
|
|
25
|
+
* No session pins `payment_method_types`. A merchant therefore cannot ADD a
|
|
26
|
+
* method the platform does not offer — they can only take one away, and that
|
|
27
|
+
* is what the two levers below do:
|
|
28
|
+
*
|
|
29
|
+
* - `excluded_payment_method_types` on the Checkout Session, for every method
|
|
30
|
+
* Stripe lets a session exclude. Measured accepted at both the account
|
|
31
|
+
* default API version and the native checkout's pinned dahlia version, so
|
|
32
|
+
* it applies to the in-page checkout AND the hosted Stripe page alike.
|
|
33
|
+
* - The Payment Element's `wallets` option for Apple Pay, Google Pay and
|
|
34
|
+
* Link, which Stripe documents as NOT excludable per session. Link is also
|
|
35
|
+
* hidden on the session with `wallet_options[link][display]=never`, which
|
|
36
|
+
* reaches the hosted page; Apple Pay and Google Pay on a hosted Stripe page
|
|
37
|
+
* follow the device and cannot be hidden per merchant.
|
|
38
|
+
*
|
|
39
|
+
* ## Why toggling a method never moves a fee
|
|
40
|
+
*
|
|
41
|
+
* `application_fee_amount` is priced against the dearest method the platform
|
|
42
|
+
* could offer (`SALE_PROCESSING_PERCENT`, the BNPL rate), because the shopper
|
|
43
|
+
* picks how to pay after the fee is fixed. Every method here costs Stripe that
|
|
44
|
+
* much or less, so turning one off or on changes what a shopper may choose and
|
|
45
|
+
* never what the platform recovers.
|
|
46
|
+
*/ /** A method the merchant may switch off (or, for crypto, on). */ /**
|
|
47
|
+
* The catalog, in the order the settings card lists it. Limits are Stripe's
|
|
48
|
+
* published US figures (docs.stripe.com/payments/buy-now-pay-later and each
|
|
49
|
+
* method's page, read 2026-10-07); Stripe applies them itself, and they are
|
|
50
|
+
* here so a merchant can read why a method did not appear on an order.
|
|
51
|
+
*/ export const STOREFRONT_PAYMENT_METHODS = [
|
|
52
|
+
{
|
|
53
|
+
id: 'apple_pay',
|
|
54
|
+
label: 'Apple Pay',
|
|
55
|
+
kind: 'wallet',
|
|
56
|
+
control: 'wallet',
|
|
57
|
+
defaultOn: true,
|
|
58
|
+
configurationKey: 'apple_pay',
|
|
59
|
+
requirements: 'Safari on a Mac, iPhone or iPad with a card in Apple Wallet. Your site’s domain is registered with Apple Pay for you.',
|
|
60
|
+
limits: 'Same as cards.',
|
|
61
|
+
subscriptions: true,
|
|
62
|
+
needsDomain: true
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
id: 'google_pay',
|
|
66
|
+
label: 'Google Pay',
|
|
67
|
+
kind: 'wallet',
|
|
68
|
+
control: 'wallet',
|
|
69
|
+
defaultOn: true,
|
|
70
|
+
configurationKey: 'google_pay',
|
|
71
|
+
requirements: 'Chrome or an Android device with a card saved to Google Pay. With Stripe Tax on, Google Pay shows when the checkout collects a shipping address.',
|
|
72
|
+
limits: 'Same as cards.',
|
|
73
|
+
subscriptions: true,
|
|
74
|
+
needsDomain: true
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
id: 'link',
|
|
78
|
+
label: 'Link',
|
|
79
|
+
kind: 'wallet',
|
|
80
|
+
control: 'wallet',
|
|
81
|
+
defaultOn: true,
|
|
82
|
+
configurationKey: 'link',
|
|
83
|
+
requirements: 'Shoppers who saved a card or bank with Link check out in one step.',
|
|
84
|
+
limits: 'Same as cards.',
|
|
85
|
+
subscriptions: true,
|
|
86
|
+
needsDomain: true
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
id: 'klarna',
|
|
90
|
+
label: 'Klarna',
|
|
91
|
+
kind: 'bnpl',
|
|
92
|
+
control: 'exclude',
|
|
93
|
+
defaultOn: true,
|
|
94
|
+
capability: 'klarna_payments',
|
|
95
|
+
configurationKey: 'klarna',
|
|
96
|
+
requirements: 'US shoppers paying in USD. Pay in full, in 30 days, in 4, or monthly financing.',
|
|
97
|
+
limits: 'From $10; the highest amount depends on the shopper (financing up to $10,000).',
|
|
98
|
+
minCents: 1000,
|
|
99
|
+
subscriptions: true,
|
|
100
|
+
needsDomain: false
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
id: 'afterpay_clearpay',
|
|
104
|
+
label: 'Afterpay',
|
|
105
|
+
kind: 'bnpl',
|
|
106
|
+
control: 'exclude',
|
|
107
|
+
defaultOn: true,
|
|
108
|
+
capability: 'afterpay_clearpay_payments',
|
|
109
|
+
configurationKey: 'afterpay_clearpay',
|
|
110
|
+
requirements: 'US shoppers paying in USD. Pay in 4 interest-free installments.',
|
|
111
|
+
limits: '$1 to $4,000. One-time purchases only.',
|
|
112
|
+
minCents: 100,
|
|
113
|
+
maxCents: 400000,
|
|
114
|
+
subscriptions: false,
|
|
115
|
+
needsDomain: false
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
id: 'affirm',
|
|
119
|
+
label: 'Affirm',
|
|
120
|
+
kind: 'bnpl',
|
|
121
|
+
control: 'exclude',
|
|
122
|
+
defaultOn: true,
|
|
123
|
+
capability: 'affirm_payments',
|
|
124
|
+
configurationKey: 'affirm',
|
|
125
|
+
requirements: 'US shoppers paying in USD. Pay in 4, or monthly installments up to 36 months.',
|
|
126
|
+
limits: '$50 to $30,000. One-time purchases only.',
|
|
127
|
+
minCents: 5000,
|
|
128
|
+
maxCents: 3000000,
|
|
129
|
+
subscriptions: false,
|
|
130
|
+
needsDomain: false
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
id: 'cashapp',
|
|
134
|
+
label: 'Cash App Pay',
|
|
135
|
+
kind: 'wallet',
|
|
136
|
+
control: 'exclude',
|
|
137
|
+
defaultOn: true,
|
|
138
|
+
capability: 'cashapp_payments',
|
|
139
|
+
configurationKey: 'cashapp',
|
|
140
|
+
requirements: 'US shoppers with Cash App, paying in USD.',
|
|
141
|
+
limits: 'USD only.',
|
|
142
|
+
subscriptions: true,
|
|
143
|
+
needsDomain: false
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
id: 'amazon_pay',
|
|
147
|
+
label: 'Amazon Pay',
|
|
148
|
+
kind: 'wallet',
|
|
149
|
+
control: 'exclude',
|
|
150
|
+
defaultOn: true,
|
|
151
|
+
capability: 'amazon_pay_payments',
|
|
152
|
+
configurationKey: 'amazon_pay',
|
|
153
|
+
requirements: 'Shoppers pay with the card and address saved to their Amazon account.',
|
|
154
|
+
limits: 'USD only.',
|
|
155
|
+
subscriptions: true,
|
|
156
|
+
needsDomain: true
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
id: 'crypto',
|
|
160
|
+
label: 'Stablecoins (crypto)',
|
|
161
|
+
kind: 'crypto',
|
|
162
|
+
control: 'exclude',
|
|
163
|
+
defaultOn: false,
|
|
164
|
+
capability: 'crypto_payments',
|
|
165
|
+
configurationKey: 'crypto',
|
|
166
|
+
requirements: 'Shoppers pay in USDC or another supported stablecoin from their crypto wallet; you are paid in USD. Refunds go back to the shopper’s wallet as stablecoins, and these payments cannot be disputed.',
|
|
167
|
+
limits: 'USD only, up to $10,000 per payment.',
|
|
168
|
+
maxCents: 1000000,
|
|
169
|
+
subscriptions: true,
|
|
170
|
+
needsDomain: false
|
|
171
|
+
}
|
|
172
|
+
];
|
|
173
|
+
export const STOREFRONT_PAYMENT_METHOD_IDS = STOREFRONT_PAYMENT_METHODS.map((method)=>method.id);
|
|
174
|
+
export function storefrontPaymentMethodSpec(id) {
|
|
175
|
+
return STOREFRONT_PAYMENT_METHODS.find((method)=>method.id === id);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Keep only booleans under known ids. The settings document is written by the
|
|
179
|
+
* console, so anything else on it — a string, a removed method, a typo — is
|
|
180
|
+
* read as "never chosen" rather than trusted.
|
|
181
|
+
*/ export function normalizeStorefrontPaymentMethodSettings(raw) {
|
|
182
|
+
const out = {};
|
|
183
|
+
if (!raw || typeof raw !== 'object') return out;
|
|
184
|
+
for (const id of STOREFRONT_PAYMENT_METHOD_IDS){
|
|
185
|
+
const value = raw[id];
|
|
186
|
+
if (typeof value === 'boolean') out[id] = value;
|
|
187
|
+
}
|
|
188
|
+
return out;
|
|
189
|
+
}
|
|
190
|
+
/** Whether the merchant offers a method: their choice, else its default. */ export function isStorefrontPaymentMethodOn(settings, id) {
|
|
191
|
+
var _ref;
|
|
192
|
+
var _storefrontPaymentMethodSpec;
|
|
193
|
+
const chosen = settings == null ? void 0 : settings[id];
|
|
194
|
+
if (typeof chosen === 'boolean') return chosen;
|
|
195
|
+
return (_ref = (_storefrontPaymentMethodSpec = storefrontPaymentMethodSpec(id)) == null ? void 0 : _storefrontPaymentMethodSpec.defaultOn) != null ? _ref : false;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* What one checkout session sends Stripe for the merchant's choices.
|
|
199
|
+
*
|
|
200
|
+
* A method the merchant left on is NOT added anywhere: dynamic payment methods
|
|
201
|
+
* already offer it when the platform does and the order qualifies. Only the
|
|
202
|
+
* methods turned off are named, which is why a merchant who never opened the
|
|
203
|
+
* card produces the same session as before AGL-3629 — except crypto, which is
|
|
204
|
+
* excluded until chosen, and was never offered by the platform before either.
|
|
205
|
+
*/ export function resolveStorefrontPaymentMethodControls(settings) {
|
|
206
|
+
const excluded = STOREFRONT_PAYMENT_METHODS.filter((method)=>method.control === 'exclude' && !isStorefrontPaymentMethodOn(settings, method.id)).map((method)=>method.id);
|
|
207
|
+
const display = (id)=>isStorefrontPaymentMethodOn(settings, id) ? 'auto' : 'never';
|
|
208
|
+
return {
|
|
209
|
+
excluded,
|
|
210
|
+
wallets: {
|
|
211
|
+
applePay: display('apple_pay'),
|
|
212
|
+
googlePay: display('google_pay'),
|
|
213
|
+
link: display('link')
|
|
214
|
+
}
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Write the controls onto a Checkout Session param set. Leaves the params
|
|
219
|
+
* untouched when the merchant hid nothing, so a store with default settings —
|
|
220
|
+
* apart from the crypto opt-in — sends what it always sent.
|
|
221
|
+
*/ export function appendStorefrontPaymentMethodParams(params, controls) {
|
|
222
|
+
controls.excluded.forEach((id, index)=>{
|
|
223
|
+
params.set(`excluded_payment_method_types[${index}]`, id);
|
|
224
|
+
});
|
|
225
|
+
if (controls.wallets.link === 'never') {
|
|
226
|
+
params.set('wallet_options[link][display]', 'never');
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/** True when the browser has to be told about a hidden wallet at all. */ export function storefrontWalletsHideAny(wallets) {
|
|
230
|
+
return wallets.applePay === 'never' || wallets.googlePay === 'never' || wallets.link === 'never';
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* The `wallets` a checkout response carries, as the browser reads it. Anything
|
|
234
|
+
* that is not exactly `'auto'` or `'never'` is dropped, so a malformed or old
|
|
235
|
+
* response shows every wallet rather than breaking the payment form.
|
|
236
|
+
*/ export function readStorefrontCheckoutWallets(raw) {
|
|
237
|
+
if (!raw || typeof raw !== 'object') return undefined;
|
|
238
|
+
const value = (key)=>raw[key] === 'never' ? 'never' : 'auto';
|
|
239
|
+
const wallets = {
|
|
240
|
+
applePay: value('applePay'),
|
|
241
|
+
googlePay: value('googlePay'),
|
|
242
|
+
link: value('link')
|
|
243
|
+
};
|
|
244
|
+
return storefrontWalletsHideAny(wallets) ? wallets : undefined;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
//# sourceMappingURL=commerce-payment-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../libs/plugins/commerce/src/lib/model/commerce-payment-methods.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * The storefront payment methods a merchant chooses between (AGL-3629).\n *\n * ## Who decides what a shopper sees\n *\n * Every storefront charge is a DESTINATION charge with no `on_behalf_of`, so\n * the PLATFORM is the merchant of record and Stripe offers the methods the\n * platform's payment method configuration turns on (\"dynamic payment\n * methods\"), filtered by currency, amount, the shopper's country and device.\n * No session pins `payment_method_types`. A merchant therefore cannot ADD a\n * method the platform does not offer — they can only take one away, and that\n * is what the two levers below do:\n *\n * - `excluded_payment_method_types` on the Checkout Session, for every method\n * Stripe lets a session exclude. Measured accepted at both the account\n * default API version and the native checkout's pinned dahlia version, so\n * it applies to the in-page checkout AND the hosted Stripe page alike.\n * - The Payment Element's `wallets` option for Apple Pay, Google Pay and\n * Link, which Stripe documents as NOT excludable per session. Link is also\n * hidden on the session with `wallet_options[link][display]=never`, which\n * reaches the hosted page; Apple Pay and Google Pay on a hosted Stripe page\n * follow the device and cannot be hidden per merchant.\n *\n * ## Why toggling a method never moves a fee\n *\n * `application_fee_amount` is priced against the dearest method the platform\n * could offer (`SALE_PROCESSING_PERCENT`, the BNPL rate), because the shopper\n * picks how to pay after the fee is fixed. Every method here costs Stripe that\n * much or less, so turning one off or on changes what a shopper may choose and\n * never what the platform recovers.\n */\n\n/** A method the merchant may switch off (or, for crypto, on). */\nexport type StorefrontPaymentMethodId =\n | 'apple_pay'\n | 'google_pay'\n | 'link'\n | 'klarna'\n | 'afterpay_clearpay'\n | 'affirm'\n | 'cashapp'\n | 'amazon_pay'\n | 'crypto'\n\nexport type StorefrontPaymentMethodKind = 'wallet' | 'bnpl' | 'crypto'\n\n/** How a toggle reaches Stripe. */\nexport type StorefrontPaymentMethodControl =\n /** The Payment Element's `wallets` option (and, for Link, the session). */\n | 'wallet'\n /** `excluded_payment_method_types` on the Checkout Session. */\n | 'exclude'\n\nexport interface StorefrontPaymentMethodSpec {\n id: StorefrontPaymentMethodId\n label: string\n kind: StorefrontPaymentMethodKind\n control: StorefrontPaymentMethodControl\n /**\n * On when the merchant has never chosen. Every method that was already\n * reaching shoppers before AGL-3629 defaults on, so saving nothing changes\n * nothing; crypto, which settles differently and cannot be disputed,\n * defaults off and is the merchant's to opt into.\n */\n defaultOn: boolean\n /**\n * The connected-account capability Stripe asks platforms to request before\n * the method is accepted for that account. Absent for the card wallets,\n * which ride `card_payments`.\n */\n capability?: string\n /** The platform payment method configuration's key for this method. */\n configurationKey: string\n /** What a shopper needs, in a sentence the settings card shows. */\n requirements: string\n /** Amount and currency limits, as Stripe publishes them for US accounts. */\n limits: string\n /** Lowest charge Stripe offers it for, in USD cents, when published. */\n minCents?: number\n /** Highest charge Stripe offers it for, in USD cents, when published. */\n maxCents?: number\n /** False where Stripe does not offer it in a subscription-mode session. */\n subscriptions: boolean\n /** Shown on a registered domain only (Apple Pay must be; the rest benefit). */\n needsDomain: boolean\n}\n\n/**\n * The catalog, in the order the settings card lists it. Limits are Stripe's\n * published US figures (docs.stripe.com/payments/buy-now-pay-later and each\n * method's page, read 2026-10-07); Stripe applies them itself, and they are\n * here so a merchant can read why a method did not appear on an order.\n */\nexport const STOREFRONT_PAYMENT_METHODS: readonly StorefrontPaymentMethodSpec[] = [\n {\n id: 'apple_pay',\n label: 'Apple Pay',\n kind: 'wallet',\n control: 'wallet',\n defaultOn: true,\n configurationKey: 'apple_pay',\n requirements:\n 'Safari on a Mac, iPhone or iPad with a card in Apple Wallet. Your site’s domain is registered with Apple Pay for you.',\n limits: 'Same as cards.',\n subscriptions: true,\n needsDomain: true,\n },\n {\n id: 'google_pay',\n label: 'Google Pay',\n kind: 'wallet',\n control: 'wallet',\n defaultOn: true,\n configurationKey: 'google_pay',\n requirements:\n 'Chrome or an Android device with a card saved to Google Pay. With Stripe Tax on, Google Pay shows when the checkout collects a shipping address.',\n limits: 'Same as cards.',\n subscriptions: true,\n needsDomain: true,\n },\n {\n id: 'link',\n label: 'Link',\n kind: 'wallet',\n control: 'wallet',\n defaultOn: true,\n configurationKey: 'link',\n requirements: 'Shoppers who saved a card or bank with Link check out in one step.',\n limits: 'Same as cards.',\n subscriptions: true,\n needsDomain: true,\n },\n {\n id: 'klarna',\n label: 'Klarna',\n kind: 'bnpl',\n control: 'exclude',\n defaultOn: true,\n capability: 'klarna_payments',\n configurationKey: 'klarna',\n requirements:\n 'US shoppers paying in USD. Pay in full, in 30 days, in 4, or monthly financing.',\n limits: 'From $10; the highest amount depends on the shopper (financing up to $10,000).',\n minCents: 1000,\n subscriptions: true,\n needsDomain: false,\n },\n {\n id: 'afterpay_clearpay',\n label: 'Afterpay',\n kind: 'bnpl',\n control: 'exclude',\n defaultOn: true,\n capability: 'afterpay_clearpay_payments',\n configurationKey: 'afterpay_clearpay',\n requirements: 'US shoppers paying in USD. Pay in 4 interest-free installments.',\n limits: '$1 to $4,000. One-time purchases only.',\n minCents: 100,\n maxCents: 400_000,\n subscriptions: false,\n needsDomain: false,\n },\n {\n id: 'affirm',\n label: 'Affirm',\n kind: 'bnpl',\n control: 'exclude',\n defaultOn: true,\n capability: 'affirm_payments',\n configurationKey: 'affirm',\n requirements:\n 'US shoppers paying in USD. Pay in 4, or monthly installments up to 36 months.',\n limits: '$50 to $30,000. One-time purchases only.',\n minCents: 5_000,\n maxCents: 3_000_000,\n subscriptions: false,\n needsDomain: false,\n },\n {\n id: 'cashapp',\n label: 'Cash App Pay',\n kind: 'wallet',\n control: 'exclude',\n defaultOn: true,\n capability: 'cashapp_payments',\n configurationKey: 'cashapp',\n requirements: 'US shoppers with Cash App, paying in USD.',\n limits: 'USD only.',\n subscriptions: true,\n needsDomain: false,\n },\n {\n id: 'amazon_pay',\n label: 'Amazon Pay',\n kind: 'wallet',\n control: 'exclude',\n defaultOn: true,\n capability: 'amazon_pay_payments',\n configurationKey: 'amazon_pay',\n requirements: 'Shoppers pay with the card and address saved to their Amazon account.',\n limits: 'USD only.',\n subscriptions: true,\n needsDomain: true,\n },\n {\n id: 'crypto',\n label: 'Stablecoins (crypto)',\n kind: 'crypto',\n control: 'exclude',\n defaultOn: false,\n capability: 'crypto_payments',\n configurationKey: 'crypto',\n requirements:\n 'Shoppers pay in USDC or another supported stablecoin from their crypto wallet; you are paid in USD. Refunds go back to the shopper’s wallet as stablecoins, and these payments cannot be disputed.',\n limits: 'USD only, up to $10,000 per payment.',\n maxCents: 1_000_000,\n subscriptions: true,\n needsDomain: false,\n },\n]\n\n/** The merchant's choices, as stored on `hosts/{hostId}/settings/store`. */\nexport type StorefrontPaymentMethodSettings = Partial<\n Record<StorefrontPaymentMethodId, boolean>\n>\n\nexport const STOREFRONT_PAYMENT_METHOD_IDS: readonly StorefrontPaymentMethodId[] =\n STOREFRONT_PAYMENT_METHODS.map((method) => method.id)\n\nexport function storefrontPaymentMethodSpec(\n id: string,\n): StorefrontPaymentMethodSpec | undefined {\n return STOREFRONT_PAYMENT_METHODS.find((method) => method.id === id)\n}\n\n/**\n * Keep only booleans under known ids. The settings document is written by the\n * console, so anything else on it — a string, a removed method, a typo — is\n * read as \"never chosen\" rather than trusted.\n */\nexport function normalizeStorefrontPaymentMethodSettings(\n raw: unknown,\n): StorefrontPaymentMethodSettings {\n const out: StorefrontPaymentMethodSettings = {}\n if (!raw || typeof raw !== 'object') return out\n for (const id of STOREFRONT_PAYMENT_METHOD_IDS) {\n const value = (raw as Record<string, unknown>)[id]\n if (typeof value === 'boolean') out[id] = value\n }\n return out\n}\n\n/** Whether the merchant offers a method: their choice, else its default. */\nexport function isStorefrontPaymentMethodOn(\n settings: StorefrontPaymentMethodSettings | null | undefined,\n id: StorefrontPaymentMethodId,\n): boolean {\n const chosen = settings?.[id]\n if (typeof chosen === 'boolean') return chosen\n return storefrontPaymentMethodSpec(id)?.defaultOn ?? false\n}\n\n/** `auto` lets Stripe decide from the device; `never` hides the wallet. */\nexport type StorefrontWalletDisplay = 'auto' | 'never'\n\n/** The Payment Element's `wallets` option, as the browser receives it. */\nexport interface StorefrontCheckoutWallets {\n applePay: StorefrontWalletDisplay\n googlePay: StorefrontWalletDisplay\n link: StorefrontWalletDisplay\n}\n\nexport interface StorefrontPaymentMethodControls {\n /** Sent as `excluded_payment_method_types[n]`, in catalog order. */\n excluded: StorefrontPaymentMethodId[]\n /** Handed to the Payment Element. */\n wallets: StorefrontCheckoutWallets\n}\n\n/**\n * What one checkout session sends Stripe for the merchant's choices.\n *\n * A method the merchant left on is NOT added anywhere: dynamic payment methods\n * already offer it when the platform does and the order qualifies. Only the\n * methods turned off are named, which is why a merchant who never opened the\n * card produces the same session as before AGL-3629 — except crypto, which is\n * excluded until chosen, and was never offered by the platform before either.\n */\nexport function resolveStorefrontPaymentMethodControls(\n settings: StorefrontPaymentMethodSettings | null | undefined,\n): StorefrontPaymentMethodControls {\n const excluded = STOREFRONT_PAYMENT_METHODS.filter(\n (method) =>\n method.control === 'exclude' && !isStorefrontPaymentMethodOn(settings, method.id),\n ).map((method) => method.id)\n const display = (id: StorefrontPaymentMethodId): StorefrontWalletDisplay =>\n isStorefrontPaymentMethodOn(settings, id) ? 'auto' : 'never'\n return {\n excluded,\n wallets: {\n applePay: display('apple_pay'),\n googlePay: display('google_pay'),\n link: display('link'),\n },\n }\n}\n\n/**\n * Write the controls onto a Checkout Session param set. Leaves the params\n * untouched when the merchant hid nothing, so a store with default settings —\n * apart from the crypto opt-in — sends what it always sent.\n */\nexport function appendStorefrontPaymentMethodParams(\n params: URLSearchParams,\n controls: StorefrontPaymentMethodControls,\n): void {\n controls.excluded.forEach((id, index) => {\n params.set(`excluded_payment_method_types[${index}]`, id)\n })\n if (controls.wallets.link === 'never') {\n params.set('wallet_options[link][display]', 'never')\n }\n}\n\n/** True when the browser has to be told about a hidden wallet at all. */\nexport function storefrontWalletsHideAny(wallets: StorefrontCheckoutWallets): boolean {\n return (\n wallets.applePay === 'never' ||\n wallets.googlePay === 'never' ||\n wallets.link === 'never'\n )\n}\n\n/**\n * The `wallets` a checkout response carries, as the browser reads it. Anything\n * that is not exactly `'auto'` or `'never'` is dropped, so a malformed or old\n * response shows every wallet rather than breaking the payment form.\n */\nexport function readStorefrontCheckoutWallets(\n raw: unknown,\n): StorefrontCheckoutWallets | undefined {\n if (!raw || typeof raw !== 'object') return undefined\n const value = (key: string): StorefrontWalletDisplay =>\n (raw as Record<string, unknown>)[key] === 'never' ? 'never' : 'auto'\n const wallets: StorefrontCheckoutWallets = {\n applePay: value('applePay'),\n googlePay: value('googlePay'),\n link: value('link'),\n }\n return storefrontWalletsHideAny(wallets) ? wallets : undefined\n}\n"],"names":["STOREFRONT_PAYMENT_METHODS","id","label","kind","control","defaultOn","configurationKey","requirements","limits","subscriptions","needsDomain","capability","minCents","maxCents","STOREFRONT_PAYMENT_METHOD_IDS","map","method","storefrontPaymentMethodSpec","find","normalizeStorefrontPaymentMethodSettings","raw","out","value","isStorefrontPaymentMethodOn","settings","chosen","resolveStorefrontPaymentMethodControls","excluded","filter","display","wallets","applePay","googlePay","link","appendStorefrontPaymentMethodParams","params","controls","forEach","index","set","storefrontWalletsHideAny","readStorefrontCheckoutWallets","undefined","key"],"mappings":"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"}
|