@salla.sa/twilight-components 2.14.174 → 2.14.175
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-CD_BaQp-.js → app-globals-DabZzG17.js} +3 -3
- package/dist/cjs/{app-globals-CD_BaQp-.js.map → app-globals-DabZzG17.js.map} +1 -1
- package/dist/cjs/{index-C3GqoGli.js → index-Dcq9GsQm.js} +4 -4
- package/dist/cjs/{index-C3GqoGli.js.map → index-Dcq9GsQm.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/salla-add-product-button_49.cjs.entry.js +1 -1
- 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-booking-field_2.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-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-offer.cjs.entry.js.map +1 -1
- package/dist/cjs/salla-offer.entry.cjs.js.map +1 -1
- package/dist/cjs/salla-order-summary.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-product-options.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-tooltip.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-offer/salla-offer.js +0 -1
- package/dist/collection/components/salla-offer/salla-offer.js.map +1 -1
- package/dist/components/index.js +2 -2
- package/dist/components/index.js.map +1 -1
- package/dist/components/salla-offer.js.map +1 -1
- package/dist/esm/{app-globals-BBJcPpgl.js → app-globals-Bl2bN9R6.js} +3 -3
- package/dist/esm/{app-globals-BBJcPpgl.js.map → app-globals-Bl2bN9R6.js.map} +1 -1
- package/dist/esm/{index-CX0uBHuY.js → index-8rC69jmJ.js} +4 -4
- package/dist/esm/{index-CX0uBHuY.js.map → index-8rC69jmJ.js.map} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/salla-add-product-button_49.entry.js +1 -1
- 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-booking-field_2.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-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-offer.entry.js.map +1 -1
- package/dist/esm/salla-order-summary.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-product-options.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-tooltip.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/esm-es5/{app-globals-BBJcPpgl.js → app-globals-Bl2bN9R6.js} +2 -2
- package/dist/esm-es5/{app-globals-BBJcPpgl.js.map → app-globals-Bl2bN9R6.js.map} +1 -1
- package/dist/esm-es5/{index-CX0uBHuY.js → index-8rC69jmJ.js} +3 -3
- package/dist/esm-es5/{index-CX0uBHuY.js.map → index-8rC69jmJ.js.map} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/salla-add-product-button_49.entry.js +1 -1
- package/dist/esm-es5/salla-advertisement.entry.js +1 -1
- package/dist/esm-es5/salla-app-install-alert.entry.js +1 -1
- package/dist/esm-es5/salla-apps-icons.entry.js +1 -1
- package/dist/esm-es5/salla-booking-field_2.entry.js +1 -1
- package/dist/esm-es5/salla-cart-item-offers.entry.js +1 -1
- package/dist/esm-es5/salla-conditional-offer.entry.js +1 -1
- package/dist/esm-es5/salla-contacts.entry.js +1 -1
- package/dist/esm-es5/salla-filters-widget.entry.js +2 -2
- package/dist/esm-es5/salla-filters.entry.js +1 -1
- package/dist/esm-es5/salla-installment.entry.js +1 -1
- package/dist/esm-es5/salla-loyalty-prize-item.entry.js +1 -1
- package/dist/esm-es5/salla-metadata.entry.js +1 -1
- package/dist/esm-es5/salla-notification-item.entry.js +1 -1
- package/dist/esm-es5/salla-notifications.entry.js +1 -1
- package/dist/esm-es5/salla-offer.entry.js +1 -1
- package/dist/esm-es5/salla-offer.entry.js.map +1 -1
- package/dist/esm-es5/salla-order-summary.entry.js +1 -1
- package/dist/esm-es5/salla-orders.entry.js +2 -2
- package/dist/esm-es5/salla-payments.entry.js +1 -1
- package/dist/esm-es5/salla-price-range.entry.js +1 -1
- package/dist/esm-es5/salla-product-options.entry.js +1 -1
- package/dist/esm-es5/salla-review-card.entry.js +1 -1
- package/dist/esm-es5/salla-reviews-page.entry.js +1 -1
- package/dist/esm-es5/salla-reviews.entry.js +1 -1
- package/dist/esm-es5/salla-social.entry.js +1 -1
- package/dist/esm-es5/salla-tooltip.entry.js +1 -1
- package/dist/esm-es5/salla-verify.entry.js +1 -1
- package/dist/esm-es5/salla-wallet.entry.js +1 -1
- package/dist/esm-es5/twilight.js +1 -1
- package/dist/twilight/{p-85e1b079.system.entry.js → p-06cd6130.system.entry.js} +2 -2
- package/dist/twilight/{p-718cf9c2.system.entry.js → p-0887287d.system.entry.js} +2 -2
- package/dist/twilight/{p-b1590e9b.entry.js → p-092d7efd.entry.js} +2 -2
- package/dist/twilight/{p-c991e7a9.entry.js → p-09fed654.entry.js} +2 -2
- package/dist/twilight/{p-1051476a.system.entry.js → p-0b73cb63.system.entry.js} +3 -3
- package/dist/twilight/{p-e250a54f.system.entry.js → p-16e84662.system.entry.js} +2 -2
- package/dist/twilight/{p-45bb9ebb.entry.js → p-1b752cd8.entry.js} +2 -2
- package/dist/twilight/{p-54aa62f6.entry.js → p-2131de3b.entry.js} +2 -2
- package/dist/twilight/{p-d5c8db3c.system.entry.js → p-2790a652.system.entry.js} +2 -2
- package/dist/twilight/{p-97b354fc.entry.js → p-2f7ea720.entry.js} +2 -2
- package/dist/twilight/p-2f7ea720.entry.js.map +1 -0
- package/dist/twilight/{p-60a339b2.system.entry.js → p-365be155.system.entry.js} +2 -2
- package/dist/twilight/{p-d7dc410a.entry.js → p-43b14796.entry.js} +2 -2
- package/dist/twilight/{p-3e4a70ae.entry.js → p-449a75fc.entry.js} +2 -2
- package/dist/twilight/{p-8de36749.entry.js → p-5262b657.entry.js} +2 -2
- package/dist/twilight/{p-2871c4ed.entry.js → p-558ff7cf.entry.js} +2 -2
- package/dist/twilight/{p-b29d7c75.entry.js → p-579a3547.entry.js} +2 -2
- package/dist/twilight/{p-18dbde81.entry.js → p-58232db6.entry.js} +2 -2
- package/dist/twilight/{p-41d3c422.system.entry.js → p-58cc8639.system.entry.js} +2 -2
- package/dist/twilight/{p-a7cd65cc.system.entry.js → p-5ed06c97.system.entry.js} +2 -2
- package/dist/twilight/{p-cbf5d10b.system.entry.js → p-5ef33dc1.system.entry.js} +2 -2
- package/dist/twilight/{p-861e4acb.system.entry.js → p-67e6ac2f.system.entry.js} +2 -2
- package/dist/twilight/{p-2f617403.entry.js → p-6fccf4e9.entry.js} +2 -2
- package/dist/twilight/{p-26be4656.system.entry.js → p-71de36fc.system.entry.js} +3 -3
- package/dist/twilight/{p-33f15762.system.entry.js → p-74052ff8.system.entry.js} +2 -2
- package/dist/twilight/p-74052ff8.system.entry.js.map +1 -0
- package/dist/twilight/{p-705f4e7c.system.entry.js → p-7f2502dc.system.entry.js} +2 -2
- package/dist/twilight/{p-c36b58cf.entry.js → p-81367a3c.entry.js} +2 -2
- package/dist/twilight/{p-7d79f24e.system.entry.js → p-817e733f.system.entry.js} +2 -2
- package/dist/twilight/{p-5b225162.system.entry.js → p-8b4281d6.system.entry.js} +2 -2
- package/dist/twilight/{p-afc6a140.entry.js → p-8ddccb3b.entry.js} +2 -2
- package/dist/twilight/{p-ee99372c.system.entry.js → p-8f7481ba.system.entry.js} +2 -2
- package/dist/twilight/{p-CX0uBHuY.js → p-8rC69jmJ.js} +3 -3
- package/dist/twilight/{p-CX0uBHuY.js.map → p-8rC69jmJ.js.map} +1 -1
- package/dist/twilight/{p-fdd7c18c.entry.js → p-93266eb2.entry.js} +2 -2
- package/dist/twilight/{p-a3c65a59.entry.js → p-96eac7b0.entry.js} +2 -2
- package/dist/twilight/{p-ec4917ea.system.entry.js → p-9769eccf.system.entry.js} +2 -2
- package/dist/twilight/{p-86862ab0.entry.js → p-9fff207a.entry.js} +2 -2
- package/dist/twilight/{p-BbMtIVz6.system.js.map → p-AIzmpzc2.system.js.map} +1 -1
- package/dist/twilight/{p-BYpq9P24.system.js.map → p-B-DVbNz_.system.js.map} +1 -1
- package/dist/twilight/{p-BUuDJl4A.system.js.map → p-BXGhJDi-.system.js.map} +1 -1
- package/dist/twilight/{p-D-XXtzuS.system.js.map → p-BY4PZA26.system.js.map} +1 -1
- package/dist/twilight/{p-BYmWNjXa.system.js.map → p-BaNAPrjg.system.js.map} +1 -1
- package/dist/twilight/{p-Cu2Id4O_.system.js → p-BoX5GkMl.system.js} +3 -3
- package/dist/twilight/{p-Cu2Id4O_.system.js.map → p-BoX5GkMl.system.js.map} +1 -1
- package/dist/twilight/{p-B3d1A_no.system.js.map → p-BrbV-4vA.system.js.map} +1 -1
- package/dist/twilight/{p-DJYJQNBM.system.js.map → p-C7uilJzh.system.js.map} +1 -1
- package/dist/twilight/{p-6Z51fW5V.system.js.map → p-CHkAv0yL.system.js.map} +1 -1
- package/dist/twilight/{p-BdwJQyF9.system.js.map → p-CTJeMLn_.system.js.map} +1 -1
- package/dist/twilight/{p-BfTudTlU.system.js.map → p-CWTnuTlC.system.js.map} +1 -1
- package/dist/twilight/{p-zsSwLdpB.system.js.map → p-D-XNsxDZ.system.js.map} +1 -1
- package/dist/twilight/{p-DWXoZRgY.system.js.map → p-D-phf_4a.system.js.map} +1 -1
- package/dist/twilight/{p-CQiyOX1V.system.js.map → p-D87fuwNW.system.js.map} +1 -1
- package/dist/twilight/{p-DyVcaWJ1.system.js.map → p-DEzhG-S_.system.js.map} +1 -1
- package/dist/twilight/{p-DqYY_MOh.system.js.map → p-DIdb3mfL.system.js.map} +1 -1
- package/dist/twilight/{p-DoDgrbUh.system.js.map → p-DJBeNlJO.system.js.map} +1 -1
- package/dist/twilight/{p-CFQbVLkx.system.js.map → p-DWhdZbVI.system.js.map} +1 -1
- package/dist/twilight/{p-C7kuUNJ9.system.js.map → p-DY52_1BS.system.js.map} +1 -1
- package/dist/twilight/{p-Dgv9KloL.system.js.map → p-DZom_81x.system.js.map} +1 -1
- package/dist/twilight/{p-D0mJZ4Ks.js → p-DdsU8AsW.js} +2 -2
- package/dist/twilight/{p-D0mJZ4Ks.js.map → p-DdsU8AsW.js.map} +1 -1
- package/dist/twilight/{p-BLvmEwO6.system.js → p-HDTWg7_s.system.js} +2 -2
- package/dist/twilight/{p-BLvmEwO6.system.js.map → p-HDTWg7_s.system.js.map} +1 -1
- package/dist/twilight/{p-C7XOlGYs.system.js.map → p-QF1kqTVP.system.js.map} +1 -1
- package/dist/twilight/{p-CVmHibBr.system.js.map → p-Y6LeYhRT.system.js.map} +1 -1
- package/dist/twilight/{p-CUzMCcle.system.js.map → p-_Bs7lBkx.system.js.map} +1 -1
- package/dist/twilight/{p-ad901f4c.system.entry.js → p-a53f3564.system.entry.js} +2 -2
- package/dist/twilight/{p-afa167be.entry.js → p-aafcf0e1.entry.js} +2 -2
- package/dist/twilight/{p-239eb0b2.system.entry.js → p-ab06e10e.system.entry.js} +2 -2
- package/dist/twilight/{p-23a1656f.system.entry.js → p-abe21069.system.entry.js} +2 -2
- package/dist/twilight/{p-a48d4e48.entry.js → p-b1bc5c23.entry.js} +7 -7
- package/dist/twilight/{p-74868f2f.system.entry.js → p-b4a49e74.system.entry.js} +2 -2
- package/dist/twilight/{p-a6704180.system.entry.js → p-b83938c9.system.entry.js} +2 -2
- package/dist/twilight/{p-ee3d9cfa.entry.js → p-c1d54266.entry.js} +2 -2
- package/dist/twilight/{p-c228b2aa.system.entry.js → p-c45077c9.system.entry.js} +2 -2
- package/dist/twilight/{p-f7509c22.system.entry.js → p-c5a92807.system.entry.js} +2 -2
- package/dist/twilight/{p-zeGtPtUH.system.js.map → p-cNswK5sp.system.js.map} +1 -1
- package/dist/twilight/{p-d4d9b899.entry.js → p-cd84d54a.entry.js} +2 -2
- package/dist/twilight/{p-c6f235c7.system.entry.js → p-d0b3e106.system.entry.js} +2 -2
- package/dist/twilight/{p-864db8ef.entry.js → p-d1ea36f4.entry.js} +2 -2
- package/dist/twilight/{p-M6Ed3i_n.system.js.map → p-diqKohWS.system.js.map} +1 -1
- package/dist/twilight/{p-d1169fdb.entry.js → p-e2a7da4e.entry.js} +2 -2
- package/dist/twilight/{p-d2fd1396.entry.js → p-e9f7ea25.entry.js} +2 -2
- package/dist/twilight/{p-71e5c489.entry.js → p-ed8ee877.entry.js} +2 -2
- package/dist/twilight/{p-707dc2da.entry.js → p-f16b6269.entry.js} +2 -2
- package/dist/twilight/{p-a040ce17.system.entry.js → p-f6ecc091.system.entry.js} +2 -2
- package/dist/twilight/{p-0e30d2ab.system.entry.js → p-f86089a5.system.entry.js} +2 -2
- package/dist/twilight/{p-01758264.entry.js → p-f87ab3b3.entry.js} +2 -2
- package/dist/twilight/{p-c7a36a2f.system.entry.js → p-fb2294a5.system.entry.js} +2 -2
- package/dist/twilight/{p-7f649627.entry.js → p-fbe16cca.entry.js} +2 -2
- package/dist/twilight/p-g7BpsiwE.system.js.map +1 -0
- package/dist/twilight/{p-yDI_0zwM.system.js.map → p-oMYbEDtH.system.js.map} +1 -1
- package/dist/twilight/{p-CtSOOlDj.system.js → p-p4T4UdAZ.system.js} +2 -2
- package/dist/twilight/{p-CtSOOlDj.system.js.map → p-p4T4UdAZ.system.js.map} +1 -1
- package/dist/twilight/{p-CM2_m-81.system.js.map → p-pq7Zum_e.system.js.map} +1 -1
- package/dist/twilight/{p-F3zRr1u-.system.js.map → p-tBHYVpoa.system.js.map} +1 -1
- package/dist/twilight/{p-Y_liGs3J.system.js.map → p-y6mDpD4e.system.js.map} +1 -1
- package/dist/twilight/salla-offer.entry.esm.js.map +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/twilight/twilight.js +1 -1
- package/package.json +5 -5
- package/dist/twilight/p-33f15762.system.entry.js.map +0 -1
- package/dist/twilight/p-97b354fc.entry.js.map +0 -1
- package/dist/twilight/p-DZNDJNsm.system.js.map +0 -1
- /package/dist/twilight/{p-85e1b079.system.entry.js.map → p-06cd6130.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-718cf9c2.system.entry.js.map → p-0887287d.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-b1590e9b.entry.js.map → p-092d7efd.entry.js.map} +0 -0
- /package/dist/twilight/{p-c991e7a9.entry.js.map → p-09fed654.entry.js.map} +0 -0
- /package/dist/twilight/{p-1051476a.system.entry.js.map → p-0b73cb63.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-e250a54f.system.entry.js.map → p-16e84662.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-45bb9ebb.entry.js.map → p-1b752cd8.entry.js.map} +0 -0
- /package/dist/twilight/{p-54aa62f6.entry.js.map → p-2131de3b.entry.js.map} +0 -0
- /package/dist/twilight/{p-d5c8db3c.system.entry.js.map → p-2790a652.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-60a339b2.system.entry.js.map → p-365be155.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-d7dc410a.entry.js.map → p-43b14796.entry.js.map} +0 -0
- /package/dist/twilight/{p-3e4a70ae.entry.js.map → p-449a75fc.entry.js.map} +0 -0
- /package/dist/twilight/{p-8de36749.entry.js.map → p-5262b657.entry.js.map} +0 -0
- /package/dist/twilight/{p-2871c4ed.entry.js.map → p-558ff7cf.entry.js.map} +0 -0
- /package/dist/twilight/{p-b29d7c75.entry.js.map → p-579a3547.entry.js.map} +0 -0
- /package/dist/twilight/{p-18dbde81.entry.js.map → p-58232db6.entry.js.map} +0 -0
- /package/dist/twilight/{p-41d3c422.system.entry.js.map → p-58cc8639.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-a7cd65cc.system.entry.js.map → p-5ed06c97.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-cbf5d10b.system.entry.js.map → p-5ef33dc1.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-861e4acb.system.entry.js.map → p-67e6ac2f.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-2f617403.entry.js.map → p-6fccf4e9.entry.js.map} +0 -0
- /package/dist/twilight/{p-26be4656.system.entry.js.map → p-71de36fc.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-705f4e7c.system.entry.js.map → p-7f2502dc.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-c36b58cf.entry.js.map → p-81367a3c.entry.js.map} +0 -0
- /package/dist/twilight/{p-7d79f24e.system.entry.js.map → p-817e733f.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-5b225162.system.entry.js.map → p-8b4281d6.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-afc6a140.entry.js.map → p-8ddccb3b.entry.js.map} +0 -0
- /package/dist/twilight/{p-ee99372c.system.entry.js.map → p-8f7481ba.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-fdd7c18c.entry.js.map → p-93266eb2.entry.js.map} +0 -0
- /package/dist/twilight/{p-a3c65a59.entry.js.map → p-96eac7b0.entry.js.map} +0 -0
- /package/dist/twilight/{p-ec4917ea.system.entry.js.map → p-9769eccf.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-86862ab0.entry.js.map → p-9fff207a.entry.js.map} +0 -0
- /package/dist/twilight/{p-ad901f4c.system.entry.js.map → p-a53f3564.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-afa167be.entry.js.map → p-aafcf0e1.entry.js.map} +0 -0
- /package/dist/twilight/{p-239eb0b2.system.entry.js.map → p-ab06e10e.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-23a1656f.system.entry.js.map → p-abe21069.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-a48d4e48.entry.js.map → p-b1bc5c23.entry.js.map} +0 -0
- /package/dist/twilight/{p-74868f2f.system.entry.js.map → p-b4a49e74.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-a6704180.system.entry.js.map → p-b83938c9.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-ee3d9cfa.entry.js.map → p-c1d54266.entry.js.map} +0 -0
- /package/dist/twilight/{p-c228b2aa.system.entry.js.map → p-c45077c9.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-f7509c22.system.entry.js.map → p-c5a92807.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-d4d9b899.entry.js.map → p-cd84d54a.entry.js.map} +0 -0
- /package/dist/twilight/{p-c6f235c7.system.entry.js.map → p-d0b3e106.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-864db8ef.entry.js.map → p-d1ea36f4.entry.js.map} +0 -0
- /package/dist/twilight/{p-d1169fdb.entry.js.map → p-e2a7da4e.entry.js.map} +0 -0
- /package/dist/twilight/{p-d2fd1396.entry.js.map → p-e9f7ea25.entry.js.map} +0 -0
- /package/dist/twilight/{p-71e5c489.entry.js.map → p-ed8ee877.entry.js.map} +0 -0
- /package/dist/twilight/{p-707dc2da.entry.js.map → p-f16b6269.entry.js.map} +0 -0
- /package/dist/twilight/{p-a040ce17.system.entry.js.map → p-f6ecc091.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-0e30d2ab.system.entry.js.map → p-f86089a5.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-01758264.entry.js.map → p-f87ab3b3.entry.js.map} +0 -0
- /package/dist/twilight/{p-c7a36a2f.system.entry.js.map → p-fb2294a5.system.entry.js.map} +0 -0
- /package/dist/twilight/{p-7f649627.entry.js.map → p-fbe16cca.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-
|
|
1
|
+
{"version":3,"file":"p-BrbV-4vA.system.js","sources":["src/components/salla-apps-icons/salla-apps-icons.scss?tag=salla-apps-icons","src/components/salla-apps-icons/salla-apps-icons.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Host, Prop, State, h, Element } from '@stencil/core';\n/**\n * @slot app - Replaces app item, has replaceable props `{icon}`, `{name}`.\n */\n@Component({\n tag: 'salla-apps-icons',\n styleUrl: 'salla-apps-icons.scss',\n})\nexport class SallaAppsIcons {\n constructor() {\n this.appSlot = this.host.querySelector('[slot=\"app\"]')?.innerHTML || `<img alt={name} src={icon} />`;\n salla.onReady(() => {\n this.apps = salla.config.get('store.apps');\n });\n\n salla.lang.onLoaded(() => {\n this.appsTitle = salla.lang.get('blocks.footer.download_apps');\n });\n }\n private readonly appSlot: string;\n @Element() host: HTMLElement;\n @State() apps = salla.config.get('store.apps');\n\n /**\n * Flag to show or hide title.\n */\n @Prop() hideTitle: boolean;\n\n /**\n * The title to display.\n */\n @Prop() appsTitle: string;\n\n /**\n * Display flag to horizontal/vertical.\n */\n @Prop() vertical: boolean;\n\n private getAppsArray() {\n return Object.entries(this.apps)\n .map(([name, value]) => ({ name, value }));\n }\n\n componentWillLoad() {\n return new Promise(resolve => salla.onReady(resolve));\n }\n\n render() {\n const appsArray = this.getAppsArray();\n if (Array.isArray(appsArray) && !appsArray.length) {\n return;\n }\n return (\n <Host class=\"s-apps-icons\">\n {!this.hideTitle && <h3>{this.appsTitle}</h3>}\n <div class={{\"s-apps-icons-list\": true, \"vertical\": this.vertical}}>\n {appsArray.map((app, index) => (\n <a key={index} href={app.value as string} rel=\"noreferrer\" target=\"_blank\" class=\"s-apps-icons-item\" id=\"app-slot\" innerHTML={this.appSlot\n .replace(/\\{icon\\}/g, salla.url.cdn(`images/${app.name}.png`))\n .replace(/\\{name\\}/g, app.name)}>\n </a>\n ))}\n </div>\n </Host>\n );\n }\n componentDidRender() {\n this.host.querySelector('[slot=\"app\"]')?.remove();\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;MAAA,MAAM,iBAAiB,GAAG,sBAAsB;;YCQnC,cAAc,+BAAA,MAAA;MACzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;cAYS,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;MAX5C,QAAA,IAAI,CAAC,OAAO,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,0CAAE,SAAS,KAAI,+BAA+B;MACpG,QAAA,KAAK,CAAC,OAAO,CAAC,MAAK;kBACjB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;MAC5C,SAAC,CAAC;MAEF,QAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAK;kBACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC;MAChE,SAAC,CAAC;MACH;UAoBO,YAAY,GAAA;MAClB,QAAA,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;MAC5B,aAAA,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;;UAG9C,iBAAiB,GAAA;MACf,QAAA,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;UAGvD,MAAM,GAAA;MACJ,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE;MACrC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;kBACjD;;cAEF,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,KAAK,EAAC,cAAc,EAAA,EACrB,CAAC,IAAI,CAAC,SAAS,IAAI,cAAK,IAAI,CAAC,SAAS,CAAM,EAC7C,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAC,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAC,IAC/D,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,MACvB,CAAG,CAAA,GAAA,EAAA,EAAA,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,KAAe,EAAE,GAAG,EAAC,YAAY,EAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAC,mBAAmB,EAAC,EAAE,EAAC,UAAU,EAAC,SAAS,EAAE,IAAI,CAAC;MACjI,iBAAA,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,IAAI,CAAA,IAAA,CAAM,CAAC;MAC5D,iBAAA,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,EAAA,CAC7B,CACL,CAAC,CACE,CACH;;UAGX,kBAAkB,GAAA;;MAChB,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,EAAE;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-DJYJQNBM.system.js","sources":["src/components/salla-wallet/salla-wallet.scss?tag=salla-wallet","src/components/salla-wallet/salla-wallet.tsx"],"sourcesContent":[".s-wallet-table {\n min-width: 100%;\n\n &-balance-container {\n display: flex !important;\n align-items: center !important;\n justify-content: flex-start !important;\n gap: 1rem;\n }\n\n &-balance-icon {\n border-radius: 50%;\n width: 52px;\n height: 52px;\n font-size: 25px;\n padding: 16px 13px;\n background: var(--color-primary-reverse);\n color: var(--color-primary);\n }\n\n &-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n i {\n font-size: 80px;\n margin: 4rem 0 2rem;\n color: var(--infinte-color);\n }\n }\n\n &-transaction-status {\n padding: 6px 19px !important;\n border-radius: 20px;\n width: max-content;\n display: flex;\n align-items: center;\n\n &-default {\n background: #fff6eb;\n color: #a46f29;\n }\n &-cashback {\n background: #effbf6;\n color: #00af6c;\n }\n\n &-refund {\n background: #ecf3fe;\n color: #5196f3;\n }\n\n &-purchase {\n background: #feecec;\n color: #f55157;\n }\n }\n\n &-transaction-status-icons {\n &-success {\n color: #00af6c;\n }\n }\n}\n","import { Component, Host, h, State } from '@stencil/core';\nimport { TransactionItem } from './interfaces';\n\n@Component({\n tag: 'salla-wallet',\n styleUrl: 'salla-wallet.scss',\n})\nexport class SallaWalletTable {\n @State() transactionsArray: Array<TransactionItem>;\n @State() balance: number;\n @State() isLoading: boolean = false;\n @State() nextPageUrl: string = '';\n\n componentWillLoad() {\n return salla.onReady().then(() => this.loadTransactions());\n }\n\n private handleClick = () => {\n this.loadMoreTransactions();\n };\n\n private async loadTransactions() {\n this.isLoading = true;\n\n try {\n let url = `/balance/wallet?per_page=10&page=1`;\n let resp = await salla.api.request(url);\n\n this.nextPageUrl = resp.data.transactions.next_page_url;\n this.transactionsArray = resp.data.transactions;\n this.balance = resp.data.balance;\n } catch (error) {\n console.error('Error loading wallet transactions', error);\n } finally {\n this.isLoading = false;\n }\n }\n private async loadMoreTransactions() {\n this.isLoading = true;\n\n try {\n let url = this.nextPageUrl || '/balance/wallet?page=2&per_page=10';\n let resp = await salla.api.request(url);\n\n this.nextPageUrl = resp.data.transactions.next_page_url;\n this.transactionsArray.push(...resp.data.transactions.data);\n this.balance = resp.data.balance;\n } catch (error) {\n console.error('Error loading wallet transactions', error);\n } finally {\n this.isLoading = false;\n }\n }\n\n render() {\n if (this.transactionsArray.length > 0) {\n return (\n <Host>\n <table class=\"s-wallet-table\">\n <tbody class=\"s-wallet-table-tbody\">\n <tr class=\"s-table__tr\">\n <td>\n <div class=\"s-wallet-table-balance-container\">\n <i class=\"s-wallet-table-balance-icon sicon-wallet\"></i>\n <div>\n <div innerHTML={salla.money(this.balance)}></div>\n <div class=\"font-normal text-gray-400\">\n {' '}\n {salla.lang.get('pages.wallet.balance')}\n </div>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <h2 style={{ 'margin-top': '32px' }}>\n {salla.lang.get('pages.wallet.title')}\n </h2>\n <table class=\"s-wallet-table\">\n <thead class=\"s-wallet-table-head\">\n <tr class=\"s-wallet-table-head-tr\">\n <th scope=\"col\">\n {salla.lang.get('pages.wallet.transaction_number')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.amount')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.date')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.order_no')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.expiry_date')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.transaction_type')}{' '}\n </th>\n </tr>\n </thead>\n <tbody class=\"s-wallet-table-tbody\">\n {this.transactionsArray.map(transaction => (\n <tr class=\"s-wallet-table-tbody-tr s-wallet-table-tbody-tr-shadow animated\">\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.transaction_number')}:\n </span>\n {transaction.id && (\n <span class=\"hidden md:inline-block\">#{transaction.id}</span>\n )}\n\n <div class=\"flex items-center md:hidden\">\n <salla-button\n class=\"relative\"\n color=\"dark\"\n shape=\"link\"\n data-content={transaction.order_id}\n >\n {transaction.order_id && <span>#{transaction.order_id}</span>}\n </salla-button>\n </div>\n </div>\n </td>\n\n <td id=\"main123\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main124\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main125\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.amount')}:\n </span>\n <div innerHTML={salla.money(transaction.amount)}></div>\n </div>\n </td>\n\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.date')}:\n </span>\n {transaction.created_at &&\n new Date(transaction.created_at * 1000).toLocaleDateString(\n salla.lang.locale,\n {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n },\n )}\n </div>\n </td>\n\n <td id=\"main133\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main134\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main135\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.order_no')}:\n </span>\n <span class=\"rtl:mr-auto ltr:ml-auto md:mx-0\">\n {transaction.order_id && <span>#{transaction.order_id}</span>}\n </span>\n </div>\n </td>\n\n <td id=\"main143\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main144\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main145\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.expiry_date')}:\n </span>\n\n <span>\n {transaction.expired_at &&\n new Date(transaction.expired_at * 1000).toLocaleDateString(\n salla.lang.locale,\n {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n },\n )}\n </span>\n </div>\n </td>\n\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <div>\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.transaction_type')}:\n </span>\n </div>\n <div\n class={{\n 's-wallet-table-transaction-status-default': true,\n 's-wallet-table-transaction-status-cashback': transaction.action_type === 'cashback',\n 's-wallet-table-transaction-status-refund': transaction.action_type === 'refund',\n 's-wallet-table-transaction-status-purchase': transaction.action_type === 'purchase_by_wallet',\n }}\n >\n {!!transaction.description && (\n <i\n id={transaction.id.toString()}\n class=\"sicon-information text-lg rtl:ml-4 ltr:mr-4 s-wallet-table-transaction-status-icon-success\"\n ></i>\n )}\n {!!transaction.description && (\n <salla-tooltip\n text={transaction.description}\n targetId={transaction.id.toString()}\n ></salla-tooltip>\n )}\n <span>{transaction.title}</span>\n </div>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n\n <div class=\"s-infinite-scroll-wrapper\">\n {!!this.nextPageUrl && (\n <salla-button onClick={this.handleClick} loading={this.isLoading}>\n {salla.lang.get('common.elements.load_more')}\n </salla-button>\n )}\n </div>\n </Host>\n );\n } else {\n return (\n <Host>\n <h2 style={{ 'margin-top': '32px' }}>\n {salla.lang.get('pages.wallet.title')}\n </h2>\n <div class=\"s-wallet-table-empty-state\">\n <i class=\"sicon-full-wallet\"></i>\n <div class=\"text-center p-3 text-xl font-bold \">\n {salla.lang.get('pages.wallet.no_transactions')}\n </div>\n <div class=\"text-center text-gray-400 text-sm font-normal \">\n {salla.lang.get('pages.wallet.zero_balance')}{' '}\n </div>\n </div>\n </Host>\n );\n }\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-C7uilJzh.system.js","sources":["src/components/salla-wallet/salla-wallet.scss?tag=salla-wallet","src/components/salla-wallet/salla-wallet.tsx"],"sourcesContent":[".s-wallet-table {\n min-width: 100%;\n\n &-balance-container {\n display: flex !important;\n align-items: center !important;\n justify-content: flex-start !important;\n gap: 1rem;\n }\n\n &-balance-icon {\n border-radius: 50%;\n width: 52px;\n height: 52px;\n font-size: 25px;\n padding: 16px 13px;\n background: var(--color-primary-reverse);\n color: var(--color-primary);\n }\n\n &-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n i {\n font-size: 80px;\n margin: 4rem 0 2rem;\n color: var(--infinte-color);\n }\n }\n\n &-transaction-status {\n padding: 6px 19px !important;\n border-radius: 20px;\n width: max-content;\n display: flex;\n align-items: center;\n\n &-default {\n background: #fff6eb;\n color: #a46f29;\n }\n &-cashback {\n background: #effbf6;\n color: #00af6c;\n }\n\n &-refund {\n background: #ecf3fe;\n color: #5196f3;\n }\n\n &-purchase {\n background: #feecec;\n color: #f55157;\n }\n }\n\n &-transaction-status-icons {\n &-success {\n color: #00af6c;\n }\n }\n}\n","import { Component, Host, h, State } from '@stencil/core';\nimport { TransactionItem } from './interfaces';\n\n@Component({\n tag: 'salla-wallet',\n styleUrl: 'salla-wallet.scss',\n})\nexport class SallaWalletTable {\n @State() transactionsArray: Array<TransactionItem>;\n @State() balance: number;\n @State() isLoading: boolean = false;\n @State() nextPageUrl: string = '';\n\n componentWillLoad() {\n return salla.onReady().then(() => this.loadTransactions());\n }\n\n private handleClick = () => {\n this.loadMoreTransactions();\n };\n\n private async loadTransactions() {\n this.isLoading = true;\n\n try {\n let url = `/balance/wallet?per_page=10&page=1`;\n let resp = await salla.api.request(url);\n\n this.nextPageUrl = resp.data.transactions.next_page_url;\n this.transactionsArray = resp.data.transactions;\n this.balance = resp.data.balance;\n } catch (error) {\n console.error('Error loading wallet transactions', error);\n } finally {\n this.isLoading = false;\n }\n }\n private async loadMoreTransactions() {\n this.isLoading = true;\n\n try {\n let url = this.nextPageUrl || '/balance/wallet?page=2&per_page=10';\n let resp = await salla.api.request(url);\n\n this.nextPageUrl = resp.data.transactions.next_page_url;\n this.transactionsArray.push(...resp.data.transactions.data);\n this.balance = resp.data.balance;\n } catch (error) {\n console.error('Error loading wallet transactions', error);\n } finally {\n this.isLoading = false;\n }\n }\n\n render() {\n if (this.transactionsArray.length > 0) {\n return (\n <Host>\n <table class=\"s-wallet-table\">\n <tbody class=\"s-wallet-table-tbody\">\n <tr class=\"s-table__tr\">\n <td>\n <div class=\"s-wallet-table-balance-container\">\n <i class=\"s-wallet-table-balance-icon sicon-wallet\"></i>\n <div>\n <div innerHTML={salla.money(this.balance)}></div>\n <div class=\"font-normal text-gray-400\">\n {' '}\n {salla.lang.get('pages.wallet.balance')}\n </div>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <h2 style={{ 'margin-top': '32px' }}>\n {salla.lang.get('pages.wallet.title')}\n </h2>\n <table class=\"s-wallet-table\">\n <thead class=\"s-wallet-table-head\">\n <tr class=\"s-wallet-table-head-tr\">\n <th scope=\"col\">\n {salla.lang.get('pages.wallet.transaction_number')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.amount')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.date')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.order_no')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.expiry_date')}\n </th>\n <th scope=\"col\" class=\"s-wallet-table-head-tr-th\">\n {salla.lang.get('pages.wallet.transaction_type')}{' '}\n </th>\n </tr>\n </thead>\n <tbody class=\"s-wallet-table-tbody\">\n {this.transactionsArray.map(transaction => (\n <tr class=\"s-wallet-table-tbody-tr s-wallet-table-tbody-tr-shadow animated\">\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.transaction_number')}:\n </span>\n {transaction.id && (\n <span class=\"hidden md:inline-block\">#{transaction.id}</span>\n )}\n\n <div class=\"flex items-center md:hidden\">\n <salla-button\n class=\"relative\"\n color=\"dark\"\n shape=\"link\"\n data-content={transaction.order_id}\n >\n {transaction.order_id && <span>#{transaction.order_id}</span>}\n </salla-button>\n </div>\n </div>\n </td>\n\n <td id=\"main123\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main124\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main125\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.amount')}:\n </span>\n <div innerHTML={salla.money(transaction.amount)}></div>\n </div>\n </td>\n\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.date')}:\n </span>\n {transaction.created_at &&\n new Date(transaction.created_at * 1000).toLocaleDateString(\n salla.lang.locale,\n {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n },\n )}\n </div>\n </td>\n\n <td id=\"main133\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main134\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main135\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.order_no')}:\n </span>\n <span class=\"rtl:mr-auto ltr:ml-auto md:mx-0\">\n {transaction.order_id && <span>#{transaction.order_id}</span>}\n </span>\n </div>\n </td>\n\n <td id=\"main143\" class=\"s-wallet-table-tbody-tr-td\">\n <div id=\"main144\" class=\"s-wallet-table-tbody-tr-td-content\">\n <span id=\"main145\" class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.expiry_date')}:\n </span>\n\n <span>\n {transaction.expired_at &&\n new Date(transaction.expired_at * 1000).toLocaleDateString(\n salla.lang.locale,\n {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n hour: 'numeric',\n },\n )}\n </span>\n </div>\n </td>\n\n <td class=\"s-wallet-table-tbody-tr-td\">\n <div class=\"s-wallet-table-tbody-tr-td-content\">\n <div>\n <span class=\"s-wallet-mobile-title\">\n {salla.lang.get('pages.wallet.transaction_type')}:\n </span>\n </div>\n <div\n class={{\n 's-wallet-table-transaction-status-default': true,\n 's-wallet-table-transaction-status-cashback': transaction.action_type === 'cashback',\n 's-wallet-table-transaction-status-refund': transaction.action_type === 'refund',\n 's-wallet-table-transaction-status-purchase': transaction.action_type === 'purchase_by_wallet',\n }}\n >\n {!!transaction.description && (\n <i\n id={transaction.id.toString()}\n class=\"sicon-information text-lg rtl:ml-4 ltr:mr-4 s-wallet-table-transaction-status-icon-success\"\n ></i>\n )}\n {!!transaction.description && (\n <salla-tooltip\n text={transaction.description}\n targetId={transaction.id.toString()}\n ></salla-tooltip>\n )}\n <span>{transaction.title}</span>\n </div>\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n\n <div class=\"s-infinite-scroll-wrapper\">\n {!!this.nextPageUrl && (\n <salla-button onClick={this.handleClick} loading={this.isLoading}>\n {salla.lang.get('common.elements.load_more')}\n </salla-button>\n )}\n </div>\n </Host>\n );\n } else {\n return (\n <Host>\n <h2 style={{ 'margin-top': '32px' }}>\n {salla.lang.get('pages.wallet.title')}\n </h2>\n <div class=\"s-wallet-table-empty-state\">\n <i class=\"sicon-full-wallet\"></i>\n <div class=\"text-center p-3 text-xl font-bold \">\n {salla.lang.get('pages.wallet.no_transactions')}\n </div>\n <div class=\"text-center text-gray-400 text-sm font-normal \">\n {salla.lang.get('pages.wallet.zero_balance')}{' '}\n </div>\n </div>\n </Host>\n );\n }\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-
|
|
1
|
+
{"version":3,"file":"p-CHkAv0yL.system.js","sources":["src/components/salla-notifications/salla-notifications.scss?tag=salla-notification-item","src/components/salla-notifications/salla-notification-item.tsx"],"sourcesContent":["","import { Component, h, Prop } from '@stencil/core';\nimport { Notification } from './interfaces';\n\n@Component({\n tag: 'salla-notification-item',\n styleUrl: 'salla-notifications.scss',\n})\nexport class SallaNotificationItem {\n\n /**\n * Notification instance to render.\n */\n @Prop() notification: Notification;\n\n render() {\n return <a href={this.notification.url}\n class={{ \"s-notifications-item\": true, \"s-notifications-item-shadow\": true, \"s-notifications-item-read\": !this.notification.is_new }}>\n <span class=\"s-notifications-item-icon\">\n <i class={{ 's-notifications-item-icon sicon-bell-ring': true, 's-notifications-item-icon-new': this.notification.is_new }}></i>\n </span>\n <div class=\"s-notifications-item-content\">\n <div class=\"s-notifications-item-content-leading\">\n <h4>{this.notification.title}</h4>\n <p>{this.notification.sub_title}</p>\n </div>\n <span class=\"s-notifications-item-content-trailing\">\n <i class=\"sicon-time s-notifications-item-content-trailing-icon\"></i>\n <span>{this.notification.date}</span>\n </span>\n </div>\n </a>\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;YAAA,MAAM,qBAAqB,GAAG,EAAE;;kBCOnB,qBAAqB,sCAAA,MAAA;;;;gBAOhC,MAAM,GAAA;oBACJ,OAAO,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,EAC/B,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAA,EACpI,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACrC,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAG,KAAK,EAAE,EAAE,2CAA2C,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAM,CAC3H,EACP,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,8BAA8B,EAAA,EACvC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sCAAsC,EAAA,EAC/C,CAAA,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAM,EAClC,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAK,CAChC,EACN,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,uCAAuC,EAAA,EACjD,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,uDAAuD,EAAK,CAAA,EACrE,CAAO,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAQ,CAChC,CACH,CACJ;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-
|
|
1
|
+
{"version":3,"file":"p-CTJeMLn_.system.js","sources":["src/components/salla-advertisement/salla-advertisement.scss?tag=salla-advertisement","src/components/salla-advertisement/salla-advertisement.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, State, Element, h } from '@stencil/core';\nimport { Advertisement } from './interfaces';\nimport AnimeJS from 'animejs';\n/**\n * @name SallaAdvertisement\n * @description A StencilJS component for handling and displaying advertisements in different pages of salla applications.\n * @tag salla-advertisement\n */\n\n/**\n * @slot adv - Replaces the entire advertisement, has replaceable props `{icon}`, `{url}`, `{target}`, `{description}`, `{bg_color}`, `{text_color}`.\n * */\n@Component({\n tag: 'salla-advertisement',\n styleUrl: 'salla-advertisement.scss',\n})\nexport class SallaAdvertisement {\n /**\n * Constructor for initializing the component.\n */\n constructor() {\n salla.onReady(() => {\n this.currentSlug = salla.config.get(\"page.slug\");\n })\n\n this.advSlot = this.host.querySelector('[slot=\"adv\"]')?.innerHTML || `<div class=\"s-advertisement-content\"><h2 class=\"s-advertisement-content-main\">{iconElem}{urlElem}</h2>{closeElem}</div>\n `;\n }\n private readonly advSlot: string;\n // State properties for managing component state\n @State() position: string;\n @State() advertisements: Advertisement[];\n @State() advertIcon: string;\n @State() currentSlug: string = salla.config.get(\"page.slug\");\n\n @Element() private host: HTMLElement;\n\n\n /**\n * Checks whether an advertisement is marked as not visible/dismissed.\n * @param advert - The advertisement to check.\n * @returns True if the advertisement is not visible, false otherwise.\n */\n private isNotVisible(advert: Advertisement): boolean {\n return !!salla.storage.get(`statusAd-${advert.id}`)\n }\n\n /**\n * Sets a flag to control the visibility of an advertisement and triggers an animation when hiding it.\n * @param advert - The advertisement to update.\n * @param flag - The flag indicating whether to display or hide the advertisement.\n */\n private setCanDisplayFlag(advert: Advertisement, flag: boolean): void {\n if (!flag) {\n // Set the statusAd flag to 'dismissed'\n salla.storage.set(`statusAd-${advert.id}`, 'dismissed');\n // Trigger an animation to hide the advertisement\n AnimeJS({\n targets: this.host,\n opacity: [1, 0],\n duration: 300,\n height: [this.host.clientHeight, 0],\n easing: 'easeInOutQuad',\n });\n }\n }\n\n /**\n * Renders the advertisements based on the fetched data and visibility status.\n * @returns JSX for rendering advertisements.\n */\n render() {\n if ((Array.isArray(this.advertisements) && !this.advertisements.length) || !this.advertisements) {\n return;\n }\n return this.advertisements.map((advertisement: Advertisement) => {\n return <div class={{ \"s-hidden\": this.isNotVisible(advertisement), 's-advertisement': true }} data-id={advertisement.id}\n style={{ \"background-color\": advertisement.colors.bg, \"color\": advertisement.colors.text }}>\n <div id=\"adv-slot\" innerHTML={\n this.advSlot\n // Replace the props with the advertisement data\n // !Note: The props with the 'Elem' suffix are for internal use only.\n .replace(\"{iconElem}\", `<i class=\"s-advertisement-content-icon ${advertisement.icon}\"></i>`)\n .replace(\"{urlElem}\", advertisement.url ? `<a href=\"${advertisement.url}\" target=\"${advertisement.target}\">${advertisement.description}</a>` : advertisement.description)\n .replace(\"{closeElem}\", `<button class=\"s-advertisement-action\" aria-label=\"close-alert\"><i class=\"sicon-cancel\"></i></button>`)\n .replace('{icon}', advertisement.icon)\n .replace('{url}', advertisement.url)\n .replace('{target}', advertisement.target)\n .replace('{description}', advertisement.description)\n .replace('{bg_color}', advertisement.colors.bg)\n .replace('{text_color}', advertisement.colors.text)\n }></div>\n </div>\n }\n );\n }\n\n /**\n * Lifecycle method that fetches advertisements before the component is loaded.\n */\n componentWillLoad() {\n // Fetch advertisements based on the current page\n return (new Promise(resolve => salla.onReady(resolve)))\n .then(() => salla.api.advertisement.fetch(this.currentSlug))\n .then(resp => Array.isArray(resp.data) ? resp.data.find(ad => !salla.storage.get(`statusAd-${ad.id}`)) : null)\n .then(ad => this.advertisements = ad ? [ad] : []);\n }\n\n componentDidRender() {\n if ((Array.isArray(this.advertisements) && !this.advertisements.length) || !this.advertisements) {\n return;\n }\n // Add event listener for the close button\n setTimeout(() => {\n let closeBtn = this.host.querySelector('.s-advertisement-action');\n if (closeBtn) {\n closeBtn.addEventListener('click', () => this.setCanDisplayFlag(this.advertisements[0], false));\n }\n });\n\n // Reduce Dom size by removing the slot element\n this.host.querySelectorAll('#adv-slot').forEach(el => el?.replaceWith(el?.firstChild));\n this.host.querySelector('[slot=\"adv\"]')?.remove();\n\n // Trigger an animation to show the advertisement\n AnimeJS({\n targets: this.host,\n opacity: [0, 1],\n duration: 300,\n height: [0, this.host.clientHeight],\n easing: 'easeInOutQuad',\n });\n }\n}\n"],"names":["AnimeJS"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-BfTudTlU.system.js","sources":["src/components/salla-filters/salla-filters.scss?tag=salla-filters","src/components/salla-filters/salla-filters.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.s-rating-stars-small {\n line-height: 12px;\n}\n.s-filters-radio{\n background-image: none !important;\n}","import { Component, Element, h, Event, EventEmitter, Host, Method, Prop, State } from '@stencil/core';\nimport { Filter, FilterOptionTypes } from \"./interfaces\";\nimport Helper from '../../Helpers/Helper';\n@Component({\n tag: 'salla-filters',\n styleUrl: 'salla-filters.scss',\n})\nexport class SallaFilters {\n\n constructor() {\n salla.event.on('filters::hidden', () => this.host.style.display = 'none');\n\n salla.lang.onLoaded(() => {\n this.apply = salla.lang.get('pages.checkout.apply');\n this.reset = salla.lang.get('pages.categories.filters_reset');\n });\n\n salla.event.on('filters::fetched', ({ filters }) => {\n this.host.style.display = '';\n let freshFilterData: any = {};\n this.filters = filters\n .map((filter: Filter) => {\n filter.label = {\n category_id: salla.lang.get('common.titles.categories'),\n brand_id: salla.lang.get('common.titles.brands'),\n rating: salla.lang.get('pages.categories.filter_rating'),\n price: salla.lang.get('pages.categories.filter_price'),\n }[filter.key] || filter.label;\n // filter.type = FilterOptionTypes.VALUES;\n if (filter.key == 'rating') {\n filter.type = FilterOptionTypes.VALUES;\n //@ts-ignore\n let { max, min } = filter.values;\n //@ts-ignore\n filter.values = [5, 4, 3, 2, 1].filter(stars => stars >= min || stars <= max)\n }\n if (this.filtersData.variants && filter.type == FilterOptionTypes.VARIANTS) {\n freshFilterData.variants = this.filtersData.variants;\n }\n if (this.filtersData[filter.key] && filter.type !== FilterOptionTypes.VARIANTS) {\n freshFilterData[filter.key] = this.filtersData[filter.key];\n }\n let searchParams = new URLSearchParams(window.location.search);\n let hasFilters = false;\n for (let key of searchParams.keys()) {\n if (key.includes('filters')) {\n hasFilters = true;\n break; // No need to continue checking once a match is found\n }\n }\n if (salla.config.get('page.slug') == \"product.index\" && Object.keys(freshFilterData).length == 0 && !hasFilters) {\n // Append the current category to the url if there are no pre-selected filters\n let currentUrl = window.location.href;\n let filterValue = salla.config.get('page.id');\n let separator = currentUrl.indexOf('?') !== -1 ? '&' : '?';\n let newUrl = currentUrl + separator + 'filters[category_id]=' + filterValue;\n freshFilterData.category_id = filterValue;\n window.history.pushState({ path: newUrl }, '', newUrl);\n }\n return filter;\n });\n this.filtersData = freshFilterData;\n this.host.childNodes.forEach(async (widget: HTMLSallaFiltersWidgetElement) => widget.setWidgetHeight && await widget.setWidgetHeight())\n });\n }\n\n async componentWillLoad() {\n try {\n const searchParams = new URLSearchParams(window.location.search);\n this.filtersData = await Helper.extractFiltersFromUrl(searchParams);\n } catch (e) {\n console.warn('failed to get filters from URL', e.message);\n }\n }\n\n\n @Element() host: HTMLElement;\n\n /**\n * Array of filter options\n */\n @Prop({ reflect: true, mutable: true }) filters?: Filter[];\n\n private isReady = false;//to avoid triggering the changed event\n\n @State() isSidebarOpen: boolean;\n @State() filtersData: object | any = {}\n @State() apply: string;\n @State() reset: string;\n\n /**\n * Custom event fired when the selected filters are changed.\n */\n @Event() changed: EventEmitter;\n\n /**\n * Method to get filter data.\n */\n @Method()\n async getFilters() {\n return this.filtersData;\n }\n\n /**\n * Apply filter action.\n */\n @Method()\n async applyFilters() {\n if (!this.isReady) {\n return;\n }\n let hasFilters = Object.keys(this.filtersData).length > 0;\n setTimeout(() => {\n if (hasFilters) {\n let url = new URL(window.location.href);\n for (const [key] of url.searchParams.entries()) {\n if (key.startsWith(\"filters\")) {\n url.searchParams.delete(key);\n }\n }\n let encodedFilterValues = this.encodeFilters(this.filtersData)\n let sanitizedFilterValues = url.search.split(\"&\").filter(item => !item.includes('filters')).join(\"&\")\n if (sanitizedFilterValues) {\n url.search = url.search.split(\"&filters\")[0] + \"&\" + encodedFilterValues\n } else {\n url.search = `?${encodedFilterValues}`\n }\n window.history.pushState({}, '', url.href);\n }\n else {\n let url = new URL(window.location.href);\n url.searchParams?.delete('filters');\n window.history.pushState({}, '', url.toString());\n }\n salla.event.emit('salla-filters::changed', this.filtersData);\n this.changed.emit(this.filtersData);\n }, 300);\n }\n\n\n private encodeFilters(filters, parentKey = 'filters') {\n const encodedFilters = [];\n\n for (const key in filters) {\n if (Object.prototype.hasOwnProperty.call(filters, key)) {\n const value = filters[key];\n\n const fullKey = parentKey ? `${parentKey}[${key}]` : key;\n if (Array.isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n encodedFilters.push(`${fullKey}[${i}]=${value[i]}`)\n }\n }\n else if (typeof value === 'object' && value !== null) {\n encodedFilters.push(this.encodeFilters(value, fullKey));\n } else {\n // const encodedKey = encodeURIComponent(fullKey);\n // const encodedValue = encodeURIComponent(value);\n let result = `${fullKey}=${value}`\n encodedFilters.push(result);\n }\n }\n }\n return encodedFilters.join('&');\n };\n\n /**\n * Reset selected filters.\n */\n @Method()\n async resetFilters() {\n this.removeFiltersQueryParams()\n this.filtersData = {};\n this.host.childNodes.forEach((widget: HTMLSallaFiltersWidgetElement) => widget.reset && widget.reset())\n salla.event.emit('salla-filters::reset');\n return this.applyFilters();\n }\n\n private removeFiltersQueryParams() {\n const searchParams = new URLSearchParams(window.location.search);\n\n const newUrl = Array.from(searchParams.keys())\n .filter(key => !key.startsWith('filters['))\n .map(key => `${encodeURIComponent(key)}=${encodeURIComponent(searchParams.get(key))}`)\n .join('&');\n\n const finalUrl = newUrl ? `${window.location.pathname}?${newUrl}` : window.location.pathname;\n window.history.pushState({}, '', finalUrl);\n }\n\n /**\n * @param {{target:HTMLInputElement}} event\n * @param option\n * @param value\n * @private\n */\n private handleOptionChange(event, option: Filter, value) {\n if (option.type === FilterOptionTypes.RANGE) {\n this.filtersData[option.key] = value;\n\n }\n let isChecked = event.target.checked;\n\n if (option.type === FilterOptionTypes.VARIANTS) {\n this.filtersData.variants = this.filtersData.variants || {};\n isChecked && (this.filtersData.variants[option.key] = value);\n isChecked || (delete this.filtersData.variants[option.key]);\n }\n\n else if (event.target.type == \"radio\") {\n isChecked && (this.filtersData[option.key] = value);\n isChecked || (delete this.filtersData[option.key]);\n }\n\n //it's checkbox\n // add if condition to avoid error when the filter is not existed in the filtersData\n else if (event.target.type == \"checkbox\") {\n this.filtersData[option.key] = this.filtersData[option.key] || [];\n if (isChecked) {\n this.filtersData[option.key].push(value);\n\n }\n this.filtersData[option.key] = this.filtersData[option.key].filter(val => val != value);\n }\n this.applyFilters();\n }\n\n\n\n render() {\n return <Host>\n {this.filters?.map(option => <salla-filters-widget\n option={option}\n filtersData={this.filtersData}\n onChanged={({ detail: { event, option, value } }) => {\n this.handleOptionChange(event, option, value)\n }} />)}\n\n {this.filters?.length ? <div class=\"s-filters-footer\">\n {/* <salla-button color='primary' onClick={() => this.applyFilters()}>{this.apply}</salla-button> */}\n <salla-button color='gray' fill='outline' onClick={() => this.resetFilters()}>{this.reset}</salla-button>\n </div> : ''}\n </Host>;\n }\n\n componentDidLoad() {\n this.isReady = true;\n }\n}\n\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-CWTnuTlC.system.js","sources":["src/components/salla-filters/salla-filters.scss?tag=salla-filters","src/components/salla-filters/salla-filters.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.s-rating-stars-small {\n line-height: 12px;\n}\n.s-filters-radio{\n background-image: none !important;\n}","import { Component, Element, h, Event, EventEmitter, Host, Method, Prop, State } from '@stencil/core';\nimport { Filter, FilterOptionTypes } from \"./interfaces\";\nimport Helper from '../../Helpers/Helper';\n@Component({\n tag: 'salla-filters',\n styleUrl: 'salla-filters.scss',\n})\nexport class SallaFilters {\n\n constructor() {\n salla.event.on('filters::hidden', () => this.host.style.display = 'none');\n\n salla.lang.onLoaded(() => {\n this.apply = salla.lang.get('pages.checkout.apply');\n this.reset = salla.lang.get('pages.categories.filters_reset');\n });\n\n salla.event.on('filters::fetched', ({ filters }) => {\n this.host.style.display = '';\n let freshFilterData: any = {};\n this.filters = filters\n .map((filter: Filter) => {\n filter.label = {\n category_id: salla.lang.get('common.titles.categories'),\n brand_id: salla.lang.get('common.titles.brands'),\n rating: salla.lang.get('pages.categories.filter_rating'),\n price: salla.lang.get('pages.categories.filter_price'),\n }[filter.key] || filter.label;\n // filter.type = FilterOptionTypes.VALUES;\n if (filter.key == 'rating') {\n filter.type = FilterOptionTypes.VALUES;\n //@ts-ignore\n let { max, min } = filter.values;\n //@ts-ignore\n filter.values = [5, 4, 3, 2, 1].filter(stars => stars >= min || stars <= max)\n }\n if (this.filtersData.variants && filter.type == FilterOptionTypes.VARIANTS) {\n freshFilterData.variants = this.filtersData.variants;\n }\n if (this.filtersData[filter.key] && filter.type !== FilterOptionTypes.VARIANTS) {\n freshFilterData[filter.key] = this.filtersData[filter.key];\n }\n let searchParams = new URLSearchParams(window.location.search);\n let hasFilters = false;\n for (let key of searchParams.keys()) {\n if (key.includes('filters')) {\n hasFilters = true;\n break; // No need to continue checking once a match is found\n }\n }\n if (salla.config.get('page.slug') == \"product.index\" && Object.keys(freshFilterData).length == 0 && !hasFilters) {\n // Append the current category to the url if there are no pre-selected filters\n let currentUrl = window.location.href;\n let filterValue = salla.config.get('page.id');\n let separator = currentUrl.indexOf('?') !== -1 ? '&' : '?';\n let newUrl = currentUrl + separator + 'filters[category_id]=' + filterValue;\n freshFilterData.category_id = filterValue;\n window.history.pushState({ path: newUrl }, '', newUrl);\n }\n return filter;\n });\n this.filtersData = freshFilterData;\n this.host.childNodes.forEach(async (widget: HTMLSallaFiltersWidgetElement) => widget.setWidgetHeight && await widget.setWidgetHeight())\n });\n }\n\n async componentWillLoad() {\n try {\n const searchParams = new URLSearchParams(window.location.search);\n this.filtersData = await Helper.extractFiltersFromUrl(searchParams);\n } catch (e) {\n console.warn('failed to get filters from URL', e.message);\n }\n }\n\n\n @Element() host: HTMLElement;\n\n /**\n * Array of filter options\n */\n @Prop({ reflect: true, mutable: true }) filters?: Filter[];\n\n private isReady = false;//to avoid triggering the changed event\n\n @State() isSidebarOpen: boolean;\n @State() filtersData: object | any = {}\n @State() apply: string;\n @State() reset: string;\n\n /**\n * Custom event fired when the selected filters are changed.\n */\n @Event() changed: EventEmitter;\n\n /**\n * Method to get filter data.\n */\n @Method()\n async getFilters() {\n return this.filtersData;\n }\n\n /**\n * Apply filter action.\n */\n @Method()\n async applyFilters() {\n if (!this.isReady) {\n return;\n }\n let hasFilters = Object.keys(this.filtersData).length > 0;\n setTimeout(() => {\n if (hasFilters) {\n let url = new URL(window.location.href);\n for (const [key] of url.searchParams.entries()) {\n if (key.startsWith(\"filters\")) {\n url.searchParams.delete(key);\n }\n }\n let encodedFilterValues = this.encodeFilters(this.filtersData)\n let sanitizedFilterValues = url.search.split(\"&\").filter(item => !item.includes('filters')).join(\"&\")\n if (sanitizedFilterValues) {\n url.search = url.search.split(\"&filters\")[0] + \"&\" + encodedFilterValues\n } else {\n url.search = `?${encodedFilterValues}`\n }\n window.history.pushState({}, '', url.href);\n }\n else {\n let url = new URL(window.location.href);\n url.searchParams?.delete('filters');\n window.history.pushState({}, '', url.toString());\n }\n salla.event.emit('salla-filters::changed', this.filtersData);\n this.changed.emit(this.filtersData);\n }, 300);\n }\n\n\n private encodeFilters(filters, parentKey = 'filters') {\n const encodedFilters = [];\n\n for (const key in filters) {\n if (Object.prototype.hasOwnProperty.call(filters, key)) {\n const value = filters[key];\n\n const fullKey = parentKey ? `${parentKey}[${key}]` : key;\n if (Array.isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n encodedFilters.push(`${fullKey}[${i}]=${value[i]}`)\n }\n }\n else if (typeof value === 'object' && value !== null) {\n encodedFilters.push(this.encodeFilters(value, fullKey));\n } else {\n // const encodedKey = encodeURIComponent(fullKey);\n // const encodedValue = encodeURIComponent(value);\n let result = `${fullKey}=${value}`\n encodedFilters.push(result);\n }\n }\n }\n return encodedFilters.join('&');\n };\n\n /**\n * Reset selected filters.\n */\n @Method()\n async resetFilters() {\n this.removeFiltersQueryParams()\n this.filtersData = {};\n this.host.childNodes.forEach((widget: HTMLSallaFiltersWidgetElement) => widget.reset && widget.reset())\n salla.event.emit('salla-filters::reset');\n return this.applyFilters();\n }\n\n private removeFiltersQueryParams() {\n const searchParams = new URLSearchParams(window.location.search);\n\n const newUrl = Array.from(searchParams.keys())\n .filter(key => !key.startsWith('filters['))\n .map(key => `${encodeURIComponent(key)}=${encodeURIComponent(searchParams.get(key))}`)\n .join('&');\n\n const finalUrl = newUrl ? `${window.location.pathname}?${newUrl}` : window.location.pathname;\n window.history.pushState({}, '', finalUrl);\n }\n\n /**\n * @param {{target:HTMLInputElement}} event\n * @param option\n * @param value\n * @private\n */\n private handleOptionChange(event, option: Filter, value) {\n if (option.type === FilterOptionTypes.RANGE) {\n this.filtersData[option.key] = value;\n\n }\n let isChecked = event.target.checked;\n\n if (option.type === FilterOptionTypes.VARIANTS) {\n this.filtersData.variants = this.filtersData.variants || {};\n isChecked && (this.filtersData.variants[option.key] = value);\n isChecked || (delete this.filtersData.variants[option.key]);\n }\n\n else if (event.target.type == \"radio\") {\n isChecked && (this.filtersData[option.key] = value);\n isChecked || (delete this.filtersData[option.key]);\n }\n\n //it's checkbox\n // add if condition to avoid error when the filter is not existed in the filtersData\n else if (event.target.type == \"checkbox\") {\n this.filtersData[option.key] = this.filtersData[option.key] || [];\n if (isChecked) {\n this.filtersData[option.key].push(value);\n\n }\n this.filtersData[option.key] = this.filtersData[option.key].filter(val => val != value);\n }\n this.applyFilters();\n }\n\n\n\n render() {\n return <Host>\n {this.filters?.map(option => <salla-filters-widget\n option={option}\n filtersData={this.filtersData}\n onChanged={({ detail: { event, option, value } }) => {\n this.handleOptionChange(event, option, value)\n }} />)}\n\n {this.filters?.length ? <div class=\"s-filters-footer\">\n {/* <salla-button color='primary' onClick={() => this.applyFilters()}>{this.apply}</salla-button> */}\n <salla-button color='gray' fill='outline' onClick={() => this.resetFilters()}>{this.reset}</salla-button>\n </div> : ''}\n </Host>;\n }\n\n componentDidLoad() {\n this.isReady = true;\n }\n}\n\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-zsSwLdpB.system.js","sources":["src/components/salla-orders/salla-orders.scss?tag=salla-orders","src/components/salla-orders/salla-orders.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, State, h, Prop, Element } from '@stencil/core';\nimport { Order, OrderQueryParameters } from './interface'\nimport {Pagination} from \"../../interfaces\"\nimport Helper from '../../Helpers/Helper';\n\n@Component({\n tag: 'salla-orders',\n styleUrl: 'salla-orders.scss',\n})\nexport class SallaOrder {\n\n constructor() {\n salla.lang.onLoaded(() => {\n this.languageCode = salla.lang.locale\n this.orderNumberText = salla.lang.get('pages.thank_you.order_id');\n this.totalOrderText = salla.lang.get('pages.orders.total')\n this.orderDateText = salla.lang.get('pages.orders.date')\n this.orderStatusText = salla.lang.get('pages.orders.status')\n this.noOrderText = salla.lang.get('pages.orders.non_orders')\n this.load_more_text_trans = salla.lang.get('common.elements.load_more')\n })\n }\n\n /**\n * Query Parameter to send along with the fetch request\n */\n @Prop() params: OrderQueryParameters;\n\n /**\n * Load more text\n */\n @Prop() loadMoreText: string;\n\n @State() orderNumberText: string = salla.lang.get('pages.thank_you.order_id')\n @State() totalOrderText: string = salla.lang.get('pages.orders.total')\n @State() orderDateText: string = salla.lang.get('pages.orders.date')\n @State() orderStatusText: string = salla.lang.get('pages.orders.status')\n @State() noOrderText: string = salla.lang.get('pages.orders.non_orders')\n @State() load_more_text_trans = salla.lang.get('common.elements.load_more');\n @State() languageCode: string = salla.lang.locale\n\n @State() orders: Array<Order> = [];\n @State() pagination: Pagination;\n @State() hasInfiniteScroll: boolean;\n @State() total: number;\n @State() nextPage: string;\n @State() showPlaceholder: boolean;\n\n private status: any;\n private btnLoader: any;\n private infiniteScroll: any;\n private wrapper: HTMLElement;\n\n @Element() host: HTMLElement;\n\n // Show/hide loading\n private loading(isLoading = true) {\n let btnText = this.status?.querySelector('.s-button-text');\n if (btnText) {\n Helper.toggleElementClassIf(btnText, 's-button-hide', 's-button-show', () => isLoading);\n this.btnLoader.style.display = isLoading ? 'inherit' : 'none';\n }\n }\n\n private initiateInfiniteScroll() {\n if (!this.hasInfiniteScroll) {\n return;\n }\n\n if (!this.wrapper) {\n salla.logger.error('Wrapper is undefined. Cannot initiate infinite scroll.');\n return;\n }\n\n this.infiniteScroll = salla.infiniteScroll.initiate(this.wrapper, this.wrapper, {\n path: () => this.nextPage,\n history: false,\n nextPage: this.nextPage,\n scrollThreshold: false,\n }, true);\n\n this.infiniteScroll?.on('request', _response => {\n this.loading();\n });\n\n this.infiniteScroll?.on('load', response => {\n this.loading(false);\n this.pagination = response.pagination;\n this.nextPage = response.pagination?.links?.next || null;\n this.handleResponse(response.data).forEach(data => {\n this.wrapper.append(data)\n })\n let items = this.host.querySelectorAll('.s-orders-table-tbody-tr:not(.animated)');\n Helper.animateItems(items);\n });\n\n this.infiniteScroll?.on('error', (e) => {\n salla.logger.error('Error loading more comments:', e);\n });\n\n }\n\n // Get next page\n async loadMore() {\n this.infiniteScroll.loadNextPage();\n }\n\n private handleResponse(orderList: Array<Order>) {\n return orderList.map(order => this.getSingleOrderItem(order));\n }\n\n private async loadInitialData() {\n const url = new URL(window.location.href);\n \n await salla.order.api.fetch({ ...this.params, types: [\"\"], feedback_status: url.searchParams.get('feedback_status') }).then((resp) => {\n this.orders = resp.data\n this.hasInfiniteScroll = !!resp.pagination?.links.next;\n this.pagination = resp.pagination;\n this.total = resp.pagination?.total;\n this.nextPage = resp.pagination?.links?.next || null;\n if (!this.orders.length) {\n this.showPlaceholder = true;\n return this.loading(false);\n }\n setTimeout(() => {\n this.handleResponse(resp.data).forEach(data => {\n this.wrapper.append(data)\n })\n this.initiateInfiniteScroll();\n let items = this.wrapper.querySelectorAll('.s-orders-table-tbody-tr:not(.animated)');\n Helper.animateItems(items);\n }, 100)\n }).catch(error => {\n this.showPlaceholder = true;\n this.loading(false)\n salla.logger.error(error)\n })\n }\n\n private getSingleOrderItem(order: Order): HTMLTableRowElement {\n const tr = document.createElement('tr');\n tr.classList.add('s-orders-table-tbody-tr', 's-orders-table-tbody-tr-shadow'); \n \n const td1 = document.createElement('td');\n td1.classList.add('s-orders-table-tbody-tr-td');\n const div1 = document.createElement('div');\n div1.classList.add('s-orders-table-tbody-tr-td-content');\n const span1 = document.createElement('span');\n span1.classList.add('s-orders-mobile-title');\n span1.textContent = this.orderNumberText + ':';\n const span2 = document.createElement('span');\n span2.classList.add('s-orders-reference-id');\n span2.textContent = '#' + order.reference_id;\n div1.appendChild(span1);\n div1.appendChild(span2);\n if (order.source == 'buy_as_gift') {\n const giftIcon = document.createElement('i');\n giftIcon.classList.add('sicon-gift-sharing', 's-orders-buy-as-gift-icon');\n div1.appendChild(giftIcon);\n }\n const anchor1 = document.createElement('a');\n anchor1.href = order.url;\n div1.appendChild(anchor1);\n const div2 = document.createElement('div');\n div2.classList.add('s-orders-copy-to-clipboard-button');\n const sallaButton = document.createElement('salla-button');\n sallaButton.classList.add('relative');\n sallaButton.setAttribute('color', 'dark');\n sallaButton.setAttribute('shape', 'link');\n sallaButton.dataset.content = order.reference_id.toString();\n sallaButton.addEventListener('click', (event) => {\n Helper.copyToClipboard(event)\n Helper.toggleElementClassIf(sallaButton, 'copied', 'code-to-copy', () => true);\n setTimeout(() => {\n Helper.toggleElementClassIf(sallaButton, 'code-to-copy', 'copied', () => true)\n }, 1000);\n });\n const span3 = document.createElement('span');\n span3.textContent = '#' + order.reference_id;\n const copyIcon = document.createElement('i');\n copyIcon.classList.add('sicon-swap-stroke', 's-orders-copy-to-clipboard-button-icon');\n // Check the text direction\n let isRTL = salla.config.get('theme.is_rtl', true);\n if (isRTL) {\n // Append the icon and then the span\n sallaButton.appendChild(copyIcon);\n sallaButton.appendChild(span3);\n } else {\n // Append the span and then the icon\n sallaButton.appendChild(span3);\n sallaButton.appendChild(copyIcon);\n }\n\n div2.appendChild(sallaButton);\n div1.appendChild(div2);\n td1.appendChild(div1);\n tr.appendChild(td1);\n\n const td2 = document.createElement('td');\n td2.classList.add('s-orders-table-tbody-tr-td');\n const div3 = document.createElement('div');\n div3.classList.add('s-orders-table-tbody-tr-td-content');\n const span4 = document.createElement('span');\n span4.classList.add('s-orders-mobile-title');\n span4.textContent = this.totalOrderText + ':';\n const div4 = document.createElement('div');\n div4.innerHTML = salla.money(order.total);\n const anchor2 = document.createElement('a');\n anchor2.href = order.url;\n div3.appendChild(span4);\n div3.appendChild(div4);\n div3.appendChild(anchor2);\n td2.appendChild(div3);\n tr.appendChild(td2);\n\n const td3 = document.createElement('td');\n td3.classList.add('s-orders-table-tbody-tr-td');\n const div5 = document.createElement('div');\n div5.classList.add('s-orders-table-tbody-tr-td-content');\n const span5 = document.createElement('span');\n span5.classList.add('s-orders-mobile-title');\n span5.textContent = this.orderDateText + ':';\n const div6 = document.createElement('div');\n div6.textContent = Helper.formatDateFromString(order.created_at.date, salla.helpers.number, this.languageCode);\n const anchor3 = document.createElement('a');\n anchor3.href = order.url;\n div5.appendChild(span5);\n div5.appendChild(div6);\n div5.appendChild(anchor3);\n td3.appendChild(div5);\n tr.appendChild(td3);\n\n const td4 = document.createElement('td');\n td4.classList.add('s-orders-table-tbody-tr-td');\n const div7 = document.createElement('div');\n div7.classList.add('s-orders-table-tbody-tr-td-content');\n const span6 = document.createElement('span');\n span6.classList.add('s-orders-mobile-title');\n span6.textContent = this.orderStatusText + ':';\n const statusSpan = document.createElement('span');\n statusSpan.classList.add('s-orders-status-container');\n statusSpan.style.color = order.status.color;\n const statusIcon = document.createElement('i');\n statusIcon.classList.add(order.status.icon);\n const statusName = document.createElement('span');\n statusName.textContent = order.status.name;\n statusSpan.appendChild(statusIcon);\n statusSpan.appendChild(statusName);\n div7.appendChild(span6);\n div7.appendChild(statusSpan);\n const starIcon = document.createElement('i');\n starIcon.classList.add('sicon-star2', 's-orders-status-rated', order.is_rated ? 's-orders-rated-text' : 's-orders-unrated-text');\n div7.appendChild(starIcon);\n const anchor4 = document.createElement('a');\n anchor4.href = order.url;\n div7.appendChild(anchor4);\n td4.appendChild(div7);\n tr.appendChild(td4);\n\n return tr;\n }\n\n render() {\n if (this.showPlaceholder) {\n return <div class=\"s-orders-no-content\">\n <i class=\"sicon-packed-box icon\"></i>\n <p>{this.noOrderText}</p>\n </div>\n }\n return <div class=\"s-orders-wrapper\">\n <table class=\"s-orders-table\">\n <thead class=\"s-orders-table-head\">\n <tr class=\"s-orders-table-head-tr\">\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderNumberText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.totalOrderText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderDateText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderStatusText}\n </th>\n </tr>\n </thead>\n <tbody class=\"s-orders-table-tbody\" ref={(el) => (this.wrapper = el)}>\n\n </tbody>\n </table>\n\n {this.nextPage && (\n <div class=\"s-infinite-scroll-wrapper\" ref={status => this.status = status}>\n <button onClick={() => this.loadMore()} class=\"s-infinite-scroll-btn s-button-btn s-button-primary\">\n <span class=\"s-button-text s-infinite-scroll-btn-text\">{this.loadMoreText ?? this.load_more_text_trans}</span>\n <span class=\"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader\" ref={btnLoader => this.btnLoader = btnLoader} style={{ \"display\": \"none\" }}></span>\n </button>\n </div>\n )}\n </div>\n }\n\n componentWillLoad() {\n return salla.onReady()\n .then(() => this.loadInitialData())\n .then( () => this.initiateInfiniteScroll())\n }\n}\n\n\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-D-XNsxDZ.system.js","sources":["src/components/salla-orders/salla-orders.scss?tag=salla-orders","src/components/salla-orders/salla-orders.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, State, h, Prop, Element } from '@stencil/core';\nimport { Order, OrderQueryParameters } from './interface'\nimport {Pagination} from \"../../interfaces\"\nimport Helper from '../../Helpers/Helper';\n\n@Component({\n tag: 'salla-orders',\n styleUrl: 'salla-orders.scss',\n})\nexport class SallaOrder {\n\n constructor() {\n salla.lang.onLoaded(() => {\n this.languageCode = salla.lang.locale\n this.orderNumberText = salla.lang.get('pages.thank_you.order_id');\n this.totalOrderText = salla.lang.get('pages.orders.total')\n this.orderDateText = salla.lang.get('pages.orders.date')\n this.orderStatusText = salla.lang.get('pages.orders.status')\n this.noOrderText = salla.lang.get('pages.orders.non_orders')\n this.load_more_text_trans = salla.lang.get('common.elements.load_more')\n })\n }\n\n /**\n * Query Parameter to send along with the fetch request\n */\n @Prop() params: OrderQueryParameters;\n\n /**\n * Load more text\n */\n @Prop() loadMoreText: string;\n\n @State() orderNumberText: string = salla.lang.get('pages.thank_you.order_id')\n @State() totalOrderText: string = salla.lang.get('pages.orders.total')\n @State() orderDateText: string = salla.lang.get('pages.orders.date')\n @State() orderStatusText: string = salla.lang.get('pages.orders.status')\n @State() noOrderText: string = salla.lang.get('pages.orders.non_orders')\n @State() load_more_text_trans = salla.lang.get('common.elements.load_more');\n @State() languageCode: string = salla.lang.locale\n\n @State() orders: Array<Order> = [];\n @State() pagination: Pagination;\n @State() hasInfiniteScroll: boolean;\n @State() total: number;\n @State() nextPage: string;\n @State() showPlaceholder: boolean;\n\n private status: any;\n private btnLoader: any;\n private infiniteScroll: any;\n private wrapper: HTMLElement;\n\n @Element() host: HTMLElement;\n\n // Show/hide loading\n private loading(isLoading = true) {\n let btnText = this.status?.querySelector('.s-button-text');\n if (btnText) {\n Helper.toggleElementClassIf(btnText, 's-button-hide', 's-button-show', () => isLoading);\n this.btnLoader.style.display = isLoading ? 'inherit' : 'none';\n }\n }\n\n private initiateInfiniteScroll() {\n if (!this.hasInfiniteScroll) {\n return;\n }\n\n if (!this.wrapper) {\n salla.logger.error('Wrapper is undefined. Cannot initiate infinite scroll.');\n return;\n }\n\n this.infiniteScroll = salla.infiniteScroll.initiate(this.wrapper, this.wrapper, {\n path: () => this.nextPage,\n history: false,\n nextPage: this.nextPage,\n scrollThreshold: false,\n }, true);\n\n this.infiniteScroll?.on('request', _response => {\n this.loading();\n });\n\n this.infiniteScroll?.on('load', response => {\n this.loading(false);\n this.pagination = response.pagination;\n this.nextPage = response.pagination?.links?.next || null;\n this.handleResponse(response.data).forEach(data => {\n this.wrapper.append(data)\n })\n let items = this.host.querySelectorAll('.s-orders-table-tbody-tr:not(.animated)');\n Helper.animateItems(items);\n });\n\n this.infiniteScroll?.on('error', (e) => {\n salla.logger.error('Error loading more comments:', e);\n });\n\n }\n\n // Get next page\n async loadMore() {\n this.infiniteScroll.loadNextPage();\n }\n\n private handleResponse(orderList: Array<Order>) {\n return orderList.map(order => this.getSingleOrderItem(order));\n }\n\n private async loadInitialData() {\n const url = new URL(window.location.href);\n \n await salla.order.api.fetch({ ...this.params, types: [\"\"], feedback_status: url.searchParams.get('feedback_status') }).then((resp) => {\n this.orders = resp.data\n this.hasInfiniteScroll = !!resp.pagination?.links.next;\n this.pagination = resp.pagination;\n this.total = resp.pagination?.total;\n this.nextPage = resp.pagination?.links?.next || null;\n if (!this.orders.length) {\n this.showPlaceholder = true;\n return this.loading(false);\n }\n setTimeout(() => {\n this.handleResponse(resp.data).forEach(data => {\n this.wrapper.append(data)\n })\n this.initiateInfiniteScroll();\n let items = this.wrapper.querySelectorAll('.s-orders-table-tbody-tr:not(.animated)');\n Helper.animateItems(items);\n }, 100)\n }).catch(error => {\n this.showPlaceholder = true;\n this.loading(false)\n salla.logger.error(error)\n })\n }\n\n private getSingleOrderItem(order: Order): HTMLTableRowElement {\n const tr = document.createElement('tr');\n tr.classList.add('s-orders-table-tbody-tr', 's-orders-table-tbody-tr-shadow'); \n \n const td1 = document.createElement('td');\n td1.classList.add('s-orders-table-tbody-tr-td');\n const div1 = document.createElement('div');\n div1.classList.add('s-orders-table-tbody-tr-td-content');\n const span1 = document.createElement('span');\n span1.classList.add('s-orders-mobile-title');\n span1.textContent = this.orderNumberText + ':';\n const span2 = document.createElement('span');\n span2.classList.add('s-orders-reference-id');\n span2.textContent = '#' + order.reference_id;\n div1.appendChild(span1);\n div1.appendChild(span2);\n if (order.source == 'buy_as_gift') {\n const giftIcon = document.createElement('i');\n giftIcon.classList.add('sicon-gift-sharing', 's-orders-buy-as-gift-icon');\n div1.appendChild(giftIcon);\n }\n const anchor1 = document.createElement('a');\n anchor1.href = order.url;\n div1.appendChild(anchor1);\n const div2 = document.createElement('div');\n div2.classList.add('s-orders-copy-to-clipboard-button');\n const sallaButton = document.createElement('salla-button');\n sallaButton.classList.add('relative');\n sallaButton.setAttribute('color', 'dark');\n sallaButton.setAttribute('shape', 'link');\n sallaButton.dataset.content = order.reference_id.toString();\n sallaButton.addEventListener('click', (event) => {\n Helper.copyToClipboard(event)\n Helper.toggleElementClassIf(sallaButton, 'copied', 'code-to-copy', () => true);\n setTimeout(() => {\n Helper.toggleElementClassIf(sallaButton, 'code-to-copy', 'copied', () => true)\n }, 1000);\n });\n const span3 = document.createElement('span');\n span3.textContent = '#' + order.reference_id;\n const copyIcon = document.createElement('i');\n copyIcon.classList.add('sicon-swap-stroke', 's-orders-copy-to-clipboard-button-icon');\n // Check the text direction\n let isRTL = salla.config.get('theme.is_rtl', true);\n if (isRTL) {\n // Append the icon and then the span\n sallaButton.appendChild(copyIcon);\n sallaButton.appendChild(span3);\n } else {\n // Append the span and then the icon\n sallaButton.appendChild(span3);\n sallaButton.appendChild(copyIcon);\n }\n\n div2.appendChild(sallaButton);\n div1.appendChild(div2);\n td1.appendChild(div1);\n tr.appendChild(td1);\n\n const td2 = document.createElement('td');\n td2.classList.add('s-orders-table-tbody-tr-td');\n const div3 = document.createElement('div');\n div3.classList.add('s-orders-table-tbody-tr-td-content');\n const span4 = document.createElement('span');\n span4.classList.add('s-orders-mobile-title');\n span4.textContent = this.totalOrderText + ':';\n const div4 = document.createElement('div');\n div4.innerHTML = salla.money(order.total);\n const anchor2 = document.createElement('a');\n anchor2.href = order.url;\n div3.appendChild(span4);\n div3.appendChild(div4);\n div3.appendChild(anchor2);\n td2.appendChild(div3);\n tr.appendChild(td2);\n\n const td3 = document.createElement('td');\n td3.classList.add('s-orders-table-tbody-tr-td');\n const div5 = document.createElement('div');\n div5.classList.add('s-orders-table-tbody-tr-td-content');\n const span5 = document.createElement('span');\n span5.classList.add('s-orders-mobile-title');\n span5.textContent = this.orderDateText + ':';\n const div6 = document.createElement('div');\n div6.textContent = Helper.formatDateFromString(order.created_at.date, salla.helpers.number, this.languageCode);\n const anchor3 = document.createElement('a');\n anchor3.href = order.url;\n div5.appendChild(span5);\n div5.appendChild(div6);\n div5.appendChild(anchor3);\n td3.appendChild(div5);\n tr.appendChild(td3);\n\n const td4 = document.createElement('td');\n td4.classList.add('s-orders-table-tbody-tr-td');\n const div7 = document.createElement('div');\n div7.classList.add('s-orders-table-tbody-tr-td-content');\n const span6 = document.createElement('span');\n span6.classList.add('s-orders-mobile-title');\n span6.textContent = this.orderStatusText + ':';\n const statusSpan = document.createElement('span');\n statusSpan.classList.add('s-orders-status-container');\n statusSpan.style.color = order.status.color;\n const statusIcon = document.createElement('i');\n statusIcon.classList.add(order.status.icon);\n const statusName = document.createElement('span');\n statusName.textContent = order.status.name;\n statusSpan.appendChild(statusIcon);\n statusSpan.appendChild(statusName);\n div7.appendChild(span6);\n div7.appendChild(statusSpan);\n const starIcon = document.createElement('i');\n starIcon.classList.add('sicon-star2', 's-orders-status-rated', order.is_rated ? 's-orders-rated-text' : 's-orders-unrated-text');\n div7.appendChild(starIcon);\n const anchor4 = document.createElement('a');\n anchor4.href = order.url;\n div7.appendChild(anchor4);\n td4.appendChild(div7);\n tr.appendChild(td4);\n\n return tr;\n }\n\n render() {\n if (this.showPlaceholder) {\n return <div class=\"s-orders-no-content\">\n <i class=\"sicon-packed-box icon\"></i>\n <p>{this.noOrderText}</p>\n </div>\n }\n return <div class=\"s-orders-wrapper\">\n <table class=\"s-orders-table\">\n <thead class=\"s-orders-table-head\">\n <tr class=\"s-orders-table-head-tr\">\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderNumberText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.totalOrderText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderDateText}\n </th>\n <th class=\"s-orders-table-head-tr-th\" scope=\"col\">\n {this.orderStatusText}\n </th>\n </tr>\n </thead>\n <tbody class=\"s-orders-table-tbody\" ref={(el) => (this.wrapper = el)}>\n\n </tbody>\n </table>\n\n {this.nextPage && (\n <div class=\"s-infinite-scroll-wrapper\" ref={status => this.status = status}>\n <button onClick={() => this.loadMore()} class=\"s-infinite-scroll-btn s-button-btn s-button-primary\">\n <span class=\"s-button-text s-infinite-scroll-btn-text\">{this.loadMoreText ?? this.load_more_text_trans}</span>\n <span class=\"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader\" ref={btnLoader => this.btnLoader = btnLoader} style={{ \"display\": \"none\" }}></span>\n </button>\n </div>\n )}\n </div>\n }\n\n componentWillLoad() {\n return salla.onReady()\n .then(() => this.loadInitialData())\n .then( () => this.initiateInfiniteScroll())\n }\n}\n\n\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-
|
|
1
|
+
{"version":3,"file":"p-D-phf_4a.system.js","sources":["src/components/salla-metadata/salla-metadata.scss?tag=salla-metadata","src/components/salla-metadata/salla-metadata.tsx"],"sourcesContent":["","import { Component, Host, h, Element, Prop, State } from '@stencil/core';\nimport { Field, Specs } from './interfaces';\n\n@Component({\n tag: 'salla-metadata',\n styleUrl: 'salla-metadata.scss',\n})\nexport class SallaMetadata {\n constructor() {\n if (this.entityId) {\n try {\n this.entityId = Array.isArray(this.entityId)\n ? this.entityId\n : JSON.parse(this.entityId as string);\n return;\n } catch (e) {\n salla.log('Bad json passed via entityId prop');\n }\n }\n }\n\n @Element() host: HTMLElement;\n\n /**\n * The entity type.\n */\n @Prop() entity: string = 'product';\n\n /**\n * The id of the product/the endity to which the specs are going to be fetched for.\n */\n @Prop() entityId: number | number[] | string;\n\n @State() specs: Specs[] = [];\n @State() download: string = salla.lang.get('pages.thank_you.download');\n\n private getValue(field: Field) {\n if (field.type === 'file') {\n return `<a href=\"${field.value}\" class=\"text-primary\" target=\"_blank\"><span class=\"sicon-download\"></span> ${this.download}</a>`;\n }\n if (field.type === 'url') {\n return `<a href=\"${field.value}\" class=\"text-blue-700 underline\" target=\"_blank\">${field.value}</a>`; // classes will be moved to the utilities.json file\n }\n if (field.type === 'date') {\n const date = new Date(field.value);\n const day = String(date.getDate()).padStart(2, '0');\n const month = String(date.getMonth() + 1).padStart(2, '0'); // Months are 0-based\n const year = date.getFullYear();\n\n const formattedDate = `${day}/${month}/${year}`;\n \n return formattedDate;\n }\n return field.value;\n }\n\n componentWillLoad() {\n return salla\n .onReady()\n .then(() => {\n if (!salla.config.get('store.features')?.includes('custom-fields')) {\n throw new Error('feature custom-fields is not activated');\n }\n })\n .then(() => {\n if (!this.entityId && salla.url.is_page('product.single')) {\n this.entityId = salla.config.get('page.id');\n }\n if (!this.entityId) {\n throw new Error(\"can't render salla-metadata without enity-id prop!\");\n }\n salla.lang.onLoaded(() => (this.download = salla.lang.get('pages.thank_you.download')));\n //todo:: check in graylog, if there is too many requests for same users, let's store it in the session storage for 15 minutes same as the offers\n const entityIdsArray = Array.isArray(this.entityId) ? this.entityId : [this.entityId];\n const entitiesParam = entityIdsArray.map(id => `entities[]=${id}`).join('&');\n const url = `https://api.salla.dev/store/v1/metadata/values?type=${this.entity}&${entitiesParam}`;\n return salla.api.request(url).then(response => response.data[0]?.sections);\n })\n .then(specs => (this.specs = specs))\n .catch(error => salla.logger.error('Error loading more specs:', error));\n }\n render() {\n if (!this.specs.length) {\n return;\n }\n return (\n <Host class=\"s-metadata-wrapper\">\n {this.specs.map((item: Specs) => {\n return (\n <div class=\"s-metadata-box\">\n <div class=\"s-metadata-box-header\">\n <i class=\"sicon-list\"></i>\n {item.name}\n </div>\n\n {item.fields.map((field: Field) => {\n return (\n <div class=\"s-metadata-row\">\n <p class=\"s-metadata-row-name\">{field.name}</p>\n <p class=\"s-metadata-row-value\" innerHTML={this.getValue(field) as any}></p>\n </div>\n );\n })}\n </div>\n );\n })}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-CQiyOX1V.system.js","sources":["src/components/salla-cart-item-offers/salla-cart-item-offers.scss?tag=salla-cart-item-offers","src/components/salla-cart-item-offers/salla-cart-item-offers.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Prop, State, h } from '@stencil/core';\nimport SpecialDiscountIcon from '../../assets/svg/special-discount.svg';\nimport GiftIcon from '../../assets/svg/gift.svg';\nimport TagMoneyIcon from '../../assets/svg/tag-money.svg';\nimport FireIcon from '../../assets/svg/fire.svg';\nimport DiscountCouponIcon from '../../assets/svg/discount-coupon.svg';\nimport ArrowDownIcon from '../../assets/svg/keyboard_arrow_down.svg';\n\n@Component({\n tag: 'salla-cart-item-offers',\n styleUrl: 'salla-cart-item-offers.scss',\n})\nexport class SallaCartItemOffers {\n /**\n * The quantity of the cart item\n */\n @Prop() quantity!: number;\n /**\n * JSON string containing the offers associated with the cart item\n */\n @Prop() offers!: string;\n /**\n * The unique identifier of the cart item\n */\n @Prop() itemId!: number;\n /**\n * The original price of the product in the cart\n */\n @Prop() productPrice!: number;\n\n @State() internalQuantity!: number;\n @State() internalOffers: any[] = [];\n @State() internalProductPrice!: number;\n @State() showAll: boolean = false;\n // Translations\n @State() freeLabel: string = '';\n @State() receivedOffer: string = '';\n @State() discountAmountLabel: string = '';\n @State() showMoreOffers: string = '';\n\n\n private readonly icons: Record<string, string> = {\n DiscountCouponIcon,\n GiftIcon,\n FireIcon,\n SpecialDiscountIcon,\n TagMoneyIcon,\n };\n\n private visibleOffersCount = 3;\n\n async componentWillLoad() {\n await Salla.onReady();\n await salla.lang.onLoaded(() => {\n this.freeLabel = salla.lang.get('common.elements.freeExclam');\n this.receivedOffer = salla.lang.get('pages.cart.received_offer');\n this.discountAmountLabel = salla.lang.get('pages.cart.discount_amount');\n this.showMoreOffers = salla.lang.get('pages.cart.show_more_offers');\n });\n this.internalQuantity = this.quantity;\n this.internalOffers = this.parseOffers(this.offers);\n this.internalProductPrice = this.productPrice;\n }\n\n componentDidLoad() {\n salla.event.on('cart::item.updated', (event) => this.handleCartItemUpdated(event));\n }\n\n private parseOffers(offers: string): any[] {\n try {\n return JSON.parse(offers || '[]');\n } catch (e) {\n console.error('Failed to parse offers', e);\n return [];\n }\n }\n\n private handleCartItemUpdated = (event) => {\n const updatedItem = event.data.cart.items.find((item) => item.id === this.itemId);\n if (updatedItem.id === this.itemId) {\n this.internalQuantity = updatedItem.quantity;\n this.internalOffers = updatedItem.detailed_offers || [];\n this.internalProductPrice = updatedItem.product_price;\n }\n };\n\n private get visibleOffers() {\n return this.internalOffers.slice(0, this.visibleOffersCount);\n }\n\n private get hiddenOffers() {\n return this.internalOffers.slice(this.visibleOffersCount);\n }\n\n private toggleShowAll = () => {\n this.showAll = !this.showAll;\n };\n\n private getPaidQty(quantity: number, offer: any) {\n return quantity - offer.free_quantity;\n }\n\n private renderOffer(quantity: number, offer: any) {\n const paidQty = this.getPaidQty(quantity, offer);\n\n return (\n <div class=\"s-cart-item-offers-box\">\n {offer.free_quantity > 0 && paidQty > 0 && (\n <div class=\"s-cart-item-offers-paid-free\">\n <div class=\"s-cart-item-offers-line\">\n {salla.helpers.number(paidQty)} × <span innerHTML={salla.money(this.internalProductPrice)}></span>\n </div>\n <div class=\"s-cart-item-offers-line\">\n {salla.helpers.number(offer.free_quantity)} × \n <span class=\"s-cart-item-offers-regular-price\" innerHTML={salla.money(this.internalProductPrice)}></span>\n <span class=\"s-cart-item-offers-free-label\">{this.freeLabel}</span>\n </div>\n </div>\n )}\n\n <div class=\"s-cart-item-offers-details\">\n <span class={`s-cart-item-offers-icon`} innerHTML={this.icons[offer.discount_icon] || ''}></span>\n <div>\n <p class=\"s-cart-item-offers-title\">\n {this.receivedOffer.replace(':offer', offer.offer_name)}\n </p>\n <p class=\"s-cart-item-offers-discount\">\n <span innerHTML={this.discountAmountLabel.replace(':amount', salla.money(offer.discount_amount.toFixed(2)))}></span>\n </p>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n if (!this.internalOffers?.length) {\n return null;\n }\n\n return (\n <div class=\"s-cart-item-offers-container\" id={`offers_list_${this.itemId}`}>\n {this.visibleOffers.map((offer) => this.renderOffer(this.internalQuantity, offer))}\n\n {this.internalOffers?.length > this.visibleOffersCount && (\n <div class=\"s-cart-item-offers-show-more\">\n <button\n class=\"s-cart-item-offers-show-more-btn\"\n onClick={this.toggleShowAll}\n type=\"button\">\n <span class=\"s-cart-item-offers-show-more-label\">\n +{this.hiddenOffers.length} {this.showMoreOffers}\n <span\n innerHTML={ArrowDownIcon}\n class={{\n 's-cart-item-offers-arrow-icon': true,\n 's-cart-item-offers-arrow-open': this.showAll,\n }}\n ></span>\n </span>\n </button>\n </div>\n )}\n\n {this.showAll && (\n <div class=\"s-cart-item-offers-collapsed\" id={`offers_${this.itemId}`}>\n {this.hiddenOffers.map((offer) => this.renderOffer(this.internalQuantity, offer))}\n </div>\n )}\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-D87fuwNW.system.js","sources":["src/components/salla-cart-item-offers/salla-cart-item-offers.scss?tag=salla-cart-item-offers","src/components/salla-cart-item-offers/salla-cart-item-offers.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Prop, State, h } from '@stencil/core';\nimport SpecialDiscountIcon from '../../assets/svg/special-discount.svg';\nimport GiftIcon from '../../assets/svg/gift.svg';\nimport TagMoneyIcon from '../../assets/svg/tag-money.svg';\nimport FireIcon from '../../assets/svg/fire.svg';\nimport DiscountCouponIcon from '../../assets/svg/discount-coupon.svg';\nimport ArrowDownIcon from '../../assets/svg/keyboard_arrow_down.svg';\n\n@Component({\n tag: 'salla-cart-item-offers',\n styleUrl: 'salla-cart-item-offers.scss',\n})\nexport class SallaCartItemOffers {\n /**\n * The quantity of the cart item\n */\n @Prop() quantity!: number;\n /**\n * JSON string containing the offers associated with the cart item\n */\n @Prop() offers!: string;\n /**\n * The unique identifier of the cart item\n */\n @Prop() itemId!: number;\n /**\n * The original price of the product in the cart\n */\n @Prop() productPrice!: number;\n\n @State() internalQuantity!: number;\n @State() internalOffers: any[] = [];\n @State() internalProductPrice!: number;\n @State() showAll: boolean = false;\n // Translations\n @State() freeLabel: string = '';\n @State() receivedOffer: string = '';\n @State() discountAmountLabel: string = '';\n @State() showMoreOffers: string = '';\n\n\n private readonly icons: Record<string, string> = {\n DiscountCouponIcon,\n GiftIcon,\n FireIcon,\n SpecialDiscountIcon,\n TagMoneyIcon,\n };\n\n private visibleOffersCount = 3;\n\n async componentWillLoad() {\n await Salla.onReady();\n await salla.lang.onLoaded(() => {\n this.freeLabel = salla.lang.get('common.elements.freeExclam');\n this.receivedOffer = salla.lang.get('pages.cart.received_offer');\n this.discountAmountLabel = salla.lang.get('pages.cart.discount_amount');\n this.showMoreOffers = salla.lang.get('pages.cart.show_more_offers');\n });\n this.internalQuantity = this.quantity;\n this.internalOffers = this.parseOffers(this.offers);\n this.internalProductPrice = this.productPrice;\n }\n\n componentDidLoad() {\n salla.event.on('cart::item.updated', (event) => this.handleCartItemUpdated(event));\n }\n\n private parseOffers(offers: string): any[] {\n try {\n return JSON.parse(offers || '[]');\n } catch (e) {\n console.error('Failed to parse offers', e);\n return [];\n }\n }\n\n private handleCartItemUpdated = (event) => {\n const updatedItem = event.data.cart.items.find((item) => item.id === this.itemId);\n if (updatedItem.id === this.itemId) {\n this.internalQuantity = updatedItem.quantity;\n this.internalOffers = updatedItem.detailed_offers || [];\n this.internalProductPrice = updatedItem.product_price;\n }\n };\n\n private get visibleOffers() {\n return this.internalOffers.slice(0, this.visibleOffersCount);\n }\n\n private get hiddenOffers() {\n return this.internalOffers.slice(this.visibleOffersCount);\n }\n\n private toggleShowAll = () => {\n this.showAll = !this.showAll;\n };\n\n private getPaidQty(quantity: number, offer: any) {\n return quantity - offer.free_quantity;\n }\n\n private renderOffer(quantity: number, offer: any) {\n const paidQty = this.getPaidQty(quantity, offer);\n\n return (\n <div class=\"s-cart-item-offers-box\">\n {offer.free_quantity > 0 && paidQty > 0 && (\n <div class=\"s-cart-item-offers-paid-free\">\n <div class=\"s-cart-item-offers-line\">\n {salla.helpers.number(paidQty)} × <span innerHTML={salla.money(this.internalProductPrice)}></span>\n </div>\n <div class=\"s-cart-item-offers-line\">\n {salla.helpers.number(offer.free_quantity)} × \n <span class=\"s-cart-item-offers-regular-price\" innerHTML={salla.money(this.internalProductPrice)}></span>\n <span class=\"s-cart-item-offers-free-label\">{this.freeLabel}</span>\n </div>\n </div>\n )}\n\n <div class=\"s-cart-item-offers-details\">\n <span class={`s-cart-item-offers-icon`} innerHTML={this.icons[offer.discount_icon] || ''}></span>\n <div>\n <p class=\"s-cart-item-offers-title\">\n {this.receivedOffer.replace(':offer', offer.offer_name)}\n </p>\n <p class=\"s-cart-item-offers-discount\">\n <span innerHTML={this.discountAmountLabel.replace(':amount', salla.money(offer.discount_amount.toFixed(2)))}></span>\n </p>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n if (!this.internalOffers?.length) {\n return null;\n }\n\n return (\n <div class=\"s-cart-item-offers-container\" id={`offers_list_${this.itemId}`}>\n {this.visibleOffers.map((offer) => this.renderOffer(this.internalQuantity, offer))}\n\n {this.internalOffers?.length > this.visibleOffersCount && (\n <div class=\"s-cart-item-offers-show-more\">\n <button\n class=\"s-cart-item-offers-show-more-btn\"\n onClick={this.toggleShowAll}\n type=\"button\">\n <span class=\"s-cart-item-offers-show-more-label\">\n +{this.hiddenOffers.length} {this.showMoreOffers}\n <span\n innerHTML={ArrowDownIcon}\n class={{\n 's-cart-item-offers-arrow-icon': true,\n 's-cart-item-offers-arrow-open': this.showAll,\n }}\n ></span>\n </span>\n </button>\n </div>\n )}\n\n {this.showAll && (\n <div class=\"s-cart-item-offers-collapsed\" id={`offers_${this.itemId}`}>\n {this.hiddenOffers.map((offer) => this.renderOffer(this.internalQuantity, offer))}\n </div>\n )}\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|