tabexseriescomponents 0.2.1280 → 0.2.1283

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.
Files changed (389) hide show
  1. package/dist/index.cjs.js +40 -258
  2. package/dist/index.esm.js +40 -258
  3. package/dist/index.umd.js +40 -258
  4. package/package.json +1 -1
  5. package/srcbefore27-11/Contexts/LanguageContext.jsx +0 -408
  6. package/srcbefore27-11/Contexts/ProductsCardsSectionContext.jsx +0 -36
  7. package/srcbefore27-11/Imagekitconfig copy.jsx +0 -46
  8. package/srcbefore27-11/Imagekitconfig.jsx +0 -178
  9. package/srcbefore27-11/StylesJS/Customstyles.js +0 -456
  10. package/srcbefore27-11/TabexComponents/Cards/CTAProductCard/CTAProductCard.jsx +0 -538
  11. package/srcbefore27-11/TabexComponents/Cards/Card20/Card20.jsx +0 -299
  12. package/srcbefore27-11/TabexComponents/Cards/Card21/Card21.jsx +0 -388
  13. package/srcbefore27-11/TabexComponents/Cards/Card22/Card22.jsx +0 -288
  14. package/srcbefore27-11/TabexComponents/Cards/Card23/Card23 copy.jsx +0 -1630
  15. package/srcbefore27-11/TabexComponents/Cards/Card23/Card23.jsx +0 -733
  16. package/srcbefore27-11/TabexComponents/Cards/CardAll/CardAll.jsx +0 -453
  17. package/srcbefore27-11/TabexComponents/Cards/CardBadgeSlideFromTop/CardBadgeSlideFromTop.jsx +0 -394
  18. package/srcbefore27-11/TabexComponents/Cards/CardWithTextOnly/CardWithTextOnly.jsx +0 -70
  19. package/srcbefore27-11/TabexComponents/Cards/Cardwithdetailsshowonhover/Cardwithdetailsshowonhover.jsx +0 -1074
  20. package/srcbefore27-11/TabexComponents/Cards/CategoryCardTextOnImage/CategoryCardTextOnImage.jsx +0 -211
  21. package/srcbefore27-11/TabexComponents/Cards/CategoryCardwithhoveraction/CategoryCardwithhoveraction.jsx +0 -293
  22. package/srcbefore27-11/TabexComponents/Cards/Categorycard_details_onhover/Categorycard_details_onhover.jsx +0 -512
  23. package/srcbefore27-11/TabexComponents/Cards/Categorycard_details_onhover copy/Categorycard_details_onhover.jsx +0 -513
  24. package/srcbefore27-11/TabexComponents/Cards/Categorycard_fullimage/Categorycard_fullimage.jsx +0 -235
  25. package/srcbefore27-11/TabexComponents/Cards/Categorycard_slidebgscaled/Categorycard_slidebgscaled.jsx +0 -199
  26. package/srcbefore27-11/TabexComponents/Cards/Categorycard_with_trianglebg/Categorycard_with_trianglebg.jsx +0 -182
  27. package/srcbefore27-11/TabexComponents/Cards/Categorycard_with_twolinestransition/Categorycard_with_twolinestransition.jsx +0 -184
  28. package/srcbefore27-11/TabexComponents/Cards/Categorycard_withshapes/Categorycard_withshapes.jsx +0 -161
  29. package/srcbefore27-11/TabexComponents/Cards/Categorycard_withtext/Categorycard_withtext.jsx +0 -208
  30. package/srcbefore27-11/TabexComponents/Cards/CircleCardWithVariants/CircleCardWithVariants.jsx +0 -560
  31. package/srcbefore27-11/TabexComponents/Cards/Classiccategorycard/Classiccategorycard copy.jsx +0 -145
  32. package/srcbefore27-11/TabexComponents/Cards/Classiccategorycard/Classiccategorycard.jsx +0 -145
  33. package/srcbefore27-11/TabexComponents/Cards/Classiccategorycard/ClassiccategorycardOriginal.jsx +0 -142
  34. package/srcbefore27-11/TabexComponents/Cards/HorizontalCategoryCard/HorizontalCategoryCard.jsx +0 -193
  35. package/srcbefore27-11/TabexComponents/Cards/Horizontalcard/Horizontalcard.jsx +0 -605
  36. package/srcbefore27-11/TabexComponents/Cards/MenuCard/MenuCard.jsx +0 -817
  37. package/srcbefore27-11/TabexComponents/Cards/ModernCardWithQuantityButton/ModernCardWithQuantityButton.jsx +0 -468
  38. package/srcbefore27-11/TabexComponents/Cards/ModernProductCard/ModernProductCard.jsx +0 -593
  39. package/srcbefore27-11/TabexComponents/Cards/Moderncategorycard/Moderncategorycard.jsx +0 -208
  40. package/srcbefore27-11/TabexComponents/Cards/NewProductcard/NewProductcard copy.jsx +0 -497
  41. package/srcbefore27-11/TabexComponents/Cards/NewProductcard/NewProductcard.jsx +0 -512
  42. package/srcbefore27-11/TabexComponents/Cards/ProductCardWithTextOnImage/ProductCardWithTextOnImage.jsx +0 -304
  43. package/srcbefore27-11/TabexComponents/Cards/Productcard6/Productcard6.jsx +0 -257
  44. package/srcbefore27-11/TabexComponents/Cards/Productcard7/Productcard7.jsx +0 -277
  45. package/srcbefore27-11/TabexComponents/Cards/Productcard_animatedbuttons/Productcard_animatedbuttons.jsx +0 -352
  46. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_circularbg/Productcard_with_circularbg.jsx +0 -291
  47. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_circularhover/Productcard_with_circularhover.jsx +0 -315
  48. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_slideanimation/Productcard_with_slideanimation.jsx +0 -327
  49. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants copy.jsx +0 -408
  50. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants.jsx +0 -528
  51. package/srcbefore27-11/TabexComponents/Cards/Productcard_with_zoominonhover/Productcard_with_zoominonhover.jsx +0 -731
  52. package/srcbefore27-11/TabexComponents/Cards/Productcarddefault/Productcarddefault.jsx +0 -275
  53. package/srcbefore27-11/TabexComponents/Cards/Productccard_with_imageontopleft/Productccard_with_imageontopleft.jsx +0 -286
  54. package/srcbefore27-11/TabexComponents/Cards/Prouductcard_with_zoomhover/Prouductcard_with_zoomhover.jsx +0 -138
  55. package/srcbefore27-11/TabexComponents/Cards/QuantityButtonBasedProductCard/QuantityButtonBasedProductCard.jsx +0 -611
  56. package/srcbefore27-11/TabexComponents/Cards/ServiceCard/ServiceCard.jsx +0 -600
  57. package/srcbefore27-11/TabexComponents/Cards/Simplecategorycardwithtextbelow/Simplecategorycardwithtextbelow.jsx +0 -225
  58. package/srcbefore27-11/TabexComponents/Cards/Simpleproductcard/Simpleproductcard copy 2.jsx +0 -525
  59. package/srcbefore27-11/TabexComponents/Cards/Simpleproductcard/Simpleproductcard copy.jsx +0 -2321
  60. package/srcbefore27-11/TabexComponents/Cards/Simpleproductcard/Simpleproductcard.jsx +0 -1311
  61. package/srcbefore27-11/TabexComponents/Cards/Simpleproductcard/Simpleproductcardlastversion15-9.jsx +0 -1292
  62. package/srcbefore27-11/TabexComponents/Cards/StylishProductCard/StylishProductCard.jsx +0 -337
  63. package/srcbefore27-11/TabexComponents/Cards/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +0 -347
  64. package/srcbefore27-11/TabexComponents/Cards/UpSlideEffectCard/UpSlideEffectCard.jsx +0 -605
  65. package/srcbefore27-11/TabexComponents/Cards/UserCardWithSocialMediaOnHover/UserCardWithSocialMediaOnHover.jsx +0 -185
  66. package/srcbefore27-11/TabexComponents/Cards/Variants_J_Cards/Variants_J_Cards.jsx +0 -660
  67. package/srcbefore27-11/TabexComponents/Footer/Allinonefooter/Allinonefooter.jsx +0 -759
  68. package/srcbefore27-11/TabexComponents/Footer/Footer1/Footer1.jsx +0 -551
  69. package/srcbefore27-11/TabexComponents/Footer/Footer2/Footer2.jsx +0 -731
  70. package/srcbefore27-11/TabexComponents/Footer/Footer3/Footer3.jsx +0 -414
  71. package/srcbefore27-11/TabexComponents/Footer/Footer4/Footer4.jsx +0 -466
  72. package/srcbefore27-11/TabexComponents/Footer/Footer5/Footer5.jsx +0 -776
  73. package/srcbefore27-11/TabexComponents/Footer/Footer6/Footer6.jsx +0 -290
  74. package/srcbefore27-11/TabexComponents/Footer/Footer7/Footer7.jsx +0 -430
  75. package/srcbefore27-11/TabexComponents/Footer/Footer8/Footer8 copy.jsx +0 -1970
  76. package/srcbefore27-11/TabexComponents/Footer/Footer8/Footer8.jsx +0 -2015
  77. package/srcbefore27-11/TabexComponents/Footer/FooterWithThreeColumns/FooterWithThreeColumns.jsx +0 -330
  78. package/srcbefore27-11/TabexComponents/Footer/ModernFooter/ModernFooter.jsx +0 -582
  79. package/srcbefore27-11/TabexComponents/Footer/Newsletterfooter/Newsletterfooter.jsx +0 -1165
  80. package/srcbefore27-11/TabexComponents/Footer/Newsletterincenter/Newsletterincenter.jsx +0 -646
  81. package/srcbefore27-11/TabexComponents/Footer/PrivacyPolicy/PrivacyPolicy.jsx +0 -110
  82. package/srcbefore27-11/TabexComponents/Footer/Simplefooter/Simplefooter.jsx +0 -332
  83. package/srcbefore27-11/TabexComponents/Generalfiles/images/egyptflag.png +0 -0
  84. package/srcbefore27-11/TabexComponents/Generalfiles/images/noimage.png +0 -0
  85. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/cod.png +0 -0
  86. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/fawry.png +0 -0
  87. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/payment.png +0 -0
  88. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/paymob.png +0 -0
  89. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/paypal.png +0 -0
  90. package/srcbefore27-11/TabexComponents/Generalfiles/images/payment/visa.png +0 -0
  91. package/srcbefore27-11/TabexComponents/Generalfiles/images/shoppingcart.png +0 -0
  92. package/srcbefore27-11/TabexComponents/Generalfiles/images/tabexlogo.png +0 -0
  93. package/srcbefore27-11/TabexComponents/Generalfiles/images/unknownmaleuser.png +0 -0
  94. package/srcbefore27-11/TabexComponents/Generalfiles/images/usflag.png +0 -0
  95. package/srcbefore27-11/TabexComponents/Generalfiles/images/whatsapp.png +0 -0
  96. package/srcbefore27-11/TabexComponents/Headers/CTAHeader/CTAHeader.jsx +0 -1264
  97. package/srcbefore27-11/TabexComponents/Headers/CategoriesComponent/CategoriesComponent.jsx +0 -375
  98. package/srcbefore27-11/TabexComponents/Headers/CategoryFeaturingHeader/CategoryFeaturingHeader.jsx +0 -1056
  99. package/srcbefore27-11/TabexComponents/Headers/CenteredLogoHeaderWithSlider/CenteredLogoHeaderWithSlider.jsx +0 -1498
  100. package/srcbefore27-11/TabexComponents/Headers/ClassicHeader/ClassicHeader.jsx +0 -1289
  101. package/srcbefore27-11/TabexComponents/Headers/DownloadApp/DownloadApp.jsx +0 -76
  102. package/srcbefore27-11/TabexComponents/Headers/ElegantHeader/ElegantHeader.jsx +0 -907
  103. package/srcbefore27-11/TabexComponents/Headers/FloatingIcons/FloatingIcons.jsx +0 -358
  104. package/srcbefore27-11/TabexComponents/Headers/Gotoheader/Gotoheader.jsx +0 -875
  105. package/srcbefore27-11/TabexComponents/Headers/Header4/Header4.jsx +0 -622
  106. package/srcbefore27-11/TabexComponents/Headers/Header8/Header8 copy.jsx +0 -1026
  107. package/srcbefore27-11/TabexComponents/Headers/Header8/Header8.jsx +0 -3414
  108. package/srcbefore27-11/TabexComponents/Headers/HeaderRestaurant/HeaderRestaurant.jsx +0 -777
  109. package/srcbefore27-11/TabexComponents/Headers/HeaderWithAdSlider/HeaderWithAdSlider.jsx +0 -933
  110. package/srcbefore27-11/TabexComponents/Headers/HeaderWithSearchOnCenter/HeaderWithSearchOnCenter.jsx +0 -710
  111. package/srcbefore27-11/TabexComponents/Headers/HeaderWithUtilityBar/HeaderWithUtilityBar.jsx +0 -902
  112. package/srcbefore27-11/TabexComponents/Headers/Header_threesectionslogocentered/Header_threesectionslogocentered.jsx +0 -1347
  113. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/Headerresponsive.jsx +0 -1566
  114. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/Headerresponsive11-1.jsx +0 -1201
  115. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/HeaderresponsiveOriginal.jsx +0 -990
  116. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/HeaderresponsiveStyle2 copy.jsx +0 -1639
  117. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/HeaderresponsiveStyle2.jsx +0 -7163
  118. package/srcbefore27-11/TabexComponents/Headers/Headerresponsive/Headerresponsivenew.jsx +0 -1327
  119. package/srcbefore27-11/TabexComponents/Headers/HeaderwithContactinfo/HeaderwithContactinfo.jsx +0 -941
  120. package/srcbefore27-11/TabexComponents/Headers/MarqueeHeader/MarqueeHeader.jsx +0 -80
  121. package/srcbefore27-11/TabexComponents/Headers/Minimalheader/Minimalheader.jsx +0 -846
  122. package/srcbefore27-11/TabexComponents/Headers/Modernheader/Modernheader.jsx +0 -1198
  123. package/srcbefore27-11/TabexComponents/Headers/ParentCollectionsComponent/ParentCollectionsComponent.jsx +0 -385
  124. package/srcbefore27-11/TabexComponents/Headers/SearchCenteredHeader/SearchCenteredHeader.jsx +0 -784
  125. package/srcbefore27-11/TabexComponents/Headers/SearchFocusedHeader/SearchFocusedHeader.jsx +0 -1186
  126. package/srcbefore27-11/TabexComponents/Headers/Simpleheader/Simpleheader.jsx +0 -3692
  127. package/srcbefore27-11/TabexComponents/Headers/SocialMediaSection/SocialMediaSection.jsx +0 -266
  128. package/srcbefore27-11/TabexComponents/Headers/StylishHeader/StylishHeader.jsx +0 -860
  129. package/srcbefore27-11/TabexComponents/Headers/Subheader/Subheader copy.jsx +0 -950
  130. package/srcbefore27-11/TabexComponents/Headers/Subheader/Subheader.jsx +0 -1052
  131. package/srcbefore27-11/TabexComponents/Headers/Subheader/Subheader13-3.jsx +0 -685
  132. package/srcbefore27-11/TabexComponents/Headers/Subheader/SubheaderOriginal.jsx +0 -517
  133. package/srcbefore27-11/TabexComponents/Headers/Subheader/Subheadernew.jsx +0 -555
  134. package/srcbefore27-11/TabexComponents/Headers/SubheaderDropdown/SubheaderDropdown.jsx +0 -610
  135. package/srcbefore27-11/TabexComponents/Headers/ThreeTieredHeader/ThreeTieredHeader.jsx +0 -1049
  136. package/srcbefore27-11/TabexComponents/Headers/TwoTieredHeader/TwoTieredHeader.jsx +0 -1095
  137. package/srcbefore27-11/TabexComponents/Headers/TwoTieredWithCenteredLogoHeader/TwoTieredWithCenteredLogoHeader.jsx +0 -979
  138. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BacgroundThreeImageWithCategories/BacgroundThreeImageWithCategories.jsx +0 -533
  139. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BackgroundFiveImageStructure/BackgroundFiveImageStructure.jsx +0 -338
  140. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BackgroundImageWithTopContent/BackgroundImageWithTopContent.jsx +0 -872
  141. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BackgroundImageWithTopContent/BackgroundImageWithTopContentrecent.jsx +0 -895
  142. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BackgroundSectionWithServicesCards/BackgroundSectionWithServicesCards.jsx +0 -302
  143. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Backgroundimage1/Backgroundimage1.jsx +0 -314
  144. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Backgroundimage_with_toppill/Backgroundimage_with_toppill.jsx +0 -318
  145. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/BackgroundimageandTextsection/BackgroundimageandTextsection.jsx +0 -179
  146. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Bgimagewithsearchbar/Bgimagewithsearchbar.jsx +0 -201
  147. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/CollapsableSection/CollapsableSection.jsx +0 -421
  148. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm copy 2.jsx +0 -583
  149. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm copy.jsx +0 -291
  150. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm.jsx +0 -822
  151. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm19-8beforeattach.jsx +0 -789
  152. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm22-7.jsx +0 -787
  153. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/DynamicForm/habal +0 -348
  154. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Filterwithcategoriespcoll/Filterwithcategoriespcoll.jsx +0 -387
  155. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/FullVideoSection/FullVideoSection.jsx +0 -268
  156. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/MapsSection/MapsSection.jsx +0 -295
  157. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/PopupCountryComponent/PopupCountryComponent.jsx +0 -120
  158. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Popupcomponent/Popupcomponent.jsx +0 -119
  159. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Searchcomponent/Searchcomponent.jsx +0 -99
  160. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Section_with_rightbgcont/Section_with_rightbgcont.jsx +0 -146
  161. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/TextSectionConnectToWA/TextSectionConnectToWA.jsx +0 -489
  162. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Threebgimages/Threebgimages.jsx +0 -296
  163. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages copy.jsx +0 -396
  164. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages.jsx +0 -633
  165. package/srcbefore27-11/TabexComponents/Sections/BackgroundImages/VideosSection/VideosSection.jsx +0 -509
  166. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection copy 2.jsx +0 -1399
  167. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection copy 3.jsx +0 -1656
  168. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection copy.jsx +0 -1540
  169. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection.jsx +0 -2323
  170. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection13-3.jsx +0 -1596
  171. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection21-10.jsx +0 -1872
  172. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection21-11beforeform.jsx +0 -1891
  173. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSection_cosmoandmore.jsx +0 -1880
  174. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection/CardsSectionwithanomation12-1.jsx +0 -2065
  175. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSection2/CardsSection2.jsx +0 -726
  176. package/srcbefore27-11/TabexComponents/Sections/Cards/CardsSectionwithfilter/CardsSectionwithfilter.jsx +0 -719
  177. package/srcbefore27-11/TabexComponents/Sections/Cards/ElegantCategoriesCardSection/ElegantCategoriesCardSection.jsx +0 -406
  178. package/srcbefore27-11/TabexComponents/Sections/Cards/ModernCardsSection/ModernCardsSection.jsx +0 -966
  179. package/srcbefore27-11/TabexComponents/Sections/Cards/RandomlyStructuredCollectionCards/RandomlyStructuredCollectionCards copy.jsx +0 -646
  180. package/srcbefore27-11/TabexComponents/Sections/Cards/RandomlyStructuredCollectionCards/RandomlyStructuredCollectionCards.jsx +0 -1577
  181. package/srcbefore27-11/TabexComponents/Sections/Cards/Sixverticalcardssection/Sixverticalcardssection.jsx +0 -596
  182. package/srcbefore27-11/TabexComponents/Sections/Cards/UsersCardsSection/UsersCardsSection.jsx +0 -383
  183. package/srcbefore27-11/TabexComponents/Sections/Slideshow/AboutSection/AboutSection.jsx +0 -342
  184. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Backgroundimage_with_topcircle/Backgroundimage_with_topcircle.jsx +0 -161
  185. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ContactUsSection/ContactUsSection.jsx +0 -394
  186. package/srcbefore27-11/TabexComponents/Sections/Slideshow/CountDownSection/CountDownSection.jsx +0 -174
  187. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection copy.jsx +0 -382
  188. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection.jsx +0 -651
  189. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection19-11.jsx +0 -757
  190. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection20-2.jsx +0 -1017
  191. package/srcbefore27-11/TabexComponents/Sections/Slideshow/HorizontalContactUsSection/HorizontalContactUsSection.jsx +0 -346
  192. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Image_with_leftwords/Image_with_leftwords.jsx +0 -3027
  193. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Image_with_rightwords/Image_with_rightwords.jsx +0 -141
  194. package/srcbefore27-11/TabexComponents/Sections/Slideshow/MarqueeSection/MarqueeSection.jsx +0 -103
  195. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Preloaderone/Preloaderone.jsx +0 -49
  196. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ServiceSectionWithImage/ServiceSectionWithImage.jsx +0 -376
  197. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Servicesection/Servicesection.jsx +0 -384
  198. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards copy.jsx +0 -1576
  199. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards.jsx +0 -1989
  200. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshow_with_rotatedsquare/Slideshow_with_rotatedsquare.jsx +0 -226
  201. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshow_with_squarebg/Slideshow_with_squarebg.jsx +0 -149
  202. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowdifferentanimations/Slideshowdifferentanimations.jsx +0 -143
  203. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade copy.jsx +0 -634
  204. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade.jsx +0 -474
  205. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide copy.jsx +0 -527
  206. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide.jsx +0 -665
  207. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowslide/SlideshowslideOriginal.jsx +0 -477
  208. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowslide/SlideshowslideRecent.jsx +0 -1217
  209. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslideoriginal8-5.jsx +0 -614
  210. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowzoom/Arrow.jsx +0 -91
  211. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom copy.jsx +0 -380
  212. package/srcbefore27-11/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom.jsx +0 -741
  213. package/srcbefore27-11/TabexComponents/Sections/Slideshow/TableSection/TableSection.jsx +0 -423
  214. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ThreeSectionsWithSlideshow/ThreeSectionsWithSlideshow copy.jsx +0 -284
  215. package/srcbefore27-11/TabexComponents/Sections/Slideshow/ThreeSectionsWithSlideshow/ThreeSectionsWithSlideshow.jsx +0 -636
  216. package/srcbefore27-11/TabexComponents/Sections/Slideshow/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +0 -402
  217. package/srcbefore27-11/TabexComponents/StaticPages/AccountInformation/AccountInformation.jsx +0 -234
  218. package/srcbefore27-11/TabexComponents/StaticPages/AddReview/AddReview.jsx +0 -306
  219. package/srcbefore27-11/TabexComponents/StaticPages/Afiiliatesignup/Afiiliatesignup.jsx +0 -364
  220. package/srcbefore27-11/TabexComponents/StaticPages/CartSlider/CartSlider.jsx +0 -1000
  221. package/srcbefore27-11/TabexComponents/StaticPages/Categoriesdropdown/Categoriesdropdown.jsx +0 -460
  222. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout copy.jsx +0 -1306
  223. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout.jsx +0 -2506
  224. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout10-1.jsx +0 -1633
  225. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout12-12beforeextras.jsx +0 -1999
  226. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout26-9.jsx +0 -1593
  227. package/srcbefore27-11/TabexComponents/StaticPages/Checkout/Checkout9-9.jsx +0 -1574
  228. package/srcbefore27-11/TabexComponents/StaticPages/Compare/Compare.jsx +0 -79
  229. package/srcbefore27-11/TabexComponents/StaticPages/Filter/CollectionsFilterHorizontal.jsx +0 -245
  230. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter copy 2.jsx +0 -2888
  231. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter copy.jsx +0 -1450
  232. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter.jsx +0 -3459
  233. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter1-5.jsx +0 -2624
  234. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter13-11.jsx +0 -2758
  235. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter14-8.jsx +0 -2753
  236. package/srcbefore27-11/TabexComponents/StaticPages/Filter/Filter17-9.jsx +0 -1495
  237. package/srcbefore27-11/TabexComponents/StaticPages/Filter/VariantFilter.jsx +0 -1271
  238. package/srcbefore27-11/TabexComponents/StaticPages/InnerGroups/InnerGroups.jsx +0 -62
  239. package/srcbefore27-11/TabexComponents/StaticPages/Login/FacebookLoginButton.jsx +0 -50
  240. package/srcbefore27-11/TabexComponents/StaticPages/Login/GoogleLoginButton.jsx +0 -35
  241. package/srcbefore27-11/TabexComponents/StaticPages/Login/Login copy.jsx +0 -1060
  242. package/srcbefore27-11/TabexComponents/StaticPages/Login/Login.jsx +0 -616
  243. package/srcbefore27-11/TabexComponents/StaticPages/OrderSuccess/OrderSuccess.jsx +0 -693
  244. package/srcbefore27-11/TabexComponents/StaticPages/OrderSuccess/OrderSuccess2.jsx +0 -173
  245. package/srcbefore27-11/TabexComponents/StaticPages/Ordershistory/Ordershistory.jsx +0 -1831
  246. package/srcbefore27-11/TabexComponents/StaticPages/Policies/Policies.jsx +0 -291
  247. package/srcbefore27-11/TabexComponents/StaticPages/PrivacyPolicy/PrivacyPolicy.jsx +0 -194
  248. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Addreviewform.jsx +0 -183
  249. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/AddreviewformOriginal.jsx +0 -128
  250. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Article_itemtype.jsx +0 -268
  251. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/DescriptionContent.jsx +0 -190
  252. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/ProductExtraFields.jsx +0 -225
  253. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/ProductExtras.jsx +0 -224
  254. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/ProductFileUploader.jsx +0 -136
  255. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/ProductHeaderPricing.jsx +0 -347
  256. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/ProductReviews.jsx +0 -262
  257. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtype.jsx +0 -5566
  258. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtype10-1.jsx +0 -1554
  259. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtype3-11.jsx +0 -1827
  260. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtype31-3.jsx +0 -1351
  261. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtypeUpdated.jsx +0 -1566
  262. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Product_itemtypeeuro.jsx +0 -3101
  263. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Productinfo.jsx +0 -3047
  264. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Productinfo13-5.jsx +0 -2103
  265. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Productinfo_28_6.jsx +0 -2189
  266. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Productinfotoday.jsx +0 -2166
  267. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Service_itemtype.js +0 -2714
  268. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Service_itemtype.jsx +0 -2206
  269. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Service_itemtypetill28-4-2025.jsx +0 -1158
  270. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Serviceinfotabs.jsx +0 -1117
  271. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Serviceinfotabs4-5.jsx +0 -1043
  272. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Serviceinfotabstill28-4-2025.jsx +0 -1040
  273. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Variantoptions.jsx +0 -905
  274. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/Variantoptions21-9.jsx +0 -324
  275. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo/staticroutersidenav.module.css +0 -145
  276. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Addreviewform.jsx +0 -183
  277. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/AddreviewformOriginal.jsx +0 -128
  278. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/DescriptionContent.jsx +0 -140
  279. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/ProductExtraFields.jsx +0 -225
  280. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/ProductHeaderPricing.jsx +0 -310
  281. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/ProductReviews.jsx +0 -235
  282. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype.jsx +0 -1672
  283. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype10-1.jsx +0 -1554
  284. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype31-3.jsx +0 -1351
  285. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Product_itemtypeUpdated.jsx +0 -1566
  286. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Productinfo.jsx +0 -1804
  287. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Service_itemtype.jsx +0 -560
  288. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Serviceinfotabs.jsx +0 -928
  289. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Variantoptions.jsx +0 -597
  290. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/Variantoptions21-9.jsx +0 -324
  291. package/srcbefore27-11/TabexComponents/StaticPages/Productinfo4-4/staticroutersidenav.module.css +0 -145
  292. package/srcbefore27-11/TabexComponents/StaticPages/RefundPolicy/RefundPolicy.jsx +0 -194
  293. package/srcbefore27-11/TabexComponents/StaticPages/Resetpassword/Resetpassword.jsx +0 -346
  294. package/srcbefore27-11/TabexComponents/StaticPages/Searchlist/Searchlist.jsx +0 -367
  295. package/srcbefore27-11/TabexComponents/StaticPages/ShippingPolicy/ShippingPolicy.jsx +0 -222
  296. package/srcbefore27-11/TabexComponents/StaticPages/Signup/CustomerAddressForm.jsx +0 -277
  297. package/srcbefore27-11/TabexComponents/StaticPages/Signup/CustomerInformationForm copy.jsx +0 -1135
  298. package/srcbefore27-11/TabexComponents/StaticPages/Signup/CustomerInformationForm.jsx +0 -1505
  299. package/srcbefore27-11/TabexComponents/StaticPages/Signup/CustomerInformationForm12-5beforeemailrequired.jsx +0 -1476
  300. package/srcbefore27-11/TabexComponents/StaticPages/Signup/Signup.jsx +0 -199
  301. package/srcbefore27-11/TabexComponents/StaticPages/Staticpagesrouter/Staticpagesrouter.jsx +0 -292
  302. package/srcbefore27-11/TabexComponents/StaticPages/TermsConditions/TermsConditions.jsx +0 -219
  303. package/srcbefore27-11/TabexComponents/StaticPages/VendorPage/VendorPage.jsx +0 -162
  304. package/srcbefore27-11/TabexComponents/StaticPages/Viewcart/Viewcart 10-10.jsx +0 -765
  305. package/srcbefore27-11/TabexComponents/StaticPages/Viewcart/Viewcart.jsx +0 -786
  306. package/srcbefore27-11/TabexComponents/StaticPages/Viewcart/Viewcart26-9.jsx +0 -786
  307. package/srcbefore27-11/TabexComponents/StaticPages/Viewcart/ViewcartOriginal.jsx +0 -786
  308. package/srcbefore27-11/TabexComponents/StaticPages/Viewcart/ViewcartUpdated.jsx +0 -1425
  309. package/srcbefore27-11/TabexComponents/StaticPages/Wishlist/Wishlist.jsx +0 -844
  310. package/srcbefore27-11/TabexComponents/StaticPages/Wishlist/Wishlist25-4.jsx +0 -555
  311. package/srcbefore27-11/TabexComponents/StaticPages/Wishlist/Wishlist26-9.jsx +0 -555
  312. package/srcbefore27-11/TabexComponents/StaticPages/Wishlist/WishlistOriginal.jsx +0 -555
  313. package/srcbefore27-11/TabexComponents/StaticPages/Wishlist/WishlistUpdated.jsx +0 -815
  314. package/srcbefore27-11/button.jsx +0 -40
  315. package/srcbefore27-11/index.jsx +0 -353
  316. package/srcbefore27-11/styles/Home.module.css +0 -129
  317. package/srcbefore27-11/styles/cards/Categorcycard_fullimage.module.css +0 -14
  318. package/srcbefore27-11/styles/cards/Categorycard_slidebgscaled.module.css +0 -73
  319. package/srcbefore27-11/styles/cards/Categorycard_withshapes.module.css +0 -189
  320. package/srcbefore27-11/styles/cards/ModernCardWithQuantityButton.module.css +0 -30
  321. package/srcbefore27-11/styles/cards/Productcard6.module.css +0 -9
  322. package/srcbefore27-11/styles/cards/Productccard_with_zoominonhover.module.css +0 -94
  323. package/srcbefore27-11/styles/cards/Prouductcard_with_zoomhover.module.css +0 -61
  324. package/srcbefore27-11/styles/cards/UserCardWithSocialMediaOnHover.module.css +0 -65
  325. package/srcbefore27-11/styles/cards/card23.module.css +0 -60
  326. package/srcbefore27-11/styles/cards/categorycard.module.css +0 -84
  327. package/srcbefore27-11/styles/cards/categorycard3.module.css +0 -50
  328. package/srcbefore27-11/styles/cards/categorycardwithtext.module.css +0 -40
  329. package/srcbefore27-11/styles/cards/generalCardsStyles.module.css +0 -79
  330. package/srcbefore27-11/styles/cards/productcard_animatedbuttons.module.css +0 -139
  331. package/srcbefore27-11/styles/cards/productcard_with_textonhover.module.css +0 -18
  332. package/srcbefore27-11/styles/cards/productcard_withtextonimage.module.css +0 -0
  333. package/srcbefore27-11/styles/cards/productccard_with_imageontopleft.module.css +0 -85
  334. package/srcbefore27-11/styles/general/bootstrap.css +0 -4763
  335. package/srcbefore27-11/styles/general/dropdown.css +0 -206
  336. package/srcbefore27-11/styles/general/editorbardropdown.module.css +0 -94
  337. package/srcbefore27-11/styles/general/filter.module.css +0 -108
  338. package/srcbefore27-11/styles/general/form.module.css +0 -255
  339. package/srcbefore27-11/styles/general/general.module.css +0 -872
  340. package/srcbefore27-11/styles/general/image-gallery.css +0 -531
  341. package/srcbefore27-11/styles/general/react-accessible-accordion.module.css +0 -52
  342. package/srcbefore27-11/styles/general/react-phone-input-2.module.css +0 -927
  343. package/srcbefore27-11/styles/general/scrollbtn.module.css +0 -22
  344. package/srcbefore27-11/styles/general/slick.module.css +0 -166
  345. package/srcbefore27-11/styles/general/tabs.module.css +0 -119
  346. package/srcbefore27-11/styles/general/workplaceeditor.module.css +0 -328
  347. package/srcbefore27-11/styles/globals.css +0 -26
  348. package/srcbefore27-11/styles/headers/CTAHeader.module.css +0 -40
  349. package/srcbefore27-11/styles/headers/CategoryFeaturingHeader.module.css +0 -61
  350. package/srcbefore27-11/styles/headers/Gotoheader.module.css +0 -87
  351. package/srcbefore27-11/styles/headers/Header7.module.css +0 -50
  352. package/srcbefore27-11/styles/headers/HeaderWithAdSlider.module.css +0 -86
  353. package/srcbefore27-11/styles/headers/HeaderWithSearchOnCenter.module.css +0 -101
  354. package/srcbefore27-11/styles/headers/HeaderWithUtilityBar.module.css +0 -46
  355. package/srcbefore27-11/styles/headers/Header_threesectionslogocentered.module.css +0 -84
  356. package/srcbefore27-11/styles/headers/NewHeader.module.css +0 -101
  357. package/srcbefore27-11/styles/headers/SearchFocusedHeader.module.css +0 -62
  358. package/srcbefore27-11/styles/headers/Sideheader.module.css +0 -108
  359. package/srcbefore27-11/styles/headers/Simpleheader.module.css +0 -102
  360. package/srcbefore27-11/styles/headers/classicheader.module.css +0 -16
  361. package/srcbefore27-11/styles/headers/classicheaderstyles.module.css +0 -9
  362. package/srcbefore27-11/styles/headers/dropdown.css +0 -0
  363. package/srcbefore27-11/styles/headers/header4.module.css +0 -175
  364. package/srcbefore27-11/styles/headers/header5.module.css +0 -30
  365. package/srcbefore27-11/styles/headers/header_contactinfo.module.css +0 -53
  366. package/srcbefore27-11/styles/headers/headerresturant.module.css +0 -89
  367. package/srcbefore27-11/styles/headers/modernheader.module.css +0 -45
  368. package/srcbefore27-11/styles/headers/stylishheader.module.css +0 -24
  369. package/srcbefore27-11/styles/headers/subheader.module.css +0 -114
  370. package/srcbefore27-11/styles/headers/threetieredheader.module.css +0 -91
  371. package/srcbefore27-11/styles/sections/BackgroundImageWithTopContent.css +0 -4
  372. package/srcbefore27-11/styles/sections/Backgroundimage1.module.css +0 -17
  373. package/srcbefore27-11/styles/sections/Backgroundimage_with_topcircle.module.css +0 -28
  374. package/srcbefore27-11/styles/sections/Freetext.module.css +0 -18
  375. package/srcbefore27-11/styles/sections/Section_with_rightbgcont.module.css +0 -49
  376. package/srcbefore27-11/styles/sections/Slideshow_with_rotatedsquare.module.css +0 -35
  377. package/srcbefore27-11/styles/sections/Slideshow_with_squarebg.module.css +0 -39
  378. package/srcbefore27-11/styles/staticpages/accordion.module.css +0 -9
  379. package/srcbefore27-11/styles/staticpages/cart.module.css +0 -108
  380. package/srcbefore27-11/styles/staticpages/dropdown.css +0 -196
  381. package/srcbefore27-11/styles/staticpages/filter.module.css +0 -139
  382. package/srcbefore27-11/styles/staticpages/image-gallery.css +0 -481
  383. package/srcbefore27-11/styles/staticpages/login.module.css +0 -155
  384. package/srcbefore27-11/styles/staticpages/productinfo.module.css +0 -54
  385. package/srcbefore27-11/styles/staticpages/shop.module.css +0 -191
  386. package/srcbefore27-11/styles/staticpages/signup.module.css +0 -250
  387. package/srcbefore27-11/styles/staticpages/staticroutersidenav.module.css +0 -129
  388. package/srcbefore27-11/styles/staticpages/viewcart.module.css +0 -129
  389. package/srcbefore27-11/styles/staticpages/wishlist.module.css +0 -29
@@ -1,2103 +0,0 @@
1
- //productidprops
2
- import React, { useEffect, useState } from 'react';
3
- import { Messaging } from 'react-cssfx-loading';
4
- import { css } from 'glamor';
5
- import Product_itemtype from './Product_itemtype.jsx';
6
- import Service_itemtype from './Service_itemtype.jsx';
7
- import Article_itemtype from './Article_itemtype.jsx';
8
- import '../../../styles/staticpages/image-gallery.css';
9
- import { ScrollMenu, VisibilityContext } from 'react-horizontal-scrolling-menu';
10
- import { Box, Tab, Tabs } from '@mui/material';
11
- import { Imagekitimagecomp } from '../../../Imagekitconfig.jsx';
12
- import { HiOutlinePhone } from '@react-icons/all-files/hi/HiOutlinePhone';
13
- import { AiOutlineMail } from '@react-icons/all-files/ai/AiOutlineMail';
14
- import { FaShippingFast } from '@react-icons/all-files/fa/FaShippingFast';
15
- import { RiSecurePaymentLine } from '@react-icons/all-files/ri/RiSecurePaymentLine';
16
- import ProductReviews from './ProductReviews.jsx';
17
- import DescriptionContent from './DescriptionContent.jsx';
18
- import ReactPlayer from 'react-player';
19
-
20
- const Productinfo = (props) => {
21
- const [ProductInfoObj, setProductInfoObj] = useState({});
22
- const srcfromprops = props.actions.srcfromprops;
23
- const StatePagePropertiesContext = props.actions.StatePagePropertiesContext;
24
- const lang = props.actions.lang;
25
- const langdetect = props.actions.langdetect;
26
- const templatepropcontext = props.actions.templatepropcontext;
27
- const routingcountext = props.actions.routingcountext;
28
- const StaticPagesLinksContext = props.actions.StaticPagesLinksContext;
29
- const TabexSectionsComponentsContext = props.actions.TabexSectionsComponentsContext;
30
- const FetchQueriesEngineContext = props.actions.FetchQueriesEngineContext;
31
- const setFetchQueriesEngineContext = props.actions.setFetchQueriesEngineContext;
32
- const serverbaselink = props.actions.serverbaselink;
33
- const AddtoCartMutationContext = props.actions.AddtoCartMutationContext;
34
- const ProductIdProdutInfoModalContext = props.actions.ProductIdProdutInfoModalContext;
35
- const AddtoCartContext = props.actions.AddtoCartContext;
36
- const addtofavoritescontext = props.actions.addtofavoritescontext;
37
- const fetchProductInfoQueryContextProps = props.actions.fetchProductInfoQueryContext;
38
- const [fetchProductInfoQueryContext, setfetchProductInfoQueryContext] = useState({});
39
-
40
- useEffect(() => {
41
- if (fetchProductInfoQueryContextProps.isSuccess) {
42
- setProductInfoObj({ ...fetchProductInfoQueryContextProps.data });
43
- setfetchProductInfoQueryContext(fetchProductInfoQueryContextProps);
44
- }
45
- }, [props.actions, props, fetchProductInfoQueryContextProps.data, fetchProductInfoQueryContextProps.isSuccess]);
46
- const fetchproductinfoObjContext = props.actions.fetchproductinfoObjContext;
47
- const setfetchproductinfoObjContext = props.actions.setfetchproductinfoObjContext;
48
- const pageindexcontext = props.actions.pageindexcontext;
49
- const setpageindexcontext = props.actions.setpageindexcontext;
50
- const authdetailsContext = props.actions.authdetailsContext;
51
- const ikimagecredcontext = props.actions.ikimagecredcontext;
52
- const Pixel_EventsContext = props.actions.Pixel_EventsContext;
53
-
54
- const actions = props.actions;
55
- const GeneralAPIMutationContext = props.actions.GeneralAPIMutationContext;
56
- const setCurrentPageIdContext = props.actions.setCurrentPageIdContext;
57
- const NotificationManager = props.actions.NotificationManager;
58
- const productidparam = props.productidparam;
59
-
60
- const [variantsku, setvariantsku] = useState('');
61
- const [isoutofstock, setisoutofstock] = useState(false);
62
- const [sectionproperties, setsectionproperties] = useState('');
63
- const [CurrentPageId, setCurrentPageId] = useState('');
64
- const [RelatedProductsTagid, setRelatedProductsTagid] = useState('');
65
- const [variantnotchosendisclaimer, setvariantnotchosendisclaimer] = useState('');
66
-
67
- const [filterproductreviews, setfilterproductreviews] = useState('all');
68
- const [productreviews, setproductreviews] = useState([]);
69
- const [Relatedproducts, setRelatedproducts] = useState([]);
70
- const [productimagesarray, setproductimagesarray] = useState([]);
71
- const [quantityconditionfoundobj, setquantityconditionfoundobj] = useState(null);
72
- const [addtocardpayloadobj, setaddtocardpayloadobj] = useState({
73
- functype: 'add',
74
- item_type: 'product',
75
- productid: '',
76
- variantid: '',
77
- quantity: 1,
78
- date: '',
79
- time: '',
80
- from: '',
81
- to: '',
82
- extrafields: [],
83
- });
84
- const [opensizeguidemodal, setopensizeguidemodal] = useState(false);
85
- const [variantindexcompleted, setvariantindexcompleted] = useState('');
86
- const [variantindex, setvariantindex] = useState('');
87
- const [isloaded, setisloaded] = useState(false);
88
- const [showMore, setShowMore] = useState(false);
89
- const [currentshowingimageindex, setcurrentshowingimageindex] = useState(0);
90
- const [tabIndex, setTabIndex] = useState('');
91
- const [tabname, settabname] = useState('');
92
- const [sizeguideimage, setsizeguideimage] = useState([]);
93
- const [productVideos, setproductVideos] = useState([]);
94
- const [variantvalueidentifier, setvariantvalueidentifier] = useState([]);
95
-
96
- const handleTabChange = (event, newTabIndex) => {
97
- setTabIndex(newTabIndex);
98
- };
99
- useEffect(() => {
100
- if (Object.keys(StatePagePropertiesContext).length != 0) {
101
- var secpropobj = {};
102
- StatePagePropertiesContext.pageobj != undefined &&
103
- StatePagePropertiesContext.pageobj.pageproperties != undefined &&
104
- StatePagePropertiesContext.pageobj.pageproperties.forEach(function (arrayItem, arrayindex) {
105
- secpropobj[arrayItem.property_css_name] = arrayItem.property_value;
106
- });
107
-
108
- setsectionproperties({ ...secpropobj });
109
- setTabIndex(0);
110
- settabname('descriptiontab');
111
- if (sectionproperties.prodCatShow == 'Hide' || (sectionproperties.descriptionposition != 'Bottom' && fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length == 0)) {
112
- settabname('shippingpolicytab');
113
- } else if (
114
- fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length == 0 &&
115
- sectionproperties.showfirstpolicy == 'Hide' &&
116
- sectionproperties.showsecondpolicy == 'Hide'
117
- ) {
118
- // settabname('videostab');
119
- settabname('reviewstab');
120
- } else if (
121
- fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length != 0 &&
122
- sectionproperties.showfirstpolicy == 'Hide' &&
123
- sectionproperties.showsecondpolicy == 'Hide'
124
- ) {
125
- // settabname('videostab');
126
- settabname('videostab');
127
- }
128
- }
129
- }, [StatePagePropertiesContext]);
130
- useEffect(() => {
131
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length != 0) {
132
- if (Array.isArray(fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos)) {
133
- var temparr = [...fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos];
134
- temparr.forEach(function (item) {
135
- item.linkclicked = false;
136
- });
137
- setproductVideos([...temparr]);
138
- }
139
- }
140
- }, [fetchProductInfoQueryContext.isSuccess, fetchProductInfoQueryContext.data]);
141
- useEffect(() => {
142
- var cartindex = templatepropcontext.pagesnprop.findIndex((x) => x.staticpageid == '6218bccb810ae');
143
-
144
- if (cartindex >= 0) {
145
- setpageindexcontext(cartindex);
146
- setCurrentPageId(templatepropcontext.pagesnprop[cartindex].pageid);
147
- if (props.srcfromprops != 'templatedraftrouter') {
148
- setCurrentPageIdContext(templatepropcontext.pagesnprop[cartindex].pageid);
149
- }
150
- }
151
- }, []);
152
- useEffect(() => {
153
- var secpropobj = {};
154
- templatepropcontext?.pagesnprop[pageindexcontext]?.pageproperties?.forEach(function (arrayItem, arrayindex) {
155
- secpropobj[arrayItem.property_css_name] = arrayItem.property_value;
156
- });
157
- setsectionproperties({ ...secpropobj });
158
- }, [pageindexcontext]);
159
- useEffect(() => {
160
- if (productidparam == undefined) {
161
- productidassigner(ProductIdProdutInfoModalContext);
162
- } else {
163
- productidassigner(productidparam);
164
- }
165
- }, []);
166
- // useEffect(() => {
167
- // if (fetchProductInfoQueryContext.isSuccess) {
168
- // setProductInfoObj({ ...fetchProductInfoQueryContext.data });
169
- // }
170
- // }, [fetchProductInfoQueryContext.isSuccess, fetchProductInfoQueryContext.data, props, props.actions]);
171
- useEffect(() => {
172
- if (Object.keys(ProductInfoObj).length != 0 && !isloaded) {
173
- variantchecker();
174
- Pixel_EventsContext('productview', {
175
- name_en: fetchProductInfoQueryContext?.data?.data?.productinfo?.name_en,
176
- name_ar: fetchProductInfoQueryContext?.data?.data?.productinfo?.name_ar,
177
- productid: fetchProductInfoQueryContext?.data?.data?.productinfo?.productid,
178
- sku: fetchProductInfoQueryContext?.data?.data?.productinfo?.sku,
179
- });
180
- Pixel_EventsContext('ViewContent', {
181
- name_en: fetchProductInfoQueryContext?.data?.data?.productinfo?.name_en,
182
- name_ar: fetchProductInfoQueryContext?.data?.data?.productinfo?.name_ar,
183
- productid: fetchProductInfoQueryContext?.data?.data?.productinfo?.productid,
184
- sku: fetchProductInfoQueryContext?.data?.data?.productinfo?.sku,
185
- });
186
- }
187
- }, [ProductInfoObj, isloaded]);
188
- const productidassigner = (productid) => {
189
- var tempFetchQueriesEngineContext = { ...FetchQueriesEngineContext };
190
- tempFetchQueriesEngineContext.fetchproductinfo = true;
191
- setFetchQueriesEngineContext({ ...tempFetchQueriesEngineContext });
192
- var tempfetchproductinfoObjContext = { ...fetchproductinfoObjContext };
193
-
194
- tempfetchproductinfoObjContext.productid = productid;
195
- setfetchproductinfoObjContext({ ...tempfetchproductinfoObjContext });
196
- };
197
- useEffect(() => {
198
- if (!fetchProductInfoQueryContext.isFetching && fetchProductInfoQueryContext.isSuccess && ikimagecredcontext != undefined) {
199
- if (fetchProductInfoQueryContext.data.data.productinfo != null) {
200
- var tempproductimagesarray = [];
201
- var sizeguideimagetemp = [];
202
-
203
- if (Array.isArray(fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages)) {
204
- fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages.forEach(function (arrayItem, arrayindex) {
205
- var imagepath = arrayItem.path;
206
-
207
- // var sizeguideimagearrayobj = {
208
- // thumbnail: arrayItem.path,
209
- // original: arrayItem.path,
210
- // galleryid: arrayItem.galleryid,
211
- // };
212
-
213
- if (imagepath.includes('https')) {
214
- let position = imagepath.search('https');
215
- let result = imagepath.slice(position);
216
- var productimagesarrayobj = {
217
- thumbnail: arrayItem.path,
218
- original: arrayItem.path,
219
- galleryid: arrayItem.galleryid,
220
- };
221
- } else {
222
- var productimagesarrayobj = {
223
- thumbnail: ikimagecredcontext?.ikimageendpoint + '/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + arrayItem.path,
224
- original: ikimagecredcontext?.ikimageendpoint + '/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + arrayItem.path,
225
- galleryid: arrayItem.galleryid,
226
- // description:
227
- // { dangerouslySetInnerHTML={{
228
- // __html:
229
- // fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en,
230
- // }}}
231
- // langdetect == 'en' ? fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en : fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar,
232
- };
233
- }
234
- // tempproductimagesarray.push(productimagesarrayobj);
235
- if (arrayItem?.is_size_guide != undefined && arrayItem?.is_size_guide != null && arrayItem?.is_size_guide == 1) {
236
- sizeguideimagetemp.push(productimagesarrayobj);
237
- } else {
238
- tempproductimagesarray.push(productimagesarrayobj);
239
- }
240
- });
241
- }
242
- setsizeguideimage([...sizeguideimagetemp]);
243
-
244
- setproductimagesarray([...tempproductimagesarray]);
245
- variantchecker();
246
- var quantitystepincrearse = 1;
247
-
248
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
249
- tempaddtocardpayloadobj.productid = fetchProductInfoQueryContext.data.data.productinfo.productid;
250
- // setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
251
- setRelatedProductsTagid(fetchProductInfoQueryContext.data.data.productinfo.maintagid);
252
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.maintagid != null && fetchProductInfoQueryContext?.data?.data?.productinfo?.maintagid?.length != 0) {
253
- GeneralAPIMutationContext.mutate({
254
- endpointurl: '/FetchRelatedProducts',
255
- tagid: fetchProductInfoQueryContext.data.data.productinfo.maintagid,
256
- mutateSuccesscallback: (data, variables) => {
257
- if (data.data.status) {
258
- setRelatedproducts(data.data.productsrelated);
259
- } else {
260
- // NotificationManager.warning('', data.data.reason);
261
- }
262
- },
263
- });
264
- }
265
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.item_type == 'package list') {
266
- tempaddtocardpayloadobj.item_type = 'package list';
267
- } else {
268
- tempaddtocardpayloadobj.item_type = 'product';
269
- }
270
-
271
- if (
272
- fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != undefined &&
273
- fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != null &&
274
- fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != 1 &&
275
- fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != ''
276
- ) {
277
- if (authdetailsContext?.instinfo?.contactinfo.instid == '66d6de1a1e04a') {
278
- quantitystepincrearse = parseFloat(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
279
- } else {
280
- quantitystepincrearse = parseInt(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
281
- }
282
- // quantitystepincrearse = parseFloat(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
283
- }
284
- tempaddtocardpayloadobj.quantity = quantitystepincrearse;
285
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
286
- }
287
- }
288
- }, [fetchProductInfoQueryContext.isSuccess, fetchProductInfoQueryContext.data, ikimagecredcontext]);
289
- const clearchoosenvaluesbutkeepcurrentvalue = (optionindex, optionvaluesitem, optionvaluesindex) => {
290
- var productarr = ProductInfoObj;
291
- productarr?.data?.productinfo?.productoptions?.forEach(function (item, index) {
292
- item.isselected = 0;
293
- item?.optionvalues?.forEach(function (valueitem, valueindex) {
294
- valueitem.isselected = 0;
295
- });
296
- });
297
-
298
- selectproductoptionvalue(optionindex, optionvaluesitem, optionvaluesindex, productarr);
299
- };
300
- const selectproductoptionvalue = (optionindex, optionvaluesitem, optionvaluesindex, productarrtobepassed) => {
301
- if (productarrtobepassed == undefined || productarrtobepassed == null) {
302
- var productarr = ProductInfoObj;
303
- } else {
304
- var productarr = productarrtobepassed;
305
- }
306
- var isselected = productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected;
307
- if (isselected == 1) {
308
- productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected = 0;
309
- } else {
310
- productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected = 1;
311
- }
312
- if (
313
- productarr.data.productinfo.productoptions[optionindex].optionname == 'color' ||
314
- productarr.data.productinfo.productoptions[optionindex].optionname == 'Color' ||
315
- productarr.data.productinfo.productoptions[optionindex].optionname == 'Colour'
316
- ) {
317
- setvariantvalueidentifier(productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex]?.value_identifier);
318
- // setvariantnotchosendisclaimer('This field is required');
319
- var variantimageindex = 0;
320
- var variantImageMatching = null;
321
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
322
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
323
- if (optionvaluesitem.valueid == varinatoptionitem.valueid) {
324
- variantImageMatching = ProductVariantItem;
325
- }
326
- });
327
- });
328
-
329
- if (variantImageMatching != null) {
330
- productimagesarray?.forEach(function (tempimageitem, tempimageindex) {
331
- if (tempimageitem.galleryid == variantImageMatching?.variantgalleryid) {
332
- variantimageindex = tempimageindex;
333
- }
334
- });
335
-
336
- setcurrentshowingimageindex(variantimageindex);
337
- }
338
- }
339
- productarr.data.productinfo.productoptions[optionindex].optionvalues.forEach(function (arrayItem, arrayindex) {
340
- if (optionvaluesindex != arrayindex) {
341
- arrayItem.isselected = 0;
342
- }
343
- });
344
- variantchecker();
345
- variantcompleting();
346
- setProductInfoObj({ ...productarr });
347
- };
348
- const variantchecker = () => {
349
- var productarr = ProductInfoObj;
350
- if (Object.keys(productarr).length != 0) {
351
- if (productarr?.data?.productinfo?.hasvariants == 1) {
352
- var selectedoptionsvalues = [];
353
- var variantsaccessible = [];
354
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
355
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
356
- if (ProductOptionValuesitem.isselected == 1) {
357
- selectedoptionsvalues.push(ProductOptionValuesitem);
358
- }
359
- });
360
- });
361
- if (selectedoptionsvalues.length == 0) {
362
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
363
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
364
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
365
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
366
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
367
- ProductOptionValuesitem.isenabled = 1;
368
- }
369
- });
370
- });
371
- });
372
- });
373
- } else {
374
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
375
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
376
- ProductOptionValuesitem.isenabled = 0;
377
- });
378
- });
379
-
380
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
381
- var variantcommonvalues = [];
382
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
383
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
384
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
385
- variantcommonvalues.push(varinatoptionitem);
386
- }
387
- });
388
- });
389
-
390
- var addvariantcount = [];
391
- var addvariant = false;
392
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
393
- addvariant = false;
394
- variantcommonvalues.forEach(function (varinatoptionitem, variantoptionindex) {
395
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
396
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
397
- addvariant = true;
398
- } else {
399
- addvariantcount.push(varinatoptionitem);
400
- }
401
- }
402
- });
403
- });
404
- if (addvariant && addvariantcount.length == 0) {
405
- variantsaccessible.push(ProductVariantItem);
406
- }
407
- });
408
-
409
- variantsaccessible.forEach(function (ProductVariantItem, ProductVariantIndex) {
410
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
411
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
412
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
413
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
414
- ProductOptionValuesitem.isenabled = 1;
415
- }
416
- });
417
- });
418
- });
419
- });
420
- }
421
- // queryClient.setQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext), productarr);
422
- setProductInfoObj({ ...productarr });
423
- setisloaded(true);
424
- }
425
- }
426
- };
427
- const variantcompleting = () => {
428
- setvariantindexcompleted('');
429
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
430
- tempaddtocardpayloadobj.variantid = '';
431
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
432
- var productarr = ProductInfoObj;
433
- var selectedoptionsvalues = [];
434
-
435
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
436
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
437
- if (ProductOptionValuesitem.isselected == 1) {
438
- selectedoptionsvalues.push(ProductOptionValuesitem);
439
- }
440
- });
441
- });
442
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
443
- var isvariant = false;
444
- var variantnotmatch = [];
445
- if (selectedoptionsvalues.length == ProductVariantItem.variantoptions.length) {
446
- isvariant = true;
447
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
448
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
449
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
450
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
451
- } else {
452
- variantnotmatch.push('s');
453
- }
454
- }
455
- });
456
- });
457
- }
458
- if (variantnotmatch.length == 0 && isvariant == true) {
459
- var variantobj = fetchProductInfoQueryContext.data.data.productinfo.variants[ProductVariantIndex];
460
- var variantid = '';
461
- if (variantobj == undefined) {
462
- setisoutofstock(false);
463
- NotificationManager.warning('', 'Variant Not Found');
464
- } else {
465
- variantid = variantobj.variantid;
466
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
467
- tempaddtocardpayloadobj.variantid = variantid;
468
- var variantimageindex = 0;
469
- productimagesarray?.forEach(function (tempimageitem, tempimageindex) {
470
- if (tempimageitem.galleryid == variantobj?.variantgalleryid) {
471
- variantimageindex = tempimageindex;
472
- }
473
- });
474
- if (variantobj.current_quantity <= 0) {
475
- setisoutofstock(true);
476
- } else {
477
- setisoutofstock(false);
478
- }
479
- setvariantsku(variantobj?.sku);
480
- setcurrentshowingimageindex(variantimageindex);
481
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
482
- setvariantindexcompleted(ProductVariantIndex);
483
- setvariantindex(ProductVariantIndex);
484
- }
485
- } else {
486
- // setisoutofstock(false);
487
- }
488
- });
489
- // queryClient.setQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext), productarr);
490
- setProductInfoObj({ ...productarr });
491
- };
492
- const addtocartfunc = (forcetocheckout) => {
493
- var runfunc = false;
494
- var forcetocheckoutvalue = forcetocheckout;
495
- // alert(addtocardpayloadobj.quantity + 'sad');
496
- if (addtocardpayloadobj.productid.length != 0 && addtocardpayloadobj.quantity > 0) {
497
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.hasvariants == 1) {
498
- if (addtocardpayloadobj.variantid.length != 0) {
499
- runfunc = true;
500
- } else {
501
- // here
502
- setvariantnotchosendisclaimer('This field is required');
503
- NotificationManager.warning('', authdetailsContext?.instinfo?.contactinfo.instid == '674f0617c7811' ? 'Please Choose Size & Color' : 'Please Choose Product Options');
504
- }
505
- } else {
506
- runfunc = true;
507
- }
508
- } else {
509
- NotificationManager.warning('', 'Please Choose Quantity');
510
- }
511
-
512
- if (runfunc == true) {
513
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
514
- tempaddtocardpayloadobj.isproductforcedtocheckout = fetchProductInfoQueryContext?.data?.data?.productinfo?.isproductforcedtocheckout;
515
- tempaddtocardpayloadobj.vendorid = fetchProductInfoQueryContext?.data?.data?.productinfo?.vendorproviderid;
516
- if (forcetocheckoutvalue != undefined) {
517
- tempaddtocardpayloadobj.forcetocheckoutvalue = forcetocheckoutvalue;
518
- }
519
- var Extrafieldvalidationresponse = validateextrafields();
520
- if (Extrafieldvalidationresponse.status) {
521
- var finalprice = 0;
522
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.hassale == 1) {
523
- finalprice = getprice_discountpriceprops('defaultsaleprice', 0, variantindexcompleted);
524
- } else {
525
- finalprice = getprice_discountpriceprops('defaultprice', 0, variantindexcompleted);
526
- }
527
- Pixel_EventsContext('AddToCart', {
528
- content_ids: [fetchProductInfoQueryContext?.data?.data?.productinfo?.productid],
529
- content_name: fetchProductInfoQueryContext?.data?.data?.productinfo?.name_en + ' - ' + fetchProductInfoQueryContext?.data?.data?.productinfo?.name_ar,
530
- content_sku: fetchProductInfoQueryContext?.data?.data?.productinfo?.sku,
531
- content_type: 'product',
532
- currency: fetchProductInfoQueryContext?.data?.data?.currencyname_en,
533
- value: finalprice,
534
- quantity: addtocardpayloadobj.quantity,
535
- });
536
- AddtoCartContext(tempaddtocardpayloadobj);
537
- } else {
538
- // NotificationManager.warning('', Extrafieldvalidationresponse.reason);
539
- }
540
- }
541
- };
542
- const validateextrafields = () => {
543
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
544
- var status = false;
545
- var reason = '';
546
- var missingitemsfound = [];
547
- var extrafields = fetchProductInfoQueryContext?.data?.data?.productinfo?.productextrafields;
548
- if (extrafields?.length == 0) {
549
- status = true;
550
- } else {
551
- extrafields.forEach(function (item, index) {
552
- if (item.isrequired == 1) {
553
- var itemfound = null;
554
- tempaddtocardpayloadobj?.extrafields?.forEach(function (cchoosenitemvalue) {
555
- if (cchoosenitemvalue.id == item.id) {
556
- itemfound = cchoosenitemvalue;
557
- }
558
- });
559
- if (itemfound == null) {
560
- missingitemsfound.push(item);
561
- } else {
562
- if (itemfound?.value?.length == 0) {
563
- missingitemsfound.push(item);
564
- }
565
- }
566
- }
567
- });
568
- }
569
- if (missingitemsfound.length == 0) {
570
- status = true;
571
- } else {
572
- status = false;
573
- reason = 'Missing items';
574
- missingitemsfound.forEach(function (missingitem) {
575
- var notftitle = langdetect == 'en' ? missingitem.title_en : missingitem.title_ar;
576
- NotificationManager.warning('', langdetect == 'en' ? 'Please Choose ' + notftitle : 'من فضلك اختر' + notftitle);
577
- });
578
- }
579
- return { status: status, reason: reason };
580
- };
581
- const returnpolicyobj = (policytype) => {
582
- var policyobj = {};
583
- authdetailsContext?.instinfo?.instpolicies?.forEach(function (item, index) {
584
- if (item.policytype == policytype) {
585
- policyobj = item;
586
- }
587
- });
588
- return policyobj;
589
- };
590
- const relatedproducts = () => {
591
- if (Relatedproducts.length != 0) {
592
- return (
593
- <div
594
- className="w-100 row ml-0 mr-0 d-flex justify-content-start pl-md-3 pr-md-3 pl-sm-2 pr-sm-2"
595
- style={{
596
- background: sectionproperties.relatedproductsbg,
597
- paddingTop: sectionproperties.relatedproductspaddingTop + 'px',
598
- paddingBottom: sectionproperties.relatedproductspaddingBottom + 'px',
599
- paddingLeft: sectionproperties.relatedproductspaddingLeft + 'px',
600
- paddingRight: sectionproperties.relatedproductspaddingRight + 'px',
601
- borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
602
- borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
603
- borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
604
- borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
605
- borderTop: sectionproperties.sectioncardborderwidth + 'px solid ' + sectionproperties.sectioncardbordercolor,
606
- borderBottom: sectionproperties.sectioncardborderwidth + 'px solid ' + sectionproperties.sectioncardbordercolor,
607
- marginBottom: sectionproperties.relatedProductsMb + 'px',
608
- }}
609
- >
610
- {Relatedproducts.length != 0 && (
611
- <div className="col-lg-12 p-0">
612
- <div className="row m-0 w-100">
613
- <div
614
- className="col-lg-12 col-md-12 col-sm-12 d-flex align-items-center p-0 flex-column"
615
- style={{
616
- justifyContent: sectionproperties.relatedtitleposition == 'Centered' ? 'center' : 'start',
617
- marginBottom: sectionproperties.relatedtitlemb + 'px',
618
- }}
619
- >
620
- <p
621
- className={' m-0 p-0 wordbreak '}
622
- style={{
623
- fontSize: sectionproperties.relatedproductstitlefontsize + 'px',
624
- color: sectionproperties.relatedproductstitlecolor,
625
- fontWeight: sectionproperties.relatedproductstitlefontweight,
626
- textAlign: sectionproperties.relatedtitleposition == 'Centered' ? 'center' : langdetect == 'en' ? 'left' : 'right',
627
- }}
628
- >
629
- {langdetect == 'en' ? sectionproperties.relatedproducttitleEn : sectionproperties.relatedproducttitleAr}
630
- </p>
631
- <div
632
- style={{
633
- width: sectionproperties.relatedproducttitle_lineafterwidth + 'px',
634
- height: 2,
635
- background: sectionproperties.relatedproducttitlelinebgcolor,
636
- borderRadius: 5,
637
- }}
638
- />
639
- </div>
640
- <div className="col-lg-12 p-0">
641
- <ScrollMenu
642
- transitionBehavior={'auto'}
643
- wrapperClassName={''}
644
- itemClassName={
645
- authdetailsContext?.instinfo?.contactinfo.instid == '67dc756de56bd'
646
- ? 'scrollmenuclassnameitemrelatedproductkingtut'
647
- : 'scrollmenuclassnameitemrelatedproduct'
648
- }
649
- scrollContainerClassName={'scrollmenuclasssubscrollbarrelatedproducts'}
650
- >
651
- {Relatedproducts.map((item, index) => {
652
- if (item.productinfo != null) {
653
- if (item.productid != fetchProductInfoQueryContext.data.data.productinfo.productid) {
654
- return (
655
- <div
656
- className="col-lg-12 mb-3 px-1"
657
- onClick={() => {
658
- if (props.srcfromprops != 'templatdraftrouter') {
659
- productidassigner(item.productid);
660
- } else {
661
- routingcountext(StaticPagesLinksContext.productinfo, true, item.productid);
662
- }
663
- }}
664
- >
665
- <div className={productinfo_cssstyles.relatedproductcardcont + ' row w-100 m-0 cursor-pointer '}>
666
- <div class={' cursor-pointer w-100 '}>
667
- <div class={`${productinfo_cssstyles.relatedProductImageCont}` + ' w-100 p-0 mb-2 '}>
668
- <Imagekitimagecomp
669
- urlEndpoint={ikimagecredcontext?.ikimageendpoint}
670
- publicKey={ikimagecredcontext?.ikimagepublickey}
671
- // path={
672
- // '/tr:w-' +
673
- // sectionproperties.relatedProductDimWidth +
674
- // ',h-' +
675
- // sectionproperties.galleryHeightDimension +
676
- // '/' +
677
- // item.productinfo.productmainimage
678
- // }
679
- path={
680
- '/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + item.productinfo.productmainimage
681
- }
682
- loading="lazy"
683
- style={{
684
- width: '100%',
685
- height: '100%',
686
- objectFit: 'contain',
687
- }}
688
- />
689
- </div>
690
- <div class="row m-0 w-100 ">
691
- <div class="col-lg-12 p-0">
692
- <p
693
- class={
694
- `${productinfo_cssstyles.relatedproductNameStyles}` +
695
- ' relatedproductNameStyles wordbreak wordbreak1 text-center m-0 '
696
- }
697
- >
698
- {langdetect == 'en' ? item.productinfo.name_en : item.productinfo.name_ar}
699
- </p>
700
- </div>
701
- <div style={{ flexDirection: 'column' }} class="col-lg-12 d-flex align-items-center justify-content-center p-0 ">
702
- <p class={`${productinfo_cssstyles.relatedproductPricestyles}` + ' m-0 '}>
703
- {item.productinfo.hassale == 1 ? item.productinfo.defaultsaleprice : item.productinfo.defaultprice}{' '}
704
- {langdetect == 'en' ? authdetailsContext?.currencyname_en : authdetailsContext?.currencyname_ar}{' '}
705
- </p>
706
- </div>
707
- </div>
708
- </div>
709
- </div>
710
- </div>
711
- );
712
- }
713
- }
714
- })}
715
- </ScrollMenu>
716
- </div>
717
- </div>
718
- </div>
719
- )}
720
- </div>
721
- );
722
- }
723
- };
724
- // const DescriptionContent = () => {
725
- // return (
726
- // <div class="col-lg-12 pl-5 pr-5 p-md-0 w-100">
727
- // <div class="row m-0 w-100">
728
- // {langdetect == 'en' &&
729
- // fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en != '' &&
730
- // fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en != null &&
731
- // sectionproperties.prodCatShow == 'Show' && (
732
- // <div className="col-lg-12 p-0 mb-4 d-flex justify-content-center">
733
- // <div className="row m-0 w-100 d-flex">
734
- // <div class="col-lg-12 p-0 d-flex justify-content-start">
735
- // <p
736
- // className={'text-black text-capitalize m-0 p-0 wordbreak'}
737
- // style={{
738
- // textAlign: langdetect == 'en' ? 'left' : 'right',
739
- // }}
740
- // dangerouslySetInnerHTML={{
741
- // __html:
742
- // showMore == true
743
- // ? fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en
744
- // : fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en.slice(0, 1000),
745
- // }}
746
- // ></p>
747
- // </div>
748
- // <div class="col-lg-12 allcentered">
749
- // {fetchProductInfoQueryContext?.data?.data?.productinfo?.description_en.length > 1000 && (
750
- // <p class="m-0 p-0 cursor-pointer text-grey font-weight-600" onClick={() => setShowMore(!showMore)}>
751
- // {showMore ? lang.showless : lang.showmore}
752
- // </p>
753
- // )}
754
- // </div>
755
- // </div>
756
- // </div>
757
- // )}
758
- // {langdetect == 'ar' &&
759
- // fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar != '' &&
760
- // fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar != null &&
761
- // sectionproperties.prodCatShow == 'Show' && (
762
- // <div className="col-lg-12 p-0 mb-4 d-flex justify-content-center">
763
- // <div className="row m-0 w-100 d-flex">
764
- // <div class="col-lg-12 p-0 d-flex justify-content-start flex-column">
765
- // <p
766
- // className={'text-black text-capitalize m-0 p-0 wordbreak'}
767
- // style={{
768
- // textAlign: langdetect == 'en' ? 'left' : 'right',
769
- // }}
770
- // dangerouslySetInnerHTML={{
771
- // __html:
772
- // showMore == true
773
- // ? fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar
774
- // : fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar.slice(0, 1000),
775
- // }}
776
- // ></p>
777
- // </div>
778
- // <div class="col-lg-12 allcentered">
779
- // {fetchProductInfoQueryContext?.data?.data?.productinfo?.description_ar.length > 1000 && (
780
- // <p class="m-0 p-0 cursor-pointer text-grey font-weight-600 text-right" onClick={() => setShowMore(!showMore)}>
781
- // {showMore ? lang.showless : lang.showmore}
782
- // </p>
783
- // )}
784
- // </div>
785
- // </div>
786
- // </div>
787
- // )}
788
- // {sectionproperties.showGallery == 'Show' && fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages?.length != 0 && (
789
- // <div class="col-lg-12 p-0">
790
- // <div
791
- // class="row m-0 w-100 allcentered pl-md-3 pr-md-3"
792
- // style={{
793
- // paddingLeft: sectionproperties.galleryPaddingHorizontal + 'px',
794
- // paddingRight: sectionproperties.galleryPaddingHorizontal + 'px',
795
- // }}
796
- // >
797
- // {fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages?.map((item, index) => {
798
- // if (index <= 6) {
799
- // return (
800
- // <div
801
- // class={' col-md-4 col-sm-12 mb-3 col-lg-' + sectionproperties.galleryNoOfCols}
802
- // style={{
803
- // height: sectionproperties.galleryHeight + 'px',
804
- // }}
805
- // >
806
- // <Imagekitimagecomp
807
- // urlEndpoint={ikimagecredcontext?.ikimageendpoint}
808
- // publicKey={ikimagecredcontext?.ikimagepublickey}
809
- // path={'/tr:w-' + sectionproperties.galleryWidthDimension + ',h-' + sectionproperties.galleryHeightDimension + '/' + item.path}
810
- // style={{
811
- // width: '100%',
812
- // height: '100%',
813
- // objectFit: 'contain',
814
- // }}
815
- // loading="lazy"
816
- // />
817
- // </div>
818
- // );
819
- // }
820
- // })}
821
- // </div>
822
- // </div>
823
- // )}
824
- // </div>
825
- // </div>
826
- // );
827
- // };
828
- const productinfo_cssstyles = {
829
- containerstyles: css({
830
- marginTop: props.srcfromprops != 'templatedraftrouter' ? sectionproperties.marginTop + 'px' : 30,
831
- '@media (max-width: 800px)': {
832
- marginTop: sectionproperties.marginTopResp + 'px',
833
- },
834
- }),
835
- submitreviewbtn: css({
836
- width: sectionproperties.applybtn_width + 'px',
837
- height: sectionproperties.applybtn_height + 'px',
838
- borderRadius: sectionproperties.applybtn_borderBottomLeftRadius + 'px',
839
- fontSize: sectionproperties.applybtn_fontsize + 'px',
840
- color: sectionproperties.applybtn_textColor,
841
- fontWeight: sectionproperties.applybtn_Textfontweight,
842
- backgroundColor: sectionproperties.applybtn_bgColor,
843
- border: sectionproperties.applybtnborderwidth + 'px solid ' + sectionproperties.applybtnbordercolor,
844
- textTransform: sectionproperties.applybtn_texttransform,
845
- ':hover': {
846
- transition: '.3s',
847
- backgroundColor: sectionproperties.applybtn_bgColoronhover,
848
- color: sectionproperties.applybtn_Textcoloronhover,
849
- },
850
- }),
851
- sizeguidebtn: css({
852
- color: sectionproperties.sizeguidebtncolor,
853
- fontSize: sectionproperties.sizeguidebtnfontsize + 'px',
854
- transition: '.3s',
855
- textDecoration: 'underline',
856
- ':hover': {
857
- color: sectionproperties.sizeguidebtncoloronhover,
858
- borderColor: sectionproperties.sizeguidebtncoloronhover,
859
- fontWeight: sectionproperties.sizeguidebtnfontweight,
860
- },
861
- }),
862
- form_control: css({
863
- position: 'relative',
864
- display: 'flex',
865
- alignItems: 'center',
866
- display: 'block',
867
- width: '100%',
868
- padding: '0 10px',
869
- transition: '.3s',
870
- fontWeight: 500,
871
- border: sectionproperties.inputfieldbordertype == 'All' ? sectionproperties.inputfieldborderWidth + 'px solid ' + sectionproperties.inputfieldborderColor : 0,
872
- borderBottom: sectionproperties.inputfieldborderWidth + 'px solid ' + sectionproperties.inputfieldborderColor,
873
- borderRadius: sectionproperties.inputfieldborderradius + 'px',
874
- height: sectionproperties.inputfieldheight + 'px',
875
- background: sectionproperties.input_bgcolor,
876
- color: sectionproperties.inputfieldcolor,
877
- ':focus': {
878
- borderColor: sectionproperties.inputfeildbordercoloronfocus,
879
- },
880
- ':focus .login_input_icon': {
881
- color: sectionproperties.inputfeildbordercoloronfocus,
882
- },
883
- }),
884
- inputfield_label: css({
885
- color: sectionproperties.form_labelcolor,
886
- fontWeight: sectionproperties.form_labelfontweight,
887
- fontSize: sectionproperties.form_labelfontsize + 'px',
888
- textTransform: sectionproperties.form_labeltexttransform,
889
- marginBottom: sectionproperties.inputfieldbordertype == 'All' ? 10 : 0,
890
- }),
891
- reviewbutton: css({
892
- width: sectionproperties.reviewbtn_width + 'px',
893
- height: sectionproperties.reviewbtn_height + 'px',
894
- background: sectionproperties.reviewbtn_bgcolor,
895
- color: sectionproperties.reviewbtn_color,
896
- fontSize: sectionproperties.reviewbtn_fontsize + 'px',
897
- borderRadius: sectionproperties.reviewbtn_borderradius + 'px',
898
- border: sectionproperties.reviewbtn_borderwidth + 'px solid ' + sectionproperties.reviewbtn_bordercolor,
899
- fontWeight: sectionproperties.reviewbtn_fontweight,
900
- ':hover': {
901
- transition: '.3s',
902
- color: sectionproperties.reviewbtn_coloronhover,
903
- borderColor: sectionproperties.reviewbtn_coloronhover,
904
- backgroundColor: sectionproperties.reviewbtn_bgcoloronhover,
905
- },
906
- }),
907
- before: css({
908
- ':before': {
909
- background: sectionproperties.activetabbordercolor,
910
- },
911
- }),
912
- reservationtab: css({
913
- color: sectionproperties.tabtextactivecolor,
914
- fontWeight: sectionproperties.tabtextfontweight,
915
- background: sectionproperties.activetabbgcolor,
916
- textTransform: sectionproperties.tabtexttexttransform,
917
- borderRadius: sectionproperties.tabcontainerborderradius + 'px',
918
- fontFamily: 'Poppins',
919
- transition: '.3s',
920
- textAlign: 'start',
921
- }),
922
- cart_btn: css({
923
- position: 'relative',
924
- display: 'flex',
925
- alignItems: 'center',
926
- justifyContent: 'center',
927
- overflow: 'hidden',
928
- width: sectionproperties.cartBtnWidth + 'px',
929
- height: sectionproperties.cartBtnHeight + 'px',
930
- background: sectionproperties.cartbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColor,
931
- borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
932
- color: sectionproperties.cartBtnTextcolor,
933
- fontSize: sectionproperties.cartBtnTextfontsize + 'px',
934
- textTransform: sectionproperties.cartBtnTexttransform,
935
- fontWeight: sectionproperties.cartBtnTextfontweight,
936
- border: sectionproperties.cartbtnborderwidth + 'px solid ' + sectionproperties.cartbtnbordercolor,
937
- margin: 0,
938
- transition: '.3s',
939
- ':hover': {
940
- background: sectionproperties.cartbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColoronhover,
941
- color: sectionproperties.cartBtnTextcoloronhover,
942
- borderColor: sectionproperties.cartBtnTextcoloronhover,
943
- },
944
- }),
945
- buynow: css({
946
- position: 'relative',
947
- display: 'flex',
948
- alignItems: 'center',
949
- justifyContent: 'center',
950
- overflow: 'hidden',
951
- width: sectionproperties.cartBtnWidth + 'px',
952
- height: sectionproperties.cartBtnHeight + 'px',
953
- background: sectionproperties.buynowbgcolor,
954
- borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
955
- color: sectionproperties.buynowtextcolor,
956
- fontSize: sectionproperties.cartBtnTextfontsize + 'px',
957
- textTransform: sectionproperties.cartBtnTexttransform,
958
- fontWeight: sectionproperties.cartBtnTextfontweight,
959
- border: sectionproperties.buynowborderwidth + 'px solid ' + sectionproperties.buynowbordercolor,
960
- margin: 0,
961
- transition: '.3s',
962
- ':hover': {
963
- background: sectionproperties.buynowbgcoloronhover,
964
- color: sectionproperties.buynowtextcoloronhover,
965
- borderColor: sectionproperties.buynowtextcoloronhover,
966
- },
967
- }),
968
- sizeguidebtn2: css({
969
- position: 'relative',
970
- display: 'flex',
971
- alignItems: 'center',
972
- justifyContent: 'center',
973
- overflow: 'hidden',
974
- width: sectionproperties.cartBtnWidth + 'px',
975
- height: sectionproperties.cartBtnHeight + 'px',
976
- borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
977
- color: sectionproperties.sizeguidebtncolor,
978
- fontSize: sectionproperties.cartBtnTextfontsize + 'px',
979
- textTransform: sectionproperties.cartBtnTexttransform,
980
- fontWeight: sectionproperties.cartBtnTextfontweight,
981
- border: '1px solid ' + sectionproperties.sizeguidebtncolor,
982
- margin: 0,
983
- transition: '.3s',
984
- ':hover': {
985
- color: sectionproperties.sizeguidebtncoloronhover,
986
- borderColor: sectionproperties.sizeguidebtncoloronhover,
987
- },
988
- }),
989
- quantitybtn: css({
990
- width: sectionproperties.quantitybtn_height + 'px',
991
- height: sectionproperties.quantitybtn_width + 'px',
992
- display: 'flex',
993
- flexDirection: 'column',
994
- overflow: 'hidden',
995
- borderRadius: sectionproperties.quantitybtn_borderradius + 'px',
996
- background: sectionproperties.quantitybtn_bgcolor,
997
- alignItems: 'center',
998
- justifyContent: 'center',
999
- margin: 0,
1000
- position: 'relative',
1001
- fontWeight: sectionproperties.quantitybtn_textfontweight,
1002
- color: sectionproperties.quantitybtn_textcolor,
1003
- fontSize: sectionproperties.quantitybtn_textfontsize + 'px',
1004
- border: sectionproperties.quantitybtnborderwidth + 'px solid ' + sectionproperties.quantitybtnbordercolor,
1005
- }),
1006
- quantitybtn_text: css({
1007
- margin: 'auto',
1008
- }),
1009
- add_quantitybtn_icon_container: css({
1010
- position: 'relative',
1011
- width: '35px',
1012
- height: '35px',
1013
- background: sectionproperties.add_quantitybtn_bgcolor,
1014
- display: 'flex',
1015
- alignItems: 'center',
1016
- justifyContent: 'center',
1017
- borderRadius: sectionproperties.add_quantitybtn_borderradius + 'px',
1018
- fontSize: sectionproperties.add_quantitybtn_textfontsize + 'px',
1019
- color: sectionproperties.add_quantitybtn_textcolor,
1020
- transition: '.3s',
1021
- ':hover': {
1022
- color: sectionproperties.add_quantitybtn_textcoloronhover,
1023
- background: sectionproperties.add_quantitybtn_bgcoloronhover,
1024
- },
1025
- }),
1026
- minus_quantitybtn_icon_container: css({
1027
- position: 'relative',
1028
- width: '35px',
1029
- height: '35px',
1030
- background: sectionproperties.remove_quantitybtn_bgcolor,
1031
- display: 'flex',
1032
- alignItems: 'center',
1033
- justifyContent: 'center',
1034
- borderRadius: sectionproperties.remove_quantitybtn_borderradius + 'px',
1035
- fontSize: sectionproperties.remove_quantitybtn_textfontsize + 'px',
1036
- color: sectionproperties.remove_quantitybtn_textcolor,
1037
- transition: '.3s',
1038
- ':hover': {
1039
- color: sectionproperties.remove_quantitybtn_textcoloronhover,
1040
- background: sectionproperties.remove_quantitybtn_bgcoloronhover,
1041
- },
1042
- }),
1043
- closemodalbtn: css({
1044
- color: sectionproperties.sizeguidebtncolor,
1045
- transition: '.3s',
1046
-
1047
- ':hover': {
1048
- color: sectionproperties.sizeguidebtncoloronhover,
1049
- },
1050
- }),
1051
- relatedproductcardcont: css({
1052
- ':hover .relatedproductNameStyles': {
1053
- color: sectionproperties.relatedprodNameColoronhover,
1054
- },
1055
- }),
1056
- relatedProductImageCont: css({
1057
- height: sectionproperties.relatedProductImageHeight + 'px',
1058
- border: sectionproperties.relatedProductImageBorderWidth + 'px solid ' + sectionproperties.relatedProductImageBorderColor,
1059
- borderRadius: sectionproperties.relatedProductImageBr + 'px',
1060
- display: 'flex',
1061
- alignItems: 'center',
1062
- justifyContent: 'center',
1063
- position: 'relative',
1064
- }),
1065
- relatedproductNameStyles: css({
1066
- transition: '.3s',
1067
- color: sectionproperties.relatedprodNameColor,
1068
- fontSize: sectionproperties.relatedprodNameFontSize + 'px',
1069
- fontWeight: sectionproperties.relatedprodnamefontWeight,
1070
- textTransform: sectionproperties.relatedprodNameTextTranform,
1071
- ':hover': {
1072
- color: sectionproperties.relatedprodNameColoronhover,
1073
- },
1074
- }),
1075
- relatedproductPricestyles: css({
1076
- color: sectionproperties.relatedprodPriceColor,
1077
- fontSize: sectionproperties.relatedprodpriceFontSize + 'px',
1078
- fontWeight: sectionproperties.relatedprodPriceFontWeight,
1079
- }),
1080
- cardcontainer: css({
1081
- backgroundColor: sectionproperties.backgroundColor,
1082
- borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
1083
- borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
1084
- borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
1085
- borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
1086
- paddingRight: langdetect == 'en' ? sectionproperties.paddingRight + 'px' : sectionproperties.paddingLeft + 'px',
1087
- paddingLeft: langdetect == 'en' ? sectionproperties.paddingLeft + 'px' : sectionproperties.paddingRight + 'px',
1088
- paddingTop: sectionproperties.paddingTop + 'px',
1089
- paddingBottom: sectionproperties.paddingBottom + 'px',
1090
- border: sectionproperties.sectioncardborderwidth + 'px solid ' + sectionproperties.sectioncardbordercolor,
1091
- marginBottom: sectionproperties.marginBottom + 'px',
1092
- }),
1093
- wishlist_btn: css({
1094
- // marginTop: sectionproperties.favbtnmargintop + 'px',
1095
- width: sectionproperties.favBtnWidth + 'px',
1096
- height: sectionproperties.favBtnHeight + 'px',
1097
- background: sectionproperties.favbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColor,
1098
- borderRadius: sectionproperties.fav_btn_borderBottomLeftRadius + 'px',
1099
- color: sectionproperties.favBtniconcolor,
1100
- fontSize: sectionproperties.favBtnTextfontsize + 'px',
1101
- textTransform: sectionproperties.favBtnTexttransform,
1102
- fontWeight: sectionproperties.favBtnTextfontweight,
1103
- boxShadow: sectionproperties.favbtn_showshadow == 'Show' ? '0 0 10px ' + sectionproperties.favbtn_shadowcolor : '',
1104
- border: sectionproperties.favbtnborderwidth + 'px solid ' + sectionproperties.favbtnbordercolor,
1105
- cursor: 'pointer',
1106
- transition: '.3s',
1107
- ':hover': {
1108
- background: sectionproperties.favbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColoronhover,
1109
- color: sectionproperties.favBtnTextcoloronhover,
1110
- borderColor: sectionproperties.favBtnTextcoloronhover,
1111
- },
1112
- // '@media (max-width: 800px)': {
1113
- // marginTop: sectionproperties.favbtnmargintopresp + 'px',
1114
- // },
1115
- }),
1116
- productname: css({
1117
- fontSize: sectionproperties.prodNameFontSize + 'px',
1118
- textTransform: sectionproperties.prodNameTextTranform,
1119
- fontWeight: sectionproperties.prodNameFontWeight,
1120
- color: sectionproperties.prodNameColor,
1121
- }),
1122
- productnamehover: css({
1123
- transition: '.3s',
1124
- ':hover': {
1125
- cursor: 'pointer',
1126
- color: sectionproperties.prodNameColorOnHover,
1127
- },
1128
- }),
1129
- storeInfo: css({
1130
- color: sectionproperties.footerinfotext_color,
1131
- fontSize: sectionproperties.footerinfotext_fontsize + 'px',
1132
- textTransform: sectionproperties.footerinfotext_textTransform,
1133
- fontWeight: sectionproperties.footerinfotext_fontweight,
1134
- transition: '.3s',
1135
- }),
1136
- storeInfoContent: css({
1137
- color: sectionproperties.footerinfotext_secondarycolor,
1138
- fontSize: sectionproperties.footerinfotext_secondaryfontsize + 'px',
1139
- fontWeight: sectionproperties.footerinfotext_secondaryfontweight,
1140
- }),
1141
- iconContainer: css({
1142
- width: sectionproperties.iconcontainerwidth + 'px',
1143
- height: sectionproperties.iconcontainerheight + 'px',
1144
- borderRadius: sectionproperties.iconcontainerborderbl + 'px',
1145
- background: sectionproperties.iconcontainerbg,
1146
- color: sectionproperties.iconcontainercolor,
1147
- }),
1148
- storeinfocontainer: css({
1149
- ':hover .storeInfoContent': {
1150
- transition: '.3s',
1151
- color: sectionproperties.footerinfotext_coloronhover,
1152
- },
1153
- ':hover .iconContainer': {
1154
- transition: '.3s',
1155
- color: sectionproperties.iconcontainercoloronhover,
1156
- backgroundColor: sectionproperties.iconcontainerbgonhover,
1157
- },
1158
- }),
1159
- shareicon: css({
1160
- width: sectionproperties.shareiconwidth + 'px',
1161
- height: sectionproperties.shareiconheight + 'px',
1162
- borderRadius: sectionproperties.shareiconborderradius + 'px',
1163
- background: sectionproperties.shareiconbgcolor,
1164
- color: sectionproperties.shareiconcolor,
1165
- ':hover': {
1166
- color: sectionproperties.shareiconcoloronhover,
1167
- transition: '.3s',
1168
- cursor: 'pointer',
1169
- },
1170
- }),
1171
- checkoutbtn: css({
1172
- width: sectionproperties.checkoutBtnWidth + 'px',
1173
- height: sectionproperties.checkoutBtnHeight + 'px',
1174
- backgroundColor: sectionproperties.checkoutBtnbgColor,
1175
- color: sectionproperties.checkoutBtnTextcolor,
1176
- fontWeight: sectionproperties.checkoutBtnTextfontweight,
1177
- fontSize: sectionproperties.checkoutBtnTextfontsize + 'px',
1178
- borderRadius: sectionproperties.checkout_borderBottomLeftRadius + 'px',
1179
- border: sectionproperties.checkout_borderWidth + 'px solid ' + sectionproperties.checkout_bordercolor,
1180
- transition: '.3s',
1181
- ':hover': {
1182
- backgroundColor: sectionproperties.checkoutBtnbgColoronhover,
1183
- color: sectionproperties.checkoutBtncoloronhover,
1184
- },
1185
- }),
1186
- outstockbadge: css({
1187
- minWidth: sectionproperties.outstock_width + 'px',
1188
- height: sectionproperties.outstock_height + 'px',
1189
- background: sectionproperties.outstock_bg,
1190
- color: sectionproperties.outstock_color,
1191
- fontSize: sectionproperties.outstock_fontSize + 'px',
1192
- borderRadius: sectionproperties.outstock_borderradius + 'px',
1193
- }),
1194
- cashbackoutercontainer: css({
1195
- // minWidth: 'fit-content',
1196
- width: sectionproperties.cashbackcontainerwidth + '%',
1197
- height: sectionproperties.cashbackcontainerheight + 'px',
1198
- background: sectionproperties.cashbackcontainerbgcolor,
1199
- color: sectionproperties.cashbackcontainercolor,
1200
- fontSize: sectionproperties.cashbackcontainerfontsize + 'px',
1201
- border: sectionproperties.cashbackcontainerborderwidth + 'px ' + sectionproperties.cashbackcontainerborderstyle + sectionproperties.cashbackcontainerbordercolor,
1202
- borderRadius: sectionproperties.cashbackcontainerborderradius + 'px',
1203
- }),
1204
- profitcontainer: css({
1205
- width: sectionproperties.profitcontainerwidth + '%',
1206
- height: sectionproperties.profitcontainerheight + 'px',
1207
- background: sectionproperties.profitcontainerbgcolor,
1208
- border: sectionproperties.profitcontainerborderwidth + 'px solid' + sectionproperties.profitcontainerbordercolor,
1209
- borderRadius: sectionproperties.profitcontainerborderradius + 'px',
1210
- color: sectionproperties.profitcontainercolor,
1211
- '@media (max-width: 800px)': {
1212
- width: '90%',
1213
- },
1214
- }),
1215
- imagegallery: css({
1216
- '.image-gallery-thumbnail.active': {
1217
- border: '2px solid red ',
1218
- },
1219
- }),
1220
- storeinfobtn: css({
1221
- width: sectionproperties.storeinfobtnwidth + '%',
1222
- height: sectionproperties.storeinfobtnheight + 'px',
1223
- background: sectionproperties.storeinfobtnbgcolor,
1224
- fontSize: sectionproperties.footerinfotext_fontsize,
1225
- fontWeight: sectionproperties.footerinfotext_fontweight,
1226
- color: sectionproperties.footerinfotext_color,
1227
- borderRadius: sectionproperties.storeinfobtnborderradius + 'px',
1228
- border: sectionproperties.storeinfobtnborderwidth + 'px solid ' + sectionproperties.storeinfobtnbordercolor,
1229
- transition: '.3s',
1230
- ':hover': {
1231
- color: sectionproperties.footerinfotext_coloronhover,
1232
- borderColor: sectionproperties.footerinfotext_coloronhover,
1233
- background: sectionproperties.storeinfobtnbgcoloronhover,
1234
- },
1235
- }),
1236
- storeinfocontainer: css({
1237
- marginTop: sectionproperties.storeinfomarginvertical + 'px',
1238
- '@media (max-width: 800px)': {
1239
- marginTop: sectionproperties.storeinfomarginverticalresp + 'px',
1240
- },
1241
- }),
1242
- // storeinfocontainer2: css({
1243
- // marginBottom: sectionproperties.storeinfomarginvertical + 'px',
1244
- // '@media (max-width: 800px)': {
1245
- // marginBottom: sectionproperties.storeinfomarginverticalresp + 'px',
1246
- // },
1247
- // }),
1248
- };
1249
-
1250
- const getprice_discountpriceprops = (type, withtotal, variantindexcompleted) => {
1251
- var price = 0;
1252
- var quantityconditions = [];
1253
- var quantity = 0;
1254
- if (addtocardpayloadobj.quantity != undefined && addtocardpayloadobj.quantity != null) {
1255
- quantity = parseFloat(addtocardpayloadobj.quantity);
1256
- }
1257
- if (
1258
- fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions != undefined &&
1259
- fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions != null &&
1260
- Array.isArray(fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions) &&
1261
- fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions?.length != 0
1262
- ) {
1263
- quantityconditions = fetchProductInfoQueryContext.data.data.productinfo.productquantityoptions;
1264
- }
1265
- if (type == 'defaultprice') {
1266
- price = fetchProductInfoQueryContext.data.data.productinfo.defaultprice;
1267
- if (fetchProductInfoQueryContext.data.data.productinfo.hasvariants == 1) {
1268
- if (variantindexcompleted != undefined) {
1269
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.variantprice != undefined) {
1270
- price = fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.variantprice;
1271
- }
1272
- }
1273
- }
1274
- } else if (type == 'defaultsaleprice') {
1275
- price = fetchProductInfoQueryContext.data.data.productinfo.defaultsaleprice;
1276
- if (fetchProductInfoQueryContext.data.data.productinfo.hasvariants == 1) {
1277
- if (variantindexcompleted != undefined) {
1278
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.variantsaleprice != undefined) {
1279
- price = fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.variantsaleprice;
1280
- }
1281
- }
1282
- }
1283
- }
1284
- var localquantityconditionobj = null;
1285
- var temppriceinseidconditions = price;
1286
- // quantityconditions.forEach(function (item, index) {
1287
- // if (item.fromq <= quantity && item.toq >= quantity) {
1288
- // var discountprice = (item.value / 100) * price;
1289
- // if (item.type == 'add') {
1290
- // temppriceinseidconditions = price + discountprice;
1291
- // } else if (item.type == 'subtract') {
1292
- // temppriceinseidconditions = price - discountprice;
1293
- // }
1294
- // localquantityconditionobj = item;
1295
- // }
1296
- // });
1297
- price = temppriceinseidconditions;
1298
- // setquantityconditionfoundobj(localquantityconditionobj);
1299
- if (withtotal == true) {
1300
- price = price * quantity;
1301
- }
1302
- if (price != undefined) {
1303
- if (sectionproperties.removedecimals == 'Without Decimals') {
1304
- return parseFloat(Number(price).toFixed(2));
1305
- } else if (sectionproperties.removedecimals == 'Without Decimals and Separated With Comma') {
1306
- return Math.floor(price).toLocaleString();
1307
- } else {
1308
- return price;
1309
- }
1310
- } else {
1311
- return 0;
1312
- }
1313
- };
1314
- const getQuantityCondition = () => {
1315
- return (
1316
- <div
1317
- class="col-lg-12 p-0"
1318
- style={{
1319
- background: sectionproperties.reservation_bgcolor,
1320
- borderRadius: sectionproperties.reservation_borderradius + 'px',
1321
- }}
1322
- >
1323
- <div
1324
- class="row m-0 w-100"
1325
- style={{
1326
- paddingLeft: sectionproperties.reservation_padding_left + 'rem',
1327
- paddingRight: sectionproperties.reservation_padding_right + 'rem',
1328
- paddingTop: sectionproperties.reservation_padding_top + 'rem',
1329
- paddingBottom: sectionproperties.reservation_padding_bottom + 'rem',
1330
- }}
1331
- >
1332
- <div class="col-lg-12 p-0 mb-4 allcentered flex-column">
1333
- <p
1334
- class="m-0 p-0 "
1335
- style={{
1336
- color: sectionproperties.pricelisttitlecolor,
1337
- fontSize: sectionproperties.pricelisttitlefontSize + 'px',
1338
- fontWeight: sectionproperties.pricelisttitlefontWeight,
1339
- }}
1340
- >
1341
- {langdetect == 'en' ? sectionproperties.pricelisttitle_en : sectionproperties.pricelisttitle_ar}
1342
- </p>
1343
- <div
1344
- style={{
1345
- width: '30%',
1346
- height: 1,
1347
- background: sectionproperties.pricelisttitlecolor,
1348
- }}
1349
- />
1350
- </div>
1351
- {fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions?.map((item, index) => {
1352
- return (
1353
- <div
1354
- className="col-lg-12 p-0 w-100 d-flex align-items-center"
1355
- style={{
1356
- marginBottom: fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions?.length - 1 != index ? '1rem' : 0,
1357
- }}
1358
- >
1359
- <div
1360
- class="d-flex align-items-center"
1361
- style={{
1362
- color: sectionproperties.pricelistlabelcolor,
1363
- fontSize: sectionproperties.pricelistlabelfontsize + 'px',
1364
- fontWeight: sectionproperties.pricelistlabelfontweight,
1365
- }}
1366
- >
1367
- <p
1368
- class="m-0 pb-0"
1369
- style={{
1370
- paddingRight: langdetect == 'en' ? '0.5rem' : 0,
1371
- paddingLeft: langdetect == 'ar' ? '0.5rem' : 0,
1372
- }}
1373
- >
1374
- {langdetect == 'en' ? 'From' : 'من'}: {item.fromq} - {item.toq}
1375
- </p>
1376
- </div>
1377
- <div class="" style={{ flex: 1, borderTop: '5px dotted #ccc' }} />
1378
- <p
1379
- class="m-0 pb-0"
1380
- style={{
1381
- paddingLeft: langdetect == 'en' ? '0.5rem' : 0,
1382
- paddingRight: langdetect == 'ar' ? '0.5rem' : 0,
1383
- color: item.type == 'add' ? sectionproperties.valueaddcolor : sectionproperties.valueminuscolor,
1384
- fontSize: sectionproperties.pricelistvaluefontsize + 'px',
1385
- fontWeight: sectionproperties.pricelistvaluefontweight,
1386
- }}
1387
- >
1388
- {item.type == 'subtract' ? '-' : '+'} {item.value}%
1389
- </p>
1390
- </div>
1391
- );
1392
- })}
1393
- </div>
1394
- </div>
1395
- );
1396
- };
1397
- const StoreInfo = (position) => {
1398
- return (
1399
- <div class="row m-0 w-100">
1400
- <div class="col-lg-12 p-0">
1401
- {sectionproperties.storeinfostyle == 'Style 1' && (
1402
- <div class="row m-0 w-100">
1403
- {sectionproperties.showstoreinfo1 == 'Show' && (
1404
- <div className={productinfo_cssstyles.storeinfobtn + ' col-lg-12 p-0 w-100 d-flex align-items-center mb-4 '}>
1405
- <div class={productinfo_cssstyles.iconContainer}>
1406
- <i className="h-100 d-flex align-items-center justify-content-center">
1407
- <FaShippingFast size={20} />
1408
- </i>
1409
- </div>
1410
- <div className="col-lg-9 col-md-9 col-sm-9 d-flex justofy-content-start flex-column">
1411
- <p
1412
- className={productinfo_cssstyles.storeInfo + ' m-0 p-0 wordbreak '}
1413
- style={{
1414
- textAlign: langdetect == 'en' ? 'left' : 'right',
1415
- }}
1416
- >
1417
- {langdetect == 'en' ? sectionproperties.otherinfotitle1en : sectionproperties.otherinfotitle1ar}
1418
- </p>
1419
- <p
1420
- className={productinfo_cssstyles.storeInfoContent + ' m-0 p-0 wordbreak '}
1421
- style={{
1422
- textAlign: langdetect == 'en' ? 'left' : 'right',
1423
- }}
1424
- >
1425
- {langdetect == 'en' ? sectionproperties.otherinfodesc1en : sectionproperties.otherinfodesc1ar}
1426
- </p>
1427
- </div>
1428
- </div>
1429
- )}
1430
- {sectionproperties.showstoreinfo2 == 'Show' && (
1431
- <div className={productinfo_cssstyles.storeinfobtn + ' col-lg-12 p-0 d-flex align-items-center mb-4 '}>
1432
- <div class={productinfo_cssstyles.iconContainer}>
1433
- <i className="h-100 d-flex align-items-center justify-content-center">
1434
- <RiSecurePaymentLine size={20} />
1435
- </i>
1436
- </div>
1437
- <div className="col-lg-9 col-md-9 col-sm-9 d-flex justofy-content-start flex-column">
1438
- <p
1439
- className={productinfo_cssstyles.storeInfo + ' m-0 p-0 wordbreak '}
1440
- style={{
1441
- textAlign: langdetect == 'en' ? 'left' : 'right',
1442
- }}
1443
- >
1444
- {langdetect == 'en' ? sectionproperties.otherinfotitle2en : sectionproperties.otherinfotitle2ar}
1445
- </p>
1446
- <p
1447
- className={productinfo_cssstyles.storeInfoContent + ' m-0 p-0 wordbreak '}
1448
- style={{
1449
- textAlign: langdetect == 'en' ? 'left' : 'right',
1450
- }}
1451
- >
1452
- {langdetect == 'en' ? sectionproperties.otherinfodesc2en : sectionproperties.otherinfodesc2ar}
1453
- </p>
1454
- </div>
1455
- </div>
1456
- )}
1457
- {sectionproperties.showpricinglist == 'Show' && fetchProductInfoQueryContext?.data?.data?.productinfo?.productquantityoptions?.length != 0 && (
1458
- <div class="col-lg-12 p-0 mb-4">{getQuantityCondition()}</div>
1459
- )}
1460
- {sectionproperties.showfooterphonenumber == 'Show' && (
1461
- <div
1462
- className={`${productinfo_cssstyles.storeinfobtn} ${productinfo_cssstyles.storeinfocontainer}` + ' mb-4 col-lg-12 p-0 d-flex align-items-center cursor-pointer '}
1463
- onClick={() => {
1464
- window.open('tel:' + authdetailsContext?.CuContactphonenumber, '_blank');
1465
- }}
1466
- >
1467
- <div class={productinfo_cssstyles.iconContainer + ' iconContainer '}>
1468
- <i className="h-100 d-flex align-items-center justify-content-center">
1469
- <HiOutlinePhone size={20} />
1470
- </i>
1471
- </div>
1472
- <div className="col-lg-9 col-md-9 col-sm-9 d-flex justofy-content-start flex-column">
1473
- <p
1474
- className={productinfo_cssstyles.storeInfo + ' m-0 p-0 wordbreak '}
1475
- style={{
1476
- textAlign: langdetect == 'en' ? 'left' : 'right',
1477
- }}
1478
- >
1479
- {langdetect == 'en' ? sectionproperties.phonetitle_en : sectionproperties.phonetitle_ar}
1480
- </p>
1481
- <p
1482
- className={productinfo_cssstyles.storeInfoContent + ' storeInfoContent m-0 p-0 wordbreak '}
1483
- style={{
1484
- textAlign: langdetect == 'en' ? 'left' : 'right',
1485
- }}
1486
- >
1487
- {authdetailsContext?.CuContactphonenumber}
1488
- </p>
1489
- </div>
1490
- </div>
1491
- )}
1492
- {sectionproperties.showfooteremail == 'Show' && (
1493
- <div
1494
- className={`${productinfo_cssstyles.storeinfobtn} ${productinfo_cssstyles.storeinfocontainer}` + ' mb-4 col-lg-12 p-0 d-flex align-items-center cursor-pointer '}
1495
- onClick={() => {
1496
- window.open('mailto:' + authdetailsContext?.instinfo?.contactinfo?.email, '_self');
1497
- }}
1498
- >
1499
- <div class={productinfo_cssstyles.iconContainer + ' iconContainer '}>
1500
- <i className="h-100 d-flex align-items-center justify-content-center">
1501
- <AiOutlineMail size={20} />
1502
- </i>
1503
- </div>
1504
- <div className="col-lg-9 col-md-9 col-sm-9 d-flex justofy-content-start flex-column">
1505
- <p
1506
- className={productinfo_cssstyles.storeInfo + ' m-0 p-0 wordbreak '}
1507
- style={{
1508
- textAlign: langdetect == 'en' ? 'left' : 'right',
1509
- }}
1510
- >
1511
- {langdetect == 'en' ? sectionproperties.emailtitle_en : sectionproperties.emailtitle_ar}
1512
- </p>
1513
- <p
1514
- className={productinfo_cssstyles.storeInfoContent + ' storeInfoContent m-0 p-0 wordbreak '}
1515
- style={{
1516
- textAlign: langdetect == 'en' ? 'left' : 'right',
1517
- }}
1518
- >
1519
- {authdetailsContext?.instinfo?.contactinfo?.email}
1520
- </p>
1521
- </div>
1522
- </div>
1523
- )}
1524
- </div>
1525
- )}
1526
- {sectionproperties.storeinfostyle == 'Style 2' && (
1527
- <div class="row m-0 w-100">
1528
- {sectionproperties.showfooterphonenumber == 'Show' && authdetailsContext?.CuContactphonenumber != null && (
1529
- <div class={position == 'belowinfo' ? 'col-lg-12 allcentered mb-2 p-0' : 'col-lg-12 allcentered mb-2 p-sm-0'}>
1530
- <button
1531
- class={productinfo_cssstyles.storeinfobtn + ' allcentered '}
1532
- onClick={() => {
1533
- window.open('tel:' + authdetailsContext?.CuContactphonenumber, '_blank');
1534
- }}
1535
- >
1536
- <p class="m-0 p-0">{langdetect == 'en' ? sectionproperties.phonetitle_en : sectionproperties.phonetitle_ar}</p>
1537
- </button>
1538
- </div>
1539
- )}
1540
- {sectionproperties.showfooteremail == 'Show' && authdetailsContext?.instinfo?.contactinfo?.email != null && (
1541
- <div class={position == 'belowinfo' ? 'col-lg-12 allcentered mb-2 p-0' : 'col-lg-12 allcentered mb-2 p-sm-0'}>
1542
- <button
1543
- class={productinfo_cssstyles.storeinfobtn + ' allcentered '}
1544
- onClick={() => {
1545
- window.open('mailto:' + authdetailsContext?.instinfo?.contactinfo?.email, '_self');
1546
- }}
1547
- >
1548
- <p class="m-0 p-0">{langdetect == 'en' ? sectionproperties.emailtitle_en : sectionproperties.emailtitle_ar}</p>
1549
- </button>
1550
- </div>
1551
- )}
1552
- {sectionproperties.showwhatsapp == 'Show' && authdetailsContext?.instinfo?.whatsappnumber != null && (
1553
- <div class={position == 'belowinfo' ? 'col-lg-12 allcentered mb-2 p-0' : 'col-lg-12 allcentered mb-2 p-sm-0'}>
1554
- <button
1555
- class={productinfo_cssstyles.storeinfobtn + ' allcentered '}
1556
- onClick={() => {
1557
- if (authdetailsContext?.instinfo?.whatsappnumber != null) {
1558
- window.open('https://api.whatsapp.com/send?phone=' + authdetailsContext?.instinfo?.whatsappnumber, '_blank');
1559
- }
1560
- }}
1561
- >
1562
- <p class="m-0 p-0">{langdetect == 'en' ? sectionproperties.whatsapptitle_en : sectionproperties.whatsapptitle_ar}</p>
1563
- </button>
1564
- </div>
1565
- )}
1566
- </div>
1567
- )}
1568
- </div>
1569
- </div>
1570
- );
1571
- };
1572
- const isproductofstock = () => {
1573
- var isproductoutofstock = false;
1574
- var variantindexcompletedloc = variantindexcompleted?.toString();
1575
- var currquant = 0;
1576
- if (fetchProductInfoQueryContext.isSuccess) {
1577
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.quantavailtype == 'limit') {
1578
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.hasvariants == 1) {
1579
- if (variantindexcompletedloc != undefined && variantindexcompletedloc != null && variantindexcompletedloc != '') {
1580
- if (isoutofstock) {
1581
- isproductoutofstock = true;
1582
- } else {
1583
- isproductoutofstock = false;
1584
- }
1585
- }
1586
- } else {
1587
- if (fetchProductInfoQueryContext?.data?.data?.productinfo?.quantavailtype == 'limit') {
1588
- if (parseFloat(fetchProductInfoQueryContext?.data?.data?.productinfo?.currentquantity) <= 0) {
1589
- isproductoutofstock = true;
1590
- currquant = fetchProductInfoQueryContext?.data?.data?.productinfo?.currentquantity;
1591
- }
1592
- }
1593
- }
1594
- }
1595
- }
1596
- return { isproductoutofstock: isproductoutofstock, currquant: currquant };
1597
- };
1598
- return (
1599
- <div className={productinfo_cssstyles.containerstyles + ' row w-100 ml-0 mr-0 '}>
1600
- {/* <h1>
1601
- {isproductofstock()['isproductoutofstock']?.toString()} -- ff - {ProductInfoObj?.data?.productinfo?.name_en}
1602
- </h1> */}
1603
- {Object.keys(sectionproperties).length != 0 && (
1604
- <div className="col-lg-12 p-0" style={{ minHeight: '80vh' }}>
1605
- {fetchProductInfoQueryContextProps.isFetching && (
1606
- <div className={'row ml-0 mr-0 w-100 px-5 py-5'}>
1607
- <div class="col-lg-6 col-md-12 is-loading mb-md-4">
1608
- <div
1609
- class="image"
1610
- style={{
1611
- width: '100%',
1612
- height: 400,
1613
- }}
1614
- ></div>
1615
- </div>
1616
- <div class="col-lg-6 col-md-12 mb-md-4">
1617
- <p class="is-loading"></p>
1618
- <p
1619
- class="is-loading"
1620
- style={{
1621
- width: '40%',
1622
- }}
1623
- ></p>
1624
- <p
1625
- class="is-loading"
1626
- style={{
1627
- width: '40%',
1628
- }}
1629
- ></p>
1630
- <p
1631
- class="is-loading"
1632
- style={{
1633
- width: '40%',
1634
- }}
1635
- ></p>
1636
- <p
1637
- class="is-loading"
1638
- style={{
1639
- width: '40%',
1640
- }}
1641
- ></p>
1642
- <p
1643
- class="is-loading"
1644
- style={{
1645
- width: '40%',
1646
- }}
1647
- ></p>
1648
- <p
1649
- class="is-loading"
1650
- style={{
1651
- width: '40%',
1652
- }}
1653
- ></p>
1654
- <p
1655
- class="is-loading"
1656
- style={{
1657
- width: '40%',
1658
- }}
1659
- ></p>
1660
- <p
1661
- class="is-loading"
1662
- style={{
1663
- width: '40%',
1664
- }}
1665
- ></p>
1666
- </div>
1667
-
1668
- {/* <Messaging color="#ccc" width="10px" height="10px" duration="1s" /> */}
1669
- </div>
1670
- )}
1671
- {!fetchProductInfoQueryContext.isFetching && fetchProductInfoQueryContext.isSuccess && fetchProductInfoQueryContext.data.data.productinfo != null && (
1672
- <div
1673
- className={sectionproperties.card_marginLeft != 0 ? ' row m-0 w-100 pl-lg-3 pr-lg-3 pl-md-4 pr-md-4 pl-sm-1 pr-sm-1 ' : ' row m-0 w-100 p-sm-0 '}
1674
- style={{
1675
- paddingLeft: props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px') : 0,
1676
- paddingRight:
1677
- props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px') : 0,
1678
- }}
1679
- >
1680
- {fetchProductInfoQueryContext.data.data.productinfo.item_type == 'product' && (
1681
- <Product_itemtype
1682
- actions={{
1683
- variantnotchosendisclaimer: variantnotchosendisclaimer,
1684
- setisoutofstock: setisoutofstock,
1685
- isoutofstock: isoutofstock,
1686
- returnpolicyobj: returnpolicyobj,
1687
- langdetect: langdetect,
1688
- lang: lang,
1689
- srcfromprops: props.srcfromprops,
1690
- returnpolicyobj: returnpolicyobj,
1691
- productinfo_cssstyles: productinfo_cssstyles,
1692
- addtocartfunc: addtocartfunc,
1693
- selectproductoptionvalue: selectproductoptionvalue,
1694
- clearchoosenvaluesbutkeepcurrentvalue: clearchoosenvaluesbutkeepcurrentvalue,
1695
- productimagesarray: productimagesarray,
1696
- fetchProductInfoQueryContext: fetchProductInfoQueryContext,
1697
- ProductInfoObj: ProductInfoObj,
1698
- sectionproperties: sectionproperties,
1699
- addtocardpayloadobj: addtocardpayloadobj,
1700
- setaddtocardpayloadobj: setaddtocardpayloadobj,
1701
- routingcountext: routingcountext,
1702
- AddtoCartMutationContext: AddtoCartMutationContext,
1703
- authdetailsContext: authdetailsContext,
1704
- addtofavoritescontext: addtofavoritescontext,
1705
- variantindexcompleted: variantindexcompleted,
1706
- StaticPagesLinksContext: StaticPagesLinksContext,
1707
- NotificationManager: NotificationManager,
1708
- GeneralAPIMutationContext: GeneralAPIMutationContext,
1709
- quantityconditionfoundobjprops: quantityconditionfoundobj,
1710
- relatedproducts: relatedproducts,
1711
- getprice_discountpriceprops: getprice_discountpriceprops,
1712
- StoreInfoprops: StoreInfo,
1713
- currentshowingimageindex: currentshowingimageindex,
1714
- setcurrentshowingimageindex: setcurrentshowingimageindex,
1715
- templatepropcontext: templatepropcontext,
1716
- ikimagecredcontext: ikimagecredcontext,
1717
- variantindex: variantindex,
1718
- setvariantindex: setvariantindex,
1719
- variantsku: variantsku,
1720
- variantvalueidentifier: variantvalueidentifier,
1721
- sizeguideimage: sizeguideimage,
1722
- setopensizeguidemodal: setopensizeguidemodal,
1723
- }}
1724
- />
1725
- )}
1726
- {fetchProductInfoQueryContext.data.data.productinfo.item_type == 'Article' && (
1727
- <Article_itemtype
1728
- actions={{
1729
- variantnotchosendisclaimer: variantnotchosendisclaimer,
1730
- setisoutofstock: setisoutofstock,
1731
- isoutofstock: isoutofstock,
1732
- returnpolicyobj: returnpolicyobj,
1733
- langdetect: langdetect,
1734
- lang: lang,
1735
- srcfromprops: props.srcfromprops,
1736
- returnpolicyobj: returnpolicyobj,
1737
- productinfo_cssstyles: productinfo_cssstyles,
1738
- addtocartfunc: addtocartfunc,
1739
- selectproductoptionvalue: selectproductoptionvalue,
1740
- clearchoosenvaluesbutkeepcurrentvalue: clearchoosenvaluesbutkeepcurrentvalue,
1741
- productimagesarray: productimagesarray,
1742
- fetchProductInfoQueryContext: fetchProductInfoQueryContext,
1743
- ProductInfoObj: ProductInfoObj,
1744
- sectionproperties: sectionproperties,
1745
- addtocardpayloadobj: addtocardpayloadobj,
1746
- setaddtocardpayloadobj: setaddtocardpayloadobj,
1747
- routingcountext: routingcountext,
1748
- AddtoCartMutationContext: AddtoCartMutationContext,
1749
- authdetailsContext: authdetailsContext,
1750
- addtofavoritescontext: addtofavoritescontext,
1751
- variantindexcompleted: variantindexcompleted,
1752
- StaticPagesLinksContext: StaticPagesLinksContext,
1753
- NotificationManager: NotificationManager,
1754
- GeneralAPIMutationContext: GeneralAPIMutationContext,
1755
- quantityconditionfoundobjprops: quantityconditionfoundobj,
1756
- relatedproducts: relatedproducts,
1757
- getprice_discountpriceprops: getprice_discountpriceprops,
1758
- StoreInfoprops: StoreInfo,
1759
- currentshowingimageindex: currentshowingimageindex,
1760
- setcurrentshowingimageindex: setcurrentshowingimageindex,
1761
- templatepropcontext: templatepropcontext,
1762
- ikimagecredcontext: ikimagecredcontext,
1763
- variantindex: variantindex,
1764
- setvariantindex: setvariantindex,
1765
- variantsku: variantsku,
1766
- variantvalueidentifier: variantvalueidentifier,
1767
- }}
1768
- />
1769
- )}
1770
- {fetchProductInfoQueryContext.data.data.productinfo.item_type == 'service' && (
1771
- <Service_itemtype
1772
- actions={{
1773
- variantnotchosendisclaimer: variantnotchosendisclaimer,
1774
- variantsku: variantsku,
1775
- setisoutofstock: setisoutofstock,
1776
- isoutofstock: isoutofstock,
1777
- returnpolicyobj: returnpolicyobj,
1778
- langdetect: langdetect,
1779
- lang: lang,
1780
- srcfromprops: props.srcfromprops,
1781
- returnpolicyobj: returnpolicyobj,
1782
- productinfo_cssstyles: productinfo_cssstyles,
1783
- addtocartfunc: addtocartfunc,
1784
- selectproductoptionvalue: selectproductoptionvalue,
1785
- clearchoosenvaluesbutkeepcurrentvalue: clearchoosenvaluesbutkeepcurrentvalue,
1786
- productimagesarray: productimagesarray,
1787
- fetchProductInfoQueryContext: fetchProductInfoQueryContext,
1788
- sectionproperties: sectionproperties,
1789
- addtocardpayloadobj: addtocardpayloadobj,
1790
- ProductInfoObj: ProductInfoObj,
1791
- currentshowingimageindex: currentshowingimageindex,
1792
- setcurrentshowingimageindex: setcurrentshowingimageindex,
1793
- setaddtocardpayloadobj: setaddtocardpayloadobj,
1794
- routingcountext: routingcountext,
1795
- AddtoCartMutationContext: AddtoCartMutationContext,
1796
- authdetailsContext: authdetailsContext,
1797
- addtofavoritescontext: addtofavoritescontext,
1798
- StaticPagesLinksContext: StaticPagesLinksContext,
1799
- variantindexcompleted: variantindexcompleted,
1800
- GeneralAPIMutationContext: GeneralAPIMutationContext,
1801
- NotificationManager: NotificationManager,
1802
- getprice_discountpriceprops: getprice_discountpriceprops,
1803
- quantityconditionfoundobjprops: quantityconditionfoundobj,
1804
- relatedproducts: relatedproducts,
1805
- getQuantityCondition: getQuantityCondition,
1806
- StoreInfoprops: StoreInfo,
1807
- templatepropcontext: templatepropcontext,
1808
- ikimagecredcontext: ikimagecredcontext,
1809
- sizeguideimage: sizeguideimage,
1810
- setopensizeguidemodal: setopensizeguidemodal,
1811
- }}
1812
- />
1813
- )}
1814
- {props.srcfromprops != 'templatedraftrouter' && (
1815
- <div
1816
- className={sectionproperties.card_marginLeft != 0 ? ' col-lg-12 p-0 pl-lg-3 pr-lg-3 pl-md-4 pr-md-4 pl-sm-1 pr-sm-1 ' : ' col-lg-12 p-sm-0 '}
1817
- style={{
1818
- paddingLeft:
1819
- props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px') : 0,
1820
- paddingRight:
1821
- props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px') : 0,
1822
- display:
1823
- sectionproperties.showfirstpolicy == 'Hide' &&
1824
- sectionproperties.showsecondpolicy == 'Hide' &&
1825
- fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length != 0
1826
- ? 'flex'
1827
- : fetchProductInfoQueryContext?.data?.data?.productinfo?.productcanrate == 1
1828
- ? 'flex'
1829
- : sectionproperties.showfirstpolicy == 'Hide' && sectionproperties.showsecondpolicy == 'Hide'
1830
- ? 'none'
1831
- : sectionproperties.showfirstpolicy == 'Hide' &&
1832
- sectionproperties.showsecondpolicy == 'Hide' &&
1833
- sectionproperties.descriptionposition != 'Bottom' &&
1834
- fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length == 0
1835
- ? 'none'
1836
- : 'flex',
1837
- }}
1838
- >
1839
- <div
1840
- class={`${productinfo_cssstyles.cardcontainer}` + ' ml-0 mr-0 w-100 pl-md-3 pr-md-3 px-1025-1 '}
1841
- style={{
1842
- paddingLeft: sectionproperties.tabspaddinghorizontal + 'px',
1843
- paddingRight: sectionproperties.tabspaddinghorizontal + 'px',
1844
- marginBottom: sectionproperties.tabsmb + 'px',
1845
- paddingTop: sectionproperties.tabsPt + 'px',
1846
- paddingBottom: sectionproperties.tabsPb + 'px',
1847
- }}
1848
- >
1849
- {sectionproperties.tabsfullwidth == 'Full Width' && (
1850
- <Box>
1851
- <Tabs
1852
- value={tabIndex}
1853
- onChange={handleTabChange}
1854
- scrollButtons="auto"
1855
- TabIndicatorProps={{
1856
- style: {
1857
- background: sectionproperties.activetabbordercolor,
1858
- // right: sectionproperties.showfirstpolicy == 'Hide' ? 0 : sectionproperties.showsecondpolicy == 'Hide' ? 0 : '',
1859
- // margin: sectionproperties.showfirstpolicy == 'Hide' ? 'auto' : sectionproperties.showsecondpolicy == 'Hide' ? 'auto' : '',
1860
- },
1861
- }}
1862
- sx={{
1863
- '& button': {
1864
- color: sectionproperties.tabtextcolor,
1865
- fontWeight: sectionproperties.tabtextfontweight,
1866
- background: sectionproperties.tabcontainerbgcolor,
1867
- textTransform: sectionproperties.tabtexttexttransform,
1868
- borderRadius: sectionproperties.tabcontainerborderradius + 'px',
1869
- fontFamily: 'Poppins',
1870
- transition: '.3s',
1871
- fontSize: sectionproperties.tabtextfontsize + 'px',
1872
- },
1873
- '& button:hover': {
1874
- color: sectionproperties.tabscoloronhover,
1875
- fontFamily: 'Poppins',
1876
- transition: '.3s',
1877
- },
1878
- '& button.Mui-selected': {
1879
- color: sectionproperties.tabtextactivecolor,
1880
- background: sectionproperties.activetabbgcolor,
1881
- fontFamily: 'Poppins',
1882
- transition: '.3s',
1883
- },
1884
- }}
1885
- variant={'fullWidth'}
1886
- // tabsfullwidth
1887
- >
1888
- {sectionproperties.prodCatShow == 'Show' && sectionproperties.descriptionposition == 'Bottom' && (
1889
- <Tab
1890
- label={langdetect == 'en' ? sectionproperties.tabsdescEn : sectionproperties.tabsdescAr}
1891
- onClick={() => {
1892
- settabname('descriptiontab');
1893
- }}
1894
- />
1895
- )}
1896
- {sectionproperties.showfirstpolicy == 'Show' && (
1897
- <Tab
1898
- label={langdetect == 'en' ? returnpolicyobj('Shipping Policy')?.policypagename_en : returnpolicyobj('Shipping Policy')?.policypagename_ar}
1899
- onClick={() => {
1900
- settabname('shippingpolicytab');
1901
- }}
1902
- />
1903
- )}
1904
- {sectionproperties.showsecondpolicy == 'Show' && (
1905
- <Tab
1906
- label={langdetect == 'en' ? returnpolicyobj('Refund Policy')?.policypagename_en : returnpolicyobj('Refund Policy')?.policypagename_ar}
1907
- onClick={() => {
1908
- settabname('refundpolicytab');
1909
- }}
1910
- />
1911
- )}
1912
- {fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length != 0 && (
1913
- <Tab
1914
- label={langdetect == 'en' ? sectionproperties.videostitleen : sectionproperties.videostitlear}
1915
- onClick={() => {
1916
- settabname('videostab');
1917
- }}
1918
- />
1919
- )}
1920
- {fetchProductInfoQueryContext?.data?.data?.productinfo?.productcanrate == 1 && (
1921
- <Tab
1922
- label={langdetect == 'en' ? 'Reviews' : 'التقييمات'}
1923
- onClick={() => {
1924
- settabname('reviewstab');
1925
- }}
1926
- />
1927
- )}
1928
- </Tabs>
1929
- </Box>
1930
- )}
1931
- {sectionproperties.tabsfullwidth != 'Full Width' && (
1932
- <Box>
1933
- <Tabs
1934
- value={tabIndex}
1935
- onChange={handleTabChange}
1936
- scrollButtons="auto"
1937
- TabIndicatorProps={{
1938
- style: {
1939
- background: sectionproperties.activetabbordercolor,
1940
- // right: sectionproperties.showfirstpolicy == 'Hide' ? 0 : sectionproperties.showsecondpolicy == 'Hide' ? 0 : '',
1941
- // margin: sectionproperties.showfirstpolicy == 'Hide' ? 'auto' : sectionproperties.showsecondpolicy == 'Hide' ? 'auto' : '',
1942
- },
1943
- }}
1944
- sx={{
1945
- '& button': {
1946
- color: sectionproperties.tabtextcolor,
1947
- fontWeight: sectionproperties.tabtextfontweight,
1948
- background: sectionproperties.tabcontainerbgcolor,
1949
- textTransform: sectionproperties.tabtexttexttransform,
1950
- borderRadius: sectionproperties.tabcontainerborderradius + 'px',
1951
- fontFamily: 'Poppins',
1952
- transition: '.3s',
1953
- fontSize: sectionproperties.tabtextfontsize + 'px',
1954
- },
1955
- '& button:hover': {
1956
- color: sectionproperties.tabscoloronhover,
1957
- fontFamily: 'Poppins',
1958
- transition: '.3s',
1959
- },
1960
- '& button.Mui-selected': {
1961
- color: sectionproperties.tabtextactivecolor,
1962
- background: sectionproperties.activetabbgcolor,
1963
- fontFamily: 'Poppins',
1964
- transition: '.3s',
1965
- },
1966
- }}
1967
- >
1968
- {sectionproperties.prodCatShow == 'Show' && sectionproperties.gallerystyle == 'Style 1' && (
1969
- <Tab
1970
- label={langdetect == 'en' ? sectionproperties.tabsdescEn : sectionproperties.tabsdescAr}
1971
- onClick={() => {
1972
- settabname('descriptiontab');
1973
- }}
1974
- />
1975
- )}
1976
- {sectionproperties.showfirstpolicy == 'Show' && (
1977
- <Tab
1978
- label={langdetect == 'en' ? returnpolicyobj('Shipping Policy')?.policypagename_en : returnpolicyobj('Shipping Policy')?.policypagename_ar}
1979
- onClick={() => {
1980
- settabname('shippingpolicytab');
1981
- }}
1982
- />
1983
- )}
1984
- {sectionproperties.showsecondpolicy == 'Show' && (
1985
- <Tab
1986
- label={langdetect == 'en' ? returnpolicyobj('Refund Policy')?.policypagename_en : returnpolicyobj('Refund Policy')?.policypagename_ar}
1987
- onClick={() => {
1988
- settabname('refundpolicytab');
1989
- }}
1990
- />
1991
- )}
1992
- {fetchProductInfoQueryContext?.data?.data?.productinfo?.product_videos?.length != 0 && (
1993
- <Tab
1994
- label={langdetect == 'en' ? 'Videos' : 'فيديوهات'}
1995
- onClick={() => {
1996
- settabname('videostab');
1997
- }}
1998
- />
1999
- )}
2000
- {fetchProductInfoQueryContext?.data?.data?.productinfo?.productcanrate == 1 && (
2001
- <Tab
2002
- label={langdetect == 'en' ? 'Reviews' : 'التقييمات'}
2003
- onClick={() => {
2004
- settabname('reviewstab');
2005
- }}
2006
- />
2007
- )}
2008
- </Tabs>
2009
- </Box>
2010
- )}
2011
- <Box class="w-100 mt-5 mb-4">
2012
- {tabname == 'descriptiontab' && sectionproperties.descriptionposition == 'Bottom' && (
2013
- <DescriptionContent
2014
- actions={{
2015
- ...actions,
2016
- productinfo_cssstyles: productinfo_cssstyles,
2017
- sectionproperties: sectionproperties,
2018
- }}
2019
- />
2020
- )}
2021
- {tabname == 'shippingpolicytab' && (
2022
- <div class="col-lg-12 pl-5 pr-5 p-md-0 w-100">
2023
- <p
2024
- className={' m-0 p-0 wordbreak '}
2025
- style={{
2026
- // lineClamp: 10,
2027
- // WebkitLineClamp: 10,
2028
- textAlign: langdetect == 'en' ? 'left' : 'right',
2029
- }}
2030
- dangerouslySetInnerHTML={{
2031
- __html: langdetect == 'en' ? returnpolicyobj('Shipping Policy')?.policycontent_en : returnpolicyobj('Shipping Policy')?.policycontent_ar,
2032
- }}
2033
- ></p>
2034
- </div>
2035
- )}
2036
- {tabname == 'refundpolicytab' && (
2037
- <div class="col-lg-12 p-0 w-100 pl-5 pr-5 p-md-0">
2038
- <p
2039
- className={' m-0 p-0 wordbreak '}
2040
- style={{
2041
- // lineClamp: 10,
2042
- // WebkitLineClamp: 10,
2043
- textAlign: langdetect == 'en' ? 'left' : 'right',
2044
- }}
2045
- dangerouslySetInnerHTML={{
2046
- __html: langdetect == 'en' ? returnpolicyobj('Refund Policy')?.policycontent_en : returnpolicyobj('Refund Policy')?.policycontent_ar,
2047
- }}
2048
- ></p>
2049
- </div>
2050
- )}
2051
- {tabname == 'videostab' && (
2052
- <div class="row m-0 w-100 w-100 pl-5 pr-5 p-md-0">
2053
- {productVideos.map((item, index) => {
2054
- return (
2055
- <div
2056
- className="col-lg-4 col-md-6 col-sm-12 mb-4"
2057
- style={{
2058
- height: 400,
2059
- }}
2060
- >
2061
- <ReactPlayer url={item.videourl} height={'100%'} width={'100%'} playing={false} controls={true} loop={true} muted={true} />
2062
- </div>
2063
- );
2064
- })}
2065
- </div>
2066
- )}
2067
- {tabname == 'reviewstab' && (
2068
- <div class="col-lg-12 p-0 w-100 pl-5 pr-5 p-md-0">
2069
- <ProductReviews
2070
- actions={{
2071
- ...actions,
2072
- productinfo_cssstyles: productinfo_cssstyles,
2073
- sectionproperties: sectionproperties,
2074
- }}
2075
- />
2076
- </div>
2077
- )}
2078
- </Box>
2079
- </div>
2080
- </div>
2081
- )}
2082
-
2083
- {props.srcfromprops != 'templatedraftrouter' && (
2084
- <div
2085
- className={sectionproperties.card_marginLeft != 0 ? ' col-lg-12 pl-lg-3 pr-lg-3 pl-md-4 pr-md-4 pl-sm-1 pr-sm-1 ' : ' col-lg-12 p-sm-0 '}
2086
- style={{
2087
- paddingLeft:
2088
- props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px') : 0,
2089
- paddingRight:
2090
- props.srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px') : 0,
2091
- }}
2092
- >
2093
- {relatedproducts()}
2094
- </div>
2095
- )}
2096
- </div>
2097
- )}
2098
- </div>
2099
- )}
2100
- </div>
2101
- );
2102
- };
2103
- export default Productinfo;