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,396 @@
1
+ "use client";
2
+ import { MotionDiv } from "../../atoms/animation/motion-div/motion-div.mjs";
3
+ import { useGlassmorphism } from "../../hooks/use-glassmorphism.mjs";
4
+ import { Close } from "../../molecules/menu/close/close.mjs";
5
+ import { MenuItem } from "../../molecules/menu/menu-item/menu-item.mjs";
6
+ import { DropdownMenu } from "../../molecules/menu/dropdown-menu/dropdown-menu.mjs";
7
+ import { HamburgerMenu } from "../../molecules/menu/hamburger-menu/hamburger-menu.mjs";
8
+ import { useMenuStore } from "./use-menu-store.mjs";
9
+ import { c } from "react/compiler-runtime";
10
+ import { AnimatePresence } from "framer-motion";
11
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
12
+ import { BiSearchAlt } from "react-icons/bi";
13
+ import { LuCommand } from "react-icons/lu";
14
+ import { ImCtrl } from "react-icons/im";
15
+ //#region src/organism/menu/menu.tsx
16
+ const menuVariants = {
17
+ hidden: {
18
+ y: -80,
19
+ transition: {
20
+ type: "tween",
21
+ duration: .3
22
+ }
23
+ },
24
+ visible: {
25
+ y: 0,
26
+ transition: {
27
+ type: "tween",
28
+ duration: .3
29
+ }
30
+ }
31
+ };
32
+ const panelVariants = {
33
+ closed: {
34
+ x: "-100%",
35
+ transition: {
36
+ type: "tween",
37
+ ease: [
38
+ .4,
39
+ 0,
40
+ .2,
41
+ 1
42
+ ],
43
+ duration: .6
44
+ }
45
+ },
46
+ open: {
47
+ x: 0,
48
+ transition: {
49
+ type: "tween",
50
+ ease: [
51
+ .4,
52
+ 0,
53
+ .2,
54
+ 1
55
+ ],
56
+ duration: .6
57
+ }
58
+ }
59
+ };
60
+ const Menu = (t0) => {
61
+ const $ = c(65);
62
+ const { navHrefs, onPaletteTrigger, tracking, linkComponent, currentPath } = t0;
63
+ let t1;
64
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
65
+ t1 = { noScale: true };
66
+ $[0] = t1;
67
+ } else t1 = $[0];
68
+ const { glassmorphismClass } = useGlassmorphism(t1);
69
+ const { state, effects } = useMenuStore(currentPath, navHrefs.chat, onPaletteTrigger, tracking);
70
+ const { pathname, shouldHideMenu, shouldOpenMenu, modifierKey } = state;
71
+ const { openMenu, closeMenu, handlePaletteTrigger, onClickHome, onClickBlog, onClickBlogAuthors, onClickBlogTags, onClickBlogArchive, onClickBlogStats, onClickDsaRoadmap, onClickDsaExercises, onClickChat, onClickMcp, onClickMatrixRain, onClickEasterEggHunt, onClickAboutMe, onClickArt, onClickVideogames, onClickContact } = effects;
72
+ const baseClassName = _temp;
73
+ const dropdownClassName = _temp2;
74
+ let t2;
75
+ if ($[1] !== linkComponent || $[2] !== navHrefs.aboutMe || $[3] !== navHrefs.art || $[4] !== navHrefs.blog || $[5] !== navHrefs.blogArchive || $[6] !== navHrefs.blogAuthor || $[7] !== navHrefs.blogAuthors || $[8] !== navHrefs.blogStats || $[9] !== navHrefs.blogTags || $[10] !== navHrefs.chat || $[11] !== navHrefs.contact || $[12] !== navHrefs.dsaExercises || $[13] !== navHrefs.dsaRoadmap || $[14] !== navHrefs.easterEggHunt || $[15] !== navHrefs.mcp || $[16] !== navHrefs.videogames || $[17] !== onClickAboutMe || $[18] !== onClickArt || $[19] !== onClickBlog || $[20] !== onClickBlogArchive || $[21] !== onClickBlogAuthors || $[22] !== onClickBlogStats || $[23] !== onClickBlogTags || $[24] !== onClickChat || $[25] !== onClickContact || $[26] !== onClickDsaExercises || $[27] !== onClickDsaRoadmap || $[28] !== onClickEasterEggHunt || $[29] !== onClickHome || $[30] !== onClickMatrixRain || $[31] !== onClickMcp || $[32] !== onClickVideogames || $[33] !== pathname) {
76
+ t2 = (isMobile_1) => /* @__PURE__ */ jsxs(Fragment, { children: [
77
+ /* @__PURE__ */ jsx(MenuItem, {
78
+ linkComponent,
79
+ className: baseClassName(isMobile_1),
80
+ to: "/",
81
+ selected: pathname === "/",
82
+ onClick: onClickHome,
83
+ children: "Home"
84
+ }, `home-${isMobile_1 ? "mobile" : "desktop"}`),
85
+ /* @__PURE__ */ jsx(DropdownMenu, {
86
+ linkComponent,
87
+ label: "Blog",
88
+ className: dropdownClassName(isMobile_1),
89
+ items: [
90
+ {
91
+ label: "Posts",
92
+ items: [{
93
+ label: "Latest posts",
94
+ to: navHrefs.blog,
95
+ selected: pathname === navHrefs.blog,
96
+ onClick: onClickBlog
97
+ }, {
98
+ label: "Archive",
99
+ to: navHrefs.blogArchive,
100
+ selected: pathname === navHrefs.blogArchive,
101
+ onClick: onClickBlogArchive
102
+ }]
103
+ },
104
+ {
105
+ label: "Discovery",
106
+ items: [{
107
+ label: "Authors",
108
+ to: navHrefs.blogAuthors,
109
+ selected: pathname === navHrefs.blogAuthors || pathname.startsWith(`${navHrefs.blogAuthor}/`),
110
+ onClick: onClickBlogAuthors
111
+ }, {
112
+ label: "Tags",
113
+ to: navHrefs.blogTags,
114
+ selected: pathname === navHrefs.blogTags,
115
+ onClick: onClickBlogTags
116
+ }]
117
+ },
118
+ {
119
+ label: "Insights",
120
+ items: [{
121
+ label: "Stats",
122
+ to: navHrefs.blogStats,
123
+ selected: pathname === navHrefs.blogStats,
124
+ onClick: onClickBlogStats
125
+ }]
126
+ }
127
+ ]
128
+ }, `blog-${isMobile_1 ? "mobile" : "desktop"}`),
129
+ /* @__PURE__ */ jsx(DropdownMenu, {
130
+ linkComponent,
131
+ label: "Explore",
132
+ className: dropdownClassName(isMobile_1),
133
+ items: [
134
+ {
135
+ label: "DSA",
136
+ items: [{
137
+ label: "Roadmap",
138
+ to: navHrefs.dsaRoadmap,
139
+ selected: pathname === navHrefs.dsaRoadmap,
140
+ onClick: onClickDsaRoadmap
141
+ }, {
142
+ label: "Exercises",
143
+ to: navHrefs.dsaExercises,
144
+ selected: pathname === navHrefs.dsaExercises,
145
+ onClick: onClickDsaExercises
146
+ }]
147
+ },
148
+ {
149
+ label: "Artificial Intelligence",
150
+ items: [{
151
+ label: "Chat",
152
+ to: navHrefs.chat,
153
+ selected: pathname === navHrefs.chat,
154
+ onClick: onClickChat
155
+ }, {
156
+ label: "MCP",
157
+ to: navHrefs.mcp,
158
+ selected: pathname === navHrefs.mcp,
159
+ onClick: onClickMcp
160
+ }]
161
+ },
162
+ {
163
+ label: "Computer Graphics",
164
+ items: [{
165
+ label: "Matrix Rain",
166
+ to: "https://chicio.github.io/matrix-rain-webgpu/",
167
+ external: true,
168
+ onClick: onClickMatrixRain
169
+ }]
170
+ },
171
+ {
172
+ label: "Secrets",
173
+ items: [{
174
+ label: "Easter eggs",
175
+ to: navHrefs.easterEggHunt,
176
+ selected: pathname === navHrefs.easterEggHunt,
177
+ onClick: onClickEasterEggHunt
178
+ }]
179
+ }
180
+ ]
181
+ }),
182
+ /* @__PURE__ */ jsx(DropdownMenu, {
183
+ linkComponent,
184
+ label: "The Author",
185
+ className: dropdownClassName(isMobile_1),
186
+ items: [{
187
+ label: "Profile",
188
+ items: [{
189
+ label: "About me",
190
+ to: navHrefs.aboutMe,
191
+ selected: pathname === navHrefs.aboutMe,
192
+ onClick: onClickAboutMe
193
+ }, {
194
+ label: "Contact me",
195
+ to: navHrefs.contact,
196
+ selected: pathname === navHrefs.contact,
197
+ onClick: onClickContact
198
+ }]
199
+ }, {
200
+ label: "Hobbies",
201
+ items: [{
202
+ label: "Art",
203
+ to: navHrefs.art,
204
+ selected: pathname === navHrefs.art,
205
+ onClick: onClickArt
206
+ }, {
207
+ label: "Videogames",
208
+ to: navHrefs.videogames,
209
+ selected: pathname === navHrefs.videogames,
210
+ onClick: onClickVideogames
211
+ }]
212
+ }]
213
+ })
214
+ ] });
215
+ $[1] = linkComponent;
216
+ $[2] = navHrefs.aboutMe;
217
+ $[3] = navHrefs.art;
218
+ $[4] = navHrefs.blog;
219
+ $[5] = navHrefs.blogArchive;
220
+ $[6] = navHrefs.blogAuthor;
221
+ $[7] = navHrefs.blogAuthors;
222
+ $[8] = navHrefs.blogStats;
223
+ $[9] = navHrefs.blogTags;
224
+ $[10] = navHrefs.chat;
225
+ $[11] = navHrefs.contact;
226
+ $[12] = navHrefs.dsaExercises;
227
+ $[13] = navHrefs.dsaRoadmap;
228
+ $[14] = navHrefs.easterEggHunt;
229
+ $[15] = navHrefs.mcp;
230
+ $[16] = navHrefs.videogames;
231
+ $[17] = onClickAboutMe;
232
+ $[18] = onClickArt;
233
+ $[19] = onClickBlog;
234
+ $[20] = onClickBlogArchive;
235
+ $[21] = onClickBlogAuthors;
236
+ $[22] = onClickBlogStats;
237
+ $[23] = onClickBlogTags;
238
+ $[24] = onClickChat;
239
+ $[25] = onClickContact;
240
+ $[26] = onClickDsaExercises;
241
+ $[27] = onClickDsaRoadmap;
242
+ $[28] = onClickEasterEggHunt;
243
+ $[29] = onClickHome;
244
+ $[30] = onClickMatrixRain;
245
+ $[31] = onClickMcp;
246
+ $[32] = onClickVideogames;
247
+ $[33] = pathname;
248
+ $[34] = t2;
249
+ } else t2 = $[34];
250
+ const renderMenuItems = t2;
251
+ const t3 = `menu-container container-fixed fixed right-0 left-0 z-50 my-3 ${shouldOpenMenu ? "xs:block hidden" : ""}`;
252
+ const t4 = shouldHideMenu ? "hidden" : "visible";
253
+ const t5 = `${glassmorphismClass} sm:overflow-visible flex-row xs:py-0 xs:pt-0 m-0 my-0 flex min-h-16 items-center gap-1 overflow-hidden px-2`;
254
+ let t6;
255
+ if ($[35] !== renderMenuItems) {
256
+ t6 = renderMenuItems(false);
257
+ $[35] = renderMenuItems;
258
+ $[36] = t6;
259
+ } else t6 = $[36];
260
+ let t7;
261
+ if ($[37] !== openMenu || $[38] !== shouldOpenMenu) {
262
+ t7 = !shouldOpenMenu && /* @__PURE__ */ jsx("div", {
263
+ className: "sm:hidden",
264
+ children: /* @__PURE__ */ jsx(HamburgerMenu, { onClick: openMenu })
265
+ });
266
+ $[37] = openMenu;
267
+ $[38] = shouldOpenMenu;
268
+ $[39] = t7;
269
+ } else t7 = $[39];
270
+ let t8;
271
+ let t9;
272
+ if ($[40] === Symbol.for("react.memo_cache_sentinel")) {
273
+ t8 = /* @__PURE__ */ jsx(BiSearchAlt, { className: "size-3.5 shrink-0 text-accent group-hover:text-accent transition-colors duration-200" });
274
+ t9 = /* @__PURE__ */ jsx("span", {
275
+ className: "hidden md:block flex-1 text-left font-mono text-sm leading-none text-accent/40 group-hover:text-accent/60 transition-colors duration-200",
276
+ children: "Search..."
277
+ });
278
+ $[40] = t8;
279
+ $[41] = t9;
280
+ } else {
281
+ t8 = $[40];
282
+ t9 = $[41];
283
+ }
284
+ let t10;
285
+ if ($[42] !== modifierKey) {
286
+ t10 = modifierKey !== null && /* @__PURE__ */ jsxs("span", {
287
+ className: "hidden md:inline-flex items-center gap-1",
288
+ children: [
289
+ /* @__PURE__ */ jsx("kbd", {
290
+ className: "inline-flex items-center justify-center size-6 rounded font-mono text-sm leading-none border border-accent/50 text-accent/70 group-hover:border-accent group-hover:text-accent transition-colors duration-200",
291
+ children: modifierKey === "meta" ? /* @__PURE__ */ jsx(LuCommand, { className: "size-3" }) : /* @__PURE__ */ jsx(ImCtrl, { className: "size-3" })
292
+ }),
293
+ /* @__PURE__ */ jsx("span", {
294
+ className: "font-mono text-sm leading-none text-accent/70 group-hover:text-accent transition-colors duration-200",
295
+ children: "+"
296
+ }),
297
+ /* @__PURE__ */ jsx("kbd", {
298
+ className: "inline-flex items-center justify-center size-6 rounded font-mono text-base leading-none border border-accent/50 text-accent/70 group-hover:border-accent group-hover:text-accent transition-colors duration-200",
299
+ children: "K"
300
+ })
301
+ ]
302
+ });
303
+ $[42] = modifierKey;
304
+ $[43] = t10;
305
+ } else t10 = $[43];
306
+ let t11;
307
+ if ($[44] !== handlePaletteTrigger || $[45] !== t10) {
308
+ t11 = /* @__PURE__ */ jsxs("button", {
309
+ className: "ml-auto sm:mr-3 group flex items-center gap-2 px-3 py-1.5 w-auto md:w-60 rounded-lg border border-accent bg-accent/10 hover:border-accent hover:bg-accent/20 transition-all duration-200 cursor-pointer min-h-10",
310
+ onClick: handlePaletteTrigger,
311
+ "aria-label": "Open command palette",
312
+ children: [
313
+ t8,
314
+ t9,
315
+ t10
316
+ ]
317
+ });
318
+ $[44] = handlePaletteTrigger;
319
+ $[45] = t10;
320
+ $[46] = t11;
321
+ } else t11 = $[46];
322
+ let t12;
323
+ if ($[47] !== t11 || $[48] !== t5 || $[49] !== t6 || $[50] !== t7) {
324
+ t12 = /* @__PURE__ */ jsxs("div", {
325
+ className: t5,
326
+ children: [
327
+ t6,
328
+ t7,
329
+ t11
330
+ ]
331
+ });
332
+ $[47] = t11;
333
+ $[48] = t5;
334
+ $[49] = t6;
335
+ $[50] = t7;
336
+ $[51] = t12;
337
+ } else t12 = $[51];
338
+ let t13;
339
+ if ($[52] !== t12 || $[53] !== t3 || $[54] !== t4) {
340
+ t13 = /* @__PURE__ */ jsx(MotionDiv, {
341
+ className: t3,
342
+ variants: menuVariants,
343
+ animate: t4,
344
+ initial: "visible",
345
+ children: t12
346
+ });
347
+ $[52] = t12;
348
+ $[53] = t3;
349
+ $[54] = t4;
350
+ $[55] = t13;
351
+ } else t13 = $[55];
352
+ let t14;
353
+ if ($[56] !== closeMenu || $[57] !== renderMenuItems || $[58] !== shouldOpenMenu) {
354
+ t14 = shouldOpenMenu && /* @__PURE__ */ jsx(MotionDiv, {
355
+ className: "sm:hidden bg-black-alpha-75 fixed top-0 left-0 z-50 h-full w-full touch-pan-y overflow-y-auto backdrop-blur-sm",
356
+ style: { willChange: "transform" },
357
+ variants: panelVariants,
358
+ initial: "closed",
359
+ animate: "open",
360
+ exit: "closed",
361
+ children: /* @__PURE__ */ jsxs("div", {
362
+ className: "flex flex-col items-center gap-1 p-5 pt-[55px]",
363
+ children: [/* @__PURE__ */ jsx("div", {
364
+ className: "absolute top-2.5 left-2.5",
365
+ children: /* @__PURE__ */ jsx(Close, { onClick: closeMenu })
366
+ }), renderMenuItems(true)]
367
+ })
368
+ });
369
+ $[56] = closeMenu;
370
+ $[57] = renderMenuItems;
371
+ $[58] = shouldOpenMenu;
372
+ $[59] = t14;
373
+ } else t14 = $[59];
374
+ let t15;
375
+ if ($[60] !== t14) {
376
+ t15 = /* @__PURE__ */ jsx(AnimatePresence, { children: t14 });
377
+ $[60] = t14;
378
+ $[61] = t15;
379
+ } else t15 = $[61];
380
+ let t16;
381
+ if ($[62] !== t13 || $[63] !== t15) {
382
+ t16 = /* @__PURE__ */ jsxs(Fragment, { children: [t13, t15] });
383
+ $[62] = t13;
384
+ $[63] = t15;
385
+ $[64] = t16;
386
+ } else t16 = $[64];
387
+ return t16;
388
+ };
389
+ function _temp(isMobile) {
390
+ return isMobile ? "mb-2 w-80" : "hidden sm:flex xs:mb-0 xs:w-auto";
391
+ }
392
+ function _temp2(isMobile_0) {
393
+ return isMobile_0 ? "z-50 mb-2 w-80" : "hidden sm:flex xs:mb-0 xs:w-auto z-50";
394
+ }
395
+ //#endregion
396
+ export { Menu };
@@ -0,0 +1,22 @@
1
+ import "matrix-component-store";
2
+ //#region src/organism/menu/use-menu-store.d.ts
3
+ interface MenuTrackingCallbacks {
4
+ onTrackHome?: () => void;
5
+ onTrackBlog?: () => void;
6
+ onTrackBlogAuthors?: () => void;
7
+ onTrackBlogTags?: () => void;
8
+ onTrackBlogArchive?: () => void;
9
+ onTrackBlogStats?: () => void;
10
+ onTrackDsaRoadmap?: () => void;
11
+ onTrackDsaExercises?: () => void;
12
+ onTrackChat?: () => void;
13
+ onTrackMcp?: () => void;
14
+ onTrackMatrixRain?: () => void;
15
+ onTrackEasterEggHunt?: () => void;
16
+ onTrackAboutMe?: () => void;
17
+ onTrackArt?: () => void;
18
+ onTrackVideogames?: () => void;
19
+ onTrackContact?: () => void;
20
+ }
21
+ //#endregion
22
+ export { MenuTrackingCallbacks };
@@ -0,0 +1,265 @@
1
+ "use client";
2
+ import { useScrollDirection } from "../../hooks/use-scroll-direction.mjs";
3
+ import { openCommandPalette } from "../../state/command-palette/command-palette-events.mjs";
4
+ import { useOsModifierKey } from "../../hooks/use-os-modifier-key.mjs";
5
+ import { c } from "react/compiler-runtime";
6
+ import { useState } from "react";
7
+ //#region src/organism/menu/use-menu-store.ts
8
+ const useMenuStore = (pathname, chatSlug, onPaletteTrigger, tracking) => {
9
+ const $ = c(62);
10
+ const direction = useScrollDirection();
11
+ const [shouldOpenMenu, setShouldOpenMenu] = useState(false);
12
+ const modifierKey = useOsModifierKey();
13
+ const shouldHideMenu = pathname === chatSlug ? false : direction === "down";
14
+ let t0;
15
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
16
+ t0 = () => setShouldOpenMenu(true);
17
+ $[0] = t0;
18
+ } else t0 = $[0];
19
+ const openMenu = t0;
20
+ let t1;
21
+ if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
22
+ t1 = () => setShouldOpenMenu(false);
23
+ $[1] = t1;
24
+ } else t1 = $[1];
25
+ const closeMenu = t1;
26
+ let t2;
27
+ if ($[2] !== onPaletteTrigger) {
28
+ t2 = () => {
29
+ onPaletteTrigger?.();
30
+ openCommandPalette();
31
+ };
32
+ $[2] = onPaletteTrigger;
33
+ $[3] = t2;
34
+ } else t2 = $[3];
35
+ const handlePaletteTrigger = t2;
36
+ let t3;
37
+ if ($[4] !== tracking) {
38
+ t3 = () => {
39
+ tracking?.onTrackHome?.();
40
+ closeMenu();
41
+ };
42
+ $[4] = tracking;
43
+ $[5] = t3;
44
+ } else t3 = $[5];
45
+ const onClickHome = t3;
46
+ let t4;
47
+ if ($[6] !== tracking) {
48
+ t4 = () => {
49
+ tracking?.onTrackBlog?.();
50
+ closeMenu();
51
+ };
52
+ $[6] = tracking;
53
+ $[7] = t4;
54
+ } else t4 = $[7];
55
+ const onClickBlog = t4;
56
+ let t5;
57
+ if ($[8] !== tracking) {
58
+ t5 = () => {
59
+ tracking?.onTrackBlogAuthors?.();
60
+ closeMenu();
61
+ };
62
+ $[8] = tracking;
63
+ $[9] = t5;
64
+ } else t5 = $[9];
65
+ const onClickBlogAuthors = t5;
66
+ let t6;
67
+ if ($[10] !== tracking) {
68
+ t6 = () => {
69
+ tracking?.onTrackBlogTags?.();
70
+ closeMenu();
71
+ };
72
+ $[10] = tracking;
73
+ $[11] = t6;
74
+ } else t6 = $[11];
75
+ const onClickBlogTags = t6;
76
+ let t7;
77
+ if ($[12] !== tracking) {
78
+ t7 = () => {
79
+ tracking?.onTrackBlogArchive?.();
80
+ closeMenu();
81
+ };
82
+ $[12] = tracking;
83
+ $[13] = t7;
84
+ } else t7 = $[13];
85
+ const onClickBlogArchive = t7;
86
+ let t8;
87
+ if ($[14] !== tracking) {
88
+ t8 = () => {
89
+ tracking?.onTrackBlogStats?.();
90
+ closeMenu();
91
+ };
92
+ $[14] = tracking;
93
+ $[15] = t8;
94
+ } else t8 = $[15];
95
+ const onClickBlogStats = t8;
96
+ let t9;
97
+ if ($[16] !== tracking) {
98
+ t9 = () => {
99
+ tracking?.onTrackDsaRoadmap?.();
100
+ closeMenu();
101
+ };
102
+ $[16] = tracking;
103
+ $[17] = t9;
104
+ } else t9 = $[17];
105
+ const onClickDsaRoadmap = t9;
106
+ let t10;
107
+ if ($[18] !== tracking) {
108
+ t10 = () => {
109
+ tracking?.onTrackDsaExercises?.();
110
+ closeMenu();
111
+ };
112
+ $[18] = tracking;
113
+ $[19] = t10;
114
+ } else t10 = $[19];
115
+ const onClickDsaExercises = t10;
116
+ let t11;
117
+ if ($[20] !== tracking) {
118
+ t11 = () => {
119
+ tracking?.onTrackChat?.();
120
+ closeMenu();
121
+ };
122
+ $[20] = tracking;
123
+ $[21] = t11;
124
+ } else t11 = $[21];
125
+ const onClickChat = t11;
126
+ let t12;
127
+ if ($[22] !== tracking) {
128
+ t12 = () => {
129
+ tracking?.onTrackMcp?.();
130
+ closeMenu();
131
+ };
132
+ $[22] = tracking;
133
+ $[23] = t12;
134
+ } else t12 = $[23];
135
+ const onClickMcp = t12;
136
+ let t13;
137
+ if ($[24] !== tracking) {
138
+ t13 = () => {
139
+ tracking?.onTrackMatrixRain?.();
140
+ closeMenu();
141
+ };
142
+ $[24] = tracking;
143
+ $[25] = t13;
144
+ } else t13 = $[25];
145
+ const onClickMatrixRain = t13;
146
+ let t14;
147
+ if ($[26] !== tracking) {
148
+ t14 = () => {
149
+ tracking?.onTrackEasterEggHunt?.();
150
+ closeMenu();
151
+ };
152
+ $[26] = tracking;
153
+ $[27] = t14;
154
+ } else t14 = $[27];
155
+ const onClickEasterEggHunt = t14;
156
+ let t15;
157
+ if ($[28] !== tracking) {
158
+ t15 = () => {
159
+ tracking?.onTrackAboutMe?.();
160
+ closeMenu();
161
+ };
162
+ $[28] = tracking;
163
+ $[29] = t15;
164
+ } else t15 = $[29];
165
+ const onClickAboutMe = t15;
166
+ let t16;
167
+ if ($[30] !== tracking) {
168
+ t16 = () => {
169
+ tracking?.onTrackArt?.();
170
+ closeMenu();
171
+ };
172
+ $[30] = tracking;
173
+ $[31] = t16;
174
+ } else t16 = $[31];
175
+ const onClickArt = t16;
176
+ let t17;
177
+ if ($[32] !== tracking) {
178
+ t17 = () => {
179
+ tracking?.onTrackVideogames?.();
180
+ closeMenu();
181
+ };
182
+ $[32] = tracking;
183
+ $[33] = t17;
184
+ } else t17 = $[33];
185
+ const onClickVideogames = t17;
186
+ let t18;
187
+ if ($[34] !== tracking) {
188
+ t18 = () => {
189
+ tracking?.onTrackContact?.();
190
+ closeMenu();
191
+ };
192
+ $[34] = tracking;
193
+ $[35] = t18;
194
+ } else t18 = $[35];
195
+ const onClickContact = t18;
196
+ let t19;
197
+ if ($[36] !== modifierKey || $[37] !== pathname || $[38] !== shouldHideMenu || $[39] !== shouldOpenMenu) {
198
+ t19 = {
199
+ pathname,
200
+ shouldHideMenu,
201
+ shouldOpenMenu,
202
+ modifierKey
203
+ };
204
+ $[36] = modifierKey;
205
+ $[37] = pathname;
206
+ $[38] = shouldHideMenu;
207
+ $[39] = shouldOpenMenu;
208
+ $[40] = t19;
209
+ } else t19 = $[40];
210
+ let t20;
211
+ if ($[41] !== handlePaletteTrigger || $[42] !== onClickAboutMe || $[43] !== onClickArt || $[44] !== onClickBlog || $[45] !== onClickBlogArchive || $[46] !== onClickBlogAuthors || $[47] !== onClickBlogStats || $[48] !== onClickBlogTags || $[49] !== onClickChat || $[50] !== onClickContact || $[51] !== onClickDsaExercises || $[52] !== onClickDsaRoadmap || $[53] !== onClickEasterEggHunt || $[54] !== onClickHome || $[55] !== onClickMatrixRain || $[56] !== onClickMcp || $[57] !== onClickVideogames) {
212
+ t20 = {
213
+ openMenu,
214
+ closeMenu,
215
+ handlePaletteTrigger,
216
+ onClickHome,
217
+ onClickBlog,
218
+ onClickBlogAuthors,
219
+ onClickBlogTags,
220
+ onClickBlogArchive,
221
+ onClickBlogStats,
222
+ onClickDsaRoadmap,
223
+ onClickDsaExercises,
224
+ onClickChat,
225
+ onClickMcp,
226
+ onClickMatrixRain,
227
+ onClickEasterEggHunt,
228
+ onClickAboutMe,
229
+ onClickArt,
230
+ onClickVideogames,
231
+ onClickContact
232
+ };
233
+ $[41] = handlePaletteTrigger;
234
+ $[42] = onClickAboutMe;
235
+ $[43] = onClickArt;
236
+ $[44] = onClickBlog;
237
+ $[45] = onClickBlogArchive;
238
+ $[46] = onClickBlogAuthors;
239
+ $[47] = onClickBlogStats;
240
+ $[48] = onClickBlogTags;
241
+ $[49] = onClickChat;
242
+ $[50] = onClickContact;
243
+ $[51] = onClickDsaExercises;
244
+ $[52] = onClickDsaRoadmap;
245
+ $[53] = onClickEasterEggHunt;
246
+ $[54] = onClickHome;
247
+ $[55] = onClickMatrixRain;
248
+ $[56] = onClickMcp;
249
+ $[57] = onClickVideogames;
250
+ $[58] = t20;
251
+ } else t20 = $[58];
252
+ let t21;
253
+ if ($[59] !== t19 || $[60] !== t20) {
254
+ t21 = {
255
+ state: t19,
256
+ effects: t20
257
+ };
258
+ $[59] = t19;
259
+ $[60] = t20;
260
+ $[61] = t21;
261
+ } else t21 = $[61];
262
+ return t21;
263
+ };
264
+ //#endregion
265
+ export { useMenuStore };
@@ -0,0 +1,2 @@
1
+ import { ProfileHero, ProfileHeroProps } from "./profile-hero.mjs";
2
+ export { ProfileHero, type ProfileHeroProps };
@@ -0,0 +1,15 @@
1
+ import { ImageComponent } from "../../atoms/effects/plain-image/plain-image.mjs";
2
+ import "../../atoms/effects/plain-image/index.mjs";
3
+ import { FC, ReactNode } from "react";
4
+ //#region src/organism/profile-hero/profile-hero.d.ts
5
+ interface ProfileHeroProps {
6
+ name: string;
7
+ role?: string;
8
+ imageSrc?: string;
9
+ imageAlt?: string;
10
+ children?: ReactNode;
11
+ imageComponent?: ImageComponent;
12
+ }
13
+ declare const ProfileHero: FC<ProfileHeroProps>;
14
+ //#endregion
15
+ export { ProfileHero, ProfileHeroProps };