tabexseriescomponents 0.0.217 → 0.0.220

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 (255) hide show
  1. package/dist/index.cjs.js +1044 -780
  2. package/dist/index.esm.js +1044 -780
  3. package/dist/index.umd.js +1042 -778
  4. package/library.zip +0 -0
  5. package/package.json +2 -1
  6. package/srcold/Contexts/LanguageContext.jsx +390 -0
  7. package/srcold/Contexts/ProductsCardsSectionContext.jsx +34 -0
  8. package/srcold/StylesJS/Customstyles.js +236 -0
  9. package/srcold/TabexComponents/Cards/Card20/Card20.jsx +282 -0
  10. package/srcold/TabexComponents/Cards/Card21/Card21.jsx +388 -0
  11. package/srcold/TabexComponents/Cards/Card22/Card22.jsx +287 -0
  12. package/srcold/TabexComponents/Cards/Card23/Card23.jsx +403 -0
  13. package/srcold/TabexComponents/Cards/CardBadgeSlideFromTop/CardBadgeSlideFromTop.jsx +395 -0
  14. package/srcold/TabexComponents/Cards/CardWithTextOnly/CardWithTextOnly.jsx +70 -0
  15. package/srcold/TabexComponents/Cards/CategoryCardTextOnImage/CategoryCardTextOnImage.jsx +211 -0
  16. package/srcold/TabexComponents/Cards/CategoryCardwithhoveraction/CategoryCardwithhoveraction.jsx +220 -0
  17. package/srcold/TabexComponents/Cards/Categorycard_fullimage/Categorycard_fullimage.jsx +230 -0
  18. package/srcold/TabexComponents/Cards/Categorycard_slidebgscaled/Categorycard_slidebgscaled.jsx +198 -0
  19. package/srcold/TabexComponents/Cards/Categorycard_with_trianglebg/Categorycard_with_trianglebg.jsx +170 -0
  20. package/srcold/TabexComponents/Cards/Categorycard_with_twolinestransition/Categorycard_with_twolinestransition.jsx +181 -0
  21. package/srcold/TabexComponents/Cards/Categorycard_withshapes/Categorycard_withshapes.jsx +161 -0
  22. package/srcold/TabexComponents/Cards/Categorycard_withtext/Categorycard_withtext.jsx +180 -0
  23. package/srcold/TabexComponents/Cards/CircleCardWithVariants/CircleCardWithVariants.jsx +487 -0
  24. package/srcold/TabexComponents/Cards/Classiccategorycard/Classiccategorycard.jsx +123 -0
  25. package/srcold/TabexComponents/Cards/HorizontalCategoryCard/HorizontalCategoryCard.jsx +192 -0
  26. package/srcold/TabexComponents/Cards/Horizontalcard/Horizontalcard.jsx +270 -0
  27. package/srcold/TabexComponents/Cards/MenuCard/MenuCard.jsx +543 -0
  28. package/srcold/TabexComponents/Cards/ModernCardWithQuantityButton/ModernCardWithQuantityButton.jsx +467 -0
  29. package/srcold/TabexComponents/Cards/ModernProductCard/ModernProductCard.jsx +469 -0
  30. package/srcold/TabexComponents/Cards/NewProductcard/NewProductcard.jsx +445 -0
  31. package/srcold/TabexComponents/Cards/ProductCardWithTextOnImage/ProductCardWithTextOnImage.jsx +304 -0
  32. package/srcold/TabexComponents/Cards/Productcard6/Productcard6.jsx +256 -0
  33. package/srcold/TabexComponents/Cards/Productcard7/Productcard7.jsx +278 -0
  34. package/srcold/TabexComponents/Cards/Productcard_animatedbuttons/Productcard_animatedbuttons.jsx +443 -0
  35. package/srcold/TabexComponents/Cards/Productcard_with_circularbg/Productcard_with_circularbg.jsx +275 -0
  36. package/srcold/TabexComponents/Cards/Productcard_with_circularhover/Productcard_with_circularhover.jsx +315 -0
  37. package/srcold/TabexComponents/Cards/Productcard_with_slideanimation/Productcard_with_slideanimation.jsx +301 -0
  38. package/srcold/TabexComponents/Cards/Productcard_with_variants/Productcard_with_variants.jsx +419 -0
  39. package/srcold/TabexComponents/Cards/Productcard_with_zoominonhover/Productcard_with_zoominonhover.jsx +524 -0
  40. package/srcold/TabexComponents/Cards/Productcarddefault/Productcarddefault.jsx +275 -0
  41. package/srcold/TabexComponents/Cards/Productccard_with_imageontopleft/Productccard_with_imageontopleft.jsx +286 -0
  42. package/srcold/TabexComponents/Cards/Prouductcard_with_zoomhover/Prouductcard_with_zoomhover.jsx +136 -0
  43. package/srcold/TabexComponents/Cards/Simplecategorycardwithtextbelow/Simplecategorycardwithtextbelow.jsx +179 -0
  44. package/srcold/TabexComponents/Cards/Simpleproductcard/Simpleproductcard.jsx +291 -0
  45. package/srcold/TabexComponents/Cards/StylishProductCard/StylishProductCard.jsx +339 -0
  46. package/srcold/TabexComponents/Cards/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +338 -0
  47. package/srcold/TabexComponents/Cards/UpSlideEffectCard/UpSlideEffectCard.jsx +515 -0
  48. package/srcold/TabexComponents/Cards/UserCardWithSocialMediaOnHover/UserCardWithSocialMediaOnHover.jsx +184 -0
  49. package/srcold/TabexComponents/Footer/Allinonefooter/Allinonefooter.jsx +475 -0
  50. package/srcold/TabexComponents/Footer/Footer1/Footer1.jsx +448 -0
  51. package/srcold/TabexComponents/Footer/Footer2/Footer2.jsx +383 -0
  52. package/srcold/TabexComponents/Footer/Footer3/Footer3.jsx +394 -0
  53. package/srcold/TabexComponents/Footer/Footer4/Footer4.jsx +699 -0
  54. package/srcold/TabexComponents/Footer/Footer5/Footer5.jsx +523 -0
  55. package/srcold/TabexComponents/Footer/Footer6/Footer6.jsx +301 -0
  56. package/srcold/TabexComponents/Footer/Footer7/Footer7.jsx +415 -0
  57. package/srcold/TabexComponents/Footer/Footer8/Footer8.jsx +454 -0
  58. package/srcold/TabexComponents/Footer/FooterWithThreeColumns/FooterWithThreeColumns.jsx +329 -0
  59. package/srcold/TabexComponents/Footer/Simplefooter/Simplefooter.jsx +274 -0
  60. package/srcold/TabexComponents/Generalfiles/images/egyptflag.png +0 -0
  61. package/srcold/TabexComponents/Generalfiles/images/noimage.png +0 -0
  62. package/srcold/TabexComponents/Generalfiles/images/payment/cod.png +0 -0
  63. package/srcold/TabexComponents/Generalfiles/images/payment/fawry.png +0 -0
  64. package/srcold/TabexComponents/Generalfiles/images/payment/payment.png +0 -0
  65. package/srcold/TabexComponents/Generalfiles/images/payment/paymob.png +0 -0
  66. package/srcold/TabexComponents/Generalfiles/images/payment/paypal.png +0 -0
  67. package/srcold/TabexComponents/Generalfiles/images/payment/visa.png +0 -0
  68. package/srcold/TabexComponents/Generalfiles/images/shoppingcart.png +0 -0
  69. package/srcold/TabexComponents/Generalfiles/images/tabexlogo.png +0 -0
  70. package/srcold/TabexComponents/Generalfiles/images/unknownmaleuser.png +0 -0
  71. package/srcold/TabexComponents/Generalfiles/images/usflag.png +0 -0
  72. package/srcold/TabexComponents/Generalfiles/images/whatsapp.png +0 -0
  73. package/srcold/TabexComponents/Headers/CTAHeader/CTAHeader.jsx +880 -0
  74. package/srcold/TabexComponents/Headers/CategoryFeaturingHeader/CategoryFeaturingHeader.jsx +870 -0
  75. package/srcold/TabexComponents/Headers/ClassicHeader/ClassicHeader.jsx +688 -0
  76. package/srcold/TabexComponents/Headers/Gotoheader/Gotoheader.jsx +720 -0
  77. package/srcold/TabexComponents/Headers/Header4/Header4.jsx +621 -0
  78. package/srcold/TabexComponents/Headers/Header8/Header8.jsx +824 -0
  79. package/srcold/TabexComponents/Headers/HeaderRestaurant/HeaderRestaurant.jsx +730 -0
  80. package/srcold/TabexComponents/Headers/HeaderWithAdSlider/HeaderWithAdSlider.jsx +762 -0
  81. package/srcold/TabexComponents/Headers/HeaderWithSearchOnCenter/HeaderWithSearchOnCenter.jsx +706 -0
  82. package/srcold/TabexComponents/Headers/HeaderWithUtilityBar/HeaderWithUtilityBar.jsx +900 -0
  83. package/srcold/TabexComponents/Headers/Header_threesectionslogocentered/Header_threesectionslogocentered.jsx +841 -0
  84. package/srcold/TabexComponents/Headers/Headerresponsive/Headerresponsive.jsx +988 -0
  85. package/srcold/TabexComponents/Headers/Headerresponsive/HeaderresponsiveNew.jsx +1081 -0
  86. package/srcold/TabexComponents/Headers/Headerresponsive/HeaderresponsiveOriginal.jsx +988 -0
  87. package/srcold/TabexComponents/Headers/HeaderwithContactinfo/HeaderwithContactinfo.jsx +917 -0
  88. package/srcold/TabexComponents/Headers/Modernheader/Modernheader.jsx +693 -0
  89. package/srcold/TabexComponents/Headers/SearchFocusedHeader/SearchFocusedHeader.jsx +952 -0
  90. package/srcold/TabexComponents/Headers/Simpleheader/Simpleheader.jsx +636 -0
  91. package/srcold/TabexComponents/Headers/StylishHeader/StylishHeader.jsx +853 -0
  92. package/srcold/TabexComponents/Headers/Subheader/Subheader copy.jsx +373 -0
  93. package/srcold/TabexComponents/Headers/Subheader/Subheader.jsx +515 -0
  94. package/srcold/TabexComponents/Headers/Subheader/SubheaderDropdown.jsx +190 -0
  95. package/srcold/TabexComponents/Headers/Subheader/SubheaderOriginal.jsx +483 -0
  96. package/srcold/TabexComponents/Headers/ThreeTieredHeader/ThreeTieredHeader.jsx +1005 -0
  97. package/srcold/TabexComponents/Headers/TwoTieredHeader/TwoTieredHeader.jsx +1020 -0
  98. package/srcold/TabexComponents/Headers/TwoTieredWithCenteredLogoHeader/TwoTieredWithCenteredLogoHeader .jsx +843 -0
  99. package/srcold/TabexComponents/Sections/BackgroundImages/BacgroundThreeImageWithCategories/BacgroundThreeImageWithCategories.jsx +448 -0
  100. package/srcold/TabexComponents/Sections/BackgroundImages/BackgroundFiveImageStructure/BackgroundFiveImageStructure.jsx +346 -0
  101. package/srcold/TabexComponents/Sections/BackgroundImages/BackgroundImageWithTopContent/BackgroundImageWithTopContent.jsx +304 -0
  102. package/srcold/TabexComponents/Sections/BackgroundImages/BackgroundSectionWithServicesCards/BackgroundSectionWithServicesCards.jsx +301 -0
  103. package/srcold/TabexComponents/Sections/BackgroundImages/Backgroundimage1/Backgroundimage1.jsx +312 -0
  104. package/srcold/TabexComponents/Sections/BackgroundImages/Backgroundimage_with_toppill/Backgroundimage_with_toppill.jsx +271 -0
  105. package/srcold/TabexComponents/Sections/BackgroundImages/BackgroundimageandTextsection/BackgroundimageandTextsection.jsx +174 -0
  106. package/srcold/TabexComponents/Sections/BackgroundImages/Bgimagewithsearchbar/Bgimagewithsearchbar.jsx +200 -0
  107. package/srcold/TabexComponents/Sections/BackgroundImages/FullVideoSection/FullVideoSection.jsx +263 -0
  108. package/srcold/TabexComponents/Sections/BackgroundImages/Section_with_rightbgcont/Section_with_rightbgcont.jsx +143 -0
  109. package/srcold/TabexComponents/Sections/BackgroundImages/TextSectionConnectToWA/TextSectionConnectToWA.jsx +248 -0
  110. package/srcold/TabexComponents/Sections/BackgroundImages/Threebgimages/Threebgimages.jsx +295 -0
  111. package/srcold/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages copy.jsx +394 -0
  112. package/srcold/TabexComponents/Sections/BackgroundImages/Twobgimages/Twobgimages.jsx +406 -0
  113. package/srcold/TabexComponents/Sections/BackgroundImages/VideosSection/VideosSection.jsx +246 -0
  114. package/srcold/TabexComponents/Sections/Cards/CardsSection/CardsSection.jsx +1220 -0
  115. package/srcold/TabexComponents/Sections/Cards/CardsSection2/CardsSection2.jsx +480 -0
  116. package/srcold/TabexComponents/Sections/Cards/CardsSectionwithfilter/CardsSectionwithfilter.jsx +718 -0
  117. package/srcold/TabexComponents/Sections/Cards/ElegantCategoriesCardSection/ElegantCategoriesCardSection.jsx +406 -0
  118. package/srcold/TabexComponents/Sections/Cards/ModernCardsSection/ModernCardsSection.jsx +652 -0
  119. package/srcold/TabexComponents/Sections/Cards/RandomlyStructuredCollectionCards/RandomlyStructuredCollectionCards.jsx +635 -0
  120. package/srcold/TabexComponents/Sections/Cards/Sixverticalcardssection/Sixverticalcardssection.jsx +495 -0
  121. package/srcold/TabexComponents/Sections/Cards/UsersCardsSection/UsersCardsSection.jsx +383 -0
  122. package/srcold/TabexComponents/Sections/Slideshow/AboutSection/AboutSection.jsx +250 -0
  123. package/srcold/TabexComponents/Sections/Slideshow/Backgroundimage_with_topcircle/Backgroundimage_with_topcircle.jsx +160 -0
  124. package/srcold/TabexComponents/Sections/Slideshow/ContactUsSection/ContactUsSection.jsx +256 -0
  125. package/srcold/TabexComponents/Sections/Slideshow/Freetextsection/Freetextsection.jsx +329 -0
  126. package/srcold/TabexComponents/Sections/Slideshow/HorizontalContactUsSection/HorizontalContactUsSection.jsx +266 -0
  127. package/srcold/TabexComponents/Sections/Slideshow/Image_with_leftwords/Image_with_leftwords.jsx +371 -0
  128. package/srcold/TabexComponents/Sections/Slideshow/Image_with_rightwords/Image_with_rightwords.jsx +140 -0
  129. package/srcold/TabexComponents/Sections/Slideshow/ServiceSectionWithImage/ServiceSectionWithImage.jsx +374 -0
  130. package/srcold/TabexComponents/Sections/Slideshow/Servicesection/Servicesection.jsx +339 -0
  131. package/srcold/TabexComponents/Sections/Slideshow/ServicesectionCenteredcards/ServicesectionCenteredcards.jsx +303 -0
  132. package/srcold/TabexComponents/Sections/Slideshow/Slideshow_with_rotatedsquare/Slideshow_with_rotatedsquare.jsx +224 -0
  133. package/srcold/TabexComponents/Sections/Slideshow/Slideshow_with_squarebg/Slideshow_with_squarebg.jsx +147 -0
  134. package/srcold/TabexComponents/Sections/Slideshow/Slideshowdifferentanimations/Slideshowdifferentanimations.jsx +139 -0
  135. package/srcold/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade copy.jsx +634 -0
  136. package/srcold/TabexComponents/Sections/Slideshow/Slideshowfade/Slideshowfade.jsx +324 -0
  137. package/srcold/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide copy.jsx +525 -0
  138. package/srcold/TabexComponents/Sections/Slideshow/Slideshowslide/Slideshowslide.jsx +569 -0
  139. package/srcold/TabexComponents/Sections/Slideshow/Slideshowslide/SlideshowslideOriginal.jsx +475 -0
  140. package/srcold/TabexComponents/Sections/Slideshow/Slideshowzoom/Arrow.js +91 -0
  141. package/srcold/TabexComponents/Sections/Slideshow/Slideshowzoom/Slideshowzoom.jsx +369 -0
  142. package/srcold/TabexComponents/Sections/Slideshow/TwoWayServiceSectionWithImage/TwoWayServiceSectionWithImage.jsx +392 -0
  143. package/srcold/TabexComponents/StaticPages/AccountInformation/AccountInformation.jsx +213 -0
  144. package/srcold/TabexComponents/StaticPages/CartSlider/CartSlider.jsx +467 -0
  145. package/srcold/TabexComponents/StaticPages/Categoriesdropdown/Categoriesdropdown.jsx +181 -0
  146. package/srcold/TabexComponents/StaticPages/Checkout/Checkout.jsx +1280 -0
  147. package/srcold/TabexComponents/StaticPages/Filter/Filter copy.jsx +1392 -0
  148. package/srcold/TabexComponents/StaticPages/Filter/Filter.jsx +1399 -0
  149. package/srcold/TabexComponents/StaticPages/Filter/FilterOriginal.jsx +1132 -0
  150. package/srcold/TabexComponents/StaticPages/InnerGroups/InnerGroups.jsx +60 -0
  151. package/srcold/TabexComponents/StaticPages/Login/FacebookLoginButton.jsx +50 -0
  152. package/srcold/TabexComponents/StaticPages/Login/GoogleLoginButton.jsx +35 -0
  153. package/srcold/TabexComponents/StaticPages/Login/Login.jsx +469 -0
  154. package/srcold/TabexComponents/StaticPages/OrderSuccess/OrderSuccess.jsx +143 -0
  155. package/srcold/TabexComponents/StaticPages/Ordershistory/Ordershistory.jsx +1329 -0
  156. package/srcold/TabexComponents/StaticPages/Policies/Policies.jsx +306 -0
  157. package/srcold/TabexComponents/StaticPages/Productinfo/Product_itemtype.jsx +1334 -0
  158. package/srcold/TabexComponents/StaticPages/Productinfo/Productinfo.jsx +715 -0
  159. package/srcold/TabexComponents/StaticPages/Productinfo/Service_itemtype copy.jsx +361 -0
  160. package/srcold/TabexComponents/StaticPages/Productinfo/Service_itemtype.jsx +361 -0
  161. package/srcold/TabexComponents/StaticPages/Productinfo/Serviceinfotabs.jsx +501 -0
  162. package/srcold/TabexComponents/StaticPages/Productinfo/staticroutersidenav.module.css +145 -0
  163. package/srcold/TabexComponents/StaticPages/Searchlist/Searchlist.jsx +227 -0
  164. package/srcold/TabexComponents/StaticPages/Signup/CustomerInformationForm.jsx +832 -0
  165. package/srcold/TabexComponents/StaticPages/Signup/Signup.jsx +154 -0
  166. package/srcold/TabexComponents/StaticPages/Staticpagesrouter/Staticpagesrouter.jsx +280 -0
  167. package/srcold/TabexComponents/StaticPages/Viewcart/Viewcart.jsx +671 -0
  168. package/srcold/TabexComponents/StaticPages/Wishlist/Wishlist.jsx +538 -0
  169. package/srcold/assets/images/appstore.png +0 -0
  170. package/srcold/assets/images/cod.png +0 -0
  171. package/srcold/assets/images/egyptflag.png +0 -0
  172. package/srcold/assets/images/fawry.png +0 -0
  173. package/srcold/assets/images/googleplay.png +0 -0
  174. package/srcold/assets/images/ksa.png +0 -0
  175. package/srcold/assets/images/mastercard.png +0 -0
  176. package/srcold/assets/images/payment.png +0 -0
  177. package/srcold/assets/images/paymob.png +0 -0
  178. package/srcold/assets/images/paypal.png +0 -0
  179. package/srcold/assets/images/shoppingcart.png +0 -0
  180. package/srcold/assets/images/usflag.png +0 -0
  181. package/srcold/assets/images/visa.png +0 -0
  182. package/srcold/assets/images/whatsapp.png +0 -0
  183. package/srcold/button.jsx +40 -0
  184. package/srcold/index.jsx +283 -0
  185. package/srcold/styles/Home.module.css +129 -0
  186. package/srcold/styles/cards/Categorcycard_fullimage.module.css +10 -0
  187. package/srcold/styles/cards/Categorycard_slidebgscaled.module.css +73 -0
  188. package/srcold/styles/cards/Categorycard_withshapes.module.css +189 -0
  189. package/srcold/styles/cards/ModernCardWithQuantityButton.module.css +30 -0
  190. package/srcold/styles/cards/Productcard6.module.css +9 -0
  191. package/srcold/styles/cards/Productccard_with_zoominonhover.module.css +51 -0
  192. package/srcold/styles/cards/Prouductcard_with_zoomhover.module.css +61 -0
  193. package/srcold/styles/cards/UserCardWithSocialMediaOnHover.module.css +65 -0
  194. package/srcold/styles/cards/categorycard.module.css +85 -0
  195. package/srcold/styles/cards/categorycard3.module.css +50 -0
  196. package/srcold/styles/cards/categorycardwithtext.module.css +40 -0
  197. package/srcold/styles/cards/productcard_animatedbuttons.module.css +130 -0
  198. package/srcold/styles/cards/productcard_with_textonhover.module.css +18 -0
  199. package/srcold/styles/cards/productcard_withtextonimage.module.css +0 -0
  200. package/srcold/styles/cards/productccard_with_imageontopleft.module.css +85 -0
  201. package/srcold/styles/general/bootstrap.css +4727 -0
  202. package/srcold/styles/general/dropdown.css +206 -0
  203. package/srcold/styles/general/editorbardropdown.module.css +94 -0
  204. package/srcold/styles/general/filter.module.css +108 -0
  205. package/srcold/styles/general/form.module.css +273 -0
  206. package/srcold/styles/general/general.module.css +872 -0
  207. package/srcold/styles/general/image-gallery.css +531 -0
  208. package/srcold/styles/general/react-accessible-accordion.module.css +52 -0
  209. package/srcold/styles/general/react-phone-input-2.module.css +927 -0
  210. package/srcold/styles/general/scrollbtn.module.css +22 -0
  211. package/srcold/styles/general/slick.module.css +166 -0
  212. package/srcold/styles/general/tabs.module.css +119 -0
  213. package/srcold/styles/general/workplaceeditor.module.css +328 -0
  214. package/srcold/styles/globals.css +26 -0
  215. package/srcold/styles/headers/CTAHeader.module.css +40 -0
  216. package/srcold/styles/headers/CategoryFeaturingHeader.module.css +61 -0
  217. package/srcold/styles/headers/Gotoheader.module.css +81 -0
  218. package/srcold/styles/headers/Header7.module.css +50 -0
  219. package/srcold/styles/headers/HeaderWithAdSlider.module.css +86 -0
  220. package/srcold/styles/headers/HeaderWithSearchOnCenter.module.css +101 -0
  221. package/srcold/styles/headers/HeaderWithUtilityBar.module.css +46 -0
  222. package/srcold/styles/headers/Header_threesectionslogocentered.module.css +84 -0
  223. package/srcold/styles/headers/NewHeader.module.css +101 -0
  224. package/srcold/styles/headers/SearchFocusedHeader.module.css +62 -0
  225. package/srcold/styles/headers/Sideheader.module.css +108 -0
  226. package/srcold/styles/headers/Simpleheader.module.css +102 -0
  227. package/srcold/styles/headers/classicheader.module.css +16 -0
  228. package/srcold/styles/headers/classicheaderstyles.module.css +9 -0
  229. package/srcold/styles/headers/dropdown.css +0 -0
  230. package/srcold/styles/headers/header4.module.css +175 -0
  231. package/srcold/styles/headers/header5.module.css +30 -0
  232. package/srcold/styles/headers/header_contactinfo.module.css +53 -0
  233. package/srcold/styles/headers/headerresturant.module.css +89 -0
  234. package/srcold/styles/headers/modernheader.module.css +72 -0
  235. package/srcold/styles/headers/stylishheader.module.css +24 -0
  236. package/srcold/styles/headers/subheader.module.css +114 -0
  237. package/srcold/styles/headers/threetieredheader.module.css +91 -0
  238. package/srcold/styles/sections/BackgroundImageWithTopContent.css +4 -0
  239. package/srcold/styles/sections/Backgroundimage1.module.css +17 -0
  240. package/srcold/styles/sections/Backgroundimage_with_topcircle.module.css +28 -0
  241. package/srcold/styles/sections/Section_with_rightbgcont.module.css +49 -0
  242. package/srcold/styles/sections/Slideshow_with_rotatedsquare.module.css +35 -0
  243. package/srcold/styles/sections/Slideshow_with_squarebg.module.css +39 -0
  244. package/srcold/styles/staticpages/accordion.module.css +9 -0
  245. package/srcold/styles/staticpages/cart.module.css +108 -0
  246. package/srcold/styles/staticpages/dropdown.css +196 -0
  247. package/srcold/styles/staticpages/filter.module.css +139 -0
  248. package/srcold/styles/staticpages/image-gallery.css +481 -0
  249. package/srcold/styles/staticpages/login.module.css +113 -0
  250. package/srcold/styles/staticpages/productinfo.module.css +54 -0
  251. package/srcold/styles/staticpages/shop.module.css +191 -0
  252. package/srcold/styles/staticpages/signup.module.css +206 -0
  253. package/srcold/styles/staticpages/staticroutersidenav.module.css +129 -0
  254. package/srcold/styles/staticpages/viewcart.module.css +129 -0
  255. package/srcold/styles/staticpages/wishlist.module.css +29 -0
@@ -0,0 +1,475 @@
1
+ import React, { useEffect, useState, useContext } from 'react';
2
+ import { Slide } from 'react-slideshow-image';
3
+ import { css } from 'glamor';
4
+ import { IKImage } from 'imagekitio-react';
5
+ import { IKpublicKey, IKurlEndpoint } from '../../../../../Env';
6
+ import { IoIosArrowRoundForward } from '@react-icons/all-files/io/IoIosArrowRoundForward';
7
+ import { IoIosArrowRoundBack } from '@react-icons/all-files/io/IoIosArrowRoundBack';
8
+ import { BsChevronLeft } from '@react-icons/all-files/bs/BsChevronLeft';
9
+ import { BsChevronRight } from '@react-icons/all-files/bs/BsChevronRight';
10
+
11
+ const Slideshowslide = (props) => {
12
+ const [sectionproperties, setsectionproperties] = useState('');
13
+ const [bgimagearrayofobjs, setbgimagearrayofobjs] = useState([]);
14
+ const [collectionbg, setcollectionbg] = useState([]);
15
+ const StatePagePropertiesContext = props.actions.StatePagePropertiesContext;
16
+ const lang = props.actions.lang;
17
+ const langdetect = props.actions.langdetect;
18
+ const routingcountext = props.actions.routingcountext;
19
+ const StaticPagesLinksContext = props.actions.StaticPagesLinksContext;
20
+ const fetchCategoriesQueryContext = props.actions.fetchCategoriesQueryContext;
21
+ const [showdownheadermenu, setshowdownheadermenu] = useState(false);
22
+ const [Choosenindex, setChoosenindex] = useState('');
23
+ const authdetailsContext = props.actions.authdetailsContext;
24
+
25
+ useEffect(() => {
26
+ var secpropobj = {};
27
+ StatePagePropertiesContext.pageobj.sections.forEach(function (sectionitem, sectionindex) {
28
+ if (sectionitem.sectionid == props.sectionidprops) {
29
+ sectionitem.sectionproperties.forEach(function (sectionpropertiesobj, sectionpropertiesindex) {
30
+ secpropobj[sectionpropertiesobj.property_css_name] = sectionpropertiesobj.property_value;
31
+ });
32
+ }
33
+ });
34
+ setsectionproperties({ ...secpropobj });
35
+ }, [StatePagePropertiesContext]);
36
+ useEffect(() => {
37
+ if (sectionproperties.length != 0 && sectionproperties.slideshowarrayofobj != undefined) {
38
+ var bg_arrayofobjsparsed = JSON.parse(sectionproperties.slideshowarrayofobj);
39
+ if (Array.isArray(bg_arrayofobjsparsed)) {
40
+ setbgimagearrayofobjs([...bg_arrayofobjsparsed]);
41
+ }
42
+ }
43
+ if (sectionproperties.length != 0 && sectionproperties.collectionDropdownBg != undefined) {
44
+ var collectionbgparsed = JSON.parse(sectionproperties.collectionDropdownBg);
45
+ if (Array.isArray(collectionbgparsed)) {
46
+ setcollectionbg([...collectionbgparsed]);
47
+ }
48
+ }
49
+ }, [sectionproperties]);
50
+ const Slideshowsettings = {
51
+ indicators: false,
52
+ arrows: false,
53
+ pauseOnHover: false,
54
+ scale: 1.4,
55
+ };
56
+ const slideshow_styles = {
57
+ imgcontainer: css({
58
+ ':before': {
59
+ width: '100%',
60
+ height: '100%',
61
+ background: 'rgba(0,0,0,0.8)',
62
+ zIndex: 1,
63
+ position: 'absolute',
64
+ content: 's',
65
+ fontSize: 0,
66
+ left: 0,
67
+ right: 0,
68
+ top: 0,
69
+ bottom: 0,
70
+ },
71
+ }),
72
+ slideshow_btn: css({
73
+ zIndex: 1000,
74
+ height: sectionproperties.generalbtn_height + 'px',
75
+ width: sectionproperties.generalbtn_width + 'px',
76
+ background: sectionproperties.generalbtn_bgColor,
77
+ color: sectionproperties.generalbtn_textColor,
78
+ borderTopLeftRadius: sectionproperties.generalbtn_bordertopleftradius + 'px',
79
+ borderTopRightRadius: sectionproperties.generalbtn_bordertoprightradius + 'px',
80
+ borderBottomLeftRadius: sectionproperties.generalbtn_borderbottomleftradius + 'px',
81
+ borderBottomRightRadius: sectionproperties.generalbtn_borderbottomrightradius + 'px',
82
+ fontSize: sectionproperties.generalbtn_fontsize + 'px',
83
+ lineHeight: sectionproperties.generalbtn_fontsize + 'px',
84
+ textTransform: sectionproperties.generalbtn_texttransform,
85
+ fontWeight: sectionproperties.generalbtn_fontweight,
86
+ transition: '.3s',
87
+ ':hover': {
88
+ background: sectionproperties.generalbtn_bgColoronhover,
89
+ color: sectionproperties.generalbtn_textColoronhover,
90
+ },
91
+ }),
92
+ categoryname: css({
93
+ color: sectionproperties.subheader_categorytitle_fontColor,
94
+ fontSize: sectionproperties.subheader_categorytitle_fontSize + 'px',
95
+ textTransform: sectionproperties.subheader_categorytitle_textTransform,
96
+ fontWeight: sectionproperties.subheader_categorytitle_textfontweight,
97
+ transition: '.3s',
98
+ ':hover': {
99
+ color: sectionproperties.subheader_categorytitle_coloronhover,
100
+ },
101
+ }),
102
+ parentcollection: css({
103
+ color: sectionproperties.subheader_collectiontitle_fontColor,
104
+ fontSize: sectionproperties.subheader_collectiontitle_fontSize + 'px',
105
+ textTransform: sectionproperties.subheader_collectiontitle_textTransform,
106
+ fontWeight: sectionproperties.subheader_collectiontitle_textfontweight,
107
+ transition: '.3s',
108
+ ':hover': {
109
+ color: sectionproperties.subheader_collectiontitle_coloronhover,
110
+ },
111
+ }),
112
+ collectionName: css({
113
+ color: sectionproperties.collectionsectiontextcolor,
114
+ fontSize: sectionproperties.collectionsectiontextfontsize + 'px',
115
+ textTransform: sectionproperties.collectionsectiontexttransform,
116
+ fontWeight: sectionproperties.collectionsectiontextfontweight,
117
+ transition: '.3s',
118
+ ':hover': {
119
+ color: sectionproperties.collectionsectiontextcoloronhover,
120
+ },
121
+ }),
122
+ dropdowntitle: css({
123
+ color: sectionproperties.collectionssectiontitlecolor,
124
+ fontSize: sectionproperties.collectionssectiontitlefontsize + 'px',
125
+ fontWeight: sectionproperties.collectionssectiontitlefonteweight,
126
+ textTransform: sectionproperties.collectionssectiontitletexttransfrom,
127
+ backgroundColor: sectionproperties.collectionssectiontitlebgcolor,
128
+ }),
129
+ };
130
+ const SlideShowTextContainer = (item) => {
131
+ return (
132
+ <div
133
+ class={'row m-0 w-100 pl-md-2 pr-md-2'}
134
+ style={{
135
+ position: 'absolute',
136
+ top: '40%',
137
+ zIndex: 1000,
138
+ paddingTop: sectionproperties.paddingTop + 'px',
139
+ paddingLeft: langdetect == 'en' ? sectionproperties.paddingLeft + 'px' : '',
140
+ paddingRight: langdetect == 'en' ? '' : sectionproperties.paddingLeft + 'px',
141
+ }}
142
+ >
143
+ <div
144
+ class={'col-lg-12 d-flex justify-content-start'}
145
+ style={{
146
+ textAlign: 'center',
147
+ }}
148
+ >
149
+ <p
150
+ className="m-0 p-0 wordbreak PacificoFont"
151
+ style={{
152
+ fontSize: sectionproperties.slideshowText1ContentFontSize + 'px',
153
+ color: sectionproperties.slideshowText1ContentColor,
154
+ fontWeight: sectionproperties.slideshowText1ContentFontWeight,
155
+ }}
156
+ >
157
+ {langdetect == 'en' ? item.titleen : item.titlear}
158
+ </p>
159
+ </div>
160
+ <div class={'col-lg-12 d-flex justify-content-start'}>
161
+ <p
162
+ className="m-0 p-0 wordbreak"
163
+ style={{
164
+ fontSize: sectionproperties.slideshowText2ContentFontSize + 'px',
165
+ color: sectionproperties.slideshowText2ContentColor,
166
+ fontWeight: sectionproperties.slideshowText2ContentFontWeight,
167
+ }}
168
+ >
169
+ {langdetect == 'en' ? item.descriptionen : item.descriptionar}
170
+ </p>
171
+ </div>
172
+ {sectionproperties.generalbtn_show == 'Show' && (
173
+ <div class={'col-lg-12 d-flex justify-content-start mt-3'}>
174
+ <button
175
+ class={`${slideshow_styles.slideshow_btn}` + ' allcentered '}
176
+ style={{
177
+ letterSpacing: langdetect == 'en' ? '1px' : 0,
178
+ }}
179
+ onClick={() => {
180
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent);
181
+ }}
182
+ >
183
+ {langdetect == 'en' ? sectionproperties.generalbtn_content : sectionproperties.slideshow_btn_text_ar}{' '}
184
+ {langdetect == 'en' ? <IoIosArrowRoundForward size={20} /> : <IoIosArrowRoundBack size={20} />}
185
+ </button>
186
+ </div>
187
+ )}
188
+ </div>
189
+ );
190
+ };
191
+ const SlideshowContent = () => {
192
+ return (
193
+ <div class="col-lg-12 p-0">
194
+ <div class="row m-0 w-100">
195
+ {sectionproperties.collectionssectionshow == 'Show' && (
196
+ <div class="col-lg-2 d-md-none">
197
+ <div
198
+ class="row m-0 w-100"
199
+ style={{
200
+ background: sectionproperties.collectionssectionbgcolor,
201
+ boxShadow: '0 0 10px ' + sectionproperties.collectionssectionshadowcolor,
202
+ }}
203
+ >
204
+ <div class="col-lg-12 p-0">
205
+ <div class="row m-0 w-100">
206
+ <div className={slideshow_styles.dropdowntitle + ' col-lg-12 p-0 '}>
207
+ <p className="m-0 p-3 text-center">{langdetect == 'en' ? sectionproperties.collectionssectiontitleen : sectionproperties.collectionssectiontitlear}</p>
208
+ </div>
209
+ <div class="col-lg-12 flex-column cat_dropdown_hover scrollvertical pt-3 px-2" style={{ height: sectionproperties.height + 'vh', overflowY: 'scroll' }}>
210
+ {authdetailsContext?.instinfo?.instcategories?.map((item, index) => (
211
+ <div
212
+ class={slideshow_styles.categoryname + ' row ml-0 mr-0 w-100 cursor-pointer '}
213
+ onMouseEnter={() => {
214
+ setshowdownheadermenu(true);
215
+ setChoosenindex(index);
216
+ }}
217
+ >
218
+ <div className={' col-lg-10 col-md-10 col-sm-10 p-0 d-flex justify-content-start align-items-center p-0 '}>
219
+ <p
220
+ class={' m-0 p-0 wordbreak wordbreak1 '}
221
+ onClick={() => {
222
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, 'categories/' + item.categoryid);
223
+ }}
224
+ >
225
+ {langdetect == 'en' ? item.title_en : item.title_ar}
226
+ </p>
227
+ </div>
228
+ <div className={'col-lg-2 col-md-2 col-sm-2 d-flex justify-content-end align-items-center p-0 '}>
229
+ <i className={' p-0 h-100 allcentered '}>
230
+ {langdetect == 'en' ? (
231
+ <BsChevronRight size={sectionproperties.collectionsectioniconfontsize} />
232
+ ) : (
233
+ <BsChevronLeft size={sectionproperties.collectionsectioniconfontsize} />
234
+ )}
235
+ </i>
236
+ </div>
237
+ {index != authdetailsContext?.instinfo?.instcategories - 1 && (
238
+ <div className="col-lg-12 p-0 mt-3 mb-3">
239
+ <hr class="m-0" />
240
+ </div>
241
+ )}
242
+ </div>
243
+ ))}
244
+ </div>
245
+ {Choosenindex.length != 0 && authdetailsContext?.instinfo?.instcategories[Choosenindex]?.parentcolletions?.length != 0 && (
246
+ <div
247
+ class={langdetect == 'en' ? 'cat_dropdown-menu cat_dropdown cat_dropdownen' : 'cat_dropdown-menu cat_dropdown cat_dropdownar'}
248
+ style={{
249
+ minHeight: sectionproperties.height + 'vh',
250
+ }}
251
+ onMouseLeave={() => {
252
+ setChoosenindex('');
253
+ }}
254
+ >
255
+ {/* <div class={slideshow_styles.imgcontainer}>
256
+ <IKImage
257
+ urlEndpoint={IKurlEndpoint}
258
+ publicKey={IKpublicKey}
259
+ path={collectionbg[0]?.bg_image}
260
+ style={{
261
+ height: '100%',
262
+ width: '100%',
263
+ objectFit: 'cover',
264
+ margin: 0,
265
+ padding: 0,
266
+ position: 'absolute',
267
+ top: 0,
268
+ bottom: 0,
269
+ right: 0,
270
+ left: 0,
271
+ }}
272
+ />
273
+ </div> */}
274
+
275
+ <div class="row m-0 w-100">
276
+ {authdetailsContext?.instinfo?.instcategories[Choosenindex]?.parentcolletions?.map((item, index) => (
277
+ <div class="col-lg-4 p-0">
278
+ <p
279
+ class={slideshow_styles.parentcollection + ' m-0 p-0 mb-3 cursor-pointer wordbreak wordbreak2 '}
280
+ onClick={() => {
281
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, 'parentcollections/' + item.parentcollectionid);
282
+ }}
283
+ style={{
284
+ textAlign: langdetect == 'en' ? 'left' : 'right',
285
+ }}
286
+ >
287
+ {langdetect == 'en' ? item.title_en : item.title_ar}
288
+ </p>
289
+ {item?.collections?.map((item, index) => (
290
+ <div class="col-lg-12 pl-1 pr-1">
291
+ <p
292
+ class={slideshow_styles.collectionName + ' cursor-pointer wordbreak wordbreak2 mb-1 '}
293
+ onClick={() => {
294
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, 'collections/' + item.collectionid);
295
+ }}
296
+ style={{
297
+ textAlign: langdetect == 'en' ? 'left' : 'right',
298
+ }}
299
+ >
300
+ {langdetect == 'en' ? item.title_en : item.title_ar}
301
+ </p>
302
+ </div>
303
+ ))}
304
+ </div>
305
+ ))}
306
+ </div>
307
+ </div>
308
+ )}
309
+ </div>
310
+ </div>
311
+ </div>
312
+ </div>
313
+ )}
314
+ <div
315
+ class={
316
+ sectionproperties.collectionssectionshow == 'Show'
317
+ ? 'col-lg-10 col-md-12 col-sm-12 p-0 d-flex justify-content-center h-sm-auto'
318
+ : 'col-lg-12 p-0 d-flex justify-content-center h-sm-auto'
319
+ }
320
+ style={{ height: sectionproperties.bgcovercontain == 'Cover' ? sectionproperties.height + 'vh' : 'auto' }}
321
+ >
322
+ <div
323
+ class={sectionproperties.width == '100' ? 'h-sm-auto' : 'h-sm-auto pl-sm-2 pr-sm-2 w-sm-100'}
324
+ style={{
325
+ position: 'relative',
326
+ borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
327
+ borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
328
+ borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
329
+ borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
330
+ width: sectionproperties.width + 'vw',
331
+ height: sectionproperties.bgcovercontain == 'Cover' ? sectionproperties.height + 'vh' : 'auto',
332
+ overflow: 'hidden',
333
+ }}
334
+ >
335
+ <Slide {...Slideshowsettings} transitionDuration={1500} duration={1500} arrow={true} easing="ease">
336
+ {Object.keys(bgimagearrayofobjs).length != 0 &&
337
+ bgimagearrayofobjs.map((item, index) => {
338
+ return (
339
+ <div
340
+ class="row m-0 w-100 h-sm-auto"
341
+ style={{
342
+ borderTopLeftRadius: sectionproperties.borderTopLeftRadius + 'px',
343
+ borderTopRightRadius: sectionproperties.borderTopRightRadius + 'px',
344
+ borderBottomRightRadius: sectionproperties.borderBottomRightRadius + 'px',
345
+ borderBottomLeftRadius: sectionproperties.borderBottomLeftRadius + 'px',
346
+ height: sectionproperties.bgcovercontain == 'Cover' ? sectionproperties.height + 'vh' : 'auto',
347
+ }}
348
+ >
349
+ <div
350
+ class={'p-0 align-items-center d-flex d-sm-none '}
351
+ key={index}
352
+ onClick={() => {
353
+ if (item.IsClickableimg == 'Yes') {
354
+ if (item.clickableimg_page_route && item.clickableimg_page_route.length != 0) {
355
+ routingcountext(item.clickableimg_page_route, false, '');
356
+ } else {
357
+ routingcountext(StaticPagesLinksContext.GeneralProductsComponent, true, 'collections/' + item.Clickableimg_getcoection);
358
+ }
359
+ }
360
+ }}
361
+ style={{
362
+ direction: langdetect == 'en' ? 'ltr' : 'rtl',
363
+ width: '100%',
364
+ height: '100%',
365
+ paddingTop: sectionproperties.paddingTop + 'px',
366
+ height: sectionproperties.bgcovercontain == 'Cover' ? sectionproperties.height + 'vh' : 'auto',
367
+ }}
368
+ >
369
+ <IKImage
370
+ urlEndpoint={IKurlEndpoint}
371
+ publicKey={IKpublicKey}
372
+ path={
373
+ langdetect == 'en'
374
+ ? '/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + item.imageen
375
+ : '/tr:w-' + sectionproperties.imagetr_w + ',h-' + sectionproperties.imagetr_h + '/' + item.imagear
376
+ }
377
+ style={{
378
+ cursor: item.IsClickableimg == 'Yes' ? 'pointer' : 'default',
379
+ objectFit: sectionproperties.bgcovercontain == 'Contain' ? 'contain' : 'cover',
380
+ margin: 0,
381
+ padding: 0,
382
+ width: '100%',
383
+ height: '100%',
384
+ }}
385
+ />
386
+ {SlideShowTextContainer(item)}
387
+ </div>
388
+ <div
389
+ class={'p-0 align-items-center d-none d-sm-flex '}
390
+ key={index}
391
+ style={{
392
+ width: '100%',
393
+ height: '100%',
394
+ direction: langdetect == 'en' ? 'ltr' : 'rtl',
395
+ paddingTop: sectionproperties.paddingTop + 'px',
396
+ paddingLeft: langdetect == 'en' ? sectionproperties.paddingLeft + 'px' : '',
397
+ paddingRight: langdetect == 'en' ? '' : sectionproperties.paddingLeft + 'px',
398
+ }}
399
+ >
400
+ <IKImage
401
+ urlEndpoint={IKurlEndpoint}
402
+ publicKey={IKpublicKey}
403
+ path={
404
+ langdetect == 'en'
405
+ ? '/tr:w-' + sectionproperties.imagetr_w_resp + ',h-' + sectionproperties.imagetr_h_resp + '/' + item.image_resp_en
406
+ : '/tr:w-' + sectionproperties.imagetr_w_resp + ',h-' + sectionproperties.imagetr_h_resp + '/' + item.image_resp_ar
407
+ }
408
+ style={{
409
+ objectFit: 'contain',
410
+ margin: 0,
411
+ padding: 0,
412
+ width: '100%',
413
+ height: '100%',
414
+ }}
415
+ />
416
+ {SlideShowTextContainer(item)}
417
+ </div>
418
+ </div>
419
+ );
420
+ })}
421
+ </Slide>
422
+ </div>
423
+ </div>
424
+ </div>
425
+ </div>
426
+ );
427
+ };
428
+ return (
429
+ // align-items-center
430
+ <div
431
+ class={
432
+ sectionproperties.collectionssectionshow == 'Show'
433
+ ? 'row ml-0 mr-0 w-100 d-flex justify-content-center px-1025-1 pl-md-2 pr-md-2'
434
+ : sectionproperties.width == '100'
435
+ ? 'row ml-0 mr-0 w-100 d-flex justify-content-center'
436
+ : 'row ml-0 mr-0 w-100 d-flex justify-content-center px-1025-1 pl-md-2 pr-md-2'
437
+ }
438
+ style={{
439
+ paddingBottom: sectionproperties.marginBottom + 'px',
440
+ paddingLeft: langdetect == 'en' ? sectionproperties.card_marginLeft + 'px' : sectionproperties.card_marginRight + 'px',
441
+ paddingRight: langdetect == 'en' ? sectionproperties.card_marginRight + 'px' : sectionproperties.card_marginLeft + 'px',
442
+ background: sectionproperties.backgroundColor,
443
+ }}
444
+ onMouseEnter={() => {
445
+ setChoosenindex('');
446
+ }}
447
+ >
448
+ <div class="col-lg-12 p-0">
449
+ <div
450
+ class="row m-0 w-100 d-flex d-md-none"
451
+ style={{
452
+ paddingTop: sectionproperties.marginTop + 'px',
453
+ }}
454
+ onMouseLeave={() => {
455
+ setChoosenindex('');
456
+ }}
457
+ >
458
+ {SlideshowContent()}
459
+ </div>
460
+ <div
461
+ class="row m-0 w-100 d-none d-md-flex"
462
+ style={{
463
+ paddingTop: sectionproperties.marginTopResp + 'px',
464
+ }}
465
+ onMouseLeave={() => {
466
+ setChoosenindex('');
467
+ }}
468
+ >
469
+ {SlideshowContent()}
470
+ </div>
471
+ </div>
472
+ </div>
473
+ );
474
+ };
475
+ export default Slideshowslide;
@@ -0,0 +1,91 @@
1
+ import React from 'react';
2
+ import { VisibilityContext } from 'react-horizontal-scrolling-menu';
3
+ function Arrow({ children, disabled, onClick }: { children: React.ReactNode, disabled: boolean, onClick: VoidFunction }) {
4
+ return (
5
+ <button
6
+ disabled={disabled}
7
+ onClick={onClick}
8
+ style={{
9
+ cursor: 'pointer',
10
+ display: 'flex',
11
+ flexDirection: 'column',
12
+ justifyContent: 'center',
13
+ opacity: disabled ? '0' : '1',
14
+ userSelect: 'none',
15
+ width: '100%',
16
+ height: 50,
17
+ position: 'absolute',
18
+ top: 0,
19
+ bottom: 0,
20
+ margin: 'auto',
21
+ }}
22
+ >
23
+ {children}
24
+ </button>
25
+ );
26
+ }
27
+
28
+ export function LeftArrow() {
29
+ const { isFirstItemVisible, scrollNext, scrollPrev, visibleItemsWithoutSeparators, initComplete } = React.useContext(VisibilityContext);
30
+ const [disabled, setDisabled] = React.useState(!initComplete || (initComplete && isFirstItemVisible));
31
+ React.useEffect(() => {
32
+ // NOTE: detect if whole component visible
33
+ if (visibleItemsWithoutSeparators.length) {
34
+ setDisabled(isFirstItemVisible);
35
+ }
36
+ }, [isFirstItemVisible, visibleItemsWithoutSeparators]);
37
+
38
+ return (
39
+ <Arrow
40
+ disabled={disabled}
41
+ onClick={() => {
42
+ scrollPrev();
43
+ }}
44
+ style={[]}
45
+ >
46
+ <div
47
+ class="d-flex align-items-center justify-content-center text-secondaryhover"
48
+ style={{ position: 'absolute', left: 20, width: '5vh', height: '5vh', borderRadius: '50%', zIndex: 1000 }}
49
+ >
50
+ <i class="fa fa-chevron-left text-white"></i>
51
+ </div>
52
+ </Arrow>
53
+ );
54
+ }
55
+
56
+ export function RightArrow() {
57
+ const { isLastItemVisible, scrollNext, scrollPrev, visibleItemsWithoutSeparators } = React.useContext(VisibilityContext);
58
+ const [disabled, setDisabled] = React.useState(!visibleItemsWithoutSeparators.length && isLastItemVisible);
59
+ React.useEffect(() => {
60
+ if (visibleItemsWithoutSeparators.length) {
61
+ setDisabled(isLastItemVisible);
62
+ }
63
+ }, [isLastItemVisible, visibleItemsWithoutSeparators]);
64
+
65
+ return (
66
+ <Arrow
67
+ disabled={disabled}
68
+ onClick={() => {
69
+ scrollNext();
70
+ }}
71
+ >
72
+ <div class="d-flex align-items-center justify-content-center text-secondaryhover" style={{ position: 'absolute', right: 20, width: '5vh', height: '5vh', borderRadius: '50%' }}>
73
+ <i class="fa fa-chevron-right text-white"></i>
74
+ </div>
75
+ </Arrow>
76
+ );
77
+ }
78
+ export function onWheel(apiObj: scrollVisibilityApiType, ev: React.WheelEvent): void {
79
+ const isThouchpad = Math.abs(ev.deltaX) !== 0 || Math.abs(ev.deltaY) < 15;
80
+
81
+ if (isThouchpad) {
82
+ ev.stopPropagation();
83
+ return;
84
+ }
85
+
86
+ if (ev.deltaY < 0) {
87
+ apiObj.scrollNext();
88
+ } else if (ev.deltaY > 0) {
89
+ apiObj.scrollPrev();
90
+ }
91
+ }