@salla.sa/twilight-components 2.14.563 → 2.14.565
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/cjs/{apple-pay-order-options-DVyeUqBh.js → apple-pay-order-options-B036Wu4O.js} +15 -6
- package/dist/cjs/{filepond-DDjPDNMW.js → filepond-BOtBFq7k.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-poster-BVNh-Hu4.js → filepond-plugin-file-poster-DWqXLSRO.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-size-Oob5x06X.js → filepond-plugin-file-validate-size-TkDVc9ih.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-type-WxO8IEZf.js → filepond-plugin-file-validate-type-B1TuLFJS.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-edit-Btg3AmB2.js → filepond-plugin-image-edit-BtLH803a.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-exif-orientation-B1eJhME_.js → filepond-plugin-image-exif-orientation-BJvccc13.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-preview-Cu5NsVcD.js → filepond-plugin-image-preview-DPgKIIC8.js} +1 -1
- package/dist/cjs/{index-Dm01liwE.js → index-BZ_aKmCD.js} +6 -6
- package/dist/cjs/{intlTelInput-mcmUzBhl.js → intlTelInput-CKLiJAA1.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/salla-accordion-body_2.cjs.entry.js +4 -4
- package/dist/cjs/salla-accordion_6.cjs.entry.js +3 -3
- package/dist/cjs/salla-add-product-button_5.cjs.entry.js +98 -18
- package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
- package/dist/cjs/salla-alert_2.cjs.entry.js +4 -4
- package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
- package/dist/cjs/salla-applied-filters.cjs.entry.js +1 -1
- package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
- package/dist/cjs/salla-attachment-view_9.cjs.entry.js +18 -18
- package/dist/cjs/salla-badge.cjs.entry.js +2 -2
- package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
- package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +46 -18
- package/dist/cjs/salla-cart-coupons.cjs.entry.js +3 -3
- package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +2 -2
- package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
- package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
- package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
- package/dist/cjs/salla-comment-form_9.cjs.entry.js +4 -4
- package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
- package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
- package/dist/cjs/salla-count-down_2.cjs.entry.js +231 -42
- package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
- package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
- package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
- package/dist/cjs/salla-filters-widget.cjs.entry.js +3 -3
- package/dist/cjs/salla-filters.cjs.entry.js +2 -2
- package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
- package/dist/cjs/salla-gifting.cjs.entry.js +4 -4
- package/dist/cjs/salla-hook.cjs.entry.js +2 -2
- package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
- package/dist/cjs/salla-installment.cjs.entry.js +1 -1
- package/dist/cjs/salla-list-tile.cjs.entry.js +2 -2
- package/dist/cjs/salla-localization-modal.cjs.entry.js +2 -2
- package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +15 -15
- package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
- package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +2 -2
- package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +2 -2
- package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
- package/dist/cjs/salla-maintenance-alert.cjs.entry.js +2 -2
- package/dist/cjs/salla-map_3.cjs.entry.js +4 -4
- package/dist/cjs/salla-menu.cjs.entry.js +1 -1
- package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
- package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +4 -4
- package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +6 -6
- package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +2 -2
- package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
- package/dist/cjs/salla-notification-item_2.cjs.entry.js +2 -2
- package/dist/cjs/salla-offer-modal.cjs.entry.js +2 -2
- package/dist/cjs/salla-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details.cjs.entry.js +2 -2
- package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +2 -2
- package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-summary.cjs.entry.js +2 -2
- package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
- package/dist/cjs/salla-orders.cjs.entry.js +1 -1
- package/dist/cjs/salla-payments.cjs.entry.js +3 -3
- package/dist/cjs/salla-placeholder.cjs.entry.js +2 -2
- package/dist/cjs/salla-price-range.cjs.entry.js +3 -3
- package/dist/cjs/salla-product-card-embed.cjs.entry.js +2 -2
- package/dist/cjs/salla-product-card.cjs.entry.js +6 -6
- package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
- package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
- package/dist/cjs/salla-products-slider.cjs.entry.js +1 -1
- package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
- package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +1 -1
- package/dist/cjs/salla-rating-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-review-factors-tags.cjs.entry.js +2 -2
- package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
- package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
- package/dist/cjs/salla-search.cjs.entry.js +1 -1
- package/dist/cjs/salla-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/salla-social-share.cjs.entry.js +2 -2
- package/dist/cjs/salla-social.cjs.entry.js +2 -2
- package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
- package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
- package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
- package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
- package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
- package/dist/cjs/salla-verify.cjs.entry.js +1 -1
- package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
- package/dist/cjs/salla-wishlist-actions.cjs.entry.js +2 -2
- package/dist/cjs/twilight.cjs.js +2 -2
- package/dist/cjs/{vanilla-picker-D0r86yPu.js → vanilla-picker-C7y_2HXu.js} +1 -1
- package/dist/collection/components/salla-accordion/salla-accordion-body.js +1 -1
- package/dist/collection/components/salla-accordion/salla-accordion-head.js +2 -2
- package/dist/collection/components/salla-accordion/salla-accordion.js +1 -1
- package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +2 -2
- package/dist/collection/components/salla-alert/salla-alert.js +1 -1
- package/dist/collection/components/salla-badge/salla-badge.js +1 -1
- package/dist/collection/components/salla-booking-field/salla-booking-field.js +1 -1
- package/dist/collection/components/salla-bottom-alert/salla-bottom-alert.js +2 -2
- package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +7 -0
- package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +40 -12
- package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +2 -2
- package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +1 -1
- package/dist/collection/components/salla-color-picker/salla-color-picker.js +1 -1
- package/dist/collection/components/salla-comment-form/salla-comment-form.js +1 -1
- package/dist/collection/components/salla-conditional-fields/salla-conditional-fields.js +1 -1
- package/dist/collection/components/salla-count-down/salla-count-down.js +1 -1
- package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1 -1
- package/dist/collection/components/salla-file-upload/salla-file-upload.js +2 -2
- package/dist/collection/components/salla-filters/salla-filters.js +1 -1
- package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +2 -2
- package/dist/collection/components/salla-gifting/salla-gifting.js +2 -2
- package/dist/collection/components/salla-hook/salla-hook.js +1 -1
- package/dist/collection/components/salla-list-tile/salla-list-tile.js +1 -1
- package/dist/collection/components/salla-loading/salla-loading.js +1 -1
- package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +1 -1
- package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +1 -1
- package/dist/collection/components/salla-loyalty-points-history/salla-loyalty-points-history.js +1 -1
- package/dist/collection/components/salla-loyalty-program/salla-loyalty-exchange-product-card.js +2 -2
- package/dist/collection/components/salla-loyalty-program/salla-loyalty-hero.js +3 -3
- package/dist/collection/components/salla-loyalty-program/salla-loyalty-point.js +4 -4
- package/dist/collection/components/salla-loyalty-program/salla-loyalty-reward.js +2 -2
- package/dist/collection/components/salla-loyalty-program/salla-reward-card.js +1 -1
- package/dist/collection/components/salla-loyalty-program/salla-reward-details.js +3 -3
- package/dist/collection/components/salla-loyalty-program/salla-reward-exchange.js +1 -1
- package/dist/collection/components/salla-maintenance-alert/salla-maintenance-alert.js +1 -1
- package/dist/collection/components/salla-map/salla-map.js +3 -3
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +1 -1
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +2 -2
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +4 -4
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +1 -1
- package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +1 -1
- package/dist/collection/components/salla-notifications/salla-notification-item.js +1 -1
- package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +1 -1
- package/dist/collection/components/salla-order-details/salla-order-details.js +1 -1
- package/dist/collection/components/salla-order-edit/salla-order-edit-product-card.js +1 -1
- package/dist/collection/components/salla-order-options-modal/apple-pay-order-options.js +15 -6
- package/dist/collection/components/salla-order-options-modal/free-product-payload.js +49 -0
- package/dist/collection/components/salla-order-options-modal/order-options-gate.js +33 -8
- package/dist/collection/components/salla-order-options-modal/salla-order-options-modal.css +192 -15
- package/dist/collection/components/salla-order-options-modal/salla-order-options-modal.js +260 -48
- package/dist/collection/components/salla-order-summary/salla-order-summary.js +1 -1
- package/dist/collection/components/salla-payments/salla-payments.js +2 -2
- package/dist/collection/components/salla-placeholder/salla-placeholder.js +1 -1
- package/dist/collection/components/salla-price-range/salla-price-range.js +2 -2
- package/dist/collection/components/salla-product-availability/salla-product-availability.js +1 -1
- package/dist/collection/components/salla-product-card/salla-product-card.js +5 -5
- package/dist/collection/components/salla-product-card-embed/salla-product-card-embed.js +1 -1
- package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +2 -2
- package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
- package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +15 -5
- package/dist/collection/components/salla-review-card/salla-review-card.js +1 -1
- package/dist/collection/components/salla-review-factors-tags/salla-review-factors-tags.js +1 -1
- package/dist/collection/components/salla-reviews-page/salla-reviews-page.js +1 -1
- package/dist/collection/components/salla-searchable-dropdown/salla-searchable-dropdown.js +4 -4
- package/dist/collection/components/salla-skeleton/salla-skeleton.js +1 -1
- package/dist/collection/components/salla-social/salla-social.js +1 -1
- package/dist/collection/components/salla-social-share/salla-social-share.js +1 -1
- package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
- package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
- package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
- package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
- package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
- package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
- package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.js +1 -1
- package/dist/components/apple-pay-order-options.js +15 -6
- package/dist/components/index.js +2 -2
- package/dist/components/salla-accordion-body2.js +1 -1
- package/dist/components/salla-accordion-head2.js +2 -2
- package/dist/components/salla-accordion2.js +1 -1
- package/dist/components/salla-add-product-button2.js +35 -11
- package/dist/components/salla-alert.js +1 -1
- package/dist/components/salla-badge2.js +1 -1
- package/dist/components/salla-booking-field2.js +1 -1
- package/dist/components/salla-bottom-alert.js +2 -2
- package/dist/components/salla-bullet-delivery.js +41 -13
- package/dist/components/salla-cart-coupons.js +2 -2
- package/dist/components/salla-cart-summary.js +1 -1
- package/dist/components/salla-color-picker2.js +1 -1
- package/dist/components/salla-comment-form2.js +1 -1
- package/dist/components/salla-conditional-fields2.js +1 -1
- package/dist/components/salla-count-down2.js +1 -1
- package/dist/components/salla-datetime-picker2.js +1 -1
- package/dist/components/salla-file-upload2.js +2 -2
- package/dist/components/salla-filters-widget2.js +2 -2
- package/dist/components/salla-filters.js +1 -1
- package/dist/components/salla-gifting.js +2 -2
- package/dist/components/salla-hook.js +1 -1
- package/dist/components/salla-list-tile2.js +1 -1
- package/dist/components/salla-loading2.js +1 -1
- package/dist/components/salla-localization-modal.js +1 -1
- package/dist/components/salla-loyalty-exchange-product-card2.js +2 -2
- package/dist/components/salla-loyalty-hero2.js +3 -3
- package/dist/components/salla-loyalty-point2.js +4 -4
- package/dist/components/salla-loyalty-points-history.js +1 -1
- package/dist/components/salla-loyalty-prize-item.js +1 -1
- package/dist/components/salla-loyalty-reward.js +2 -2
- package/dist/components/salla-maintenance-alert.js +1 -1
- package/dist/components/salla-map2.js +3 -3
- package/dist/components/salla-multiple-bundle-product-cart2.js +1 -1
- package/dist/components/salla-multiple-bundle-product-details2.js +2 -2
- package/dist/components/salla-multiple-bundle-product-options-modal2.js +4 -4
- package/dist/components/salla-multiple-bundle-product-slider2.js +1 -1
- package/dist/components/salla-multiple-bundle-product.js +1 -1
- package/dist/components/salla-notification-item2.js +1 -1
- package/dist/components/salla-offer-modal.js +1 -1
- package/dist/components/salla-order-details.js +1 -1
- package/dist/components/salla-order-edit-product-card.js +1 -1
- package/dist/components/salla-order-options-modal2.js +234 -40
- package/dist/components/salla-order-summary.js +1 -1
- package/dist/components/salla-payments.js +2 -2
- package/dist/components/salla-placeholder2.js +1 -1
- package/dist/components/salla-price-range2.js +2 -2
- package/dist/components/salla-product-availability2.js +1 -1
- package/dist/components/salla-product-card-embed.js +1 -1
- package/dist/components/salla-product-card2.js +5 -5
- package/dist/components/salla-product-size-guide.js +2 -2
- package/dist/components/salla-quantity-input2.js +1 -1
- package/dist/components/salla-quick-buy2.js +62 -6
- package/dist/components/salla-review-card2.js +1 -1
- package/dist/components/salla-review-factors-tags2.js +1 -1
- package/dist/components/salla-reviews-page.js +1 -1
- package/dist/components/salla-reward-card2.js +1 -1
- package/dist/components/salla-reward-details2.js +3 -3
- package/dist/components/salla-reward-exchange2.js +1 -1
- package/dist/components/salla-searchable-dropdown2.js +4 -4
- package/dist/components/salla-skeleton2.js +1 -1
- package/dist/components/salla-social-share2.js +1 -1
- package/dist/components/salla-social.js +1 -1
- package/dist/components/salla-tab-content2.js +1 -1
- package/dist/components/salla-tab-header2.js +1 -1
- package/dist/components/salla-tabs2.js +1 -1
- package/dist/components/salla-tel-input2.js +1 -1
- package/dist/components/salla-tooltip2.js +1 -1
- package/dist/components/salla-user-settings.js +1 -1
- package/dist/components/salla-wishlist-actions.js +1 -1
- package/dist/esm/{apple-pay-order-options-Bg2HuLRr.js → apple-pay-order-options-s0kn7yr8.js} +15 -6
- package/dist/esm/{filepond-CY6pyFip.js → filepond-UQa5G279.js} +1 -1
- package/dist/esm/{filepond-plugin-file-poster-CB4IOEW6.js → filepond-plugin-file-poster-DuTq7hGp.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-size-CGmjBUqY.js → filepond-plugin-file-validate-size-CmrW5aIv.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-type-44ynhS6w.js → filepond-plugin-file-validate-type-C4wrsR8y.js} +1 -1
- package/dist/esm/{filepond-plugin-image-edit-BaOXEOuD.js → filepond-plugin-image-edit-CFUxRm-l.js} +1 -1
- package/dist/esm/{filepond-plugin-image-exif-orientation-CswLPc6C.js → filepond-plugin-image-exif-orientation-eHT2qXpP.js} +1 -1
- package/dist/esm/{filepond-plugin-image-preview-DzvMpIJw.js → filepond-plugin-image-preview-CX0Er_bj.js} +1 -1
- package/dist/esm/{index-GfnuORRm.js → index-BC0OSCdw.js} +6 -6
- package/dist/esm/{intlTelInput-Cb2bEpkc.js → intlTelInput-DnPEdiN8.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/salla-accordion-body_2.entry.js +4 -4
- package/dist/esm/salla-accordion_6.entry.js +3 -3
- package/dist/esm/salla-add-product-button_5.entry.js +98 -18
- package/dist/esm/salla-advertisement.entry.js +1 -1
- package/dist/esm/salla-alert_2.entry.js +4 -4
- package/dist/esm/salla-app-install-alert.entry.js +1 -1
- package/dist/esm/salla-applied-filters.entry.js +1 -1
- package/dist/esm/salla-apps-icons.entry.js +1 -1
- package/dist/esm/salla-attachment-view_9.entry.js +18 -18
- package/dist/esm/salla-badge.entry.js +2 -2
- package/dist/esm/salla-basket-gap.entry.js +1 -1
- package/dist/esm/salla-bullet-delivery_3.entry.js +46 -18
- package/dist/esm/salla-cart-coupons.entry.js +3 -3
- package/dist/esm/salla-cart-item-offers_2.entry.js +2 -2
- package/dist/esm/salla-cart-summary-card.entry.js +1 -1
- package/dist/esm/salla-cashback-banner.entry.js +1 -1
- package/dist/esm/salla-comment-factors.entry.js +1 -1
- package/dist/esm/salla-comment-form_9.entry.js +4 -4
- package/dist/esm/salla-conditional-offer.entry.js +1 -1
- package/dist/esm/salla-contacts.entry.js +1 -1
- package/dist/esm/salla-cookies-bar.entry.js +1 -1
- package/dist/esm/salla-count-down_2.entry.js +231 -42
- package/dist/esm/salla-custom-fields.entry.js +1 -1
- package/dist/esm/salla-delivery-promise.entry.js +1 -1
- package/dist/esm/salla-edit-order-button.entry.js +1 -1
- package/dist/esm/salla-filters-widget.entry.js +3 -3
- package/dist/esm/salla-filters.entry.js +2 -2
- package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
- package/dist/esm/salla-gifting.entry.js +4 -4
- package/dist/esm/salla-hook.entry.js +2 -2
- package/dist/esm/salla-infinite-scroll.entry.js +1 -1
- package/dist/esm/salla-installment.entry.js +1 -1
- package/dist/esm/salla-list-tile.entry.js +2 -2
- package/dist/esm/salla-localization-modal.entry.js +2 -2
- package/dist/esm/salla-login-modal.entry.js +1 -1
- package/dist/esm/salla-loyalty-banner_10.entry.js +15 -15
- package/dist/esm/salla-loyalty-exchange-product-card.entry.js +3 -3
- package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
- package/dist/esm/salla-loyalty-points-history.entry.js +2 -2
- package/dist/esm/salla-loyalty-prize-item.entry.js +2 -2
- package/dist/esm/salla-loyalty.entry.js +1 -1
- package/dist/esm/salla-maintenance-alert.entry.js +2 -2
- package/dist/esm/salla-map_3.entry.js +4 -4
- package/dist/esm/salla-menu.entry.js +1 -1
- package/dist/esm/salla-metadata.entry.js +1 -1
- package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +4 -4
- package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +6 -6
- package/dist/esm/salla-multiple-bundle-product.entry.js +2 -2
- package/dist/esm/salla-next-order-coupon.entry.js +1 -1
- package/dist/esm/salla-notification-item_2.entry.js +2 -2
- package/dist/esm/salla-offer-modal.entry.js +2 -2
- package/dist/esm/salla-offer.entry.js +1 -1
- package/dist/esm/salla-order-branch.entry.js +1 -1
- package/dist/esm/salla-order-cancel.entry.js +1 -1
- package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
- package/dist/esm/salla-order-details-options.entry.js +1 -1
- package/dist/esm/salla-order-details.entry.js +2 -2
- package/dist/esm/salla-order-edit-item.entry.js +1 -1
- package/dist/esm/salla-order-edit-product-card.entry.js +2 -2
- package/dist/esm/salla-order-edit.entry.js +1 -1
- package/dist/esm/salla-order-shipments.entry.js +1 -1
- package/dist/esm/salla-order-summary.entry.js +2 -2
- package/dist/esm/salla-order-totals-card.entry.js +1 -1
- package/dist/esm/salla-orders.entry.js +1 -1
- package/dist/esm/salla-payments.entry.js +3 -3
- package/dist/esm/salla-placeholder.entry.js +2 -2
- package/dist/esm/salla-price-range.entry.js +3 -3
- package/dist/esm/salla-product-card-embed.entry.js +2 -2
- package/dist/esm/salla-product-card.entry.js +6 -6
- package/dist/esm/salla-product-size-guide.entry.js +3 -3
- package/dist/esm/salla-products-list.entry.js +1 -1
- package/dist/esm/salla-products-slider.entry.js +1 -1
- package/dist/esm/salla-quick-order.entry.js +1 -1
- package/dist/esm/salla-rating-modal-v2.entry.js +1 -1
- package/dist/esm/salla-rating-modal.entry.js +1 -1
- package/dist/esm/salla-review-factors-tags.entry.js +2 -2
- package/dist/esm/salla-review-order-item.entry.js +1 -1
- package/dist/esm/salla-scopes.entry.js +1 -1
- package/dist/esm/salla-search.entry.js +1 -1
- package/dist/esm/salla-skeleton.entry.js +2 -2
- package/dist/esm/salla-social-share.entry.js +2 -2
- package/dist/esm/salla-social.entry.js +2 -2
- package/dist/esm/salla-tab-content_3.entry.js +4 -4
- package/dist/esm/salla-tiered-offer.entry.js +1 -1
- package/dist/esm/salla-tooltip.entry.js +2 -2
- package/dist/esm/salla-trust-badges.entry.js +1 -1
- package/dist/esm/salla-user-menu.entry.js +1 -1
- package/dist/esm/salla-user-profile.entry.js +1 -1
- package/dist/esm/salla-user-settings.entry.js +2 -2
- package/dist/esm/salla-verify.entry.js +1 -1
- package/dist/esm/salla-wallet.entry.js +1 -1
- package/dist/esm/salla-wishlist-actions.entry.js +2 -2
- package/dist/esm/twilight.js +3 -3
- package/dist/esm/{vanilla-picker-Dn1KYUfg.js → vanilla-picker-BCMDEwEz.js} +1 -1
- package/dist/twilight/{p-ddc4c979.entry.js → p-00ade9ab.entry.js} +1 -1
- package/dist/twilight/{p-b108585a.entry.js → p-02b4c53f.entry.js} +1 -1
- package/dist/twilight/{p-a0ebb943.entry.js → p-040a60fa.entry.js} +1 -1
- package/dist/twilight/{p-eaf6405f.entry.js → p-077bba56.entry.js} +1 -1
- package/dist/twilight/p-08283d58.entry.js +4 -0
- package/dist/twilight/{p-c51e2840.entry.js → p-092e3574.entry.js} +1 -1
- package/dist/twilight/{p-9fe06cfd.entry.js → p-0ce7ec43.entry.js} +1 -1
- package/dist/twilight/{p-9420d204.entry.js → p-0cff28ab.entry.js} +1 -1
- package/dist/twilight/{p-a37c0015.entry.js → p-128c99f8.entry.js} +1 -1
- package/dist/twilight/{p-24a13f9a.entry.js → p-12d5856d.entry.js} +1 -1
- package/dist/twilight/{p-3bbcf3b5.entry.js → p-1678e509.entry.js} +1 -1
- package/dist/twilight/{p-0ccb9482.entry.js → p-1b61fdb7.entry.js} +1 -1
- package/dist/twilight/{p-79eca83e.entry.js → p-1c5df94c.entry.js} +1 -1
- package/dist/twilight/{p-4701b1db.entry.js → p-1e3f96f6.entry.js} +1 -1
- package/dist/twilight/{p-836528db.entry.js → p-217e8d6b.entry.js} +1 -1
- package/dist/twilight/{p-722afe08.entry.js → p-22454aab.entry.js} +1 -1
- package/dist/twilight/{p-15c3013e.entry.js → p-28cadf49.entry.js} +1 -1
- package/dist/twilight/p-29683d1e.entry.js +4 -0
- package/dist/twilight/{p-BwCPM9Ea.js → p-2LY0VWl8.js} +1 -1
- package/dist/twilight/{p-1494774e.entry.js → p-2ade195d.entry.js} +1 -1
- package/dist/twilight/{p-2b11beb9.entry.js → p-2c3bd065.entry.js} +1 -1
- package/dist/twilight/{p-b0c7b762.entry.js → p-2ddf12c9.entry.js} +1 -1
- package/dist/twilight/{p-9070affa.entry.js → p-2e68382e.entry.js} +1 -1
- package/dist/twilight/{p-0478a9d7.entry.js → p-39df1337.entry.js} +1 -1
- package/dist/twilight/{p-9b4ac3ed.entry.js → p-3cae6c0b.entry.js} +1 -1
- package/dist/twilight/{p-46a6e2f3.entry.js → p-3ccaf56b.entry.js} +1 -1
- package/dist/twilight/{p-d7bd8af5.entry.js → p-477fbe60.entry.js} +1 -1
- package/dist/twilight/{p-97ad1b5a.entry.js → p-4e53c800.entry.js} +1 -1
- package/dist/twilight/{p-ff54150b.entry.js → p-4ec4c29d.entry.js} +1 -1
- package/dist/twilight/p-4f9e25a2.entry.js +4 -0
- package/dist/twilight/{p-2c721e1a.entry.js → p-4fe6b957.entry.js} +1 -1
- package/dist/twilight/{p-f4b1dd6e.entry.js → p-512dffba.entry.js} +1 -1
- package/dist/twilight/{p-0c5747b1.entry.js → p-5258eb5b.entry.js} +1 -1
- package/dist/twilight/{p-2c00673b.entry.js → p-52abc216.entry.js} +1 -1
- package/dist/twilight/{p-46992827.entry.js → p-55c0c4d5.entry.js} +1 -1
- package/dist/twilight/{p-81dcaf69.entry.js → p-55ecefaf.entry.js} +1 -1
- package/dist/twilight/{p-d142c7d2.entry.js → p-5912c685.entry.js} +1 -1
- package/dist/twilight/{p-65d1043b.entry.js → p-596695cb.entry.js} +1 -1
- package/dist/twilight/{p-e9fe2027.entry.js → p-59a7515b.entry.js} +1 -1
- package/dist/twilight/{p-28ce2f83.entry.js → p-5aff8807.entry.js} +1 -1
- package/dist/twilight/p-5de36f11.entry.js +4 -0
- package/dist/twilight/{p-e23cd8b4.entry.js → p-60f4c8b0.entry.js} +1 -1
- package/dist/twilight/{p-ef20497a.entry.js → p-66460e90.entry.js} +1 -1
- package/dist/twilight/{p-deec864c.entry.js → p-6ef17286.entry.js} +1 -1
- package/dist/twilight/{p-6c27051d.entry.js → p-6fe42bfe.entry.js} +1 -1
- package/dist/twilight/{p-35c011ed.entry.js → p-717258c4.entry.js} +1 -1
- package/dist/twilight/{p-bd56d44c.entry.js → p-73795f51.entry.js} +1 -1
- package/dist/twilight/{p-c1baa245.entry.js → p-77540bba.entry.js} +1 -1
- package/dist/twilight/{p-c84cc730.entry.js → p-7785635d.entry.js} +1 -1
- package/dist/twilight/{p-24e0386e.entry.js → p-77a708f4.entry.js} +1 -1
- package/dist/twilight/{p-1b10f9dc.entry.js → p-7a7b9917.entry.js} +1 -1
- package/dist/twilight/{p-2ad08012.entry.js → p-810fca9f.entry.js} +1 -1
- package/dist/twilight/{p-33513478.entry.js → p-84aa1f0f.entry.js} +1 -1
- package/dist/twilight/{p-8b781b69.entry.js → p-85df7952.entry.js} +1 -1
- package/dist/twilight/{p-a916380a.entry.js → p-8628e5d7.entry.js} +1 -1
- package/dist/twilight/{p-d53cf9bd.entry.js → p-87638789.entry.js} +1 -1
- package/dist/twilight/{p-6afefa1b.entry.js → p-8872ae84.entry.js} +1 -1
- package/dist/twilight/p-8b6d7dbc.entry.js +4 -0
- package/dist/twilight/{p-87ab3986.entry.js → p-8bd738dd.entry.js} +1 -1
- package/dist/twilight/{p-9d304f36.entry.js → p-8e3ceb05.entry.js} +1 -1
- package/dist/twilight/{p-1fb98623.entry.js → p-8ea86806.entry.js} +1 -1
- package/dist/twilight/{p-1f46c7f4.entry.js → p-913f0e67.entry.js} +1 -1
- package/dist/twilight/{p-60307b84.entry.js → p-928bdd13.entry.js} +1 -1
- package/dist/twilight/{p-83ddc4e1.entry.js → p-94bab301.entry.js} +1 -1
- package/dist/twilight/{p-0ae5c8c4.entry.js → p-9549fe7d.entry.js} +1 -1
- package/dist/twilight/{p-DKRQn16d.js → p-B4qhqpMO.js} +1 -1
- package/dist/twilight/p-BC0OSCdw.js +5 -0
- package/dist/twilight/{p-CaG1mvtI.js → p-BQ2uPuvt.js} +1 -1
- package/dist/twilight/p-BqsrYTv0.js +9 -0
- package/dist/twilight/{p-DWBrx3up.js → p-CJ9itb04.js} +1 -1
- package/dist/twilight/{p-Y8Y3Lce-.js → p-CbE9Aa2n.js} +1 -1
- package/dist/twilight/{p-BOL1voLy.js → p-Cfn7Ybxi.js} +1 -1
- package/dist/twilight/{p-CktZCPMt.js → p-DdkjVgyM.js} +1 -1
- package/dist/twilight/{p-BJIMNMji.js → p-Dz1PaIS6.js} +1 -1
- package/dist/twilight/{p-eb43d534.entry.js → p-a4bea3d2.entry.js} +1 -1
- package/dist/twilight/{p-5f96b566.entry.js → p-a72038c1.entry.js} +1 -1
- package/dist/twilight/{p-e32cef83.entry.js → p-a7340ba8.entry.js} +1 -1
- package/dist/twilight/{p-3d3ae480.entry.js → p-a94e4fc8.entry.js} +1 -1
- package/dist/twilight/{p-bc2766e2.entry.js → p-ad92b347.entry.js} +1 -1
- package/dist/twilight/{p-fc4b2479.entry.js → p-b65a15cb.entry.js} +1 -1
- package/dist/twilight/p-b92eb535.entry.js +4 -0
- package/dist/twilight/{p-caa21010.entry.js → p-bb8f6167.entry.js} +1 -1
- package/dist/twilight/{p-8eafdb6b.entry.js → p-bbfd1991.entry.js} +1 -1
- package/dist/twilight/{p-76bbf673.entry.js → p-beb9023e.entry.js} +1 -1
- package/dist/twilight/{p-e7d359d0.entry.js → p-ca540632.entry.js} +1 -1
- package/dist/twilight/{p-43ddc1a9.entry.js → p-d32ba4d6.entry.js} +1 -1
- package/dist/twilight/{p-9755cd5c.entry.js → p-dbe87ffe.entry.js} +1 -1
- package/dist/twilight/{p-4f5734c8.entry.js → p-dd4e8765.entry.js} +1 -1
- package/dist/twilight/{p-435538fc.entry.js → p-de3cd06e.entry.js} +1 -1
- package/dist/twilight/{p-fe28663a.entry.js → p-e0600f10.entry.js} +1 -1
- package/dist/twilight/{p-2a56105f.entry.js → p-e0a3937a.entry.js} +1 -1
- package/dist/twilight/{p-a69fada2.entry.js → p-e5ae8c3b.entry.js} +1 -1
- package/dist/twilight/{p-eb3b0f9a.entry.js → p-e67ba69c.entry.js} +1 -1
- package/dist/twilight/p-e77d4dbc.entry.js +4 -0
- package/dist/twilight/{p-d465b5f4.entry.js → p-eb5d5edc.entry.js} +1 -1
- package/dist/twilight/{p-119c92ea.entry.js → p-ed39f8fd.entry.js} +1 -1
- package/dist/twilight/{p-a8bd25ca.entry.js → p-f1b8972a.entry.js} +1 -1
- package/dist/twilight/{p-09adb410.entry.js → p-f66a6f43.entry.js} +1 -1
- package/dist/twilight/{p-08b78fdb.entry.js → p-f9aa9b5b.entry.js} +1 -1
- package/dist/twilight/{p-1a3b5964.entry.js → p-f9d778ec.entry.js} +1 -1
- package/dist/twilight/{p-5f6e61c1.entry.js → p-fcf32a4c.entry.js} +25 -25
- package/dist/twilight/{p-fc04f809.entry.js → p-fd38337e.entry.js} +1 -1
- package/dist/twilight/p-s0kn7yr8.js +4 -0
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/components/salla-order-options-modal/apple-pay-order-options.d.ts +9 -4
- package/dist/types/components/salla-order-options-modal/free-product-payload.d.ts +19 -0
- package/dist/types/components/salla-order-options-modal/order-options-gate.d.ts +11 -1
- package/dist/types/components/salla-order-options-modal/salla-order-options-modal.d.ts +76 -21
- package/dist/types/components/salla-quick-buy/salla-quick-buy.d.ts +2 -0
- package/dist/types/components.d.ts +59 -22
- package/package.json +5 -5
- package/dist/twilight/p-1e1ba8b7.entry.js +0 -4
- package/dist/twilight/p-2f76a067.entry.js +0 -4
- package/dist/twilight/p-9c50b57e.entry.js +0 -4
- package/dist/twilight/p-Bg2HuLRr.js +0 -4
- package/dist/twilight/p-GfnuORRm.js +0 -5
- package/dist/twilight/p-a1a4a1a8.entry.js +0 -4
- package/dist/twilight/p-bf4174b7.entry.js +0 -4
- package/dist/twilight/p-e2e741f7.entry.js +0 -4
- package/dist/twilight/p-fba00709.entry.js +0 -4
- package/dist/twilight/p-m9gfUJP2.js +0 -9
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
|
|
6
6
|
const sallaCountDownCss = "/*!twlt*/.s-count-down-horizontal{background-color:rgba(0, 0, 0, 0.06);background-color:color-mix(in srgb, var(--color-primary) 10%, transparent)}.text-sm{font-size:0.875rem;line-height:1.25rem}.s-basket-gap-card-offer .s-count-down-list{margin-left:-0px !important;margin-right:-0px !important;margin-bottom:0px !important;margin-top:0px !important;display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start !important;column-gap:0px;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse !important}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row !important}.s-basket-gap-card-offer .s-count-down-item{position:relative !important;margin-left:0px !important;margin-right:0px !important;display:inline-flex !important;width:auto !important;flex:none !important;flex-grow:0 !important;flex-direction:row !important;align-items:center !important;justify-content:center !important;padding-top:0px !important;padding-bottom:0px !important;padding-left:0px !important;padding-right:0px !important;font-size:12px !important;font-weight:700 !important;line-height:1 !important;--tw-text-opacity:1 !important;color:rgb(21 128 61 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-offer .s-count-down-item-value{display:inline-block !important;width:2ch !important;min-width:2ch !important;text-align:center;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);line-height:1}.s-basket-gap-card-offer .s-count-down-item-label{display:none}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::before{content:none !important}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::after{content:none !important;position:static;left:auto;right:auto;transform:none}[dir='rtl'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:last-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}[dir='ltr'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:first-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}.s-count-down-wrapper{position:relative}.s-count-down-list{margin-left:-0.25rem;margin-right:-0.25rem;margin-bottom:1.25rem;margin-top:0.625rem;display:flex;align-items:center;justify-content:space-between}.s-count-down-list:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse}.s-count-down-list:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row}.s-count-down-item{position:relative;margin-left:0.25rem;margin-right:0.25rem;display:flex;flex:1 1 0%;flex-direction:column;align-items:center;justify-content:center;padding-top:0.5rem;padding-bottom:0.5rem;font-family:var(--font-main);font-weight:700}.s-count-down-item::after{position:absolute;left:-2px;font-family:inherit;--tw-content:':';content:var(--tw-content)}.s-count-down-item:last-child::after{--tw-content:'';content:var(--tw-content)}.s-count-down-item-label{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));opacity:0.4}.s-count-down-boxed .s-count-down-item{border-radius:var(--s-radius, 0.25rem);--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-count-down-boxed .s-count-down-item::after{--tw-content:'';content:var(--tw-content)}.s-count-down-sm .s-count-down-item{font-size:1rem;line-height:1.5rem;font-weight:400}.s-count-down-sm .s-count-down-item::after{content:var(--tw-content);font-size:1rem;line-height:1.5rem}.s-count-down-sm+.s-count-down-end-text{font-size:1rem;line-height:1.5rem;font-weight:400}.s-count-down-md .s-count-down-item{font-size:1.125rem;line-height:1.75rem;font-weight:500}.s-count-down-md .s-count-down-item::after{content:var(--tw-content);font-size:1.125rem;line-height:1.75rem}.s-count-down-md+.s-count-down-end-text{font-size:1.125rem;line-height:1.75rem;font-weight:500}.s-count-down-lg .s-count-down-item{font-size:1.875rem;line-height:2.25rem;font-weight:700}.s-count-down-lg .s-count-down-item::after{content:var(--tw-content);font-size:1.875rem;line-height:2.25rem}.s-count-down-lg+.s-count-down-end-text{font-size:1.5rem;line-height:2rem;font-weight:700}.s-count-down-light .s-count-down-item{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-count-down-light .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-count-down-dark .s-count-down-item{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-count-down-dark .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-count-down-primary .s-count-down-item{color:var(--color-primary)}.s-count-down-primary .s-count-down-item::after{content:var(--tw-content);color:var(--color-primary)}.s-count-down-ended .s-count-down-item{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));opacity:0.1}.s-count-down-ended .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-count-down-end-text{position:absolute;top:50%;left:50%;--tw-translate-x:-50%;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));font-family:var(--font-main);--tw-text-opacity:1;color:rgb(234 84 85 / var(--tw-text-opacity, 1))}.s-count-down-text-center{text-align:center}.s-count-down-info-message{display:flex;gap:0.5rem;padding-top:0.625rem;padding-bottom:0.625rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.s-count-down-pre-order{display:flex;flex:1 1 0%;flex-direction:column;align-items:center;gap:0.5rem}@media (min-width: 1024px){.s-count-down-pre-order{flex-direction:row}}.s-count-down-pre-order .s-count-down-item{position:relative;display:flex;height:2.7rem;width:2.25rem;flex-direction:column;align-items:center;justify-content:center;border-radius:2px}.s-count-down-pre-order .s-count-down-item::after{left:-7px;--tw-content:':';content:var(--tw-content)}.s-count-down-pre-order .s-count-down-item:last-child::after{--tw-content:'';content:var(--tw-content)}.s-count-down-pre-order-container{margin-bottom:1.25rem;margin-top:0.625rem;display:flex;flex-direction:column;align-items:center;gap:0.5rem}@media (min-width: 1024px){.s-count-down-pre-order-container{flex-direction:row}}.s-count-down-pre-order-container .s-count-down-list{margin:0px;padding:0px}.s-count-down-pre-order .s-count-down-item-value{font-size:1rem;line-height:1.5rem;font-weight:700;line-height:1}.s-count-down-pre-order .s-count-down-item-label{margin-top:0px;font-size:0.6rem;opacity:1}.s-count-down-horizontal{display:inline-flex;flex-direction:row;align-items:center;gap:0.75rem;border-radius:0.75rem;padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);line-height:1}.s-count-down-horizontal.s-count-down-ended{opacity:0.5}.s-count-down-horizontal .s-count-down-list{margin:0px;width:auto;justify-content:flex-start;padding-left:0px;padding-right:0px}.s-count-down-horizontal .s-count-down-list .s-count-down-item{margin-left:0.25rem;margin-right:0.25rem;height:1.75rem;min-width:2rem;flex:none;border-radius:0.375rem;background-color:var(--color-primary);padding-top:0px;padding-bottom:0px;padding-left:0.5rem;padding-right:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;line-height:1.5;color:var(--color-primary-reverse)}.s-count-down-horizontal .s-count-down-list .s-count-down-item::after{font-weight:600;content:var(--tw-content);color:var(--color-primary)}.s-count-down-horizontal .s-count-down-item-label{margin-top:0.125rem;font-size:0.625rem;line-height:1;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));opacity:0.7}.s-count-down-with-button{display:inline-flex;align-items:center;column-gap:0.75rem}.s-count-down-with-button button .s-button-text{display:flex;align-items:center;column-gap:0.5rem}.s-count-down-with-button button .s-button-text:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse}.s-count-down-with-button button .s-button-text:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row}.s-count-down-prefix-text{font-size:0.875rem;line-height:1.25rem;font-weight:700;color:var(--color-primary)}";
|
|
7
7
|
|
|
@@ -233,12 +233,12 @@ const SallaCountDown = class {
|
|
|
233
233
|
return this.renderCountDown();
|
|
234
234
|
}
|
|
235
235
|
render() {
|
|
236
|
-
return (h(Host, { key: '
|
|
236
|
+
return (h(Host, { key: '7f3e240f25c715b3faaac4e85c48f017e54c7907', class: `s-count-down-wrapper ${this.preOrder && this.isValidDate(this.date) ? 's-count-down-pre-order' : ''} ${this.horizontal ? 's-count-down-horizontal' : ''} ${this.withButton ? 's-count-down-with-button' : ''} ${this.offerEnded ? 's-count-down-ended' : ''}` }, this.renderPrefixText(), this.renderContent(), this.offerEnded && this.renderOfferEnded(), this.renderButton()));
|
|
237
237
|
}
|
|
238
238
|
};
|
|
239
239
|
SallaCountDown.style = sallaCountDownCss;
|
|
240
240
|
|
|
241
|
-
const sallaOrderOptionsModalCss = "/*!twlt
|
|
241
|
+
const sallaOrderOptionsModalCss = "/*!twlt*/@charset \"UTF-8\";.s-order-options-modal-host .s-modal-header-inner,.s-order-options-modal-host .s-modal-header-content,.s-order-options-modal-host .s-modal-title{text-align:start !important}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-title{display:none}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-header-inner{flex:1;min-width:0}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-header-content{display:none}.s-oom-steps{display:flex;align-items:center;justify-content:flex-start;gap:0.5rem;width:100%;padding:0}.s-oom-step{display:inline-flex;align-items:center;gap:0.375rem;padding:0.375rem 0.75rem 0.375rem 0.625rem;border-radius:9999px;font-size:0.8125rem;font-weight:600;line-height:1;white-space:nowrap;color:#9ca3af;background:transparent;border:1.5px solid #e5e7eb;transition:background 0.2s, color 0.2s, border-color 0.2s}.s-oom-step.active{background:#1a2533;color:#ffffff;border-color:#1a2533}.s-oom-step.active .s-oom-step-num{background:rgba(255, 255, 255, 0.2);color:#ffffff}.s-oom-step.done{color:#6b7280;border-color:#d1d5db}.s-oom-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;font-size:0.6875rem;font-weight:700;background:#e5e7eb;color:#6b7280;flex-shrink:0}.s-oom-step-label{font-size:0.8125rem}.s-oom-connector{flex:1;max-width:3rem;height:0;border-top:1.5px dashed #d1d5db}.s-oom-free-product-card{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1rem;margin-bottom:1rem;border:1px solid #e5e7eb;border-radius:0.75rem;background:#f9fafb;}.s-oom-free-product-info{display:flex;flex-direction:column;gap:0.25rem;min-width:0;flex:1}.s-oom-free-product-tags{display:flex;flex-wrap:wrap;align-items:center;gap:0.375rem}.s-oom-free-product-name{font-size:0.9375rem;font-weight:700;color:#111827;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-oom-free-badge{display:inline-block;padding:0.125rem 0.5rem;border-radius:9999px;font-size:0.6875rem;font-weight:600;color:#059669;background:#d1fae5;align-self:flex-start}.s-oom-free-offer-name{display:inline-block;padding:0.125rem 0.5rem;border-radius:9999px;font-size:0.6875rem;font-weight:500;color:#6b7280;background:#f3f4f6;align-self:flex-start}.s-oom-free-product-thumb{width:3.5rem;height:3.5rem;object-fit:cover;border-radius:0.5rem;flex-shrink:0;border:1px solid #e5e7eb}.s-order-options-modal-body{padding-top:0.25rem;max-height:60vh;overflow-y:auto;overscroll-behavior:contain}.s-order-options-modal-subtitle{font-size:0.875rem;color:#6b7280;margin-bottom:1rem;text-align:start}.s-order-options-modal-cta-content{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%}.s-order-options-modal-cta-text{flex:1;text-align:center}.s-order-options-modal-apple-pay{display:block;width:100%;--apple-pay-button-width:100%;--apple-pay-button-height:44px;--apple-pay-button-border-radius:0.75rem}.s-order-options-modal-apple-pay-wrap{display:flex;flex-direction:column;gap:0.75rem;width:100%}.s-order-options-modal-apple-pay-total{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.s-order-options-modal-apple-pay-label,.s-order-options-modal-apple-pay-amount{font-size:1.125rem;line-height:1.5rem;font-weight:700;color:#111827}.s-oom-cta-arrow{font-size:0.875rem;flex-shrink:0}.static{position:static}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.s-order-options-modal-body{display:block;max-height:60vh;overflow-y:auto;overscroll-behavior:contain}.s-order-options-modal-subtitle{margin-bottom:1rem;font-size:0.875rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-order-options-modal-fields{display:flex;flex-direction:column;gap:1rem}.s-order-options-modal-item{display:block}.s-order-options-modal-footer{display:flex;width:100%;align-items:center}.s-order-options-modal-cta-content{display:flex;align-items:center;gap:0.25rem}.s-order-options-modal-cta-text{font-weight:700}.s-order-options-modal-cta-total{font-weight:700}";
|
|
242
242
|
|
|
243
243
|
const SallaOrderOptionsModal = class {
|
|
244
244
|
constructor(hostRef) {
|
|
@@ -247,20 +247,48 @@ const SallaOrderOptionsModal = class {
|
|
|
247
247
|
this.rejectFn = null;
|
|
248
248
|
this.optionsRefs = new Map();
|
|
249
249
|
this.changeHandler = null;
|
|
250
|
-
/** Sync hook for callers that need to act under the submit user gesture (Apple Pay). */
|
|
251
250
|
this.submitCallback = null;
|
|
251
|
+
/** Wizard bookkeeping — not @State, only used for logic */
|
|
252
|
+
this._realOrderOptions = [];
|
|
253
|
+
this._collectedFreeOptions = [];
|
|
254
|
+
this._isWizard = false;
|
|
255
|
+
/** Pending free-product steps and where we are in them. */
|
|
256
|
+
this._freeQueue = [];
|
|
257
|
+
this._freeIndex = 0;
|
|
258
|
+
this._collectedFreeProducts = [];
|
|
259
|
+
/**
|
|
260
|
+
* The product's own price, held across the wizard. Gift steps show a 0 base (the gift is
|
|
261
|
+
* free), so without this the final total — which Apple Pay charges — would omit the product.
|
|
262
|
+
*/
|
|
263
|
+
this._orderBasePrice = 0;
|
|
264
|
+
/** Surcharges picked on gift steps already left behind, folded into the final total. */
|
|
265
|
+
this._accumulatedExtra = 0;
|
|
266
|
+
/** @State — all rendering decisions are driven by these */
|
|
252
267
|
this.orderOptions = [];
|
|
253
268
|
this.basePrice = 0;
|
|
254
269
|
this.liveTotal = 0;
|
|
255
270
|
this.isSubmitting = false;
|
|
256
|
-
/** Bumped each open() so the inner <salla-product-options> remounts. */
|
|
257
271
|
this.sessionId = 0;
|
|
258
272
|
this.paymentMode = 'default';
|
|
273
|
+
/** Card data for the free product being configured right now (null on the final step). */
|
|
274
|
+
this.freeProduct = null;
|
|
275
|
+
/**
|
|
276
|
+
* True while a free-product step is active. Tracked separately from `freeProduct` so an
|
|
277
|
+
* entry that arrives without card data still runs as its own step instead of silently
|
|
278
|
+
* rendering as the order-options step.
|
|
279
|
+
*/
|
|
280
|
+
this.inFreeStep = false;
|
|
259
281
|
this.title = '';
|
|
260
282
|
this.subtitle = '';
|
|
261
283
|
this.submitLabel = '';
|
|
262
284
|
this.totalLabel = '';
|
|
263
285
|
this.requiredMessage = '';
|
|
286
|
+
// Hardcode Arabic defaults — salla.lang.get() returns the key string itself when a key is
|
|
287
|
+
// missing, so `|| fallback` never fires. Defaults here guarantee correct text even before
|
|
288
|
+
// translations load or when the keys don't exist in the store's language file yet.
|
|
289
|
+
this.freeProductTitle = 'خيارات المنتج المجاني';
|
|
290
|
+
this.freeProductSubtitle = 'اختر ما يناسبك من خيارات المنتج';
|
|
291
|
+
this.freeProductContinueLabel = 'تابع واحصل على هديتك الان';
|
|
264
292
|
this.handleClose = () => {
|
|
265
293
|
if (this.isSubmitting)
|
|
266
294
|
return;
|
|
@@ -275,41 +303,109 @@ const SallaOrderOptionsModal = class {
|
|
|
275
303
|
componentWillLoad() {
|
|
276
304
|
this.loadTranslations();
|
|
277
305
|
}
|
|
306
|
+
/** True when the page reads right-to-left, so directional icons can mirror. */
|
|
307
|
+
isRtl() {
|
|
308
|
+
return document?.documentElement?.getAttribute('dir') === 'rtl';
|
|
309
|
+
}
|
|
310
|
+
/** Returns the translated value only when the key actually resolves (not the key string itself). */
|
|
311
|
+
t(key, fallback) {
|
|
312
|
+
const val = salla.lang.get(key);
|
|
313
|
+
return val && val !== key ? val : fallback;
|
|
314
|
+
}
|
|
278
315
|
loadTranslations() {
|
|
279
316
|
this.title = salla.lang.get('blocks.order_options.title');
|
|
280
317
|
this.subtitle = salla.lang.get('blocks.order_options.subtitle');
|
|
281
318
|
this.submitLabel = salla.lang.get('blocks.order_options.continue');
|
|
282
319
|
this.totalLabel = salla.lang.get('blocks.order_options.total');
|
|
283
320
|
this.requiredMessage = salla.lang.get('blocks.order_options.required_message');
|
|
321
|
+
this.freeProductTitle = this.t('pages.products.free_product_options_title', 'خيارات المنتج المجاني');
|
|
322
|
+
this.freeProductSubtitle = this.t('pages.products.free_product_options_subtitle', 'اختر ما يناسبك من خيارات المنتج');
|
|
323
|
+
this.freeProductContinueLabel = this.t('pages.products.free_product_cta', 'تابع واحصل على هديتك الان');
|
|
284
324
|
}
|
|
285
|
-
/**
|
|
286
|
-
* Open the modal. Resolves with selections on submit; rejects on dismiss.
|
|
287
|
-
* `onSubmit` fires sync in the submit click (for Apple Pay user-gesture).
|
|
288
|
-
* `paymentMode: 'apple-pay'` swaps the footer button for <apple-pay-button>.
|
|
289
|
-
*/
|
|
290
325
|
async open(payload) {
|
|
291
|
-
|
|
292
|
-
// `details`, which product-options dereferences unguarded.
|
|
293
|
-
this.orderOptions = (Array.isArray(payload.orderOptions) ? payload.orderOptions : [])
|
|
326
|
+
const normalize = (arr) => (Array.isArray(arr) ? arr : [])
|
|
294
327
|
.map((o) => ({ ...o, details: o.details ?? [] }));
|
|
295
|
-
|
|
296
|
-
|
|
328
|
+
const realOrderOptions = normalize(payload.orderOptions);
|
|
329
|
+
const freeQueue = this.buildFreeQueue(payload, normalize);
|
|
330
|
+
this._realOrderOptions = realOrderOptions;
|
|
331
|
+
this._collectedFreeOptions = [];
|
|
332
|
+
this._collectedFreeProducts = [];
|
|
333
|
+
this._freeQueue = freeQueue;
|
|
334
|
+
this._freeIndex = 0;
|
|
335
|
+
this._orderBasePrice = Number(payload.basePrice) || 0;
|
|
336
|
+
this._accumulatedExtra = 0;
|
|
337
|
+
// The step bar appears whenever there is more than one step to walk — N gifts alone
|
|
338
|
+
// still needs it, not just the gift + order-options pairing.
|
|
339
|
+
this._isWizard = (freeQueue.length + (realOrderOptions.length > 0 ? 1 : 0)) > 1;
|
|
297
340
|
this.isSubmitting = false;
|
|
298
|
-
this.sessionId++;
|
|
299
341
|
this.optionsRefs.clear();
|
|
300
342
|
this.submitCallback = payload.onSubmit ?? null;
|
|
301
343
|
this.paymentMode = payload.paymentMode ?? 'default';
|
|
344
|
+
if (freeQueue.length > 0) {
|
|
345
|
+
this.loadFreeStep(0);
|
|
346
|
+
}
|
|
347
|
+
else {
|
|
348
|
+
// Single step: store order options
|
|
349
|
+
this.sessionId++;
|
|
350
|
+
this.inFreeStep = false;
|
|
351
|
+
this.orderOptions = realOrderOptions;
|
|
352
|
+
this.freeProduct = null;
|
|
353
|
+
this.basePrice = Number(payload.basePrice) || 0;
|
|
354
|
+
this.liveTotal = this.basePrice + this.seedOptionsPrice(this.orderOptions);
|
|
355
|
+
}
|
|
302
356
|
await this.modal?.open();
|
|
357
|
+
// salla-modal reads modal-title once in its constructor (@State, not @Prop) so it
|
|
358
|
+
// won't react to attribute changes. Push the correct title imperatively after open().
|
|
359
|
+
this.modal?.setTitle(this.inFreeStep ? this.freeProductTitle : this.title);
|
|
303
360
|
this.attachChangeListener();
|
|
304
361
|
return new Promise((resolve, reject) => {
|
|
305
362
|
this.resolveFn = resolve;
|
|
306
363
|
this.rejectFn = reject;
|
|
307
364
|
});
|
|
308
365
|
}
|
|
366
|
+
/**
|
|
367
|
+
* Normalize `freeProducts` (and the legacy single-gift pair) into the step queue.
|
|
368
|
+
* Entries without options are dropped — there is nothing to ask, and the offer still
|
|
369
|
+
* auto-adds that product with its defaults.
|
|
370
|
+
*/
|
|
371
|
+
buildFreeQueue(payload, normalize) {
|
|
372
|
+
const queue = [];
|
|
373
|
+
(Array.isArray(payload.freeProducts) ? payload.freeProducts : []).forEach((entry) => {
|
|
374
|
+
const options = normalize(entry?.options);
|
|
375
|
+
if (!options.length)
|
|
376
|
+
return;
|
|
377
|
+
queue.push({
|
|
378
|
+
product: entry?.product
|
|
379
|
+
? { ...entry.product, offer_name: entry.offer_name ?? entry.product.offer_name ?? null }
|
|
380
|
+
: null,
|
|
381
|
+
options,
|
|
382
|
+
// The offer decides how many of Y are granted.
|
|
383
|
+
quantity: Number(entry?.quantity) > 0 ? Number(entry.quantity) : 1,
|
|
384
|
+
});
|
|
385
|
+
});
|
|
386
|
+
if (queue.length)
|
|
387
|
+
return queue;
|
|
388
|
+
const legacyOptions = normalize(payload.freeProductOptions);
|
|
389
|
+
if (legacyOptions.length) {
|
|
390
|
+
queue.push({ product: payload.freeProduct ?? null, options: legacyOptions, quantity: 1 });
|
|
391
|
+
}
|
|
392
|
+
return queue;
|
|
393
|
+
}
|
|
394
|
+
/** Swap the modal onto free-product step `index`. */
|
|
395
|
+
loadFreeStep(index) {
|
|
396
|
+
const step = this._freeQueue[index];
|
|
397
|
+
this._freeIndex = index;
|
|
398
|
+
this.optionsRefs.clear();
|
|
399
|
+
this.inFreeStep = true;
|
|
400
|
+
this.orderOptions = step.options;
|
|
401
|
+
this.freeProduct = step.product;
|
|
402
|
+
this.basePrice = 0;
|
|
403
|
+
this.liveTotal = this.seedOptionsPrice(step.options);
|
|
404
|
+
this.sessionId++;
|
|
405
|
+
}
|
|
309
406
|
async close() {
|
|
310
407
|
await this.modal?.close();
|
|
311
408
|
}
|
|
312
|
-
/** Sync walk of inputs — avoids `await` through the @Method that would consume the AP user gesture. */
|
|
313
409
|
collectOrderOptionsSync() {
|
|
314
410
|
const result = [];
|
|
315
411
|
for (const [, el] of this.optionsRefs) {
|
|
@@ -317,9 +413,8 @@ const SallaOrderOptionsModal = class {
|
|
|
317
413
|
continue;
|
|
318
414
|
const inputs = el.querySelectorAll('[name^="options["],[name*="[options]["]');
|
|
319
415
|
inputs.forEach((input) => {
|
|
320
|
-
if (input instanceof HTMLInputElement && (input.type === 'radio' || input.type === 'checkbox') && !input.checked)
|
|
416
|
+
if (input instanceof HTMLInputElement && (input.type === 'radio' || input.type === 'checkbox') && !input.checked)
|
|
321
417
|
return;
|
|
322
|
-
}
|
|
323
418
|
const match = input.name.match(/(?:^|\[)options\]?\[(\d+)\]/);
|
|
324
419
|
if (!match)
|
|
325
420
|
return;
|
|
@@ -335,7 +430,6 @@ const SallaOrderOptionsModal = class {
|
|
|
335
430
|
}
|
|
336
431
|
return result;
|
|
337
432
|
}
|
|
338
|
-
/** Sync native validity — keeps the AP user gesture intact. */
|
|
339
433
|
validateSync() {
|
|
340
434
|
let pass = true;
|
|
341
435
|
for (const [, el] of this.optionsRefs) {
|
|
@@ -343,8 +437,6 @@ const SallaOrderOptionsModal = class {
|
|
|
343
437
|
continue;
|
|
344
438
|
const requiredInputs = el.querySelectorAll('[required]');
|
|
345
439
|
requiredInputs.forEach((input) => {
|
|
346
|
-
// Mirror salla-product-options.reportValidity(): skip hidden/disabled inputs so a
|
|
347
|
-
// required field in a `.hidden` conditional container can't silently block submit.
|
|
348
440
|
if (input.disabled || input.closest('.hidden'))
|
|
349
441
|
return;
|
|
350
442
|
if ('reportValidity' in input && !input.reportValidity())
|
|
@@ -353,11 +445,6 @@ const SallaOrderOptionsModal = class {
|
|
|
353
445
|
}
|
|
354
446
|
return pass;
|
|
355
447
|
}
|
|
356
|
-
/**
|
|
357
|
-
* Sum the per-quantity fee (total_price = additional_price × qty) of any pre-selected details.
|
|
358
|
-
* Uses total_price so the total scales with product quantity; falls back to the per-unit
|
|
359
|
-
* additional_price only when total_price is absent. (CHOD-13172)
|
|
360
|
-
*/
|
|
361
448
|
seedOptionsPrice(orderOptions) {
|
|
362
449
|
let sum = 0;
|
|
363
450
|
orderOptions.forEach((opt) => {
|
|
@@ -368,7 +455,6 @@ const SallaOrderOptionsModal = class {
|
|
|
368
455
|
});
|
|
369
456
|
return sum;
|
|
370
457
|
}
|
|
371
|
-
/** salla.event.on is global — attach per open, detach on close to avoid stacking. */
|
|
372
458
|
attachChangeListener() {
|
|
373
459
|
this.detachChangeListener();
|
|
374
460
|
this.changeHandler = () => this.recomputeTotal();
|
|
@@ -389,7 +475,6 @@ const SallaOrderOptionsModal = class {
|
|
|
389
475
|
? await el.getSelectedOptions()
|
|
390
476
|
: [];
|
|
391
477
|
(selected || []).forEach((s) => {
|
|
392
|
-
// total_price already includes the product-quantity multiplier (CHOD-13172).
|
|
393
478
|
selectedPrice += Number(s.total_price ?? s.additional_price) || 0;
|
|
394
479
|
});
|
|
395
480
|
}
|
|
@@ -402,44 +487,148 @@ const SallaOrderOptionsModal = class {
|
|
|
402
487
|
salla.notify?.error?.(this.requiredMessage);
|
|
403
488
|
return;
|
|
404
489
|
}
|
|
490
|
+
if (this.inFreeStep) {
|
|
491
|
+
const step = this._freeQueue[this._freeIndex];
|
|
492
|
+
const selected = this.collectOrderOptionsSync();
|
|
493
|
+
// Legacy single-gift callers still read the flat list off the first gift.
|
|
494
|
+
if (this._freeIndex === 0)
|
|
495
|
+
this._collectedFreeOptions = selected;
|
|
496
|
+
// A step left entirely empty is not forced into products[] — the offer still
|
|
497
|
+
// auto-adds that gift with its defaults.
|
|
498
|
+
if (selected.length && step?.product?.id) {
|
|
499
|
+
const options = {};
|
|
500
|
+
selected.forEach(({ id, value }) => { options[id] = value; });
|
|
501
|
+
this._collectedFreeProducts.push({
|
|
502
|
+
productId: step.product.id,
|
|
503
|
+
quantity: step.quantity,
|
|
504
|
+
options,
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
// Bank this step's surcharges — the gift's own base is 0, so liveTotal is pure surcharge.
|
|
508
|
+
this._accumulatedExtra += Math.max(0, this.liveTotal - this.basePrice);
|
|
509
|
+
// More gifts to configure — advance to the next one.
|
|
510
|
+
const next = this._freeIndex + 1;
|
|
511
|
+
if (next < this._freeQueue.length) {
|
|
512
|
+
this.loadFreeStep(next);
|
|
513
|
+
this.modal?.setTitle(this.freeProductTitle);
|
|
514
|
+
return;
|
|
515
|
+
}
|
|
516
|
+
if (this._realOrderOptions.length) {
|
|
517
|
+
// Gifts done — advance to the store order-options step.
|
|
518
|
+
this.optionsRefs.clear();
|
|
519
|
+
this.inFreeStep = false;
|
|
520
|
+
this.freeProduct = null; // @State → re-render to the final step
|
|
521
|
+
this.orderOptions = this._realOrderOptions; // @State → swaps to store order options
|
|
522
|
+
// Restore the product's price: this step's total is what the shopper pays, and in
|
|
523
|
+
// apple-pay mode it becomes the sheet amount.
|
|
524
|
+
this.basePrice = this._orderBasePrice;
|
|
525
|
+
this.liveTotal = this._orderBasePrice + this.seedOptionsPrice(this._realOrderOptions);
|
|
526
|
+
this.sessionId++; // forces salla-product-options remount
|
|
527
|
+
this.modal?.setTitle(this.title); // update header: "خيارات الطلب"
|
|
528
|
+
return;
|
|
529
|
+
}
|
|
530
|
+
// Gifts only, no store order options — this was the last step, so fire the submit hook
|
|
531
|
+
// (Apple Pay starts its session in there) before resolving.
|
|
532
|
+
this.isSubmitting = true;
|
|
533
|
+
// This step's surcharge is already banked above, so swap liveTotal for the product price
|
|
534
|
+
// rather than adding it — otherwise the surcharge is counted twice.
|
|
535
|
+
this.liveTotal = this._orderBasePrice;
|
|
536
|
+
this.fireSubmitCallback([]);
|
|
537
|
+
this.resolveAndClose([]);
|
|
538
|
+
this.isSubmitting = false;
|
|
539
|
+
return;
|
|
540
|
+
}
|
|
541
|
+
// Step 2 (or single step) — resolve
|
|
405
542
|
this.isSubmitting = true;
|
|
406
543
|
const orderOptions = this.collectOrderOptionsSync();
|
|
407
|
-
|
|
408
|
-
|
|
544
|
+
this.fireSubmitCallback(orderOptions);
|
|
545
|
+
this.resolveAndClose(orderOptions);
|
|
546
|
+
this.isSubmitting = false;
|
|
547
|
+
}
|
|
548
|
+
/** Product price + every surcharge picked across the wizard. This is what Apple Pay charges. */
|
|
549
|
+
finalTotal() {
|
|
550
|
+
return Math.round((this.liveTotal + this._accumulatedExtra) * 100) / 100;
|
|
551
|
+
}
|
|
552
|
+
/** Fire the sync submit hook — Apple Pay opens its session inside this call, so never await. */
|
|
553
|
+
fireSubmitCallback(orderOptions) {
|
|
409
554
|
try {
|
|
410
|
-
this.submitCallback?.(orderOptions,
|
|
555
|
+
this.submitCallback?.(orderOptions, this.finalTotal(), this._collectedFreeProducts);
|
|
411
556
|
}
|
|
412
557
|
catch (err) {
|
|
413
558
|
salla?.logger?.warn?.('order-options modal onSubmit threw', err);
|
|
414
559
|
}
|
|
415
|
-
|
|
560
|
+
}
|
|
561
|
+
/** Hand the collected selections back to the caller and tear the modal down. */
|
|
562
|
+
resolveAndClose(orderOptions) {
|
|
563
|
+
this.resolveFn?.({
|
|
564
|
+
orderOptions,
|
|
565
|
+
freeProductOptions: this._collectedFreeOptions,
|
|
566
|
+
freeProducts: this._collectedFreeProducts,
|
|
567
|
+
});
|
|
416
568
|
this.resolveFn = null;
|
|
417
569
|
this.rejectFn = null;
|
|
418
570
|
this.submitCallback = null;
|
|
419
571
|
this.detachChangeListener();
|
|
420
572
|
this.modal?.close().then(() => this.reset());
|
|
421
|
-
this.isSubmitting = false;
|
|
422
573
|
}
|
|
423
|
-
/** Clear options on close so the inner <salla-product-options> unmounts. */
|
|
424
574
|
reset() {
|
|
425
575
|
this.orderOptions = [];
|
|
576
|
+
this.freeProduct = null;
|
|
577
|
+
this.inFreeStep = false;
|
|
426
578
|
this.optionsRefs.clear();
|
|
427
579
|
this.liveTotal = 0;
|
|
580
|
+
this._realOrderOptions = [];
|
|
581
|
+
this._collectedFreeOptions = [];
|
|
582
|
+
this._collectedFreeProducts = [];
|
|
583
|
+
this._freeQueue = [];
|
|
584
|
+
this._freeIndex = 0;
|
|
585
|
+
this._isWizard = false;
|
|
428
586
|
}
|
|
429
587
|
render() {
|
|
430
|
-
// salla.money returns HTML (sicon-sar icon) → render via innerHTML. Round
|
|
431
|
-
// first so floating-point sum doesn't show as 1174.3799999999999.
|
|
432
588
|
const totalHtml = salla.money(Math.round(this.liveTotal * 100) / 100);
|
|
433
|
-
|
|
589
|
+
const isStep1 = this.inFreeStep;
|
|
590
|
+
const productIdAttr = isStep1
|
|
591
|
+
? String(this.freeProduct?.id || `free-prod-${this.orderOptions[0]?.id}`)
|
|
592
|
+
: `order-options-${this.orderOptions[0]?.id}`;
|
|
593
|
+
// Distinct per gift so consecutive steps can't share a stale options ref.
|
|
594
|
+
const uniqueKey = isStep1 ? `free-product-options-${this._freeIndex}` : 'order-options';
|
|
595
|
+
// One chip per gift, then one for the store order options. `current` is the index of
|
|
596
|
+
// the step on screen; anything before it is done.
|
|
597
|
+
const stepLabels = [
|
|
598
|
+
...this._freeQueue.map(() => this.freeProductTitle),
|
|
599
|
+
...(this._realOrderOptions.length ? [this.title] : []),
|
|
600
|
+
];
|
|
601
|
+
const current = isStep1 ? this._freeIndex : this._freeQueue.length;
|
|
602
|
+
// Apple Pay must be offered on whichever step is genuinely last. With gifts but no store
|
|
603
|
+
// order options the last step IS a gift step, and gating on `!isStep1` would leave the
|
|
604
|
+
// shopper on a plain Continue button that never opens the payment sheet.
|
|
605
|
+
const isLastStep = current === Math.max(0, stepLabels.length - 1);
|
|
606
|
+
const showApplePay = this.paymentMode === 'apple-pay' && isLastStep;
|
|
607
|
+
// In wizard mode the step chips live in the modal header (slot="icon") so they appear
|
|
608
|
+
// next to the close button. A non-breaking space triggers salla-modal to render the
|
|
609
|
+
// header-inner container; the empty title div is hidden via .s-oom-wizard-modal CSS.
|
|
610
|
+
// In single-step mode the header shows the relevant title text directly.
|
|
611
|
+
const modalTitle = this._isWizard ? ' ' : (isStep1 ? this.freeProductTitle : this.title);
|
|
612
|
+
return (h("salla-modal", { key: '60e626bb49f8592c952182c182e6d73ddcaadeed', ref: el => (this.modal = el), class: `s-order-options-modal-host${this._isWizard ? ' s-oom-wizard-modal' : ''}`, width: "md", "modal-title": modalTitle, onModalVisibilityChanged: (e) => {
|
|
434
613
|
if (!e.detail)
|
|
435
614
|
this.handleClose();
|
|
436
|
-
} },
|
|
615
|
+
} }, this._isWizard && (h("div", { key: 'a842b5d1566c8bb0bd68d5986fb092c14f8a01d6', slot: "icon", class: "s-oom-steps" }, stepLabels.map((label, index) => [
|
|
616
|
+
index > 0 && h("div", { class: "s-oom-connector" }),
|
|
617
|
+
h("div", { class: `s-oom-step ${index === current ? 'active' : (index < current ? 'done' : '')}` }, h("span", { class: "s-oom-step-num" }, index + 1), h("span", { class: "s-oom-step-label" }, label)),
|
|
618
|
+
]))), h("div", { key: '1f61a756dcf824bf4d8be71ccbd9a0c2742851d2', class: "s-order-options-modal-body" }, isStep1 && this.freeProduct && (h("div", { key: '667841475dff0deda06d8d04e0a2841f33ec54b6', class: "s-oom-free-product-card" }, this.freeProduct.thumbnail && (h("img", { key: '129b99226216f0c1ca59fccbc0ba35d5af8cdee7', class: "s-oom-free-product-thumb", src: this.freeProduct.thumbnail, alt: this.freeProduct.name })), h("div", { key: 'ae385e2d4fb967144743d67eadd50f31c23332ec', class: "s-oom-free-product-info" }, h("span", { key: '4f48a3fd0af91435060a0d303a6d0f77f5afd1bc', class: "s-oom-free-product-name" }, this.freeProduct.name), h("div", { key: 'de62961aba2246c1d52d411461d6a45aed620eab', class: "s-oom-free-product-tags" }, h("span", { key: 'db1af48cc1a7583a7f2d026159ff01f03ad216bf', class: "s-oom-free-badge" }, this.t('common.elements.free', 'مجاني')), this.freeProduct.offer_name && (h("span", { key: 'ce595bccd755e908deb1c566758ca3629171962b', class: "s-oom-free-offer-name" }, this.freeProduct.offer_name)))))), h("p", { key: '161740bddbf25369392f362f9613f2e9c6a94fc1', class: "s-order-options-modal-subtitle" }, isStep1 ? this.freeProductSubtitle : this.subtitle), h("div", { key: '20d3f92f0f3782d599ec5ce923c2dad93f7c7608', class: "s-order-options-modal-fields" }, this.orderOptions.length > 0 && (h("salla-product-options", { key: this.sessionId, ref: el => {
|
|
437
619
|
if (!el)
|
|
438
620
|
return;
|
|
439
|
-
this.optionsRefs.set(
|
|
440
|
-
// Without seeding, first multi-select toggle wipes pre-selected defaults.
|
|
621
|
+
this.optionsRefs.set(uniqueKey, el);
|
|
441
622
|
el.seedSelectedOptions?.();
|
|
442
|
-
}, "product-id":
|
|
623
|
+
}, "product-id": productIdAttr, "unique-key": uniqueKey, options: JSON.stringify(this.orderOptions), "hide-out-label": "1", "no-padding": true })))), h("div", { key: 'c80a0c1f1b32e5396483171196879bc43713c2f4', slot: "footer", class: "s-order-options-modal-footer" }, showApplePay ? (h("div", { class: "s-order-options-modal-apple-pay-wrap" }, h("div", { class: "s-order-options-modal-apple-pay-total" }, h("span", { class: "s-order-options-modal-apple-pay-label" }, this.totalLabel), h("span", { class: "s-order-options-modal-apple-pay-amount", innerHTML: totalHtml })), h("apple-pay-button", { locale: salla?.config?.get?.('user.language_code') || 'ar', buttonstyle: "black", type: "buy", class: "s-order-options-modal-apple-pay", onClick: () => this.handleSubmit() }))) : (h("salla-button", { type: "button", color: "primary", fill: "solid", width: "wide", loading: this.isSubmitting, onClick: () => this.handleSubmit() }, h("span", { class: "s-order-options-modal-cta-content" }, h("span", { class: "s-order-options-modal-cta-text" }, isStep1 ? this.freeProductContinueLabel : this.submitLabel), isStep1
|
|
624
|
+
? h("i", { class: {
|
|
625
|
+
's-oom-cta-arrow': true,
|
|
626
|
+
// "Forward" is left in RTL and right in LTR; hardcoding arrow-left made
|
|
627
|
+
// English stores show a back-pointing arrow (CP-3813).
|
|
628
|
+
'sicon-arrow-left': this.isRtl(),
|
|
629
|
+
'sicon-arrow-right': !this.isRtl(),
|
|
630
|
+
} })
|
|
631
|
+
: h("span", { class: "s-order-options-modal-cta-total", innerHTML: totalHtml })))))));
|
|
443
632
|
}
|
|
444
633
|
get host() { return getElement(this); }
|
|
445
634
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h } from './index-BC0OSCdw.js';
|
|
5
5
|
import { C as CameraIcon } from './camera-C6jIkM-X.js';
|
|
6
6
|
import { F as FormFieldTypes } from './interfaces-OF8QcbMM.js';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
import { i as isMapOriginIntent } from './helpers-CV6uPJEJ.js';
|
|
6
6
|
|
|
7
7
|
const DEBUG_KEY = 'salla-delivery-promise-debug';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
import { F as FilterOptionTypes, H as Helper } from './Helper-Cql-WbqR.js';
|
|
6
6
|
import './anime.es-CgtvEd63.js';
|
|
7
7
|
|
|
@@ -175,12 +175,12 @@ const SallaFiltersWidget = class {
|
|
|
175
175
|
return h("span", { class: "s-filters-option-name" }, label);
|
|
176
176
|
}
|
|
177
177
|
render() {
|
|
178
|
-
return (h(Host, { key: '
|
|
178
|
+
return (h(Host, { key: 'af3f05601697115a001949d5c23d8925f6c68135', class: "s-filters-widget-container" }, h("h3", { key: '689046ac453166e29fdb4e3ad10568a989446bfb', class: "s-filters-widget-title", onClick: () => this.toggleWidget() }, h("span", { key: '00d65abda360e88e26a08016bb1bd23eceee9f4b' }, this.option.label), h("span", { key: '1915aaec2e1ea66235071f0b4f872bd6d9717a21', class: `s-filters-widget-plusminus ${this.isOpen ? 's-filters-widget-plusminus-active' : ''}` })), h("div", { key: 'd94f99643aa914391f131acebfb71d4183263df5', class: "s-filters-widget-content", ref: (el) => this.widgetContent = el }, Array.isArray(this.option.values) && this.option.values.length > 5 && (h("div", { key: '0b67486012b38ce82a377b0f3cb6465892d718ae', class: "s-filters-widget-search-wrapper", style: { padding: '8px 0', marginBottom: '8px' } }, h("input", { key: '00bf03c96c9fa7199872f1444c4484bf23049dd4', type: "text", class: "s-filters-widget-search-input", placeholder: salla.lang.get('blocks.header.search_placeholder') || 'بحث...', value: this.searchQuery, onInput: (e) => this.searchQuery = e.target.value }))), h("div", { key: '79b29b30854583559ee8b0082210ad2f34e31e1a', class: "s-filters-widget-values", ref: (el) => this.widgetValues = el }, h("slot", { key: '0e657a77d5e62ee04cf2d3bd30982bb6addf06ef' }), this.option.type !== FilterOptionTypes.RANGE
|
|
179
179
|
? this.renderFilterOption(this.option)
|
|
180
180
|
: h("salla-price-range", { onChanged: (event) => {
|
|
181
181
|
this.changed.emit(event.detail);
|
|
182
182
|
}, ref: price => this.priceRange = price, filtersData: this.filtersData, option: this.option })), this.withLoadMore && (!this.searchQuery || this.filteredCount > this.initialItemCount) &&
|
|
183
|
-
h("a", { key: '
|
|
183
|
+
h("a", { key: '29a3578886c0c88b6af2dc529004f9f4ab663986', class: "s-filters-widget-more", onClick: () => this.showMore() }, !this.isShowMore ? this.showMoreLabel : this.showLessLabel))));
|
|
184
184
|
}
|
|
185
185
|
get host() { return getElement(this); }
|
|
186
186
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
import { H as Helper, F as FilterOptionTypes } from './Helper-Cql-WbqR.js';
|
|
6
6
|
import './anime.es-CgtvEd63.js';
|
|
7
7
|
|
|
@@ -216,7 +216,7 @@ const SallaFilters = class {
|
|
|
216
216
|
this.applyFilters();
|
|
217
217
|
}
|
|
218
218
|
render() {
|
|
219
|
-
return h(Host, { key: '
|
|
219
|
+
return h(Host, { key: 'd72b6ce577e47864d9095922f9c2d88068c2a2c4' }, this.filters?.map(option => h("salla-filters-widget", { option: option, filtersData: this.filtersData, onChanged: ({ detail: { event, option, value } }) => {
|
|
220
220
|
this.handleOptionChange(event, option, value);
|
|
221
221
|
} })));
|
|
222
222
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
|
|
6
6
|
const sallaFulfillmentMethodsCss = "/*!twlt*/:host{display:block}.s-fulfillment-methods{font-family:inherit}.s-fulfillment-methods-list{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;margin-top:12px}:host-context([dir=rtl]) .s-fulfillment-methods-content{flex-direction:row-reverse}:host-context([dir=ltr]) .s-fulfillment-methods-content{flex-direction:row}.s-fulfillment-methods-card{flex:1;min-width:0;border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:16px}.s-fulfillment-methods-content{display:flex;align-items:center;gap:12px}.s-fulfillment-methods-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.s-fulfillment-methods-title{font-weight:700;font-size:14px;line-height:1.3;color:var(--color-text-primary, #2b2d34)}.s-fulfillment-methods-subtitle{font-size:12px;line-height:1.4;color:var(--color-text-secondary, #6b7280)}.s-fulfillment-methods-icon-wrap{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-secondary, #f3f4f6);border-radius:10px}.s-fulfillment-methods-icon{font-size:22px;color:var(--color-text-secondary, #6b7280);line-height:1}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-fulfillment-methods-list{margin-bottom:0.75rem;margin-top:0.75rem;display:flex;flex-wrap:wrap;gap:1rem}.s-fulfillment-methods-card{min-width:0px;flex:1 1 0%;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:1rem}.s-fulfillment-methods-content{display:flex;flex-direction:row;align-items:center;gap:0.75rem}.s-fulfillment-methods-content:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row-reverse}.s-fulfillment-methods-text{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;gap:0.25rem}.s-fulfillment-methods-title{font-size:0.875rem;line-height:1.25rem;font-weight:700;line-height:1.375;color:var(--color-text-primary,#2b2d34)}.s-fulfillment-methods-subtitle{font-size:0.75rem;line-height:1rem;line-height:1.4;color:var(--color-text-secondary,#6b7280)}.s-fulfillment-methods-icon-wrap{display:flex;height:2.75rem;width:2.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:10px;background-color:var(--color-surface-secondary,#f3f4f6)}.s-fulfillment-methods-icon{font-size:22px;line-height:1;color:var(--color-text-secondary,#6b7280)}";
|
|
7
7
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h } from './index-
|
|
4
|
+
import { r as registerInstance, h } from './index-BC0OSCdw.js';
|
|
5
5
|
import { a as anime } from './anime.es-CgtvEd63.js';
|
|
6
6
|
import { a as arrowLeft } from './arrow-left-BedNk7k1.js';
|
|
7
7
|
import { C as Cancel } from './cancel-BsLF_HK7.js';
|
|
8
8
|
import { G as GiftSharing } from './gift-sharing-DxkgAGoT.js';
|
|
9
|
-
import { a as appendOrderOptionsToPayload } from './apple-pay-order-options-
|
|
9
|
+
import { a as appendOrderOptionsToPayload } from './apple-pay-order-options-s0kn7yr8.js';
|
|
10
10
|
|
|
11
11
|
var Images = `<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
|
|
12
12
|
<title>images</title>
|
|
@@ -864,7 +864,7 @@ const SallaGifting = class {
|
|
|
864
864
|
}
|
|
865
865
|
render() {
|
|
866
866
|
return [
|
|
867
|
-
h("div", { key: '
|
|
867
|
+
h("div", { key: 'eb77c96ecc39291dc3def641cea481cc90b3e267' }, h("salla-list-tile", { key: 'a9e8e946a5a06c6fe380073a068612fadeb0fc20', class: this.generateClass() }, h("div", { key: 'eebf210be6fe5e1672e695d47c9bde11320883c8', slot: "title" }, this.vertical ? h("span", { innerHTML: GiftSharing }) : '', h("h3", { key: 'f0e8320f7b29878ec7a96c201c47c5f60f4d9b21' }, !!this.widgetTitle ? this.widgetTitle : this.sectionTitle)), h("div", { key: '446c7e990c11838a3356acce58730392822bec93', slot: "subtitle" }, h("div", { key: '9a70815ad3c56c0360f7f5df1863c5aba5bc896e' }, !!this.widgetSubtitle ? this.widgetSubtitle : this.sectionSubtitle)), h("div", { key: '952b4ba1b1c864f7700ad907661b0d8962f04ab8', slot: "action" }, h("salla-button", { key: 'fb226574b5780e51da64cba8b664845f9fc9eb34', color: "primary", fill: "outline", width: "wide", class: "s-gifting-widget-action", onClick: () => this.handleGiftButtonClick() }, h("slot", { key: '6d15b2311b8fa8971438fe413e195f0d8b45b14d', name: "widget-btn-content" }, h("div", { key: 'ac5118ea07ad9048f4302397f59620cc20707f2f', class: "s-gifting-widget-action-content" }, h("span", { key: 'ecd29618212e32d4c9a9630e1041757175050a7e', innerHTML: GiftSharing }), " \u00A0", h("span", { key: 'b0ea950ea255e38b8070adc258f6fe95257f4ee6' }, this.sectionBtnText)))))), h("salla-modal", { key: 'a5c2f373772e75fb2d4317a4870e9d164ee1c11c', id: this.hostId, isLoading: true, class: "s-gifting-modal", width: "sm", ref: modal => this.modal = modal }, h("div", { key: '23b4f5e5184ac45553c064b82534935b69f4971c', slot: "loading" }, h("div", { key: 'ba556012198ceec99b547b4bb81c498a684b582e', class: "s-gifting-skeleton" }, h("div", { key: '6440590d61dd8e0fc43228bbdc474aab6fe5cebc', class: "s-gifting-modal-header" }, h("salla-skeleton", { key: '4a7b1911383367aa4d8dec04f28ac82df21a5d73', type: 'circle', height: '5rem', width: '5rem' }), h("h2", { key: '22105ca62fcf60145e40bcf03eccafa562288cd9', class: "s-gifting-modal-title" }, h("div", { key: 'dd1b90825ebc0d7dbd676d3862fb50ee20455b89', class: "s-gifting-modal-badge-wrapper" }, h("salla-skeleton", { key: '6554734da468f07ebe5e8b78aff926c3b0235a07', height: '15px', width: '150px' })))), h("div", { key: '9bbad16d73fb651480312cc1920b7a08cca91fd2', class: "s-gifting-skeleton-content" }, h("salla-skeleton", { key: '18fa7ea81b582e3ae6f47efb56197b06ce66651e', height: '10px', width: '150px' }), h("salla-skeleton", { key: '2af61d925bb04c9713a7792b21ecd354f0516f67', height: '230px' }), h("salla-skeleton", { key: '8f7d2007c374b89ea252782d54e111fcd8e6f0c0', height: '10px', width: '150px' }), h("salla-skeleton", { key: 'ad2241ce42187cab3d5e487577f984571191476f', height: '30px' }), h("salla-skeleton", { key: 'f5923597280a309f81edf21960c1a1a0ffcee30f', height: '40px' })))), h("slot", { key: '607f49b24ad953ace7a49aae0198150c29842350', name: "header" }), !!this.hasError ?
|
|
868
868
|
h("salla-placeholder", { alignment: "center" }, h("span", { slot: "title" }, this.errorMessage || salla.lang.get('common.errors.empty_results')), h("span", { slot: "description" }, " "))
|
|
869
869
|
:
|
|
870
870
|
[
|
|
@@ -887,7 +887,7 @@ const SallaGifting = class {
|
|
|
887
887
|
h("div", { class: this.step2ItemClass(this.errors?.['receiver.city_id'] ? 's-form-group s-form-has-error' : 's-form-group') }, h("label", { class: "s-form-label", htmlFor: `${this.hostId}-city` }, this.receiverCityFieldLabel), h("salla-searchable-dropdown", { placeholder: this.selectCity, items: this.displayedCities, selectedItem: this.selectedCity, loading: this.loadingCities, searching: this.searchingCities, disabled: this.loadingCities || (this.isKSA && !this.selectedRegionId), required: true, inputId: `${this.hostId}-city`, searchQuery: this.citySearchQuery, clientSearch: !this.enableCityAjaxSearch, dropUp: true, keepParentScroll: true, onItemSelected: (e) => this.handleCitySelected(e.detail), onSearchInput: (e) => this.handleCitySearch(e.detail), onDropdownClosed: () => this.handleCityDropdownClosed() }), this.errors && this.errors['receiver.city_id'] ?
|
|
888
888
|
h("span", { class: "s-gifting-error" }, this.errors['receiver.city_id']) : ''), this.isPhysical() && this.cityNoticeText() &&
|
|
889
889
|
h("div", { class: this.step2ItemClass('s-gifting-info') }, h("span", { innerHTML: Alert }), h("span", null, this.cityNoticeText())), !this.isPhysical() && h("div", { class: this.step2ItemClass() }, h("label", { class: "s-gifting-schedule s-gifting-clickable", htmlFor: `schedule-${this.hostId}` }, h("input", { type: "checkbox", name: 'schedule', id: `schedule-${this.hostId}`, onChange: () => this.toggleCalendar(), class: "s-checkbox" }), h("span", { class: "s-form-label" }, " ", this.sendLater, " "))), h("div", { class: this.getCalendarClasses(), ref: (el) => this.calendarFormGroup = el }, h("label", { class: "s-form-label" }, this.selectSendDateAndTime), h("salla-datetime-picker", { value: this.deliveryDate, placeholder: this.selectSendDateAndTime, "enable-time": true, "date-format": "Y-m-d h:i K", onPicked: (event) => this.handleDateTimePicker(event) }), h("span", { class: "s-gifting-calendar-hint" }, this.canNotEditOrderAfterSelectDate)), h("div", { class: this.step2ItemClass('s-gifting-step-two-footer') }, !this.skipStep1() && h("a", { href: "#!", innerHTML: arrowLeft, onClick: (e) => this.goToStep1(e) }), h("salla-button", { onClick: () => this.submitForm(), color: "primary", width: 'wide' }, h("span", null, this.sendGift)))))
|
|
890
|
-
], h("slot", { key: '
|
|
890
|
+
], h("slot", { key: 'c83487720cc77c14ccc08e8b2872b5f4fbd0bfa3', name: "footer" })))
|
|
891
891
|
];
|
|
892
892
|
}
|
|
893
893
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
|
|
6
6
|
const SallaHook = class {
|
|
7
7
|
constructor(hostRef) {
|
|
@@ -15,7 +15,7 @@ const SallaHook = class {
|
|
|
15
15
|
this.host.before(element);
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return h(Host, { key: '
|
|
18
|
+
return h(Host, { key: 'e9402928843fe4612c514c4a0f6374b2d1f02736' });
|
|
19
19
|
}
|
|
20
20
|
async componentDidLoad() {
|
|
21
21
|
// Register this component for hooks system, already on it logic to run componentDidLoad trigger
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
|
|
5
5
|
import { H as Helper } from './Helper-Cql-WbqR.js';
|
|
6
6
|
import './anime.es-CgtvEd63.js';
|
|
7
7
|
|