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,546 @@
1
+ import React, { useEffect, useState, useContext } from 'react';
2
+ import { css } from 'glamor';
3
+ import { IKImage } from 'imagekitio-react';
4
+ import { IKpublicKey, IKurlEndpoint } from '../../../../Env';
5
+ import { FiShoppingCart, FiShoppingBag } from 'react-icons/fi';
6
+ import { IoBagHandleOutline } from 'react-icons/io5';
7
+ import { IoIosArrowUp } from 'react-icons/io';
8
+ import { CgShoppingBag } from 'react-icons/cg';
9
+ import { BsHandbag } from 'react-icons/bs';
10
+ import { MdOutlineShoppingCart } from 'react-icons/md';
11
+ import { BsBag } from 'react-icons/bs';
12
+ import { AiFillStar, AiOutlineStar } from 'react-icons/ai';
13
+ import { FaRegHeart, FaHeart } from 'react-icons/fa';
14
+
15
+ const MenuCard = (props) => {
16
+ const [sectionproperties, setsectionproperties] = useState('');
17
+ const [item, setitem] = useState(props.cardinfoitemprops);
18
+ const StatePagePropertiesContext = props.actions.StatePagePropertiesContext;
19
+ const lang = props.actions.lang;
20
+ const langdetect = props.actions.langdetect;
21
+ const setShowProductInfoModalContext = props.actions.setShowProductInfoModalContext;
22
+ const addtofavoritescontext = props.actions.addtofavoritescontext;
23
+ const setProductIdProdutInfoModalContext = props.actions.setProductIdProdutInfoModalContext;
24
+ const AddtoCartContext = props.actions.AddtoCartContext;
25
+ const AddtoCartMutationContext = props.actions.AddtoCartMutationContext;
26
+ const StaticPagesLinksContext = props.actions.StaticPagesLinksContext;
27
+ const routingcountext = props.actions.routingcountext;
28
+ const NotificationManager = NotificationManager;
29
+ const updatequantity = (type) => {
30
+ var tempitem = { ...item };
31
+ tempitem.quantity = parseInt(tempitem.quantity);
32
+ if (type == 'add') {
33
+ tempitem.quantity = tempitem.quantity + 1;
34
+ } else if (type == 'remove') {
35
+ tempitem.quantity = tempitem.quantity - 1;
36
+ }
37
+ if (tempitem.quantity <= 0) {
38
+ tempitem.quantity = 0;
39
+ }
40
+ setitem({ ...tempitem });
41
+ };
42
+ useEffect(() => {
43
+ if (props.srcfrom == 'addsectionform') {
44
+ var secpropobj = {};
45
+ props.defaultproperties.forEach(function (defaultpropobj, defaultpropindex) {
46
+ secpropobj[defaultpropobj.property_css_name] = defaultpropobj.property_value;
47
+ });
48
+
49
+ setsectionproperties({ ...secpropobj });
50
+ } else {
51
+ var secpropobj = {};
52
+ StatePagePropertiesContext.pageobj.sections.forEach(function (sectionitem, sectionindex) {
53
+ if (sectionitem.sectionid == props.sectionidprops) {
54
+ sectionitem.sectionproperties.forEach(function (sectionpropertiesobj, sectionpropertiesindex) {
55
+ secpropobj[sectionpropertiesobj.property_css_name] = sectionpropertiesobj.property_value;
56
+ });
57
+ }
58
+ });
59
+ setsectionproperties({ ...secpropobj });
60
+ }
61
+ }, [StatePagePropertiesContext]);
62
+
63
+ const plainString = (html) => {
64
+ var divContainer = document.createElement('div');
65
+ divContainer.innerHTML = html;
66
+ return divContainer.textContent || divContainer.innerText || '';
67
+ };
68
+ const addtocartfunc = () => {
69
+ const addtocardpayloadobj = {
70
+ functype: 'add',
71
+ productid: item.productid,
72
+ variantid: '',
73
+ quantity: item.quantity,
74
+ };
75
+ var runfunc = false;
76
+ if (addtocardpayloadobj.productid.length != 0 && addtocardpayloadobj.quantity > 0) {
77
+ if (item.hasvariants == 1) {
78
+ if (addtocardpayloadobj.variantid.length != 0) {
79
+ runfunc = true;
80
+ } else {
81
+ NotificationManager.warning('', 'Please Choose Product Options');
82
+ }
83
+ } else {
84
+ runfunc = true;
85
+ }
86
+ } else {
87
+ NotificationManager.warning('', 'Please Choose Quantity');
88
+ }
89
+
90
+ if (runfunc == true) {
91
+ AddtoCartContext(addtocardpayloadobj);
92
+ }
93
+ };
94
+
95
+ const card_cssstyles = {
96
+ productcard: css({
97
+ background: sectionproperties.backgroundColortransparent == 'Transparent' ? 'transparent' : sectionproperties.backgroundColor,
98
+ borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
99
+ borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
100
+ borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
101
+ borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
102
+ marginTop: sectionproperties.marginTop + 'px',
103
+ marginBottom: sectionproperties.marginBottom + 'px',
104
+ paddingLeft: sectionproperties.paddingLeft + 'px',
105
+ paddingRight: sectionproperties.paddingRight + 'px',
106
+ paddingTop: sectionproperties.paddingTop + 'px',
107
+ paddingBottom: sectionproperties.paddingBottom + 'px',
108
+ borderBottom:
109
+ sectionproperties.border == 'border bottom' ? sectionproperties.sectioncardborderwidth + 'px ' + sectionproperties.bordertype + ' ' + sectionproperties.sectioncardbordercolor : '',
110
+ borderLeft:
111
+ sectionproperties.border == 'border left' ? sectionproperties.sectioncardborderwidth + 'px ' + sectionproperties.bordertype + ' ' + sectionproperties.sectioncardbordercolor : '',
112
+ borderRight:
113
+ sectionproperties.border == 'border right' ? sectionproperties.sectioncardborderwidth + 'px ' + sectionproperties.bordertype + ' ' + sectionproperties.sectioncardbordercolor : '',
114
+ borderTop: sectionproperties.border == 'border top' ? sectionproperties.sectioncardborderwidth + 'px ' + sectionproperties.bordertype + ' ' + sectionproperties.sectioncardbordercolor : '',
115
+ border: sectionproperties.border == 'all' ? sectionproperties.sectioncardborderwidth + 'px ' + sectionproperties.bordertype + ' ' + sectionproperties.sectioncardbordercolor : '',
116
+ transition: '.3s',
117
+ color: sectionproperties.prodNameColor,
118
+ }),
119
+ productcardimagecont: css({
120
+ position: 'relative',
121
+ overflow: 'hidden',
122
+ background: sectionproperties.image_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.image_bgcolor,
123
+ border: sectionproperties.image_borderwidth + 'px solid ' + sectionproperties.image_bordercolor,
124
+ borderBottomLeftRadius: sectionproperties.image_borderBottomLeftRadius + 'px',
125
+ borderBottomRightRadius: sectionproperties.image_borderBottomRightRadius + 'px',
126
+ borderTopLeftRadius: sectionproperties.image_bordertopleftradius + 'px',
127
+ borderTopRightRadius: sectionproperties.image_bordertoprightradius + 'px',
128
+ transition: '.3s',
129
+ }),
130
+ productNameStyles: css({
131
+ fontSize: sectionproperties.prodNameFontSize + 'px',
132
+ textTransform: sectionproperties.prodNameTextTranform,
133
+ fontWeight: sectionproperties.prodNameFontWeight,
134
+ transition: '.3s',
135
+ cursor: 'pointer',
136
+ ':hover': {
137
+ color: sectionproperties.prodNameColorOnHover,
138
+ },
139
+ }),
140
+ productPricestyles: css({
141
+ color: sectionproperties.prodPriceColor,
142
+ fontSize: sectionproperties.prodpriceFontSize + 'px',
143
+ fontWeight: sectionproperties.prodPriceFontWeight,
144
+ }),
145
+ productSalePricestyles: css({
146
+ color: sectionproperties.prodsalePriceColor,
147
+ fontSize: sectionproperties.prodsalepriceFontSize + 'px',
148
+ fontWeight: sectionproperties.prodsalePriceFontWeight,
149
+ }),
150
+ wishlist_btn: css({
151
+ width: sectionproperties.favBtnWidth + 'px',
152
+ height: sectionproperties.favBtnHeight + 'px',
153
+ background: sectionproperties.favbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColor,
154
+ borderRadius: sectionproperties.fav_btn_borderBottomLeftRadius + 'px',
155
+ color: sectionproperties.favBtniconcolor,
156
+ fontSize: sectionproperties.favBtnTextfontsize + 'px',
157
+ border: sectionproperties.favbtnborderwidth + 'px solid ' + sectionproperties.favbtnbordercolor,
158
+ transition: '.4s',
159
+ ':hover': {
160
+ background: sectionproperties.favbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.favBtnbgColoronhover,
161
+ color: sectionproperties.favBtnTextcoloronhover,
162
+ },
163
+ }),
164
+ cart_btn: css({
165
+ width: sectionproperties.cartBtnWidth + 'px',
166
+ height: sectionproperties.cartBtnHeight + 'px',
167
+ background: sectionproperties.cartbtn_bgtransparent == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColor,
168
+ borderRadius: sectionproperties.cart_btn_borderBottomLeftRadius + 'px',
169
+ color: sectionproperties.cart_iconcolor,
170
+ border: sectionproperties.cartbtnborderwidth + 'px solid ' + sectionproperties.cartbtnbordercolor,
171
+ transition: '.3s',
172
+ ':hover': {
173
+ background: sectionproperties.cartbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColoronhover,
174
+ color: sectionproperties.cartBtnTextcoloronhover,
175
+ },
176
+ }),
177
+ cart_btntxt: css({
178
+ color: sectionproperties.cartBtnTextcolor,
179
+ fontSize: sectionproperties.cartBtnTextfontsize + 'px',
180
+ fontWeight: sectionproperties.cartBtnTextfontweight,
181
+ // border: sectionproperties.cartbtnborderwidth + 'px solid ' + sectionproperties.cartbtnbordercolor,
182
+ transition: '.3s',
183
+ ':hover': {
184
+ background: sectionproperties.cartbtn_transparentbgcoloronhover == 'Transparent' ? 'transparent' : sectionproperties.cartBtnbgColoronhover,
185
+ color: sectionproperties.cartBtnTextcoloronhover,
186
+ },
187
+ }),
188
+ quantitybtn: css({
189
+ flex: 1,
190
+ border: sectionproperties.quantitybtnborderwidth + 'px solid ' + sectionproperties.quantitybtnbordercolor,
191
+ height: sectionproperties.quantitybtn_height + 'px',
192
+ height: '40px',
193
+ display: 'flex',
194
+ flexDirection: 'row',
195
+ overflow: 'hidden',
196
+ borderRadius: sectionproperties.quantitybtn_borderradius + 'px',
197
+ background: sectionproperties.quantitybtn_bgcolor,
198
+ alignItems: 'center',
199
+ justifyContent: 'center',
200
+ margin: 0,
201
+ position: 'relative',
202
+ fontWeight: sectionproperties.quantitybtn_textfontweight,
203
+ color: sectionproperties.quantitybtn_textcolor,
204
+ fontSize: sectionproperties.quantitybtn_textfontsize + 'px',
205
+ }),
206
+ quantitybtn_text: css({
207
+ margin: 'auto',
208
+ }),
209
+ add_quantitybtn_icon_container: css({
210
+ position: 'relative',
211
+ width: sectionproperties.add_quantitybtn_width + 'px',
212
+ height: sectionproperties.add_quantitybtn_height + 'px',
213
+ background: sectionproperties.add_quantitybtn_bgcolor,
214
+ display: 'flex',
215
+ alignItems: 'center',
216
+ justifyContent: 'center',
217
+ borderRadius: sectionproperties.add_quantitybtn_borderradius + 'px',
218
+ fontSize: sectionproperties.add_quantitybtn_textfontsize + 'px',
219
+ color: sectionproperties.add_quantitybtn_textcolor,
220
+ transition: '.3s',
221
+ ':hover': {
222
+ color: sectionproperties.add_quantitybtn_textcoloronhover,
223
+ background: sectionproperties.add_quantitybtn_bgcoloronhover,
224
+ },
225
+ }),
226
+ minus_quantitybtn_icon_container: css({
227
+ position: 'relative',
228
+ width: sectionproperties.remove_quantitybtn_width + 'px',
229
+ height: sectionproperties.remove_quantitybtn_height + 'px',
230
+ background: sectionproperties.remove_quantitybtn_bgcolor,
231
+ display: 'flex',
232
+ alignItems: 'center',
233
+ justifyContent: 'center',
234
+ borderRadius: sectionproperties.remove_quantitybtn_borderradius + 'px',
235
+ fontSize: sectionproperties.remove_quantitybtn_textfontsize + 'px',
236
+ color: sectionproperties.remove_quantitybtn_textcolor,
237
+ transition: '.3s',
238
+ ':hover': {
239
+ color: sectionproperties.remove_quantitybtn_textcoloronhover,
240
+ background: sectionproperties.remove_quantitybtn_bgcoloronhover,
241
+ },
242
+ }),
243
+ producttotalstyles: css({
244
+ color: sectionproperties.total_color,
245
+ fontSize: sectionproperties.total_fontsize + 'px',
246
+ fontWeight: 500,
247
+ }),
248
+ productDescStyles: css({
249
+ color: sectionproperties.prodCatColor,
250
+ fontSize: sectionproperties.prodCatFontSize + 'px',
251
+ textTransform: sectionproperties.prodCatTextTranform,
252
+ fontWeight: sectionproperties.prodCatFontWeight,
253
+ transition: '.3s',
254
+ marginLeft: sectionproperties.description_marginLeft + 'px',
255
+ marginRight: sectionproperties.description_marginRight + 'px',
256
+ marginBottom: sectionproperties.descriptionMarginBottom + 'px',
257
+ }),
258
+ };
259
+
260
+ return (
261
+ <div
262
+ class="row m-0 w-100 pl-sm-2 pr-sm-2"
263
+ style={{
264
+ paddingLeft: sectionproperties.card_marginLeft + 'px',
265
+ paddingRight: sectionproperties.card_marginRight + 'px',
266
+ }}
267
+ >
268
+ {sectionproperties.length != 0 && (
269
+ <div class={`${card_cssstyles.productcard}` + ' col-lg-12 w-100 pl-sm-0 pr-sm-0 '}>
270
+ <div class="row w-100 m-0 d-flex">
271
+ {sectionproperties.image_show == 'show' && (
272
+ <div
273
+ onClick={() => {
274
+ if (props.fetchingtypeprops == 'collections') {
275
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, item.collectionid);
276
+ } else {
277
+ routingcountext(StaticPagesLinksContext.productinfo, true, item.productid);
278
+ }
279
+ }}
280
+ class={
281
+ langdetect == 'en'
282
+ ? `${card_cssstyles.productcardimagecont}` + ' d-flex justify-content-start mr-2 '
283
+ : `${card_cssstyles.productcardimagecont}` + ' d-flex justify-content-start ml-2 '
284
+ }
285
+ style={{
286
+ height: sectionproperties.image_height + 'px',
287
+ width: sectionproperties.image_width + 'px',
288
+ borderBottomLeftRadius: sectionproperties.image_borderBottomLeftRadius + 'px',
289
+ borderBottomRightRadius: sectionproperties.image_borderBottomRightRadius + 'px',
290
+ borderTopLeftRadius: sectionproperties.image_bordertopleftradius + 'px',
291
+ borderTopRightRadius: sectionproperties.image_bordertoprightradius + 'px',
292
+ overflow: 'hidden',
293
+ cursor: 'pointer',
294
+ }}
295
+ >
296
+ <IKImage
297
+ urlEndpoint={IKurlEndpoint}
298
+ publicKey={IKpublicKey}
299
+ path={item.image}
300
+ loading="lazy"
301
+ style={{
302
+ width: '100%',
303
+ height: '100%',
304
+ objectFit: 'cover',
305
+ cursor: 'pointer',
306
+ }}
307
+ />
308
+ </div>
309
+ )}
310
+
311
+ <div style={{ flex: 1 }}>
312
+ <div class="row w-100 m-0">
313
+ <div class="col-lg-9 col-md-9 col-sm-12 pl-1 pr-1 mt-2 p-0">
314
+ <div class="row w-100 m-0">
315
+ {sectionproperties.prodNameShow == 'Show' && (
316
+ <div
317
+ onClick={() => {
318
+ if (props.fetchingtypeprops == 'collections') {
319
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, item.collectionid);
320
+ } else {
321
+ routingcountext(StaticPagesLinksContext.productinfo, true, item.productid);
322
+ }
323
+ }}
324
+ class="col-lg-12 p-0 "
325
+ >
326
+ <p
327
+ class={`${card_cssstyles.productNameStyles}` + ' font-md-15 wordbreak wordbreak1 m-0 '}
328
+ style={{
329
+ textAlign: langdetect == 'en' ? 'left' : 'right',
330
+ }}
331
+ >
332
+ {item.name}
333
+ </p>
334
+ </div>
335
+ )}
336
+ {sectionproperties.prodCatShow == 'Show' && (
337
+ <p
338
+ class={`${card_cssstyles.productDescStyles}` + ' col-lg-12 mt-2 mb-1 wordbreak wordbreak2 p-0 '}
339
+ style={{
340
+ textAlign: langdetect == 'en' ? 'left' : 'right',
341
+ }}
342
+ >
343
+ {plainString(langdetect == 'en' ? item.description_en : item.description_ar)}
344
+ </p>
345
+ )}
346
+ </div>
347
+ </div>
348
+ <div style={{ display: 'flex', flexDirection: 'column', alignContent: 'space-between' }} class="col-lg-3 col-md-3 col-sm-12 mt-2 p-0">
349
+ <div class="row m-0 w-100 d-flex flex-column flex-sm-row justify-content-end justify-content-sm-start">
350
+ {sectionproperties.prodPriceShow == 'Show' && (
351
+ <p
352
+ class={
353
+ langdetect == 'en'
354
+ ? `${card_cssstyles.productPricestyles}` + ' m-0 wordbreak d-flex align-items-center text-right text-sm-left '
355
+ : `${card_cssstyles.productPricestyles}` + ' m-0 wordbreak d-flex align-items-center text-left text-sm-right '
356
+ }
357
+ >
358
+ {langdetect == 'en' ? 'EGP' : ''} {item.hassale == 1 ? item.defaultsaleprice : item.defaultprice} {langdetect == 'en' ? '' : 'ج.م'}
359
+ </p>
360
+ )}
361
+ {sectionproperties.prodsalePriceshow == 'Show' && item.hassale == 1 && (
362
+ <p
363
+ class={
364
+ langdetect == 'en'
365
+ ? `${card_cssstyles.productSalePricestyles}` +
366
+ ' linethrough m-0 wordbreak d-flex mt-sm-auto mb-sm-auto text-right text-sm-left ml-sm-3 mr-sm-3 '
367
+ : `${card_cssstyles.productSalePricestyles}` +
368
+ ' linethrough m-0 wordbreak d-flex mt-sm-auto mb-sm-auto text-left text-sm-right ml-sm-3 mr-sm-3 '
369
+ }
370
+ >
371
+ {langdetect == 'en' ? 'EGP' : ''} {item.defaultprice} {langdetect == 'en' ? '' : 'ج.م'}
372
+ </p>
373
+ )}
374
+ </div>
375
+
376
+ {sectionproperties.quantitybtn_show == 'hide' && sectionproperties.favBtnShow == 'Hide' && sectionproperties.cartBtnShow == 'Show' && (
377
+ <div class="row m-0 mt-auto w-100">
378
+ <div class="col-lg-12 d-flex justify-content-end p-0">
379
+ <button
380
+ class={`${card_cssstyles.cart_btn}` + ' font-md-13 m-0 p-0 d-flex align-items-center justify-content-center '}
381
+ onClick={() => {
382
+ if (item.hasvariants == 0) {
383
+ addtocartfunc();
384
+ } else {
385
+ setShowProductInfoModalContext(true);
386
+ setProductIdProdutInfoModalContext(item.productid);
387
+ }
388
+ }}
389
+ >
390
+ <i class={'h-100 d-flex align-items-center justify-content-center'}>
391
+ {sectionproperties.carticonstyle == 'Shopping bag 1' && <FiShoppingBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
392
+ {sectionproperties.carticonstyle == 'Shopping bag 2' && <CgShoppingBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
393
+ {sectionproperties.carticonstyle == 'Shopping bag 3' && <BsBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
394
+ {sectionproperties.carticonstyle == 'Shopping bag 4' && <BsHandbag size={sectionproperties.cartBtn_iconFontSize} />}
395
+ {sectionproperties.carticonstyle == 'Shopping cart 1' && <FiShoppingCart class="" size={sectionproperties.cartBtn_iconFontSize} />}
396
+ {sectionproperties.carticonstyle == 'Shopping cart 2' && <MdOutlineShoppingCart size={sectionproperties.cartBtn_iconFontSize} />}
397
+ </i>
398
+ <p class={card_cssstyles.cart_btntxt + ' p-0 m-0 '}>
399
+ {langdetect == 'en' ? sectionproperties.cartBtnContentenglish : sectionproperties.cartBtnContentarabic}
400
+ </p>
401
+ </button>
402
+ </div>
403
+ </div>
404
+ )}
405
+ </div>
406
+ <div class="col-lg-12 mt-1 p-0">
407
+ <div class="row w-100 m-0">
408
+ <div class="col-lg-6 col-md-6 col-sm-6 p-0 d-flex align-items-center justify-content-start">
409
+ {sectionproperties.quantitybtn_show == 'show' && (
410
+ <div
411
+ style={{ width: sectionproperties.quantitybtn_width + 'px', height: sectionproperties.quantitybtn_height + 'px' }}
412
+ class={' row m-0 d-flex align-items-center '}
413
+ >
414
+ <button class={`${card_cssstyles.quantitybtn}` + ' p-0 d-flex align-items-center justify-content-center '}>
415
+ {langdetect == 'en' && (
416
+ <span
417
+ class={`${card_cssstyles.minus_quantitybtn_icon_container}` + ' m-1 '}
418
+ style={{ transform: ' rotate(-180deg)' }}
419
+ onClick={() => {
420
+ updatequantity('remove');
421
+ }}
422
+ >
423
+ <i class="h-100 allcentered">
424
+ <IoIosArrowUp />
425
+ </i>
426
+ </span>
427
+ )}
428
+ {langdetect == 'ar' && (
429
+ <span
430
+ class={`${card_cssstyles.add_quantitybtn_icon_container}` + ' m-1 '}
431
+ onClick={() => {
432
+ updatequantity('add');
433
+ }}
434
+ >
435
+ <i class="h-100 allcentered">
436
+ <IoIosArrowUp />
437
+ </i>
438
+ </span>
439
+ )}
440
+ <span
441
+ class={`${card_cssstyles.quantitybtn_text}` + ' d-flex align-items-center justify-content-center '}
442
+ style={{
443
+ background: sectionproperties.quantbtntextbgcolor,
444
+ width: sectionproperties.quantitybtntextwidth + 'px',
445
+ height: sectionproperties.quantitybtntextheight + 'px',
446
+ borderRadius: sectionproperties.addquantitytextborderraduis + 'px',
447
+ }}
448
+ >
449
+ {item.quantity}
450
+ </span>
451
+ {langdetect == 'ar' && (
452
+ <span
453
+ class={`${card_cssstyles.minus_quantitybtn_icon_container}` + ' m-1 '}
454
+ style={{ transform: ' rotate(-180deg)' }}
455
+ onClick={() => {
456
+ updatequantity('remove');
457
+ }}
458
+ >
459
+ <i class="h-100 allcentered">
460
+ <IoIosArrowUp />
461
+ </i>
462
+ </span>
463
+ )}
464
+ {langdetect == 'en' && (
465
+ <span
466
+ class={`${card_cssstyles.add_quantitybtn_icon_container}` + ' m-1 '}
467
+ onClick={() => {
468
+ updatequantity('add');
469
+ }}
470
+ >
471
+ <i class="h-100 allcentered">
472
+ <IoIosArrowUp />
473
+ </i>
474
+ </span>
475
+ )}
476
+ </button>
477
+ </div>
478
+ )}
479
+ </div>
480
+ <div class="col-lg-6 col-md-6 col-sm-6 p-0 d-flex align-items-center justify-content-end">
481
+ {sectionproperties.favBtnShow == 'Show' && (
482
+ <button
483
+ class={card_cssstyles.wishlist_btn + ' ml-2 mr-2'}
484
+ onClick={() => {
485
+ addtofavoritescontext(item.productid);
486
+ }}
487
+ style={{
488
+ background: item.IsFavExists == true ? sectionproperties.activebgcolor : '',
489
+ }}
490
+ >
491
+ {item.IsFavExists && (
492
+ <i class="h-100 d-flex align-items-center justify-content-center">
493
+ {sectionproperties.faviconshape == 'Star Shape' && (
494
+ <AiFillStar size={sectionproperties.favBtnIconfontsize} style={{ color: sectionproperties.activefaviconcolor }} />
495
+ )}
496
+ {sectionproperties.faviconshape == 'Heart Shape' && (
497
+ <FaHeart size={sectionproperties.favBtnIconfontsize} style={{ color: sectionproperties.activefaviconcolor }} />
498
+ )}
499
+ </i>
500
+ )}
501
+ {!item.IsFavExists && (
502
+ <i class="h-100 d-flex align-items-center justify-content-center">
503
+ {sectionproperties.faviconshape == 'Star Shape' && <AiOutlineStar size={sectionproperties.favBtnIconfontsize} />}
504
+ {sectionproperties.faviconshape == 'Heart Shape' && <FaRegHeart size={sectionproperties.favBtnIconfontsize} />}
505
+ </i>
506
+ )}
507
+ </button>
508
+ )}
509
+
510
+ {sectionproperties.cartBtnShow == 'Show' && sectionproperties.favBtnShow == 'Show' && sectionproperties.quantitybtn_show == 'show' && (
511
+ <button
512
+ class={`${card_cssstyles.cart_btn}` + ' font-md-13 m-0 p-0 d-flex align-items-center justify-content-center '}
513
+ onClick={() => {
514
+ if (item.hasvariants == 0) {
515
+ addtocartfunc();
516
+ } else {
517
+ setShowProductInfoModalContext(true);
518
+ setProductIdProdutInfoModalContext(item.productid);
519
+ }
520
+ }}
521
+ >
522
+ <i class={'h-100 d-flex align-items-center justify-content-center'}>
523
+ {sectionproperties.carticonstyle == 'Shopping bag 1' && <FiShoppingBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
524
+ {sectionproperties.carticonstyle == 'Shopping bag 2' && <CgShoppingBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
525
+ {sectionproperties.carticonstyle == 'Shopping bag 3' && <BsBag class="" size={sectionproperties.cartBtn_iconFontSize} />}
526
+ {sectionproperties.carticonstyle == 'Shopping bag 4' && <BsHandbag size={sectionproperties.cartBtn_iconFontSize} />}
527
+ {sectionproperties.carticonstyle == 'Shopping cart 1' && <FiShoppingCart class="" size={sectionproperties.cartBtn_iconFontSize} />}
528
+ {sectionproperties.carticonstyle == 'Shopping cart 2' && <MdOutlineShoppingCart size={sectionproperties.cartBtn_iconFontSize} />}
529
+ </i>
530
+ <p class={card_cssstyles.cart_btntxt + ' p-0 m-0 '}>
531
+ {langdetect == 'en' ? sectionproperties.cartBtnContentenglish : sectionproperties.cartBtnContentarabic}
532
+ </p>
533
+ </button>
534
+ )}
535
+ </div>
536
+ </div>
537
+ </div>
538
+ </div>
539
+ </div>
540
+ </div>
541
+ </div>
542
+ )}
543
+ </div>
544
+ );
545
+ };
546
+ export default MenuCard;