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,89 @@
1
+ "use client";
2
+ import { c } from "react/compiler-runtime";
3
+ import { useEffect, useState } from "react";
4
+ //#region src/hooks/use-typewriter.tsx
5
+ const useTypewriter = (lines, t0, t1) => {
6
+ const $ = c(20);
7
+ const speed = t0 === void 0 ? 50 : t0;
8
+ const shouldStart = t1 === void 0 ? true : t1;
9
+ const [lineIndex, setLineIndex] = useState(0);
10
+ const [charIndex, setCharIndex] = useState(0);
11
+ const [isWaitingForDelay, setIsWaitingForDelay] = useState(true);
12
+ const isComplete = lineIndex >= lines.length;
13
+ const currentLine = isComplete ? null : lines[lineIndex];
14
+ let t2;
15
+ if ($[0] !== charIndex || $[1] !== currentLine) {
16
+ t2 = currentLine ? currentLine.text.substring(0, charIndex) : "";
17
+ $[0] = charIndex;
18
+ $[1] = currentLine;
19
+ $[2] = t2;
20
+ } else t2 = $[2];
21
+ const currentText = t2;
22
+ let t3;
23
+ if ($[3] !== lineIndex || $[4] !== lines) {
24
+ t3 = lines.slice(0, lineIndex);
25
+ $[3] = lineIndex;
26
+ $[4] = lines;
27
+ $[5] = t3;
28
+ } else t3 = $[5];
29
+ const completedLines = t3;
30
+ let t4;
31
+ let t5;
32
+ if ($[6] !== charIndex || $[7] !== isComplete || $[8] !== isWaitingForDelay || $[9] !== lineIndex || $[10] !== lines || $[11] !== shouldStart || $[12] !== speed) {
33
+ t4 = () => {
34
+ if (isComplete || !shouldStart) return;
35
+ const line = lines[lineIndex];
36
+ if (isWaitingForDelay) {
37
+ const delayTimer = setTimeout(() => setIsWaitingForDelay(false), line.delay || 0);
38
+ return () => clearTimeout(delayTimer);
39
+ }
40
+ const timer = setTimeout(() => {
41
+ if (charIndex >= line.text.length) {
42
+ setLineIndex(lineIndex + 1);
43
+ setCharIndex(0);
44
+ setIsWaitingForDelay(true);
45
+ } else setCharIndex(charIndex + 1);
46
+ }, speed);
47
+ return () => clearTimeout(timer);
48
+ };
49
+ t5 = [
50
+ lineIndex,
51
+ charIndex,
52
+ lines,
53
+ speed,
54
+ isComplete,
55
+ isWaitingForDelay,
56
+ shouldStart
57
+ ];
58
+ $[6] = charIndex;
59
+ $[7] = isComplete;
60
+ $[8] = isWaitingForDelay;
61
+ $[9] = lineIndex;
62
+ $[10] = lines;
63
+ $[11] = shouldStart;
64
+ $[12] = speed;
65
+ $[13] = t4;
66
+ $[14] = t5;
67
+ } else {
68
+ t4 = $[13];
69
+ t5 = $[14];
70
+ }
71
+ useEffect(t4, t5);
72
+ let t6;
73
+ if ($[15] !== completedLines || $[16] !== currentLine || $[17] !== currentText || $[18] !== isComplete) {
74
+ t6 = {
75
+ completedLines,
76
+ currentLine,
77
+ currentText,
78
+ isComplete
79
+ };
80
+ $[15] = completedLines;
81
+ $[16] = currentLine;
82
+ $[17] = currentText;
83
+ $[18] = isComplete;
84
+ $[19] = t6;
85
+ } else t6 = $[19];
86
+ return t6;
87
+ };
88
+ //#endregion
89
+ export { useTypewriter };
@@ -0,0 +1,4 @@
1
+ //#region src/hooks/use-webgpu-supported.d.ts
2
+ declare const useWebGpuSupported: () => boolean | null;
3
+ //#endregion
4
+ export { useWebGpuSupported };
@@ -0,0 +1,16 @@
1
+ import { useSyncExternalStore } from "react";
2
+ import { isWebGPUSupported } from "matrix-rain-webgpu";
3
+ //#region src/hooks/use-webgpu-supported.ts
4
+ const detectWebGpuSupported = () => {
5
+ if (typeof navigator === "undefined") return null;
6
+ return isWebGPUSupported();
7
+ };
8
+ const webGpuSupported = detectWebGpuSupported();
9
+ const subscribe = () => () => {};
10
+ const getSnapshot = () => webGpuSupported;
11
+ const getServerSnapshot = () => null;
12
+ const useWebGpuSupported = () => {
13
+ return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
14
+ };
15
+ //#endregion
16
+ export { useWebGpuSupported };
@@ -0,0 +1,153 @@
1
+ import { CommandPaletteTrigger } from "./state/command-palette/command-palette-trigger.mjs";
2
+ import { MotionDiv } from "./atoms/animation/motion-div/motion-div.mjs";
3
+ import "./atoms/animation/motion-div/index.mjs";
4
+ import { Button } from "./atoms/buttons/button/button.mjs";
5
+ import "./atoms/buttons/button/index.mjs";
6
+ import { Switch } from "./atoms/buttons/switch/switch.mjs";
7
+ import "./atoms/buttons/switch/index.mjs";
8
+ import { CallToActionExternalWithTracking } from "./atoms/call-to-actions/call-to-action-external-with-tracking/call-to-action-external-with-tracking.mjs";
9
+ import "./atoms/call-to-actions/call-to-action-external-with-tracking/index.mjs";
10
+ import { AnchorLink, LinkComponent, LinkComponentProps, PrefetchStrategy } from "./atoms/links/anchor-link/anchor-link.mjs";
11
+ import "./atoms/links/anchor-link/index.mjs";
12
+ import { CallToActionInternalWithTracking, CallToActionInternalWithTrackingProps } from "./atoms/call-to-actions/call-to-action-internal-with-tracking/call-to-action-internal-with-tracking.mjs";
13
+ import "./atoms/call-to-actions/call-to-action-internal-with-tracking/index.mjs";
14
+ import { Chip, ChipProps } from "./atoms/chip/chip.mjs";
15
+ import "./atoms/chip/index.mjs";
16
+ import { GlassmorphismBackground } from "./atoms/effects/glassmorphism-background/glassmorphism-background.mjs";
17
+ import "./atoms/effects/glassmorphism-background/index.mjs";
18
+ import { ImageComponent, ImageComponentProps, ImagePlaceholder, ImageSource, PlainImage } from "./atoms/effects/plain-image/plain-image.mjs";
19
+ import "./atoms/effects/plain-image/index.mjs";
20
+ import { ImageGlow, ImageGlowProps } from "./atoms/effects/image-glow/image-glow.mjs";
21
+ import "./atoms/effects/image-glow/index.mjs";
22
+ import { imageShimmerPlaceholder } from "./atoms/effects/image-shimmer-placeholder/image-shimmer-placeholder.mjs";
23
+ import "./atoms/effects/image-shimmer-placeholder/index.mjs";
24
+ import { MatrixRain } from "./atoms/effects/matrix-rain/matrix-rain/matrix-rain.mjs";
25
+ import "./atoms/effects/matrix-rain/matrix-rain/index.mjs";
26
+ import { Overlay, OverlayProps } from "./atoms/effects/overlay/overlay.mjs";
27
+ import "./atoms/effects/overlay/index.mjs";
28
+ import { BluePill, RedPill, RedPillNoReflection } from "./atoms/effects/pills/pills.mjs";
29
+ import "./atoms/effects/pills/index.mjs";
30
+ import { ChatIcon } from "./atoms/icons/chat-icon/chat-icon.mjs";
31
+ import { CopiedIcon, CopyErrorIcon, CopyIcon } from "./atoms/icons/copy-icon/copy-icon.mjs";
32
+ import { RoundedIcon } from "./atoms/icons/rounded-icon/rounded-icon.mjs";
33
+ import "./atoms/icons/rounded-icon/index.mjs";
34
+ import { ExternalLink } from "./atoms/links/external-link/external-link.mjs";
35
+ import "./atoms/links/external-link/index.mjs";
36
+ import { InternalLink, InternalLinkProps } from "./atoms/links/internal-link/internal-link.mjs";
37
+ import "./atoms/links/internal-link/index.mjs";
38
+ import { Loader } from "./atoms/loader/loader/loader.mjs";
39
+ import "./atoms/loader/loader/index.mjs";
40
+ import { InputField } from "./atoms/typography/input-field/input-field.mjs";
41
+ import "./atoms/typography/input-field/index.mjs";
42
+ import { Label, LabelProps } from "./atoms/typography/label/label.mjs";
43
+ import "./atoms/typography/label/index.mjs";
44
+ import { Cursor, ErrorText, QuoteText, SuccessText, TerminalLine, TerminalQuoteLine } from "./atoms/typography/terminal-blocks/terminal-blocks.mjs";
45
+ import "./atoms/typography/terminal-blocks/index.mjs";
46
+ import { Textarea } from "./atoms/typography/textarea/textarea.mjs";
47
+ import "./atoms/typography/textarea/index.mjs";
48
+ import { Accordion } from "./molecules/accordion/accordion/accordion.mjs";
49
+ import "./molecules/accordion/accordion/index.mjs";
50
+ import { Breadcrumb, BreadcrumbItem, BreadcrumbProps } from "./molecules/breadcrumbs/breadcrumb/breadcrumb.mjs";
51
+ import "./molecules/breadcrumbs/breadcrumb/index.mjs";
52
+ import { PageNavigationProps, PaginationNavigation } from "./molecules/buttons/pagination-navigation/pagination-navigation.mjs";
53
+ import "./molecules/buttons/pagination-navigation/index.mjs";
54
+ import { BluePillButton, RedPillButton } from "./molecules/buttons/pills-buttons/pills-buttons.mjs";
55
+ import "./molecules/buttons/pills-buttons/index.mjs";
56
+ import { SegmentOption, SegmentedControl } from "./molecules/buttons/segmented-control/segmented-control.mjs";
57
+ import { SocialContact, SocialContactProps } from "./molecules/buttons/social-contact/social-contact.mjs";
58
+ import "./molecules/buttons/social-contact/index.mjs";
59
+ import { Tag, TagProps } from "./molecules/buttons/tag/tag.mjs";
60
+ import "./molecules/buttons/tag/index.mjs";
61
+ import { TerminalButton, TerminalButtonProps } from "./molecules/buttons/terminal-button/terminal-button.mjs";
62
+ import "./molecules/buttons/terminal-button/index.mjs";
63
+ import { ContentContainer } from "./molecules/containers/content-container/content-container.mjs";
64
+ import "./molecules/containers/content-container/index.mjs";
65
+ import { ControlSlider } from "./molecules/controls/control-slider/control-slider.mjs";
66
+ import "./molecules/controls/control-slider/index.mjs";
67
+ import { MatrixBackground } from "./molecules/effects/matrix-background/matrix-background.mjs";
68
+ import "./molecules/effects/matrix-background/index.mjs";
69
+ import { MatrixHeaderBackground } from "./molecules/effects/matrix-header-background/matrix-header-background.mjs";
70
+ import "./molecules/effects/matrix-header-background/index.mjs";
71
+ import { MatrixTerminal } from "./molecules/effects/matrix-terminal/matrix-terminal.mjs";
72
+ import "./molecules/effects/matrix-terminal/index.mjs";
73
+ import { FilterInput, FilterInputProps } from "./molecules/form/filter-input/filter-input.mjs";
74
+ import "./molecules/form/filter-input/index.mjs";
75
+ import { FormErrorSummary, FormErrorSummaryProps } from "./molecules/form/form-error-summary/form-error-summary.mjs";
76
+ import "./molecules/form/form-error-summary/index.mjs";
77
+ import { FormField, FormFieldProps } from "./molecules/form/form-field/form-field.mjs";
78
+ import "./molecules/form/form-field/index.mjs";
79
+ import { FormSuccessMessage, FormSuccessMessageProps } from "./molecules/form/form-success-message/form-success-message.mjs";
80
+ import "./molecules/form/form-success-message/index.mjs";
81
+ import { FormTextarea, FormTextareaProps } from "./molecules/form/form-textarea/form-textarea.mjs";
82
+ import "./molecules/form/form-textarea/index.mjs";
83
+ import { LightboxImage } from "./molecules/lightbox-image/lightbox-image.mjs";
84
+ import "./molecules/lightbox-image/index.mjs";
85
+ import { BluePillLink, PillProps, RedPillLink } from "./molecules/links/pills-links/pills-links.mjs";
86
+ import "./molecules/links/pills-links/index.mjs";
87
+ import { Close } from "./molecules/menu/close/close.mjs";
88
+ import "./molecules/menu/close/index.mjs";
89
+ import { DropdownMenu } from "./molecules/menu/dropdown-menu/dropdown-menu.mjs";
90
+ import "./molecules/menu/dropdown-menu/index.mjs";
91
+ import { HamburgerMenu } from "./molecules/menu/hamburger-menu/hamburger-menu.mjs";
92
+ import "./molecules/menu/hamburger-menu/index.mjs";
93
+ import { MenuItem, MenuItemProps } from "./molecules/menu/menu-item/menu-item.mjs";
94
+ import "./molecules/menu/menu-item/index.mjs";
95
+ import { StatCard, StatCardProps } from "./molecules/stat-card/stat-card.mjs";
96
+ import "./molecules/stat-card/index.mjs";
97
+ import { TerminalListItem, TerminalListItemProps } from "./molecules/terminal-list-item/terminal-list-item.mjs";
98
+ import "./molecules/terminal-list-item/index.mjs";
99
+ import { TerminalProgressBar } from "./molecules/terminal-progress-bar/terminal-progress-bar.mjs";
100
+ import "./molecules/terminal-progress-bar/index.mjs";
101
+ import { PageTitle } from "./molecules/typography/page-title/page-title.mjs";
102
+ import "./molecules/typography/page-title/index.mjs";
103
+ import { ParagraphTitleWithIcon } from "./molecules/typography/paragraph-title-with-icon/paragraph-title-with-icon.mjs";
104
+ import "./molecules/typography/paragraph-title-with-icon/index.mjs";
105
+ import { SectionHeading, SectionHeadingProps } from "./molecules/typography/section-heading/section-heading.mjs";
106
+ import "./molecules/typography/section-heading/index.mjs";
107
+ import { SelfHostedVideo } from "./molecules/video/self-hosted-video/self-hosted-video.mjs";
108
+ import "./molecules/video/self-hosted-video/index.mjs";
109
+ import { Youtube } from "./molecules/video/youtube/youtube.mjs";
110
+ import "./molecules/video/youtube/index.mjs";
111
+ import { CookieConsentBanner } from "./organism/cookie-consent-banner/cookie-consent-banner.mjs";
112
+ import { FooterNavTrackingCallbacks, FooterSocialTrackingCallbacks } from "./organism/footer/use-footer-store.mjs";
113
+ import { SocialContactLinks, SocialContacts, SocialContactsProps } from "./organism/social-contacts/social-contacts.mjs";
114
+ import "./organism/social-contacts/index.mjs";
115
+ import { Footer, FooterNavHrefs, FooterProps } from "./organism/footer/footer.mjs";
116
+ import "./organism/footer/index.mjs";
117
+ import { BrandHeader, BrandHeaderProps } from "./organism/header/brand-header/brand-header.mjs";
118
+ import "./organism/header/brand-header/index.mjs";
119
+ import { ImageCarousel, ImageCarouselProps } from "./organism/image-carousel/image-carousel.mjs";
120
+ import "./organism/image-carousel/index.mjs";
121
+ import { Lightbox } from "./organism/lightbox/lightbox.mjs";
122
+ import "./organism/lightbox/index.mjs";
123
+ import { LoadingBar } from "./organism/loading-bar/loading-bar.mjs";
124
+ import { OsModifierKey, useOsModifierKey } from "./hooks/use-os-modifier-key.mjs";
125
+ import { MenuTrackingCallbacks } from "./organism/menu/use-menu-store.mjs";
126
+ import { Menu, MenuNavHrefs, MenuProps } from "./organism/menu/menu.mjs";
127
+ import "./organism/menu/index.mjs";
128
+ import { ProfileHero, ProfileHeroProps } from "./organism/profile-hero/profile-hero.mjs";
129
+ import "./organism/profile-hero/index.mjs";
130
+ import { ProfilePhoto, ProfilePhotoProps } from "./organism/profile-photo/profile-photo.mjs";
131
+ import "./organism/profile-photo/index.mjs";
132
+ import { ContentProgressBar } from "./organism/reading-content-progress-bar/reading-content-progress-bar.mjs";
133
+ import "./organism/reading-content-progress-bar/index.mjs";
134
+ import { useClipboardAvailable } from "./hooks/use-clipboard-available.mjs";
135
+ import { useDeviceCapabilities } from "./hooks/use-device-capabilities.mjs";
136
+ import { useGlassmorphism } from "./hooks/use-glassmorphism.mjs";
137
+ import { useInView } from "./hooks/use-in-view.mjs";
138
+ import { useInViewList } from "./hooks/use-in-view-list.mjs";
139
+ import { useIsIOS } from "./hooks/use-is-ios.mjs";
140
+ import { useLockBodyScroll } from "./hooks/use-lock-body-scroll.mjs";
141
+ import { MATRIX_RAIN_DEFAULTS, MATRIX_RAIN_PRESETS, MatrixRainProps, MatrixRainSettings, matrixSettingsChangeEvent, readMatrixSettings, settingsToProps, writeMatrixSettings } from "./state/matrix-rain/matrix-settings.mjs";
142
+ import { useMatrixSettingsStore } from "./hooks/use-matrix-settings-store.mjs";
143
+ import { useMotionStore } from "./hooks/use-motion-store.mjs";
144
+ import { useReadingProgress } from "./hooks/use-reading-progress.mjs";
145
+ import { useReducedMotions } from "./hooks/use-reduced-motions.mjs";
146
+ import { ScrollDirection, useScrollDirection } from "./hooks/use-scroll-direction.mjs";
147
+ import { useWebGpuSupported } from "./hooks/use-webgpu-supported.mjs";
148
+ import { useTypewriter } from "./hooks/use-typewriter.mjs";
149
+ import { CommandPaletteClose, CommandPaletteContext } from "./state/command-palette/command-palette-context.mjs";
150
+ import { closeCommandPalette, commandPaletteCloseEvent, commandPaletteOpenEvent, openCommandPalette } from "./state/command-palette/command-palette-events.mjs";
151
+ import { LightboxOpenDetail, lightboxOpenEvent, openLightbox } from "./state/lightbox/lightbox-events.mjs";
152
+ import { hasMotion, motionChangeEvent, writeMotion } from "./state/motion/motion.mjs";
153
+ export { Accordion, AnchorLink, BluePill, BluePillButton, BluePillLink, BrandHeader, type BrandHeaderProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, CallToActionExternalWithTracking, CallToActionInternalWithTracking, type CallToActionInternalWithTrackingProps, ChatIcon, Chip, type ChipProps, Close, CommandPaletteClose, CommandPaletteContext, CommandPaletteTrigger, ContentContainer, ContentProgressBar, ControlSlider, CookieConsentBanner, CopiedIcon, CopyErrorIcon, CopyIcon, Cursor, DropdownMenu, ErrorText, ExternalLink, FilterInput, type FilterInputProps, Footer, type FooterNavHrefs, type FooterNavTrackingCallbacks, type FooterProps, type FooterSocialTrackingCallbacks, FormErrorSummary, type FormErrorSummaryProps, FormField, type FormFieldProps, FormSuccessMessage, type FormSuccessMessageProps, FormTextarea, type FormTextareaProps, GlassmorphismBackground, HamburgerMenu, ImageCarousel, type ImageCarouselProps, type ImageComponent, type ImageComponentProps, ImageGlow, type ImageGlowProps, type ImagePlaceholder, type ImageSource, InputField, InternalLink, type InternalLinkProps, Label, type LabelProps, Lightbox, LightboxImage, LightboxOpenDetail, type LinkComponent, type LinkComponentProps, Loader, LoadingBar, MATRIX_RAIN_DEFAULTS, MATRIX_RAIN_PRESETS, MatrixBackground, MatrixHeaderBackground, MatrixRain, MatrixRainProps, MatrixRainSettings, MatrixTerminal, Menu, MenuItem, type MenuItemProps, type MenuNavHrefs, type MenuProps, type MenuTrackingCallbacks, MotionDiv, OsModifierKey, Overlay, type OverlayProps, type PageNavigationProps, PageTitle, PaginationNavigation, ParagraphTitleWithIcon, type PillProps, PlainImage, type PrefetchStrategy, ProfileHero, type ProfileHeroProps, ProfilePhoto, type ProfilePhotoProps, QuoteText, RedPill, RedPillButton, RedPillLink, RedPillNoReflection, RoundedIcon, ScrollDirection, SectionHeading, type SectionHeadingProps, type SegmentOption, SegmentedControl, SelfHostedVideo, SocialContact, type SocialContactLinks, type SocialContactProps, SocialContacts, type SocialContactsProps, StatCard, type StatCardProps, SuccessText, Switch, Tag, type TagProps, TerminalButton, type TerminalButtonProps, TerminalLine, TerminalListItem, type TerminalListItemProps, TerminalProgressBar, TerminalQuoteLine, Textarea, Youtube, closeCommandPalette, commandPaletteCloseEvent, commandPaletteOpenEvent, hasMotion, imageShimmerPlaceholder, lightboxOpenEvent, matrixSettingsChangeEvent, motionChangeEvent, openCommandPalette, openLightbox, readMatrixSettings, settingsToProps, useClipboardAvailable, useDeviceCapabilities, useGlassmorphism, useInView, useInViewList, useIsIOS, useLockBodyScroll, useMatrixSettingsStore, useMotionStore, useOsModifierKey, useReadingProgress, useReducedMotions, useScrollDirection, useTypewriter, useWebGpuSupported, writeMatrixSettings, writeMotion };
package/dist/index.mjs ADDED
@@ -0,0 +1,88 @@
1
+ import { hasMotion, motionChangeEvent, writeMotion } from "./state/motion/motion.mjs";
2
+ import { useMotionStore } from "./hooks/use-motion-store.mjs";
3
+ import { MotionDiv } from "./atoms/animation/motion-div/motion-div.mjs";
4
+ import { Button } from "./atoms/buttons/button/button.mjs";
5
+ import { Switch } from "./atoms/buttons/switch/switch.mjs";
6
+ import { CallToActionExternalWithTracking } from "./atoms/call-to-actions/call-to-action-external-with-tracking/call-to-action-external-with-tracking.mjs";
7
+ import { AnchorLink } from "./atoms/links/anchor-link/anchor-link.mjs";
8
+ import { CallToActionInternalWithTracking } from "./atoms/call-to-actions/call-to-action-internal-with-tracking/call-to-action-internal-with-tracking.mjs";
9
+ import { Chip } from "./atoms/chip/chip.mjs";
10
+ import { useDeviceCapabilities } from "./hooks/use-device-capabilities.mjs";
11
+ import { useReducedMotions } from "./hooks/use-reduced-motions.mjs";
12
+ import { useGlassmorphism } from "./hooks/use-glassmorphism.mjs";
13
+ import { GlassmorphismBackground } from "./atoms/effects/glassmorphism-background/glassmorphism-background.mjs";
14
+ import { imageShimmerPlaceholder } from "./atoms/effects/image-shimmer-placeholder/image-shimmer-placeholder.mjs";
15
+ import { PlainImage } from "./atoms/effects/plain-image/plain-image.mjs";
16
+ import { ImageGlow } from "./atoms/effects/image-glow/image-glow.mjs";
17
+ import { useWebGpuSupported } from "./hooks/use-webgpu-supported.mjs";
18
+ import { MATRIX_RAIN_DEFAULTS, MATRIX_RAIN_PRESETS, matrixSettingsChangeEvent, readMatrixSettings, settingsToProps, writeMatrixSettings } from "./state/matrix-rain/matrix-settings.mjs";
19
+ import { useMatrixSettingsStore } from "./hooks/use-matrix-settings-store.mjs";
20
+ import { MatrixRain } from "./atoms/effects/matrix-rain/matrix-rain/matrix-rain.mjs";
21
+ import { useIsIOS } from "./hooks/use-is-ios.mjs";
22
+ import { useLockBodyScroll } from "./hooks/use-lock-body-scroll.mjs";
23
+ import { Overlay } from "./atoms/effects/overlay/overlay.mjs";
24
+ import { BluePill, RedPill, RedPillNoReflection } from "./atoms/effects/pills/pills.mjs";
25
+ import { RoundedIcon } from "./atoms/icons/rounded-icon/rounded-icon.mjs";
26
+ import { ChatIcon } from "./atoms/icons/chat-icon/chat-icon.mjs";
27
+ import { CopiedIcon, CopyErrorIcon, CopyIcon } from "./atoms/icons/copy-icon/copy-icon.mjs";
28
+ import { ExternalLink } from "./atoms/links/external-link/external-link.mjs";
29
+ import { InternalLink } from "./atoms/links/internal-link/internal-link.mjs";
30
+ import { Loader } from "./atoms/loader/loader/loader.mjs";
31
+ import { InputField } from "./atoms/typography/input-field/input-field.mjs";
32
+ import { Label } from "./atoms/typography/label/label.mjs";
33
+ import { Cursor, ErrorText, QuoteText, SuccessText, TerminalLine, TerminalQuoteLine } from "./atoms/typography/terminal-blocks/terminal-blocks.mjs";
34
+ import { Textarea } from "./atoms/typography/textarea/textarea.mjs";
35
+ import { Accordion } from "./molecules/accordion/accordion/accordion.mjs";
36
+ import { useInView } from "./hooks/use-in-view.mjs";
37
+ import { ScrollDirection, useScrollDirection } from "./hooks/use-scroll-direction.mjs";
38
+ import { Breadcrumb } from "./molecules/breadcrumbs/breadcrumb/breadcrumb.mjs";
39
+ import { BluePillLink, RedPillLink } from "./molecules/links/pills-links/pills-links.mjs";
40
+ import { PaginationNavigation } from "./molecules/buttons/pagination-navigation/pagination-navigation.mjs";
41
+ import { BluePillButton, RedPillButton } from "./molecules/buttons/pills-buttons/pills-buttons.mjs";
42
+ import { SegmentedControl } from "./molecules/buttons/segmented-control/segmented-control.mjs";
43
+ import { SocialContact } from "./molecules/buttons/social-contact/social-contact.mjs";
44
+ import { Tag } from "./molecules/buttons/tag/tag.mjs";
45
+ import { TerminalButton } from "./molecules/buttons/terminal-button/terminal-button.mjs";
46
+ import { ContentContainer } from "./molecules/containers/content-container/content-container.mjs";
47
+ import { ControlSlider } from "./molecules/controls/control-slider/control-slider.mjs";
48
+ import { MatrixBackground } from "./molecules/effects/matrix-background/matrix-background.mjs";
49
+ import { MatrixHeaderBackground } from "./molecules/effects/matrix-header-background/matrix-header-background.mjs";
50
+ import { useTypewriter } from "./hooks/use-typewriter.mjs";
51
+ import { MatrixTerminal } from "./molecules/effects/matrix-terminal/matrix-terminal.mjs";
52
+ import { FilterInput } from "./molecules/form/filter-input/filter-input.mjs";
53
+ import { FormErrorSummary } from "./molecules/form/form-error-summary/form-error-summary.mjs";
54
+ import { FormField } from "./molecules/form/form-field/form-field.mjs";
55
+ import { FormSuccessMessage } from "./molecules/form/form-success-message/form-success-message.mjs";
56
+ import { FormTextarea } from "./molecules/form/form-textarea/form-textarea.mjs";
57
+ import { lightboxOpenEvent, openLightbox } from "./state/lightbox/lightbox-events.mjs";
58
+ import { LightboxImage } from "./molecules/lightbox-image/lightbox-image.mjs";
59
+ import { Close } from "./molecules/menu/close/close.mjs";
60
+ import { MenuItem } from "./molecules/menu/menu-item/menu-item.mjs";
61
+ import { DropdownMenu } from "./molecules/menu/dropdown-menu/dropdown-menu.mjs";
62
+ import { HamburgerMenu } from "./molecules/menu/hamburger-menu/hamburger-menu.mjs";
63
+ import { StatCard } from "./molecules/stat-card/stat-card.mjs";
64
+ import { TerminalListItem } from "./molecules/terminal-list-item/terminal-list-item.mjs";
65
+ import { TerminalProgressBar } from "./molecules/terminal-progress-bar/terminal-progress-bar.mjs";
66
+ import { PageTitle } from "./molecules/typography/page-title/page-title.mjs";
67
+ import { ParagraphTitleWithIcon } from "./molecules/typography/paragraph-title-with-icon/paragraph-title-with-icon.mjs";
68
+ import { SectionHeading } from "./molecules/typography/section-heading/section-heading.mjs";
69
+ import { SelfHostedVideo } from "./molecules/video/self-hosted-video/self-hosted-video.mjs";
70
+ import { Youtube } from "./molecules/video/youtube/youtube.mjs";
71
+ import { CookieConsentBanner } from "./organism/cookie-consent-banner/cookie-consent-banner.mjs";
72
+ import { SocialContacts } from "./organism/social-contacts/social-contacts.mjs";
73
+ import { Footer } from "./organism/footer/footer.mjs";
74
+ import { BrandHeader } from "./organism/header/brand-header/brand-header.mjs";
75
+ import { ImageCarousel } from "./organism/image-carousel/image-carousel.mjs";
76
+ import { Lightbox } from "./organism/lightbox/lightbox.mjs";
77
+ import { LoadingBar } from "./organism/loading-bar/loading-bar.mjs";
78
+ import { closeCommandPalette, commandPaletteCloseEvent, commandPaletteOpenEvent, openCommandPalette } from "./state/command-palette/command-palette-events.mjs";
79
+ import { useOsModifierKey } from "./hooks/use-os-modifier-key.mjs";
80
+ import { Menu } from "./organism/menu/menu.mjs";
81
+ import { ProfilePhoto } from "./organism/profile-photo/profile-photo.mjs";
82
+ import { ProfileHero } from "./organism/profile-hero/profile-hero.mjs";
83
+ import { useReadingProgress } from "./hooks/use-reading-progress.mjs";
84
+ import { ContentProgressBar } from "./organism/reading-content-progress-bar/reading-content-progress-bar.mjs";
85
+ import { useClipboardAvailable } from "./hooks/use-clipboard-available.mjs";
86
+ import { useInViewList } from "./hooks/use-in-view-list.mjs";
87
+ import { CommandPaletteContext } from "./state/command-palette/command-palette-context.mjs";
88
+ export { Accordion, AnchorLink, BluePill, BluePillButton, BluePillLink, BrandHeader, Breadcrumb, Button, CallToActionExternalWithTracking, CallToActionInternalWithTracking, ChatIcon, Chip, Close, CommandPaletteContext, ContentContainer, ContentProgressBar, ControlSlider, CookieConsentBanner, CopiedIcon, CopyErrorIcon, CopyIcon, Cursor, DropdownMenu, ErrorText, ExternalLink, FilterInput, Footer, FormErrorSummary, FormField, FormSuccessMessage, FormTextarea, GlassmorphismBackground, HamburgerMenu, ImageCarousel, ImageGlow, InputField, InternalLink, Label, Lightbox, LightboxImage, Loader, LoadingBar, MATRIX_RAIN_DEFAULTS, MATRIX_RAIN_PRESETS, MatrixBackground, MatrixHeaderBackground, MatrixRain, MatrixTerminal, Menu, MenuItem, MotionDiv, Overlay, PageTitle, PaginationNavigation, ParagraphTitleWithIcon, PlainImage, ProfileHero, ProfilePhoto, QuoteText, RedPill, RedPillButton, RedPillLink, RedPillNoReflection, RoundedIcon, ScrollDirection, SectionHeading, SegmentedControl, SelfHostedVideo, SocialContact, SocialContacts, StatCard, SuccessText, Switch, Tag, TerminalButton, TerminalLine, TerminalListItem, TerminalProgressBar, TerminalQuoteLine, Textarea, Youtube, closeCommandPalette, commandPaletteCloseEvent, commandPaletteOpenEvent, hasMotion, imageShimmerPlaceholder, lightboxOpenEvent, matrixSettingsChangeEvent, motionChangeEvent, openCommandPalette, openLightbox, readMatrixSettings, settingsToProps, useClipboardAvailable, useDeviceCapabilities, useGlassmorphism, useInView, useInViewList, useIsIOS, useLockBodyScroll, useMatrixSettingsStore, useMotionStore, useOsModifierKey, useReadingProgress, useReducedMotions, useScrollDirection, useTypewriter, useWebGpuSupported, writeMatrixSettings, writeMotion };
@@ -0,0 +1,2 @@
1
+ import { Markdown } from "./atoms/typography/markdown/markdown.mjs";
2
+ export { Markdown };
@@ -0,0 +1,2 @@
1
+ import { Markdown } from "./atoms/typography/markdown/markdown.mjs";
2
+ export { Markdown };
@@ -0,0 +1,12 @@
1
+ import { FC, ReactNode } from "react";
2
+ //#region src/molecules/accordion/accordion/accordion.d.ts
3
+ interface AccordionProps {
4
+ title: ReactNode;
5
+ children: ReactNode;
6
+ defaultOpen?: boolean;
7
+ className?: string;
8
+ onToggle?: () => void;
9
+ }
10
+ declare const Accordion: FC<AccordionProps>;
11
+ //#endregion
12
+ export { Accordion };
@@ -0,0 +1,130 @@
1
+ "use client";
2
+ import { MotionDiv } from "../../../atoms/animation/motion-div/motion-div.mjs";
3
+ import { useAccordionStore } from "./use-accordion-store.mjs";
4
+ import { c } from "react/compiler-runtime";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { IoIosArrowDown } from "react-icons/io";
7
+ //#region src/molecules/accordion/accordion/accordion.tsx
8
+ const Accordion = (t0) => {
9
+ const $ = c(30);
10
+ const { title, children, defaultOpen: t1, className, onToggle } = t0;
11
+ const { state, effects } = useAccordionStore(t1 === void 0 ? false : t1, onToggle);
12
+ const { isOpen, panelId, triggerId } = state;
13
+ const { toggle } = effects;
14
+ let t2;
15
+ if ($[0] !== title) {
16
+ t2 = /* @__PURE__ */ jsx("div", {
17
+ className: "flex-1",
18
+ children: title
19
+ });
20
+ $[0] = title;
21
+ $[1] = t2;
22
+ } else t2 = $[1];
23
+ const t3 = isOpen ? 180 : 0;
24
+ let t4;
25
+ if ($[2] !== t3) {
26
+ t4 = { rotate: t3 };
27
+ $[2] = t3;
28
+ $[3] = t4;
29
+ } else t4 = $[3];
30
+ let t5;
31
+ if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
32
+ t5 = { duration: .2 };
33
+ $[4] = t5;
34
+ } else t5 = $[4];
35
+ let t6;
36
+ if ($[5] === Symbol.for("react.memo_cache_sentinel")) {
37
+ t6 = /* @__PURE__ */ jsx(IoIosArrowDown, {});
38
+ $[5] = t6;
39
+ } else t6 = $[5];
40
+ let t7;
41
+ if ($[6] !== t4) {
42
+ t7 = /* @__PURE__ */ jsx(MotionDiv, {
43
+ animate: t4,
44
+ transition: t5,
45
+ className: "text-accent ml-2",
46
+ children: t6
47
+ });
48
+ $[6] = t4;
49
+ $[7] = t7;
50
+ } else t7 = $[7];
51
+ let t8;
52
+ if ($[8] !== isOpen || $[9] !== panelId || $[10] !== t2 || $[11] !== t7 || $[12] !== toggle || $[13] !== triggerId) {
53
+ t8 = /* @__PURE__ */ jsxs("button", {
54
+ id: triggerId,
55
+ "aria-expanded": isOpen,
56
+ "aria-controls": panelId,
57
+ onClick: toggle,
58
+ className: "text-primary-text flex w-full cursor-pointer items-center justify-between bg-transparent px-2 text-left",
59
+ children: [t2, t7]
60
+ });
61
+ $[8] = isOpen;
62
+ $[9] = panelId;
63
+ $[10] = t2;
64
+ $[11] = t7;
65
+ $[12] = toggle;
66
+ $[13] = triggerId;
67
+ $[14] = t8;
68
+ } else t8 = $[14];
69
+ const t9 = isOpen ? "auto" : 0;
70
+ const t10 = isOpen ? 1 : 0;
71
+ let t11;
72
+ if ($[15] !== t10 || $[16] !== t9) {
73
+ t11 = {
74
+ height: t9,
75
+ opacity: t10
76
+ };
77
+ $[15] = t10;
78
+ $[16] = t9;
79
+ $[17] = t11;
80
+ } else t11 = $[17];
81
+ let t12;
82
+ if ($[18] === Symbol.for("react.memo_cache_sentinel")) {
83
+ t12 = {
84
+ duration: .25,
85
+ ease: "easeInOut"
86
+ };
87
+ $[18] = t12;
88
+ } else t12 = $[18];
89
+ let t13;
90
+ if ($[19] !== children) {
91
+ t13 = /* @__PURE__ */ jsx("div", {
92
+ className: "p-2",
93
+ children
94
+ });
95
+ $[19] = children;
96
+ $[20] = t13;
97
+ } else t13 = $[20];
98
+ let t14;
99
+ if ($[21] !== panelId || $[22] !== t11 || $[23] !== t13 || $[24] !== triggerId) {
100
+ t14 = /* @__PURE__ */ jsx(MotionDiv, {
101
+ id: panelId,
102
+ role: "region",
103
+ "aria-labelledby": triggerId,
104
+ initial: false,
105
+ animate: t11,
106
+ transition: t12,
107
+ className: "overflow-hidden",
108
+ children: t13
109
+ });
110
+ $[21] = panelId;
111
+ $[22] = t11;
112
+ $[23] = t13;
113
+ $[24] = triggerId;
114
+ $[25] = t14;
115
+ } else t14 = $[25];
116
+ let t15;
117
+ if ($[26] !== className || $[27] !== t14 || $[28] !== t8) {
118
+ t15 = /* @__PURE__ */ jsxs("div", {
119
+ className,
120
+ children: [t8, t14]
121
+ });
122
+ $[26] = className;
123
+ $[27] = t14;
124
+ $[28] = t8;
125
+ $[29] = t15;
126
+ } else t15 = $[29];
127
+ return t15;
128
+ };
129
+ //#endregion
130
+ export { Accordion };
@@ -0,0 +1,2 @@
1
+ import { Accordion } from "./accordion.mjs";
2
+ export { Accordion };
@@ -0,0 +1,55 @@
1
+ "use client";
2
+ import { c } from "react/compiler-runtime";
3
+ import { useId, useState } from "react";
4
+ //#region src/molecules/accordion/accordion/use-accordion-store.ts
5
+ const useAccordionStore = (defaultOpen, onToggle) => {
6
+ const $ = c(11);
7
+ const [isOpen, setIsOpen] = useState(defaultOpen);
8
+ const id = useId();
9
+ const panelId = `accordion-panel-${id}`;
10
+ const triggerId = `accordion-trigger-${id}`;
11
+ let t0;
12
+ if ($[0] !== onToggle) {
13
+ t0 = () => {
14
+ setIsOpen(_temp);
15
+ onToggle?.();
16
+ };
17
+ $[0] = onToggle;
18
+ $[1] = t0;
19
+ } else t0 = $[1];
20
+ const toggle = t0;
21
+ let t1;
22
+ if ($[2] !== isOpen || $[3] !== panelId || $[4] !== triggerId) {
23
+ t1 = {
24
+ isOpen,
25
+ panelId,
26
+ triggerId
27
+ };
28
+ $[2] = isOpen;
29
+ $[3] = panelId;
30
+ $[4] = triggerId;
31
+ $[5] = t1;
32
+ } else t1 = $[5];
33
+ let t2;
34
+ if ($[6] !== toggle) {
35
+ t2 = { toggle };
36
+ $[6] = toggle;
37
+ $[7] = t2;
38
+ } else t2 = $[7];
39
+ let t3;
40
+ if ($[8] !== t1 || $[9] !== t2) {
41
+ t3 = {
42
+ state: t1,
43
+ effects: t2
44
+ };
45
+ $[8] = t1;
46
+ $[9] = t2;
47
+ $[10] = t3;
48
+ } else t3 = $[10];
49
+ return t3;
50
+ };
51
+ function _temp(prev) {
52
+ return !prev;
53
+ }
54
+ //#endregion
55
+ export { useAccordionStore };
@@ -0,0 +1,21 @@
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/breadcrumbs/breadcrumb/breadcrumb.d.ts
5
+ type BreadcrumbItem = {
6
+ label: string;
7
+ href: string;
8
+ isCurrent: false;
9
+ onClick?: () => void;
10
+ } | {
11
+ label: string;
12
+ href: string;
13
+ isCurrent: true;
14
+ };
15
+ interface BreadcrumbProps {
16
+ items: BreadcrumbItem[];
17
+ linkComponent?: LinkComponent;
18
+ }
19
+ declare const Breadcrumb: FC<BreadcrumbProps>;
20
+ //#endregion
21
+ export { Breadcrumb, BreadcrumbItem, BreadcrumbProps };