tabexseriescomponents 0.0.73 → 0.0.74

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 (211) hide show
  1. package/dist/index.cjs.js +337 -225
  2. package/dist/index.esm.js +343 -231
  3. package/dist/index.umd.js +340 -229
  4. package/package.json +1 -1
  5. package/src-aya/Contexts/LanguageContext.jsx +0 -369
  6. package/src-aya/Contexts/ProductsCardsSectionContext.jsx +0 -28
  7. package/src-aya/StylesJS/Customstyles.js +0 -235
  8. package/src-aya/TabexComponents/Cards/Card20/Card20.jsx +0 -288
  9. package/src-aya/TabexComponents/Cards/Card21/Card21.jsx +0 -386
  10. package/src-aya/TabexComponents/Cards/Card22/Card22.jsx +0 -289
  11. package/src-aya/TabexComponents/Cards/Card23/Card23.jsx +0 -355
  12. package/src-aya/TabexComponents/Cards/CardBadgeSlideFromTop/CardBadgeSlideFromTop.jsx +0 -393
  13. package/src-aya/TabexComponents/Cards/CategoryCardwithhoveraction/CategoryCardwithhoveraction.jsx +0 -168
  14. package/src-aya/TabexComponents/Cards/Categorycard_fullimage/Categorycard_fullimage.jsx +0 -243
  15. package/src-aya/TabexComponents/Cards/Categorycard_slidebgscaled/Categorycard_slidebgscaled.jsx +0 -202
  16. package/src-aya/TabexComponents/Cards/Categorycard_with_trianglebg/Categorycard_with_trianglebg.jsx +0 -174
  17. package/src-aya/TabexComponents/Cards/Categorycard_with_twolinestransition/Categorycard_with_twolinestransition.jsx +0 -182
  18. package/src-aya/TabexComponents/Cards/Categorycard_withshapes/Categorycard_withshapes.jsx +0 -158
  19. package/src-aya/TabexComponents/Cards/Categorycard_withtext/Categorycard_withtext.jsx +0 -189
  20. package/src-aya/TabexComponents/Cards/Classiccategorycard/Classiccategorycard.jsx +0 -150
  21. package/src-aya/TabexComponents/Cards/Horizontalcard/Horizontalcard.jsx +0 -271
  22. package/src-aya/TabexComponents/Cards/MenuCard/MenuCard.jsx +0 -538
  23. package/src-aya/TabexComponents/Cards/ModernCardWithQuantityButton/ModernCardWithQuantityButton.jsx +0 -491
  24. package/src-aya/TabexComponents/Cards/ModernProductCard/ModernProductCard.jsx +0 -469
  25. package/src-aya/TabexComponents/Cards/Productcard6/Productcard6.jsx +0 -257
  26. package/src-aya/TabexComponents/Cards/Productcard7/Productcard7.jsx +0 -272
  27. package/src-aya/TabexComponents/Cards/Productcard_animatedbuttons/Productcard_animatedbuttons.jsx +0 -295
  28. package/src-aya/TabexComponents/Cards/Productcard_with_circularbg/Productcard_with_circularbg.jsx +0 -289
  29. package/src-aya/TabexComponents/Cards/Productcard_with_circularhover/Productcard_with_circularhover.jsx +0 -315
  30. package/src-aya/TabexComponents/Cards/Productcard_with_slideanimation/Productcard_with_slideanimation.jsx +0 -288
  31. package/src-aya/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants.jsx +0 -328
  32. package/src-aya/TabexComponents/Cards/Productcard_with_zoominonhover/Productcard_with_zoominonhover.jsx +0 -509
  33. package/src-aya/TabexComponents/Cards/Productcarddefault/Productcarddefault.jsx +0 -272
  34. package/src-aya/TabexComponents/Cards/Productccard_with_imageontopleft/Productccard_with_imageontopleft.jsx +0 -286
  35. package/src-aya/TabexComponents/Cards/Prouductcard_with_zoomhover/Prouductcard_with_zoomhover.jsx +0 -133
  36. package/src-aya/TabexComponents/Cards/Simplecategorycardwithtextbelow/Simplecategorycardwithtextbelow.jsx +0 -125
  37. package/src-aya/TabexComponents/Cards/Simpleproductcard/Simpleproductcard.jsx +0 -292
  38. package/src-aya/TabexComponents/Cards/StylishProductCard/StylishProductCard.jsx +0 -336
  39. package/src-aya/TabexComponents/Footer/Allinonefooter/Allinonefooter.jsx +0 -429
  40. package/src-aya/TabexComponents/Footer/Footer1/Footer1.jsx +0 -416
  41. package/src-aya/TabexComponents/Footer/Footer2/Footer2.jsx +0 -381
  42. package/src-aya/TabexComponents/Footer/Footer3/Footer3.jsx +0 -302
  43. package/src-aya/TabexComponents/Footer/Footer4/Footer4.jsx +0 -437
  44. package/src-aya/TabexComponents/Footer/Footer5/Footer5.jsx +0 -488
  45. package/src-aya/TabexComponents/Footer/Footer6/Footer6.jsx +0 -286
  46. package/src-aya/TabexComponents/Footer/Footer7/Footer7.jsx +0 -370
  47. package/src-aya/TabexComponents/Footer/Simplefooter/Simplefooter.jsx +0 -231
  48. package/src-aya/TabexComponents/Generalfiles/images/egyptflag.png +0 -0
  49. package/src-aya/TabexComponents/Generalfiles/images/noimage.png +0 -0
  50. package/src-aya/TabexComponents/Generalfiles/images/payment/cod.png +0 -0
  51. package/src-aya/TabexComponents/Generalfiles/images/payment/fawry.png +0 -0
  52. package/src-aya/TabexComponents/Generalfiles/images/payment/payment.png +0 -0
  53. package/src-aya/TabexComponents/Generalfiles/images/payment/paymob.png +0 -0
  54. package/src-aya/TabexComponents/Generalfiles/images/payment/paypal.png +0 -0
  55. package/src-aya/TabexComponents/Generalfiles/images/payment/visa.png +0 -0
  56. package/src-aya/TabexComponents/Generalfiles/images/shoppingcart.png +0 -0
  57. package/src-aya/TabexComponents/Generalfiles/images/tabexlogo.png +0 -0
  58. package/src-aya/TabexComponents/Generalfiles/images/unknownmaleuser.png +0 -0
  59. package/src-aya/TabexComponents/Generalfiles/images/usflag.png +0 -0
  60. package/src-aya/TabexComponents/Generalfiles/images/whatsapp.png +0 -0
  61. package/src-aya/TabexComponents/Headers/CTAHeader/CTAHeader.jsx +0 -822
  62. package/src-aya/TabexComponents/Headers/CategoryFeaturingHeader/CategoryFeaturingHeader.jsx +0 -841
  63. package/src-aya/TabexComponents/Headers/ClassicHeader/ClassicHeader.jsx +0 -677
  64. package/src-aya/TabexComponents/Headers/Gotoheader/Gotoheader.jsx +0 -707
  65. package/src-aya/TabexComponents/Headers/Header4/Header4.jsx +0 -614
  66. package/src-aya/TabexComponents/Headers/Header6/Header6.jsx +0 -631
  67. package/src-aya/TabexComponents/Headers/Header8/Header8.jsx +0 -815
  68. package/src-aya/TabexComponents/Headers/HeaderRestaurant/HeaderRestaurant.jsx +0 -709
  69. package/src-aya/TabexComponents/Headers/Header_threesectionslogocentered/Header_threesectionslogocentered.jsx +0 -770
  70. package/src-aya/TabexComponents/Headers/Headerresponsive/Headerresponsive.jsx +0 -669
  71. package/src-aya/TabexComponents/Headers/HeaderwithContactinfo/HeaderwithContactinfo.jsx +0 -919
  72. package/src-aya/TabexComponents/Headers/Modernheader/Modernheader.jsx +0 -687
  73. package/src-aya/TabexComponents/Headers/StylishHeader/StylishHeader.jsx +0 -813
  74. package/src-aya/TabexComponents/Headers/Subheader/Subheader.jsx +0 -248
  75. package/src-aya/TabexComponents/Headers/ThreeTieredHeader/ThreeTieredHeader.jsx +0 -926
  76. package/src-aya/TabexComponents/Sections/BackgroundImages/BacgroundThreeImageWithCategories/BacgroundThreeImageWithCategories.jsx +0 -168
  77. package/src-aya/TabexComponents/Sections/BackgroundImages/BackgroundFiveImageStructure/BackgroundFiveImageStructure.jsx +0 -346
  78. package/src-aya/TabexComponents/Sections/BackgroundImages/BackgroundImageWithTopContent/BackgroundImageWithTopContent.jsx +0 -304
  79. package/src-aya/TabexComponents/Sections/BackgroundImages/Backgroundimage1/Backgroundimage1.jsx +0 -312
  80. package/src-aya/TabexComponents/Sections/BackgroundImages/Backgroundimage_with_toppill/Backgroundimage_with_toppill.jsx +0 -271
  81. package/src-aya/TabexComponents/Sections/BackgroundImages/BackgroundimageandTextsection/BackgroundimageandTextsection.jsx +0 -130
  82. package/src-aya/TabexComponents/Sections/BackgroundImages/Bgimagewithsearchbar/Bgimagewithsearchbar.jsx +0 -200
  83. package/src-aya/TabexComponents/Sections/BackgroundImages/Section_with_rightbgcont/Section_with_rightbgcont.jsx +0 -153
  84. package/src-aya/TabexComponents/Sections/BackgroundImages/Threebgimages/Threebgimages.jsx +0 -295
  85. package/src-aya/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages.jsx +0 -409
  86. package/src-aya/TabexComponents/Sections/Cards/CardsSection/CardsSection.jsx +0 -768
  87. package/src-aya/TabexComponents/Sections/Cards/CardsSection2/CardsSection2.jsx +0 -483
  88. package/src-aya/TabexComponents/Sections/Cards/CardsSection7/CardsSection7.jsx +0 -663
  89. package/src-aya/TabexComponents/Sections/Cards/CardsSection8/CardsSection8.js +0 -419
  90. package/src-aya/TabexComponents/Sections/Cards/Cardsection10/Arrows.js +0 -94
  91. package/src-aya/TabexComponents/Sections/Cards/Cardsection10/Cardsection10.js +0 -741
  92. package/src-aya/TabexComponents/Sections/Cards/Cardsection100/Cardsection10.js +0 -430
  93. package/src-aya/TabexComponents/Sections/Cards/Cardsection100/burger.jpg +0 -0
  94. package/src-aya/TabexComponents/Sections/Cards/ElegantCategoriesCardSection/ElegantCategoriesCardSection.jsx +0 -473
  95. package/src-aya/TabexComponents/Sections/Cards/ModernCardsSection/ModernCardsSection.jsx +0 -523
  96. package/src-aya/TabexComponents/Sections/Cards/Sixverticalcardssection/Sixverticalcardssection.jsx +0 -502
  97. package/src-aya/TabexComponents/Sections/Slideshow/AboutSection/AboutSection.jsx +0 -276
  98. package/src-aya/TabexComponents/Sections/Slideshow/Backgroundimage_with_topcircle/Backgroundimage_with_topcircle.jsx +0 -160
  99. package/src-aya/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection.jsx +0 -176
  100. package/src-aya/TabexComponents/Sections/Slideshow/Image_with_leftwords/Image_with_leftwords.jsx +0 -139
  101. package/src-aya/TabexComponents/Sections/Slideshow/Image_with_rightwords/Image_with_rightwords.jsx +0 -140
  102. package/src-aya/TabexComponents/Sections/Slideshow/Servicesection/Servicesection.jsx +0 -201
  103. package/src-aya/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards.jsx +0 -125
  104. package/src-aya/TabexComponents/Sections/Slideshow/Slideshow_with_rotatedsquare/Slideshow_with_rotatedsquare.jsx +0 -226
  105. package/src-aya/TabexComponents/Sections/Slideshow/Slideshow_with_squarebg/Slideshow_with_squarebg.jsx +0 -149
  106. package/src-aya/TabexComponents/Sections/Slideshow/Slideshowdifferentanimations/Slideshowdifferentanimations.jsx +0 -139
  107. package/src-aya/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade.jsx +0 -215
  108. package/src-aya/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide.jsx +0 -202
  109. package/src-aya/TabexComponents/Sections/Slideshow/Slideshowzoom/Arrow.js +0 -91
  110. package/src-aya/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom.jsx +0 -277
  111. package/src-aya/TabexComponents/StaticPages/AccountInformation/AccountInformation.jsx +0 -260
  112. package/src-aya/TabexComponents/StaticPages/CartSlider/CartSlider.jsx +0 -458
  113. package/src-aya/TabexComponents/StaticPages/Categoriesdropdown/Categoriesdropdown.jsx +0 -216
  114. package/src-aya/TabexComponents/StaticPages/Checkout/Checkout.jsx +0 -1220
  115. package/src-aya/TabexComponents/StaticPages/Filter/Filter.jsx +0 -542
  116. package/src-aya/TabexComponents/StaticPages/Login/FacebookLoginButton.jsx +0 -51
  117. package/src-aya/TabexComponents/StaticPages/Login/GoogleLoginButton.jsx +0 -35
  118. package/src-aya/TabexComponents/StaticPages/Login/Login.jsx +0 -283
  119. package/src-aya/TabexComponents/StaticPages/OrderSuccess/OrderSuccess.js +0 -192
  120. package/src-aya/TabexComponents/StaticPages/Ordershistory/Ordershistory.jsx +0 -1271
  121. package/src-aya/TabexComponents/StaticPages/Policies/Policies.jsx +0 -353
  122. package/src-aya/TabexComponents/StaticPages/Productinfo/Iteminfo.js +0 -1287
  123. package/src-aya/TabexComponents/StaticPages/Productinfo/Productinfo.js +0 -710
  124. package/src-aya/TabexComponents/StaticPages/Productinfo/Productinfo.jsx +0 -1457
  125. package/src-aya/TabexComponents/StaticPages/Productinfo/Serviceinfo.js +0 -804
  126. package/src-aya/TabexComponents/StaticPages/Searchlist/Searchlist.jsx +0 -206
  127. package/src-aya/TabexComponents/StaticPages/Signup/CustomerInformationForm.jsx +0 -791
  128. package/src-aya/TabexComponents/StaticPages/Signup/Signup.jsx +0 -155
  129. package/src-aya/TabexComponents/StaticPages/Staticpagesrouter/Staticpagesrouter.jsx +0 -279
  130. package/src-aya/TabexComponents/StaticPages/Viewcart/Viewcart.jsx +0 -1048
  131. package/src-aya/TabexComponents/StaticPages/Wishlist/Wishlist.jsx +0 -606
  132. package/src-aya/assets/images/appstore.png +0 -0
  133. package/src-aya/assets/images/cod.png +0 -0
  134. package/src-aya/assets/images/egyptflag.png +0 -0
  135. package/src-aya/assets/images/fawry.png +0 -0
  136. package/src-aya/assets/images/googleplay.png +0 -0
  137. package/src-aya/assets/images/payment.png +0 -0
  138. package/src-aya/assets/images/paymob.png +0 -0
  139. package/src-aya/assets/images/paypal.png +0 -0
  140. package/src-aya/assets/images/shoppingcart.png +0 -0
  141. package/src-aya/assets/images/usflag.png +0 -0
  142. package/src-aya/assets/images/visa.png +0 -0
  143. package/src-aya/assets/images/whatsapp.png +0 -0
  144. package/src-aya/button.jsx +0 -40
  145. package/src-aya/index.jsx +0 -222
  146. package/src-aya/styles/Home.module.css +0 -129
  147. package/src-aya/styles/cards/Categorcycard_fullimage.module.css +0 -10
  148. package/src-aya/styles/cards/Categorycard_slidebgscaled.module.css +0 -73
  149. package/src-aya/styles/cards/Categorycard_withshapes.module.css +0 -189
  150. package/src-aya/styles/cards/ModernCardWithQuantityButton.module.css +0 -34
  151. package/src-aya/styles/cards/Productcard6.module.css +0 -9
  152. package/src-aya/styles/cards/Productcard_with_circularbg.module.css +0 -137
  153. package/src-aya/styles/cards/Productccard_with_zoominonhover.module.css +0 -51
  154. package/src-aya/styles/cards/Prouductcard_with_zoomhover.module.css +0 -61
  155. package/src-aya/styles/cards/categorycard.module.css +0 -85
  156. package/src-aya/styles/cards/categorycard3.module.css +0 -50
  157. package/src-aya/styles/cards/categorycardwithtext.module.css +0 -40
  158. package/src-aya/styles/cards/productcard_animatedbuttons.module.css +0 -127
  159. package/src-aya/styles/cards/productcard_with_textonhover.module.css +0 -12
  160. package/src-aya/styles/cards/productccard_with_imageontopleft.module.css +0 -85
  161. package/src-aya/styles/general/bootstrap.css +0 -4562
  162. package/src-aya/styles/general/dropdown.css +0 -206
  163. package/src-aya/styles/general/editorbardropdown.module.css +0 -94
  164. package/src-aya/styles/general/filter.module.css +0 -108
  165. package/src-aya/styles/general/form.module.css +0 -273
  166. package/src-aya/styles/general/general.module.css +0 -861
  167. package/src-aya/styles/general/image-gallery.css +0 -481
  168. package/src-aya/styles/general/react-accessible-accordion.module.css +0 -52
  169. package/src-aya/styles/general/react-phone-input-2.module.css +0 -927
  170. package/src-aya/styles/general/scrollbtn.module.css +0 -22
  171. package/src-aya/styles/general/slick.module.css +0 -166
  172. package/src-aya/styles/general/tabs.module.css +0 -110
  173. package/src-aya/styles/general/workplaceeditor.module.css +0 -328
  174. package/src-aya/styles/globals.css +0 -26
  175. package/src-aya/styles/headers/CTAHeader.module.css +0 -40
  176. package/src-aya/styles/headers/CategoryFeaturingHeader.module.css +0 -61
  177. package/src-aya/styles/headers/Gotoheader.module.css +0 -91
  178. package/src-aya/styles/headers/Header7.module.css +0 -50
  179. package/src-aya/styles/headers/Header_threesectionslogocentered.module.css +0 -96
  180. package/src-aya/styles/headers/Sideheader.module.css +0 -108
  181. package/src-aya/styles/headers/classicheader.module.css +0 -16
  182. package/src-aya/styles/headers/classicheaderstyles.module.css +0 -16
  183. package/src-aya/styles/headers/dropdown.css +0 -0
  184. package/src-aya/styles/headers/header4.module.css +0 -175
  185. package/src-aya/styles/headers/header5.module.css +0 -30
  186. package/src-aya/styles/headers/header6.module.css +0 -102
  187. package/src-aya/styles/headers/header_contactinfo.module.css +0 -66
  188. package/src-aya/styles/headers/headerresturant.module.css +0 -89
  189. package/src-aya/styles/headers/modernheader.module.css +0 -72
  190. package/src-aya/styles/headers/stylishheader.module.css +0 -24
  191. package/src-aya/styles/headers/subheader.module.css +0 -114
  192. package/src-aya/styles/headers/threetieredheader.module.css +0 -91
  193. package/src-aya/styles/sections/BackgroundImageWithTopContent.css +0 -4
  194. package/src-aya/styles/sections/Backgroundimage1.module.css +0 -17
  195. package/src-aya/styles/sections/Backgroundimage_with_topcircle.module.css +0 -28
  196. package/src-aya/styles/sections/Section_with_rightbgcont.module.css +0 -49
  197. package/src-aya/styles/sections/Slideshow_with_rotatedsquare.module.css +0 -35
  198. package/src-aya/styles/sections/Slideshow_with_squarebg.module.css +0 -39
  199. package/src-aya/styles/staticpages/accordion.module.css +0 -9
  200. package/src-aya/styles/staticpages/cart.module.css +0 -108
  201. package/src-aya/styles/staticpages/dropdown.css +0 -196
  202. package/src-aya/styles/staticpages/filter.module.css +0 -139
  203. package/src-aya/styles/staticpages/image-gallery.css +0 -481
  204. package/src-aya/styles/staticpages/login.module.css +0 -113
  205. package/src-aya/styles/staticpages/productinfo.module.css +0 -54
  206. package/src-aya/styles/staticpages/shop.module.css +0 -191
  207. package/src-aya/styles/staticpages/signup.module.css +0 -206
  208. package/src-aya/styles/staticpages/staticroutersidenav.module.css +0 -129
  209. package/src-aya/styles/staticpages/viewcart.module.css +0 -129
  210. package/src-aya/styles/staticpages/wishlist.module.css +0 -29
  211. package/src-aya/styles.rar +0 -0
@@ -1,804 +0,0 @@
1
- //productidprops
2
- import React, { useEffect, useState, useContext } from 'react';
3
- import generalstyles from '../../Generalfiles/CSS_GENERAL/general.module.css';
4
- import productinfostyles from '../Productinfo/productinfo.module.css';
5
- import { serverbaselink, instapikey } from '../../../Env_Variables';
6
- import Pagepreloader from '../Pagepreloader/Pagepreloader';
7
- import { ScrollMenu, VisibilityContext } from 'react-horizontal-scrolling-menu';
8
- import { LeftArrow, RightArrow, onWheel } from '../../Sections/Cards/CardsSection/Arrows';
9
- import { LanguageContext } from '../../../LanguageContext';
10
- import { FetchingContext } from '../../../FetchingContext';
11
- import { FetchRelatedProducts_API } from '../../../API/API';
12
- import { useMutation, useQuery, useQueryClient } from 'react-query';
13
- import { NotificationManager } from 'react-notifications';
14
- import ImageGallery from 'react-image-gallery';
15
- import '../../Generalfiles/CSS_GENERAL/image-gallery.css';
16
- import { WebsiteDesignWorkPlaceContext } from '../../../../WebsiteDesignWorkPlaceContext';
17
- import { ProductsCardsSectionContext_Provider } from '../../Sections/Cards/ProductsCardsSectionContext';
18
- import { MdOutlineShoppingCart } from 'react-icons/md';
19
- import CircularProgress from 'react-cssfx-loading/lib/CircularProgress';
20
- import { css } from 'glamor';
21
- import ShowMoreText from 'react-show-more-text';
22
- import { Page_Template_Fetch_API } from '../../../../../API/WebsiteDesign_API';
23
- import { useParams } from 'react-router';
24
- import { TemplateRoutingContext } from '../../../TemplateRoutingContext';
25
- import { IKImage } from 'imagekitio-react';
26
- import { FaShippingFast } from 'react-icons/fa';
27
- import { FiMapPin } from 'react-icons/fi';
28
- import { MdOutlinePolicy, MdOutlineLocalShipping } from 'react-icons/md';
29
- import { HiOutlinePhone } from 'react-icons/hi';
30
- import { RiSecurePaymentLine } from 'react-icons/ri';
31
- import { AiFillStar, AiOutlineStar } from 'react-icons/ai';
32
- import { FiShoppingBag, FiShoppingCart } from 'react-icons/fi';
33
- import { FaRegHeart, FaHeart } from 'react-icons/fa';
34
- import { CgShoppingBag } from 'react-icons/cg';
35
- import { BsBag } from 'react-icons/bs';
36
- import { IoBagHandleOutline } from 'react-icons/io5';
37
- import Productinfotabs from '../Productinfotabs/Productinfotabs';
38
-
39
- // import "react-image-gallery/styles/css/image-gallery.css";
40
-
41
- const Serviceinfo = (props) => {
42
- const queryClient = useQueryClient();
43
- const { productidparam } = useParams();
44
- const { routingcountext, StaticPagesLinksContext } = useContext(TemplateRoutingContext);
45
- const { lang, langdetect } = useContext(LanguageContext);
46
-
47
- const {
48
- fetch_inst_tabex_websitetemplatesQueryContext,
49
- setpageindexcontext,
50
- ProjectOpenrcTypeContext,
51
- TemplateIdContext,
52
- INSTAPIKEYCONTEXT,
53
- // PageTemplateFetcherQueryContext,
54
- // CurrentPageIdContext,
55
- setCurrentPageIdContext,
56
- pageindexcontext,
57
- StatePagePropertiesContext,
58
- TabexSectionsComponentsContext,
59
- } = useContext(WebsiteDesignWorkPlaceContext);
60
- const {
61
- FetchQueriesEngineContext,
62
- setFetchQueriesEngineContext,
63
- fetchProductInfoQueryContext,
64
- fetchproductinfoObjContext,
65
- setfetchproductinfoObjContext,
66
- AddtoCartMutationContext,
67
- ProductIdProdutInfoModalContext,
68
- AddtoCartContext,
69
- fetchAuthorizationQueryContext,
70
- addtofavoritescontext,
71
- } = useContext(FetchingContext);
72
- const [sectionproperties, setsectionproperties] = useState('');
73
- const [CurrentPageId, setCurrentPageId] = useState('');
74
- const [RelatedProductsTagid, setRelatedProductsTagid] = useState('');
75
- const { collectionidparams } = useParams();
76
-
77
- useEffect(() => {
78
- if (props.sectionpropertiesprops != undefined) {
79
- setsectionproperties({ ...props.sectionpropertiesprops });
80
- }
81
- }, [props.sectionpropertiesprops]);
82
- const PageTemplateFetcherQuery = useQuery(
83
- [ProjectOpenrcTypeContext == 'workplace' ? 'FetchPages_API' + TemplateIdContext + CurrentPageId : 'FetchPages_API' + INSTAPIKEYCONTEXT + CurrentPageId],
84
- () =>
85
- Page_Template_Fetch_API(
86
- ProjectOpenrcTypeContext == 'workplace'
87
- ? { templateid: TemplateIdContext, pageid: CurrentPageId }
88
- : { INSTAPIKEYCONTEXT: INSTAPIKEYCONTEXT, srctypefrom: 'subdomain', pageid: CurrentPageId },
89
- ),
90
- {
91
- keepPreviousData: true,
92
- staleTime: Infinity,
93
- enabled: CurrentPageId.length != 0 ? true : false,
94
- },
95
- );
96
- const FetchRelatedProductsQuery = useQuery([' FetchRelatedProducts_API' + RelatedProductsTagid], () => FetchRelatedProducts_API({ tagid: RelatedProductsTagid, productid: '' }), {
97
- keepPreviousData: true,
98
- staleTime: Infinity,
99
- enabled: fetchproductinfoObjContext.productid != undefined && fetchproductinfoObjContext.productid.length != 0 && RelatedProductsTagid.length != 0 ? true : false,
100
- });
101
- useEffect(() => {
102
- var cartindex = fetch_inst_tabex_websitetemplatesQueryContext.data.data.template.pages.findIndex((x) => x.staticpageid == '6218bccb810ae');
103
- if (cartindex >= 0) {
104
- setCurrentPageId(fetch_inst_tabex_websitetemplatesQueryContext.data.data.template.pages[cartindex].pageid);
105
- if (props.srcfromprops != 'templatedraftrouter') {
106
- setpageindexcontext(cartindex);
107
- setCurrentPageIdContext(fetch_inst_tabex_websitetemplatesQueryContext.data.data.template.pages[cartindex].pageid);
108
- }
109
- }
110
- }, [fetch_inst_tabex_websitetemplatesQueryContext.dataUpdatedAt]);
111
- useEffect(() => {
112
- if (PageTemplateFetcherQuery.isSuccess) {
113
- if (PageTemplateFetcherQuery.data.data.pageobj.pageproperties != undefined) {
114
- var secpropobj = {};
115
- PageTemplateFetcherQuery.data.data.pageobj.pageproperties.forEach(function (arrayItem, arrayindex) {
116
- secpropobj[arrayItem.property_css_name] = arrayItem.property_value;
117
- });
118
- setsectionproperties({ ...secpropobj });
119
- }
120
- }
121
- }, [PageTemplateFetcherQuery.dataUpdatedAt, PageTemplateFetcherQuery.isSuccess]);
122
- const [productimagesarray, setproductimagesarray] = useState([]);
123
- const [addtocardpayloadobj, setaddtocardpayloadobj] = useState({
124
- functype: 'add',
125
- productid: '',
126
- variantid: '',
127
- quantity: 1,
128
- });
129
- const [variantindexcompleted, setvariantindexcompleted] = useState('');
130
- useEffect(() => {
131
- if (productidparam == undefined) {
132
- productidassigner(ProductIdProdutInfoModalContext);
133
- } else {
134
- productidassigner(productidparam);
135
- }
136
- }, []);
137
- const productidassigner = (productid) => {
138
- var tempFetchQueriesEngineContext = { ...FetchQueriesEngineContext };
139
- tempFetchQueriesEngineContext.fetchproductinfo = true;
140
- setFetchQueriesEngineContext({ ...tempFetchQueriesEngineContext });
141
- var tempfetchproductinfoObjContext = { ...fetchproductinfoObjContext };
142
-
143
- tempfetchproductinfoObjContext.productid = productid;
144
- setfetchproductinfoObjContext({ ...tempfetchproductinfoObjContext });
145
- };
146
- useEffect(() => {
147
- if (!fetchProductInfoQueryContext.isFetching && fetchProductInfoQueryContext.isSuccess) {
148
- if (fetchProductInfoQueryContext.data.data.productinfo != null) {
149
- var tempproductimagesarray = [];
150
- if (Array.isArray(fetchProductInfoQueryContext.data.data.productinfo.productimages)) {
151
- fetchProductInfoQueryContext.data.data.productinfo.productimages.forEach(function (arrayItem, arrayindex) {
152
- var productimagesarrayobj = {
153
- thumbnail: serverbaselink + arrayItem.path,
154
- original: serverbaselink + arrayItem.path,
155
- };
156
- tempproductimagesarray.push(productimagesarrayobj);
157
- });
158
- }
159
- setproductimagesarray([...tempproductimagesarray]);
160
- variantchecker();
161
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
162
- tempaddtocardpayloadobj.productid = fetchProductInfoQueryContext.data.data.productinfo.productid;
163
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
164
- setRelatedProductsTagid(fetchProductInfoQueryContext.data.data.productinfo.maintagid);
165
- }
166
- }
167
- }, [fetchProductInfoQueryContext.isSuccess, fetchProductInfoQueryContext.data]);
168
- const selectproductoptionvalue = (optionindex, optionvaluesitem, optionvaluesindex) => {
169
- var productarr = queryClient.getQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext));
170
- var isselected = productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected;
171
- if (isselected == 1) {
172
- productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected = 0;
173
- } else {
174
- productarr.data.productinfo.productoptions[optionindex].optionvalues[optionvaluesindex].isselected = 1;
175
- }
176
- productarr.data.productinfo.productoptions[optionindex].optionvalues.forEach(function (arrayItem, arrayindex) {
177
- if (optionvaluesindex != arrayindex) {
178
- arrayItem.isselected = 0;
179
- }
180
- });
181
- variantchecker();
182
- variantcompleting();
183
- queryClient.setQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext), productarr);
184
- };
185
- const variantchecker = () => {
186
- var productarr = queryClient.getQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext));
187
- if (productarr.data.productinfo.hasvariants == 1) {
188
- var selectedoptionsvalues = [];
189
- var variantsaccessible = [];
190
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
191
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
192
- if (ProductOptionValuesitem.isselected == 1) {
193
- selectedoptionsvalues.push(ProductOptionValuesitem);
194
- }
195
- });
196
- });
197
- if (selectedoptionsvalues.length == 0) {
198
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
199
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
200
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
201
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
202
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
203
- ProductOptionValuesitem.isenabled = 1;
204
- }
205
- });
206
- });
207
- });
208
- });
209
- } else {
210
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
211
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
212
- ProductOptionValuesitem.isenabled = 0;
213
- });
214
- });
215
-
216
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
217
- var variantcommonvalues = [];
218
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
219
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
220
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
221
- variantcommonvalues.push(varinatoptionitem);
222
- }
223
- });
224
- });
225
-
226
- var addvariantcount = [];
227
- var addvariant = false;
228
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
229
- addvariant = false;
230
- variantcommonvalues.forEach(function (varinatoptionitem, variantoptionindex) {
231
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
232
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
233
- addvariant = true;
234
- } else {
235
- addvariantcount.push(varinatoptionitem);
236
- }
237
- }
238
- });
239
- });
240
- if (addvariant && addvariantcount.length == 0) {
241
- variantsaccessible.push(ProductVariantItem);
242
- }
243
- });
244
-
245
- variantsaccessible.forEach(function (ProductVariantItem, ProductVariantIndex) {
246
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
247
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
248
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
249
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
250
- ProductOptionValuesitem.isenabled = 1;
251
- }
252
- });
253
- });
254
- });
255
- });
256
- }
257
- queryClient.setQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext), productarr);
258
- }
259
- };
260
- const variantcompleting = () => {
261
- setvariantindexcompleted('');
262
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
263
- tempaddtocardpayloadobj.variantid = '';
264
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
265
- var productarr = queryClient.getQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext));
266
- var selectedoptionsvalues = [];
267
-
268
- productarr.data.productinfo.productoptions.forEach(function (productoptionsitem, productoptionsindex) {
269
- productoptionsitem.optionvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
270
- if (ProductOptionValuesitem.isselected == 1) {
271
- selectedoptionsvalues.push(ProductOptionValuesitem);
272
- }
273
- });
274
- });
275
- productarr.data.productinfo.variants.forEach(function (ProductVariantItem, ProductVariantIndex) {
276
- var isvariant = false;
277
- var variantnotmatch = [];
278
- if (selectedoptionsvalues.length == ProductVariantItem.variantoptions.length) {
279
- isvariant = true;
280
- ProductVariantItem.variantoptions.forEach(function (varinatoptionitem, variantoptionindex) {
281
- selectedoptionsvalues.forEach(function (ProductOptionValuesitem, ProductOptionValuesIndex) {
282
- if (ProductOptionValuesitem.optionid == varinatoptionitem.optionid) {
283
- if (ProductOptionValuesitem.valueid == varinatoptionitem.valueid) {
284
- } else {
285
- variantnotmatch.push('s');
286
- }
287
- }
288
- });
289
- });
290
- }
291
- if (variantnotmatch.length == 0 && isvariant == true) {
292
- var variantobj = fetchProductInfoQueryContext.data.data.productinfo.variants[ProductVariantIndex];
293
- var variantid = '';
294
- if (variantobj == undefined) {
295
- NotificationManager.warning('', 'Variant Not Found');
296
- } else {
297
- variantid = variantobj.variantid;
298
- var tempaddtocardpayloadobj = { ...addtocardpayloadobj };
299
- tempaddtocardpayloadobj.variantid = variantid;
300
- setaddtocardpayloadobj({ ...tempaddtocardpayloadobj });
301
- setvariantindexcompleted(ProductVariantIndex);
302
- }
303
- }
304
- });
305
- queryClient.setQueryData('fetchProductInfo_API' + JSON.stringify(fetchproductinfoObjContext), productarr);
306
- };
307
- const addtocartfunc = () => {
308
- var runfunc = false;
309
- if (addtocardpayloadobj.productid.length != 0 && addtocardpayloadobj.quantity > 0) {
310
- if (fetchProductInfoQueryContext.data.data.productinfo.hasvariants == 1) {
311
- if (addtocardpayloadobj.variantid.length != 0) {
312
- runfunc = true;
313
- } else {
314
- NotificationManager.warning('', 'Please Choose Product Options');
315
- }
316
- } else {
317
- runfunc = true;
318
- }
319
- } else {
320
- NotificationManager.warning('', 'Please Choose Quantity');
321
- }
322
-
323
- if (runfunc == true) {
324
- AddtoCartContext(addtocardpayloadobj);
325
- }
326
- };
327
- const productinfo_cssstyles = {
328
- sectiontitlespan: css({
329
- ':after': {
330
- width: sectionproperties.relatedproducttitle_lineafterwidth + '%',
331
- backgroundColor: sectionproperties.relatedproducttitlelinebgcolor,
332
- },
333
- }),
334
- sectiontitlespan2: css({
335
- ':after': {
336
- width: sectionproperties.relatedproducttitle_lineafterwidth + 'px',
337
- height: '100%',
338
- backgroundColor: sectionproperties.relatedproducttitlelinebgcolor,
339
- },
340
- }),
341
- cart_btn: css({
342
- width: sectionproperties.cartBtnWidth + 'px',
343
- height: sectionproperties.cartBtnHeight + 'px',
344
- background: sectionproperties.cartbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColor,
345
- borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
346
- color: sectionproperties.cartBtnTextcolor,
347
- fontSize: sectionproperties.cartBtnTextfontsize + 'px',
348
- textTransform: sectionproperties.cartBtnTexttransform,
349
- fontWeight: sectionproperties.cartBtnTextfontweight,
350
- border: sectionproperties.cartbtnborderwidth + 'px solid ' + sectionproperties.cartbtnbordercolor,
351
- transition: '.3s',
352
- opacity: sectionproperties.cartbtn_opacity,
353
- display: 'flex',
354
- alignItems: 'center',
355
- justifyContent: 'center',
356
- overflow: 'hidden',
357
- margin: 0,
358
- position: 'relative',
359
- ':hover': {
360
- background: sectionproperties.cartbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColoronhover,
361
- color: sectionproperties.cartBtnTextcoloronhover,
362
- opacity: sectionproperties.cartbtn_opacityonhover,
363
- },
364
- }),
365
- quantitybtn: css({
366
- width: sectionproperties.quantitybtn_height + 'px',
367
- height: sectionproperties.quantitybtn_width + 'px',
368
- display: 'flex',
369
- flexDirection: 'column',
370
- overflow: 'hidden',
371
- borderRadius: sectionproperties.quantitybtn_borderradius + 'px',
372
- background: sectionproperties.quantitybtn_bgcolor,
373
- alignItems: 'center',
374
- justifyContent: 'center',
375
- margin: 0,
376
- position: 'relative',
377
- fontWeight: sectionproperties.quantitybtn_textfontweight,
378
- color: sectionproperties.quantitybtn_textcolor,
379
- fontSize: sectionproperties.quantitybtn_textfontsize + 'px',
380
- border: sectionproperties.quantitybtnborderwidth + 'px solid ' + sectionproperties.quantitybtnbordercolor,
381
- }),
382
- quantitybtn_text: css({
383
- margin: 'auto',
384
- }),
385
- add_quantitybtn_icon_container: css({
386
- position: 'relative',
387
- width: '35px',
388
- height: '35px',
389
- background: sectionproperties.add_quantitybtn_bgcolor,
390
- display: 'flex',
391
- alignItems: 'center',
392
- justifyContent: 'center',
393
- borderRadius: sectionproperties.add_quantitybtn_borderradius + 'px',
394
- fontSize: sectionproperties.add_quantitybtn_textfontsize + 'px',
395
- color: sectionproperties.add_quantitybtn_textcolor,
396
- transition: '.3s',
397
- ':hover': {
398
- color: sectionproperties.add_quantitybtn_textcoloronhover,
399
- background: sectionproperties.add_quantitybtn_bgcoloronhover,
400
- },
401
- }),
402
- minus_quantitybtn_icon_container: css({
403
- position: 'relative',
404
- width: '35px',
405
- height: '35px',
406
- background: sectionproperties.remove_quantitybtn_bgcolor,
407
- display: 'flex',
408
- alignItems: 'center',
409
- justifyContent: 'center',
410
- borderRadius: sectionproperties.remove_quantitybtn_borderradius + 'px',
411
- fontSize: sectionproperties.remove_quantitybtn_textfontsize + 'px',
412
- color: sectionproperties.remove_quantitybtn_textcolor,
413
- transition: '.3s',
414
- ':hover': {
415
- color: sectionproperties.remove_quantitybtn_textcoloronhover,
416
- background: sectionproperties.remove_quantitybtn_bgcoloronhover,
417
- },
418
- }),
419
- imagecont: css({
420
- width: '60px',
421
- height: '60px',
422
- border: sectionproperties.prodimage_borderwidth + 'px solid ' + sectionproperties.prodimage_color,
423
- backgroundColor: sectionproperties.prodimage_bgcolor,
424
- borderBottomLeftRadius: sectionproperties.prodimage__borderBottomLeftRadius + 'px',
425
- borderBottomRightRadius: sectionproperties.prodimage__borderBottomRightRadius + 'px',
426
- borderTopLeftRadius: sectionproperties.prodimage__borderTopLeftRadius + 'px',
427
- borderTopRightRadius: sectionproperties.prodimage__borderTopRightRadius + 'px',
428
- display: 'flex',
429
- alignItems: 'center',
430
- justifyContent: 'center',
431
- backgroundRepeat: 'no-repeat',
432
- backgroundSize: 'cover',
433
- backgroundPosition: 'center',
434
- position: 'relative',
435
- }),
436
- relatedproductNameStyles: css({
437
- color: sectionproperties.relatedprodNameColor,
438
- fontSize: sectionproperties.relatedprodNameFontSize + 'px',
439
- fontWeight: sectionproperties.relatedprodnamefontWeight,
440
- textTransform: sectionproperties.relatedprodNameTextTranform,
441
-
442
- ':hover': {
443
- color: sectionproperties.relatedprodNameColoronhover,
444
- },
445
- }),
446
- relatedproductPricestyles: css({
447
- color: sectionproperties.relatedprodPriceColor,
448
- fontSize: sectionproperties.relatedprodpriceFontSize + 'px',
449
- fontWeight: sectionproperties.relatedprodPriceFontWeight,
450
- }),
451
- cardcontainer: css({
452
- backgroundColor: sectionproperties.backgroundColor,
453
- borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
454
- borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
455
- borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
456
- borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
457
- paddingRight: sectionproperties.paddingRight + 'px',
458
- paddingLeft: sectionproperties.paddingLeft + 'px',
459
- paddingTop: sectionproperties.paddingTop + 'px',
460
- paddingBottom: sectionproperties.paddingBottom + 'px',
461
- border: sectionproperties.sectioncardborderwidth + 'px solid ' + sectionproperties.sectioncardbordercolor,
462
- }),
463
- wishlist_btn: css({
464
- width: sectionproperties.favBtnWidth + 'px',
465
- height: sectionproperties.favBtnHeight + 'px',
466
- background: sectionproperties.favbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColor,
467
- borderRadius: sectionproperties.fav_btn_borderBottomLeftRadius + 'px',
468
- color: sectionproperties.favBtniconcolor,
469
- fontSize: sectionproperties.favBtnTextfontsize + 'px',
470
- textTransform: sectionproperties.favBtnTexttransform,
471
- fontWeight: sectionproperties.favBtnTextfontweight,
472
- transition: '.3s',
473
- boxShadow: sectionproperties.favbtn_showshadow == 'Show' ? '0 0 10px ' + sectionproperties.favbtn_shadowcolor : '',
474
- border: sectionproperties.favbtnborderwidth + 'px solid ' + sectionproperties.favbtnbordercolor,
475
- opacity: sectionproperties.favbtn_opacity,
476
- cursor: 'pointer',
477
- ':hover': {
478
- background: sectionproperties.favbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColoronhover,
479
- color: sectionproperties.favBtnTextcoloronhover,
480
- opacity: sectionproperties.favbtn_opacityonhover,
481
- },
482
- }),
483
- productname: css({
484
- fontSize: sectionproperties.prodNameFontSize + 'px',
485
- textTransform: sectionproperties.prodNameTextTranform,
486
- fontWeight: sectionproperties.prodNameFontWeight,
487
- color: sectionproperties.prodNameColor,
488
- }),
489
- productnamehover: css({
490
- transition: '.3s',
491
- ':hover': {
492
- color: sectionproperties.prodNameColorOnHover,
493
- },
494
- }),
495
- };
496
- const returnpolicyobj = (policytype) => {
497
- var policyobj = {};
498
- fetchAuthorizationQueryContext.data.data.instinfo.instpolicies.forEach(function (item, index) {
499
- if (item.policytype == policytype) {
500
- policyobj = item;
501
- }
502
- });
503
- return policyobj;
504
- };
505
- return (
506
- <div class="col-lg-12 pl-2 pr-2 mb-md-3">
507
- <div class="row m-0 w-100">
508
- <div class="col-lg-12 p-0">
509
- <div class={`${productinfo_cssstyles.cardcontainer}`} style={{ minHeight: '70vh' }}>
510
- <div className={'row m-0 w-100'}>
511
- <div class="col-lg-5 col-md-12 col-sm-12 mb-md-3 pl-1 pr-1">
512
- <div
513
- class="col-lg-12 p-0 "
514
- style={{
515
- width: '100%',
516
- height: '100%',
517
- }}
518
- >
519
- <ImageGallery items={productimagesarray} thumbnailPosition="bottom" showNav={false} showPlayButton={false} />
520
- </div>
521
- </div>
522
- <div class={langdetect == 'en' ? 'col-lg-7 col-md-12 col-sm-12 pl-2 pr-0' : 'col-lg-7 col-md-12 col-sm-12 pl-0 pr-2'}>
523
- <div class="row m-0 w-100">
524
- {/* Name */}
525
- <div class="row m-0 w-100">
526
- {props.srcfromprops != 'templatdraftrouter' && (
527
- <div class="col-lg-10 col-md-10 col-sm-10 p-0 mb-2 d-flex justify-content-start align-items-center">
528
- <p
529
- class={
530
- `${productinfo_cssstyles.productname} ${productinfo_cssstyles.productnamehover}` +
531
- ' m-0 p-0 wordbreak d-flex justify-content-start cursor-pointer font-sm-15 '
532
- }
533
- onClick={() => {
534
- routingcountext(StaticPagesLinksContext.productinfo, true, fetchProductInfoQueryContext.data.data.productinfo.productid);
535
- }}
536
- >
537
- {langdetect == 'en' ? fetchProductInfoQueryContext.data.data.productinfo.name_en : fetchProductInfoQueryContext.data.data.productinfo.name_ar}
538
- </p>
539
- </div>
540
- )}
541
- {props.srcfromprops == 'templatdraftrouter' && (
542
- <div class="col-lg-10 col-md-10 col-sm-10 p-0 mb-2 d-flex justify-content-start align-items-center">
543
- <p class={`${productinfo_cssstyles.productname}` + ' m-0 p-0 wordbreak d-flex justify-content-start '}>
544
- {langdetect == 'en' ? fetchProductInfoQueryContext.data.data.productinfo.name_en : fetchProductInfoQueryContext.data.data.productinfo.name_ar}
545
- </p>
546
- </div>
547
- )}
548
- </div>
549
- {/* Desc */}
550
- {langdetect == 'en' && fetchProductInfoQueryContext.data.data.productinfo.description_en != '' && (
551
- <div class="col-lg-12 p-0 mb-5 d-flex justify-content-center" style={{ minHeight: '15vh' }}>
552
- <div class="row m-0 w-100 d-flex flex-column">
553
- <p class="m-0 p-0 text-light font-15 d-flex justify-content-start">{lang.description}:</p>
554
- {/* <ShowMoreText lines={5} more={lang.showmore} less={lang.showless} anchorClass="my-anchor-css-class" expanded={false} truncatedEndingComponent={'... '}> */}
555
- <p
556
- class={'text-black text-capitalize m-0 p-0 wordbreak'}
557
- style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}
558
- dangerouslySetInnerHTML={{
559
- __html:
560
- langdetect == 'en'
561
- ? fetchProductInfoQueryContext.data.data.productinfo.description_en
562
- : fetchProductInfoQueryContext.data.data.productinfo.description_ar,
563
- }}
564
- ></p>
565
- {/* </ShowMoreText> */}
566
- </div>
567
- </div>
568
- )}
569
- {langdetect == 'ar' && fetchProductInfoQueryContext.data.data.productinfo.description_ar != '' && (
570
- <div class="col-lg-12 p-0 mb-5 d-flex justify-content-center" style={{ minHeight: '15vh' }}>
571
- <div class="row m-0 w-100 d-flex flex-column">
572
- <p class="m-0 p-0 text-light font-15 d-flex justify-content-start">{lang.description}:</p>
573
- <ShowMoreText lines={5} more="Show more" less="Show less" anchorClass="my-anchor-css-class" expanded={false} truncatedEndingComponent={'... '}>
574
- <p
575
- class={'text-black text-capitalize m-0 p-0 wordbreak'}
576
- style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}
577
- dangerouslySetInnerHTML={{
578
- __html:
579
- langdetect == 'en'
580
- ? fetchProductInfoQueryContext.data.data.productinfo.description_en
581
- : fetchProductInfoQueryContext.data.data.productinfo.description_ar,
582
- }}
583
- ></p>
584
- </ShowMoreText>
585
- </div>
586
- </div>
587
- )}
588
- {fetchProductInfoQueryContext.data.data.productinfo.hasvariants == 1 && (
589
- <div class="row m-0 w-100 d-flex align-items-start">
590
- {fetchProductInfoQueryContext.data.data.productinfo.productoptions.map((item, index) => {
591
- return (
592
- <div class="col-lg-12 p-0 mb-3 d-flex justify-content-start">
593
- <div class="row m-0 w-100 d-flex align-items-start">
594
- <div class="col-lg-12 col-md-12 p-0 d-flex mb-1">
595
- <p
596
- class={' m-0 p-0 wordbreak'}
597
- style={{
598
- color: sectionproperties.varianttitle_color,
599
- fontWeight: sectionproperties.varianttitle_fontweight,
600
- textTransform: sectionproperties.varianttitle_texttransform,
601
- fontSize: sectionproperties.varianttitle_fontSize + 'px',
602
- }}
603
- >
604
- {lang.select} {item.optionname}:
605
- </p>
606
- </div>
607
- <div class="col-lg-12 col-md-12 p-0 d-flex pb-md-3 justify-content-start align-items-start scrollhorixontalcontainer">
608
- {item.optionvalues.map((optionvaluesitem, optionvaluesindex) => {
609
- var isoptionvalueselected = 0;
610
- if (optionvaluesitem.isselected == 1) {
611
- isoptionvalueselected = 1;
612
- } else {
613
- isoptionvalueselected = 0;
614
- }
615
- var isoptionvaluedenabled = 0;
616
- if (optionvaluesitem.isenabled == 1) {
617
- isoptionvaluedenabled = 1;
618
- } else {
619
- isoptionvaluedenabled = 0;
620
- }
621
- if (item.optionname == 'color') {
622
- return (
623
- <div
624
- class={
625
- productinfostyles.color_container +
626
- ' mr-2 variabttcontainer ' +
627
- `${isoptionvalueselected == 1 ? productinfostyles.color_container_active : ''}`
628
- }
629
- onClick={() => {
630
- if (optionvaluesitem.isenabled == 1) {
631
- selectproductoptionvalue(index, optionvaluesitem, optionvaluesindex);
632
- }
633
- }}
634
- style={{
635
- background: optionvaluesitem.valuename,
636
- opacity: isoptionvaluedenabled == 1 ? 1 : 0.2,
637
- cursor: isoptionvaluedenabled == 1 ? 'pointer' : 'not-allowed',
638
- }}
639
- ></div>
640
- );
641
- } else if (item.optionname == 'size') {
642
- return (
643
- <div
644
- class={
645
- `${productinfostyles.variant_container} ${productinfostyles.size_variant_container}` +
646
- ' mr-2 variabttcontainer ' +
647
- `${isoptionvalueselected == 1 ? productinfostyles.variant_container_active : ''}`
648
- }
649
- onClick={() => {
650
- if (optionvaluesitem.isenabled == 1) {
651
- selectproductoptionvalue(index, optionvaluesitem, optionvaluesindex);
652
- }
653
- }}
654
- style={{
655
- backgroundColor: isoptionvaluedenabled == 1 ? '' : 'grey',
656
- cursor: isoptionvaluedenabled == 1 ? 'pointer' : 'not-allowed',
657
- }}
658
- >
659
- <p
660
- class={'font-12 wordbreak m-0 p-0 d-flex align-items-center justify-content-center'}
661
- style={{
662
- color: sectionproperties.varianttext_color,
663
- fontWeight: sectionproperties.varianttext_fontweight,
664
- textTransform: sectionproperties.varianttext_texttransform,
665
- fontSize: sectionproperties.varianttext_fontSize + 'px',
666
- }}
667
- >
668
- {optionvaluesitem.valuename}
669
- </p>
670
- </div>
671
- );
672
- } else {
673
- return (
674
- <div
675
- class={
676
- productinfostyles.variant_container +
677
- ' mr-2 variabttcontainer ' +
678
- `${isoptionvalueselected == 1 ? productinfostyles.variant_container_active : ''}`
679
- }
680
- onClick={() => {
681
- if (optionvaluesitem.isenabled == 1) {
682
- selectproductoptionvalue(index, optionvaluesitem, optionvaluesindex);
683
- }
684
- }}
685
- style={{
686
- backgroundColor:
687
- isoptionvalueselected == 1
688
- ? 'green'
689
- : isoptionvaluedenabled == 1
690
- ? sectionproperties.variantcontainer_bgcolor
691
- : 'grey',
692
- minWidth: sectionproperties.variantcontainer_minwidth + 'px',
693
- height: sectionproperties.variantcontainer_height + 'px',
694
- borderRadius: sectionproperties.variantcontainer_borderBottomLeftRadius + 'px',
695
- color: sectionproperties.variantcontainer_color,
696
- cursor: isoptionvaluedenabled == 1 ? 'pointer' : 'not-allowed',
697
- }}
698
- >
699
- <p
700
- class={'m-0 p-0 d-flex align-items-center justify-content-center'}
701
- style={{
702
- color: sectionproperties.varianttext_color,
703
- fontWeight: sectionproperties.varianttext_fontweight,
704
- textTransform: sectionproperties.varianttext_texttransform,
705
- fontSize: sectionproperties.varianttext_fontSize + 'px',
706
- }}
707
- >
708
- {optionvaluesitem.valuename}
709
- </p>
710
- </div>
711
- );
712
- }
713
- })}
714
- </div>
715
- </div>
716
- </div>
717
- );
718
- })}
719
- </div>
720
- )}
721
- <div class="col-lg-12 p-0 mb-3">
722
- <div
723
- style={{
724
- width: sectionproperties.availability_width + 'px',
725
- height: sectionproperties.availability_height + 'px',
726
- background:
727
- fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
728
- ? sectionproperties.availability_availablebgcolor
729
- : sectionproperties.availability_limitedbgcolor,
730
- borderRadius: sectionproperties.availability_borderrradius + 'px',
731
- border:
732
- fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
733
- ? sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_availabletextcolor
734
- : sectionproperties.availability_borderwidtth + 'px solid ' + sectionproperties.availability_limitedtextcolor,
735
- }}
736
- class="d-flex justify-content-start align-items-center pl-3 pr-3"
737
- >
738
- <p
739
- class="m-0 p-0 font-weight-500 wordbreak"
740
- style={{
741
- color:
742
- fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit'
743
- ? sectionproperties.availability_availabletextcolor
744
- : sectionproperties.availability_limitedtextcolor,
745
- fontSize: sectionproperties.availability_fontsize + 'px',
746
- }}
747
- >
748
- <span style={{ color: sectionproperties.availability_textcolor }} class="font-weight-600">
749
- {lang.availability}:
750
- </span>
751
- <span class="ml-1 mr-1">{fetchProductInfoQueryContext.data.data.productinfo.quantavailtype == 'nolimit' ? lang.available : lang.limitedquantity}</span>
752
- </p>
753
- </div>
754
- </div>
755
- <div class="col-lg-12 p-0 mb-3">
756
- <hr class="mb-0 mt-2" />
757
- </div>
758
-
759
- <div class="row m-0 w-100 d-flex align-items-center mb-3">
760
- <div
761
- style={{
762
- width: sectionproperties.iconcontainerwidth + 'px',
763
- height: sectionproperties.iconcontainerheight + 'px',
764
- borderRadius: sectionproperties.iconcontainerborderbl + 'px',
765
- background: sectionproperties.iconcontainerbg,
766
- }}
767
- >
768
- <i class="h-100 d-flex align-items-center justify-content-center">
769
- <RiSecurePaymentLine
770
- size={20}
771
- style={{
772
- color: sectionproperties.iconcontainercolor,
773
- }}
774
- />
775
- </i>
776
- </div>
777
- <div class="col-lg-9 col-md-9 col-sm-9 d-flex justofy-content-start">
778
- <p
779
- class="m-0 p-0 wordbreak"
780
- style={{
781
- fontSize: sectionproperties.icontextfontsize + 'px',
782
- color: sectionproperties.icontextcolor,
783
- fontWeight: sectionproperties.icontextfontweight,
784
- }}
785
- >
786
- {lang.securepayment}
787
- </p>
788
- </div>
789
- </div>
790
- </div>
791
- </div>
792
- </div>
793
- </div>
794
- </div>
795
- <div class="col-lg-12 p-0 pt-2 ">
796
- <div class={`${productinfo_cssstyles.cardcontainer}`} style={{ minHeight: '70vh' }}>
797
- <Productinfotabs sectionpropertiesprops={sectionproperties} />
798
- </div>
799
- </div>
800
- </div>
801
- </div>
802
- );
803
- };
804
- export default Serviceinfo;