@salla.sa/twilight-components 2.14.575 → 2.14.577
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/{filepond-NMq4bM2q.js → filepond-iflxa4A5.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-poster-TEelNjjG.js → filepond-plugin-file-poster-NZ84xlKh.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-size-DRVxzFUc.js → filepond-plugin-file-validate-size-m8Z_JlZX.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-type-75J1mHEB.js → filepond-plugin-file-validate-type-BfF6LYAT.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-edit-CvC-CZjk.js → filepond-plugin-image-edit-DfRJ3iRj.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-exif-orientation-D7mJeHKx.js → filepond-plugin-image-exif-orientation-BZxYZai-.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-preview-QxURSuZ4.js → filepond-plugin-image-preview-BQ7HvH2d.js} +1 -1
- package/dist/cjs/{helpers-Dm4BirHO.js → helpers-DBynEhOO.js} +0 -15
- package/dist/cjs/{index-Bt8A6pnr.js → index-CSe-ijAV.js} +2 -2
- package/dist/cjs/{intlTelInput-Dq8y3YHO.js → intlTelInput-DHfYz8vv.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/salla-accordion-body_2.cjs.entry.js +3 -3
- package/dist/cjs/salla-accordion_6.cjs.entry.js +2 -2
- package/dist/cjs/salla-add-product-button_5.cjs.entry.js +3 -3
- package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
- package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
- 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 +17 -17
- package/dist/cjs/salla-badge.cjs.entry.js +1 -1
- package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
- package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +179 -187
- package/dist/cjs/salla-cart-coupons.cjs.entry.js +160 -7
- 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.cjs.entry.js +2 -2
- package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
- package/dist/cjs/salla-delivery-promise.cjs.entry.js +2 -2
- 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-gift-card-redeem.cjs.entry.js +1 -1
- package/dist/cjs/salla-gifting.cjs.entry.js +3 -3
- 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 +18 -2
- 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-options-modal.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 +38 -13
- 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-product-card.cjs.entry.js +3 -3
- 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/salla-wishlist-summary.cjs.entry.js +1 -1
- package/dist/cjs/twilight.cjs.js +2 -2
- package/dist/cjs/{vanilla-picker-BkJyQVMl.js → vanilla-picker-Brk9Mb54.js} +1 -1
- package/dist/collection/assets/svg/mini-map.svg +6 -30
- package/dist/collection/components/salla-accordion/salla-accordion-head.js +2 -2
- package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +241 -238
- package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +175 -146
- package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.css +154 -92
- package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +160 -5
- 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/salla-offer.js +17 -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-summary/salla-order-summary.js +1 -1
- package/dist/collection/components/salla-orders/salla-orders.js +39 -12
- 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 +1 -1
- 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-search-product-card/salla-search-product-card.js +2 -2
- 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/helpers.js +1 -15
- package/dist/components/index.js +2 -2
- package/dist/components/salla-accordion-head2.js +2 -2
- package/dist/components/salla-bullet-delivery.js +175 -184
- package/dist/components/salla-cart-coupons.js +161 -6
- 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-delivery-promise.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-offer.js +17 -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-summary.js +1 -1
- package/dist/components/salla-orders.js +39 -12
- 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 +1 -1
- 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-search-product-card2.js +2 -2
- 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/{filepond-kmpJTY5p.js → filepond-Qm94dFPs.js} +1 -1
- package/dist/esm/{filepond-plugin-file-poster-8M0TsTUo.js → filepond-plugin-file-poster-CHpnwHYe.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-size-CPVDzrMj.js → filepond-plugin-file-validate-size-BwHBxxMg.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-type-D0qUdWNB.js → filepond-plugin-file-validate-type-BD-yTEPO.js} +1 -1
- package/dist/esm/{filepond-plugin-image-edit-K8nFORG9.js → filepond-plugin-image-edit-DKc0Yw10.js} +1 -1
- package/dist/esm/{filepond-plugin-image-exif-orientation-BSvnwKAw.js → filepond-plugin-image-exif-orientation-CepmNFGF.js} +1 -1
- package/dist/esm/{filepond-plugin-image-preview-hArDoD8N.js → filepond-plugin-image-preview-FhnzagMd.js} +1 -1
- package/dist/esm/{helpers-CV6uPJEJ.js → helpers-BJxBnTgv.js} +1 -15
- package/dist/esm/{index-a6lSRQK4.js → index-BAXTlrSC.js} +2 -2
- package/dist/esm/{intlTelInput-CC5xRRkd.js → intlTelInput-BJlOPJYY.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/salla-accordion-body_2.entry.js +3 -3
- package/dist/esm/salla-accordion_6.entry.js +2 -2
- package/dist/esm/salla-add-product-button_5.entry.js +3 -3
- package/dist/esm/salla-advertisement.entry.js +1 -1
- package/dist/esm/salla-alert_2.entry.js +1 -1
- 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 +17 -17
- package/dist/esm/salla-badge.entry.js +1 -1
- package/dist/esm/salla-basket-gap.entry.js +1 -1
- package/dist/esm/salla-bullet-delivery_3.entry.js +179 -187
- package/dist/esm/salla-cart-coupons.entry.js +160 -7
- 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.entry.js +2 -2
- package/dist/esm/salla-custom-fields.entry.js +1 -1
- package/dist/esm/salla-delivery-promise.entry.js +2 -2
- 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-gift-card-redeem.entry.js +1 -1
- package/dist/esm/salla-gifting.entry.js +3 -3
- 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 +18 -2
- 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-options-modal.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 +38 -13
- 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-product-card.entry.js +3 -3
- 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/salla-wishlist-summary.entry.js +1 -1
- package/dist/esm/twilight.js +3 -3
- package/dist/esm/{vanilla-picker-CDhGfTst.js → vanilla-picker-C_cY41gl.js} +1 -1
- package/dist/twilight/{p-cc15290b.entry.js → p-00a727c3.entry.js} +1 -1
- package/dist/twilight/{p-fc13e706.entry.js → p-0227316e.entry.js} +1 -1
- package/dist/twilight/{p-aee0c658.entry.js → p-03c959bb.entry.js} +1 -1
- package/dist/twilight/{p-a177b13f.entry.js → p-072ee78f.entry.js} +1 -1
- package/dist/twilight/{p-f2f6f502.entry.js → p-073e1363.entry.js} +1 -1
- package/dist/twilight/{p-4a60be6d.entry.js → p-0806da7e.entry.js} +1 -1
- package/dist/twilight/{p-5134aae8.entry.js → p-08cedab0.entry.js} +1 -1
- package/dist/twilight/{p-69594ced.entry.js → p-0bcca7f8.entry.js} +1 -1
- package/dist/twilight/{p-9b04ed7f.entry.js → p-10a68a21.entry.js} +1 -1
- package/dist/twilight/{p-00e68964.entry.js → p-13abf9ca.entry.js} +1 -1
- package/dist/twilight/{p-742f2c15.entry.js → p-13c35685.entry.js} +1 -1
- package/dist/twilight/{p-540138a1.entry.js → p-162fa48e.entry.js} +1 -1
- package/dist/twilight/{p-e0b5a06d.entry.js → p-1762fd86.entry.js} +1 -1
- package/dist/twilight/{p-2af75479.entry.js → p-18c41e9a.entry.js} +1 -1
- package/dist/twilight/{p-d6803c56.entry.js → p-1fbb0b22.entry.js} +1 -1
- package/dist/twilight/{p-109472c5.entry.js → p-1fd6a10e.entry.js} +1 -1
- package/dist/twilight/p-28cdaf6b.entry.js +4 -0
- package/dist/twilight/{p-ebd9a6c2.entry.js → p-292a0b4a.entry.js} +1 -1
- package/dist/twilight/{p-d0fce326.entry.js → p-2ba4956f.entry.js} +1 -1
- package/dist/twilight/{p-6f371a84.entry.js → p-2c543420.entry.js} +1 -1
- package/dist/twilight/{p-b7624eb6.entry.js → p-2e3a56de.entry.js} +1 -1
- package/dist/twilight/p-2e4064eb.entry.js +4 -0
- package/dist/twilight/{p-d56cb23a.entry.js → p-3153f560.entry.js} +1 -1
- package/dist/twilight/{p-977e3e76.entry.js → p-3a3815a2.entry.js} +1 -1
- package/dist/twilight/{p-0a38d353.entry.js → p-3cef6be2.entry.js} +1 -1
- package/dist/twilight/{p-3500065c.entry.js → p-3dd612a6.entry.js} +1 -1
- package/dist/twilight/{p-312e8678.entry.js → p-411c1ab0.entry.js} +1 -1
- package/dist/twilight/p-423d852d.entry.js +4 -0
- package/dist/twilight/{p-c500e5fe.entry.js → p-44a6598e.entry.js} +1 -1
- package/dist/twilight/{p-7f69cf5d.entry.js → p-51d83216.entry.js} +1 -1
- package/dist/twilight/{p-6a7eacbd.entry.js → p-51fb8841.entry.js} +1 -1
- package/dist/twilight/{p-2541db96.entry.js → p-56609a91.entry.js} +1 -1
- package/dist/twilight/{p-2591eead.entry.js → p-58c1bf51.entry.js} +1 -1
- package/dist/twilight/{p-6051a92c.entry.js → p-59a7ca2e.entry.js} +1 -1
- package/dist/twilight/{p-426acd77.entry.js → p-5a77257c.entry.js} +1 -1
- package/dist/twilight/{p-9e53d7a6.entry.js → p-5c4e2ed3.entry.js} +1 -1
- package/dist/twilight/{p-a0d39b81.entry.js → p-5f464161.entry.js} +1 -1
- package/dist/twilight/{p-d1a0bd97.entry.js → p-637670fa.entry.js} +1 -1
- package/dist/twilight/{p-81c88f97.entry.js → p-6605f258.entry.js} +1 -1
- package/dist/twilight/{p-3bd153c1.entry.js → p-665bc308.entry.js} +1 -1
- package/dist/twilight/{p-7cc8b82b.entry.js → p-6bfe12d5.entry.js} +1 -1
- package/dist/twilight/{p-cbcbc9f8.entry.js → p-6de608eb.entry.js} +1 -1
- package/dist/twilight/{p-e9d73e7d.entry.js → p-6f9bc285.entry.js} +1 -1
- package/dist/twilight/{p-6958e848.entry.js → p-70451662.entry.js} +1 -1
- package/dist/twilight/{p-45b97699.entry.js → p-7b0cf8a1.entry.js} +1 -1
- package/dist/twilight/{p-6f741b21.entry.js → p-7d08dcfb.entry.js} +1 -1
- package/dist/twilight/{p-01cae03e.entry.js → p-7d37b650.entry.js} +1 -1
- package/dist/twilight/{p-254e6e0c.entry.js → p-7f3e110c.entry.js} +1 -1
- package/dist/twilight/{p-5fe0908b.entry.js → p-80302c52.entry.js} +1 -1
- package/dist/twilight/{p-583a63e5.entry.js → p-806083b4.entry.js} +1 -1
- package/dist/twilight/{p-50816838.entry.js → p-84cff600.entry.js} +1 -1
- package/dist/twilight/{p-c9779211.entry.js → p-884104a3.entry.js} +1 -1
- package/dist/twilight/{p-34d33337.entry.js → p-898ce93b.entry.js} +1 -1
- package/dist/twilight/{p-dc86737c.entry.js → p-8a865d37.entry.js} +1 -1
- package/dist/twilight/{p-bc54fc8b.entry.js → p-8c750736.entry.js} +1 -1
- package/dist/twilight/{p-7f861ac0.entry.js → p-8fc2eb01.entry.js} +1 -1
- package/dist/twilight/{p-2af98444.entry.js → p-97fee81d.entry.js} +1 -1
- package/dist/twilight/{p-c9ba30cd.entry.js → p-9920bbad.entry.js} +1 -1
- package/dist/twilight/{p-24bd13b8.entry.js → p-99b9bf66.entry.js} +1 -1
- package/dist/twilight/{p-b0c86557.entry.js → p-9b4a0dd3.entry.js} +1 -1
- package/dist/twilight/{p-0f1981ee.entry.js → p-9e054110.entry.js} +1 -1
- package/dist/twilight/{p-a6lSRQK4.js → p-BAXTlrSC.js} +1 -1
- package/dist/twilight/p-BJxBnTgv.js +4 -0
- package/dist/twilight/{p-BokV7EHy.js → p-BWpg3MwW.js} +1 -1
- package/dist/twilight/{p-DNjWzZsK.js → p-C6WaobtY.js} +1 -1
- package/dist/twilight/{p-wx2L9ZB0.js → p-CvebbG3m.js} +1 -1
- package/dist/twilight/{p-CSuif4Xw.js → p-D5lNzFgl.js} +1 -1
- package/dist/twilight/{p-CfhebjBE.js → p-DGzNHmGp.js} +1 -1
- package/dist/twilight/{p-BG1dHHdm.js → p-DnrvXyI6.js} +1 -1
- package/dist/twilight/{p-DOF2UkI4.js → p-DpI1J-G1.js} +1 -1
- package/dist/twilight/{p-DWPp9ZjN.js → p-SguJQlDo.js} +1 -1
- package/dist/twilight/{p-DZHubgN5.js → p-_f6GlygH.js} +1 -1
- package/dist/twilight/{p-5d72b7d7.entry.js → p-a2d07dba.entry.js} +1 -1
- package/dist/twilight/{p-8271e127.entry.js → p-a73a785d.entry.js} +1 -1
- package/dist/twilight/{p-e155a1a6.entry.js → p-a79c04a2.entry.js} +1 -1
- package/dist/twilight/{p-3a113599.entry.js → p-a9fcdac5.entry.js} +1 -1
- package/dist/twilight/{p-f1a3cf9e.entry.js → p-ab3ad37f.entry.js} +1 -1
- package/dist/twilight/{p-10968d1c.entry.js → p-abc3e5d5.entry.js} +1 -1
- package/dist/twilight/{p-0f9bfeeb.entry.js → p-b356f3f6.entry.js} +1 -1
- package/dist/twilight/{p-2bf8f0ed.entry.js → p-b55fb51b.entry.js} +1 -1
- package/dist/twilight/{p-28875055.entry.js → p-bb35af04.entry.js} +1 -1
- package/dist/twilight/{p-3ff2b8b6.entry.js → p-bf845ea7.entry.js} +1 -1
- package/dist/twilight/{p-5b1a0560.entry.js → p-c2e871ae.entry.js} +1 -1
- package/dist/twilight/{p-004584f5.entry.js → p-c38fb150.entry.js} +1 -1
- package/dist/twilight/{p-7b373051.entry.js → p-c63ff8ef.entry.js} +1 -1
- package/dist/twilight/{p-63a315e1.entry.js → p-c90600b1.entry.js} +1 -1
- package/dist/twilight/{p-2c480419.entry.js → p-cc1b3318.entry.js} +1 -1
- package/dist/twilight/{p-44b8d453.entry.js → p-ce1d3ad9.entry.js} +1 -1
- package/dist/twilight/{p-ea1c06ab.entry.js → p-ce80fb8f.entry.js} +1 -1
- package/dist/twilight/{p-d7e5b860.entry.js → p-d3556d1f.entry.js} +1 -1
- package/dist/twilight/{p-ef037207.entry.js → p-d3cf9f8a.entry.js} +1 -1
- package/dist/twilight/{p-af99726d.entry.js → p-dd18ac5c.entry.js} +1 -1
- package/dist/twilight/p-dda4d231.entry.js +4 -0
- package/dist/twilight/{p-86ad5af2.entry.js → p-e0d834a7.entry.js} +1 -1
- package/dist/twilight/{p-71ecb477.entry.js → p-e4ff7a77.entry.js} +1 -1
- package/dist/twilight/{p-5ddd9aa0.entry.js → p-e66856c5.entry.js} +1 -1
- package/dist/twilight/{p-a47b910f.entry.js → p-e7c4d4cc.entry.js} +1 -1
- package/dist/twilight/{p-12ab7c1a.entry.js → p-e944f02a.entry.js} +1 -1
- package/dist/twilight/{p-21e6b2e7.entry.js → p-e95fd91e.entry.js} +1 -1
- package/dist/twilight/{p-55e0745e.entry.js → p-ea7846fd.entry.js} +1 -1
- package/dist/twilight/p-f0ca37fc.entry.js +4 -0
- package/dist/twilight/{p-96cac80e.entry.js → p-f2e13d28.entry.js} +1 -1
- package/dist/twilight/p-f514b9f5.entry.js +4 -0
- package/dist/twilight/p-fa6f2b27.entry.js +4 -0
- package/dist/twilight/{p-84599aa5.entry.js → p-faadae59.entry.js} +1 -1
- package/dist/twilight/{p-4bf58226.entry.js → p-fc500047.entry.js} +1 -1
- package/dist/twilight/p-fdc97278.entry.js +4 -0
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/components/salla-bullet-delivery/interfaces.d.ts +6 -0
- package/dist/types/components/salla-bullet-delivery/salla-bullet-delivery.d.ts +25 -12
- package/dist/types/components/salla-cart-coupons/interfaces.d.ts +20 -0
- package/dist/types/components/salla-cart-coupons/salla-cart-coupons.d.ts +49 -1
- package/dist/types/components/salla-offer/salla-offer.d.ts +10 -0
- package/dist/types/components/salla-orders/interface.d.ts +2 -0
- package/dist/types/components/salla-orders/salla-orders.d.ts +5 -1
- package/dist/types/components.d.ts +2 -2
- package/package.json +5 -5
- package/dist/twilight/p-127f0000.entry.js +0 -4
- package/dist/twilight/p-25a4633f.entry.js +0 -4
- package/dist/twilight/p-3357d33a.entry.js +0 -4
- package/dist/twilight/p-338f727b.entry.js +0 -4
- package/dist/twilight/p-7a19ef45.entry.js +0 -4
- package/dist/twilight/p-8d30dbac.entry.js +0 -4
- package/dist/twilight/p-CV6uPJEJ.js +0 -4
- package/dist/twilight/p-a391b31d.entry.js +0 -4
- package/dist/twilight/p-eb11b8be.entry.js +0 -4
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
4
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
5
|
-
import { i as isSaudiArabia, b as bulletDeliveryAPI, r as requireRegionAndDistrictForSA, g as getIntentLatitude, a as getIntentLongitude, h as hasSessionAddressIntent, c as getIntentCityId, d as getIntentCountryId, e as getIntentRegionId, f as getIntentDistrictId, j as filterBranches, k as findNearestBranch, l as getGeolocationErrorMessage, m as
|
|
5
|
+
import { i as isSaudiArabia, b as bulletDeliveryAPI, r as requireRegionAndDistrictForSA, g as getIntentLatitude, a as getIntentLongitude, h as hasSessionAddressIntent, c as getIntentCityId, d as getIntentCountryId, e as getIntentRegionId, f as getIntentDistrictId, j as filterBranches, k as findNearestBranch, l as getGeolocationErrorMessage, m as clearApiCache, n as getIntentSubtitle, o as getIntentBranchId, p as isMapOriginIntent, q as isBranchSelectable, s as getIntentCountryCode } from './helpers.js';
|
|
6
6
|
import { S as SILocation } from './location.js';
|
|
7
7
|
import { S as Search } from './search.js';
|
|
8
8
|
import { d as defineCustomElement$7 } from './salla-button2.js';
|
|
@@ -37,50 +37,15 @@ var GPS = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="ht
|
|
|
37
37
|
</svg>
|
|
38
38
|
`;
|
|
39
39
|
|
|
40
|
-
var
|
|
41
|
-
<
|
|
42
|
-
<
|
|
43
|
-
<
|
|
44
|
-
<
|
|
45
|
-
<
|
|
46
|
-
<stop offset="1" stop-color="#C93732"/>
|
|
47
|
-
</linearGradient>
|
|
48
|
-
</defs>
|
|
40
|
+
var MiniMap = `<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
41
|
+
<rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" style="fill:#E8E8E8" stroke="white" stroke-width="1.15315"/>
|
|
42
|
+
<path d="M17.9096 6.77445L28.7204 5.33301H32.4681L32.7564 11.8195V23.6393L10.4141 23.9276V10.8105L17.9096 6.77445Z" style="fill:#97E7C8"/>
|
|
43
|
+
<path d="M-2.70303 10.6664H10.2699M41.6934 5.47722C38.378 5.47722 34.7744 5.47722 27.8555 5.47722C20.9366 5.47722 18.4862 6.63037 15.4591 8.64839C12.4321 10.6664 10.2699 10.6664 10.2699 10.6664M10.2699 34.4502V23.6394M10.2699 10.6664V23.6394M-6.16249 23.6394H10.2699M10.2699 23.6394H21.0807M38.8105 23.6394H21.0807M21.0807 23.6394V34.4502" style="fill:none" stroke="white" stroke-width="2.30631"/>
|
|
44
|
+
<rect x="2.34202" y="1.00901" width="29.982" height="29.982" rx="8.79279" style="fill:none" stroke="white" stroke-width="2.01802"/>
|
|
45
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M18.069 19.8621C19.4995 18.6902 22.171 16.0948 22.171 13.0548C22.171 11.7333 21.6461 10.466 20.7117 9.5316C19.7773 8.5972 18.51 8.07227 17.1885 8.07227C15.8671 8.07227 14.5998 8.5972 13.6654 9.5316C12.731 10.466 12.2061 11.7333 12.2061 13.0548C12.2061 16.0948 14.8776 18.6902 16.3081 19.8621C16.5553 20.0679 16.8669 20.1806 17.1885 20.1806C17.5102 20.1806 17.8218 20.0679 18.069 19.8621ZM17.1885 14.1618C17.517 14.1618 17.838 14.0644 18.1111 13.8819C18.3842 13.6995 18.597 13.4401 18.7227 13.1367C18.8484 12.8333 18.8812 12.4994 18.8172 12.1773C18.7531 11.8552 18.595 11.5593 18.3627 11.3271C18.1305 11.0948 17.8346 10.9367 17.5125 10.8726C17.1904 10.8085 16.8565 10.8414 16.5531 10.9671C16.2497 11.0928 15.9903 11.3056 15.8079 11.5787C15.6254 11.8518 15.528 12.1728 15.528 12.5012C15.528 12.9416 15.703 13.364 16.0144 13.6754C16.3258 13.9868 16.7481 14.1618 17.1885 14.1618Z" style="fill:#55575D"/>
|
|
49
46
|
</svg>
|
|
50
47
|
`;
|
|
51
48
|
|
|
52
|
-
var MiniMap = `<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
53
|
-
<g filter="url(#filter0_d_24181_220540)">
|
|
54
|
-
<mask id="mask0_24181_220540" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="1" y="0" width="33" height="32">
|
|
55
|
-
<rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#D9D9D9" stroke="white" stroke-width="1.15315"/>
|
|
56
|
-
</mask>
|
|
57
|
-
<g mask="url(#mask0_24181_220540)">
|
|
58
|
-
<rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#E8E8E8" stroke="white" stroke-width="1.15315"/>
|
|
59
|
-
<path d="M17.9096 6.77445L28.7204 5.33301H32.4681L32.7564 11.8195V23.6393L10.4141 23.9276V10.8105L17.9096 6.77445Z" fill="#97E7C8"/>
|
|
60
|
-
<path d="M-2.70303 10.6664H10.2699M41.6934 5.47722C38.378 5.47722 34.7744 5.47722 27.8555 5.47722C20.9366 5.47722 18.4862 6.63037 15.4591 8.64839C12.4321 10.6664 10.2699 10.6664 10.2699 10.6664M10.2699 34.4502V23.6394M10.2699 10.6664V23.6394M-6.16249 23.6394H10.2699M10.2699 23.6394H21.0807M38.8105 23.6394H21.0807M21.0807 23.6394V34.4502" stroke="white" stroke-width="2.30631"/>
|
|
61
|
-
<rect x="2.34202" y="1.00901" width="29.982" height="29.982" rx="8.79279" stroke="white" stroke-width="2.01802"/>
|
|
62
|
-
</g>
|
|
63
|
-
<g clip-path="url(#clip0_24181_220540)">
|
|
64
|
-
<path fill-rule="evenodd" clip-rule="evenodd" d="M18.069 19.8621C19.4995 18.6902 22.171 16.0948 22.171 13.0548C22.171 11.7333 21.6461 10.466 20.7117 9.5316C19.7773 8.5972 18.51 8.07227 17.1885 8.07227C15.8671 8.07227 14.5998 8.5972 13.6654 9.5316C12.731 10.466 12.2061 11.7333 12.2061 13.0548C12.2061 16.0948 14.8776 18.6902 16.3081 19.8621C16.5553 20.0679 16.8669 20.1806 17.1885 20.1806C17.5102 20.1806 17.8218 20.0679 18.069 19.8621ZM17.1885 14.1618C17.517 14.1618 17.838 14.0644 18.1111 13.8819C18.3842 13.6995 18.597 13.4401 18.7227 13.1367C18.8484 12.8333 18.8812 12.4994 18.8172 12.1773C18.7531 11.8552 18.595 11.5593 18.3627 11.3271C18.1305 11.0948 17.8346 10.9367 17.5125 10.8726C17.1904 10.8085 16.8565 10.8414 16.5531 10.9671C16.2497 11.0928 15.9903 11.3056 15.8079 11.5787C15.6254 11.8518 15.528 12.1728 15.528 12.5012C15.528 12.9416 15.703 13.364 16.0144 13.6754C16.3258 13.9868 16.7481 14.1618 17.1885 14.1618Z" fill="#55575D"/>
|
|
65
|
-
</g>
|
|
66
|
-
</g>
|
|
67
|
-
<defs>
|
|
68
|
-
<filter id="filter0_d_24181_220540" x="-0.000325561" y="0" width="34.6667" height="34.6667" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
69
|
-
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
|
70
|
-
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
|
71
|
-
<feOffset dy="1.33333"/>
|
|
72
|
-
<feGaussianBlur stdDeviation="0.666667"/>
|
|
73
|
-
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"/>
|
|
74
|
-
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_24181_220540"/>
|
|
75
|
-
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_24181_220540" result="shape"/>
|
|
76
|
-
</filter>
|
|
77
|
-
<clipPath id="clip0_24181_220540">
|
|
78
|
-
<rect width="12.1081" height="12.1081" fill="white" transform="translate(11.1338 8.07227)"/>
|
|
79
|
-
</clipPath>
|
|
80
|
-
</defs>
|
|
81
|
-
</svg>
|
|
82
|
-
`;
|
|
83
|
-
|
|
84
49
|
var Store = `<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
85
50
|
<path
|
|
86
51
|
d="M1.14453 5.83032L1.14453 9.16486C1.14453 11.0511 1.14453 11.9943 1.73032 12.5803C2.3161 13.1663 3.25891 13.1663 5.14453 13.1663L9.14453 13.1663C11.0301 13.1663 11.9729 13.1663 12.5587 12.5803C13.1445 11.9943 13.1445 11.0511 13.1445 9.16486V5.83032"
|
|
@@ -94,7 +59,7 @@ var Store = `<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="
|
|
|
94
59
|
</svg>
|
|
95
60
|
`;
|
|
96
61
|
|
|
97
|
-
const sallaBulletDeliveryCss = "/*!twlt*/@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body,.s-bullet-delivery-inner{interpolate-size:allow-keywords}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{overflow:clip;transition:block-size 500ms ease}.s-bullet-delivery-inner{overflow:clip;transition:block-size 500ms ease;block-size:calc-size(auto, size)}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.first-letter-cap::first-letter{text-transform:uppercase}.s-bullet-delivery-map-container{width:100%;height:450px;border-radius:8px;overflow:hidden;margin-bottom:12px}.s-bullet-delivery-map-container gmap-map{display:block;width:100%;height:100%}.s-bullet-delivery-address-confirm{display:flex;flex-direction:column;gap:20px;padding:0 24px}.s-bullet-delivery-address-confirm-card{display:flex;align-items:flex-start;gap:12px}.s-bullet-delivery-address-confirm-edit{border:1px solid #eee;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;line-height:1;color:#333;background:white;cursor:pointer;white-space:nowrap;height:32px;flex-shrink:0;align-self:center;display:inline-flex;align-items:center;justify-content:center}.s-bullet-delivery-address-confirm-details{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1;min-width:0}.s-bullet-delivery-address-confirm-label{font-size:12px;color:#666}.s-bullet-delivery-address-confirm-text{font-size:14px;font-weight:700;color:#333;margin:0;word-break:break-word}.s-bullet-delivery-address-confirm-tag{display:inline-flex;align-items:center;gap:4px;border:1px solid #eee;border-radius:140px;padding:4px 8px;font-size:12px;color:#333;margin-top:4px}.s-bullet-delivery-address-confirm-tag-icon{width:9px;display:inline-flex;flex-shrink:0}.s-bullet-delivery-address-confirm-tag-icon svg{width:100%;height:100%}.s-bullet-delivery-address-confirm-description{display:flex;flex-direction:column;gap:8px}.s-bullet-delivery-address-confirm-description-label{font-size:14px;font-weight:500;color:#444}.s-bullet-delivery-address-confirm-description-optional{font-weight:400;color:#999;margin-inline-start:4px}.s-bullet-delivery-address-confirm-description-input{width:100%;border:1px solid #eee;border-radius:8px;padding:10px 12px;font-size:14px}.s-bullet-delivery-login-prompt{display:block;width:100%;text-align:center;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:12px 0}@keyframes s-bullet-delivery-fade-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.branch-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;max-height:20px;border-radius:20px;font-size:9px;font-weight:500;border:1px solid transparent;white-space:nowrap}.branch-status-badge.green{color:#43a047;background:#e8f5e9;border-color:#43a047}.branch-status-badge.blue{color:#1e88e5;background:#e3f2fd;border-color:#1e88e5}.branch-status-badge.red{color:#e53935;background:#fdf2f2;border-color:#e53935}.branch-status-badge.yellow{color:#f9a825;background:#fff8e1;border-color:#f9a825}.branch-status-badge.gray{color:#757575;background:#f5f5f5;border-color:#757575}.branch-status-badge.brown{color:#6d4c41;background:#efebe9;border-color:#6d4c41}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.visible{visibility:visible}.static{position:static}.mb-1{margin-bottom:0.25rem}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-1{gap:0.25rem}.text-start{text-align:start}.\\!text-blue-600{--tw-text-opacity:1 !important;color:rgb(37 99 235 / var(--tw-text-opacity, 1)) !important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.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)}.outline{outline-style:solid}.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)}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-hidden{display:none}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.spinner-loader.reverse{border-right-color:#9f7171 !important;background-color:#f98181}.s-hidden{display:none}.s-scrollbar::-webkit-scrollbar{width:5px}.s-scrollbar::-webkit-scrollbar-track{background-color:#eee}.s-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-primary);border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{padding:0px}@media (min-width: 768px){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{max-height:70dvh;overflow-y:auto}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-inner{min-block-size:0}.s-bullet-delivery-header{margin-bottom:1.5rem;text-align:start}.s-bullet-delivery-title{display:block;font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--color-primary-dark)}.s-bullet-delivery-subtitle{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary-dark)}.s-bullet-delivery-tabs{margin-bottom:1.5rem;display:flex;gap:0.5rem}.s-bullet-delivery-tab{display:flex;flex:1 1 0%;cursor:pointer;align-items:center;gap:1rem;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-top:0.5rem;padding-bottom:0.5rem;padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;color:var(--color-primary-dark);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-bullet-delivery-tab:hover{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-tab--active{border-color:var(--color-primary-dark)}.s-bullet-delivery-tab svg{height:0.875rem;width:0.875rem;color:var(--color-primary-dark)}.s-bullet-delivery-tab-icon{display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage{margin-bottom:1rem;display:flex;width:100%;align-items:center;gap:0.5rem;--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;text-align:end;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-left-width:4px;border-left-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-right-width:4px;border-right-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage-text{font-size:0.875rem;line-height:1.25rem;line-height:1.4}.s-bullet-delivery-allocation-out-of-coverage-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-content{margin-bottom:1.5rem;display:grid;gap:1rem}.s-bullet-delivery-content--active{animation:s-bullet-delivery-fade-in 220ms ease-out}.s-bullet-delivery-label{margin-bottom:0.5rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-bullet-delivery-error{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-bullet-delivery-footer{display:grid;gap:0.75rem;text-align:center}.s-bullet-delivery-placeholder{margin-top:1rem;margin-bottom:1rem}.s-bullet-delivery-placeholder.s-placeholder-wrapper{margin-top:1rem !important;margin-bottom:1rem !important}.s-bullet-delivery-label-content{display:inline-flex;align-items:center;gap:0.5rem}.s-bullet-delivery-select-loader{display:inline-flex;align-items:center;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-search-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0.5rem;padding-left:1px;padding-right:1px}.s-bullet-delivery-search-row .s-bullet-delivery-search{min-width:0px;flex:1 1 0%}.s-bullet-delivery-search-row .s-bullet-delivery-location-btn{width:auto;flex-shrink:0}.s-bullet-delivery-field-row{margin-bottom:1rem;display:flex;gap:1rem}.s-bullet-delivery-field-row .s-bullet-delivery-field{margin-bottom:0px;flex:1 1 0%}.s-bullet-delivery-saved-addresses-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.s-bullet-delivery-saved-addresses-empty-icon{margin-bottom:0.75rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-icon svg{height:2rem;width:2rem}.s-bullet-delivery-saved-addresses-empty-title{margin-bottom:0.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-desc{margin-bottom:1.5rem;max-width:24rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-addresses-list{display:flex;max-height:260px;flex-direction:column;overflow-y:auto;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-addresses-list{max-height:220px}}.s-bullet-delivery-address-item{display:flex;cursor:pointer;flex-direction:row;align-items:center;gap:0.75rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.875rem;padding-bottom:0.875rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-address-item:not(.s-bullet-delivery-address-item--disabled):hover{background-color:rgb(249 250 251 / 0.5)}.s-bullet-delivery-address-item--selected{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-address-item--disabled{cursor:not-allowed;opacity:0.6}.s-bullet-delivery-address-item--skeleton{display:flex;cursor:default;align-items:center;gap:0.75rem;border-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem}.s-bullet-delivery-address-item--skeleton .s-bullet-delivery-address-lines{gap:0.5rem}.s-bullet-delivery-address-content{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;justify-content:center;text-align:start}.s-bullet-delivery-address-lines{display:flex;flex-direction:column;gap:0.125rem}.s-bullet-delivery-address-line1{display:block;font-size:1rem;line-height:1.5rem;font-weight:400;line-height:1.375;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-line2{display:block;font-size:0.875rem;line-height:1.25rem;line-height:1.375;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-map-icon{display:grid;height:2.5rem;width:2.5rem;place-content:center}.s-bullet-delivery-address-map-icon svg{height:100%;width:100%}.s-bullet-delivery-skel-radio{flex-shrink:0;border-radius:9999px}.s-bullet-delivery-skel-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-search{position:relative;flex:1 1 0%}.s-bullet-delivery-search-icon{pointer-events:none;position:absolute;top:0px;bottom:0px;left:0px;display:flex;align-items:center;padding-left:0.75rem}.s-bullet-delivery-search-icon:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:auto;right:0px;padding-left:0px;padding-right:0.75rem}.s-bullet-delivery-search-icon svg{height:0.875rem;width:0.875rem;stroke:var(--color-primary)}.s-bullet-delivery-branch-search-wrap{display:flex;min-height:40px;min-width:0px;flex:1 1 0%;flex-direction:row;align-items:stretch;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-bullet-delivery-branch-search-wrap:focus-within{border-color:var(--color-primary-dark);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark)}.s-bullet-delivery-branch-search-icon{pointer-events:none;position:static;display:flex;flex-shrink:0;align-items:center;justify-content:center;padding-inline-start:0.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-branch-search-input{min-height:40px;min-width:0px;flex:1 1 0%;border-radius:0px;border-style:none;background-color:transparent;padding-top:0.5rem;padding-bottom:0.5rem;padding-inline-end:0.75rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-branch-search-input::placeholder{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-input:focus{outline:2px solid transparent;outline-offset:2px;border:none;box-shadow:none;--tw-ring-shadow:none}.s-bullet-delivery-location-btn{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.5rem;border-width:1px;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-location-btn:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-btn:disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-location-btn--full{min-height:40px}.s-bullet-delivery-location-btn--loading{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-icon{height:0.875rem;width:0.875rem;flex-shrink:0}.s-bullet-delivery-location-icon svg{height:100%;width:100%}.s-bullet-delivery-branches-wrap{overflow:hidden}.s-bullet-delivery-branches-list{max-height:min(260px, 32svh);overflow-y:auto;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-branches-list{max-height:220px}}.s-bullet-delivery-branches-loading{overflow:hidden;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-info{display:flex;max-width:6.25rem;flex-direction:column;gap:0.125rem}.s-bullet-delivery-branch-name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:break-word;font-size:0.875rem;line-height:1.25rem;font-weight:500;line-height:1.375;--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-prep{text-align:start;font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time{font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time:where([dir=\"ltr\"],[dir=\"ltr\"] *){text-align:end}.s-bullet-delivery-branch-time:where([dir=\"rtl\"],[dir=\"rtl\"] *){text-align:start}.s-bullet-delivery-branch-map-link{display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:0.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));text-decoration-line:none;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-branch-map-link:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item>.s-bullet-delivery-branch-map-link{position:relative;z-index:10;pointer-events:auto}.s-bullet-delivery-branch-map-link-icon{display:flex;height:0.875rem;width:0.875rem;align-items:center;justify-content:center}.s-bullet-delivery-branch-map-link-icon svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton-title{max-width:100%}.s-bullet-delivery-branch-skeleton-time{justify-self:end}.s-bullet-delivery-branch-item{display:grid;min-width:0px;cursor:pointer;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;text-align:end;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-item:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-item:hover:not(.s-bullet-delivery-branch-item--disabled){--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item--selected{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-branch-item--disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-branch-icon{display:grid;place-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));stroke:var(--color-primary-dark);padding:0.625rem;color:var(--color-primary-dark)}.s-bullet-delivery-branch-icon span{display:block;height:0.875rem;width:0.875rem}.s-bullet-delivery-branch-icon span svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton{display:grid;min-width:0px;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-skeleton:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-skeleton-radio{flex-shrink:0}.s-bullet-delivery-branch-skeleton-icon{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-icon salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-map salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-content{display:flex;min-width:0px;flex-direction:column;gap:0.5rem;overflow:hidden}.s-bullet-delivery-branch-skeleton-content salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-radio{margin-top:2px;height:1rem;width:1rem;flex-shrink:0;cursor:pointer;appearance:none;border-radius:9999px;border-width:2px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-radio:checked{border-color:var(--color-primary-dark);background:radial-gradient(circle,#fff 0,#fff 22%,var(--color-primary) 22%)}.s-bullet-delivery-radio:focus{outline:2px solid transparent;outline-offset:2px}.s-bullet-delivery-radio:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark);--tw-ring-offset-width:2px}.s-bullet-delivery-skeleton{box-sizing:border-box;min-width:0px;max-width:100%;overflow:hidden;padding:1.25rem}.s-bullet-delivery-skeleton salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-skeleton-header{margin-bottom:1.5rem;display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.75rem}.s-bullet-delivery-skeleton-title{display:block;max-width:100%}.s-bullet-delivery-skeleton-subtitle{display:block;max-width:100%}.s-bullet-delivery-skeleton-tabs{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem}.s-bullet-delivery-skeleton-tabs--single{grid-template-columns:repeat(1, minmax(0, 1fr))}.s-bullet-delivery-skeleton-tab{display:flex;align-items:center;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-bullet-delivery-skeleton-tab-icon{display:block;max-width:100%}.s-bullet-delivery-skeleton-tab-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-control{display:block;max-width:100%}.s-bullet-delivery-skeleton-content{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;gap:1rem}.s-bullet-delivery-skeleton-field{display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.5rem}.s-bullet-delivery-skeleton-footer{min-width:0px;max-width:100%}.s-bullet-delivery-add-address-header{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.s-bullet-delivery-add-address-title{display:flex;width:100%;flex:1 1 0%;cursor:pointer;align-items:center;border-style:none;background-color:transparent;padding:0px;text-align:start;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--color-primary)}.s-bullet-delivery-add-address svg{height:1.5rem;width:1.5rem;fill:currentColor}.s-bullet-delivery-add-address-form{display:grid;gap:1rem}.s-bullet-delivery-add-address-submit{width:100%}.s-bullet-delivery-form-actions{display:flex;gap:0.75rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding-top:1rem}.s-bullet-delivery-form-actions salla-button{flex:1 1 0%}.s-bullet-delivery-form-actions--single{border-top-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1.25rem}.s-bullet-delivery-form-actions--single salla-button{width:100%;flex:1 1 0%}.s-bullet-delivery-market-warning-overlay{position:fixed;inset:0px;z-index:60;display:flex;align-items:center;justify-content:center;background-color:rgb(0 0 0 / 0.5)}.s-bullet-delivery-market-warning{margin-left:1rem;margin-right:1rem;width:100%;max-width:24rem;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px 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-bullet-delivery-market-warning-title{margin-bottom:0.75rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-message{margin-bottom:1.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-actions{display:flex;gap:0.75rem}.s-bullet-delivery-market-warning-actions salla-button{flex:1 1 0%}.s-bullet-delivery-cart-view{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem}.s-bullet-delivery-cart-view-info{display:flex;min-width:0px;flex:1 1 0%;align-items:center;gap:0.75rem}.s-bullet-delivery-cart-view-text{display:flex;flex-direction:column;text-align:start}.s-bullet-delivery-cart-view-title{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-cart-view-subtitle{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));margin-block-start:0.125rem}.s-bullet-delivery-cart-view-icon{display:flex;height:3.5rem;width:3.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:1rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));color:var(--color-primary-dark)}.s-bullet-delivery-cart-view-icon svg{height:1.25rem;width:1.25rem;stroke:currentColor}.s-bullet-delivery-cart-view-button{flex-shrink:0;align-self:center}";
|
|
62
|
+
const sallaBulletDeliveryCss = "/*!twlt*/@charset \"UTF-8\";@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body,.s-bullet-delivery-inner{interpolate-size:allow-keywords}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{overflow:clip;transition:block-size 500ms ease}.s-bullet-delivery-inner{overflow:clip;transition:block-size 500ms ease;block-size:calc-size(auto, size)}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-form-actions.s-bullet-delivery-form-actions--single{padding-bottom:0;flex-direction:column;gap:0}.s-bullet-delivery-addresses-list.s-scrollbar::-webkit-scrollbar-track,.s-bullet-delivery-branches-list.s-scrollbar::-webkit-scrollbar-track{background-color:transparent}.s-bullet-delivery-back-to-list-link{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;margin-top:12px;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:0}.s-bullet-delivery-back-to-list-link i{font-size:12px}.first-letter-cap::first-letter{text-transform:uppercase}.s-bullet-delivery-map-container{width:100%;height:320px;border-radius:8px;overflow:hidden;margin-bottom:12px}.s-bullet-delivery-map-container gmap-map{display:block;width:100%;height:100%}.s-bullet-delivery-address-confirm{display:flex;flex-direction:column;gap:20px;animation:s-bullet-delivery-fade-in 200ms ease}.s-bullet-delivery-address-confirm-card{display:flex;align-items:center;gap:12px;border:1px solid #eee;border-radius:6px;padding:12px}.s-bullet-delivery-address-map-icon{overflow:hidden;border-radius:9px}.s-bullet-delivery-address-confirm-details{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.s-bullet-delivery-address-confirm-label{font-size:12px;line-height:16px;color:#666}.s-bullet-delivery-address-confirm-text{font-size:14px;font-weight:700;color:#333;margin:0;word-break:break-word}.s-bullet-delivery-address-confirm-description{display:flex;flex-direction:column;gap:8px}.s-bullet-delivery-address-confirm-description-label{font-size:14px;font-weight:500;color:#444}.s-bullet-delivery-address-confirm-description-optional{font-weight:400;color:#999;margin-inline-start:4px}.s-bullet-delivery-address-confirm-description-input{width:100%;border:1px solid #eee;border-radius:8px;padding:10px 12px;font-size:14px;margin-bottom:16px}.s-bullet-delivery-login-prompt{display:block;width:100%;text-align:center;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:12px 0}@keyframes s-bullet-delivery-fade-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.branch-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;max-height:20px;border-radius:20px;font-size:9px;font-weight:500;border:1px solid transparent;white-space:nowrap}.branch-status-badge.green{color:#43a047;background:#e8f5e9;border-color:#43a047}.branch-status-badge.blue{color:#1e88e5;background:#e3f2fd;border-color:#1e88e5}.branch-status-badge.red{color:#e53935;background:#fdf2f2;border-color:#e53935}.branch-status-badge.yellow{color:#f9a825;background:#fff8e1;border-color:#f9a825}.branch-status-badge.gray{color:#757575;background:#f5f5f5;border-color:#757575}.branch-status-badge.brown{color:#6d4c41;background:#efebe9;border-color:#6d4c41}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.visible{visibility:visible}.static{position:static}.mb-1{margin-bottom:0.25rem}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-1{gap:0.25rem}.text-start{text-align:start}.\\!text-blue-600{--tw-text-opacity:1 !important;color:rgb(37 99 235 / var(--tw-text-opacity, 1)) !important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.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)}.outline{outline-style:solid}.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)}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-hidden{display:none}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.spinner-loader.reverse{border-right-color:#9f7171 !important;background-color:#f98181}.s-hidden{display:none}.s-scrollbar::-webkit-scrollbar{width:5px}.s-scrollbar::-webkit-scrollbar-track{background-color:#eee}.s-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-primary);border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{padding:0px}@media (min-width: 768px){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{max-height:70dvh;overflow-y:auto}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-inner{min-block-size:0}.s-bullet-delivery-header{margin-bottom:1.5rem;text-align:start}.s-bullet-delivery-title{display:block;font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--color-primary-dark)}.s-bullet-delivery-subtitle{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary-dark)}.s-bullet-delivery-tabs{margin-bottom:1.5rem;display:flex;gap:0.5rem}.s-bullet-delivery-tab{display:flex;flex:1 1 0%;cursor:pointer;align-items:center;gap:1rem;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-top:0.5rem;padding-bottom:0.5rem;padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;color:var(--color-primary-dark);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-bullet-delivery-tab:hover{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-tab--active{border-color:var(--color-primary-dark)}.s-bullet-delivery-tab svg{height:0.875rem;width:0.875rem;color:var(--color-primary-dark)}.s-bullet-delivery-tab-icon{display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage{margin-bottom:1rem;display:flex;width:100%;align-items:center;gap:0.5rem;--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;text-align:end;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-left-width:4px;border-left-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-right-width:4px;border-right-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage-text{font-size:0.875rem;line-height:1.25rem;line-height:1.4}.s-bullet-delivery-allocation-out-of-coverage-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-content{margin-bottom:1.5rem;display:grid;gap:1rem}.s-bullet-delivery-content--active{animation:s-bullet-delivery-fade-in 220ms ease-out}.s-bullet-delivery-label{margin-bottom:0.5rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-bullet-delivery-error{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-bullet-delivery-footer{display:grid;gap:0.75rem;text-align:center}.s-bullet-delivery-placeholder{margin-top:1rem;margin-bottom:1rem}.s-bullet-delivery-placeholder.s-placeholder-wrapper{margin-top:1rem !important;margin-bottom:1rem !important}.s-bullet-delivery-label-content{display:inline-flex;align-items:center;gap:0.5rem}.s-bullet-delivery-select-loader{display:inline-flex;align-items:center;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-search-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0.5rem;padding-left:1px;padding-right:1px}.s-bullet-delivery-search-row .s-bullet-delivery-search{min-width:0px;flex:1 1 0%}.s-bullet-delivery-search-row .s-bullet-delivery-location-btn{width:auto;flex-shrink:0}.s-bullet-delivery-field-row{margin-bottom:1rem;display:flex;gap:1rem}.s-bullet-delivery-field-row .s-bullet-delivery-field{margin-bottom:0px;flex:1 1 0%}.s-bullet-delivery-saved-addresses-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.s-bullet-delivery-saved-addresses-empty-icon{margin-bottom:0.75rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-icon svg{height:2rem;width:2rem}.s-bullet-delivery-saved-addresses-empty-title{margin-bottom:0.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-desc{margin-bottom:1.5rem;max-width:24rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-addresses-list{display:flex;max-height:260px;flex-direction:column;overflow-y:auto;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-addresses-list{max-height:220px}}.s-bullet-delivery-address-item{display:flex;cursor:pointer;flex-direction:row;align-items:center;gap:0.75rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.875rem;padding-bottom:0.875rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-address-item:not(.s-bullet-delivery-address-item--disabled):hover{background-color:rgb(249 250 251 / 0.5)}.s-bullet-delivery-address-item--selected{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-address-item--disabled{cursor:not-allowed;opacity:0.6}.s-bullet-delivery-address-item--skeleton{display:flex;cursor:default;align-items:center;gap:0.75rem;border-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem}.s-bullet-delivery-address-item--skeleton .s-bullet-delivery-address-lines{gap:0.5rem}.s-bullet-delivery-address-content{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;justify-content:center;text-align:start}.s-bullet-delivery-address-lines{display:flex;flex-direction:column;gap:0.125rem}.s-bullet-delivery-address-line1{display:block;font-size:1rem;line-height:1.5rem;font-weight:400;line-height:1.375;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-line2{display:block;font-size:0.875rem;line-height:1.25rem;line-height:1.375;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-map-icon{display:grid;height:2.5rem;width:2.5rem;place-content:center}.s-bullet-delivery-address-map-icon svg{height:100%;width:100%}.s-bullet-delivery-skel-radio{flex-shrink:0;border-radius:9999px}.s-bullet-delivery-skel-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-search{position:relative;flex:1 1 0%}.s-bullet-delivery-search-icon{pointer-events:none;position:absolute;top:0px;bottom:0px;left:0px;display:flex;align-items:center;padding-left:0.75rem}.s-bullet-delivery-search-icon:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:auto;right:0px;padding-left:0px;padding-right:0.75rem}.s-bullet-delivery-search-icon svg{height:0.875rem;width:0.875rem;stroke:var(--color-primary)}.s-bullet-delivery-branch-search-wrap{display:flex;min-height:40px;min-width:0px;flex:1 1 0%;flex-direction:row;align-items:stretch;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-bullet-delivery-branch-search-wrap:focus-within{border-color:var(--color-primary-dark);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark)}.s-bullet-delivery-branch-search-icon{pointer-events:none;position:static;display:flex;flex-shrink:0;align-items:center;justify-content:center;padding-inline-start:0.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-branch-search-input{min-height:40px;min-width:0px;flex:1 1 0%;border-radius:0px;border-style:none;background-color:transparent;padding-top:0.5rem;padding-bottom:0.5rem;padding-inline-end:0.75rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-branch-search-input::placeholder{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-input:focus{outline:2px solid transparent;outline-offset:2px;border:none;box-shadow:none;--tw-ring-shadow:none}.s-bullet-delivery-location-btn{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.5rem;border-width:1px;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-location-btn:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-btn:disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-location-btn--full{min-height:40px}.s-bullet-delivery-location-btn--loading{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-icon{height:0.875rem;width:0.875rem;flex-shrink:0}.s-bullet-delivery-location-icon svg{height:100%;width:100%}.s-bullet-delivery-branches-wrap{overflow:hidden}.s-bullet-delivery-branches-list{max-height:min(260px, 32svh);overflow-y:auto;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-branches-list{max-height:220px}}.s-bullet-delivery-branches-loading{overflow:hidden;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-info{display:flex;max-width:6.25rem;flex-direction:column;gap:0.125rem}.s-bullet-delivery-branch-name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:break-word;font-size:0.875rem;line-height:1.25rem;font-weight:500;line-height:1.375;--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-prep{text-align:start;font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time{font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time:where([dir=\"ltr\"],[dir=\"ltr\"] *){text-align:end}.s-bullet-delivery-branch-time:where([dir=\"rtl\"],[dir=\"rtl\"] *){text-align:start}.s-bullet-delivery-branch-map-link{display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:0.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));text-decoration-line:none;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-branch-map-link:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item>.s-bullet-delivery-branch-map-link{position:relative;z-index:10;pointer-events:auto}.s-bullet-delivery-branch-map-link-icon{display:flex;height:0.875rem;width:0.875rem;align-items:center;justify-content:center}.s-bullet-delivery-branch-map-link-icon svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton-title{max-width:100%}.s-bullet-delivery-branch-skeleton-time{justify-self:end}.s-bullet-delivery-branch-item{display:grid;min-width:0px;cursor:pointer;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;text-align:end;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-item:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-item:hover:not(.s-bullet-delivery-branch-item--disabled){--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item--selected{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-branch-item--disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-branch-icon{display:grid;place-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));stroke:var(--color-primary-dark);padding:0.625rem;color:var(--color-primary-dark)}.s-bullet-delivery-branch-icon span{display:block;height:0.875rem;width:0.875rem}.s-bullet-delivery-branch-icon span svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton{display:grid;min-width:0px;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-skeleton:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-skeleton-radio{flex-shrink:0}.s-bullet-delivery-branch-skeleton-icon{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-icon salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-map salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-content{display:flex;min-width:0px;flex-direction:column;gap:0.5rem;overflow:hidden}.s-bullet-delivery-branch-skeleton-content salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-radio{margin-top:2px;height:1rem;width:1rem;flex-shrink:0;cursor:pointer;appearance:none;border-radius:9999px;border-width:2px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-radio:checked{border-color:var(--color-primary-dark);background:radial-gradient(circle,#fff 0,#fff 22%,var(--color-primary) 22%)}.s-bullet-delivery-radio:focus{outline:2px solid transparent;outline-offset:2px}.s-bullet-delivery-radio:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark);--tw-ring-offset-width:2px}.s-bullet-delivery-skeleton{box-sizing:border-box;min-width:0px;max-width:100%;overflow:hidden;padding:1.25rem}.s-bullet-delivery-skeleton salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-skeleton-header{margin-bottom:1.5rem;display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.75rem}.s-bullet-delivery-skeleton-title{display:block;max-width:100%}.s-bullet-delivery-skeleton-subtitle{display:block;max-width:100%}.s-bullet-delivery-skeleton-tabs{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem}.s-bullet-delivery-skeleton-tabs--single{grid-template-columns:repeat(1, minmax(0, 1fr))}.s-bullet-delivery-skeleton-tab{display:flex;align-items:center;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-bullet-delivery-skeleton-tab-icon{display:block;max-width:100%}.s-bullet-delivery-skeleton-tab-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-control{display:block;max-width:100%}.s-bullet-delivery-skeleton-content{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;gap:1rem}.s-bullet-delivery-skeleton-field{display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.5rem}.s-bullet-delivery-skeleton-footer{min-width:0px;max-width:100%}.s-bullet-delivery-add-address-header{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.s-bullet-delivery-add-address-title{display:flex;width:100%;flex:1 1 0%;cursor:pointer;align-items:center;border-style:none;background-color:transparent;padding:0px;text-align:start;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--color-primary)}.s-bullet-delivery-add-address svg{height:2.5rem;width:2.5rem;fill:currentColor}.s-bullet-delivery-allocation-out-of-coverage-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-add-address-form{display:grid;gap:1rem}.s-bullet-delivery-add-address-submit{width:100%}.s-bullet-delivery-form-actions{display:flex;gap:0.75rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding-top:1rem}.s-bullet-delivery-form-actions salla-button{flex:1 1 0%}.s-bullet-delivery-form-actions--single{border-top-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1.25rem}.s-bullet-delivery-form-actions--single salla-button{width:100%;flex:1 1 0%}.s-bullet-delivery-market-warning-overlay{position:fixed;inset:0px;z-index:60;display:flex;align-items:center;justify-content:center;background-color:rgb(0 0 0 / 0.5)}.s-bullet-delivery-market-warning{margin-left:1rem;margin-right:1rem;width:100%;max-width:24rem;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px 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-bullet-delivery-market-warning-title{margin-bottom:0.75rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-message{margin-bottom:1.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-actions{display:flex;gap:0.75rem}.s-bullet-delivery-market-warning-actions salla-button{flex:1 1 0%}.s-bullet-delivery-cart-view{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem}.s-bullet-delivery-cart-view-info{display:flex;min-width:0px;flex:1 1 0%;align-items:center;gap:0.75rem}.s-bullet-delivery-cart-view-text{display:flex;flex-direction:column;text-align:start}.s-bullet-delivery-cart-view-title{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-cart-view-subtitle{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));margin-block-start:0.125rem}.s-bullet-delivery-cart-view-icon{display:flex;height:3.5rem;width:3.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:1rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));color:var(--color-primary-dark)}.s-bullet-delivery-cart-view-icon svg{height:1.25rem;width:1.25rem;stroke:currentColor}.s-bullet-delivery-cart-view-button{flex-shrink:0;align-self:center}";
|
|
98
63
|
|
|
99
64
|
const BRANCH_SEARCH_DEBOUNCE_MS = 1000;
|
|
100
65
|
const GEOLOCATION_TIMEOUT = 10000;
|
|
@@ -115,7 +80,6 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
115
80
|
this.bulletDeliveryClosed = createEvent(this, "bulletDeliveryClosed", 7);
|
|
116
81
|
this.addressCreated = createEvent(this, "addressCreated", 7);
|
|
117
82
|
this.headerContextUpdate = createEvent(this, "headerContextUpdate", 7);
|
|
118
|
-
this.confirming = false;
|
|
119
83
|
this.pendingCartSubmitResolver = null;
|
|
120
84
|
this.pendingCartSubmitPromise = null;
|
|
121
85
|
this.cartSubmitConfirmationPending = false;
|
|
@@ -136,6 +100,8 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
136
100
|
this.cartSubmittingHandler = null;
|
|
137
101
|
this.useCartEventApi = false;
|
|
138
102
|
this.authLoggedInHandler = null;
|
|
103
|
+
/** Re-entrancy latch for tryAutoConfirmAfterLogin(); a flaky/duplicate auth::logged.in must not double-save. */
|
|
104
|
+
this.autoConfirmAfterLoginInFlight = false;
|
|
139
105
|
this.authLoggedOutHandler = null;
|
|
140
106
|
this.loginOpenHandler = null;
|
|
141
107
|
this.hasExplicitPreselectedIdsForOpen = false;
|
|
@@ -189,7 +155,6 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
189
155
|
this.loadingBranches = false;
|
|
190
156
|
this.loadingNearestBranch = false;
|
|
191
157
|
this.locationError = "";
|
|
192
|
-
this.savingAddress = false;
|
|
193
158
|
this.loadingSavedAddresses = false;
|
|
194
159
|
this.showCartWillBeClearedBanner = false;
|
|
195
160
|
// Searchable dropdown state
|
|
@@ -212,10 +177,10 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
212
177
|
this.addressToken = null;
|
|
213
178
|
this.loadingToken = false;
|
|
214
179
|
this.mapReady = false;
|
|
215
|
-
this.mapStep = 'map';
|
|
216
180
|
this.addressDescription = '';
|
|
217
181
|
/** True while reverse-geocoding a map-click/geolocation pick (no place from the map component itself). */
|
|
218
182
|
this.reverseGeocoding = false;
|
|
183
|
+
this.confirming = false;
|
|
219
184
|
this.newAddressForm = {
|
|
220
185
|
...SallaBulletDelivery.INITIAL_ADDRESS_FORM,
|
|
221
186
|
};
|
|
@@ -344,62 +309,35 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
344
309
|
}
|
|
345
310
|
}
|
|
346
311
|
};
|
|
312
|
+
// ─── End Map methods ───
|
|
347
313
|
/**
|
|
348
|
-
* Submit add-address form:
|
|
314
|
+
* Submit add-address form: stage the picked address/dropdowns as the session intent,
|
|
315
|
+
* then delegate to handleConfirm() for the single save→allocate→close path (avoids
|
|
316
|
+
* a second, independently-maintained "save an address" implementation — see SHPD-9907).
|
|
349
317
|
*/
|
|
350
|
-
this.
|
|
318
|
+
this.handleSubmitNewAddress = async (e) => {
|
|
351
319
|
e.preventDefault();
|
|
352
|
-
if (this.
|
|
320
|
+
if (this.confirming)
|
|
353
321
|
return;
|
|
354
|
-
const hasMap = this.
|
|
322
|
+
const hasMap = this.canConfirmMapLocation();
|
|
355
323
|
const hasDropdowns = this.selectedCountry && this.selectedCity;
|
|
356
324
|
if (!hasMap && !hasDropdowns)
|
|
357
325
|
return;
|
|
358
326
|
if (!hasMap &&
|
|
359
327
|
!requireRegionAndDistrictForSA(this.selectedCountry?.code, this.selectedRegion?.id, this.selectedDistrict?.id ?? (this.districtName?.trim() || null)))
|
|
360
328
|
return;
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
this.viewMode = "main";
|
|
374
|
-
this.districtName = "";
|
|
375
|
-
this.mapLocationData = null;
|
|
376
|
-
this.invalidatePendingGeocode();
|
|
377
|
-
this.mapStep = 'map';
|
|
378
|
-
this.addressDescription = '';
|
|
379
|
-
}
|
|
380
|
-
else {
|
|
381
|
-
if (!this.isLoggedIn) {
|
|
382
|
-
Salla.notify?.error(Salla.lang.get('pages.checkout.login_to_use_saved_addresses'));
|
|
383
|
-
this.handleLogin();
|
|
384
|
-
}
|
|
385
|
-
else {
|
|
386
|
-
Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"));
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
}
|
|
390
|
-
catch (error) {
|
|
391
|
-
console.error("SallaBulletDelivery: Error saving address", error);
|
|
392
|
-
if (!this.isLoggedIn) {
|
|
393
|
-
Salla.notify?.error(Salla.lang.get('pages.checkout.login_to_use_saved_addresses'));
|
|
394
|
-
this.handleLogin();
|
|
395
|
-
}
|
|
396
|
-
else {
|
|
397
|
-
Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"));
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
finally {
|
|
401
|
-
this.savingAddress = false;
|
|
402
|
-
}
|
|
329
|
+
const details = this.buildIntentAddress();
|
|
330
|
+
if (!details)
|
|
331
|
+
return;
|
|
332
|
+
this.setStoredIntent({
|
|
333
|
+
type: "address",
|
|
334
|
+
country_id: Number(this.selectedCountry?.id) || 0,
|
|
335
|
+
country_code: this.selectedCountry?.code || "",
|
|
336
|
+
address_details: details,
|
|
337
|
+
});
|
|
338
|
+
this.selectedSavedAddress = null;
|
|
339
|
+
this.selectedSessionAddress = true;
|
|
340
|
+
await this.handleConfirm();
|
|
403
341
|
};
|
|
404
342
|
this.handleCountrySelected = (item) => {
|
|
405
343
|
const country = this.countries.find(c => String(c.id) === String(item.id)) || item;
|
|
@@ -479,9 +417,12 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
479
417
|
return Salla.config.isMobileApp();
|
|
480
418
|
}
|
|
481
419
|
/**
|
|
482
|
-
* Opens the bullet delivery modal
|
|
420
|
+
* Opens the bullet delivery modal. Pass `silent: true` to run the same state/data
|
|
421
|
+
* loading below without showing the modal — used by tryAutoConfirmAfterLogin() so a
|
|
422
|
+
* successful auto-confirm never flashes the saved-addresses list; the caller is
|
|
423
|
+
* responsible for revealing the modal itself if it still needs the customer's input.
|
|
483
424
|
*/
|
|
484
|
-
async open() {
|
|
425
|
+
async open(silent = false) {
|
|
485
426
|
if (!this.isEnabled)
|
|
486
427
|
return; // feature disabled — never open
|
|
487
428
|
// If mobile app, open the sheet
|
|
@@ -496,9 +437,11 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
496
437
|
}
|
|
497
438
|
// Reset state before opening
|
|
498
439
|
this.resetState();
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
440
|
+
if (!silent) {
|
|
441
|
+
// Open modal immediately — fields render right away with inline loading
|
|
442
|
+
this.modal.open();
|
|
443
|
+
Salla.event.dispatch("salla::bullet-delivery.modal.opened");
|
|
444
|
+
}
|
|
502
445
|
try {
|
|
503
446
|
this.isLoggedIn = !this.isGuestUser();
|
|
504
447
|
const savedIntent = this.cleanStaleGuestAddressIdIfNeeded(this.getStoredIntent());
|
|
@@ -590,6 +533,7 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
590
533
|
this.mapLocationData = null;
|
|
591
534
|
this.invalidatePendingGeocode();
|
|
592
535
|
this.autoGeolocationTriggered = false;
|
|
536
|
+
this.addressDescription = "";
|
|
593
537
|
this.selectedCountry = null;
|
|
594
538
|
this.selectedRegion = null;
|
|
595
539
|
this.selectedCity = null;
|
|
@@ -688,12 +632,65 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
688
632
|
return false;
|
|
689
633
|
if (!this.isIntentMethodSupported(intent))
|
|
690
634
|
return false;
|
|
635
|
+
// address_id/branch_id alone isn't enough — saveSessionAddressToProfile() persists
|
|
636
|
+
// address_id as soon as the address is *saved*, before allocation even runs, so a
|
|
637
|
+
// later allocation failure must not make this look complete. scope_allocated is only
|
|
638
|
+
// ever explicitly false (that saved-not-allocated state) or true; undefined means a
|
|
639
|
+
// legacy intent persisted before this field existed (or one written elsewhere without
|
|
640
|
+
// an outcome yet) — treat that the same as before rather than incorrectly re-prompting
|
|
641
|
+
// returning customers who already had a valid, complete intent.
|
|
642
|
+
if (intent.scope_allocated === false)
|
|
643
|
+
return false;
|
|
691
644
|
if (intent.type === "address")
|
|
692
645
|
return !!intent.address_id;
|
|
693
646
|
if (intent.type === "branch")
|
|
694
647
|
return !!intent.branch_id;
|
|
695
648
|
return false;
|
|
696
649
|
}
|
|
650
|
+
/**
|
|
651
|
+
* Auto-save + allocate a guest's pre-login address pick the moment auth::logged.in
|
|
652
|
+
* fires, instead of reopening the modal and waiting for another "Confirm" click
|
|
653
|
+
* (SHPD-9907). Guarded by hasIncompleteUserAddressIntent(), which only turns false
|
|
654
|
+
* once the intent gains an address_id — a durable guard even across a duplicate
|
|
655
|
+
* event, unlike `confirming` alone which resets after the redirect timeout.
|
|
656
|
+
*/
|
|
657
|
+
async tryAutoConfirmAfterLogin() {
|
|
658
|
+
if (this.confirming || this.autoConfirmAfterLoginInFlight)
|
|
659
|
+
return false;
|
|
660
|
+
if (!this.hasIncompleteUserAddressIntent())
|
|
661
|
+
return false;
|
|
662
|
+
this.autoConfirmAfterLoginInFlight = true;
|
|
663
|
+
const wasVisible = !!this.modal?.hasAttribute?.("visible");
|
|
664
|
+
try {
|
|
665
|
+
if (!wasVisible) {
|
|
666
|
+
// Load silently — a successful auto-confirm should never flash the
|
|
667
|
+
// saved-addresses list; only reveal the modal below if it can't finish on its own.
|
|
668
|
+
await this.open(true);
|
|
669
|
+
}
|
|
670
|
+
// open() -> loadSavedAddresses() already sets selectedSessionAddress when a
|
|
671
|
+
// session intent exists; bail if that didn't happen (e.g. address_id already set).
|
|
672
|
+
if (!this.selectedSessionAddress) {
|
|
673
|
+
if (!wasVisible)
|
|
674
|
+
this.modal?.open();
|
|
675
|
+
return false;
|
|
676
|
+
}
|
|
677
|
+
await this.handleConfirm();
|
|
678
|
+
// Checking hasCompleteIntentForLoggedInUser() (rather than just
|
|
679
|
+
// allocationOutOfCoverageMessage) also catches a *save* failure — handleConfirm()
|
|
680
|
+
// returns early on that before ever setting an allocation message, which used to
|
|
681
|
+
// make this report success even though nothing was actually confirmed.
|
|
682
|
+
if (!wasVisible && !this.hasCompleteIntentForLoggedInUser()) {
|
|
683
|
+
// Save or allocation failed — surface the modal so the customer can see why
|
|
684
|
+
// and retry or pick a different address.
|
|
685
|
+
this.modal?.open();
|
|
686
|
+
return false;
|
|
687
|
+
}
|
|
688
|
+
return true;
|
|
689
|
+
}
|
|
690
|
+
finally {
|
|
691
|
+
this.autoConfirmAfterLoginInFlight = false;
|
|
692
|
+
}
|
|
693
|
+
}
|
|
697
694
|
/**
|
|
698
695
|
* Authenticated users on the cart page must select/confirm an address before
|
|
699
696
|
* they can dismiss the modal.
|
|
@@ -1305,10 +1302,13 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1305
1302
|
this.viewMode = "main";
|
|
1306
1303
|
this.mapLocationData = null;
|
|
1307
1304
|
this.invalidatePendingGeocode();
|
|
1308
|
-
this.mapStep = 'map';
|
|
1309
1305
|
this.addressDescription = '';
|
|
1310
1306
|
this.autoGeolocationTriggered = false;
|
|
1311
1307
|
}
|
|
1308
|
+
/** Whether there's a saved-addresses list (or a pending session intent) to go back to from the add-address view. */
|
|
1309
|
+
hasAddressesToGoBack() {
|
|
1310
|
+
return this.savedAddresses.length > 0 || hasSessionAddressIntent(this.getStoredIntent());
|
|
1311
|
+
}
|
|
1312
1312
|
// ─── Map methods ───
|
|
1313
1313
|
async fetchAddressToken() {
|
|
1314
1314
|
if (this.addressToken || this.loadingToken)
|
|
@@ -1407,9 +1407,13 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1407
1407
|
get isMapModeAvailable() {
|
|
1408
1408
|
return this.isMapSettingEnabled && !!salla.config.get('store.settings.keys.maps') && !!this.addressToken;
|
|
1409
1409
|
}
|
|
1410
|
+
/** In map mode and a pin has already been dropped (as opposed to still using the dropdowns), regardless of login state. */
|
|
1411
|
+
get isMapPick() {
|
|
1412
|
+
return this.isMapModeAvailable && this.hasMapLocation();
|
|
1413
|
+
}
|
|
1410
1414
|
/** Guest is in map mode and has already dropped a pin (as opposed to still using the dropdowns). */
|
|
1411
1415
|
get isGuestMapPick() {
|
|
1412
|
-
return !this.isLoggedIn && this.
|
|
1416
|
+
return !this.isLoggedIn && this.isMapPick;
|
|
1413
1417
|
}
|
|
1414
1418
|
/** Center shown before geolocation resolves — the customer's IP-based default (falls back to Riyadh). */
|
|
1415
1419
|
get mapInitialCenter() {
|
|
@@ -1432,32 +1436,6 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1432
1436
|
const num = Number(value);
|
|
1433
1437
|
return Number.isFinite(num) ? num : null;
|
|
1434
1438
|
}
|
|
1435
|
-
// ─── End Map methods ───
|
|
1436
|
-
/**
|
|
1437
|
-
* Build address/location payload from guest-form state (same fields as add-address).
|
|
1438
|
-
*/
|
|
1439
|
-
buildAddressLocationPayload() {
|
|
1440
|
-
if (this.isMapModeAvailable && this.hasMapLocation()) {
|
|
1441
|
-
return {
|
|
1442
|
-
lat: this.mapLocationData.lat,
|
|
1443
|
-
lng: this.mapLocationData.lng,
|
|
1444
|
-
...(this.mapLocationData.shortAddress && { short_address: this.mapLocationData.shortAddress }),
|
|
1445
|
-
...(this.addressDescription?.trim() && { description: this.addressDescription.trim() }),
|
|
1446
|
-
};
|
|
1447
|
-
}
|
|
1448
|
-
const districtName = this.selectedDistrict?.name ?? this.districtName?.trim() ?? "";
|
|
1449
|
-
return buildAddressLocationPayloadFromSelection({
|
|
1450
|
-
countryId: this.selectedCountry?.id ?? 0,
|
|
1451
|
-
countryCode: this.selectedCountry?.code,
|
|
1452
|
-
regionId: this.selectedRegion?.id,
|
|
1453
|
-
cityId: this.selectedCity?.id,
|
|
1454
|
-
districtId: this.selectedDistrict?.id,
|
|
1455
|
-
description: districtName,
|
|
1456
|
-
lat: this.mapLocationData?.lat,
|
|
1457
|
-
lng: this.mapLocationData?.lng,
|
|
1458
|
-
shortAddress: this.mapLocationData?.shortAddress,
|
|
1459
|
-
});
|
|
1460
|
-
}
|
|
1461
1439
|
async handleTabChange(tab) {
|
|
1462
1440
|
if (this.tabChanging)
|
|
1463
1441
|
return;
|
|
@@ -1619,7 +1597,7 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1619
1597
|
* when already open AND already correctly reflecting the logged-in state, so a duplicate
|
|
1620
1598
|
* auth::logged.in firing can't reset in-progress form input or cause a visible re-render flicker.
|
|
1621
1599
|
*/
|
|
1622
|
-
handlePendingSubmitAfterLogin() {
|
|
1600
|
+
async handlePendingSubmitAfterLogin() {
|
|
1623
1601
|
// auth::logged.in can fire prematurely (e.g. a silent cross-store login attempt,
|
|
1624
1602
|
// packages/twilight/src/api/cart.js's tryCrossStoreLogin, whose profile sync can complete
|
|
1625
1603
|
// without actually flipping the session to logged-in) while Salla.config still reports a
|
|
@@ -1633,6 +1611,10 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1633
1611
|
this.resolvePendingCartSubmit();
|
|
1634
1612
|
return;
|
|
1635
1613
|
}
|
|
1614
|
+
// handleConfirm()'s own close() resolves the pending cart-submit gate, so
|
|
1615
|
+
// just return on success rather than resolving it a second time here.
|
|
1616
|
+
if (await this.tryAutoConfirmAfterLogin())
|
|
1617
|
+
return;
|
|
1636
1618
|
if (!this.modal?.hasAttribute?.("visible") || !this.isLoggedIn) {
|
|
1637
1619
|
this.open();
|
|
1638
1620
|
}
|
|
@@ -1640,7 +1622,7 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
1640
1622
|
buildIntentAddress() {
|
|
1641
1623
|
if (this.activeTab !== "address")
|
|
1642
1624
|
return undefined;
|
|
1643
|
-
if (this.
|
|
1625
|
+
if (this.isMapPick && this.mapLocationData) {
|
|
1644
1626
|
const { lat, lng, formattedAddress, shortAddress } = this.mapLocationData;
|
|
1645
1627
|
return {
|
|
1646
1628
|
country: this.selectedCountry
|
|
@@ -2031,6 +2013,20 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2031
2013
|
? String(allocationBranchId)
|
|
2032
2014
|
: undefined,
|
|
2033
2015
|
});
|
|
2016
|
+
// Applying the allocated scope to this session must succeed before treating the
|
|
2017
|
+
// confirmation as done — allocateScope() only creates the allocation server-side;
|
|
2018
|
+
// setDeliveryScope() is what makes *this* session use it. Ignoring its result let
|
|
2019
|
+
// checkout proceed (and scope_allocated get persisted) even when it failed.
|
|
2020
|
+
if (allocatedScopeId) {
|
|
2021
|
+
const scopeApplied = await bulletDeliveryAPI.setDeliveryScope(allocatedScopeId);
|
|
2022
|
+
if (!scopeApplied) {
|
|
2023
|
+
this.allocationOutOfCoverageMessage = `${Salla.lang.get("common.errors.error_occurred")}.`;
|
|
2024
|
+
this.confirmBtn?.stop();
|
|
2025
|
+
this.confirming = false;
|
|
2026
|
+
return;
|
|
2027
|
+
}
|
|
2028
|
+
clearApiCache();
|
|
2029
|
+
}
|
|
2034
2030
|
// Store headers in result object for persistence after page reload
|
|
2035
2031
|
result.allocation_headers = {
|
|
2036
2032
|
"s-scope-allocation-type": allocationType,
|
|
@@ -2043,11 +2039,7 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2043
2039
|
this.markShownThisSession();
|
|
2044
2040
|
// After allocation success: persist latest intent so switch UI can always reflect
|
|
2045
2041
|
// the selected address/branch once confirmed.
|
|
2046
|
-
this.setStoredIntent(result);
|
|
2047
|
-
if (allocatedScopeId) {
|
|
2048
|
-
await bulletDeliveryAPI.setDeliveryScope(allocatedScopeId);
|
|
2049
|
-
clearApiCache();
|
|
2050
|
-
}
|
|
2042
|
+
this.setStoredIntent({ ...result, scope_allocated: true });
|
|
2051
2043
|
const allocationConfirmedPayload = {
|
|
2052
2044
|
...result,
|
|
2053
2045
|
address: this.buildAllocationConfirmedAddressData(selectedAddress),
|
|
@@ -2245,8 +2237,10 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2245
2237
|
const { success, address } = await bulletDeliveryAPI.saveAddressLocation(payload);
|
|
2246
2238
|
if (!success || !address)
|
|
2247
2239
|
return null;
|
|
2248
|
-
// Persist address_id immediately to avoid duplicate creation on retry
|
|
2249
|
-
|
|
2240
|
+
// Persist address_id immediately to avoid duplicate creation on retry — but keep
|
|
2241
|
+
// scope_allocated false: the address is saved, not yet allocated, so a later
|
|
2242
|
+
// allocation failure must not make hasCompleteIntentForLoggedInUser() think it is.
|
|
2243
|
+
this.setStoredIntent({ ...intent, address_id: address.id, scope_allocated: false });
|
|
2250
2244
|
this.addressCreated.emit({ address });
|
|
2251
2245
|
return address;
|
|
2252
2246
|
}
|
|
@@ -2281,6 +2275,10 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2281
2275
|
return null;
|
|
2282
2276
|
const savedAddress = address ?? null;
|
|
2283
2277
|
if (savedAddress) {
|
|
2278
|
+
// Persist address_id immediately to avoid duplicate creation on retry — but keep
|
|
2279
|
+
// scope_allocated false: the address is saved, not yet allocated, so a later
|
|
2280
|
+
// allocation failure must not make hasCompleteIntentForLoggedInUser() think it is.
|
|
2281
|
+
this.setStoredIntent({ ...intent, address_id: savedAddress.id, scope_allocated: false });
|
|
2284
2282
|
this.addressCreated.emit({ address: savedAddress });
|
|
2285
2283
|
}
|
|
2286
2284
|
return savedAddress;
|
|
@@ -2369,14 +2367,14 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2369
2367
|
}
|
|
2370
2368
|
renderAddressConfirmation() {
|
|
2371
2369
|
const address = this.mapLocationData?.formattedAddress ?? '';
|
|
2372
|
-
|
|
2373
|
-
return (h("div", { class: "s-bullet-delivery-address-confirm" }, h("div", { class: "s-bullet-delivery-address-confirm-card" }, h("div", { class: "s-bullet-delivery-address-confirm-details" }, h("span", { class: "s-bullet-delivery-address-confirm-label" }, Salla.lang.get('pages.checkout.selected_address')), h("p", { class: "s-bullet-delivery-address-confirm-text" }, address), shortCode && (h("span", { class: "s-bullet-delivery-address-confirm-tag" }, shortCode, h("span", { class: "s-bullet-delivery-address-confirm-tag-icon", innerHTML: LocationTag })))), h("button", { type: "button", class: "s-bullet-delivery-address-confirm-edit", onClick: () => { this.mapStep = 'map'; } }, Salla.lang.get('common.elements.edit'))), h("div", { class: "s-bullet-delivery-address-confirm-description" }, h("label", { class: "s-bullet-delivery-address-confirm-description-label" }, Salla.lang.get('pages.checkout.address_description'), h("span", { class: "s-bullet-delivery-address-confirm-description-optional" }, Salla.lang.get('common.elements.optional'))), h("input", { type: "text", class: "s-bullet-delivery-address-confirm-description-input form-input", placeholder: Salla.lang.get('pages.checkout.address_description_placeholder'), value: this.addressDescription, onInput: (e) => { this.addressDescription = e.target.value; } }))));
|
|
2370
|
+
return (h("div", { class: "s-bullet-delivery-address-confirm" }, h("div", { class: "s-bullet-delivery-address-confirm-card" }, h("span", { class: "s-bullet-delivery-address-map-icon", innerHTML: MiniMap, "aria-hidden": "true" }), h("div", { class: "s-bullet-delivery-address-confirm-details" }, h("span", { class: "s-bullet-delivery-address-confirm-label" }, Salla.lang.get('pages.checkout.selected_address')), h("p", { class: "s-bullet-delivery-address-confirm-text" }, address))), h("div", { class: "s-bullet-delivery-address-confirm-description" }, h("label", { class: "s-bullet-delivery-address-confirm-description-label" }, Salla.lang.get('pages.checkout.address_description'), h("span", { class: "s-bullet-delivery-address-confirm-description-optional" }, Salla.lang.get('common.elements.optional'))), h("input", { type: "text", class: "s-bullet-delivery-address-confirm-description-input form-input", placeholder: Salla.lang.get('pages.checkout.address_description_placeholder'), value: this.addressDescription, onInput: (e) => { this.addressDescription = e.target.value; } }))));
|
|
2374
2371
|
}
|
|
2375
2372
|
renderGuestDeliveryForm() {
|
|
2376
2373
|
if (this.isMapModeAvailable) {
|
|
2377
|
-
return
|
|
2378
|
-
|
|
2379
|
-
|
|
2374
|
+
return [
|
|
2375
|
+
this.renderMapSection(),
|
|
2376
|
+
this.hasMapLocation() ? this.renderAddressConfirmation() : null,
|
|
2377
|
+
];
|
|
2380
2378
|
}
|
|
2381
2379
|
const isSA = isSaudiArabia(this.selectedCountry?.code ?? '');
|
|
2382
2380
|
return [
|
|
@@ -2398,23 +2396,15 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2398
2396
|
if (!this.isMapModeAvailable) {
|
|
2399
2397
|
return this.renderGuestDeliveryForm();
|
|
2400
2398
|
}
|
|
2401
|
-
const
|
|
2402
|
-
const
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
? (this.confirming
|
|
2406
|
-
? Salla.lang.get("pages.checkout.loading")
|
|
2407
|
-
: Salla.lang.get("pages.checkout.confirm_address"))
|
|
2408
|
-
: Salla.lang.get('pages.checkout.confirm_location');
|
|
2399
|
+
const canSubmit = this.canConfirmMapLocation();
|
|
2400
|
+
const submitLabel = this.confirming
|
|
2401
|
+
? Salla.lang.get("pages.checkout.loading")
|
|
2402
|
+
: Salla.lang.get("pages.checkout.confirm_address");
|
|
2409
2403
|
const handleSubmit = (e) => {
|
|
2410
2404
|
e.preventDefault();
|
|
2411
|
-
if (!isConfirmStep && canAdvanceToConfirm) {
|
|
2412
|
-
this.mapStep = 'confirm';
|
|
2413
|
-
return;
|
|
2414
|
-
}
|
|
2415
2405
|
this.handleConfirm();
|
|
2416
2406
|
};
|
|
2417
|
-
return (h("form", { onSubmit: handleSubmit }, this.renderGuestDeliveryForm(), h("div", { class: "s-bullet-delivery-form-actions s-bullet-delivery-form-actions--single", style: { padding: '24px' } }, h("salla-button", { type: "submit", loading: this.confirming, disabled:
|
|
2407
|
+
return (h("form", { onSubmit: handleSubmit }, this.renderGuestDeliveryForm(), h("div", { class: "s-bullet-delivery-form-actions s-bullet-delivery-form-actions--single", style: { padding: '24px' } }, h("salla-button", { type: "submit", loading: this.confirming, disabled: !canSubmit || this.confirming, width: "wide" }, submitLabel), !this.isLoggedIn && (h("button", { type: "button", class: "s-bullet-delivery-login-prompt", onClick: () => this.handleLogin() }, Salla.lang.get('pages.checkout.login_to_use_saved_addresses'))))));
|
|
2418
2408
|
}
|
|
2419
2409
|
renderBranchSearch() {
|
|
2420
2410
|
return (h("div", { class: "s-bullet-delivery-branch-search" }, h("div", { class: "s-bullet-delivery-search-row" }, h("div", { class: "s-bullet-delivery-search s-bullet-delivery-branch-search-wrap" }, h("span", { class: "s-bullet-delivery-search-icon s-bullet-delivery-branch-search-icon", innerHTML: Search, "aria-hidden": "true" }), h("input", { type: "text", class: "s-bullet-delivery-branch-search-input form-input", placeholder: Salla.lang.get("pages.checkout.search_for_city_or_branch"), value: this.branchSearchQuery, onInput: (e) => this.handleBranchSearch(e), autocomplete: "off" })), h("button", { type: "button", class: {
|
|
@@ -2478,25 +2468,18 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2478
2468
|
"s-hidden": this.activeTab !== "branch",
|
|
2479
2469
|
} }, this.renderCountrySelect(), this.renderBranchSearch(), this.renderBranchList()));
|
|
2480
2470
|
}
|
|
2481
|
-
/** Add-address form: map
|
|
2471
|
+
/** Add-address form: map + confirm card in one screen, or dropdown fallback. */
|
|
2482
2472
|
renderAddAddressForm() {
|
|
2483
|
-
Salla.lang.get("pages.checkout.add_new_address");
|
|
2484
2473
|
const mapMode = this.isMapModeAvailable;
|
|
2485
2474
|
const isSA = isSaudiArabia(this.selectedCountry?.code ?? '');
|
|
2486
2475
|
const hasMapLoc = this.hasMapLocation();
|
|
2487
2476
|
let canSubmit;
|
|
2488
2477
|
let submitLabel;
|
|
2489
2478
|
if (mapMode) {
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
else {
|
|
2495
|
-
canSubmit = hasMapLoc;
|
|
2496
|
-
submitLabel = this.savingAddress
|
|
2497
|
-
? Salla.lang.get("pages.checkout.loading")
|
|
2498
|
-
: Salla.lang.get("pages.checkout.confirm_address");
|
|
2499
|
-
}
|
|
2479
|
+
canSubmit = this.canConfirmMapLocation();
|
|
2480
|
+
submitLabel = this.confirming
|
|
2481
|
+
? Salla.lang.get("pages.checkout.loading")
|
|
2482
|
+
: Salla.lang.get("pages.checkout.confirm_address");
|
|
2500
2483
|
}
|
|
2501
2484
|
else {
|
|
2502
2485
|
const canSubmitDropdowns = this.selectedCountry &&
|
|
@@ -2506,20 +2489,16 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2506
2489
|
!!this.selectedDistrict ||
|
|
2507
2490
|
!!(this.districtName && this.districtName.trim().length > 0));
|
|
2508
2491
|
canSubmit = hasMapLoc || canSubmitDropdowns;
|
|
2509
|
-
submitLabel = this.
|
|
2492
|
+
submitLabel = this.confirming
|
|
2510
2493
|
? Salla.lang.get("pages.checkout.loading")
|
|
2511
2494
|
: Salla.lang.get("pages.checkout.confirm_address");
|
|
2512
2495
|
}
|
|
2513
|
-
this.savedAddresses.length > 0 || hasSessionAddressIntent(this.getStoredIntent());
|
|
2514
2496
|
const handleFormSubmit = (e) => {
|
|
2515
2497
|
e.preventDefault();
|
|
2516
|
-
|
|
2517
|
-
this.mapStep = 'confirm';
|
|
2518
|
-
return;
|
|
2519
|
-
}
|
|
2520
|
-
this.handleSubmitAddAddress(e);
|
|
2498
|
+
this.handleSubmitNewAddress(e);
|
|
2521
2499
|
};
|
|
2522
|
-
return (h("div", { class: "s-bullet-delivery-add-address" },
|
|
2500
|
+
return (h("div", { class: "s-bullet-delivery-add-address" }, this.allocationOutOfCoverageMessage &&
|
|
2501
|
+
this.renderAllocationOutOfCoverageAlert(), h("form", { class: "s-bullet-delivery-add-address-form", onSubmit: handleFormSubmit }, this.renderGuestDeliveryForm(), h("div", { class: "s-bullet-delivery-form-actions s-bullet-delivery-form-actions--single" }, h("salla-button", { type: "submit", loading: this.confirming, disabled: !canSubmit || this.confirming, class: "s-bullet-delivery-add-address-submit" }, submitLabel), this.hasAddressesToGoBack() && (h("salla-button", { shape: "link", class: "s-bullet-delivery-back-to-list-link", onClick: () => this.handleBackToAddressList() }, Salla.lang.getWithDefault('pages.checkout.saved_addresses', 'العناوين المحفوظة'), h("i", { class: "sicon-arrow-left" })))))));
|
|
2523
2502
|
}
|
|
2524
2503
|
renderFooter() {
|
|
2525
2504
|
if (this.activeTab === "address" && !this.isLoggedIn && this.isMapModeAvailable) {
|
|
@@ -2604,15 +2583,26 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2604
2583
|
if (!this.isEnabled)
|
|
2605
2584
|
return;
|
|
2606
2585
|
if (this.pendingCartSubmitPromise) {
|
|
2607
|
-
// A prior attempt is still pending
|
|
2608
|
-
//
|
|
2609
|
-
if (this.isGuestUser()) {
|
|
2610
|
-
this.
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
this.
|
|
2586
|
+
// A prior attempt is still pending. For a logged-in user, re-prompt instead of
|
|
2587
|
+
// silently awaiting with nothing visible.
|
|
2588
|
+
if (!this.isGuestUser()) {
|
|
2589
|
+
if (!this.modal?.hasAttribute?.("visible")) {
|
|
2590
|
+
this.open();
|
|
2591
|
+
}
|
|
2592
|
+
await this.pendingCartSubmitPromise;
|
|
2593
|
+
return;
|
|
2614
2594
|
}
|
|
2615
|
-
|
|
2595
|
+
// Guest: login was already shown once for this attempt — reopening it here (the
|
|
2596
|
+
// old behavior) fought whatever the guest just chose (e.g. "Continue as Guest")
|
|
2597
|
+
// and froze the page. Reset the gate so the *next* checkout click starts a clean
|
|
2598
|
+
// cycle (reopening login again, repeating until the guest actually logs in and
|
|
2599
|
+
// allocates) — but never resolve *this* invocation: returning here would resolve
|
|
2600
|
+
// salla.cart.event.submitting() (built on emitAsync, which awaits every listener),
|
|
2601
|
+
// letting cart.js's status() continue straight through to the checkout redirect.
|
|
2602
|
+
this.pendingCartSubmitResolver = null;
|
|
2603
|
+
this.pendingCartSubmitPromise = null;
|
|
2604
|
+
this.cartSubmitConfirmationPending = false;
|
|
2605
|
+
await new Promise(() => { });
|
|
2616
2606
|
return;
|
|
2617
2607
|
}
|
|
2618
2608
|
// Logged-in users with a complete intent can continue checkout without re-prompting.
|
|
@@ -2643,14 +2633,16 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2643
2633
|
this.closeHandler = this.close.bind(this);
|
|
2644
2634
|
Salla.event.on("salla::bullet-delivery.modal.close.requested", this.closeHandler);
|
|
2645
2635
|
this.isRTL = Salla.config.get("theme.is_rtl");
|
|
2646
|
-
this.authLoggedInHandler = () => {
|
|
2636
|
+
this.authLoggedInHandler = async () => {
|
|
2647
2637
|
if (this.cartSubmitConfirmationPending) {
|
|
2648
|
-
this.handlePendingSubmitAfterLogin();
|
|
2638
|
+
await this.handlePendingSubmitAfterLogin();
|
|
2649
2639
|
return;
|
|
2650
2640
|
}
|
|
2651
2641
|
// Always prompt after login when intent is incomplete, regardless of prior prompted flags.
|
|
2652
2642
|
if (!this.hasIncompleteUserAddressIntent())
|
|
2653
2643
|
return;
|
|
2644
|
+
if (await this.tryAutoConfirmAfterLogin())
|
|
2645
|
+
return;
|
|
2654
2646
|
if (this.modal?.hasAttribute?.("visible"))
|
|
2655
2647
|
return;
|
|
2656
2648
|
this.open();
|
|
@@ -2834,7 +2826,6 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2834
2826
|
"loadingBranches": [32],
|
|
2835
2827
|
"loadingNearestBranch": [32],
|
|
2836
2828
|
"locationError": [32],
|
|
2837
|
-
"savingAddress": [32],
|
|
2838
2829
|
"loadingSavedAddresses": [32],
|
|
2839
2830
|
"showCartWillBeClearedBanner": [32],
|
|
2840
2831
|
"countrySearchQuery": [32],
|
|
@@ -2854,9 +2845,9 @@ const SallaBulletDelivery$1 = /*@__PURE__*/ proxyCustomElement(class SallaBullet
|
|
|
2854
2845
|
"addressToken": [32],
|
|
2855
2846
|
"loadingToken": [32],
|
|
2856
2847
|
"mapReady": [32],
|
|
2857
|
-
"mapStep": [32],
|
|
2858
2848
|
"addressDescription": [32],
|
|
2859
2849
|
"reverseGeocoding": [32],
|
|
2850
|
+
"confirming": [32],
|
|
2860
2851
|
"newAddressForm": [32],
|
|
2861
2852
|
"open": [64],
|
|
2862
2853
|
"close": [64]
|