@kortix/ui 0.0.0-stage → 0.14.3

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 (416) hide show
  1. package/README.md +155 -2
  2. package/dist/_vendor/kortix-shared.js +341 -0
  3. package/dist/chat/agent-picker.d.ts +8 -0
  4. package/dist/chat/agent-picker.js +18 -0
  5. package/dist/chat/composer.d.ts +31 -0
  6. package/dist/chat/composer.js +114 -0
  7. package/dist/chat/index.d.ts +22 -0
  8. package/dist/chat/index.js +22 -0
  9. package/dist/chat/markdown.d.ts +10 -0
  10. package/dist/chat/markdown.js +36 -0
  11. package/dist/chat/message-list.d.ts +25 -0
  12. package/dist/chat/message-list.js +73 -0
  13. package/dist/chat/message-view.d.ts +17 -0
  14. package/dist/chat/message-view.js +86 -0
  15. package/dist/chat/model-picker.d.ts +10 -0
  16. package/dist/chat/model-picker.js +68 -0
  17. package/dist/chat/permission-prompt.d.ts +10 -0
  18. package/dist/chat/permission-prompt.js +40 -0
  19. package/dist/chat/question-prompt.d.ts +8 -0
  20. package/dist/chat/question-prompt.js +60 -0
  21. package/dist/chat/send-failure.d.ts +9 -0
  22. package/dist/chat/send-failure.js +21 -0
  23. package/dist/chat/session-thread.d.ts +28 -0
  24. package/dist/chat/session-thread.js +47 -0
  25. package/dist/chat/streaming-markdown.d.ts +21 -0
  26. package/dist/chat/streaming-markdown.js +59 -0
  27. package/dist/chat/tool-call.d.ts +4 -0
  28. package/dist/chat/tool-call.js +150 -0
  29. package/dist/chat/user-message-parts.d.ts +6 -0
  30. package/dist/chat/user-message-parts.js +11 -0
  31. package/dist/components/ui/accordion.d.ts +7 -0
  32. package/dist/components/ui/accordion.js +18 -0
  33. package/dist/components/ui/alert-dialog.d.ts +19 -0
  34. package/dist/components/ui/alert-dialog.js +48 -0
  35. package/dist/components/ui/alert.d.ts +13 -0
  36. package/dist/components/ui/alert.js +67 -0
  37. package/dist/components/ui/avatar.d.ts +11 -0
  38. package/dist/components/ui/avatar.js +23 -0
  39. package/dist/components/ui/back-pill.d.ts +13 -0
  40. package/dist/components/ui/back-pill.js +18 -0
  41. package/dist/components/ui/badge.d.ts +10 -0
  42. package/dist/components/ui/badge.js +42 -0
  43. package/dist/components/ui/breadcrumb.d.ts +11 -0
  44. package/dist/components/ui/breadcrumb.js +28 -0
  45. package/dist/components/ui/bubble.d.ts +20 -0
  46. package/dist/components/ui/bubble.js +38 -0
  47. package/dist/components/ui/button-group.d.ts +9 -0
  48. package/dist/components/ui/button-group.js +32 -0
  49. package/dist/components/ui/button.d.ts +13 -0
  50. package/dist/components/ui/button.js +67 -0
  51. package/dist/components/ui/calendar.d.ts +4 -0
  52. package/dist/components/ui/calendar.js +39 -0
  53. package/dist/components/ui/card.d.ts +96 -0
  54. package/dist/components/ui/card.js +291 -0
  55. package/dist/components/ui/chain-of-thought.d.ts +75 -0
  56. package/dist/components/ui/chain-of-thought.js +66 -0
  57. package/dist/components/ui/chart.d.ts +65 -0
  58. package/dist/components/ui/chart.js +118 -0
  59. package/dist/components/ui/checkbox-group.d.ts +19 -0
  60. package/dist/components/ui/checkbox-group.js +41 -0
  61. package/dist/components/ui/checkbox.d.ts +14 -0
  62. package/dist/components/ui/checkbox.js +27 -0
  63. package/dist/components/ui/collapsible.d.ts +5 -0
  64. package/dist/components/ui/collapsible.js +14 -0
  65. package/dist/components/ui/command.d.ts +58 -0
  66. package/dist/components/ui/command.js +135 -0
  67. package/dist/components/ui/confirm-dialog.d.ts +19 -0
  68. package/dist/components/ui/confirm-dialog.js +30 -0
  69. package/dist/components/ui/context-menu.d.ts +45 -0
  70. package/dist/components/ui/context-menu.js +93 -0
  71. package/dist/components/ui/count-badge.d.ts +26 -0
  72. package/dist/components/ui/count-badge.js +26 -0
  73. package/dist/components/ui/data-grid.d.ts +24 -0
  74. package/dist/components/ui/data-grid.js +107 -0
  75. package/dist/components/ui/date-range-picker.d.ts +119 -0
  76. package/dist/components/ui/date-range-picker.js +190 -0
  77. package/dist/components/ui/definition-list.d.ts +15 -0
  78. package/dist/components/ui/definition-list.js +26 -0
  79. package/dist/components/ui/dialog.d.ts +29 -0
  80. package/dist/components/ui/dialog.js +52 -0
  81. package/dist/components/ui/disclosure.d.ts +121 -0
  82. package/dist/components/ui/disclosure.js +138 -0
  83. package/dist/components/ui/dot-matrix/dotm-3x3-10.d.ts +4 -0
  84. package/dist/components/ui/dot-matrix/dotm-3x3-10.js +29 -0
  85. package/dist/components/ui/dot-matrix/dotm-3x3-12.d.ts +4 -0
  86. package/dist/components/ui/dot-matrix/dotm-3x3-12.js +19 -0
  87. package/dist/components/ui/dot-matrix/dotm-3x3-13.d.ts +4 -0
  88. package/dist/components/ui/dot-matrix/dotm-3x3-13.js +19 -0
  89. package/dist/components/ui/dot-matrix/dotm-3x3-15.d.ts +4 -0
  90. package/dist/components/ui/dot-matrix/dotm-3x3-15.js +22 -0
  91. package/dist/components/ui/dot-matrix/dotm-3x3-16.d.ts +4 -0
  92. package/dist/components/ui/dot-matrix/dotm-3x3-16.js +5 -0
  93. package/dist/components/ui/dot-matrix/dotm-3x3-18.d.ts +4 -0
  94. package/dist/components/ui/dot-matrix/dotm-3x3-18.js +5 -0
  95. package/dist/components/ui/dot-matrix/dotm-3x3-19.d.ts +4 -0
  96. package/dist/components/ui/dot-matrix/dotm-3x3-19.js +5 -0
  97. package/dist/components/ui/dot-matrix/dotm-3x3-2.d.ts +4 -0
  98. package/dist/components/ui/dot-matrix/dotm-3x3-2.js +3 -0
  99. package/dist/components/ui/dot-matrix/dotm-3x3-20.d.ts +4 -0
  100. package/dist/components/ui/dot-matrix/dotm-3x3-20.js +5 -0
  101. package/dist/components/ui/dot-matrix/dotm-3x3-21.d.ts +4 -0
  102. package/dist/components/ui/dot-matrix/dotm-3x3-21.js +5 -0
  103. package/dist/components/ui/dot-matrix/dotm-3x3-3.d.ts +4 -0
  104. package/dist/components/ui/dot-matrix/dotm-3x3-3.js +3 -0
  105. package/dist/components/ui/dot-matrix/dotm-3x3-4.d.ts +4 -0
  106. package/dist/components/ui/dot-matrix/dotm-3x3-4.js +3 -0
  107. package/dist/components/ui/dot-matrix/dotm-3x3-5.d.ts +4 -0
  108. package/dist/components/ui/dot-matrix/dotm-3x3-5.js +3 -0
  109. package/dist/components/ui/dot-matrix/dotm-3x3-6.d.ts +4 -0
  110. package/dist/components/ui/dot-matrix/dotm-3x3-6.js +19 -0
  111. package/dist/components/ui/dot-matrix/dotm-3x3-7.d.ts +4 -0
  112. package/dist/components/ui/dot-matrix/dotm-3x3-7.js +19 -0
  113. package/dist/components/ui/dot-matrix/dotm-3x3-8.d.ts +4 -0
  114. package/dist/components/ui/dot-matrix/dotm-3x3-8.js +19 -0
  115. package/dist/components/ui/dot-matrix/dotm-3x3-9.d.ts +4 -0
  116. package/dist/components/ui/dot-matrix/dotm-3x3-9.js +23 -0
  117. package/dist/components/ui/dot-matrix/dotm-circular-1.d.ts +4 -0
  118. package/dist/components/ui/dot-matrix/dotm-circular-1.js +28 -0
  119. package/dist/components/ui/dot-matrix/dotm-circular-10.d.ts +4 -0
  120. package/dist/components/ui/dot-matrix/dotm-circular-10.js +40 -0
  121. package/dist/components/ui/dot-matrix/dotm-circular-11.d.ts +4 -0
  122. package/dist/components/ui/dot-matrix/dotm-circular-11.js +37 -0
  123. package/dist/components/ui/dot-matrix/dotm-circular-12.d.ts +4 -0
  124. package/dist/components/ui/dot-matrix/dotm-circular-12.js +42 -0
  125. package/dist/components/ui/dot-matrix/dotm-circular-14.d.ts +4 -0
  126. package/dist/components/ui/dot-matrix/dotm-circular-14.js +37 -0
  127. package/dist/components/ui/dot-matrix/dotm-circular-15.d.ts +4 -0
  128. package/dist/components/ui/dot-matrix/dotm-circular-15.js +49 -0
  129. package/dist/components/ui/dot-matrix/dotm-circular-17.d.ts +4 -0
  130. package/dist/components/ui/dot-matrix/dotm-circular-17.js +31 -0
  131. package/dist/components/ui/dot-matrix/dotm-circular-2.d.ts +4 -0
  132. package/dist/components/ui/dot-matrix/dotm-circular-2.js +37 -0
  133. package/dist/components/ui/dot-matrix/dotm-circular-3.d.ts +4 -0
  134. package/dist/components/ui/dot-matrix/dotm-circular-3.js +54 -0
  135. package/dist/components/ui/dot-matrix/dotm-circular-4.d.ts +4 -0
  136. package/dist/components/ui/dot-matrix/dotm-circular-4.js +35 -0
  137. package/dist/components/ui/dot-matrix/dotm-circular-5.d.ts +4 -0
  138. package/dist/components/ui/dot-matrix/dotm-circular-5.js +30 -0
  139. package/dist/components/ui/dot-matrix/dotm-circular-6.d.ts +4 -0
  140. package/dist/components/ui/dot-matrix/dotm-circular-6.js +37 -0
  141. package/dist/components/ui/dot-matrix/dotm-circular-7.d.ts +4 -0
  142. package/dist/components/ui/dot-matrix/dotm-circular-7.js +25 -0
  143. package/dist/components/ui/dot-matrix/dotm-circular-8.d.ts +4 -0
  144. package/dist/components/ui/dot-matrix/dotm-circular-8.js +26 -0
  145. package/dist/components/ui/dot-matrix/dotm-circular-9.d.ts +4 -0
  146. package/dist/components/ui/dot-matrix/dotm-circular-9.js +41 -0
  147. package/dist/components/ui/dot-matrix/dotm-square-1.d.ts +4 -0
  148. package/dist/components/ui/dot-matrix/dotm-square-1.js +27 -0
  149. package/dist/components/ui/dot-matrix/dotm-square-10.d.ts +4 -0
  150. package/dist/components/ui/dot-matrix/dotm-square-10.js +27 -0
  151. package/dist/components/ui/dot-matrix/dotm-square-11.d.ts +4 -0
  152. package/dist/components/ui/dot-matrix/dotm-square-11.js +25 -0
  153. package/dist/components/ui/dot-matrix/dotm-square-12.d.ts +4 -0
  154. package/dist/components/ui/dot-matrix/dotm-square-12.js +28 -0
  155. package/dist/components/ui/dot-matrix/dotm-square-13.d.ts +4 -0
  156. package/dist/components/ui/dot-matrix/dotm-square-13.js +45 -0
  157. package/dist/components/ui/dot-matrix/dotm-square-14.d.ts +4 -0
  158. package/dist/components/ui/dot-matrix/dotm-square-14.js +38 -0
  159. package/dist/components/ui/dot-matrix/dotm-square-15.d.ts +4 -0
  160. package/dist/components/ui/dot-matrix/dotm-square-15.js +31 -0
  161. package/dist/components/ui/dot-matrix/dotm-square-16.d.ts +4 -0
  162. package/dist/components/ui/dot-matrix/dotm-square-16.js +33 -0
  163. package/dist/components/ui/dot-matrix/dotm-square-17.d.ts +4 -0
  164. package/dist/components/ui/dot-matrix/dotm-square-17.js +27 -0
  165. package/dist/components/ui/dot-matrix/dotm-square-18.d.ts +4 -0
  166. package/dist/components/ui/dot-matrix/dotm-square-18.js +29 -0
  167. package/dist/components/ui/dot-matrix/dotm-square-19.d.ts +4 -0
  168. package/dist/components/ui/dot-matrix/dotm-square-19.js +74 -0
  169. package/dist/components/ui/dot-matrix/dotm-square-2.d.ts +4 -0
  170. package/dist/components/ui/dot-matrix/dotm-square-2.js +72 -0
  171. package/dist/components/ui/dot-matrix/dotm-square-20.d.ts +4 -0
  172. package/dist/components/ui/dot-matrix/dotm-square-20.js +79 -0
  173. package/dist/components/ui/dot-matrix/dotm-square-3.d.ts +4 -0
  174. package/dist/components/ui/dot-matrix/dotm-square-3.js +23 -0
  175. package/dist/components/ui/dot-matrix/dotm-square-4.d.ts +4 -0
  176. package/dist/components/ui/dot-matrix/dotm-square-4.js +41 -0
  177. package/dist/components/ui/dot-matrix/dotm-square-5.d.ts +4 -0
  178. package/dist/components/ui/dot-matrix/dotm-square-5.js +23 -0
  179. package/dist/components/ui/dot-matrix/dotm-square-6.d.ts +4 -0
  180. package/dist/components/ui/dot-matrix/dotm-square-6.js +20 -0
  181. package/dist/components/ui/dot-matrix/dotm-square-7.d.ts +4 -0
  182. package/dist/components/ui/dot-matrix/dotm-square-7.js +43 -0
  183. package/dist/components/ui/dot-matrix/dotm-square-8.d.ts +4 -0
  184. package/dist/components/ui/dot-matrix/dotm-square-8.js +57 -0
  185. package/dist/components/ui/dot-matrix/dotm-square-9.d.ts +4 -0
  186. package/dist/components/ui/dot-matrix/dotm-square-9.js +89 -0
  187. package/dist/components/ui/dot-matrix/session-dot-matrix.d.ts +46 -0
  188. package/dist/components/ui/dot-matrix/session-dot-matrix.js +153 -0
  189. package/dist/components/ui/drawer.d.ts +15 -0
  190. package/dist/components/ui/drawer.js +35 -0
  191. package/dist/components/ui/dropdown-menu.d.ts +49 -0
  192. package/dist/components/ui/dropdown-menu.js +113 -0
  193. package/dist/components/ui/emoji-picker.d.ts +15 -0
  194. package/dist/components/ui/emoji-picker.js +137 -0
  195. package/dist/components/ui/emoji-tint.d.ts +41 -0
  196. package/dist/components/ui/emoji-tint.js +131 -0
  197. package/dist/components/ui/empty.d.ts +11 -0
  198. package/dist/components/ui/empty.js +33 -0
  199. package/dist/components/ui/entity-avatar.d.ts +84 -0
  200. package/dist/components/ui/entity-avatar.js +106 -0
  201. package/dist/components/ui/faded-scroll-area.d.ts +8 -0
  202. package/dist/components/ui/faded-scroll-area.js +80 -0
  203. package/dist/components/ui/favicon-avatar.d.ts +32 -0
  204. package/dist/components/ui/favicon-avatar.js +18 -0
  205. package/dist/components/ui/field.d.ts +15 -0
  206. package/dist/components/ui/field.js +48 -0
  207. package/dist/components/ui/file-tree.d.ts +32 -0
  208. package/dist/components/ui/file-tree.js +30 -0
  209. package/dist/components/ui/glyph-face.d.ts +18 -0
  210. package/dist/components/ui/glyph-face.js +37 -0
  211. package/dist/components/ui/glyph-paths-source.d.ts +2 -0
  212. package/dist/components/ui/glyph-paths-source.js +40 -0
  213. package/dist/components/ui/glyph-paths.generated.d.ts +2 -0
  214. package/dist/components/ui/glyph-paths.generated.js +207 -0
  215. package/dist/components/ui/glyph-picker.d.ts +22 -0
  216. package/dist/components/ui/glyph-picker.js +118 -0
  217. package/dist/components/ui/glyph-registry.d.ts +36 -0
  218. package/dist/components/ui/glyph-registry.js +479 -0
  219. package/dist/components/ui/glyph-tint.d.ts +6 -0
  220. package/dist/components/ui/glyph-tint.js +93 -0
  221. package/dist/components/ui/hint.d.ts +14 -0
  222. package/dist/components/ui/hint.js +12 -0
  223. package/dist/components/ui/histogram-bars.d.ts +38 -0
  224. package/dist/components/ui/histogram-bars.js +93 -0
  225. package/dist/components/ui/hover-card.d.ts +28 -0
  226. package/dist/components/ui/hover-card.js +35 -0
  227. package/dist/components/ui/icon-provider.d.ts +23 -0
  228. package/dist/components/ui/icon-provider.js +30 -0
  229. package/dist/components/ui/info-banner.d.ts +14 -0
  230. package/dist/components/ui/info-banner.js +72 -0
  231. package/dist/components/ui/inline-meta.d.ts +6 -0
  232. package/dist/components/ui/inline-meta.js +8 -0
  233. package/dist/components/ui/input-group.d.ts +19 -0
  234. package/dist/components/ui/input-group.js +73 -0
  235. package/dist/components/ui/input.d.ts +26 -0
  236. package/dist/components/ui/input.js +23 -0
  237. package/dist/components/ui/item.d.ts +23 -0
  238. package/dist/components/ui/item.js +67 -0
  239. package/dist/components/ui/kbd.d.ts +3 -0
  240. package/dist/components/ui/kbd.js +20 -0
  241. package/dist/components/ui/kortix-asterisk.d.ts +6 -0
  242. package/dist/components/ui/kortix-asterisk.js +17 -0
  243. package/dist/components/ui/kortix-icons.d.ts +2 -0
  244. package/dist/components/ui/kortix-icons.js +17 -0
  245. package/dist/components/ui/kortix-loader.d.ts +76 -0
  246. package/dist/components/ui/kortix-loader.js +74 -0
  247. package/dist/components/ui/kortix-logo.d.ts +30 -0
  248. package/dist/components/ui/kortix-logo.js +47 -0
  249. package/dist/components/ui/label.d.ts +4 -0
  250. package/dist/components/ui/label.js +9 -0
  251. package/dist/components/ui/list.d.ts +15 -0
  252. package/dist/components/ui/list.js +25 -0
  253. package/dist/components/ui/loading.d.ts +19 -0
  254. package/dist/components/ui/loading.js +31 -0
  255. package/dist/components/ui/local-time.d.ts +34 -0
  256. package/dist/components/ui/local-time.js +60 -0
  257. package/dist/components/ui/map.d.ts +101 -0
  258. package/dist/components/ui/map.js +257 -0
  259. package/dist/components/ui/marker.d.ts +14 -0
  260. package/dist/components/ui/marker.js +28 -0
  261. package/dist/components/ui/menu-recipe.d.ts +102 -0
  262. package/dist/components/ui/menu-recipe.js +129 -0
  263. package/dist/components/ui/mermaid-render.d.ts +51 -0
  264. package/dist/components/ui/mermaid-render.js +65 -0
  265. package/dist/components/ui/mermaid-renderer.d.ts +13 -0
  266. package/dist/components/ui/mermaid-renderer.js +340 -0
  267. package/dist/components/ui/message.d.ts +15 -0
  268. package/dist/components/ui/message.js +26 -0
  269. package/dist/components/ui/modal.d.ts +104 -0
  270. package/dist/components/ui/modal.js +180 -0
  271. package/dist/components/ui/navigation-menu.d.ts +16 -0
  272. package/dist/components/ui/navigation-menu.js +35 -0
  273. package/dist/components/ui/page-search-bar.d.ts +11 -0
  274. package/dist/components/ui/page-search-bar.js +13 -0
  275. package/dist/components/ui/phone-input.d.ts +7 -0
  276. package/dist/components/ui/phone-input.js +59 -0
  277. package/dist/components/ui/pixel-kortix-mark.d.ts +13 -0
  278. package/dist/components/ui/pixel-kortix-mark.js +40 -0
  279. package/dist/components/ui/popover.d.ts +10 -0
  280. package/dist/components/ui/popover.js +38 -0
  281. package/dist/components/ui/portal.d.ts +5 -0
  282. package/dist/components/ui/portal.js +15 -0
  283. package/dist/components/ui/preview-image.d.ts +14 -0
  284. package/dist/components/ui/preview-image.js +58 -0
  285. package/dist/components/ui/progress-ring.d.ts +6 -0
  286. package/dist/components/ui/progress-ring.js +9 -0
  287. package/dist/components/ui/progress.d.ts +6 -0
  288. package/dist/components/ui/progress.js +8 -0
  289. package/dist/components/ui/radio-group.d.ts +12 -0
  290. package/dist/components/ui/radio-group.js +20 -0
  291. package/dist/components/ui/resizable.d.ts +24 -0
  292. package/dist/components/ui/resizable.js +16 -0
  293. package/dist/components/ui/scroll-area.d.ts +5 -0
  294. package/dist/components/ui/scroll-area.js +11 -0
  295. package/dist/components/ui/section-card.d.ts +37 -0
  296. package/dist/components/ui/section-card.js +14 -0
  297. package/dist/components/ui/section.d.ts +10 -0
  298. package/dist/components/ui/section.js +22 -0
  299. package/dist/components/ui/select.d.ts +25 -0
  300. package/dist/components/ui/select.js +59 -0
  301. package/dist/components/ui/separator.d.ts +4 -0
  302. package/dist/components/ui/separator.js +8 -0
  303. package/dist/components/ui/shader-safe.d.ts +48 -0
  304. package/dist/components/ui/shader-safe.js +74 -0
  305. package/dist/components/ui/sheet.d.ts +32 -0
  306. package/dist/components/ui/sheet.js +55 -0
  307. package/dist/components/ui/sidebar-context.d.ts +72 -0
  308. package/dist/components/ui/sidebar-context.js +36 -0
  309. package/dist/components/ui/sidebar-menu-primitives.d.ts +38 -0
  310. package/dist/components/ui/sidebar-menu-primitives.js +97 -0
  311. package/dist/components/ui/sidebar-panel.d.ts +36 -0
  312. package/dist/components/ui/sidebar-panel.js +265 -0
  313. package/dist/components/ui/sidebar-peek.d.ts +27 -0
  314. package/dist/components/ui/sidebar-peek.js +70 -0
  315. package/dist/components/ui/sidebar-width.d.ts +48 -0
  316. package/dist/components/ui/sidebar-width.js +62 -0
  317. package/dist/components/ui/sidebar.d.ts +18 -0
  318. package/dist/components/ui/sidebar.js +194 -0
  319. package/dist/components/ui/skeleton.d.ts +3 -0
  320. package/dist/components/ui/skeleton.js +6 -0
  321. package/dist/components/ui/slider-native.d.ts +7 -0
  322. package/dist/components/ui/slider-native.js +16 -0
  323. package/dist/components/ui/slider.d.ts +14 -0
  324. package/dist/components/ui/slider.js +48 -0
  325. package/dist/components/ui/sliding-tab-indicator.d.ts +61 -0
  326. package/dist/components/ui/sliding-tab-indicator.js +128 -0
  327. package/dist/components/ui/split-sheet.d.ts +61 -0
  328. package/dist/components/ui/split-sheet.js +239 -0
  329. package/dist/components/ui/spotlight-card.d.ts +8 -0
  330. package/dist/components/ui/spotlight-card.js +43 -0
  331. package/dist/components/ui/status-ring.d.ts +38 -0
  332. package/dist/components/ui/status-ring.js +38 -0
  333. package/dist/components/ui/status.d.ts +58 -0
  334. package/dist/components/ui/status.js +76 -0
  335. package/dist/components/ui/stepper.d.ts +28 -0
  336. package/dist/components/ui/stepper.js +73 -0
  337. package/dist/components/ui/switch.d.ts +8 -0
  338. package/dist/components/ui/switch.js +131 -0
  339. package/dist/components/ui/system-message.d.ts +23 -0
  340. package/dist/components/ui/system-message.js +51 -0
  341. package/dist/components/ui/table.d.ts +10 -0
  342. package/dist/components/ui/table.js +28 -0
  343. package/dist/components/ui/tabs.d.ts +73 -0
  344. package/dist/components/ui/tabs.js +207 -0
  345. package/dist/components/ui/tag.d.ts +7 -0
  346. package/dist/components/ui/tag.js +22 -0
  347. package/dist/components/ui/text-shimmer.d.ts +13 -0
  348. package/dist/components/ui/text-shimmer.js +91 -0
  349. package/dist/components/ui/textarea.d.ts +33 -0
  350. package/dist/components/ui/textarea.js +87 -0
  351. package/dist/components/ui/toast.d.ts +105 -0
  352. package/dist/components/ui/toast.js +233 -0
  353. package/dist/components/ui/toggle.d.ts +12 -0
  354. package/dist/components/ui/toggle.js +26 -0
  355. package/dist/components/ui/tooltip.d.ts +9 -0
  356. package/dist/components/ui/tooltip.js +16 -0
  357. package/dist/components/ui/trigger-variants.d.ts +14 -0
  358. package/dist/components/ui/trigger-variants.js +67 -0
  359. package/dist/components/ui/type-to-confirm-dialog.d.ts +88 -0
  360. package/dist/components/ui/type-to-confirm-dialog.js +101 -0
  361. package/dist/components/ui/typed-title-logic.d.ts +22 -0
  362. package/dist/components/ui/typed-title-logic.js +33 -0
  363. package/dist/components/ui/typed-title.d.ts +38 -0
  364. package/dist/components/ui/typed-title.js +66 -0
  365. package/dist/components/ui/typing-animation.d.ts +36 -0
  366. package/dist/components/ui/typing-animation.js +141 -0
  367. package/dist/components/ui/user-avatar.d.ts +47 -0
  368. package/dist/components/ui/user-avatar.js +46 -0
  369. package/dist/hooks/use-debounce.d.ts +4 -0
  370. package/dist/hooks/use-debounce.js +17 -0
  371. package/dist/hooks/use-is-dark.d.ts +2 -0
  372. package/dist/hooks/use-is-dark.js +27 -0
  373. package/dist/hooks/use-mobile.d.ts +2 -0
  374. package/dist/hooks/use-mobile.js +15 -0
  375. package/dist/hooks/use-proximity-hover.d.ts +52 -0
  376. package/dist/hooks/use-proximity-hover.js +232 -0
  377. package/dist/icons/close.d.ts +2 -0
  378. package/dist/icons/close.js +7 -0
  379. package/dist/icons/copy.d.ts +3 -0
  380. package/dist/icons/copy.js +6 -0
  381. package/dist/icons/sidebar-toggle.d.ts +13 -0
  382. package/dist/icons/sidebar-toggle.js +13 -0
  383. package/dist/index.d.ts +24 -0
  384. package/dist/index.js +33 -0
  385. package/dist/lib/dotmatrix-core.d.ts +113 -0
  386. package/dist/lib/dotmatrix-core.js +920 -0
  387. package/dist/lib/dotmatrix-hooks.d.ts +28 -0
  388. package/dist/lib/dotmatrix-hooks.js +151 -0
  389. package/dist/lib/favicon.d.ts +4 -0
  390. package/dist/lib/favicon.js +21 -0
  391. package/dist/lib/font-weight.d.ts +6 -0
  392. package/dist/lib/font-weight.js +6 -0
  393. package/dist/lib/icon-config.d.ts +33 -0
  394. package/dist/lib/icon-config.js +22 -0
  395. package/dist/lib/icon-context.d.ts +34 -0
  396. package/dist/lib/icon-context.js +81 -0
  397. package/dist/lib/portal-root.d.ts +8 -0
  398. package/dist/lib/portal-root.js +26 -0
  399. package/dist/lib/settle.d.ts +16 -0
  400. package/dist/lib/settle.js +29 -0
  401. package/dist/lib/springs.d.ts +31 -0
  402. package/dist/lib/springs.js +29 -0
  403. package/dist/lib/utils.d.ts +2 -0
  404. package/dist/lib/utils.js +5 -0
  405. package/dist/lib/z-stack.d.ts +55 -0
  406. package/dist/lib/z-stack.js +130 -0
  407. package/dist/providers/ui-provider.d.ts +141 -0
  408. package/dist/providers/ui-provider.js +93 -0
  409. package/dist/styles/dotmatrix-loader.css +1239 -0
  410. package/dist/styles/fonts.css +46 -0
  411. package/dist/styles/tailwind.css +10 -0
  412. package/dist/styles/theme.css +1019 -0
  413. package/dist/styles/tokens.css +146 -0
  414. package/dist/styles.css +2 -0
  415. package/package.json +881 -4
  416. package/skills/kortix-ui/SKILL.md +150 -0
@@ -0,0 +1,54 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask, rowMajorIndex } from '../../../lib/dotmatrix-core.js';
3
+ const STEP_COUNT = 24;
4
+ const BASE_OPACITY = 0.08;
5
+ const RING_BASE_OPACITY = 0.2;
6
+ const CORE_OPACITY = 0.16;
7
+ const COMET_TAIL = [1, 0.78, 0.56, 0.36, 0.22];
8
+ const SECONDARY_COMET_SCALE = 0.72;
9
+ const CIRCULAR_RING_PATH = [
10
+ rowMajorIndex(0, 1),
11
+ rowMajorIndex(0, 2),
12
+ rowMajorIndex(0, 3),
13
+ rowMajorIndex(1, 4),
14
+ rowMajorIndex(2, 4),
15
+ rowMajorIndex(3, 4),
16
+ rowMajorIndex(4, 3),
17
+ rowMajorIndex(4, 2),
18
+ rowMajorIndex(4, 1),
19
+ rowMajorIndex(3, 0),
20
+ rowMajorIndex(2, 0),
21
+ rowMajorIndex(1, 0),
22
+ ];
23
+ const LOOP_LEN = CIRCULAR_RING_PATH.length;
24
+ function makeResolver(headStep, reducedMotion) {
25
+ return ({ index, row, col, phase }) => {
26
+ if (!isWithinCircularMask(row, col)) {
27
+ return { className: 'dmx-inactive' };
28
+ }
29
+ const pathOrder = CIRCULAR_RING_PATH.indexOf(index);
30
+ const isCore = row === 2 && col === 2;
31
+ if (pathOrder === -1) {
32
+ return { style: { opacity: isCore ? CORE_OPACITY : BASE_OPACITY } };
33
+ }
34
+ if (reducedMotion || phase === 'idle') {
35
+ return { style: { opacity: RING_BASE_OPACITY + (pathOrder / (LOOP_LEN - 1)) * 0.56 } };
36
+ }
37
+ const leadA = Math.floor((headStep / STEP_COUNT) * LOOP_LEN) % LOOP_LEN;
38
+ const leadB = (leadA + Math.floor(LOOP_LEN / 2)) % LOOP_LEN;
39
+ let opacity = BASE_OPACITY;
40
+ for (let i = 0; i < COMET_TAIL.length; i += 1) {
41
+ const weight = COMET_TAIL[i] ?? 0;
42
+ const tailA = (leadA - i + LOOP_LEN) % LOOP_LEN;
43
+ const tailB = (leadB - i + LOOP_LEN) % LOOP_LEN;
44
+ if (pathOrder === tailA) {
45
+ opacity = Math.max(opacity, weight);
46
+ }
47
+ if (pathOrder === tailB) {
48
+ opacity = Math.max(opacity, weight * SECONDARY_COMET_SCALE);
49
+ }
50
+ }
51
+ return { style: { opacity: Math.min(1, opacity) } };
52
+ };
53
+ }
54
+ export const DotmCircular3 = createDotm5x5Component('DotmCircular3', makeResolver, { speed: 1.6, lockedPattern: 'full', cycleMsBase: 1650, steps: STEP_COUNT, idleStep: 6 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular4: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const SWEEP_OPACITY = 0.96;
5
+ const NEAR_SWEEP_OPACITY = 0.36;
6
+ const RING_OPACITY = 0.22;
7
+ function makeResolver(phase, reducedMotion) {
8
+ return ({ row, col, phase: p }) => {
9
+ if (!isWithinCircularMask(row, col)) {
10
+ return { className: 'dmx-inactive' };
11
+ }
12
+ const centerRow = row - 2;
13
+ const centerCol = col - 2;
14
+ const radius = Math.hypot(centerRow, centerCol);
15
+ const theta = (reducedMotion || p === 'idle' ? 0 : phase) * Math.PI * 2;
16
+ const sweepX = Math.cos(theta);
17
+ const sweepY = Math.sin(theta);
18
+ const projection = centerCol * sweepX + centerRow * sweepY;
19
+ const perpendicular = Math.abs(centerCol * sweepY - centerRow * sweepX);
20
+ if (radius < 0.5) {
21
+ return { style: { opacity: 0.62 } };
22
+ }
23
+ if (projection > 0.3 && perpendicular < 0.55) {
24
+ return { style: { opacity: SWEEP_OPACITY } };
25
+ }
26
+ if (projection > 0 && perpendicular < 1.15) {
27
+ return { style: { opacity: NEAR_SWEEP_OPACITY } };
28
+ }
29
+ if (radius > 1.6 && radius < 2.3) {
30
+ return { style: { opacity: RING_OPACITY } };
31
+ }
32
+ return { style: { opacity: BASE_OPACITY } };
33
+ };
34
+ }
35
+ export const DotmCircular4 = createDotm5x5Component('DotmCircular4', makeResolver, { speed: 1.55, lockedPattern: 'full', cycleMsBase: 1800 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular5: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,30 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const BLADE_OPACITY = 0.94;
5
+ const HALO_OPACITY = 0.34;
6
+ function makeResolver(phase, reducedMotion) {
7
+ return ({ row, col, phase: p }) => {
8
+ if (!isWithinCircularMask(row, col)) {
9
+ return { className: 'dmx-inactive' };
10
+ }
11
+ const x = col - 2;
12
+ const y = row - 2;
13
+ const radius = Math.hypot(x, y);
14
+ const angle = Math.atan2(y, x);
15
+ const theta = (reducedMotion || p === 'idle' ? 0 : phase) * Math.PI * 2;
16
+ const pinwheel = Math.cos(angle * 4 - theta * 2.2);
17
+ const radialGate = Math.sin(radius * 2.1 - theta * 1.25);
18
+ if (radius < 0.6) {
19
+ return { style: { opacity: 0.66 } };
20
+ }
21
+ if (pinwheel > 0.48 && radialGate > -0.25) {
22
+ return { style: { opacity: BLADE_OPACITY } };
23
+ }
24
+ if (pinwheel > 0.1) {
25
+ return { style: { opacity: HALO_OPACITY } };
26
+ }
27
+ return { style: { opacity: BASE_OPACITY } };
28
+ };
29
+ }
30
+ export const DotmCircular5 = createDotm5x5Component('DotmCircular5', makeResolver, { speed: 1.7, lockedPattern: 'full', cycleMsBase: 1650 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular6: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,37 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const ORBIT_OPACITY = 0.96;
5
+ const NEAR_ORBIT_OPACITY = 0.34;
6
+ function makeResolver(phase, reducedMotion) {
7
+ return ({ row, col, phase: p }) => {
8
+ if (!isWithinCircularMask(row, col)) {
9
+ return { className: 'dmx-inactive' };
10
+ }
11
+ const x = col - 2;
12
+ const y = row - 2;
13
+ const t = reducedMotion || p === 'idle' ? 0 : phase * Math.PI * 2;
14
+ const angle = Math.atan2(y, x);
15
+ const ring = Math.sqrt(x * x + y * y);
16
+ const angularPhase = ((angle - t * 0.95 + Math.PI * 4) % (Math.PI * 2)) / ((Math.PI * 2) / 3);
17
+ const sectorPos = angularPhase - Math.floor(angularPhase);
18
+ const sectorPulse = Math.max(0, 1 - Math.abs(sectorPos - 0.5) * 2);
19
+ const ringPhase = 0.5 + 0.5 * Math.cos(ring * 3.2 + t * 1.7);
20
+ const score = 0.74 * sectorPulse + 0.26 * ringPhase;
21
+ let opacity = BASE_OPACITY;
22
+ if (score > 0.84) {
23
+ opacity = ORBIT_OPACITY;
24
+ }
25
+ else if (score > 0.63) {
26
+ opacity = 0.62;
27
+ }
28
+ else if (score > 0.44) {
29
+ opacity = NEAR_ORBIT_OPACITY;
30
+ }
31
+ if (x === 0 && y === 0) {
32
+ return { style: { opacity: Math.max(opacity, NEAR_ORBIT_OPACITY) } };
33
+ }
34
+ return { style: { opacity } };
35
+ };
36
+ }
37
+ export const DotmCircular6 = createDotm5x5Component('DotmCircular6', makeResolver, { speed: 1.6, lockedPattern: 'full', cycleMsBase: 1700 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular7: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,25 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const GATE_OPACITY = 0.92;
5
+ function makeResolver(phase, reducedMotion) {
6
+ return ({ row, col, phase: p }) => {
7
+ if (!isWithinCircularMask(row, col)) {
8
+ return { className: 'dmx-inactive' };
9
+ }
10
+ const x = col - 2;
11
+ const y = row - 2;
12
+ const t = reducedMotion || p === 'idle' ? 0 : phase * Math.PI * 2;
13
+ const ring = Math.sqrt(x * x + y * y);
14
+ const angle = Math.atan2(y, x);
15
+ const petalWave = 0.5 + 0.5 * Math.cos(5 * angle - t * 1.7);
16
+ const ringWave = 0.5 + 0.5 * Math.cos(ring * 3.3 - t * 1.2);
17
+ const chordWave = 0.5 + 0.5 * Math.cos((x + y) * 1.6 + t * 1.35);
18
+ // Sharpen contrast so lit cells form clear, visible groups.
19
+ const petalGate = Math.pow(petalWave, 2.2);
20
+ const blend = 0.68 * petalGate + 0.22 * ringWave + 0.1 * chordWave;
21
+ const opacity = BASE_OPACITY + (GATE_OPACITY - BASE_OPACITY) * blend;
22
+ return { style: { opacity } };
23
+ };
24
+ }
25
+ export const DotmCircular7 = createDotm5x5Component('DotmCircular7', makeResolver, { speed: 1.8, lockedPattern: 'full', cycleMsBase: 1600 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular8: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const PULSE_CORE = 0.95;
5
+ const PULSE_RING = 0.44;
6
+ function makeResolver(phase, reducedMotion) {
7
+ return ({ row, col, phase: p }) => {
8
+ if (!isWithinCircularMask(row, col)) {
9
+ return { className: 'dmx-inactive' };
10
+ }
11
+ const x = col - 2;
12
+ const y = row - 2;
13
+ const radius = Math.hypot(x, y);
14
+ const beat = reducedMotion || p === 'idle' ? 0 : Math.sin(phase * Math.PI * 2);
15
+ const spike = reducedMotion || p === 'idle' ? 0 : Math.sin(phase * Math.PI * 4);
16
+ const pulse = Math.max(0, beat) + Math.max(0, spike) * 0.55;
17
+ if (radius < 0.55) {
18
+ return { style: { opacity: Math.min(1, 0.35 + pulse * PULSE_CORE) } };
19
+ }
20
+ if (radius < 1.65) {
21
+ return { style: { opacity: 0.16 + pulse * PULSE_RING } };
22
+ }
23
+ return { style: { opacity: BASE_OPACITY + pulse * 0.08 } };
24
+ };
25
+ }
26
+ export const DotmCircular8 = createDotm5x5Component('DotmCircular8', makeResolver, { speed: 1.95, lockedPattern: 'full', cycleMsBase: 1400 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmCircular9: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,41 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, isWithinCircularMask } from '../../../lib/dotmatrix-core.js';
3
+ const STEP_COUNT = 36;
4
+ const BASE_OPACITY = 0.07;
5
+ const MID_OPACITY = 0.28;
6
+ const STAR_OPACITY = 0.96;
7
+ function makeResolver(step, reducedMotion) {
8
+ return ({ row, col, phase }) => {
9
+ if (!isWithinCircularMask(row, col)) {
10
+ return { className: 'dmx-inactive' };
11
+ }
12
+ const x = col - 2;
13
+ const y = row - 2;
14
+ const ring = Math.sqrt(x * x + y * y);
15
+ const angle = Math.atan2(y, x);
16
+ const cardinalCenters = [0, Math.PI / 2, Math.PI, -Math.PI / 2];
17
+ const beaconIndex = Math.floor((step / STEP_COUNT) * cardinalCenters.length) % cardinalCenters.length;
18
+ const activeCenter = cardinalCenters[beaconIndex];
19
+ const oppositeCenter = cardinalCenters[(beaconIndex + 2) % cardinalCenters.length];
20
+ const distanceToActive = Math.acos(Math.cos(angle - activeCenter));
21
+ const distanceToOpposite = Math.acos(Math.cos(angle - oppositeCenter));
22
+ const activeBeam = Math.max(0, 1 - distanceToActive / 0.5);
23
+ const oppositeBeam = Math.max(0, 1 - distanceToOpposite / 0.65);
24
+ const ringTier = Math.round(ring);
25
+ let opacity = BASE_OPACITY;
26
+ if (activeBeam > 0.8 && ringTier >= 2) {
27
+ opacity = STAR_OPACITY;
28
+ }
29
+ else if (activeBeam > 0.45 && ringTier >= 1) {
30
+ opacity = 0.62;
31
+ }
32
+ else if (oppositeBeam > 0.5 && ringTier >= 1) {
33
+ opacity = MID_OPACITY;
34
+ }
35
+ if (x === 0 && y === 0) {
36
+ return { style: { opacity: Math.max(opacity, 0.24) } };
37
+ }
38
+ return { style: { opacity } };
39
+ };
40
+ }
41
+ export const DotmCircular9 = createDotm5x5Component('DotmCircular9', makeResolver, { speed: 5.55, lockedPattern: 'full', cycleMsBase: 1900, steps: STEP_COUNT });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare1: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, trBlPathNormFromIndex } from '../../../lib/dotmatrix-core.js';
3
+ const animationResolver = ({ isActive, index, row, col, reducedMotion, phase, }) => {
4
+ if (!isActive) {
5
+ return { className: 'dmx-inactive' };
6
+ }
7
+ const path = trBlPathNormFromIndex(index);
8
+ const slice = row + (4 - col);
9
+ const parity = slice % 2;
10
+ const style = {
11
+ '--dmx-path': path,
12
+ '--dmx-diagonal-parity': parity,
13
+ };
14
+ if (reducedMotion || phase === 'idle') {
15
+ return {
16
+ style: {
17
+ ...style,
18
+ opacity: parity === 0 ? 0.88 : 0.14,
19
+ },
20
+ };
21
+ }
22
+ return { className: 'dmx-diagonal-alt-sweep', style };
23
+ };
24
+ function makeResolver() {
25
+ return animationResolver;
26
+ }
27
+ export const DotmSquare1 = createDotm5x5Component('DotmSquare1', makeResolver, { speed: 1.1 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare10: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, MATRIX_SIZE } from '../../../lib/dotmatrix-core.js';
3
+ const ROWS = MATRIX_SIZE;
4
+ const BASE_OPACITY = 0.08;
5
+ const PEAK_OPACITY = 1;
6
+ const DECAY = 0.72;
7
+ const COL_WARP = 0.07;
8
+ function makeResolver(cycle, reducedMotion) {
9
+ return ({ isActive, row, col, phase }) => {
10
+ if (!isActive) {
11
+ return { className: 'dmx-inactive' };
12
+ }
13
+ if (reducedMotion || phase === 'idle') {
14
+ const falloff = (ROWS - 1 - row) / Math.max(1, ROWS - 1);
15
+ return { style: { opacity: BASE_OPACITY + falloff * 0.38 } };
16
+ }
17
+ const colGain = 1 + COL_WARP * Math.sin(col * 1.72 + cycle * 0.61);
18
+ if (row > cycle) {
19
+ return { style: { opacity: BASE_OPACITY } };
20
+ }
21
+ const age = cycle - row;
22
+ const trail = Math.exp(-age * DECAY);
23
+ const opacity = BASE_OPACITY + (PEAK_OPACITY - BASE_OPACITY) * trail * colGain;
24
+ return { style: { opacity: Math.min(PEAK_OPACITY, opacity) } };
25
+ };
26
+ }
27
+ export const DotmSquare10 = createDotm5x5Component('DotmSquare10', makeResolver, { speed: 2.5, cycleMsBase: 1500, steps: ROWS });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare11: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,25 @@
1
+ 'use client';
2
+ import { createDotm5x5Component } from '../../../lib/dotmatrix-core.js';
3
+ const animationResolver = ({ isActive, manhattanDistance, reducedMotion, phase, }) => {
4
+ if (!isActive) {
5
+ return { className: 'dmx-inactive' };
6
+ }
7
+ const ring = Math.max(0, Math.min(4, manhattanDistance));
8
+ const style = {
9
+ '--dmx-ripple-ring': ring,
10
+ '--dmx-ripple-parity': ring % 2,
11
+ };
12
+ if (reducedMotion || phase === 'idle') {
13
+ return {
14
+ style: {
15
+ ...style,
16
+ opacity: 0.2 + (1 - ring / 4) * 0.72,
17
+ },
18
+ };
19
+ }
20
+ return { className: 'dmx-ripple-echo', style };
21
+ };
22
+ function makeResolver() {
23
+ return animationResolver;
24
+ }
25
+ export const DotmSquare11 = createDotm5x5Component('DotmSquare11', makeResolver, { speed: 1.25 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare12: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,28 @@
1
+ 'use client';
2
+ import { createDotm5x5Component } from '../../../lib/dotmatrix-core.js';
3
+ // User-defined origin is cell (2,2) in a 1-based 5x5 grid => (row=1,col=1) in zero-based coords.
4
+ const ORIGIN_ROW = 1;
5
+ const ORIGIN_COL = 1;
6
+ const MAX_MANHATTAN = 6;
7
+ const animationResolver = ({ isActive, row, col, reducedMotion, phase }) => {
8
+ if (!isActive) {
9
+ return { className: 'dmx-inactive' };
10
+ }
11
+ const ring = Math.max(0, Math.min(MAX_MANHATTAN, Math.abs(row - ORIGIN_ROW) + Math.abs(col - ORIGIN_COL)));
12
+ const style = {
13
+ '--dmx-center-ripple-ring': ring,
14
+ };
15
+ if (reducedMotion || phase === 'idle') {
16
+ return {
17
+ style: {
18
+ ...style,
19
+ opacity: 0.2 + (1 - ring / MAX_MANHATTAN) * 0.75,
20
+ },
21
+ };
22
+ }
23
+ return { className: 'dmx-center-origin-ripple', style };
24
+ };
25
+ function makeResolver() {
26
+ return animationResolver;
27
+ }
28
+ export const DotmSquare12 = createDotm5x5Component('DotmSquare12', makeResolver, { speed: 1.35 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare13: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,45 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, rowMajorIndex } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const ON_OPACITY = 0.56;
5
+ const PEAK_OPACITY = 1;
6
+ const FRAME_MASKS = [
7
+ // N
8
+ '..x..' + '..x..' + '..o..' + '.....' + '.....',
9
+ // NE
10
+ '....x' + '...x.' + '..o..' + '.....' + '.....',
11
+ // E
12
+ '.....' + '.....' + '..oxx' + '.....' + '.....',
13
+ // SE
14
+ '.....' + '.....' + '..o..' + '...x.' + '....x',
15
+ // S
16
+ '.....' + '.....' + '..o..' + '..x..' + '..x..',
17
+ // SW
18
+ '.....' + '.....' + '..o..' + '.x...' + 'x....',
19
+ // W
20
+ '.....' + '.....' + 'xxo..' + '.....' + '.....',
21
+ // NW
22
+ 'x....' + '.x...' + '..o..' + '.....' + '.....',
23
+ ];
24
+ const FRAME_SEQUENCE = [0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7];
25
+ function maskCell(mask, row, col) {
26
+ return mask[rowMajorIndex(row, col)] ?? '.';
27
+ }
28
+ function makeResolver(cycle, reducedMotion) {
29
+ const frameIndex = FRAME_SEQUENCE[cycle] ?? 0;
30
+ const mask = FRAME_MASKS[frameIndex] ?? FRAME_MASKS[0];
31
+ return ({ isActive, row, col }) => {
32
+ if (!isActive) {
33
+ return { className: 'dmx-inactive' };
34
+ }
35
+ const cell = maskCell(mask, row, col);
36
+ if (cell === 'x') {
37
+ return { style: { opacity: PEAK_OPACITY } };
38
+ }
39
+ if (cell === 'o') {
40
+ return { style: { opacity: ON_OPACITY } };
41
+ }
42
+ return { style: { opacity: BASE_OPACITY } };
43
+ };
44
+ }
45
+ export const DotmSquare13 = createDotm5x5Component('DotmSquare13', makeResolver, { speed: 1.85, cycleMsBase: 1550, steps: FRAME_SEQUENCE.length });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare14: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,38 @@
1
+ 'use client';
2
+ import { createDotm5x5Component, rowMajorIndex } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const MID_OPACITY = 0.52;
5
+ const PEAK_OPACITY = 1;
6
+ const SMOOTH_TRANSITION = 'opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)';
7
+ const FRAME_MASKS = [
8
+ // Diagonal star
9
+ 'x...x' + '.x.x.' + '..o..' + '.x.x.' + 'x...x',
10
+ // Diamond bloom
11
+ '..x..' + '.oxo.' + 'xooox' + '.oxo.' + '..x..',
12
+ // Petal ring
13
+ '.x.x.' + 'x.o.x' + '..o..' + 'x.o.x' + '.x.x.',
14
+ // Crossed lattice
15
+ 'x.x.x' + '.o.o.' + 'x.o.x' + '.o.o.' + 'x.x.x',
16
+ ];
17
+ const FRAME_SEQUENCE = [0, 1, 2, 3, 2, 1];
18
+ function maskCell(mask, row, col) {
19
+ return mask[rowMajorIndex(row, col)] ?? '.';
20
+ }
21
+ function makeResolver(cycle, reducedMotion) {
22
+ const frameIndex = FRAME_SEQUENCE[cycle] ?? 0;
23
+ const mask = FRAME_MASKS[frameIndex] ?? FRAME_MASKS[0];
24
+ return ({ isActive, row, col }) => {
25
+ if (!isActive) {
26
+ return { className: 'dmx-inactive' };
27
+ }
28
+ const cell = maskCell(mask, row, col);
29
+ if (cell === 'x') {
30
+ return { style: { opacity: PEAK_OPACITY, transition: SMOOTH_TRANSITION } };
31
+ }
32
+ if (cell === 'o') {
33
+ return { style: { opacity: MID_OPACITY, transition: SMOOTH_TRANSITION } };
34
+ }
35
+ return { style: { opacity: BASE_OPACITY, transition: SMOOTH_TRANSITION } };
36
+ };
37
+ }
38
+ export const DotmSquare14 = createDotm5x5Component('DotmSquare14', makeResolver, { speed: 1.25, size: 14, dotSize: 2, cycleMsBase: 1700, steps: FRAME_SEQUENCE.length });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare15: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ import { createDotm5x5Component } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const STRAND_OPACITY = 1;
5
+ const BRIDGE_OPACITY = 0.58;
6
+ const NEAR_STRAND_OPACITY = 0.24;
7
+ /** Integer full sin periods per matrix cycle so phase 0 ≡ phase 1 (no wrap glitch). */
8
+ const STRAND_LOOPS = 2;
9
+ function makeResolver(cycle, reducedMotion) {
10
+ return ({ isActive, row, col, phase }) => {
11
+ if (!isActive) {
12
+ return { className: 'dmx-inactive' };
13
+ }
14
+ const u = reducedMotion || phase === 'idle' ? 0 : cycle;
15
+ const rowPhase = u * STRAND_LOOPS * 2 * Math.PI + row * 1.24;
16
+ const left = Math.round(1 + Math.sin(rowPhase));
17
+ const right = 4 - left;
18
+ const bridgeOn = Math.cos(rowPhase * 2) > 0.82;
19
+ if (col === left || col === right) {
20
+ return { style: { opacity: STRAND_OPACITY } };
21
+ }
22
+ if (bridgeOn && col > left && col < right) {
23
+ return { style: { opacity: BRIDGE_OPACITY } };
24
+ }
25
+ if (Math.abs(col - left) === 1 || Math.abs(col - right) === 1) {
26
+ return { style: { opacity: NEAR_STRAND_OPACITY } };
27
+ }
28
+ return { style: { opacity: BASE_OPACITY } };
29
+ };
30
+ }
31
+ export const DotmSquare15 = createDotm5x5Component('DotmSquare15', makeResolver, { speed: 1.25, cycleMsBase: 1600 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare16: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+ import { createDotm5x5Component } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const STRAND_OPACITY = 1;
5
+ const BRIDGE_OPACITY = 0.58;
6
+ const NEAR_STRAND_OPACITY = 0.24;
7
+ const STEP_COUNT = 20;
8
+ const HELIX_LOOP_RADIANS = (Math.PI * 2) / (STEP_COUNT - 1);
9
+ function makeResolver(cycle, reducedMotion) {
10
+ return ({ isActive, row, col, phase }) => {
11
+ if (!isActive) {
12
+ return { className: 'dmx-inactive' };
13
+ }
14
+ const t = reducedMotion || phase === 'idle' ? 0 : cycle * STEP_COUNT;
15
+ // Make first and last discrete frames identical to avoid loop jank.
16
+ const rowPhase = t * HELIX_LOOP_RADIANS + row * 1.24;
17
+ // Tighter center-band helix (3-column footprint).
18
+ const left = Math.round(1.5 + 0.5 * Math.sin(rowPhase));
19
+ const right = 4 - left;
20
+ const bridgeOn = Math.cos(rowPhase * 2) > 0.82;
21
+ if (col === left || col === right) {
22
+ return { style: { opacity: STRAND_OPACITY } };
23
+ }
24
+ if (bridgeOn && col > left && col < right) {
25
+ return { style: { opacity: BRIDGE_OPACITY } };
26
+ }
27
+ if (Math.abs(col - left) === 1 || Math.abs(col - right) === 1) {
28
+ return { style: { opacity: NEAR_STRAND_OPACITY } };
29
+ }
30
+ return { style: { opacity: BASE_OPACITY } };
31
+ };
32
+ }
33
+ export const DotmSquare16 = createDotm5x5Component('DotmSquare16', makeResolver, { speed: 2.5, cycleMsBase: 1400 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare17: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+ import { createDotm5x5Component } from '../../../lib/dotmatrix-core.js';
3
+ const BASE_OPACITY = 0.08;
4
+ const STRAND_OPACITY = 1;
5
+ const NEAR_STRAND_OPACITY = 0.24;
6
+ const STEP_COUNT = 20;
7
+ const HELIX_LOOP_RADIANS = (Math.PI * 2) / (STEP_COUNT - 1);
8
+ function makeResolver(cycle, reducedMotion) {
9
+ return ({ isActive, row, col, phase }) => {
10
+ if (!isActive) {
11
+ return { className: 'dmx-inactive' };
12
+ }
13
+ const t = reducedMotion || phase === 'idle' ? 0 : cycle * STEP_COUNT;
14
+ // Make first and last discrete frames identical to avoid loop jank.
15
+ const rowPhase = t * HELIX_LOOP_RADIANS + row * 1.24;
16
+ // One helix strand only, sweeping across full 5-column width.
17
+ const strandCol = Math.round(2 + 2 * Math.sin(rowPhase));
18
+ if (col === strandCol) {
19
+ return { style: { opacity: STRAND_OPACITY } };
20
+ }
21
+ if (Math.abs(col - strandCol) === 1) {
22
+ return { style: { opacity: NEAR_STRAND_OPACITY } };
23
+ }
24
+ return { style: { opacity: BASE_OPACITY } };
25
+ };
26
+ }
27
+ export const DotmSquare17 = createDotm5x5Component('DotmSquare17', makeResolver, { speed: 2.5, cycleMsBase: 1600 });
@@ -0,0 +1,4 @@
1
+ export declare const DotmSquare18: {
2
+ ({ pattern, animated, hoverAnimated, speed, size, dotSize, ...rest }: import("../../../lib/dotmatrix-core.js").DotMatrixCommonProps): import("react").JSX.Element;
3
+ displayName: string;
4
+ };