@agilant/toga-blox 1.0.9 → 1.0.11

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 (523) hide show
  1. package/dist/components/Badge/Badge.d.ts +4 -0
  2. package/dist/components/Badge/Badge.js +9 -0
  3. package/dist/components/Badge/Badge.stories.d.ts +7 -0
  4. package/dist/components/Badge/Badge.stories.js +196 -0
  5. package/dist/components/Badge/Badge.test.d.ts +1 -0
  6. package/dist/components/Badge/Badge.test.js +80 -0
  7. package/dist/components/Badge/Badge.types.d.ts +25 -0
  8. package/dist/components/Badge/Badge.types.js +1 -0
  9. package/dist/components/Badge/index.js +2 -0
  10. package/dist/components/Card/Card.d.ts +4 -0
  11. package/dist/components/Card/Card.js +11 -0
  12. package/dist/components/Card/Card.stories.d.ts +12 -0
  13. package/dist/components/Card/Card.stories.js +173 -0
  14. package/dist/components/Card/Card.test.d.ts +1 -0
  15. package/dist/components/Card/Card.test.js +35 -0
  16. package/dist/components/Card/Card.types.d.ts +10 -0
  17. package/dist/components/Card/Card.types.js +1 -0
  18. package/dist/components/Card/DUMMYPRODUCTDATA.json +826 -0
  19. package/dist/components/Card/index.d.ts +3 -0
  20. package/dist/components/Card/templates/CategoryCardTemplate.d.ts +27 -0
  21. package/dist/components/Card/templates/CategoryCardTemplate.js +7 -0
  22. package/dist/components/Card/templates/CompassCardTemplate.d.ts +23 -0
  23. package/dist/components/Card/templates/CompassCardTemplate.js +7 -0
  24. package/dist/components/Card/templates/CounterContentCardTemplate.d.ts +53 -0
  25. package/dist/components/Card/templates/CounterContentCardTemplate.js +46 -0
  26. package/dist/components/Card/templates/HorizontalCardTemplate.d.ts +65 -0
  27. package/dist/components/Card/templates/HorizontalCardTemplate.js +13 -0
  28. package/dist/components/Card/templates/ItemCardTemplate.d.ts +61 -0
  29. package/dist/components/Card/templates/ItemCardTemplate.js +9 -0
  30. package/dist/components/Card/templates/KitContentCardTemplate.d.ts +53 -0
  31. package/dist/components/Card/templates/KitContentCardTemplate.js +9 -0
  32. package/dist/components/Card/templates/ShippingAddressCardTemplate.d.ts +15 -0
  33. package/dist/components/Card/templates/ShippingAddressCardTemplate.js +9 -0
  34. package/dist/components/Card/templates/VerticalCardTemplate.d.ts +61 -0
  35. package/dist/components/Card/templates/VerticalCardTemplate.js +9 -0
  36. package/dist/components/CounterButton/CounterButton.d.ts +4 -0
  37. package/dist/components/CounterButton/CounterButton.js +7 -0
  38. package/dist/components/CounterButton/CounterButton.stories.d.ts +4 -0
  39. package/dist/components/CounterButton/CounterButton.stories.js +69 -0
  40. package/dist/components/CounterButton/CounterButton.types.d.ts +10 -0
  41. package/dist/components/CounterButton/CounterButton.types.js +1 -0
  42. package/dist/components/Description/Description.d.ts +4 -0
  43. package/dist/components/Description/Description.js +5 -0
  44. package/dist/components/Description/Description.stories.d.ts +5 -0
  45. package/dist/components/Description/Description.stories.js +54 -0
  46. package/dist/components/Description/Description.types.d.ts +8 -0
  47. package/dist/components/Description/Description.types.js +1 -0
  48. package/dist/components/DropDownIconButton/DropDownIconButton.d.ts +4 -0
  49. package/dist/components/DropDownIconButton/DropDownIconButton.js +24 -0
  50. package/dist/components/DropDownIconButton/DropDownIconButton.stories.d.ts +6 -0
  51. package/dist/components/DropDownIconButton/DropDownIconButton.stories.js +145 -0
  52. package/dist/components/DropDownIconButton/DropDownIconButton.test.d.ts +1 -0
  53. package/dist/components/DropDownIconButton/DropDownIconButton.test.js +40 -0
  54. package/dist/components/DropDownIconButton/DropDownIconButton.types.d.ts +20 -0
  55. package/dist/components/DropDownIconButton/DropDownIconButton.types.js +1 -0
  56. package/dist/components/DropDownIconButton/index.js +2 -0
  57. package/dist/components/Footer/ContactInfoItem.d.ts +7 -0
  58. package/dist/components/Footer/ContactInfoItem.js +4 -0
  59. package/dist/components/Footer/DUMMYFOOTERDATA.json +132 -0
  60. package/dist/components/Footer/Footer.d.ts +4 -0
  61. package/dist/components/Footer/Footer.js +12 -0
  62. package/dist/components/Footer/Footer.stories.d.ts +7 -0
  63. package/dist/components/Footer/Footer.stories.js +155 -0
  64. package/dist/components/Footer/Footer.test.d.ts +1 -0
  65. package/dist/components/Footer/Footer.test.js +48 -0
  66. package/dist/components/Footer/Footer.types.d.ts +42 -0
  67. package/dist/components/Footer/Footer.types.js +1 -0
  68. package/dist/components/FormButton/FormButton.d.ts +4 -0
  69. package/dist/components/FormButton/FormButton.js +49 -0
  70. package/dist/components/FormButton/FormButton.stories.d.ts +12 -0
  71. package/dist/components/FormButton/FormButton.stories.js +200 -0
  72. package/dist/components/FormButton/FormButton.test.d.ts +1 -0
  73. package/dist/components/FormButton/FormButton.test.js +27 -0
  74. package/dist/components/FormButton/FormButton.types.d.ts +24 -0
  75. package/dist/components/FormButton/FormButton.types.js +1 -0
  76. package/dist/components/FormButton/index.js +2 -0
  77. package/dist/components/GenericList/DUMMYLISTDATA.json +560 -0
  78. package/dist/components/GenericList/GenericList.d.ts +16 -0
  79. package/dist/components/GenericList/GenericList.js +50 -0
  80. package/dist/components/GenericList/GenericList.stories.d.ts +35 -0
  81. package/dist/components/GenericList/GenericList.stories.js +87 -0
  82. package/dist/components/GenericList/GenericList.test.d.ts +1 -0
  83. package/dist/components/GenericList/GenericList.test.js +24 -0
  84. package/dist/components/GenericList/templates/DummyDataList.d.ts +6 -0
  85. package/dist/components/GenericList/templates/DummyDataList.js +6 -0
  86. package/dist/components/GenericList/templates/DynamicIconList.d.ts +32 -0
  87. package/dist/components/GenericList/templates/DynamicIconList.js +7 -0
  88. package/dist/components/GetSupport/GetSupport.d.ts +4 -0
  89. package/dist/components/GetSupport/GetSupport.js +7 -0
  90. package/dist/components/GetSupport/GetSupport.stories.d.ts +5 -0
  91. package/dist/components/GetSupport/GetSupport.stories.js +70 -0
  92. package/dist/components/GetSupport/GetSupport.test.d.ts +1 -0
  93. package/dist/components/GetSupport/GetSupport.test.js +49 -0
  94. package/dist/components/GetSupport/GetSupport.types.d.ts +11 -0
  95. package/dist/components/GetSupport/GetSupport.types.js +1 -0
  96. package/dist/components/HamburgerButton/Hamburger.stories.d.ts +5 -0
  97. package/dist/components/HamburgerButton/Hamburger.stories.js +97 -0
  98. package/dist/components/HamburgerButton/HamburgerButton.d.ts +4 -0
  99. package/dist/components/HamburgerButton/HamburgerButton.js +15 -0
  100. package/dist/components/HamburgerButton/HamburgerButton.types.d.ts +7 -0
  101. package/dist/components/HamburgerButton/HamburgerButton.types.js +1 -0
  102. package/dist/components/HamburgerButton/index.js +2 -0
  103. package/dist/components/Header/DUMMYICONDATA.json +136 -0
  104. package/dist/components/Header/Header.d.ts +4 -0
  105. package/dist/components/Header/Header.js +62 -0
  106. package/dist/components/Header/Header.stories.d.ts +8 -0
  107. package/dist/components/Header/Header.stories.js +225 -0
  108. package/dist/components/Header/Header.test.d.ts +1 -0
  109. package/dist/components/Header/Header.test.js +107 -0
  110. package/dist/components/Header/Header.types.d.ts +40 -0
  111. package/dist/components/Header/Header.types.js +1 -0
  112. package/dist/components/Header/headerContext.d.ts +39 -0
  113. package/dist/components/Header/headerContext.js +44 -0
  114. package/dist/components/Header/index.js +2 -0
  115. package/dist/components/Hero/Hero.d.ts +4 -0
  116. package/dist/components/Hero/Hero.js +21 -0
  117. package/dist/components/Hero/Hero.stories.d.ts +13 -0
  118. package/dist/components/Hero/Hero.stories.js +46 -0
  119. package/dist/components/Hero/Hero.test.d.ts +1 -0
  120. package/dist/components/Hero/Hero.test.js +62 -0
  121. package/dist/components/Hero/Hero.types.d.ts +8 -0
  122. package/dist/components/Hero/Hero.types.js +1 -0
  123. package/dist/components/Hero/index.js +2 -0
  124. package/dist/components/IconButton/IconButton.d.ts +4 -0
  125. package/dist/components/IconButton/IconButton.js +18 -0
  126. package/dist/components/IconButton/IconButton.stories.d.ts +7 -0
  127. package/dist/components/IconButton/IconButton.stories.js +187 -0
  128. package/dist/components/IconButton/IconButton.test.d.ts +1 -0
  129. package/dist/components/IconButton/IconButton.test.js +28 -0
  130. package/dist/components/IconButton/IconButton.types.d.ts +27 -0
  131. package/dist/components/IconButton/IconButton.types.js +1 -0
  132. package/dist/components/IconButton/index.js +2 -0
  133. package/dist/components/Image/Image.d.ts +4 -0
  134. package/dist/components/Image/Image.js +19 -0
  135. package/dist/components/Image/Image.stories.d.ts +14 -0
  136. package/dist/components/Image/Image.stories.js +63 -0
  137. package/dist/components/Image/Image.test.d.ts +1 -0
  138. package/dist/components/Image/Image.test.js +47 -0
  139. package/dist/components/Image/Image.types.d.ts +12 -0
  140. package/dist/components/Image/Image.types.js +1 -0
  141. package/dist/components/Image/index.js +2 -0
  142. package/dist/components/Input/Input.d.ts +4 -0
  143. package/dist/components/Input/Input.js +51 -0
  144. package/dist/components/Input/Input.stories.d.ts +13 -0
  145. package/dist/components/Input/Input.stories.js +364 -0
  146. package/dist/components/Input/Input.test.d.ts +1 -0
  147. package/dist/components/Input/Input.test.js +45 -0
  148. package/dist/components/Input/Input.types.d.ts +36 -0
  149. package/dist/components/Input/Input.types.js +1 -0
  150. package/dist/components/Input/InputMemoTypes.d.ts +2 -0
  151. package/dist/components/Input/InputMemoTypes.js +28 -0
  152. package/dist/components/Input/index.js +2 -0
  153. package/dist/components/MobileMenu/MobileMenu.d.ts +3 -0
  154. package/dist/components/MobileMenu/MobileMenu.js +7 -0
  155. package/dist/components/MobileMenu/MobileMenu.types.d.ts +20 -0
  156. package/dist/components/MobileMenu/MobileMenu.types.js +1 -0
  157. package/dist/components/MobileMenu/index.js +2 -0
  158. package/dist/components/Nav/DUMMYNAVDATA.json +234 -0
  159. package/dist/components/Nav/Nav.d.ts +4 -0
  160. package/dist/components/Nav/Nav.js +31 -0
  161. package/dist/components/Nav/Nav.stories.d.ts +6 -0
  162. package/dist/components/Nav/Nav.stories.js +164 -0
  163. package/dist/components/Nav/Nav.test.d.ts +1 -0
  164. package/dist/components/Nav/Nav.test.js +52 -0
  165. package/dist/components/Nav/Nav.types.d.ts +38 -0
  166. package/dist/components/Nav/Nav.types.js +1 -0
  167. package/dist/components/Nav/index.js +2 -0
  168. package/dist/components/Page/TableDataDummy.d.ts +3 -0
  169. package/dist/components/Page/TableDataDummy.js +5 -0
  170. package/dist/components/Page/ViewPageTemplate.d.ts +3 -0
  171. package/dist/components/Page/ViewPageTemplate.js +5 -0
  172. package/dist/components/Page/ViewPageTemplate.stories.d.ts +8 -0
  173. package/dist/components/Page/ViewPageTemplate.stories.js +73 -0
  174. package/dist/components/Page/ViewPageTemplate.test.d.ts +1 -0
  175. package/dist/components/Page/ViewPageTemplate.test.js +71 -0
  176. package/{src/components/Page/ViewPageTemplate.types.ts → dist/components/Page/ViewPageTemplate.types.d.ts} +2 -3
  177. package/dist/components/Page/ViewPageTemplate.types.js +1 -0
  178. package/dist/components/Page/index.js +2 -0
  179. package/dist/components/PageSection/PageSection.d.ts +4 -0
  180. package/dist/components/PageSection/PageSection.js +5 -0
  181. package/dist/components/PageSection/PageSection.stories.d.ts +6 -0
  182. package/dist/components/PageSection/PageSection.stories.js +40 -0
  183. package/{src/components/PageSection/PageSection.types.ts → dist/components/PageSection/PageSection.types.d.ts} +2 -3
  184. package/dist/components/PageSection/PageSection.types.js +1 -0
  185. package/dist/components/PageSection/PageSections.test.d.ts +1 -0
  186. package/dist/components/PageSection/PageSections.test.js +31 -0
  187. package/dist/components/PageSection/index.js +2 -0
  188. package/dist/components/SearchInput/SearchInput.d.ts +4 -0
  189. package/dist/components/SearchInput/SearchInput.js +17 -0
  190. package/dist/components/SearchInput/SearchInput.stories.d.ts +9 -0
  191. package/dist/components/SearchInput/SearchInput.stories.js +128 -0
  192. package/dist/components/SearchInput/SearchInput.types.d.ts +25 -0
  193. package/dist/components/SearchInput/SearchInput.types.js +1 -0
  194. package/dist/components/Slider/Slider.d.ts +4 -0
  195. package/dist/components/Slider/Slider.js +56 -0
  196. package/dist/components/Slider/Slider.stories.d.ts +6 -0
  197. package/dist/components/Slider/Slider.stories.js +82 -0
  198. package/dist/components/Slider/Slider.types.d.ts +21 -0
  199. package/dist/components/Slider/Slider.types.js +1 -0
  200. package/dist/components/Submenus/AdminSubmenu.d.ts +4 -0
  201. package/dist/components/Submenus/AdminSubmenu.js +5 -0
  202. package/dist/components/Submenus/AlertSubmenu.d.ts +4 -0
  203. package/dist/components/Submenus/AlertSubmenu.js +7 -0
  204. package/dist/components/Submenus/AlertSubmenuItem.d.ts +4 -0
  205. package/dist/components/Submenus/AlertSubmenuItem.js +5 -0
  206. package/dist/components/Submenus/types.d.ts +29 -0
  207. package/dist/components/Submenus/types.js +1 -0
  208. package/dist/components/Text/Text.d.ts +4 -0
  209. package/dist/components/Text/Text.js +12 -0
  210. package/dist/components/Text/Text.stories.d.ts +5 -0
  211. package/dist/components/Text/Text.stories.js +79 -0
  212. package/dist/components/Text/Text.test.d.ts +1 -0
  213. package/dist/components/Text/Text.test.js +31 -0
  214. package/{src/components/Text/Text.types.ts → dist/components/Text/Text.types.d.ts} +6 -8
  215. package/dist/components/Text/Text.types.js +1 -0
  216. package/dist/components/Text/index.js +2 -0
  217. package/dist/components/Toaster/Toaster.d.ts +4 -0
  218. package/dist/components/Toaster/Toaster.js +22 -0
  219. package/dist/components/Toaster/Toaster.stories.d.ts +23 -0
  220. package/dist/components/Toaster/Toaster.stories.js +102 -0
  221. package/dist/components/Toaster/Toaster.test.d.ts +1 -0
  222. package/dist/components/Toaster/Toaster.test.js +47 -0
  223. package/dist/components/Toaster/Toaster.types.d.ts +15 -0
  224. package/dist/components/Toaster/Toaster.types.js +1 -0
  225. package/dist/components/Toaster/index.js +2 -0
  226. package/dist/hoc/index.d.ts +1 -0
  227. package/dist/hoc/styling/withStoryBook.d.ts +6 -0
  228. package/dist/hoc/styling/withStoryBook.js +7 -0
  229. package/dist/main.css +1 -0
  230. package/dist/setupTests.js +1 -0
  231. package/dist/userHoc/index.js +1 -0
  232. package/dist/userHoc/withMemo.d.ts +5 -0
  233. package/dist/userHoc/withMemo.js +6 -0
  234. package/dist/utils/assertTagName.d.ts +3 -0
  235. package/dist/utils/assertTagName.js +6 -0
  236. package/dist/utils/generateAccordionItem.d.ts +15 -0
  237. package/dist/utils/generateAccordionItem.js +22 -0
  238. package/dist/utils/generateFooterContacts.d.ts +14 -0
  239. package/dist/utils/generateFooterContacts.js +19 -0
  240. package/dist/utils/generateNavMenu.d.ts +14 -0
  241. package/dist/utils/generateNavMenu.js +5 -0
  242. package/dist/utils/generateSocialList.d.ts +12 -0
  243. package/dist/utils/generateSocialList.js +4 -0
  244. package/dist/utils/getFontAwesomeIcon.d.ts +2 -0
  245. package/dist/utils/getFontAwesomeIcon.js +19 -0
  246. package/dist/utils/inputValidation.d.ts +6 -0
  247. package/dist/utils/inputValidation.js +12 -0
  248. package/package.json +9 -4
  249. package/.gitattributes +0 -5
  250. package/Dockerfile +0 -9
  251. package/assets/Logo.png +0 -0
  252. package/assets/cable.jpg +0 -0
  253. package/assets/card-1.jpg +0 -0
  254. package/assets/cat-logo.png +0 -0
  255. package/assets/compass-card-image-2.png +0 -0
  256. package/assets/compass-card-image-3.png +0 -0
  257. package/assets/compass-card-image-4.png +0 -0
  258. package/assets/compass-card-image.png +0 -0
  259. package/assets/compass-logo.png +0 -0
  260. package/assets/compass-tech-hero-bg.png +0 -0
  261. package/assets/contact-image.png +0 -0
  262. package/assets/green-laptop.png +0 -0
  263. package/assets/heroImage.png +0 -0
  264. package/assets/item.jpg +0 -0
  265. package/assets/map.png +0 -0
  266. package/assets/placeholder-no-image-available.png +0 -0
  267. package/assets/team.png +0 -0
  268. package/coverage/base.css +0 -224
  269. package/coverage/block-navigation.js +0 -87
  270. package/coverage/clover.xml +0 -953
  271. package/coverage/coverage-final.json +0 -74
  272. package/coverage/favicon.png +0 -0
  273. package/coverage/index.html +0 -551
  274. package/coverage/prettify.css +0 -1
  275. package/coverage/prettify.js +0 -2
  276. package/coverage/sort-arrow-sprite.png +0 -0
  277. package/coverage/sorter.js +0 -196
  278. package/coverage/toga-blox-npm/index.html +0 -131
  279. package/coverage/toga-blox-npm/postcss.config.js.html +0 -103
  280. package/coverage/toga-blox-npm/src/components/Badge/Badge.stories.tsx.html +0 -793
  281. package/coverage/toga-blox-npm/src/components/Badge/Badge.tsx.html +0 -247
  282. package/coverage/toga-blox-npm/src/components/Badge/index.html +0 -131
  283. package/coverage/toga-blox-npm/src/components/Card/Card.stories.tsx.html +0 -787
  284. package/coverage/toga-blox-npm/src/components/Card/Card.tsx.html +0 -163
  285. package/coverage/toga-blox-npm/src/components/Card/index.html +0 -131
  286. package/coverage/toga-blox-npm/src/components/Card/templates/CategoryCardTemplate.tsx.html +0 -343
  287. package/coverage/toga-blox-npm/src/components/Card/templates/CompassCardTemplate.tsx.html +0 -259
  288. package/coverage/toga-blox-npm/src/components/Card/templates/CounterContentCardTemplate.tsx.html +0 -685
  289. package/coverage/toga-blox-npm/src/components/Card/templates/HorizontalCardTemplate.tsx.html +0 -637
  290. package/coverage/toga-blox-npm/src/components/Card/templates/ItemCardTemplate.tsx.html +0 -550
  291. package/coverage/toga-blox-npm/src/components/Card/templates/KitContentCardTemplate.tsx.html +0 -469
  292. package/coverage/toga-blox-npm/src/components/Card/templates/ShippingAddressCardTemplate.tsx.html +0 -418
  293. package/coverage/toga-blox-npm/src/components/Card/templates/VerticalCardTemplate.tsx.html +0 -592
  294. package/coverage/toga-blox-npm/src/components/Card/templates/index.html +0 -221
  295. package/coverage/toga-blox-npm/src/components/CounterButton/CounterButton.stories.tsx.html +0 -358
  296. package/coverage/toga-blox-npm/src/components/CounterButton/CounterButton.tsx.html +0 -385
  297. package/coverage/toga-blox-npm/src/components/CounterButton/index.html +0 -131
  298. package/coverage/toga-blox-npm/src/components/Description/Description.stories.tsx.html +0 -286
  299. package/coverage/toga-blox-npm/src/components/Description/Description.tsx.html +0 -124
  300. package/coverage/toga-blox-npm/src/components/Description/index.html +0 -131
  301. package/coverage/toga-blox-npm/src/components/DropDownIconButton/DropDownIconButton.stories.tsx.html +0 -676
  302. package/coverage/toga-blox-npm/src/components/DropDownIconButton/DropDownIconButton.tsx.html +0 -346
  303. package/coverage/toga-blox-npm/src/components/DropDownIconButton/index.html +0 -131
  304. package/coverage/toga-blox-npm/src/components/Footer/ContactInfoItem.tsx.html +0 -139
  305. package/coverage/toga-blox-npm/src/components/Footer/Footer.stories.tsx.html +0 -934
  306. package/coverage/toga-blox-npm/src/components/Footer/Footer.tsx.html +0 -373
  307. package/coverage/toga-blox-npm/src/components/Footer/index.html +0 -146
  308. package/coverage/toga-blox-npm/src/components/FormButton/FormButton.stories.tsx.html +0 -952
  309. package/coverage/toga-blox-npm/src/components/FormButton/FormButton.tsx.html +0 -343
  310. package/coverage/toga-blox-npm/src/components/FormButton/index.html +0 -131
  311. package/coverage/toga-blox-npm/src/components/GenericList/GenericList.stories.tsx.html +0 -376
  312. package/coverage/toga-blox-npm/src/components/GenericList/GenericList.tsx.html +0 -520
  313. package/coverage/toga-blox-npm/src/components/GenericList/index.html +0 -131
  314. package/coverage/toga-blox-npm/src/components/GenericList/templates/DummyDataList.tsx.html +0 -154
  315. package/coverage/toga-blox-npm/src/components/GenericList/templates/DynamicIconList.tsx.html +0 -250
  316. package/coverage/toga-blox-npm/src/components/GenericList/templates/index.html +0 -131
  317. package/coverage/toga-blox-npm/src/components/GetSupport/GetSupport.stories.tsx.html +0 -325
  318. package/coverage/toga-blox-npm/src/components/GetSupport/GetSupport.tsx.html +0 -262
  319. package/coverage/toga-blox-npm/src/components/GetSupport/index.html +0 -131
  320. package/coverage/toga-blox-npm/src/components/HamburgerButton/Hamburger.stories.tsx.html +0 -760
  321. package/coverage/toga-blox-npm/src/components/HamburgerButton/HamburgerButton.tsx.html +0 -232
  322. package/coverage/toga-blox-npm/src/components/HamburgerButton/index.html +0 -131
  323. package/coverage/toga-blox-npm/src/components/Header/Header.stories.tsx.html +0 -1633
  324. package/coverage/toga-blox-npm/src/components/Header/Header.tsx.html +0 -814
  325. package/coverage/toga-blox-npm/src/components/Header/headerContext.tsx.html +0 -460
  326. package/coverage/toga-blox-npm/src/components/Header/index.html +0 -146
  327. package/coverage/toga-blox-npm/src/components/Hero/Hero.stories.tsx.html +0 -289
  328. package/coverage/toga-blox-npm/src/components/Hero/Hero.tsx.html +0 -259
  329. package/coverage/toga-blox-npm/src/components/Hero/index.html +0 -131
  330. package/coverage/toga-blox-npm/src/components/IconButton/IconButton.stories.tsx.html +0 -673
  331. package/coverage/toga-blox-npm/src/components/IconButton/IconButton.tsx.html +0 -313
  332. package/coverage/toga-blox-npm/src/components/IconButton/index.html +0 -131
  333. package/coverage/toga-blox-npm/src/components/Image/Image.stories.tsx.html +0 -322
  334. package/coverage/toga-blox-npm/src/components/Image/Image.tsx.html +0 -226
  335. package/coverage/toga-blox-npm/src/components/Image/index.html +0 -131
  336. package/coverage/toga-blox-npm/src/components/Input/Input.stories.tsx.html +0 -1621
  337. package/coverage/toga-blox-npm/src/components/Input/Input.tsx.html +0 -568
  338. package/coverage/toga-blox-npm/src/components/Input/InputMemoTypes.tsx.html +0 -181
  339. package/coverage/toga-blox-npm/src/components/Input/index.html +0 -146
  340. package/coverage/toga-blox-npm/src/components/MobileMenu/MobileMenu.tsx.html +0 -208
  341. package/coverage/toga-blox-npm/src/components/MobileMenu/index.html +0 -116
  342. package/coverage/toga-blox-npm/src/components/Nav/Nav.stories.tsx.html +0 -628
  343. package/coverage/toga-blox-npm/src/components/Nav/Nav.tsx.html +0 -622
  344. package/coverage/toga-blox-npm/src/components/Nav/index.html +0 -131
  345. package/coverage/toga-blox-npm/src/components/Page/TableDataDummy.tsx.html +0 -733
  346. package/coverage/toga-blox-npm/src/components/Page/ViewPageTemplate.stories.tsx.html +0 -1714
  347. package/coverage/toga-blox-npm/src/components/Page/ViewPageTemplate.tsx.html +0 -115
  348. package/coverage/toga-blox-npm/src/components/Page/index.html +0 -146
  349. package/coverage/toga-blox-npm/src/components/PageSection/PageSection.stories.tsx.html +0 -433
  350. package/coverage/toga-blox-npm/src/components/PageSection/PageSection.tsx.html +0 -121
  351. package/coverage/toga-blox-npm/src/components/PageSection/index.html +0 -131
  352. package/coverage/toga-blox-npm/src/components/SearchInput/SearchInput.stories.tsx.html +0 -517
  353. package/coverage/toga-blox-npm/src/components/SearchInput/SearchInput.tsx.html +0 -325
  354. package/coverage/toga-blox-npm/src/components/SearchInput/index.html +0 -131
  355. package/coverage/toga-blox-npm/src/components/Slider/Slider.stories.tsx.html +0 -349
  356. package/coverage/toga-blox-npm/src/components/Slider/Slider.tsx.html +0 -502
  357. package/coverage/toga-blox-npm/src/components/Slider/index.html +0 -131
  358. package/coverage/toga-blox-npm/src/components/Submenus/AdminSubmenu.tsx.html +0 -136
  359. package/coverage/toga-blox-npm/src/components/Submenus/AlertSubmenu.tsx.html +0 -253
  360. package/coverage/toga-blox-npm/src/components/Submenus/AlertSubmenuItem.tsx.html +0 -202
  361. package/coverage/toga-blox-npm/src/components/Submenus/index.html +0 -146
  362. package/coverage/toga-blox-npm/src/components/Text/Text.stories.tsx.html +0 -235
  363. package/coverage/toga-blox-npm/src/components/Text/Text.tsx.html +0 -172
  364. package/coverage/toga-blox-npm/src/components/Text/index.html +0 -131
  365. package/coverage/toga-blox-npm/src/components/Toaster/Toaster.stories.tsx.html +0 -445
  366. package/coverage/toga-blox-npm/src/components/Toaster/Toaster.tsx.html +0 -301
  367. package/coverage/toga-blox-npm/src/components/Toaster/index.html +0 -131
  368. package/coverage/toga-blox-npm/src/hoc/styling/index.html +0 -116
  369. package/coverage/toga-blox-npm/src/hoc/styling/withStoryBook.tsx.html +0 -142
  370. package/coverage/toga-blox-npm/src/userHoc/index.html +0 -116
  371. package/coverage/toga-blox-npm/src/userHoc/withMemo.tsx.html +0 -145
  372. package/coverage/toga-blox-npm/src/utils/assertTagName.tsx.html +0 -106
  373. package/coverage/toga-blox-npm/src/utils/generateAccordionItem.tsx.html +0 -373
  374. package/coverage/toga-blox-npm/src/utils/generateFooterContacts.tsx.html +0 -295
  375. package/coverage/toga-blox-npm/src/utils/generateNavMenu.tsx.html +0 -247
  376. package/coverage/toga-blox-npm/src/utils/generateSocialList.tsx.html +0 -187
  377. package/coverage/toga-blox-npm/src/utils/getFontAwesomeIcon.tsx.html +0 -145
  378. package/coverage/toga-blox-npm/src/utils/index.html +0 -206
  379. package/coverage/toga-blox-npm/src/utils/inputValidation.tsx.html +0 -163
  380. package/coverage/toga-blox-npm/tailwind.config.js.html +0 -205
  381. package/declarations.d.ts +0 -4
  382. package/docker-compose.yml +0 -22
  383. package/global.css +0 -4
  384. package/index.js +0 -4
  385. package/nodemon.json +0 -5
  386. package/postcss.config.js +0 -6
  387. package/src/components/Badge/Badge.stories.tsx +0 -236
  388. package/src/components/Badge/Badge.test.tsx +0 -175
  389. package/src/components/Badge/Badge.tsx +0 -54
  390. package/src/components/Badge/Badge.types.tsx +0 -26
  391. package/src/components/Card/Card.stories.tsx +0 -235
  392. package/src/components/Card/Card.test.tsx +0 -53
  393. package/src/components/Card/Card.tsx +0 -26
  394. package/src/components/Card/Card.types.ts +0 -11
  395. package/src/components/Card/DUMMYPRODUCTDATA.json +0 -826
  396. package/src/components/Card/templates/CategoryCardTemplate.tsx +0 -86
  397. package/src/components/Card/templates/CompassCardTemplate.tsx +0 -58
  398. package/src/components/Card/templates/CounterContentCardTemplate.tsx +0 -200
  399. package/src/components/Card/templates/HorizontalCardTemplate.tsx +0 -184
  400. package/src/components/Card/templates/ItemCardTemplate.tsx +0 -155
  401. package/src/components/Card/templates/KitContentCardTemplate.tsx +0 -128
  402. package/src/components/Card/templates/ShippingAddressCardTemplate.tsx +0 -111
  403. package/src/components/Card/templates/VerticalCardTemplate.tsx +0 -169
  404. package/src/components/CounterButton/CounterButton.stories.tsx +0 -91
  405. package/src/components/CounterButton/CounterButton.tsx +0 -100
  406. package/src/components/CounterButton/CounterButton.types.ts +0 -12
  407. package/src/components/Description/Description.stories.tsx +0 -67
  408. package/src/components/Description/Description.tsx +0 -13
  409. package/src/components/Description/Description.types.ts +0 -9
  410. package/src/components/DropDownIconButton/DropDownIconButton.stories.tsx +0 -197
  411. package/src/components/DropDownIconButton/DropDownIconButton.test.tsx +0 -90
  412. package/src/components/DropDownIconButton/DropDownIconButton.tsx +0 -87
  413. package/src/components/DropDownIconButton/DropDownIconButton.types.ts +0 -21
  414. package/src/components/Footer/ContactInfoItem.tsx +0 -18
  415. package/src/components/Footer/DUMMYFOOTERDATA.json +0 -132
  416. package/src/components/Footer/Footer.stories.tsx +0 -283
  417. package/src/components/Footer/Footer.test.tsx +0 -90
  418. package/src/components/Footer/Footer.tsx +0 -96
  419. package/src/components/Footer/Footer.types.tsx +0 -61
  420. package/src/components/FormButton/FormButton.stories.tsx +0 -289
  421. package/src/components/FormButton/FormButton.test.tsx +0 -73
  422. package/src/components/FormButton/FormButton.tsx +0 -86
  423. package/src/components/FormButton/FormButton.types.ts +0 -27
  424. package/src/components/GenericList/DUMMYLISTDATA.json +0 -560
  425. package/src/components/GenericList/GenericList.stories.tsx +0 -97
  426. package/src/components/GenericList/GenericList.test.tsx +0 -29
  427. package/src/components/GenericList/GenericList.tsx +0 -145
  428. package/src/components/GenericList/templates/DummyDataList.tsx +0 -23
  429. package/src/components/GenericList/templates/DynamicIconList.tsx +0 -55
  430. package/src/components/GetSupport/GetSupport.stories.tsx +0 -80
  431. package/src/components/GetSupport/GetSupport.test.tsx +0 -62
  432. package/src/components/GetSupport/GetSupport.tsx +0 -59
  433. package/src/components/GetSupport/GetSupport.types.ts +0 -11
  434. package/src/components/HamburgerButton/Hamburger.stories.tsx +0 -225
  435. package/src/components/HamburgerButton/HamburgerButton.tsx +0 -49
  436. package/src/components/HamburgerButton/HamburgerButton.types.tsx +0 -7
  437. package/src/components/Header/DUMMYICONDATA.json +0 -136
  438. package/src/components/Header/Header.stories.tsx +0 -516
  439. package/src/components/Header/Header.test.tsx +0 -322
  440. package/src/components/Header/Header.tsx +0 -243
  441. package/src/components/Header/Header.types.ts +0 -52
  442. package/src/components/Header/headerContext.tsx +0 -125
  443. package/src/components/Hero/Hero.stories.tsx +0 -68
  444. package/src/components/Hero/Hero.test.tsx +0 -109
  445. package/src/components/Hero/Hero.tsx +0 -58
  446. package/src/components/Hero/Hero.types.ts +0 -9
  447. package/src/components/IconButton/IconButton.stories.tsx +0 -196
  448. package/src/components/IconButton/IconButton.test.tsx +0 -52
  449. package/src/components/IconButton/IconButton.tsx +0 -76
  450. package/src/components/IconButton/IconButton.types.ts +0 -28
  451. package/src/components/Image/Image.stories.tsx +0 -79
  452. package/src/components/Image/Image.test.tsx +0 -87
  453. package/src/components/Image/Image.tsx +0 -47
  454. package/src/components/Image/Image.types.ts +0 -11
  455. package/src/components/Image/declarations.d.ts +0 -24
  456. package/src/components/Input/Input.stories.tsx +0 -512
  457. package/src/components/Input/Input.test.tsx +0 -89
  458. package/src/components/Input/Input.tsx +0 -161
  459. package/src/components/Input/Input.types.ts +0 -52
  460. package/src/components/Input/InputMemoTypes.tsx +0 -32
  461. package/src/components/MobileMenu/MobileMenu.tsx +0 -41
  462. package/src/components/MobileMenu/MobileMenu.types.tsx +0 -28
  463. package/src/components/Nav/DUMMYNAVDATA.json +0 -234
  464. package/src/components/Nav/Nav.stories.tsx +0 -181
  465. package/src/components/Nav/Nav.test.tsx +0 -89
  466. package/src/components/Nav/Nav.tsx +0 -179
  467. package/src/components/Nav/Nav.types.tsx +0 -47
  468. package/src/components/Page/TableDataDummy.tsx +0 -216
  469. package/src/components/Page/ViewPageTemplate.stories.tsx +0 -543
  470. package/src/components/Page/ViewPageTemplate.test.tsx +0 -361
  471. package/src/components/Page/ViewPageTemplate.tsx +0 -10
  472. package/src/components/PageSection/PageSection.stories.tsx +0 -116
  473. package/src/components/PageSection/PageSection.tsx +0 -12
  474. package/src/components/PageSection/PageSections.test.tsx +0 -89
  475. package/src/components/SearchInput/SearchInput.stories.tsx +0 -144
  476. package/src/components/SearchInput/SearchInput.tsx +0 -81
  477. package/src/components/SearchInput/SearchInput.types.ts +0 -28
  478. package/src/components/Slider/Slider.stories.tsx +0 -88
  479. package/src/components/Slider/Slider.tsx +0 -139
  480. package/src/components/Slider/Slider.types.ts +0 -21
  481. package/src/components/Submenus/AdminSubmenu.tsx +0 -17
  482. package/src/components/Submenus/AlertSubmenu.tsx +0 -56
  483. package/src/components/Submenus/AlertSubmenuItem.tsx +0 -39
  484. package/src/components/Submenus/types.tsx +0 -32
  485. package/src/components/Text/Text.stories.tsx +0 -50
  486. package/src/components/Text/Text.test.tsx +0 -52
  487. package/src/components/Text/Text.tsx +0 -29
  488. package/src/components/Toaster/Toaster.stories.tsx +0 -120
  489. package/src/components/Toaster/Toaster.test.tsx +0 -60
  490. package/src/components/Toaster/Toaster.tsx +0 -72
  491. package/src/components/Toaster/Toaster.types.ts +0 -12
  492. package/src/hoc/styling/withStoryBook.tsx +0 -19
  493. package/src/main.css +0 -3
  494. package/src/userHoc/withMemo.tsx +0 -20
  495. package/src/utils/assertTagName.tsx +0 -7
  496. package/src/utils/generateAccordionItem.tsx +0 -96
  497. package/src/utils/generateFooterContacts.tsx +0 -70
  498. package/src/utils/generateNavMenu.tsx +0 -54
  499. package/src/utils/generateSocialList.tsx +0 -34
  500. package/src/utils/getFontAwesomeIcon.tsx +0 -20
  501. package/src/utils/inputValidation.tsx +0 -26
  502. package/tailwind.config.js +0 -40
  503. package/tsconfig.json +0 -25
  504. package/vite.config.ts +0 -33
  505. /package/{src/components/Badge/index.ts → dist/components/Badge/index.d.ts} +0 -0
  506. /package/{src/components/Card/index.ts → dist/components/Card/index.js} +0 -0
  507. /package/{src/components/DropDownIconButton/index.ts → dist/components/DropDownIconButton/index.d.ts} +0 -0
  508. /package/{src/components/FormButton/index.ts → dist/components/FormButton/index.d.ts} +0 -0
  509. /package/{src/components/HamburgerButton/index.ts → dist/components/HamburgerButton/index.d.ts} +0 -0
  510. /package/{src/components/Header/index.ts → dist/components/Header/index.d.ts} +0 -0
  511. /package/{src/components/Hero/index.ts → dist/components/Hero/index.d.ts} +0 -0
  512. /package/{src/components/IconButton/index.ts → dist/components/IconButton/index.d.ts} +0 -0
  513. /package/{src/components/Image/index.ts → dist/components/Image/index.d.ts} +0 -0
  514. /package/{src/components/Input/index.ts → dist/components/Input/index.d.ts} +0 -0
  515. /package/{src/components/MobileMenu/index.ts → dist/components/MobileMenu/index.d.ts} +0 -0
  516. /package/{src/components/Nav/index.ts → dist/components/Nav/index.d.ts} +0 -0
  517. /package/{src/components/Page/index.ts → dist/components/Page/index.d.ts} +0 -0
  518. /package/{src/components/PageSection/index.ts → dist/components/PageSection/index.d.ts} +0 -0
  519. /package/{src/components/Text/index.ts → dist/components/Text/index.d.ts} +0 -0
  520. /package/{src/components/Toaster/index.ts → dist/components/Toaster/index.d.ts} +0 -0
  521. /package/{src/hoc/index.ts → dist/hoc/index.js} +0 -0
  522. /package/{src/setupTests.ts → dist/setupTests.d.ts} +0 -0
  523. /package/{src/userHoc/index.ts → dist/userHoc/index.d.ts} +0 -0
@@ -1,145 +0,0 @@
1
- import React, { useEffect, useState } from "react";
2
- import { VirtualItem, useVirtualizer } from "@tanstack/react-virtual";
3
- import { useCallback } from "react";
4
-
5
- type GenericData = {
6
- id: string;
7
- [key: string]: any;
8
- };
9
-
10
- export type GenericListTypes<T> = {
11
- data: T[];
12
- renderItem: (item: T) => JSX.Element;
13
- itemHeight?: number;
14
- containerHeight?: number;
15
- containerClasses?: string;
16
- listDirection?: "horizontal" | "vertical";
17
- hasVirtualization?: boolean;
18
- listType: "ordered" | "unordered" | "none";
19
- };
20
-
21
- const GenericList = <T extends GenericData>({
22
- data,
23
- renderItem,
24
- itemHeight,
25
- containerHeight,
26
- containerClasses = "",
27
- listDirection = "vertical",
28
- hasVirtualization = false,
29
- listType = "none",
30
- }: GenericListTypes<T>) => {
31
- const listClasses = listDirection === "horizontal" ? "flex flex-row" : "flex flex-col";
32
- const parentRef = React.createRef<HTMLElement>();
33
-
34
- const [virtualItems, setVirtualItems] = useState<VirtualItem<Element>[]>([]);
35
- const [nonVirtualItems, setNonVirtualItems] = useState<T[]>([]);
36
-
37
- const estimateSize = useCallback(
38
- () => (itemHeight ? itemHeight : 0),
39
- [itemHeight]
40
- );
41
-
42
- const count = data.length;
43
-
44
- const virtualizer = useVirtualizer({
45
- count,
46
- estimateSize,
47
- overscan: count,
48
- getScrollElement: () => parentRef.current,
49
- });
50
-
51
- useEffect(() => {
52
- if (hasVirtualization) {
53
- setVirtualItems(virtualizer.getVirtualItems());
54
- } else {
55
- setNonVirtualItems(data);
56
- }
57
- }, [hasVirtualization, virtualizer, data]);
58
-
59
- return (
60
- <>
61
- {(() => {
62
- switch (listType) {
63
- case "ordered":
64
- return (
65
- <ol
66
- ref={parentRef as React.RefObject<HTMLOListElement>}
67
- style={
68
- hasVirtualization
69
- ? { height: containerHeight, overflow: "scroll" }
70
- : {}
71
- }
72
- className={`${listClasses} ${containerClasses}`}
73
- >
74
- {hasVirtualization
75
- ? virtualItems.map((virtualItem) => (
76
- <li
77
- key={virtualItem.index}
78
- style={{ height: itemHeight }}
79
- >
80
- {renderItem(data[virtualItem.index])}
81
- </li>
82
- ))
83
- : nonVirtualItems.map((item) => (
84
- <li key={item.id}>{renderItem(item)}</li>
85
- ))}
86
- </ol>
87
- );
88
- case "unordered":
89
- return (
90
- <ul
91
- ref={parentRef as React.RefObject<HTMLUListElement>}
92
- style={
93
- hasVirtualization
94
- ? { height: containerHeight, overflow: "scroll" }
95
- : {}
96
- }
97
- className={`${listClasses} ${containerClasses}`}
98
- >
99
- {hasVirtualization
100
- ? virtualItems.map((virtualItem) => (
101
- <li
102
- key={virtualItem.index}
103
- style={{ height: itemHeight }}
104
- >
105
- {renderItem(data[virtualItem.index])}
106
- </li>
107
- ))
108
- : nonVirtualItems.map((item) => (
109
- <li key={item.id}>{renderItem(item)}</li>
110
- ))}
111
- </ul>
112
- );
113
- case "none":
114
- default:
115
- return (
116
- <div
117
- ref={parentRef as React.RefObject<HTMLDivElement>}
118
- style={
119
- hasVirtualization
120
- ? { height: containerHeight, overflow: "scroll" }
121
- : {}
122
- }
123
- className={`${listClasses} ${containerClasses}`}
124
- >
125
- {hasVirtualization
126
- ? virtualItems.map((virtualItem) => (
127
- <div
128
- key={virtualItem.index}
129
- style={{ height: itemHeight }}
130
- >
131
- {renderItem(data[virtualItem.index])}
132
- </div>
133
- ))
134
- : nonVirtualItems.map((item) => (
135
- <div key={item.id}>{renderItem(item)}</div>
136
- ))}
137
- </div>
138
- );
139
- }
140
- })()}
141
- </>
142
- );
143
- };
144
-
145
- export default GenericList;
@@ -1,23 +0,0 @@
1
- import React from "react";
2
- import Text from "../../Text/index";
3
-
4
- export type TreeListProps = {
5
- item: string;
6
- };
7
-
8
- const TreeList: React.FC<TreeListProps> = ({ item }) => {
9
- return (
10
- <>
11
- <Text
12
- size="lg"
13
- color="black"
14
- text={item}
15
- fontFamily="font-mono"
16
- tag="p"
17
- additionalClasses=""
18
- />
19
- </>
20
- );
21
- };
22
-
23
- export default TreeList;
@@ -1,55 +0,0 @@
1
- import React from "react";
2
- import IconButton from "../../IconButton/index";
3
- import { getFontAwesomeIcon } from "../../../utils/getFontAwesomeIcon";
4
- import { TagName } from "../../Text/index";
5
-
6
- export type IconButtonsListProps = {
7
- id: string;
8
- iconColor?: string;
9
- iconLabel?: string; // Ensure this matches IconButtonTypes if necessary
10
- backgroundColor?: string;
11
- size?: "xs" | "sm" | "md" | "lg" | string;
12
- icon: string;
13
- hoverBorder?: "border" | "none" | string;
14
- limitCharacters?: (text: string) => string;
15
- indicatorSize?: "sm" | "md" | "lg" | string;
16
- iconBorder?: "border" | "none" | string;
17
- hoverBackground: string;
18
- hoverColor: string;
19
- limitIndicator: boolean;
20
- indicatorNumber: string;
21
- additionalContainerClasses: string;
22
- onClick?: () => void;
23
- text: {
24
- size: string;
25
- color: string;
26
- text: string;
27
- fontFamily: string;
28
- tag: TagName;
29
- additionalClasses: string;
30
- };
31
- to?: string;
32
- href?: string;
33
- };
34
-
35
- const DynamicIconButtonList: React.FC<IconButtonsListProps> = (props) => {
36
- return (
37
- <IconButton
38
- key={props.id}
39
- onClick={props.onClick}
40
- backgroundColor={props.backgroundColor}
41
- iconColor={props.iconColor}
42
- iconLabel={props.iconLabel}
43
- iconBorder={props.iconBorder}
44
- icon={getFontAwesomeIcon(props.icon)}
45
- hoverBackgroundColor={props.hoverBackground}
46
- hoverBorderColor={props.hoverBorder}
47
- indicatorNumber={props.indicatorNumber}
48
- indicatorSize={props.indicatorSize}
49
- additionalContainerClasses={props.additionalContainerClasses}
50
- text={props.text.text}
51
- />
52
- );
53
- };
54
-
55
- export default DynamicIconButtonList;
@@ -1,80 +0,0 @@
1
- import { Meta, StoryFn } from "@storybook/react";
2
- import GetSupport from "./GetSupport";
3
- import { getFontAwesomeIcon } from "../../utils/getFontAwesomeIcon";
4
-
5
- export default {
6
- title: "Components/GetSupport",
7
- component: GetSupport,
8
- argTypes: {
9
- to: {
10
- control: "none",
11
- description: "URL to navigate to when the button is clicked.",
12
- },
13
- icon: {
14
- control: "none",
15
- description: "FontAwesome icon to be displayed.",
16
- },
17
- iconClasses: {
18
- control: "none",
19
- description: "Tailwind CSS classes for icon styling.",
20
- },
21
- title: {
22
- control: "none",
23
- description: "The main title text.",
24
- },
25
- titleClasses: {
26
- control: "none",
27
- description: "Tailwind CSS classes for title styling.",
28
- },
29
- subTitle: {
30
- control: "none",
31
- description: "Optional subtitle text.",
32
- },
33
- subTitleClasses: {
34
- control: "none",
35
- description: "Tailwind CSS classes for subtitle styling.",
36
- },
37
- containerClasses: {
38
- control: "none",
39
- description: "Tailwind CSS classes for container styling.",
40
- },
41
- as: {
42
- control: "none",
43
- description: "The element type to use for the button.",
44
- },
45
- },
46
- tags: ["autodocs"],
47
- } as Meta;
48
-
49
- const Template: StoryFn = (args) => (
50
- <GetSupport to={""} icon={null} title={""} {...args} />
51
- );
52
-
53
- export const Default = Template.bind({});
54
- Default.args = {
55
- icon: getFontAwesomeIcon("phone"),
56
- as: "a",
57
- to: "/support",
58
- title: "Get Support",
59
- iconClasses:
60
- "p-4 bg-slate-600 text-white group-hover:text-slate-600 rounded-full group-hover:bg-slate-200",
61
- titleClasses: "text-xl font-bold",
62
- subTitle: "1-800-123-4567",
63
- subTitleClasses: "text-md text-gray-500",
64
- containerClasses:
65
- "flex items-center gap-4 p-2 bg-white rounded-lg hover:cursor-pointer group",
66
- };
67
-
68
- export const WithoutPhoneNumber = Template.bind({});
69
- WithoutPhoneNumber.args = {
70
- icon: getFontAwesomeIcon("phone"),
71
- as: "a",
72
- to: "/support",
73
- title: "Get Support",
74
- iconClasses:
75
- "p-4 bg-slate-600 text-white group-hover:text-slate-600 rounded-full group-hover:bg-slate-200",
76
- titleClasses: "text-xl font-bold",
77
- subTitleClasses: "text-md text-gray-500",
78
- containerClasses:
79
- "flex items-center gap-4 p-2 bg-white rounded-lg hover:cursor-pointer group",
80
- };
@@ -1,62 +0,0 @@
1
- import { render, screen } from '@testing-library/react';
2
- import GetSupport from './GetSupport';
3
- import { MemoryRouter } from 'react-router-dom';
4
- import { describe, expect, it } from 'vitest';
5
-
6
- describe('GetSupport Component', () => {
7
- const defaultProps = {
8
- as: 'link',
9
- to: '/support',
10
- icon: <div>Icon</div>,
11
- iconClasses: 'p-2 w-12 h-12 bg-gray-200 rounded-full',
12
- title: 'Get Support',
13
- titleClasses: 'text-xl font-bold',
14
- subTitle: '1-800-123-4567',
15
- subTitleClasses: 'text-md text-gray-500',
16
- containerClasses: 'flex items-center gap-4 p-2 bg-white rounded-lg',
17
- };
18
-
19
- it('renders without crashing', () => {
20
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
21
- expect(screen.getByText('Get Support')).toBeInTheDocument();
22
- });
23
-
24
- it('renders the title', () => {
25
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
26
- expect(screen.getByText('Get Support')).toBeInTheDocument();
27
- });
28
-
29
- it('renders the subtitle', () => {
30
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
31
- expect(screen.getByText('1-800-123-4567')).toBeInTheDocument();
32
- });
33
-
34
- it('applies container classes', () => {
35
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
36
- const container = screen.getByRole('link').firstChild;
37
- expect(container).toHaveClass('flex items-center gap-4 p-2 bg-white rounded-lg');
38
- });
39
-
40
- it('applies title classes', () => {
41
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
42
- const title = screen.getByText('Get Support');
43
- expect(title).toHaveClass('text-xl font-bold');
44
- });
45
-
46
- it('applies subtitle classes', () => {
47
- render(<GetSupport {...defaultProps} />, { wrapper: MemoryRouter });
48
- const subTitle = screen.getByText('1-800-123-4567');
49
- expect(subTitle).toHaveClass('text-md text-gray-500');
50
- });
51
-
52
- it('renders without subtitle', () => {
53
- const { container } = render(
54
- <GetSupport
55
- {...defaultProps}
56
- subTitle={undefined}
57
- />,
58
- { wrapper: MemoryRouter }
59
- );
60
- expect(container.querySelector('.text-md.text-gray-500')).toBeNull();
61
- });
62
- });
@@ -1,59 +0,0 @@
1
- import React from "react";
2
- import FormButton from "../FormButton/FormButton";
3
- import Text from "../Text/Text";
4
- import { GetSupportTypes } from "./GetSupport.types";
5
-
6
- const GetSupport: React.FC<GetSupportTypes> = ({
7
- as,
8
- to,
9
- icon,
10
- iconClasses,
11
- title,
12
- titleClasses,
13
- subTitle,
14
- subTitleClasses,
15
- containerClasses,
16
- }) => {
17
- return (
18
- <FormButton
19
- as={as}
20
- to={to}
21
- text={
22
- <div className={`flex items-center gap-4 ${containerClasses}`}>
23
- <div
24
- className={`flex items-center justify-center ${iconClasses}`}
25
- >
26
- {icon}
27
- </div>
28
- <div className="flex flex-col">
29
- <Text
30
- size="text-md"
31
- color="text-black"
32
- text={title}
33
- fontFamily="font-serif"
34
- tag="p"
35
- additionalClasses={titleClasses}
36
- />
37
- {subTitle && (
38
- <Text
39
- size="text-md"
40
- color="text-black"
41
- text={subTitle}
42
- fontFamily="font-serif"
43
- tag="p"
44
- additionalClasses={subTitleClasses}
45
- />
46
- )}
47
- </div>
48
- </div>
49
- }
50
- backgroundColor="bg-transparent"
51
- fontColor="text-black"
52
- borderColor="border-none"
53
- shape="rounded-md"
54
- additionalClasses={containerClasses}
55
- />
56
- );
57
- };
58
-
59
- export default GetSupport;
@@ -1,11 +0,0 @@
1
- export type GetSupportTypes = {
2
- as?: string;
3
- to: string;
4
- icon: JSX.Element | null;
5
- iconClasses?: string;
6
- title: string;
7
- titleClasses?: string;
8
- subTitle?: string;
9
- subTitleClasses?: string;
10
- containerClasses?: string;
11
- };
@@ -1,225 +0,0 @@
1
- // src/components/HamburgerButton.stories.tsx
2
- import { useState } from 'react';
3
- import { Meta, StoryFn } from '@storybook/react';
4
- import { motion, AnimatePresence } from 'framer-motion';
5
- import HamburgerButton from './HamburgerButton';
6
- import { HamburgerButtonProps } from './HamburgerButton.types';
7
- import GetSupport from '../GetSupport/GetSupport';
8
- import { getFontAwesomeIcon } from '../../utils/getFontAwesomeIcon';
9
- import IconButton from '../IconButton';
10
-
11
- export default {
12
- title: 'Components/HamburgerButton',
13
- component: HamburgerButton,
14
- parameters: {
15
- docs: {
16
- description: {
17
- component: `
18
- The **HamburgerButton** component toggles between a hamburger icon and an "X" icon with smooth animations using Framer Motion.
19
- It overlays on top of everything, and a gray background appears on toggle.
20
- `,
21
- },
22
- },
23
- },
24
- argTypes: {
25
- containerClasses: {
26
- control: 'none',
27
- description: 'CSS classes for styling the container of the button.',
28
- defaultValue: 'bg-gray-200',
29
- table: {
30
- type: { summary: 'string' },
31
- defaultValue: { summary: 'bg-gray-200' },
32
- },
33
- },
34
- burgerAriaLabel: {
35
- control: 'none',
36
- description: 'Aria-label for accessibility to describe the button.',
37
- defaultValue: 'Toggle navigation',
38
- table: {
39
- type: { summary: 'string' },
40
- defaultValue: { summary: 'Toggle navigation' },
41
- },
42
- },
43
- burgerExpandedAlert: {
44
- control: 'none',
45
- description: 'Indicates whether the burger is in the expanded state.',
46
- defaultValue: false,
47
- table: {
48
- type: { summary: 'boolean' },
49
- defaultValue: { summary: false },
50
- },
51
- },
52
- animateBoolean: {
53
- control: 'none',
54
- description: 'Determines whether the burger animations should play.',
55
- defaultValue: false,
56
- table: {
57
- type: { summary: 'boolean' },
58
- defaultValue: { summary: false },
59
- },
60
- },
61
- handleNav: {
62
- action: 'clicked',
63
- description: 'Action triggered when the button is clicked.',
64
- table: {
65
- type: { summary: 'function' },
66
- },
67
- },
68
- },
69
- tags: ['autodocs'],
70
- } as Meta<typeof HamburgerButton>;
71
-
72
- const Template: StoryFn<HamburgerButtonProps> = (args) => {
73
- const [isOpen, setIsOpen] = useState(false);
74
-
75
- const toggleIcon = () => {
76
- setIsOpen(!isOpen);
77
- args.handleNav();
78
- };
79
-
80
- return (
81
- <div className="relative h-screen bg-gray-50 overflow-hidden flex items-start justify-end p-4">
82
- <AnimatePresence>
83
- {isOpen && (
84
- <motion.div
85
- className="fixed inset-0 bg-white z-30 flex flex-col items-start p-6 space-y-8"
86
- initial={{ x: '-100%' }}
87
- animate={{ x: '0%' }}
88
- exit={{ x: '-100%' }}
89
- transition={{ duration: 0.3 }}
90
- >
91
- <div className="flex items-center space-x-3">
92
- <img
93
- src="../../../assets/compass-logo.png"
94
- alt="Compass Technology"
95
- className="h-10"
96
- />
97
- </div>
98
-
99
- <div className="flex items-center w-full bg-gray-100 p-1 rounded-full shadow-inner">
100
- <input
101
- type="text"
102
- placeholder="Search for product..."
103
- className="flex-grow bg-transparent outline-none px-1 text-gray-700 placeholder-gray-400"
104
- />
105
- <button className="bg-teal-600 flex justify-center items-center rounded-full p-3 w-10 h-10 text-white">
106
- {getFontAwesomeIcon('search')}
107
- </button>
108
- </div>
109
-
110
- <div className="flex flex-row justify-start items-center gap-6">
111
- <IconButton
112
- iconColor="text-black"
113
- text="Admin"
114
- backgroundColor="bg-gray-200 hover:bg-slate-300"
115
- iconSize="h-8 w-8"
116
- icon={getFontAwesomeIcon("cog")}
117
- notificationCount={0}
118
- textClasses="text-black font-serif text-md"
119
- onClick={() => alert("Redirect to admin")}
120
- />
121
- <IconButton
122
- iconColor="text-black"
123
- text="Profile"
124
- backgroundColor="bg-gray-200 hover:bg-slate-300"
125
- iconSize="h-8 w-8"
126
- icon={getFontAwesomeIcon("user")}
127
- hoverBackgroundColor="hover:bg-gray-300"
128
- hoverBorderColor="hover:border-black"
129
- notificationCount={34}
130
- textClasses="text-black font-serif text-md"
131
- onClick={() => alert("Redirect to user")}
132
- />
133
- <IconButton
134
- iconColor="text-black"
135
- text="Notifications"
136
- backgroundColor="bg-gray-200 hover:bg-slate-300"
137
- iconSize="h-8 w-8"
138
- icon={getFontAwesomeIcon("bell")}
139
- hoverBackgroundColor="hover:bg-gray-300"
140
- hoverBorderColor="hover:border-black"
141
- notificationCount={6}
142
- textClasses="text-black font-serif text-md"
143
- onClick={() => alert("Redirect to notifications")}
144
- />
145
- <IconButton
146
- iconColor="text-black"
147
- text="Cart"
148
- backgroundColor="bg-gray-200 hover:bg-slate-300"
149
- iconSize="h-8 w-8"
150
- icon={getFontAwesomeIcon("shoppingCart")}
151
- hoverBackgroundColor="hover:bg-gray-300"
152
- hoverBorderColor="hover:border-black"
153
- notificationCount={124}
154
- textClasses="text-black font-serif text-md"
155
- onClick={() => alert("Redirect to cart")}
156
- />
157
- </div>
158
- <GetSupport
159
- icon={getFontAwesomeIcon("phone")}
160
- as="a"
161
- to="/support"
162
- title="Get Support"
163
- iconClasses="p-4 bg-gray-200 rounded-full group-hover:bg-slate-300"
164
- titleClasses="text-xl font-bold"
165
- subTitle="1-800-123-4567"
166
- subTitleClasses="text-md text-gray-500"
167
- containerClasses="flex items-center gap-4 p-2 bg-white rounded-lg hover:cursor-pointer group"
168
- />
169
- </motion.div>
170
- )}
171
- </AnimatePresence>
172
-
173
- {/* Hamburger Button */}
174
- <motion.button
175
- onClick={toggleIcon}
176
- className="p-2 z-40 relative"
177
- aria-label={args.burgerAriaLabel}
178
- aria-expanded={isOpen}
179
- initial={false}
180
- animate={isOpen ? 'open' : 'closed'}
181
- >
182
- <motion.div className="relative flex items-center justify-center w-8 h-8">
183
- <motion.span
184
- className="absolute w-full h-0.5 bg-black"
185
- variants={{
186
- closed: { rotate: 0, y: -8 },
187
- open: { rotate: 45, y: 0 },
188
- }}
189
- transition={{ duration: 0.3 }}
190
- />
191
- <motion.span
192
- className="absolute w-full h-0.5 bg-black"
193
- variants={{
194
- closed: { opacity: 1 },
195
- open: { opacity: 0 },
196
- }}
197
- transition={{ duration: 0.2 }}
198
- />
199
- <motion.span
200
- className="absolute w-full h-0.5 bg-black"
201
- variants={{
202
- closed: { rotate: 0, y: 8 },
203
- open: { rotate: -45, y: 0 },
204
- }}
205
- transition={{ duration: 0.3 }}
206
- />
207
- </motion.div>
208
- </motion.button>
209
- </div>
210
- );
211
- };
212
-
213
- export const ToggleMenu = Template.bind({});
214
- ToggleMenu.args = {
215
- containerClasses: 'bg-gray-100',
216
- burgerAriaLabel: 'Toggle navigation',
217
- };
218
- ToggleMenu.parameters = {
219
- docs: {
220
- description: {
221
- story:
222
- 'This story demonstrates the toggle functionality of the HamburgerButton, transitioning between the hamburger and "X" icons on click, with a gray background appearing on toggle.',
223
- },
224
- },
225
- };