@foxy.io/elements 1.27.0-beta.5 → 1.27.0-beta.6
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/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +1 -1
- 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-billing-address-card.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-client-card.js +1 -1
- package/dist/cdn/foxy-client-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-card.js +1 -0
- 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-api.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-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-downloadable-card.js +1 -1
- package/dist/cdn/foxy-downloadable-form.js +2 -2
- 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-filter-attribute-card.js +1 -1
- package/dist/cdn/foxy-filter-attribute-form.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 +3 -3
- 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-native-integration-card.js +1 -1
- package/dist/cdn/foxy-native-integration-form.js +1 -1
- package/dist/cdn/foxy-nucleon-element.js +1 -1
- package/dist/cdn/foxy-pagination.js +1 -1
- package/dist/cdn/foxy-passkey-card.js +1 -1
- package/dist/cdn/foxy-passkey-form.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 +1 -1
- package/dist/cdn/foxy-reports-table.js +1 -1
- 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-card.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 +1 -1
- package/dist/cdn/foxy-user-card.js +1 -1
- 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-20c4310b.js → shared-065dbdf6.js} +1 -1
- package/dist/cdn/{shared-0f49d9c3.js → shared-07d5e225.js} +1 -1
- package/dist/cdn/{shared-82435697.js → shared-0e8dceb8.js} +1 -1
- package/dist/cdn/{shared-6ef4ce19.js → shared-1a9e80fa.js} +1 -1
- package/dist/cdn/{shared-e4e0dc11.js → shared-1d6beb48.js} +1 -1
- package/dist/cdn/shared-208e37af.js +88 -0
- package/dist/cdn/shared-29f2468c.js +6 -0
- package/dist/cdn/shared-400240f8.js +1 -0
- package/dist/cdn/{shared-9db9528b.js → shared-589e5d06.js} +15 -15
- package/dist/cdn/{shared-6be0a096.js → shared-5dbb9630.js} +1 -1
- package/dist/cdn/{shared-6350f7d9.js → shared-5e35c5a5.js} +1 -1
- package/dist/cdn/{shared-3cbcd9cb.js → shared-5f09205d.js} +1 -1
- package/dist/cdn/{shared-d15c3e2d.js → shared-61f67b16.js} +1 -1
- package/dist/cdn/shared-683145e5.js +1 -0
- package/dist/cdn/shared-6c4affb9.js +1 -0
- package/dist/cdn/{shared-4fb9d21f.js → shared-77fd8dae.js} +1 -1
- package/dist/cdn/{shared-92cdd504.js → shared-80eb1fee.js} +1 -1
- package/dist/cdn/shared-850e2ae1.js +10 -0
- package/dist/cdn/{shared-872151f5.js → shared-85979316.js} +1 -1
- package/dist/cdn/{shared-4fd17baf.js → shared-8def6325.js} +1 -1
- package/dist/cdn/{shared-18d109f5.js → shared-93812e51.js} +1 -1
- package/dist/cdn/{shared-6a998243.js → shared-9a5da74d.js} +21 -27
- package/dist/cdn/{shared-e52280d9.js → shared-b30f9b10.js} +1 -1
- package/dist/cdn/shared-bb08b5ce.js +32 -0
- package/dist/cdn/{shared-89b42eef.js → shared-bba8ae80.js} +1 -1
- package/dist/cdn/{shared-bf132324.js → shared-befe135a.js} +1 -1
- package/dist/cdn/{shared-7ff496f6.js → shared-bfa30d93.js} +1 -1
- package/dist/cdn/shared-c5f57aa8.js +1 -0
- package/dist/cdn/{shared-3277bbf5.js → shared-ca15d510.js} +1 -1
- package/dist/cdn/{shared-46454866.js → shared-cab2aa63.js} +4 -4
- package/dist/cdn/shared-cc723108.js +12 -0
- package/dist/cdn/{shared-97793410.js → shared-d04c2e0c.js} +1 -1
- package/dist/cdn/{shared-59a5edee.js → shared-da7a0bfb.js} +9 -9
- package/dist/cdn/shared-e35297c9.js +1 -0
- package/dist/cdn/{shared-8778d784.js → shared-e48fbf50.js} +1 -1
- package/dist/cdn/shared-e84be1c2.js +64 -0
- package/dist/cdn/{shared-8dd03329.js → shared-e966f1ef.js} +1 -1
- package/dist/cdn/{shared-1122a125.js → shared-fb8c09b8.js} +1 -1
- package/dist/cdn/{shared-fcaf15e5.js → shared-fd041b18.js} +1 -1
- package/dist/cdn/{shared-1b0992cc.js → shared-fda63db8.js} +5 -5
- package/dist/cdn/{shared-51ac503d.js → shared-fe7b3ed2.js} +1 -1
- package/dist/cdn/translations/coupon-code-card/en.json +11 -0
- package/dist/cdn/translations/coupon-form/en.json +522 -297
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.d.ts +10 -0
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +81 -2
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.d.ts +11 -0
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js +57 -0
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js.map +1 -0
- package/dist/elements/internal/InternalAsyncListControl/index.d.ts +1 -0
- package/dist/elements/internal/InternalAsyncListControl/index.js +3 -0
- package/dist/elements/internal/InternalAsyncListControl/index.js.map +1 -1
- package/dist/elements/internal/InternalAsyncListControl/types.d.ts +8 -0
- package/dist/elements/internal/InternalAsyncListControl/types.js +2 -0
- package/dist/elements/internal/InternalAsyncListControl/types.js.map +1 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.d.ts +23 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js +224 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js.map +1 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.d.ts +8 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js +10 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js.map +1 -0
- package/dist/elements/internal/InternalForm/InternalForm.d.ts +10 -0
- package/dist/elements/internal/InternalForm/InternalForm.js +44 -0
- package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -1
- package/dist/elements/internal/InternalForm/index.d.ts +2 -0
- package/dist/elements/internal/InternalForm/index.js +2 -0
- package/dist/elements/internal/InternalForm/index.js.map +1 -1
- package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.d.ts +1 -0
- package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js +3 -0
- package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js.map +1 -1
- package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.d.ts +10 -0
- package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.js +51 -0
- package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.js.map +1 -0
- package/dist/elements/internal/InternalQueryBuilderControl/index.d.ts +4 -0
- package/dist/elements/internal/InternalQueryBuilderControl/index.js +6 -0
- package/dist/elements/internal/InternalQueryBuilderControl/index.js.map +1 -0
- package/dist/elements/public/CartForm/CartForm.js +81 -81
- package/dist/elements/public/CartForm/CartForm.js.map +1 -1
- package/dist/elements/public/CouponCodeCard/CouponCodeCard.d.ts +16 -0
- package/dist/elements/public/CouponCodeCard/CouponCodeCard.js +41 -0
- package/dist/elements/public/CouponCodeCard/CouponCodeCard.js.map +1 -0
- package/dist/elements/public/CouponCodeCard/index.d.ts +4 -0
- package/dist/elements/public/CouponCodeCard/index.js +6 -0
- package/dist/elements/public/CouponCodeCard/index.js.map +1 -0
- package/dist/elements/public/CouponCodeCard/types.d.ts +3 -0
- package/dist/elements/public/CouponCodeCard/types.js +2 -0
- package/dist/elements/public/CouponCodeCard/types.js.map +1 -0
- package/dist/elements/public/CouponForm/CouponForm.d.ts +65 -41
- package/dist/elements/public/CouponForm/CouponForm.js +320 -1035
- package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
- package/dist/elements/public/CouponForm/index.d.ts +15 -16
- package/dist/elements/public/CouponForm/index.js +15 -16
- package/dist/elements/public/CouponForm/index.js.map +1 -1
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.d.ts +9 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.js +49 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.js.map +1 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.d.ts +6 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.js +8 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.js.map +1 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.d.ts +7 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.js +141 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.js.map +1 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.d.ts +6 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.js +8 -0
- package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.js.map +1 -0
- package/dist/elements/public/CouponForm/types.d.ts +10 -1
- package/dist/elements/public/CouponForm/types.js.map +1 -1
- package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js +7 -3
- package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js.map +1 -1
- package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.d.ts +1 -0
- package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.js +9 -0
- package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.js.map +1 -0
- package/dist/elements/public/DownloadableForm/DownloadableForm.js +9 -9
- package/dist/elements/public/DownloadableForm/DownloadableForm.js.map +1 -1
- package/dist/elements/public/I18n/format/discount.js +9 -2
- package/dist/elements/public/I18n/format/discount.js.map +1 -1
- package/dist/elements/public/I18n/format/ordinal.js +6 -2
- package/dist/elements/public/I18n/format/ordinal.js.map +1 -1
- package/dist/elements/public/IntegrationForm/IntegrationForm.js +8 -6
- package/dist/elements/public/IntegrationForm/IntegrationForm.js.map +1 -1
- package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js +27 -27
- package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js.map +1 -1
- package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +4 -0
- package/dist/elements/public/QueryBuilder/QueryBuilder.js +10 -2
- package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/elements/public/QueryBuilder/components/Group.d.ts +3 -1
- package/dist/elements/public/QueryBuilder/components/Group.js +8 -1
- package/dist/elements/public/QueryBuilder/components/Group.js.map +1 -1
- package/dist/elements/public/QueryBuilder/components/OperatorToggle.d.ts +2 -1
- package/dist/elements/public/QueryBuilder/components/OperatorToggle.js +5 -4
- package/dist/elements/public/QueryBuilder/components/OperatorToggle.js.map +1 -1
- package/dist/elements/public/QueryBuilder/components/Rule.d.ts +3 -1
- package/dist/elements/public/QueryBuilder/components/Rule.js +2 -1
- package/dist/elements/public/QueryBuilder/components/Rule.js.map +1 -1
- package/dist/elements/public/StoreForm/StoreForm.js +7 -8
- package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
- package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +28 -28
- package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
- package/dist/elements/public/index.d.ts +1 -0
- package/dist/elements/public/index.defined.d.ts +1 -0
- package/dist/elements/public/index.defined.js +1 -0
- package/dist/elements/public/index.defined.js.map +1 -1
- package/dist/elements/public/index.js +1 -0
- package/dist/elements/public/index.js.map +1 -1
- package/dist/mixins/inferrable.js +8 -3
- package/dist/mixins/inferrable.js.map +1 -1
- package/package.json +1 -1
- package/dist/cdn/shared-20f65e73.js +0 -1
- package/dist/cdn/shared-27c7514d.js +0 -1
- package/dist/cdn/shared-669decee.js +0 -1
- package/dist/cdn/shared-afefe2ac.js +0 -113
- package/dist/cdn/shared-b33fd700.js +0 -1
- package/dist/cdn/shared-b51b9df7.js +0 -64
- package/dist/cdn/shared-b914895b.js +0 -1
- package/dist/cdn/shared-cce18690.js +0 -1
- package/dist/cdn/shared-d04dd602.js +0 -20
- package/dist/cdn/shared-df58b901.js +0 -1
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.d.ts +0 -20
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js +0 -99
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js.map +0 -1
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.d.ts +0 -18
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js +0 -50
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js.map +0 -1
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.d.ts +0 -18
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js +0 -53
- package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js.map +0 -1
|
@@ -265,87 +265,6 @@ export class CartForm extends Base {
|
|
|
265
265
|
currencyCode = (_h = (_g = /Currency: ([A-Z]{3})/g.exec(localeInfo)) === null || _g === void 0 ? void 0 : _g[1]) !== null && _h !== void 0 ? _h : null;
|
|
266
266
|
}
|
|
267
267
|
return html `
|
|
268
|
-
<foxy-nucleon
|
|
269
|
-
class="hidden"
|
|
270
|
-
infer=""
|
|
271
|
-
href=${ifDefined(this.__shippingRegionsHref)}
|
|
272
|
-
id=${this.__shippingRegionsLoaderId}
|
|
273
|
-
@update=${() => this.requestUpdate()}
|
|
274
|
-
>
|
|
275
|
-
</foxy-nucleon>
|
|
276
|
-
|
|
277
|
-
<foxy-nucleon
|
|
278
|
-
class="hidden"
|
|
279
|
-
infer=""
|
|
280
|
-
href=${ifDefined(this.__billingRegionsHref)}
|
|
281
|
-
id=${this.__billingRegionsLoaderId}
|
|
282
|
-
@update=${() => this.requestUpdate()}
|
|
283
|
-
>
|
|
284
|
-
</foxy-nucleon>
|
|
285
|
-
|
|
286
|
-
<foxy-nucleon
|
|
287
|
-
class="hidden"
|
|
288
|
-
infer=""
|
|
289
|
-
href=${ifDefined(this.__countriesHref)}
|
|
290
|
-
id=${this.__countriesHelperLoaderId}
|
|
291
|
-
@update=${() => this.requestUpdate()}
|
|
292
|
-
>
|
|
293
|
-
</foxy-nucleon>
|
|
294
|
-
|
|
295
|
-
<foxy-nucleon
|
|
296
|
-
class="hidden"
|
|
297
|
-
infer=""
|
|
298
|
-
href=${ifDefined(this.__customerHref)}
|
|
299
|
-
id=${this.__customerLoaderId}
|
|
300
|
-
@update=${() => this.requestUpdate()}
|
|
301
|
-
>
|
|
302
|
-
</foxy-nucleon>
|
|
303
|
-
|
|
304
|
-
<foxy-nucleon
|
|
305
|
-
class="hidden"
|
|
306
|
-
infer=""
|
|
307
|
-
href=${ifDefined(this.__discountsHref)}
|
|
308
|
-
id=${this.__discountsLoaderId}
|
|
309
|
-
@update=${() => this.requestUpdate()}
|
|
310
|
-
>
|
|
311
|
-
</foxy-nucleon>
|
|
312
|
-
|
|
313
|
-
<foxy-nucleon
|
|
314
|
-
class="hidden"
|
|
315
|
-
infer=""
|
|
316
|
-
href=${ifDefined(this.__defaultTemplateSetHref)}
|
|
317
|
-
id=${this.__defaultTemplateSetLoaderId}
|
|
318
|
-
@update=${() => this.requestUpdate()}
|
|
319
|
-
>
|
|
320
|
-
</foxy-nucleon>
|
|
321
|
-
|
|
322
|
-
<foxy-nucleon
|
|
323
|
-
class="hidden"
|
|
324
|
-
infer=""
|
|
325
|
-
href=${ifDefined(this.__localeCodesHelperHref)}
|
|
326
|
-
id=${this.__localeCodesHelperLoaderId}
|
|
327
|
-
@update=${() => this.requestUpdate()}
|
|
328
|
-
>
|
|
329
|
-
</foxy-nucleon>
|
|
330
|
-
|
|
331
|
-
<foxy-nucleon
|
|
332
|
-
class="hidden"
|
|
333
|
-
infer=""
|
|
334
|
-
href=${ifDefined(this.__templateSetHref)}
|
|
335
|
-
id=${this.__templateSetLoaderId}
|
|
336
|
-
@update=${() => this.requestUpdate()}
|
|
337
|
-
>
|
|
338
|
-
</foxy-nucleon>
|
|
339
|
-
|
|
340
|
-
<foxy-nucleon
|
|
341
|
-
class="hidden"
|
|
342
|
-
infer=""
|
|
343
|
-
href=${ifDefined(this.__storeHref)}
|
|
344
|
-
id=${this.__storeLoaderId}
|
|
345
|
-
@update=${() => this.requestUpdate()}
|
|
346
|
-
>
|
|
347
|
-
</foxy-nucleon>
|
|
348
|
-
|
|
349
268
|
<div class="grid sm-grid-cols-2 gap-l">
|
|
350
269
|
<div class="sm-col-span-2">
|
|
351
270
|
<foxy-i18n class="text-l font-medium leading-s block" infer="" key="order_section_title">
|
|
@@ -550,6 +469,87 @@ export class CartForm extends Base {
|
|
|
550
469
|
`
|
|
551
470
|
: html `<foxy-internal-create-control infer="create"></foxy-internal-create-control>`}
|
|
552
471
|
</div>
|
|
472
|
+
|
|
473
|
+
<foxy-nucleon
|
|
474
|
+
class="hidden"
|
|
475
|
+
infer=""
|
|
476
|
+
href=${ifDefined(this.__shippingRegionsHref)}
|
|
477
|
+
id=${this.__shippingRegionsLoaderId}
|
|
478
|
+
@update=${() => this.requestUpdate()}
|
|
479
|
+
>
|
|
480
|
+
</foxy-nucleon>
|
|
481
|
+
|
|
482
|
+
<foxy-nucleon
|
|
483
|
+
class="hidden"
|
|
484
|
+
infer=""
|
|
485
|
+
href=${ifDefined(this.__billingRegionsHref)}
|
|
486
|
+
id=${this.__billingRegionsLoaderId}
|
|
487
|
+
@update=${() => this.requestUpdate()}
|
|
488
|
+
>
|
|
489
|
+
</foxy-nucleon>
|
|
490
|
+
|
|
491
|
+
<foxy-nucleon
|
|
492
|
+
class="hidden"
|
|
493
|
+
infer=""
|
|
494
|
+
href=${ifDefined(this.__countriesHref)}
|
|
495
|
+
id=${this.__countriesHelperLoaderId}
|
|
496
|
+
@update=${() => this.requestUpdate()}
|
|
497
|
+
>
|
|
498
|
+
</foxy-nucleon>
|
|
499
|
+
|
|
500
|
+
<foxy-nucleon
|
|
501
|
+
class="hidden"
|
|
502
|
+
infer=""
|
|
503
|
+
href=${ifDefined(this.__customerHref)}
|
|
504
|
+
id=${this.__customerLoaderId}
|
|
505
|
+
@update=${() => this.requestUpdate()}
|
|
506
|
+
>
|
|
507
|
+
</foxy-nucleon>
|
|
508
|
+
|
|
509
|
+
<foxy-nucleon
|
|
510
|
+
class="hidden"
|
|
511
|
+
infer=""
|
|
512
|
+
href=${ifDefined(this.__discountsHref)}
|
|
513
|
+
id=${this.__discountsLoaderId}
|
|
514
|
+
@update=${() => this.requestUpdate()}
|
|
515
|
+
>
|
|
516
|
+
</foxy-nucleon>
|
|
517
|
+
|
|
518
|
+
<foxy-nucleon
|
|
519
|
+
class="hidden"
|
|
520
|
+
infer=""
|
|
521
|
+
href=${ifDefined(this.__defaultTemplateSetHref)}
|
|
522
|
+
id=${this.__defaultTemplateSetLoaderId}
|
|
523
|
+
@update=${() => this.requestUpdate()}
|
|
524
|
+
>
|
|
525
|
+
</foxy-nucleon>
|
|
526
|
+
|
|
527
|
+
<foxy-nucleon
|
|
528
|
+
class="hidden"
|
|
529
|
+
infer=""
|
|
530
|
+
href=${ifDefined(this.__localeCodesHelperHref)}
|
|
531
|
+
id=${this.__localeCodesHelperLoaderId}
|
|
532
|
+
@update=${() => this.requestUpdate()}
|
|
533
|
+
>
|
|
534
|
+
</foxy-nucleon>
|
|
535
|
+
|
|
536
|
+
<foxy-nucleon
|
|
537
|
+
class="hidden"
|
|
538
|
+
infer=""
|
|
539
|
+
href=${ifDefined(this.__templateSetHref)}
|
|
540
|
+
id=${this.__templateSetLoaderId}
|
|
541
|
+
@update=${() => this.requestUpdate()}
|
|
542
|
+
>
|
|
543
|
+
</foxy-nucleon>
|
|
544
|
+
|
|
545
|
+
<foxy-nucleon
|
|
546
|
+
class="hidden"
|
|
547
|
+
infer=""
|
|
548
|
+
href=${ifDefined(this.__storeHref)}
|
|
549
|
+
id=${this.__storeLoaderId}
|
|
550
|
+
@update=${() => this.requestUpdate()}
|
|
551
|
+
>
|
|
552
|
+
</foxy-nucleon>
|
|
553
553
|
`;
|
|
554
554
|
}
|
|
555
555
|
get __defaultTemplateSetHref() {
|
|
@@ -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 { 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 (this.form.currency_code) {\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-medium 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-medium 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-medium 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-medium 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
|
+
{"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 (this.form.currency_code) {\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 <div class=\"grid sm-grid-cols-2 gap-l\">\n <div class=\"sm-col-span-2\">\n <foxy-i18n class=\"text-l font-medium 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-medium 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-medium 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-medium 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 <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 }\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"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { TemplateResult } from 'lit-html';
|
|
2
|
+
import type { Data } from './types';
|
|
3
|
+
import { InternalCard } from '../../internal/InternalCard/InternalCard';
|
|
4
|
+
declare const Base: typeof InternalCard & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
|
|
5
|
+
defaultNS: string;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Card element that displays a coupon code (`fx:coupon_code`).
|
|
9
|
+
*
|
|
10
|
+
* @element foxy-coupon-code-card
|
|
11
|
+
* @since 1.27.0
|
|
12
|
+
*/
|
|
13
|
+
export declare class CouponCodeCard extends Base<Data> {
|
|
14
|
+
renderBody(): TemplateResult;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { TranslatableMixin } from "../../../mixins/translatable.js";
|
|
2
|
+
import { InternalCard } from "../../internal/InternalCard/InternalCard.js";
|
|
3
|
+
import { html } from 'lit-html';
|
|
4
|
+
const NS = 'coupon-code-card';
|
|
5
|
+
const Base = TranslatableMixin(InternalCard, NS);
|
|
6
|
+
/**
|
|
7
|
+
* Card element that displays a coupon code (`fx:coupon_code`).
|
|
8
|
+
*
|
|
9
|
+
* @element foxy-coupon-code-card
|
|
10
|
+
* @since 1.27.0
|
|
11
|
+
*/
|
|
12
|
+
export class CouponCodeCard extends Base {
|
|
13
|
+
renderBody() {
|
|
14
|
+
var _a;
|
|
15
|
+
return html `
|
|
16
|
+
<section class="h-s flex flex-col justify-center leading-xs">
|
|
17
|
+
<p class="flex items-center justify-between min-w-0">
|
|
18
|
+
<foxy-i18n
|
|
19
|
+
infer=""
|
|
20
|
+
class="block truncate text-m font-medium"
|
|
21
|
+
key="line_1"
|
|
22
|
+
.options=${this.data}
|
|
23
|
+
>
|
|
24
|
+
</foxy-i18n>
|
|
25
|
+
<foxy-i18n
|
|
26
|
+
infer=""
|
|
27
|
+
class="text-s text-tertiary"
|
|
28
|
+
key="uses_count"
|
|
29
|
+
.options=${{ count: (_a = this.data) === null || _a === void 0 ? void 0 : _a.number_of_uses_to_date }}
|
|
30
|
+
>
|
|
31
|
+
</foxy-i18n>
|
|
32
|
+
</p>
|
|
33
|
+
<p class="text-s text-secondary min-w-0">
|
|
34
|
+
<foxy-i18n infer="" class="block truncate" key="line_2" .options=${this.data}>
|
|
35
|
+
</foxy-i18n>
|
|
36
|
+
</p>
|
|
37
|
+
</section>
|
|
38
|
+
`;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=CouponCodeCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CouponCodeCard.js","sourceRoot":"","sources":["../../../../src/elements/public/CouponCodeCard/CouponCodeCard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,kBAAkB,CAAC;AAC9B,MAAM,IAAI,GAAG,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,OAAO,cAAe,SAAQ,IAAU;IAC5C,UAAU;;QACR,OAAO,IAAI,CAAA;;;;;;;uBAOQ,IAAI,CAAC,IAAI;;;;;;;uBAOT,EAAE,KAAK,QAAE,IAAI,CAAC,IAAI,0CAAE,sBAAsB,EAAE;;;;;6EAKU,IAAI,CAAC,IAAI;;;;KAIjF,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { InternalCard } from '../../internal/InternalCard/InternalCard';\nimport { html } from 'lit-html';\n\nconst NS = 'coupon-code-card';\nconst Base = TranslatableMixin(InternalCard, NS);\n\n/**\n * Card element that displays a coupon code (`fx:coupon_code`).\n *\n * @element foxy-coupon-code-card\n * @since 1.27.0\n */\nexport class CouponCodeCard extends Base<Data> {\n renderBody(): TemplateResult {\n return html`\n <section class=\"h-s flex flex-col justify-center leading-xs\">\n <p class=\"flex items-center justify-between min-w-0\">\n <foxy-i18n\n infer=\"\"\n class=\"block truncate text-m font-medium\"\n key=\"line_1\"\n .options=${this.data}\n >\n </foxy-i18n>\n <foxy-i18n\n infer=\"\"\n class=\"text-s text-tertiary\"\n key=\"uses_count\"\n .options=${{ count: this.data?.number_of_uses_to_date }}\n >\n </foxy-i18n>\n </p>\n <p class=\"text-s text-secondary min-w-0\">\n <foxy-i18n infer=\"\" class=\"block truncate\" key=\"line_2\" .options=${this.data}>\n </foxy-i18n>\n </p>\n </section>\n `;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/CouponCodeCard/index.ts"],"names":[],"mappings":"AAAA,8CAA2C;AAE3C,0BAAuB;AAEvB,OAAO,EAAE,cAAc,EAAE,4BAAyB;AAElD,cAAc,CAAC,MAAM,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,CAAC","sourcesContent":["import '../../internal/InternalCard/index';\n\nimport '../I18n/index';\n\nimport { CouponCodeCard } from './CouponCodeCard';\n\ncustomElements.define('foxy-coupon-code-card', CouponCodeCard);\n\nexport { CouponCodeCard };\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/elements/public/CouponCodeCard/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nexport type Data = Resource<Rels.CouponCode>;\n"]}
|
|
@@ -1,77 +1,101 @@
|
|
|
1
|
+
import type { TemplateResult, PropertyDeclarations } from 'lit-element';
|
|
1
2
|
import type { Data, TransactionPageHrefGetter } from './types';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
declare const Base: typeof NucleonElement & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
|
|
3
|
+
import type { NucleonV8N } from '../NucleonElement/types';
|
|
4
|
+
import { BooleanSelector } from '@foxy.io/sdk/core';
|
|
5
|
+
import { InternalForm } from '../../internal/InternalForm/InternalForm';
|
|
6
|
+
declare const Base: typeof InternalForm & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
|
|
7
7
|
defaultNS: string;
|
|
8
|
-
}
|
|
9
|
-
styles: import("lit-element").CSSResultArray;
|
|
10
|
-
} & import("@open-wc/dedupe-mixin").Constructor<import("@open-wc/scoped-elements/src/types").ScopedElementsHost>;
|
|
8
|
+
};
|
|
11
9
|
/**
|
|
12
10
|
* Form element for creating or editing coupons (`fx:coupon`).
|
|
13
11
|
*
|
|
12
|
+
* @slot import:before
|
|
13
|
+
* @slot import:after
|
|
14
|
+
*
|
|
15
|
+
* @slot generate:before
|
|
16
|
+
* @slot generate:after
|
|
17
|
+
*
|
|
14
18
|
* @slot name:before
|
|
15
19
|
* @slot name:after
|
|
16
20
|
*
|
|
17
21
|
* @slot rules:before
|
|
18
22
|
* @slot rules:after
|
|
19
23
|
*
|
|
20
|
-
* @slot codes:before
|
|
21
|
-
* @slot codes:after
|
|
24
|
+
* @slot coupon-codes:before
|
|
25
|
+
* @slot coupon-codes:after
|
|
22
26
|
*
|
|
23
|
-
* @slot
|
|
24
|
-
* @slot
|
|
27
|
+
* @slot item-option-restrictions:before
|
|
28
|
+
* @slot item-option-restrictions:after
|
|
25
29
|
*
|
|
26
|
-
* @slot product-restrictions:before
|
|
27
|
-
* @slot product-restrictions:after
|
|
30
|
+
* @slot product-code-restrictions:before
|
|
31
|
+
* @slot product-code-restrictions:after
|
|
28
32
|
*
|
|
29
33
|
* @slot category-restrictions:before
|
|
30
34
|
* @slot category-restrictions:after
|
|
31
35
|
*
|
|
36
|
+
* @slot number-of-uses-allowed:before
|
|
37
|
+
* @slot number-of-uses-allowed:after
|
|
38
|
+
*
|
|
39
|
+
* @slot number-of-uses-allowed-per-customer:before
|
|
40
|
+
* @slot number-of-uses-allowed-per-customer:after
|
|
41
|
+
*
|
|
42
|
+
* @slot number-of-uses-allowed-per-code:before
|
|
43
|
+
* @slot number-of-uses-allowed-per-code:after
|
|
44
|
+
*
|
|
45
|
+
* @slot start-date:before
|
|
46
|
+
* @slot start-date:after
|
|
47
|
+
*
|
|
48
|
+
* @slot end-date:before
|
|
49
|
+
* @slot end-date:after
|
|
50
|
+
*
|
|
51
|
+
* @slot inclusive-tax-rate:before
|
|
52
|
+
* @slot inclusive-tax-rate:after
|
|
53
|
+
*
|
|
32
54
|
* @slot options:before
|
|
33
55
|
* @slot options:after
|
|
34
56
|
*
|
|
35
|
-
* @slot
|
|
36
|
-
* @slot
|
|
57
|
+
* @slot customer-subscription-restrictions:before
|
|
58
|
+
* @slot customer-subscription-restrictions:after
|
|
37
59
|
*
|
|
38
|
-
* @slot
|
|
39
|
-
* @slot
|
|
60
|
+
* @slot customer-attribute-restrictions:before
|
|
61
|
+
* @slot customer-attribute-restrictions:after
|
|
62
|
+
*
|
|
63
|
+
* @slot attributes:before
|
|
64
|
+
* @slot attributes:after
|
|
40
65
|
*
|
|
41
66
|
* @slot create:before
|
|
42
67
|
* @slot create:after
|
|
43
68
|
*
|
|
69
|
+
* @slot delete:before
|
|
70
|
+
* @slot delete:after
|
|
71
|
+
*
|
|
72
|
+
* @slot timestamps:before
|
|
73
|
+
* @slot timestamps:after
|
|
74
|
+
*
|
|
75
|
+
*
|
|
44
76
|
* @element foxy-coupon-form
|
|
45
77
|
* @since 1.15.0
|
|
46
78
|
*/
|
|
47
79
|
export declare class CouponForm extends Base<Data> {
|
|
48
|
-
static get scopedElements(): ScopedElementsMap;
|
|
49
80
|
static get properties(): PropertyDeclarations;
|
|
50
81
|
static get v8n(): NucleonV8N<Data>;
|
|
51
82
|
getTransactionPageHref: TransactionPageHrefGetter | null;
|
|
52
|
-
private __codesTableColumns;
|
|
53
|
-
private static readonly __codesQueryOptions;
|
|
54
83
|
private readonly __customerSubscriptionRestrictionsGetValue;
|
|
55
84
|
private readonly __customerSubscriptionRestrictionsSetValue;
|
|
56
|
-
private
|
|
57
|
-
private
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
private
|
|
61
|
-
private
|
|
62
|
-
private
|
|
63
|
-
private
|
|
64
|
-
private
|
|
65
|
-
private
|
|
66
|
-
private
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
private
|
|
71
|
-
private __renderCustomerAttributeRestrictions;
|
|
72
|
-
private __renderOptions;
|
|
73
|
-
private __renderTimestamps;
|
|
74
|
-
private __renderCreate;
|
|
75
|
-
private __renderDelete;
|
|
85
|
+
private readonly __productCodeRestrictionsGetValue;
|
|
86
|
+
private readonly __productCodeRestrictionsSetValue;
|
|
87
|
+
private readonly __itemOptionRestrictionsOperators;
|
|
88
|
+
private readonly __itemOptionRestrictionsGetValue;
|
|
89
|
+
private readonly __itemOptionRestrictionsSetValue;
|
|
90
|
+
private readonly __optionsGetValue;
|
|
91
|
+
private readonly __optionsSetValue;
|
|
92
|
+
private readonly __optionsOptions;
|
|
93
|
+
private readonly __storeLoaderId;
|
|
94
|
+
private readonly __codesFilters;
|
|
95
|
+
private __couponCodesActions;
|
|
96
|
+
get hiddenSelector(): BooleanSelector;
|
|
97
|
+
renderHeaderActions(data: Data): TemplateResult;
|
|
98
|
+
renderBody(): TemplateResult;
|
|
99
|
+
private get __storeLoader();
|
|
76
100
|
}
|
|
77
101
|
export {};
|