tabexseriescomponents 0.0.64 → 0.0.66

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 (178) hide show
  1. package/dist/index.cjs.js +25023 -16634
  2. package/dist/index.esm.js +25033 -16645
  3. package/dist/index.umd.js +24824 -16437
  4. package/package.json +1 -1
  5. package/src1-10/Contexts/LanguageContext.jsx +347 -0
  6. package/src1-10/Contexts/ProductsCardsSectionContext.jsx +28 -0
  7. package/src1-10/StylesJS/Customstyles.js +235 -0
  8. package/src1-10/TabexComponents/Cards/CategoryCardwithhoveraction/CategoryCardwithhoveraction.jsx +205 -0
  9. package/src1-10/TabexComponents/Cards/Categorycard_fullimage/Categorycard_fullimage.jsx +239 -0
  10. package/src1-10/TabexComponents/Cards/Categorycard_slidebgscaled/Categorycard_slidebgscaled.jsx +198 -0
  11. package/src1-10/TabexComponents/Cards/Categorycard_with_trianglebg/Categorycard_with_trianglebg.jsx +169 -0
  12. package/src1-10/TabexComponents/Cards/Categorycard_with_twolinestransition/Categorycard_with_twolinestransition.jsx +180 -0
  13. package/src1-10/TabexComponents/Cards/Categorycard_withshapes/Categorycard_withshapes.jsx +162 -0
  14. package/src1-10/TabexComponents/Cards/Categorycard_withtext/Categorycard_withtext.jsx +184 -0
  15. package/src1-10/TabexComponents/Cards/Classiccategorycard/Classiccategorycard.jsx +149 -0
  16. package/src1-10/TabexComponents/Cards/Horizontalcard/Horizontalcard.jsx +271 -0
  17. package/src1-10/TabexComponents/Cards/MenuCard/MenuCard.jsx +546 -0
  18. package/src1-10/TabexComponents/Cards/ModernProductCard/ModernProductCard.jsx +474 -0
  19. package/src1-10/TabexComponents/Cards/Productcard6/Productcard6.jsx +290 -0
  20. package/src1-10/TabexComponents/Cards/Productcard7/Productcard7.jsx +278 -0
  21. package/src1-10/TabexComponents/Cards/Productcard_animatedbuttons/Productcard_animatedbuttons.jsx +293 -0
  22. package/src1-10/TabexComponents/Cards/Productcard_with_circularbg/Productcard_with_circularbg.jsx +278 -0
  23. package/src1-10/TabexComponents/Cards/Productcard_with_circularhover/Productcard_with_circularhover.jsx +312 -0
  24. package/src1-10/TabexComponents/Cards/Productcard_with_slideanimation/Productcard_with_slideanimation.jsx +279 -0
  25. package/src1-10/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants.jsx +293 -0
  26. package/src1-10/TabexComponents/Cards/Productcard_with_zoominonhover/Productcard_with_zoominonhover.jsx +456 -0
  27. package/src1-10/TabexComponents/Cards/Productcarddefault/Productcarddefault.jsx +272 -0
  28. package/src1-10/TabexComponents/Cards/Productccard_with_imageontopleft/Productccard_with_imageontopleft.jsx +286 -0
  29. package/src1-10/TabexComponents/Cards/Prouductcard_with_zoomhover/Prouductcard_with_zoomhover.jsx +127 -0
  30. package/src1-10/TabexComponents/Cards/Simplecategorycardwithtextbelow/Simplecategorycardwithtextbelow.jsx +126 -0
  31. package/src1-10/TabexComponents/Cards/Simpleproductcard/Simpleproductcard.jsx +292 -0
  32. package/src1-10/TabexComponents/Cards/StylishProductCard/StylishProductCard.jsx +281 -0
  33. package/src1-10/TabexComponents/Footer/Footer1/Footer1.jsx +418 -0
  34. package/src1-10/TabexComponents/Footer/Footer2/Footer2.jsx +381 -0
  35. package/src1-10/TabexComponents/Footer/Footer3/Footer3.jsx +316 -0
  36. package/src1-10/TabexComponents/Footer/Footer4/Footer4.jsx +437 -0
  37. package/src1-10/TabexComponents/Footer/Footer5/Footer5.jsx +488 -0
  38. package/src1-10/TabexComponents/Footer/Footer6/Footer6.jsx +286 -0
  39. package/src1-10/TabexComponents/Footer/Footer7/Footer7.jsx +370 -0
  40. package/src1-10/TabexComponents/Footer/Simplefooter/Simplefooter.jsx +231 -0
  41. package/src1-10/TabexComponents/Generalfiles/images/egyptflag.png +0 -0
  42. package/src1-10/TabexComponents/Generalfiles/images/noimage.png +0 -0
  43. package/src1-10/TabexComponents/Generalfiles/images/payment/cod.png +0 -0
  44. package/src1-10/TabexComponents/Generalfiles/images/payment/fawry.png +0 -0
  45. package/src1-10/TabexComponents/Generalfiles/images/payment/payment.png +0 -0
  46. package/src1-10/TabexComponents/Generalfiles/images/payment/paymob.png +0 -0
  47. package/src1-10/TabexComponents/Generalfiles/images/payment/paypal.png +0 -0
  48. package/src1-10/TabexComponents/Generalfiles/images/payment/visa.png +0 -0
  49. package/src1-10/TabexComponents/Generalfiles/images/shoppingcart.png +0 -0
  50. package/src1-10/TabexComponents/Generalfiles/images/tabexlogo.png +0 -0
  51. package/src1-10/TabexComponents/Generalfiles/images/unknownmaleuser.png +0 -0
  52. package/src1-10/TabexComponents/Generalfiles/images/usflag.png +0 -0
  53. package/src1-10/TabexComponents/Generalfiles/images/whatsapp.png +0 -0
  54. package/src1-10/TabexComponents/Headers/AllinoneHeader/AllinoneHeader.jsx +722 -0
  55. package/src1-10/TabexComponents/Headers/ClassicHeader/ClassicHeader.jsx +681 -0
  56. package/src1-10/TabexComponents/Headers/Header4/Header4.jsx +614 -0
  57. package/src1-10/TabexComponents/Headers/Header6/Header6.jsx +666 -0
  58. package/src1-10/TabexComponents/Headers/Header8/Header8.jsx +888 -0
  59. package/src1-10/TabexComponents/Headers/HeaderRestaurant/HeaderRestaurant.jsx +710 -0
  60. package/src1-10/TabexComponents/Headers/Header_threesectionslogocentered/Header_threesectionslogocentered.jsx +769 -0
  61. package/src1-10/TabexComponents/Headers/Headerresponsive/Headerresponsive.jsx +666 -0
  62. package/src1-10/TabexComponents/Headers/HeaderwithContactinfo/HeaderwithContactinfo.jsx +940 -0
  63. package/src1-10/TabexComponents/Headers/Modernheader/Modernheader.jsx +714 -0
  64. package/src1-10/TabexComponents/Headers/StylishHeader/StylishHeader.jsx +833 -0
  65. package/src1-10/TabexComponents/Headers/Subheader/Subheader.jsx +239 -0
  66. package/src1-10/TabexComponents/Sections/BackgroundImages/Backgroundimage1/Backgroundimage1.jsx +312 -0
  67. package/src1-10/TabexComponents/Sections/BackgroundImages/Backgroundimage_with_toppill/Backgroundimage_with_toppill.jsx +278 -0
  68. package/src1-10/TabexComponents/Sections/BackgroundImages/BackgroundimageandTextsection/BackgroundimageandTextsection.jsx +129 -0
  69. package/src1-10/TabexComponents/Sections/BackgroundImages/Section_with_rightbgcont/Section_with_rightbgcont.jsx +153 -0
  70. package/src1-10/TabexComponents/Sections/BackgroundImages/Threebgimages/Threebgimages.jsx +295 -0
  71. package/src1-10/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages.jsx +409 -0
  72. package/src1-10/TabexComponents/Sections/Cards/CardsSection/CardsSection.jsx +793 -0
  73. package/src1-10/TabexComponents/Sections/Cards/CardsSection2/CardsSection2.jsx +486 -0
  74. package/src1-10/TabexComponents/Sections/Cards/CardsSection7/CardsSection7.js +888 -0
  75. package/src1-10/TabexComponents/Sections/Cards/CardsSection8/CardsSection8.js +419 -0
  76. package/src1-10/TabexComponents/Sections/Cards/Sixverticalcardssection/Sixverticalcardssection.jsx +512 -0
  77. package/src1-10/TabexComponents/Sections/Slideshow/AboutSection/AboutSection.jsx +281 -0
  78. package/src1-10/TabexComponents/Sections/Slideshow/Backgroundimage_with_topcircle/Backgroundimage_with_topcircle.jsx +166 -0
  79. package/src1-10/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection.jsx +152 -0
  80. package/src1-10/TabexComponents/Sections/Slideshow/Image_with_leftwords/Image_with_leftwords.jsx +139 -0
  81. package/src1-10/TabexComponents/Sections/Slideshow/Image_with_rightwords/Image_with_rightwords.jsx +146 -0
  82. package/src1-10/TabexComponents/Sections/Slideshow/Servicesection/Servicesection.jsx +209 -0
  83. package/src1-10/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards.jsx +145 -0
  84. package/src1-10/TabexComponents/Sections/Slideshow/Slideshow_with_rotatedsquare/Slideshow_with_rotatedsquare.jsx +252 -0
  85. package/src1-10/TabexComponents/Sections/Slideshow/Slideshow_with_squarebg/Slideshow_with_squarebg.jsx +175 -0
  86. package/src1-10/TabexComponents/Sections/Slideshow/Slideshowdifferentanimations/Slideshowdifferentanimations.jsx +154 -0
  87. package/src1-10/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade.jsx +193 -0
  88. package/src1-10/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide.jsx +197 -0
  89. package/src1-10/TabexComponents/Sections/Slideshow/Slideshowzoom/Arrow.js +91 -0
  90. package/src1-10/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom.jsx +309 -0
  91. package/src1-10/TabexComponents/StaticPages/AccountInformation/AccountInformation.jsx +260 -0
  92. package/src1-10/TabexComponents/StaticPages/CartSlider/CartSlider.jsx +459 -0
  93. package/src1-10/TabexComponents/StaticPages/Categoriesdropdown/Categoriesdropdown.jsx +216 -0
  94. package/src1-10/TabexComponents/StaticPages/Checkout/Checkout.jsx +1220 -0
  95. package/src1-10/TabexComponents/StaticPages/Filter/Filter.jsx +542 -0
  96. package/src1-10/TabexComponents/StaticPages/Login/FacebookLoginButton.jsx +51 -0
  97. package/src1-10/TabexComponents/StaticPages/Login/GoogleLoginButton.jsx +35 -0
  98. package/src1-10/TabexComponents/StaticPages/Login/Login.jsx +299 -0
  99. package/src1-10/TabexComponents/StaticPages/OrderSuccess/OrderSuccess.js +192 -0
  100. package/src1-10/TabexComponents/StaticPages/Ordershistory/Ordershistory.jsx +1271 -0
  101. package/src1-10/TabexComponents/StaticPages/Policies/Policies.jsx +353 -0
  102. package/src1-10/TabexComponents/StaticPages/Productinfo/Productinfo.jsx +1456 -0
  103. package/src1-10/TabexComponents/StaticPages/Searchlist/Searchlist.jsx +209 -0
  104. package/src1-10/TabexComponents/StaticPages/Signup/CustomerInformationForm.jsx +776 -0
  105. package/src1-10/TabexComponents/StaticPages/Signup/Signup.jsx +157 -0
  106. package/src1-10/TabexComponents/StaticPages/Staticpagesrouter/Staticpagesrouter.jsx +285 -0
  107. package/src1-10/TabexComponents/StaticPages/Viewcart/Viewcart.js +1090 -0
  108. package/src1-10/TabexComponents/StaticPages/Wishlist/Wishlist.jsx +606 -0
  109. package/src1-10/assets/images/cod.png +0 -0
  110. package/src1-10/assets/images/egyptflag.png +0 -0
  111. package/src1-10/assets/images/fawry.png +0 -0
  112. package/src1-10/assets/images/payment.png +0 -0
  113. package/src1-10/assets/images/paymob.png +0 -0
  114. package/src1-10/assets/images/paypal.png +0 -0
  115. package/src1-10/assets/images/shoppingcart.png +0 -0
  116. package/src1-10/assets/images/usflag.png +0 -0
  117. package/src1-10/assets/images/visa.png +0 -0
  118. package/src1-10/assets/images/whatsapp.png +0 -0
  119. package/src1-10/button.jsx +40 -0
  120. package/src1-10/index.jsx +179 -0
  121. package/src1-10/styles/Home.module.css +129 -0
  122. package/src1-10/styles/cards/Categorcycard_fullimage.module.css +10 -0
  123. package/src1-10/styles/cards/Categorycard_slidebgscaled.module.css +73 -0
  124. package/src1-10/styles/cards/Categorycard_withshapes.module.css +189 -0
  125. package/src1-10/styles/cards/Productcard6.module.css +9 -0
  126. package/src1-10/styles/cards/Productcard_with_circularbg.module.css +137 -0
  127. package/src1-10/styles/cards/Productccard_with_zoominonhover.module.css +51 -0
  128. package/src1-10/styles/cards/Prouductcard_with_zoomhover.module.css +61 -0
  129. package/src1-10/styles/cards/categorycard.module.css +102 -0
  130. package/src1-10/styles/cards/categorycard3.module.css +51 -0
  131. package/src1-10/styles/cards/categorycardwithtext.module.css +40 -0
  132. package/src1-10/styles/cards/productcard_animatedbuttons.module.css +104 -0
  133. package/src1-10/styles/cards/productcard_with_textonhover.module.css +12 -0
  134. package/src1-10/styles/cards/productccard_with_imageontopleft.module.css +85 -0
  135. package/src1-10/styles/general/bootstrap.css +4415 -0
  136. package/src1-10/styles/general/dropdown.css +199 -0
  137. package/src1-10/styles/general/editorbardropdown.module.css +94 -0
  138. package/src1-10/styles/general/filter.module.css +108 -0
  139. package/src1-10/styles/general/form.module.css +273 -0
  140. package/src1-10/styles/general/general.module.css +861 -0
  141. package/src1-10/styles/general/image-gallery.css +481 -0
  142. package/src1-10/styles/general/react-accessible-accordion.module.css +52 -0
  143. package/src1-10/styles/general/react-phone-input-2.module.css +927 -0
  144. package/src1-10/styles/general/scrollbtn.module.css +22 -0
  145. package/src1-10/styles/general/slick.module.css +166 -0
  146. package/src1-10/styles/general/tabs.module.css +110 -0
  147. package/src1-10/styles/general/workplaceeditor.module.css +328 -0
  148. package/src1-10/styles/globals.css +26 -0
  149. package/src1-10/styles/headers/Allinoneheader.module.css +91 -0
  150. package/src1-10/styles/headers/Header7.module.css +50 -0
  151. package/src1-10/styles/headers/Header_threesectionslogocentered.module.css +97 -0
  152. package/src1-10/styles/headers/Sideheader.module.css +108 -0
  153. package/src1-10/styles/headers/classicheaderstyles.module.css +16 -0
  154. package/src1-10/styles/headers/dropdown.css +0 -0
  155. package/src1-10/styles/headers/header4.module.css +175 -0
  156. package/src1-10/styles/headers/header5.module.css +30 -0
  157. package/src1-10/styles/headers/header6.module.css +117 -0
  158. package/src1-10/styles/headers/header_contactinfo.module.css +78 -0
  159. package/src1-10/styles/headers/headerresturant.module.css +89 -0
  160. package/src1-10/styles/headers/headerstyles.module.css +24 -0
  161. package/src1-10/styles/headers/modernheader.module.css +78 -0
  162. package/src1-10/styles/headers/subheader.module.css +114 -0
  163. package/src1-10/styles/sections/Backgroundimage1.module.css +17 -0
  164. package/src1-10/styles/sections/Backgroundimage_with_topcircle.module.css +28 -0
  165. package/src1-10/styles/sections/Section_with_rightbgcont.module.css +49 -0
  166. package/src1-10/styles/sections/Slideshow_with_rotatedsquare.module.css +35 -0
  167. package/src1-10/styles/sections/Slideshow_with_squarebg.module.css +39 -0
  168. package/src1-10/styles/staticpages/accordion.module.css +9 -0
  169. package/src1-10/styles/staticpages/cart.module.css +108 -0
  170. package/src1-10/styles/staticpages/dropdown.css +196 -0
  171. package/src1-10/styles/staticpages/filter.module.css +139 -0
  172. package/src1-10/styles/staticpages/login.module.css +146 -0
  173. package/src1-10/styles/staticpages/productinfo.module.css +54 -0
  174. package/src1-10/styles/staticpages/shop.module.css +191 -0
  175. package/src1-10/styles/staticpages/signup.module.css +206 -0
  176. package/src1-10/styles/staticpages/staticroutersidenav.module.css +129 -0
  177. package/src1-10/styles/staticpages/viewcart.module.css +129 -0
  178. package/src1-10/styles/staticpages/wishlist.module.css +29 -0
@@ -0,0 +1,456 @@
1
+ import React, { useEffect, useState, useContext } from 'react';
2
+ import cardsstyles from '../../../styles/cards/Productccard_with_zoominonhover.module.css';
3
+ import { css } from 'glamor';
4
+ import { AiFillStar, AiOutlineHeart } from 'react-icons/ai';
5
+ import { IKImage } from 'imagekitio-react';
6
+ import { FiShoppingCart } from 'react-icons/fi';
7
+ import { IKpublicKey, IKurlEndpoint } from '../../../../Env';
8
+ import { CircularProgress } from 'react-cssfx-loading';
9
+ const Productcard_with_zoominonhover = (props) => {
10
+ const [sectionproperties, setsectionproperties] = useState('');
11
+ const [item, setitem] = useState(props.cardinfoitemprops);
12
+ const StatePagePropertiesContext = props.actions.StatePagePropertiesContext;
13
+ const lang = props.actions.lang;
14
+ const langdetect = props.actions.langdetect;
15
+ const setShowProductInfoModalContext = props.actions.setShowProductInfoModalContext;
16
+ const addtofavoritescontext = props.actions.addtofavoritescontext;
17
+ const setProductIdProdutInfoModalContext = props.actions.setProductIdProdutInfoModalContext;
18
+ const AddtoCartContext = props.actions.AddtoCartContext;
19
+ const AddtoCartMutationContext = props.actions.AddtoCartMutationContext;
20
+ const NotificationManager = NotificationManager;
21
+ useEffect(() => {
22
+ if (props.srcfrom == 'addsectionform') {
23
+ var secpropobj = {};
24
+ props.defaultproperties.forEach(function (defaultpropobj, defaultpropindex) {
25
+ secpropobj[defaultpropobj.property_css_name] = defaultpropobj.property_value;
26
+ });
27
+ setsectionproperties({ ...secpropobj });
28
+ } else {
29
+ var secpropobj = {};
30
+ StatePagePropertiesContext.pageobj.sections.forEach(function (sectionitem, sectionindex) {
31
+ if (sectionitem.sectionid == props.sectionidprops) {
32
+ sectionitem.sectionproperties.forEach(function (sectionpropertiesobj, sectionpropertiesindex) {
33
+ secpropobj[sectionpropertiesobj.property_css_name] = sectionpropertiesobj.property_value;
34
+ });
35
+ }
36
+ });
37
+ setsectionproperties({ ...secpropobj });
38
+ }
39
+ }, [StatePagePropertiesContext]);
40
+ useEffect(() => {
41
+ if (props.cardinfoitemprops != undefined) {
42
+ setitem(props.cardinfoitemprops);
43
+ }
44
+ }, [props.cardinfoitemprops]);
45
+ const updatequantity = (type) => {
46
+ var tempitem = { ...item };
47
+ tempitem.quantity = parseInt(tempitem.quantity);
48
+ if (type == 'add') {
49
+ tempitem.quantity = tempitem.quantity + 1;
50
+ } else if (type == 'remove') {
51
+ tempitem.quantity = tempitem.quantity - 1;
52
+ }
53
+ if (tempitem.quantity <= 0) {
54
+ tempitem.quantity = 0;
55
+ }
56
+ setitem({ ...tempitem });
57
+ };
58
+ const addtocartfunc = () => {
59
+ const addtocardpayloadobj = {
60
+ functype: 'add',
61
+ productid: item.productid,
62
+ variantid: '',
63
+ quantity: item.quantity,
64
+ };
65
+
66
+ var runfunc = false;
67
+ if (addtocardpayloadobj.productid.length != 0 && addtocardpayloadobj.quantity > 0) {
68
+ if (item.hasvariants == 1) {
69
+ if (addtocardpayloadobj.variantid.length != 0) {
70
+ runfunc = true;
71
+ } else {
72
+ NotificationManager.warning('', 'Please Choose Product Options');
73
+ }
74
+ } else {
75
+ runfunc = true;
76
+ }
77
+ } else {
78
+ NotificationManager.warning('', 'Please Choose Quantity');
79
+ }
80
+
81
+ if (runfunc == true) {
82
+ AddtoCartContext(addtocardpayloadobj);
83
+ }
84
+ };
85
+ const cardsstyles2 = {
86
+ productcard: css({
87
+ background: sectionproperties.backgroundColortransparent == 'Transparent' ? 'transparent' : sectionproperties.backgroundColor,
88
+ opacity: sectionproperties.cardbg_opacity,
89
+ borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
90
+ borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
91
+ borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
92
+ borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
93
+ paddingTop: sectionproperties.paddingTop + 'px',
94
+ paddingBottom: sectionproperties.paddingBottom + 'px',
95
+ paddingLeft: sectionproperties.paddingLeft + 'px',
96
+ paddingRight: sectionproperties.paddingRight + 'px',
97
+ boxShadow: sectionproperties.sectioncardshadow == 'Show' ? '0 0 10px ' + sectionproperties.sectioncardshadowcolor : 'none',
98
+ border: sectionproperties.sectioncardborderwidth + 'px solid ' + sectionproperties.sectioncardbordercolor,
99
+ transition: '.3s',
100
+ ':hover': {
101
+ zIndex: 1000,
102
+ },
103
+ }),
104
+ productNameStyles: css({
105
+ color: sectionproperties.prodNameColor,
106
+ fontSize: sectionproperties.prodNameFontSize + 'px',
107
+ textTransform: sectionproperties.prodNameTextTranform,
108
+ fontWeight: sectionproperties.prodNameFontWeight,
109
+ transition: '.3s',
110
+ cursor: 'pointer',
111
+ ':hover': {
112
+ color: sectionproperties.prodNameColorOnHover,
113
+ },
114
+ }),
115
+ productDescStyles: css({
116
+ color: sectionproperties.prodCatColor,
117
+ fontSize: sectionproperties.prodCatFontSize + 'px',
118
+ textTransform: sectionproperties.prodCatTextTranform,
119
+ fontWeight: sectionproperties.prodCatFontWeight,
120
+ transition: '.3s',
121
+ }),
122
+ productPricestyles: css({
123
+ color: sectionproperties.prodPriceColor,
124
+ fontSize: sectionproperties.prodpriceFontSize + 'px',
125
+ fontWeight: sectionproperties.prodPriceFontWeight,
126
+ }),
127
+ productSalePricestyles: css({
128
+ color: sectionproperties.prodsalePriceColor,
129
+ fontSize: sectionproperties.prodsalepriceFontSize + 'px',
130
+ fontWeight: sectionproperties.prodsalePriceFontWeight,
131
+ }),
132
+ producttotalstyles: css({
133
+ color: sectionproperties.total_color,
134
+ fontSize: sectionproperties.total_fontsize + 'px',
135
+ fontWeight: 500,
136
+ }),
137
+ wishlist_btn: css({
138
+ width: sectionproperties.favBtnWidth + 'px',
139
+ height: sectionproperties.favBtnHeight + 'px',
140
+ background: sectionproperties.favbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColor,
141
+ borderRadius: sectionproperties.fav_btn_borderBottomLeftRadius + 'px',
142
+ color: sectionproperties.favBtniconcolor,
143
+ fontSize: sectionproperties.favBtnTextfontsize + 'px',
144
+ textTransform: sectionproperties.favBtnTexttransform,
145
+ fontWeight: sectionproperties.favBtnTextfontweight,
146
+ transition: '.3s',
147
+ border: sectionproperties.favbtnborderwidth + 'px solid ' + sectionproperties.favbtnbordercolor,
148
+ ':hover': {
149
+ background: sectionproperties.favbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColoronhover,
150
+ color: sectionproperties.favBtnTextcoloronhover,
151
+ },
152
+ }),
153
+ cart_btn: css({
154
+ width: sectionproperties.cartBtnWidth + 'px',
155
+ height: sectionproperties.cartBtnHeight + 'px',
156
+ background: sectionproperties.cartbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColor,
157
+ borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
158
+ color: sectionproperties.cartBtnTextcolor,
159
+ fontSize: sectionproperties.cartBtnTextfontsize + 'px',
160
+ // fontSize: sectionproperties.cartBtn_iconFontSize + 'px',
161
+ textTransform: sectionproperties.cartBtnTexttransform,
162
+ fontWeight: sectionproperties.cartBtnTextfontweight,
163
+ border: sectionproperties.cartbtnborderwidth + 'px solid ' + sectionproperties.cartbtnbordercolor,
164
+ transition: '.3s',
165
+ ':hover': {
166
+ background: sectionproperties.cartbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColoronhover,
167
+ color: sectionproperties.cartBtnTextcoloronhover,
168
+ },
169
+ }),
170
+ img_container: css({
171
+ position: 'relative',
172
+ height: sectionproperties.prodimage_height + 'px',
173
+ border: sectionproperties.prodimage_borderwidth + 'px solid ' + sectionproperties.prodimage_color,
174
+ borderBottomLeftRadius: sectionproperties.prodimage__borderBottomLeftRadius + 'px',
175
+ borderBottomRightRadius: sectionproperties.prodimage__borderBottomRightRadius + 'px',
176
+ borderTopLeftRadius: sectionproperties.prodimage__borderTopLeftRadius + 'px',
177
+ borderTopRightRadius: sectionproperties.prodimage__borderTopRightRadius + 'px',
178
+ background: sectionproperties.prodimage_bgcolor,
179
+ }),
180
+ quantitybtn: css({
181
+ flex: 1,
182
+ border: sectionproperties.quantitybtnborderwidth + 'px solid ' + sectionproperties.quantitybtnbordercolor,
183
+ height: sectionproperties.quantitybtn_height + 'px',
184
+ height: '40px',
185
+ display: 'flex',
186
+ flexDirection: 'row',
187
+ overflow: 'hidden',
188
+ borderRadius: sectionproperties.quantitybtn_borderradius + 'px',
189
+ background: sectionproperties.quantitybtn_bgcolor,
190
+ alignItems: 'center',
191
+ justifyContent: 'center',
192
+ margin: 0,
193
+ position: 'relative',
194
+ fontWeight: sectionproperties.quantitybtn_textfontweight,
195
+ color: sectionproperties.quantitybtn_textcolor,
196
+ fontSize: sectionproperties.quantitybtn_textfontsize + 'px',
197
+ }),
198
+ quantitybtn_text: css({
199
+ margin: 'auto',
200
+ }),
201
+ add_quantitybtn_icon_container: css({
202
+ position: 'relative',
203
+ width: sectionproperties.add_quantitybtn_width + 'px',
204
+ height: sectionproperties.add_quantitybtn_height + 'px',
205
+ background: sectionproperties.add_quantitybtn_bgcolor,
206
+ display: 'flex',
207
+ alignItems: 'center',
208
+ justifyContent: 'center',
209
+ borderRadius: sectionproperties.add_quantitybtn_borderradius + 'px',
210
+ fontSize: sectionproperties.add_quantitybtn_textfontsize + 'px',
211
+ color: sectionproperties.add_quantitybtn_textcolor,
212
+ transition: '.3s',
213
+ ':hover': {
214
+ color: sectionproperties.add_quantitybtn_textcoloronhover,
215
+ background: sectionproperties.add_quantitybtn_bgcoloronhover,
216
+ },
217
+ }),
218
+ minus_quantitybtn_icon_container: css({
219
+ position: 'relative',
220
+ width: sectionproperties.remove_quantitybtn_width + 'px',
221
+ height: sectionproperties.remove_quantitybtn_height + 'px',
222
+ background: sectionproperties.remove_quantitybtn_bgcolor,
223
+ display: 'flex',
224
+ alignItems: 'center',
225
+ justifyContent: 'center',
226
+ borderRadius: sectionproperties.remove_quantitybtn_borderradius + 'px',
227
+ fontSize: sectionproperties.remove_quantitybtn_textfontsize + '25px',
228
+ color: sectionproperties.remove_quantitybtn_textcolor,
229
+ transition: '.3s',
230
+ ':hover': {
231
+ color: sectionproperties.remove_quantitybtn_textcoloronhover,
232
+ background: sectionproperties.remove_quantitybtn_bgcoloronhover,
233
+ },
234
+ }),
235
+ };
236
+ const addtocartbuttonrender = () => {
237
+ if (AddtoCartMutationContext.isLoading) {
238
+ if (AddtoCartMutationContext?.variables?.productid == item.productid) {
239
+ return (
240
+ <div className={' d-flex align-items-center justify-content-center '}>
241
+ <CircularProgress color="white" width="20px" height="20px" duration="1s" />
242
+ </div>
243
+ );
244
+ } else {
245
+ return lang.addtocart;
246
+ }
247
+ }
248
+ if (!AddtoCartMutationContext.isLoading) {
249
+ return lang.addtocart;
250
+ }
251
+ };
252
+ return (
253
+ <div
254
+ className="row ml-0 mr-0 w-100 mb-sm-5"
255
+ style={{
256
+ paddingLeft: sectionproperties.card_marginLeft + 'px',
257
+ paddingRight: sectionproperties.card_marginRight + 'px',
258
+ marginBottom: sectionproperties.marginBottom + 'px',
259
+ minHeight: '370px',
260
+ }}
261
+ >
262
+ {sectionproperties.length != 0 && (
263
+ <div className={`${cardsstyles.productcard} ${cardsstyles2.productcard}` + ' w-100 '}>
264
+ <div className={`${cardsstyles.card_inner}`}>
265
+ <div className={`${cardsstyles.card_thumbnail}`}>
266
+ <div
267
+ className={`${cardsstyles.img_container} ${cardsstyles2.img_container}` + ' w-100 '}
268
+ onClick={() => {
269
+ setShowProductInfoModalContext(true);
270
+ setProductIdProdutInfoModalContext(item.productid);
271
+ }}
272
+ style={{ cursor: 'pointer', overflow: 'hidden' }}
273
+ >
274
+ <IKImage
275
+ urlEndpoint={IKurlEndpoint}
276
+ publicKey={IKpublicKey}
277
+ path={'/tr:w-300,h-300/' + item.image}
278
+ style={{
279
+ width: '100%',
280
+ objectFit: 'contain',
281
+ position: 'relative',
282
+ borderBottomLeftRadius: sectionproperties.prodimage__borderBottomLeftRadius + 'px',
283
+ borderBottomRightRadius: sectionproperties.prodimage__borderBottomRightRadius + 'px',
284
+ borderTopLeftRadius: sectionproperties.prodimage__borderTopLeftRadius + 'px',
285
+ borderTopRightRadius: sectionproperties.prodimage__borderTopRightRadius + 'px',
286
+ marginBottom: 'auto',
287
+ }}
288
+ loading="lazy"
289
+ />
290
+ </div>
291
+ {sectionproperties.favBtnShow == 'Show' && (
292
+ <div
293
+ className={`${cardsstyles.wishlistbtn}`}
294
+ onClick={() => {
295
+ addtofavoritescontext(item.productid);
296
+ }}
297
+ >
298
+ <button
299
+ className={` ${cardsstyles2.wishlist_btn}` + ' m-0 p-0 d-flex align-items-center justify-content-center '}
300
+ style={{
301
+ position: 'absolute',
302
+ top: 10,
303
+ right: 10,
304
+ background: item.IsFavExists == true ? sectionproperties.activebgcolor : '',
305
+ }}
306
+ >
307
+ {item.IsFavExists && (
308
+ <i className="h-100 d-flex align-items-center justify-content-center">
309
+ <AiFillStar size={sectionproperties.favBtnIconfontsize} style={{ color: sectionproperties.activefaviconcolor }} />
310
+ </i>
311
+ )}
312
+ {!item.IsFavExists && (
313
+ <i className="h-100 d-flex align-items-center justify-content-center">
314
+ <AiFillStar size={sectionproperties.favBtnIconfontsize} />
315
+ </i>
316
+ )}
317
+ </button>
318
+ </div>
319
+ )}
320
+ </div>
321
+ <div className={`${cardsstyles.product_details}` + ' mb-2 '}>
322
+ {sectionproperties.prodNameShow == 'Show' && (
323
+ <div className="col-lg-12" style={{ minHeight: '5vh' }}>
324
+ <p className={`${cardsstyles2.productNameStyles}` + ' m-0 p-0 wordbreak wordbreak2 '} style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}>
325
+ {item.name}
326
+ </p>
327
+ </div>
328
+ )}
329
+ <div className="col-lg-12 d-flex align-items-center">
330
+ {sectionproperties.prodPriceShow == 'Show' && (
331
+ <p className={`${cardsstyles2.productPricestyles}` + ' m-0 p-0 wordbreak '} style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}>
332
+ {langdetect == 'en' ? 'EGP' : ''} {item.hassale == 1 ? item.defaultsaleprice : item.defaultprice} {langdetect == 'en' ? '' : 'ج.م'}
333
+ </p>
334
+ )}
335
+ {item.hassale == 1 && (
336
+ <p
337
+ className={`${cardsstyles2.productSalePricestyles}` + ' linethrough mt-auto mb-0 p-0 wordbreak mr-1 ml-1 '}
338
+ style={{ textAlign: langdetect == 'en' ? 'left' : 'right' }}
339
+ >
340
+ {langdetect == 'en' ? 'EGP' : ''} {item.defaultprice} {langdetect == 'en' ? '' : 'ج.م'}
341
+ </p>
342
+ )}
343
+ </div>
344
+ </div>
345
+ <div className={`${cardsstyles.card_informationcontainer}`}>
346
+ <div className="row m-0 w-100 d-flex align-items-center">
347
+ <button className={`${cardsstyles2.quantitybtn}` + ' p-0 d-flex align-items-center justify-content-center '}>
348
+ {langdetect == 'en' && (
349
+ <span
350
+ className={`${cardsstyles2.minus_quantitybtn_icon_container}` + ' m-1 '}
351
+ style={{ transform: ' rotate(-180deg)' }}
352
+ onClick={() => {
353
+ if (item.hasvariants == 0) {
354
+ updatequantity('remove');
355
+ } else {
356
+ setShowProductInfoModalContext(true);
357
+ setProductIdProdutInfoModalContext(item.productid);
358
+ }
359
+ }}
360
+ >
361
+ <i className="fa fa-chevron-up font-12"></i>
362
+ </span>
363
+ )}
364
+ {langdetect == 'ar' && (
365
+ <span
366
+ className={`${cardsstyles2.add_quantitybtn_icon_container}` + ' m-1 '}
367
+ onClick={() => {
368
+ updatequantity('add');
369
+ }}
370
+ >
371
+ <i className="fa fa-chevron-up font-12"></i>
372
+ </span>
373
+ )}
374
+ <span className={`${cardsstyles2.quantitybtn_text}` + ' d-flex align-items-center justify-content-center '}>{item.quantity}</span>
375
+ {langdetect == 'ar' && (
376
+ <span
377
+ className={`${cardsstyles2.minus_quantitybtn_icon_container}` + ' m-1 '}
378
+ style={{ transform: ' rotate(-180deg)' }}
379
+ onClick={() => {
380
+ updatequantity('remove');
381
+ }}
382
+ >
383
+ <i className="fa fa-chevron-up font-12"></i>
384
+ </span>
385
+ )}
386
+ {langdetect == 'en' && (
387
+ <span
388
+ className={`${cardsstyles2.add_quantitybtn_icon_container}` + ' m-1 '}
389
+ onClick={() => {
390
+ if (item.hasvariants == 0) {
391
+ updatequantity('add');
392
+ } else {
393
+ setShowProductInfoModalContext(true);
394
+ setProductIdProdutInfoModalContext(item.productid);
395
+ }
396
+ }}
397
+ >
398
+ <i className="fa fa-chevron-up font-12"></i>
399
+ </span>
400
+ )}
401
+ </button>
402
+ <div className="d-flex justify-content-start pl-2 pr-2" style={{ flex: 1 }}>
403
+ <p
404
+ className={`${cardsstyles2.producttotalstyles}` + ' mb-0 '}
405
+ style={{
406
+ textAlign: langdetect == 'en' ? 'left' : 'right',
407
+ }}
408
+ >
409
+ {lang.total}: <br />
410
+ <span
411
+ style={{
412
+ color: sectionproperties.total_secondaryColor,
413
+ fontWeight: sectionproperties.total_fontweight,
414
+ textAlign: langdetect == 'en' ? 'left' : 'right',
415
+ }}
416
+ >
417
+ {langdetect == 'en' ? 'EGP' : ''} {item.hassale == 1 ? item.quantity * item.defaultsaleprice : item.quantity * item.defaultprice}{' '}
418
+ {langdetect == 'en' ? '' : 'ج.م'}
419
+ </span>
420
+ </p>
421
+ </div>
422
+ </div>
423
+ <div className="col-lg-12 d-flex align-items-center justify-content-center p-0 mb-2 mt-2">
424
+ {sectionproperties.cartBtnShow == 'Show' && (
425
+ <p
426
+ className={`${cardsstyles2.cart_btn}` + ' font-md-13 m-0 p-0 d-flex align-items-center justify-content-center cursor-pointer '}
427
+ onClick={() => {
428
+ if (item.hasvariants == 0) {
429
+ addtocartfunc();
430
+ } else {
431
+ setShowProductInfoModalContext(true);
432
+ setProductIdProdutInfoModalContext(item.productid);
433
+ }
434
+ }}
435
+ disabled={AddtoCartMutationContext.isLoading}
436
+ >
437
+ <i
438
+ className={
439
+ langdetect == 'en' ? 'h-100 mr-2 d-flex align-items-center justify-content-center' : 'h-100 ml-2 d-flex align-items-center justify-content-center'
440
+ }
441
+ >
442
+ <FiShoppingCart size={sectionproperties.cartBtn_iconFontSize} />
443
+ </i>
444
+
445
+ {addtocartbuttonrender()}
446
+ </p>
447
+ )}
448
+ </div>
449
+ </div>
450
+ </div>
451
+ </div>
452
+ )}
453
+ </div>
454
+ );
455
+ };
456
+ export default Productcard_with_zoominonhover;