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