@540deg/ds 0.0.0-stage → 0.1.0

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 (350) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +13 -0
  3. package/README.md +207 -2
  4. package/dist/assets/samples/captura.js +4 -0
  5. package/dist/assets/samples/charla-david.js +4 -0
  6. package/dist/assets/samples/charla-escultura.js +4 -0
  7. package/dist/assets/samples/charla-fachada.js +4 -0
  8. package/dist/assets/samples/charla-pintura.js +4 -0
  9. package/dist/assets/samples/charla-placa.js +4 -0
  10. package/dist/assets/samples/charla-teclado.js +4 -0
  11. package/dist/assets/samples/logo-540-claro.js +4 -0
  12. package/dist/assets/samples/logo-540-portada-claro.js +4 -0
  13. package/dist/assets/samples/logo-540-portada-oscuro.js +4 -0
  14. package/dist/assets/samples/logos/cliente-1.js +4 -0
  15. package/dist/assets/samples/logos/cliente-2.js +4 -0
  16. package/dist/assets/samples/logos/cliente-3.js +4 -0
  17. package/dist/assets/samples/logos/cliente-4.js +4 -0
  18. package/dist/assets/samples/logos/cliente-5.js +4 -0
  19. package/dist/assets/samples/logos/cliente-6.js +4 -0
  20. package/dist/assets/samples/logos/cliente-7.js +4 -0
  21. package/dist/assets/samples/logos/cliente-8.js +4 -0
  22. package/dist/assets/samples/logos/cliente-9.js +4 -0
  23. package/dist/assets/samples/retrato.js +4 -0
  24. package/dist/components/atoms/Bullets/Bullets.d.ts +6 -0
  25. package/dist/components/atoms/Bullets/Bullets.js +34 -0
  26. package/dist/components/atoms/Bullets/Bullets.module.js +13 -0
  27. package/dist/components/atoms/Bullets/index.d.ts +3 -0
  28. package/dist/components/atoms/Bullets/types.d.ts +23 -0
  29. package/dist/components/atoms/Bullets/types.js +9 -0
  30. package/dist/components/atoms/Button/Button.d.ts +6 -0
  31. package/dist/components/atoms/Button/Button.js +46 -0
  32. package/dist/components/atoms/Button/Button.module.js +24 -0
  33. package/dist/components/atoms/Button/index.d.ts +3 -0
  34. package/dist/components/atoms/Button/types.d.ts +38 -0
  35. package/dist/components/atoms/Button/types.js +14 -0
  36. package/dist/components/atoms/Count/Count.d.ts +6 -0
  37. package/dist/components/atoms/Count/Count.js +51 -0
  38. package/dist/components/atoms/Count/Count.module.js +9 -0
  39. package/dist/components/atoms/Count/index.d.ts +3 -0
  40. package/dist/components/atoms/Count/types.d.ts +17 -0
  41. package/dist/components/atoms/Count/types.js +8 -0
  42. package/dist/components/atoms/Image/Image.d.ts +6 -0
  43. package/dist/components/atoms/Image/Image.js +30 -0
  44. package/dist/components/atoms/Image/Image.module.js +11 -0
  45. package/dist/components/atoms/Image/index.d.ts +3 -0
  46. package/dist/components/atoms/Image/types.d.ts +16 -0
  47. package/dist/components/atoms/Image/types.js +13 -0
  48. package/dist/components/atoms/Logo/Logo.d.ts +6 -0
  49. package/dist/components/atoms/Logo/Logo.js +32 -0
  50. package/dist/components/atoms/Logo/Logo.module.js +10 -0
  51. package/dist/components/atoms/Logo/index.d.ts +3 -0
  52. package/dist/components/atoms/Logo/paths.d.ts +2 -0
  53. package/dist/components/atoms/Logo/paths.js +11 -0
  54. package/dist/components/atoms/Logo/types.d.ts +14 -0
  55. package/dist/components/atoms/Logo/types.js +12 -0
  56. package/dist/components/atoms/MenuItem/MenuItem.d.ts +6 -0
  57. package/dist/components/atoms/MenuItem/MenuItem.js +28 -0
  58. package/dist/components/atoms/MenuItem/MenuItem.module.js +19 -0
  59. package/dist/components/atoms/MenuItem/index.d.ts +3 -0
  60. package/dist/components/atoms/MenuItem/types.d.ts +18 -0
  61. package/dist/components/atoms/MenuItem/types.js +8 -0
  62. package/dist/components/atoms/SocialIcon/SocialIcon.d.ts +6 -0
  63. package/dist/components/atoms/SocialIcon/SocialIcon.js +26 -0
  64. package/dist/components/atoms/SocialIcon/SocialIcon.module.js +9 -0
  65. package/dist/components/atoms/SocialIcon/index.d.ts +3 -0
  66. package/dist/components/atoms/SocialIcon/paths.d.ts +7 -0
  67. package/dist/components/atoms/SocialIcon/paths.js +10 -0
  68. package/dist/components/atoms/SocialIcon/types.d.ts +15 -0
  69. package/dist/components/atoms/SocialIcon/types.js +11 -0
  70. package/dist/components/atoms/Text/Text.d.ts +6 -0
  71. package/dist/components/atoms/Text/Text.js +28 -0
  72. package/dist/components/atoms/Text/Text.module.js +32 -0
  73. package/dist/components/atoms/Text/index.d.ts +3 -0
  74. package/dist/components/atoms/Text/types.d.ts +39 -0
  75. package/dist/components/atoms/Text/types.js +54 -0
  76. package/dist/components/atoms/ThemeToggle/ThemeToggle.d.ts +6 -0
  77. package/dist/components/atoms/ThemeToggle/ThemeToggle.js +30 -0
  78. package/dist/components/atoms/ThemeToggle/ThemeToggle.module.js +17 -0
  79. package/dist/components/atoms/ThemeToggle/index.d.ts +3 -0
  80. package/dist/components/atoms/ThemeToggle/types.d.ts +13 -0
  81. package/dist/components/atoms/ThemeToggle/types.js +4 -0
  82. package/dist/components/molecules/Card/Card.d.ts +6 -0
  83. package/dist/components/molecules/Card/Card.js +82 -0
  84. package/dist/components/molecules/Card/Card.module.js +33 -0
  85. package/dist/components/molecules/Card/index.d.ts +3 -0
  86. package/dist/components/molecules/Card/types.d.ts +48 -0
  87. package/dist/components/molecules/Card/types.js +17 -0
  88. package/dist/components/molecules/Carousel/Carousel.d.ts +5 -0
  89. package/dist/components/molecules/Carousel/Carousel.js +148 -0
  90. package/dist/components/molecules/Carousel/Carousel.module.js +29 -0
  91. package/dist/components/molecules/Carousel/index.d.ts +3 -0
  92. package/dist/components/molecules/Carousel/types.d.ts +24 -0
  93. package/dist/components/molecules/Carousel/types.js +12 -0
  94. package/dist/components/molecules/CaseItem/CaseItem.d.ts +6 -0
  95. package/dist/components/molecules/CaseItem/CaseItem.js +54 -0
  96. package/dist/components/molecules/CaseItem/CaseItem.module.js +19 -0
  97. package/dist/components/molecules/CaseItem/index.d.ts +3 -0
  98. package/dist/components/molecules/CaseItem/types.d.ts +20 -0
  99. package/dist/components/molecules/CaseItem/types.js +7 -0
  100. package/dist/components/molecules/Dialog/Dialog.d.ts +6 -0
  101. package/dist/components/molecules/Dialog/Dialog.js +81 -0
  102. package/dist/components/molecules/Dialog/Dialog.module.js +19 -0
  103. package/dist/components/molecules/Dialog/index.d.ts +2 -0
  104. package/dist/components/molecules/Dialog/types.d.ts +22 -0
  105. package/dist/components/molecules/Field/Field.d.ts +6 -0
  106. package/dist/components/molecules/Field/Field.js +47 -0
  107. package/dist/components/molecules/Field/Field.module.js +15 -0
  108. package/dist/components/molecules/Field/index.d.ts +3 -0
  109. package/dist/components/molecules/Field/types.d.ts +24 -0
  110. package/dist/components/molecules/Field/types.js +5 -0
  111. package/dist/components/molecules/Footer/Footer.d.ts +6 -0
  112. package/dist/components/molecules/Footer/Footer.js +102 -0
  113. package/dist/components/molecules/Footer/Footer.module.js +33 -0
  114. package/dist/components/molecules/Footer/index.d.ts +3 -0
  115. package/dist/components/molecules/Footer/types.d.ts +46 -0
  116. package/dist/components/molecules/Footer/types.js +8 -0
  117. package/dist/components/molecules/Grid/Grid.d.ts +5 -0
  118. package/dist/components/molecules/Grid/Grid.js +32 -0
  119. package/dist/components/molecules/Grid/Grid.module.js +29 -0
  120. package/dist/components/molecules/Grid/index.d.ts +3 -0
  121. package/dist/components/molecules/Grid/types.d.ts +28 -0
  122. package/dist/components/molecules/Grid/types.js +14 -0
  123. package/dist/components/molecules/Lists/Lists.d.ts +7 -0
  124. package/dist/components/molecules/Lists/Lists.js +54 -0
  125. package/dist/components/molecules/Lists/Lists.module.js +15 -0
  126. package/dist/components/molecules/Lists/index.d.ts +2 -0
  127. package/dist/components/molecules/Lists/types.d.ts +22 -0
  128. package/dist/components/molecules/Menu/Menu.d.ts +6 -0
  129. package/dist/components/molecules/Menu/Menu.js +43 -0
  130. package/dist/components/molecules/Menu/Menu.module.js +13 -0
  131. package/dist/components/molecules/Menu/index.d.ts +3 -0
  132. package/dist/components/molecules/Menu/types.d.ts +27 -0
  133. package/dist/components/molecules/Menu/types.js +8 -0
  134. package/dist/components/molecules/Metric/Metric.d.ts +5 -0
  135. package/dist/components/molecules/Metric/Metric.js +40 -0
  136. package/dist/components/molecules/Metric/Metric.module.js +11 -0
  137. package/dist/components/molecules/Metric/index.d.ts +2 -0
  138. package/dist/components/molecules/Metric/types.d.ts +15 -0
  139. package/dist/components/molecules/NavMobile/NavMobile.d.ts +6 -0
  140. package/dist/components/molecules/NavMobile/NavMobile.js +95 -0
  141. package/dist/components/molecules/NavMobile/NavMobile.module.js +17 -0
  142. package/dist/components/molecules/NavMobile/index.d.ts +3 -0
  143. package/dist/components/molecules/NavMobile/types.d.ts +20 -0
  144. package/dist/components/molecules/NavMobile/types.js +8 -0
  145. package/dist/components/molecules/Question/Question.d.ts +3 -0
  146. package/dist/components/molecules/Question/Question.js +22 -0
  147. package/dist/components/molecules/Question/Question.module.js +5 -0
  148. package/dist/components/molecules/Question/index.d.ts +2 -0
  149. package/dist/components/molecules/Question/types.d.ts +8 -0
  150. package/dist/components/molecules/Screenshot/Screenshot.d.ts +3 -0
  151. package/dist/components/molecules/Screenshot/Screenshot.js +17 -0
  152. package/dist/components/molecules/Screenshot/Screenshot.module.js +5 -0
  153. package/dist/components/molecules/Screenshot/index.d.ts +2 -0
  154. package/dist/components/molecules/Screenshot/types.d.ts +12 -0
  155. package/dist/components/molecules/Section/Section.d.ts +6 -0
  156. package/dist/components/molecules/Section/Section.js +25 -0
  157. package/dist/components/molecules/Section/Section.module.js +11 -0
  158. package/dist/components/molecules/Section/index.d.ts +3 -0
  159. package/dist/components/molecules/Section/types.d.ts +13 -0
  160. package/dist/components/molecules/Section/types.js +5 -0
  161. package/dist/components/molecules/SectionHeader/SectionHeader.d.ts +6 -0
  162. package/dist/components/molecules/SectionHeader/SectionHeader.js +34 -0
  163. package/dist/components/molecules/SectionHeader/SectionHeader.module.js +9 -0
  164. package/dist/components/molecules/SectionHeader/index.d.ts +3 -0
  165. package/dist/components/molecules/SectionHeader/types.d.ts +22 -0
  166. package/dist/components/molecules/SectionHeader/types.js +14 -0
  167. package/dist/components/molecules/Stack/Stack.d.ts +6 -0
  168. package/dist/components/molecules/Stack/Stack.js +22 -0
  169. package/dist/components/molecules/Stack/Stack.module.js +12 -0
  170. package/dist/components/molecules/Stack/index.d.ts +3 -0
  171. package/dist/components/molecules/Stack/types.d.ts +18 -0
  172. package/dist/components/molecules/Stack/types.js +17 -0
  173. package/dist/components/molecules/TeamMember/TeamMember.d.ts +6 -0
  174. package/dist/components/molecules/TeamMember/TeamMember.js +55 -0
  175. package/dist/components/molecules/TeamMember/TeamMember.module.js +13 -0
  176. package/dist/components/molecules/TeamMember/index.d.ts +3 -0
  177. package/dist/components/molecules/TeamMember/types.d.ts +24 -0
  178. package/dist/components/molecules/TeamMember/types.js +8 -0
  179. package/dist/components/organisms/Bars/Bars.d.ts +6 -0
  180. package/dist/components/organisms/Bars/Bars.js +94 -0
  181. package/dist/components/organisms/Bars/Bars.module.js +26 -0
  182. package/dist/components/organisms/Bars/index.d.ts +3 -0
  183. package/dist/components/organisms/Bars/types.d.ts +43 -0
  184. package/dist/components/organisms/Bars/types.js +12 -0
  185. package/dist/components/organisms/Blobs/Blobs.d.ts +3 -0
  186. package/dist/components/organisms/Blobs/Blobs.js +14 -0
  187. package/dist/components/organisms/Blobs/Blobs.module.js +15 -0
  188. package/dist/components/organisms/Blobs/index.d.ts +2 -0
  189. package/dist/components/organisms/Blobs/types.d.ts +3 -0
  190. package/dist/components/organisms/BlockTitle/BlockTitle.d.ts +6 -0
  191. package/dist/components/organisms/BlockTitle/BlockTitle.js +46 -0
  192. package/dist/components/organisms/BlockTitle/BlockTitle.module.js +15 -0
  193. package/dist/components/organisms/BlockTitle/index.d.ts +2 -0
  194. package/dist/components/organisms/BlockTitle/types.d.ts +18 -0
  195. package/dist/components/organisms/CardList/CardList.d.ts +6 -0
  196. package/dist/components/organisms/CardList/CardList.js +15 -0
  197. package/dist/components/organisms/CardList/CardList.module.js +5 -0
  198. package/dist/components/organisms/CardList/index.d.ts +2 -0
  199. package/dist/components/organisms/CardList/types.d.ts +6 -0
  200. package/dist/components/organisms/Closing/Closing.d.ts +6 -0
  201. package/dist/components/organisms/Closing/Closing.js +42 -0
  202. package/dist/components/organisms/Closing/Closing.module.js +9 -0
  203. package/dist/components/organisms/Closing/index.d.ts +3 -0
  204. package/dist/components/organisms/Closing/types.d.ts +15 -0
  205. package/dist/components/organisms/Closing/types.js +4 -0
  206. package/dist/components/organisms/Cover/Cover.d.ts +6 -0
  207. package/dist/components/organisms/Cover/Cover.js +85 -0
  208. package/dist/components/organisms/Cover/Cover.module.js +21 -0
  209. package/dist/components/organisms/Cover/index.d.ts +3 -0
  210. package/dist/components/organisms/Cover/types.d.ts +33 -0
  211. package/dist/components/organisms/Cover/types.js +4 -0
  212. package/dist/components/organisms/Cycle/Cycle.d.ts +6 -0
  213. package/dist/components/organisms/Cycle/Cycle.js +79 -0
  214. package/dist/components/organisms/Cycle/Cycle.module.js +17 -0
  215. package/dist/components/organisms/Cycle/index.d.ts +3 -0
  216. package/dist/components/organisms/Cycle/types.d.ts +18 -0
  217. package/dist/components/organisms/Cycle/types.js +9 -0
  218. package/dist/components/organisms/Deck/Deck.d.ts +6 -0
  219. package/dist/components/organisms/Deck/Deck.js +159 -0
  220. package/dist/components/organisms/Deck/Deck.module.js +19 -0
  221. package/dist/components/organisms/Deck/index.d.ts +4 -0
  222. package/dist/components/organisms/Deck/types.d.ts +37 -0
  223. package/dist/components/organisms/Deck/types.js +13 -0
  224. package/dist/components/organisms/Deck/useDeckNavigation.d.ts +15 -0
  225. package/dist/components/organisms/Deck/useDeckNavigation.js +218 -0
  226. package/dist/components/organisms/DeckFooter/DeckFooter.d.ts +6 -0
  227. package/dist/components/organisms/DeckFooter/DeckFooter.js +75 -0
  228. package/dist/components/organisms/DeckFooter/DeckFooter.module.js +25 -0
  229. package/dist/components/organisms/DeckFooter/index.d.ts +3 -0
  230. package/dist/components/organisms/DeckFooter/types.d.ts +22 -0
  231. package/dist/components/organisms/DeckFooter/types.js +8 -0
  232. package/dist/components/organisms/Flow/Flow.d.ts +6 -0
  233. package/dist/components/organisms/Flow/Flow.js +26 -0
  234. package/dist/components/organisms/Flow/Flow.module.js +13 -0
  235. package/dist/components/organisms/Flow/index.d.ts +3 -0
  236. package/dist/components/organisms/Flow/types.d.ts +17 -0
  237. package/dist/components/organisms/Flow/types.js +4 -0
  238. package/dist/components/organisms/Form/Form.d.ts +6 -0
  239. package/dist/components/organisms/Form/Form.js +28 -0
  240. package/dist/components/organisms/Form/Form.module.js +13 -0
  241. package/dist/components/organisms/Form/index.d.ts +3 -0
  242. package/dist/components/organisms/Form/types.d.ts +16 -0
  243. package/dist/components/organisms/Form/types.js +8 -0
  244. package/dist/components/organisms/Heartbeat/Heartbeat.d.ts +3 -0
  245. package/dist/components/organisms/Heartbeat/Heartbeat.js +17 -0
  246. package/dist/components/organisms/Heartbeat/Heartbeat.module.js +13 -0
  247. package/dist/components/organisms/Heartbeat/index.d.ts +2 -0
  248. package/dist/components/organisms/Heartbeat/types.d.ts +3 -0
  249. package/dist/components/organisms/LogoCarousel/LogoCarousel.d.ts +6 -0
  250. package/dist/components/organisms/LogoCarousel/LogoCarousel.js +72 -0
  251. package/dist/components/organisms/LogoCarousel/LogoCarousel.module.js +13 -0
  252. package/dist/components/organisms/LogoCarousel/index.d.ts +3 -0
  253. package/dist/components/organisms/LogoCarousel/types.d.ts +18 -0
  254. package/dist/components/organisms/LogoCarousel/types.js +4 -0
  255. package/dist/components/organisms/Marquee/Marquee.d.ts +7 -0
  256. package/dist/components/organisms/Marquee/Marquee.js +57 -0
  257. package/dist/components/organisms/Marquee/Marquee.module.js +15 -0
  258. package/dist/components/organisms/Marquee/index.d.ts +3 -0
  259. package/dist/components/organisms/Marquee/types.d.ts +11 -0
  260. package/dist/components/organisms/Marquee/types.js +4 -0
  261. package/dist/components/organisms/ProgressBar/ProgressBar.d.ts +6 -0
  262. package/dist/components/organisms/ProgressBar/ProgressBar.js +56 -0
  263. package/dist/components/organisms/ProgressBar/ProgressBar.module.js +17 -0
  264. package/dist/components/organisms/ProgressBar/index.d.ts +3 -0
  265. package/dist/components/organisms/ProgressBar/types.d.ts +20 -0
  266. package/dist/components/organisms/ProgressBar/types.js +7 -0
  267. package/dist/components/organisms/Punchline/Punchline.d.ts +6 -0
  268. package/dist/components/organisms/Punchline/Punchline.js +41 -0
  269. package/dist/components/organisms/Punchline/Punchline.module.js +11 -0
  270. package/dist/components/organisms/Punchline/index.d.ts +3 -0
  271. package/dist/components/organisms/Punchline/types.d.ts +15 -0
  272. package/dist/components/organisms/Punchline/types.js +4 -0
  273. package/dist/components/organisms/Quote/Quote.d.ts +3 -0
  274. package/dist/components/organisms/Quote/Quote.js +33 -0
  275. package/dist/components/organisms/Quote/Quote.module.js +5 -0
  276. package/dist/components/organisms/Quote/index.d.ts +3 -0
  277. package/dist/components/organisms/Quote/types.d.ts +15 -0
  278. package/dist/components/organisms/Quote/types.js +4 -0
  279. package/dist/components/organisms/Schema/Schema.d.ts +54 -0
  280. package/dist/components/organisms/Schema/Schema.js +117 -0
  281. package/dist/components/organisms/Schema/Schema.module.js +87 -0
  282. package/dist/components/organisms/Schema/index.d.ts +2 -0
  283. package/dist/components/organisms/Schema/types.d.ts +32 -0
  284. package/dist/components/organisms/Share/Share.d.ts +6 -0
  285. package/dist/components/organisms/Share/Share.js +68 -0
  286. package/dist/components/organisms/Share/Share.module.js +22 -0
  287. package/dist/components/organisms/Share/index.d.ts +3 -0
  288. package/dist/components/organisms/Share/types.d.ts +24 -0
  289. package/dist/components/organisms/Share/types.js +4 -0
  290. package/dist/components/organisms/Sheet/Sheet.d.ts +2 -0
  291. package/dist/components/organisms/Sheet/Sheet.js +92 -0
  292. package/dist/components/organisms/Sheet/Sheet.module.js +15 -0
  293. package/dist/components/organisms/Sheet/index.d.ts +3 -0
  294. package/dist/components/organisms/Sheet/types.d.ts +15 -0
  295. package/dist/components/organisms/Sheet/types.js +4 -0
  296. package/dist/components/organisms/Slide/Slide.d.ts +6 -0
  297. package/dist/components/organisms/Slide/Slide.js +29 -0
  298. package/dist/components/organisms/Slide/Slide.module.js +13 -0
  299. package/dist/components/organisms/Slide/index.d.ts +3 -0
  300. package/dist/components/organisms/Slide/types.d.ts +18 -0
  301. package/dist/components/organisms/Slide/types.js +8 -0
  302. package/dist/components/organisms/Spotlight/Spotlight.d.ts +7 -0
  303. package/dist/components/organisms/Spotlight/Spotlight.js +39 -0
  304. package/dist/components/organisms/Spotlight/Spotlight.module.js +5 -0
  305. package/dist/components/organisms/Spotlight/index.d.ts +2 -0
  306. package/dist/components/organisms/Spotlight/types.d.ts +6 -0
  307. package/dist/components/organisms/Statements/Statements.d.ts +7 -0
  308. package/dist/components/organisms/Statements/Statements.js +50 -0
  309. package/dist/components/organisms/Statements/Statements.module.js +11 -0
  310. package/dist/components/organisms/Statements/index.d.ts +3 -0
  311. package/dist/components/organisms/Statements/types.d.ts +14 -0
  312. package/dist/components/organisms/Statements/types.js +7 -0
  313. package/dist/components/organisms/Steps/Steps.d.ts +15 -0
  314. package/dist/components/organisms/Steps/Steps.js +117 -0
  315. package/dist/components/organisms/Steps/Steps.module.js +13 -0
  316. package/dist/components/organisms/Steps/StepsContext.d.ts +11 -0
  317. package/dist/components/organisms/Steps/StepsContext.js +18 -0
  318. package/dist/components/organisms/Steps/index.d.ts +3 -0
  319. package/dist/components/organisms/Steps/types.d.ts +22 -0
  320. package/dist/components/organisms/Story/Story.d.ts +6 -0
  321. package/dist/components/organisms/Story/Story.js +43 -0
  322. package/dist/components/organisms/Story/Story.module.js +5 -0
  323. package/dist/components/organisms/Story/index.d.ts +3 -0
  324. package/dist/components/organisms/Story/types.d.ts +20 -0
  325. package/dist/components/organisms/Story/types.js +7 -0
  326. package/dist/components/organisms/Timeline/Timeline.d.ts +7 -0
  327. package/dist/components/organisms/Timeline/Timeline.js +67 -0
  328. package/dist/components/organisms/Timeline/Timeline.module.js +19 -0
  329. package/dist/components/organisms/Timeline/index.d.ts +3 -0
  330. package/dist/components/organisms/Timeline/types.d.ts +25 -0
  331. package/dist/components/organisms/Timeline/types.js +4 -0
  332. package/dist/components/organisms/Tools/Tools.d.ts +6 -0
  333. package/dist/components/organisms/Tools/Tools.js +47 -0
  334. package/dist/components/organisms/Tools/Tools.module.js +17 -0
  335. package/dist/components/organisms/Tools/index.d.ts +3 -0
  336. package/dist/components/organisms/Tools/types.d.ts +23 -0
  337. package/dist/components/organisms/Tools/types.js +4 -0
  338. package/dist/fonts/OFL.txt +93 -0
  339. package/dist/fonts/dm-sans-latin-opsz-normal.woff2 +0 -0
  340. package/dist/hooks/useCenterState.d.ts +9 -0
  341. package/dist/hooks/useCenterState.js +40 -0
  342. package/dist/hooks/useReveal.d.ts +7 -0
  343. package/dist/hooks/useReveal.js +34 -0
  344. package/dist/index.d.ts +54 -0
  345. package/dist/index.js +98 -0
  346. package/dist/styles.css +3441 -0
  347. package/dist/templates/TalkTemplate/TalkTemplate.d.ts +7 -0
  348. package/dist/templates/TalkTemplate/TalkTemplate.js +1392 -0
  349. package/dist/templates/TalkTemplate/index.d.ts +2 -0
  350. package/package.json +86 -4
@@ -0,0 +1,95 @@
1
+ import { Button } from "../../atoms/Button/Button.js";
2
+ import { Logo } from "../../atoms/Logo/Logo.js";
3
+ import { MenuItem } from "../../atoms/MenuItem/MenuItem.js";
4
+ import NavMobile_module_default from "./NavMobile.module.js";
5
+ import { NAV_MOBILE_DEFAULTS } from "./types.js";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import { useEffect, useRef, useState } from "react";
8
+ import { Menu, X } from "lucide-react";
9
+ //#region src/components/molecules/NavMobile/NavMobile.tsx
10
+ /**
11
+ * NavMobile is the narrow-screen navigation: the logo and a button that opens the menu
12
+ * full screen. The state is internal; choosing a destination closes the panel.
13
+ */
14
+ function NavMobile({ items, homeHref = NAV_MOBILE_DEFAULTS.homeHref, homeLabel = NAV_MOBILE_DEFAULTS.homeLabel, label = NAV_MOBILE_DEFAULTS.label, end, className, ...rest }) {
15
+ const [open, setOpen] = useState(false);
16
+ const panelRef = useRef(null);
17
+ useEffect(() => {
18
+ const panel = panelRef.current;
19
+ if (!panel) return;
20
+ if (open && !panel.open) panel.showModal();
21
+ if (!open && panel.open) panel.close();
22
+ }, [open]);
23
+ useEffect(() => {
24
+ if (!open) return;
25
+ const previous = document.body.style.overflow;
26
+ document.body.style.overflow = "hidden";
27
+ return () => {
28
+ document.body.style.overflow = previous;
29
+ };
30
+ }, [open]);
31
+ const classes = [NavMobile_module_default.nav, className ?? ""].filter(Boolean).join(" ");
32
+ return /* @__PURE__ */ jsxs("nav", {
33
+ className: classes,
34
+ "aria-label": label,
35
+ ...rest,
36
+ children: [
37
+ /* @__PURE__ */ jsx("a", {
38
+ className: NavMobile_module_default.home,
39
+ href: homeHref,
40
+ "aria-label": homeLabel,
41
+ children: /* @__PURE__ */ jsx(Logo, {
42
+ size: "xs",
43
+ label: ""
44
+ })
45
+ }),
46
+ /* @__PURE__ */ jsxs("div", {
47
+ className: NavMobile_module_default.end,
48
+ children: [end, /* @__PURE__ */ jsx(Button, {
49
+ variant: "ghost",
50
+ icon: /* @__PURE__ */ jsx(Menu, {}),
51
+ iconOnly: true,
52
+ "aria-expanded": open,
53
+ onClick: () => setOpen(true),
54
+ children: "Abrir menú"
55
+ })]
56
+ }),
57
+ /* @__PURE__ */ jsxs("dialog", {
58
+ ref: panelRef,
59
+ className: NavMobile_module_default.panel,
60
+ "aria-label": label,
61
+ onClose: () => setOpen(false),
62
+ children: [/* @__PURE__ */ jsxs("div", {
63
+ className: NavMobile_module_default.panelBar,
64
+ children: [/* @__PURE__ */ jsx("a", {
65
+ className: NavMobile_module_default.home,
66
+ href: homeHref,
67
+ "aria-label": homeLabel,
68
+ onClick: () => setOpen(false),
69
+ children: /* @__PURE__ */ jsx(Logo, {
70
+ size: "xs",
71
+ label: ""
72
+ })
73
+ }), /* @__PURE__ */ jsx(Button, {
74
+ variant: "ghost",
75
+ icon: /* @__PURE__ */ jsx(X, {}),
76
+ iconOnly: true,
77
+ onClick: () => setOpen(false),
78
+ children: "Cerrar menú"
79
+ })]
80
+ }), /* @__PURE__ */ jsx("ul", {
81
+ className: NavMobile_module_default.list,
82
+ children: items.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(MenuItem, {
83
+ href: item.href,
84
+ size: "lg",
85
+ current: item.current,
86
+ onClick: () => setOpen(false),
87
+ children: item.label
88
+ }) }, item.href))
89
+ })]
90
+ })
91
+ ]
92
+ });
93
+ }
94
+ //#endregion
95
+ export { NavMobile };
@@ -0,0 +1,17 @@
1
+ //#region src/components/molecules/NavMobile/NavMobile.module.css
2
+ var nav = "_nav_1ghkl_4";
3
+ var home = "_home_1ghkl_13";
4
+ var end = "_end_1ghkl_23";
5
+ var panel = "_panel_1ghkl_30";
6
+ var panelBar = "_panelBar_1ghkl_56";
7
+ var list = "_list_1ghkl_65";
8
+ var NavMobile_module_default = {
9
+ nav,
10
+ home,
11
+ end,
12
+ panel,
13
+ panelBar,
14
+ list
15
+ };
16
+ //#endregion
17
+ export { NavMobile_module_default as default, end, home, list, nav, panel, panelBar };
@@ -0,0 +1,3 @@
1
+ export { NavMobile } from './NavMobile';
2
+ export { NAV_MOBILE_DEFAULTS } from './types';
3
+ export type { NavMobileProps } from './types';
@@ -0,0 +1,20 @@
1
+ import type { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import type { MenuDestination } from '../Menu';
3
+ export type NavMobileProps = {
4
+ /** The same destinations as Menu: the same objects, built once. */
5
+ items: MenuDestination[];
6
+ /** Where the logo links to. */
7
+ homeHref?: string;
8
+ /** Accessible name of the logo link. */
9
+ homeLabel?: string;
10
+ /** Accessible name of the navigation. */
11
+ label?: string;
12
+ /** What goes next to the button: the ThemeToggle. Not a destination. */
13
+ end?: ReactNode;
14
+ className?: string;
15
+ } & Omit<ComponentPropsWithoutRef<'nav'>, 'className' | 'children' | 'aria-label'>;
16
+ export declare const NAV_MOBILE_DEFAULTS: {
17
+ readonly homeHref: "#inicio";
18
+ readonly homeLabel: "Ir al inicio";
19
+ readonly label: "Principal";
20
+ };
@@ -0,0 +1,8 @@
1
+ //#region src/components/molecules/NavMobile/types.ts
2
+ var NAV_MOBILE_DEFAULTS = {
3
+ homeHref: "#inicio",
4
+ homeLabel: "Ir al inicio",
5
+ label: "Principal"
6
+ };
7
+ //#endregion
8
+ export { NAV_MOBILE_DEFAULTS };
@@ -0,0 +1,3 @@
1
+ import type { QuestionProps } from './types';
2
+ /** Question is a question and its answer under a hairline: the Q&A of a decision tree. */
3
+ export declare function Question({ question, answer, className }: QuestionProps): import("react").JSX.Element;
@@ -0,0 +1,22 @@
1
+ import { Text } from "../../atoms/Text/Text.js";
2
+ import Question_module_default from "./Question.module.js";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ //#region src/components/molecules/Question/Question.tsx
5
+ /** Question is a question and its answer under a hairline: the Q&A of a decision tree. */
6
+ function Question({ question, answer, className }) {
7
+ return /* @__PURE__ */ jsxs("div", {
8
+ className: [Question_module_default.question, className ?? ""].filter(Boolean).join(" "),
9
+ children: [/* @__PURE__ */ jsx(Text, {
10
+ variant: "body-m",
11
+ wrap: "pretty",
12
+ children: question
13
+ }), answer ? /* @__PURE__ */ jsx(Text, {
14
+ variant: "body-m",
15
+ tone: "secondary",
16
+ wrap: "pretty",
17
+ children: answer
18
+ }) : null]
19
+ });
20
+ }
21
+ //#endregion
22
+ export { Question };
@@ -0,0 +1,5 @@
1
+ //#region src/components/molecules/Question/Question.module.css
2
+ var question = "_question_mtllx_3";
3
+ var Question_module_default = { question };
4
+ //#endregion
5
+ export { Question_module_default as default, question };
@@ -0,0 +1,2 @@
1
+ export { Question } from './Question';
2
+ export type { QuestionProps } from './types';
@@ -0,0 +1,8 @@
1
+ import type { ReactNode } from 'react';
2
+ export type QuestionProps = {
3
+ /** The question, in primary. Start with its number: "Q1 · ¿…?" */
4
+ question: ReactNode;
5
+ /** The answer, in secondary. */
6
+ answer?: ReactNode;
7
+ className?: string;
8
+ };
@@ -0,0 +1,3 @@
1
+ import type { ScreenshotProps } from './types';
2
+ /** Screenshot is a capture of a screen: fixed height, whole image, rounded corners. */
3
+ export declare function Screenshot({ src, alt, width, height, className, loading, ...rest }: ScreenshotProps): import("react").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import Screenshot_module_default from "./Screenshot.module.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/components/molecules/Screenshot/Screenshot.tsx
4
+ /** Screenshot is a capture of a screen: fixed height, whole image, rounded corners. */
5
+ function Screenshot({ src, alt, width, height, className, loading = "eager", ...rest }) {
6
+ return /* @__PURE__ */ jsx("img", {
7
+ className: [Screenshot_module_default.screenshot, className ?? ""].filter(Boolean).join(" "),
8
+ src,
9
+ alt,
10
+ width,
11
+ height,
12
+ loading,
13
+ ...rest
14
+ });
15
+ }
16
+ //#endregion
17
+ export { Screenshot };
@@ -0,0 +1,5 @@
1
+ //#region src/components/molecules/Screenshot/Screenshot.module.css
2
+ var screenshot = "_screenshot_hioia_3";
3
+ var Screenshot_module_default = { screenshot };
4
+ //#endregion
5
+ export { Screenshot_module_default as default, screenshot };
@@ -0,0 +1,2 @@
1
+ export { Screenshot } from './Screenshot';
2
+ export type { ScreenshotProps } from './types';
@@ -0,0 +1,12 @@
1
+ import type { ComponentPropsWithoutRef } from 'react';
2
+ export type ScreenshotProps = {
3
+ /** Path or URL of the capture. */
4
+ src: string;
5
+ /** Required: what the screen shows, in words. */
6
+ alt: string;
7
+ /** Intrinsic width in px, so the layout does not jump while it loads. */
8
+ width?: number;
9
+ /** Intrinsic height in px, so the layout does not jump while it loads. */
10
+ height?: number;
11
+ className?: string;
12
+ } & Omit<ComponentPropsWithoutRef<'img'>, 'src' | 'alt' | 'className' | 'width' | 'height'>;
@@ -0,0 +1,6 @@
1
+ import type { SectionProps } from './types';
2
+ /**
3
+ * Section is a band of the page: the background reaches edge to edge and the content stays
4
+ * in the column. It gives the vertical rhythm to every section.
5
+ */
6
+ export declare function Section({ tone, className, children, ...rest }: SectionProps): import("react").JSX.Element;
@@ -0,0 +1,25 @@
1
+ import Section_module_default from "./Section.module.js";
2
+ import { SECTION_DEFAULTS } from "./types.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/components/molecules/Section/Section.tsx
5
+ /**
6
+ * Section is a band of the page: the background reaches edge to edge and the content stays
7
+ * in the column. It gives the vertical rhythm to every section.
8
+ */
9
+ function Section({ tone = SECTION_DEFAULTS.tone, className, children, ...rest }) {
10
+ const classes = [
11
+ Section_module_default.section,
12
+ Section_module_default[`tone-${tone}`],
13
+ className ?? ""
14
+ ].filter(Boolean).join(" ");
15
+ return /* @__PURE__ */ jsx("section", {
16
+ className: classes,
17
+ ...rest,
18
+ children: /* @__PURE__ */ jsx("div", {
19
+ className: Section_module_default.column,
20
+ children
21
+ })
22
+ });
23
+ }
24
+ //#endregion
25
+ export { Section };
@@ -0,0 +1,11 @@
1
+ //#region src/components/molecules/Section/Section.module.css
2
+ var section = "_section_1nzhz_4";
3
+ var column = "_column_1nzhz_18";
4
+ var Section_module_default = {
5
+ section,
6
+ "tone-default": "_tone-default_1nzhz_9",
7
+ "tone-raised": "_tone-raised_1nzhz_13",
8
+ column
9
+ };
10
+ //#endregion
11
+ export { column, Section_module_default as default, section };
@@ -0,0 +1,3 @@
1
+ export { Section } from './Section';
2
+ export { SECTION_DEFAULTS, SECTION_TONES } from './types';
3
+ export type { SectionProps, SectionTone } from './types';
@@ -0,0 +1,13 @@
1
+ import type { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ export declare const SECTION_TONES: readonly ["default", "raised"];
3
+ export type SectionTone = (typeof SECTION_TONES)[number];
4
+ export type SectionProps = {
5
+ /** default paints nothing; raised lifts the band one step. */
6
+ tone?: SectionTone;
7
+ /** What goes inside the column. */
8
+ children: ReactNode;
9
+ className?: string;
10
+ } & Omit<ComponentPropsWithoutRef<'section'>, 'className' | 'children'>;
11
+ export declare const SECTION_DEFAULTS: {
12
+ readonly tone: "default";
13
+ };
@@ -0,0 +1,5 @@
1
+ //#region src/components/molecules/Section/types.ts
2
+ var SECTION_TONES = ["default", "raised"];
3
+ var SECTION_DEFAULTS = { tone: "default" };
4
+ //#endregion
5
+ export { SECTION_DEFAULTS, SECTION_TONES };
@@ -0,0 +1,6 @@
1
+ import type { SectionHeaderProps } from './types';
2
+ /**
3
+ * SectionHeader opens a section: title and lead. The most repeated piece of the site.
4
+ * The title style is always title-l; the heading level is chosen apart.
5
+ */
6
+ export declare function SectionHeader({ title, description, align, level, titleId, className, ...rest }: SectionHeaderProps): import("react").JSX.Element;
@@ -0,0 +1,34 @@
1
+ import { Text } from "../../atoms/Text/Text.js";
2
+ import SectionHeader_module_default from "./SectionHeader.module.js";
3
+ import { SECTION_HEADER_DEFAULTS } from "./types.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/components/molecules/SectionHeader/SectionHeader.tsx
6
+ /**
7
+ * SectionHeader opens a section: title and lead. The most repeated piece of the site.
8
+ * The title style is always title-l; the heading level is chosen apart.
9
+ */
10
+ function SectionHeader({ title, description, align = SECTION_HEADER_DEFAULTS.align, level = SECTION_HEADER_DEFAULTS.level, titleId, className, ...rest }) {
11
+ const classes = [
12
+ SectionHeader_module_default.header,
13
+ align === "center" ? SectionHeader_module_default.center : "",
14
+ className ?? ""
15
+ ].filter(Boolean).join(" ");
16
+ return /* @__PURE__ */ jsxs("header", {
17
+ className: classes,
18
+ ...rest,
19
+ children: [/* @__PURE__ */ jsx(Text, {
20
+ as: level,
21
+ variant: "title-l",
22
+ wrap: "balance",
23
+ id: titleId,
24
+ children: title
25
+ }), description ? /* @__PURE__ */ jsx(Text, {
26
+ variant: "body-m",
27
+ tone: "secondary",
28
+ wrap: "pretty",
29
+ children: description
30
+ }) : null]
31
+ });
32
+ }
33
+ //#endregion
34
+ export { SectionHeader };
@@ -0,0 +1,9 @@
1
+ //#region src/components/molecules/SectionHeader/SectionHeader.module.css
2
+ var header = "_header_q562s_3";
3
+ var center = "_center_q562s_9";
4
+ var SectionHeader_module_default = {
5
+ header,
6
+ center
7
+ };
8
+ //#endregion
9
+ export { center, SectionHeader_module_default as default, header };
@@ -0,0 +1,3 @@
1
+ export { SectionHeader } from './SectionHeader';
2
+ export { SECTION_HEADER_ALIGNS, SECTION_HEADER_DEFAULTS, SECTION_HEADER_LEVELS } from './types';
3
+ export type { SectionHeaderAlign, SectionHeaderLevel, SectionHeaderProps } from './types';
@@ -0,0 +1,22 @@
1
+ import type { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ export declare const SECTION_HEADER_ALIGNS: readonly ["start", "center"];
3
+ export declare const SECTION_HEADER_LEVELS: readonly ["h1", "h2", "h3", "h4"];
4
+ export type SectionHeaderAlign = (typeof SECTION_HEADER_ALIGNS)[number];
5
+ export type SectionHeaderLevel = (typeof SECTION_HEADER_LEVELS)[number];
6
+ export type SectionHeaderProps = {
7
+ /** The title. Always title-l; the level is chosen apart. */
8
+ title: ReactNode;
9
+ /** Optional lead, one or two sentences in body-m secondary. */
10
+ description?: ReactNode;
11
+ /** start fills the column; center caps at half the grid and centers. */
12
+ align?: SectionHeaderAlign;
13
+ /** Heading level. One h1 per page; the rest of sections go down a level. */
14
+ level?: SectionHeaderLevel;
15
+ /** id for the title, so the Section can point to it with aria-labelledby. */
16
+ titleId?: string;
17
+ className?: string;
18
+ } & Omit<ComponentPropsWithoutRef<'header'>, 'className' | 'children' | 'title'>;
19
+ export declare const SECTION_HEADER_DEFAULTS: {
20
+ readonly align: "start";
21
+ readonly level: "h2";
22
+ };
@@ -0,0 +1,14 @@
1
+ //#region src/components/molecules/SectionHeader/types.ts
2
+ var SECTION_HEADER_ALIGNS = ["start", "center"];
3
+ var SECTION_HEADER_LEVELS = [
4
+ "h1",
5
+ "h2",
6
+ "h3",
7
+ "h4"
8
+ ];
9
+ var SECTION_HEADER_DEFAULTS = {
10
+ align: "start",
11
+ level: "h2"
12
+ };
13
+ //#endregion
14
+ export { SECTION_HEADER_ALIGNS, SECTION_HEADER_DEFAULTS, SECTION_HEADER_LEVELS };
@@ -0,0 +1,6 @@
1
+ import type { StackProps } from './types';
2
+ /**
3
+ * Stack puts the pieces of a stop one under the other with the system's air between them:
4
+ * a header over a grid, a row of metrics over its note, a few questions in a column.
5
+ */
6
+ export declare function Stack({ gap, measure, children, className }: StackProps): import("react").JSX.Element;
@@ -0,0 +1,22 @@
1
+ import Stack_module_default from "./Stack.module.js";
2
+ import { STACK_DEFAULTS } from "./types.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/components/molecules/Stack/Stack.tsx
5
+ /**
6
+ * Stack puts the pieces of a stop one under the other with the system's air between them:
7
+ * a header over a grid, a row of metrics over its note, a few questions in a column.
8
+ */
9
+ function Stack({ gap = STACK_DEFAULTS.gap, measure = STACK_DEFAULTS.measure, children, className }) {
10
+ const classes = [
11
+ Stack_module_default.stack,
12
+ Stack_module_default[`gap-${gap}`],
13
+ measure !== "none" ? Stack_module_default[`measure-${measure}`] : "",
14
+ className ?? ""
15
+ ].filter(Boolean).join(" ");
16
+ return /* @__PURE__ */ jsx("div", {
17
+ className: classes,
18
+ children
19
+ });
20
+ }
21
+ //#endregion
22
+ export { Stack };
@@ -0,0 +1,12 @@
1
+ //#region src/components/molecules/Stack/Stack.module.css
2
+ var stack = "_stack_169h2_4";
3
+ var Stack_module_default = {
4
+ stack,
5
+ "gap-s": "_gap-s_169h2_10",
6
+ "gap-m": "_gap-m_169h2_14",
7
+ "gap-l": "_gap-l_169h2_18",
8
+ "measure-half": "_measure-half_169h2_23",
9
+ "measure-wide": "_measure-wide_169h2_29"
10
+ };
11
+ //#endregion
12
+ export { Stack_module_default as default, stack };
@@ -0,0 +1,3 @@
1
+ export { Stack } from './Stack';
2
+ export { STACK_DEFAULTS, STACK_GAPS, STACK_MEASURES } from './types';
3
+ export type { StackGap, StackMeasure, StackProps } from './types';
@@ -0,0 +1,18 @@
1
+ import type { ReactNode } from 'react';
2
+ export declare const STACK_GAPS: readonly ["s", "m", "l"];
3
+ export declare const STACK_MEASURES: readonly ["none", "half", "wide"];
4
+ export type StackGap = (typeof STACK_GAPS)[number];
5
+ export type StackMeasure = (typeof STACK_MEASURES)[number];
6
+ export type StackProps = {
7
+ /** The air between pieces: s (16), m (32) or l (48). */
8
+ gap?: StackGap;
9
+ /** Cap the whole pile at half the grid or three quarters, centered. */
10
+ measure?: StackMeasure;
11
+ /** The pieces, one under the other. */
12
+ children: ReactNode;
13
+ className?: string;
14
+ };
15
+ export declare const STACK_DEFAULTS: {
16
+ readonly gap: "l";
17
+ readonly measure: "none";
18
+ };
@@ -0,0 +1,17 @@
1
+ //#region src/components/molecules/Stack/types.ts
2
+ var STACK_GAPS = [
3
+ "s",
4
+ "m",
5
+ "l"
6
+ ];
7
+ var STACK_MEASURES = [
8
+ "none",
9
+ "half",
10
+ "wide"
11
+ ];
12
+ var STACK_DEFAULTS = {
13
+ gap: "l",
14
+ measure: "none"
15
+ };
16
+ //#endregion
17
+ export { STACK_DEFAULTS, STACK_GAPS, STACK_MEASURES };
@@ -0,0 +1,6 @@
1
+ import type { TeamMemberProps } from './types';
2
+ /**
3
+ * TeamMember is a person's card: portrait 1:1, role, name and, if any, two lines of bio.
4
+ * Aligned to the margin the role goes first; centered, the name first and the role as a caption.
5
+ */
6
+ export declare function TeamMember({ src, name, role, bio, align, href, level, className }: TeamMemberProps): import("react").JSX.Element;
@@ -0,0 +1,55 @@
1
+ import { Image } from "../../atoms/Image/Image.js";
2
+ import { Text } from "../../atoms/Text/Text.js";
3
+ import TeamMember_module_default from "./TeamMember.module.js";
4
+ import { TEAM_MEMBER_DEFAULTS } from "./types.js";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
+ //#region src/components/molecules/TeamMember/TeamMember.tsx
7
+ /**
8
+ * TeamMember is a person's card: portrait 1:1, role, name and, if any, two lines of bio.
9
+ * Aligned to the margin the role goes first; centered, the name first and the role as a caption.
10
+ */
11
+ function TeamMember({ src, name, role, bio, align = TEAM_MEMBER_DEFAULTS.align, href, level = TEAM_MEMBER_DEFAULTS.level, className }) {
12
+ const classes = [
13
+ TeamMember_module_default.member,
14
+ align === "center" ? TeamMember_module_default.center : "",
15
+ className ?? ""
16
+ ].filter(Boolean).join(" ");
17
+ const nameNode = /* @__PURE__ */ jsx(Text, {
18
+ as: level,
19
+ variant: "title-xs",
20
+ wrap: "balance",
21
+ children: href ? /* @__PURE__ */ jsx("a", {
22
+ className: TeamMember_module_default.link,
23
+ href,
24
+ children: name
25
+ }) : name
26
+ });
27
+ const roleNode = /* @__PURE__ */ jsx(Text, {
28
+ as: "p",
29
+ variant: "micro-bold",
30
+ tone: "secondary",
31
+ children: role
32
+ });
33
+ return /* @__PURE__ */ jsxs("article", {
34
+ className: classes,
35
+ children: [
36
+ /* @__PURE__ */ jsx("div", {
37
+ className: TeamMember_module_default.portrait,
38
+ children: /* @__PURE__ */ jsx(Image, {
39
+ src,
40
+ alt: "",
41
+ ratio: "1:1"
42
+ })
43
+ }),
44
+ align === "center" ? /* @__PURE__ */ jsxs(Fragment, { children: [nameNode, roleNode] }) : /* @__PURE__ */ jsxs(Fragment, { children: [roleNode, nameNode] }),
45
+ bio ? /* @__PURE__ */ jsx(Text, {
46
+ variant: "body-s",
47
+ tone: "secondary",
48
+ wrap: "pretty",
49
+ children: bio
50
+ }) : null
51
+ ]
52
+ });
53
+ }
54
+ //#endregion
55
+ export { TeamMember };
@@ -0,0 +1,13 @@
1
+ //#region src/components/molecules/TeamMember/TeamMember.module.css
2
+ var member = "_member_1mo29_4";
3
+ var center = "_center_1mo29_10";
4
+ var portrait = "_portrait_1mo29_15";
5
+ var link = "_link_1mo29_19";
6
+ var TeamMember_module_default = {
7
+ member,
8
+ center,
9
+ portrait,
10
+ link
11
+ };
12
+ //#endregion
13
+ export { center, TeamMember_module_default as default, link, member, portrait };
@@ -0,0 +1,3 @@
1
+ export { TeamMember } from './TeamMember';
2
+ export { TEAM_MEMBER_ALIGNS, TEAM_MEMBER_DEFAULTS } from './types';
3
+ export type { TeamMemberAlign, TeamMemberProps } from './types';
@@ -0,0 +1,24 @@
1
+ import type { ReactNode } from 'react';
2
+ export declare const TEAM_MEMBER_ALIGNS: readonly ["start", "center"];
3
+ export type TeamMemberAlign = (typeof TEAM_MEMBER_ALIGNS)[number];
4
+ export type TeamMemberProps = {
5
+ /** The portrait. Follows the width of the card and crops to 1:1. */
6
+ src: string;
7
+ /** The name: an h3. */
8
+ name: ReactNode;
9
+ /** The role: uppercase by style. */
10
+ role: ReactNode;
11
+ /** Two or three lines about the person. Optional. */
12
+ bio?: ReactNode;
13
+ /** start: role before the name. center: name first, the role as a caption. */
14
+ align?: TeamMemberAlign;
15
+ /** When the person has a page, the name is the link, not the whole card. */
16
+ href?: string;
17
+ /** Heading level of the name. */
18
+ level?: 'h2' | 'h3' | 'h4';
19
+ className?: string;
20
+ };
21
+ export declare const TEAM_MEMBER_DEFAULTS: {
22
+ readonly align: "start";
23
+ readonly level: "h3";
24
+ };
@@ -0,0 +1,8 @@
1
+ //#region src/components/molecules/TeamMember/types.ts
2
+ var TEAM_MEMBER_ALIGNS = ["start", "center"];
3
+ var TEAM_MEMBER_DEFAULTS = {
4
+ align: "start",
5
+ level: "h3"
6
+ };
7
+ //#endregion
8
+ export { TEAM_MEMBER_ALIGNS, TEAM_MEMBER_DEFAULTS };
@@ -0,0 +1,6 @@
1
+ import type { BarsProps } from './types';
2
+ /**
3
+ * Bars is a horizontal bar chart: each row its label, a bar that grows from the left when it
4
+ * comes into view (or its Step lights up) and its figure at the tip. Ported from the newsletter talk.
5
+ */
6
+ export declare function Bars({ rows, label, header, max, unit, decimals, className }: BarsProps): import("react").JSX.Element;