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