@salla.sa/twilight-components 2.14.513 → 2.14.514
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-DSrgwpzK.js → filepond-BrMz9lwQ.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-poster-DEOTlJYL.js → filepond-plugin-file-poster-CXLsx8it.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-size-Dc_zfcTe.js → filepond-plugin-file-validate-size-mSUTf-UR.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-type-JvR9uq17.js → filepond-plugin-file-validate-type-CPCUe4I9.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-edit-CWDepouD.js → filepond-plugin-image-edit-DCJZTAIe.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-exif-orientation-Cyg7v_yS.js → filepond-plugin-image-exif-orientation-B6tPPpp4.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-preview-CCs51Cvw.js → filepond-plugin-image-preview-DSdtEzNX.js} +1 -1
- package/dist/cjs/{functions-C9VeGGtc.js → functions-DVR8KL8Z.js} +1 -1
- package/dist/cjs/{index-YRAaUE2y.js → index-B1gojaKP.js} +2 -2
- package/dist/cjs/{index-DRMcfCjr.js → index-DbnRXAWJ.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-accordion_6.cjs.entry.js +1 -1
- package/dist/cjs/salla-add-product-button_5.cjs.entry.js +1 -1
- 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-apps-icons.cjs.entry.js +1 -1
- 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-booking-field_7.cjs.entry.js +10 -10
- package/dist/cjs/salla-bullet-delivery_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
- package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-cart-summary-card.cjs.entry.js +12 -2
- 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_8.cjs.entry.js +1 -1
- package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
- package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
- package/dist/cjs/salla-count-down_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
- package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
- package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
- package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
- package/dist/cjs/salla-filters.cjs.entry.js +1 -1
- package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
- package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
- package/dist/cjs/salla-hook.cjs.entry.js +1 -1
- 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 +1 -1
- package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-loyalty-banner.cjs.entry.js +2 -2
- package/dist/cjs/salla-loyalty-exchange-product-card_5.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +2 -2
- package/dist/cjs/salla-loyalty-panel.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 +1 -1
- package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
- package/dist/cjs/salla-loyalty-program.cjs.entry.js +3 -3
- package/dist/cjs/salla-loyalty-reward.cjs.entry.js +2 -2
- package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
- package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
- package/dist/cjs/salla-map_2.cjs.entry.js +1 -1
- 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 +1 -1
- package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
- package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
- package/dist/cjs/salla-notification-item.cjs.entry.js +1 -1
- package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
- package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
- package/dist/cjs/salla-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
- package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
- package/dist/cjs/salla-orders.cjs.entry.js +1 -1
- package/dist/cjs/salla-payments.cjs.entry.js +1 -1
- package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
- package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
- package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
- package/dist/cjs/salla-product-card_2.cjs.entry.js +1 -1
- package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
- package/dist/cjs/salla-products-list.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 +1 -1
- package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
- package/dist/cjs/salla-search.cjs.entry.js +1 -1
- package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/salla-slider.cjs.entry.js +1 -1
- package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
- package/dist/cjs/salla-social.cjs.entry.js +1 -1
- package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
- package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
- package/dist/cjs/salla-tooltip.cjs.entry.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/cjs/{tracked-promise-V-X0-JMA.js → tracked-promise-Co7zKJiC.js} +1 -1
- package/dist/cjs/twilight.cjs.js +1 -1
- package/dist/cjs/{vanilla-picker-Dk9Srx1k.js → vanilla-picker-eIkf_cyq.js} +1 -1
- package/dist/collection/components/salla-cart-summary-card/salla-cart-summary-card.js +11 -1
- package/dist/components/index.js +2 -2
- package/dist/components/salla-cart-summary-card.js +11 -1
- package/dist/esm/{filepond-CYFJip5W.js → filepond-CuccuSQc.js} +1 -1
- package/dist/esm/{filepond-plugin-file-poster-D8SbffqX.js → filepond-plugin-file-poster--NsZeC2o.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-size-D9vxvngy.js → filepond-plugin-file-validate-size-Bkbx98ju.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-type-BZ0qYsNB.js → filepond-plugin-file-validate-type-DTdnbkr6.js} +1 -1
- package/dist/esm/{filepond-plugin-image-edit-DLRxxm4O.js → filepond-plugin-image-edit-Cl4KCy_a.js} +1 -1
- package/dist/esm/{filepond-plugin-image-exif-orientation-DO--Ii9a.js → filepond-plugin-image-exif-orientation-C8MwhzVz.js} +1 -1
- package/dist/esm/{filepond-plugin-image-preview-BHkUOulr.js → filepond-plugin-image-preview-DsaHYKNd.js} +1 -1
- package/dist/esm/{functions-kgIrvYAh.js → functions-MpYGQOQD.js} +1 -1
- package/dist/esm/{index-BwaCIsMe.js → index-BzdDNQAg.js} +1 -1
- package/dist/esm/{index-CGxZTQ-T.js → index-Crijf68j.js} +2 -2
- package/dist/esm/loader.js +2 -2
- package/dist/esm/salla-accordion-body_2.entry.js +1 -1
- package/dist/esm/salla-accordion_6.entry.js +1 -1
- package/dist/esm/salla-add-product-button_5.entry.js +1 -1
- 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-apps-icons.entry.js +1 -1
- package/dist/esm/salla-badge.entry.js +1 -1
- package/dist/esm/salla-basket-gap.entry.js +1 -1
- package/dist/esm/salla-booking-field_7.entry.js +10 -10
- package/dist/esm/salla-bullet-delivery_2.entry.js +1 -1
- package/dist/esm/salla-cart-coupons.entry.js +1 -1
- package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
- package/dist/esm/salla-cart-summary-card.entry.js +12 -2
- 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_8.entry.js +1 -1
- package/dist/esm/salla-conditional-offer.entry.js +1 -1
- package/dist/esm/salla-contacts.entry.js +1 -1
- package/dist/esm/salla-cookies-bar.entry.js +1 -1
- package/dist/esm/salla-count-down_2.entry.js +1 -1
- package/dist/esm/salla-custom-fields.entry.js +1 -1
- package/dist/esm/salla-delivery-promise.entry.js +1 -1
- package/dist/esm/salla-edit-order-button.entry.js +1 -1
- package/dist/esm/salla-filters-widget.entry.js +1 -1
- package/dist/esm/salla-filters.entry.js +1 -1
- package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
- package/dist/esm/salla-gifting.entry.js +1 -1
- package/dist/esm/salla-hook.entry.js +1 -1
- 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 +1 -1
- package/dist/esm/salla-localization-modal.entry.js +1 -1
- package/dist/esm/salla-login-modal.entry.js +1 -1
- package/dist/esm/salla-loyalty-banner.entry.js +2 -2
- package/dist/esm/salla-loyalty-exchange-product-card_5.entry.js +3 -3
- package/dist/esm/salla-loyalty-hero_2.entry.js +2 -2
- package/dist/esm/salla-loyalty-panel.entry.js +3 -3
- package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
- package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
- package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
- package/dist/esm/salla-loyalty-program.entry.js +3 -3
- package/dist/esm/salla-loyalty-reward.entry.js +2 -2
- package/dist/esm/salla-loyalty.entry.js +1 -1
- package/dist/esm/salla-maintenance-alert.entry.js +1 -1
- package/dist/esm/salla-map_2.entry.js +1 -1
- 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 +1 -1
- package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
- package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
- package/dist/esm/salla-next-order-coupon.entry.js +1 -1
- package/dist/esm/salla-notification-item.entry.js +1 -1
- package/dist/esm/salla-notifications.entry.js +1 -1
- package/dist/esm/salla-offer-modal.entry.js +1 -1
- package/dist/esm/salla-offer.entry.js +1 -1
- package/dist/esm/salla-order-branch.entry.js +1 -1
- package/dist/esm/salla-order-cancel.entry.js +1 -1
- package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
- package/dist/esm/salla-order-details-options.entry.js +1 -1
- package/dist/esm/salla-order-details.entry.js +1 -1
- package/dist/esm/salla-order-edit-item.entry.js +1 -1
- package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
- package/dist/esm/salla-order-edit.entry.js +1 -1
- package/dist/esm/salla-order-summary.entry.js +1 -1
- package/dist/esm/salla-order-totals-card.entry.js +1 -1
- package/dist/esm/salla-orders.entry.js +1 -1
- package/dist/esm/salla-payments.entry.js +1 -1
- package/dist/esm/salla-placeholder.entry.js +1 -1
- package/dist/esm/salla-price-range.entry.js +1 -1
- package/dist/esm/salla-product-card-embed.entry.js +1 -1
- package/dist/esm/salla-product-card_2.entry.js +1 -1
- package/dist/esm/salla-product-size-guide.entry.js +1 -1
- package/dist/esm/salla-products-list.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 +1 -1
- package/dist/esm/salla-scopes.entry.js +1 -1
- package/dist/esm/salla-search.entry.js +1 -1
- package/dist/esm/salla-skeleton.entry.js +1 -1
- package/dist/esm/salla-slider.entry.js +1 -1
- package/dist/esm/salla-social-share.entry.js +1 -1
- package/dist/esm/salla-social.entry.js +1 -1
- package/dist/esm/salla-tab-content_3.entry.js +1 -1
- package/dist/esm/salla-tiered-offer.entry.js +1 -1
- package/dist/esm/salla-tooltip.entry.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/esm/{tracked-promise-3JUA8rNo.js → tracked-promise-2_p0LVES.js} +1 -1
- package/dist/esm/twilight.js +2 -2
- package/dist/esm/{vanilla-picker-CNOsDnVN.js → vanilla-picker-kYXU8Uvu.js} +1 -1
- package/dist/twilight/{p-93ad12c1.entry.js → p-087c9b34.entry.js} +1 -1
- package/dist/twilight/{p-f619959f.entry.js → p-0935d707.entry.js} +1 -1
- package/dist/twilight/{p-d0b0f85c.entry.js → p-0de6624b.entry.js} +1 -1
- package/dist/twilight/{p-60836677.entry.js → p-13f0e9a6.entry.js} +1 -1
- package/dist/twilight/{p-2ac4b88a.entry.js → p-1734962f.entry.js} +1 -1
- package/dist/twilight/{p-69efcc70.entry.js → p-1a2b7660.entry.js} +1 -1
- package/dist/twilight/{p-eaf50f68.entry.js → p-1e488c9d.entry.js} +1 -1
- package/dist/twilight/{p-d3a0034e.entry.js → p-1f9d9730.entry.js} +1 -1
- package/dist/twilight/{p-8e7943b0.entry.js → p-1fd7917d.entry.js} +1 -1
- package/dist/twilight/{p-cf460695.entry.js → p-200a53c6.entry.js} +1 -1
- package/dist/twilight/{p-5645288d.entry.js → p-2012b777.entry.js} +1 -1
- package/dist/twilight/{p-4e87a5e7.entry.js → p-21522361.entry.js} +1 -1
- package/dist/twilight/{p-9778041a.entry.js → p-21baa6de.entry.js} +1 -1
- package/dist/twilight/{p-bb921eea.entry.js → p-2240ca58.entry.js} +1 -1
- package/dist/twilight/{p-825ce23e.entry.js → p-29e299b8.entry.js} +1 -1
- package/dist/twilight/{p-bd76e1cd.entry.js → p-2d6cb58e.entry.js} +1 -1
- package/dist/twilight/{p-21fd58ce.entry.js → p-32774ff0.entry.js} +1 -1
- package/dist/twilight/{p-d8528737.entry.js → p-32d45913.entry.js} +1 -1
- package/dist/twilight/{p-5fb31267.entry.js → p-3356808f.entry.js} +1 -1
- package/dist/twilight/{p-27b60bbe.entry.js → p-3aa8cb71.entry.js} +1 -1
- package/dist/twilight/{p-6a666403.entry.js → p-3c47611b.entry.js} +1 -1
- package/dist/twilight/{p-c4e505e5.entry.js → p-3c885439.entry.js} +1 -1
- package/dist/twilight/{p-d3f2dd7f.entry.js → p-3c8cc7b5.entry.js} +1 -1
- package/dist/twilight/{p-64078378.entry.js → p-41387dee.entry.js} +1 -1
- package/dist/twilight/p-422798b3.entry.js +4 -0
- package/dist/twilight/{p-7918e5a3.entry.js → p-4349783f.entry.js} +1 -1
- package/dist/twilight/{p-bab8c3cc.entry.js → p-455eb768.entry.js} +1 -1
- package/dist/twilight/{p-9e102996.entry.js → p-49c75e82.entry.js} +1 -1
- package/dist/twilight/{p-87475284.entry.js → p-4c30d956.entry.js} +1 -1
- package/dist/twilight/{p-9eaeb2c3.entry.js → p-4dcd11f6.entry.js} +1 -1
- package/dist/twilight/{p-c6cd9aa7.entry.js → p-4ef1d5a2.entry.js} +1 -1
- package/dist/twilight/{p-5d19ca2b.entry.js → p-4f956c6f.entry.js} +1 -1
- package/dist/twilight/{p-ca59caae.entry.js → p-5050358e.entry.js} +1 -1
- package/dist/twilight/{p-a43c8045.entry.js → p-51bee591.entry.js} +1 -1
- package/dist/twilight/{p-6c29f1a7.entry.js → p-559f69c1.entry.js} +1 -1
- package/dist/twilight/{p-836b800a.entry.js → p-573aafb0.entry.js} +1 -1
- package/dist/twilight/{p-4e1cd5df.entry.js → p-57f9e1e1.entry.js} +1 -1
- package/dist/twilight/{p-3fc5bc22.entry.js → p-5ab98967.entry.js} +1 -1
- package/dist/twilight/{p-a30b5998.entry.js → p-5bd9401a.entry.js} +1 -1
- package/dist/twilight/{p-cf7b0f87.entry.js → p-5da7e2ad.entry.js} +1 -1
- package/dist/twilight/{p-878ff233.entry.js → p-60e74f7f.entry.js} +1 -1
- package/dist/twilight/{p-dd16b913.entry.js → p-63689f46.entry.js} +1 -1
- package/dist/twilight/{p-f98e58f8.entry.js → p-696435b9.entry.js} +1 -1
- package/dist/twilight/{p-2a0b6d9f.entry.js → p-6a205626.entry.js} +1 -1
- package/dist/twilight/{p-cd9871e0.entry.js → p-6ae9fc35.entry.js} +1 -1
- package/dist/twilight/{p-d9942e8f.entry.js → p-6eca5aed.entry.js} +1 -1
- package/dist/twilight/{p-4a5f9ad3.entry.js → p-705c5caf.entry.js} +1 -1
- package/dist/twilight/{p-dc548c4c.entry.js → p-70bec3a4.entry.js} +1 -1
- package/dist/twilight/{p-4fa0791a.entry.js → p-720034f2.entry.js} +1 -1
- package/dist/twilight/{p-51822597.entry.js → p-76089609.entry.js} +1 -1
- package/dist/twilight/{p-f9df24ee.entry.js → p-76f91b56.entry.js} +1 -1
- package/dist/twilight/{p-78bd079a.entry.js → p-772867ce.entry.js} +1 -1
- package/dist/twilight/{p-3813b060.entry.js → p-7d86d46a.entry.js} +1 -1
- package/dist/twilight/{p-48f379f5.entry.js → p-7fa23855.entry.js} +1 -1
- package/dist/twilight/{p-37eb1493.entry.js → p-8370fbc8.entry.js} +1 -1
- package/dist/twilight/{p-6085b81b.entry.js → p-88d2a8aa.entry.js} +1 -1
- package/dist/twilight/{p-df8d792b.entry.js → p-88e4d404.entry.js} +1 -1
- package/dist/twilight/{p-6ac87b82.entry.js → p-89691a0a.entry.js} +1 -1
- package/dist/twilight/{p-ee901efb.entry.js → p-8ae95976.entry.js} +1 -1
- package/dist/twilight/{p-e8c0c3f4.entry.js → p-8e3ea4e7.entry.js} +1 -1
- package/dist/twilight/{p-f1f73f22.entry.js → p-902e9028.entry.js} +1 -1
- package/dist/twilight/{p-65435ccc.entry.js → p-926db077.entry.js} +1 -1
- package/dist/twilight/{p-ba1fc04b.entry.js → p-95c4740b.entry.js} +1 -1
- package/dist/twilight/{p-CAETK-48.js → p-Ba2rQmJW.js} +1 -1
- package/dist/twilight/{p-BBt-k9Tl.js → p-Bjl1PEUS.js} +1 -1
- package/dist/twilight/{p-ULRGH207.js → p-C2FQvIq0.js} +1 -1
- package/dist/twilight/{p-LYR7OIgx.js → p-C36yOeFI.js} +1 -1
- package/dist/twilight/{p-wHhSOVwa.js → p-CLi67lW6.js} +1 -1
- package/dist/twilight/{p-ruiIgPGS.js → p-CdQOKISG.js} +1 -1
- package/dist/twilight/{p-CGxZTQ-T.js → p-Crijf68j.js} +1 -1
- package/dist/twilight/{p-BD5RN_kF.js → p-CyTaLJo3.js} +1 -1
- package/dist/twilight/{p-BVQbLZNT.js → p-D-_uPomU.js} +1 -1
- package/dist/twilight/{p-CuiQZ5n7.js → p-D35nGmrk.js} +2 -2
- package/dist/twilight/{p-OxcD-fkQ.js → p-D5YJIW7-.js} +1 -1
- package/dist/twilight/{p-CBPMn35h.js → p-D97pUIlk.js} +1 -1
- package/dist/twilight/{p-f14b7c98.entry.js → p-a62c906d.entry.js} +1 -1
- package/dist/twilight/{p-e035d769.entry.js → p-a7656ecb.entry.js} +1 -1
- package/dist/twilight/{p-ccfb0936.entry.js → p-a9438d40.entry.js} +1 -1
- package/dist/twilight/{p-4492fe51.entry.js → p-a9e09e6d.entry.js} +1 -1
- package/dist/twilight/{p-3eae9bb5.entry.js → p-ad2dff14.entry.js} +1 -1
- package/dist/twilight/{p-4477c4a0.entry.js → p-aed022fb.entry.js} +1 -1
- package/dist/twilight/{p-d1801517.entry.js → p-b1c4b976.entry.js} +1 -1
- package/dist/twilight/{p-949ba8b6.entry.js → p-b3848ba3.entry.js} +1 -1
- package/dist/twilight/{p-ff5cf896.entry.js → p-b4dc0e25.entry.js} +1 -1
- package/dist/twilight/{p-b0c3d5c1.entry.js → p-b7cef4bd.entry.js} +1 -1
- package/dist/twilight/{p-8899e3ec.entry.js → p-be0c7a2c.entry.js} +1 -1
- package/dist/twilight/{p-b9f78098.entry.js → p-bfcbd8fd.entry.js} +1 -1
- package/dist/twilight/{p-a942e4a4.entry.js → p-ce2cef62.entry.js} +1 -1
- package/dist/twilight/{p-7f236925.entry.js → p-d359fa2d.entry.js} +1 -1
- package/dist/twilight/{p-9b937788.entry.js → p-d3ecdf0c.entry.js} +1 -1
- package/dist/twilight/{p-52506725.entry.js → p-d6ee8aec.entry.js} +1 -1
- package/dist/twilight/{p-d1200ef9.entry.js → p-dac7d5b1.entry.js} +1 -1
- package/dist/twilight/{p-9176a550.entry.js → p-ded95666.entry.js} +1 -1
- package/dist/twilight/{p-d4665c21.entry.js → p-e1c914a2.entry.js} +1 -1
- package/dist/twilight/{p-2289c40f.entry.js → p-e48ec124.entry.js} +1 -1
- package/dist/twilight/{p-bd58dc50.entry.js → p-e4dc59db.entry.js} +1 -1
- package/dist/twilight/{p-a978176a.entry.js → p-e5063b7f.entry.js} +1 -1
- package/dist/twilight/{p-fb02a3f2.entry.js → p-e50a4840.entry.js} +1 -1
- package/dist/twilight/{p-644ed286.entry.js → p-eeccd9c0.entry.js} +1 -1
- package/dist/twilight/{p-4edfd7d4.entry.js → p-ef990719.entry.js} +1 -1
- package/dist/twilight/{p-bad284c5.entry.js → p-efbfe361.entry.js} +1 -1
- package/dist/twilight/{p-50122b98.entry.js → p-f07f0b62.entry.js} +1 -1
- package/dist/twilight/{p-60a461fb.entry.js → p-f31cac68.entry.js} +1 -1
- package/dist/twilight/{p-0ed598c3.entry.js → p-f4050df2.entry.js} +1 -1
- package/dist/twilight/{p-e7de1dbd.entry.js → p-fcbf208b.entry.js} +1 -1
- package/dist/twilight/{p-3ae46976.entry.js → p-feadc0c9.entry.js} +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/components/salla-cart-summary-card/salla-cart-summary-card.d.ts +2 -0
- package/package.json +5 -5
- package/dist/twilight/p-389b0d34.entry.js +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,f as a,h as s,H as i,a as e}from"./p-CGxZTQ-T.js";import{S as r}from"./p-CeFAfcTv.js";import{S as n}from"./p-lMgMt31Q.js";import{C as o}from"./p-BV4kqbdL.js";import{H as l}from"./p-XnA1YTjA.js";import{I as d}from"./p-C-tzSDxw.js";import{W as h}from"./p-CgR-T_ZS.js";import{e as g}from"./p-DzAIgzdz.js";import"./p-CgtvEd63.js";const m=class{constructor(a){t(this,a),this.hasError=!1,this.showContactWidget=!0,this.images=[],this.productImages={},this.editItemImages=[],this.productReviewFactors={},this.editFactorRatings={},this.productMainRatings={},this.productFactorRatings={},this.contact_body=(t,a,s)=>salla.lang.get("pages.rating.contact_subject",{store:t,id:a,customer:s}),this.editMode=!1,this.defaultMode=!1,this.deleteMode=!1,this.shouldOpenDeleteModal=!1,this.editItem=null,this.allowAttachImages=!1,this.allowContactSupport=!1,this.loyaltyImageRatingPoints=0,this.dragAndDropFilesLabel=salla.lang.get("common.uploader.drag_and_drop_files"),this.contactSubjectLabel=salla.lang.get("pages.rating.contact_subject"),this.editReviewLabel=salla.lang.get("pages.rating.edit_review"),this.allowedImagesTypesLabel=salla.lang.get("common.uploader.allowed_images_types"),this.threeImagesMax=salla.lang.get("common.uploader.max_three_images"),this.areYouSureLabel=salla.lang.get("pages.rating.are_you_sure_you_want_to_delete_review"),this.confirmDeletionLabel=salla.lang.get("pages.rating.confirm_deletion"),this.cancelLabel=salla.lang.get("common.elements.cancel"),this.confirmDeleteBtn=salla.lang.get("common.elements.confirm_delete"),this.updatedSuccessfullyLabel=salla.lang.get("pages.rating.review_updated_successfully"),this.deletedSuccessfullyLabel=salla.lang.get("pages.rating.review_deleted_successfully"),this.contactUsLabel=salla.lang.get("blocks.footer.social"),this.requiredFactorsLabel=salla.lang.get("pages.rating.rate_required_factors"),this.overallProductRatingLabel=salla.lang.get("pages.rating.overall_product_rating"),this.loyaltyPointsForImagesLabel=salla.lang.get("pages.rating.loyalty_points_for_images",{points:":points"}),this.contentRefs=[],this.hiddenInputs=[],this.userFilledFactorKeys={},this.boundRatingRows=new WeakSet,this.stepsCount=0,this.currentIndex=0,this.submitted=[],this.MAX_UPLOAD_LIMIT=3,this.thanksCountdownInterval=null,this.scheduleWizardSetup=!1,salla.lang.onLoaded((()=>{this.contactUsLabel=salla.lang.get("blocks.footer.social");const t=(t,a,s)=>new Promise((i=>{salla.helpers.setNested(salla.lang.messages[t],a,s),i(!0)}));(async()=>{await t("ar.trans","common.uploader.drag_and_drop_files","اسحب الملفات وأفلتها هنا"),await t("en.trans","common.uploader.drag_and_drop_files","Drag and drop files here"),await t("ar.trans","common.uploader.allowed_images_types"," .jpg أو jpeg أو png يُسمح بإضافة صور بصيغة"),await t("en.trans","common.uploader.allowed_images_types","Images in jpg, jpeg, or png format are allowed."),await t("ar.trans","pages.rating.add_images","اضافة صور"),await t("en.trans","pages.rating.add_images","Add Images"),await t("ar.trans","pages.rating.edit_images","تعديل الصور"),await t("en.trans","pages.rating.edit_images","Edit Images"),await t("ar.trans","pages.rating.edit_review","تعديل التقييم"),await t("en.trans","pages.rating.edit_review","Edit review"),await t("ar.trans","pages.rating.confirm_deletion","تأكيد حذف التقييم"),await t("en.trans","pages.rating.confirm_deletion","Confirm review deletion"),await t("ar.trans","pages.rating.are_you_sure_you_want_to_delete_review","هل أنت متأكد من حذف تقييمك؟"),await t("en.trans","pages.rating.are_you_sure_you_want_to_delete_review","Are you sure you want to delete your review?"),await t("ar.trans","pages.rating.review_updated_successfully","تم تعديل التقييم بنجاح"),await t("en.trans","pages.rating.review_updated_successfully","The review has been successfully updated."),await t("ar.trans","pages.rating.review_deleted_successfully","تم حذف التقييم بنجاح"),await t("en.trans","pages.rating.review_deleted_successfully","The review has been successfully deleted."),await t("ar.trans","pages.rating.images_count","الصور ( :current من أصل :total )"),await t("en.trans","pages.rating.images_count","Images ( :current of :total )"),await t("ar.trans","common.uploader.max_three_images",`.أضف ${this.MAX_UPLOAD_LIMIT} صور كحد أقصى`),await t("en.trans","common.uploader.max_three_images",`Add up to ${this.MAX_UPLOAD_LIMIT} images maximum.`),await t("ar.trans","common.elements.confirm_delete","تأكيد الحذف"),await t("en.trans","common.elements.confirm_delete","Confirm deletion"),await t("ar.trans","pages.rating.rate_required_factors","يرجى تقييم جميع المعايير لإتمام مراجعتك."),await t("en.trans","pages.rating.rate_required_factors","Please rate all required factors to complete your review."),await t("ar.trans","pages.rating.overall_product_rating","التقييم العام للمنتج"),await t("en.trans","pages.rating.overall_product_rating","Overall product rating"),await t("ar.trans","pages.rating.loyalty_points_for_images","اكسب :points نقطة ولاء عند إضافة صور لتقييمك!"),await t("en.trans","pages.rating.loyalty_points_for_images","Earn :points loyalty points when adding photos to your review!"),this.dragAndDropFilesLabel=salla.lang.get("common.uploader.drag_and_drop_files"),this.allowedImagesTypesLabel=salla.lang.get("common.uploader.allowed_images_types"),this.threeImagesMax=salla.lang.get("common.uploader.max_three_images"),this.contactSubjectLabel=salla.lang.get("pages.rating.contact_subject"),this.editReviewLabel=salla.lang.get("pages.rating.edit_review"),this.areYouSureLabel=salla.lang.get("pages.rating.are_you_sure_you_want_to_delete_review"),this.confirmDeletionLabel=salla.lang.get("pages.rating.confirm_deletion"),this.cancelLabel=salla.lang.get("common.elements.cancel"),this.updatedSuccessfullyLabel=salla.lang.get("pages.rating.review_updated_successfully"),this.deletedSuccessfullyLabel=salla.lang.get("pages.rating.review_deleted_successfully"),this.confirmDeleteBtn=salla.lang.get("common.elements.confirm_delete"),this.requiredFactorsLabel=salla.lang.get("pages.rating.rate_required_factors"),this.overallProductRatingLabel=salla.lang.get("pages.rating.overall_product_rating"),this.loyaltyPointsForImagesLabel=salla.lang.get("pages.rating.loyalty_points_for_images",{points:":points"}),this.contact_body=(t,a,s)=>salla.lang.get("pages.rating.contact_body",{store:t,id:a,customer:s})})()}))}syncStoreSettings(){this.orderId||(this.orderId=salla.config.get("page.id")),this.allowAttachImages=!!salla.config.get("store.settings.rating.allow_attach_images"),this.allowContactSupport=!!salla.config.get("store.settings.rating.allow_contact_support")}getRatingOrderId(){return this.orderId||salla.config.get("page.id")}getSubmitOrderId(){return this.orderId}isCustomerOrderShape(t){if(!t||"object"!=typeof t)return!1;const a=t;return!!a.rating&&(Array.isArray(a.items)||Array.isArray(a.products)||Array.isArray(a.rating?.product)||Array.isArray(a.rating?.products))}getBootstrapOrder(){const t=salla.config.get("page");if(this.isCustomerOrderShape(t))return t;if(t&&"object"==typeof t){const a=t;if(Array.isArray(a.products))return t;const s=a.order;if(this.isCustomerOrderShape(s))return s}}async loadCustomerOrderForEdit(){const t=this.getBootstrapOrder();if(t?.rating?.product||t?.rating?.products)this.order=t;else try{const t=await salla.api.withoutNotifier((()=>salla.order.api.getDetails(this.getRatingOrderId())));t?.data&&(this.order=t.data)}catch(t){if(!this.order){const t=await salla.api.withoutNotifier((()=>salla.rating.api.order(this.getRatingOrderId())));this.order=t.data}}}getOrderProductRatings(t=this.order){return t?.rating?[...this.normalizeToArray(t.rating.product),...this.normalizeToArray(t.rating.products)]:[]}getMatchedProductRating(t=this.order,a,s){return this.getOrderProductRatings(t).find((t=>Number(t?.id??t?.feedback_id)===Number(s)||Number(t?.product_id??t?.product?.id)===Number(a)))}hasRatingFeedback(t){const a=t?.rating;return null!=a&&""!==a&&Number(a)>0}isTestimonialsEnabled(t=this.order){return!(!1===t?.testimonials_enabled||this.hasRatingFeedback(t?.store?.feedback)||!0!==t?.testimonials_enabled&&!t?.allowed_ratings?.testimonials_enabled)}isProductsEnabled(t=this.order){return!1!==t?.products_enabled&&this.getRateableProducts(t).length>0}isShippingEnabled(t=this.order){return!(!1===t?.shipping_enabled||this.hasRatingFeedback(t?.shipping?.feedback)||!t?.shipping?.company||!0!==t?.shipping_enabled&&!t?.allowed_ratings?.shipping_enabled)}getOrderProducts(t=this.order){return Array.isArray(t?.products)?t.products.filter((t=>t?.product?.id)):[]}getRateableProducts(t=this.order){return this.getOrderProducts(t).filter((t=>!this.hasRatingFeedback(t?.feedback)))}getStepsCount(t=this.order){if(!t)return 0;let a=0;return this.isTestimonialsEnabled(t)&&a++,this.isProductsEnabled(t)&&(a+=this.getRateableProducts(t).length),this.isShippingEnabled(t)&&t.shipping?.company&&a++,a}afterOrderLoaded(){this.stepsCount=this.getStepsCount(),this.scheduleWizardSetup=!0,a(this)}async open(){return await salla.onReady(),this.syncStoreSettings(),this.defaultMode=!0,this.currentIndex=0,this.submitted=[],new Promise((t=>{setTimeout((()=>{this.modal.open().then((()=>this.order||salla.api.withoutNotifier((()=>salla.rating.api.order(this.getRatingOrderId()))).then((async t=>{this.order=t.data,this.productReviewFactors=await this.fetchAllProductReviewFactors(t.data)})))).then((()=>this.readyUpLoyaltyPoints())).then((()=>this.modal.setTitle(`${salla.lang.get("pages.rating.rate_order")} <span class="unicode">(#${this.order.id})</span>`))).then((()=>{const t={};for(const a of this.getRateableProducts())t[a.product.id]=[];this.productImages=t})).then((()=>this.modal.stopLoading())).then((()=>this.afterOrderLoaded())).catch((a=>{t(!1),this.hasError=!0,this.errorMessage=a.response?.data?.error?.message||a.response?.data,this.modal.stopLoading()})),t(!0)}),50)}))}async openEditModal(t){await salla.onReady(),this.syncStoreSettings(),this.defaultMode=!1,this.editMode=!0,this.editType=t.type,this.editFeedbackId=t.feedback_id;try{await this.fetchEditItem(t.feedback_id),await this.readyUpLoyaltyPoints(),"product"===this.editType&&this.editItem?.product?.id&&(await this.loadCustomerOrderForEdit(),await this.ensureProductFactorsLoaded(this.editItem.product.id),this.editFactorRatings={...this.buildEditFactorRatings(this.editItem.product.id)},this.markExistingFactorRatingsAsUserFilled(this.editItem.product.id,this.editFactorRatings)),this.editModal.open()}catch(t){this.hasError=!0,this.errorMessage=t.response?.data?.error?.message||t.response?.data}}async fetchEditItem(t){const a=`rating/${t}/show`,s=await salla.api.request(a);this.editItem=s.data,this.allowAttachImages&&"product"==this.editType&&this.editItem.images.length&&(this.editItemImages=this.editItem.images.map((t=>({id:`${Math.floor(100+900*Math.random())}`,url:t}))))}async editReview(){const t=`rating/${this.editFeedbackId}`;let a;if("product"===this.editType){const t=this.editModal.querySelector('[data-type="products"]')||this.currentTab;a=this.buildProductRatingPayload(this.collectFormData(t),t),!a.product_id&&this.editItem?.product?.id&&(a.product_id=String(this.editItem.product.id))}else a=this.collectFormData(this.editModal),a.images&&(a.images=a.images.split(","));await salla.api.request(t,a,"put").then((t=>{this.editModal.close(),salla.notify.success(t.message||this.updatedSuccessfullyLabel),setTimeout((()=>{window.location.reload()}),500)}))}async openDeleteModal(t){return this.defaultMode=!1,this.deleteMode=!0,this.deleteFeedbackId=t.feedback_id,this.shouldOpenDeleteModal=!0,new Promise((t=>{setTimeout((()=>{this.deleteModal.open().then((()=>t(!0)))}),50)}))}async deleteReview(){const t=`rating/${this.deleteFeedbackId}`;await salla.api.request(t,null,"delete").then((()=>{this.deleteModal.close(),salla.notify.success(this.deletedSuccessfullyLabel),setTimeout((()=>{window.location.reload()}),500)}))}async close(){return this.modal.close()}handleWizard(){this.steps=this.modal.querySelectorAll(".s-rating-modal-step"),this.dots=this.modal.querySelectorAll(".s-rating-modal-step-dot"),0!==this.stepsCount?this.showActiveStep():this.showThankYou()}refreshWizardRefs(){this.modal&&(this.steps=this.modal.querySelectorAll(".s-rating-modal-step"),this.dots=this.modal.querySelectorAll(".s-rating-modal-step-dot"))}showActiveStep(t=null){if(this.refreshWizardRefs(),this.currentTab=t||this.steps[this.currentIndex],!this.currentTab)return;l.toggleClassIf(".s-rating-modal-step-dot","s-rating-modal-bg-gray","s-rating-modal-bg-primary",(t=>t!=this.dots[this.currentIndex])).toggleClassIf(".s-rating-modal-step","s-rating-modal-active","s-rating-modal-hidden",(t=>t==this.currentTab)),0!==this.currentIndex&&(l.toggleElementClassIf(this.currentTab,"s-rating-modal-unactive","s-rating-modal-hidden",(()=>!0)),setTimeout((()=>l.toggleElementClassIf(this.currentTab,"s-rating-modal-active","s-rating-modal-unactive",(()=>!0))),300));const a=this.steps[this.currentIndex+1]?.dataset.type;this.nextBtn?.setText(a?`${salla.lang.get("pages.rating.rate")} ${salla.lang.get(`pages.rating.${a}`)}`:salla.lang.get("pages.rating.send_ratings")),setTimeout((()=>this.updateBodyHeight()),0),setTimeout((()=>this.updateBodyHeight()),150)}updateBodyHeight(){this.body&&this.currentTab&&(this.body.style.height="products"!==this.currentTab.dataset.type?`${this.currentTab.offsetHeight+(this.editMode?60:0)}px`:"auto")}previousTab(){this.currentIndex>0&&this.currentIndex--,l.toggleElementClassIf(this.backBtn,"s-rating-modal-unvisiable","block",(()=>0==this.currentIndex)),this.showActiveStep()}async submit(){this.refreshWizardRefs();try{this.submittedBefore()||this.validate(),salla.config.canLeave=!1,await this.nextBtn.load(),this.submittedBefore()||await this.sendFeedback(),this.currentTab?.querySelectorAll("[name],.s-rating-modal-btn-star").forEach((t=>t.setAttribute("disabled",""))),this.currentIndex<this.stepsCount&&this.currentIndex++,this.showActiveStep(),l.toggleClassIf("#prev-btn","block","s-rating-modal-unvisiable",(()=>!0)),this.currentIndex===this.stepsCount&&(this.showThankYou(),this.showContactWidget=!1)}finally{this.nextBtn.stop(),salla.config.canLeave=!0}}submittedBefore(){return this.submitted.includes(this.currentIndex)}getRatingHiddenInput(t){const a=t,s=a.querySelector?.(".rating_hidden_input");if(s?.name)return s;const i=a.querySelector?.("salla-rating-stars");return i?.shadowRoot?.querySelector(".rating_hidden_input")||null}collectNamedInputs(t){const a=new Set,s=[],i=t=>{t?.name&&!a.has(t)&&(a.add(t),s.push(t))};return t.querySelectorAll("[name]").forEach((t=>{i(t)})),t.querySelectorAll("salla-rating-stars").forEach((t=>{i(this.getRatingHiddenInput(t))})),s}normalizeFactorsList(t){return t?Array.isArray(t)?t:"object"==typeof t?Object.values(t).filter((t=>t&&"object"==typeof t)):[]:[]}validate(t=null,a=null){if(!t&&"products"===this.currentTab.dataset.type)return void this.currentTab.querySelectorAll(".rating-outer-form").forEach((t=>this.validate(t,"product")));const s=(t=t||this.currentTab).querySelector(".s-rating-modal-product-rating-row-main"),i=this.getRatingHiddenInput(s||t),e=i?.value,r=t.querySelector(".s-rating-modal-validation-msg");if(a=a||t.dataset.type,!e)throw r.innerHTML=salla.lang.get(`pages.rating.rate_${a}_stars`).replace(" (:item)",""),new Error(r.innerHTML);if("product"===a&&Array.from(t.querySelectorAll('.s-rating-modal-product-factor-row[data-required="true"]')).some((t=>{const a=this.getRatingHiddenInput(t);return!a?.value})))throw r.innerHTML=this.requiredFactorsLabel,new Error(r.innerHTML);r.innerHTML=""}collectFormData(t=this.currentTab){const a={};return this.collectNamedInputs(t).forEach((t=>{const s=salla.helpers.inputData(t.name,t.value,a);a[s.name]=s.value})),a}buildProductRatingPayload(t,a=this.currentTab){if(!t.rating){const s=a.querySelector(".s-rating-modal-product-rating-row-main"),i=this.getRatingHiddenInput(s||a);i?.value&&(t.rating=i.value)}const s=Number(t.product_id);let i=[];t.images?i="string"==typeof t.images?t.images.split(",").filter(Boolean):t.images:this.editMode&&this.allowAttachImages&&s?i=this.editItemImages.map((t=>t.url)):this.allowAttachImages&&s&&(i=(this.productImages[s]||[]).map((t=>t.url)));const e=this.normalizeFactorsList(t.factors).filter((t=>t?.id&&t?.rating)).map((t=>({id:String(t.id),rating:String(t.rating)})));return{order_id:this.getSubmitOrderId(),product_id:String(t.product_id),rating:String(t.rating),comment:t.comment||t.content||"",images:i,factors:e,type:"products"}}async sendFeedback(){this.refreshWizardRefs();const t=this.currentTab?.dataset?.type;if("products"===t){const t=this.collectFormData(this.currentTab),a=this.buildProductRatingPayload(t,this.currentTab);if(!a.product_id||!a.rating)throw new Error("Missing product rating data");const s=await salla.rating.api.products(a);return this.submitted.push(this.currentIndex),s}const a=this.collectFormData(this.currentTab);if(0===Object.keys(a).length)return;a.order_id=this.getSubmitOrderId(),a.type=t;const s=await salla.rating.api[t](a);return this.submitted.push(this.currentIndex),s}clearThanksCountdown(){null!==this.thanksCountdownInterval&&(clearInterval(this.thanksCountdownInterval),this.thanksCountdownInterval=null)}showThankYou(){let t=10;this.clearThanksCountdown(),this.thanksCountdownInterval=setInterval((()=>{this.thanksTime.innerHTML="00:0"+t--,t>0||(this.clearThanksCountdown(),this.thanksTime.remove(),this.close().then((()=>window.location.reload())))}),1e3),this.modal.querySelector(".s-rating-modal-footer").classList.add("s-rating-modal-unvisiable"),this.showActiveStep(this.thanksTab)}getFilepondPlaceholder(){return`<div class="s-rating-modal-filepond-placeholder"><span class="s-rating-modal-filepond-placeholder-icon">${d}</span><p class="s-rating-modal-filepond-placeholder-text">${this.dragAndDropFilesLabel}<br>\n <span> ${this.allowedImagesTypesLabel} <br> ${this.threeImagesMax} </span></p></div>`}getCustomerName(){return`${salla.config.get("user.first_name")||salla.storage.get("user.first_name")||""} ${salla.config.get("user.last_name")||salla.storage.get("user.last_name")||""}`}async readyUpLoyaltyPoints(){const t=salla.loyalty?.isFeatureEnabled?.();if(!t)return void(this.loyaltyImageRatingPoints=0);const a=salla.config.get("store.settings.rating.rating_product_points")||0,s=salla.config.get("store.settings.rating.rating_product_with_image_points")||0;this.loyaltyImageRatingPoints=Number(s)+Number(a)}loyaltyPointsNote(){if(!this.loyaltyImageRatingPoints||!this.loyaltyPointsForImagesLabel)return null;const t=s("svg",{width:"17",height:"17",viewBox:"0 0 17 17",fill:"none",xmlns:"http://www.w3.org/2000/svg"},s("path",{d:"M10 0C13.6819 0 16.6667 2.98477 16.6667 6.66664C16.6667 9.37047 15.057 11.6984 12.7437 12.7444C11.6978 15.0575 9.3701 16.6666 6.66668 16.6666C2.98477 16.6666 0 13.6819 0 9.99998C0 7.29656 1.60918 4.96894 3.92195 3.92276C4.96827 1.60964 7.29618 0 10 0ZM6.66668 5C3.90524 5 1.66667 7.23856 1.66667 9.99998C1.66667 12.7614 3.90524 15 6.66668 15C9.4281 15 11.6667 12.7614 11.6667 9.99998C11.6667 7.23856 9.4281 5 6.66668 5ZM7.50002 5.83333V6.66664H9.16668V8.33331H5.83333C5.60322 8.33331 5.41667 8.51989 5.41667 8.74998C5.41667 8.95456 5.56407 9.12464 5.75844 9.15998L5.83333 9.16664H7.50002C8.6506 9.16664 9.58335 10.0994 9.58335 11.25C9.58335 12.4006 8.6506 13.3333 7.50002 13.3333V14.1666H5.83333V13.3333H4.16667V11.6666H7.50002C7.7301 11.6666 7.91668 11.4801 7.91668 11.25C7.91668 11.0455 7.76927 10.8753 7.57493 10.8401L7.50002 10.8333H5.83333C4.68274 10.8333 3.75 9.90056 3.75 8.74998C3.75 7.59939 4.68274 6.66664 5.83333 6.66664V5.83333H7.50002ZM10 1.66667C8.51377 1.66667 7.17893 2.31513 6.26313 3.34457C6.39704 3.33736 6.53138 3.33333 6.66668 3.33333C10.3486 3.33333 13.3333 6.3181 13.3333 9.99998C13.3333 10.1356 13.3293 10.2702 13.3213 10.4037C14.3513 9.48814 15 8.15314 15 6.66664C15 3.90524 12.7614 1.66667 10 1.66667Z",fill:"#008C56"}));return s("div",{class:"s-rating-modal-loyalty-points-note-container"},s("span",{class:"s-rating-modal-loyalty-points-note-icon"},t),s("p",{class:"s-rating-modal-loyalty-points-note-text"},this.loyaltyPointsForImagesLabel.replace(":points",String(this.loyaltyImageRatingPoints))))}normalizeReviewFactorsPayload(t){const a=t?.data??t?.factors;return Array.isArray(a)?a.flatMap((t=>{const a=Array.isArray(t?.items)?[...t.items]:null;if(a?.length){a.sort(((t,a)=>(Number(t?.sort)||0)-(Number(a?.sort)||0)));const s=!!t?.is_required;return a.filter((t=>null!=t?.id&&""!==t?.id)).map((t=>({id:t.id,name:t?.name,required:s})))}return null==t?.id||""===t?.id?[]:[{id:t.id,name:t?.name,required:t?.required??t?.is_required??!1}]})):[]}async fetchProductReviewFactors(t){try{const a=await salla.api.request(`review/factors/${t}/form`);return this.normalizeReviewFactorsPayload(a)}catch(t){return[]}}async fetchAllProductReviewFactors(t){const a=this.getRateableProducts(t);if(!a.length)return{};const s=await Promise.all(a.map((async t=>{const a=await this.fetchProductReviewFactors(t.product.id);return[t.product.id,a]})));return Object.fromEntries(s)}async ensureProductFactorsLoaded(t){if(!t||this.productReviewFactors[t])return;const a=await this.fetchProductReviewFactors(t);this.productReviewFactors={...this.productReviewFactors,[t]:a}}getFactorFieldName(t,a,s){return t?`${t}[factors][${a}][${s}]`:`factors[${a}][${s}]`}normalizeToArray(t){return null==t?[]:Array.isArray(t)?t:[t]}isFactorReviewsList(t){return Array.isArray(t)&&t.length>0&&t.every((t=>t&&"object"==typeof t&&(void 0!==t.rating||void 0!==t.stars||void 0!==t.value)))}getFactorReviewsFromRecord(t){if(!t)return[];for(const a of["factor_reviews","review_factors","factors"]){const s=t[a];if(this.isFactorReviewsList(s))return s}return[]}getEditFactorReviewsList(t){const a=[this.order,this.getBootstrapOrder()].filter(Boolean);for(const s of a){const a=this.getMatchedProductRating(s,t,this.editFeedbackId),i=this.getFactorReviewsFromRecord(a);if(i.length)return i}const s=this.getOrderProducts(this.order).find((a=>Number(a.product?.id)===Number(t))),i=[this.editItem?.factor_reviews,this.editItem?.review_factors,this.editItem?.product?.review_factors,this.editItem?.product?.factor_reviews,this.editItem?.factors,s?.factor_reviews,s?.review_factors,s?.feedback?.factor_reviews];for(const t of i)if(Array.isArray(t)&&t.length>0)return t;return[]}getFactorKey(t,a){return null!=t.id&&""!==t.id?`id:${t.id}`:t.name?`name:${t.name.trim()}`:`index:${a}`}getFactorRatingsForProduct(t){return this.editMode?this.editFactorRatings:this.productFactorRatings[t]||{}}setFactorRatingsForProduct(t,a){this.editMode?this.editFactorRatings=a:this.productFactorRatings={...this.productFactorRatings,[t]:a}}markExistingFactorRatingsAsUserFilled(t,a){const s=this.productReviewFactors[t]||[],i=new Set;s.forEach(((t,s)=>{const e=this.getFactorKey(t,s),r=void 0!==t.id?a[String(t.id)]:void 0,n=t.name?a[t.name.trim()]:void 0;void 0===r&&void 0===n&&void 0===a[`__index_${s}`]||i.add(e)})),this.userFilledFactorKeys[t]=i}shouldAutofillFactors(t){return 4===t||5===t}autofillUnfilledFactors(t,a){const s=this.productReviewFactors[t]||[];if(!s.length)return;const i=this.userFilledFactorKeys[t]||new Set,e={...this.getFactorRatingsForProduct(t)},r=this.shouldAutofillFactors(a);let n=!1;s.forEach(((t,s)=>{const o=this.getFactorKey(t,s);if(!i.has(o)){if(r)return void 0!==t.id&&(e[String(t.id)]=a),t.name&&(e[t.name.trim()]=a),e[`__index_${s}`]=a,void(n=!0);void 0!==t.id&&void 0!==e[String(t.id)]&&(delete e[String(t.id)],n=!0),t.name&&void 0!==e[t.name.trim()]&&(delete e[t.name.trim()],n=!0),void 0!==e[`__index_${s}`]&&(delete e[`__index_${s}`],n=!0)}})),n&&this.setFactorRatingsForProduct(t,e)}handleMainRatingChange(t,a){this.editMode?this.editMainRating=a:this.productMainRatings={...this.productMainRatings,[t]:a},this.autofillUnfilledFactors(t,a)}handleFactorRatingChange(t,a,s){this.userFilledFactorKeys[t]||(this.userFilledFactorKeys[t]=new Set),this.userFilledFactorKeys[t].add(a);const i=this.productReviewFactors[t]||[],e=i.findIndex(((t,s)=>this.getFactorKey(t,s)===a));if(e<0)return;const r=i[e],n={...this.getFactorRatingsForProduct(t)};void 0!==r.id&&(n[String(r.id)]=s),r.name&&(n[r.name.trim()]=s),n[`__index_${e}`]=s,this.setFactorRatingsForProduct(t,n)}setupProductRatingAutofill(t,a){t&&!this.boundRatingRows.has(t)&&(this.boundRatingRows.add(t),t.addEventListener("click",(s=>{const i=s.target;if(!i.closest(".s-rating-stars-btn-star"))return;const e=i.closest(".s-rating-modal-product-rating-row-main"),r=i.closest(".s-rating-modal-product-factor-row");requestAnimationFrame((()=>{if(e&&t.contains(e)){const t=Number(this.getRatingHiddenInput(e)?.value);t>0&&this.handleMainRatingChange(a,t)}else if(r&&t.contains(r)){const t=r.getAttribute("data-factor-key"),s=Number(this.getRatingHiddenInput(r)?.value);t&&s>0&&this.handleFactorRatingChange(a,t,s)}}))})))}buildEditFactorRatings(t){return this.getEditFactorReviewsList(t).reduce(((t,a,s)=>{const i=Number(a?.rating??a?.stars??a?.value);if(Number.isNaN(i))return t;const e=a?.id??a?.factor_id;return null!=e&&""!==e&&(t[String(e)]=i),a?.name&&(t[a.name.trim()]=i),t[`__index_${s}`]=i,t}),{})}renderProductStep(t,a){return s("section",{class:"s-rating-modal-step s-rating-modal-hidden","data-type":"products","data-product-id":t.product.id,key:t.product.id},s("div",{class:"s-rating-modal-product"},this.allowAttachImages&&this.loyaltyPointsNote(),s("div",{class:"rating-outer-form","data-stars-error":salla.lang.get("pages.rating.rate_product_stars")},s("div",{class:"s-rating-modal-product-details"},s("div",{class:"s-rating-modal-product-info-row"},s("div",{class:"s-rating-modal-product-img-wrap"},s("img",{src:t.product.thumbnail,alt:t.product.name,class:"s-rating-modal-product-img"})),s("h3",{class:"s-rating-modal-product-title"},t.product.name)),this.renderProductReviewFactors(t.product.id,0,{fieldPrefix:""}),s("input",{type:"hidden",name:"product_id",value:t.product.id}),s("textarea",{placeholder:salla.lang.get("pages.rating.write_product_rate"),name:"comment",class:"s-rating-modal-comment"}),s("small",{class:"s-rating-modal-validation-msg"}))),this.allowAttachImages&&s("div",{class:"s-rating-modal-uploader is-opened",ref:t=>this.contentRefs[a]=t},s("salla-file-upload",{name:"image",maxFilesCount:this.MAX_UPLOAD_LIMIT,imagePreviewHeight:117,"instant-upload":!0,type:"feedback",payloadName:"files[]",id:`file-${t.product.id}`,title:t.product.name,allowMultiple:!0,instantUpload:!0,accept:"image/png, image/jpeg, image/jpg",url:salla.url.api("upload"),onUploaded:s=>{this.productImages={...this.productImages,[t.product.id]:[...this.productImages[t.product.id]||[],s.detail]},this.hiddenInputs[a].value=this.productImages[t.product.id].map((t=>t.url)).join(",")},onRemoved:s=>{const i=s.detail;i&&this.productImages[t.product.id]&&(this.productImages={...this.productImages,[t.product.id]:this.productImages[t.product.id].filter((t=>t.id!==i))},this.hiddenInputs[a].value=this.productImages[t.product.id].map((t=>t.url)).join(","))},labelIdle:this.getFilepondPlaceholder()}),s("input",{type:"hidden",name:"images",value:(this.productImages[t.product.id]||[]).map((t=>t.url)).join(","),ref:t=>this.hiddenInputs[a]=t}),this.renderUploadedImagesCount(t.product.id))))}renderProductReviewFactors(t,a,i={}){const e=this.productReviewFactors[t]||[],r=i.fieldPrefix??`products[${a}]`,n=r?`${r}[rating]`:"rating",o={...this.editMode?{}:this.productFactorRatings[t]||{},...i.factorRatings||{}},l=Number(i.mainRating??(this.editMode?this.editMainRating:this.productMainRatings[t])),d=!Number.isNaN(l),h=(t,a)=>{const s=void 0!==t.id?o[String(t.id)]:void 0,i=t.name?o[t.name.trim()]:void 0,e=Number(s??i??o[`__index_${a}`]);return Number.isNaN(e)?void 0:e};return s("div",{class:"s-rating-modal-product-rating-rows",ref:a=>this.setupProductRatingAutofill(a,t)},s("div",{class:"s-rating-modal-product-rating-row s-rating-modal-product-rating-row-main"},s("span",{class:"s-rating-modal-product-factor-name"},this.overallProductRatingLabel,s("span",{class:"s-rating-modal-product-factor-required"},"*")),s("salla-rating-stars",{size:"medium",name:n,key:d?`main-rating-${l}`:"main-rating-empty",value:d?l:void 0,editable:d,withLabel:!0,labelBeforeStars:!0,tag:!1})),e.map(((t,a)=>s("div",{class:"s-rating-modal-product-rating-row s-rating-modal-product-factor-row px-3","data-required":t.required?"true":"false","data-factor-key":this.getFactorKey(t,a)},s("input",{type:"hidden",name:this.getFactorFieldName(r,a,"name"),value:t.name}),!!t.id&&s("input",{type:"hidden",name:this.getFactorFieldName(r,a,"id"),value:String(t.id)}),s("span",{class:"s-rating-modal-product-factor-name"},t.name,t.required?s("span",{class:"s-rating-modal-product-factor-required"},"*"):""),s("salla-rating-stars",{size:"medium",name:this.getFactorFieldName(r,a,"rating"),key:`factor-rating-${t.id??a}-${h(t,a)??0}`,value:h(t,a),editable:i.alwaysEditable||"number"==typeof h(t,a),withLabel:!0,labelBeforeStars:!0,tag:!1})))))}handleSendEmail(){const t=`${this.contactSubjectLabel} #${this.order.id}`,a=this.contact_body(salla.config.get("store.name"),this.order.id,this.getCustomerName()),s=`mailto:${salla.config.get("store.contacts.email")}?subject=${encodeURIComponent(t)}&body=${encodeURIComponent(a)}`;window.open(s,"_blank")}handleSendWhatsApp(){const t=this.contact_body(salla.config.get("store.name"),this.order.id,this.getCustomerName()),a=`https://wa.me/${salla.config.get("store.contacts.whatsapp")}?text=${encodeURIComponent(t)}`;window.open(a,"_blank")}resetData(t){t.detail||(this.clearThanksCountdown(),this.modal?.close(),this.editItem=null,this.editItemImages=[],this.editFactorRatings={},this.productMainRatings={},this.productFactorRatings={},this.editMainRating=void 0,this.userFilledFactorKeys={},this.hiddenInputs[1]&&(this.hiddenInputs[1].value=""),this.deleteFeedbackId=null,this.editFeedbackId=null,this.shouldOpenDeleteModal=!1,this.editMode=!1,this.deleteMode=!1,this.defaultMode=!1,this.currentIndex=0,this.submitted=[],this.scheduleWizardSetup=!1,this.loyaltyImageRatingPoints=0)}getDeleteModal(){return s("salla-modal",{ref:t=>this.deleteModal=t,width:"xs",onModalVisibilityChanged:t=>this.resetData(t)},s("div",{class:"s-rating-modal-delete-wrapper",ref:t=>this.body=t},s("h3",null,this.confirmDeletionLabel),s("p",null,this.areYouSureLabel),s("div",{class:"s-rating-modal-delete-actions"},s("salla-button",{loaderPosition:"center",onClick:()=>this.deleteReview()},this.confirmDeleteBtn),s("salla-button",{color:"danger",fill:"outline",onClick:()=>this.deleteModal.close()},this.cancelLabel))))}renderUploadedImagesCount(t){const a=this.editMode?this.editItemImages.length:(this.productImages[t]||[]).length;return s("span",{class:"s-rating-modal-upload-count"},salla.lang.choice("pages.rating.images_count",a,{current:a,total:this.MAX_UPLOAD_LIMIT}))}getEditModal(){return s("salla-modal",{ref:t=>this.editModal=t,width:"md",onModalVisibilityChanged:t=>this.resetData(t)},s("div",{class:"s-rating-modal-edit-wrapper",ref:t=>this.body=t},"store"===this.editType&&this.editItem?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step","data-type":"store",ref:t=>this.currentTab=t},s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:salla.config.get("store.logo","https://assets.salla.sa/cp/assets/images/logo-new.png"),alt:"store name",class:"s-rating-modal-store-logo"})),s("h2",{class:"s-rating-modal-title"},salla.lang.get("pages.rating.rate_the_store")),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large",editable:!0,value:this.editItem.stars})),s("textarea",{name:"content",value:this.editItem.content,class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_store_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):null,"shipping"===this.editType&&this.editItem?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step","data-type":"shipping",ref:t=>this.currentTab=t},this.editItem.shipping.logo?s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:this.editItem.shipping.logo,class:"s-rating-modal-shipping-logo",alt:this.editItem.shipping.name})):s("span",{class:"s-rating-modal-icon",innerHTML:n}),s("div",{class:"s-rating-modal-title"}," ",`${salla.lang.get("pages.rating.rate_shipping")} ${this.editItem.shipping.name}`),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large",editable:!0,value:this.editItem.stars})),s("textarea",{name:"content",class:"s-rating-modal-comment",value:this.editItem.content,placeholder:salla.lang.get("pages.rating.write_shipping_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):null,"product"==this.editType&&this.editItem?s("section",{class:"s-rating-modal-step","data-type":"products",ref:t=>this.currentTab=t},s("div",{class:"s-rating-modal-product"},this.allowAttachImages&&this.loyaltyPointsNote(),s("div",{class:"rating-outer-form","data-stars-error":salla.lang.get("pages.rating.rate_product_stars")},s("div",{class:"s-rating-modal-product-details"},s("div",{class:"s-rating-modal-product-info-row"},s("div",{class:"s-rating-modal-product-img-wrap"},s("img",{src:this.editItem.product.image.url,alt:this.editItem.product.name,class:"s-rating-modal-product-img"})),s("h3",{class:"s-rating-modal-product-title"},this.editItem.product.name)),this.renderProductReviewFactors(this.editItem.product.id,0,{fieldPrefix:"",mainRating:this.editMainRating??Number(this.editItem.stars??this.editItem.rating),factorRatings:this.editFactorRatings,alwaysEditable:!0}),s("input",{type:"hidden",name:"product_id",value:this.editItem.product.id}),s("textarea",{value:this.editItem.content,placeholder:salla.lang.get("pages.rating.write_product_rate"),name:"comment",class:"s-rating-modal-comment"}),s("small",{class:"s-rating-modal-validation-msg"}))),this.allowAttachImages&&s("div",{class:"s-rating-modal-uploader is-opened",ref:t=>this.contentRefs[1]=t},s("salla-file-upload",{name:"images",allowMultiple:!0,maxFilesCount:this.MAX_UPLOAD_LIMIT,imagePreviewHeight:117,filePosterHeight:117,"instant-upload":!0,type:"feedback",files:JSON.stringify(this.editItemImages),payloadName:"files[]",id:`file-${this.editItem.product.id}`,title:this.editItem.product.name,instantUpload:!0,accept:"image/png, image/jpeg, image/jpg",url:salla.url.api("upload"),onUploaded:t=>{this.editItemImages=[...this.editItemImages,t.detail],this.hiddenInputs[1].value=this.editItemImages.map((t=>t.url)).join()},onRemoved:t=>{const a=t.detail;a&&(this.editItemImages=this.editItemImages.filter((t=>t.id!==a)),this.hiddenInputs[1].value=this.editItemImages.map((t=>t.url)).join())},labelIdle:this.getFilepondPlaceholder()}),s("input",{type:"hidden",name:"images",value:this.editItemImages.map((t=>t.url)).join(","),ref:t=>this.hiddenInputs[1]=t}),this.renderUploadedImagesCount(this.editItem.product.id)))):null,s("div",{class:"s-rating-modal-footer s-rating-modal-footer-end"},s("salla-button",{"loader-position":"center",onClick:()=>this.editReview()},this.editReviewLabel))))}render(){return this.deleteMode?s(i,{class:"s-rating-modal"},this.getDeleteModal()):this.editMode?s(i,{class:"s-rating-modal"},this.getEditModal()):this.defaultMode?s(i,{class:"s-rating-modal"},s("salla-modal",{class:"s-rating-modal-wrap",onModalVisibilityChanged:t=>this.resetData(t),isLoading:!0,width:"md",ref:t=>this.modal=t},s("div",{slot:"loading"},s("div",{class:"s-rating-modal-skeleton"},s("salla-skeleton",{type:"circle",height:"80px",width:"80px"}),s("salla-skeleton",{height:"15px",width:"60%"}),s("salla-skeleton",{height:"10px",width:"30%"}),s("div",{class:"s-rating-modal-skeleton-stars"},[...Array(5)].map((t=>s("div",{key:t,innerHTML:r})))),s("salla-skeleton",{height:"100px",width:"100%"}),s("div",{class:"s-rating-modal-skeleton-footer"},s("salla-skeleton",{height:"40px",width:"30%"})))),!this.hasError&&this.order?[s("div",{class:"s-rating-modal-wrapper",ref:t=>this.body=t},this.isTestimonialsEnabled()?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step s-rating-modal-hidden","data-type":"store"},s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:salla.config.get("store.logo","https://assets.salla.sa/cp/assets/images/logo-new.png"),alt:"store name",class:"s-rating-modal-store-logo"})),s("h2",{class:"s-rating-modal-title"},salla.lang.get("pages.rating.rate_the_store")),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large"})),s("textarea",{name:"comment",class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_store_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):"",this.isProductsEnabled()&&this.getRateableProducts().map(((t,a)=>this.renderProductStep(t,a))),this.isShippingEnabled()&&this.order.shipping?.company?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step s-rating-modal-hidden","data-type":"shipping"},s("input",{type:"hidden",name:"shipping_company_id",value:this.order.shipping.company.id}),this.order.shipping.company.logo?s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:this.order.shipping.company.logo,class:"s-rating-modal-shipping-logo",alt:this.order.shipping.company.name})):s("span",{class:"s-rating-modal-icon",innerHTML:n}),s("div",{class:"s-rating-modal-title"}," ",`${salla.lang.get("pages.rating.rate_shipping")} ${this.order.shipping.company.name}`),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large"})),s("textarea",{name:"comment",class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_shipping_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):"",s("div",{class:"s-rating-modal-thanks s-rating-modal-hidden",ref:t=>this.thanksTab=t},s("span",{class:"s-rating-modal-icon",innerHTML:o}),s("h3",{class:"s-rating-modal-thanks-title"},salla.lang.get("pages.rating.thanks")),s("div",{class:"s-rating-modal-thanks-msg",innerHTML:this.order.thanks_message}),s("time",{class:"s-rating-modal-thanks-time",ref:t=>this.thanksTime=t}))),this.allowContactSupport&&this.showContactWidget&&(salla.config.get("store.contacts.whatsapp")||salla.config.get("store.contacts.email"))?s("div",{class:"s-rating-modal-contact"},s("p",null,this.contactUsLabel),s("div",{class:"s-rating-modal-contact-icons"},salla.config.get("store.contacts.whatsapp")&&s("span",{onClick:()=>this.handleSendWhatsApp(),innerHTML:h}),salla.config.get("store.contacts.email")&&s("span",{onClick:()=>this.handleSendEmail(),innerHTML:g}))):"",s("div",{class:"s-rating-modal-footer"},s("button",{ref:t=>this.backBtn=t,onClick:()=>this.previousTab(),class:"s-rating-modal-btn s-rating-modal-unvisiable"},salla.lang.get("common.elements.back")),this.stepsCount>1?s("ul",{class:"s-rating-modal-dots"},[...Array(this.stepsCount)].map(((t,a)=>s("li",{key:a,class:"s-rating-modal-bg-gray s-rating-modal-step-dot"})))):"",s("salla-button",{"loader-position":"center",ref:t=>this.nextBtn=t,onClick:()=>this.submit()},salla.lang.get("common.elements.next")))]:s("salla-placeholder",{alignment:"center"}))):void 0}async componentWillLoad(){await salla.onReady(),this.syncStoreSettings()}componentDidRender(){this.scheduleWizardSetup&&this.defaultMode&&this.order&&(this.scheduleWizardSetup=!1,requestAnimationFrame((()=>this.handleWizard())))}disconnectedCallback(){this.clearThanksCountdown()}get host(){return e(this)}};m.style=".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{position:absolute !important;inset:0;display:block;width:100% !important;max-width:100% !important;height:100% !important;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-loyalty-points-note-container{display:flex;align-items:center;gap:0.625rem;width:100%;margin-top:1.5rem;margin-bottom:0.75rem;padding:0.75rem;border-radius:0.5rem;background-color:#E6F4EA}.s-rating-modal-loyalty-points-note-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:#1B7F5C}.s-rating-modal-loyalty-points-note-icon svg{width:1.5rem;height:1.5rem;fill:currentColor}.s-rating-modal-loyalty-points-note-text{flex:1;margin:0;font-size:0.875rem;line-height:1.25rem;color:#1f2937}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{position:relative;width:5rem !important;min-width:5rem !important;max-width:5rem !important;height:3.5rem !important;flex-shrink:0 !important;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";export{m as salla_rating_modal_v2}
|
|
4
|
+
import{r as t,f as a,h as s,H as i,a as e}from"./p-Crijf68j.js";import{S as r}from"./p-CeFAfcTv.js";import{S as n}from"./p-lMgMt31Q.js";import{C as o}from"./p-BV4kqbdL.js";import{H as l}from"./p-XnA1YTjA.js";import{I as d}from"./p-C-tzSDxw.js";import{W as h}from"./p-CgR-T_ZS.js";import{e as g}from"./p-DzAIgzdz.js";import"./p-CgtvEd63.js";const m=class{constructor(a){t(this,a),this.hasError=!1,this.showContactWidget=!0,this.images=[],this.productImages={},this.editItemImages=[],this.productReviewFactors={},this.editFactorRatings={},this.productMainRatings={},this.productFactorRatings={},this.contact_body=(t,a,s)=>salla.lang.get("pages.rating.contact_subject",{store:t,id:a,customer:s}),this.editMode=!1,this.defaultMode=!1,this.deleteMode=!1,this.shouldOpenDeleteModal=!1,this.editItem=null,this.allowAttachImages=!1,this.allowContactSupport=!1,this.loyaltyImageRatingPoints=0,this.dragAndDropFilesLabel=salla.lang.get("common.uploader.drag_and_drop_files"),this.contactSubjectLabel=salla.lang.get("pages.rating.contact_subject"),this.editReviewLabel=salla.lang.get("pages.rating.edit_review"),this.allowedImagesTypesLabel=salla.lang.get("common.uploader.allowed_images_types"),this.threeImagesMax=salla.lang.get("common.uploader.max_three_images"),this.areYouSureLabel=salla.lang.get("pages.rating.are_you_sure_you_want_to_delete_review"),this.confirmDeletionLabel=salla.lang.get("pages.rating.confirm_deletion"),this.cancelLabel=salla.lang.get("common.elements.cancel"),this.confirmDeleteBtn=salla.lang.get("common.elements.confirm_delete"),this.updatedSuccessfullyLabel=salla.lang.get("pages.rating.review_updated_successfully"),this.deletedSuccessfullyLabel=salla.lang.get("pages.rating.review_deleted_successfully"),this.contactUsLabel=salla.lang.get("blocks.footer.social"),this.requiredFactorsLabel=salla.lang.get("pages.rating.rate_required_factors"),this.overallProductRatingLabel=salla.lang.get("pages.rating.overall_product_rating"),this.loyaltyPointsForImagesLabel=salla.lang.get("pages.rating.loyalty_points_for_images",{points:":points"}),this.contentRefs=[],this.hiddenInputs=[],this.userFilledFactorKeys={},this.boundRatingRows=new WeakSet,this.stepsCount=0,this.currentIndex=0,this.submitted=[],this.MAX_UPLOAD_LIMIT=3,this.thanksCountdownInterval=null,this.scheduleWizardSetup=!1,salla.lang.onLoaded((()=>{this.contactUsLabel=salla.lang.get("blocks.footer.social");const t=(t,a,s)=>new Promise((i=>{salla.helpers.setNested(salla.lang.messages[t],a,s),i(!0)}));(async()=>{await t("ar.trans","common.uploader.drag_and_drop_files","اسحب الملفات وأفلتها هنا"),await t("en.trans","common.uploader.drag_and_drop_files","Drag and drop files here"),await t("ar.trans","common.uploader.allowed_images_types"," .jpg أو jpeg أو png يُسمح بإضافة صور بصيغة"),await t("en.trans","common.uploader.allowed_images_types","Images in jpg, jpeg, or png format are allowed."),await t("ar.trans","pages.rating.add_images","اضافة صور"),await t("en.trans","pages.rating.add_images","Add Images"),await t("ar.trans","pages.rating.edit_images","تعديل الصور"),await t("en.trans","pages.rating.edit_images","Edit Images"),await t("ar.trans","pages.rating.edit_review","تعديل التقييم"),await t("en.trans","pages.rating.edit_review","Edit review"),await t("ar.trans","pages.rating.confirm_deletion","تأكيد حذف التقييم"),await t("en.trans","pages.rating.confirm_deletion","Confirm review deletion"),await t("ar.trans","pages.rating.are_you_sure_you_want_to_delete_review","هل أنت متأكد من حذف تقييمك؟"),await t("en.trans","pages.rating.are_you_sure_you_want_to_delete_review","Are you sure you want to delete your review?"),await t("ar.trans","pages.rating.review_updated_successfully","تم تعديل التقييم بنجاح"),await t("en.trans","pages.rating.review_updated_successfully","The review has been successfully updated."),await t("ar.trans","pages.rating.review_deleted_successfully","تم حذف التقييم بنجاح"),await t("en.trans","pages.rating.review_deleted_successfully","The review has been successfully deleted."),await t("ar.trans","pages.rating.images_count","الصور ( :current من أصل :total )"),await t("en.trans","pages.rating.images_count","Images ( :current of :total )"),await t("ar.trans","common.uploader.max_three_images",`.أضف ${this.MAX_UPLOAD_LIMIT} صور كحد أقصى`),await t("en.trans","common.uploader.max_three_images",`Add up to ${this.MAX_UPLOAD_LIMIT} images maximum.`),await t("ar.trans","common.elements.confirm_delete","تأكيد الحذف"),await t("en.trans","common.elements.confirm_delete","Confirm deletion"),await t("ar.trans","pages.rating.rate_required_factors","يرجى تقييم جميع المعايير لإتمام مراجعتك."),await t("en.trans","pages.rating.rate_required_factors","Please rate all required factors to complete your review."),await t("ar.trans","pages.rating.overall_product_rating","التقييم العام للمنتج"),await t("en.trans","pages.rating.overall_product_rating","Overall product rating"),await t("ar.trans","pages.rating.loyalty_points_for_images","اكسب :points نقطة ولاء عند إضافة صور لتقييمك!"),await t("en.trans","pages.rating.loyalty_points_for_images","Earn :points loyalty points when adding photos to your review!"),this.dragAndDropFilesLabel=salla.lang.get("common.uploader.drag_and_drop_files"),this.allowedImagesTypesLabel=salla.lang.get("common.uploader.allowed_images_types"),this.threeImagesMax=salla.lang.get("common.uploader.max_three_images"),this.contactSubjectLabel=salla.lang.get("pages.rating.contact_subject"),this.editReviewLabel=salla.lang.get("pages.rating.edit_review"),this.areYouSureLabel=salla.lang.get("pages.rating.are_you_sure_you_want_to_delete_review"),this.confirmDeletionLabel=salla.lang.get("pages.rating.confirm_deletion"),this.cancelLabel=salla.lang.get("common.elements.cancel"),this.updatedSuccessfullyLabel=salla.lang.get("pages.rating.review_updated_successfully"),this.deletedSuccessfullyLabel=salla.lang.get("pages.rating.review_deleted_successfully"),this.confirmDeleteBtn=salla.lang.get("common.elements.confirm_delete"),this.requiredFactorsLabel=salla.lang.get("pages.rating.rate_required_factors"),this.overallProductRatingLabel=salla.lang.get("pages.rating.overall_product_rating"),this.loyaltyPointsForImagesLabel=salla.lang.get("pages.rating.loyalty_points_for_images",{points:":points"}),this.contact_body=(t,a,s)=>salla.lang.get("pages.rating.contact_body",{store:t,id:a,customer:s})})()}))}syncStoreSettings(){this.orderId||(this.orderId=salla.config.get("page.id")),this.allowAttachImages=!!salla.config.get("store.settings.rating.allow_attach_images"),this.allowContactSupport=!!salla.config.get("store.settings.rating.allow_contact_support")}getRatingOrderId(){return this.orderId||salla.config.get("page.id")}getSubmitOrderId(){return this.orderId}isCustomerOrderShape(t){if(!t||"object"!=typeof t)return!1;const a=t;return!!a.rating&&(Array.isArray(a.items)||Array.isArray(a.products)||Array.isArray(a.rating?.product)||Array.isArray(a.rating?.products))}getBootstrapOrder(){const t=salla.config.get("page");if(this.isCustomerOrderShape(t))return t;if(t&&"object"==typeof t){const a=t;if(Array.isArray(a.products))return t;const s=a.order;if(this.isCustomerOrderShape(s))return s}}async loadCustomerOrderForEdit(){const t=this.getBootstrapOrder();if(t?.rating?.product||t?.rating?.products)this.order=t;else try{const t=await salla.api.withoutNotifier((()=>salla.order.api.getDetails(this.getRatingOrderId())));t?.data&&(this.order=t.data)}catch(t){if(!this.order){const t=await salla.api.withoutNotifier((()=>salla.rating.api.order(this.getRatingOrderId())));this.order=t.data}}}getOrderProductRatings(t=this.order){return t?.rating?[...this.normalizeToArray(t.rating.product),...this.normalizeToArray(t.rating.products)]:[]}getMatchedProductRating(t=this.order,a,s){return this.getOrderProductRatings(t).find((t=>Number(t?.id??t?.feedback_id)===Number(s)||Number(t?.product_id??t?.product?.id)===Number(a)))}hasRatingFeedback(t){const a=t?.rating;return null!=a&&""!==a&&Number(a)>0}isTestimonialsEnabled(t=this.order){return!(!1===t?.testimonials_enabled||this.hasRatingFeedback(t?.store?.feedback)||!0!==t?.testimonials_enabled&&!t?.allowed_ratings?.testimonials_enabled)}isProductsEnabled(t=this.order){return!1!==t?.products_enabled&&this.getRateableProducts(t).length>0}isShippingEnabled(t=this.order){return!(!1===t?.shipping_enabled||this.hasRatingFeedback(t?.shipping?.feedback)||!t?.shipping?.company||!0!==t?.shipping_enabled&&!t?.allowed_ratings?.shipping_enabled)}getOrderProducts(t=this.order){return Array.isArray(t?.products)?t.products.filter((t=>t?.product?.id)):[]}getRateableProducts(t=this.order){return this.getOrderProducts(t).filter((t=>!this.hasRatingFeedback(t?.feedback)))}getStepsCount(t=this.order){if(!t)return 0;let a=0;return this.isTestimonialsEnabled(t)&&a++,this.isProductsEnabled(t)&&(a+=this.getRateableProducts(t).length),this.isShippingEnabled(t)&&t.shipping?.company&&a++,a}afterOrderLoaded(){this.stepsCount=this.getStepsCount(),this.scheduleWizardSetup=!0,a(this)}async open(){return await salla.onReady(),this.syncStoreSettings(),this.defaultMode=!0,this.currentIndex=0,this.submitted=[],new Promise((t=>{setTimeout((()=>{this.modal.open().then((()=>this.order||salla.api.withoutNotifier((()=>salla.rating.api.order(this.getRatingOrderId()))).then((async t=>{this.order=t.data,this.productReviewFactors=await this.fetchAllProductReviewFactors(t.data)})))).then((()=>this.readyUpLoyaltyPoints())).then((()=>this.modal.setTitle(`${salla.lang.get("pages.rating.rate_order")} <span class="unicode">(#${this.order.id})</span>`))).then((()=>{const t={};for(const a of this.getRateableProducts())t[a.product.id]=[];this.productImages=t})).then((()=>this.modal.stopLoading())).then((()=>this.afterOrderLoaded())).catch((a=>{t(!1),this.hasError=!0,this.errorMessage=a.response?.data?.error?.message||a.response?.data,this.modal.stopLoading()})),t(!0)}),50)}))}async openEditModal(t){await salla.onReady(),this.syncStoreSettings(),this.defaultMode=!1,this.editMode=!0,this.editType=t.type,this.editFeedbackId=t.feedback_id;try{await this.fetchEditItem(t.feedback_id),await this.readyUpLoyaltyPoints(),"product"===this.editType&&this.editItem?.product?.id&&(await this.loadCustomerOrderForEdit(),await this.ensureProductFactorsLoaded(this.editItem.product.id),this.editFactorRatings={...this.buildEditFactorRatings(this.editItem.product.id)},this.markExistingFactorRatingsAsUserFilled(this.editItem.product.id,this.editFactorRatings)),this.editModal.open()}catch(t){this.hasError=!0,this.errorMessage=t.response?.data?.error?.message||t.response?.data}}async fetchEditItem(t){const a=`rating/${t}/show`,s=await salla.api.request(a);this.editItem=s.data,this.allowAttachImages&&"product"==this.editType&&this.editItem.images.length&&(this.editItemImages=this.editItem.images.map((t=>({id:`${Math.floor(100+900*Math.random())}`,url:t}))))}async editReview(){const t=`rating/${this.editFeedbackId}`;let a;if("product"===this.editType){const t=this.editModal.querySelector('[data-type="products"]')||this.currentTab;a=this.buildProductRatingPayload(this.collectFormData(t),t),!a.product_id&&this.editItem?.product?.id&&(a.product_id=String(this.editItem.product.id))}else a=this.collectFormData(this.editModal),a.images&&(a.images=a.images.split(","));await salla.api.request(t,a,"put").then((t=>{this.editModal.close(),salla.notify.success(t.message||this.updatedSuccessfullyLabel),setTimeout((()=>{window.location.reload()}),500)}))}async openDeleteModal(t){return this.defaultMode=!1,this.deleteMode=!0,this.deleteFeedbackId=t.feedback_id,this.shouldOpenDeleteModal=!0,new Promise((t=>{setTimeout((()=>{this.deleteModal.open().then((()=>t(!0)))}),50)}))}async deleteReview(){const t=`rating/${this.deleteFeedbackId}`;await salla.api.request(t,null,"delete").then((()=>{this.deleteModal.close(),salla.notify.success(this.deletedSuccessfullyLabel),setTimeout((()=>{window.location.reload()}),500)}))}async close(){return this.modal.close()}handleWizard(){this.steps=this.modal.querySelectorAll(".s-rating-modal-step"),this.dots=this.modal.querySelectorAll(".s-rating-modal-step-dot"),0!==this.stepsCount?this.showActiveStep():this.showThankYou()}refreshWizardRefs(){this.modal&&(this.steps=this.modal.querySelectorAll(".s-rating-modal-step"),this.dots=this.modal.querySelectorAll(".s-rating-modal-step-dot"))}showActiveStep(t=null){if(this.refreshWizardRefs(),this.currentTab=t||this.steps[this.currentIndex],!this.currentTab)return;l.toggleClassIf(".s-rating-modal-step-dot","s-rating-modal-bg-gray","s-rating-modal-bg-primary",(t=>t!=this.dots[this.currentIndex])).toggleClassIf(".s-rating-modal-step","s-rating-modal-active","s-rating-modal-hidden",(t=>t==this.currentTab)),0!==this.currentIndex&&(l.toggleElementClassIf(this.currentTab,"s-rating-modal-unactive","s-rating-modal-hidden",(()=>!0)),setTimeout((()=>l.toggleElementClassIf(this.currentTab,"s-rating-modal-active","s-rating-modal-unactive",(()=>!0))),300));const a=this.steps[this.currentIndex+1]?.dataset.type;this.nextBtn?.setText(a?`${salla.lang.get("pages.rating.rate")} ${salla.lang.get(`pages.rating.${a}`)}`:salla.lang.get("pages.rating.send_ratings")),setTimeout((()=>this.updateBodyHeight()),0),setTimeout((()=>this.updateBodyHeight()),150)}updateBodyHeight(){this.body&&this.currentTab&&(this.body.style.height="products"!==this.currentTab.dataset.type?`${this.currentTab.offsetHeight+(this.editMode?60:0)}px`:"auto")}previousTab(){this.currentIndex>0&&this.currentIndex--,l.toggleElementClassIf(this.backBtn,"s-rating-modal-unvisiable","block",(()=>0==this.currentIndex)),this.showActiveStep()}async submit(){this.refreshWizardRefs();try{this.submittedBefore()||this.validate(),salla.config.canLeave=!1,await this.nextBtn.load(),this.submittedBefore()||await this.sendFeedback(),this.currentTab?.querySelectorAll("[name],.s-rating-modal-btn-star").forEach((t=>t.setAttribute("disabled",""))),this.currentIndex<this.stepsCount&&this.currentIndex++,this.showActiveStep(),l.toggleClassIf("#prev-btn","block","s-rating-modal-unvisiable",(()=>!0)),this.currentIndex===this.stepsCount&&(this.showThankYou(),this.showContactWidget=!1)}finally{this.nextBtn.stop(),salla.config.canLeave=!0}}submittedBefore(){return this.submitted.includes(this.currentIndex)}getRatingHiddenInput(t){const a=t,s=a.querySelector?.(".rating_hidden_input");if(s?.name)return s;const i=a.querySelector?.("salla-rating-stars");return i?.shadowRoot?.querySelector(".rating_hidden_input")||null}collectNamedInputs(t){const a=new Set,s=[],i=t=>{t?.name&&!a.has(t)&&(a.add(t),s.push(t))};return t.querySelectorAll("[name]").forEach((t=>{i(t)})),t.querySelectorAll("salla-rating-stars").forEach((t=>{i(this.getRatingHiddenInput(t))})),s}normalizeFactorsList(t){return t?Array.isArray(t)?t:"object"==typeof t?Object.values(t).filter((t=>t&&"object"==typeof t)):[]:[]}validate(t=null,a=null){if(!t&&"products"===this.currentTab.dataset.type)return void this.currentTab.querySelectorAll(".rating-outer-form").forEach((t=>this.validate(t,"product")));const s=(t=t||this.currentTab).querySelector(".s-rating-modal-product-rating-row-main"),i=this.getRatingHiddenInput(s||t),e=i?.value,r=t.querySelector(".s-rating-modal-validation-msg");if(a=a||t.dataset.type,!e)throw r.innerHTML=salla.lang.get(`pages.rating.rate_${a}_stars`).replace(" (:item)",""),new Error(r.innerHTML);if("product"===a&&Array.from(t.querySelectorAll('.s-rating-modal-product-factor-row[data-required="true"]')).some((t=>{const a=this.getRatingHiddenInput(t);return!a?.value})))throw r.innerHTML=this.requiredFactorsLabel,new Error(r.innerHTML);r.innerHTML=""}collectFormData(t=this.currentTab){const a={};return this.collectNamedInputs(t).forEach((t=>{const s=salla.helpers.inputData(t.name,t.value,a);a[s.name]=s.value})),a}buildProductRatingPayload(t,a=this.currentTab){if(!t.rating){const s=a.querySelector(".s-rating-modal-product-rating-row-main"),i=this.getRatingHiddenInput(s||a);i?.value&&(t.rating=i.value)}const s=Number(t.product_id);let i=[];t.images?i="string"==typeof t.images?t.images.split(",").filter(Boolean):t.images:this.editMode&&this.allowAttachImages&&s?i=this.editItemImages.map((t=>t.url)):this.allowAttachImages&&s&&(i=(this.productImages[s]||[]).map((t=>t.url)));const e=this.normalizeFactorsList(t.factors).filter((t=>t?.id&&t?.rating)).map((t=>({id:String(t.id),rating:String(t.rating)})));return{order_id:this.getSubmitOrderId(),product_id:String(t.product_id),rating:String(t.rating),comment:t.comment||t.content||"",images:i,factors:e,type:"products"}}async sendFeedback(){this.refreshWizardRefs();const t=this.currentTab?.dataset?.type;if("products"===t){const t=this.collectFormData(this.currentTab),a=this.buildProductRatingPayload(t,this.currentTab);if(!a.product_id||!a.rating)throw new Error("Missing product rating data");const s=await salla.rating.api.products(a);return this.submitted.push(this.currentIndex),s}const a=this.collectFormData(this.currentTab);if(0===Object.keys(a).length)return;a.order_id=this.getSubmitOrderId(),a.type=t;const s=await salla.rating.api[t](a);return this.submitted.push(this.currentIndex),s}clearThanksCountdown(){null!==this.thanksCountdownInterval&&(clearInterval(this.thanksCountdownInterval),this.thanksCountdownInterval=null)}showThankYou(){let t=10;this.clearThanksCountdown(),this.thanksCountdownInterval=setInterval((()=>{this.thanksTime.innerHTML="00:0"+t--,t>0||(this.clearThanksCountdown(),this.thanksTime.remove(),this.close().then((()=>window.location.reload())))}),1e3),this.modal.querySelector(".s-rating-modal-footer").classList.add("s-rating-modal-unvisiable"),this.showActiveStep(this.thanksTab)}getFilepondPlaceholder(){return`<div class="s-rating-modal-filepond-placeholder"><span class="s-rating-modal-filepond-placeholder-icon">${d}</span><p class="s-rating-modal-filepond-placeholder-text">${this.dragAndDropFilesLabel}<br>\n <span> ${this.allowedImagesTypesLabel} <br> ${this.threeImagesMax} </span></p></div>`}getCustomerName(){return`${salla.config.get("user.first_name")||salla.storage.get("user.first_name")||""} ${salla.config.get("user.last_name")||salla.storage.get("user.last_name")||""}`}async readyUpLoyaltyPoints(){const t=salla.loyalty?.isFeatureEnabled?.();if(!t)return void(this.loyaltyImageRatingPoints=0);const a=salla.config.get("store.settings.rating.rating_product_points")||0,s=salla.config.get("store.settings.rating.rating_product_with_image_points")||0;this.loyaltyImageRatingPoints=Number(s)+Number(a)}loyaltyPointsNote(){if(!this.loyaltyImageRatingPoints||!this.loyaltyPointsForImagesLabel)return null;const t=s("svg",{width:"17",height:"17",viewBox:"0 0 17 17",fill:"none",xmlns:"http://www.w3.org/2000/svg"},s("path",{d:"M10 0C13.6819 0 16.6667 2.98477 16.6667 6.66664C16.6667 9.37047 15.057 11.6984 12.7437 12.7444C11.6978 15.0575 9.3701 16.6666 6.66668 16.6666C2.98477 16.6666 0 13.6819 0 9.99998C0 7.29656 1.60918 4.96894 3.92195 3.92276C4.96827 1.60964 7.29618 0 10 0ZM6.66668 5C3.90524 5 1.66667 7.23856 1.66667 9.99998C1.66667 12.7614 3.90524 15 6.66668 15C9.4281 15 11.6667 12.7614 11.6667 9.99998C11.6667 7.23856 9.4281 5 6.66668 5ZM7.50002 5.83333V6.66664H9.16668V8.33331H5.83333C5.60322 8.33331 5.41667 8.51989 5.41667 8.74998C5.41667 8.95456 5.56407 9.12464 5.75844 9.15998L5.83333 9.16664H7.50002C8.6506 9.16664 9.58335 10.0994 9.58335 11.25C9.58335 12.4006 8.6506 13.3333 7.50002 13.3333V14.1666H5.83333V13.3333H4.16667V11.6666H7.50002C7.7301 11.6666 7.91668 11.4801 7.91668 11.25C7.91668 11.0455 7.76927 10.8753 7.57493 10.8401L7.50002 10.8333H5.83333C4.68274 10.8333 3.75 9.90056 3.75 8.74998C3.75 7.59939 4.68274 6.66664 5.83333 6.66664V5.83333H7.50002ZM10 1.66667C8.51377 1.66667 7.17893 2.31513 6.26313 3.34457C6.39704 3.33736 6.53138 3.33333 6.66668 3.33333C10.3486 3.33333 13.3333 6.3181 13.3333 9.99998C13.3333 10.1356 13.3293 10.2702 13.3213 10.4037C14.3513 9.48814 15 8.15314 15 6.66664C15 3.90524 12.7614 1.66667 10 1.66667Z",fill:"#008C56"}));return s("div",{class:"s-rating-modal-loyalty-points-note-container"},s("span",{class:"s-rating-modal-loyalty-points-note-icon"},t),s("p",{class:"s-rating-modal-loyalty-points-note-text"},this.loyaltyPointsForImagesLabel.replace(":points",String(this.loyaltyImageRatingPoints))))}normalizeReviewFactorsPayload(t){const a=t?.data??t?.factors;return Array.isArray(a)?a.flatMap((t=>{const a=Array.isArray(t?.items)?[...t.items]:null;if(a?.length){a.sort(((t,a)=>(Number(t?.sort)||0)-(Number(a?.sort)||0)));const s=!!t?.is_required;return a.filter((t=>null!=t?.id&&""!==t?.id)).map((t=>({id:t.id,name:t?.name,required:s})))}return null==t?.id||""===t?.id?[]:[{id:t.id,name:t?.name,required:t?.required??t?.is_required??!1}]})):[]}async fetchProductReviewFactors(t){try{const a=await salla.api.request(`review/factors/${t}/form`);return this.normalizeReviewFactorsPayload(a)}catch(t){return[]}}async fetchAllProductReviewFactors(t){const a=this.getRateableProducts(t);if(!a.length)return{};const s=await Promise.all(a.map((async t=>{const a=await this.fetchProductReviewFactors(t.product.id);return[t.product.id,a]})));return Object.fromEntries(s)}async ensureProductFactorsLoaded(t){if(!t||this.productReviewFactors[t])return;const a=await this.fetchProductReviewFactors(t);this.productReviewFactors={...this.productReviewFactors,[t]:a}}getFactorFieldName(t,a,s){return t?`${t}[factors][${a}][${s}]`:`factors[${a}][${s}]`}normalizeToArray(t){return null==t?[]:Array.isArray(t)?t:[t]}isFactorReviewsList(t){return Array.isArray(t)&&t.length>0&&t.every((t=>t&&"object"==typeof t&&(void 0!==t.rating||void 0!==t.stars||void 0!==t.value)))}getFactorReviewsFromRecord(t){if(!t)return[];for(const a of["factor_reviews","review_factors","factors"]){const s=t[a];if(this.isFactorReviewsList(s))return s}return[]}getEditFactorReviewsList(t){const a=[this.order,this.getBootstrapOrder()].filter(Boolean);for(const s of a){const a=this.getMatchedProductRating(s,t,this.editFeedbackId),i=this.getFactorReviewsFromRecord(a);if(i.length)return i}const s=this.getOrderProducts(this.order).find((a=>Number(a.product?.id)===Number(t))),i=[this.editItem?.factor_reviews,this.editItem?.review_factors,this.editItem?.product?.review_factors,this.editItem?.product?.factor_reviews,this.editItem?.factors,s?.factor_reviews,s?.review_factors,s?.feedback?.factor_reviews];for(const t of i)if(Array.isArray(t)&&t.length>0)return t;return[]}getFactorKey(t,a){return null!=t.id&&""!==t.id?`id:${t.id}`:t.name?`name:${t.name.trim()}`:`index:${a}`}getFactorRatingsForProduct(t){return this.editMode?this.editFactorRatings:this.productFactorRatings[t]||{}}setFactorRatingsForProduct(t,a){this.editMode?this.editFactorRatings=a:this.productFactorRatings={...this.productFactorRatings,[t]:a}}markExistingFactorRatingsAsUserFilled(t,a){const s=this.productReviewFactors[t]||[],i=new Set;s.forEach(((t,s)=>{const e=this.getFactorKey(t,s),r=void 0!==t.id?a[String(t.id)]:void 0,n=t.name?a[t.name.trim()]:void 0;void 0===r&&void 0===n&&void 0===a[`__index_${s}`]||i.add(e)})),this.userFilledFactorKeys[t]=i}shouldAutofillFactors(t){return 4===t||5===t}autofillUnfilledFactors(t,a){const s=this.productReviewFactors[t]||[];if(!s.length)return;const i=this.userFilledFactorKeys[t]||new Set,e={...this.getFactorRatingsForProduct(t)},r=this.shouldAutofillFactors(a);let n=!1;s.forEach(((t,s)=>{const o=this.getFactorKey(t,s);if(!i.has(o)){if(r)return void 0!==t.id&&(e[String(t.id)]=a),t.name&&(e[t.name.trim()]=a),e[`__index_${s}`]=a,void(n=!0);void 0!==t.id&&void 0!==e[String(t.id)]&&(delete e[String(t.id)],n=!0),t.name&&void 0!==e[t.name.trim()]&&(delete e[t.name.trim()],n=!0),void 0!==e[`__index_${s}`]&&(delete e[`__index_${s}`],n=!0)}})),n&&this.setFactorRatingsForProduct(t,e)}handleMainRatingChange(t,a){this.editMode?this.editMainRating=a:this.productMainRatings={...this.productMainRatings,[t]:a},this.autofillUnfilledFactors(t,a)}handleFactorRatingChange(t,a,s){this.userFilledFactorKeys[t]||(this.userFilledFactorKeys[t]=new Set),this.userFilledFactorKeys[t].add(a);const i=this.productReviewFactors[t]||[],e=i.findIndex(((t,s)=>this.getFactorKey(t,s)===a));if(e<0)return;const r=i[e],n={...this.getFactorRatingsForProduct(t)};void 0!==r.id&&(n[String(r.id)]=s),r.name&&(n[r.name.trim()]=s),n[`__index_${e}`]=s,this.setFactorRatingsForProduct(t,n)}setupProductRatingAutofill(t,a){t&&!this.boundRatingRows.has(t)&&(this.boundRatingRows.add(t),t.addEventListener("click",(s=>{const i=s.target;if(!i.closest(".s-rating-stars-btn-star"))return;const e=i.closest(".s-rating-modal-product-rating-row-main"),r=i.closest(".s-rating-modal-product-factor-row");requestAnimationFrame((()=>{if(e&&t.contains(e)){const t=Number(this.getRatingHiddenInput(e)?.value);t>0&&this.handleMainRatingChange(a,t)}else if(r&&t.contains(r)){const t=r.getAttribute("data-factor-key"),s=Number(this.getRatingHiddenInput(r)?.value);t&&s>0&&this.handleFactorRatingChange(a,t,s)}}))})))}buildEditFactorRatings(t){return this.getEditFactorReviewsList(t).reduce(((t,a,s)=>{const i=Number(a?.rating??a?.stars??a?.value);if(Number.isNaN(i))return t;const e=a?.id??a?.factor_id;return null!=e&&""!==e&&(t[String(e)]=i),a?.name&&(t[a.name.trim()]=i),t[`__index_${s}`]=i,t}),{})}renderProductStep(t,a){return s("section",{class:"s-rating-modal-step s-rating-modal-hidden","data-type":"products","data-product-id":t.product.id,key:t.product.id},s("div",{class:"s-rating-modal-product"},this.allowAttachImages&&this.loyaltyPointsNote(),s("div",{class:"rating-outer-form","data-stars-error":salla.lang.get("pages.rating.rate_product_stars")},s("div",{class:"s-rating-modal-product-details"},s("div",{class:"s-rating-modal-product-info-row"},s("div",{class:"s-rating-modal-product-img-wrap"},s("img",{src:t.product.thumbnail,alt:t.product.name,class:"s-rating-modal-product-img"})),s("h3",{class:"s-rating-modal-product-title"},t.product.name)),this.renderProductReviewFactors(t.product.id,0,{fieldPrefix:""}),s("input",{type:"hidden",name:"product_id",value:t.product.id}),s("textarea",{placeholder:salla.lang.get("pages.rating.write_product_rate"),name:"comment",class:"s-rating-modal-comment"}),s("small",{class:"s-rating-modal-validation-msg"}))),this.allowAttachImages&&s("div",{class:"s-rating-modal-uploader is-opened",ref:t=>this.contentRefs[a]=t},s("salla-file-upload",{name:"image",maxFilesCount:this.MAX_UPLOAD_LIMIT,imagePreviewHeight:117,"instant-upload":!0,type:"feedback",payloadName:"files[]",id:`file-${t.product.id}`,title:t.product.name,allowMultiple:!0,instantUpload:!0,accept:"image/png, image/jpeg, image/jpg",url:salla.url.api("upload"),onUploaded:s=>{this.productImages={...this.productImages,[t.product.id]:[...this.productImages[t.product.id]||[],s.detail]},this.hiddenInputs[a].value=this.productImages[t.product.id].map((t=>t.url)).join(",")},onRemoved:s=>{const i=s.detail;i&&this.productImages[t.product.id]&&(this.productImages={...this.productImages,[t.product.id]:this.productImages[t.product.id].filter((t=>t.id!==i))},this.hiddenInputs[a].value=this.productImages[t.product.id].map((t=>t.url)).join(","))},labelIdle:this.getFilepondPlaceholder()}),s("input",{type:"hidden",name:"images",value:(this.productImages[t.product.id]||[]).map((t=>t.url)).join(","),ref:t=>this.hiddenInputs[a]=t}),this.renderUploadedImagesCount(t.product.id))))}renderProductReviewFactors(t,a,i={}){const e=this.productReviewFactors[t]||[],r=i.fieldPrefix??`products[${a}]`,n=r?`${r}[rating]`:"rating",o={...this.editMode?{}:this.productFactorRatings[t]||{},...i.factorRatings||{}},l=Number(i.mainRating??(this.editMode?this.editMainRating:this.productMainRatings[t])),d=!Number.isNaN(l),h=(t,a)=>{const s=void 0!==t.id?o[String(t.id)]:void 0,i=t.name?o[t.name.trim()]:void 0,e=Number(s??i??o[`__index_${a}`]);return Number.isNaN(e)?void 0:e};return s("div",{class:"s-rating-modal-product-rating-rows",ref:a=>this.setupProductRatingAutofill(a,t)},s("div",{class:"s-rating-modal-product-rating-row s-rating-modal-product-rating-row-main"},s("span",{class:"s-rating-modal-product-factor-name"},this.overallProductRatingLabel,s("span",{class:"s-rating-modal-product-factor-required"},"*")),s("salla-rating-stars",{size:"medium",name:n,key:d?`main-rating-${l}`:"main-rating-empty",value:d?l:void 0,editable:d,withLabel:!0,labelBeforeStars:!0,tag:!1})),e.map(((t,a)=>s("div",{class:"s-rating-modal-product-rating-row s-rating-modal-product-factor-row px-3","data-required":t.required?"true":"false","data-factor-key":this.getFactorKey(t,a)},s("input",{type:"hidden",name:this.getFactorFieldName(r,a,"name"),value:t.name}),!!t.id&&s("input",{type:"hidden",name:this.getFactorFieldName(r,a,"id"),value:String(t.id)}),s("span",{class:"s-rating-modal-product-factor-name"},t.name,t.required?s("span",{class:"s-rating-modal-product-factor-required"},"*"):""),s("salla-rating-stars",{size:"medium",name:this.getFactorFieldName(r,a,"rating"),key:`factor-rating-${t.id??a}-${h(t,a)??0}`,value:h(t,a),editable:i.alwaysEditable||"number"==typeof h(t,a),withLabel:!0,labelBeforeStars:!0,tag:!1})))))}handleSendEmail(){const t=`${this.contactSubjectLabel} #${this.order.id}`,a=this.contact_body(salla.config.get("store.name"),this.order.id,this.getCustomerName()),s=`mailto:${salla.config.get("store.contacts.email")}?subject=${encodeURIComponent(t)}&body=${encodeURIComponent(a)}`;window.open(s,"_blank")}handleSendWhatsApp(){const t=this.contact_body(salla.config.get("store.name"),this.order.id,this.getCustomerName()),a=`https://wa.me/${salla.config.get("store.contacts.whatsapp")}?text=${encodeURIComponent(t)}`;window.open(a,"_blank")}resetData(t){t.detail||(this.clearThanksCountdown(),this.modal?.close(),this.editItem=null,this.editItemImages=[],this.editFactorRatings={},this.productMainRatings={},this.productFactorRatings={},this.editMainRating=void 0,this.userFilledFactorKeys={},this.hiddenInputs[1]&&(this.hiddenInputs[1].value=""),this.deleteFeedbackId=null,this.editFeedbackId=null,this.shouldOpenDeleteModal=!1,this.editMode=!1,this.deleteMode=!1,this.defaultMode=!1,this.currentIndex=0,this.submitted=[],this.scheduleWizardSetup=!1,this.loyaltyImageRatingPoints=0)}getDeleteModal(){return s("salla-modal",{ref:t=>this.deleteModal=t,width:"xs",onModalVisibilityChanged:t=>this.resetData(t)},s("div",{class:"s-rating-modal-delete-wrapper",ref:t=>this.body=t},s("h3",null,this.confirmDeletionLabel),s("p",null,this.areYouSureLabel),s("div",{class:"s-rating-modal-delete-actions"},s("salla-button",{loaderPosition:"center",onClick:()=>this.deleteReview()},this.confirmDeleteBtn),s("salla-button",{color:"danger",fill:"outline",onClick:()=>this.deleteModal.close()},this.cancelLabel))))}renderUploadedImagesCount(t){const a=this.editMode?this.editItemImages.length:(this.productImages[t]||[]).length;return s("span",{class:"s-rating-modal-upload-count"},salla.lang.choice("pages.rating.images_count",a,{current:a,total:this.MAX_UPLOAD_LIMIT}))}getEditModal(){return s("salla-modal",{ref:t=>this.editModal=t,width:"md",onModalVisibilityChanged:t=>this.resetData(t)},s("div",{class:"s-rating-modal-edit-wrapper",ref:t=>this.body=t},"store"===this.editType&&this.editItem?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step","data-type":"store",ref:t=>this.currentTab=t},s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:salla.config.get("store.logo","https://assets.salla.sa/cp/assets/images/logo-new.png"),alt:"store name",class:"s-rating-modal-store-logo"})),s("h2",{class:"s-rating-modal-title"},salla.lang.get("pages.rating.rate_the_store")),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large",editable:!0,value:this.editItem.stars})),s("textarea",{name:"content",value:this.editItem.content,class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_store_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):null,"shipping"===this.editType&&this.editItem?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step","data-type":"shipping",ref:t=>this.currentTab=t},this.editItem.shipping.logo?s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:this.editItem.shipping.logo,class:"s-rating-modal-shipping-logo",alt:this.editItem.shipping.name})):s("span",{class:"s-rating-modal-icon",innerHTML:n}),s("div",{class:"s-rating-modal-title"}," ",`${salla.lang.get("pages.rating.rate_shipping")} ${this.editItem.shipping.name}`),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large",editable:!0,value:this.editItem.stars})),s("textarea",{name:"content",class:"s-rating-modal-comment",value:this.editItem.content,placeholder:salla.lang.get("pages.rating.write_shipping_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):null,"product"==this.editType&&this.editItem?s("section",{class:"s-rating-modal-step","data-type":"products",ref:t=>this.currentTab=t},s("div",{class:"s-rating-modal-product"},this.allowAttachImages&&this.loyaltyPointsNote(),s("div",{class:"rating-outer-form","data-stars-error":salla.lang.get("pages.rating.rate_product_stars")},s("div",{class:"s-rating-modal-product-details"},s("div",{class:"s-rating-modal-product-info-row"},s("div",{class:"s-rating-modal-product-img-wrap"},s("img",{src:this.editItem.product.image.url,alt:this.editItem.product.name,class:"s-rating-modal-product-img"})),s("h3",{class:"s-rating-modal-product-title"},this.editItem.product.name)),this.renderProductReviewFactors(this.editItem.product.id,0,{fieldPrefix:"",mainRating:this.editMainRating??Number(this.editItem.stars??this.editItem.rating),factorRatings:this.editFactorRatings,alwaysEditable:!0}),s("input",{type:"hidden",name:"product_id",value:this.editItem.product.id}),s("textarea",{value:this.editItem.content,placeholder:salla.lang.get("pages.rating.write_product_rate"),name:"comment",class:"s-rating-modal-comment"}),s("small",{class:"s-rating-modal-validation-msg"}))),this.allowAttachImages&&s("div",{class:"s-rating-modal-uploader is-opened",ref:t=>this.contentRefs[1]=t},s("salla-file-upload",{name:"images",allowMultiple:!0,maxFilesCount:this.MAX_UPLOAD_LIMIT,imagePreviewHeight:117,filePosterHeight:117,"instant-upload":!0,type:"feedback",files:JSON.stringify(this.editItemImages),payloadName:"files[]",id:`file-${this.editItem.product.id}`,title:this.editItem.product.name,instantUpload:!0,accept:"image/png, image/jpeg, image/jpg",url:salla.url.api("upload"),onUploaded:t=>{this.editItemImages=[...this.editItemImages,t.detail],this.hiddenInputs[1].value=this.editItemImages.map((t=>t.url)).join()},onRemoved:t=>{const a=t.detail;a&&(this.editItemImages=this.editItemImages.filter((t=>t.id!==a)),this.hiddenInputs[1].value=this.editItemImages.map((t=>t.url)).join())},labelIdle:this.getFilepondPlaceholder()}),s("input",{type:"hidden",name:"images",value:this.editItemImages.map((t=>t.url)).join(","),ref:t=>this.hiddenInputs[1]=t}),this.renderUploadedImagesCount(this.editItem.product.id)))):null,s("div",{class:"s-rating-modal-footer s-rating-modal-footer-end"},s("salla-button",{"loader-position":"center",onClick:()=>this.editReview()},this.editReviewLabel))))}render(){return this.deleteMode?s(i,{class:"s-rating-modal"},this.getDeleteModal()):this.editMode?s(i,{class:"s-rating-modal"},this.getEditModal()):this.defaultMode?s(i,{class:"s-rating-modal"},s("salla-modal",{class:"s-rating-modal-wrap",onModalVisibilityChanged:t=>this.resetData(t),isLoading:!0,width:"md",ref:t=>this.modal=t},s("div",{slot:"loading"},s("div",{class:"s-rating-modal-skeleton"},s("salla-skeleton",{type:"circle",height:"80px",width:"80px"}),s("salla-skeleton",{height:"15px",width:"60%"}),s("salla-skeleton",{height:"10px",width:"30%"}),s("div",{class:"s-rating-modal-skeleton-stars"},[...Array(5)].map((t=>s("div",{key:t,innerHTML:r})))),s("salla-skeleton",{height:"100px",width:"100%"}),s("div",{class:"s-rating-modal-skeleton-footer"},s("salla-skeleton",{height:"40px",width:"30%"})))),!this.hasError&&this.order?[s("div",{class:"s-rating-modal-wrapper",ref:t=>this.body=t},this.isTestimonialsEnabled()?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step s-rating-modal-hidden","data-type":"store"},s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:salla.config.get("store.logo","https://assets.salla.sa/cp/assets/images/logo-new.png"),alt:"store name",class:"s-rating-modal-store-logo"})),s("h2",{class:"s-rating-modal-title"},salla.lang.get("pages.rating.rate_the_store")),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large"})),s("textarea",{name:"comment",class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_store_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):"",this.isProductsEnabled()&&this.getRateableProducts().map(((t,a)=>this.renderProductStep(t,a))),this.isShippingEnabled()&&this.order.shipping?.company?s("div",{class:"rating-outer-form s-rating-modal-step-wrap s-rating-modal-step s-rating-modal-hidden","data-type":"shipping"},s("input",{type:"hidden",name:"shipping_company_id",value:this.order.shipping.company.id}),this.order.shipping.company.logo?s("div",{class:"s-rating-modal-rounded-icon"},s("img",{src:this.order.shipping.company.logo,class:"s-rating-modal-shipping-logo",alt:this.order.shipping.company.name})):s("span",{class:"s-rating-modal-icon",innerHTML:n}),s("div",{class:"s-rating-modal-title"}," ",`${salla.lang.get("pages.rating.rate_shipping")} ${this.order.shipping.company.name}`),s("div",{class:"s-rating-modal-stars-company"},s("salla-rating-stars",{withLabel:!0,size:"large"})),s("textarea",{name:"comment",class:"s-rating-modal-comment",placeholder:salla.lang.get("pages.rating.write_shipping_rate")}),s("small",{class:"s-rating-modal-validation-msg"})):"",s("div",{class:"s-rating-modal-thanks s-rating-modal-hidden",ref:t=>this.thanksTab=t},s("span",{class:"s-rating-modal-icon",innerHTML:o}),s("h3",{class:"s-rating-modal-thanks-title"},salla.lang.get("pages.rating.thanks")),s("div",{class:"s-rating-modal-thanks-msg",innerHTML:this.order.thanks_message}),s("time",{class:"s-rating-modal-thanks-time",ref:t=>this.thanksTime=t}))),this.allowContactSupport&&this.showContactWidget&&(salla.config.get("store.contacts.whatsapp")||salla.config.get("store.contacts.email"))?s("div",{class:"s-rating-modal-contact"},s("p",null,this.contactUsLabel),s("div",{class:"s-rating-modal-contact-icons"},salla.config.get("store.contacts.whatsapp")&&s("span",{onClick:()=>this.handleSendWhatsApp(),innerHTML:h}),salla.config.get("store.contacts.email")&&s("span",{onClick:()=>this.handleSendEmail(),innerHTML:g}))):"",s("div",{class:"s-rating-modal-footer"},s("button",{ref:t=>this.backBtn=t,onClick:()=>this.previousTab(),class:"s-rating-modal-btn s-rating-modal-unvisiable"},salla.lang.get("common.elements.back")),this.stepsCount>1?s("ul",{class:"s-rating-modal-dots"},[...Array(this.stepsCount)].map(((t,a)=>s("li",{key:a,class:"s-rating-modal-bg-gray s-rating-modal-step-dot"})))):"",s("salla-button",{"loader-position":"center",ref:t=>this.nextBtn=t,onClick:()=>this.submit()},salla.lang.get("common.elements.next")))]:s("salla-placeholder",{alignment:"center"}))):void 0}async componentWillLoad(){await salla.onReady(),this.syncStoreSettings()}componentDidRender(){this.scheduleWizardSetup&&this.defaultMode&&this.order&&(this.scheduleWizardSetup=!1,requestAnimationFrame((()=>this.handleWizard())))}disconnectedCallback(){this.clearThanksCountdown()}get host(){return e(this)}};m.style=".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{position:absolute !important;inset:0;display:block;width:100% !important;max-width:100% !important;height:100% !important;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-loyalty-points-note-container{display:flex;align-items:center;gap:0.625rem;width:100%;margin-top:1.5rem;margin-bottom:0.75rem;padding:0.75rem;border-radius:0.5rem;background-color:#E6F4EA}.s-rating-modal-loyalty-points-note-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:#1B7F5C}.s-rating-modal-loyalty-points-note-icon svg{width:1.5rem;height:1.5rem;fill:currentColor}.s-rating-modal-loyalty-points-note-text{flex:1;margin:0;font-size:0.875rem;line-height:1.25rem;color:#1f2937}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{position:relative;width:5rem !important;min-width:5rem !important;max-width:5rem !important;height:3.5rem !important;flex-shrink:0 !important;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";export{m as salla_rating_modal_v2}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as a,h as s}from"./p-CGxZTQ-T.js";import{S as l}from"./p-D4oPi1Ov.js";import{S as t}from"./p-8Tsmrwno.js";const e=class{constructor(s){a(this,s),this.activeTabType="",this.tabsKey=0,this.selectedItem=void 0,this.allowEmail=!0,this.allowMobile=!0,this.requireEmail=!1,salla.event.on("loyalty::open",(()=>this.open())),salla.auth.event.onLoggedIn((()=>{this.is_loggedin=!0})),salla.onReady((()=>{this.is_loggedin=salla.config.isUser()})),salla.lang.onLoaded((()=>{this.guestMessage=salla.lang.get("pages.loyalty_program.guest_message"),this.translationLoaded=!0})),salla.cart.event.onUpdated((a=>{this.prizePoints=a.loyalty.prize?.points,this.prizeTitle=a.loyalty.prize?.title,this.customerPoints=a.loyalty.customer_points||this.customerPoints}))}onTabSelected(a){const s=this.loyaltyProgram?.prizes.find((s=>s.title===a.detail?.name));s&&(this.activeTabType=s.type)}setSelectedPrizeItem(a){this.selectedItem=this.selectedItem&&this.selectedItem?.id==a.id?void 0:a}handleLongText(a){return a.length>150?a.substring(0,150)+"...":a}prizeItem(a){return s("div",{onClick:()=>this.setSelectedPrizeItem(a),class:{"s-loyalty-prize-item-selected":!!this.selectedItem&&this.selectedItem?.id==a.id,"s-loyalty-prize-item":!0}},s("img",{class:"s-loyalty-prize-item-image",src:a.image,alt:a.name}),s("div",{class:"s-loyalty-prize-item-title"},a.name),s("div",{class:"s-loyalty-prize-item-subtitle"},this.handleLongText(a.description)),s("div",{class:"s-loyalty-prize-item-points"},a.cost_points," ",salla.lang.get("pages.loyalty_program.point"),s("div",{class:"s-loyalty-prize-item-check"},s("div",null))))}getConfirmationModal(){return[s("salla-placeholder",{alignment:"center",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80" viewBox="0 0 80 80">\n<title>star3</title>\n <defs>\n <style>\n .a {\n fill: none !important;\n }\n\n .b {\n fill: #ff9e01;\n }\n\n .c {\n fill: #fff;\n opacity: 0.1;\n }\n\n </style>\n </defs>\n <g transform="translate(-683 -269)">\n <rect class="a" width="80" height="80" transform="translate(683 269)" />\n <g transform="translate(684.539 261.216)">\n <path class="b"\n d="M110.117,37.062,90.024,35.2,82.043,16.665a1.61,1.61,0,0,0-2.958,0L71.1,35.2,51.011,37.062a1.61,1.61,0,0,0-.914,2.813l15.16,13.318L60.821,72.878a1.61,1.61,0,0,0,2.393,1.739l17.351-10.3,17.351,10.3a1.61,1.61,0,0,0,2.393-1.739L95.871,53.192l15.16-13.318A1.61,1.61,0,0,0,110.117,37.062Z"\n transform="translate(-42.104 -4.011)" />\n <g transform="translate(0 10.971)">\n <path class="b"\n d="M93.54,12.016c1.024,1.423,3.915,7.533,5.568,11.094a.559.559,0,0,1-.891.641c-2.853-2.7-7.73-7.377-8.754-8.8a2.512,2.512,0,0,1,4.077-2.935Z"\n transform="translate(-75.621 -10.971)" />\n <path class="b"\n d="M360.909,12.016c-1.024,1.423-3.915,7.533-5.568,11.094a.559.559,0,0,0,.891.641c2.853-2.7,7.73-7.377,8.754-8.8a2.512,2.512,0,0,0-4.077-2.935Z"\n transform="translate(-301.908 -10.971)" />\n <path class="b"\n d="M427.538,284.659c-1.667-.543-8.366-1.441-12.261-1.934a.559.559,0,0,0-.34,1.044c3.436,1.9,9.377,5.123,11.044,5.666a2.512,2.512,0,0,0,1.558-4.776Z"\n transform="translate(-352.351 -241.894)" />\n <path class="b"\n d="M1.734,284.659c1.667-.543,8.366-1.441,12.261-1.934a.559.559,0,0,1,.34,1.044c-3.436,1.9-9.377,5.123-11.044,5.666a2.512,2.512,0,0,1-1.558-4.776Z"\n transform="translate(0 -241.894)" />\n <path class="b"\n d="M239.794,412.414c0-1.753,1.224-8.4,1.963-12.257a.559.559,0,0,1,1.1,0c.739,3.855,1.963,10.5,1.963,12.257a2.512,2.512,0,0,1-5.023,0Z"\n transform="translate(-203.768 -341.301)" />\n </g>\n <path class="c"\n d="M84.945,23.4l-2.9-6.74a1.61,1.61,0,0,0-2.958,0L71.1,35.2,51.011,37.062a1.61,1.61,0,0,0-.914,2.813l15.16,13.318L60.821,72.878a1.61,1.61,0,0,0,2.393,1.739l2.309-1.371A125,125,0,0,1,84.945,23.4Z"\n transform="translate(-42.104 -4.011)" />\n </g>\n </g>\n</svg>\n',class:"s-loyalty-confirmation-modal-content"},s("div",{slot:"title",class:"s-loyalty-confirmation-title"},salla.lang.get("pages.loyalty_program.exchange_points")),s("div",{slot:"description"},salla.lang.get("pages.loyalty_program.are_you_sure_to_exchange")," ( ",s("strong",null,this.selectedItem?.cost_points)," ",salla.lang.get("pages.loyalty_program.point")," ) ",salla.lang.get("pages.loyalty_program.for")," ( ",s("strong",null,this.selectedItem?.name)," )")),s("div",{class:"s-loyalty-confirmation-actions"},s("salla-button",{fill:"outline",width:"wide",onClick:()=>this.cancelProcess()},salla.lang.get("pages.loyalty_program.cancellation")),s("salla-button",{loading:this.buttonLoading,width:"wide",onClick:()=>this.exchangeLoyaltyPoint()},salla.lang.get("pages.loyalty_program.confirm")))]}getAfterExchangeUI(){return s("slot",{name:"points-applied-widget"},s("salla-list-tile",{class:"s-loyalty-after-exchange"},s("div",{slot:"title",class:"s-loyalty-after-exchange-title"},this.prizeTitle," - ",this.prizePoints," ",salla.lang.get("pages.loyalty_program.point")),s("div",{slot:"action",class:"s-loyalty-after-exchange-action"},s("salla-button",{class:"s-loyalty-after-exchange-reset",shape:"icon",fill:"outline",color:"danger",size:"small",onClick:()=>this.resetExchange()},s("span",{innerHTML:t})))))}async open(){return this.is_loggedin?(this.modal?.open(),await salla.loyalty.getProgram().then((a=>{this.loyaltyProgram=a.data,this.activeTabType=this.loyaltyProgram.prizes[0]?.type||"",this.tabsKey++})).catch((a=>{this.hasError=!0,this.errorMessage=a.response?.data?.error?.message||a.response?.data})).finally((()=>this.modal?.stopLoading()))):salla.event.dispatch("login::open")}async close(){return this.modal.close()}async resetExchange(){return await salla.loyalty.reset()}getApiErrorMessage(a){return a?.response?.data?.error?.message||a?.response?.data?.message||("string"==typeof a?a:null)||salla.lang.get("common.errors.error_occurred")}async openConfirmation(){return await this.modal.close().then((()=>this.confirmationModal?.open())).catch((a=>console.log(a)))}async cancelProcess(){return await this.confirmationModal.close().then((()=>this.selectedItem=null)).catch((a=>console.log(a)))}async exchangeLoyaltyPoint(){this.buttonLoading=!0;const a=this.selectedItem;await salla.loyalty.exchange(a?.id).then((async()=>{"FREE_PRODUCT"==a?.key&&salla.url.is_page("cart")&&window.location.reload(),await this.cancelProcess()})).catch((a=>{salla.notify.error(this.getApiErrorMessage(a))})),this.buttonLoading=!1}render(){return this.prizePoints?this.getAfterExchangeUI():[s("slot",{name:"widget"},this.customerPoints?s("salla-list-tile",{class:"s-loyalty-widget"},s("div",{slot:"icon",class:"s-loyalty-widget-icon",innerHTML:l}),s("div",{slot:"subtitle"},this.customerPoints?salla.lang.get("pages.loyalty_program.cart_total_point_summary",{balance:this.customerPoints}):this.guestMessage,s("salla-button",{shape:"link",color:"primary",onClick:()=>salla.event.dispatch("loyalty::open")},this.customerPoints?salla.lang.get("pages.loyalty_program.cart_point_exchange_now"):salla.lang.get("blocks.header.login")))):""),s("salla-modal",{noPadding:!0,width:"sm",ref:a=>this.confirmationModal=a},this.getConfirmationModal()),s("salla-modal",{isLoading:!0,"has-skeleton":!0,width:"md",ref:a=>this.modal=a},s("div",{slot:"loading"},s("div",{class:"s-loyalty-skeleton"},s("salla-list-tile",{class:"s-loyalty-header"},s("div",{slot:"icon",class:"s-loyalty-header-icon"},s("salla-skeleton",{type:"circle",height:"6rem",width:"6rem"})),s("div",{slot:"title",class:"s-loyalty-header-title mb-5"},s("salla-skeleton",{height:"15px",width:"50%"})),s("div",{slot:"subtitle",class:"s-loyalty-header-subtitle"},s("salla-skeleton",{height:"10px"}),s("salla-skeleton",{height:"10px",width:"75%"}))),s("div",{class:"s-loyalty-skeleton-cards"},[...Array(3)].map((()=>s("div",{class:"s-loyalty-prize-item swiper-slide"},s("salla-skeleton",{height:"9rem"}),s("div",{class:"s-loyalty-prize-item-title"},s("salla-skeleton",{height:"15px",width:"75%"})),s("div",{class:"s-loyalty-prize-item-subtitle"},s("salla-skeleton",{height:"10px",width:"50%"}),s("salla-skeleton",{height:"10px",width:"25%"})),s("div",{class:"s-loyalty-prize-item-points"},s("salla-skeleton",{height:"15px",width:"100px"}),s("div",{class:"s-loyalty-prize-item-check"},s("salla-skeleton",{height:"1rem",width:"1rem",type:"circle"}))))))))),!this.hasError&&this.loyaltyProgram?[s("salla-list-tile",{id:"s-loyalty-header",class:"s-loyalty-header"},s("div",{slot:"icon",class:"s-loyalty-header-icon",innerHTML:'<svg xmlns="http://www.w3.org/2000/svg" width="54.079" height="53.191" viewBox="0 0 54.079 53.191"><defs><style>.a{fill:#ee9d0d;}.b{fill:#c7830b;}.c{fill:#ea2b2d;}.d{fill:#cb2527;}.e{fill:#6699ce;}.f{fill:#faa6b2;}.g{fill:#a6deff;}.h{fill:#eeb436;}.i{fill:#f72d2f;}</style></defs><path class="a" d="M40,248H77.3v25.88a2.1,2.1,0,0,1-2.1,2.1H42.1a2.1,2.1,0,0,1-2.1-2.1Z" transform="translate(-38.135 -222.787)"/><path class="b" d="M250.632,248.711v12.755L236.2,248h13.67Z" transform="translate(-211.463 -222.787)"/><path class="b" d="M333.957,336v3.207L330.52,336Z" transform="translate(-294.787 -300.528)"/><path class="c" d="M226.194,32.048l-.5.185a5.035,5.035,0,0,0-3.072,3.292l-.468,1.585-.759.414a5.035,5.035,0,0,0-2.422,3l8.865,8.271,5.09-5.456.262-6.205a5.191,5.191,0,0,0-7-5.083Z" transform="translate(-196.246 -31.722)"/><path class="c" d="M358.628,175.48l-.15.509a5.034,5.034,0,0,1-3.072,3.292l-1.55.577-.359.785a5.034,5.034,0,0,1-2.822,2.624L341.81,175l5.09-5.455,6.172-.69a5.191,5.191,0,0,1,5.555,6.629Z" transform="translate(-304.761 -152.837)"/><path class="d" d="M168,248h7.461v27.978H168Z" transform="translate(-151.213 -222.787)"/><path class="c" d="M40,336H77.3v7.461H40Z" transform="translate(-38.135 -300.528)"/><path class="d" d="M333.957,336v3.207L330.52,336Z" transform="translate(-294.787 -300.528)"/><path class="a" d="M2.1,0H40.8a2.1,2.1,0,0,1,2.1,2.1V9.326H0V2.1A2.1,2.1,0,0,1,2.1,0Z" transform="matrix(0.731, 0.682, -0.682, 0.731, 18.641, 4.976)"/><path class="d" d="M0,0H9.326V9.326H0Z" transform="matrix(0.731, 0.682, -0.682, 0.731, 30.912, 16.424)"/><path class="d" d="M286.857,79.389a.931.931,0,0,1-.74-.365l-.615-.8a12.516,12.516,0,0,1-2.528-9,.933.933,0,0,1,1.855.2,10.66,10.66,0,0,0,2.153,7.667l.615.8a.933.933,0,0,1-.739,1.5Z" transform="translate(-252.718 -64.113)"/><path class="c" d="M185.485,178.151l-.039.014a30.78,30.78,0,0,1-12.034,1.906l-2.381-.1,4.092,3.817-1.181,4,3.728-1.206a30.775,30.775,0,0,0,9.833-5.315l.71-.572Z" transform="translate(-153.891 -161.081)"/><path class="d" d="M363.834,194.779a12.51,12.51,0,0,1-6.93-2.1l-.843-.559a.933.933,0,1,1,1.031-1.554l.842.558a10.659,10.659,0,0,0,7.8,1.618.933.933,0,1,1,.328,1.836A12.663,12.663,0,0,1,363.834,194.779Z" transform="translate(-316.982 -171.914)"/><path class="c" d="M275,202.524l-.012.04a30.776,30.776,0,0,0-1.069,12.137l.265,2.369-4.092-3.817-3.909,1.455.945-3.8a30.776,30.776,0,0,1,4.622-10.177l.521-.748Z" transform="translate(-237.949 -180.364)"/><circle class="e" cx="1.865" cy="1.865" r="1.865" transform="translate(10.259 0.032)"/><circle class="f" cx="1.865" cy="1.865" r="1.865" transform="translate(0 21.482)"/><path class="g" d="M36.663,36.663a.933.933,0,0,1-.885-.638l-.048-.143a2.946,2.946,0,0,0-2.8-2.017.933.933,0,1,1,0-1.865A4.808,4.808,0,0,1,37.5,35.292l.048.143a.933.933,0,0,1-.885,1.228Z" transform="translate(-31.067 -31.968)"/><path class="g" d="M79.493,194.438a.929.929,0,0,1-.506-.15l-.185-.12a2.074,2.074,0,0,0-2.192-.047.933.933,0,0,1-.947-1.607,3.929,3.929,0,0,1,4.153.088l.185.12a.933.933,0,0,1-.508,1.716Z" transform="translate(-69.235 -173.283)"/><path class="h" d="M27.751,85.141l2.88,2.644,3.811-.874-1.624,3.556,2.008,3.354-3.884-.446-2.569,2.946L27.6,92.49,24,90.957l3.4-1.922Z" transform="translate(-24 -78.914)"/><path class="h" d="M82.174,227.375l-.959,3.772,2.564,2.928-3.884.254L77.9,237.673l-1.442-3.615-3.8-.862,2.993-2.488-.353-3.876,3.291,2.078Z" transform="translate(-66.992 -204.086)"/><path class="i" d="M300.471,141.9l-5.455-5.09,5.09-5.456a8.342,8.342,0,0,1,5.455,5.09Z" transform="translate(-263.422 -119.737)"/></svg>'}),s("div",{slot:"title",class:"s-loyalty-header-title"},this.loyaltyProgram.prize_promotion_title),s("div",{slot:"subtitle",class:"s-loyalty-header-subtitle"},this.loyaltyProgram.prize_promotion_description)),s("salla-tabs",{key:this.tabsKey},this.loyaltyProgram.prizes.map((a=>s("salla-tab-header",{slot:"header",name:a.title},s("span",null,a.title)))),this.loyaltyProgram.prizes.map(((a,l)=>s("salla-tab-content",{slot:"content",name:a.title},s("salla-slider",{class:"s-loyalty-slider",loop:!1,"controls-outer":!0,id:"loyalty-popup-slider-"+l,type:"carousel"},s("div",{slot:"items"},a.items.map((a=>this.prizeItem(a))))))))),"FREE_PRODUCT"===this.activeTabType?.toUpperCase()&&(salla.config.get("store.features")||[]).includes("loyalty-system-v2")?s("a",{href:salla.url.get(""),class:"s-loyalty-program-redeem-btn s-button-element s-button-btn s-button-solid s-button-wide s-button-primary s-button-wrap"},salla.lang.get("pages.loyalty_program.shop_now")):s("salla-button",{disabled:!this.selectedItem,width:"wide",class:"s-loyalty-program-redeem-btn",onClick:()=>this.openConfirmation()},salla.lang.get("pages.loyalty_program.exchange_points"))]:s("salla-placeholder",{class:"s-loyalty-placeholder",alignment:"center"},this.errorMessage?s("span",{slot:"description"},this.errorMessage):""))]}};e.style="";export{e as salla_loyalty}
|
|
4
|
+
import{r as a,h as s}from"./p-Crijf68j.js";import{S as l}from"./p-D4oPi1Ov.js";import{S as t}from"./p-8Tsmrwno.js";const e=class{constructor(s){a(this,s),this.activeTabType="",this.tabsKey=0,this.selectedItem=void 0,this.allowEmail=!0,this.allowMobile=!0,this.requireEmail=!1,salla.event.on("loyalty::open",(()=>this.open())),salla.auth.event.onLoggedIn((()=>{this.is_loggedin=!0})),salla.onReady((()=>{this.is_loggedin=salla.config.isUser()})),salla.lang.onLoaded((()=>{this.guestMessage=salla.lang.get("pages.loyalty_program.guest_message"),this.translationLoaded=!0})),salla.cart.event.onUpdated((a=>{this.prizePoints=a.loyalty.prize?.points,this.prizeTitle=a.loyalty.prize?.title,this.customerPoints=a.loyalty.customer_points||this.customerPoints}))}onTabSelected(a){const s=this.loyaltyProgram?.prizes.find((s=>s.title===a.detail?.name));s&&(this.activeTabType=s.type)}setSelectedPrizeItem(a){this.selectedItem=this.selectedItem&&this.selectedItem?.id==a.id?void 0:a}handleLongText(a){return a.length>150?a.substring(0,150)+"...":a}prizeItem(a){return s("div",{onClick:()=>this.setSelectedPrizeItem(a),class:{"s-loyalty-prize-item-selected":!!this.selectedItem&&this.selectedItem?.id==a.id,"s-loyalty-prize-item":!0}},s("img",{class:"s-loyalty-prize-item-image",src:a.image,alt:a.name}),s("div",{class:"s-loyalty-prize-item-title"},a.name),s("div",{class:"s-loyalty-prize-item-subtitle"},this.handleLongText(a.description)),s("div",{class:"s-loyalty-prize-item-points"},a.cost_points," ",salla.lang.get("pages.loyalty_program.point"),s("div",{class:"s-loyalty-prize-item-check"},s("div",null))))}getConfirmationModal(){return[s("salla-placeholder",{alignment:"center",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80" viewBox="0 0 80 80">\n<title>star3</title>\n <defs>\n <style>\n .a {\n fill: none !important;\n }\n\n .b {\n fill: #ff9e01;\n }\n\n .c {\n fill: #fff;\n opacity: 0.1;\n }\n\n </style>\n </defs>\n <g transform="translate(-683 -269)">\n <rect class="a" width="80" height="80" transform="translate(683 269)" />\n <g transform="translate(684.539 261.216)">\n <path class="b"\n d="M110.117,37.062,90.024,35.2,82.043,16.665a1.61,1.61,0,0,0-2.958,0L71.1,35.2,51.011,37.062a1.61,1.61,0,0,0-.914,2.813l15.16,13.318L60.821,72.878a1.61,1.61,0,0,0,2.393,1.739l17.351-10.3,17.351,10.3a1.61,1.61,0,0,0,2.393-1.739L95.871,53.192l15.16-13.318A1.61,1.61,0,0,0,110.117,37.062Z"\n transform="translate(-42.104 -4.011)" />\n <g transform="translate(0 10.971)">\n <path class="b"\n d="M93.54,12.016c1.024,1.423,3.915,7.533,5.568,11.094a.559.559,0,0,1-.891.641c-2.853-2.7-7.73-7.377-8.754-8.8a2.512,2.512,0,0,1,4.077-2.935Z"\n transform="translate(-75.621 -10.971)" />\n <path class="b"\n d="M360.909,12.016c-1.024,1.423-3.915,7.533-5.568,11.094a.559.559,0,0,0,.891.641c2.853-2.7,7.73-7.377,8.754-8.8a2.512,2.512,0,0,0-4.077-2.935Z"\n transform="translate(-301.908 -10.971)" />\n <path class="b"\n d="M427.538,284.659c-1.667-.543-8.366-1.441-12.261-1.934a.559.559,0,0,0-.34,1.044c3.436,1.9,9.377,5.123,11.044,5.666a2.512,2.512,0,0,0,1.558-4.776Z"\n transform="translate(-352.351 -241.894)" />\n <path class="b"\n d="M1.734,284.659c1.667-.543,8.366-1.441,12.261-1.934a.559.559,0,0,1,.34,1.044c-3.436,1.9-9.377,5.123-11.044,5.666a2.512,2.512,0,0,1-1.558-4.776Z"\n transform="translate(0 -241.894)" />\n <path class="b"\n d="M239.794,412.414c0-1.753,1.224-8.4,1.963-12.257a.559.559,0,0,1,1.1,0c.739,3.855,1.963,10.5,1.963,12.257a2.512,2.512,0,0,1-5.023,0Z"\n transform="translate(-203.768 -341.301)" />\n </g>\n <path class="c"\n d="M84.945,23.4l-2.9-6.74a1.61,1.61,0,0,0-2.958,0L71.1,35.2,51.011,37.062a1.61,1.61,0,0,0-.914,2.813l15.16,13.318L60.821,72.878a1.61,1.61,0,0,0,2.393,1.739l2.309-1.371A125,125,0,0,1,84.945,23.4Z"\n transform="translate(-42.104 -4.011)" />\n </g>\n </g>\n</svg>\n',class:"s-loyalty-confirmation-modal-content"},s("div",{slot:"title",class:"s-loyalty-confirmation-title"},salla.lang.get("pages.loyalty_program.exchange_points")),s("div",{slot:"description"},salla.lang.get("pages.loyalty_program.are_you_sure_to_exchange")," ( ",s("strong",null,this.selectedItem?.cost_points)," ",salla.lang.get("pages.loyalty_program.point")," ) ",salla.lang.get("pages.loyalty_program.for")," ( ",s("strong",null,this.selectedItem?.name)," )")),s("div",{class:"s-loyalty-confirmation-actions"},s("salla-button",{fill:"outline",width:"wide",onClick:()=>this.cancelProcess()},salla.lang.get("pages.loyalty_program.cancellation")),s("salla-button",{loading:this.buttonLoading,width:"wide",onClick:()=>this.exchangeLoyaltyPoint()},salla.lang.get("pages.loyalty_program.confirm")))]}getAfterExchangeUI(){return s("slot",{name:"points-applied-widget"},s("salla-list-tile",{class:"s-loyalty-after-exchange"},s("div",{slot:"title",class:"s-loyalty-after-exchange-title"},this.prizeTitle," - ",this.prizePoints," ",salla.lang.get("pages.loyalty_program.point")),s("div",{slot:"action",class:"s-loyalty-after-exchange-action"},s("salla-button",{class:"s-loyalty-after-exchange-reset",shape:"icon",fill:"outline",color:"danger",size:"small",onClick:()=>this.resetExchange()},s("span",{innerHTML:t})))))}async open(){return this.is_loggedin?(this.modal?.open(),await salla.loyalty.getProgram().then((a=>{this.loyaltyProgram=a.data,this.activeTabType=this.loyaltyProgram.prizes[0]?.type||"",this.tabsKey++})).catch((a=>{this.hasError=!0,this.errorMessage=a.response?.data?.error?.message||a.response?.data})).finally((()=>this.modal?.stopLoading()))):salla.event.dispatch("login::open")}async close(){return this.modal.close()}async resetExchange(){return await salla.loyalty.reset()}getApiErrorMessage(a){return a?.response?.data?.error?.message||a?.response?.data?.message||("string"==typeof a?a:null)||salla.lang.get("common.errors.error_occurred")}async openConfirmation(){return await this.modal.close().then((()=>this.confirmationModal?.open())).catch((a=>console.log(a)))}async cancelProcess(){return await this.confirmationModal.close().then((()=>this.selectedItem=null)).catch((a=>console.log(a)))}async exchangeLoyaltyPoint(){this.buttonLoading=!0;const a=this.selectedItem;await salla.loyalty.exchange(a?.id).then((async()=>{"FREE_PRODUCT"==a?.key&&salla.url.is_page("cart")&&window.location.reload(),await this.cancelProcess()})).catch((a=>{salla.notify.error(this.getApiErrorMessage(a))})),this.buttonLoading=!1}render(){return this.prizePoints?this.getAfterExchangeUI():[s("slot",{name:"widget"},this.customerPoints?s("salla-list-tile",{class:"s-loyalty-widget"},s("div",{slot:"icon",class:"s-loyalty-widget-icon",innerHTML:l}),s("div",{slot:"subtitle"},this.customerPoints?salla.lang.get("pages.loyalty_program.cart_total_point_summary",{balance:this.customerPoints}):this.guestMessage,s("salla-button",{shape:"link",color:"primary",onClick:()=>salla.event.dispatch("loyalty::open")},this.customerPoints?salla.lang.get("pages.loyalty_program.cart_point_exchange_now"):salla.lang.get("blocks.header.login")))):""),s("salla-modal",{noPadding:!0,width:"sm",ref:a=>this.confirmationModal=a},this.getConfirmationModal()),s("salla-modal",{isLoading:!0,"has-skeleton":!0,width:"md",ref:a=>this.modal=a},s("div",{slot:"loading"},s("div",{class:"s-loyalty-skeleton"},s("salla-list-tile",{class:"s-loyalty-header"},s("div",{slot:"icon",class:"s-loyalty-header-icon"},s("salla-skeleton",{type:"circle",height:"6rem",width:"6rem"})),s("div",{slot:"title",class:"s-loyalty-header-title mb-5"},s("salla-skeleton",{height:"15px",width:"50%"})),s("div",{slot:"subtitle",class:"s-loyalty-header-subtitle"},s("salla-skeleton",{height:"10px"}),s("salla-skeleton",{height:"10px",width:"75%"}))),s("div",{class:"s-loyalty-skeleton-cards"},[...Array(3)].map((()=>s("div",{class:"s-loyalty-prize-item swiper-slide"},s("salla-skeleton",{height:"9rem"}),s("div",{class:"s-loyalty-prize-item-title"},s("salla-skeleton",{height:"15px",width:"75%"})),s("div",{class:"s-loyalty-prize-item-subtitle"},s("salla-skeleton",{height:"10px",width:"50%"}),s("salla-skeleton",{height:"10px",width:"25%"})),s("div",{class:"s-loyalty-prize-item-points"},s("salla-skeleton",{height:"15px",width:"100px"}),s("div",{class:"s-loyalty-prize-item-check"},s("salla-skeleton",{height:"1rem",width:"1rem",type:"circle"}))))))))),!this.hasError&&this.loyaltyProgram?[s("salla-list-tile",{id:"s-loyalty-header",class:"s-loyalty-header"},s("div",{slot:"icon",class:"s-loyalty-header-icon",innerHTML:'<svg xmlns="http://www.w3.org/2000/svg" width="54.079" height="53.191" viewBox="0 0 54.079 53.191"><defs><style>.a{fill:#ee9d0d;}.b{fill:#c7830b;}.c{fill:#ea2b2d;}.d{fill:#cb2527;}.e{fill:#6699ce;}.f{fill:#faa6b2;}.g{fill:#a6deff;}.h{fill:#eeb436;}.i{fill:#f72d2f;}</style></defs><path class="a" d="M40,248H77.3v25.88a2.1,2.1,0,0,1-2.1,2.1H42.1a2.1,2.1,0,0,1-2.1-2.1Z" transform="translate(-38.135 -222.787)"/><path class="b" d="M250.632,248.711v12.755L236.2,248h13.67Z" transform="translate(-211.463 -222.787)"/><path class="b" d="M333.957,336v3.207L330.52,336Z" transform="translate(-294.787 -300.528)"/><path class="c" d="M226.194,32.048l-.5.185a5.035,5.035,0,0,0-3.072,3.292l-.468,1.585-.759.414a5.035,5.035,0,0,0-2.422,3l8.865,8.271,5.09-5.456.262-6.205a5.191,5.191,0,0,0-7-5.083Z" transform="translate(-196.246 -31.722)"/><path class="c" d="M358.628,175.48l-.15.509a5.034,5.034,0,0,1-3.072,3.292l-1.55.577-.359.785a5.034,5.034,0,0,1-2.822,2.624L341.81,175l5.09-5.455,6.172-.69a5.191,5.191,0,0,1,5.555,6.629Z" transform="translate(-304.761 -152.837)"/><path class="d" d="M168,248h7.461v27.978H168Z" transform="translate(-151.213 -222.787)"/><path class="c" d="M40,336H77.3v7.461H40Z" transform="translate(-38.135 -300.528)"/><path class="d" d="M333.957,336v3.207L330.52,336Z" transform="translate(-294.787 -300.528)"/><path class="a" d="M2.1,0H40.8a2.1,2.1,0,0,1,2.1,2.1V9.326H0V2.1A2.1,2.1,0,0,1,2.1,0Z" transform="matrix(0.731, 0.682, -0.682, 0.731, 18.641, 4.976)"/><path class="d" d="M0,0H9.326V9.326H0Z" transform="matrix(0.731, 0.682, -0.682, 0.731, 30.912, 16.424)"/><path class="d" d="M286.857,79.389a.931.931,0,0,1-.74-.365l-.615-.8a12.516,12.516,0,0,1-2.528-9,.933.933,0,0,1,1.855.2,10.66,10.66,0,0,0,2.153,7.667l.615.8a.933.933,0,0,1-.739,1.5Z" transform="translate(-252.718 -64.113)"/><path class="c" d="M185.485,178.151l-.039.014a30.78,30.78,0,0,1-12.034,1.906l-2.381-.1,4.092,3.817-1.181,4,3.728-1.206a30.775,30.775,0,0,0,9.833-5.315l.71-.572Z" transform="translate(-153.891 -161.081)"/><path class="d" d="M363.834,194.779a12.51,12.51,0,0,1-6.93-2.1l-.843-.559a.933.933,0,1,1,1.031-1.554l.842.558a10.659,10.659,0,0,0,7.8,1.618.933.933,0,1,1,.328,1.836A12.663,12.663,0,0,1,363.834,194.779Z" transform="translate(-316.982 -171.914)"/><path class="c" d="M275,202.524l-.012.04a30.776,30.776,0,0,0-1.069,12.137l.265,2.369-4.092-3.817-3.909,1.455.945-3.8a30.776,30.776,0,0,1,4.622-10.177l.521-.748Z" transform="translate(-237.949 -180.364)"/><circle class="e" cx="1.865" cy="1.865" r="1.865" transform="translate(10.259 0.032)"/><circle class="f" cx="1.865" cy="1.865" r="1.865" transform="translate(0 21.482)"/><path class="g" d="M36.663,36.663a.933.933,0,0,1-.885-.638l-.048-.143a2.946,2.946,0,0,0-2.8-2.017.933.933,0,1,1,0-1.865A4.808,4.808,0,0,1,37.5,35.292l.048.143a.933.933,0,0,1-.885,1.228Z" transform="translate(-31.067 -31.968)"/><path class="g" d="M79.493,194.438a.929.929,0,0,1-.506-.15l-.185-.12a2.074,2.074,0,0,0-2.192-.047.933.933,0,0,1-.947-1.607,3.929,3.929,0,0,1,4.153.088l.185.12a.933.933,0,0,1-.508,1.716Z" transform="translate(-69.235 -173.283)"/><path class="h" d="M27.751,85.141l2.88,2.644,3.811-.874-1.624,3.556,2.008,3.354-3.884-.446-2.569,2.946L27.6,92.49,24,90.957l3.4-1.922Z" transform="translate(-24 -78.914)"/><path class="h" d="M82.174,227.375l-.959,3.772,2.564,2.928-3.884.254L77.9,237.673l-1.442-3.615-3.8-.862,2.993-2.488-.353-3.876,3.291,2.078Z" transform="translate(-66.992 -204.086)"/><path class="i" d="M300.471,141.9l-5.455-5.09,5.09-5.456a8.342,8.342,0,0,1,5.455,5.09Z" transform="translate(-263.422 -119.737)"/></svg>'}),s("div",{slot:"title",class:"s-loyalty-header-title"},this.loyaltyProgram.prize_promotion_title),s("div",{slot:"subtitle",class:"s-loyalty-header-subtitle"},this.loyaltyProgram.prize_promotion_description)),s("salla-tabs",{key:this.tabsKey},this.loyaltyProgram.prizes.map((a=>s("salla-tab-header",{slot:"header",name:a.title},s("span",null,a.title)))),this.loyaltyProgram.prizes.map(((a,l)=>s("salla-tab-content",{slot:"content",name:a.title},s("salla-slider",{class:"s-loyalty-slider",loop:!1,"controls-outer":!0,id:"loyalty-popup-slider-"+l,type:"carousel"},s("div",{slot:"items"},a.items.map((a=>this.prizeItem(a))))))))),"FREE_PRODUCT"===this.activeTabType?.toUpperCase()&&(salla.config.get("store.features")||[]).includes("loyalty-system-v2")?s("a",{href:salla.url.get(""),class:"s-loyalty-program-redeem-btn s-button-element s-button-btn s-button-solid s-button-wide s-button-primary s-button-wrap"},salla.lang.get("pages.loyalty_program.shop_now")):s("salla-button",{disabled:!this.selectedItem,width:"wide",class:"s-loyalty-program-redeem-btn",onClick:()=>this.openConfirmation()},salla.lang.get("pages.loyalty_program.exchange_points"))]:s("salla-placeholder",{class:"s-loyalty-placeholder",alignment:"center"},this.errorMessage?s("span",{slot:"description"},this.errorMessage):""))]}};e.style="";export{e as salla_loyalty}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as a,h as s,H as l,a as r}from"./p-CGxZTQ-T.js";import{c as o,f as t,i as e}from"./p-CBPMn35h.js";import{S as i}from"./p-CXRKXFgT.js";import{S as c}from"./p-D1s2kXqL.js";import{S as n}from"./p-QpH8MU22.js";import{S as p}from"./p-cgSL_BIo.js";import{e as d}from"./p-DzAIgzdz.js";import{S as y}from"./p-BkmanTR_.js";import{S as m}from"./p-CciN5Q_x.js";import{L as g}from"./p-BO5AoBAP.js";import{S as h}from"./p-CZRcMGA9.js";const _=class{constructor(s){a(this,s)}render(){return s(l,{key:"19347b04f3e2fc0cb836d9ecd6ebc398826aca95"},s("section",{key:"d992b7e5c6f8ccd14690b63f12de75791751d3b6",class:"s-loyalty-program-hero-container"},s("div",{key:"cf825f4b816979494f33c08383d10ad3b702db81",class:"s-loyalty-program-hero-background",style:{backgroundImage:`url(${this.image})`}},this.image?s("div",{class:"s-loyalty-program-hero-overlay"}):"",s("div",{key:"5343c2d5b4924c75594143390624fb68c2f4e94f",class:{"s-loyalty-program-hero-content":!0,"s-loyalty-program-hero-white":!!this.image,"s-loyalty-program-hero-gray":!this.image}},s("div",{key:"d0e05e9d51c05583ac8a12fa1ad53b328c3eeca7"},s("h1",{key:"05a1b89d759a8391af6c46b4e54df00d2238091f",class:"s-loyalty-program-hero-title"},this.name||s("span",{key:"fc0d510acceccf3995c91b0d4dd920ea7d111e72",style:{color:"transparent",backgroundColor:"#666",borderRadius:"12px"}},"name")),s("p",{key:"41cb521612af4f4a0b3d6fedbcc9bced4f8014f6",class:"s-loyalty-program-hero-description"},this.description||s("span",{key:"498075813fc055f742211520ab75961892ef8bc1",style:{color:"transparent",backgroundColor:"#666",borderRadius:"12px"}},"description"))),s("slot",{key:"44c09c20dd161053f77773ee1ca550df2acb3ad6",name:"action"}))),s("div",{key:"9e0b48babcdb5c36bdadbdfeb8d03008069c2cc6",class:"s-loyalty-program-hero-footer"},s("div",{key:"82659f4658331af320986e78a54222dd4c199281",class:"s-loyalty-program-hero-slot-container"},s("slot",{key:"4565ba9bd31891fc806418ee4440117f2fdb7c56",name:"crosspoint"})))))}};_.style="@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";var b='\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>link1</title>\n<path d="M16.541 19.873c-0.489 0.205-0.825 0.68-0.825 1.233 0 0.184 0.037 0.359 0.105 0.519l-0.003-0.009c0.064 0.151 0.101 0.326 0.101 0.51 0 0.368-0.149 0.702-0.391 0.943v0l-3.771 3.772c-0.483 0.482-1.149 0.781-1.885 0.781s-1.403-0.298-1.885-0.781l-2.829-2.828c-0.483-0.483-0.781-1.149-0.781-1.886s0.299-1.403 0.781-1.886l3.776-3.771c0.244-0.24 0.578-0.388 0.948-0.388 0.183 0 0.357 0.036 0.516 0.102l-0.009-0.003c0.15 0.064 0.325 0.101 0.509 0.101 0.736 0 1.334-0.597 1.334-1.334 0-0.553-0.337-1.027-0.816-1.229l-0.009-0.003c-0.449-0.187-0.97-0.295-1.517-0.295-1.107 0-2.11 0.445-2.841 1.165l0-0-3.776 3.771c-0.963 0.966-1.559 2.299-1.559 3.771s0.596 2.805 1.559 3.771l2.829 2.828c0.965 0.965 2.298 1.562 3.771 1.562s2.806-0.597 3.771-1.562l3.772-3.771c0.723-0.725 1.171-1.726 1.171-2.832 0-0.551-0.111-1.076-0.312-1.555l0.010 0.026c-0.206-0.488-0.68-0.824-1.232-0.824-0.184 0-0.359 0.037-0.518 0.104l0.009-0.003z"></path>\n<path d="M10.343 21.655c0.243 0.238 0.576 0.384 0.943 0.384s0.7-0.147 0.943-0.385l-0 0 10.372-10.371c0.232-0.24 0.374-0.566 0.374-0.926 0-0.736-0.597-1.333-1.333-1.333-0.36 0-0.687 0.143-0.927 0.375l-10.372 10.37c-0.241 0.241-0.39 0.575-0.39 0.943s0.149 0.701 0.39 0.943v0z"></path>\n<path d="M28.728 6.099l-2.828-2.828c-0.966-0.963-2.299-1.559-3.771-1.559s-2.805 0.596-3.771 1.559l-3.772 3.771c-0.723 0.725-1.171 1.726-1.171 2.831 0 0.551 0.111 1.076 0.313 1.554l-0.010-0.026c0.206 0.488 0.68 0.824 1.233 0.824 0.737 0 1.334-0.597 1.334-1.334 0-0.184-0.037-0.359-0.104-0.518l0.003 0.009c-0.063-0.15-0.1-0.324-0.1-0.506 0-0.368 0.149-0.7 0.389-0.942l3.771-3.771c0.483-0.483 1.149-0.781 1.886-0.781s1.403 0.299 1.886 0.781l2.828 2.828c0.483 0.483 0.781 1.149 0.781 1.886s-0.299 1.403-0.781 1.886v0l-3.776 3.764c-0.244 0.24-0.579 0.388-0.948 0.388-0.183 0-0.357-0.036-0.515-0.102l0.009 0.003c-0.151-0.064-0.326-0.101-0.51-0.101-0.737 0-1.334 0.597-1.334 1.334 0 0.553 0.336 1.027 0.815 1.229l0.009 0.003c0.45 0.189 0.974 0.298 1.523 0.298 1.106 0 2.109-0.445 2.838-1.167l3.77-3.77c0.965-0.966 1.562-2.301 1.562-3.775 0-1.471-0.595-2.803-1.557-3.769l0 0z"></path>\n</svg>\n';const f=(...a)=>a.map((a=>"s-loyalty-program-"+a)).join(" "),v={FIRST_ORDER_STORE_FOR_UNIT:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FIX_AMOUNT:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),ORDER_FROM_APP_FOR_UNIT:s("span",{innerHTML:c}),ORDER_FROM_APP_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),ORDER_FROM_APP_FIX_AMOUNT:s("span",{innerHTML:c}),ORDER_FROM_APP_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),CONDITION_RATING_SHIPPING_STORE:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>store</title>\n<path d="M27.25 16c-1.539-0.010-2.899-0.765-3.741-1.921l-0.009-0.013c-0.844 1.178-2.209 1.936-3.75 1.936s-2.906-0.758-3.741-1.922l-0.009-0.014c-0.844 1.178-2.209 1.936-3.75 1.936s-2.906-0.758-3.741-1.922l-0.009-0.014c-0.851 1.169-2.211 1.924-3.748 1.934h-0.002c-2.64-0.075-4.751-2.233-4.751-4.884 0-0.041 0.001-0.081 0.002-0.122l-0 0.006c0-0.086 0.011-0.169 0.032-0.249l-0.002 0.007 2-8c0.112-0.439 0.504-0.758 0.97-0.758h26c0.466 0 0.858 0.319 0.968 0.751l0.002 0.007 2 8c0.019 0.073 0.030 0.156 0.030 0.242v0c0.001 0.034 0.001 0.075 0.001 0.116 0 2.651-2.111 4.809-4.744 4.884l-0.007 0zM23.5 10c0.552 0 1 0.448 1 1v0c-0.006 0.069-0.010 0.149-0.010 0.23 0 1.522 1.234 2.756 2.756 2.756s2.756-1.234 2.756-2.756c0-0.040-0.001-0.080-0.003-0.12l0 0.006-1.782-7.116h-24.436l-1.782 7.116c0 0.003-0 0.007-0 0.011 0 1.544 1.217 2.804 2.744 2.873l0.006 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1s1 0.448 1 1v0c-0.002 0.035-0.002 0.076-0.002 0.117 0 1.547 1.217 2.81 2.746 2.883l0.007 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1s1 0.448 1 1v0c-0.002 0.035-0.002 0.076-0.002 0.117 0 1.547 1.217 2.81 2.746 2.883l0.007 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1v0zM13 30h-10c-0.552 0-1-0.448-1-1v0-14.46c0-0.552 0.448-1 1-1s1 0.448 1 1v0 13.46h9c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM29 30h-10c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h9v-13.46c0-0.552 0.448-1 1-1s1 0.448 1 1v0 14.46c0 0.552-0.448 1-1 1v0zM19 30c-0.552 0-1-0.448-1-1v0-7h-4v7c0 0.552-0.448 1-1 1s-1-0.448-1-1v0-8c0-0.552 0.448-1 1-1v0h6c0.552 0 1 0.448 1 1v0 8c0 0.552-0.448 1-1 1v0z"></path>\n</svg>\n'}),CONDITION_RATING_PRODUCT:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>chat-conversation-alt</title>\n<path d="M17.333 14.667h-8c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h8c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM22.667 8h-13.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h13.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM28 0h-24c-2.205 0-4 1.795-4 4v17.333c0 2.205 1.795 4 4 4h6.027l4.932 6.167c0.253 0.316 0.636 0.5 1.041 0.5s0.788-0.184 1.041-0.5l4.932-6.167h6.027c2.205 0 4-1.795 4-4v-17.333c0-2.205-1.795-4-4-4zM29.333 21.333c0 0.735-0.597 1.333-1.333 1.333h-6.667c-0.405 0-0.788 0.184-1.041 0.5l-4.292 5.365-4.292-5.365c-0.253-0.316-0.636-0.5-1.041-0.5h-6.667c-0.736 0-1.333-0.599-1.333-1.333v-17.333c0-0.735 0.597-1.333 1.333-1.333h24c0.736 0 1.333 0.599 1.333 1.333z"></path>\n</svg>\n'}),CONDITION_RATING_SHIPPING_COMPANY:s("span",{innerHTML:h}),CONDITION_COMPLETE_PERSONAL_INFORMATION_BIRTHDAY:s("span",{innerHTML:y}),CONDITION_COMPLETE_PERSONAL_INFORMATION_EMAIL:s("span",{innerHTML:d}),CONDITION_COMPLETE_PERSONAL_INFORMATION_MOBILE:s("span",{innerHTML:m}),CONDITION_COMPLETE_PERSONAL_INFORMATION_GENDER:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>user</title>\n<path d="M16 16c4.412 0 8-3.588 8-8s-3.588-8-8-8-8 3.588-8 8 3.588 8 8 8zM16 2.667c2.941 0 5.333 2.392 5.333 5.333s-2.392 5.333-5.333 5.333-5.333-2.392-5.333-5.333 2.392-5.333 5.333-5.333zM16 18.667c-7.476 0-13.333 3.66-13.333 8.333v3.667c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-3.667c0-3.019 4.984-5.667 10.667-5.667s10.667 2.648 10.667 5.667v3.667c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-3.667c0-4.673-5.857-8.333-13.333-8.333z"></path>\n</svg>\n'}),CONDITION_BUY_FROM_STORE_FOR_UNIT:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FIX_AMOUNT:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),order_from_pos_1:s("span",{innerHTML:m}),order_from_pos_2:s("span",{innerHTML:g}),buy_from_pos_1:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>map-location</title>\n<path d="M24.667 8.013v-0.013c0-0.736-0.597-1.327-1.333-1.327s-1.333 0.604-1.333 1.34 0.597 1.333 1.333 1.333 1.333-0.597 1.333-1.333zM30.667 18.667c-0.736 0-1.333 0.596-1.333 1.333v8.701l-7.879-3.135c-0.308-0.127-0.651-0.127-0.961-0.011l-9.817 3.684-8.009-3.121v-20.351l7.633 2.181c0.708 0.205 1.447-0.209 1.648-0.916 0.203-0.708-0.207-1.447-0.915-1.648l-9.333-2.667c-0.403-0.115-0.836-0.035-1.169 0.217-0.335 0.252-0.531 0.645-0.531 1.064v23.029c0 0.549 0.337 1.043 0.849 1.243l9.333 3.637c0.305 0.12 0.645 0.12 0.952 0.007l9.812-3.68 9.227 3.669c0.16 0.064 0.327 0.095 0.493 0.095 0.263 0 0.525-0.079 0.749-0.231 0.365-0.247 0.584-0.661 0.584-1.103v-10.667c0-0.737-0.597-1.333-1.333-1.333zM23.333 22.667c0.395 0 0.769-0.175 1.023-0.476 0.783-0.935 7.644-9.241 7.644-13.357 0-4.389-2.976-8.833-8.667-8.833-5.689 0-8.667 4.444-8.667 8.833 0 4.116 6.863 12.423 7.645 13.357 0.253 0.301 0.628 0.476 1.021 0.476zM23.333 2.667c4.145 0 6 3.097 6 6.167 0 2.095-3.347 7.027-6 10.385-2.653-3.36-6-8.291-6-10.385 0-3.069 1.856-6.167 6-6.167z"></path>\n</svg>\n'}),buy_from_pos_2:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FOR_UNIT:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FIX_AMOUNT:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:m}),affiliate_link_1:s("span",{innerHTML:b}),affiliate_link_2:s("span",{innerHTML:n}),affiliate_link_3:s("span",{innerHTML:c}),CONDITION_AFFILIATE_LINK:s("span",{innerHTML:b})},O=class{constructor(s){a(this,s)}async handleShareAction(a,s,l){const r=window.matchMedia("(min-width: 1024px)").matches;if("share"in navigator&&!r)try{return void await navigator.share({title:document.title,url:s.url})}catch(a){}const o=a.target,t=o.textContent,e=l;if("clipboard"in navigator)try{return await navigator.clipboard.writeText(s.url),o.textContent=e,void setTimeout((()=>{o.textContent=t}),5e3)}catch(a){}const i=document.createElement("textarea");i.value=s.url,i.style.opacity="0",this.host.appendChild(i),i.focus(),i.select();try{if(!document.execCommand("copy"))throw new Error("Failed to copy URL to clipboard");o.textContent=e,setTimeout((()=>{o.textContent=t}),5e3)}catch(a){}this.host.removeChild(i)}handleAction(a,s){if(a.stopPropagation(),s.is_completed)a.preventDefault();else switch(s.type){case"profile":case"rating":return salla.config.isUser()?void 0:(a.preventDefault(),void o((()=>salla.event.dispatch("login::open"))));case"share":return salla.config.isUser()?(a.preventDefault(),void this.handleShareAction(a,s,salla.lang.get("pages.loyalty_program.copied"))):(a.preventDefault(),void o((()=>salla.event.dispatch("login::open"))))}}getSubHeading(a){switch(a.type){case"share":return s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_start")),s("p",null,salla.lang.get("pages.loyalty_program.three_simple_steps")));case"pos":return s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_start")),s("p",null,salla.lang.get("pages.loyalty_program.two_simple_steps")));default:return""}}getDetails(a){return a.conditions.filter((a=>a.key.endsWith("_BY_CATEGORIES"))).length>0?s("div",null,s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_use")),s("p",null,salla.lang.get("pages.loyalty_program.how_to_use_steps"))),s("div",{class:"s-loyalty-program-points-modal-details"},a.conditions.map((l=>s("div",{class:"s-loyalty-program-points-chains-wrapper mt-5 mb-5"},s("div",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[l.key])),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",{innerHTML:i}),t(l.points,e(a))),s("p",{class:"s-loyalty-program-points-chain-description"},l.name),s("div",null,this.getCategoriesJsx(l.value))))))))):s("div",{class:"s-loyalty-program-points-modal-details"},s("div",{class:"s-loyalty-program-points-chains-wrapper mt-5 mb-5"},s("ul",{class:"s-loyalty-program-points-chain-list"},this.point.conditions.map((l=>s("li",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[l.key]),s("div",{class:"s-loyalty-program-points-chain-line"})),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",{innerHTML:i}),t(l.points,e(a),null!=l.value)),s("p",{class:"s-loyalty-program-points-chain-description"},l.name))))))))}getCategoriesJsx(a){return a.length?s("ul",{class:f("reward-details-categories-list")},a.map((a=>s("li",null,s("a",{href:a.url,class:f("reward-details-categories-item")},s("span",{innerHTML:p}),s("span",{class:f("reward-details-categories-item-content")},a.name)))))):""}getTrailingContent(a){switch(a.type){case"first_order":case"profile":return s("p",{class:"s-loyalty-program-points-completed-note"},salla.lang.get("pages.loyalty_program.one_time_points"));default:return a.is_completed?s("p",{class:"s-loyalty-program-points-completed-note"},salla.lang.get("pages.loyalty_program.one_time_points")):""}}render(){return s("div",{key:"70b7b8ad88f89903726e70b795c2eca98366f601"},s("div",{key:"32a7d28c05a72d1e2901775ff2148553d70b9c87",onClick:()=>o((()=>this.modal.open())),class:"s-loyalty-program-point-wrapper"},s("div",{key:"bc8e79fdf21fb641766b3463e792005decf58fd9",class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-sm s-loyalty-program-circle-variant-fill"},s("span",{key:"75e18d5d494d5b97ee12827230641103e934709c",class:this.point.icon})),s("div",{key:"54e40ceeb2cca3248aaa716b85c9ce8d4a41f8ce",class:"s-loyalty-program-points-badge-mobile"},s("salla-badge",{key:"c6d9718b0a2813cba6f59f2ad019f168ec1cc376",size:"xs",bg:"transparent"},s("span",{key:"33ac630c37139af3dbae295c56c4a5c7aa74d309",innerHTML:i}),t(this.point))),s("div",{key:"3d66b854b326090357f2e8320d8a8ab55cbad146",class:"s-loyalty-program-points-badge-desktop"},s("salla-badge",{key:"bf1b37473fa7f04ca76b66be840e918c74ae44ed",size:"sm",bg:"transparent"},s("span",{key:"47f6c81b0e4805606bba918f23a2b94fe535e18e",innerHTML:i}),t(this.point))),s("p",{key:"8cfacb01351d035968e5886bcc18086ef6c52ec5",class:"s-loyalty-program-point-description"},this.point.name),this.point.is_completed?s("a",{class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},salla.lang.get("pages.loyalty_program.completed")):s("a",{href:this.point.url,onClick:a=>this.handleAction(a,this.point),class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},this.point.description)),s("salla-modal",{key:"bf3a0db144b8a71c7de03bffa871c83432645cca",ref:a=>this.modal=a,class:"s-loyalty-program-point-modal s-loyalty-program-modal",width:window.matchMedia("(min-width: 768px)").matches?"md":"sm",noPadding:!0},s("div",{key:"9e1c30640a2b21d83648a9829cb3d77694d40f43",class:"s-loyalty-program-points-modal-header"},s("h1",{key:"d27cf7911ca8e895d04b82dc786be5d70549b2e9",class:"s-loyalty-program-points-modal-info"},this.point.name)),s("div",{key:"3b32920aee9989499c97e284a8b2689519a531c9",class:"s-loyalty-program-modal-scrollable-content"},s("div",{key:"65f13ad9b7d9de8f5e5057f4b168e4276ec752de",class:"s-loyalty-program-points-modal-main"},s("div",{key:"b52d6b39659ad570321ed464cbd28679572e349f",class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xl s-loyalty-program-circle-variant-fill"},s("span",{key:"18fcd876ee08265964fabd469ea2c0f62ee6e87b",class:this.point.icon})),s("salla-badge",{key:"ce5e68c6e7b93b4b972b912db7a8027a0d7bb719",size:"sm",bg:"light"},s("span",{key:"6325ab966bfc6abb67f08b6f727b41704328ae5a",innerHTML:i}),s("span",{key:"3278b4faf5a0c51ca2a4d55f544b756827f8592f",class:"s-loyalty-program-points-badge-points"},t(this.point)))),this.getSubHeading(this.point),!!this.point.steps&&Object.keys(this.point.steps).length>0&&s("div",{key:"37a98c643851f1c772584c738c98902e0e960a52",class:"s-loyalty-program-points-modal-details"},s("div",{key:"e558373c2726934c68bd1f50a427984756afd0d1",class:"s-loyalty-program-points-chains-wrapper"},s("ul",{key:"018fb529e90d9adc1fd186e06120b175975e0ae3",class:"s-loyalty-program-points-chain-list"},Object.values(this.point.steps).map(((a,l)=>{const r=l===Object.values(this.point.steps).length-1;return s("li",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[a.key]),!r&&s("div",{class:"s-loyalty-program-points-chain-line"})),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",null,salla.lang.get(`pages.loyalty_program.step_${l+1}`))),s("p",{class:"s-loyalty-program-points-chain-description"},a.title||a.name)))}))))),this.getDetails(this.point),s("div",{key:"dea38fc445b304630d0b4baa122a5a95f35f0d2c",class:"s-loyalty-program-points-modal-details"},this.getTrailingContent(this.point)),this.point.branches?.length?s("div",{class:"s-loyalty-program-points-modal-list"},s("div",{class:"s-loyalty-program-point-details-branches"},s("h2",null,salla.lang.get("pages.loyalty_program.branches")),s("p",null,salla.lang.get("pages.loyalty_program.shop_from_branches"))),s("div",{class:"s-loyalty-program-points-modal-list-wrapper"},s("ul",null,this.point.branches.map((a=>s("li",{class:"s-loyalty-program-points-modal-list-item"},s("p",null,a.name),s("salla-badge",{size:"sm",bg:"transparent"},s("span",{innerHTML:i}),s("a",{href:a.location?`https://www.google.com/maps?q=${a.location.lat},${a.location.lon}`:"#",target:"_blank",rel:"noopener noreferrer"},a.address_description)))))))):""),s("div",{key:"a8fbe3f878510dd27ccbe91c0d0253ed17f77fee",class:"s-loyalty-program-points-modal-action"},s("a",{key:"74e883a658f22fd3f26291efeba30ccc59f52baa",href:this.point.url,onClick:a=>(a.stopPropagation(),this.handleAction(a,this.point)),class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},this.point.is_completed?salla.lang.get("pages.loyalty_program.completed"):this.point.description))))}get host(){return r(this)}};O.style="@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";export{_ as salla_loyalty_hero,O as salla_loyalty_point}
|
|
4
|
+
import{r as a,h as s,H as l,a as r}from"./p-Crijf68j.js";import{c as o,f as t,i as e}from"./p-D97pUIlk.js";import{S as i}from"./p-CXRKXFgT.js";import{S as c}from"./p-D1s2kXqL.js";import{S as n}from"./p-QpH8MU22.js";import{S as p}from"./p-cgSL_BIo.js";import{e as d}from"./p-DzAIgzdz.js";import{S as y}from"./p-BkmanTR_.js";import{S as m}from"./p-CciN5Q_x.js";import{L as g}from"./p-BO5AoBAP.js";import{S as h}from"./p-CZRcMGA9.js";const _=class{constructor(s){a(this,s)}render(){return s(l,{key:"19347b04f3e2fc0cb836d9ecd6ebc398826aca95"},s("section",{key:"d992b7e5c6f8ccd14690b63f12de75791751d3b6",class:"s-loyalty-program-hero-container"},s("div",{key:"cf825f4b816979494f33c08383d10ad3b702db81",class:"s-loyalty-program-hero-background",style:{backgroundImage:`url(${this.image})`}},this.image?s("div",{class:"s-loyalty-program-hero-overlay"}):"",s("div",{key:"5343c2d5b4924c75594143390624fb68c2f4e94f",class:{"s-loyalty-program-hero-content":!0,"s-loyalty-program-hero-white":!!this.image,"s-loyalty-program-hero-gray":!this.image}},s("div",{key:"d0e05e9d51c05583ac8a12fa1ad53b328c3eeca7"},s("h1",{key:"05a1b89d759a8391af6c46b4e54df00d2238091f",class:"s-loyalty-program-hero-title"},this.name||s("span",{key:"fc0d510acceccf3995c91b0d4dd920ea7d111e72",style:{color:"transparent",backgroundColor:"#666",borderRadius:"12px"}},"name")),s("p",{key:"41cb521612af4f4a0b3d6fedbcc9bced4f8014f6",class:"s-loyalty-program-hero-description"},this.description||s("span",{key:"498075813fc055f742211520ab75961892ef8bc1",style:{color:"transparent",backgroundColor:"#666",borderRadius:"12px"}},"description"))),s("slot",{key:"44c09c20dd161053f77773ee1ca550df2acb3ad6",name:"action"}))),s("div",{key:"9e0b48babcdb5c36bdadbdfeb8d03008069c2cc6",class:"s-loyalty-program-hero-footer"},s("div",{key:"82659f4658331af320986e78a54222dd4c199281",class:"s-loyalty-program-hero-slot-container"},s("slot",{key:"4565ba9bd31891fc806418ee4440117f2fdb7c56",name:"crosspoint"})))))}};_.style="@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";var b='\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>link1</title>\n<path d="M16.541 19.873c-0.489 0.205-0.825 0.68-0.825 1.233 0 0.184 0.037 0.359 0.105 0.519l-0.003-0.009c0.064 0.151 0.101 0.326 0.101 0.51 0 0.368-0.149 0.702-0.391 0.943v0l-3.771 3.772c-0.483 0.482-1.149 0.781-1.885 0.781s-1.403-0.298-1.885-0.781l-2.829-2.828c-0.483-0.483-0.781-1.149-0.781-1.886s0.299-1.403 0.781-1.886l3.776-3.771c0.244-0.24 0.578-0.388 0.948-0.388 0.183 0 0.357 0.036 0.516 0.102l-0.009-0.003c0.15 0.064 0.325 0.101 0.509 0.101 0.736 0 1.334-0.597 1.334-1.334 0-0.553-0.337-1.027-0.816-1.229l-0.009-0.003c-0.449-0.187-0.97-0.295-1.517-0.295-1.107 0-2.11 0.445-2.841 1.165l0-0-3.776 3.771c-0.963 0.966-1.559 2.299-1.559 3.771s0.596 2.805 1.559 3.771l2.829 2.828c0.965 0.965 2.298 1.562 3.771 1.562s2.806-0.597 3.771-1.562l3.772-3.771c0.723-0.725 1.171-1.726 1.171-2.832 0-0.551-0.111-1.076-0.312-1.555l0.010 0.026c-0.206-0.488-0.68-0.824-1.232-0.824-0.184 0-0.359 0.037-0.518 0.104l0.009-0.003z"></path>\n<path d="M10.343 21.655c0.243 0.238 0.576 0.384 0.943 0.384s0.7-0.147 0.943-0.385l-0 0 10.372-10.371c0.232-0.24 0.374-0.566 0.374-0.926 0-0.736-0.597-1.333-1.333-1.333-0.36 0-0.687 0.143-0.927 0.375l-10.372 10.37c-0.241 0.241-0.39 0.575-0.39 0.943s0.149 0.701 0.39 0.943v0z"></path>\n<path d="M28.728 6.099l-2.828-2.828c-0.966-0.963-2.299-1.559-3.771-1.559s-2.805 0.596-3.771 1.559l-3.772 3.771c-0.723 0.725-1.171 1.726-1.171 2.831 0 0.551 0.111 1.076 0.313 1.554l-0.010-0.026c0.206 0.488 0.68 0.824 1.233 0.824 0.737 0 1.334-0.597 1.334-1.334 0-0.184-0.037-0.359-0.104-0.518l0.003 0.009c-0.063-0.15-0.1-0.324-0.1-0.506 0-0.368 0.149-0.7 0.389-0.942l3.771-3.771c0.483-0.483 1.149-0.781 1.886-0.781s1.403 0.299 1.886 0.781l2.828 2.828c0.483 0.483 0.781 1.149 0.781 1.886s-0.299 1.403-0.781 1.886v0l-3.776 3.764c-0.244 0.24-0.579 0.388-0.948 0.388-0.183 0-0.357-0.036-0.515-0.102l0.009 0.003c-0.151-0.064-0.326-0.101-0.51-0.101-0.737 0-1.334 0.597-1.334 1.334 0 0.553 0.336 1.027 0.815 1.229l0.009 0.003c0.45 0.189 0.974 0.298 1.523 0.298 1.106 0 2.109-0.445 2.838-1.167l3.77-3.77c0.965-0.966 1.562-2.301 1.562-3.775 0-1.471-0.595-2.803-1.557-3.769l0 0z"></path>\n</svg>\n';const f=(...a)=>a.map((a=>"s-loyalty-program-"+a)).join(" "),v={FIRST_ORDER_STORE_FOR_UNIT:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FIX_AMOUNT:s("span",{innerHTML:c}),FIRST_ORDER_STORE_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),ORDER_FROM_APP_FOR_UNIT:s("span",{innerHTML:c}),ORDER_FROM_APP_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),ORDER_FROM_APP_FIX_AMOUNT:s("span",{innerHTML:c}),ORDER_FROM_APP_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),CONDITION_RATING_SHIPPING_STORE:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>store</title>\n<path d="M27.25 16c-1.539-0.010-2.899-0.765-3.741-1.921l-0.009-0.013c-0.844 1.178-2.209 1.936-3.75 1.936s-2.906-0.758-3.741-1.922l-0.009-0.014c-0.844 1.178-2.209 1.936-3.75 1.936s-2.906-0.758-3.741-1.922l-0.009-0.014c-0.851 1.169-2.211 1.924-3.748 1.934h-0.002c-2.64-0.075-4.751-2.233-4.751-4.884 0-0.041 0.001-0.081 0.002-0.122l-0 0.006c0-0.086 0.011-0.169 0.032-0.249l-0.002 0.007 2-8c0.112-0.439 0.504-0.758 0.97-0.758h26c0.466 0 0.858 0.319 0.968 0.751l0.002 0.007 2 8c0.019 0.073 0.030 0.156 0.030 0.242v0c0.001 0.034 0.001 0.075 0.001 0.116 0 2.651-2.111 4.809-4.744 4.884l-0.007 0zM23.5 10c0.552 0 1 0.448 1 1v0c-0.006 0.069-0.010 0.149-0.010 0.23 0 1.522 1.234 2.756 2.756 2.756s2.756-1.234 2.756-2.756c0-0.040-0.001-0.080-0.003-0.12l0 0.006-1.782-7.116h-24.436l-1.782 7.116c0 0.003-0 0.007-0 0.011 0 1.544 1.217 2.804 2.744 2.873l0.006 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1s1 0.448 1 1v0c-0.002 0.035-0.002 0.076-0.002 0.117 0 1.547 1.217 2.81 2.746 2.883l0.007 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1s1 0.448 1 1v0c-0.002 0.035-0.002 0.076-0.002 0.117 0 1.547 1.217 2.81 2.746 2.883l0.007 0c1.535-0.073 2.752-1.336 2.752-2.883 0-0.041-0.001-0.082-0.003-0.123l0 0.006c0-0.552 0.448-1 1-1v0zM13 30h-10c-0.552 0-1-0.448-1-1v0-14.46c0-0.552 0.448-1 1-1s1 0.448 1 1v0 13.46h9c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM29 30h-10c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h9v-13.46c0-0.552 0.448-1 1-1s1 0.448 1 1v0 14.46c0 0.552-0.448 1-1 1v0zM19 30c-0.552 0-1-0.448-1-1v0-7h-4v7c0 0.552-0.448 1-1 1s-1-0.448-1-1v0-8c0-0.552 0.448-1 1-1v0h6c0.552 0 1 0.448 1 1v0 8c0 0.552-0.448 1-1 1v0z"></path>\n</svg>\n'}),CONDITION_RATING_PRODUCT:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>chat-conversation-alt</title>\n<path d="M17.333 14.667h-8c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h8c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM22.667 8h-13.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h13.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM28 0h-24c-2.205 0-4 1.795-4 4v17.333c0 2.205 1.795 4 4 4h6.027l4.932 6.167c0.253 0.316 0.636 0.5 1.041 0.5s0.788-0.184 1.041-0.5l4.932-6.167h6.027c2.205 0 4-1.795 4-4v-17.333c0-2.205-1.795-4-4-4zM29.333 21.333c0 0.735-0.597 1.333-1.333 1.333h-6.667c-0.405 0-0.788 0.184-1.041 0.5l-4.292 5.365-4.292-5.365c-0.253-0.316-0.636-0.5-1.041-0.5h-6.667c-0.736 0-1.333-0.599-1.333-1.333v-17.333c0-0.735 0.597-1.333 1.333-1.333h24c0.736 0 1.333 0.599 1.333 1.333z"></path>\n</svg>\n'}),CONDITION_RATING_SHIPPING_COMPANY:s("span",{innerHTML:h}),CONDITION_COMPLETE_PERSONAL_INFORMATION_BIRTHDAY:s("span",{innerHTML:y}),CONDITION_COMPLETE_PERSONAL_INFORMATION_EMAIL:s("span",{innerHTML:d}),CONDITION_COMPLETE_PERSONAL_INFORMATION_MOBILE:s("span",{innerHTML:m}),CONDITION_COMPLETE_PERSONAL_INFORMATION_GENDER:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>user</title>\n<path d="M16 16c4.412 0 8-3.588 8-8s-3.588-8-8-8-8 3.588-8 8 3.588 8 8 8zM16 2.667c2.941 0 5.333 2.392 5.333 5.333s-2.392 5.333-5.333 5.333-5.333-2.392-5.333-5.333 2.392-5.333 5.333-5.333zM16 18.667c-7.476 0-13.333 3.66-13.333 8.333v3.667c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-3.667c0-3.019 4.984-5.667 10.667-5.667s10.667 2.648 10.667 5.667v3.667c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-3.667c0-4.673-5.857-8.333-13.333-8.333z"></path>\n</svg>\n'}),CONDITION_BUY_FROM_STORE_FOR_UNIT:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FIX_AMOUNT:s("span",{innerHTML:c}),CONDITION_BUY_FROM_STORE_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:c}),order_from_pos_1:s("span",{innerHTML:m}),order_from_pos_2:s("span",{innerHTML:g}),buy_from_pos_1:s("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>map-location</title>\n<path d="M24.667 8.013v-0.013c0-0.736-0.597-1.327-1.333-1.327s-1.333 0.604-1.333 1.34 0.597 1.333 1.333 1.333 1.333-0.597 1.333-1.333zM30.667 18.667c-0.736 0-1.333 0.596-1.333 1.333v8.701l-7.879-3.135c-0.308-0.127-0.651-0.127-0.961-0.011l-9.817 3.684-8.009-3.121v-20.351l7.633 2.181c0.708 0.205 1.447-0.209 1.648-0.916 0.203-0.708-0.207-1.447-0.915-1.648l-9.333-2.667c-0.403-0.115-0.836-0.035-1.169 0.217-0.335 0.252-0.531 0.645-0.531 1.064v23.029c0 0.549 0.337 1.043 0.849 1.243l9.333 3.637c0.305 0.12 0.645 0.12 0.952 0.007l9.812-3.68 9.227 3.669c0.16 0.064 0.327 0.095 0.493 0.095 0.263 0 0.525-0.079 0.749-0.231 0.365-0.247 0.584-0.661 0.584-1.103v-10.667c0-0.737-0.597-1.333-1.333-1.333zM23.333 22.667c0.395 0 0.769-0.175 1.023-0.476 0.783-0.935 7.644-9.241 7.644-13.357 0-4.389-2.976-8.833-8.667-8.833-5.689 0-8.667 4.444-8.667 8.833 0 4.116 6.863 12.423 7.645 13.357 0.253 0.301 0.628 0.476 1.021 0.476zM23.333 2.667c4.145 0 6 3.097 6 6.167 0 2.095-3.347 7.027-6 10.385-2.653-3.36-6-8.291-6-10.385 0-3.069 1.856-6.167 6-6.167z"></path>\n</svg>\n'}),buy_from_pos_2:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FOR_UNIT:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FOR_UNIT_BY_CATEGORIES:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FIX_AMOUNT:s("span",{innerHTML:m}),CONDITION_BUY_FROM_POS_FIX_AMOUNT_BY_CATEGORIES:s("span",{innerHTML:m}),affiliate_link_1:s("span",{innerHTML:b}),affiliate_link_2:s("span",{innerHTML:n}),affiliate_link_3:s("span",{innerHTML:c}),CONDITION_AFFILIATE_LINK:s("span",{innerHTML:b})},O=class{constructor(s){a(this,s)}async handleShareAction(a,s,l){const r=window.matchMedia("(min-width: 1024px)").matches;if("share"in navigator&&!r)try{return void await navigator.share({title:document.title,url:s.url})}catch(a){}const o=a.target,t=o.textContent,e=l;if("clipboard"in navigator)try{return await navigator.clipboard.writeText(s.url),o.textContent=e,void setTimeout((()=>{o.textContent=t}),5e3)}catch(a){}const i=document.createElement("textarea");i.value=s.url,i.style.opacity="0",this.host.appendChild(i),i.focus(),i.select();try{if(!document.execCommand("copy"))throw new Error("Failed to copy URL to clipboard");o.textContent=e,setTimeout((()=>{o.textContent=t}),5e3)}catch(a){}this.host.removeChild(i)}handleAction(a,s){if(a.stopPropagation(),s.is_completed)a.preventDefault();else switch(s.type){case"profile":case"rating":return salla.config.isUser()?void 0:(a.preventDefault(),void o((()=>salla.event.dispatch("login::open"))));case"share":return salla.config.isUser()?(a.preventDefault(),void this.handleShareAction(a,s,salla.lang.get("pages.loyalty_program.copied"))):(a.preventDefault(),void o((()=>salla.event.dispatch("login::open"))))}}getSubHeading(a){switch(a.type){case"share":return s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_start")),s("p",null,salla.lang.get("pages.loyalty_program.three_simple_steps")));case"pos":return s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_start")),s("p",null,salla.lang.get("pages.loyalty_program.two_simple_steps")));default:return""}}getDetails(a){return a.conditions.filter((a=>a.key.endsWith("_BY_CATEGORIES"))).length>0?s("div",null,s("div",{class:"s-loyalty-program-point-subheading"},s("h2",null,salla.lang.get("pages.loyalty_program.how_to_use")),s("p",null,salla.lang.get("pages.loyalty_program.how_to_use_steps"))),s("div",{class:"s-loyalty-program-points-modal-details"},a.conditions.map((l=>s("div",{class:"s-loyalty-program-points-chains-wrapper mt-5 mb-5"},s("div",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[l.key])),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",{innerHTML:i}),t(l.points,e(a))),s("p",{class:"s-loyalty-program-points-chain-description"},l.name),s("div",null,this.getCategoriesJsx(l.value))))))))):s("div",{class:"s-loyalty-program-points-modal-details"},s("div",{class:"s-loyalty-program-points-chains-wrapper mt-5 mb-5"},s("ul",{class:"s-loyalty-program-points-chain-list"},this.point.conditions.map((l=>s("li",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[l.key]),s("div",{class:"s-loyalty-program-points-chain-line"})),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",{innerHTML:i}),t(l.points,e(a),null!=l.value)),s("p",{class:"s-loyalty-program-points-chain-description"},l.name))))))))}getCategoriesJsx(a){return a.length?s("ul",{class:f("reward-details-categories-list")},a.map((a=>s("li",null,s("a",{href:a.url,class:f("reward-details-categories-item")},s("span",{innerHTML:p}),s("span",{class:f("reward-details-categories-item-content")},a.name)))))):""}getTrailingContent(a){switch(a.type){case"first_order":case"profile":return s("p",{class:"s-loyalty-program-points-completed-note"},salla.lang.get("pages.loyalty_program.one_time_points"));default:return a.is_completed?s("p",{class:"s-loyalty-program-points-completed-note"},salla.lang.get("pages.loyalty_program.one_time_points")):""}}render(){return s("div",{key:"70b7b8ad88f89903726e70b795c2eca98366f601"},s("div",{key:"32a7d28c05a72d1e2901775ff2148553d70b9c87",onClick:()=>o((()=>this.modal.open())),class:"s-loyalty-program-point-wrapper"},s("div",{key:"bc8e79fdf21fb641766b3463e792005decf58fd9",class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-sm s-loyalty-program-circle-variant-fill"},s("span",{key:"75e18d5d494d5b97ee12827230641103e934709c",class:this.point.icon})),s("div",{key:"54e40ceeb2cca3248aaa716b85c9ce8d4a41f8ce",class:"s-loyalty-program-points-badge-mobile"},s("salla-badge",{key:"c6d9718b0a2813cba6f59f2ad019f168ec1cc376",size:"xs",bg:"transparent"},s("span",{key:"33ac630c37139af3dbae295c56c4a5c7aa74d309",innerHTML:i}),t(this.point))),s("div",{key:"3d66b854b326090357f2e8320d8a8ab55cbad146",class:"s-loyalty-program-points-badge-desktop"},s("salla-badge",{key:"bf1b37473fa7f04ca76b66be840e918c74ae44ed",size:"sm",bg:"transparent"},s("span",{key:"47f6c81b0e4805606bba918f23a2b94fe535e18e",innerHTML:i}),t(this.point))),s("p",{key:"8cfacb01351d035968e5886bcc18086ef6c52ec5",class:"s-loyalty-program-point-description"},this.point.name),this.point.is_completed?s("a",{class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},salla.lang.get("pages.loyalty_program.completed")):s("a",{href:this.point.url,onClick:a=>this.handleAction(a,this.point),class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},this.point.description)),s("salla-modal",{key:"bf3a0db144b8a71c7de03bffa871c83432645cca",ref:a=>this.modal=a,class:"s-loyalty-program-point-modal s-loyalty-program-modal",width:window.matchMedia("(min-width: 768px)").matches?"md":"sm",noPadding:!0},s("div",{key:"9e1c30640a2b21d83648a9829cb3d77694d40f43",class:"s-loyalty-program-points-modal-header"},s("h1",{key:"d27cf7911ca8e895d04b82dc786be5d70549b2e9",class:"s-loyalty-program-points-modal-info"},this.point.name)),s("div",{key:"3b32920aee9989499c97e284a8b2689519a531c9",class:"s-loyalty-program-modal-scrollable-content"},s("div",{key:"65f13ad9b7d9de8f5e5057f4b168e4276ec752de",class:"s-loyalty-program-points-modal-main"},s("div",{key:"b52d6b39659ad570321ed464cbd28679572e349f",class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xl s-loyalty-program-circle-variant-fill"},s("span",{key:"18fcd876ee08265964fabd469ea2c0f62ee6e87b",class:this.point.icon})),s("salla-badge",{key:"ce5e68c6e7b93b4b972b912db7a8027a0d7bb719",size:"sm",bg:"light"},s("span",{key:"6325ab966bfc6abb67f08b6f727b41704328ae5a",innerHTML:i}),s("span",{key:"3278b4faf5a0c51ca2a4d55f544b756827f8592f",class:"s-loyalty-program-points-badge-points"},t(this.point)))),this.getSubHeading(this.point),!!this.point.steps&&Object.keys(this.point.steps).length>0&&s("div",{key:"37a98c643851f1c772584c738c98902e0e960a52",class:"s-loyalty-program-points-modal-details"},s("div",{key:"e558373c2726934c68bd1f50a427984756afd0d1",class:"s-loyalty-program-points-chains-wrapper"},s("ul",{key:"018fb529e90d9adc1fd186e06120b175975e0ae3",class:"s-loyalty-program-points-chain-list"},Object.values(this.point.steps).map(((a,l)=>{const r=l===Object.values(this.point.steps).length-1;return s("li",{class:"s-loyalty-program-points-chain-item"},s("div",{class:"s-loyalty-program-points-chain-icon"},s("div",{class:"s-loyalty-program-circle-base s-loyalty-program-circle-size-xs s-loyalty-program-circle-variant-outline-primary"},v[a.key]),!r&&s("div",{class:"s-loyalty-program-points-chain-line"})),s("div",{class:"s-loyalty-program-points-chain-content"},s("salla-badge",{size:"xs",color:"primary-900",bg:"primary-100"},s("span",null,salla.lang.get(`pages.loyalty_program.step_${l+1}`))),s("p",{class:"s-loyalty-program-points-chain-description"},a.title||a.name)))}))))),this.getDetails(this.point),s("div",{key:"dea38fc445b304630d0b4baa122a5a95f35f0d2c",class:"s-loyalty-program-points-modal-details"},this.getTrailingContent(this.point)),this.point.branches?.length?s("div",{class:"s-loyalty-program-points-modal-list"},s("div",{class:"s-loyalty-program-point-details-branches"},s("h2",null,salla.lang.get("pages.loyalty_program.branches")),s("p",null,salla.lang.get("pages.loyalty_program.shop_from_branches"))),s("div",{class:"s-loyalty-program-points-modal-list-wrapper"},s("ul",null,this.point.branches.map((a=>s("li",{class:"s-loyalty-program-points-modal-list-item"},s("p",null,a.name),s("salla-badge",{size:"sm",bg:"transparent"},s("span",{innerHTML:i}),s("a",{href:a.location?`https://www.google.com/maps?q=${a.location.lat},${a.location.lon}`:"#",target:"_blank",rel:"noopener noreferrer"},a.address_description)))))))):""),s("div",{key:"a8fbe3f878510dd27ccbe91c0d0253ed17f77fee",class:"s-loyalty-program-points-modal-action"},s("a",{key:"74e883a658f22fd3f26291efeba30ccc59f52baa",href:this.point.url,onClick:a=>(a.stopPropagation(),this.handleAction(a,this.point)),class:{"s-loyalty-program-points-action":!0,"s-loyalty-program-points-action-completed":this.point.is_completed,"s-loyalty-program-points-action-incomplete":!this.point.is_completed}},this.point.is_completed?salla.lang.get("pages.loyalty_program.completed"):this.point.description))))}get host(){return r(this)}};O.style="@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";export{_ as salla_loyalty_hero,O as salla_loyalty_point}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,h as a,F as s,a as e}from"./p-
|
|
4
|
+
import{r as t,h as a,F as s,a as e}from"./p-Crijf68j.js";const i=class{constructor(a){t(this,a),this.isMobileAllowed=!0,this.isEmailRequired=!1,this.supportWebAuth=!0,this.withoutReload=!1,this.source="",this.htmlElement=document.documentElement,this.messages=[],this.isClosable=!0,this.iframeLoaded=!1,this.scrolling="no",this.direction=document.dir,this.canRenderIframe=!1,salla.event.on("login::open",(t=>{this.isEmailAllowed||this.isMobileAllowed?(this.source=t?.source??!1,this.withoutReload=t?.withoutReload??this.withoutReload,this.open(t),this.openModal()):salla.logger.warn("Please enable atleast one login type to use this component.")})),salla.event.on("modal::close",(t=>{this.iframe&&this.sendMessageToIframe({source:"login",type:"modal_closed",data:t})})),salla.onReady((()=>{this.api=salla.config.get("store.api"),this.storeId=salla.config.get("store.id")}))}componentDidLoad(){window.addEventListener("message",(t=>{if(!this.isTrustedMessage(t)||"login"!=t.data?.source)return;if(!this.inline&&!this.canRenderIframe)return;salla.log("salla-account:: recived an event",t.data);let a=t.data?.type?.replace("iframe::",""),s=t.data.message;if("ready"==a)return s.isPasskeyPage?void this.createPassKey.postMessage({source:"login",type:"init_passkey_page",data:{token:salla.storage.get("token"),store_id:salla.config.get("store.id"),locale:salla.config.get("user.language_code"),redirect:salla.config.get("store.url")}},salla.config.get("login.url")):void this.handleIframeReadyAction();if("height"==a)return this.iframe.height=s?.height+"px";if("storage"==a)return this.handleIframeStorageAction(s);if("scrolling"==a)return this.scrolling=s,void(this.isClosable=!1);if("direction"==a)return document.dir=this.direction=s?"rtl":"ltr";if("notify"==a)return salla.notify[s.type](s.message);if("authenticated"==a||"authenticated_web_auth"==a)return!s?.withoutClose&&this.close(),salla.auth.api.handlAfterAuthenticatedResponse(s,this.supportWebAuth).then((()=>!(s?.withoutReload||this.withoutReload)&&setTimeout((()=>window.location.reload()),1e3)));if("dispatchEvent"!=a||"auth::verified"!=s.event){if("dispatchEvent"==a)return salla.event.emit(s.event,...s.payload);if("reload"==a)return s?.withClose&&this.modal.close(),window.location.reload();if("open_page"===a){if(!this.isSafeUrl(s?.url))return;return window.location.href=s.url}if("open_passkey_page"!==a)return"guest-checkout"===a?this.handleGuestCheckout():void("close"==a&&this.close());this.createPassKey=window.open(`${salla.config.get("login.url")}/create-passkey`)}else salla.log("Ignored dispatchEvent `auth::verified` from iframe")})),this.observeDarkModeChanges(),setTimeout((()=>Salla.event.emit("salla-login::ready")),1)}async open(t=null){return Salla.config.isGuest()?this.modal.open():this.withoutReload?void 0:location.reload()}close(){Salla.event.emit("salla-login::closing"),this.modal.close(),this.iframeLoaded=!1,this.canRenderIframe=!1,this.host.dispatchEvent(new CustomEvent("salla-login:closed",{cancelable:!0,bubbles:!0,detail:null})),Salla.event.emit("salla-login::closed")}handleIframeReadyAction(){this.sendInitMessage(),this.sendMessageToIframe({source:"login",type:"width",data:document.body.clientWidth})}observeDarkModeChanges(){new MutationObserver((t=>{t.forEach((t=>{"class"===t.attributeName&&this.sendMessageToIframe({source:"login",type:"darkMode",data:{isDark:!!this.htmlElement.classList.contains("dark")}})}))})).observe(this.htmlElement,{attributes:!0})}async handleIframeStorageAction(t){let a,s=salla.storage.get("cart.user_id"),e=!1;if(Object.entries(t).filter((t=>!Salla.storage.get(t[0]))).forEach((([t,i])=>{salla.log("Shared storage from accounts domain",t,i);let l="string"==typeof i?i?.replace(/^"|"$/g,""):i;salla.storage.set(t,l),"token"===t&&(a=l),"user"===t&&s&&l.id!==s&&(e=!0)})),a){this.modal.close(),Salla.auth.event.tokenFetched(a);try{await Salla.api.cart.assign()}catch(t){Salla.log("Error on assign after handle iframe",t)}e&&Salla.cart.reset();try{!Salla.auth.api.isSessionless()&&await Salla.auth.api.request("auth/jwt"),Salla.auth.api.canRedirect()?setTimeout((()=>window.location.reload()),100):await Salla.auth.event.loggedIn({data:{token:a}}).then((()=>Salla.auth.api.afterUserLogin()))}catch(t){this.modal.open(),Salla.log("Error on request auth/jwt after handle iframe",t)}}else e&&Salla.cart.reset()}isTrustedMessage(t){if(!(this.iframe&&t.source===this.iframe.contentWindow||this.createPassKey&&t.source===this.createPassKey))return!1;let a;try{a=new URL(salla.config.get("login.url","https://accounts.salla.com")).origin}catch(t){a="https://accounts.salla.com"}return t.origin===a}isSafeUrl(t){if("string"!=typeof t||!t)return!1;try{const{protocol:a}=new URL(t,location.href);return"https:"===a||"http:"===a}catch(t){return!1}}sendMessageToIframe(t){if(this.iframe)return this.iframe.contentWindow.postMessage(t,"*")}sendInitMessage(){let t=this.headers;try{t="string"==typeof t?JSON.parse(t):t}catch(a){console.error("Failed to parse headers!",this.headers,a),t=void 0}const a={user:salla.storage.get("user"),s_translations:salla.storage.get("s_translations"),token:salla.storage.get("token")};a.user||delete a.user,a.s_translations||delete a.s_translations,a.token||delete a.token,this.sendMessageToIframe({source:"login",type:"init",data:{id:this.storeId,lang:salla.lang.locale,isDark:!!this.htmlElement.classList.contains("dark"),apiUrl:this.api?.replace(/\/+$/,""),supportWebAuth:this.supportWebAuth,withoutReload:this.withoutReload,inline:this.inline,settings:salla.config.all(),headers:t,storage:a}})}async handleGuestCheckout(){if(this.modal.close(),salla.config.isGuest())return salla.cart.submit(!1,!0)}openModal(){this.canRenderIframe||(this.canRenderIframe=!0),this.modal.open()}render(){if(!Salla.config.isUser())return this.inline?this.getLoginDom():a("salla-modal",{class:"s-login-modal",ref:t=>this.modal=t,width:"xs"},this.getLoginDom())}getLoginDom(){if(this.canRenderIframe)return a(s,null,a("iframe",{src:`${salla.config.get("login.url","https://accounts.salla.com")}?src=${this.source}`,title:"Salla Login",class:"hide-scroll",loading:"lazy",ref:t=>{this.iframe=t},allow:"publickey-credentials-get; publickey-credentials-create",scrolling:this.scrolling,frameborder:"0",width:"100%"}))}get host(){return e(this)}};i.style="iframe{-moz-transition:height 0.3s;-ms-transition:height 0.3s;-o-transition:height 0.3s;-webkit-transition:height 0.3s;transition:height 0.3s;width:100%}";export{i as salla_login_modal}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,c as e,h as i,H as s,a as o}from"./p-
|
|
4
|
+
import{r as t,c as e,h as i,H as s,a as o}from"./p-Crijf68j.js";import{L as n}from"./p-BO5AoBAP.js";import{S as a}from"./p-BscTeWDc.js";const r="BulletDeliveryAPI",l=t=>{const e=null==t?Number.NaN:Number(t);return!Number.isNaN(e)&&0!==e};async function h(t,e,i){try{return await t()}catch(t){return console.error(`${r}: ${i}`,t),e}}const c=new Map;function d(t){const e=c.get(t);return!e||Date.now()-e.timestamp>3e5?(c.delete(t),null):e.data}function u(t,e){c.set(t,{data:e,timestamp:Date.now()})}const p=t=>"SA"===String(t).toUpperCase(),m={async getCountries(t=!1,e){const i=e?.trim()?null:"countries_"+(t?1:0);if(i){const t=d(i);if(t)return t}const s=await h((async()=>{const i={for_branch:t?1:0};return t&&(i.for_allocation=1),e?.trim()&&(i.query=e.trim()),((await salla.api.request("shipping/countries",{params:i}))?.data??[]).map((t=>({id:t.id,code:t.code,name:t.name,has_regions:p(t.code)})))}),[],"Error getting countries");return i&&s.length>0&&u(i,s),s},async getRegions(t,e){if(!l(t))return console.warn(`${r}: getRegions called without valid country_id`),[];const i=e?.trim()?null:`regions_${t}`;if(i){const t=d(i);if(t)return t}const s=await h((async()=>{const i={};return e?.trim()&&(i.query=e.trim()),((await salla.api.request(`shipping/countries/${t}/regions`,{params:i}))?.data??[]).map((e=>({id:e.id,name:e.name,code:e.code,country_id:Number(t)})))}),[],"Error fetching regions");return i&&s.length>0&&u(i,s),s},async getCities(t,e,i){if(!l(t))return console.warn(`${r}: getCities called without valid country_id`),[];const s=i?.trim()?null:`cities_${t}_${e||"all"}`;if(s){const t=d(s);if(t)return t}const o=await h((async()=>{const s={for_branch:0,country_id:t};return e&&(s.region_id=e),i?.trim()&&(s.query=i.trim()),((await salla.api.request("shipping/cities",{params:s}))?.data??[]).map((e=>({id:e.id,name:e.name,country_id:t,...null!=e.region_id&&{region_id:e.region_id}})))}),[],"Error fetching cities");return s&&o.length>0&&u(s,o),o},getDistricts:async(t,e)=>l(t)?h((async()=>{const i={for_branch:0,city_id:t};e?.trim()&&(i.query=e.trim());const s=(await salla.api.request("shipping/districts",{params:i}))?.data;return(Array.isArray(s)?s:Array.isArray(s?.districts)?s.districts:[]).map((e=>({id:e.id,name:e.name,name_en:e.name_en,city_id:t})))}),[],"Error fetching districts"):(console.warn(`${r}: getDistricts called without valid city_id`),[]),getSavedAddresses:async()=>h((async()=>{const t=(await salla.api.request("address"))?.data;return Array.isArray(t)?t:[]}),[],"Error fetching user addresses"),async getBranches({query:t,lat:e,lng:i,country_id:s,per_page:o=20}={}){const n=t?.trim()?.length>=2||e||i||!s?null:`branches_${s}`;if(n){const t=d(n);if(t)return t}const a=await h((async()=>{const n={per_page:o};t?.trim().length>=2&&(n.query=t),e&&(n.lat=e),i&&(n.lng=i),s&&(n.country_id=s);const a=await salla.api.request("branches",{params:n});return Array.isArray(a?.data)?a.data:[]}),[],"Error fetching branches");return n&&a.length>0&&u(n,a),a},saveAddressLocation:async t=>h((async()=>{const e=await salla.api.request("address/location",{...t,for_allocation:!0},"post"),i=e?.data??e;return{success:!0,address:"object"==typeof i&&null!=i&&"id"in i?i:void 0}}),{success:!1},"Error saving address/location"),setDeliveryScope:async t=>h((async()=>(await salla.api.withoutNotifier((()=>salla.scope.change({id:t}))),salla.storage.set("scope",{...salla.storage.get("scope")||{},id:t}),!0)),!1,"Error setting delivery scope"),async allocateScope(t){const e=t=>t?.error?.message??t?.message??"Failed to allocate scope";try{const e=await salla.api.withoutNotifier((()=>salla.api.request("scopes/allocation",t,"post")));return{success:!0,data:e?.data??e}}catch(t){console.error(`${r}: Error allocating scope`,t);const i=t;return{success:!1,error:null!=i?.response?.data?e(i.response.data):i?.message??"Unknown error"}}},getAddressToken:async()=>h((async()=>{const t=await salla.api.request("address/autocomplete-token");return t?.data?.token??null}),null,"Error fetching address autocomplete token")};function g(){c.clear()}const b=t=>t*(Math.PI/180);function f(t,e,i,s){const o=b(i-t),n=b(s-e),a=Math.sin(o/2)**2+Math.cos(b(t))*Math.cos(b(i))*Math.sin(n/2)**2;return 12742*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}function v(t,e){const[i,s]=String(t).trim().split(":").map(Number);return Number.isNaN(i)||Number.isNaN(s)?t:new Date(2e3,0,1,i,s).toLocaleTimeString(e,{hour:"numeric",minute:"2-digit",hour12:!0})}const y=(t,e,i)=>{if("branch"===t.type){const e=t.branch_details?.city??t.branch_details?.name;return e?`${i} ${e}`.trim():""}if("address"===t.type&&t.address_details){const i=[t.address_details.district?.name,t.address_details.city?.name,t.address_details.country?.name].filter(Boolean).join("، ")||t.address_details.short_address||"";return i?`${e} ${i}`.trim():""}return""},w=t=>null!=t?Number(t):void 0,S=t=>w(t?.address_details?.country?.id),k=t=>t?.country_code??t?.address_details?.country?.code??"",C=t=>w(t?.address_details?.region?.id),x=t=>w(t?.address_details?.city?.id),_=t=>w(t?.address_details?.district?.id),A=t=>t?.branch_details?.id,$=t=>t?.branch_details?.latitude,M=t=>t?.branch_details?.longitude,L=t=>{if(!t||"address"!==t.type||t.address_id)return!1;const e=S(t),i=x(t),s=_(t),o=k(t),n=null!=s&&0!==Number(s),a=Boolean(t.address_details?.district?.name?.trim()),r=!p(o)||n||a;return!!(e&&i&&r)},E=(t,e,i)=>!t||!p(t)||null!=e&&0!==Number(e)&&null!=i&&("number"==typeof i?0!==i:String(i).trim().length>0),z={[GeolocationPositionError.PERMISSION_DENIED]:"Location permission denied",[GeolocationPositionError.POSITION_UNAVAILABLE]:"Location unavailable",[GeolocationPositionError.TIMEOUT]:"Location timeout"},I=globalThis,P=I.ShadowRoot&&(void 0===I.ShadyCSS||I.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,T=Symbol(),B=new WeakMap;let N=class{constructor(t,e,i){if(this._$cssResult$=!0,i!==T)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(P&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=B.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&B.set(e,t))}return t}toString(){return this.cssText}};const D=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[s+1]),t[0]);return new N(i,t,T)},O=P?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new N("string"==typeof t?t:t+"",void 0,T))(e)})(t):t
|
|
5
5
|
/**
|
|
6
6
|
* @license
|
|
7
7
|
* Copyright 2017 Google LLC
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,h as r,H as a}from"./p-
|
|
4
|
+
import{r as t,h as r,H as a}from"./p-Crijf68j.js";import{S as s}from"./p-D4oPi1Ov.js";const e=new Map,o=new Map;function i(t){return t?Array.isArray(t)?t:Object.values(t):[]}const n=class{constructor(r){t(this,r),this.loadedFactors=[]}async componentWillLoad(){await salla.onReady(),await this.loadFactors()}async onPropsChange(){await this.loadFactors()}getDisplayFactors(){return this.factors?.length?this.factors:this.loadedFactors}async loadFactors(){if(this.factors?.length)this.loadedFactors=[];else if(this.orderId)try{const t=await async function(t){if(!t)return null;const r=e.get(t);if(r&&Date.now()-r.timestamp<=3e5)return r.data;const a=o.get(t);if(a)return a;const s=(async()=>{try{const r=await salla.api.request(`orders/${t}`,"","get"),a=r?.data??r;return e.set(t,{data:a,timestamp:Date.now()}),a}catch(r){throw e.delete(t),r}finally{o.delete(t)}})();return o.set(t,s),s}(this.orderId);this.loadedFactors=function(t,r,a,s){var e;const o=function(t,r,a,s){return t.find((t=>!(!r||Number(t.id??t.feedback_id)!==Number(r))||!(!s||Number(t.order_item_id)!==Number(s))||!(!a||Number(t.product_id??t.product?.id)!==Number(a))))}((e=t?.rating,e?[...i(e.product),...i(e.products)]:[]),r,a,s);return function(t){if(!t)return[];for(const r of["factor_reviews","review_factors","factors"]){const a=t[r];if(Array.isArray(a)&&a.length)return a}return[]}(o)}(t,this.ratingId,this.productId,this.itemId)}catch(t){console.error("[salla-review-factors-tags] failed to load order rating factors",t),this.loadedFactors=[]}else this.loadedFactors=[]}renderFactorTags(){const t=this.getDisplayFactors();return t.length?r("div",{class:"s-review-factors-tags-factors"},t.map((t=>r("div",{class:"s-review-factors-tags-factor-tag"},r("span",{class:"s-review-factors-tags-factor-name"},t.name),r("span",{class:"s-review-factors-tags-factor-star",innerHTML:s}),r("span",{class:"s-review-factors-tags-factor-rating"},t.rating||""))))):null}render(){return r(a,{key:"b9df42d369cd5a7c66d1275202a883f6dc8ac594",class:"s-review-factors-tags-wrapper"},this.renderFactorTags())}static get watchers(){return{factors:["onPropsChange"],orderId:["onPropsChange"],ratingId:["onPropsChange"],productId:["onPropsChange"],itemId:["onPropsChange"]}}};n.style=":host{display:inline-flex}.s-review-factors-tags-factors{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:flex-start;margin-bottom:0.6rem}.s-review-factors-tags-factor-tag{display:inline-flex;align-items:center;gap:0.25rem;border-radius:999px;border:1px solid #e8e8e8;background:rgba(255, 255, 255, 0.3);font-size:0.85rem;line-height:1;padding:0.4rem 0.65rem}.s-review-factors-tags-factor-rating{font-weight:600;color:var(--color-primary) !important}.s-review-factors-tags-factor-star{display:inline-flex;width:0.8rem;height:0.8rem;fill:var(--color-primary) !important}.s-review-factors-tags-factor-star svg{width:100%;height:100%}.s-review-factors-tags-factor-name{color:var(--main-text-color) !important;font-weight:unset !important}";export{n as salla_review_factors_tags}
|