tabexseriescomponents 0.0.706 → 0.0.708

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 (348) hide show
  1. package/package.json +1 -1
  2. package/srcoman/Contexts/LanguageContext.jsx +408 -0
  3. package/srcoman/Contexts/ProductsCardsSectionContext.jsx +36 -0
  4. package/srcoman/Imagekitconfig.jsx +46 -0
  5. package/srcoman/StylesJS/Customstyles.js +345 -0
  6. package/srcoman/TabexComponents/Cards/CTAProductCard/CTAProductCard.jsx +376 -0
  7. package/srcoman/TabexComponents/Cards/Card20/Card20.jsx +298 -0
  8. package/srcoman/TabexComponents/Cards/Card21/Card21.jsx +388 -0
  9. package/srcoman/TabexComponents/Cards/Card22/Card22.jsx +288 -0
  10. package/srcoman/TabexComponents/Cards/Card23/Card23 copy.jsx +1630 -0
  11. package/srcoman/TabexComponents/Cards/Card23/Card23.jsx +742 -0
  12. package/srcoman/TabexComponents/Cards/CardAll/CardAll.jsx +453 -0
  13. package/srcoman/TabexComponents/Cards/CardBadgeSlideFromTop/CardBadgeSlideFromTop.jsx +394 -0
  14. package/srcoman/TabexComponents/Cards/CardWithTextOnly/CardWithTextOnly.jsx +70 -0
  15. package/srcoman/TabexComponents/Cards/CategoryCardTextOnImage/CategoryCardTextOnImage.jsx +211 -0
  16. package/srcoman/TabexComponents/Cards/CategoryCardwithhoveraction/CategoryCardwithhoveraction.jsx +255 -0
  17. package/srcoman/TabexComponents/Cards/Categorycard_fullimage/Categorycard_fullimage.jsx +235 -0
  18. package/srcoman/TabexComponents/Cards/Categorycard_slidebgscaled/Categorycard_slidebgscaled.jsx +199 -0
  19. package/srcoman/TabexComponents/Cards/Categorycard_with_trianglebg/Categorycard_with_trianglebg.jsx +182 -0
  20. package/srcoman/TabexComponents/Cards/Categorycard_with_twolinestransition/Categorycard_with_twolinestransition.jsx +181 -0
  21. package/srcoman/TabexComponents/Cards/Categorycard_withshapes/Categorycard_withshapes.jsx +161 -0
  22. package/srcoman/TabexComponents/Cards/Categorycard_withtext/Categorycard_withtext.jsx +184 -0
  23. package/srcoman/TabexComponents/Cards/CircleCardWithVariants/CircleCardWithVariants.jsx +560 -0
  24. package/srcoman/TabexComponents/Cards/Classiccategorycard/Classiccategorycard copy.jsx +145 -0
  25. package/srcoman/TabexComponents/Cards/Classiccategorycard/Classiccategorycard.jsx +146 -0
  26. package/srcoman/TabexComponents/Cards/Classiccategorycard/ClassiccategorycardOriginal.jsx +142 -0
  27. package/srcoman/TabexComponents/Cards/HorizontalCategoryCard/HorizontalCategoryCard.jsx +193 -0
  28. package/srcoman/TabexComponents/Cards/Horizontalcard/Horizontalcard.jsx +409 -0
  29. package/srcoman/TabexComponents/Cards/MenuCard/MenuCard.jsx +732 -0
  30. package/srcoman/TabexComponents/Cards/ModernCardWithQuantityButton/ModernCardWithQuantityButton.jsx +468 -0
  31. package/srcoman/TabexComponents/Cards/ModernProductCard/ModernProductCard.jsx +593 -0
  32. package/srcoman/TabexComponents/Cards/Moderncategorycard/Moderncategorycard.jsx +208 -0
  33. package/srcoman/TabexComponents/Cards/NewProductcard/NewProductcard copy.jsx +497 -0
  34. package/srcoman/TabexComponents/Cards/NewProductcard/NewProductcard.jsx +512 -0
  35. package/srcoman/TabexComponents/Cards/ProductCardWithTextOnImage/ProductCardWithTextOnImage.jsx +304 -0
  36. package/srcoman/TabexComponents/Cards/Productcard6/Productcard6.jsx +257 -0
  37. package/srcoman/TabexComponents/Cards/Productcard7/Productcard7.jsx +277 -0
  38. package/srcoman/TabexComponents/Cards/Productcard_animatedbuttons/Productcard_animatedbuttons.jsx +352 -0
  39. package/srcoman/TabexComponents/Cards/Productcard_with_circularbg/Productcard_with_circularbg.jsx +291 -0
  40. package/srcoman/TabexComponents/Cards/Productcard_with_circularhover/Productcard_with_circularhover.jsx +315 -0
  41. package/srcoman/TabexComponents/Cards/Productcard_with_slideanimation/Productcard_with_slideanimation.jsx +327 -0
  42. package/srcoman/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants copy.jsx +408 -0
  43. package/srcoman/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants.jsx +528 -0
  44. package/srcoman/TabexComponents/Cards/Productcard_with_zoominonhover/Productcard_with_zoominonhover.jsx +558 -0
  45. package/srcoman/TabexComponents/Cards/Productcarddefault/Productcarddefault.jsx +275 -0
  46. package/srcoman/TabexComponents/Cards/Productccard_with_imageontopleft/Productccard_with_imageontopleft.jsx +286 -0
  47. package/srcoman/TabexComponents/Cards/Prouductcard_with_zoomhover/Prouductcard_with_zoomhover.jsx +137 -0
  48. package/srcoman/TabexComponents/Cards/QuantityButtonBasedProductCard/QuantityButtonBasedProductCard.jsx +613 -0
  49. package/srcoman/TabexComponents/Cards/ServiceCard/ServiceCard.jsx +413 -0
  50. package/srcoman/TabexComponents/Cards/Simplecategorycardwithtextbelow/Simplecategorycardwithtextbelow.jsx +225 -0
  51. package/srcoman/TabexComponents/Cards/Simpleproductcard/Simpleproductcard copy 2.jsx +525 -0
  52. package/srcoman/TabexComponents/Cards/Simpleproductcard/Simpleproductcard copy.jsx +455 -0
  53. package/srcoman/TabexComponents/Cards/Simpleproductcard/Simpleproductcard.jsx +905 -0
  54. package/srcoman/TabexComponents/Cards/StylishProductCard/StylishProductCard.jsx +337 -0
  55. package/srcoman/TabexComponents/Cards/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +347 -0
  56. package/srcoman/TabexComponents/Cards/UpSlideEffectCard/UpSlideEffectCard.jsx +605 -0
  57. package/srcoman/TabexComponents/Cards/UserCardWithSocialMediaOnHover/UserCardWithSocialMediaOnHover.jsx +185 -0
  58. package/srcoman/TabexComponents/Footer/Allinonefooter/Allinonefooter.jsx +528 -0
  59. package/srcoman/TabexComponents/Footer/Footer1/Footer1.jsx +780 -0
  60. package/srcoman/TabexComponents/Footer/Footer2/Footer2.jsx +527 -0
  61. package/srcoman/TabexComponents/Footer/Footer3/Footer3.jsx +411 -0
  62. package/srcoman/TabexComponents/Footer/Footer4/Footer4.jsx +466 -0
  63. package/srcoman/TabexComponents/Footer/Footer5/Footer5.jsx +714 -0
  64. package/srcoman/TabexComponents/Footer/Footer6/Footer6.jsx +290 -0
  65. package/srcoman/TabexComponents/Footer/Footer7/Footer7.jsx +428 -0
  66. package/srcoman/TabexComponents/Footer/Footer8/Footer8.jsx +533 -0
  67. package/srcoman/TabexComponents/Footer/FooterWithThreeColumns/FooterWithThreeColumns.jsx +330 -0
  68. package/srcoman/TabexComponents/Footer/ModernFooter/ModernFooter.jsx +562 -0
  69. package/srcoman/TabexComponents/Footer/Newsletterfooter/Newsletterfooter.jsx +865 -0
  70. package/srcoman/TabexComponents/Footer/Newsletterincenter/Newsletterincenter.jsx +647 -0
  71. package/srcoman/TabexComponents/Footer/PrivacyPolicy/PrivacyPolicy.jsx +110 -0
  72. package/srcoman/TabexComponents/Footer/Simplefooter/Simplefooter.jsx +316 -0
  73. package/srcoman/TabexComponents/Generalfiles/images/egyptflag.png +0 -0
  74. package/srcoman/TabexComponents/Generalfiles/images/noimage.png +0 -0
  75. package/srcoman/TabexComponents/Generalfiles/images/payment/cod.png +0 -0
  76. package/srcoman/TabexComponents/Generalfiles/images/payment/fawry.png +0 -0
  77. package/srcoman/TabexComponents/Generalfiles/images/payment/payment.png +0 -0
  78. package/srcoman/TabexComponents/Generalfiles/images/payment/paymob.png +0 -0
  79. package/srcoman/TabexComponents/Generalfiles/images/payment/paypal.png +0 -0
  80. package/srcoman/TabexComponents/Generalfiles/images/payment/visa.png +0 -0
  81. package/srcoman/TabexComponents/Generalfiles/images/shoppingcart.png +0 -0
  82. package/srcoman/TabexComponents/Generalfiles/images/tabexlogo.png +0 -0
  83. package/srcoman/TabexComponents/Generalfiles/images/unknownmaleuser.png +0 -0
  84. package/srcoman/TabexComponents/Generalfiles/images/usflag.png +0 -0
  85. package/srcoman/TabexComponents/Generalfiles/images/whatsapp.png +0 -0
  86. package/srcoman/TabexComponents/Headers/CTAHeader/CTAHeader.jsx +1259 -0
  87. package/srcoman/TabexComponents/Headers/CategoryFeaturingHeader/CategoryFeaturingHeader.jsx +1049 -0
  88. package/srcoman/TabexComponents/Headers/CenteredLogoHeaderWithSlider/CenteredLogoHeaderWithSlider.jsx +1040 -0
  89. package/srcoman/TabexComponents/Headers/ClassicHeader/ClassicHeader.jsx +1263 -0
  90. package/srcoman/TabexComponents/Headers/DownloadApp/DownloadApp.jsx +76 -0
  91. package/srcoman/TabexComponents/Headers/ElegantHeader/ElegantHeader.jsx +894 -0
  92. package/srcoman/TabexComponents/Headers/Gotoheader/Gotoheader.jsx +831 -0
  93. package/srcoman/TabexComponents/Headers/Header4/Header4.jsx +622 -0
  94. package/srcoman/TabexComponents/Headers/Header8/Header8 copy.jsx +1026 -0
  95. package/srcoman/TabexComponents/Headers/Header8/Header8.jsx +1976 -0
  96. package/srcoman/TabexComponents/Headers/HeaderRestaurant/HeaderRestaurant.jsx +776 -0
  97. package/srcoman/TabexComponents/Headers/HeaderWithAdSlider/HeaderWithAdSlider.jsx +927 -0
  98. package/srcoman/TabexComponents/Headers/HeaderWithSearchOnCenter/HeaderWithSearchOnCenter.jsx +704 -0
  99. package/srcoman/TabexComponents/Headers/HeaderWithUtilityBar/HeaderWithUtilityBar.jsx +902 -0
  100. package/srcoman/TabexComponents/Headers/Header_threesectionslogocentered/Header_threesectionslogocentered.jsx +953 -0
  101. package/srcoman/TabexComponents/Headers/Headerresponsive/Headerresponsive.jsx +1562 -0
  102. package/srcoman/TabexComponents/Headers/Headerresponsive/Headerresponsive11-1.jsx +1201 -0
  103. package/srcoman/TabexComponents/Headers/Headerresponsive/HeaderresponsiveOriginal.jsx +990 -0
  104. package/srcoman/TabexComponents/Headers/Headerresponsive/HeaderresponsiveStyle2 copy.jsx +1639 -0
  105. package/srcoman/TabexComponents/Headers/Headerresponsive/HeaderresponsiveStyle2.jsx +1610 -0
  106. package/srcoman/TabexComponents/Headers/Headerresponsive/Headerresponsivenew.jsx +1327 -0
  107. package/srcoman/TabexComponents/Headers/HeaderwithContactinfo/HeaderwithContactinfo.jsx +934 -0
  108. package/srcoman/TabexComponents/Headers/MarqueeHeader/MarqueeHeader.jsx +78 -0
  109. package/srcoman/TabexComponents/Headers/Modernheader/Modernheader.jsx +972 -0
  110. package/srcoman/TabexComponents/Headers/SearchCenteredHeader/SearchCenteredHeader.jsx +778 -0
  111. package/srcoman/TabexComponents/Headers/SearchFocusedHeader/SearchFocusedHeader.jsx +1159 -0
  112. package/srcoman/TabexComponents/Headers/Simpleheader/Simpleheader.jsx +1073 -0
  113. package/srcoman/TabexComponents/Headers/SocialMediaSection/SocialMediaSection.jsx +133 -0
  114. package/srcoman/TabexComponents/Headers/StylishHeader/StylishHeader.jsx +854 -0
  115. package/srcoman/TabexComponents/Headers/Subheader/Subheader.jsx +863 -0
  116. package/srcoman/TabexComponents/Headers/Subheader/Subheader13-3.jsx +685 -0
  117. package/srcoman/TabexComponents/Headers/Subheader/SubheaderOriginal.jsx +517 -0
  118. package/srcoman/TabexComponents/Headers/Subheader/Subheadernew.jsx +555 -0
  119. package/srcoman/TabexComponents/Headers/ThreeTieredHeader/ThreeTieredHeader.jsx +1042 -0
  120. package/srcoman/TabexComponents/Headers/TwoTieredHeader/TwoTieredHeader.jsx +1089 -0
  121. package/srcoman/TabexComponents/Headers/TwoTieredWithCenteredLogoHeader/TwoTieredWithCenteredLogoHeader.jsx +936 -0
  122. package/srcoman/TabexComponents/Sections/BackgroundImages/BacgroundThreeImageWithCategories/BacgroundThreeImageWithCategories.jsx +533 -0
  123. package/srcoman/TabexComponents/Sections/BackgroundImages/BackgroundFiveImageStructure/BackgroundFiveImageStructure.jsx +338 -0
  124. package/srcoman/TabexComponents/Sections/BackgroundImages/BackgroundImageWithTopContent/BackgroundImageWithTopContent.jsx +870 -0
  125. package/srcoman/TabexComponents/Sections/BackgroundImages/BackgroundSectionWithServicesCards/BackgroundSectionWithServicesCards.jsx +302 -0
  126. package/srcoman/TabexComponents/Sections/BackgroundImages/Backgroundimage1/Backgroundimage1.jsx +314 -0
  127. package/srcoman/TabexComponents/Sections/BackgroundImages/Backgroundimage_with_toppill/Backgroundimage_with_toppill.jsx +318 -0
  128. package/srcoman/TabexComponents/Sections/BackgroundImages/BackgroundimageandTextsection/BackgroundimageandTextsection.jsx +179 -0
  129. package/srcoman/TabexComponents/Sections/BackgroundImages/Bgimagewithsearchbar/Bgimagewithsearchbar.jsx +201 -0
  130. package/srcoman/TabexComponents/Sections/BackgroundImages/CollapsableSection/CollapsableSection.jsx +393 -0
  131. package/srcoman/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm copy 2.jsx +583 -0
  132. package/srcoman/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm copy.jsx +291 -0
  133. package/srcoman/TabexComponents/Sections/BackgroundImages/DynamicForm/DynamicForm.jsx +627 -0
  134. package/srcoman/TabexComponents/Sections/BackgroundImages/DynamicForm/habal +348 -0
  135. package/srcoman/TabexComponents/Sections/BackgroundImages/Filterwithcategoriespcoll/Filterwithcategoriespcoll.jsx +387 -0
  136. package/srcoman/TabexComponents/Sections/BackgroundImages/FullVideoSection/FullVideoSection.jsx +268 -0
  137. package/srcoman/TabexComponents/Sections/BackgroundImages/MapsSection/MapsSection.jsx +288 -0
  138. package/srcoman/TabexComponents/Sections/BackgroundImages/Popupcomponent/Popupcomponent.jsx +117 -0
  139. package/srcoman/TabexComponents/Sections/BackgroundImages/Searchcomponent/Searchcomponent.jsx +99 -0
  140. package/srcoman/TabexComponents/Sections/BackgroundImages/Section_with_rightbgcont/Section_with_rightbgcont.jsx +146 -0
  141. package/srcoman/TabexComponents/Sections/BackgroundImages/TextSectionConnectToWA/TextSectionConnectToWA.jsx +462 -0
  142. package/srcoman/TabexComponents/Sections/BackgroundImages/Threebgimages/Threebgimages.jsx +296 -0
  143. package/srcoman/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages copy.jsx +396 -0
  144. package/srcoman/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages.jsx +617 -0
  145. package/srcoman/TabexComponents/Sections/BackgroundImages/VideosSection/VideosSection.jsx +408 -0
  146. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection copy 2.jsx +1399 -0
  147. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection copy 3.jsx +1656 -0
  148. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection copy.jsx +1540 -0
  149. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection.jsx +1898 -0
  150. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection13-3.jsx +1596 -0
  151. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection21-10.jsx +1872 -0
  152. package/srcoman/TabexComponents/Sections/Cards/CardsSection/CardsSection_cosmoandmore.jsx +1880 -0
  153. package/srcoman/TabexComponents/Sections/Cards/CardsSection2/CardsSection2.jsx +726 -0
  154. package/srcoman/TabexComponents/Sections/Cards/CardsSectionwithfilter/CardsSectionwithfilter.jsx +719 -0
  155. package/srcoman/TabexComponents/Sections/Cards/ElegantCategoriesCardSection/ElegantCategoriesCardSection.jsx +406 -0
  156. package/srcoman/TabexComponents/Sections/Cards/ModernCardsSection/ModernCardsSection.jsx +929 -0
  157. package/srcoman/TabexComponents/Sections/Cards/RandomlyStructuredCollectionCards/RandomlyStructuredCollectionCards copy.jsx +646 -0
  158. package/srcoman/TabexComponents/Sections/Cards/RandomlyStructuredCollectionCards/RandomlyStructuredCollectionCards.jsx +962 -0
  159. package/srcoman/TabexComponents/Sections/Cards/Sixverticalcardssection/Sixverticalcardssection.jsx +582 -0
  160. package/srcoman/TabexComponents/Sections/Cards/UsersCardsSection/UsersCardsSection.jsx +383 -0
  161. package/srcoman/TabexComponents/Sections/Slideshow/AboutSection/AboutSection.jsx +342 -0
  162. package/srcoman/TabexComponents/Sections/Slideshow/Backgroundimage_with_topcircle/Backgroundimage_with_topcircle.jsx +161 -0
  163. package/srcoman/TabexComponents/Sections/Slideshow/ContactUsSection/ContactUsSection.jsx +257 -0
  164. package/srcoman/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection copy.jsx +382 -0
  165. package/srcoman/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection.jsx +437 -0
  166. package/srcoman/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection19-11.jsx +757 -0
  167. package/srcoman/TabexComponents/Sections/Slideshow/HorizontalContactUsSection/HorizontalContactUsSection.jsx +346 -0
  168. package/srcoman/TabexComponents/Sections/Slideshow/Image_with_leftwords/Image_with_leftwords.jsx +1769 -0
  169. package/srcoman/TabexComponents/Sections/Slideshow/Image_with_rightwords/Image_with_rightwords.jsx +141 -0
  170. package/srcoman/TabexComponents/Sections/Slideshow/ServiceSectionWithImage/ServiceSectionWithImage.jsx +376 -0
  171. package/srcoman/TabexComponents/Sections/Slideshow/Servicesection/Servicesection.jsx +380 -0
  172. package/srcoman/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards.jsx +867 -0
  173. package/srcoman/TabexComponents/Sections/Slideshow/Slideshow_with_rotatedsquare/Slideshow_with_rotatedsquare.jsx +226 -0
  174. package/srcoman/TabexComponents/Sections/Slideshow/Slideshow_with_squarebg/Slideshow_with_squarebg.jsx +149 -0
  175. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowdifferentanimations/Slideshowdifferentanimations.jsx +143 -0
  176. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade copy.jsx +634 -0
  177. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade.jsx +520 -0
  178. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide copy.jsx +527 -0
  179. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide.jsx +643 -0
  180. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowslide/SlideshowslideOriginal.jsx +477 -0
  181. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowslide/SlideshowslideRecent.jsx +1217 -0
  182. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslideoriginal8-5.jsx +614 -0
  183. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowzoom/Arrow.jsx +91 -0
  184. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom copy.jsx +380 -0
  185. package/srcoman/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom.jsx +619 -0
  186. package/srcoman/TabexComponents/Sections/Slideshow/ThreeSectionsWithSlideshow/ThreeSectionsWithSlideshow copy.jsx +284 -0
  187. package/srcoman/TabexComponents/Sections/Slideshow/ThreeSectionsWithSlideshow/ThreeSectionsWithSlideshow.jsx +614 -0
  188. package/srcoman/TabexComponents/Sections/Slideshow/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +402 -0
  189. package/srcoman/TabexComponents/StaticPages/AccountInformation/AccountInformation.jsx +199 -0
  190. package/srcoman/TabexComponents/StaticPages/AddReview/AddReview.jsx +304 -0
  191. package/srcoman/TabexComponents/StaticPages/Afiiliatesignup/Afiiliatesignup.jsx +321 -0
  192. package/srcoman/TabexComponents/StaticPages/CartSlider/CartSlider.jsx +797 -0
  193. package/srcoman/TabexComponents/StaticPages/Categoriesdropdown/Categoriesdropdown.jsx +460 -0
  194. package/srcoman/TabexComponents/StaticPages/Checkout/Checkout copy.jsx +1306 -0
  195. package/srcoman/TabexComponents/StaticPages/Checkout/Checkout.jsx +1892 -0
  196. package/srcoman/TabexComponents/StaticPages/Checkout/Checkout10-1.jsx +1633 -0
  197. package/srcoman/TabexComponents/StaticPages/Checkout/Checkout26-9.jsx +1593 -0
  198. package/srcoman/TabexComponents/StaticPages/Checkout/Checkout9-9.jsx +1574 -0
  199. package/srcoman/TabexComponents/StaticPages/Filter/CollectionsFilterHorizontal.jsx +245 -0
  200. package/srcoman/TabexComponents/StaticPages/Filter/Filter copy 2.jsx +2888 -0
  201. package/srcoman/TabexComponents/StaticPages/Filter/Filter copy.jsx +1450 -0
  202. package/srcoman/TabexComponents/StaticPages/Filter/Filter.jsx +2771 -0
  203. package/srcoman/TabexComponents/StaticPages/Filter/Filter1-5.jsx +2624 -0
  204. package/srcoman/TabexComponents/StaticPages/Filter/Filter13-11.jsx +2758 -0
  205. package/srcoman/TabexComponents/StaticPages/Filter/Filter14-8.jsx +2753 -0
  206. package/srcoman/TabexComponents/StaticPages/Filter/Filter17-9.jsx +1495 -0
  207. package/srcoman/TabexComponents/StaticPages/Filter/VariantFilter.jsx +1271 -0
  208. package/srcoman/TabexComponents/StaticPages/InnerGroups/InnerGroups.jsx +62 -0
  209. package/srcoman/TabexComponents/StaticPages/Login/FacebookLoginButton.jsx +50 -0
  210. package/srcoman/TabexComponents/StaticPages/Login/GoogleLoginButton.jsx +35 -0
  211. package/srcoman/TabexComponents/StaticPages/Login/Login copy.jsx +1060 -0
  212. package/srcoman/TabexComponents/StaticPages/Login/Login.jsx +610 -0
  213. package/srcoman/TabexComponents/StaticPages/OrderSuccess/OrderSuccess.jsx +172 -0
  214. package/srcoman/TabexComponents/StaticPages/Ordershistory/Ordershistory.jsx +1584 -0
  215. package/srcoman/TabexComponents/StaticPages/Policies/Policies.jsx +291 -0
  216. package/srcoman/TabexComponents/StaticPages/PrivacyPolicy/PrivacyPolicy.jsx +194 -0
  217. package/srcoman/TabexComponents/StaticPages/Productinfo/Addreviewform.jsx +183 -0
  218. package/srcoman/TabexComponents/StaticPages/Productinfo/AddreviewformOriginal.jsx +128 -0
  219. package/srcoman/TabexComponents/StaticPages/Productinfo/Article_itemtype.jsx +255 -0
  220. package/srcoman/TabexComponents/StaticPages/Productinfo/DescriptionContent.jsx +176 -0
  221. package/srcoman/TabexComponents/StaticPages/Productinfo/ProductExtraFields.jsx +225 -0
  222. package/srcoman/TabexComponents/StaticPages/Productinfo/ProductExtras.jsx +92 -0
  223. package/srcoman/TabexComponents/StaticPages/Productinfo/ProductHeaderPricing.jsx +312 -0
  224. package/srcoman/TabexComponents/StaticPages/Productinfo/ProductReviews.jsx +235 -0
  225. package/srcoman/TabexComponents/StaticPages/Productinfo/Product_itemtype.jsx +1983 -0
  226. package/srcoman/TabexComponents/StaticPages/Productinfo/Product_itemtype10-1.jsx +1554 -0
  227. package/srcoman/TabexComponents/StaticPages/Productinfo/Product_itemtype3-11.jsx +1827 -0
  228. package/srcoman/TabexComponents/StaticPages/Productinfo/Product_itemtype31-3.jsx +1351 -0
  229. package/srcoman/TabexComponents/StaticPages/Productinfo/Product_itemtypeUpdated.jsx +1566 -0
  230. package/srcoman/TabexComponents/StaticPages/Productinfo/Productinfo.jsx +1946 -0
  231. package/srcoman/TabexComponents/StaticPages/Productinfo/Service_itemtype.jsx +1037 -0
  232. package/srcoman/TabexComponents/StaticPages/Productinfo/Serviceinfotabs.jsx +966 -0
  233. package/srcoman/TabexComponents/StaticPages/Productinfo/Variantoptions.jsx +632 -0
  234. package/srcoman/TabexComponents/StaticPages/Productinfo/Variantoptions21-9.jsx +324 -0
  235. package/srcoman/TabexComponents/StaticPages/Productinfo/staticroutersidenav.module.css +145 -0
  236. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Addreviewform.jsx +183 -0
  237. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/AddreviewformOriginal.jsx +128 -0
  238. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/DescriptionContent.jsx +140 -0
  239. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/ProductExtraFields.jsx +225 -0
  240. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/ProductHeaderPricing.jsx +310 -0
  241. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/ProductReviews.jsx +235 -0
  242. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype.jsx +1672 -0
  243. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype10-1.jsx +1554 -0
  244. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Product_itemtype31-3.jsx +1351 -0
  245. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Product_itemtypeUpdated.jsx +1566 -0
  246. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Productinfo.jsx +1804 -0
  247. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Service_itemtype.jsx +560 -0
  248. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Serviceinfotabs.jsx +919 -0
  249. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Variantoptions.jsx +597 -0
  250. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/Variantoptions21-9.jsx +324 -0
  251. package/srcoman/TabexComponents/StaticPages/Productinfo4-4/staticroutersidenav.module.css +145 -0
  252. package/srcoman/TabexComponents/StaticPages/RefundPolicy/RefundPolicy.jsx +194 -0
  253. package/srcoman/TabexComponents/StaticPages/Resetpassword/Resetpassword.jsx +338 -0
  254. package/srcoman/TabexComponents/StaticPages/Searchlist/Searchlist.jsx +359 -0
  255. package/srcoman/TabexComponents/StaticPages/ShippingPolicy/ShippingPolicy.jsx +113 -0
  256. package/srcoman/TabexComponents/StaticPages/Signup/CustomerAddressForm.jsx +277 -0
  257. package/srcoman/TabexComponents/StaticPages/Signup/CustomerInformationForm copy.jsx +1135 -0
  258. package/srcoman/TabexComponents/StaticPages/Signup/CustomerInformationForm.jsx +1364 -0
  259. package/srcoman/TabexComponents/StaticPages/Signup/Signup.jsx +199 -0
  260. package/srcoman/TabexComponents/StaticPages/Staticpagesrouter/Staticpagesrouter.jsx +292 -0
  261. package/srcoman/TabexComponents/StaticPages/TermsConditions/TermsConditions.jsx +113 -0
  262. package/srcoman/TabexComponents/StaticPages/VendorPage/VendorPage.jsx +162 -0
  263. package/srcoman/TabexComponents/StaticPages/Viewcart/Viewcart 10-10.jsx +765 -0
  264. package/srcoman/TabexComponents/StaticPages/Viewcart/Viewcart.jsx +786 -0
  265. package/srcoman/TabexComponents/StaticPages/Viewcart/Viewcart26-9.jsx +786 -0
  266. package/srcoman/TabexComponents/StaticPages/Viewcart/ViewcartOriginal.jsx +786 -0
  267. package/srcoman/TabexComponents/StaticPages/Viewcart/ViewcartUpdated.jsx +1425 -0
  268. package/srcoman/TabexComponents/StaticPages/Wishlist/Wishlist.jsx +844 -0
  269. package/srcoman/TabexComponents/StaticPages/Wishlist/Wishlist25-4.jsx +555 -0
  270. package/srcoman/TabexComponents/StaticPages/Wishlist/Wishlist26-9.jsx +555 -0
  271. package/srcoman/TabexComponents/StaticPages/Wishlist/WishlistOriginal.jsx +555 -0
  272. package/srcoman/TabexComponents/StaticPages/Wishlist/WishlistUpdated.jsx +815 -0
  273. package/srcoman/button.jsx +40 -0
  274. package/srcoman/index.jsx +334 -0
  275. package/srcoman/styles/Home.module.css +129 -0
  276. package/srcoman/styles/cards/Categorcycard_fullimage.module.css +14 -0
  277. package/srcoman/styles/cards/Categorycard_slidebgscaled.module.css +73 -0
  278. package/srcoman/styles/cards/Categorycard_withshapes.module.css +189 -0
  279. package/srcoman/styles/cards/ModernCardWithQuantityButton.module.css +30 -0
  280. package/srcoman/styles/cards/Productcard6.module.css +9 -0
  281. package/srcoman/styles/cards/Productccard_with_zoominonhover.module.css +51 -0
  282. package/srcoman/styles/cards/Prouductcard_with_zoomhover.module.css +61 -0
  283. package/srcoman/styles/cards/UserCardWithSocialMediaOnHover.module.css +65 -0
  284. package/srcoman/styles/cards/card23.module.css +60 -0
  285. package/srcoman/styles/cards/categorycard.module.css +84 -0
  286. package/srcoman/styles/cards/categorycard3.module.css +50 -0
  287. package/srcoman/styles/cards/categorycardwithtext.module.css +40 -0
  288. package/srcoman/styles/cards/generalCardsStyles.module.css +79 -0
  289. package/srcoman/styles/cards/productcard_animatedbuttons.module.css +139 -0
  290. package/srcoman/styles/cards/productcard_with_textonhover.module.css +18 -0
  291. package/srcoman/styles/cards/productcard_withtextonimage.module.css +0 -0
  292. package/srcoman/styles/cards/productccard_with_imageontopleft.module.css +85 -0
  293. package/srcoman/styles/general/bootstrap.css +4763 -0
  294. package/srcoman/styles/general/dropdown.css +206 -0
  295. package/srcoman/styles/general/editorbardropdown.module.css +94 -0
  296. package/srcoman/styles/general/filter.module.css +108 -0
  297. package/srcoman/styles/general/form.module.css +255 -0
  298. package/srcoman/styles/general/general.module.css +872 -0
  299. package/srcoman/styles/general/image-gallery.css +531 -0
  300. package/srcoman/styles/general/react-accessible-accordion.module.css +52 -0
  301. package/srcoman/styles/general/react-phone-input-2.module.css +927 -0
  302. package/srcoman/styles/general/scrollbtn.module.css +22 -0
  303. package/srcoman/styles/general/slick.module.css +166 -0
  304. package/srcoman/styles/general/tabs.module.css +119 -0
  305. package/srcoman/styles/general/workplaceeditor.module.css +328 -0
  306. package/srcoman/styles/globals.css +26 -0
  307. package/srcoman/styles/headers/CTAHeader.module.css +40 -0
  308. package/srcoman/styles/headers/CategoryFeaturingHeader.module.css +61 -0
  309. package/srcoman/styles/headers/Gotoheader.module.css +87 -0
  310. package/srcoman/styles/headers/Header7.module.css +50 -0
  311. package/srcoman/styles/headers/HeaderWithAdSlider.module.css +86 -0
  312. package/srcoman/styles/headers/HeaderWithSearchOnCenter.module.css +101 -0
  313. package/srcoman/styles/headers/HeaderWithUtilityBar.module.css +46 -0
  314. package/srcoman/styles/headers/Header_threesectionslogocentered.module.css +84 -0
  315. package/srcoman/styles/headers/NewHeader.module.css +101 -0
  316. package/srcoman/styles/headers/SearchFocusedHeader.module.css +62 -0
  317. package/srcoman/styles/headers/Sideheader.module.css +108 -0
  318. package/srcoman/styles/headers/Simpleheader.module.css +102 -0
  319. package/srcoman/styles/headers/classicheader.module.css +16 -0
  320. package/srcoman/styles/headers/classicheaderstyles.module.css +9 -0
  321. package/srcoman/styles/headers/dropdown.css +0 -0
  322. package/srcoman/styles/headers/header4.module.css +175 -0
  323. package/srcoman/styles/headers/header5.module.css +30 -0
  324. package/srcoman/styles/headers/header_contactinfo.module.css +53 -0
  325. package/srcoman/styles/headers/headerresturant.module.css +89 -0
  326. package/srcoman/styles/headers/modernheader.module.css +45 -0
  327. package/srcoman/styles/headers/stylishheader.module.css +24 -0
  328. package/srcoman/styles/headers/subheader.module.css +114 -0
  329. package/srcoman/styles/headers/threetieredheader.module.css +91 -0
  330. package/srcoman/styles/sections/BackgroundImageWithTopContent.css +4 -0
  331. package/srcoman/styles/sections/Backgroundimage1.module.css +17 -0
  332. package/srcoman/styles/sections/Backgroundimage_with_topcircle.module.css +28 -0
  333. package/srcoman/styles/sections/Freetext.module.css +18 -0
  334. package/srcoman/styles/sections/Section_with_rightbgcont.module.css +49 -0
  335. package/srcoman/styles/sections/Slideshow_with_rotatedsquare.module.css +35 -0
  336. package/srcoman/styles/sections/Slideshow_with_squarebg.module.css +39 -0
  337. package/srcoman/styles/staticpages/accordion.module.css +9 -0
  338. package/srcoman/styles/staticpages/cart.module.css +108 -0
  339. package/srcoman/styles/staticpages/dropdown.css +196 -0
  340. package/srcoman/styles/staticpages/filter.module.css +139 -0
  341. package/srcoman/styles/staticpages/image-gallery.css +481 -0
  342. package/srcoman/styles/staticpages/login.module.css +155 -0
  343. package/srcoman/styles/staticpages/productinfo.module.css +54 -0
  344. package/srcoman/styles/staticpages/shop.module.css +191 -0
  345. package/srcoman/styles/staticpages/signup.module.css +250 -0
  346. package/srcoman/styles/staticpages/staticroutersidenav.module.css +129 -0
  347. package/srcoman/styles/staticpages/viewcart.module.css +129 -0
  348. package/srcoman/styles/staticpages/wishlist.module.css +29 -0
@@ -0,0 +1,1983 @@
1
+ //productidprops
2
+ import React, { useEffect, useState, useRef } from 'react';
3
+ import productinfostyles from '../../../styles/staticpages/productinfo.module.css';
4
+ import ImageGallery from 'react-image-gallery';
5
+ import { CircularProgress } from 'react-cssfx-loading';
6
+ import '../../../styles/staticpages/image-gallery.css';
7
+ import { MdAddShoppingCart } from '@react-icons/all-files/md/MdAddShoppingCart';
8
+ import { IoBagHandleOutline } from '@react-icons/all-files/io5/IoBagHandleOutline';
9
+ import { BsBag } from '@react-icons/all-files/bs/BsBag';
10
+ import { CgShoppingBag } from '@react-icons/all-files/cg/CgShoppingBag';
11
+ import { FaRegHeart } from '@react-icons/all-files/fa/FaRegHeart';
12
+ import { FaHeart } from '@react-icons/all-files/fa/FaHeart';
13
+ import { FiShoppingBag } from '@react-icons/all-files/fi/FiShoppingBag';
14
+ import { FiShoppingCart } from '@react-icons/all-files/fi/FiShoppingCart';
15
+ import { AiFillStar } from '@react-icons/all-files/ai/AiFillStar';
16
+ import { AiOutlineStar } from '@react-icons/all-files/ai/AiOutlineStar';
17
+ import { FaPlus } from '@react-icons/all-files/fa/FaPlus';
18
+ import { FaMinus } from '@react-icons/all-files/fa/FaMinus';
19
+ import { FiBox } from '@react-icons/all-files/fi/FiBox';
20
+ import { RiArrowGoBackLine } from '@react-icons/all-files/ri/RiArrowGoBackLine';
21
+
22
+ import { Accordion, AccordionItem, AccordionItemHeading, AccordionItemButton, AccordionItemPanel, AccordionItemState } from 'react-accessible-accordion';
23
+ import {
24
+ FacebookShareButton,
25
+ TwitterShareButton,
26
+ WhatsappShareButton,
27
+ FacebookIcon,
28
+ TwitterIcon,
29
+ FacebookMessengerShareButton,
30
+ FacebookMessengerIcon,
31
+ WhatsappIcon,
32
+ LinkedinShareButton,
33
+ LinkedinIcon,
34
+ } from 'react-share';
35
+ import { IoMdClose } from '@react-icons/all-files/io/IoMdClose';
36
+ import { Imagekitimagecomp } from '../../../Imagekitconfig.jsx';
37
+ import { FiMinus } from '@react-icons/all-files/fi/FiMinus';
38
+ import { FiPlus } from '@react-icons/all-files/fi/FiPlus';
39
+ import ReactStars from 'react-rating-stars-component';
40
+ import { FiLayers } from '@react-icons/all-files/fi/FiLayers';
41
+ import Variantoptions from './Variantoptions.jsx';
42
+ import ProductExtras from './ProductExtras.jsx';
43
+ import ProductHeaderPricing from './ProductHeaderPricing.jsx';
44
+ import ProductExtraFields from './ProductExtraFields.jsx';
45
+ import DescriptionContent from './DescriptionContent.jsx';
46
+
47
+ const Product_itemtype = (props) => {
48
+ const lang = props.actions.lang;
49
+ const langdetect = props.actions.langdetect;
50
+ const srcfromprops = props.actions.srcfromprops;
51
+ const returnpolicyobj = props.actions.returnpolicyobj;
52
+ const productinfo_cssstyles = props.actions.productinfo_cssstyles;
53
+ const addtocartfunc = props.actions.addtocartfunc;
54
+ const selectproductoptionvalue = props.actions.selectproductoptionvalue;
55
+ const clearchoosenvaluesbutkeepcurrentvalue = props.actions.clearchoosenvaluesbutkeepcurrentvalue;
56
+ const productimagesarray = props.actions.productimagesarray;
57
+ const fetchProductInfoQueryContext = props.actions.fetchProductInfoQueryContext;
58
+ const sectionproperties = props.actions.sectionproperties;
59
+ const addtocardpayloadobj = props.actions.addtocardpayloadobj;
60
+ const setaddtocardpayloadobj = props.actions.setaddtocardpayloadobj;
61
+ const routingcountext = props.actions.routingcountext;
62
+ const AddtoCartMutationContext = props.actions.AddtoCartMutationContext;
63
+ const authdetailsContext = props.actions.authdetailsContext;
64
+ const variantsku = props.actions.variantsku;
65
+ const addtofavoritescontext = props.actions.addtofavoritescontext;
66
+ const variantindexcompleted = props.actions.variantindexcompleted;
67
+ const ProductInfoObj = props.actions.ProductInfoObj;
68
+ const NotificationManager = props.actions.NotificationManager;
69
+ const StaticPagesLinksContext = props.actions.StaticPagesLinksContext;
70
+ const getprice_discountpriceprops = props.actions.getprice_discountpriceprops;
71
+ const ikimagecredcontext = props.actions.ikimagecredcontext;
72
+ const currentshowingimageindex_pro = props.actions.currentshowingimageindex;
73
+ const StoreInfoprops = props.actions.StoreInfoprops;
74
+ const [currentshowingimageindex, setcurrentshowingimageindex] = useState(currentshowingimageindex_pro);
75
+ // const DescriptionContent = props.actions.DescriptionContent;
76
+ const [shareUrl, setshareUrl] = useState('');
77
+ const [title, settitle] = useState('');
78
+ const [item, setitem] = useState(fetchProductInfoQueryContext.data.data.productinfo);
79
+ const [totalprice, settotalprice] = useState('');
80
+ const [gallery, setGallery] = useState(null); // Store reference to the gallery
81
+ const toggleFullScreen = () => {
82
+ if (gallery) {
83
+ gallery.toggleFullScreen();
84
+ }
85
+ };
86
+ useEffect(() => {
87
+ var itemobj = fetchProductInfoQueryContext.data.data.productinfo;
88
+ if (stringIsEnglish(fetchProductInfoQueryContext.data.data.productinfo.name_en)) {
89
+ itemobj.titlelang = 'en';
90
+ } else {
91
+ itemobj.titlelang = 'ar';
92
+ }
93
+ if (stringIsEnglish(fetchProductInfoQueryContext.data.data.productinfo.description_en)) {
94
+ itemobj.decriptionlang = 'en';
95
+ } else {
96
+ itemobj.decriptionlang = 'ar';
97
+ }
98
+ setitem(itemobj);
99
+ settitle(fetchProductInfoQueryContext.data.data.productinfo.name_en);
100
+ setshareUrl('https://' + authdetailsContext.instinfo.instcred.instexternaldomain + '/productinform/' + fetchProductInfoQueryContext.data.data.productinfo.productid);
101
+ }, [props.itemprops]);
102
+
103
+ function stringIsEnglish(str) {
104
+ var titlelang = 'English';
105
+ var arabic = /[\u0600-\u06FF]/;
106
+ if (!arabic.test(str)) {
107
+ titlelang = true;
108
+ } else {
109
+ titlelang = false;
110
+ }
111
+ return titlelang;
112
+ }
113
+ const ShareButtonsContainer = () => {
114
+ return (
115
+ <div class="row m-0 w-100">
116
+ <div class="col-lg-12 d-flex justify-content-center flex-column align-items-center p-0">
117
+ <p
118
+ class="m-0 p-0"
119
+ style={{
120
+ fontWeight: sectionproperties.sharebtn_FontWeight,
121
+ color: sectionproperties.sharebtn_color,
122
+ fontSize: sectionproperties.sharebtn_fontSize + 'px',
123
+ }}
124
+ >
125
+ {langdetect == 'en' ? sectionproperties.sharebtn_contentEn : sectionproperties.sharebtn_contentAr}
126
+ </p>
127
+ <div className="Demo__container w-100 m-0 allcentered mt-3">
128
+ <div className="Demo__some-network ml-2 mr-2">
129
+ <FacebookShareButton url={shareUrl} quote={title} className="Demo__some-network__share-button">
130
+ <FacebookIcon size={40} round />
131
+ </FacebookShareButton>
132
+ </div>
133
+ {sectionproperties.shareviax == 'Show' && (
134
+ <div
135
+ className="Demo__some-network ml-2 mr-2"
136
+ style={{
137
+ width: '40px',
138
+ height: '40px',
139
+ }}
140
+ >
141
+ <TwitterShareButton url={shareUrl} title={title} className="Demo__some-network__share-button">
142
+ {/* <TwitterIcon size={40} round /> */}
143
+ <img
144
+ src={'https://tabex-co.com/storage/StaticImages/twitterxicon.png'}
145
+ style={{
146
+ width: '100%',
147
+ height: '100%',
148
+ objectFit: 'contain',
149
+ }}
150
+ />
151
+ </TwitterShareButton>
152
+ </div>
153
+ )}
154
+ <div className="Demo__some-network ml-2 mr-2">
155
+ <WhatsappShareButton url={shareUrl} title={title} separator=":: " className="Demo__some-network__share-button">
156
+ <WhatsappIcon size={40} round />
157
+ </WhatsappShareButton>
158
+ </div>
159
+ {sectionproperties.showsharelinkedin == 'Show' && (
160
+ <div className="Demo__some-network ml-2 mr-2">
161
+ <LinkedinShareButton url={shareUrl} title={title} separator=":: " className="Demo__some-network__share-button">
162
+ <LinkedinIcon size={40} round />
163
+ </LinkedinShareButton>
164
+ </div>
165
+ )}
166
+ {/* <div className="Demo__some-network ml-2 mr-2">
167
+ <FacebookMessengerShareButton url={shareUrl} title={title} separator=":: " className="Demo__some-network__share-button">
168
+ <FacebookMessengerIcon size={40} round />
169
+ </FacebookMessengerShareButton>
170
+ </div> */}
171
+ </div>
172
+ </div>
173
+ </div>
174
+ );
175
+ };
176
+ // {fetchProductInfoQueryContext.data.data.productinfo.hassale == 0
177
+ // ? parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2)
178
+ // : parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2)}
179
+ useEffect(() => {
180
+ var totalprice = '';
181
+ if (variantindexcompleted.length == 0 && fetchProductInfoQueryContext.data.data.productinfo.hassale == 0) {
182
+ totalprice = parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2);
183
+ } else if (variantindexcompleted.length == 0 && fetchProductInfoQueryContext.data.data.productinfo.hassale == 1) {
184
+ totalprice = parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2);
185
+ } else if (variantindexcompleted.length != 0 && fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.hassale == 1) {
186
+ totalprice = parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2);
187
+ } else {
188
+ totalprice = parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2);
189
+ }
190
+ settotalprice(totalprice);
191
+ setcurrentshowingimageindex(props.actions.currentshowingimageindex);
192
+ }, [variantindexcompleted]);
193
+ const ProductsSKUContainer = () => {
194
+ return (
195
+ <p class="m-0 p-0 d-flex justify-content-start">
196
+ <span
197
+ style={{
198
+ color: sectionproperties.skuColor,
199
+ fontWeight: sectionproperties.skuFontWeight,
200
+ fontSize: sectionproperties.skuFontSize + 'px',
201
+ textAlign: langdetect == 'en' ? 'left' : 'right',
202
+ }}
203
+ >
204
+ {langdetect == 'en' ? sectionproperties.skutitleEn : sectionproperties.skutitleAr}:{' '}
205
+ </span>
206
+ <span
207
+ class="ml-1 mr-1"
208
+ style={{
209
+ color: '#7e859b',
210
+ fontWeight: sectionproperties.skuSecondaryFontWeight,
211
+ fontSize: sectionproperties.skuFontSize + 'px',
212
+ textAlign: langdetect == 'en' ? 'left' : 'right',
213
+ }}
214
+ >
215
+ {/* asdsad {variantsku} */}
216
+ {sectionproperties.showvariantsku == 'Show' && variantsku != '' ? variantsku : fetchProductInfoQueryContext.data.data.productinfo.sku}
217
+ {/* {fetchProductInfoQueryContext.data.data.productinfo.sku} */}
218
+ </span>
219
+ </p>
220
+ );
221
+ };
222
+ return (
223
+ <div
224
+ className={sectionproperties.card_marginLeft != 0 ? ' row m-0 w-100 pl-lg-3 pr-lg-3 pl-md-4 pr-md-4 p-sm-0 ' : ' row m-0 w-100 p-sm-0 '}
225
+ style={{
226
+ paddingLeft: srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px') : 0,
227
+ paddingRight: srcfromprops == 'Productinfomodel' ? (langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px') : 0,
228
+ }}
229
+ >
230
+ <div class={' col-lg-12 p-0 '}>
231
+ <div
232
+ class={`${productinfo_cssstyles.cardcontainer}` + ' row ml-0 mr-0 w-100 pl-md-3 pr-md-3 px-1025-1 '}
233
+ style={{
234
+ minHeight: sectionproperties.height + 'vh',
235
+ // paddingLeft: srcfromprops == 'templatedraftrouter' ? 0 : langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px',
236
+ // paddingRight: srcfromprops == 'templatedraftrouter' ? 0 : langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px',
237
+ }}
238
+ >
239
+ {sectionproperties.gallerystyle == 'Style 2' && (
240
+ // scrollhorizontalwithscrollbarremove
241
+ <div class="w-100 scrollhorizontalwithscrollbar ">
242
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages?.length != 0 &&
243
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages.map((item, index) => {
244
+ return (
245
+ <div
246
+ class={' scrollhorizontalcard mx-2 '}
247
+ style={{
248
+ height: sectionproperties.image_height + 'px',
249
+ width: sectionproperties.image_width + 'px',
250
+ }}
251
+ >
252
+ <Imagekitimagecomp
253
+ urlEndpoint={ikimagecredcontext?.ikimageendpoint}
254
+ publicKey={ikimagecredcontext?.ikimagepublickey}
255
+ path={'/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + item.path}
256
+ style={{
257
+ width: '100%',
258
+ height: '100%',
259
+ objectFit: 'contain',
260
+ }}
261
+ loading="lazy"
262
+ />
263
+ </div>
264
+ );
265
+ })}
266
+ </div>
267
+ )}
268
+ {sectionproperties.gallerystyle == 'One Centered Image' && (
269
+ <div class="col-lg-12 allcentered">
270
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages?.length != 0 &&
271
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.productimages.map((item, index) => {
272
+ return (
273
+ <div
274
+ class={' mx-2 '}
275
+ style={{
276
+ height: sectionproperties.image_height + 'px',
277
+ width: sectionproperties.image_width + 'px',
278
+ }}
279
+ >
280
+ <Imagekitimagecomp
281
+ urlEndpoint={ikimagecredcontext?.ikimageendpoint}
282
+ publicKey={ikimagecredcontext?.ikimagepublickey}
283
+ path={'/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + item.path}
284
+ style={{
285
+ width: '100%',
286
+ height: '100%',
287
+ objectFit: 'contain',
288
+ }}
289
+ loading="lazy"
290
+ />
291
+ </div>
292
+ );
293
+ })}
294
+ </div>
295
+ )}
296
+ <div class="col-lg-12 p-0">
297
+ <div
298
+ class="row mx-0 w-100"
299
+ style={{
300
+ marginTop: sectionproperties.gallerystyle == 'Style 2' ? '3rem' : 0,
301
+ }}
302
+ >
303
+ <div
304
+ className={
305
+ sectionproperties.showfooterphonenumber == 'Hide' &&
306
+ sectionproperties.showfooteremail == 'Hide' &&
307
+ sectionproperties.showstoreinfo2 == 'Hide' &&
308
+ sectionproperties.showstoreinfo1 == 'Hide'
309
+ ? 'col-lg-12'
310
+ : sectionproperties.storeinfoposition == 'Below Information'
311
+ ? 'col-lg-12'
312
+ : langdetect == 'en'
313
+ ? 'col-lg-9 pl-0 mb-md-3 p-md-0'
314
+ : 'col-lg-9 pr-0 mb-md-3 p-md-0'
315
+ }
316
+ style={{
317
+ marginBottom: sectionproperties.evencols == 'Yes' ? '60px' : 0,
318
+ }}
319
+ >
320
+ <div className={'row m-0 w-100'}>
321
+ {sectionproperties.gallerystyle == 'Style 1' && (
322
+ <div
323
+ className={
324
+ sectionproperties.evencols == 'Yes'
325
+ ? productinfo_cssstyles.evencols + ' col-xl-6 col-lg-6 col-md-12 col-sm-12 mb-md-5 pb-md-5 pl-1 pr-1 evencols '
326
+ : 'col-xl-5 col-lg-5 col-md-12 col-sm-12 mb-md-5 pb-md-4 pl-1 pr-1'
327
+ }
328
+ >
329
+ {/* <div className="col-xl-6 col-lg-4 col-md-12 col-sm-12 mb-md-3 pb-md-4 pl-1 pr-1 evencols"> */}
330
+ <div
331
+ className={sectionproperties.maximizegalleryfullscreen == 'Yes' ? ' col-lg-12 p-0 maximize ' : 'col-lg-12 p-0'}
332
+ style={{
333
+ width: '100%',
334
+ // height: 'auto',
335
+ height: sectionproperties.evencols == 'Yes' ? '550px' : 'auto',
336
+ }}
337
+ >
338
+ {productimagesarray.length == 0 && (
339
+ <div
340
+ style={{
341
+ width: '100%',
342
+ height: '30vh',
343
+ background: '#eee',
344
+ borderRadius: 10,
345
+ }}
346
+ >
347
+ <i class="h-100 allcentered text-light">
348
+ <FiLayers size={26} />
349
+ </i>
350
+ </div>
351
+ )}
352
+ {productimagesarray.length != 0 && (
353
+ <div
354
+ class="w-100 d-block d-md-none"
355
+ style={{
356
+ // height: '500px',
357
+ height: sectionproperties.evencols == 'Yes' ? '550px' : '',
358
+ }}
359
+ >
360
+ <ImageGallery
361
+ items={productimagesarray}
362
+ thumbnailPosition={sectionproperties.thumbnailposition == 'Bottom' ? 'bottom' : 'left'}
363
+ showNav={true}
364
+ showPlayButton={false}
365
+ showFullscreenButton={sectionproperties.showgalleryfullscreenbtn == 'Yes' ? true : false}
366
+ startIndex={currentshowingimageindex}
367
+ onSlide={(d) => {
368
+ setcurrentshowingimageindex(d);
369
+ }}
370
+ ref={(el) => setGallery(el)}
371
+ onClick={toggleFullScreen}
372
+ />
373
+ </div>
374
+ )}
375
+ {productimagesarray.length != 0 && (
376
+ <div class="w-100 d-none d-md-block">
377
+ <ImageGallery
378
+ items={productimagesarray}
379
+ thumbnailPosition={'bottom'}
380
+ showNav={false}
381
+ showPlayButton={false}
382
+ showFullscreenButton={true}
383
+ startIndex={currentshowingimageindex}
384
+ onSlide={(d) => {
385
+ setcurrentshowingimageindex(d);
386
+ }}
387
+ />
388
+ </div>
389
+ )}
390
+ </div>
391
+ </div>
392
+ )}
393
+ <div
394
+ className={
395
+ sectionproperties.gallerystyle == 'Style 1'
396
+ ? sectionproperties.evencols == 'Yes'
397
+ ? langdetect == 'en'
398
+ ? 'col-xl-6 col-lg-6 col-md-12 col-sm-12 pl-4 pr-0 pl-md-0 pr-md-0 pt-md-5'
399
+ : 'col-xl-6 col-lg-6 col-md-12 col-sm-12 pl-0 pr-4 pl-md-0 pr-md-0 pt-md-5'
400
+ : langdetect == 'en'
401
+ ? 'col-xl-7 col-lg-7 col-md-12 col-sm-12 pl-4 pr-0 p-md-0'
402
+ : 'col-xl-7 col-lg-7 col-md-12 col-sm-12 pl-0 pr-4 p-md-0'
403
+ : 'col-xl-12 col-lg-12 col-md-12 col-sm-12 px-3 px-md-2'
404
+ }
405
+ // className={
406
+ // sectionproperties.gallerystyle == 'Style 1'
407
+ // ? langdetect == 'en'
408
+ // ? 'col-xl-6 col-lg-8 col-md-12 col-sm-12 pl-4 pr-0 p-md-0'
409
+ // : 'col-xl-6 col-lg-8 col-md-12 col-sm-12 pl-0 pr-4 p-md-0'
410
+ // : 'col-xl-12 col-lg-12 col-md-12 col-sm-12 px-3 px-md-2'
411
+ // }
412
+ >
413
+ <div className={sectionproperties.evencols == 'Yes' ? 'row m-0 w-100 mt-md-5' : 'row m-0 w-100'}>
414
+ {sectionproperties.showmeasurementunit == 'Show' && (
415
+ <div className={'col-lg-12 p-0 mb-1 d-flex justify-content-start align-items-center mb-1 mt-3'}>
416
+ <p
417
+ className={' m-0 p-0 wordbreak d-flex justify-content-start '}
418
+ style={{
419
+ textAlign: langdetect == 'en' ? 'left' : 'right',
420
+ fontWeight: 400,
421
+ color: sectionproperties.measurementunitcolor,
422
+ fontSize: sectionproperties.measurementunitfontsize + 'px',
423
+ }}
424
+ >
425
+ {fetchProductInfoQueryContext.data.data.productinfo.measurmentunit}
426
+ </p>
427
+ </div>
428
+ )}
429
+ {sectionproperties.quantityshow == 'Show' && (
430
+ <div class="col-lg-12 p-0 text-start">
431
+ <p
432
+ class="m-0 p-0"
433
+ style={{
434
+ fontSize: sectionproperties.quantityfontsize,
435
+ color: sectionproperties.quantitycolor,
436
+ fontWeight: sectionproperties.quantityfontweight,
437
+ }}
438
+ >
439
+ {langdetect == 'en' ? sectionproperties.qtytextinen : sectionproperties.qtytextinar}:{' '}
440
+ {fetchProductInfoQueryContext.data.data.productinfo.currentquantity}
441
+ </p>
442
+ </div>
443
+ )}
444
+ <div
445
+ className={
446
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.productcanrate == 1
447
+ ? 'col-lg-8 col-md-8 col-sm-8 p-0 mb-1 d-flex justify-content-start align-items-center'
448
+ : sectionproperties.btnposition == 'Top'
449
+ ? 'col-lg-8 col-md-8 col-sm-8 p-0 mb-1 d-flex justify-content-start align-items-center'
450
+ : sectionproperties.availabilitybtnposition == 'Top' && sectionproperties.show_availability == 'Show'
451
+ ? 'col-lg-8 col-md-8 col-sm-8 p-0 mb-1 d-flex justify-content-start align-items-center'
452
+ : 'col-lg-12 p-0 mb-1 d-flex justify-content-start align-items-center'
453
+ }
454
+ >
455
+ <p
456
+ className={
457
+ props.srcfromprops != 'templatedraftrouter'
458
+ ? `${productinfo_cssstyles.productname} ${productinfo_cssstyles.productnamehover}` +
459
+ ' m-0 p-0 wordbreak d-flex justify-content-start cursor-pointer font-sm-15 '
460
+ : `${productinfo_cssstyles.productname}` + ' m-0 p-0 wordbreak d-flex justify-content-start font-sm-15 '
461
+ }
462
+ onClick={() => {
463
+ if (props.srcfromprops != 'templatedraftrouter') {
464
+ routingcountext(StaticPagesLinksContext.productinfo, true, fetchProductInfoQueryContext.data.data.productinfo.productid);
465
+ }
466
+ }}
467
+ style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}
468
+ >
469
+ {langdetect == 'en' ? fetchProductInfoQueryContext.data.data.productinfo.name_en : fetchProductInfoQueryContext.data.data.productinfo.name_ar}
470
+ </p>
471
+ </div>
472
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productcanrate == 1 && sectionproperties.showrating == 'Show' && (
473
+ <div className="col-lg-4 col-md-4 col-sm-4 p-0 mb-1 d-flex justify-content-end align-items-center">
474
+ <ReactStars
475
+ count={5}
476
+ value={fetchProductInfoQueryContext?.data?.data?.productinfo?.productoverallrate}
477
+ edit={false}
478
+ size={18}
479
+ emptyIcon={<i className="far fa-star" style={{ color: '#FAB400' }}></i>}
480
+ halfIcon={<i className="fa fa-star-half-alt style={{ color: '#FAB400' }}"></i>}
481
+ filledIcon={<i className="fa fa-star" style={{ color: '#FAB400' }}></i>}
482
+ activeColor="#ffd700"
483
+ />
484
+ </div>
485
+ )}
486
+ <div className="col-lg-4 col-md-4 col-sm-4 p-0 mb-1 d-flex justify-content-end align-items-center">
487
+ {sectionproperties.availabilitybtnposition == 'Top' &&
488
+ sectionproperties.show_availability == 'Show' &&
489
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
490
+ <div
491
+ style={{
492
+ width: sectionproperties.availability_width + 'px',
493
+ height: sectionproperties.availability_height + 'px',
494
+ background:
495
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
496
+ ? sectionproperties.availability_availablebgcolor
497
+ : sectionproperties.availability_limitedbgcolor,
498
+ borderRadius: sectionproperties.availability_borderrradius + 'px',
499
+ border:
500
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
501
+ ? sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_availabletextcolor
502
+ : sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_limitedtextcolor,
503
+ justifyContent: sectionproperties.availabilitytextalignment == 'Centered' ? 'center' : 'start',
504
+ }}
505
+ className="d-flex align-items-center pl-3 pr-3 mx-2"
506
+ >
507
+ <p
508
+ className="m-0 p-0 font-weight-500 wordbreak"
509
+ style={{
510
+ color:
511
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
512
+ ? sectionproperties.availability_availabletextcolor
513
+ : sectionproperties.availability_limitedtextcolor,
514
+ fontSize: sectionproperties.availability_fontsize + 'px',
515
+ textAlign: sectionproperties.availabilitytextalignment == 'Centered' ? 'center' : langdetect == 'en' ? 'left' : 'right',
516
+ }}
517
+ >
518
+ <span className="ml-1 mr-1">
519
+ {fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit' ? lang.available : lang.limitedquantity}
520
+ </span>
521
+ </p>
522
+ </div>
523
+ )}
524
+ {sectionproperties.btnposition == 'Top' && sectionproperties.favBtnShow == 'Show' && (
525
+ <div
526
+ className={productinfo_cssstyles.wishlist_btn + ' d-flex justify-content-center align-items-center mb-sm-2 '}
527
+ onClick={() => {
528
+ addtofavoritescontext(fetchProductInfoQueryContext.data.data.productinfo.productid);
529
+ }}
530
+ style={{
531
+ background: fetchProductInfoQueryContext.data.data.productinfo.IsFavExists == true ? sectionproperties.activebgcolor : '',
532
+ }}
533
+ >
534
+ <i className="h-100 d-flex align-items-center justify-content-center">
535
+ {fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
536
+ <i className="h-100 d-flex align-items-center justify-content-center">
537
+ {sectionproperties.faviconshape == 'Star Shape' && (
538
+ <AiFillStar
539
+ size={sectionproperties.favBtnIconfontsize}
540
+ style={{
541
+ color: sectionproperties.activefaviconcolor,
542
+ }}
543
+ />
544
+ )}
545
+ {sectionproperties.faviconshape == 'Heart Shape' && (
546
+ <FaHeart
547
+ size={sectionproperties.favBtnIconfontsize}
548
+ style={{
549
+ color: sectionproperties.activefaviconcolor,
550
+ }}
551
+ />
552
+ )}
553
+ </i>
554
+ )}
555
+ {!fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
556
+ <i className="h-100 d-flex align-items-center justify-content-center">
557
+ {sectionproperties.faviconshape == 'Star Shape' && <AiOutlineStar size={sectionproperties.favBtnIconfontsize} />}
558
+ {sectionproperties.faviconshape == 'Heart Shape' && <FaRegHeart size={sectionproperties.favBtnIconfontsize} />}
559
+ </i>
560
+ )}
561
+ </i>
562
+ </div>
563
+ )}
564
+ </div>
565
+ {sectionproperties.showSKU == 'Show' &&
566
+ sectionproperties.productInformationType == 'Product/Service Information' &&
567
+ sectionproperties.skuposition == 'Top' && <div class={'col-lg-12 p-0 my-3 d-flex justify-content-start'}>{ProductsSKUContainer()}</div>}
568
+ {sectionproperties.featuresposition == 'Under Name' && sectionproperties.featurestyle == 'Table' && (
569
+ <div class="col-lg-12 text-start p-md-0">
570
+ <div class="row m-0 w-100">
571
+ <div class="col-lg-12 p-0 my-3">
572
+ <p
573
+ className="m-0 p-0"
574
+ style={{
575
+ color: sectionproperties.featurestitlecolor,
576
+ fontSize: sectionproperties.featurestitlefontsize + 'px',
577
+ fontWeight: 600,
578
+ }}
579
+ >
580
+ {langdetect == 'en' ? sectionproperties.featurestitleen : sectionproperties.featurestitlear}
581
+ </p>
582
+ </div>
583
+
584
+ <div className="col-lg-12 m-0 w-100 p-0">
585
+ <table className={'table tablevertical'}>
586
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productfeatures?.map((fitem, findex) => {
587
+ return (
588
+ <tr>
589
+ <th
590
+ style={{
591
+ textTransform: 'capitalize',
592
+ color: '#000',
593
+ textAlign: langdetect == 'en' ? 'left' : 'right',
594
+ }}
595
+ >
596
+ {langdetect == 'en' ? fitem?.name_en : fitem?.name_ar}
597
+ </th>
598
+ <td
599
+ style={{
600
+ textAlign: langdetect == 'en' ? 'left' : 'right',
601
+ }}
602
+ >
603
+ {langdetect == 'en' ? fitem?.value_en : fitem?.value_ar}
604
+ </td>
605
+ </tr>
606
+ );
607
+ })}
608
+ </table>
609
+ </div>
610
+ </div>
611
+ </div>
612
+ )}
613
+ {sectionproperties.defaultpricingposition == 'Under Name' && fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
614
+ <ProductHeaderPricing actions={props.actions} />
615
+ )}
616
+
617
+ {/* short desc */}
618
+ {/* un comment */}
619
+ {langdetect == 'en' &&
620
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_en != null &&
621
+ sectionproperties.descriptionstyle == 'Style 1' && (
622
+ <div class="col-lg-12 p-0">
623
+ <div class="col-lg-12 p-0 d-flex justify-content-start">
624
+ <p
625
+ className={'text-black m-0 p-0 wordbreak'}
626
+ style={{
627
+ textAlign: langdetect == 'en' ? 'left' : 'right',
628
+ }}
629
+ dangerouslySetInnerHTML={{
630
+ __html: fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_en,
631
+ }}
632
+ ></p>
633
+ </div>
634
+ </div>
635
+ )}
636
+ {/* short desc */}
637
+ {/* un comment */}
638
+ {langdetect == 'ar' &&
639
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_ar != null &&
640
+ sectionproperties.descriptionstyle == 'Style 1' && (
641
+ <div class="col-lg-12 p-0">
642
+ <div class="col-lg-12 p-0 d-flex justify-content-start">
643
+ <p
644
+ className={'text-black m-0 p-0 wordbreak'}
645
+ style={{
646
+ textAlign: langdetect == 'en' ? 'left' : 'right',
647
+ }}
648
+ dangerouslySetInnerHTML={{
649
+ __html: fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_ar,
650
+ }}
651
+ ></p>
652
+ </div>
653
+ </div>
654
+ )}
655
+
656
+ {/* {srcfromprops == 'templatdraftrouter' && (
657
+ <div className="col-lg-10 col-md-10 col-sm-10 p-0 mb-2 d-flex justify-content-start align-items-center">
658
+ <p className={`${productinfo_cssstyles.productname}` + ' m-0 p-0 wordbreak d-flex justify-content-start '}>
659
+ {langdetect == 'en' ? fetchProductInfoQueryContext.data.data.productinfo.name_en : fetchProductInfoQueryContext.data.data.productinfo.name_ar}
660
+ </p>
661
+ </div>
662
+ )} */}
663
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.vendorinfo != null && sectionproperties.showvendor == 'Show' && (
664
+ <div class="col-lg-12 p-0 d-flex justify-content-start mt-2 mb-2">
665
+ <p class="m-0 p-0" style={{ color: '#000' }}>
666
+ {langdetect == 'en' ? sectionproperties.vendortitleen : sectionproperties.vendortitlear}:{' '}
667
+ <span
668
+ style={{
669
+ fontWeight: 600,
670
+ }}
671
+ >
672
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.vendorinfo?.vendorname}
673
+ </span>
674
+ </p>
675
+ </div>
676
+ )}
677
+ {sectionproperties.showSKU == 'Show' &&
678
+ sectionproperties.productInformationType == 'Product/Service Information' &&
679
+ sectionproperties.skuposition == 'Bottom' && (
680
+ <div
681
+ class={
682
+ sectionproperties.deliverytimeshow == 'Show' && fetchProductInfoQueryContext?.data?.data?.productinfo?.deliverydatetext != null
683
+ ? 'col-lg-12 p-0 mb-2 d-flex justify-content-start'
684
+ : 'col-lg-12 p-0 mb-3 d-flex justify-content-start'
685
+ }
686
+ >
687
+ {ProductsSKUContainer()}
688
+ </div>
689
+ )}
690
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.currentquantity < 1 &&
691
+ sectionproperties.showoutofstock == 'Show' &&
692
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantavailtype == 'limit' &&
693
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.hasvariants == 0 && (
694
+ <div class="col-lg-12 p-0 d-flex justify-content-start mb-2">
695
+ <div class={`${productinfo_cssstyles.outstockbadge}` + ' allcentered '}>
696
+ <p class="m-0 p-0">{langdetect == 'en' ? sectionproperties.outstock_contenten : sectionproperties.outstock_contentar}</p>
697
+ </div>
698
+ </div>
699
+ )}
700
+ {sectionproperties.deliverytimeshow == 'Show' && fetchProductInfoQueryContext?.data?.data?.productinfo?.deliverydatetext != null && (
701
+ <div
702
+ class="mb-4 col-lg-12 allcentered"
703
+ style={{
704
+ width: '100%',
705
+ backgroundColor: sectionproperties.deliverytimecontainerBg,
706
+ paddingLeft: sectionproperties.deliverytimecontainerpaddinghorizontal + 'px',
707
+ paddingRight: sectionproperties.deliverytimecontainerpaddinghorizontal + 'px',
708
+ paddingTop: sectionproperties.deliverytimecontainerpaddingvertical + 'px',
709
+ paddingBottom: sectionproperties.deliverytimecontainerpaddingvertical + 'px',
710
+ border: sectionproperties.deliverytimecontainerborderwidth + 'px solid ' + sectionproperties.deliverytimecontainerbordercolor,
711
+ borderRadius: sectionproperties.deliverytimecontainerborderradius + 'px',
712
+ fontSize: sectionproperties.deliverytimecontainerfontsize + 'px',
713
+ fontWeight: sectionproperties.deliverytimecontainerfontWeight,
714
+ marginTop: 15,
715
+ }}
716
+ >
717
+ <p
718
+ class="m-0 p-0 "
719
+ style={{
720
+ textAlign: langdetect == 'en' ? 'left' : 'right',
721
+ color: sectionproperties.deliverytimecontainercolor,
722
+ }}
723
+ >
724
+ {sectionproperties.showdeliverytitle == 'Show' && (
725
+ <span>{langdetect == 'en' ? sectionproperties.deliverycontent_en : sectionproperties.deliverycontent_ar}: </span>
726
+ )}{' '}
727
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.deliverydatetext}
728
+ </p>
729
+ </div>
730
+ )}
731
+ {sectionproperties.defaultpricingposition != 'Under Name' && fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
732
+ <ProductHeaderPricing actions={props.actions} />
733
+ )}
734
+ {/* un comment */}
735
+ {sectionproperties.descriptionposition == 'Top' && sectionproperties.descriptionstyle == 'Style 1' && (
736
+ <div class="col-lg-12 p-0">
737
+ <div class="row m-0 w-100">
738
+ {sectionproperties.showshortdescription == 'Show' && (
739
+ <div class="col-lg-12 p-0 mb-2">
740
+ <p style={{ textAlign: langdetect == 'en' ? 'left' : 'right', color: sectionproperties.generaltext_fontColor }}>
741
+ {langdetect == 'en' ? 'Description' : 'التفاصيل'}
742
+ </p>
743
+ </div>
744
+ )}
745
+ <div class="col-lg-12 p-0">
746
+ <DescriptionContent actions={props.actions} srcfromprops={'undername'} />
747
+ </div>
748
+ </div>
749
+ </div>
750
+ )}
751
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.hasvariants == 1 && sectionproperties.productInformationType == 'Profile' && (
752
+ <div className="row m-0 w-100 d-flex align-items-start">
753
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productoptions?.map((item, index) => {
754
+ return (
755
+ <div className="col-lg-12 p-0 d-flex justify-content-start" style={{ position: 'relative' }}>
756
+ <div style={{ width: 2, height: '100%', background: sectionproperties.upperseparatorbgcolor, position: 'absolute', top: 7 }} />
757
+ <div
758
+ style={{
759
+ width: 10,
760
+ height: 10,
761
+ background: sectionproperties.upperseparatorsecondarybgcolor,
762
+ borderRadius: 100,
763
+ position: 'absolute',
764
+ top: 7,
765
+ left: langdetect == 'en' ? -4 : '',
766
+ right: langdetect == 'ar' ? -4 : '',
767
+ }}
768
+ />
769
+ <div
770
+ className="row m-0 w-100 d-flex align-items-start pb-3"
771
+ style={{
772
+ paddingLeft: langdetect == 'en' ? '1rem' : 0,
773
+ paddingRight: langdetect == 'ar' ? '1rem' : 0,
774
+ }}
775
+ >
776
+ <p
777
+ className={' m-0 p-0 wordbreak'}
778
+ style={{
779
+ color: sectionproperties.varianttitle_color,
780
+ fontWeight: sectionproperties.varianttitle_fontweight,
781
+ textTransform: sectionproperties.varianttitle_texttransform,
782
+ fontSize: sectionproperties.varianttitle_fontSize + 'px',
783
+ }}
784
+ >
785
+ {langdetect == 'en' ? item.optionname : item.optionname_ar}:
786
+ </p>
787
+ {item.optionvalues.map((optionvaluesitem, optionvaluesindex) => {
788
+ return (
789
+ <div
790
+ className={productinfostyles.variant_container + ' mr-2 variabttcontainer allcentered '}
791
+ style={{
792
+ backgroundColor:
793
+ sectionproperties.variantcontainer_bgcolortransparent == 'Transparent'
794
+ ? 'transparent'
795
+ : sectionproperties.variantcontainer_bgcolor,
796
+ minWidth:
797
+ sectionproperties.variantcontainer_bgcolortransparent == 'Transparent'
798
+ ? 'auto'
799
+ : sectionproperties.variantcontainer_minwidth + 'px',
800
+ height:
801
+ sectionproperties.variantcontainer_bgcolortransparent == 'Transparent'
802
+ ? 'auto'
803
+ : sectionproperties.variantcontainer_height + 'px',
804
+ borderRadius: sectionproperties.variantcontainer_borderBottomLeftRadius + 'px',
805
+ transform: 'none',
806
+ cursor: 'default',
807
+ }}
808
+ >
809
+ <p
810
+ className={'m-0 p-0 allcentered font-weight-500'}
811
+ style={{
812
+ color: sectionproperties.variantcontainer_color,
813
+ fontSize: sectionproperties.variantcontainer_fontSize + 'px',
814
+ }}
815
+ >
816
+ {langdetect == 'en' ? optionvaluesitem.valuename : optionvaluesitem.valuename_ar}
817
+ </p>
818
+ </div>
819
+ );
820
+ })}
821
+ </div>
822
+ </div>
823
+ );
824
+ })}
825
+ </div>
826
+ )}
827
+ <Variantoptions actions={props.actions} />
828
+ <ProductExtras actions={props.actions} />
829
+ {sectionproperties.showextrafield == 'Show' && <ProductExtraFields actions={props.actions} />}
830
+ {sectionproperties.gallerystyle != 'Style 1' && sectionproperties.prodCatShow == 'Show' && sectionproperties.descriptionposition != 'Top' && (
831
+ <DescriptionContent actions={props.actions} />
832
+ )}
833
+ {sectionproperties.quantitybtn_show == 'Show' && sectionproperties.cartBtnShow == 'Show' && (
834
+ <div className="col-lg-12 p-0 mb-3">
835
+ <hr className="mb-0 mt-2" />
836
+ </div>
837
+ )}
838
+ <div
839
+ className="col-lg-12 p-0 mb-3"
840
+ style={{
841
+ display: sectionproperties.quantitybtn_show == 'Hide' && sectionproperties.cartBtnShow == 'Hide' ? 'none' : 'flex',
842
+ }}
843
+ >
844
+ <div
845
+ className="row mx-0 w-100 d-flex align-items-center"
846
+ style={{
847
+ marginTop: sectionproperties.ctabuttnnsmarginvertical + 'px',
848
+ marginBottom: sectionproperties.ctabuttnnsmarginvertical + 'px',
849
+ }}
850
+ >
851
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 &&
852
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducthasquantitychange == 1 &&
853
+ sectionproperties.quantitybtn_show == 'Show' && (
854
+ <div className="col-lg-12 p-0 mb-2 d-flex justofy-content-start">
855
+ <p
856
+ className="m-0 p-0"
857
+ style={{
858
+ color: sectionproperties.generaltext_fontColor,
859
+ fontSize: sectionproperties.generaltext_fontSize + 'px',
860
+ textTransform: sectionproperties.generaltext_textTransform,
861
+ fontWeight: sectionproperties.generaltext_fontWeight,
862
+ }}
863
+ >
864
+ {langdetect == 'en' ? sectionproperties.quantitybtnen : sectionproperties.quantitybtnar}:
865
+ </p>
866
+ </div>
867
+ )}
868
+ <div class="col-lg-12 p-0">
869
+ <div
870
+ class="row m-0 w-100 d-flex align-items-center"
871
+ style={{
872
+ justifyContent: sectionproperties.cartbtncentered == 'Centered' ? 'center' : 'start',
873
+ }}
874
+ >
875
+ {sectionproperties.quantitybtn_show == 'Show' &&
876
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 &&
877
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducthasquantitychange == 1 && (
878
+ <button
879
+ className={` ${productinfo_cssstyles.quantitybtn}` + ' p-0 d-flex align-items-center justify-content-center mb-sm-2 '}
880
+ style={{
881
+ height: sectionproperties.quantitybtn_height + 'px',
882
+ width: sectionproperties.quantitybtn_width + 'px',
883
+ flexDirection: 'row',
884
+ direction: 'ltr',
885
+ }}
886
+ >
887
+ {sectionproperties.quantitybtneditable == 'No' && (
888
+ <span
889
+ className={`${productinfo_cssstyles.minus_quantitybtn_icon_container}` + ' m-1 '}
890
+ onClick={() => {
891
+ var quantitystepincrearse = 1;
892
+ // var finalquantity = 0;
893
+ var tempaddtocardpayloadobj = {
894
+ ...addtocardpayloadobj,
895
+ };
896
+ if (
897
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != undefined &&
898
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != null &&
899
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != 1 &&
900
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != ''
901
+ ) {
902
+ quantitystepincrearse = parseInt(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
903
+ }
904
+ var finalquantity = tempaddtocardpayloadobj.quantity - quantitystepincrearse;
905
+
906
+ if (finalquantity >= 0) {
907
+ tempaddtocardpayloadobj.quantity = finalquantity;
908
+ }
909
+ setaddtocardpayloadobj({
910
+ ...tempaddtocardpayloadobj,
911
+ });
912
+ // var tempaddtocardpayloadobj = {
913
+ // ...addtocardpayloadobj,
914
+ // };
915
+ // if (tempaddtocardpayloadobj.quantity > 0) {
916
+ // if (
917
+ // fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != undefined &&
918
+ // fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != null &&
919
+ // fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != 1 &&
920
+ // fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != ''
921
+ // ) {
922
+ // tempaddtocardpayloadobj.quantity =
923
+ // tempaddtocardpayloadobj.quantity -
924
+ // parseInt(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
925
+ // } else {
926
+ // tempaddtocardpayloadobj.quantity = tempaddtocardpayloadobj.quantity - 1;
927
+ // }
928
+ // // tempaddtocardpayloadobj.quantity = tempaddtocardpayloadobj.quantity - 1;
929
+ // }
930
+ // setaddtocardpayloadobj({
931
+ // ...tempaddtocardpayloadobj,
932
+ // });
933
+ }}
934
+ >
935
+ <i
936
+ className={sectionproperties.quantityiconstyle == 'Arrows' ? 'fa fa-chevron-down' : 'h-100 allcentered'}
937
+ style={{
938
+ fontSize: sectionproperties.remove_quantitybtn_textfontsize + 'px',
939
+ }}
940
+ >
941
+ {sectionproperties.quantityiconstyle == 'Plus/Minus' && (
942
+ <FiMinus size={sectionproperties.remove_quantitybtn_textfontsize} />
943
+ )}
944
+ </i>
945
+ </span>
946
+ )}
947
+ {sectionproperties.quantitybtneditable == 'No' && (
948
+ <span className={`${productinfo_cssstyles.quantitybtn_text}`}>{addtocardpayloadobj.quantity}</span>
949
+ )}
950
+ {sectionproperties.quantitybtneditable == 'No' && (
951
+ <span
952
+ className={`${productinfo_cssstyles.add_quantitybtn_icon_container}` + ' m-1 '}
953
+ onClick={() => {
954
+ var quantitystepincrearse = 1;
955
+ var tempaddtocardpayloadobj = {
956
+ ...addtocardpayloadobj,
957
+ };
958
+ if (
959
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != undefined &&
960
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != null &&
961
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != 1 &&
962
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse != ''
963
+ ) {
964
+ quantitystepincrearse = parseInt(fetchProductInfoQueryContext?.data?.data?.productinfo?.quantitystepincrearse);
965
+ }
966
+ tempaddtocardpayloadobj.quantity = tempaddtocardpayloadobj.quantity + quantitystepincrearse;
967
+
968
+ // else {
969
+ // tempaddtocardpayloadobj.quantity = tempaddtocardpayloadobj.quantity + 1;
970
+ // }
971
+ setaddtocardpayloadobj({
972
+ ...tempaddtocardpayloadobj,
973
+ });
974
+ }}
975
+ >
976
+ <i
977
+ className={sectionproperties.quantityiconstyle == 'Arrows' ? 'fa fa-chevron-up' : 'h-100 allcentered'}
978
+ // className="fa fa-chevron-up"
979
+ style={{
980
+ fontSize: sectionproperties.add_quantitybtn_textfontsize + 'px',
981
+ }}
982
+ >
983
+ {sectionproperties.quantityiconstyle == 'Plus/Minus' && (
984
+ <FiPlus size={sectionproperties.add_quantitybtn_textfontsize} />
985
+ )}
986
+ </i>
987
+ </span>
988
+ )}
989
+
990
+ {sectionproperties.quantitybtneditable == 'Yes' && (
991
+ <input
992
+ type="number"
993
+ style={{
994
+ width: 100,
995
+ height: 40,
996
+ background: 'transparent',
997
+ fontWeight: sectionproperties.quantitybtn_textfontweight,
998
+ color: sectionproperties.quantitybtn_textcolor,
999
+ fontSize: sectionproperties.quantitybtn_textfontsize + 'px',
1000
+ textAlign: 'center',
1001
+ }}
1002
+ value={addtocardpayloadobj.quantity}
1003
+ onChange={(event) => {
1004
+ if (
1005
+ event.target.value == NaN ||
1006
+ event.target.value == undefined ||
1007
+ event.target.value == null ||
1008
+ event.target.value == ''
1009
+ ) {
1010
+ var tempaddtocardpayloadobj = {
1011
+ ...addtocardpayloadobj,
1012
+ };
1013
+ tempaddtocardpayloadobj.quantity = 1;
1014
+ setaddtocardpayloadobj({
1015
+ ...tempaddtocardpayloadobj,
1016
+ });
1017
+ } else {
1018
+ var tempaddtocardpayloadobj = {
1019
+ ...addtocardpayloadobj,
1020
+ };
1021
+ tempaddtocardpayloadobj.quantity = parseInt(event.target.value);
1022
+ setaddtocardpayloadobj({
1023
+ ...tempaddtocardpayloadobj,
1024
+ });
1025
+ }
1026
+ }}
1027
+ />
1028
+ )}
1029
+ </button>
1030
+ )}
1031
+ {sectionproperties.featuresposition != 'Under Name' &&
1032
+ sectionproperties.featuresposition == 'Under Description' &&
1033
+ sectionproperties.featurestyle != 'Table' && (
1034
+ <div class="col-lg-12 text-start p-md-0">
1035
+ <div className="row m-0 w-100">
1036
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productfeatures?.map((fitem, findex) => {
1037
+ return (
1038
+ <div class={' col-md-12 p-0 mb-3 mt-2 col-lg-' + sectionproperties.featuresnumcols}>
1039
+ <div class="row m-0 w-100 text-start">
1040
+ <div class="col-lg-12 text-start mb-3 text-uppercase p-0">
1041
+ {/* {fitem?.name_en == 'support level' && ( */}
1042
+ {/* <img
1043
+ class={langdetect == 'en' ? 'mr-2' : 'ml-2'}
1044
+ src={fitem?.feature_image_url}
1045
+ style={{
1046
+ width: '20px',
1047
+ }}
1048
+ /> */}
1049
+ {/* )} */}
1050
+ <div
1051
+ style={{
1052
+ width: '20px',
1053
+ }}
1054
+ class={langdetect == 'en' ? 'mr-2' : 'ml-2'}
1055
+ >
1056
+ <Imagekitimagecomp
1057
+ urlEndpoint={ikimagecredcontext?.ikimageendpoint}
1058
+ publicKey={ikimagecredcontext?.ikimagepublickey}
1059
+ path={fitem?.feature_image_url}
1060
+ loading="lazy"
1061
+ style={{
1062
+ maxWidth: '100%',
1063
+ maxHeight: '100%',
1064
+ }}
1065
+ />
1066
+ </div>
1067
+ <p
1068
+ class="m-0 p-0"
1069
+ style={{
1070
+ color: sectionproperties.featurecolor,
1071
+ fontWeight: sectionproperties.featurefontweight,
1072
+ fontSize: sectionproperties.featurefontsize,
1073
+ }}
1074
+ >
1075
+ {langdetect == 'en' ? fitem?.name_en : fitem?.name_ar}
1076
+ </p>
1077
+ </div>
1078
+
1079
+ <div class="col-lg-12 text-start text-capitalize">
1080
+ <p
1081
+ class="m-0 p-0"
1082
+ style={{
1083
+ color: sectionproperties.featurevaluecolor,
1084
+ fontWeight: sectionproperties.featurevaluefontweight,
1085
+ fontSize: sectionproperties.featurevaluefontsize,
1086
+ }}
1087
+ >
1088
+ {langdetect == 'en' ? fitem?.value_en : fitem?.value_ar}
1089
+ </p>
1090
+ </div>
1091
+ </div>
1092
+ </div>
1093
+ );
1094
+ })}
1095
+ </div>
1096
+ </div>
1097
+ )}
1098
+ {sectionproperties.cartbtnalone == 'Besides Other Buttons' &&
1099
+ sectionproperties.cartBtnShow == 'Show' &&
1100
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
1101
+ <button
1102
+ className={`${productinfo_cssstyles.cart_btn} ` + ' ml-2 mr-2 d-flex align-items-center justify-content-center mb-sm-2 '}
1103
+ onClick={() => {
1104
+ if (fetchProductInfoQueryContext.data.data.productinfo.product_calltoaction == 'Call') {
1105
+ window.open('tel:' + fetchProductInfoQueryContext.data.data.productinfo?.product_phonenumber, '_blank');
1106
+ } else {
1107
+ if (
1108
+ fetchProductInfoQueryContext.data.data.productinfo.maximumproductquant >= addtocardpayloadobj.quantity &&
1109
+ fetchProductInfoQueryContext.data.data.productinfo.minimumproductquant <= addtocardpayloadobj.quantity
1110
+ ) {
1111
+ addtocartfunc();
1112
+ } else {
1113
+ NotificationManager.warning(
1114
+ '',
1115
+ lang.maximum +
1116
+ ': ' +
1117
+ fetchProductInfoQueryContext.data.data.productinfo.maximumproductquant +
1118
+ ', ' +
1119
+ lang.minimum +
1120
+ ': ' +
1121
+ fetchProductInfoQueryContext.data.data.productinfo.minimumproductquant,
1122
+ );
1123
+ }
1124
+ }
1125
+ }}
1126
+ disabled={AddtoCartMutationContext.isLoading == true ? true : false}
1127
+ >
1128
+ {!AddtoCartMutationContext.isLoading && (
1129
+ <span className={' d-flex align-items-center justify-content-center '}>
1130
+ <i
1131
+ className={
1132
+ langdetect == 'en'
1133
+ ? 'h-100 d-flex align-items-center justify-content-center mr-2'
1134
+ : 'h-100 d-flex align-items-center justify-content-center ml-2'
1135
+ }
1136
+ >
1137
+ {sectionproperties.carticonstyle == 'Shopping bag 1' && (
1138
+ <FiShoppingBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1139
+ )}
1140
+ {sectionproperties.carticonstyle == 'Shopping bag 2' && (
1141
+ <CgShoppingBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1142
+ )}
1143
+ {sectionproperties.carticonstyle == 'Shopping bag 3' && (
1144
+ <BsBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1145
+ )}
1146
+ {sectionproperties.carticonstyle == 'Shopping bag 4' && (
1147
+ <IoBagHandleOutline className="" size={sectionproperties.cartBtn_iconFontSize} />
1148
+ )}
1149
+ {sectionproperties.carticonstyle == 'Shopping cart 1' && (
1150
+ <FiShoppingCart className="" size={sectionproperties.cartBtn_iconFontSize} />
1151
+ )}
1152
+ {sectionproperties.carticonstyle == 'Shopping cart 2' && (
1153
+ <MdAddShoppingCart size={sectionproperties.cartBtn_iconFontSize} />
1154
+ )}
1155
+ </i>
1156
+
1157
+ {/* {langdetect == 'en' ? sectionproperties.cartBtnContentenglish : sectionproperties.cartBtnContentarabic} */}
1158
+ {langdetect == 'en'
1159
+ ? fetchProductInfoQueryContext?.data?.data?.productinfo?.productactionbuttontext_en
1160
+ : fetchProductInfoQueryContext?.data?.data?.productinfo?.productactionbuttontext_ar}
1161
+ </span>
1162
+ )}
1163
+ {AddtoCartMutationContext.isLoading && (
1164
+ <div className={' d-flex align-items-center justify-content-center '}>
1165
+ <CircularProgress color={sectionproperties.cartBtnTextcolor} width="20px" height="20px" duration="1s" />
1166
+ </div>
1167
+ )}
1168
+ </button>
1169
+ )}
1170
+ {sectionproperties.btnposition == 'Bottom' && sectionproperties.favBtnShow == 'Show' && (
1171
+ <div
1172
+ className={productinfo_cssstyles.wishlist_btn + ' d-flex justify-content-center align-items-center mb-sm-2 '}
1173
+ onClick={() => {
1174
+ addtofavoritescontext(fetchProductInfoQueryContext.data.data.productinfo.productid);
1175
+ }}
1176
+ style={{
1177
+ background: fetchProductInfoQueryContext.data.data.productinfo.IsFavExists == true ? sectionproperties.activebgcolor : '',
1178
+ }}
1179
+ >
1180
+ <i className="h-100 d-flex align-items-center justify-content-center">
1181
+ {fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
1182
+ <i className="h-100 d-flex align-items-center justify-content-center">
1183
+ {sectionproperties.faviconshape == 'Star Shape' && (
1184
+ <AiFillStar
1185
+ size={sectionproperties.favBtnIconfontsize}
1186
+ style={{
1187
+ color: sectionproperties.activefaviconcolor,
1188
+ }}
1189
+ />
1190
+ )}
1191
+ {sectionproperties.faviconshape == 'Heart Shape' && (
1192
+ <FaHeart
1193
+ size={sectionproperties.favBtnIconfontsize}
1194
+ style={{
1195
+ color: sectionproperties.activefaviconcolor,
1196
+ }}
1197
+ />
1198
+ )}
1199
+ </i>
1200
+ )}
1201
+ {!fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
1202
+ <i className="h-100 d-flex align-items-center justify-content-center">
1203
+ {sectionproperties.faviconshape == 'Star Shape' && <AiOutlineStar size={sectionproperties.favBtnIconfontsize} />}
1204
+ {sectionproperties.faviconshape == 'Heart Shape' && <FaRegHeart size={sectionproperties.favBtnIconfontsize} />}
1205
+ </i>
1206
+ )}
1207
+ </i>
1208
+ {!fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && sectionproperties.favBtnTextfontsize != 0 && (
1209
+ <p
1210
+ class="m-0 p-0"
1211
+ style={{
1212
+ fontSize: sectionproperties.favBtnTextfontsize + 'px',
1213
+ }}
1214
+ >
1215
+ {langdetect == 'en' ? sectionproperties.favbtncontent_en : sectionproperties.favbtncontent_ar}
1216
+ </p>
1217
+ )}
1218
+ {fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && sectionproperties.favBtnTextfontsize != 0 && (
1219
+ <p
1220
+ class="m-0 p-0"
1221
+ style={{
1222
+ fontSize: sectionproperties.favBtnTextfontsize + 'px',
1223
+ }}
1224
+ >
1225
+ {langdetect == 'en' ? sectionproperties.favbtnaddedcontent_en : sectionproperties.favbtnaddedcontent_ar}
1226
+ </p>
1227
+ )}
1228
+ </div>
1229
+ )}
1230
+ </div>
1231
+ {sectionproperties.cartbtnalone == 'Alone' &&
1232
+ sectionproperties.cartBtnShow == 'Show' &&
1233
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
1234
+ <div class="row m-0 w-100 mt-3" style={{ overflow: 'hidden' }}>
1235
+ <button
1236
+ className={`${productinfo_cssstyles.cart_btn} ` + ' d-flex align-items-center justify-content-center mb-sm-2 '}
1237
+ style={{
1238
+ width: sectionproperties.cartBtnWidth + '%',
1239
+ }}
1240
+ onClick={() => {
1241
+ if (fetchProductInfoQueryContext.data.data.productinfo.product_calltoaction == 'Call') {
1242
+ window.open('tel:' + fetchProductInfoQueryContext.data.data.productinfo?.product_phonenumber, '_blank');
1243
+ } else {
1244
+ if (
1245
+ fetchProductInfoQueryContext.data.data.productinfo.maximumproductquant >= addtocardpayloadobj.quantity &&
1246
+ fetchProductInfoQueryContext.data.data.productinfo.minimumproductquant <= addtocardpayloadobj.quantity
1247
+ ) {
1248
+ addtocartfunc();
1249
+ } else {
1250
+ NotificationManager.warning(
1251
+ '',
1252
+ lang.maximum +
1253
+ ': ' +
1254
+ fetchProductInfoQueryContext.data.data.productinfo.maximumproductquant +
1255
+ ', ' +
1256
+ lang.minimum +
1257
+ ': ' +
1258
+ fetchProductInfoQueryContext.data.data.productinfo.minimumproductquant,
1259
+ );
1260
+ }
1261
+ }
1262
+ }}
1263
+ disabled={AddtoCartMutationContext.isLoading == true ? true : false}
1264
+ >
1265
+ {!AddtoCartMutationContext.isLoading && (
1266
+ <span className={' d-flex align-items-center justify-content-center '}>
1267
+ <i
1268
+ className={
1269
+ langdetect == 'en'
1270
+ ? 'h-100 d-flex align-items-center justify-content-center mr-2'
1271
+ : 'h-100 d-flex align-items-center justify-content-center ml-2'
1272
+ }
1273
+ >
1274
+ {sectionproperties.carticonstyle == 'Shopping bag 1' && (
1275
+ <FiShoppingBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1276
+ )}
1277
+ {sectionproperties.carticonstyle == 'Shopping bag 2' && (
1278
+ <CgShoppingBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1279
+ )}
1280
+ {sectionproperties.carticonstyle == 'Shopping bag 3' && (
1281
+ <BsBag className="" size={sectionproperties.cartBtn_iconFontSize} />
1282
+ )}
1283
+ {sectionproperties.carticonstyle == 'Shopping bag 4' && (
1284
+ <IoBagHandleOutline className="" size={sectionproperties.cartBtn_iconFontSize} />
1285
+ )}
1286
+ {sectionproperties.carticonstyle == 'Shopping cart 1' && (
1287
+ <FiShoppingCart className="" size={sectionproperties.cartBtn_iconFontSize} />
1288
+ )}
1289
+ {sectionproperties.carticonstyle == 'Shopping cart 2' && (
1290
+ <MdAddShoppingCart size={sectionproperties.cartBtn_iconFontSize} />
1291
+ )}
1292
+ </i>
1293
+
1294
+ {langdetect == 'en'
1295
+ ? fetchProductInfoQueryContext?.data?.data?.productinfo?.productactionbuttontext_en
1296
+ : fetchProductInfoQueryContext?.data?.data?.productinfo?.productactionbuttontext_ar}
1297
+ {/* {langdetect == 'en' ? sectionproperties.cartBtnContentenglish : sectionproperties.cartBtnContentarabic} */}
1298
+ </span>
1299
+ )}
1300
+ {AddtoCartMutationContext.isLoading && (
1301
+ <div className={' d-flex align-items-center justify-content-center '}>
1302
+ <CircularProgress color={sectionproperties.cartBtnTextcolor} width="20px" height="20px" duration="1s" />
1303
+ </div>
1304
+ )}
1305
+ </button>
1306
+ {sectionproperties.btnposition == 'Besides Cart Button' && sectionproperties.favBtnShow == 'Show' && (
1307
+ <div
1308
+ className={productinfo_cssstyles.wishlist_btn + ' d-flex justify-content-center align-items-center mb-sm-2 mx-3 '}
1309
+ onClick={() => {
1310
+ addtofavoritescontext(fetchProductInfoQueryContext.data.data.productinfo.productid);
1311
+ }}
1312
+ style={{
1313
+ background:
1314
+ fetchProductInfoQueryContext.data.data.productinfo.IsFavExists == true ? sectionproperties.activebgcolor : '',
1315
+ }}
1316
+ >
1317
+ <i className="h-100 d-flex align-items-center justify-content-center">
1318
+ {fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
1319
+ <i className="h-100 d-flex align-items-center justify-content-center">
1320
+ {sectionproperties.faviconshape == 'Star Shape' && (
1321
+ <AiFillStar
1322
+ size={sectionproperties.favBtnIconfontsize}
1323
+ style={{
1324
+ color: sectionproperties.activefaviconcolor,
1325
+ }}
1326
+ />
1327
+ )}
1328
+ {sectionproperties.faviconshape == 'Heart Shape' && (
1329
+ <FaHeart
1330
+ size={sectionproperties.favBtnIconfontsize}
1331
+ style={{
1332
+ color: sectionproperties.activefaviconcolor,
1333
+ }}
1334
+ />
1335
+ )}
1336
+ </i>
1337
+ )}
1338
+ {!fetchProductInfoQueryContext.data.data.productinfo.IsFavExists && (
1339
+ <i className="h-100 d-flex align-items-center justify-content-center">
1340
+ {sectionproperties.faviconshape == 'Star Shape' && (
1341
+ <AiOutlineStar size={sectionproperties.favBtnIconfontsize} />
1342
+ )}
1343
+ {sectionproperties.faviconshape == 'Heart Shape' && <FaRegHeart size={sectionproperties.favBtnIconfontsize} />}
1344
+ </i>
1345
+ )}
1346
+ </i>
1347
+ </div>
1348
+ )}
1349
+ </div>
1350
+ )}
1351
+ {sectionproperties.cartbtnalone == 'Alone' &&
1352
+ sectionproperties.showbuynowbtn == 'Show' &&
1353
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
1354
+ <div class="row m-0 w-100 mt-3" style={{ overflow: 'hidden' }}>
1355
+ <button
1356
+ className={`${productinfo_cssstyles.cart_btn} ` + ' d-flex align-items-center justify-content-center mb-sm-2 '}
1357
+ style={{
1358
+ width: sectionproperties.cartBtnWidth + '%',
1359
+ }}
1360
+ onClick={() => {
1361
+ addtocartfunc('forcetocheckout');
1362
+ }}
1363
+ disabled={AddtoCartMutationContext.isLoading == true ? true : false}
1364
+ >
1365
+ {!AddtoCartMutationContext.isLoading && (
1366
+ <span className={' d-flex align-items-center justify-content-center '}>
1367
+ {langdetect == 'en' ? 'Buy Now' : 'إشترى الان'}
1368
+ </span>
1369
+ )}
1370
+ {AddtoCartMutationContext.isLoading && (
1371
+ <div className={' d-flex align-items-center justify-content-center '}>
1372
+ <CircularProgress color={sectionproperties.cartBtnTextcolor} width="20px" height="20px" duration="1s" />
1373
+ </div>
1374
+ )}
1375
+ </button>
1376
+ </div>
1377
+ )}
1378
+ </div>
1379
+ </div>
1380
+ </div>
1381
+ {sectionproperties.descriptionstyle == 'Style 2' && (
1382
+ <div class="col-lg-12 p-md-0">
1383
+ <hr class="my-3" />
1384
+ </div>
1385
+ )}
1386
+ {sectionproperties.featuresposition != 'Under Name' &&
1387
+ sectionproperties.featuresposition != 'Under Description' &&
1388
+ sectionproperties.featurestyle != 'Table' && (
1389
+ <div class="col-lg-12 text-start p-md-0">
1390
+ <div className="row m-0 w-100">
1391
+ {fetchProductInfoQueryContext?.data?.data?.productinfo?.productfeatures?.map((fitem, findex) => {
1392
+ return (
1393
+ <div class={' col-md-12 p-0 mb-3 mt-2 col-lg-' + sectionproperties.featuresnumcols}>
1394
+ <div class="row m-0 w-100 text-start">
1395
+ <div class="col-lg-12 text-start mb-3 text-uppercase p-0">
1396
+ {/* {fitem?.name_en == 'support level' && ( */}
1397
+ {/* <img
1398
+ class={langdetect == 'en' ? 'mr-2' : 'ml-2'}
1399
+ src={fitem?.feature_image_url}
1400
+ style={{
1401
+ width: '20px',
1402
+ }}
1403
+ /> */}
1404
+ {/* )} */}
1405
+ <div
1406
+ style={{
1407
+ width: '20px',
1408
+ }}
1409
+ class={langdetect == 'en' ? 'mr-2' : 'ml-2'}
1410
+ >
1411
+ <Imagekitimagecomp
1412
+ urlEndpoint={ikimagecredcontext?.ikimageendpoint}
1413
+ publicKey={ikimagecredcontext?.ikimagepublickey}
1414
+ path={fitem?.feature_image_url}
1415
+ loading="lazy"
1416
+ style={{
1417
+ maxWidth: '100%',
1418
+ maxHeight: '100%',
1419
+ }}
1420
+ />
1421
+ </div>
1422
+ <p
1423
+ class="m-0 p-0"
1424
+ style={{
1425
+ color: sectionproperties.featurecolor,
1426
+ fontWeight: sectionproperties.featurefontweight,
1427
+ fontSize: sectionproperties.featurefontsize,
1428
+ }}
1429
+ >
1430
+ {langdetect == 'en' ? fitem?.name_en : fitem?.name_ar}
1431
+ </p>
1432
+ </div>
1433
+
1434
+ <div class="col-lg-12 text-start text-capitalize">
1435
+ <p
1436
+ class="m-0 p-0"
1437
+ style={{
1438
+ color: sectionproperties.featurevaluecolor,
1439
+ fontWeight: sectionproperties.featurevaluefontweight,
1440
+ fontSize: sectionproperties.featurevaluefontsize,
1441
+ }}
1442
+ >
1443
+ {langdetect == 'en' ? fitem?.value_en : fitem?.value_ar}
1444
+ </p>
1445
+ </div>
1446
+ </div>
1447
+ </div>
1448
+ );
1449
+ })}
1450
+ </div>
1451
+ </div>
1452
+ )}
1453
+ {/* long description collap */}
1454
+ {sectionproperties.descriptionstyle == 'Style 2' && (
1455
+ <div class="col-lg-12 col-md-12 p-md-0 mt-3">
1456
+ <Accordion allowMultipleExpanded={true} allowZeroExpanded={true}>
1457
+ <AccordionItem>
1458
+ <AccordionItemHeading>
1459
+ <AccordionItemButton>
1460
+ <div class="row m-0 w-100">
1461
+ <div className="col-lg-10 col-md-10 col-sm-10 p-0 d-flex align-items-center justify-content-start">
1462
+ <p
1463
+ class="m-0 p-0"
1464
+ style={{
1465
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1466
+ fontWeight: sectionproperties.prodCatFontWeight,
1467
+ color: sectionproperties.prodCatColor,
1468
+ fontSize: sectionproperties.prodCatFontSize + 'px',
1469
+ }}
1470
+ >
1471
+ {langdetect == 'en' ? sectionproperties.descriptionContentEn : sectionproperties.descriptionContentAr}
1472
+ </p>
1473
+ </div>
1474
+ <div className="col-lg-2 col-md-2 col-sm-2 p-0">
1475
+ <AccordionItemState>
1476
+ {(state) => {
1477
+ if (state.expanded == true) {
1478
+ return (
1479
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1480
+ <FaMinus color={sectionproperties.prodCatColor} />
1481
+ </i>
1482
+ );
1483
+ } else {
1484
+ return (
1485
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1486
+ <FaPlus color={sectionproperties.prodCatColor} />
1487
+ </i>
1488
+ );
1489
+ }
1490
+ }}
1491
+ </AccordionItemState>
1492
+ </div>
1493
+ </div>
1494
+ </AccordionItemButton>
1495
+ </AccordionItemHeading>
1496
+ <AccordionItemPanel className="p-0">
1497
+ <div class="col-lg-12 p-0 mt-3">
1498
+ <DescriptionContent actions={props.actions} srcfromprops={'collap'} />
1499
+ </div>
1500
+ </AccordionItemPanel>
1501
+ </AccordionItem>
1502
+ </Accordion>
1503
+ </div>
1504
+ )}
1505
+ {sectionproperties.descriptionstyle == 'Style 2' && (
1506
+ <div class="col-lg-12 col-md-12 my-3 p-md-0">
1507
+ <hr class="m-0" />
1508
+ </div>
1509
+ )}
1510
+ {/* short desc collap */}
1511
+
1512
+ {sectionproperties.descriptionstyle == 'Style 2' && sectionproperties.showshortdescription == 'Show' && (
1513
+ <div class="col-lg-12 col-md-12 p-md-0">
1514
+ <Accordion allowMultipleExpanded={true} allowZeroExpanded={true}>
1515
+ <AccordionItem>
1516
+ <AccordionItemHeading>
1517
+ <AccordionItemButton>
1518
+ <div class="row m-0 w-100">
1519
+ <div className="col-lg-10 col-md-10 col-sm-10 p-0 d-flex align-items-center justify-content-start">
1520
+ <p
1521
+ class="m-0 p-0"
1522
+ style={{
1523
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1524
+ fontWeight: sectionproperties.prodCatFontWeight,
1525
+ color: sectionproperties.prodCatColor,
1526
+ fontSize: sectionproperties.prodCatFontSize + 'px',
1527
+ }}
1528
+ >
1529
+ {langdetect == 'en' ? sectionproperties.shortdescriptiontitle_en : sectionproperties.shortdescriptiontitle_ar}
1530
+ </p>
1531
+ </div>
1532
+ <div className="col-lg-2 col-md-2 col-sm-2 p-0">
1533
+ <AccordionItemState>
1534
+ {(state) => {
1535
+ if (state.expanded == true) {
1536
+ return (
1537
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1538
+ <FaMinus color={sectionproperties.prodCatColor} />
1539
+ </i>
1540
+ );
1541
+ } else {
1542
+ return (
1543
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1544
+ <FaPlus color={sectionproperties.prodCatColor} />
1545
+ </i>
1546
+ );
1547
+ }
1548
+ }}
1549
+ </AccordionItemState>
1550
+ </div>
1551
+ </div>
1552
+ </AccordionItemButton>
1553
+ </AccordionItemHeading>
1554
+ <AccordionItemPanel className="p-0">
1555
+ <div class="col-lg-12 pl-3 pr-3 mt-3">
1556
+ <p
1557
+ className={'m-0 p-0 wordbreak'}
1558
+ style={{
1559
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1560
+ color: sectionproperties.prodCatColor,
1561
+ }}
1562
+ dangerouslySetInnerHTML={{
1563
+ __html:
1564
+ langdetect == 'en'
1565
+ ? fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_en
1566
+ : fetchProductInfoQueryContext?.data?.data?.productinfo?.short_description_ar,
1567
+ }}
1568
+ ></p>
1569
+ </div>
1570
+ </AccordionItemPanel>
1571
+ </AccordionItem>
1572
+ </Accordion>
1573
+ </div>
1574
+ )}
1575
+ {sectionproperties.descriptionstyle == 'Style 2' && (
1576
+ <div class="col-lg-12 col-md-12 my-3 p-md-0">
1577
+ <hr class="m-0" />
1578
+ </div>
1579
+ )}
1580
+ {/* policies collap */}
1581
+ {sectionproperties.descriptionstyle == 'Style 2' && (
1582
+ <div class="col-lg-12 col-md-12 p-md-0 mb-3">
1583
+ <Accordion allowMultipleExpanded={true} allowZeroExpanded={true}>
1584
+ <AccordionItem>
1585
+ <AccordionItemHeading>
1586
+ <AccordionItemButton>
1587
+ <div class="row m-0 w-100">
1588
+ <div className="col-lg-10 col-md-10 col-sm-10 p-0 d-flex align-items-center justify-content-start">
1589
+ <p
1590
+ class="m-0 p-0 "
1591
+ style={{
1592
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1593
+ fontWeight: sectionproperties.prodCatFontWeight,
1594
+ color: sectionproperties.prodCatColor,
1595
+ fontSize: sectionproperties.prodCatFontSize + 'px',
1596
+ }}
1597
+ >
1598
+ {langdetect == 'en' ? sectionproperties.policiestitleen : sectionproperties.policiestitlear}
1599
+ </p>
1600
+ </div>
1601
+ {/* */}
1602
+ <div className="col-lg-2 col-md-2 col-sm-2 p-0">
1603
+ <AccordionItemState>
1604
+ {(state) => {
1605
+ if (state.expanded == true) {
1606
+ return (
1607
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1608
+ <FaMinus color={sectionproperties.prodCatColor} />
1609
+ </i>
1610
+ );
1611
+ } else {
1612
+ return (
1613
+ <i className={' h-100 d-flex align-items-center justify-content-end '}>
1614
+ <FaPlus color={sectionproperties.prodCatColor} />
1615
+ </i>
1616
+ );
1617
+ }
1618
+ }}
1619
+ </AccordionItemState>
1620
+ </div>
1621
+ </div>
1622
+ </AccordionItemButton>
1623
+ </AccordionItemHeading>
1624
+ <AccordionItemPanel className="p-0">
1625
+ {/* title Shipping Policy */}
1626
+ {sectionproperties.showfirstpolicy == 'Show' && (
1627
+ <div class="col-lg-12 p-0 mb-3 d-flex flex-row text-start align-items-center mt-3">
1628
+ <i class="h-100 allcentered mx-2">
1629
+ <FiBox
1630
+ size={15}
1631
+ style={{
1632
+ color: sectionproperties.prodCatColor,
1633
+ }}
1634
+ />
1635
+ </i>
1636
+ <p
1637
+ class="m-0 p-0 text-uppercase"
1638
+ style={{
1639
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1640
+ fontWeight: sectionproperties.prodCatFontWeight,
1641
+ color: sectionproperties.prodCatColor,
1642
+ fontSize: '14px',
1643
+ }}
1644
+ >
1645
+ {langdetect == 'en'
1646
+ ? returnpolicyobj('Shipping Policy')?.policypagename_en
1647
+ : returnpolicyobj('Shipping Policy')?.policypagename_ar}
1648
+ </p>
1649
+ </div>
1650
+ )}
1651
+ {/* content */}
1652
+ {sectionproperties.showfirstpolicy == 'Show' && (
1653
+ <div class="col-lg-12 p-0 mb-4 px-4">
1654
+ <p
1655
+ className={' m-0 p-0 wordbreak '}
1656
+ style={{
1657
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1658
+ fontWeight: sectionproperties.prodCatFontWeight,
1659
+ color: sectionproperties.prodCatColor,
1660
+ fontSize: '15px',
1661
+ }}
1662
+ dangerouslySetInnerHTML={{
1663
+ __html:
1664
+ langdetect == 'en'
1665
+ ? returnpolicyobj('Shipping Policy')?.policysummary_en
1666
+ : returnpolicyobj('Shipping Policy')?.policysummary_ar,
1667
+ }}
1668
+ ></p>
1669
+ </div>
1670
+ )}
1671
+ {sectionproperties.showfirstpolicy == 'Show' && (
1672
+ <div class="col-lg-12 p-0 mb-4 px-4">
1673
+ <p
1674
+ className={' m-0 p-0 wordbreak cursor-pointer '}
1675
+ style={{
1676
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1677
+ textDecoration: 'underline',
1678
+ color: sectionproperties.prodCatColor,
1679
+ }}
1680
+ onClick={() => {
1681
+ routingcountext(StaticPagesLinksContext.ShippingPolicy);
1682
+ }}
1683
+ >
1684
+ SEE MORE
1685
+ </p>
1686
+ </div>
1687
+ )}
1688
+
1689
+ {/* title */}
1690
+ <div class="col-lg-12 p-0 mb-3 d-flex flex-row text-start align-items-center">
1691
+ <i class="h-100 allcentered mx-2">
1692
+ <RiArrowGoBackLine
1693
+ size={15}
1694
+ style={{
1695
+ color: sectionproperties.prodCatColor,
1696
+ }}
1697
+ />
1698
+ </i>
1699
+ <p
1700
+ class="m-0 p-0 text-uppercase"
1701
+ style={{
1702
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1703
+ fontWeight: sectionproperties.prodCatFontWeight,
1704
+ color: sectionproperties.prodCatColor,
1705
+ fontSize: '14px',
1706
+ }}
1707
+ >
1708
+ {langdetect == 'en' ? returnpolicyobj('Refund Policy')?.policypagename_en : returnpolicyobj('Refund Policy')?.policypagename_ar}
1709
+ </p>
1710
+ </div>
1711
+ {/* {content} */}
1712
+ <div class="col-lg-12 p-0 mb-4 px-4">
1713
+ <p
1714
+ className={' m-0 p-0 wordbreak '}
1715
+ style={{
1716
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1717
+ fontWeight: sectionproperties.prodCatFontWeight,
1718
+ color: sectionproperties.prodCatColor,
1719
+ fontSize: '15px',
1720
+ }}
1721
+ dangerouslySetInnerHTML={{
1722
+ __html:
1723
+ langdetect == 'en'
1724
+ ? returnpolicyobj('Refund Policy')?.policysummary_en
1725
+ : returnpolicyobj('Refund Policy')?.policysummary_ar,
1726
+ }}
1727
+ ></p>
1728
+ </div>
1729
+ <div class="col-lg-12 p-0 mb-4 px-4">
1730
+ <p
1731
+ className={' m-0 p-0 wordbreak cursor-pointer '}
1732
+ style={{
1733
+ textAlign: langdetect == 'en' ? 'left' : 'right',
1734
+ textDecoration: 'underline',
1735
+ color: sectionproperties.prodCatColor,
1736
+ }}
1737
+ onClick={() => {
1738
+ routingcountext(StaticPagesLinksContext.RefundPolicy);
1739
+ }}
1740
+ >
1741
+ SEE MORE
1742
+ </p>
1743
+ </div>
1744
+ </AccordionItemPanel>
1745
+ </AccordionItem>
1746
+ </Accordion>
1747
+ </div>
1748
+ )}
1749
+ {sectionproperties.productInformationType == 'Product/Service Information' &&
1750
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 &&
1751
+ sectionproperties.showtotalsection == 'Show' && (
1752
+ <div className="col-lg-12 p-0 mb-3">
1753
+ <div className="row m-0 w-100 d-flex flex-row">
1754
+ <p
1755
+ className="m-0 p-0"
1756
+ style={{
1757
+ color: sectionproperties.total_color,
1758
+ fontSize: sectionproperties.total_fontsize + 'px',
1759
+ fontWeight: sectionproperties.total_fontweight,
1760
+ textTransform: sectionproperties.total_texttransform,
1761
+ }}
1762
+ >
1763
+ {lang.total}:
1764
+ </p>
1765
+ <div className="col-lg-9 col-md-9 col-sm-9 d-flex align-items-center pl-1 pr-1">
1766
+ <p
1767
+ className={'m-0 p-0 wordbreak d-flex align-items-center justify-content-end'}
1768
+ style={{
1769
+ fontSize: sectionproperties.prodpriceFontSize + 'px',
1770
+ fontWeight: sectionproperties.prodPriceFontWeight,
1771
+ color: sectionproperties.prodPriceColor,
1772
+ }}
1773
+ >
1774
+ {/* here */}
1775
+ <span
1776
+ className={
1777
+ langdetect == 'en'
1778
+ ? ' d-flex align-items-center justify-content-end wordbreak text-right '
1779
+ : ' d-flex align-items-center justify-content-end wordbreak text-left '
1780
+ }
1781
+ >
1782
+ {langdetect == 'en' ? authdetailsContext?.currencyname_en : ''}{' '}
1783
+ {variantindexcompleted != undefined &&
1784
+ variantindexcompleted.length == 0 &&
1785
+ fetchProductInfoQueryContext.data.data.productinfo.hassale == 0 &&
1786
+ parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2)}
1787
+ {variantindexcompleted != undefined &&
1788
+ variantindexcompleted.length == 0 &&
1789
+ fetchProductInfoQueryContext.data.data.productinfo.hassale == 1 &&
1790
+ parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2)}
1791
+ {variantindexcompleted != undefined &&
1792
+ variantindexcompleted.length != 0 &&
1793
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.hassale == 1 &&
1794
+ parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2)}
1795
+ {variantindexcompleted != undefined &&
1796
+ variantindexcompleted.length != 0 &&
1797
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.hassale == 0 &&
1798
+ parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2)}
1799
+ {/* {totalprice} */}
1800
+ {/* {fetchProductInfoQueryContext.data.data.productinfo.hassale == 0
1801
+ ? parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted)).toFixed(2)
1802
+ : parseFloat(getprice_discountpriceprops('defaultsaleprice', 1, variantindexcompleted)).toFixed(2)} */}
1803
+ {langdetect == 'en' ? '' : authdetailsContext?.currencyname_ar}
1804
+ </span>
1805
+ </p>
1806
+ <p
1807
+ className={'m-0 p-0 linethrough wordbreak'}
1808
+ style={{
1809
+ color: sectionproperties.prodsalePriceColor,
1810
+ fontSize: sectionproperties.prodsalepriceFontSize + 'px',
1811
+ fontWeight: sectionproperties.prodsalePriceFontWeight,
1812
+ }}
1813
+ >
1814
+ {fetchProductInfoQueryContext.data.data.productinfo.hassale == 1 &&
1815
+ variantindexcompleted != undefined &&
1816
+ variantindexcompleted.length == 0 && (
1817
+ <span
1818
+ className={
1819
+ langdetect == 'en'
1820
+ ? ' d-flex align-items-center justify-content-end wordbreak text-right wordbreak '
1821
+ : ' d-flex align-items-center justify-content-end wordbreak text-left wordbreak '
1822
+ }
1823
+ >
1824
+ <span className="ml-2 mr-2" style={{ textDecoration: 'none' }}>
1825
+ -
1826
+ </span>
1827
+ {langdetect == 'en' ? authdetailsContext?.currencyname_en : ''}{' '}
1828
+ {parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted))}{' '}
1829
+ {langdetect == 'en' ? '' : authdetailsContext?.currencyname_ar}
1830
+ </span>
1831
+ )}
1832
+ {variantindexcompleted != undefined &&
1833
+ variantindexcompleted.length != 0 &&
1834
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.variants[variantindexcompleted]?.hassale == 1 && (
1835
+ <span
1836
+ className={
1837
+ langdetect == 'en'
1838
+ ? ' d-flex align-items-center justify-content-end wordbreak text-right wordbreak '
1839
+ : ' d-flex align-items-center justify-content-end wordbreak text-left wordbreak '
1840
+ }
1841
+ >
1842
+ <span className="ml-2 mr-2" style={{ textDecoration: 'none' }}>
1843
+ -
1844
+ </span>
1845
+ {langdetect == 'en' ? authdetailsContext?.currencyname_en : ''}{' '}
1846
+ {parseFloat(getprice_discountpriceprops('defaultprice', 1, variantindexcompleted))}{' '}
1847
+ {langdetect == 'en' ? '' : authdetailsContext?.currencyname_ar}
1848
+ </span>
1849
+ )}
1850
+ </p>
1851
+ </div>
1852
+ </div>
1853
+ </div>
1854
+ )}
1855
+ {sectionproperties.availabilitybtnposition == 'Bottom' &&
1856
+ sectionproperties.show_availability == 'Show' &&
1857
+ fetchProductInfoQueryContext?.data?.data?.productinfo?.isproducttobesold == 1 && (
1858
+ <div className="col-lg-12 p-0 mb-3 mt-2">
1859
+ <div
1860
+ style={{
1861
+ width: sectionproperties.availability_width + 'px',
1862
+ height: sectionproperties.availability_height + 'px',
1863
+ background:
1864
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
1865
+ ? sectionproperties.availability_availablebgcolor
1866
+ : sectionproperties.availability_limitedbgcolor,
1867
+ borderRadius: sectionproperties.availability_borderrradius + 'px',
1868
+ border:
1869
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
1870
+ ? sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_availabletextcolor
1871
+ : sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_limitedtextcolor,
1872
+ justifyContent: sectionproperties.availabilitytextalignment == 'Centered' ? 'center' : 'start',
1873
+ }}
1874
+ className="d-flex align-items-center pl-3 pr-3"
1875
+ >
1876
+ <p
1877
+ className="m-0 p-0 font-weight-500 wordbreak"
1878
+ style={{
1879
+ color:
1880
+ fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
1881
+ ? sectionproperties.availability_availabletextcolor
1882
+ : sectionproperties.availability_limitedtextcolor,
1883
+ fontSize: sectionproperties.availability_fontsize + 'px',
1884
+ textAlign: sectionproperties.availabilitytextalignment == 'Centered' ? 'center' : langdetect == 'en' ? 'left' : 'right',
1885
+ }}
1886
+ >
1887
+ <span
1888
+ style={{
1889
+ color: sectionproperties.availability_textcolor,
1890
+ }}
1891
+ className="font-weight-600"
1892
+ >
1893
+ {lang.availability}:
1894
+ </span>
1895
+ <span className="ml-1 mr-1">
1896
+ {fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit' ? lang.available : lang.limitedquantity}
1897
+ </span>
1898
+ </p>
1899
+ </div>
1900
+ </div>
1901
+ )}
1902
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 1' && (
1903
+ <div class="col-lg-12 p-0">
1904
+ <hr
1905
+ class="mb-3 mt-3"
1906
+ style={{
1907
+ borderColor: '#eee',
1908
+ }}
1909
+ />
1910
+ </div>
1911
+ )}
1912
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 1' && (
1913
+ <div class="col-lg-12 mt-2 p-0">{ShareButtonsContainer()}</div>
1914
+ )}
1915
+
1916
+ {sectionproperties.storeinfoposition == 'Below Information' && (
1917
+ <div className={productinfo_cssstyles.storeinfocontainer + ' col-lg-12 p-0 '} style={{}}>
1918
+ <div
1919
+ class="row m-0 w-100"
1920
+ style={{
1921
+ paddingLeft: langdetect == 'en' ? '.5em' : 0,
1922
+ paddingRight: langdetect == 'ar' ? '.5rem' : 0,
1923
+ }}
1924
+ >
1925
+ {StoreInfoprops()}
1926
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 2' && (
1927
+ <div class={productinfo_cssstyles.storeinfocontainer + ' col-lg-12 p-0 '} style={{}}>
1928
+ <hr class="my-3" />
1929
+ </div>
1930
+ )}
1931
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 2' && (
1932
+ <div class="col-lg-12 p-0 allcentered mt-2">{ShareButtonsContainer()}</div>
1933
+ )}
1934
+ </div>
1935
+ </div>
1936
+ )}
1937
+ </div>
1938
+ </div>
1939
+ </div>
1940
+ </div>
1941
+ {sectionproperties.storeinfoposition == 'On The Right' && (
1942
+ <div
1943
+ className={langdetect == 'en' ? 'col-lg-3 pr-0 border-md-none p-md-0 pt-4 pl-md-0 pr-md-0' : 'col-lg-3 pl-0 border-md-none md-0 pt-4 pl-md-0 pr-md-0'}
1944
+ style={{
1945
+ borderLeft: langdetect == 'en' ? '1px solid #eee' : 0,
1946
+ borderRight: langdetect == 'ar' ? '1px solid #eee' : 0,
1947
+ display:
1948
+ sectionproperties.showfooterphonenumber == 'Hide' &&
1949
+ sectionproperties.showfooteremail == 'Hide' &&
1950
+ sectionproperties.showstoreinfo2 == 'Hide' &&
1951
+ sectionproperties.showstoreinfo1 == 'Hide'
1952
+ ? 'none'
1953
+ : 'block',
1954
+ }}
1955
+ >
1956
+ <div
1957
+ class="row m-0 w-100"
1958
+ style={{
1959
+ paddingLeft: langdetect == 'en' ? '.5em' : 0,
1960
+ paddingRight: langdetect == 'ar' ? '.5rem' : 0,
1961
+ }}
1962
+ >
1963
+ {StoreInfoprops()}
1964
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 2' && (
1965
+ <div class="col-lg-12 p-0">
1966
+ <hr class="my-3" />
1967
+ </div>
1968
+ )}
1969
+ {sectionproperties.showShareButton == 'Show' && sectionproperties.sharebtnstyle == 'Style 2' && (
1970
+ <div class="col-lg-12 p-0 allcentered mt-2">{ShareButtonsContainer()}</div>
1971
+ )}
1972
+ </div>
1973
+ </div>
1974
+ )}
1975
+ </div>
1976
+ </div>
1977
+ </div>
1978
+ </div>
1979
+ {/* <div class="col-lg-12 p-0">{relatedproducts()}</div> */}
1980
+ </div>
1981
+ );
1982
+ };
1983
+ export default Product_itemtype;