@salla.sa/twilight-components 2.14.291 → 2.14.293
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-l0In8JzI.js → filepond-GN4oGQxJ.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-poster--TMslLdw.js → filepond-plugin-file-poster-DaAJLtpt.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-size-asc4GviL.js → filepond-plugin-file-validate-size-DtX2_kZJ.js} +1 -1
- package/dist/cjs/{filepond-plugin-file-validate-type-MAcIW_lX.js → filepond-plugin-file-validate-type-CzQ5UyCl.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-edit-8yC2fM_b.js → filepond-plugin-image-edit-C0VI2c3u.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-exif-orientation-D2TaYNJz.js → filepond-plugin-image-exif-orientation-CjLoSY29.js} +1 -1
- package/dist/cjs/{filepond-plugin-image-preview-ZhHJTUGt.js → filepond-plugin-image-preview-D_SXc0A0.js} +1 -1
- package/dist/cjs/{index-CD__TuQ1.js → index-BZReV_Mc.js} +2 -2
- package/dist/cjs/{index-BCqSMje8.js → index-MsFtsujX.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/salla-accordion_62.cjs.entry.js +168 -83
- package/dist/cjs/salla-advertisement.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-cart-item-offers.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-filters-widget.cjs.entry.js +1 -1
- package/dist/cjs/salla-filters.cjs.entry.js +1 -1
- package/dist/cjs/salla-installment.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 +1 -1
- package/dist/cjs/salla-metadata.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.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-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-price-range.cjs.entry.js +1 -1
- package/dist/cjs/salla-review-card.cjs.entry.js +1 -1
- package/dist/cjs/salla-reviews-page.cjs.entry.js +1 -1
- package/dist/cjs/salla-reviews.cjs.entry.js +1 -1
- package/dist/cjs/salla-social.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-verify.cjs.entry.js +1 -1
- package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
- package/dist/cjs/twilight.cjs.js +2 -2
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +20 -5
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +84 -67
- package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +75 -5
- package/dist/components/index.js +2 -2
- package/dist/components/keyboard_arrow_right.js +3 -3
- package/dist/components/salla-breadcrumb.js +2 -2
- package/dist/components/salla-multiple-bundle-product-details2.js +20 -5
- package/dist/components/salla-multiple-bundle-product-options-modal2.js +82 -65
- package/dist/components/salla-multiple-bundle-product-slider2.js +62 -6
- package/dist/components/salla-slider2.js +3 -3
- package/dist/esm/{filepond-D-hh7StM.js → filepond-KedxObdz.js} +1 -1
- package/dist/esm/{filepond-plugin-file-poster-B9peApDJ.js → filepond-plugin-file-poster--IuYz1v_.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-size-Clsj6zmt.js → filepond-plugin-file-validate-size-DS9CqEa6.js} +1 -1
- package/dist/esm/{filepond-plugin-file-validate-type-NUNR5wrE.js → filepond-plugin-file-validate-type-Df7JBQ_H.js} +1 -1
- package/dist/esm/{filepond-plugin-image-edit-D9mIu1qc.js → filepond-plugin-image-edit-DuiTbZRo.js} +1 -1
- package/dist/esm/{filepond-plugin-image-exif-orientation-DjJUiKBi.js → filepond-plugin-image-exif-orientation-DptV88l9.js} +1 -1
- package/dist/esm/{filepond-plugin-image-preview-Dqa9Qh69.js → filepond-plugin-image-preview-CCEGmtL7.js} +1 -1
- package/dist/esm/{index-BdPAI7KX.js → index-BcEkcgy-.js} +2 -2
- package/dist/esm/{index-r_fPtAzd.js → index-CKeax2nk.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/salla-accordion_62.entry.js +168 -83
- package/dist/esm/salla-advertisement.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-cart-item-offers.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-filters-widget.entry.js +1 -1
- package/dist/esm/salla-filters.entry.js +1 -1
- package/dist/esm/salla-installment.entry.js +1 -1
- package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
- package/dist/esm/salla-loyalty-program.entry.js +1 -1
- package/dist/esm/salla-metadata.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.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-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-price-range.entry.js +1 -1
- package/dist/esm/salla-review-card.entry.js +1 -1
- package/dist/esm/salla-reviews-page.entry.js +1 -1
- package/dist/esm/salla-reviews.entry.js +1 -1
- package/dist/esm/salla-social.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-verify.entry.js +1 -1
- package/dist/esm/salla-wallet.entry.js +1 -1
- package/dist/esm/twilight.js +3 -3
- package/dist/twilight/{p-9b001f92.entry.js → p-0505e20e.entry.js} +1 -1
- package/dist/twilight/{p-9706a388.entry.js → p-083721bc.entry.js} +1 -1
- package/dist/twilight/{p-2e338f09.entry.js → p-0fb744b7.entry.js} +1 -1
- package/dist/twilight/{p-9e190a6a.entry.js → p-194fb1ef.entry.js} +1 -1
- package/dist/twilight/{p-23541825.entry.js → p-1d51eaba.entry.js} +1 -1
- package/dist/twilight/{p-2684045e.entry.js → p-21adb8a6.entry.js} +1 -1
- package/dist/twilight/{p-2a4d5b5a.entry.js → p-21f46237.entry.js} +1 -1
- package/dist/twilight/p-35d860e0.entry.js +11 -0
- package/dist/twilight/{p-85d33ec2.entry.js → p-371211e8.entry.js} +1 -1
- package/dist/twilight/{p-0c5e2e36.entry.js → p-378f1163.entry.js} +1 -1
- package/dist/twilight/{p-54a6b727.entry.js → p-5598db68.entry.js} +1 -1
- package/dist/twilight/{p-aa85a960.entry.js → p-62f02f0c.entry.js} +1 -1
- package/dist/twilight/{p-b609c0a3.entry.js → p-69606709.entry.js} +1 -1
- package/dist/twilight/{p-efdf02d5.entry.js → p-6e4b766e.entry.js} +1 -1
- package/dist/twilight/{p-8110e635.entry.js → p-752052fe.entry.js} +1 -1
- package/dist/twilight/{p-025d49de.entry.js → p-77a8b14b.entry.js} +1 -1
- package/dist/twilight/{p-5bff3464.entry.js → p-83e30449.entry.js} +1 -1
- package/dist/twilight/{p-2d7377e6.entry.js → p-841674b0.entry.js} +1 -1
- package/dist/twilight/{p-0a7758ed.entry.js → p-8490063c.entry.js} +1 -1
- package/dist/twilight/{p-ef28a883.entry.js → p-8aac6c56.entry.js} +1 -1
- package/dist/twilight/{p-3420836d.entry.js → p-8b0c6963.entry.js} +1 -1
- package/dist/twilight/{p-362bbc51.entry.js → p-9abdcebc.entry.js} +1 -1
- package/dist/twilight/{p-TjgJW4j-.js → p-BHo8Lu9B.js} +1 -1
- package/dist/twilight/{p-DuzBFC4S.js → p-BQYRtcKc.js} +1 -1
- package/dist/twilight/{p-BUxBV1_U.js → p-B_AAuZS_.js} +1 -1
- package/dist/twilight/{p-BdPAI7KX.js → p-BcEkcgy-.js} +1 -1
- package/dist/twilight/{p-DVxWyl5d.js → p-C-jGs3o8.js} +1 -1
- package/dist/twilight/{p-CJ4oSd-N.js → p-CFelPn0c.js} +1 -1
- package/dist/twilight/{p-Dkl8u_H6.js → p-DCjc1XMn.js} +1 -1
- package/dist/twilight/{p-BOK_dArT.js → p-Dcv1lfjK.js} +1 -1
- package/dist/twilight/{p-oMzSzsXO.js → p-DukOL2_o.js} +1 -1
- package/dist/twilight/{p-7ce146ac.entry.js → p-a6f21afd.entry.js} +1 -1
- package/dist/twilight/{p-b2378248.entry.js → p-ab6eb94e.entry.js} +1 -1
- package/dist/twilight/{p-5b2567af.entry.js → p-acfee2fb.entry.js} +1 -1
- package/dist/twilight/{p-84f7d6ff.entry.js → p-adce81de.entry.js} +1 -1
- package/dist/twilight/{p-2d563fd2.entry.js → p-b84f1767.entry.js} +1 -1
- package/dist/twilight/{p-0230315b.entry.js → p-bc8b7a34.entry.js} +1 -1
- package/dist/twilight/{p-4b2e8325.entry.js → p-bf3d685c.entry.js} +1 -1
- package/dist/twilight/{p-62f6d935.entry.js → p-cd95b196.entry.js} +1 -1
- package/dist/twilight/{p-2ebf898f.entry.js → p-dac9c90f.entry.js} +1 -1
- package/dist/twilight/{p-c96ebac7.entry.js → p-e22d9fe8.entry.js} +1 -1
- package/dist/twilight/{p-b354fb32.entry.js → p-fb1f3508.entry.js} +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.d.ts +9 -0
- package/dist/types/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.d.ts +11 -1
- package/dist/types/components.d.ts +12 -2
- package/package.json +5 -5
- package/dist/twilight/p-70567b55.entry.js +0 -11
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement, c as createEvent, d as getDefaultExportFromCjs, F as Fragment, j as axios } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement, c as createEvent, d as getDefaultExportFromCjs, F as Fragment, j as axios } from './index-BcEkcgy-.js';
|
|
5
5
|
import { a as anime } from './anime.es-CgtvEd63.js';
|
|
6
6
|
import { A as ArrowDownIcon, S as SpecialDiscountIcon } from './special-discount-yRO-ZESF.js';
|
|
7
7
|
import { I as IconVerified } from './check-uTyAzPSy.js';
|
|
@@ -3523,13 +3523,13 @@ const SallaFileUpload = class {
|
|
|
3523
3523
|
return;
|
|
3524
3524
|
try {
|
|
3525
3525
|
const [FilePondModule, FilePondPluginFileValidateSize, FilePondPluginImageExifOrientation, FilePondPluginImagePreview, FilePondPluginImageEdit, FilePondPluginFileValidateType, FilePondPluginFilePoster] = await Promise.all([
|
|
3526
|
-
import('./filepond-
|
|
3527
|
-
import('./filepond-plugin-file-validate-size-
|
|
3528
|
-
import('./filepond-plugin-image-exif-orientation-
|
|
3529
|
-
import('./filepond-plugin-image-preview-
|
|
3530
|
-
import('./filepond-plugin-image-edit-
|
|
3531
|
-
import('./filepond-plugin-file-validate-type-
|
|
3532
|
-
import('./filepond-plugin-file-poster
|
|
3526
|
+
import('./filepond-KedxObdz.js').then(function (n) { return n.f; }),
|
|
3527
|
+
import('./filepond-plugin-file-validate-size-DS9CqEa6.js').then(function (n) { return n.f; }),
|
|
3528
|
+
import('./filepond-plugin-image-exif-orientation-DptV88l9.js').then(function (n) { return n.f; }),
|
|
3529
|
+
import('./filepond-plugin-image-preview-CCEGmtL7.js').then(function (n) { return n.f; }),
|
|
3530
|
+
import('./filepond-plugin-image-edit-DuiTbZRo.js').then(function (n) { return n.f; }),
|
|
3531
|
+
import('./filepond-plugin-file-validate-type-Df7JBQ_H.js').then(function (n) { return n.f; }),
|
|
3532
|
+
import('./filepond-plugin-file-poster--IuYz1v_.js').then(function (n) { return n.f; })
|
|
3533
3533
|
]);
|
|
3534
3534
|
this.FilePond = FilePondModule;
|
|
3535
3535
|
// Register plugins
|
|
@@ -6414,7 +6414,7 @@ const SallaMultipleBundleProductDetails = class {
|
|
|
6414
6414
|
this.selectedProducts[sectionId].delete(productId);
|
|
6415
6415
|
// Clear form data and modal options for this product in this specific section
|
|
6416
6416
|
this.clearProductFormData(productId, sectionId);
|
|
6417
|
-
this.clearProductModalOptions(productId);
|
|
6417
|
+
this.clearProductModalOptions(productId, sectionId);
|
|
6418
6418
|
}
|
|
6419
6419
|
else {
|
|
6420
6420
|
// Product is being selected
|
|
@@ -6493,10 +6493,25 @@ const SallaMultipleBundleProductDetails = class {
|
|
|
6493
6493
|
}
|
|
6494
6494
|
}
|
|
6495
6495
|
// Clear modal options state for a specific product
|
|
6496
|
-
clearProductModalOptions(productId) {
|
|
6496
|
+
clearProductModalOptions(productId, sectionId) {
|
|
6497
|
+
let sectionIndex = null;
|
|
6498
|
+
let productIndex = null;
|
|
6499
|
+
if (sectionId != null) {
|
|
6500
|
+
sectionIndex = this.sections.findIndex(section => section.id == sectionId);
|
|
6501
|
+
if (sectionIndex > -1) {
|
|
6502
|
+
const section = this.sections[sectionIndex];
|
|
6503
|
+
if (section) {
|
|
6504
|
+
const foundIndex = section.products?.findIndex(product => product.id == productId);
|
|
6505
|
+
productIndex = typeof foundIndex === 'number' && foundIndex > -1 ? foundIndex : null;
|
|
6506
|
+
}
|
|
6507
|
+
}
|
|
6508
|
+
}
|
|
6497
6509
|
// Emit event to notify modal to reset its state for this product
|
|
6498
6510
|
salla.event.dispatch('multiple-bundle-product-modal::clear-options', {
|
|
6499
6511
|
productId,
|
|
6512
|
+
sectionId,
|
|
6513
|
+
sectionIndex,
|
|
6514
|
+
productIndex,
|
|
6500
6515
|
});
|
|
6501
6516
|
}
|
|
6502
6517
|
renderAccordionHeader(section, selectedCount) {
|
|
@@ -6533,10 +6548,10 @@ const SallaMultipleBundleProductDetails = class {
|
|
|
6533
6548
|
}
|
|
6534
6549
|
}
|
|
6535
6550
|
render() {
|
|
6536
|
-
return (h(Host, { key: '
|
|
6551
|
+
return (h(Host, { key: '118e5c2badcec4329da881ba87ce6c6771175c14', class: "s-multiple-bundle-product-wrapper" }, h("div", { key: '6c2033af8d144c39cfa4f6b67ffd91d38fcd7bdf', class: "s-multiple-bundle-product-wrapper-sections" }, this.sections.map((section, index) => {
|
|
6537
6552
|
const selectedCount = this.selectedProducts[section.id]?.size || 0;
|
|
6538
|
-
return (h("salla-accordion", { key: section.id, collapsed: index ===
|
|
6539
|
-
})), h("salla-multiple-bundle-product-options-modal", { key: '
|
|
6553
|
+
return (h("salla-accordion", { key: section.id, collapsed: index === 0 ? false : true }, h("salla-accordion-head", null, this.renderAccordionHeader(section, selectedCount)), h("salla-accordion-body", null, h("salla-multiple-bundle-product-slider", { section: section, sectionIndex: index, selectedProducts: this.selectedProducts, onProductSelected: this.handleBundleSliderProductSelected, onProductOptionsSelected: this.handleBundleSliderProductOptionsSelected }))));
|
|
6554
|
+
})), h("salla-multiple-bundle-product-options-modal", { key: 'a5d0c1fb53d38015eebbcb3a203aefb6b9b540af' })));
|
|
6540
6555
|
}
|
|
6541
6556
|
get host() { return getElement(this); }
|
|
6542
6557
|
};
|
|
@@ -6554,6 +6569,7 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6554
6569
|
this.sectionIndex = 0;
|
|
6555
6570
|
this.productIndex = 0;
|
|
6556
6571
|
this.selectedOptions = {};
|
|
6572
|
+
this.optionsResetTokens = {};
|
|
6557
6573
|
this.isLoading = false;
|
|
6558
6574
|
this.hasUnsavedChanges = false;
|
|
6559
6575
|
this.validationErrors = [];
|
|
@@ -6610,17 +6626,21 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6610
6626
|
this.selectedOptions = { ...this.selectedOptions };
|
|
6611
6627
|
}
|
|
6612
6628
|
componentDidLoad() {
|
|
6613
|
-
|
|
6629
|
+
this.modalOpenListener = (data) => {
|
|
6614
6630
|
this.product = data.product;
|
|
6615
6631
|
this.sectionId = data.sectionId || null;
|
|
6616
6632
|
this.sectionIndex = data.sectionIndex || 0;
|
|
6617
6633
|
this.productIndex = data.productIndex || 0;
|
|
6618
6634
|
this.open();
|
|
6619
|
-
}
|
|
6635
|
+
};
|
|
6636
|
+
salla.event.on('multiple-bundle-product-modal::open', this.modalOpenListener);
|
|
6620
6637
|
// Listen for clear-options event when a product is deselected
|
|
6621
|
-
|
|
6622
|
-
|
|
6623
|
-
|
|
6638
|
+
this.clearOptionsListener = (data) => {
|
|
6639
|
+
if (!data || !data.productId)
|
|
6640
|
+
return;
|
|
6641
|
+
this.clearProductOptions(data.productId, data.sectionId, data.productIndex);
|
|
6642
|
+
};
|
|
6643
|
+
salla.event.on('multiple-bundle-product-modal::clear-options', this.clearOptionsListener);
|
|
6624
6644
|
// Create and store the option change listener for proper cleanup
|
|
6625
6645
|
this.optionChangeListener = (e) => {
|
|
6626
6646
|
const { productId, option, detail } = e.detail;
|
|
@@ -6645,60 +6665,16 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6645
6665
|
// Extract section info from the checkbox name: bundle[sectionId][productIndex][id]
|
|
6646
6666
|
const nameMatch = target.name.match(/^bundle\[([^\]]+)\]\[([^\]]+)\]\[id\]$/);
|
|
6647
6667
|
if (nameMatch && !target.checked) {
|
|
6648
|
-
// Product was deselected, clear its cached options
|
|
6649
6668
|
const [, sectionId, productIndex] = nameMatch;
|
|
6650
6669
|
const productId = target.value;
|
|
6651
|
-
// Prevent the immediate event to ensure cleanup happens first
|
|
6652
|
-
e.preventDefault();
|
|
6653
|
-
e.stopPropagation();
|
|
6654
|
-
// Ensure the checkbox is actually unchecked
|
|
6655
|
-
target.checked = false;
|
|
6656
|
-
// Generate the same cache key used by the modal
|
|
6657
|
-
const cacheKey = this.generateCacheKey(sectionId, parseInt(productIndex), productId);
|
|
6658
|
-
// Clear the cached options for this product
|
|
6659
|
-
const updatedSelectedOptions = { ...this.selectedOptions };
|
|
6660
|
-
delete updatedSelectedOptions[cacheKey];
|
|
6661
|
-
this.selectedOptions = updatedSelectedOptions;
|
|
6662
|
-
// Force re-render of the modal if it's currently open for this product
|
|
6663
|
-
if (this.product && this.product.id == productId) {
|
|
6664
|
-
this.selectedOptions = { ...this.selectedOptions };
|
|
6665
|
-
}
|
|
6666
6670
|
const form = this.host.closest('form');
|
|
6667
|
-
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
|
|
6671
|
-
|
|
6672
|
-
|
|
6673
|
-
|
|
6674
|
-
// Don't remove the visible checkbox that was just unchecked
|
|
6675
|
-
if (el !== target && (el.type === 'hidden' || el.hasAttribute('data-product-id'))) {
|
|
6676
|
-
el.remove();
|
|
6677
|
-
}
|
|
6678
|
-
});
|
|
6679
|
-
// Method 2: Find inputs by data-product-id BUT only within the same section/productIndex
|
|
6680
|
-
const dataProductInputs = allInputs.filter(input => {
|
|
6681
|
-
// Must have data-product-id matching the productId
|
|
6682
|
-
if (input.getAttribute('data-product-id') !== String(productId)) {
|
|
6683
|
-
return false;
|
|
6684
|
-
}
|
|
6685
|
-
// Must also be within the same section/productIndex pattern
|
|
6686
|
-
return input.name && input.name.startsWith(productInputPattern);
|
|
6687
|
-
});
|
|
6688
|
-
// Process inputs with matching section/productIndex and productId for removal
|
|
6689
|
-
dataProductInputs.forEach(el => {
|
|
6690
|
-
if (el !== target) {
|
|
6691
|
-
el.remove();
|
|
6692
|
-
}
|
|
6693
|
-
});
|
|
6694
|
-
// Method 3: Removed broader search to prevent removing inputs from other products
|
|
6695
|
-
// The cleanup is now more precise and only removes inputs for the specific product
|
|
6696
|
-
// Trigger form change event after cleanup is complete
|
|
6697
|
-
setTimeout(() => {
|
|
6698
|
-
const changeEvent = new window.Event('change', { bubbles: true });
|
|
6699
|
-
form.dispatchEvent(changeEvent);
|
|
6700
|
-
}, 50); // Small delay to ensure cleanup is complete
|
|
6701
|
-
}
|
|
6671
|
+
this.cleanupProductDeselection({
|
|
6672
|
+
sectionId,
|
|
6673
|
+
productIndex: parseInt(productIndex, 10),
|
|
6674
|
+
productId,
|
|
6675
|
+
form,
|
|
6676
|
+
uncheckedInput: target,
|
|
6677
|
+
});
|
|
6702
6678
|
}
|
|
6703
6679
|
}
|
|
6704
6680
|
};
|
|
@@ -6710,6 +6686,37 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6710
6686
|
if (this.checkboxChangeListener) {
|
|
6711
6687
|
document.removeEventListener('change', this.checkboxChangeListener);
|
|
6712
6688
|
}
|
|
6689
|
+
if (this.optionChangeListener) {
|
|
6690
|
+
salla.event.off('product-options::change', this.optionChangeListener);
|
|
6691
|
+
}
|
|
6692
|
+
if (this.modalOpenListener) {
|
|
6693
|
+
salla.event.off('multiple-bundle-product-modal::open', this.modalOpenListener);
|
|
6694
|
+
}
|
|
6695
|
+
if (this.clearOptionsListener) {
|
|
6696
|
+
salla.event.off('multiple-bundle-product-modal::clear-options', this.clearOptionsListener);
|
|
6697
|
+
}
|
|
6698
|
+
}
|
|
6699
|
+
cleanupProductDeselection(params) {
|
|
6700
|
+
const { sectionId, productIndex, productId, form, uncheckedInput } = params;
|
|
6701
|
+
this.clearProductOptions(productId, sectionId, productIndex);
|
|
6702
|
+
if (form) {
|
|
6703
|
+
const productInputPattern = `bundle[${sectionId}][${productIndex}]`;
|
|
6704
|
+
Array.from(form.querySelectorAll(`input[name^="${productInputPattern}"]`)).forEach(input => {
|
|
6705
|
+
if (input === uncheckedInput) {
|
|
6706
|
+
return;
|
|
6707
|
+
}
|
|
6708
|
+
const shouldRemoveHidden = input.type === 'hidden';
|
|
6709
|
+
const shouldRemoveByDataset = input.getAttribute('data-product-id') === String(productId) &&
|
|
6710
|
+
input.name?.startsWith(productInputPattern);
|
|
6711
|
+
if (shouldRemoveHidden || shouldRemoveByDataset) {
|
|
6712
|
+
input.remove();
|
|
6713
|
+
}
|
|
6714
|
+
});
|
|
6715
|
+
requestAnimationFrame(() => {
|
|
6716
|
+
const changeEvent = new window.Event('change', { bubbles: true });
|
|
6717
|
+
form.dispatchEvent(changeEvent);
|
|
6718
|
+
});
|
|
6719
|
+
}
|
|
6713
6720
|
}
|
|
6714
6721
|
generateFormInputName(sectionId, productIndex, optionParentId) {
|
|
6715
6722
|
return `bundle[${sectionId}][${productIndex}][options][${optionParentId}]`;
|
|
@@ -6736,17 +6743,37 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6736
6743
|
}
|
|
6737
6744
|
}
|
|
6738
6745
|
// Clear options state for a specific product
|
|
6739
|
-
clearProductOptions(productId) {
|
|
6740
|
-
// Generate cache key for this specific product in current section context
|
|
6741
|
-
const cacheKey = this.generateCacheKey(this.sectionId, this.productIndex, productId);
|
|
6742
|
-
// Remove the product from selectedOptions using the cache key
|
|
6746
|
+
clearProductOptions(productId, sectionId, productIndex) {
|
|
6743
6747
|
const updatedSelectedOptions = { ...this.selectedOptions };
|
|
6744
|
-
|
|
6748
|
+
if (sectionId != null && productIndex != null && !Number.isNaN(productIndex)) {
|
|
6749
|
+
const cacheKey = this.generateCacheKey(sectionId, productIndex, productId);
|
|
6750
|
+
delete updatedSelectedOptions[cacheKey];
|
|
6751
|
+
this.bumpOptionsResetToken(cacheKey);
|
|
6752
|
+
}
|
|
6753
|
+
else {
|
|
6754
|
+
const productSuffix = `-${String(productId)}`;
|
|
6755
|
+
const affectedKeys = [];
|
|
6756
|
+
Object.keys(updatedSelectedOptions).forEach(key => {
|
|
6757
|
+
if (key.endsWith(productSuffix)) {
|
|
6758
|
+
delete updatedSelectedOptions[key];
|
|
6759
|
+
affectedKeys.push(key);
|
|
6760
|
+
}
|
|
6761
|
+
});
|
|
6762
|
+
affectedKeys.forEach(key => this.bumpOptionsResetToken(key));
|
|
6763
|
+
}
|
|
6745
6764
|
this.selectedOptions = updatedSelectedOptions;
|
|
6746
6765
|
// Reset validation errors and unsaved changes
|
|
6747
6766
|
this.validationErrors = [];
|
|
6748
6767
|
this.hasUnsavedChanges = false;
|
|
6749
6768
|
}
|
|
6769
|
+
bumpOptionsResetToken(cacheKey) {
|
|
6770
|
+
if (!cacheKey)
|
|
6771
|
+
return;
|
|
6772
|
+
this.optionsResetTokens = {
|
|
6773
|
+
...this.optionsResetTokens,
|
|
6774
|
+
[cacheKey]: (this.optionsResetTokens[cacheKey] || 0) + 1,
|
|
6775
|
+
};
|
|
6776
|
+
}
|
|
6750
6777
|
async handleOptionChange(productId, option, detail) {
|
|
6751
6778
|
const cacheKey = this.generateCacheKey(this.sectionId, this.productIndex, productId);
|
|
6752
6779
|
// Get the current state from the component to ensure we have the latest selections
|
|
@@ -6941,6 +6968,8 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6941
6968
|
this.optionsSaved.emit({
|
|
6942
6969
|
productId: Number(productId),
|
|
6943
6970
|
selectedOptions,
|
|
6971
|
+
sectionId: this.sectionId,
|
|
6972
|
+
productIndex: this.productIndex,
|
|
6944
6973
|
});
|
|
6945
6974
|
// Emit product selected event to check the card
|
|
6946
6975
|
if (this.sectionId) {
|
|
@@ -6987,7 +7016,9 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6987
7016
|
render() {
|
|
6988
7017
|
const productId = this.product?.id;
|
|
6989
7018
|
const optionsWithSelectedState = this.getOptionsWithSelectedState();
|
|
6990
|
-
|
|
7019
|
+
const cacheKey = this.generateCacheKey(this.sectionId, this.productIndex, productId);
|
|
7020
|
+
const resetToken = this.optionsResetTokens[cacheKey] || 0;
|
|
7021
|
+
return (h(Host, { key: 'ce4cec97975d0aef32b50a13237a2d64701d8e9f' }, h("salla-modal", { key: 'cda08db7768f0b987a9569ca1170b059a58a417e', isLoading: this.isLoading, ref: el => (this.modal = el), width: "md", centered: false, id: `s-multiple-bundle-product-options-modal-options-${productId}`, class: "s-multiple-bundle-product-options-modal-wrapper" }, h("div", { key: 'd093204f6d85e7a874e0a69a826869e179aeafa4', slot: "loading" }, h("salla-skeleton", { key: '140608027bb0237b62eeb24d1eb5e47c5279c7e3', height: "100%", width: "100%" })), this.product?.images && this.product?.images.length > 0 && (h("salla-slider", { key: '807f2428e8219d9ab6e46163a5d03ad0b2e1b9a3', id: `details-slider-${this.product?.id}`, type: "thumbs", loop: false, "auto-height": true, "listen-to-thumbnails-option": true, showThumbsControls: false, controlsOuter: false, showControls: false, class: "s-multiple-bundle-product-options-modal-slider", verticalThumbs: true, thumbsConfig: {
|
|
6991
7022
|
centeredSlides: true,
|
|
6992
7023
|
centeredSlidesBounds: true,
|
|
6993
7024
|
slidesPerView: Math.min(5, Math.max(1, this.product?.images.length)),
|
|
@@ -6996,13 +7027,13 @@ const SallaMultipleBundleProductOptionsModal = class {
|
|
|
6996
7027
|
watchSlidesProgress: true,
|
|
6997
7028
|
direction: 'vertical',
|
|
6998
7029
|
spaceBetween: 10,
|
|
6999
|
-
} }, h("div", { key: '
|
|
7030
|
+
} }, h("div", { key: 'f287bea52aa1e3c68debd0b68d011025ea3f9157', slot: "items" }, this.product?.images &&
|
|
7000
7031
|
this.product?.images.map((image, index) => (h("div", { key: index, class: "swiper-slide" }, h("img", { src: image.url, alt: image.alt || `${this.product?.name} - Image ${index + 1}`, loading: "lazy", onError: e => {
|
|
7001
7032
|
e.target.style.display = 'none';
|
|
7002
|
-
} }))))), this.product?.images && this.product?.images.length > 1 && (h("div", { key: '
|
|
7033
|
+
} }))))), this.product?.images && this.product?.images.length > 1 && (h("div", { key: '5d8064ef63c91a660a3b3267afb29e498ac76f4c', slot: "thumbs" }, this.product?.images &&
|
|
7003
7034
|
this.product?.images.map((image, index) => (h("div", { key: index, "data-caption": `${this.product?.name} - Image ${index + 1}` }, h("img", { src: image.url, loading: "eager", class: "s-multiple-bundle-product-options-modal-slider-thumb", title: `${this.product?.name} - ${index + 1}`, alt: image.alt || `${this.product?.name} - ${index + 1}`, onError: e => {
|
|
7004
7035
|
e.target.style.display = 'none';
|
|
7005
|
-
} })))))))), h("salla-product-options", { options: JSON.stringify(optionsWithSelectedState), key: `${
|
|
7036
|
+
} })))))))), h("salla-product-options", { options: JSON.stringify(optionsWithSelectedState), key: `${cacheKey}-reset-${resetToken}`, "product-id": productId, "unique-key": `${cacheKey}-reset-${resetToken}` }), h("div", { key: '2f6c7f133ccabd75bbb9e8649c056619ce754296', slot: "footer" }, h("div", { key: '1c04908511a480af63fc4e358393514c74967508', class: "s-multiple-bundle-product-options-modal-footer" }, h("salla-button", { key: '49fbad4b1e71004dc8fd6df5d0f1a61b1ef25b8d', onClick: e => this.onSave(e), loading: this.isLoading, disabled: this.isLoading }, this.isLoading
|
|
7006
7037
|
? salla.lang.get('common.elements.saving')
|
|
7007
7038
|
: salla.lang.get('common.elements.save')))))));
|
|
7008
7039
|
}
|
|
@@ -7021,6 +7052,7 @@ const SallaMultipleBundleProductSlider = class {
|
|
|
7021
7052
|
this.productSelected = createEvent(this, "productSelected");
|
|
7022
7053
|
this.productOptionsSelected = createEvent(this, "productOptionsSelected");
|
|
7023
7054
|
this.selectedProducts = {};
|
|
7055
|
+
this.savedOptionsByInstance = {};
|
|
7024
7056
|
this.handleProductClick = (product, productIndex) => {
|
|
7025
7057
|
// Find the checkbox input for this product
|
|
7026
7058
|
const checkboxId = this.generateEventName(this.section.id, productIndex);
|
|
@@ -7033,6 +7065,10 @@ const SallaMultipleBundleProductSlider = class {
|
|
|
7033
7065
|
// Dispatch a change event to trigger form validation/submission
|
|
7034
7066
|
const changeEvent = new window.Event('change', { bubbles: true });
|
|
7035
7067
|
checkbox.dispatchEvent(changeEvent);
|
|
7068
|
+
if (!checkbox.checked) {
|
|
7069
|
+
this.clearSavedOptionsState(this.section.id, productIndex);
|
|
7070
|
+
this.dispatchClearOptionsEvent(product, productIndex);
|
|
7071
|
+
}
|
|
7036
7072
|
}
|
|
7037
7073
|
this.productSelected.emit({
|
|
7038
7074
|
product,
|
|
@@ -7046,17 +7082,66 @@ const SallaMultipleBundleProductSlider = class {
|
|
|
7046
7082
|
});
|
|
7047
7083
|
};
|
|
7048
7084
|
}
|
|
7085
|
+
getProductInstanceKey(sectionId, productIndex) {
|
|
7086
|
+
return `${sectionId}::${productIndex}`;
|
|
7087
|
+
}
|
|
7088
|
+
dispatchClearOptionsEvent(product, productIndex) {
|
|
7089
|
+
salla.event.dispatch('multiple-bundle-product-modal::clear-options', {
|
|
7090
|
+
productId: product.id,
|
|
7091
|
+
sectionId: this.section.id,
|
|
7092
|
+
sectionIndex: this.sectionIndex,
|
|
7093
|
+
productIndex,
|
|
7094
|
+
});
|
|
7095
|
+
}
|
|
7096
|
+
handleOptionsSaved(event) {
|
|
7097
|
+
const detail = event.detail;
|
|
7098
|
+
if (!detail)
|
|
7099
|
+
return;
|
|
7100
|
+
const { sectionId, productIndex, selectedOptions } = detail;
|
|
7101
|
+
if (sectionId == null || sectionId !== this.section?.id)
|
|
7102
|
+
return;
|
|
7103
|
+
if (productIndex == null || Number.isNaN(productIndex))
|
|
7104
|
+
return;
|
|
7105
|
+
const key = this.getProductInstanceKey(sectionId, productIndex);
|
|
7106
|
+
const hasOptions = !!selectedOptions?.length;
|
|
7107
|
+
if (hasOptions) {
|
|
7108
|
+
this.savedOptionsByInstance = {
|
|
7109
|
+
...this.savedOptionsByInstance,
|
|
7110
|
+
[key]: true,
|
|
7111
|
+
};
|
|
7112
|
+
}
|
|
7113
|
+
else if (this.savedOptionsByInstance[key]) {
|
|
7114
|
+
const updatedState = { ...this.savedOptionsByInstance };
|
|
7115
|
+
delete updatedState[key];
|
|
7116
|
+
this.savedOptionsByInstance = updatedState;
|
|
7117
|
+
}
|
|
7118
|
+
}
|
|
7119
|
+
clearSavedOptionsState(sectionId, productIndex) {
|
|
7120
|
+
const key = this.getProductInstanceKey(sectionId, productIndex);
|
|
7121
|
+
if (!this.savedOptionsByInstance[key])
|
|
7122
|
+
return;
|
|
7123
|
+
const updatedState = { ...this.savedOptionsByInstance };
|
|
7124
|
+
delete updatedState[key];
|
|
7125
|
+
this.savedOptionsByInstance = updatedState;
|
|
7126
|
+
}
|
|
7049
7127
|
generateEventName(sectionId, productIndex) {
|
|
7050
7128
|
return `bundle[${sectionId}][${productIndex}][id]`;
|
|
7051
7129
|
}
|
|
7052
7130
|
render() {
|
|
7053
|
-
return (h(Host, { key: '
|
|
7131
|
+
return (h(Host, { key: '234e93258c3d7ca5d7dc08efb68743d042646706' }, h("salla-slider", { key: '451184823378e4ad0c9034d3af1b87373bcb7d20', type: "carousel", controlsOuter: false, showControls: false, id: "accordion-multiple-bundle-product", pagination: true, class: "s-multiple-bundle-product-wrapper-slider", sliderConfig: {
|
|
7054
7132
|
spaceBetween: 0,
|
|
7055
|
-
} }, h("div", { key: '
|
|
7133
|
+
} }, h("div", { key: '28c1acfd37a77059d4c177b787dca9deea47d123', slot: "items" }, this?.section?.products?.map((product, productIndex) => {
|
|
7056
7134
|
const isChecked = this.selectedProducts[this.section.id]?.has(product.id) || false;
|
|
7057
|
-
|
|
7135
|
+
const hasSavedOptions = this.savedOptionsByInstance[this.getProductInstanceKey(this.section.id, productIndex)];
|
|
7136
|
+
const optionsButtonLabel = hasSavedOptions
|
|
7137
|
+
? salla.lang.getWithDefault('pages.products.edit_selected_options', 'تعديل الخيارات')
|
|
7138
|
+
: salla.lang.get('pages.products.choose_from_options');
|
|
7139
|
+
let optionsArrowIcon = salla.config.get('theme.is_rtl', true)
|
|
7140
|
+
? ArrowLeftIcon
|
|
7141
|
+
: ArrowRightIcon;
|
|
7142
|
+
return (h("div", { class: `s-multiple-bundle-product-slide-one-third ${product.quantity == 0
|
|
7058
7143
|
? 's-multiple-bundle-product-slide-one-third-disabled'
|
|
7059
|
-
: ''}`, key: product.id }, h("div", { class: "s-multiple-bundle-product-card" }, h("div", { class: "s-multiple-bundle-product-image-wrapper", onClick: () => this.handleProductClick(product, productIndex) }, h("input", { id: this.generateEventName(this.section.id, productIndex), type: "checkbox", class: "s-multiple-bundle-product-checkbox", checked: isChecked, name: this.generateEventName(this.section.id, productIndex), value: product.id }), h("img", { src: product.image.url || salla.url.cdn('images/s-empty.png'), loading: "lazy", alt: product.image.alt || product.name, class: "s-multiple-bundle-product-image" })), h("div", { class: "s-multiple-bundle-product-content-wrapper" }, h("div", { class: "s-multiple-bundle-product-content" }, h("div", { class: "s-multiple-bundle-product-details" }, h("div", { class: "s-multiple-bundle-product-title-wrapper" }, h("h2", { class: "s-multiple-bundle-product-title" }, product.name)), h("div", { class: "s-multiple-bundle-product-price-wrapper" }, h("span", { class: "s-multiple-bundle-product-price" }, h("span", { innerHTML: salla.money(product.price) })), product.sale_price > 0 && (h("span", { class: "s-multiple-bundle-product-price-discount" }, h("span", { innerHTML: salla.money(product.sale_price) }))))), product.quantity_in_group > 0 && product.quantity !== 0 && (h("span", { class: "s-multiple-bundle-product-badge" }, salla.lang.get('pages.products.pieces'), h("span", null, product.quantity_in_group))), product.quantity === 0 && (h("span", { class: "s-multiple-bundle-product-badge" }, salla.lang.get('pages.products.quantity_in_group_finished')))), product.options?.length > 0 && (h("button", { class: "s-multiple-bundle-product-button", onClick: () => this.handleOptionsClick(product), type: "button" },
|
|
7144
|
+
: ''}`, key: product.id }, h("div", { class: "s-multiple-bundle-product-card" }, h("div", { class: "s-multiple-bundle-product-image-wrapper", onClick: () => this.handleProductClick(product, productIndex) }, h("input", { id: this.generateEventName(this.section.id, productIndex), type: "checkbox", class: "s-multiple-bundle-product-checkbox", checked: isChecked, name: this.generateEventName(this.section.id, productIndex), value: product.id }), h("img", { src: product.image.url || salla.url.cdn('images/s-empty.png'), loading: "lazy", alt: product.image.alt || product.name, class: "s-multiple-bundle-product-image" })), h("div", { class: "s-multiple-bundle-product-content-wrapper" }, h("div", { class: "s-multiple-bundle-product-content" }, h("div", { class: "s-multiple-bundle-product-details" }, h("div", { class: "s-multiple-bundle-product-title-wrapper" }, h("h2", { class: "s-multiple-bundle-product-title" }, product.name)), h("div", { class: "s-multiple-bundle-product-price-wrapper" }, h("span", { class: "s-multiple-bundle-product-price" }, h("span", { innerHTML: salla.money(product.price) })), product.sale_price > 0 && (h("span", { class: "s-multiple-bundle-product-price-discount" }, h("span", { innerHTML: salla.money(product.sale_price) }))))), product.quantity_in_group > 0 && product.quantity !== 0 && (h("span", { class: "s-multiple-bundle-product-badge" }, salla.lang.get('pages.products.pieces'), h("span", null, product.quantity_in_group))), product.quantity === 0 && (h("span", { class: "s-multiple-bundle-product-badge" }, salla.lang.get('pages.products.quantity_in_group_finished')))), product.options?.length > 0 && (h("button", { class: "s-multiple-bundle-product-button", onClick: () => this.handleOptionsClick(product), type: "button" }, optionsButtonLabel, h("span", { class: "s-multiple-bundle-product-button-icon", innerHTML: optionsArrowIcon })))))));
|
|
7060
7145
|
})))));
|
|
7061
7146
|
}
|
|
7062
7147
|
get host() { return getElement(this); }
|
|
@@ -12419,7 +12504,7 @@ const SallaTelInput = class {
|
|
|
12419
12504
|
if (this.TelInput)
|
|
12420
12505
|
return;
|
|
12421
12506
|
try {
|
|
12422
|
-
const telInputModule = await import('./index-
|
|
12507
|
+
const telInputModule = await import('./index-CKeax2nk.js').then(function (n) { return n.i; });
|
|
12423
12508
|
this.TelInput = telInputModule.default;
|
|
12424
12509
|
}
|
|
12425
12510
|
catch (error) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { a as anime } from './anime.es-CgtvEd63.js';
|
|
6
6
|
|
|
7
7
|
const sallaAdvertisementCss = ":host{display:block}";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
|
|
6
6
|
const sallaAppInstallAlertCss = ":host{display:block}";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
|
|
6
6
|
const sallaAppsIconsCss = ":host{display:block}";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h } from './index-
|
|
4
|
+
import { r as registerInstance, h } from './index-BcEkcgy-.js';
|
|
5
5
|
import { S as SpecialDiscountIcon, A as ArrowDownIcon } from './special-discount-yRO-ZESF.js';
|
|
6
6
|
import { G as GiftIcon } from './gift-C0JNGIpa.js';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { w as whatsapp } from './whatsapp2-DWksgowB.js';
|
|
6
6
|
import { M as MailIcon } from './mail-DmgxDvXL.js';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { H as Helper } from './Helper-B51hb0bi.js';
|
|
6
6
|
import { F as FilterOptionTypes } from './interfaces-DL4h2bc3.js';
|
|
7
7
|
import './anime.es-CgtvEd63.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { F as FilterOptionTypes } from './interfaces-DL4h2bc3.js';
|
|
6
6
|
import { H as Helper } from './Helper-B51hb0bi.js';
|
|
7
7
|
import './anime.es-CgtvEd63.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
|
|
6
6
|
const sallaInstallmentCss = "salla-installment:empty{display:none}#tabbyPromoWrapper{background:white;border-radius:0.375rem;transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);margin-bottom:20px;border:unset !important;font-weight:500}.salla-y #tabbyPromoWrapper{border:1px solid var(--color-grey-dark);border-radius:12px}#tabbyPromoWrapper:hover{box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}#tabbyPromoWrapper #tabbyPromo *{font-family:var(--font-main)}#tabbyPromoWrapper #tabbyPromo>div>div{max-width:none;box-shadow:none;border:none}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet{max-width:100%;min-height:100px;padding:18px 20px;border:none !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__text,#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-size:var(--font-sm);color:var(--color-text) !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-weight:bold}.tabby-promo-wrapper #tabby-promo{font-family:var(--font-main) !important}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-title{font-size:var(--font-md)}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-desc{font-size:var(--font-sm);line-height:20px}.tamara-product-widget{margin-bottom:20px}.tamara-product-widget,.spotii-wrapper{min-height:100px;position:relative;color:var(--main-text-color);font-size:var(--font-sm);line-height:1.25;padding:20px 20px 20px 115px !important;background:white;border-radius:0.375rem;transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);border:unset !important;font-family:inherit !important;font-weight:500}.salla-y .tamara-product-widget,.salla-y .spotii-wrapper{border-radius:12px;border:1px solid var(--color-grey-dark)}.tamara-product-widget:hover,.spotii-wrapper:hover{box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.tamara-product-widget .spotii-logo,.spotii-wrapper .spotii-logo{float:left;margin:0 0 0 -75px}.ltr .tamara-product-widget,.ltr .spotii-wrapper{text-align:left;padding:18px 100px 18px 20px !important}.ltr .tamara-product-widget .spotii-logo,.ltr .spotii-wrapper .spotii-logo{float:right;margin:0 -75px 0 0}.ltr .tamara-product-widget .spotii-product-widget,.ltr .spotii-wrapper .spotii-product-widget{text-align:left !important}.spotii-wrapper{margin-bottom:20px}.spotii-wrapper .spotii-promo{font-size:var(--font-md)}.spotii-wrapper .spotii-product-widget{font-size:var(--font-sm) !important;margin-top:10px}.tamara-product-widget .tamara-logo{position:absolute;left:20px !important;top:35px !important;margin:0 !important;height:24px !important}.ltr .tamara-product-widget .tamara-logo{right:20px !important;left:auto !important}.tamara-product-widget span{font-family:var(--font-main);font-size:var(--font-sm);color:var(--color-text)}.tamara-product-widget span:last-child{display:block;position:relative;margin-top:8px}.tamara-popup__wrap{overflow:auto !important}.s-installment-mispay-wrapper,.s-installment-madfu-wrapper,.s-installment-emkan-wrapper,.s-installment-rajehi-wrapper{font-size:14px;text-align:right;padding:20px;gap:42px;line-height:22px;color:rgb(0, 0, 0);min-width:100%;box-sizing:border-box;position:relative;background-color:white;border-radius:10px;margin:15px 0;display:flex;transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1)}.s-installment-mispay-wrapper:hover,.s-installment-madfu-wrapper:hover,.s-installment-emkan-wrapper:hover,.s-installment-rajehi-wrapper:hover{box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.s-installment-mispay-content,.s-installment-madfu-content,.s-installment-emkan-content,.s-installment-rajehi-content{display:flex;flex-direction:row-reverse;width:100%;justify-content:space-between;align-items:center;gap:1rem}.s-installment-mispay-content-text,.s-installment-madfu-content-text,.s-installment-emkan-content-text,.s-installment-rajehi-content-text{color:var(--main-text-color);font-size:14px;font-weight:500;margin:0 16px 0 0;width:80%;left:14px;text-align:left}.s-installment-mispay-content img,.s-installment-madfu-content img,.s-installment-emkan-content img,.s-installment-rajehi-content img{height:28px;width:70px;display:inline-block;max-height:100%;vertical-align:middle;fill:none;stroke:unset;width:auto}.rtl .s-installment-mispay-content-text,.rtl .s-installment-madfu-content-text,.rtl .s-installment-emkan-content-text,.rtl .s-installment-rajehi-content-text{right:14px;text-align:right;margin:0 0 0 16px}.rtl .s-installment-mispay-content img,.rtl .s-installment-madfu-content img,.rtl .s-installment-emkan-content img,.rtl .s-installment-rajehi-content img{left:14px !important}.ltr .s-installment-mispay-content img,.ltr .s-installment-madfu-content img,.ltr .s-installment-emkan-content img,.ltr .s-installment-rajehi-content img{right:14px !important}.s-installment-rajehi-content img{width:70px !important;height:40px !important}.s-installment-emkan-content img{height:35px !important}";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, h, H as Host } from './index-
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, H as Host } from './index-BcEkcgy-.js';
|
|
5
5
|
|
|
6
6
|
const sallaLoyaltyPrizeItemCss = "salla-loyalty-prize-item:hover{box-shadow:0 5px 15px 1px rgba(0, 0, 0, 0.04) !important}";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host } from './index-BcEkcgy-.js';
|
|
5
5
|
import { G as GiftIcon } from './gift-C0JNGIpa.js';
|
|
6
6
|
|
|
7
7
|
const sallaLoyaltyProgramCss = "";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { H as Helper } from './Helper-B51hb0bi.js';
|
|
6
6
|
import './anime.es-CgtvEd63.js';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host } from './index-BcEkcgy-.js';
|
|
5
5
|
|
|
6
6
|
var copyIcon = `<!-- Generated by IcoMoon.io -->
|
|
7
7
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h } from './index-
|
|
4
|
+
import { r as registerInstance, h } from './index-BcEkcgy-.js';
|
|
5
5
|
import { I as IconVerified } from './check-uTyAzPSy.js';
|
|
6
6
|
|
|
7
7
|
var iconFileArchive = `<!-- Generated by IcoMoon.io -->
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, a as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, a as getElement } from './index-BcEkcgy-.js';
|
|
5
5
|
import { H as Helper } from './Helper-B51hb0bi.js';
|
|
6
6
|
import './anime.es-CgtvEd63.js';
|
|
7
7
|
|