@salla.sa/twilight-components 2.14.392 → 2.14.393
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/app-globals-oehrC7QI.js +39 -0
- package/dist/cjs/{filepond-D-ur1GA-.js → filepond-D7RVR_w_.js} +10 -5
- package/dist/cjs/{filepond-plugin-file-poster-DigEeKId.js → filepond-plugin-file-poster-DTuZK2ot.js} +11 -7
- package/dist/cjs/{filepond-plugin-file-validate-size-R9el3Yro.js → filepond-plugin-file-validate-size-DHc6pF_j.js} +1 -1
- package/dist/cjs/filepond-plugin-file-validate-type-DnkcvJVc.js +271 -0
- package/dist/cjs/{filepond-plugin-image-edit-bhI8kqN_.js → filepond-plugin-image-edit-vrZ1s7kw.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-exif-orientation-COXZUVRV.js → filepond-plugin-image-exif-orientation-Bn5JSzQK.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-preview-COP8QJBf.js → filepond-plugin-image-preview-8qWUFe9n.js} +1 -1
- package/dist/cjs/{index-CGnPURjZ.js → index-C5VeFDQ0.js} +1966 -1344
- package/dist/cjs/{index-BILBEE9f.js → index-CwD81m7i.js} +1 -1
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/salla-accordion-body_2.cjs.entry.js +5 -5
- package/dist/cjs/salla-accordion_6.cjs.entry.js +19 -15
- package/dist/cjs/salla-add-product-button_4.cjs.entry.js +12 -10
- package/dist/cjs/salla-advertisement.cjs.entry.js +3 -3
- package/dist/cjs/salla-alert_2.cjs.entry.js +5 -5
- package/dist/cjs/salla-app-install-alert.cjs.entry.js +3 -3
- package/dist/cjs/salla-apps-icons.cjs.entry.js +3 -3
- package/dist/cjs/salla-booking-field_7.cjs.entry.js +25 -23
- package/dist/cjs/salla-bullet-delivery.cjs.entry.js +3 -3
- package/dist/cjs/salla-cart-coupons.cjs.entry.js +3 -3
- package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +5 -5
- package/dist/cjs/salla-comment-form_8.cjs.entry.js +17 -17
- package/dist/cjs/salla-conditional-offer.cjs.entry.js +3 -3
- package/dist/cjs/salla-contacts.cjs.entry.js +3 -3
- package/dist/cjs/salla-cookies-bar.cjs.entry.js +3 -3
- package/dist/cjs/salla-count-down.cjs.entry.js +35 -11
- package/dist/cjs/salla-custom-fields.cjs.entry.js +3 -3
- package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
- package/dist/cjs/salla-filters-widget.cjs.entry.js +3 -3
- package/dist/cjs/salla-filters.cjs.entry.js +3 -3
- package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
- package/dist/cjs/salla-gifting.cjs.entry.js +3 -3
- package/dist/cjs/salla-hook.cjs.entry.js +5 -2
- package/dist/cjs/salla-infinite-scroll.cjs.entry.js +3 -3
- package/dist/cjs/salla-installment.cjs.entry.js +3 -3
- package/dist/cjs/salla-list-tile.cjs.entry.js +3 -3
- package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-login-modal.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty-program.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty.cjs.entry.js +3 -3
- package/dist/cjs/salla-maintenance-alert.cjs.entry.js +3 -3
- package/dist/cjs/salla-map.cjs.entry.js +3 -3
- package/dist/cjs/salla-menu.cjs.entry.js +3 -3
- package/dist/cjs/salla-metadata.cjs.entry.js +3 -3
- package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +5 -5
- package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +8 -6
- package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +6 -4
- package/dist/cjs/salla-notification-item.cjs.entry.js +3 -3
- package/dist/cjs/salla-notifications.cjs.entry.js +50 -5
- package/dist/cjs/salla-offer-modal.cjs.entry.js +3 -3
- package/dist/cjs/salla-offer.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-details-options.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-details.cjs.entry.js +6 -4
- package/dist/cjs/salla-order-edit-item.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-edit.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-summary.cjs.entry.js +3 -3
- package/dist/cjs/salla-order-totals-card.cjs.entry.js +6 -4
- package/dist/cjs/salla-orders.cjs.entry.js +3 -3
- package/dist/cjs/salla-payments.cjs.entry.js +3 -3
- package/dist/cjs/salla-placeholder.cjs.entry.js +3 -3
- package/dist/cjs/salla-price-range.cjs.entry.js +3 -3
- package/dist/cjs/salla-product-card.cjs.entry.js +3 -3
- package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
- package/dist/cjs/salla-products-list.cjs.entry.js +3 -3
- package/dist/cjs/salla-products-slider.cjs.entry.js +3 -3
- package/dist/cjs/salla-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/salla-quick-order.cjs.entry.js +3 -3
- package/dist/cjs/salla-rating-modal.cjs.entry.js +3 -3
- package/dist/cjs/salla-scopes.cjs.entry.js +3 -3
- package/dist/cjs/salla-search.cjs.entry.js +6 -4
- package/dist/cjs/salla-skeleton.cjs.entry.js +3 -3
- package/dist/cjs/salla-slider.cjs.entry.js +20 -14
- package/dist/cjs/salla-social-share.cjs.entry.js +3 -3
- package/dist/cjs/salla-social.cjs.entry.js +3 -3
- package/dist/cjs/salla-tab-content_3.cjs.entry.js +7 -7
- package/dist/cjs/salla-tiered-offer.cjs.entry.js +3 -3
- package/dist/cjs/salla-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/salla-trust-badges.cjs.entry.js +3 -3
- package/dist/cjs/salla-user-menu.cjs.entry.js +3 -3
- package/dist/cjs/salla-user-profile.cjs.entry.js +3 -3
- package/dist/cjs/salla-user-settings.cjs.entry.js +3 -3
- package/dist/cjs/salla-verify.cjs.entry.js +3 -3
- package/dist/cjs/salla-wallet.cjs.entry.js +3 -3
- package/dist/cjs/twilight.cjs.js +5 -4
- package/dist/cjs/{vanilla-picker-DI3TImGd.js → vanilla-picker-yKERbLpx.js} +1 -1
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/salla-accordion/salla-accordion-head.js +2 -2
- package/dist/collection/components/salla-accordion/salla-accordion.js +4 -4
- package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +19 -19
- package/dist/collection/components/salla-alert/salla-alert.js +5 -5
- package/dist/collection/components/salla-apps-icons/salla-apps-icons.js +6 -6
- package/dist/collection/components/salla-booking-field/salla-booking-field.js +4 -4
- package/dist/collection/components/salla-bottom-alert/salla-bottom-alert.js +9 -9
- package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +6 -3
- package/dist/collection/components/salla-button/salla-button.js +11 -11
- package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +2 -1
- package/dist/collection/components/salla-cart-item-offers/salla-cart-item-offers.js +8 -8
- package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +2 -2
- package/dist/collection/components/salla-color-picker/salla-color-picker.js +20 -14
- package/dist/collection/components/salla-comment-form/salla-comment-form.js +6 -6
- package/dist/collection/components/salla-comments/salla-comment-item.js +2 -3
- package/dist/collection/components/salla-comments/salla-comments.js +18 -17
- package/dist/collection/components/salla-contacts/salla-contacts.js +10 -10
- package/dist/collection/components/salla-count-down/salla-count-down.js +66 -42
- package/dist/collection/components/salla-custom-fields/salla-custom-fields.js +9 -7
- package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +69 -65
- package/dist/collection/components/salla-drawer/salla-drawer.js +11 -11
- package/dist/collection/components/salla-file-upload/salla-file-upload.css +1 -1
- package/dist/collection/components/salla-file-upload/salla-file-upload.js +85 -84
- package/dist/collection/components/salla-filters/salla-filters.js +2 -2
- package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +4 -5
- package/dist/collection/components/salla-gifting/salla-gifting.js +11 -11
- package/dist/collection/components/salla-hook/salla-hook.js +2 -2
- package/dist/collection/components/salla-infinite-scroll/salla-infinite-scroll.js +6 -6
- package/dist/collection/components/salla-installment/salla-installment.js +5 -5
- package/dist/collection/components/salla-list-tile/salla-list-tile.js +2 -2
- package/dist/collection/components/salla-loading/salla-loading.js +4 -4
- package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +5 -5
- package/dist/collection/components/salla-login-modal/salla-login-modal.js +14 -14
- package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +4 -3
- package/dist/collection/components/salla-loyalty/salla-loyalty.js +13 -12
- package/dist/collection/components/salla-map/salla-map.js +14 -14
- package/dist/collection/components/salla-menu/salla-menu.js +10 -9
- package/dist/collection/components/salla-metadata/salla-metadata.js +3 -3
- package/dist/collection/components/salla-modal/salla-modal.js +11 -11
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +2 -2
- 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 -2
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +8 -7
- package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +2 -2
- package/dist/collection/components/salla-notifications/salla-notification-item.js +2 -2
- package/dist/collection/components/salla-notifications/salla-notifications.js +50 -5
- package/dist/collection/components/salla-offer/salla-offer.js +1 -1
- package/dist/collection/components/salla-order-details/salla-order-details-multiple-bundle-product.js +5 -5
- package/dist/collection/components/salla-order-details/salla-order-details-options.js +6 -5
- package/dist/collection/components/salla-order-details/salla-order-details.js +4 -3
- package/dist/collection/components/salla-order-edit/salla-order-edit-item.js +4 -4
- package/dist/collection/components/salla-order-edit/salla-order-edit.js +4 -4
- package/dist/collection/components/salla-order-summary/salla-order-summary.js +2 -2
- package/dist/collection/components/salla-order-totals-card/salla-order-totals-card.js +4 -3
- package/dist/collection/components/salla-orders/salla-orders.js +4 -4
- package/dist/collection/components/salla-payments/salla-payments.js +0 -1
- package/dist/collection/components/salla-placeholder/salla-placeholder.js +3 -3
- package/dist/collection/components/salla-price-range/salla-price-range.js +8 -8
- package/dist/collection/components/salla-product-availability/salla-product-availability.js +6 -6
- package/dist/collection/components/salla-product-card/salla-product-card.js +18 -18
- package/dist/collection/components/salla-product-options/salla-product-options.js +15 -13
- package/dist/collection/components/salla-products-list/salla-products-list.js +20 -21
- package/dist/collection/components/salla-products-slider/salla-products-slider.js +22 -23
- package/dist/collection/components/salla-progress-bar/salla-progress-bar.js +21 -20
- package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +2 -2
- package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +16 -17
- package/dist/collection/components/salla-quick-order/salla-quick-order.js +11 -11
- package/dist/collection/components/salla-rating-modal/salla-rating-modal.js +2 -2
- package/dist/collection/components/salla-rating-stars/salla-rating-stars.js +8 -8
- package/dist/collection/components/salla-review-card/salla-review-card.js +3 -3
- package/dist/collection/components/salla-reviews/salla-reviews.js +16 -13
- package/dist/collection/components/salla-reviews-summary/salla-reviews-summary.js +2 -2
- package/dist/collection/components/salla-scopes/salla-scopes.js +2 -2
- package/dist/collection/components/salla-search/salla-search.js +6 -6
- package/dist/collection/components/salla-skeleton/salla-skeleton.js +3 -3
- package/dist/collection/components/salla-slider/salla-slider.css +9 -2
- package/dist/collection/components/salla-slider/salla-slider.js +25 -25
- package/dist/collection/components/salla-social-share/salla-social-share.js +3 -3
- package/dist/collection/components/salla-tabs/salla-tab-content.js +2 -2
- package/dist/collection/components/salla-tabs/salla-tab-header.js +5 -5
- package/dist/collection/components/salla-tabs/salla-tabs.js +2 -2
- package/dist/collection/components/salla-tel-input/salla-tel-input.js +9 -8
- package/dist/collection/components/salla-tooltip/salla-tooltip.js +5 -5
- package/dist/collection/components/salla-trust-badges/salla-trust-badges.js +1 -1
- package/dist/collection/components/salla-user-menu/salla-user-menu.js +5 -5
- package/dist/collection/components/salla-user-profile/salla-user-profile.js +1 -1
- package/dist/collection/components/salla-verify/salla-verify.js +4 -4
- package/dist/components/Helper.js +1 -432
- package/dist/components/_commonjsHelpers.js +1 -7
- package/dist/components/anime.es.js +1 -1310
- package/dist/components/arrow-left.js +1 -8
- package/dist/components/axios.js +2 -3908
- package/dist/components/bell-ring.js +1 -8
- package/dist/components/camera.js +1 -8
- package/dist/components/cancel.js +1 -8
- package/dist/components/cart.js +1 -8
- package/dist/components/check-circle2.js +1 -15
- package/dist/components/check.js +1 -8
- package/dist/components/facebook.js +1 -10
- package/dist/components/filepond-plugin-file-poster.js +3 -659
- package/dist/components/filepond-plugin-file-validate-size.js +2 -204
- package/dist/components/filepond-plugin-file-validate-type.js +3 -279
- package/dist/components/filepond-plugin-image-edit.js +2 -487
- package/dist/components/filepond-plugin-image-exif-orientation.js +2 -214
- package/dist/components/filepond-plugin-image-preview.js +2 -2237
- package/dist/components/filepond.js +3 -11282
- package/dist/components/gift.js +1 -8
- package/dist/components/image.js +1 -8
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +1 -8163
- package/dist/components/index2.js +1 -1709
- package/dist/components/index3.js +1 -2550
- package/dist/components/interfaces.js +1 -12
- package/dist/components/isObject.js +1 -292
- package/dist/components/keyboard_arrow_down.js +1 -8
- package/dist/components/keyboard_arrow_right.js +1 -15
- package/dist/components/location.js +1 -11
- package/dist/components/mail.js +1 -8
- package/dist/components/minus.js +1 -15
- package/dist/components/salla-accordion-body.js +1 -6
- package/dist/components/salla-accordion-body2.js +1 -30
- package/dist/components/salla-accordion-head.js +1 -6
- package/dist/components/salla-accordion-head2.js +1 -63
- package/dist/components/salla-accordion.js +1 -6
- package/dist/components/salla-accordion2.js +1 -68
- package/dist/components/salla-add-product-button.js +1 -6
- package/dist/components/salla-add-product-button2.js +1 -306
- package/dist/components/salla-advertisement.js +1 -155
- package/dist/components/salla-alert.js +1 -59
- package/dist/components/salla-app-install-alert.js +1 -91
- package/dist/components/salla-apps-icons.js +1 -63
- package/dist/components/salla-booking-field.js +1 -6
- package/dist/components/salla-booking-field2.js +1 -221
- package/dist/components/salla-bottom-alert.js +1 -214
- package/dist/components/salla-breadcrumb.js +1 -226
- package/dist/components/salla-bullet-delivery.js +1 -2114
- package/dist/components/salla-button.js +1 -6
- package/dist/components/salla-button2.js +1 -174
- package/dist/components/salla-cart-coupons.js +1 -284
- package/dist/components/salla-cart-item-offers.js +1 -143
- package/dist/components/salla-cart-summary.js +1 -136
- package/dist/components/salla-color-picker.js +1 -6
- package/dist/components/salla-color-picker2.js +1 -260
- package/dist/components/salla-comment-form.js +1 -6
- package/dist/components/salla-comment-form2.js +1 -64
- package/dist/components/salla-comment-item.js +1 -6
- package/dist/components/salla-comment-item2.js +1 -217
- package/dist/components/salla-comments.js +1 -395
- package/dist/components/salla-conditional-fields.js +1 -6
- package/dist/components/salla-conditional-fields2.js +1 -137
- package/dist/components/salla-conditional-offer.js +1 -194
- package/dist/components/salla-contacts.js +1 -125
- package/dist/components/salla-cookies-bar.js +1 -107
- package/dist/components/salla-count-down.js +1 -6
- package/dist/components/salla-count-down2.js +1 -247
- package/dist/components/salla-custom-fields.js +1 -175
- package/dist/components/salla-datetime-picker.js +1 -6
- package/dist/components/salla-datetime-picker2.js +1 -342
- package/dist/components/salla-delivery-promise.js +1 -263
- package/dist/components/salla-drawer.js +1 -6
- package/dist/components/salla-drawer2.js +1 -214
- package/dist/components/salla-file-upload.js +1 -6
- package/dist/components/salla-file-upload2.js +1 -583
- package/dist/components/salla-filters-widget.js +1 -6
- package/dist/components/salla-filters-widget2.js +1 -245
- package/dist/components/salla-filters.js +1 -253
- package/dist/components/salla-fulfillment-methods.js +1 -61
- package/dist/components/salla-gifting.js +1 -732
- package/dist/components/salla-hook.js +1 -47
- package/dist/components/salla-infinite-scroll.js +1 -112
- package/dist/components/salla-installment.js +1 -306
- package/dist/components/salla-list-tile.js +1 -6
- package/dist/components/salla-list-tile2.js +1 -47
- package/dist/components/salla-loading.js +1 -6
- package/dist/components/salla-loading2.js +1 -51
- package/dist/components/salla-localization-modal.js +1 -296
- package/dist/components/salla-login-modal.js +1 -6
- package/dist/components/salla-login-modal2.js +1 -359
- package/dist/components/salla-loyalty-prize-item.js +1 -39
- package/dist/components/salla-loyalty-program.js +1 -115
- package/dist/components/salla-loyalty.js +1 -304
- package/dist/components/salla-maintenance-alert.js +1 -57
- package/dist/components/salla-map.js +1 -6
- package/dist/components/salla-map2.js +1 -766
- package/dist/components/salla-menu.js +1 -165
- package/dist/components/salla-metadata.js +1 -97
- package/dist/components/salla-modal.js +1 -6
- package/dist/components/salla-modal2.js +1 -215
- package/dist/components/salla-multiple-bundle-product-cart.js +1 -6
- package/dist/components/salla-multiple-bundle-product-cart2.js +1 -151
- package/dist/components/salla-multiple-bundle-product-details.js +1 -6
- package/dist/components/salla-multiple-bundle-product-details2.js +1 -296
- package/dist/components/salla-multiple-bundle-product-options-modal.js +1 -6
- package/dist/components/salla-multiple-bundle-product-options-modal2.js +1 -598
- package/dist/components/salla-multiple-bundle-product-slider.js +1 -6
- package/dist/components/salla-multiple-bundle-product-slider2.js +1 -136
- package/dist/components/salla-multiple-bundle-product.js +1 -207
- package/dist/components/salla-notification-item.js +1 -6
- package/dist/components/salla-notification-item2.js +1 -32
- package/dist/components/salla-notifications.js +1 -145
- package/dist/components/salla-offer-modal.js +1 -328
- package/dist/components/salla-offer.js +1 -478
- package/dist/components/salla-order-details-multiple-bundle-product.js +1 -6
- package/dist/components/salla-order-details-multiple-bundle-product2.js +1 -122
- package/dist/components/salla-order-details-options.js +1 -6
- package/dist/components/salla-order-details-options2.js +1 -140
- package/dist/components/salla-order-details.js +1 -122
- package/dist/components/salla-order-edit-item.js +1 -6
- package/dist/components/salla-order-edit-item2.js +1 -181
- package/dist/components/salla-order-edit.js +1 -288
- package/dist/components/salla-order-summary.js +1 -132
- package/dist/components/salla-order-totals-card.js +1 -87
- package/dist/components/salla-orders.js +1 -271
- package/dist/components/salla-payments.js +1 -76
- package/dist/components/salla-placeholder.js +1 -6
- package/dist/components/salla-placeholder2.js +1 -66
- package/dist/components/salla-price-range.js +1 -6
- package/dist/components/salla-price-range2.js +1 -204
- package/dist/components/salla-product-availability.js +1 -6
- package/dist/components/salla-product-availability2.js +1 -206
- package/dist/components/salla-product-card.js +1 -6
- package/dist/components/salla-product-card2.js +1 -241
- package/dist/components/salla-product-options.js +1 -6
- package/dist/components/salla-product-options2.js +1 -962
- package/dist/components/salla-product-size-guide.js +1 -130
- package/dist/components/salla-products-list.js +1 -6
- package/dist/components/salla-products-list2.js +1 -812
- package/dist/components/salla-products-slider.js +1 -6
- package/dist/components/salla-products-slider2.js +1 -215
- package/dist/components/salla-progress-bar.js +1 -6
- package/dist/components/salla-progress-bar2.js +1 -94
- package/dist/components/salla-quantity-input.js +1 -6
- package/dist/components/salla-quantity-input2.js +1 -127
- package/dist/components/salla-quick-buy.js +1 -6
- package/dist/components/salla-quick-buy2.js +1 -1181
- package/dist/components/salla-quick-order.js +1 -299
- package/dist/components/salla-rating-modal.js +1 -530
- package/dist/components/salla-rating-stars.js +1 -6
- package/dist/components/salla-rating-stars2.js +1 -162
- package/dist/components/salla-review-card.js +1 -6
- package/dist/components/salla-review-card2.js +1 -198
- package/dist/components/salla-reviews-page.js +1 -726
- package/dist/components/salla-reviews-summary.js +1 -6
- package/dist/components/salla-reviews-summary2.js +1 -132
- package/dist/components/salla-reviews.js +1 -143
- package/dist/components/salla-scopes.js +1 -249
- package/dist/components/salla-search.js +1 -213
- package/dist/components/salla-skeleton.js +1 -6
- package/dist/components/salla-skeleton2.js +1 -50
- package/dist/components/salla-slider.js +1 -6
- package/dist/components/salla-slider2.js +1 -10483
- package/dist/components/salla-social-share.js +1 -194
- package/dist/components/salla-social.js +1 -89
- package/dist/components/salla-tab-content.js +1 -6
- package/dist/components/salla-tab-content2.js +1 -55
- package/dist/components/salla-tab-header.js +1 -6
- package/dist/components/salla-tab-header2.js +1 -85
- package/dist/components/salla-tabs.js +1 -6
- package/dist/components/salla-tabs2.js +1 -75
- package/dist/components/salla-tel-input.js +1 -6
- package/dist/components/salla-tel-input2.js +1 -168
- package/dist/components/salla-tiered-offer.js +1 -366
- package/dist/components/salla-tooltip.js +1 -6
- package/dist/components/salla-tooltip2.js +1 -57
- package/dist/components/salla-trust-badges.js +1 -90
- package/dist/components/salla-user-menu.js +1 -344
- package/dist/components/salla-user-profile.js +1 -203
- package/dist/components/salla-user-settings.js +1 -139
- package/dist/components/salla-verify.js +1 -303
- package/dist/components/salla-wallet.js +1 -114
- package/dist/components/search.js +1 -8
- package/dist/components/shopping-bag.js +1 -8
- package/dist/components/special-discount.js +1 -8
- package/dist/components/star.js +1 -8
- package/dist/components/star2.js +1 -8
- package/dist/components/vanilla-picker.js +2 -1034
- package/dist/components/whatsapp2.js +1 -8
- package/dist/esm/app-globals-BFryt7-C.js +37 -0
- package/dist/esm/{filepond-kTbl0kuh.js → filepond-DlGaLh8N.js} +10 -5
- package/dist/esm/{filepond-plugin-file-poster-CyywnjKv.js → filepond-plugin-file-poster-BTVFYcQx.js} +11 -7
- package/dist/esm/{filepond-plugin-file-validate-size-DgteZhje.js → filepond-plugin-file-validate-size-DGryLmWv.js} +1 -1
- package/dist/esm/filepond-plugin-file-validate-type-DxKfCD0V.js +269 -0
- package/dist/esm/{filepond-plugin-image-edit-pZ_mETE7.js → filepond-plugin-image-edit-2W7pu9hn.js} +1 -1
- package/dist/esm/{filepond-plugin-image-exif-orientation-CjKYl7HL.js → filepond-plugin-image-exif-orientation-OQu-IvPH.js} +1 -1
- package/dist/esm/{filepond-plugin-image-preview-BzJTl_2A.js → filepond-plugin-image-preview-DEW_tSNR.js} +1 -1
- package/dist/esm/{index-3Kis_Ivk.js → index-BDqMkCqE.js} +1 -1
- package/dist/esm/{index-C23tPnnH.js → index-DYB20YqN.js} +1966 -1344
- package/dist/esm/loader.js +4 -3
- package/dist/esm/salla-accordion-body_2.entry.js +5 -5
- package/dist/esm/salla-accordion_6.entry.js +19 -15
- package/dist/esm/salla-add-product-button_4.entry.js +12 -10
- package/dist/esm/salla-advertisement.entry.js +3 -3
- package/dist/esm/salla-alert_2.entry.js +5 -5
- package/dist/esm/salla-app-install-alert.entry.js +3 -3
- package/dist/esm/salla-apps-icons.entry.js +3 -3
- package/dist/esm/salla-booking-field_7.entry.js +25 -23
- package/dist/esm/salla-bullet-delivery.entry.js +3 -3
- package/dist/esm/salla-cart-coupons.entry.js +3 -3
- package/dist/esm/salla-cart-item-offers_2.entry.js +5 -5
- package/dist/esm/salla-comment-form_8.entry.js +17 -17
- package/dist/esm/salla-conditional-offer.entry.js +3 -3
- package/dist/esm/salla-contacts.entry.js +3 -3
- package/dist/esm/salla-cookies-bar.entry.js +3 -3
- package/dist/esm/salla-count-down.entry.js +35 -11
- package/dist/esm/salla-custom-fields.entry.js +3 -3
- package/dist/esm/salla-delivery-promise.entry.js +1 -1
- package/dist/esm/salla-filters-widget.entry.js +3 -3
- package/dist/esm/salla-filters.entry.js +3 -3
- package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
- package/dist/esm/salla-gifting.entry.js +3 -3
- package/dist/esm/salla-hook.entry.js +5 -2
- package/dist/esm/salla-infinite-scroll.entry.js +3 -3
- package/dist/esm/salla-installment.entry.js +3 -3
- package/dist/esm/salla-list-tile.entry.js +3 -3
- package/dist/esm/salla-localization-modal.entry.js +1 -1
- package/dist/esm/salla-login-modal.entry.js +3 -3
- package/dist/esm/salla-loyalty-prize-item.entry.js +3 -3
- package/dist/esm/salla-loyalty-program.entry.js +3 -3
- package/dist/esm/salla-loyalty.entry.js +3 -3
- package/dist/esm/salla-maintenance-alert.entry.js +3 -3
- package/dist/esm/salla-map.entry.js +3 -3
- package/dist/esm/salla-menu.entry.js +3 -3
- package/dist/esm/salla-metadata.entry.js +3 -3
- package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +5 -5
- package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +8 -6
- package/dist/esm/salla-multiple-bundle-product.entry.js +6 -4
- package/dist/esm/salla-notification-item.entry.js +3 -3
- package/dist/esm/salla-notifications.entry.js +50 -5
- package/dist/esm/salla-offer-modal.entry.js +3 -3
- package/dist/esm/salla-offer.entry.js +3 -3
- package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +3 -3
- package/dist/esm/salla-order-details-options.entry.js +3 -3
- package/dist/esm/salla-order-details.entry.js +6 -4
- package/dist/esm/salla-order-edit-item.entry.js +3 -3
- package/dist/esm/salla-order-edit.entry.js +3 -3
- package/dist/esm/salla-order-summary.entry.js +3 -3
- package/dist/esm/salla-order-totals-card.entry.js +6 -4
- package/dist/esm/salla-orders.entry.js +3 -3
- package/dist/esm/salla-payments.entry.js +3 -3
- package/dist/esm/salla-placeholder.entry.js +3 -3
- package/dist/esm/salla-price-range.entry.js +3 -3
- package/dist/esm/salla-product-card.entry.js +3 -3
- package/dist/esm/salla-product-size-guide.entry.js +3 -3
- package/dist/esm/salla-products-list.entry.js +3 -3
- package/dist/esm/salla-products-slider.entry.js +3 -3
- package/dist/esm/salla-progress-bar.entry.js +3 -3
- package/dist/esm/salla-quick-order.entry.js +3 -3
- package/dist/esm/salla-rating-modal.entry.js +3 -3
- package/dist/esm/salla-scopes.entry.js +3 -3
- package/dist/esm/salla-search.entry.js +6 -4
- package/dist/esm/salla-skeleton.entry.js +3 -3
- package/dist/esm/salla-slider.entry.js +20 -14
- package/dist/esm/salla-social-share.entry.js +3 -3
- package/dist/esm/salla-social.entry.js +3 -3
- package/dist/esm/salla-tab-content_3.entry.js +7 -7
- package/dist/esm/salla-tiered-offer.entry.js +3 -3
- package/dist/esm/salla-tooltip.entry.js +3 -3
- package/dist/esm/salla-trust-badges.entry.js +3 -3
- package/dist/esm/salla-user-menu.entry.js +3 -3
- package/dist/esm/salla-user-profile.entry.js +3 -3
- package/dist/esm/salla-user-settings.entry.js +3 -3
- package/dist/esm/salla-verify.entry.js +3 -3
- package/dist/esm/salla-wallet.entry.js +3 -3
- package/dist/esm/twilight.js +5 -4
- package/dist/esm/{vanilla-picker-CEy5x8Cf.js → vanilla-picker-Dt9vZPZF.js} +1 -1
- package/dist/twilight/{p-651fe6e4.entry.js → p-06fa7327.entry.js} +1 -1
- package/dist/twilight/{p-a50f7f70.entry.js → p-09d39785.entry.js} +1 -1
- package/dist/twilight/{p-744d6394.entry.js → p-0add06f9.entry.js} +1 -1
- package/dist/twilight/{p-f251e744.entry.js → p-105b1dab.entry.js} +1 -1
- package/dist/twilight/{p-407828e4.entry.js → p-108d8c8b.entry.js} +1 -1
- package/dist/twilight/{p-2a1871c2.entry.js → p-1875537e.entry.js} +1 -1
- package/dist/twilight/{p-ff6f769c.entry.js → p-18bb0181.entry.js} +1 -1
- package/dist/twilight/p-1daeed6e.entry.js +4 -0
- package/dist/twilight/{p-2aa48902.entry.js → p-1ef2602d.entry.js} +1 -1
- package/dist/twilight/{p-27f34c85.entry.js → p-2881bb33.entry.js} +1 -1
- package/dist/twilight/{p-c3d0c062.entry.js → p-293c6cf3.entry.js} +1 -1
- package/dist/twilight/{p-866b297b.entry.js → p-296d2dd0.entry.js} +1 -1
- package/dist/twilight/{p-3a5aaa20.entry.js → p-2abaa633.entry.js} +1 -1
- package/dist/twilight/p-2ddb3fce.entry.js +4 -0
- package/dist/twilight/{p-81f648a2.entry.js → p-2fe01e44.entry.js} +1 -1
- package/dist/twilight/p-33779828.entry.js +4 -0
- package/dist/twilight/p-34968e31.entry.js +4 -0
- package/dist/twilight/{p-3745a7d0.entry.js → p-34b670fc.entry.js} +1 -1
- package/dist/twilight/{p-9f23dd30.entry.js → p-3ccc532d.entry.js} +1 -1
- package/dist/twilight/{p-f2ee9ceb.entry.js → p-41c733c2.entry.js} +1 -1
- package/dist/twilight/{p-67fe5680.entry.js → p-44fa7521.entry.js} +1 -1
- package/dist/twilight/{p-b4f07395.entry.js → p-4932857d.entry.js} +1 -1
- package/dist/twilight/{p-81f6638f.entry.js → p-4fa4547a.entry.js} +1 -1
- package/dist/twilight/{p-ba4b672c.entry.js → p-542d3277.entry.js} +1 -1
- package/dist/twilight/{p-a00e249b.entry.js → p-57ff1f25.entry.js} +1 -1
- package/dist/twilight/{p-827edf95.entry.js → p-59ae82bd.entry.js} +1 -1
- package/dist/twilight/{p-82e3c734.entry.js → p-647b6d76.entry.js} +1 -1
- package/dist/twilight/p-665189b4.entry.js +4 -0
- package/dist/twilight/{p-b55da21d.entry.js → p-6f36541a.entry.js} +1 -1
- package/dist/twilight/{p-c8aa5377.entry.js → p-7093a427.entry.js} +1 -1
- package/dist/twilight/{p-f201122a.entry.js → p-748df7e6.entry.js} +1 -1
- package/dist/twilight/p-776c9d33.entry.js +4 -0
- package/dist/twilight/{p-ce9fee6d.entry.js → p-7abddca8.entry.js} +1 -1
- package/dist/twilight/p-7b8313ef.entry.js +4 -0
- package/dist/twilight/p-7bd0ede5.entry.js +4 -0
- package/dist/twilight/p-817b8ba5.entry.js +4 -0
- package/dist/twilight/{p-5ef1b170.entry.js → p-87c0ca91.entry.js} +1 -1
- package/dist/twilight/p-8e8d9d7d.entry.js +4 -0
- package/dist/twilight/{p-BHjlzmYy.js → p-8r0S6BcZ.js} +1 -1
- package/dist/twilight/{p-face0448.entry.js → p-94dbc1e9.entry.js} +1 -1
- package/dist/twilight/{p-4e00f827.entry.js → p-96a20515.entry.js} +1 -1
- package/dist/twilight/{p-81f76d49.entry.js → p-96d03a28.entry.js} +1 -1
- package/dist/twilight/{p-97df32eb.entry.js → p-96e78428.entry.js} +1 -1
- package/dist/twilight/{p-CU-HtXWh.js → p-BZnoSB1s.js} +1 -1
- package/dist/twilight/p-BkClxrC4.js +9 -0
- package/dist/twilight/p-Ck4zxCil.js +9 -0
- package/dist/twilight/{p-IoI86ovS.js → p-Cw3UBzjl.js} +1 -1
- package/dist/twilight/p-D1vqXXNX.js +9 -0
- package/dist/twilight/p-DYB20YqN.js +5 -0
- package/dist/twilight/p-Vl6qpttb.js +4 -0
- package/dist/twilight/{p-BgG5eq1x.js → p-X6Yi3bYP.js} +1 -1
- package/dist/twilight/{p-d022b6ec.entry.js → p-a01f1992.entry.js} +1 -1
- package/dist/twilight/{p-5d37cc33.entry.js → p-aa7c5de0.entry.js} +1 -1
- package/dist/twilight/{p-b6ded196.entry.js → p-aaa0c743.entry.js} +1 -1
- package/dist/twilight/{p-713590e2.entry.js → p-ad041ab5.entry.js} +1 -1
- package/dist/twilight/{p-d1dd1db6.entry.js → p-ad07f67a.entry.js} +1 -1
- package/dist/twilight/{p-f1f74b41.entry.js → p-af3c74f4.entry.js} +1 -1
- package/dist/twilight/p-af60e72a.entry.js +4 -0
- package/dist/twilight/{p-bdcf3926.entry.js → p-b17d055d.entry.js} +1 -1
- package/dist/twilight/{p-c68f3054.entry.js → p-b598c0f7.entry.js} +1 -1
- package/dist/twilight/{p-8c6db6d7.entry.js → p-b64f3155.entry.js} +1 -1
- package/dist/twilight/p-bNzv71Xl.js +9 -0
- package/dist/twilight/{p-BqCmPfAo.js → p-bScl0xMh.js} +2 -2
- package/dist/twilight/{p-344c1910.entry.js → p-bff4c7b3.entry.js} +1 -1
- package/dist/twilight/{p-1b1f9f71.entry.js → p-c091e2dc.entry.js} +1 -1
- package/dist/twilight/{p-775b42ec.entry.js → p-c1fd45b1.entry.js} +1 -1
- package/dist/twilight/{p-1c215c8c.entry.js → p-c3ffb88a.entry.js} +1 -1
- package/dist/twilight/{p-9deae4f4.entry.js → p-c87951a2.entry.js} +1 -1
- package/dist/twilight/{p-1899f283.entry.js → p-ccfe5308.entry.js} +1 -1
- package/dist/twilight/{p-98eb495e.entry.js → p-d337c399.entry.js} +1 -1
- package/dist/twilight/{p-7b717899.entry.js → p-d371d450.entry.js} +1 -1
- package/dist/twilight/{p-f8b6967f.entry.js → p-d4a242f8.entry.js} +1 -1
- package/dist/twilight/{p-194d87c6.entry.js → p-d9f5a8cd.entry.js} +1 -1
- package/dist/twilight/{p-ff9b33bb.entry.js → p-dd2bd5dc.entry.js} +1 -1
- package/dist/twilight/{p-e89812d8.entry.js → p-df6853b5.entry.js} +1 -1
- package/dist/twilight/{p-05663bb1.entry.js → p-e28c0773.entry.js} +1 -1
- package/dist/twilight/{p-a76b3dba.entry.js → p-e3b8e0e1.entry.js} +1 -1
- package/dist/twilight/p-e679884a.entry.js +4 -0
- package/dist/twilight/{p-11767786.entry.js → p-e6bbf50d.entry.js} +1 -1
- package/dist/twilight/{p-1ca75c99.entry.js → p-e94f217b.entry.js} +1 -1
- package/dist/twilight/{p-d81ad2c3.entry.js → p-eac718cd.entry.js} +1 -1
- package/dist/twilight/{p-85ceef78.entry.js → p-ede67a08.entry.js} +1 -1
- package/dist/twilight/p-efab88c5.entry.js +4 -0
- package/dist/twilight/{p-1dbaefb8.entry.js → p-f176d41d.entry.js} +1 -1
- package/dist/twilight/p-f5d15e71.entry.js +4 -0
- package/dist/twilight/{p-50621375.entry.js → p-f7999a6d.entry.js} +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/components/salla-count-down/salla-count-down.d.ts +6 -0
- package/dist/types/components/salla-notifications/interfaces.d.ts +20 -0
- package/dist/types/components/salla-notifications/salla-notifications.d.ts +17 -0
- package/dist/types/components.d.ts +763 -177
- package/dist/types/stencil-public-runtime.d.ts +169 -11
- package/package.json +5 -5
- package/dist/cjs/filepond-plugin-file-validate-type-Dfy66STE.js +0 -287
- package/dist/esm/filepond-plugin-file-validate-type-BYs_scJr.js +0 -285
- package/dist/twilight/p-0652987b.entry.js +0 -4
- package/dist/twilight/p-14529fd6.entry.js +0 -4
- package/dist/twilight/p-1c8394db.entry.js +0 -4
- package/dist/twilight/p-346b55d6.entry.js +0 -4
- package/dist/twilight/p-3962c34c.entry.js +0 -4
- package/dist/twilight/p-4e9e3ab1.entry.js +0 -4
- package/dist/twilight/p-549f59ed.entry.js +0 -4
- package/dist/twilight/p-54f65187.entry.js +0 -4
- package/dist/twilight/p-726513f8.entry.js +0 -4
- package/dist/twilight/p-753464fd.entry.js +0 -4
- package/dist/twilight/p-AfW2b46_.js +0 -9
- package/dist/twilight/p-C23tPnnH.js +0 -5
- package/dist/twilight/p-CrYUKEsF.js +0 -9
- package/dist/twilight/p-HWjjIZ9_.js +0 -9
- package/dist/twilight/p-Ig1Tafsp.js +0 -9
- package/dist/twilight/p-c9001d7f.entry.js +0 -4
- package/dist/twilight/p-cf9573fd.entry.js +0 -4
- package/dist/twilight/p-e6124fab.entry.js +0 -4
- package/dist/twilight/p-eb5a8329.entry.js +0 -4
|
@@ -263,7 +263,6 @@ export class SallaUserMenu {
|
|
|
263
263
|
return {
|
|
264
264
|
"inline": {
|
|
265
265
|
"type": "boolean",
|
|
266
|
-
"attribute": "inline",
|
|
267
266
|
"mutable": false,
|
|
268
267
|
"complexType": {
|
|
269
268
|
"original": "boolean",
|
|
@@ -279,11 +278,11 @@ export class SallaUserMenu {
|
|
|
279
278
|
"getter": false,
|
|
280
279
|
"setter": false,
|
|
281
280
|
"reflect": true,
|
|
281
|
+
"attribute": "inline",
|
|
282
282
|
"defaultValue": "false"
|
|
283
283
|
},
|
|
284
284
|
"avatarOnly": {
|
|
285
285
|
"type": "boolean",
|
|
286
|
-
"attribute": "avatar-only",
|
|
287
286
|
"mutable": false,
|
|
288
287
|
"complexType": {
|
|
289
288
|
"original": "boolean",
|
|
@@ -299,11 +298,11 @@ export class SallaUserMenu {
|
|
|
299
298
|
"getter": false,
|
|
300
299
|
"setter": false,
|
|
301
300
|
"reflect": true,
|
|
301
|
+
"attribute": "avatar-only",
|
|
302
302
|
"defaultValue": "false"
|
|
303
303
|
},
|
|
304
304
|
"showHeader": {
|
|
305
305
|
"type": "boolean",
|
|
306
|
-
"attribute": "show-header",
|
|
307
306
|
"mutable": false,
|
|
308
307
|
"complexType": {
|
|
309
308
|
"original": "boolean",
|
|
@@ -319,11 +318,11 @@ export class SallaUserMenu {
|
|
|
319
318
|
"getter": false,
|
|
320
319
|
"setter": false,
|
|
321
320
|
"reflect": true,
|
|
321
|
+
"attribute": "show-header",
|
|
322
322
|
"defaultValue": "false"
|
|
323
323
|
},
|
|
324
324
|
"relativeDropdown": {
|
|
325
325
|
"type": "boolean",
|
|
326
|
-
"attribute": "relative-dropdown",
|
|
327
326
|
"mutable": false,
|
|
328
327
|
"complexType": {
|
|
329
328
|
"original": "boolean",
|
|
@@ -339,11 +338,11 @@ export class SallaUserMenu {
|
|
|
339
338
|
"getter": false,
|
|
340
339
|
"setter": false,
|
|
341
340
|
"reflect": true,
|
|
341
|
+
"attribute": "relative-dropdown",
|
|
342
342
|
"defaultValue": "false"
|
|
343
343
|
},
|
|
344
344
|
"showTrigger": {
|
|
345
345
|
"type": "boolean",
|
|
346
|
-
"attribute": "show-trigger",
|
|
347
346
|
"mutable": true,
|
|
348
347
|
"complexType": {
|
|
349
348
|
"original": "boolean",
|
|
@@ -359,6 +358,7 @@ export class SallaUserMenu {
|
|
|
359
358
|
"getter": false,
|
|
360
359
|
"setter": false,
|
|
361
360
|
"reflect": true,
|
|
361
|
+
"attribute": "show-trigger",
|
|
362
362
|
"defaultValue": "false"
|
|
363
363
|
}
|
|
364
364
|
};
|
|
@@ -164,7 +164,6 @@ export class SallaUserProfile {
|
|
|
164
164
|
return {
|
|
165
165
|
"minAge": {
|
|
166
166
|
"type": "number",
|
|
167
|
-
"attribute": "min-age",
|
|
168
167
|
"mutable": false,
|
|
169
168
|
"complexType": {
|
|
170
169
|
"original": "number",
|
|
@@ -180,6 +179,7 @@ export class SallaUserProfile {
|
|
|
180
179
|
"getter": false,
|
|
181
180
|
"setter": false,
|
|
182
181
|
"reflect": false,
|
|
182
|
+
"attribute": "min-age",
|
|
183
183
|
"defaultValue": "10"
|
|
184
184
|
}
|
|
185
185
|
};
|
|
@@ -258,7 +258,6 @@ export class SallaVerify {
|
|
|
258
258
|
return {
|
|
259
259
|
"display": {
|
|
260
260
|
"type": "string",
|
|
261
|
-
"attribute": "display",
|
|
262
261
|
"mutable": false,
|
|
263
262
|
"complexType": {
|
|
264
263
|
"original": "'inline' | 'modal'",
|
|
@@ -274,11 +273,11 @@ export class SallaVerify {
|
|
|
274
273
|
"getter": false,
|
|
275
274
|
"setter": false,
|
|
276
275
|
"reflect": false,
|
|
276
|
+
"attribute": "display",
|
|
277
277
|
"defaultValue": "'modal'"
|
|
278
278
|
},
|
|
279
279
|
"type": {
|
|
280
280
|
"type": "string",
|
|
281
|
-
"attribute": "type",
|
|
282
281
|
"mutable": true,
|
|
283
282
|
"complexType": {
|
|
284
283
|
"original": "'mobile' | 'email'",
|
|
@@ -294,11 +293,11 @@ export class SallaVerify {
|
|
|
294
293
|
"getter": false,
|
|
295
294
|
"setter": false,
|
|
296
295
|
"reflect": false,
|
|
296
|
+
"attribute": "type",
|
|
297
297
|
"defaultValue": "'mobile'"
|
|
298
298
|
},
|
|
299
299
|
"autoReload": {
|
|
300
300
|
"type": "boolean",
|
|
301
|
-
"attribute": "auto-reload",
|
|
302
301
|
"mutable": false,
|
|
303
302
|
"complexType": {
|
|
304
303
|
"original": "boolean",
|
|
@@ -314,11 +313,11 @@ export class SallaVerify {
|
|
|
314
313
|
"getter": false,
|
|
315
314
|
"setter": false,
|
|
316
315
|
"reflect": false,
|
|
316
|
+
"attribute": "auto-reload",
|
|
317
317
|
"defaultValue": "true"
|
|
318
318
|
},
|
|
319
319
|
"supportWebAuth": {
|
|
320
320
|
"type": "boolean",
|
|
321
|
-
"attribute": "support-web-auth",
|
|
322
321
|
"mutable": false,
|
|
323
322
|
"complexType": {
|
|
324
323
|
"original": "boolean",
|
|
@@ -334,6 +333,7 @@ export class SallaVerify {
|
|
|
334
333
|
"getter": false,
|
|
335
334
|
"setter": false,
|
|
336
335
|
"reflect": false,
|
|
336
|
+
"attribute": "support-web-auth",
|
|
337
337
|
"defaultValue": "true"
|
|
338
338
|
}
|
|
339
339
|
};
|
|
@@ -1,435 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
//TODO::reduce it to 10
|
|
7
|
-
salla.event.setMaxListeners(100);
|
|
8
|
-
class Helper {
|
|
9
|
-
setIncludes(includes) {
|
|
10
|
-
this.includes = includes;
|
|
11
|
-
return this;
|
|
12
|
-
}
|
|
13
|
-
toggleElementClassIf(element, classes1, classes2, callback) {
|
|
14
|
-
classes1 = Array.isArray(classes1) ? classes1 : classes1.split(' ');
|
|
15
|
-
classes2 = Array.isArray(classes2) ? classes2 : classes2.split(' ');
|
|
16
|
-
let isClasses1 = callback(element);
|
|
17
|
-
element?.classList.remove(...(isClasses1 ? classes2 : classes1));
|
|
18
|
-
element?.classList.add(...(isClasses1 ? classes1 : classes2));
|
|
19
|
-
return this;
|
|
20
|
-
}
|
|
21
|
-
toggleClassIf(selector, classes1, classes2, callback) {
|
|
22
|
-
document.querySelectorAll(selector).forEach(element => this.toggleElementClassIf(element, classes1, classes2, callback));
|
|
23
|
-
return this;
|
|
24
|
-
}
|
|
25
|
-
isValidEmail(email) {
|
|
26
|
-
const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
|
|
27
|
-
return re.test(String(email).toLowerCase());
|
|
28
|
-
}
|
|
29
|
-
filterEmojies(text) {
|
|
30
|
-
var characterFilter = /(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|\ud83c[\ude32-\ude3a]|\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/g;
|
|
31
|
-
return text.replace(characterFilter, "");
|
|
32
|
-
}
|
|
33
|
-
debounce(fn, ...data) {
|
|
34
|
-
if (!this.debounce_) {
|
|
35
|
-
this.debounce_ = salla.helpers.debounce((callback, ...innerData) => callback(...innerData), 500);
|
|
36
|
-
}
|
|
37
|
-
//@ts-ignore
|
|
38
|
-
return this.debounce_(fn, ...data);
|
|
39
|
-
}
|
|
40
|
-
getProductsSource(source) {
|
|
41
|
-
return {
|
|
42
|
-
'brands.single': 'brands',
|
|
43
|
-
'product.index': 'categories',
|
|
44
|
-
'product.index.latest': 'latest',
|
|
45
|
-
'product.index.offers': 'offers',
|
|
46
|
-
'product.index.search': 'search',
|
|
47
|
-
'customer.wishlist': 'wishlist',
|
|
48
|
-
'landing-page': 'landing-page',
|
|
49
|
-
'product.index.tag': 'tags',
|
|
50
|
-
'product.index.sales': 'sales',
|
|
51
|
-
'components.most_sales_products': 'sales', //temporary, delete it after two days from now
|
|
52
|
-
}[source || salla.config.get('page.slug')] || source || 'latest';
|
|
53
|
-
}
|
|
54
|
-
getApiSource(source) {
|
|
55
|
-
const apiSourceMap = { 'recently': 'selected' };
|
|
56
|
-
return apiSourceMap[source] || source;
|
|
57
|
-
}
|
|
58
|
-
getPageTitleForSource(source) {
|
|
59
|
-
source = {
|
|
60
|
-
'brands': 'common.titles.brands',
|
|
61
|
-
// 'categories':'',
|
|
62
|
-
'latest': 'blocks.home.latest_products',
|
|
63
|
-
'offers': 'common.titles.discounts',
|
|
64
|
-
'reorder': 'common.titles.products',
|
|
65
|
-
// 'search':'',
|
|
66
|
-
// 'landing-page':'',
|
|
67
|
-
// 'tags':'',
|
|
68
|
-
'sales': 'common.titles.most_sales',
|
|
69
|
-
}[source];
|
|
70
|
-
return source ? salla.lang.get(source) : '';
|
|
71
|
-
}
|
|
72
|
-
getProductsSourceValue(source, sourceValue) {
|
|
73
|
-
const parsedSource = this.getProductsSource(source);
|
|
74
|
-
// Validate if the source value is a valid JSON string
|
|
75
|
-
let parsedSourceValue = null;
|
|
76
|
-
if (sourceValue) {
|
|
77
|
-
try {
|
|
78
|
-
parsedSourceValue = typeof sourceValue === 'string' ? JSON.parse(sourceValue) : sourceValue;
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
console.error('Failed to parse JSON string in sourceValue:', error);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
// Handle different source types
|
|
85
|
-
if (!['search', 'json', 'offers', 'latest', 'sales', 'related'].includes(parsedSource)) {
|
|
86
|
-
if (Array.isArray(parsedSourceValue) && parsedSourceValue.length) {
|
|
87
|
-
return parsedSourceValue;
|
|
88
|
-
}
|
|
89
|
-
if (Array.isArray(parsedSourceValue) && !parsedSourceValue.length) {
|
|
90
|
-
return '';
|
|
91
|
-
}
|
|
92
|
-
if (typeof parsedSourceValue === 'number') {
|
|
93
|
-
return [parsedSourceValue];
|
|
94
|
-
}
|
|
95
|
-
if (!sourceValue && ['categories', 'tags', 'brands'].includes(source)) {
|
|
96
|
-
return [salla.config.get('page.id')];
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
// Return sourceValue if it exists and is a valid JSON object/array
|
|
100
|
-
if (parsedSourceValue || sourceValue) {
|
|
101
|
-
return parsedSourceValue || sourceValue;
|
|
102
|
-
}
|
|
103
|
-
if (parsedSource === 'search') {
|
|
104
|
-
return new URLSearchParams(window.location.search).get('q') || '';
|
|
105
|
-
}
|
|
106
|
-
// Return page id as default value
|
|
107
|
-
return salla.config.get('page.id');
|
|
108
|
-
}
|
|
109
|
-
extractFiltersFromUrl(searchParams) {
|
|
110
|
-
let filters = {};
|
|
111
|
-
searchParams.forEach((value, key) => {
|
|
112
|
-
// Handle filters[xxx] format
|
|
113
|
-
const matchesNested = key.match(/^filters\[(.*?)\](\[(.*?)\])?$/u);
|
|
114
|
-
if (matchesNested) {
|
|
115
|
-
const filterName = matchesNested[1];
|
|
116
|
-
const nestedKey = matchesNested[3];
|
|
117
|
-
if (nestedKey) {
|
|
118
|
-
// Handle nested object
|
|
119
|
-
filters[filterName] = filters[filterName] || {};
|
|
120
|
-
filters[filterName][nestedKey] = value;
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
// Handle regular key
|
|
124
|
-
filters[filterName] = value;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
// Handle simple key-value pairs
|
|
129
|
-
const matchesSimple = key.match(/^(.*?)$/u);
|
|
130
|
-
if (matchesSimple) {
|
|
131
|
-
filters[matchesSimple[1]] = value;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
});
|
|
135
|
-
return filters;
|
|
136
|
-
}
|
|
137
|
-
async injectExtraFieldsToResponse(response) {
|
|
138
|
-
if (!response || !this.includes)
|
|
139
|
-
return response;
|
|
140
|
-
const productIds = response.data.map(product => product.id);
|
|
141
|
-
try {
|
|
142
|
-
const { data: product } = await this.fetchImagesAndOptions(productIds);
|
|
143
|
-
this.injectOptionsAndImages(response.data, product);
|
|
144
|
-
if (!this.includes.includes('metadata')) {
|
|
145
|
-
return response;
|
|
146
|
-
}
|
|
147
|
-
const metadataResponse = await salla.api.metadata.fetchValues('product', productIds);
|
|
148
|
-
response.data.forEach(product => {
|
|
149
|
-
//@ts-ignore
|
|
150
|
-
product['metadata'] = metadataResponse.data.find(meta => parseInt(meta.entity_id) === parseInt(product.id));
|
|
151
|
-
});
|
|
152
|
-
return response;
|
|
153
|
-
}
|
|
154
|
-
catch (error) {
|
|
155
|
-
console.error('Error in injectExtraFieldsToResponse:', error);
|
|
156
|
-
throw error;
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* This to make sure we will not request the options endpoint unless we have to.
|
|
161
|
-
*/
|
|
162
|
-
fetchImagesAndOptions(productIds) {
|
|
163
|
-
return this.productsIncludes().length
|
|
164
|
-
? salla.api.product.fetchOptions(productIds, { with: this.productsIncludes() })
|
|
165
|
-
: Promise.resolve({ data: [] }); //fake the endpoint, to reduce unwanted query if developer wants metadata only
|
|
166
|
-
}
|
|
167
|
-
injectOptionsAndImages(productList, newData) {
|
|
168
|
-
return newData.length
|
|
169
|
-
? productList.map(product => {
|
|
170
|
-
this.includes
|
|
171
|
-
.filter(field => field !== 'metadata')
|
|
172
|
-
.forEach(field => {
|
|
173
|
-
//@ts-ignore
|
|
174
|
-
const foundProduct = newData.find((prod) => parseInt(prod.id) === parseInt(product.id));
|
|
175
|
-
product[field] = foundProduct ? foundProduct[field] : null; // Assign null or a default value if not found
|
|
176
|
-
});
|
|
177
|
-
return product;
|
|
178
|
-
})
|
|
179
|
-
: null;
|
|
180
|
-
}
|
|
181
|
-
productsIncludes() {
|
|
182
|
-
return this.includes?.filter(field => field != 'metadata');
|
|
183
|
-
}
|
|
184
|
-
saveSource(key, source) {
|
|
185
|
-
if (!source)
|
|
186
|
-
return;
|
|
187
|
-
try {
|
|
188
|
-
sessionStorage.setItem(key, source);
|
|
189
|
-
}
|
|
190
|
-
catch (error) {
|
|
191
|
-
salla.logger.warn('Error saving source to session storage');
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
saveProductSource(source) {
|
|
195
|
-
this.saveSource('s-viewed-source', source);
|
|
196
|
-
}
|
|
197
|
-
saveAddToCartSource(source) {
|
|
198
|
-
this.saveSource('s-add-to-cart-source', source);
|
|
199
|
-
}
|
|
200
|
-
parseJson(includes) {
|
|
201
|
-
if (typeof includes !== 'string') {
|
|
202
|
-
return includes;
|
|
203
|
-
}
|
|
204
|
-
try {
|
|
205
|
-
return JSON.parse(includes);
|
|
206
|
-
}
|
|
207
|
-
catch (e) {
|
|
208
|
-
salla.logger.error('Failed to parse includes as JSON:', e);
|
|
209
|
-
}
|
|
210
|
-
return null;
|
|
211
|
-
}
|
|
212
|
-
getProductSchemaMarkupScript(product) {
|
|
213
|
-
const scriptElement = document.createElement('script');
|
|
214
|
-
scriptElement.type = 'application/ld+json';
|
|
215
|
-
// TODO: This json object MIGHT need mode data or properties.
|
|
216
|
-
const jsonData = {
|
|
217
|
-
"@context": "http://schema.org",
|
|
218
|
-
"@type": "Product",
|
|
219
|
-
"name": product?.name,
|
|
220
|
-
"image": product?.image?.url || product?.thumbnail,
|
|
221
|
-
"description": product?.description,
|
|
222
|
-
"brand": {
|
|
223
|
-
"@type": "Brand",
|
|
224
|
-
"logo": product?.brand?.logo
|
|
225
|
-
},
|
|
226
|
-
"offers": {
|
|
227
|
-
"@type": "Offer",
|
|
228
|
-
"price": product?.price
|
|
229
|
-
}
|
|
230
|
-
};
|
|
231
|
-
scriptElement.text = JSON.stringify(jsonData);
|
|
232
|
-
return scriptElement;
|
|
233
|
-
}
|
|
234
|
-
createProductSchema(product, position) {
|
|
235
|
-
let ProductSchema = {
|
|
236
|
-
"productID": `${product.id}`,
|
|
237
|
-
"@type": 'Product',
|
|
238
|
-
"name": product.name,
|
|
239
|
-
"url": product.url,
|
|
240
|
-
"image": product.image.url || product.image,
|
|
241
|
-
"description": product.description || product.subtitle || product.name,
|
|
242
|
-
// Add SKU only if valid
|
|
243
|
-
...(product.sku && product.sku.length > 0 && {
|
|
244
|
-
"sku": product.sku
|
|
245
|
-
}),
|
|
246
|
-
"offers": {
|
|
247
|
-
"@type": "Offer",
|
|
248
|
-
"url": product.url,
|
|
249
|
-
"priceCurrency": product.currency,
|
|
250
|
-
"price": product.price,
|
|
251
|
-
"itemCondition": "NewCondition",
|
|
252
|
-
"availability": product.is_available ? "InStock" : "OutOfStock",
|
|
253
|
-
//if there is no product.discount_ends, will set it to be valid until the end of this week
|
|
254
|
-
"priceValidUntil": product.discount_ends || (new Date(new Date().setDate(new Date().getDate() + 7)).toISOString().split('T')[0]),
|
|
255
|
-
"priceSpecification": {
|
|
256
|
-
"@type": "PriceSpecification",
|
|
257
|
-
"price": product.regular_price,
|
|
258
|
-
"priceCurrency": product.currency,
|
|
259
|
-
"valueAddedTaxIncluded": product.is_taxable,
|
|
260
|
-
},
|
|
261
|
-
"seller": {
|
|
262
|
-
"@type": "Organization",
|
|
263
|
-
"name": salla.config.get('store.name'),
|
|
264
|
-
},
|
|
265
|
-
"shippingDetails": {
|
|
266
|
-
"@type": "OfferShippingDetails",
|
|
267
|
-
"shippingRate": {
|
|
268
|
-
"@type": "MonetaryAmount",
|
|
269
|
-
"value": "0",
|
|
270
|
-
"currency": product.currency || "SAR"
|
|
271
|
-
},
|
|
272
|
-
"deliveryTime": {
|
|
273
|
-
"@type": "ShippingDeliveryTime",
|
|
274
|
-
"businessDays": {
|
|
275
|
-
"@type": "OpeningHoursSpecification",
|
|
276
|
-
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
|
|
277
|
-
},
|
|
278
|
-
"cutoffTime": "14:00"
|
|
279
|
-
}
|
|
280
|
-
},
|
|
281
|
-
"hasMerchantReturnPolicy": {
|
|
282
|
-
"@type": "MerchantReturnPolicy",
|
|
283
|
-
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
|
|
284
|
-
"merchantReturnDays": 30,
|
|
285
|
-
"returnMethod": "https://schema.org/ReturnByMail",
|
|
286
|
-
"returnFees": "https://schema.org/FreeReturn"
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
};
|
|
290
|
-
//@ts-ignore
|
|
291
|
-
if (product.rating?.stars) {
|
|
292
|
-
ProductSchema.aggregateRating = {
|
|
293
|
-
"@type": "AggregateRating",
|
|
294
|
-
//@ts-ignore
|
|
295
|
-
"ratingValue": product.rating.stars,
|
|
296
|
-
"reviewCount": product.rating.count,
|
|
297
|
-
};
|
|
298
|
-
}
|
|
299
|
-
return {
|
|
300
|
-
"@type": "ListItem",
|
|
301
|
-
"position": position,
|
|
302
|
-
"item": ProductSchema,
|
|
303
|
-
};
|
|
304
|
-
}
|
|
305
|
-
generateProductSchema(productList) {
|
|
306
|
-
const schemaId = 'salla-product-schema-script';
|
|
307
|
-
if (document.getElementById(schemaId)) {
|
|
308
|
-
salla.logger.warn(`already added schema-script with id (${schemaId})!`);
|
|
309
|
-
return;
|
|
310
|
-
}
|
|
311
|
-
const script = document.createElement('script');
|
|
312
|
-
script.type = 'application/ld+json';
|
|
313
|
-
script.id = schemaId;
|
|
314
|
-
const schema = {
|
|
315
|
-
"@context": "https://schema.org",
|
|
316
|
-
"@type": "ItemList",
|
|
317
|
-
"name": salla.config.get('page.title'),
|
|
318
|
-
"itemListElement": productList.map((product, indxe) => this.createProductSchema(product, indxe + 1)),
|
|
319
|
-
};
|
|
320
|
-
script.textContent = JSON.stringify(schema);
|
|
321
|
-
document.head.appendChild(script);
|
|
322
|
-
}
|
|
323
|
-
/**
|
|
324
|
-
* Format date in the form of `Monday 13 November 2023`
|
|
325
|
-
*/
|
|
326
|
-
formatDateFromString(dateString, numberCb, lang = 'en') {
|
|
327
|
-
const errors = {
|
|
328
|
-
en: "Invalid Date",
|
|
329
|
-
ar: "تاريخ غير صالح"
|
|
330
|
-
};
|
|
331
|
-
// Check if dateString exists and is not empty
|
|
332
|
-
if (!dateString || typeof dateString !== 'string' || dateString.trim() === '') {
|
|
333
|
-
return errors[lang];
|
|
334
|
-
}
|
|
335
|
-
// Handle different date formats
|
|
336
|
-
let dateObject;
|
|
337
|
-
// Check if it's a timestamp (number as string)
|
|
338
|
-
if (/^\d+$/.test(dateString)) {
|
|
339
|
-
const timestamp = parseInt(dateString);
|
|
340
|
-
// Check if it's already in milliseconds or seconds
|
|
341
|
-
dateObject = new Date(timestamp > 1000000000000 ? timestamp : timestamp * 1000);
|
|
342
|
-
}
|
|
343
|
-
else {
|
|
344
|
-
// Try to parse as ISO string or other formats
|
|
345
|
-
dateObject = new Date(dateString);
|
|
346
|
-
}
|
|
347
|
-
if (isNaN(dateObject.getTime())) {
|
|
348
|
-
return errors[lang];
|
|
349
|
-
}
|
|
350
|
-
const daysOfWeek = {
|
|
351
|
-
en: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
|
|
352
|
-
ar: ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت']
|
|
353
|
-
};
|
|
354
|
-
const months = {
|
|
355
|
-
en: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
|
|
356
|
-
ar: ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر']
|
|
357
|
-
};
|
|
358
|
-
const dayOfWeek = daysOfWeek[lang][dateObject.getDay()];
|
|
359
|
-
const dayOfMonth = numberCb(dateObject.getDate(), lang === 'en');
|
|
360
|
-
const month = months[lang][dateObject.getMonth()];
|
|
361
|
-
const year = numberCb(dateObject.getFullYear(), lang === 'en');
|
|
362
|
-
return `${dayOfWeek} ${dayOfMonth} ${month} ${year}`;
|
|
363
|
-
}
|
|
364
|
-
/**
|
|
365
|
-
* Copy text into clipboard.
|
|
366
|
-
* @param event
|
|
367
|
-
*/
|
|
368
|
-
copyToClipboard(event) {
|
|
369
|
-
// Get the text content from the clicked div
|
|
370
|
-
var textToCopy = event.target.innerText;
|
|
371
|
-
// Use the Clipboard API to copy text to the clipboard
|
|
372
|
-
navigator.clipboard.writeText(textToCopy)
|
|
373
|
-
.then(() => {
|
|
374
|
-
console.log('Text copied to clipboard: ' + textToCopy);
|
|
375
|
-
})
|
|
376
|
-
.catch(err => {
|
|
377
|
-
console.error('Unable to copy text to clipboard', err);
|
|
378
|
-
});
|
|
379
|
-
}
|
|
380
|
-
animateItems(items) {
|
|
381
|
-
if (!items)
|
|
382
|
-
return;
|
|
383
|
-
anime({
|
|
384
|
-
targets: items,
|
|
385
|
-
opacity: [0, 1],
|
|
386
|
-
duration: 1200,
|
|
387
|
-
translateY: [20, 0],
|
|
388
|
-
delay: function (_el, i) {
|
|
389
|
-
return i * 100;
|
|
390
|
-
},
|
|
391
|
-
easing: 'easeOutExpo',
|
|
392
|
-
complete: function (_anim) {
|
|
393
|
-
items.forEach((item) => {
|
|
394
|
-
item.classList.add('animated');
|
|
395
|
-
});
|
|
396
|
-
}
|
|
397
|
-
});
|
|
398
|
-
}
|
|
399
|
-
createReviewObject(reviewData) {
|
|
400
|
-
return {
|
|
401
|
-
"@type": "Review",
|
|
402
|
-
"author": { "@type": "Person", "name": reviewData.name },
|
|
403
|
-
// "datePublished": reviewData.date * 1000,
|
|
404
|
-
"reviewBody": reviewData.content,
|
|
405
|
-
"reviewRating": {
|
|
406
|
-
"@type": "Rating",
|
|
407
|
-
"bestRating": "5",
|
|
408
|
-
"ratingValue": reviewData.stars,
|
|
409
|
-
"worstRating": "1"
|
|
410
|
-
}
|
|
411
|
-
};
|
|
412
|
-
}
|
|
413
|
-
generateReviewSchema(reviews) {
|
|
414
|
-
const script = document.createElement('script');
|
|
415
|
-
script.type = 'application/ld+json';
|
|
416
|
-
const schema = {
|
|
417
|
-
"@context": "http://schema.org/",
|
|
418
|
-
"@type": "Store",
|
|
419
|
-
"name": salla.config.get('store.name'),
|
|
420
|
-
"url": salla.config.get('store.url'),
|
|
421
|
-
"address": "الرياض",
|
|
422
|
-
"review": reviews.map((review) => this.createReviewObject(review)),
|
|
423
|
-
"aggregateRating": {
|
|
424
|
-
"@type": "AggregateRating",
|
|
425
|
-
"ratingValue": reviews.reduce((acc, review) => acc + review.stars, 0) / reviews.length,
|
|
426
|
-
"reviewCount": reviews.length
|
|
427
|
-
}
|
|
428
|
-
};
|
|
429
|
-
script.textContent = JSON.stringify(schema);
|
|
430
|
-
document.head.appendChild(script);
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
var Helper$1 = new Helper;
|
|
434
|
-
|
|
435
|
-
export { Helper$1 as H };
|
|
4
|
+
import{a as e}from"./anime.es.js";salla.event.setMaxListeners(100);var t=new class{setIncludes(e){return this.includes=e,this}toggleElementClassIf(e,t,r,a){t=Array.isArray(t)?t:t.split(" "),r=Array.isArray(r)?r:r.split(" ");let s=a(e);return e?.classList.remove(...s?r:t),e?.classList.add(...s?t:r),this}toggleClassIf(e,t,r,a){return document.querySelectorAll(e).forEach((e=>this.toggleElementClassIf(e,t,r,a))),this}isValidEmail(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(String(e).toLowerCase())}filterEmojies(e){return e.replace(/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|\ud83c[\ude32-\ude3a]|\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/g,"")}debounce(e,...t){return this.debounce_||(this.debounce_=salla.helpers.debounce(((e,...t)=>e(...t)),500)),this.debounce_(e,...t)}getProductsSource(e){return{"brands.single":"brands","product.index":"categories","product.index.latest":"latest","product.index.offers":"offers","product.index.search":"search","customer.wishlist":"wishlist","landing-page":"landing-page","product.index.tag":"tags","product.index.sales":"sales","components.most_sales_products":"sales"}[e||salla.config.get("page.slug")]||e||"latest"}getApiSource(e){return{recently:"selected"}[e]||e}getPageTitleForSource(e){return(e={brands:"common.titles.brands",latest:"blocks.home.latest_products",offers:"common.titles.discounts",reorder:"common.titles.products",sales:"common.titles.most_sales"}[e])?salla.lang.get(e):""}getProductsSourceValue(e,t){const r=this.getProductsSource(e);let a=null;if(t)try{a="string"==typeof t?JSON.parse(t):t}catch(e){console.error("Failed to parse JSON string in sourceValue:",e)}if(!["search","json","offers","latest","sales","related"].includes(r)){if(Array.isArray(a)&&a.length)return a;if(Array.isArray(a)&&!a.length)return"";if("number"==typeof a)return[a];if(!t&&["categories","tags","brands"].includes(e))return[salla.config.get("page.id")]}return a||t?a||t:"search"===r?new URLSearchParams(window.location.search).get("q")||"":salla.config.get("page.id")}extractFiltersFromUrl(e){let t={};return e.forEach(((e,r)=>{const a=r.match(/^filters\[(.*?)\](\[(.*?)\])?$/u);if(a){const r=a[1],s=a[3];s?(t[r]=t[r]||{},t[r][s]=e):t[r]=e}else{const a=r.match(/^(.*?)$/u);a&&(t[a[1]]=e)}})),t}async injectExtraFieldsToResponse(e){if(!e||!this.includes)return e;const t=e.data.map((e=>e.id));try{const{data:r}=await this.fetchImagesAndOptions(t);if(this.injectOptionsAndImages(e.data,r),!this.includes.includes("metadata"))return e;const a=await salla.api.metadata.fetchValues("product",t);return e.data.forEach((e=>{e.metadata=a.data.find((t=>parseInt(t.entity_id)===parseInt(e.id)))})),e}catch(e){throw console.error("Error in injectExtraFieldsToResponse:",e),e}}fetchImagesAndOptions(e){return this.productsIncludes().length?salla.api.product.fetchOptions(e,{with:this.productsIncludes()}):Promise.resolve({data:[]})}injectOptionsAndImages(e,t){return t.length?e.map((e=>(this.includes.filter((e=>"metadata"!==e)).forEach((r=>{const a=t.find((t=>parseInt(t.id)===parseInt(e.id)));e[r]=a?a[r]:null})),e))):null}productsIncludes(){return this.includes?.filter((e=>"metadata"!=e))}saveSource(e,t){if(t)try{sessionStorage.setItem(e,t)}catch(e){salla.logger.warn("Error saving source to session storage")}}saveProductSource(e){this.saveSource("s-viewed-source",e)}saveAddToCartSource(e){this.saveSource("s-add-to-cart-source",e)}parseJson(e){if("string"!=typeof e)return e;try{return JSON.parse(e)}catch(e){salla.logger.error("Failed to parse includes as JSON:",e)}return null}getProductSchemaMarkupScript(e){const t=document.createElement("script");return t.type="application/ld+json",t.text=JSON.stringify({"@context":"http://schema.org","@type":"Product",name:e?.name,image:e?.image?.url||e?.thumbnail,description:e?.description,brand:{"@type":"Brand",logo:e?.brand?.logo},offers:{"@type":"Offer",price:e?.price}}),t}createProductSchema(e,t){let r={productID:`${e.id}`,"@type":"Product",name:e.name,url:e.url,image:e.image.url||e.image,description:e.description||e.subtitle||e.name,...e.sku&&e.sku.length>0&&{sku:e.sku},offers:{"@type":"Offer",url:e.url,priceCurrency:e.currency,price:e.price,itemCondition:"NewCondition",availability:e.is_available?"InStock":"OutOfStock",priceValidUntil:e.discount_ends||new Date((new Date).setDate((new Date).getDate()+7)).toISOString().split("T")[0],priceSpecification:{"@type":"PriceSpecification",price:e.regular_price,priceCurrency:e.currency,valueAddedTaxIncluded:e.is_taxable},seller:{"@type":"Organization",name:salla.config.get("store.name")},shippingDetails:{"@type":"OfferShippingDetails",shippingRate:{"@type":"MonetaryAmount",value:"0",currency:e.currency||"SAR"},deliveryTime:{"@type":"ShippingDeliveryTime",businessDays:{"@type":"OpeningHoursSpecification",dayOfWeek:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]},cutoffTime:"14:00"}},hasMerchantReturnPolicy:{"@type":"MerchantReturnPolicy",returnPolicyCategory:"https://schema.org/MerchantReturnFiniteReturnWindow",merchantReturnDays:30,returnMethod:"https://schema.org/ReturnByMail",returnFees:"https://schema.org/FreeReturn"}}};return e.rating?.stars&&(r.aggregateRating={"@type":"AggregateRating",ratingValue:e.rating.stars,reviewCount:e.rating.count}),{"@type":"ListItem",position:t,item:r}}generateProductSchema(e){const t="salla-product-schema-script";if(document.getElementById(t))return void salla.logger.warn(`already added schema-script with id (${t})!`);const r=document.createElement("script");r.type="application/ld+json",r.id=t;const a={"@context":"https://schema.org","@type":"ItemList",name:salla.config.get("page.title"),itemListElement:e.map(((e,t)=>this.createProductSchema(e,t+1)))};r.textContent=JSON.stringify(a),document.head.appendChild(r)}formatDateFromString(e,t,r="en"){const a={en:"Invalid Date",ar:"تاريخ غير صالح"};if(!e||"string"!=typeof e||""===e.trim())return a[r];let s;if(/^\d+$/.test(e)){const t=parseInt(e);s=new Date(t>1e12?t:1e3*t)}else s=new Date(e);return isNaN(s.getTime())?a[r]:`${{en:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ar:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"]}[r][s.getDay()]} ${t(s.getDate(),"en"===r)} ${{en:["January","February","March","April","May","June","July","August","September","October","November","December"],ar:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"]}[r][s.getMonth()]} ${t(s.getFullYear(),"en"===r)}`}copyToClipboard(e){var t=e.target.innerText;navigator.clipboard.writeText(t).then((()=>{console.log("Text copied to clipboard: "+t)})).catch((e=>{console.error("Unable to copy text to clipboard",e)}))}animateItems(t){t&&e({targets:t,opacity:[0,1],duration:1200,translateY:[20,0],delay:function(e,t){return 100*t},easing:"easeOutExpo",complete:function(){t.forEach((e=>{e.classList.add("animated")}))}})}createReviewObject(e){return{"@type":"Review",author:{"@type":"Person",name:e.name},reviewBody:e.content,reviewRating:{"@type":"Rating",bestRating:"5",ratingValue:e.stars,worstRating:"1"}}}generateReviewSchema(e){const t=document.createElement("script");t.type="application/ld+json";const r={"@context":"http://schema.org/","@type":"Store",name:salla.config.get("store.name"),url:salla.config.get("store.url"),address:"الرياض",review:e.map((e=>this.createReviewObject(e))),aggregateRating:{"@type":"AggregateRating",ratingValue:e.reduce(((e,t)=>e+t.stars),0)/e.length,reviewCount:e.length}};t.textContent=JSON.stringify(r),document.head.appendChild(t)}};export{t as H}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
function getDefaultExportFromCjs (x) {
|
|
7
|
-
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export { commonjsGlobal as c, getDefaultExportFromCjs as g };
|
|
4
|
+
var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function n(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}export{e as c,n as g}
|