@foxy.io/elements 1.18.0-beta.21 → 1.18.0-beta.23
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/README.md +6 -1
- package/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +85 -3
- package/dist/cdn/foxy-address-form.js +1 -1
- package/dist/cdn/foxy-admin-subscription-card.js +1 -1
- package/dist/cdn/foxy-api-browser.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-applied-tax-card.js +1 -1
- package/dist/cdn/foxy-attribute-card.js +1 -1
- package/dist/cdn/foxy-attribute-form.js +1 -1
- package/dist/cdn/foxy-cancellation-form.js +1 -1
- package/dist/cdn/foxy-cart-card.js +1 -1
- package/dist/cdn/foxy-cart-form.js +1 -1
- package/dist/cdn/foxy-collection-page.js +1 -1
- package/dist/cdn/foxy-collection-pages.js +1 -1
- package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
- package/dist/cdn/foxy-coupon-card.js +1 -1
- package/dist/cdn/foxy-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-coupon-codes-form.js +1 -1
- package/dist/cdn/foxy-coupon-detail-card.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-custom-field-card.js +1 -1
- package/dist/cdn/foxy-custom-field-form.js +1 -1
- package/dist/cdn/foxy-customer-card.js +1 -1
- package/dist/cdn/foxy-customer-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +2 -2
- package/dist/cdn/foxy-customer.js +1 -1
- package/dist/cdn/foxy-customers-table.js +1 -1
- package/dist/cdn/foxy-discount-builder.js +1 -1
- package/dist/cdn/foxy-discount-card.js +1 -1
- package/dist/cdn/foxy-discount-detail-card.js +1 -1
- package/dist/cdn/foxy-donation.js +1 -1
- package/dist/cdn/foxy-email-template-card.js +1 -1
- package/dist/cdn/foxy-email-template-form.js +1 -1
- package/dist/cdn/foxy-error-entry-card.js +1 -1
- package/dist/cdn/foxy-form-dialog.js +1 -1
- package/dist/cdn/foxy-generate-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-card.js +1 -1
- package/dist/cdn/foxy-gift-card-code-form.js +1 -1
- package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
- package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-form.js +1 -1
- package/dist/cdn/foxy-i18n-editor.js +2 -2
- package/dist/cdn/foxy-i18n.js +1 -1
- package/dist/cdn/foxy-integration-card.js +1 -1
- package/dist/cdn/foxy-integration-form.js +1 -1
- package/dist/cdn/foxy-item-card.js +1 -1
- package/dist/cdn/foxy-item-category-card.js +1 -1
- package/dist/cdn/foxy-item-category-form.js +1 -1
- package/dist/cdn/foxy-item-form.js +1 -1
- package/dist/cdn/foxy-item-option-card.js +1 -1
- package/dist/cdn/foxy-item-option-form.js +1 -1
- package/dist/cdn/foxy-items-form.js +1 -1
- package/dist/cdn/foxy-pagination.js +1 -1
- package/dist/cdn/foxy-payment-card.js +1 -1
- package/dist/cdn/foxy-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
- package/dist/cdn/foxy-query-builder.js +1 -1
- package/dist/cdn/foxy-report-form.js +2 -2
- package/dist/cdn/foxy-reports-table.js +5 -5
- package/dist/cdn/foxy-shipment-card.js +1 -1
- package/dist/cdn/foxy-shipping-method-card.js +1 -1
- package/dist/cdn/foxy-sign-in-form.js +1 -1
- package/dist/cdn/foxy-spinner.js +1 -1
- package/dist/cdn/foxy-store-form.js +1 -1
- package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
- package/dist/cdn/foxy-subscription-card.js +1 -1
- package/dist/cdn/foxy-subscription-form.js +1 -1
- package/dist/cdn/foxy-subscription-settings-form.js +1 -1
- package/dist/cdn/foxy-subscriptions-table.js +1 -1
- package/dist/cdn/foxy-table.js +1 -1
- package/dist/cdn/foxy-tax-card.js +1 -1
- package/dist/cdn/foxy-tax-form.js +1 -1
- package/dist/cdn/foxy-template-config-form.js +1 -1
- package/dist/cdn/foxy-template-form.js +1 -1
- package/dist/cdn/foxy-template-set-card.js +1 -1
- package/dist/cdn/foxy-template-set-form.js +1 -1
- package/dist/cdn/foxy-transaction-card.js +1 -1
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-transactions-table.js +7 -7
- package/dist/cdn/foxy-user-form.js +1 -1
- package/dist/cdn/foxy-users-table.js +1 -1
- package/dist/cdn/foxy-webhook-card.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +1 -1
- package/dist/cdn/foxy-webhook-log-card.js +1 -1
- package/dist/cdn/foxy-webhook-status-card.js +1 -1
- package/dist/cdn/{shared-f69afa4b.js → shared-08156595.js} +1 -1
- package/dist/cdn/{shared-fedeb7b2.js → shared-0821cfdc.js} +1 -1
- package/dist/cdn/{shared-6ac71f60.js → shared-08e27fe9.js} +3 -3
- package/dist/cdn/{shared-13e6fe8a.js → shared-0ce006b9.js} +1 -1
- package/dist/cdn/shared-1000b848.js +1 -0
- package/dist/cdn/{shared-d7dfd3d8.js → shared-101d1234.js} +2 -2
- package/dist/cdn/{shared-9643b6c8.js → shared-1c94a156.js} +1 -1
- package/dist/cdn/{shared-e39be772.js → shared-2092d86f.js} +1 -1
- package/dist/cdn/shared-21679ebd.js +1 -0
- package/dist/cdn/{shared-8e6a8a88.js → shared-2add595d.js} +1 -1
- package/dist/cdn/{shared-459a5ec4.js → shared-2cc638ad.js} +1 -1
- package/dist/cdn/{shared-4817dcd1.js → shared-39c10b22.js} +1 -1
- package/dist/cdn/{shared-d0c5c38f.js → shared-404aa9cc.js} +1 -1
- package/dist/cdn/{shared-307382e5.js → shared-4849ef5b.js} +1 -1
- package/dist/cdn/shared-486d7bb5.js +1 -0
- package/dist/cdn/shared-4979dca4.js +1 -0
- package/dist/cdn/{shared-715ee51e.js → shared-4f9d2417.js} +1 -1
- package/dist/cdn/{shared-daab7e76.js → shared-5378bd8c.js} +1 -1
- package/dist/cdn/{shared-780ead03.js → shared-5a4829e3.js} +1 -1
- package/dist/cdn/{shared-7788977c.js → shared-5ea18e60.js} +1 -1
- package/dist/cdn/{shared-674c1c04.js → shared-62a54a6c.js} +1 -1
- package/dist/cdn/{shared-d7c271d2.js → shared-62c088b7.js} +1 -1
- package/dist/cdn/{shared-71beb422.js → shared-639c666f.js} +1 -1
- package/dist/cdn/{shared-9862ca28.js → shared-6581241a.js} +1 -1
- package/dist/cdn/{shared-206b4ae2.js → shared-6cb1015f.js} +1 -1
- package/dist/cdn/{shared-2bd47510.js → shared-71d8d167.js} +3 -3
- package/dist/cdn/{shared-45db2087.js → shared-71f2ef1f.js} +1 -1
- package/dist/cdn/{shared-25ecdf66.js → shared-744cf66b.js} +1 -1
- package/dist/cdn/{shared-80378a15.js → shared-7d4fb1a2.js} +1 -1
- package/dist/cdn/{shared-a4165acb.js → shared-80fc2b6a.js} +1 -1
- package/dist/cdn/{shared-ef98812b.js → shared-83596b46.js} +1 -1
- package/dist/cdn/shared-868065de.js +1 -0
- package/dist/cdn/{shared-02d4bc14.js → shared-88c4cfec.js} +1 -1
- package/dist/cdn/{shared-e7e0ee80.js → shared-8dd0af4d.js} +1 -1
- package/dist/cdn/{shared-46e22714.js → shared-988ec916.js} +1 -1
- package/dist/cdn/{shared-915e8780.js → shared-9bdacf65.js} +1 -1
- package/dist/cdn/{shared-72279946.js → shared-9f436277.js} +1 -1
- package/dist/cdn/shared-a0c8faf2.js +1 -0
- package/dist/cdn/{shared-0f29fba2.js → shared-a37abe4c.js} +2 -2
- package/dist/cdn/{shared-a6de944b.js → shared-a41234b4.js} +1 -1
- package/dist/cdn/{shared-0a40a749.js → shared-af226a9a.js} +1 -1
- package/dist/cdn/{shared-3b249b20.js → shared-b40cf0dd.js} +1 -1
- package/dist/cdn/{shared-7a739f89.js → shared-bb0e33c3.js} +1 -1
- package/dist/cdn/{shared-18d42566.js → shared-bc814810.js} +1 -1
- package/dist/cdn/{shared-1392183b.js → shared-bd252323.js} +1 -1
- package/dist/cdn/{shared-0d3bec9f.js → shared-be66c2e7.js} +1 -1
- package/dist/cdn/{shared-f821859e.js → shared-c774d080.js} +1 -1
- package/dist/cdn/{shared-78f6e15f.js → shared-c95c17e6.js} +1 -1
- package/dist/cdn/shared-cba08e1c.js +1 -0
- package/dist/cdn/{shared-33912f50.js → shared-d518bd55.js} +1 -1
- package/dist/cdn/shared-d61b3e4f.js +1 -0
- package/dist/cdn/{shared-3e8cd935.js → shared-d8dc97f0.js} +1 -1
- package/dist/cdn/{shared-2d2ce3b1.js → shared-de036570.js} +1 -1
- package/dist/cdn/{shared-7992035c.js → shared-ed0dee03.js} +3 -3
- package/dist/cdn/shared-f7e4cd67.js +1 -0
- package/dist/cdn/{shared-e0615601.js → shared-f80f402a.js} +1 -1
- package/dist/cdn/translations/payments-api-payment-preset-form/en.json +2 -2
- package/dist/cdn/translations/store-shipping-method-form/en.json +10 -10
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +10 -5
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
- package/dist/elements/internal/InternalControl/InternalControl.js +2 -2
- package/dist/elements/internal/InternalControl/InternalControl.js.map +1 -1
- package/dist/elements/internal/InternalDetails/InternalDetails.js +3 -3
- package/dist/elements/internal/InternalDetails/InternalDetails.js.map +1 -1
- package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js +1 -1
- package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js.map +1 -1
- package/dist/elements/internal/InternalSelectControl/InternalSelectControl.js +2 -1
- package/dist/elements/internal/InternalSelectControl/InternalSelectControl.js.map +1 -1
- package/dist/elements/private/Group/Group.js +1 -1
- package/dist/elements/private/Group/Group.js.map +1 -1
- package/dist/elements/private/Warning/Warning.js +1 -3
- package/dist/elements/private/Warning/Warning.js.map +1 -1
- package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.d.ts +2 -2
- package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.js +7 -8
- package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.js.map +1 -1
- package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.d.ts +1 -1
- package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.js +2 -2
- package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.js.map +1 -1
- package/dist/elements/public/AttributeCard/AttributeCard.js +28 -14
- package/dist/elements/public/AttributeCard/AttributeCard.js.map +1 -1
- package/dist/elements/public/CartForm/CartForm.d.ts +106 -1
- package/dist/elements/public/CartForm/CartForm.js +167 -37
- package/dist/elements/public/CartForm/CartForm.js.map +1 -1
- package/dist/elements/public/CartForm/index.d.ts +2 -0
- package/dist/elements/public/CartForm/index.js +2 -0
- package/dist/elements/public/CartForm/index.js.map +1 -1
- package/dist/elements/public/CartForm/types.d.ts +64 -0
- package/dist/elements/public/CartForm/types.js.map +1 -1
- package/dist/elements/public/CouponDetailCard/CouponDetailCard.d.ts +1 -1
- package/dist/elements/public/CouponDetailCard/CouponDetailCard.js +2 -2
- package/dist/elements/public/CouponDetailCard/CouponDetailCard.js.map +1 -1
- package/dist/elements/public/CouponForm/CouponForm.js +13 -9
- package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
- package/dist/elements/public/CustomFieldCard/CustomFieldCard.d.ts +1 -1
- package/dist/elements/public/CustomFieldCard/CustomFieldCard.js +2 -2
- package/dist/elements/public/CustomFieldCard/CustomFieldCard.js.map +1 -1
- package/dist/elements/public/CustomFieldCard/TwoLineCard.d.ts +6 -12
- package/dist/elements/public/CustomFieldCard/TwoLineCard.js +5 -35
- package/dist/elements/public/CustomFieldCard/TwoLineCard.js.map +1 -1
- package/dist/elements/public/DiscountBuilder/DiscountBuilder.js +4 -4
- package/dist/elements/public/DiscountBuilder/DiscountBuilder.js.map +1 -1
- package/dist/elements/public/DiscountCard/DiscountCard.d.ts +1 -1
- package/dist/elements/public/DiscountCard/DiscountCard.js +2 -2
- package/dist/elements/public/DiscountCard/DiscountCard.js.map +1 -1
- package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.d.ts +1 -1
- package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js +2 -2
- package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js.map +1 -1
- package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.d.ts +1 -1
- package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.js +2 -2
- package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.js.map +1 -1
- package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js +10 -2
- package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js.map +1 -1
- package/dist/elements/public/GiftCardForm/GiftCardForm.js +3 -3
- package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
- package/dist/elements/public/I18nEditor/I18nEditor.d.ts +9 -0
- package/dist/elements/public/I18nEditor/I18nEditor.js +13 -4
- package/dist/elements/public/I18nEditor/I18nEditor.js.map +1 -1
- package/dist/elements/public/ItemCard/ItemCard.js +14 -15
- package/dist/elements/public/ItemCard/ItemCard.js.map +1 -1
- package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.d.ts +1 -1
- package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.js +2 -2
- package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.js.map +1 -1
- package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.d.ts +84 -1
- package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js +88 -15
- package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js.map +1 -1
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControl/InternalItemCategoryFormTaxesControl.js +1 -1
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControl/InternalItemCategoryFormTaxesControl.js.map +1 -1
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js +2 -2
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js.map +1 -1
- package/dist/elements/public/ItemCategoryForm/types.d.ts +53 -1
- package/dist/elements/public/ItemCategoryForm/types.js.map +1 -1
- package/dist/elements/public/ItemOptionCard/ItemOptionCard.d.ts +1 -1
- package/dist/elements/public/ItemOptionCard/ItemOptionCard.js +2 -2
- package/dist/elements/public/ItemOptionCard/ItemOptionCard.js.map +1 -1
- package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.d.ts +1 -1
- package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.js +6 -3
- package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.js.map +1 -1
- package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.d.ts +41 -3
- package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js +142 -84
- package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js.map +1 -1
- package/dist/elements/public/PaymentsApiFraudProtectionForm/index.d.ts +2 -3
- package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js +2 -3
- package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js.map +1 -1
- package/dist/elements/public/PaymentsApiFraudProtectionForm/types.d.ts +15 -0
- package/dist/elements/public/PaymentsApiFraudProtectionForm/types.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.d.ts +1 -1
- package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.js +6 -3
- package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.d.ts +70 -3
- package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js +314 -263
- package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentMethodForm/index.d.ts +2 -0
- package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js +2 -0
- package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentMethodForm/types.d.ts +29 -0
- package/dist/elements/public/PaymentsApiPaymentMethodForm/types.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.d.ts +1 -1
- package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.js +2 -2
- package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.d.ts +40 -1
- package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js +93 -74
- package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js.map +1 -1
- package/dist/elements/public/PaymentsApiPaymentPresetForm/types.d.ts +14 -0
- package/dist/elements/public/PaymentsApiPaymentPresetForm/types.js.map +1 -1
- package/dist/elements/public/ReportForm/ReportForm.js +4 -1
- package/dist/elements/public/ReportForm/ReportForm.js.map +1 -1
- package/dist/elements/public/StoreForm/StoreForm.d.ts +153 -1
- package/dist/elements/public/StoreForm/StoreForm.js +191 -27
- package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
- package/dist/elements/public/StoreForm/index.d.ts +1 -0
- package/dist/elements/public/StoreForm/index.js +1 -0
- package/dist/elements/public/StoreForm/index.js.map +1 -1
- package/dist/elements/public/StoreForm/types.d.ts +94 -0
- package/dist/elements/public/StoreForm/types.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.d.ts +46 -1
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js +85 -29
- package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/index.d.ts +1 -3
- package/dist/elements/public/StoreShippingMethodForm/index.js +1 -3
- package/dist/elements/public/StoreShippingMethodForm/index.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesControl/InternalStoreShippingMethodFormServicesControl.d.ts +1 -1
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesControl/InternalStoreShippingMethodFormServicesControl.js +3 -3
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesControl/InternalStoreShippingMethodFormServicesControl.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPage/InternalStoreShippingMethodFormServicesPage.d.ts +4 -4
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPage/InternalStoreShippingMethodFormServicesPage.js +6 -6
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPage/InternalStoreShippingMethodFormServicesPage.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItem/InternalStoreShippingMethodFormServicesPageItem.d.ts +4 -4
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItem/InternalStoreShippingMethodFormServicesPageItem.js +3 -3
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItem/InternalStoreShippingMethodFormServicesPageItem.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItemContent/InternalStoreShippingMethodFormServicesPageItemContent.d.ts +4 -4
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItemContent/InternalStoreShippingMethodFormServicesPageItemContent.js +3 -3
- package/dist/elements/public/StoreShippingMethodForm/internal/InternalStoreShippingMethodFormServicesPageItemContent/InternalStoreShippingMethodFormServicesPageItemContent.js.map +1 -1
- package/dist/elements/public/StoreShippingMethodForm/types.d.ts +33 -1
- package/dist/elements/public/StoreShippingMethodForm/types.js.map +1 -1
- package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.d.ts +50 -1
- package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.js +49 -0
- package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.js.map +1 -1
- package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/globalStyles.js +1 -1
- package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/globalStyles.js.map +1 -1
- package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.d.ts +1 -0
- package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.js +1 -0
- package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.js.map +1 -1
- package/dist/elements/public/SubscriptionSettingsForm/types.d.ts +33 -1
- package/dist/elements/public/SubscriptionSettingsForm/types.js.map +1 -1
- package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js +4 -1
- package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js.map +1 -1
- package/dist/elements/public/TemplateForm/TemplateForm.js +10 -2
- package/dist/elements/public/TemplateForm/TemplateForm.js.map +1 -1
- package/dist/elements/public/TemplateSetCard/TemplateSetCard.d.ts +1 -1
- package/dist/elements/public/TemplateSetCard/TemplateSetCard.js +2 -2
- package/dist/elements/public/TemplateSetCard/TemplateSetCard.js.map +1 -1
- package/dist/mixins/themeable.js +19 -8
- package/dist/mixins/themeable.js.map +1 -1
- package/package.json +2 -1
- package/dist/cdn/shared-0301f5c5.js +0 -1
- package/dist/cdn/shared-324f9551.js +0 -1
- package/dist/cdn/shared-4cbd9a4f.js +0 -1
- package/dist/cdn/shared-7304a1ab.js +0 -1
- package/dist/cdn/shared-9291d900.js +0 -1
- package/dist/cdn/shared-ad3c1ddc.js +0 -1
- package/dist/cdn/shared-c6567654.js +0 -1
- package/dist/cdn/shared-d6a78c23.js +0 -82
|
@@ -7,15 +7,120 @@ import set from 'lodash-es/set';
|
|
|
7
7
|
import get from 'lodash-es/get';
|
|
8
8
|
const NS = 'cart-form';
|
|
9
9
|
const Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));
|
|
10
|
+
/**
|
|
11
|
+
* Form element for creating or editing carts (`fx:cart`).
|
|
12
|
+
*
|
|
13
|
+
* @slot customer-type:before
|
|
14
|
+
* @slot customer-type:after
|
|
15
|
+
*
|
|
16
|
+
* @slot customer:before
|
|
17
|
+
* @slot customer:after
|
|
18
|
+
*
|
|
19
|
+
* @slot template-set-uri:before
|
|
20
|
+
* @slot template-set-uri:after
|
|
21
|
+
*
|
|
22
|
+
* @slot items:before
|
|
23
|
+
* @slot items:after
|
|
24
|
+
*
|
|
25
|
+
* @slot applied-coupon-codes:before
|
|
26
|
+
* @slot applied-coupon-codes:after
|
|
27
|
+
*
|
|
28
|
+
* @slot custom-fields:before
|
|
29
|
+
* @slot custom-fields:after
|
|
30
|
+
*
|
|
31
|
+
* @slot attributes:before
|
|
32
|
+
* @slot attributes:after
|
|
33
|
+
*
|
|
34
|
+
* @slot billing-first-name:before
|
|
35
|
+
* @slot billing-first-name:after
|
|
36
|
+
*
|
|
37
|
+
* @slot billing-last-name:before
|
|
38
|
+
* @slot billing-last-name:after
|
|
39
|
+
*
|
|
40
|
+
* @slot billing-company:before
|
|
41
|
+
* @slot billing-company:after
|
|
42
|
+
*
|
|
43
|
+
* @slot billing-phone:before
|
|
44
|
+
* @slot billing-phone:after
|
|
45
|
+
*
|
|
46
|
+
* @slot billing-address-one:before
|
|
47
|
+
* @slot billing-address-one:after
|
|
48
|
+
*
|
|
49
|
+
* @slot billing-address-two:before
|
|
50
|
+
* @slot billing-address-two:after
|
|
51
|
+
*
|
|
52
|
+
* @slot billing-country:before
|
|
53
|
+
* @slot billing-country:after
|
|
54
|
+
*
|
|
55
|
+
* @slot billing-region:before
|
|
56
|
+
* @slot billing-region:after
|
|
57
|
+
*
|
|
58
|
+
* @slot billing-city:before
|
|
59
|
+
* @slot billing-city:after
|
|
60
|
+
*
|
|
61
|
+
* @slot billing-postal-code:before
|
|
62
|
+
* @slot billing-postal-code:after
|
|
63
|
+
*
|
|
64
|
+
* @slot shipping-first-name:before
|
|
65
|
+
* @slot shipping-first-name:after
|
|
66
|
+
*
|
|
67
|
+
* @slot shipping-last-name:before
|
|
68
|
+
* @slot shipping-last-name:after
|
|
69
|
+
*
|
|
70
|
+
* @slot shipping-company:before
|
|
71
|
+
* @slot shipping-company:after
|
|
72
|
+
*
|
|
73
|
+
* @slot shipping-phone:before
|
|
74
|
+
* @slot shipping-phone:after
|
|
75
|
+
*
|
|
76
|
+
* @slot shipping-address-one:before
|
|
77
|
+
* @slot shipping-address-one:after
|
|
78
|
+
*
|
|
79
|
+
* @slot shipping-address-two:before
|
|
80
|
+
* @slot shipping-address-two:after
|
|
81
|
+
*
|
|
82
|
+
* @slot shipping-country:before
|
|
83
|
+
* @slot shipping-country:after
|
|
84
|
+
*
|
|
85
|
+
* @slot shipping-region:before
|
|
86
|
+
* @slot shipping-region:after
|
|
87
|
+
*
|
|
88
|
+
* @slot shipping-city:before
|
|
89
|
+
* @slot shipping-city:after
|
|
90
|
+
*
|
|
91
|
+
* @slot shipping-postal-code:before
|
|
92
|
+
* @slot shipping-postal-code:after
|
|
93
|
+
*
|
|
94
|
+
* @slot view-as-customer:before
|
|
95
|
+
* @slot view-as-customer:after
|
|
96
|
+
*
|
|
97
|
+
* @slot delete:before
|
|
98
|
+
* @slot delete:after
|
|
99
|
+
*
|
|
100
|
+
* @slot create:before
|
|
101
|
+
* @slot create:after
|
|
102
|
+
*
|
|
103
|
+
* @element foxy-cart-form
|
|
104
|
+
* @since 1.21.0
|
|
105
|
+
*/
|
|
10
106
|
export class CartForm extends Base {
|
|
11
107
|
constructor() {
|
|
12
108
|
super(...arguments);
|
|
109
|
+
/** URL of the `fx:item_categories` collection for the store. */
|
|
13
110
|
this.itemCategories = null;
|
|
111
|
+
/** URL of the `fx:template_sets` collection for the store. */
|
|
14
112
|
this.templateSets = null;
|
|
113
|
+
/** URL of the `fx:locale_codes` property helper. */
|
|
15
114
|
this.localeCodes = null;
|
|
115
|
+
/** URL of the `fx:customers` collection for the store. */
|
|
16
116
|
this.customers = null;
|
|
117
|
+
/** URL of the `fx:countries` property helper. */
|
|
17
118
|
this.countries = null;
|
|
119
|
+
/** Template render functions mapped to their name. */
|
|
120
|
+
this.templates = {};
|
|
121
|
+
/** URL of the `fx:regions` property helper. */
|
|
18
122
|
this.regions = null;
|
|
123
|
+
/** URL of the `fx:coupons` collection for the store. */
|
|
19
124
|
this.coupons = null;
|
|
20
125
|
this.__defaultTemplateSetLoaderId = 'defaultTemplateSetLoader';
|
|
21
126
|
this.__localeCodesHelperLoaderId = 'localeCodesLoader';
|
|
@@ -84,28 +189,28 @@ export class CartForm extends Base {
|
|
|
84
189
|
}
|
|
85
190
|
static get v8n() {
|
|
86
191
|
return [
|
|
87
|
-
({ billing_first_name: v }) => !v || v.length <= 50 || '
|
|
88
|
-
({ billing_last_name: v }) => !v || v.length <= 50 || '
|
|
89
|
-
({ billing_region: v }) => !v || v.length <= 50 || '
|
|
90
|
-
({ billing_city: v }) => !v || v.length <= 50 || '
|
|
91
|
-
({ billing_phone: v }) => !v || v.length <= 50 || '
|
|
92
|
-
({ billing_company: v }) => !v || v.length <= 50 || '
|
|
93
|
-
({ billing_address2: v }) => !v || v.length <= 100 || '
|
|
94
|
-
({ billing_address1: v }) => !v || v.length <= 100 || '
|
|
95
|
-
({ billing_postal_code: v }) => !v || v.length <= 50 || '
|
|
96
|
-
({ shipping_first_name: v }) => !v || v.length <= 50 || '
|
|
97
|
-
({ shipping_last_name: v }) => !v || v.length <= 50 || '
|
|
98
|
-
({ shipping_region: v }) => !v || v.length <= 50 || '
|
|
99
|
-
({ shipping_city: v }) => !v || v.length <= 50 || '
|
|
100
|
-
({ shipping_phone: v }) => !v || v.length <= 50 || '
|
|
101
|
-
({ shipping_company: v }) => !v || v.length <= 50 || '
|
|
102
|
-
({ shipping_address2: v }) => !v || v.length <= 100 || '
|
|
103
|
-
({ shipping_address1: v }) => !v || v.length <= 100 || '
|
|
104
|
-
({ shipping_postal_code: v }) => !v || v.length <= 50 || '
|
|
192
|
+
({ billing_first_name: v }) => !v || v.length <= 50 || 'billing-first-name:v8n_too_long',
|
|
193
|
+
({ billing_last_name: v }) => !v || v.length <= 50 || 'billing-last-name:v8n_too_long',
|
|
194
|
+
({ billing_region: v }) => !v || v.length <= 50 || 'billing-region:v8n_too_long',
|
|
195
|
+
({ billing_city: v }) => !v || v.length <= 50 || 'billing-city:v8n_too_long',
|
|
196
|
+
({ billing_phone: v }) => !v || v.length <= 50 || 'billing-phone:v8n_too_long',
|
|
197
|
+
({ billing_company: v }) => !v || v.length <= 50 || 'billing-company:v8n_too_long',
|
|
198
|
+
({ billing_address2: v }) => !v || v.length <= 100 || 'billing-address-two:v8n_too_long',
|
|
199
|
+
({ billing_address1: v }) => !v || v.length <= 100 || 'billing-address-one:v8n_too_long',
|
|
200
|
+
({ billing_postal_code: v }) => !v || v.length <= 50 || 'billing-postal-code:v8n_too_long',
|
|
201
|
+
({ shipping_first_name: v }) => !v || v.length <= 50 || 'shipping-first-name:v8n_too_long',
|
|
202
|
+
({ shipping_last_name: v }) => !v || v.length <= 50 || 'shipping-last-name:v8n_too_long',
|
|
203
|
+
({ shipping_region: v }) => !v || v.length <= 50 || 'shipping-region:v8n_too_long',
|
|
204
|
+
({ shipping_city: v }) => !v || v.length <= 50 || 'shipping-city:v8n_too_long',
|
|
205
|
+
({ shipping_phone: v }) => !v || v.length <= 50 || 'shipping-phone:v8n_too_long',
|
|
206
|
+
({ shipping_company: v }) => !v || v.length <= 50 || 'shipping-company:v8n_too_long',
|
|
207
|
+
({ shipping_address2: v }) => !v || v.length <= 100 || 'shipping-address-two:v8n_too_long',
|
|
208
|
+
({ shipping_address1: v }) => !v || v.length <= 100 || 'shipping-address-one:v8n_too_long',
|
|
209
|
+
({ shipping_postal_code: v }) => !v || v.length <= 50 || 'shipping-postal-code:v8n_too_long',
|
|
105
210
|
];
|
|
106
211
|
}
|
|
107
212
|
renderBody() {
|
|
108
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m
|
|
213
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
109
214
|
const shippingRegions = Object.values((_a = this.__shippingRegions) !== null && _a !== void 0 ? _a : {});
|
|
110
215
|
const billingRegions = Object.values((_b = this.__billingRegions) !== null && _b !== void 0 ? _b : {});
|
|
111
216
|
const countries = Object.values((_c = this.__countriesHelper) !== null && _c !== void 0 ? _c : {});
|
|
@@ -136,14 +241,18 @@ export class CartForm extends Base {
|
|
|
136
241
|
<foxy-item-card
|
|
137
242
|
locale-codes=${this.localeCodes}
|
|
138
243
|
parent=${ctx.parent}
|
|
139
|
-
style="padding: calc(0.625em + (var(--lumo-border-radius) / 4) - 1px)"
|
|
140
244
|
infer=""
|
|
141
245
|
href=${ctx.href}
|
|
142
246
|
.related=${ctx.related}
|
|
143
247
|
>
|
|
144
248
|
</foxy-item-card>
|
|
145
249
|
`;
|
|
146
|
-
const
|
|
250
|
+
const store = this.__store;
|
|
251
|
+
const currencyDisplay = store
|
|
252
|
+
? store.use_international_currency_symbol
|
|
253
|
+
? 'code'
|
|
254
|
+
: 'symbol'
|
|
255
|
+
: void 0;
|
|
147
256
|
let currencyCode = null;
|
|
148
257
|
if ('currency_code' in this.form) {
|
|
149
258
|
// TODO: remove the directive below once the SDK is updated
|
|
@@ -152,10 +261,10 @@ export class CartForm extends Base {
|
|
|
152
261
|
}
|
|
153
262
|
else {
|
|
154
263
|
const allLocaleCodes = this.__localeCodesHelper;
|
|
155
|
-
const localeCode = (
|
|
264
|
+
const localeCode = (_f = ((_e = this.__templateSet) !== null && _e !== void 0 ? _e : this.__defaultTemplateSet)) === null || _f === void 0 ? void 0 : _f.locale_code;
|
|
156
265
|
const localeInfo = localeCode ? allLocaleCodes === null || allLocaleCodes === void 0 ? void 0 : allLocaleCodes.values[localeCode] : void 0;
|
|
157
266
|
if (localeInfo)
|
|
158
|
-
currencyCode = (
|
|
267
|
+
currencyCode = (_h = (_g = /Currency: ([A-Z]{3})/g.exec(localeInfo)) === null || _g === void 0 ? void 0 : _g[1]) !== null && _h !== void 0 ? _h : null;
|
|
159
268
|
}
|
|
160
269
|
return html `
|
|
161
270
|
<foxy-nucleon
|
|
@@ -281,7 +390,7 @@ export class CartForm extends Base {
|
|
|
281
390
|
first=${ifDefined(this.templateSets)}
|
|
282
391
|
class="sm-col-span-2"
|
|
283
392
|
infer="template-set-uri"
|
|
284
|
-
.selectedItem=${(
|
|
393
|
+
.selectedItem=${(_j = this.__templateSet) !== null && _j !== void 0 ? _j : null}
|
|
285
394
|
>
|
|
286
395
|
</foxy-internal-async-combo-box-control>
|
|
287
396
|
|
|
@@ -298,7 +407,7 @@ export class CartForm extends Base {
|
|
|
298
407
|
<foxy-internal-async-list-control
|
|
299
408
|
infer="applied-coupon-codes"
|
|
300
409
|
class="min-w-0 sm-col-span-2"
|
|
301
|
-
first=${ifDefined((
|
|
410
|
+
first=${ifDefined((_k = this.data) === null || _k === void 0 ? void 0 : _k._links['fx:applied_coupon_codes'].href)}
|
|
302
411
|
limit="5"
|
|
303
412
|
item="foxy-applied-coupon-code-card"
|
|
304
413
|
form=${ifDefined(this.data ? 'foxy-applied-coupon-code-form' : void 0)}
|
|
@@ -309,7 +418,7 @@ export class CartForm extends Base {
|
|
|
309
418
|
<foxy-internal-async-list-control
|
|
310
419
|
infer="custom-fields"
|
|
311
420
|
class="min-w-0"
|
|
312
|
-
first=${ifDefined((
|
|
421
|
+
first=${ifDefined((_l = this.data) === null || _l === void 0 ? void 0 : _l._links['fx:custom_fields'].href)}
|
|
313
422
|
limit="5"
|
|
314
423
|
item="foxy-custom-field-card"
|
|
315
424
|
form=${ifDefined(this.data ? 'foxy-custom-field-form' : void 0)}
|
|
@@ -320,7 +429,7 @@ export class CartForm extends Base {
|
|
|
320
429
|
<foxy-internal-async-list-control
|
|
321
430
|
infer="attributes"
|
|
322
431
|
class="min-w-0"
|
|
323
|
-
first=${ifDefined((
|
|
432
|
+
first=${ifDefined((_m = this.data) === null || _m === void 0 ? void 0 : _m._links['fx:attributes'].href)}
|
|
324
433
|
limit="5"
|
|
325
434
|
item="foxy-attribute-card"
|
|
326
435
|
form=${ifDefined(this.data ? 'foxy-attribute-form' : void 0)}
|
|
@@ -351,10 +460,18 @@ export class CartForm extends Base {
|
|
|
351
460
|
<foxy-internal-text-control infer="billing-company"></foxy-internal-text-control>
|
|
352
461
|
<foxy-internal-text-control infer="billing-phone"></foxy-internal-text-control>
|
|
353
462
|
|
|
354
|
-
<foxy-internal-text-control
|
|
463
|
+
<foxy-internal-text-control
|
|
464
|
+
property="billing_address1"
|
|
465
|
+
infer="billing-address-one"
|
|
466
|
+
class="col-span-2"
|
|
467
|
+
>
|
|
355
468
|
</foxy-internal-text-control>
|
|
356
469
|
|
|
357
|
-
<foxy-internal-text-control
|
|
470
|
+
<foxy-internal-text-control
|
|
471
|
+
property="billing_address2"
|
|
472
|
+
infer="billing-address-two"
|
|
473
|
+
class="col-span-2"
|
|
474
|
+
>
|
|
358
475
|
</foxy-internal-text-control>
|
|
359
476
|
|
|
360
477
|
<foxy-internal-select-control infer="billing-country" .options=${countryOptions}>
|
|
@@ -391,10 +508,18 @@ export class CartForm extends Base {
|
|
|
391
508
|
<foxy-internal-text-control infer="shipping-company"></foxy-internal-text-control>
|
|
392
509
|
<foxy-internal-text-control infer="shipping-phone"></foxy-internal-text-control>
|
|
393
510
|
|
|
394
|
-
<foxy-internal-text-control
|
|
511
|
+
<foxy-internal-text-control
|
|
512
|
+
property="shipping_address1"
|
|
513
|
+
infer="shipping-address-one"
|
|
514
|
+
class="col-span-2"
|
|
515
|
+
>
|
|
395
516
|
</foxy-internal-text-control>
|
|
396
517
|
|
|
397
|
-
<foxy-internal-text-control
|
|
518
|
+
<foxy-internal-text-control
|
|
519
|
+
property="shipping_address2"
|
|
520
|
+
infer="shipping-address-two"
|
|
521
|
+
class="col-span-2"
|
|
522
|
+
>
|
|
398
523
|
</foxy-internal-text-control>
|
|
399
524
|
|
|
400
525
|
<foxy-internal-select-control infer="shipping-country" .options=${countryOptions}>
|
|
@@ -567,7 +692,7 @@ export class CartForm extends Base {
|
|
|
567
692
|
}
|
|
568
693
|
__renderTotalOrder(currency, currencyDisplay) {
|
|
569
694
|
const data = this.data;
|
|
570
|
-
if (!data)
|
|
695
|
+
if (!data || !currency || !currencyDisplay)
|
|
571
696
|
return html `--`;
|
|
572
697
|
const options = { amount: `${data.total_order} ${currency}`, currencyDisplay };
|
|
573
698
|
return html `<foxy-i18n infer="totals" key="total_order" .options=${options}></foxy-i18n>`;
|
|
@@ -575,12 +700,13 @@ export class CartForm extends Base {
|
|
|
575
700
|
__renderTotals(currency, currencyDisplay) {
|
|
576
701
|
const keys = ['total_item_price', 'total_shipping', 'total_tax'];
|
|
577
702
|
const data = this.data;
|
|
703
|
+
const isPriceReady = data && currency && currencyDisplay;
|
|
578
704
|
return keys.map(key => {
|
|
579
705
|
const options = { amount: `${data === null || data === void 0 ? void 0 : data[key]} ${currency}`, currencyDisplay };
|
|
580
706
|
return html `
|
|
581
|
-
<div class="flex justify-between text-m text-secondary">
|
|
707
|
+
<div data-testid=${key} class="flex justify-between text-m text-secondary">
|
|
582
708
|
<foxy-i18n key=${key} infer="totals"></foxy-i18n>
|
|
583
|
-
${
|
|
709
|
+
${isPriceReady
|
|
584
710
|
? html `<foxy-i18n infer="totals" key="price" .options=${options}></foxy-i18n>`
|
|
585
711
|
: html `<span>--</span>`}
|
|
586
712
|
</div>
|
|
@@ -589,12 +715,16 @@ export class CartForm extends Base {
|
|
|
589
715
|
}
|
|
590
716
|
__renderDiscounts(currency, currencyDisplay) {
|
|
591
717
|
var _a, _b;
|
|
592
|
-
|
|
718
|
+
const discounts = (_b = (_a = this.__discounts) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b._embedded['fx:discounts'];
|
|
719
|
+
const isPriceReady = currency && currencyDisplay;
|
|
720
|
+
return discounts === null || discounts === void 0 ? void 0 : discounts.map(discount => {
|
|
593
721
|
const options = { amount: `${discount.amount} ${currency}`, currencyDisplay };
|
|
594
722
|
return html `
|
|
595
|
-
<div class="flex justify-between text-m text-secondary">
|
|
723
|
+
<div data-testclass="discount" class="flex justify-between text-m text-secondary">
|
|
596
724
|
<span>${discount.name} • ${discount.code}</span>
|
|
597
|
-
|
|
725
|
+
${isPriceReady
|
|
726
|
+
? html `<foxy-i18n infer="totals" key="price" .options=${options}></foxy-i18n>`
|
|
727
|
+
: html `<span>--</span>`}
|
|
598
728
|
</div>
|
|
599
729
|
`;
|
|
600
730
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CartForm.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/CartForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { FormRenderer } from '../FormDialog/types';\nimport type { ItemRenderer } from '../CollectionPage/types';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\nimport set from 'lodash-es/set';\nimport get from 'lodash-es/get';\n\nconst NS = 'cart-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\nexport class CartForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n itemCategories: { attribute: 'item-categories' },\n templateSets: { attribute: 'template-sets' },\n localeCodes: { attribute: 'locale-codes' },\n customers: {},\n countries: {},\n regions: {},\n coupons: {},\n __isGuestMode: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ billing_first_name: v }) => !v || v.length <= 50 || 'billing_first_name:v8n_too_long',\n ({ billing_last_name: v }) => !v || v.length <= 50 || 'billing_last_name:v8n_too_long',\n ({ billing_region: v }) => !v || v.length <= 50 || 'billing_region:v8n_too_long',\n ({ billing_city: v }) => !v || v.length <= 50 || 'billing_city:v8n_too_long',\n ({ billing_phone: v }) => !v || v.length <= 50 || 'billing_phone:v8n_too_long',\n ({ billing_company: v }) => !v || v.length <= 50 || 'billing_company:v8n_too_long',\n ({ billing_address2: v }) => !v || v.length <= 100 || 'billing_address2:v8n_too_long',\n ({ billing_address1: v }) => !v || v.length <= 100 || 'billing_address1:v8n_too_long',\n ({ billing_postal_code: v }) => !v || v.length <= 50 || 'billing_postal_code:v8n_too_long',\n ({ shipping_first_name: v }) => !v || v.length <= 50 || 'shipping_first_name:v8n_too_long',\n ({ shipping_last_name: v }) => !v || v.length <= 50 || 'shipping_last_name:v8n_too_long',\n ({ shipping_region: v }) => !v || v.length <= 50 || 'shipping_region:v8n_too_long',\n ({ shipping_city: v }) => !v || v.length <= 50 || 'shipping_city:v8n_too_long',\n ({ shipping_phone: v }) => !v || v.length <= 50 || 'shipping_phone:v8n_too_long',\n ({ shipping_company: v }) => !v || v.length <= 50 || 'shipping_company:v8n_too_long',\n ({ shipping_address2: v }) => !v || v.length <= 100 || 'shipping_address2:v8n_too_long',\n ({ shipping_address1: v }) => !v || v.length <= 100 || 'shipping_address1:v8n_too_long',\n ({ shipping_postal_code: v }) => !v || v.length <= 50 || 'shipping_postal_code:v8n_too_long',\n ];\n }\n\n itemCategories: string | null = null;\n\n templateSets: string | null = null;\n\n localeCodes: string | null = null;\n\n customers: string | null = null;\n\n countries: string | null = null;\n\n regions: string | null = null;\n\n coupons: string | null = null;\n\n private readonly __defaultTemplateSetLoaderId = 'defaultTemplateSetLoader';\n\n private readonly __localeCodesHelperLoaderId = 'localeCodesLoader';\n\n private readonly __shippingRegionsLoaderId = 'shippingRegionsLoader';\n\n private readonly __billingRegionsLoaderId = 'billingRegionsLoader';\n\n private readonly __templateSetLoaderId = 'templateSetLoader';\n\n private readonly __countriesHelperLoaderId = 'countriesHelperLoader';\n\n private readonly __discountsLoaderId = 'discountsLoader';\n\n private readonly __customerLoaderId = 'customerLoader';\n\n private readonly __storeLoaderId = 'storeLoader';\n\n private readonly __customerTypeGetValue = () => {\n if (!this.form.customer_uri) return 'new';\n return this.__customer?.is_anonymous ? 'guest' : 'regular';\n };\n\n private readonly __customerTypeSetValue = (newValue: string) => {\n this.edit({ customer_uri: '', customer_email: '' });\n this.__isGuestMode = newValue === 'guest';\n };\n\n private readonly __customerTypeOptions = [\n { label: 'option_new', value: 'new' },\n { label: 'option_guest', value: 'guest' },\n { label: 'option_regular', value: 'regular' },\n ];\n\n private readonly __customerGetValue = () => {\n return this.form.customer_uri || this.form.customer_email;\n };\n\n private readonly __customerSetValue = (newValue: string) => {\n try {\n // if newValue isn't a fx:customer URI this will error\n new URL(newValue);\n\n // filter customer_email out of edits because when supplying the customer_uri the email must\n // be that customer's email and it might not be immediately available at the time this getter is called\n const newEdits: Partial<Data> = {};\n const data = this.data;\n const form = this.form;\n\n for (const key in this.form) {\n if (key === 'customer_email') continue;\n const formValue = get(form, key);\n if (get(data, key) !== formValue) set(newEdits, key, formValue);\n }\n\n this.undo();\n this.edit({ ...newEdits, customer_uri: newValue });\n } catch {\n this.edit({ customer_uri: '', customer_email: newValue });\n }\n };\n\n private __isGuestMode = false;\n\n renderBody(): TemplateResult {\n const shippingRegions = Object.values(this.__shippingRegions ?? {});\n const billingRegions = Object.values(this.__billingRegions ?? {});\n const countries = Object.values(this.__countriesHelper ?? {});\n\n const shippingRegionOptions = shippingRegions.map(r => ({ label: r.default, value: r.code }));\n const billingRegionOptions = billingRegions.map(r => ({ label: r.default, value: r.code }));\n const countryOptions = countries.map(c => ({ label: c.default, value: c.cc2 }));\n\n const customerAddresses = this.__customer?._links['fx:customer_addresses'].href;\n\n const renderItemForm: FormRenderer = ctx => html`\n <foxy-item-form\n customer-addresses=${ifDefined(customerAddresses ?? void 0)}\n item-categories=${ifDefined(this.itemCategories ?? void 0)}\n locale-codes=${ifDefined(this.localeCodes ?? void 0)}\n coupons=${ifDefined(this.coupons ?? void 0)}\n parent=${ctx.dialog.parent}\n href=${ctx.dialog.href}\n infer=\"\"\n id=\"form\"\n .related=${ctx.dialog.related}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-item-form>\n `;\n\n const renderItemCard: ItemRenderer = ctx => html`\n <foxy-item-card\n locale-codes=${this.localeCodes}\n parent=${ctx.parent}\n style=\"padding: calc(0.625em + (var(--lumo-border-radius) / 4) - 1px)\"\n infer=\"\"\n href=${ctx.href}\n .related=${ctx.related}\n >\n </foxy-item-card>\n `;\n\n const currencyDisplay = this.__store?.use_international_currency_symbol ? 'code' : 'symbol';\n\n let currencyCode: string | null = null;\n\n if ('currency_code' in this.form) {\n // TODO: remove the directive below once the SDK is updated\n // @ts-expect-error SDK types are incomplete\n currencyCode = this.form.currency_code;\n } else {\n const allLocaleCodes = this.__localeCodesHelper;\n const localeCode = (this.__templateSet ?? this.__defaultTemplateSet)?.locale_code;\n const localeInfo = localeCode ? allLocaleCodes?.values[localeCode] : void 0;\n\n if (localeInfo) currencyCode = /Currency: ([A-Z]{3})/g.exec(localeInfo)?.[1] ?? null;\n }\n\n return html`\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__shippingRegionsHref)}\n id=${this.__shippingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__billingRegionsHref)}\n id=${this.__billingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__countriesHref)}\n id=${this.__countriesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__customerHref)}\n id=${this.__customerLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__discountsHref)}\n id=${this.__discountsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__defaultTemplateSetHref)}\n id=${this.__defaultTemplateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__localeCodesHelperHref)}\n id=${this.__localeCodesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__templateSetHref)}\n id=${this.__templateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__storeHref)}\n id=${this.__storeLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <div class=\"grid sm-grid-cols-2 gap-l\">\n <div class=\"sm-col-span-2\">\n <foxy-i18n class=\"text-l font-bold leading-s block\" infer=\"\" key=\"order_section_title\">\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"order_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <foxy-internal-select-control\n infer=\"customer-type\"\n .getValue=${this.__customerTypeGetValue}\n .setValue=${this.__customerTypeSetValue}\n .options=${this.__customerTypeOptions}\n @update=${() => this.requestUpdate()}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"email\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.__customersHref)}\n infer=\"customer\"\n allow-custom-value\n .selectedItem=${this.__customer}\n .getValue=${this.__customerGetValue}\n .setValue=${this.__customerSetValue}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"description\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.templateSets)}\n class=\"sm-col-span-2\"\n infer=\"template-set-uri\"\n .selectedItem=${this.__templateSet ?? null}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-list-control\n infer=\"items\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.__itemsHref)}\n limit=\"5\"\n .item=${renderItemCard}\n .form=${this.data ? renderItemForm : null}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"applied-coupon-codes\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.data?._links['fx:applied_coupon_codes'].href)}\n limit=\"5\"\n item=\"foxy-applied-coupon-code-card\"\n form=${ifDefined(this.data ? 'foxy-applied-coupon-code-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"custom-fields\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:custom_fields'].href)}\n limit=\"5\"\n item=\"foxy-custom-field-card\"\n form=${ifDefined(this.data ? 'foxy-custom-field-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"attributes\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:attributes'].href)}\n limit=\"5\"\n item=\"foxy-attribute-card\"\n form=${ifDefined(this.data ? 'foxy-attribute-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-bold leading-s block\"\n infer=\"\"\n key=\"billing_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"billing_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"billing-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control infer=\"billing-address1\" class=\"col-span-2\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control infer=\"billing-address2\" class=\"col-span-2\">\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"billing-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"billing-region\" .options=${billingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"billing-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-bold leading-s block\"\n infer=\"\"\n key=\"shipping_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"shipping_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"shipping-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control infer=\"shipping-address1\" class=\"col-span-2\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control infer=\"shipping-address2\" class=\"col-span-2\">\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"shipping-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"shipping-region\" .options=${shippingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"shipping-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"leading-m sm-col-span-2\">\n <div class=\"text-xl font-bold mb-s\">\n ${this.__renderTotalOrder(currencyCode, currencyDisplay)}\n </div>\n <div class=\"border-t border-contrast-10 mb-s\"></div>\n ${this.__renderTotals(currencyCode, currencyDisplay)}\n ${this.__renderDiscounts(currencyCode, currencyDisplay)}\n </div>\n\n ${this.data\n ? html`\n <div class=\"grid gap-s sm-grid-cols-2 sm-gap-l sm-col-span-2\">\n <foxy-internal-cart-form-view-as-customer-control infer=\"view-as-customer\">\n </foxy-internal-cart-form-view-as-customer-control>\n <foxy-internal-delete-control infer=\"delete\"></foxy-internal-delete-control>\n </div>\n `\n : html`<foxy-internal-create-control infer=\"create\"></foxy-internal-create-control>`}\n </div>\n `;\n }\n\n private get __defaultTemplateSetHref() {\n const templateSetUri = this.data?.template_set_uri;\n\n if (templateSetUri === '') {\n try {\n const url = new URL(this.__store?._links['fx:template_sets'].href ?? '');\n url.searchParams.set('code', 'DEFAULT');\n return url.toString();\n } catch {\n //\n }\n }\n }\n\n private get __localeCodesHelperHref() {\n if (this.__defaultTemplateSetHref || this.__templateSetHref) {\n return this.localeCodes ?? void 0;\n }\n }\n\n private get __shippingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.shipping_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __billingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.billing_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __templateSetHref() {\n return this.form.template_set_uri || void 0;\n }\n\n private get __customersHref() {\n try {\n const url = new URL(this.customers ?? '');\n url.searchParams.set('is_anonymous', this.__isGuestMode ? '1' : '0');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __countriesHref() {\n return this.countries ?? void 0;\n }\n\n private get __discountsHref() {\n try {\n const url = new URL(this.data?._links['fx:discounts'].href ?? '');\n url.searchParams.set('limit', '300');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __customerHref() {\n return this.form.customer_uri || void 0;\n }\n\n private get __itemsHref() {\n try {\n const url = new URL(this.data?._links['fx:items'].href ?? '');\n url.searchParams.set('zoom', 'item_options');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __storeHref() {\n return this.data?._links['fx:store']?.href;\n }\n\n private get __defaultTemplateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSets>>;\n const selector = `#${this.__defaultTemplateSetLoaderId}`;\n const loader = this.renderRoot.querySelector<Loader>(selector);\n return loader?.data?._embedded['fx:template_sets'][0] ?? null;\n }\n\n private get __localeCodesHelper() {\n type Loader = NucleonElement<Resource<Rels.LocaleCodes>>;\n const selector = `#${this.__localeCodesHelperLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __shippingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__shippingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __billingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__billingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __templateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSet>>;\n const selector = `#${this.__templateSetLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __discounts() {\n type Loader = NucleonElement<Resource<Rels.Discounts>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__discountsLoaderId}`);\n }\n\n private get __countriesHelper() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__countriesHelperLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __customer() {\n type Loader = NucleonElement<Resource<Rels.Customer>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__customerLoaderId}`)?.data;\n }\n\n private get __store() {\n type Loader = NucleonElement<Resource<Rels.Store>>;\n const selector = `#${this.__storeLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private __renderTotalOrder(currency: string | null, currencyDisplay: string | undefined) {\n const data = this.data;\n if (!data) return html`--`;\n\n const options = { amount: `${data.total_order} ${currency}`, currencyDisplay };\n return html`<foxy-i18n infer=\"totals\" key=\"total_order\" .options=${options}></foxy-i18n>`;\n }\n\n private __renderTotals(currency: string | null, currencyDisplay: string | undefined) {\n const keys = ['total_item_price', 'total_shipping', 'total_tax'] as const;\n const data = this.data;\n\n return keys.map(key => {\n const options = { amount: `${data?.[key]} ${currency}`, currencyDisplay };\n\n return html`\n <div class=\"flex justify-between text-m text-secondary\">\n <foxy-i18n key=${key} infer=\"totals\"></foxy-i18n>\n ${data\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n\n private __renderDiscounts(currency: string | null, currencyDisplay: string | undefined) {\n return this.__discounts?.data?._embedded['fx:discounts'].map(discount => {\n const options = { amount: `${discount.amount} ${currency}`, currencyDisplay };\n\n return html`\n <div class=\"flex justify-between text-m text-secondary\">\n <span>${discount.name} • ${discount.code}</span>\n <foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>\n </div>\n `;\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CartForm.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/CartForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { Templates, Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { FormRenderer } from '../FormDialog/types';\nimport type { ItemRenderer } from '../CollectionPage/types';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\nimport set from 'lodash-es/set';\nimport get from 'lodash-es/get';\n\nconst NS = 'cart-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for creating or editing carts (`fx:cart`).\n *\n * @slot customer-type:before\n * @slot customer-type:after\n *\n * @slot customer:before\n * @slot customer:after\n *\n * @slot template-set-uri:before\n * @slot template-set-uri:after\n *\n * @slot items:before\n * @slot items:after\n *\n * @slot applied-coupon-codes:before\n * @slot applied-coupon-codes:after\n *\n * @slot custom-fields:before\n * @slot custom-fields:after\n *\n * @slot attributes:before\n * @slot attributes:after\n *\n * @slot billing-first-name:before\n * @slot billing-first-name:after\n *\n * @slot billing-last-name:before\n * @slot billing-last-name:after\n *\n * @slot billing-company:before\n * @slot billing-company:after\n *\n * @slot billing-phone:before\n * @slot billing-phone:after\n *\n * @slot billing-address-one:before\n * @slot billing-address-one:after\n *\n * @slot billing-address-two:before\n * @slot billing-address-two:after\n *\n * @slot billing-country:before\n * @slot billing-country:after\n *\n * @slot billing-region:before\n * @slot billing-region:after\n *\n * @slot billing-city:before\n * @slot billing-city:after\n *\n * @slot billing-postal-code:before\n * @slot billing-postal-code:after\n *\n * @slot shipping-first-name:before\n * @slot shipping-first-name:after\n *\n * @slot shipping-last-name:before\n * @slot shipping-last-name:after\n *\n * @slot shipping-company:before\n * @slot shipping-company:after\n *\n * @slot shipping-phone:before\n * @slot shipping-phone:after\n *\n * @slot shipping-address-one:before\n * @slot shipping-address-one:after\n *\n * @slot shipping-address-two:before\n * @slot shipping-address-two:after\n *\n * @slot shipping-country:before\n * @slot shipping-country:after\n *\n * @slot shipping-region:before\n * @slot shipping-region:after\n *\n * @slot shipping-city:before\n * @slot shipping-city:after\n *\n * @slot shipping-postal-code:before\n * @slot shipping-postal-code:after\n *\n * @slot view-as-customer:before\n * @slot view-as-customer:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @element foxy-cart-form\n * @since 1.21.0\n */\nexport class CartForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n itemCategories: { attribute: 'item-categories' },\n templateSets: { attribute: 'template-sets' },\n localeCodes: { attribute: 'locale-codes' },\n customers: {},\n countries: {},\n regions: {},\n coupons: {},\n __isGuestMode: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ billing_first_name: v }) => !v || v.length <= 50 || 'billing-first-name:v8n_too_long',\n ({ billing_last_name: v }) => !v || v.length <= 50 || 'billing-last-name:v8n_too_long',\n ({ billing_region: v }) => !v || v.length <= 50 || 'billing-region:v8n_too_long',\n ({ billing_city: v }) => !v || v.length <= 50 || 'billing-city:v8n_too_long',\n ({ billing_phone: v }) => !v || v.length <= 50 || 'billing-phone:v8n_too_long',\n ({ billing_company: v }) => !v || v.length <= 50 || 'billing-company:v8n_too_long',\n ({ billing_address2: v }) => !v || v.length <= 100 || 'billing-address-two:v8n_too_long',\n ({ billing_address1: v }) => !v || v.length <= 100 || 'billing-address-one:v8n_too_long',\n ({ billing_postal_code: v }) => !v || v.length <= 50 || 'billing-postal-code:v8n_too_long',\n ({ shipping_first_name: v }) => !v || v.length <= 50 || 'shipping-first-name:v8n_too_long',\n ({ shipping_last_name: v }) => !v || v.length <= 50 || 'shipping-last-name:v8n_too_long',\n ({ shipping_region: v }) => !v || v.length <= 50 || 'shipping-region:v8n_too_long',\n ({ shipping_city: v }) => !v || v.length <= 50 || 'shipping-city:v8n_too_long',\n ({ shipping_phone: v }) => !v || v.length <= 50 || 'shipping-phone:v8n_too_long',\n ({ shipping_company: v }) => !v || v.length <= 50 || 'shipping-company:v8n_too_long',\n ({ shipping_address2: v }) => !v || v.length <= 100 || 'shipping-address-two:v8n_too_long',\n ({ shipping_address1: v }) => !v || v.length <= 100 || 'shipping-address-one:v8n_too_long',\n ({ shipping_postal_code: v }) => !v || v.length <= 50 || 'shipping-postal-code:v8n_too_long',\n ];\n }\n\n /** URL of the `fx:item_categories` collection for the store. */\n itemCategories: string | null = null;\n\n /** URL of the `fx:template_sets` collection for the store. */\n templateSets: string | null = null;\n\n /** URL of the `fx:locale_codes` property helper. */\n localeCodes: string | null = null;\n\n /** URL of the `fx:customers` collection for the store. */\n customers: string | null = null;\n\n /** URL of the `fx:countries` property helper. */\n countries: string | null = null;\n\n /** Template render functions mapped to their name. */\n templates: Templates = {};\n\n /** URL of the `fx:regions` property helper. */\n regions: string | null = null;\n\n /** URL of the `fx:coupons` collection for the store. */\n coupons: string | null = null;\n\n private readonly __defaultTemplateSetLoaderId = 'defaultTemplateSetLoader';\n\n private readonly __localeCodesHelperLoaderId = 'localeCodesLoader';\n\n private readonly __shippingRegionsLoaderId = 'shippingRegionsLoader';\n\n private readonly __billingRegionsLoaderId = 'billingRegionsLoader';\n\n private readonly __templateSetLoaderId = 'templateSetLoader';\n\n private readonly __countriesHelperLoaderId = 'countriesHelperLoader';\n\n private readonly __discountsLoaderId = 'discountsLoader';\n\n private readonly __customerLoaderId = 'customerLoader';\n\n private readonly __storeLoaderId = 'storeLoader';\n\n private readonly __customerTypeGetValue = () => {\n if (!this.form.customer_uri) return 'new';\n return this.__customer?.is_anonymous ? 'guest' : 'regular';\n };\n\n private readonly __customerTypeSetValue = (newValue: string) => {\n this.edit({ customer_uri: '', customer_email: '' });\n this.__isGuestMode = newValue === 'guest';\n };\n\n private readonly __customerTypeOptions = [\n { label: 'option_new', value: 'new' },\n { label: 'option_guest', value: 'guest' },\n { label: 'option_regular', value: 'regular' },\n ];\n\n private readonly __customerGetValue = () => {\n return this.form.customer_uri || this.form.customer_email;\n };\n\n private readonly __customerSetValue = (newValue: string) => {\n try {\n // if newValue isn't a fx:customer URI this will error\n new URL(newValue);\n\n // filter customer_email out of edits because when supplying the customer_uri the email must\n // be that customer's email and it might not be immediately available at the time this getter is called\n const newEdits: Partial<Data> = {};\n const data = this.data;\n const form = this.form;\n\n for (const key in this.form) {\n if (key === 'customer_email') continue;\n const formValue = get(form, key);\n if (get(data, key) !== formValue) set(newEdits, key, formValue);\n }\n\n this.undo();\n this.edit({ ...newEdits, customer_uri: newValue });\n } catch {\n this.edit({ customer_uri: '', customer_email: newValue });\n }\n };\n\n private __isGuestMode = false;\n\n renderBody(): TemplateResult {\n const shippingRegions = Object.values(this.__shippingRegions ?? {});\n const billingRegions = Object.values(this.__billingRegions ?? {});\n const countries = Object.values(this.__countriesHelper ?? {});\n\n const shippingRegionOptions = shippingRegions.map(r => ({ label: r.default, value: r.code }));\n const billingRegionOptions = billingRegions.map(r => ({ label: r.default, value: r.code }));\n const countryOptions = countries.map(c => ({ label: c.default, value: c.cc2 }));\n\n const customerAddresses = this.__customer?._links['fx:customer_addresses'].href;\n\n const renderItemForm: FormRenderer = ctx => html`\n <foxy-item-form\n customer-addresses=${ifDefined(customerAddresses ?? void 0)}\n item-categories=${ifDefined(this.itemCategories ?? void 0)}\n locale-codes=${ifDefined(this.localeCodes ?? void 0)}\n coupons=${ifDefined(this.coupons ?? void 0)}\n parent=${ctx.dialog.parent}\n href=${ctx.dialog.href}\n infer=\"\"\n id=\"form\"\n .related=${ctx.dialog.related}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-item-form>\n `;\n\n const renderItemCard: ItemRenderer = ctx => html`\n <foxy-item-card\n locale-codes=${this.localeCodes}\n parent=${ctx.parent}\n infer=\"\"\n href=${ctx.href}\n .related=${ctx.related}\n >\n </foxy-item-card>\n `;\n\n const store = this.__store;\n const currencyDisplay = store\n ? store.use_international_currency_symbol\n ? 'code'\n : 'symbol'\n : void 0;\n\n let currencyCode: string | null = null;\n\n if ('currency_code' in this.form) {\n // TODO: remove the directive below once the SDK is updated\n // @ts-expect-error SDK types are incomplete\n currencyCode = this.form.currency_code;\n } else {\n const allLocaleCodes = this.__localeCodesHelper;\n const localeCode = (this.__templateSet ?? this.__defaultTemplateSet)?.locale_code;\n const localeInfo = localeCode ? allLocaleCodes?.values[localeCode] : void 0;\n\n if (localeInfo) currencyCode = /Currency: ([A-Z]{3})/g.exec(localeInfo)?.[1] ?? null;\n }\n\n return html`\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__shippingRegionsHref)}\n id=${this.__shippingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__billingRegionsHref)}\n id=${this.__billingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__countriesHref)}\n id=${this.__countriesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__customerHref)}\n id=${this.__customerLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__discountsHref)}\n id=${this.__discountsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__defaultTemplateSetHref)}\n id=${this.__defaultTemplateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__localeCodesHelperHref)}\n id=${this.__localeCodesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__templateSetHref)}\n id=${this.__templateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__storeHref)}\n id=${this.__storeLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <div class=\"grid sm-grid-cols-2 gap-l\">\n <div class=\"sm-col-span-2\">\n <foxy-i18n class=\"text-l font-bold leading-s block\" infer=\"\" key=\"order_section_title\">\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"order_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <foxy-internal-select-control\n infer=\"customer-type\"\n .getValue=${this.__customerTypeGetValue}\n .setValue=${this.__customerTypeSetValue}\n .options=${this.__customerTypeOptions}\n @update=${() => this.requestUpdate()}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"email\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.__customersHref)}\n infer=\"customer\"\n allow-custom-value\n .selectedItem=${this.__customer}\n .getValue=${this.__customerGetValue}\n .setValue=${this.__customerSetValue}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"description\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.templateSets)}\n class=\"sm-col-span-2\"\n infer=\"template-set-uri\"\n .selectedItem=${this.__templateSet ?? null}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-list-control\n infer=\"items\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.__itemsHref)}\n limit=\"5\"\n .item=${renderItemCard}\n .form=${this.data ? renderItemForm : null}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"applied-coupon-codes\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.data?._links['fx:applied_coupon_codes'].href)}\n limit=\"5\"\n item=\"foxy-applied-coupon-code-card\"\n form=${ifDefined(this.data ? 'foxy-applied-coupon-code-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"custom-fields\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:custom_fields'].href)}\n limit=\"5\"\n item=\"foxy-custom-field-card\"\n form=${ifDefined(this.data ? 'foxy-custom-field-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"attributes\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:attributes'].href)}\n limit=\"5\"\n item=\"foxy-attribute-card\"\n form=${ifDefined(this.data ? 'foxy-attribute-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-bold leading-s block\"\n infer=\"\"\n key=\"billing_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"billing_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"billing-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address1\"\n infer=\"billing-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address2\"\n infer=\"billing-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"billing-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"billing-region\" .options=${billingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"billing-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-bold leading-s block\"\n infer=\"\"\n key=\"shipping_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"shipping_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"shipping-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address1\"\n infer=\"shipping-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address2\"\n infer=\"shipping-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"shipping-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"shipping-region\" .options=${shippingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"shipping-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"leading-m sm-col-span-2\">\n <div class=\"text-xl font-bold mb-s\">\n ${this.__renderTotalOrder(currencyCode, currencyDisplay)}\n </div>\n <div class=\"border-t border-contrast-10 mb-s\"></div>\n ${this.__renderTotals(currencyCode, currencyDisplay)}\n ${this.__renderDiscounts(currencyCode, currencyDisplay)}\n </div>\n\n ${this.data\n ? html`\n <div class=\"grid gap-s sm-grid-cols-2 sm-gap-l sm-col-span-2\">\n <foxy-internal-cart-form-view-as-customer-control infer=\"view-as-customer\">\n </foxy-internal-cart-form-view-as-customer-control>\n <foxy-internal-delete-control infer=\"delete\"></foxy-internal-delete-control>\n </div>\n `\n : html`<foxy-internal-create-control infer=\"create\"></foxy-internal-create-control>`}\n </div>\n `;\n }\n\n private get __defaultTemplateSetHref() {\n const templateSetUri = this.data?.template_set_uri;\n\n if (templateSetUri === '') {\n try {\n const url = new URL(this.__store?._links['fx:template_sets'].href ?? '');\n url.searchParams.set('code', 'DEFAULT');\n return url.toString();\n } catch {\n //\n }\n }\n }\n\n private get __localeCodesHelperHref() {\n if (this.__defaultTemplateSetHref || this.__templateSetHref) {\n return this.localeCodes ?? void 0;\n }\n }\n\n private get __shippingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.shipping_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __billingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.billing_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __templateSetHref() {\n return this.form.template_set_uri || void 0;\n }\n\n private get __customersHref() {\n try {\n const url = new URL(this.customers ?? '');\n url.searchParams.set('is_anonymous', this.__isGuestMode ? '1' : '0');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __countriesHref() {\n return this.countries ?? void 0;\n }\n\n private get __discountsHref() {\n try {\n const url = new URL(this.data?._links['fx:discounts'].href ?? '');\n url.searchParams.set('limit', '300');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __customerHref() {\n return this.form.customer_uri || void 0;\n }\n\n private get __itemsHref() {\n try {\n const url = new URL(this.data?._links['fx:items'].href ?? '');\n url.searchParams.set('zoom', 'item_options');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __storeHref() {\n return this.data?._links['fx:store']?.href;\n }\n\n private get __defaultTemplateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSets>>;\n const selector = `#${this.__defaultTemplateSetLoaderId}`;\n const loader = this.renderRoot.querySelector<Loader>(selector);\n return loader?.data?._embedded['fx:template_sets'][0] ?? null;\n }\n\n private get __localeCodesHelper() {\n type Loader = NucleonElement<Resource<Rels.LocaleCodes>>;\n const selector = `#${this.__localeCodesHelperLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __shippingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__shippingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __billingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__billingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __templateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSet>>;\n const selector = `#${this.__templateSetLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __discounts() {\n type Loader = NucleonElement<Resource<Rels.Discounts>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__discountsLoaderId}`);\n }\n\n private get __countriesHelper() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__countriesHelperLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __customer() {\n type Loader = NucleonElement<Resource<Rels.Customer>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__customerLoaderId}`)?.data;\n }\n\n private get __store() {\n type Loader = NucleonElement<Resource<Rels.Store>>;\n const selector = `#${this.__storeLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private __renderTotalOrder(currency: string | null, currencyDisplay: string | undefined) {\n const data = this.data;\n if (!data || !currency || !currencyDisplay) return html`--`;\n\n const options = { amount: `${data.total_order} ${currency}`, currencyDisplay };\n return html`<foxy-i18n infer=\"totals\" key=\"total_order\" .options=${options}></foxy-i18n>`;\n }\n\n private __renderTotals(currency: string | null, currencyDisplay: string | undefined) {\n const keys = ['total_item_price', 'total_shipping', 'total_tax'] as const;\n const data = this.data;\n const isPriceReady = data && currency && currencyDisplay;\n\n return keys.map(key => {\n const options = { amount: `${data?.[key]} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testid=${key} class=\"flex justify-between text-m text-secondary\">\n <foxy-i18n key=${key} infer=\"totals\"></foxy-i18n>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n\n private __renderDiscounts(currency: string | null, currencyDisplay: string | undefined) {\n const discounts = this.__discounts?.data?._embedded['fx:discounts'];\n const isPriceReady = currency && currencyDisplay;\n\n return discounts?.map(discount => {\n const options = { amount: `${discount.amount} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testclass=\"discount\" class=\"flex justify-between text-m text-secondary\">\n <span>${discount.name} • ${discount.code}</span>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n}\n"]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import '../../internal/InternalAsyncComboBoxControl/index';
|
|
2
2
|
import '../../internal/InternalAsyncListControl/index';
|
|
3
3
|
import '../../internal/InternalSelectControl/index';
|
|
4
|
+
import '../../internal/InternalCreateControl/index';
|
|
5
|
+
import '../../internal/InternalDeleteControl/index';
|
|
4
6
|
import '../../internal/InternalTextControl/index';
|
|
5
7
|
import '../../internal/InternalForm/index';
|
|
6
8
|
import '../AppliedCouponCodeCard/index';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import "../../internal/InternalAsyncComboBoxControl/index.js";
|
|
2
2
|
import "../../internal/InternalAsyncListControl/index.js";
|
|
3
3
|
import "../../internal/InternalSelectControl/index.js";
|
|
4
|
+
import "../../internal/InternalCreateControl/index.js";
|
|
5
|
+
import "../../internal/InternalDeleteControl/index.js";
|
|
4
6
|
import "../../internal/InternalTextControl/index.js";
|
|
5
7
|
import "../../internal/InternalForm/index.js";
|
|
6
8
|
import "../AppliedCouponCodeCard/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/index.ts"],"names":[],"mappings":"AAAA,8DAA2D;AAC3D,0DAAuD;AACvD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,2CAAwC;AACxC,2CAAwC;AACxC,qCAAkC;AAClC,qCAAkC;AAClC,oCAAiC;AACjC,mCAAgC;AAChC,mCAAgC;AAChC,kCAA+B;AAC/B,8BAA2B;AAC3B,8BAA2B;AAC3B,0BAAuB;AAEvB,mEAAgE;AAEhE,OAAO,EAAE,QAAQ,EAAE,sBAAmB;AAEtC,cAAc,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncComboBoxControl/index';\nimport '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalSelectControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../AppliedCouponCodeCard/index';\nimport '../AppliedCouponCodeForm/index';\nimport '../CustomFieldCard/index';\nimport '../CustomFieldForm/index';\nimport '../NucleonElement/index';\nimport '../AttributeCard/index';\nimport '../AttributeForm/index';\nimport '../DiscountCard/index';\nimport '../ItemCard/index';\nimport '../ItemForm/index';\nimport '../I18n/index';\n\nimport './internal/InternalCartFormViewAsCustomerControl/index';\n\nimport { CartForm } from './CartForm';\n\ncustomElements.define('foxy-cart-form', CartForm);\n\nexport { CartForm };\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/index.ts"],"names":[],"mappings":"AAAA,8DAA2D;AAC3D,0DAAuD;AACvD,uDAAoD;AACpD,uDAAoD;AACpD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,2CAAwC;AACxC,2CAAwC;AACxC,qCAAkC;AAClC,qCAAkC;AAClC,oCAAiC;AACjC,mCAAgC;AAChC,mCAAgC;AAChC,kCAA+B;AAC/B,8BAA2B;AAC3B,8BAA2B;AAC3B,0BAAuB;AAEvB,mEAAgE;AAEhE,OAAO,EAAE,QAAQ,EAAE,sBAAmB;AAEtC,cAAc,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncComboBoxControl/index';\nimport '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalSelectControl/index';\nimport '../../internal/InternalCreateControl/index';\nimport '../../internal/InternalDeleteControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../AppliedCouponCodeCard/index';\nimport '../AppliedCouponCodeForm/index';\nimport '../CustomFieldCard/index';\nimport '../CustomFieldForm/index';\nimport '../NucleonElement/index';\nimport '../AttributeCard/index';\nimport '../AttributeForm/index';\nimport '../DiscountCard/index';\nimport '../ItemCard/index';\nimport '../ItemForm/index';\nimport '../I18n/index';\n\nimport './internal/InternalCartFormViewAsCustomerControl/index';\n\nimport { CartForm } from './CartForm';\n\ncustomElements.define('foxy-cart-form', CartForm);\n\nexport { CartForm };\n"]}
|
|
@@ -1,3 +1,67 @@
|
|
|
1
1
|
import type { Resource } from '@foxy.io/sdk/core';
|
|
2
|
+
import type { CartForm } from './CartForm';
|
|
3
|
+
import type { Renderer } from '../../../mixins/configurable';
|
|
2
4
|
import type { Rels } from '@foxy.io/sdk/backend';
|
|
3
5
|
export declare type Data = Resource<Rels.Cart>;
|
|
6
|
+
export declare type Templates = {
|
|
7
|
+
'customer-type:before'?: Renderer<CartForm>;
|
|
8
|
+
'customer-type:after'?: Renderer<CartForm>;
|
|
9
|
+
'customer:before'?: Renderer<CartForm>;
|
|
10
|
+
'customer:after'?: Renderer<CartForm>;
|
|
11
|
+
'template-set-uri:before'?: Renderer<CartForm>;
|
|
12
|
+
'template-set-uri:after'?: Renderer<CartForm>;
|
|
13
|
+
'items:before'?: Renderer<CartForm>;
|
|
14
|
+
'items:after'?: Renderer<CartForm>;
|
|
15
|
+
'applied-coupon-codes:before'?: Renderer<CartForm>;
|
|
16
|
+
'applied-coupon-codes:after'?: Renderer<CartForm>;
|
|
17
|
+
'custom-fields:before'?: Renderer<CartForm>;
|
|
18
|
+
'custom-fields:after'?: Renderer<CartForm>;
|
|
19
|
+
'attributes:before'?: Renderer<CartForm>;
|
|
20
|
+
'attributes:after'?: Renderer<CartForm>;
|
|
21
|
+
'billing-first-name:before'?: Renderer<CartForm>;
|
|
22
|
+
'billing-first-name:after'?: Renderer<CartForm>;
|
|
23
|
+
'billing-last-name:before'?: Renderer<CartForm>;
|
|
24
|
+
'billing-last-name:after'?: Renderer<CartForm>;
|
|
25
|
+
'billing-company:before'?: Renderer<CartForm>;
|
|
26
|
+
'billing-company:after'?: Renderer<CartForm>;
|
|
27
|
+
'billing-phone:before'?: Renderer<CartForm>;
|
|
28
|
+
'billing-phone:after'?: Renderer<CartForm>;
|
|
29
|
+
'billing-address-one:before'?: Renderer<CartForm>;
|
|
30
|
+
'billing-address-one:after'?: Renderer<CartForm>;
|
|
31
|
+
'billing-address-two:before'?: Renderer<CartForm>;
|
|
32
|
+
'billing-address-two:after'?: Renderer<CartForm>;
|
|
33
|
+
'billing-country:before'?: Renderer<CartForm>;
|
|
34
|
+
'billing-country:after'?: Renderer<CartForm>;
|
|
35
|
+
'billing-region:before'?: Renderer<CartForm>;
|
|
36
|
+
'billing-region:after'?: Renderer<CartForm>;
|
|
37
|
+
'billing-city:before'?: Renderer<CartForm>;
|
|
38
|
+
'billing-city:after'?: Renderer<CartForm>;
|
|
39
|
+
'billing-postal-code:before'?: Renderer<CartForm>;
|
|
40
|
+
'billing-postal-code:after'?: Renderer<CartForm>;
|
|
41
|
+
'shipping-first-name:before'?: Renderer<CartForm>;
|
|
42
|
+
'shipping-first-name:after'?: Renderer<CartForm>;
|
|
43
|
+
'shipping-last-name:before'?: Renderer<CartForm>;
|
|
44
|
+
'shipping-last-name:after'?: Renderer<CartForm>;
|
|
45
|
+
'shipping-company:before'?: Renderer<CartForm>;
|
|
46
|
+
'shipping-company:after'?: Renderer<CartForm>;
|
|
47
|
+
'shipping-phone:before'?: Renderer<CartForm>;
|
|
48
|
+
'shipping-phone:after'?: Renderer<CartForm>;
|
|
49
|
+
'shipping-address-one:before'?: Renderer<CartForm>;
|
|
50
|
+
'shipping-address-one:after'?: Renderer<CartForm>;
|
|
51
|
+
'shipping-address-two:before'?: Renderer<CartForm>;
|
|
52
|
+
'shipping-address-two:after'?: Renderer<CartForm>;
|
|
53
|
+
'shipping-country:before'?: Renderer<CartForm>;
|
|
54
|
+
'shipping-country:after'?: Renderer<CartForm>;
|
|
55
|
+
'shipping-region:before'?: Renderer<CartForm>;
|
|
56
|
+
'shipping-region:after'?: Renderer<CartForm>;
|
|
57
|
+
'shipping-city:before'?: Renderer<CartForm>;
|
|
58
|
+
'shipping-city:after'?: Renderer<CartForm>;
|
|
59
|
+
'shipping-postal-code:before'?: Renderer<CartForm>;
|
|
60
|
+
'shipping-postal-code:after'?: Renderer<CartForm>;
|
|
61
|
+
'view-as-customer:before'?: Renderer<CartForm>;
|
|
62
|
+
'view-as-customer:after'?: Renderer<CartForm>;
|
|
63
|
+
'delete:before'?: Renderer<CartForm>;
|
|
64
|
+
'delete:after'?: Renderer<CartForm>;
|
|
65
|
+
'create:before'?: Renderer<CartForm>;
|
|
66
|
+
'create:after'?: Renderer<CartForm>;
|
|
67
|
+
};
|