matrix-design-system 1.0.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 (317) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +95 -0
  3. package/dist/atoms/animation/motion-div/index.d.mts +2 -0
  4. package/dist/atoms/animation/motion-div/motion-div.d.mts +7 -0
  5. package/dist/atoms/animation/motion-div/motion-div.mjs +37 -0
  6. package/dist/atoms/animation/motion-div/use-motion-div-store.mjs +17 -0
  7. package/dist/atoms/buttons/button/button.d.mts +8 -0
  8. package/dist/atoms/buttons/button/button.mjs +12 -0
  9. package/dist/atoms/buttons/button/index.d.mts +2 -0
  10. package/dist/atoms/buttons/switch/index.d.mts +2 -0
  11. package/dist/atoms/buttons/switch/switch.d.mts +10 -0
  12. package/dist/atoms/buttons/switch/switch.mjs +40 -0
  13. package/dist/atoms/buttons/switch/use-switch-store.mjs +7 -0
  14. package/dist/atoms/call-to-actions/call-to-action-external-with-tracking/call-to-action-external-with-tracking.d.mts +13 -0
  15. package/dist/atoms/call-to-actions/call-to-action-external-with-tracking/call-to-action-external-with-tracking.mjs +30 -0
  16. package/dist/atoms/call-to-actions/call-to-action-external-with-tracking/index.d.mts +2 -0
  17. package/dist/atoms/call-to-actions/call-to-action-internal-with-tracking/call-to-action-internal-with-tracking.d.mts +14 -0
  18. package/dist/atoms/call-to-actions/call-to-action-internal-with-tracking/call-to-action-internal-with-tracking.mjs +29 -0
  19. package/dist/atoms/call-to-actions/call-to-action-internal-with-tracking/index.d.mts +2 -0
  20. package/dist/atoms/chip/chip.d.mts +10 -0
  21. package/dist/atoms/chip/chip.mjs +10 -0
  22. package/dist/atoms/chip/index.d.mts +2 -0
  23. package/dist/atoms/effects/glassmorphism-background/glassmorphism-background.d.mts +8 -0
  24. package/dist/atoms/effects/glassmorphism-background/glassmorphism-background.mjs +33 -0
  25. package/dist/atoms/effects/glassmorphism-background/index.d.mts +2 -0
  26. package/dist/atoms/effects/glassmorphism-background/use-glassmorphism-background-store.mjs +17 -0
  27. package/dist/atoms/effects/image-glow/image-glow.d.mts +12 -0
  28. package/dist/atoms/effects/image-glow/image-glow.mjs +20 -0
  29. package/dist/atoms/effects/image-glow/index.d.mts +2 -0
  30. package/dist/atoms/effects/image-shimmer-placeholder/image-shimmer-placeholder.d.mts +6 -0
  31. package/dist/atoms/effects/image-shimmer-placeholder/image-shimmer-placeholder.mjs +22 -0
  32. package/dist/atoms/effects/image-shimmer-placeholder/index.d.mts +2 -0
  33. package/dist/atoms/effects/matrix-rain/matrix-rain/index.d.mts +2 -0
  34. package/dist/atoms/effects/matrix-rain/matrix-rain/matrix-2d-canvas/debounce.mjs +12 -0
  35. package/dist/atoms/effects/matrix-rain/matrix-rain/matrix-2d-canvas/matrix-2d-canvas.mjs +25 -0
  36. package/dist/atoms/effects/matrix-rain/matrix-rain/matrix-2d-canvas/use-matrix-2d-canvas-store.mjs +186 -0
  37. package/dist/atoms/effects/matrix-rain/matrix-rain/matrix-rain.d.mts +5 -0
  38. package/dist/atoms/effects/matrix-rain/matrix-rain/matrix-rain.mjs +68 -0
  39. package/dist/atoms/effects/matrix-rain/matrix-rain/use-matrix-rain-activity.mjs +40 -0
  40. package/dist/atoms/effects/matrix-rain/matrix-rain/use-matrix-rain-store.mjs +69 -0
  41. package/dist/atoms/effects/overlay/index.d.mts +2 -0
  42. package/dist/atoms/effects/overlay/overlay.d.mts +11 -0
  43. package/dist/atoms/effects/overlay/overlay.mjs +61 -0
  44. package/dist/atoms/effects/overlay/use-overlay-store.mjs +8 -0
  45. package/dist/atoms/effects/pills/index.d.mts +2 -0
  46. package/dist/atoms/effects/pills/pills.d.mts +10 -0
  47. package/dist/atoms/effects/pills/pills.mjs +121 -0
  48. package/dist/atoms/effects/pills/use-pills-store.mjs +17 -0
  49. package/dist/atoms/effects/plain-image/index.d.mts +2 -0
  50. package/dist/atoms/effects/plain-image/plain-image.d.mts +45 -0
  51. package/dist/atoms/effects/plain-image/plain-image.mjs +140 -0
  52. package/dist/atoms/effects/plain-image/use-plain-image-store.mjs +62 -0
  53. package/dist/atoms/icons/chat-icon/chat-icon.d.mts +4 -0
  54. package/dist/atoms/icons/chat-icon/chat-icon.mjs +13 -0
  55. package/dist/atoms/icons/copy-icon/copy-icon.d.mts +6 -0
  56. package/dist/atoms/icons/copy-icon/copy-icon.mjs +17 -0
  57. package/dist/atoms/icons/rounded-icon/index.d.mts +2 -0
  58. package/dist/atoms/icons/rounded-icon/rounded-icon.d.mts +8 -0
  59. package/dist/atoms/icons/rounded-icon/rounded-icon.mjs +8 -0
  60. package/dist/atoms/links/anchor-link/anchor-link.d.mts +31 -0
  61. package/dist/atoms/links/anchor-link/anchor-link.mjs +14 -0
  62. package/dist/atoms/links/anchor-link/index.d.mts +2 -0
  63. package/dist/atoms/links/external-link/external-link.d.mts +13 -0
  64. package/dist/atoms/links/external-link/external-link.mjs +29 -0
  65. package/dist/atoms/links/external-link/index.d.mts +2 -0
  66. package/dist/atoms/links/internal-link/index.d.mts +2 -0
  67. package/dist/atoms/links/internal-link/internal-link.d.mts +15 -0
  68. package/dist/atoms/links/internal-link/internal-link.mjs +12 -0
  69. package/dist/atoms/loader/loader/index.d.mts +2 -0
  70. package/dist/atoms/loader/loader/loader.d.mts +10 -0
  71. package/dist/atoms/loader/loader/loader.mjs +62 -0
  72. package/dist/atoms/typography/input-field/index.d.mts +2 -0
  73. package/dist/atoms/typography/input-field/input-field.d.mts +9 -0
  74. package/dist/atoms/typography/input-field/input-field.mjs +8 -0
  75. package/dist/atoms/typography/label/index.d.mts +2 -0
  76. package/dist/atoms/typography/label/label.d.mts +9 -0
  77. package/dist/atoms/typography/label/label.mjs +11 -0
  78. package/dist/atoms/typography/markdown/markdown-plugins.mjs +16 -0
  79. package/dist/atoms/typography/markdown/markdown.d.mts +7 -0
  80. package/dist/atoms/typography/markdown/markdown.mjs +23 -0
  81. package/dist/atoms/typography/markdown/use-markdown-store.mjs +24 -0
  82. package/dist/atoms/typography/terminal-blocks/index.d.mts +2 -0
  83. package/dist/atoms/typography/terminal-blocks/terminal-blocks.d.mts +13 -0
  84. package/dist/atoms/typography/terminal-blocks/terminal-blocks.mjs +42 -0
  85. package/dist/atoms/typography/textarea/index.d.mts +2 -0
  86. package/dist/atoms/typography/textarea/textarea.d.mts +9 -0
  87. package/dist/atoms/typography/textarea/textarea.mjs +8 -0
  88. package/dist/chart.d.mts +7 -0
  89. package/dist/chart.mjs +4 -0
  90. package/dist/command-palette.d.mts +6 -0
  91. package/dist/command-palette.mjs +5 -0
  92. package/dist/hooks/use-clipboard-available.d.mts +4 -0
  93. package/dist/hooks/use-clipboard-available.mjs +10 -0
  94. package/dist/hooks/use-device-capabilities.d.mts +10 -0
  95. package/dist/hooks/use-device-capabilities.mjs +30 -0
  96. package/dist/hooks/use-glassmorphism.d.mts +10 -0
  97. package/dist/hooks/use-glassmorphism.mjs +9 -0
  98. package/dist/hooks/use-in-view-list.d.mts +7 -0
  99. package/dist/hooks/use-in-view-list.mjs +63 -0
  100. package/dist/hooks/use-in-view.d.mts +9 -0
  101. package/dist/hooks/use-in-view.mjs +68 -0
  102. package/dist/hooks/use-is-ios.d.mts +4 -0
  103. package/dist/hooks/use-is-ios.mjs +7 -0
  104. package/dist/hooks/use-lock-body-scroll.d.mts +4 -0
  105. package/dist/hooks/use-lock-body-scroll.mjs +40 -0
  106. package/dist/hooks/use-matrix-settings-store.d.mts +5 -0
  107. package/dist/hooks/use-matrix-settings-store.mjs +15 -0
  108. package/dist/hooks/use-motion-store.d.mts +13 -0
  109. package/dist/hooks/use-motion-store.mjs +29 -0
  110. package/dist/hooks/use-os-modifier-key.d.mts +5 -0
  111. package/dist/hooks/use-os-modifier-key.mjs +15 -0
  112. package/dist/hooks/use-reading-progress.d.mts +8 -0
  113. package/dist/hooks/use-reading-progress.mjs +49 -0
  114. package/dist/hooks/use-reduced-motions.d.mts +4 -0
  115. package/dist/hooks/use-reduced-motions.mjs +10 -0
  116. package/dist/hooks/use-scroll-direction.d.mts +8 -0
  117. package/dist/hooks/use-scroll-direction.mjs +43 -0
  118. package/dist/hooks/use-typewriter.d.mts +15 -0
  119. package/dist/hooks/use-typewriter.mjs +89 -0
  120. package/dist/hooks/use-webgpu-supported.d.mts +4 -0
  121. package/dist/hooks/use-webgpu-supported.mjs +16 -0
  122. package/dist/index.d.mts +153 -0
  123. package/dist/index.mjs +88 -0
  124. package/dist/markdown.d.mts +2 -0
  125. package/dist/markdown.mjs +2 -0
  126. package/dist/molecules/accordion/accordion/accordion.d.mts +12 -0
  127. package/dist/molecules/accordion/accordion/accordion.mjs +130 -0
  128. package/dist/molecules/accordion/accordion/index.d.mts +2 -0
  129. package/dist/molecules/accordion/accordion/use-accordion-store.mjs +55 -0
  130. package/dist/molecules/breadcrumbs/breadcrumb/breadcrumb.d.mts +21 -0
  131. package/dist/molecules/breadcrumbs/breadcrumb/breadcrumb.mjs +186 -0
  132. package/dist/molecules/breadcrumbs/breadcrumb/index.d.mts +2 -0
  133. package/dist/molecules/breadcrumbs/breadcrumb/use-breadcrumb-store.mjs +29 -0
  134. package/dist/molecules/buttons/pagination-navigation/index.d.mts +2 -0
  135. package/dist/molecules/buttons/pagination-navigation/pagination-navigation.d.mts +11 -0
  136. package/dist/molecules/buttons/pagination-navigation/pagination-navigation.mjs +17 -0
  137. package/dist/molecules/buttons/pills-buttons/index.d.mts +2 -0
  138. package/dist/molecules/buttons/pills-buttons/pills-buttons.d.mts +10 -0
  139. package/dist/molecules/buttons/pills-buttons/pills-buttons.mjs +55 -0
  140. package/dist/molecules/buttons/segmented-control/segmented-control.d.mts +13 -0
  141. package/dist/molecules/buttons/segmented-control/segmented-control.mjs +46 -0
  142. package/dist/molecules/buttons/segmented-control/use-segmented-control-store.mjs +8 -0
  143. package/dist/molecules/buttons/social-contact/index.d.mts +2 -0
  144. package/dist/molecules/buttons/social-contact/social-contact.d.mts +10 -0
  145. package/dist/molecules/buttons/social-contact/social-contact.mjs +13 -0
  146. package/dist/molecules/buttons/tag/index.d.mts +2 -0
  147. package/dist/molecules/buttons/tag/tag.d.mts +17 -0
  148. package/dist/molecules/buttons/tag/tag.mjs +20 -0
  149. package/dist/molecules/buttons/terminal-button/index.d.mts +2 -0
  150. package/dist/molecules/buttons/terminal-button/terminal-button.d.mts +15 -0
  151. package/dist/molecules/buttons/terminal-button/terminal-button.mjs +38 -0
  152. package/dist/molecules/chart/chart-panel/chart-panel.d.mts +9 -0
  153. package/dist/molecules/chart/chart-panel/chart-panel.mjs +12 -0
  154. package/dist/molecules/chart/chart-panel/index.d.mts +2 -0
  155. package/dist/molecules/chart/chart-tooltip/chart-tooltip.d.mts +8 -0
  156. package/dist/molecules/chart/chart-tooltip/chart-tooltip.mjs +18 -0
  157. package/dist/molecules/chart/chart-tooltip/index.d.mts +2 -0
  158. package/dist/molecules/chart/donut-chart/donut-chart.d.mts +15 -0
  159. package/dist/molecules/chart/donut-chart/donut-chart.mjs +142 -0
  160. package/dist/molecules/chart/donut-chart/index.d.mts +2 -0
  161. package/dist/molecules/containers/content-container/content-container.d.mts +5 -0
  162. package/dist/molecules/containers/content-container/content-container.mjs +8 -0
  163. package/dist/molecules/containers/content-container/index.d.mts +2 -0
  164. package/dist/molecules/controls/control-slider/control-slider.d.mts +14 -0
  165. package/dist/molecules/controls/control-slider/control-slider.mjs +76 -0
  166. package/dist/molecules/controls/control-slider/index.d.mts +2 -0
  167. package/dist/molecules/controls/control-slider/use-control-slider-store.mjs +10 -0
  168. package/dist/molecules/effects/matrix-background/index.d.mts +2 -0
  169. package/dist/molecules/effects/matrix-background/matrix-background.d.mts +8 -0
  170. package/dist/molecules/effects/matrix-background/matrix-background.mjs +15 -0
  171. package/dist/molecules/effects/matrix-header-background/index.d.mts +2 -0
  172. package/dist/molecules/effects/matrix-header-background/matrix-header-background.d.mts +8 -0
  173. package/dist/molecules/effects/matrix-header-background/matrix-header-background.mjs +14 -0
  174. package/dist/molecules/effects/matrix-terminal/index.d.mts +2 -0
  175. package/dist/molecules/effects/matrix-terminal/matrix-terminal.d.mts +15 -0
  176. package/dist/molecules/effects/matrix-terminal/matrix-terminal.mjs +101 -0
  177. package/dist/molecules/effects/matrix-terminal/use-matrix-terminal-store.mjs +59 -0
  178. package/dist/molecules/form/filter-input/filter-input.d.mts +10 -0
  179. package/dist/molecules/form/filter-input/filter-input.mjs +35 -0
  180. package/dist/molecules/form/filter-input/index.d.mts +2 -0
  181. package/dist/molecules/form/form-error-summary/form-error-summary.d.mts +10 -0
  182. package/dist/molecules/form/form-error-summary/form-error-summary.mjs +71 -0
  183. package/dist/molecules/form/form-error-summary/index.d.mts +2 -0
  184. package/dist/molecules/form/form-field/form-field.d.mts +10 -0
  185. package/dist/molecules/form/form-field/form-field.mjs +60 -0
  186. package/dist/molecules/form/form-field/index.d.mts +2 -0
  187. package/dist/molecules/form/form-success-message/form-success-message.d.mts +8 -0
  188. package/dist/molecules/form/form-success-message/form-success-message.mjs +21 -0
  189. package/dist/molecules/form/form-success-message/index.d.mts +2 -0
  190. package/dist/molecules/form/form-textarea/form-textarea.d.mts +10 -0
  191. package/dist/molecules/form/form-textarea/form-textarea.mjs +60 -0
  192. package/dist/molecules/form/form-textarea/index.d.mts +2 -0
  193. package/dist/molecules/lightbox-image/index.d.mts +2 -0
  194. package/dist/molecules/lightbox-image/lightbox-image.d.mts +6 -0
  195. package/dist/molecules/lightbox-image/lightbox-image.mjs +49 -0
  196. package/dist/molecules/lightbox-image/use-lightbox-image-store.mjs +29 -0
  197. package/dist/molecules/links/pills-links/index.d.mts +2 -0
  198. package/dist/molecules/links/pills-links/pills-links.d.mts +13 -0
  199. package/dist/molecules/links/pills-links/pills-links.mjs +60 -0
  200. package/dist/molecules/menu/close/close.d.mts +8 -0
  201. package/dist/molecules/menu/close/close.mjs +9 -0
  202. package/dist/molecules/menu/close/index.d.mts +2 -0
  203. package/dist/molecules/menu/dropdown-menu/dropdown-menu.d.mts +25 -0
  204. package/dist/molecules/menu/dropdown-menu/dropdown-menu.mjs +143 -0
  205. package/dist/molecules/menu/dropdown-menu/index.d.mts +2 -0
  206. package/dist/molecules/menu/dropdown-menu/use-dropdown-menu-store.mjs +108 -0
  207. package/dist/molecules/menu/hamburger-menu/hamburger-menu.d.mts +8 -0
  208. package/dist/molecules/menu/hamburger-menu/hamburger-menu.mjs +9 -0
  209. package/dist/molecules/menu/hamburger-menu/index.d.mts +2 -0
  210. package/dist/molecules/menu/menu-item/index.d.mts +2 -0
  211. package/dist/molecules/menu/menu-item/menu-item.d.mts +16 -0
  212. package/dist/molecules/menu/menu-item/menu-item.mjs +65 -0
  213. package/dist/molecules/menu/menu-item/use-menu-item-store.mjs +10 -0
  214. package/dist/molecules/stat-card/index.d.mts +2 -0
  215. package/dist/molecules/stat-card/stat-card.d.mts +10 -0
  216. package/dist/molecules/stat-card/stat-card.mjs +21 -0
  217. package/dist/molecules/terminal-list-item/index.d.mts +2 -0
  218. package/dist/molecules/terminal-list-item/terminal-list-item.d.mts +9 -0
  219. package/dist/molecules/terminal-list-item/terminal-list-item.mjs +13 -0
  220. package/dist/molecules/terminal-progress-bar/index.d.mts +2 -0
  221. package/dist/molecules/terminal-progress-bar/terminal-progress-bar.d.mts +11 -0
  222. package/dist/molecules/terminal-progress-bar/terminal-progress-bar.mjs +20 -0
  223. package/dist/molecules/typography/page-title/index.d.mts +2 -0
  224. package/dist/molecules/typography/page-title/page-title.d.mts +5 -0
  225. package/dist/molecules/typography/page-title/page-title.mjs +8 -0
  226. package/dist/molecules/typography/paragraph-title-with-icon/index.d.mts +2 -0
  227. package/dist/molecules/typography/paragraph-title-with-icon/paragraph-title-with-icon.d.mts +8 -0
  228. package/dist/molecules/typography/paragraph-title-with-icon/paragraph-title-with-icon.mjs +13 -0
  229. package/dist/molecules/typography/section-heading/index.d.mts +2 -0
  230. package/dist/molecules/typography/section-heading/section-heading.d.mts +9 -0
  231. package/dist/molecules/typography/section-heading/section-heading.mjs +17 -0
  232. package/dist/molecules/video/self-hosted-video/index.d.mts +2 -0
  233. package/dist/molecules/video/self-hosted-video/self-hosted-video.d.mts +17 -0
  234. package/dist/molecules/video/self-hosted-video/self-hosted-video.mjs +39 -0
  235. package/dist/molecules/video/youtube/index.d.mts +2 -0
  236. package/dist/molecules/video/youtube/youtube.d.mts +9 -0
  237. package/dist/molecules/video/youtube/youtube.mjs +12 -0
  238. package/dist/organism/command-palette/command-palette/command-palette.d.mts +12 -0
  239. package/dist/organism/command-palette/command-palette/command-palette.mjs +148 -0
  240. package/dist/organism/command-palette/command-palette/index.d.mts +2 -0
  241. package/dist/organism/command-palette/command-palette/use-command-palette-store.mjs +121 -0
  242. package/dist/organism/command-palette/command-palette-group/command-palette-group.d.mts +9 -0
  243. package/dist/organism/command-palette/command-palette-group/command-palette-group.mjs +24 -0
  244. package/dist/organism/command-palette/command-palette-group/index.d.mts +2 -0
  245. package/dist/organism/command-palette/command-palette-item/command-palette-item.d.mts +11 -0
  246. package/dist/organism/command-palette/command-palette-item/command-palette-item.mjs +29 -0
  247. package/dist/organism/command-palette/command-palette-item/index.d.mts +2 -0
  248. package/dist/organism/command-palette/command-palette-item/use-command-palette-item-store.mjs +30 -0
  249. package/dist/organism/command-palette/index.d.mts +9 -0
  250. package/dist/organism/command-palette/toggle-motion-item/index.d.mts +2 -0
  251. package/dist/organism/command-palette/toggle-motion-item/toggle-motion-item.d.mts +8 -0
  252. package/dist/organism/command-palette/toggle-motion-item/toggle-motion-item.mjs +63 -0
  253. package/dist/organism/command-palette/toggle-motion-item/use-toggle-motion-item-store.mjs +45 -0
  254. package/dist/organism/cookie-consent-banner/cookie-consent-banner.d.mts +9 -0
  255. package/dist/organism/cookie-consent-banner/cookie-consent-banner.mjs +71 -0
  256. package/dist/organism/cookie-consent-banner/use-cookie-consent-banner-store.mjs +10 -0
  257. package/dist/organism/footer/footer.d.mts +26 -0
  258. package/dist/organism/footer/footer.mjs +193 -0
  259. package/dist/organism/footer/index.d.mts +3 -0
  260. package/dist/organism/footer/use-footer-store.d.mts +22 -0
  261. package/dist/organism/footer/use-footer-store.mjs +57 -0
  262. package/dist/organism/header/brand-header/brand-header.d.mts +14 -0
  263. package/dist/organism/header/brand-header/brand-header.mjs +132 -0
  264. package/dist/organism/header/brand-header/index.d.mts +2 -0
  265. package/dist/organism/image-carousel/fullscreen-modal/fullscreen-modal.mjs +148 -0
  266. package/dist/organism/image-carousel/fullscreen-modal/use-fullscreen-modal-store.mjs +129 -0
  267. package/dist/organism/image-carousel/image-carousel.d.mts +14 -0
  268. package/dist/organism/image-carousel/image-carousel.mjs +225 -0
  269. package/dist/organism/image-carousel/index.d.mts +2 -0
  270. package/dist/organism/image-carousel/navigation-buttons/navigation-buttons.mjs +22 -0
  271. package/dist/organism/image-carousel/navigation-buttons/use-navigation-buttons-store.mjs +18 -0
  272. package/dist/organism/image-carousel/page-indicators/page-indicator-button/page-indicator-button.mjs +14 -0
  273. package/dist/organism/image-carousel/page-indicators/page-indicator-button/use-page-indicator-button-store.mjs +11 -0
  274. package/dist/organism/image-carousel/page-indicators/page-indicators.mjs +20 -0
  275. package/dist/organism/image-carousel/use-image-carousel-store.mjs +88 -0
  276. package/dist/organism/lightbox/index.d.mts +2 -0
  277. package/dist/organism/lightbox/lightbox.d.mts +5 -0
  278. package/dist/organism/lightbox/lightbox.mjs +100 -0
  279. package/dist/organism/lightbox/use-lightbox-store.mjs +120 -0
  280. package/dist/organism/loading-bar/loading-bar.d.mts +7 -0
  281. package/dist/organism/loading-bar/loading-bar.mjs +48 -0
  282. package/dist/organism/loading-bar/use-loading-bar-store.mjs +52 -0
  283. package/dist/organism/menu/index.d.mts +3 -0
  284. package/dist/organism/menu/menu.d.mts +33 -0
  285. package/dist/organism/menu/menu.mjs +396 -0
  286. package/dist/organism/menu/use-menu-store.d.mts +22 -0
  287. package/dist/organism/menu/use-menu-store.mjs +265 -0
  288. package/dist/organism/profile-hero/index.d.mts +2 -0
  289. package/dist/organism/profile-hero/profile-hero.d.mts +15 -0
  290. package/dist/organism/profile-hero/profile-hero.mjs +72 -0
  291. package/dist/organism/profile-photo/index.d.mts +2 -0
  292. package/dist/organism/profile-photo/profile-photo.d.mts +12 -0
  293. package/dist/organism/profile-photo/profile-photo.mjs +17 -0
  294. package/dist/organism/reading-content-progress-bar/index.d.mts +2 -0
  295. package/dist/organism/reading-content-progress-bar/reading-content-progress-bar.d.mts +8 -0
  296. package/dist/organism/reading-content-progress-bar/reading-content-progress-bar.mjs +76 -0
  297. package/dist/organism/reading-content-progress-bar/use-reading-content-progress-bar-store.mjs +29 -0
  298. package/dist/organism/social-contacts/index.d.mts +2 -0
  299. package/dist/organism/social-contacts/social-contacts.d.mts +29 -0
  300. package/dist/organism/social-contacts/social-contacts.mjs +78 -0
  301. package/dist/state/command-palette/command-palette-context.d.mts +9 -0
  302. package/dist/state/command-palette/command-palette-context.mjs +10 -0
  303. package/dist/state/command-palette/command-palette-events.d.mts +11 -0
  304. package/dist/state/command-palette/command-palette-events.mjs +15 -0
  305. package/dist/state/command-palette/command-palette-trigger.d.mts +8 -0
  306. package/dist/state/lightbox/lightbox-events.d.mts +9 -0
  307. package/dist/state/lightbox/lightbox-events.mjs +7 -0
  308. package/dist/state/matrix-rain/matrix-settings.d.mts +37 -0
  309. package/dist/state/matrix-rain/matrix-settings.mjs +122 -0
  310. package/dist/state/motion/motion.d.mts +6 -0
  311. package/dist/state/motion/motion.mjs +17 -0
  312. package/package.json +160 -0
  313. package/src/styles/base.css +130 -0
  314. package/src/styles/components.css +57 -0
  315. package/src/styles/index.css +23 -0
  316. package/src/styles/pills.css +85 -0
  317. package/src/styles/theme.css +254 -0
@@ -0,0 +1,186 @@
1
+ "use client";
2
+ import { useGlassmorphism } from "../../../hooks/use-glassmorphism.mjs";
3
+ import { InternalLink } from "../../../atoms/links/internal-link/internal-link.mjs";
4
+ import { useBreadcrumbStore } from "./use-breadcrumb-store.mjs";
5
+ import { c } from "react/compiler-runtime";
6
+ import { motion } from "framer-motion";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ import { IoMdArrowRoundBack } from "react-icons/io";
9
+ //#region src/molecules/breadcrumbs/breadcrumb/breadcrumb.tsx
10
+ const BreadcrumbContent = (t0) => {
11
+ const $ = c(13);
12
+ const { items, parentItem, linkComponent } = t0;
13
+ let t1;
14
+ if ($[0] !== linkComponent || $[1] !== parentItem) {
15
+ t1 = parentItem && /* @__PURE__ */ jsx("ol", {
16
+ className: "flex min-w-0 flex-row flex-nowrap items-center overflow-hidden sm:hidden",
17
+ children: /* @__PURE__ */ jsxs("li", {
18
+ className: "flex min-w-0 items-center",
19
+ children: [/* @__PURE__ */ jsx("span", {
20
+ className: "text-secondary text-sm mr-1.5 shrink-0 select-none",
21
+ "aria-hidden": "true",
22
+ children: /* @__PURE__ */ jsx(IoMdArrowRoundBack, {})
23
+ }), /* @__PURE__ */ jsx(InternalLink, {
24
+ linkComponent,
25
+ to: parentItem.href,
26
+ onClick: parentItem.onClick,
27
+ className: "min-w-0 truncate py-2 text-sm",
28
+ children: parentItem.label
29
+ })]
30
+ })
31
+ });
32
+ $[0] = linkComponent;
33
+ $[1] = parentItem;
34
+ $[2] = t1;
35
+ } else t1 = $[2];
36
+ let t2;
37
+ if ($[3] !== items || $[4] !== linkComponent) {
38
+ let t3;
39
+ if ($[6] !== linkComponent) {
40
+ t3 = (item, index) => /* @__PURE__ */ jsxs("li", {
41
+ className: `flex items-center text-sm ${item.isCurrent ? "min-w-0 shrink" : "shrink-0"}`,
42
+ children: [index > 0 && /* @__PURE__ */ jsx("span", {
43
+ className: "text-secondary text-sm mx-1.5 shrink-0 select-none",
44
+ "aria-hidden": "true",
45
+ children: ">"
46
+ }), item.isCurrent ? /* @__PURE__ */ jsx("span", {
47
+ className: "text-primary-text block truncate text-sm",
48
+ "aria-current": "page",
49
+ children: item.label
50
+ }) : /* @__PURE__ */ jsx(InternalLink, {
51
+ linkComponent,
52
+ to: item.href,
53
+ onClick: item.onClick,
54
+ className: "block truncate py-2 whitespace-nowrap text-sm",
55
+ children: item.label
56
+ })]
57
+ }, item.href);
58
+ $[6] = linkComponent;
59
+ $[7] = t3;
60
+ } else t3 = $[7];
61
+ t2 = items.map(t3);
62
+ $[3] = items;
63
+ $[4] = linkComponent;
64
+ $[5] = t2;
65
+ } else t2 = $[5];
66
+ let t3;
67
+ if ($[8] !== t2) {
68
+ t3 = /* @__PURE__ */ jsx("ol", {
69
+ className: "hidden min-w-0 flex-row flex-nowrap items-center overflow-hidden sm:flex text-sm",
70
+ children: t2
71
+ });
72
+ $[8] = t2;
73
+ $[9] = t3;
74
+ } else t3 = $[9];
75
+ let t4;
76
+ if ($[10] !== t1 || $[11] !== t3) {
77
+ t4 = /* @__PURE__ */ jsxs(Fragment, { children: [t1, t3] });
78
+ $[10] = t1;
79
+ $[11] = t3;
80
+ $[12] = t4;
81
+ } else t4 = $[12];
82
+ return t4;
83
+ };
84
+ const Breadcrumb = (t0) => {
85
+ const $ = c(26);
86
+ const { items, linkComponent } = t0;
87
+ const { state } = useBreadcrumbStore();
88
+ const { navRef, isVisible } = state;
89
+ const { glassmorphismClass } = useGlassmorphism();
90
+ const parentItem = items.length >= 2 ? items[items.length - 2] : null;
91
+ let t1;
92
+ if ($[0] !== items || $[1] !== linkComponent || $[2] !== parentItem) {
93
+ t1 = /* @__PURE__ */ jsx(BreadcrumbContent, {
94
+ items,
95
+ parentItem,
96
+ linkComponent
97
+ });
98
+ $[0] = items;
99
+ $[1] = linkComponent;
100
+ $[2] = parentItem;
101
+ $[3] = t1;
102
+ } else t1 = $[3];
103
+ let t2;
104
+ if ($[4] !== navRef || $[5] !== t1) {
105
+ t2 = /* @__PURE__ */ jsx("nav", {
106
+ ref: navRef,
107
+ "aria-label": "Breadcrumb",
108
+ className: "glow-container mb-4 px-3 py-2 font-mono text-sm",
109
+ children: t1
110
+ });
111
+ $[4] = navRef;
112
+ $[5] = t1;
113
+ $[6] = t2;
114
+ } else t2 = $[6];
115
+ const t3 = !isVisible;
116
+ const t4 = `${glassmorphismClass} container-fixed fixed top-17 sm:top-19 right-0 left-0 z-55 px-3 py-1 font-mono text-sm`;
117
+ const t5 = isVisible ? 0 : -200;
118
+ const t6 = isVisible ? "auto" : "none";
119
+ let t7;
120
+ if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
121
+ t7 = {
122
+ delay: .1,
123
+ duration: .4,
124
+ ease: "linear"
125
+ };
126
+ $[7] = t7;
127
+ } else t7 = $[7];
128
+ let t8;
129
+ if ($[8] !== t5 || $[9] !== t6) {
130
+ t8 = {
131
+ y: t5,
132
+ pointerEvents: t6,
133
+ transition: t7
134
+ };
135
+ $[8] = t5;
136
+ $[9] = t6;
137
+ $[10] = t8;
138
+ } else t8 = $[10];
139
+ const t9 = isVisible ? "auto" : "none";
140
+ let t10;
141
+ if ($[11] !== t9) {
142
+ t10 = { pointerEvents: t9 };
143
+ $[11] = t9;
144
+ $[12] = t10;
145
+ } else t10 = $[12];
146
+ let t11;
147
+ if ($[13] !== items || $[14] !== linkComponent || $[15] !== parentItem) {
148
+ t11 = /* @__PURE__ */ jsx(BreadcrumbContent, {
149
+ items,
150
+ parentItem,
151
+ linkComponent
152
+ });
153
+ $[13] = items;
154
+ $[14] = linkComponent;
155
+ $[15] = parentItem;
156
+ $[16] = t11;
157
+ } else t11 = $[16];
158
+ let t12;
159
+ if ($[17] !== t10 || $[18] !== t11 || $[19] !== t3 || $[20] !== t4 || $[21] !== t8) {
160
+ t12 = /* @__PURE__ */ jsx(motion.nav, {
161
+ "aria-label": "Breadcrumb",
162
+ "aria-hidden": t3,
163
+ className: t4,
164
+ initial: false,
165
+ animate: t8,
166
+ style: t10,
167
+ children: t11
168
+ });
169
+ $[17] = t10;
170
+ $[18] = t11;
171
+ $[19] = t3;
172
+ $[20] = t4;
173
+ $[21] = t8;
174
+ $[22] = t12;
175
+ } else t12 = $[22];
176
+ let t13;
177
+ if ($[23] !== t12 || $[24] !== t2) {
178
+ t13 = /* @__PURE__ */ jsxs(Fragment, { children: [t2, t12] });
179
+ $[23] = t12;
180
+ $[24] = t2;
181
+ $[25] = t13;
182
+ } else t13 = $[25];
183
+ return t13;
184
+ };
185
+ //#endregion
186
+ export { Breadcrumb };
@@ -0,0 +1,2 @@
1
+ import { Breadcrumb, BreadcrumbItem, BreadcrumbProps } from "./breadcrumb.mjs";
2
+ export { Breadcrumb, type BreadcrumbItem, type BreadcrumbProps };
@@ -0,0 +1,29 @@
1
+ "use client";
2
+ import { useInView } from "../../../hooks/use-in-view.mjs";
3
+ import { useScrollDirection } from "../../../hooks/use-scroll-direction.mjs";
4
+ import { c } from "react/compiler-runtime";
5
+ //#region src/molecules/breadcrumbs/breadcrumb/use-breadcrumb-store.ts
6
+ const useBreadcrumbStore = () => {
7
+ const $ = c(4);
8
+ let t0;
9
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
10
+ t0 = { threshold: 0 };
11
+ $[0] = t0;
12
+ } else t0 = $[0];
13
+ const [navRef, isInView] = useInView(t0);
14
+ const direction = useScrollDirection();
15
+ const isVisible = !isInView && direction === "down";
16
+ let t1;
17
+ if ($[1] !== isVisible || $[2] !== navRef) {
18
+ t1 = { state: {
19
+ navRef,
20
+ isVisible
21
+ } };
22
+ $[1] = isVisible;
23
+ $[2] = navRef;
24
+ $[3] = t1;
25
+ } else t1 = $[3];
26
+ return t1;
27
+ };
28
+ //#endregion
29
+ export { useBreadcrumbStore };
@@ -0,0 +1,2 @@
1
+ import { PageNavigationProps, PaginationNavigation } from "./pagination-navigation.mjs";
2
+ export { type PageNavigationProps, PaginationNavigation };
@@ -0,0 +1,11 @@
1
+ import { FC } from "react";
2
+ //#region src/molecules/buttons/pagination-navigation/pagination-navigation.d.ts
3
+ interface PageNavigationProps {
4
+ previousPageUrl: string | undefined;
5
+ onPreviousClick?: () => void;
6
+ nextPageUrl: string | undefined;
7
+ onNextClick?: () => void;
8
+ }
9
+ declare const PaginationNavigation: FC<PageNavigationProps>;
10
+ //#endregion
11
+ export { PageNavigationProps, PaginationNavigation };
@@ -0,0 +1,17 @@
1
+ import { BluePillLink, RedPillLink } from "../../links/pills-links/pills-links.mjs";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ //#region src/molecules/buttons/pagination-navigation/pagination-navigation.tsx
4
+ const PaginationNavigation = ({ previousPageUrl, onPreviousClick, nextPageUrl, onNextClick }) => /* @__PURE__ */ jsxs("div", {
5
+ className: "flex justify-center gap-5 p-5",
6
+ children: [previousPageUrl && /* @__PURE__ */ jsx(BluePillLink, {
7
+ to: previousPageUrl,
8
+ onClick: onPreviousClick,
9
+ children: "Previous"
10
+ }), nextPageUrl && /* @__PURE__ */ jsx(RedPillLink, {
11
+ to: nextPageUrl,
12
+ onClick: onNextClick,
13
+ children: "Next"
14
+ })]
15
+ });
16
+ //#endregion
17
+ export { PaginationNavigation };
@@ -0,0 +1,2 @@
1
+ import { BluePillButton, RedPillButton } from "./pills-buttons.mjs";
2
+ export { BluePillButton, RedPillButton };
@@ -0,0 +1,10 @@
1
+ import { FC, PropsWithChildren } from "react";
2
+ //#region src/molecules/buttons/pills-buttons/pills-buttons.d.ts
3
+ type PillProps = PropsWithChildren<{
4
+ onClick: () => void;
5
+ disabled?: boolean;
6
+ }>;
7
+ declare const RedPillButton: FC<PillProps>;
8
+ declare const BluePillButton: FC<PillProps>;
9
+ //#endregion
10
+ export { BluePillButton, RedPillButton };
@@ -0,0 +1,55 @@
1
+ "use client";
2
+ import { BluePill, RedPill } from "../../../atoms/effects/pills/pills.mjs";
3
+ import { c } from "react/compiler-runtime";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region src/molecules/buttons/pills-buttons/pills-buttons.tsx
6
+ const RedPillButton = (t0) => {
7
+ const $ = c(6);
8
+ const { children, onClick, disabled } = t0;
9
+ let t1;
10
+ if ($[0] !== children) {
11
+ t1 = /* @__PURE__ */ jsx(RedPill, { children });
12
+ $[0] = children;
13
+ $[1] = t1;
14
+ } else t1 = $[1];
15
+ let t2;
16
+ if ($[2] !== disabled || $[3] !== onClick || $[4] !== t1) {
17
+ t2 = /* @__PURE__ */ jsx("button", {
18
+ className: "bg-transparent border-none cursor-pointer p-0",
19
+ onClick,
20
+ disabled,
21
+ children: t1
22
+ });
23
+ $[2] = disabled;
24
+ $[3] = onClick;
25
+ $[4] = t1;
26
+ $[5] = t2;
27
+ } else t2 = $[5];
28
+ return t2;
29
+ };
30
+ const BluePillButton = (t0) => {
31
+ const $ = c(6);
32
+ const { children, onClick, disabled } = t0;
33
+ let t1;
34
+ if ($[0] !== children) {
35
+ t1 = /* @__PURE__ */ jsx(BluePill, { children });
36
+ $[0] = children;
37
+ $[1] = t1;
38
+ } else t1 = $[1];
39
+ let t2;
40
+ if ($[2] !== disabled || $[3] !== onClick || $[4] !== t1) {
41
+ t2 = /* @__PURE__ */ jsx("button", {
42
+ className: "bg-transparent border-none cursor-pointer p-0",
43
+ onClick,
44
+ disabled,
45
+ children: t1
46
+ });
47
+ $[2] = disabled;
48
+ $[3] = onClick;
49
+ $[4] = t1;
50
+ $[5] = t2;
51
+ } else t2 = $[5];
52
+ return t2;
53
+ };
54
+ //#endregion
55
+ export { BluePillButton, RedPillButton };
@@ -0,0 +1,13 @@
1
+ //#region src/molecules/buttons/segmented-control/segmented-control.d.ts
2
+ type SegmentOption<T extends string> = {
3
+ label: string;
4
+ value: T;
5
+ };
6
+ type SegmentedControlProps<T extends string> = {
7
+ options: SegmentOption<T>[];
8
+ value: T;
9
+ onChange: (value: T) => void;
10
+ };
11
+ declare const SegmentedControl: <T extends string>({ options, value, onChange }: SegmentedControlProps<T>) => import("react/jsx-runtime").JSX.Element;
12
+ //#endregion
13
+ export { SegmentOption, SegmentedControl };
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ import { GlassmorphismBackground } from "../../../atoms/effects/glassmorphism-background/glassmorphism-background.mjs";
3
+ import { useSegmentedControlStore } from "./use-segmented-control-store.mjs";
4
+ import { c } from "react/compiler-runtime";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/molecules/buttons/segmented-control/segmented-control.tsx
7
+ const SegmentedControl = (t0) => {
8
+ const $ = c(9);
9
+ const { options, value, onChange } = t0;
10
+ const { effects } = useSegmentedControlStore(onChange);
11
+ const { triggerChange } = effects;
12
+ let t1;
13
+ if ($[0] !== options || $[1] !== triggerChange || $[2] !== value) {
14
+ let t2;
15
+ if ($[4] !== triggerChange || $[5] !== value) {
16
+ t2 = (option) => {
17
+ const isActive = option.value === value;
18
+ return /* @__PURE__ */ jsx("button", {
19
+ onClick: triggerChange(option.value),
20
+ className: `cursor-pointer rounded-full px-5 py-2 text-sm font-medium transition-all duration-200 border-none ${isActive ? "bg-accent text-text-above-primary" : "hover:bg-white/10"}`,
21
+ children: option.label
22
+ }, option.value);
23
+ };
24
+ $[4] = triggerChange;
25
+ $[5] = value;
26
+ $[6] = t2;
27
+ } else t2 = $[6];
28
+ t1 = options.map(t2);
29
+ $[0] = options;
30
+ $[1] = triggerChange;
31
+ $[2] = value;
32
+ $[3] = t1;
33
+ } else t1 = $[3];
34
+ let t2;
35
+ if ($[7] !== t1) {
36
+ t2 = /* @__PURE__ */ jsx(GlassmorphismBackground, {
37
+ className: "rounded-full p-1! gap-1",
38
+ children: t1
39
+ });
40
+ $[7] = t1;
41
+ $[8] = t2;
42
+ } else t2 = $[8];
43
+ return t2;
44
+ };
45
+ //#endregion
46
+ export { SegmentedControl };
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ //#region src/molecules/buttons/segmented-control/use-segmented-control-store.ts
3
+ const useSegmentedControlStore = (onChange) => {
4
+ const triggerChange = (value) => () => onChange(value);
5
+ return { effects: { triggerChange } };
6
+ };
7
+ //#endregion
8
+ export { useSegmentedControlStore };
@@ -0,0 +1,2 @@
1
+ import { SocialContact, SocialContactProps } from "./social-contact.mjs";
2
+ export { SocialContact, type SocialContactProps };
@@ -0,0 +1,10 @@
1
+ import { FC, ReactElement } from "react";
2
+ //#region src/molecules/buttons/social-contact/social-contact.d.ts
3
+ interface SocialContactProps {
4
+ link: string;
5
+ onClick?: () => void;
6
+ icon: ReactElement;
7
+ }
8
+ declare const SocialContact: FC<SocialContactProps>;
9
+ //#endregion
10
+ export { SocialContact, SocialContactProps };
@@ -0,0 +1,13 @@
1
+ import { CallToActionExternalWithTracking } from "../../../atoms/call-to-actions/call-to-action-external-with-tracking/call-to-action-external-with-tracking.mjs";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/molecules/buttons/social-contact/social-contact.tsx
4
+ const SocialContact = ({ link, onClick, icon }) => /* @__PURE__ */ jsx(CallToActionExternalWithTracking, {
5
+ className: "min-w-auto",
6
+ href: link,
7
+ onClick,
8
+ target: "_blank",
9
+ rel: "noopener noreferrer",
10
+ children: icon
11
+ });
12
+ //#endregion
13
+ export { SocialContact };
@@ -0,0 +1,2 @@
1
+ import { Tag, TagProps } from "./tag.mjs";
2
+ export { Tag, type TagProps };
@@ -0,0 +1,17 @@
1
+ import { LinkComponent, PrefetchStrategy } from "../../../atoms/links/anchor-link/anchor-link.mjs";
2
+ import "../../../atoms/links/anchor-link/index.mjs";
3
+ import { FC } from "react";
4
+ //#region src/molecules/buttons/tag/tag.d.ts
5
+ interface TagContentProps {
6
+ big: boolean;
7
+ }
8
+ type TagProps = TagContentProps & {
9
+ link: string;
10
+ tag: string;
11
+ prefetch?: PrefetchStrategy;
12
+ onClick?: () => void;
13
+ linkComponent?: LinkComponent;
14
+ };
15
+ declare const Tag: FC<TagProps>;
16
+ //#endregion
17
+ export { Tag, TagProps };
@@ -0,0 +1,20 @@
1
+ import { Chip } from "../../../atoms/chip/chip.mjs";
2
+ import { InternalLink } from "../../../atoms/links/internal-link/internal-link.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/molecules/buttons/tag/tag.tsx
5
+ const Tag = ({ tag, link, big, onClick, prefetch = "hover", linkComponent }) => {
6
+ return /* @__PURE__ */ jsx(InternalLink, {
7
+ linkComponent,
8
+ className: "inline-block no-underline",
9
+ onClick,
10
+ prefetch,
11
+ to: link,
12
+ children: /* @__PURE__ */ jsx(Chip, {
13
+ big,
14
+ className: big ? "mr-4 mb-6" : "mr-1 mb-1",
15
+ children: tag
16
+ })
17
+ });
18
+ };
19
+ //#endregion
20
+ export { Tag };
@@ -0,0 +1,2 @@
1
+ import { TerminalButton, TerminalButtonProps } from "./terminal-button.mjs";
2
+ export { TerminalButton, type TerminalButtonProps };
@@ -0,0 +1,15 @@
1
+ import { LinkComponent } from "../../../atoms/links/anchor-link/anchor-link.mjs";
2
+ import "../../../atoms/links/anchor-link/index.mjs";
3
+ import { FC } from "react";
4
+ //#region src/molecules/buttons/terminal-button/terminal-button.d.ts
5
+ interface TerminalButtonProps {
6
+ label: string;
7
+ to?: string;
8
+ onClick?: () => void;
9
+ className?: string;
10
+ ariaExpanded?: boolean;
11
+ linkComponent?: LinkComponent;
12
+ }
13
+ declare const TerminalButton: FC<TerminalButtonProps>;
14
+ //#endregion
15
+ export { TerminalButton, TerminalButtonProps };
@@ -0,0 +1,38 @@
1
+ import { Button } from "../../../atoms/buttons/button/button.mjs";
2
+ import { InternalLink } from "../../../atoms/links/internal-link/internal-link.mjs";
3
+ import { Cursor } from "../../../atoms/typography/terminal-blocks/terminal-blocks.mjs";
4
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/molecules/buttons/terminal-button/terminal-button.tsx
6
+ const TerminalContent = ({ label }) => /* @__PURE__ */ jsxs(Fragment, { children: [
7
+ ">",
8
+ " ",
9
+ label,
10
+ /* @__PURE__ */ jsx(Cursor, {})
11
+ ] });
12
+ const TerminalButton = ({ label, to, onClick, className, ariaExpanded, linkComponent }) => {
13
+ const buttonClassName = `w-fit${className ? ` ${className}` : ""}`;
14
+ if (to) return /* @__PURE__ */ jsx(Button, {
15
+ className: buttonClassName,
16
+ children: /* @__PURE__ */ jsx(InternalLink, {
17
+ linkComponent,
18
+ to,
19
+ onClick,
20
+ className: "font-mono text-lg no-underline hover:no-underline",
21
+ children: /* @__PURE__ */ jsx("span", {
22
+ className: "text-shadow-sm text-accent",
23
+ children: /* @__PURE__ */ jsx(TerminalContent, { label })
24
+ })
25
+ })
26
+ });
27
+ return /* @__PURE__ */ jsx(Button, {
28
+ onClick,
29
+ "aria-expanded": ariaExpanded,
30
+ className: buttonClassName,
31
+ children: /* @__PURE__ */ jsx("span", {
32
+ className: "font-mono text-lg text-shadow-sm text-accent",
33
+ children: /* @__PURE__ */ jsx(TerminalContent, { label })
34
+ })
35
+ });
36
+ };
37
+ //#endregion
38
+ export { TerminalButton };
@@ -0,0 +1,9 @@
1
+ import { FC, PropsWithChildren } from "react";
2
+ //#region src/molecules/chart/chart-panel/chart-panel.d.ts
3
+ interface ChartPanelProps {
4
+ title?: string;
5
+ description?: string;
6
+ }
7
+ declare const ChartPanel: FC<PropsWithChildren<ChartPanelProps>>;
8
+ //#endregion
9
+ export { ChartPanel, ChartPanelProps };
@@ -0,0 +1,12 @@
1
+ import { SectionHeading } from "../../typography/section-heading/section-heading.mjs";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ //#region src/molecules/chart/chart-panel/chart-panel.tsx
4
+ const ChartPanel = ({ title, description, children }) => /* @__PURE__ */ jsxs("section", {
5
+ className: "glow-container bg-accent-alpha-10 h-full p-6",
6
+ children: [title && /* @__PURE__ */ jsx(SectionHeading, {
7
+ title,
8
+ description
9
+ }), children]
10
+ });
11
+ //#endregion
12
+ export { ChartPanel };
@@ -0,0 +1,2 @@
1
+ import { ChartPanel, ChartPanelProps } from "./chart-panel.mjs";
2
+ export { ChartPanel, type ChartPanelProps };
@@ -0,0 +1,8 @@
1
+ import { TooltipContentProps } from "recharts";
2
+ //#region src/molecules/chart/chart-tooltip/chart-tooltip.d.ts
3
+ interface ChartTooltipProps extends Partial<TooltipContentProps> {
4
+ labelPrefix?: string;
5
+ }
6
+ declare const ChartTooltip: ({ active, payload, label, labelPrefix }: ChartTooltipProps) => import("react/jsx-runtime").JSX.Element | null;
7
+ //#endregion
8
+ export { ChartTooltip, ChartTooltipProps };
@@ -0,0 +1,18 @@
1
+ import { jsxs } from "react/jsx-runtime";
2
+ //#region src/molecules/chart/chart-tooltip/chart-tooltip.tsx
3
+ const ChartTooltip = ({ active, payload, label, labelPrefix = "n: " }) => active && payload ? /* @__PURE__ */ jsxs("div", {
4
+ style: {
5
+ background: "var(--color-primary-dark)",
6
+ color: "var(--color-accent)",
7
+ border: "1px solid var(--color-accent)",
8
+ borderRadius: "8px",
9
+ padding: "8px"
10
+ },
11
+ children: [/* @__PURE__ */ jsxs("strong", { children: [labelPrefix, label] }), payload.map((entry, i) => /* @__PURE__ */ jsxs("div", { children: [
12
+ entry.name,
13
+ ": ",
14
+ entry.value
15
+ ] }, i))]
16
+ }) : null;
17
+ //#endregion
18
+ export { ChartTooltip };
@@ -0,0 +1,2 @@
1
+ import { ChartTooltip, ChartTooltipProps } from "./chart-tooltip.mjs";
2
+ export { ChartTooltip, type ChartTooltipProps };
@@ -0,0 +1,15 @@
1
+ import { FC } from "react";
2
+ //#region src/molecules/chart/donut-chart/donut-chart.d.ts
3
+ interface DonutDatum {
4
+ label: string;
5
+ value: number;
6
+ }
7
+ interface DonutChartProps {
8
+ data: DonutDatum[];
9
+ colors?: string[];
10
+ centerLabel?: string;
11
+ centerSublabel?: string;
12
+ }
13
+ declare const DonutChart: FC<DonutChartProps>;
14
+ //#endregion
15
+ export { DonutChart, DonutDatum };