@elmethis/react 0.3.19 → 0.4.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 (493) hide show
  1. package/README.md +24 -66
  2. package/lib/index.react.cjs +2 -1
  3. package/lib/index.react.mjs +3311 -2630
  4. package/lib/style.css +1 -1
  5. package/lib-types/components/a2ui/catalog/block-catalog.d.ts +18 -0
  6. package/lib-types/components/a2ui/catalog/block-catalog.d.ts.map +1 -0
  7. package/lib-types/components/a2ui/catalog/catalog-utils.d.ts +30 -0
  8. package/lib-types/components/a2ui/catalog/catalog-utils.d.ts.map +1 -0
  9. package/lib-types/components/a2ui/elm-a2ui.d.ts +38 -0
  10. package/lib-types/components/a2ui/elm-a2ui.d.ts.map +1 -0
  11. package/lib-types/components/a2ui/stream-json-lines.d.ts +14 -0
  12. package/lib-types/components/a2ui/stream-json-lines.d.ts.map +1 -0
  13. package/lib-types/components/code/elm-code-block.d.ts +18 -0
  14. package/lib-types/components/code/elm-code-block.d.ts.map +1 -0
  15. package/lib-types/components/code/elm-katex.d.ts +17 -0
  16. package/lib-types/components/code/elm-katex.d.ts.map +1 -0
  17. package/lib-types/components/code/elm-shiki-highlighter.d.ts +13 -0
  18. package/lib-types/components/code/elm-shiki-highlighter.d.ts.map +1 -0
  19. package/lib-types/components/containments/elm-collapse.d.ts +8 -0
  20. package/lib-types/components/containments/elm-collapse.d.ts.map +1 -0
  21. package/lib-types/components/containments/elm-modal.d.ts +13 -0
  22. package/lib-types/components/containments/elm-modal.d.ts.map +1 -0
  23. package/lib-types/components/containments/elm-parallax.d.ts +6 -0
  24. package/lib-types/components/containments/elm-parallax.d.ts.map +1 -0
  25. package/lib-types/components/containments/elm-tabs.d.ts +30 -0
  26. package/lib-types/components/containments/elm-tabs.d.ts.map +1 -0
  27. package/lib-types/components/containments/elm-toggle.d.ts +18 -0
  28. package/lib-types/components/containments/elm-toggle.d.ts.map +1 -0
  29. package/lib-types/components/containments/elm-tooltip.d.ts +9 -0
  30. package/lib-types/components/containments/elm-tooltip.d.ts.map +1 -0
  31. package/lib-types/components/fallback/elm-block-fallback.d.ts +6 -0
  32. package/lib-types/components/fallback/elm-block-fallback.d.ts.map +1 -0
  33. package/lib-types/components/fallback/elm-rectangle-wave.d.ts +4 -0
  34. package/lib-types/components/fallback/elm-rectangle-wave.d.ts.map +1 -0
  35. package/lib-types/components/fallback/elm-unsupported-block.d.ts +6 -0
  36. package/lib-types/components/fallback/elm-unsupported-block.d.ts.map +1 -0
  37. package/lib-types/components/form/elm-button.d.ts +18 -0
  38. package/lib-types/components/form/elm-button.d.ts.map +1 -0
  39. package/lib-types/components/form/elm-checkbox.d.ts +29 -0
  40. package/lib-types/components/form/elm-checkbox.d.ts.map +1 -0
  41. package/lib-types/components/form/elm-select.d.ts +49 -0
  42. package/lib-types/components/form/elm-select.d.ts.map +1 -0
  43. package/lib-types/components/form/elm-switch.d.ts +25 -0
  44. package/lib-types/components/form/elm-switch.d.ts.map +1 -0
  45. package/lib-types/components/form/elm-text-area.d.ts +16 -0
  46. package/lib-types/components/form/elm-text-area.d.ts.map +1 -0
  47. package/lib-types/components/form/elm-text-field.d.ts +18 -0
  48. package/lib-types/components/form/elm-text-field.d.ts.map +1 -0
  49. package/lib-types/components/form/elm-validation.d.ts +8 -0
  50. package/lib-types/components/form/elm-validation.d.ts.map +1 -0
  51. package/lib-types/components/icon/elm-copy-icon.d.ts +9 -0
  52. package/lib-types/components/icon/elm-copy-icon.d.ts.map +1 -0
  53. package/lib-types/components/icon/elm-dot-loading-icon.d.ts +9 -0
  54. package/lib-types/components/icon/elm-dot-loading-icon.d.ts.map +1 -0
  55. package/lib-types/components/icon/elm-inline-icon.d.ts +16 -0
  56. package/lib-types/components/icon/elm-inline-icon.d.ts.map +1 -0
  57. package/lib-types/components/icon/elm-language-icon.d.ts +17 -0
  58. package/lib-types/components/icon/elm-language-icon.d.ts.map +1 -0
  59. package/lib-types/components/icon/elm-mdi-icon.d.ts +10 -0
  60. package/lib-types/components/icon/elm-mdi-icon.d.ts.map +1 -0
  61. package/lib-types/components/icon/elm-square-loading-icon.d.ts +7 -0
  62. package/lib-types/components/icon/elm-square-loading-icon.d.ts.map +1 -0
  63. package/lib-types/components/icon/elm-toggle-theme.d.ts +9 -0
  64. package/lib-types/components/icon/elm-toggle-theme.d.ts.map +1 -0
  65. package/lib-types/components/icon/languages/bash.d.ts +3 -0
  66. package/lib-types/components/icon/languages/bash.d.ts.map +1 -0
  67. package/lib-types/components/icon/languages/c-plus-plus.d.ts +3 -0
  68. package/lib-types/components/icon/languages/c-plus-plus.d.ts.map +1 -0
  69. package/lib-types/components/icon/languages/c-sharp.d.ts +3 -0
  70. package/lib-types/components/icon/languages/c-sharp.d.ts.map +1 -0
  71. package/lib-types/components/icon/languages/c.d.ts +3 -0
  72. package/lib-types/components/icon/languages/c.d.ts.map +1 -0
  73. package/lib-types/components/icon/languages/css.d.ts +3 -0
  74. package/lib-types/components/icon/languages/css.d.ts.map +1 -0
  75. package/lib-types/components/icon/languages/go.d.ts +3 -0
  76. package/lib-types/components/icon/languages/go.d.ts.map +1 -0
  77. package/lib-types/components/icon/languages/html.d.ts +3 -0
  78. package/lib-types/components/icon/languages/html.d.ts.map +1 -0
  79. package/lib-types/components/icon/languages/java.d.ts +3 -0
  80. package/lib-types/components/icon/languages/java.d.ts.map +1 -0
  81. package/lib-types/components/icon/languages/javascript.d.ts +3 -0
  82. package/lib-types/components/icon/languages/javascript.d.ts.map +1 -0
  83. package/lib-types/components/icon/languages/json.d.ts +3 -0
  84. package/lib-types/components/icon/languages/json.d.ts.map +1 -0
  85. package/lib-types/components/icon/languages/kotlin.d.ts +3 -0
  86. package/lib-types/components/icon/languages/kotlin.d.ts.map +1 -0
  87. package/lib-types/components/icon/languages/language-interface.d.ts +7 -0
  88. package/lib-types/components/icon/languages/language-interface.d.ts.map +1 -0
  89. package/lib-types/components/icon/languages/lua.d.ts +3 -0
  90. package/lib-types/components/icon/languages/lua.d.ts.map +1 -0
  91. package/lib-types/components/icon/languages/npm.d.ts +3 -0
  92. package/lib-types/components/icon/languages/npm.d.ts.map +1 -0
  93. package/lib-types/components/icon/languages/python.d.ts +3 -0
  94. package/lib-types/components/icon/languages/python.d.ts.map +1 -0
  95. package/lib-types/components/icon/languages/rust.d.ts +3 -0
  96. package/lib-types/components/icon/languages/rust.d.ts.map +1 -0
  97. package/lib-types/components/icon/languages/sql.d.ts +3 -0
  98. package/lib-types/components/icon/languages/sql.d.ts.map +1 -0
  99. package/lib-types/components/icon/languages/terraform.d.ts +3 -0
  100. package/lib-types/components/icon/languages/terraform.d.ts.map +1 -0
  101. package/lib-types/components/icon/languages/typescript.d.ts +3 -0
  102. package/lib-types/components/icon/languages/typescript.d.ts.map +1 -0
  103. package/lib-types/components/media/elm-block-image.d.ts +19 -0
  104. package/lib-types/components/media/elm-block-image.d.ts.map +1 -0
  105. package/lib-types/components/media/elm-file.d.ts +17 -0
  106. package/lib-types/components/media/elm-file.d.ts.map +1 -0
  107. package/lib-types/components/navigation/elm-bookmark.d.ts +22 -0
  108. package/lib-types/components/navigation/elm-bookmark.d.ts.map +1 -0
  109. package/lib-types/components/navigation/elm-breadcrumb.d.ts +15 -0
  110. package/lib-types/components/navigation/elm-breadcrumb.d.ts.map +1 -0
  111. package/lib-types/components/navigation/elm-page-top.d.ts +9 -0
  112. package/lib-types/components/navigation/elm-page-top.d.ts.map +1 -0
  113. package/lib-types/components/others/elm-color-primitive-sample.d.ts +5 -0
  114. package/lib-types/components/others/elm-color-primitive-sample.d.ts.map +1 -0
  115. package/lib-types/components/others/elm-color-semantic-sample.d.ts +5 -0
  116. package/lib-types/components/others/elm-color-semantic-sample.d.ts.map +1 -0
  117. package/lib-types/components/others/elm-jarkup.d.ts +8 -0
  118. package/lib-types/components/others/elm-jarkup.d.ts.map +1 -0
  119. package/lib-types/components/others/elm-markdown.d.ts +11 -0
  120. package/lib-types/components/others/elm-markdown.d.ts.map +1 -0
  121. package/lib-types/components/others/use-wordle.d.ts +24 -0
  122. package/lib-types/components/others/use-wordle.d.ts.map +1 -0
  123. package/lib-types/components/others/wordle/validGuesses.d.ts +2 -0
  124. package/lib-types/components/others/wordle/validGuesses.d.ts.map +1 -0
  125. package/lib-types/components/others/wordle/wordlist.d.ts +2 -0
  126. package/lib-types/components/others/wordle/wordlist.d.ts.map +1 -0
  127. package/lib-types/components/table/elm-table-body.d.ts +4 -0
  128. package/lib-types/components/table/elm-table-body.d.ts.map +1 -0
  129. package/lib-types/components/table/elm-table-cell.d.ts +21 -0
  130. package/lib-types/components/table/elm-table-cell.d.ts.map +1 -0
  131. package/lib-types/components/table/elm-table-header.d.ts +4 -0
  132. package/lib-types/components/table/elm-table-header.d.ts.map +1 -0
  133. package/lib-types/components/table/elm-table-row.d.ts +4 -0
  134. package/lib-types/components/table/elm-table-row.d.ts.map +1 -0
  135. package/lib-types/components/table/elm-table.d.ts +7 -0
  136. package/lib-types/components/table/elm-table.d.ts.map +1 -0
  137. package/lib-types/components/table/index.d.ts +7 -0
  138. package/lib-types/components/table/index.d.ts.map +1 -0
  139. package/lib-types/components/table/table-context.d.ts +25 -0
  140. package/lib-types/components/table/table-context.d.ts.map +1 -0
  141. package/lib-types/components/typography/elm-block-quote.d.ts +5 -0
  142. package/lib-types/components/typography/elm-block-quote.d.ts.map +1 -0
  143. package/lib-types/components/typography/elm-callout.d.ts +10 -0
  144. package/lib-types/components/typography/elm-callout.d.ts.map +1 -0
  145. package/lib-types/components/typography/elm-divider.d.ts +4 -0
  146. package/lib-types/components/typography/elm-divider.d.ts.map +1 -0
  147. package/lib-types/components/typography/elm-fragment-identifier.d.ts +9 -0
  148. package/lib-types/components/typography/elm-fragment-identifier.d.ts.map +1 -0
  149. package/lib-types/components/typography/elm-heading.d.ts +7 -0
  150. package/lib-types/components/typography/elm-heading.d.ts.map +1 -0
  151. package/lib-types/components/typography/elm-inline-text.d.ts +61 -0
  152. package/lib-types/components/typography/elm-inline-text.d.ts.map +1 -0
  153. package/lib-types/components/typography/elm-list.d.ts +7 -0
  154. package/lib-types/components/typography/elm-list.d.ts.map +1 -0
  155. package/lib-types/components/typography/elm-paragraph.d.ts +7 -0
  156. package/lib-types/components/typography/elm-paragraph.d.ts.map +1 -0
  157. package/lib-types/hooks/use-async-state.d.ts +58 -0
  158. package/lib-types/hooks/use-async-state.d.ts.map +1 -0
  159. package/lib-types/hooks/use-auto-animate.d.ts +44 -0
  160. package/lib-types/hooks/use-auto-animate.d.ts.map +1 -0
  161. package/lib-types/hooks/use-bindable-signal.d.ts +35 -0
  162. package/lib-types/hooks/use-bindable-signal.d.ts.map +1 -0
  163. package/lib-types/hooks/use-bindable-store.d.ts +43 -0
  164. package/lib-types/hooks/use-bindable-store.d.ts.map +1 -0
  165. package/lib-types/hooks/use-clipboard.d.ts +23 -0
  166. package/lib-types/hooks/use-clipboard.d.ts.map +1 -0
  167. package/lib-types/hooks/use-debounced-signal.d.ts +39 -0
  168. package/lib-types/hooks/use-debounced-signal.d.ts.map +1 -0
  169. package/lib-types/hooks/use-debounced-store.d.ts +40 -0
  170. package/lib-types/hooks/use-debounced-store.d.ts.map +1 -0
  171. package/lib-types/hooks/use-delayed-signal.d.ts +37 -0
  172. package/lib-types/hooks/use-delayed-signal.d.ts.map +1 -0
  173. package/lib-types/hooks/use-elmethis-theme.d.ts +29 -0
  174. package/lib-types/hooks/use-elmethis-theme.d.ts.map +1 -0
  175. package/lib-types/hooks/use-modal.d.ts +23 -0
  176. package/lib-types/hooks/use-modal.d.ts.map +1 -0
  177. package/lib-types/hooks/use-storage.d.ts +35 -0
  178. package/lib-types/hooks/use-storage.d.ts.map +1 -0
  179. package/lib-types/hooks/use-throttled-queue.d.ts +32 -0
  180. package/lib-types/hooks/use-throttled-queue.d.ts.map +1 -0
  181. package/lib-types/hooks/use-throttled-signal.d.ts +47 -0
  182. package/lib-types/hooks/use-throttled-signal.d.ts.map +1 -0
  183. package/lib-types/hooks/use-throttled-store.d.ts +61 -0
  184. package/lib-types/hooks/use-throttled-store.d.ts.map +1 -0
  185. package/lib-types/index.d.ts +63 -0
  186. package/lib-types/index.d.ts.map +1 -0
  187. package/package.json +74 -44
  188. package/lib/ElmMermaid-CUeT_XM9.js +0 -75
  189. package/lib/ElmMermaid-DnSjC5T_.cjs +0 -1
  190. package/lib-types/components/code/ElmCodeBlock.d.ts +0 -22
  191. package/lib-types/components/code/ElmCodeBlock.d.ts.map +0 -1
  192. package/lib-types/components/code/ElmCodeBlock.stories.d.ts +0 -9
  193. package/lib-types/components/code/ElmCodeBlock.stories.d.ts.map +0 -1
  194. package/lib-types/components/code/ElmKatex.d.ts +0 -19
  195. package/lib-types/components/code/ElmKatex.d.ts.map +0 -1
  196. package/lib-types/components/code/ElmKatex.stories.d.ts +0 -9
  197. package/lib-types/components/code/ElmKatex.stories.d.ts.map +0 -1
  198. package/lib-types/components/code/ElmMermaid.d.ts +0 -14
  199. package/lib-types/components/code/ElmMermaid.d.ts.map +0 -1
  200. package/lib-types/components/code/ElmMermaid.stories.d.ts +0 -8
  201. package/lib-types/components/code/ElmMermaid.stories.d.ts.map +0 -1
  202. package/lib-types/components/code/ElmShikiHighlighter.d.ts +0 -20
  203. package/lib-types/components/code/ElmShikiHighlighter.d.ts.map +0 -1
  204. package/lib-types/components/code/ElmShikiHighlighter.stories.d.ts +0 -7
  205. package/lib-types/components/code/ElmShikiHighlighter.stories.d.ts.map +0 -1
  206. package/lib-types/components/code/shikiInstance.d.ts +0 -3
  207. package/lib-types/components/code/shikiInstance.d.ts.map +0 -1
  208. package/lib-types/components/containments/ElmCollapse.d.ts +0 -20
  209. package/lib-types/components/containments/ElmCollapse.d.ts.map +0 -1
  210. package/lib-types/components/containments/ElmCollapse.stories.d.ts +0 -7
  211. package/lib-types/components/containments/ElmCollapse.stories.d.ts.map +0 -1
  212. package/lib-types/components/containments/ElmColumn.d.ts +0 -10
  213. package/lib-types/components/containments/ElmColumn.d.ts.map +0 -1
  214. package/lib-types/components/containments/ElmColumn.stories.d.ts +0 -7
  215. package/lib-types/components/containments/ElmColumn.stories.d.ts.map +0 -1
  216. package/lib-types/components/containments/ElmColumnList.d.ts +0 -10
  217. package/lib-types/components/containments/ElmColumnList.d.ts.map +0 -1
  218. package/lib-types/components/containments/ElmColumnList.stories.d.ts +0 -7
  219. package/lib-types/components/containments/ElmColumnList.stories.d.ts.map +0 -1
  220. package/lib-types/components/containments/ElmConfirmModal.d.ts +0 -24
  221. package/lib-types/components/containments/ElmConfirmModal.d.ts.map +0 -1
  222. package/lib-types/components/containments/ElmConfirmModal.stories.d.ts +0 -7
  223. package/lib-types/components/containments/ElmConfirmModal.stories.d.ts.map +0 -1
  224. package/lib-types/components/containments/ElmDesktopWindow.d.ts +0 -15
  225. package/lib-types/components/containments/ElmDesktopWindow.d.ts.map +0 -1
  226. package/lib-types/components/containments/ElmDesktopWindow.stories.d.ts +0 -7
  227. package/lib-types/components/containments/ElmDesktopWindow.stories.d.ts.map +0 -1
  228. package/lib-types/components/containments/ElmModal.d.ts +0 -21
  229. package/lib-types/components/containments/ElmModal.d.ts.map +0 -1
  230. package/lib-types/components/containments/ElmModal.stories.d.ts +0 -7
  231. package/lib-types/components/containments/ElmModal.stories.d.ts.map +0 -1
  232. package/lib-types/components/containments/ElmParallax.d.ts +0 -14
  233. package/lib-types/components/containments/ElmParallax.d.ts.map +0 -1
  234. package/lib-types/components/containments/ElmParallax.stories.d.ts +0 -7
  235. package/lib-types/components/containments/ElmParallax.stories.d.ts.map +0 -1
  236. package/lib-types/components/containments/ElmSimpleTooltip.d.ts +0 -14
  237. package/lib-types/components/containments/ElmSimpleTooltip.d.ts.map +0 -1
  238. package/lib-types/components/containments/ElmSimpleTooltip.stories.d.ts +0 -8
  239. package/lib-types/components/containments/ElmSimpleTooltip.stories.d.ts.map +0 -1
  240. package/lib-types/components/containments/ElmSnackbar.d.ts +0 -16
  241. package/lib-types/components/containments/ElmSnackbar.d.ts.map +0 -1
  242. package/lib-types/components/containments/ElmSnackbar.stories.d.ts +0 -7
  243. package/lib-types/components/containments/ElmSnackbar.stories.d.ts.map +0 -1
  244. package/lib-types/components/containments/ElmSnackbarContainer.d.ts +0 -19
  245. package/lib-types/components/containments/ElmSnackbarContainer.d.ts.map +0 -1
  246. package/lib-types/components/containments/ElmSnackbarContainer.stories.d.ts +0 -7
  247. package/lib-types/components/containments/ElmSnackbarContainer.stories.d.ts.map +0 -1
  248. package/lib-types/components/containments/ElmTabs.d.ts +0 -14
  249. package/lib-types/components/containments/ElmTabs.d.ts.map +0 -1
  250. package/lib-types/components/containments/ElmTabs.stories.d.ts +0 -7
  251. package/lib-types/components/containments/ElmTabs.stories.d.ts.map +0 -1
  252. package/lib-types/components/containments/ElmToggle.d.ts +0 -18
  253. package/lib-types/components/containments/ElmToggle.d.ts.map +0 -1
  254. package/lib-types/components/containments/ElmToggle.stories.d.ts +0 -9
  255. package/lib-types/components/containments/ElmToggle.stories.d.ts.map +0 -1
  256. package/lib-types/components/containments/ElmTooltip.d.ts +0 -14
  257. package/lib-types/components/containments/ElmTooltip.d.ts.map +0 -1
  258. package/lib-types/components/containments/ElmTooltip.stories.d.ts +0 -7
  259. package/lib-types/components/containments/ElmTooltip.stories.d.ts.map +0 -1
  260. package/lib-types/components/copilotkit/ElmModelSelect.d.ts +0 -17
  261. package/lib-types/components/copilotkit/ElmModelSelect.d.ts.map +0 -1
  262. package/lib-types/components/copilotkit/ElmModelSelect.stories.d.ts +0 -28
  263. package/lib-types/components/copilotkit/ElmModelSelect.stories.d.ts.map +0 -1
  264. package/lib-types/components/copilotkit/ToolApproval.d.ts +0 -17
  265. package/lib-types/components/copilotkit/ToolApproval.d.ts.map +0 -1
  266. package/lib-types/components/copilotkit/ToolApproval.stories.d.ts +0 -7
  267. package/lib-types/components/copilotkit/ToolApproval.stories.d.ts.map +0 -1
  268. package/lib-types/components/data/ElmMultiProgress.d.ts +0 -33
  269. package/lib-types/components/data/ElmMultiProgress.d.ts.map +0 -1
  270. package/lib-types/components/data/ElmMultiProgress.stories.d.ts +0 -7
  271. package/lib-types/components/data/ElmMultiProgress.stories.d.ts.map +0 -1
  272. package/lib-types/components/data/ElmProgress.d.ts +0 -41
  273. package/lib-types/components/data/ElmProgress.d.ts.map +0 -1
  274. package/lib-types/components/data/ElmProgress.stories.d.ts +0 -11
  275. package/lib-types/components/data/ElmProgress.stories.d.ts.map +0 -1
  276. package/lib-types/components/data/ElmStatusMessage.d.ts +0 -19
  277. package/lib-types/components/data/ElmStatusMessage.d.ts.map +0 -1
  278. package/lib-types/components/data/ElmStatusMessage.stories.d.ts +0 -10
  279. package/lib-types/components/data/ElmStatusMessage.stories.d.ts.map +0 -1
  280. package/lib-types/components/embed/ElmOEmbed.d.ts +0 -48
  281. package/lib-types/components/embed/ElmOEmbed.d.ts.map +0 -1
  282. package/lib-types/components/embed/ElmOEmbed.stories.d.ts +0 -8
  283. package/lib-types/components/embed/ElmOEmbed.stories.d.ts.map +0 -1
  284. package/lib-types/components/fallback/ElmBlockFallback.d.ts +0 -15
  285. package/lib-types/components/fallback/ElmBlockFallback.d.ts.map +0 -1
  286. package/lib-types/components/fallback/ElmBlockFallback.stories.d.ts +0 -7
  287. package/lib-types/components/fallback/ElmBlockFallback.stories.d.ts.map +0 -1
  288. package/lib-types/components/fallback/ElmRectangleWave.d.ts +0 -10
  289. package/lib-types/components/fallback/ElmRectangleWave.d.ts.map +0 -1
  290. package/lib-types/components/fallback/ElmRectangleWave.stories.d.ts +0 -7
  291. package/lib-types/components/fallback/ElmRectangleWave.stories.d.ts.map +0 -1
  292. package/lib-types/components/fallback/ElmSpinner.d.ts +0 -18
  293. package/lib-types/components/fallback/ElmSpinner.d.ts.map +0 -1
  294. package/lib-types/components/fallback/ElmSpinner.stories.d.ts +0 -7
  295. package/lib-types/components/fallback/ElmSpinner.stories.d.ts.map +0 -1
  296. package/lib-types/components/fallback/ElmUnsupportedBlock.d.ts +0 -14
  297. package/lib-types/components/fallback/ElmUnsupportedBlock.d.ts.map +0 -1
  298. package/lib-types/components/fallback/ElmUnsupportedBlock.stories.d.ts +0 -7
  299. package/lib-types/components/fallback/ElmUnsupportedBlock.stories.d.ts.map +0 -1
  300. package/lib-types/components/form/ElmButton.d.ts +0 -24
  301. package/lib-types/components/form/ElmButton.d.ts.map +0 -1
  302. package/lib-types/components/form/ElmButton.stories.d.ts +0 -11
  303. package/lib-types/components/form/ElmButton.stories.d.ts.map +0 -1
  304. package/lib-types/components/form/ElmCheckbox.d.ts +0 -20
  305. package/lib-types/components/form/ElmCheckbox.d.ts.map +0 -1
  306. package/lib-types/components/form/ElmCheckbox.stories.d.ts +0 -7
  307. package/lib-types/components/form/ElmCheckbox.stories.d.ts.map +0 -1
  308. package/lib-types/components/form/ElmSelect.d.ts +0 -30
  309. package/lib-types/components/form/ElmSelect.d.ts.map +0 -1
  310. package/lib-types/components/form/ElmSelect.stories.d.ts +0 -8
  311. package/lib-types/components/form/ElmSelect.stories.d.ts.map +0 -1
  312. package/lib-types/components/form/ElmSwitch.d.ts +0 -24
  313. package/lib-types/components/form/ElmSwitch.d.ts.map +0 -1
  314. package/lib-types/components/form/ElmSwitch.stories.d.ts +0 -7
  315. package/lib-types/components/form/ElmSwitch.stories.d.ts.map +0 -1
  316. package/lib-types/components/form/ElmTextField.d.ts +0 -34
  317. package/lib-types/components/form/ElmTextField.d.ts.map +0 -1
  318. package/lib-types/components/form/ElmTextField.stories.d.ts +0 -7
  319. package/lib-types/components/form/ElmTextField.stories.d.ts.map +0 -1
  320. package/lib-types/components/form/ElmValidation.d.ts +0 -17
  321. package/lib-types/components/form/ElmValidation.d.ts.map +0 -1
  322. package/lib-types/components/form/ElmValidation.stories.d.ts +0 -7
  323. package/lib-types/components/form/ElmValidation.stories.d.ts.map +0 -1
  324. package/lib-types/components/icon/ElmArrowIcon.d.ts +0 -26
  325. package/lib-types/components/icon/ElmArrowIcon.d.ts.map +0 -1
  326. package/lib-types/components/icon/ElmArrowIcon.stories.d.ts +0 -7
  327. package/lib-types/components/icon/ElmArrowIcon.stories.d.ts.map +0 -1
  328. package/lib-types/components/icon/ElmBookmarkIcon.d.ts +0 -22
  329. package/lib-types/components/icon/ElmBookmarkIcon.d.ts.map +0 -1
  330. package/lib-types/components/icon/ElmBookmarkIcon.stories.d.ts +0 -9
  331. package/lib-types/components/icon/ElmBookmarkIcon.stories.d.ts.map +0 -1
  332. package/lib-types/components/icon/ElmCubeIcon.d.ts +0 -14
  333. package/lib-types/components/icon/ElmCubeIcon.d.ts.map +0 -1
  334. package/lib-types/components/icon/ElmCubeIcon.stories.d.ts +0 -7
  335. package/lib-types/components/icon/ElmCubeIcon.stories.d.ts.map +0 -1
  336. package/lib-types/components/icon/ElmDotLoadingIcon.d.ts +0 -20
  337. package/lib-types/components/icon/ElmDotLoadingIcon.d.ts.map +0 -1
  338. package/lib-types/components/icon/ElmDotLoadingIcon.stories.d.ts +0 -7
  339. package/lib-types/components/icon/ElmDotLoadingIcon.stories.d.ts.map +0 -1
  340. package/lib-types/components/icon/ElmInlineIcon.d.ts +0 -18
  341. package/lib-types/components/icon/ElmInlineIcon.d.ts.map +0 -1
  342. package/lib-types/components/icon/ElmInlineIcon.stories.d.ts +0 -7
  343. package/lib-types/components/icon/ElmInlineIcon.stories.d.ts.map +0 -1
  344. package/lib-types/components/icon/ElmLanguageIcon.d.ts +0 -19
  345. package/lib-types/components/icon/ElmLanguageIcon.d.ts.map +0 -1
  346. package/lib-types/components/icon/ElmLanguageIcon.stories.d.ts +0 -7
  347. package/lib-types/components/icon/ElmLanguageIcon.stories.d.ts.map +0 -1
  348. package/lib-types/components/icon/ElmLoginIcon.d.ts +0 -22
  349. package/lib-types/components/icon/ElmLoginIcon.d.ts.map +0 -1
  350. package/lib-types/components/icon/ElmLoginIcon.stories.d.ts +0 -7
  351. package/lib-types/components/icon/ElmLoginIcon.stories.d.ts.map +0 -1
  352. package/lib-types/components/icon/ElmMdiIcon.d.ts +0 -19
  353. package/lib-types/components/icon/ElmMdiIcon.d.ts.map +0 -1
  354. package/lib-types/components/icon/ElmMdiIcon.stories.d.ts +0 -7
  355. package/lib-types/components/icon/ElmMdiIcon.stories.d.ts.map +0 -1
  356. package/lib-types/components/icon/ElmSquareLoadingIcon.d.ts +0 -18
  357. package/lib-types/components/icon/ElmSquareLoadingIcon.d.ts.map +0 -1
  358. package/lib-types/components/icon/ElmSquareLoadingIcon.stories.d.ts +0 -7
  359. package/lib-types/components/icon/ElmSquareLoadingIcon.stories.d.ts.map +0 -1
  360. package/lib-types/components/icon/ElmToggleTheme.d.ts +0 -14
  361. package/lib-types/components/icon/ElmToggleTheme.d.ts.map +0 -1
  362. package/lib-types/components/icon/ElmToggleTheme.stories.d.ts +0 -7
  363. package/lib-types/components/icon/ElmToggleTheme.stories.d.ts.map +0 -1
  364. package/lib-types/components/icon/language.d.ts +0 -3
  365. package/lib-types/components/icon/language.d.ts.map +0 -1
  366. package/lib-types/components/media/ElmFile.d.ts +0 -22
  367. package/lib-types/components/media/ElmFile.d.ts.map +0 -1
  368. package/lib-types/components/media/ElmFile.stories.d.ts +0 -8
  369. package/lib-types/components/media/ElmFile.stories.d.ts.map +0 -1
  370. package/lib-types/components/media/ElmImage.d.ts +0 -34
  371. package/lib-types/components/media/ElmImage.d.ts.map +0 -1
  372. package/lib-types/components/media/ElmImage.stories.d.ts +0 -10
  373. package/lib-types/components/media/ElmImage.stories.d.ts.map +0 -1
  374. package/lib-types/components/navigation/ElmBookmark.d.ts +0 -53
  375. package/lib-types/components/navigation/ElmBookmark.d.ts.map +0 -1
  376. package/lib-types/components/navigation/ElmBookmark.stories.d.ts +0 -9
  377. package/lib-types/components/navigation/ElmBookmark.stories.d.ts.map +0 -1
  378. package/lib-types/components/navigation/ElmBreadcrumb.d.ts +0 -23
  379. package/lib-types/components/navigation/ElmBreadcrumb.d.ts.map +0 -1
  380. package/lib-types/components/navigation/ElmBreadcrumb.stories.d.ts +0 -8
  381. package/lib-types/components/navigation/ElmBreadcrumb.stories.d.ts.map +0 -1
  382. package/lib-types/components/navigation/ElmPageTop.d.ts +0 -14
  383. package/lib-types/components/navigation/ElmPageTop.d.ts.map +0 -1
  384. package/lib-types/components/navigation/ElmPageTop.stories.d.ts +0 -7
  385. package/lib-types/components/navigation/ElmPageTop.stories.d.ts.map +0 -1
  386. package/lib-types/components/navigation/ElmTableOfContents.d.ts +0 -18
  387. package/lib-types/components/navigation/ElmTableOfContents.d.ts.map +0 -1
  388. package/lib-types/components/navigation/ElmTableOfContents.stories.d.ts +0 -8
  389. package/lib-types/components/navigation/ElmTableOfContents.stories.d.ts.map +0 -1
  390. package/lib-types/components/others/ElmColorSample.d.ts +0 -12
  391. package/lib-types/components/others/ElmColorSample.d.ts.map +0 -1
  392. package/lib-types/components/others/ElmColorSample.stories.d.ts +0 -8
  393. package/lib-types/components/others/ElmColorSample.stories.d.ts.map +0 -1
  394. package/lib-types/components/others/ElmColorTable.d.ts +0 -15
  395. package/lib-types/components/others/ElmColorTable.d.ts.map +0 -1
  396. package/lib-types/components/others/ElmColorTable.stories.d.ts +0 -7
  397. package/lib-types/components/others/ElmColorTable.stories.d.ts.map +0 -1
  398. package/lib-types/components/others/ElmCommandPalette.d.ts +0 -34
  399. package/lib-types/components/others/ElmCommandPalette.d.ts.map +0 -1
  400. package/lib-types/components/others/ElmCommandPalette.stories.d.ts +0 -7
  401. package/lib-types/components/others/ElmCommandPalette.stories.d.ts.map +0 -1
  402. package/lib-types/components/others/ElmJarkup.d.ts +0 -30
  403. package/lib-types/components/others/ElmJarkup.d.ts.map +0 -1
  404. package/lib-types/components/others/ElmJarkup.stories.d.ts +0 -8
  405. package/lib-types/components/others/ElmJarkup.stories.d.ts.map +0 -1
  406. package/lib-types/components/others/ElmJsonComponentRenderer.d.ts +0 -14
  407. package/lib-types/components/others/ElmJsonComponentRenderer.d.ts.map +0 -1
  408. package/lib-types/components/others/ElmJsonComponentRenderer.stories.d.ts +0 -7
  409. package/lib-types/components/others/ElmJsonComponentRenderer.stories.d.ts.map +0 -1
  410. package/lib-types/components/others/ElmMarkdown.d.ts +0 -25
  411. package/lib-types/components/others/ElmMarkdown.d.ts.map +0 -1
  412. package/lib-types/components/others/ElmMarkdown.stories.d.ts +0 -7
  413. package/lib-types/components/others/ElmMarkdown.stories.d.ts.map +0 -1
  414. package/lib-types/components/others/ElmTyping.d.ts +0 -12
  415. package/lib-types/components/others/ElmTyping.d.ts.map +0 -1
  416. package/lib-types/components/others/ElmTyping.stories.d.ts +0 -8
  417. package/lib-types/components/others/ElmTyping.stories.d.ts.map +0 -1
  418. package/lib-types/components/table/ElmTable.d.ts +0 -26
  419. package/lib-types/components/table/ElmTable.d.ts.map +0 -1
  420. package/lib-types/components/table/ElmTable.stories.d.ts +0 -8
  421. package/lib-types/components/table/ElmTable.stories.d.ts.map +0 -1
  422. package/lib-types/components/table/ElmTableBody.d.ts +0 -8
  423. package/lib-types/components/table/ElmTableBody.d.ts.map +0 -1
  424. package/lib-types/components/table/ElmTableBody.stories.d.ts +0 -7
  425. package/lib-types/components/table/ElmTableBody.stories.d.ts.map +0 -1
  426. package/lib-types/components/table/ElmTableCell.d.ts +0 -17
  427. package/lib-types/components/table/ElmTableCell.d.ts.map +0 -1
  428. package/lib-types/components/table/ElmTableCell.stories.d.ts +0 -7
  429. package/lib-types/components/table/ElmTableCell.stories.d.ts.map +0 -1
  430. package/lib-types/components/table/ElmTableHeader.d.ts +0 -8
  431. package/lib-types/components/table/ElmTableHeader.d.ts.map +0 -1
  432. package/lib-types/components/table/ElmTableHeader.stories.d.ts +0 -7
  433. package/lib-types/components/table/ElmTableHeader.stories.d.ts.map +0 -1
  434. package/lib-types/components/table/ElmTableRow.d.ts +0 -8
  435. package/lib-types/components/table/ElmTableRow.d.ts.map +0 -1
  436. package/lib-types/components/table/ElmTableRow.stories.d.ts +0 -7
  437. package/lib-types/components/table/ElmTableRow.stories.d.ts.map +0 -1
  438. package/lib-types/components/table/TableContext.d.ts +0 -3
  439. package/lib-types/components/table/TableContext.d.ts.map +0 -1
  440. package/lib-types/components/template/ElmTemplate.d.ts +0 -10
  441. package/lib-types/components/template/ElmTemplate.d.ts.map +0 -1
  442. package/lib-types/components/template/ElmTemplate.stories.d.ts +0 -7
  443. package/lib-types/components/template/ElmTemplate.stories.d.ts.map +0 -1
  444. package/lib-types/components/typography/ElmBlockQuote.d.ts +0 -14
  445. package/lib-types/components/typography/ElmBlockQuote.d.ts.map +0 -1
  446. package/lib-types/components/typography/ElmBlockQuote.stories.d.ts +0 -7
  447. package/lib-types/components/typography/ElmBlockQuote.stories.d.ts.map +0 -1
  448. package/lib-types/components/typography/ElmCallout.d.ts +0 -15
  449. package/lib-types/components/typography/ElmCallout.d.ts.map +0 -1
  450. package/lib-types/components/typography/ElmCallout.stories.d.ts +0 -11
  451. package/lib-types/components/typography/ElmCallout.stories.d.ts.map +0 -1
  452. package/lib-types/components/typography/ElmDivider.d.ts +0 -10
  453. package/lib-types/components/typography/ElmDivider.d.ts.map +0 -1
  454. package/lib-types/components/typography/ElmDivider.stories.d.ts +0 -7
  455. package/lib-types/components/typography/ElmDivider.stories.d.ts.map +0 -1
  456. package/lib-types/components/typography/ElmFragmentIdentifier.d.ts +0 -14
  457. package/lib-types/components/typography/ElmFragmentIdentifier.d.ts.map +0 -1
  458. package/lib-types/components/typography/ElmFragmentIdentifier.stories.d.ts +0 -7
  459. package/lib-types/components/typography/ElmFragmentIdentifier.stories.d.ts.map +0 -1
  460. package/lib-types/components/typography/ElmHeading.d.ts +0 -32
  461. package/lib-types/components/typography/ElmHeading.d.ts.map +0 -1
  462. package/lib-types/components/typography/ElmHeading.stories.d.ts +0 -8
  463. package/lib-types/components/typography/ElmHeading.stories.d.ts.map +0 -1
  464. package/lib-types/components/typography/ElmInlineText.d.ts +0 -25
  465. package/lib-types/components/typography/ElmInlineText.d.ts.map +0 -1
  466. package/lib-types/components/typography/ElmInlineText.stories.d.ts +0 -13
  467. package/lib-types/components/typography/ElmInlineText.stories.d.ts.map +0 -1
  468. package/lib-types/components/typography/ElmList.d.ts +0 -16
  469. package/lib-types/components/typography/ElmList.d.ts.map +0 -1
  470. package/lib-types/components/typography/ElmList.stories.d.ts +0 -9
  471. package/lib-types/components/typography/ElmList.stories.d.ts.map +0 -1
  472. package/lib-types/components/typography/ElmParagraph.d.ts +0 -11
  473. package/lib-types/components/typography/ElmParagraph.d.ts.map +0 -1
  474. package/lib-types/components/typography/ElmParagraph.stories.d.ts +0 -8
  475. package/lib-types/components/typography/ElmParagraph.stories.d.ts.map +0 -1
  476. package/lib-types/components/typography/ElmTypingAnimation.d.ts +0 -22
  477. package/lib-types/components/typography/ElmTypingAnimation.d.ts.map +0 -1
  478. package/lib-types/components/typography/ElmTypingAnimation.stories.d.ts +0 -7
  479. package/lib-types/components/typography/ElmTypingAnimation.stories.d.ts.map +0 -1
  480. package/lib-types/hooks/useElmethisTheme.d.ts +0 -5
  481. package/lib-types/hooks/useElmethisTheme.d.ts.map +0 -1
  482. package/lib-types/hooks/useLocalStorage.d.ts +0 -14
  483. package/lib-types/hooks/useLocalStorage.d.ts.map +0 -1
  484. package/lib-types/hooks/useLocalStorage.stories.d.ts +0 -9
  485. package/lib-types/hooks/useLocalStorage.stories.d.ts.map +0 -1
  486. package/lib-types/hooks/useLocalStorageDispatch.d.ts +0 -2
  487. package/lib-types/hooks/useLocalStorageDispatch.d.ts.map +0 -1
  488. package/lib-types/hooks/useLocalStorageDispatch.stories.d.ts +0 -6
  489. package/lib-types/hooks/useLocalStorageDispatch.stories.d.ts.map +0 -1
  490. package/lib-types/lib.d.ts +0 -75
  491. package/lib-types/lib.d.ts.map +0 -1
  492. package/lib-types/styles/variables.d.ts +0 -10
  493. package/lib-types/styles/variables.d.ts.map +0 -1
@@ -0,0 +1,39 @@
1
+ /**
2
+ * React shape returned by {@link useDebouncedSignal}.
3
+ *
4
+ * Qwik returns three `Signal<T>` objects (`signal`, `debouncedSignal`,
5
+ * `isPending`). React has no signal/store split, so the equivalent is exposed
6
+ * as a `useState`-style tuple object: `value` + `setValue` replace the
7
+ * read/write `signal`, `debouncedValue` replaces the read-only
8
+ * `debouncedSignal`, and `isPending` is a plain boolean.
9
+ */
10
+ export interface UseDebouncedSignalReturn<T> {
11
+ /** The current value. Reflects every write to `setValue` immediately. */
12
+ value: T;
13
+ /** Writes a new value (or applies an updater). Mirrors qwik's `signal.value =`. */
14
+ setValue: React.Dispatch<React.SetStateAction<T>>;
15
+ /**
16
+ * The debounced value. Reflects `value` only after `delay` ms have elapsed
17
+ * since the last write. Rapid successive writes reset the timer so only the
18
+ * final value propagates.
19
+ */
20
+ debouncedValue: T;
21
+ /** `true` while a debounced update is queued but has not yet committed. */
22
+ isPending: boolean;
23
+ }
24
+ /**
25
+ * Returns a debounced value pair where writing through `setValue` drives a
26
+ * debounced update to `debouncedValue`.
27
+ *
28
+ * `value` reflects every write immediately.
29
+ * `debouncedValue` reflects the same value only after `delay` ms have elapsed
30
+ * since the last write. Rapid successive writes reset the timer so only the
31
+ * final value propagates to `debouncedValue`.
32
+ *
33
+ * When `delay` is 0 or negative, `debouncedValue` is updated synchronously.
34
+ *
35
+ * @param initialValue - The initial value for both `value` and `debouncedValue`.
36
+ * @param delay - Debounce delay in milliseconds.
37
+ */
38
+ export declare const useDebouncedSignal: <T>(initialValue: T | (() => T), delay: number) => UseDebouncedSignalReturn<T>;
39
+ //# sourceMappingURL=use-debounced-signal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-debounced-signal.d.ts","sourceRoot":"","sources":["../../src/hooks/use-debounced-signal.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,yEAAyE;IACzE,KAAK,EAAE,CAAC,CAAC;IACT,mFAAmF;IACnF,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC;IAClB,2EAA2E;IAC3E,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAClC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3B,OAAO,MAAM,KACZ,wBAAwB,CAAC,CAAC,CAmC5B,CAAC"}
@@ -0,0 +1,40 @@
1
+ import type { Dispatch, SetStateAction } from "react";
2
+ /**
3
+ * Returns a store pair with debounced reactivity.
4
+ *
5
+ * React port of qwik's `useDebouncedStore`. Qwik's signal/store model does not
6
+ * exist in React, so where qwik returned a deep-reactive proxy pair plus an
7
+ * `isPending` signal, this hook returns plain React state:
8
+ *
9
+ * - `store` — the current value, reflecting every write immediately.
10
+ * - `setStore` — the setter for `store` (accepts a value or an updater fn,
11
+ * exactly like a `useState` setter). Use it where qwik mutated the proxy
12
+ * in place (e.g. `setStore((s) => ({ ...s, query: next }))`).
13
+ * - `debouncedStore` — receives the same state only after `delay` ms have
14
+ * elapsed since the last write to `store`. Rapid successive writes reset the
15
+ * timer so only the final state propagates.
16
+ * - `isPending` — `true` while the debounce timer is active (a write to
17
+ * `store` has not yet propagated to `debouncedStore`).
18
+ *
19
+ * When `delay` is 0 or negative, `debouncedStore` tracks `store` synchronously.
20
+ *
21
+ * @param initialValue - The initial value for both stores.
22
+ * @param delay - Debounce delay in milliseconds.
23
+ *
24
+ * @example
25
+ * const { store, setStore, debouncedStore, isPending } = useDebouncedStore(
26
+ * { query: "" },
27
+ * 500,
28
+ * );
29
+ *
30
+ * // store.query updates on every keystroke
31
+ * // debouncedStore.query updates 500 ms after the user stops typing
32
+ * <input onInput={(e) => setStore((s) => ({ ...s, query: e.currentTarget.value }))} />
33
+ */
34
+ export declare function useDebouncedStore<T extends object>(initialValue: T, delay: number): {
35
+ store: T;
36
+ setStore: Dispatch<SetStateAction<T>>;
37
+ debouncedStore: T;
38
+ isPending: boolean;
39
+ };
40
+ //# sourceMappingURL=use-debounced-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-debounced-store.d.ts","sourceRoot":"","sources":["../../src/hooks/use-debounced-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAOtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,YAAY,EAAE,CAAC,EACf,KAAK,EAAE,MAAM,GACZ;IACD,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,cAAc,EAAE,CAAC,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB,CAgCA"}
@@ -0,0 +1,37 @@
1
+ export interface UseDelayedSignalReturn<T> {
2
+ /** Reflects the dispatched value immediately. */
3
+ value: T;
4
+ /** Receives the dispatched value after `delay` ms (or synchronously). */
5
+ delayedValue: T;
6
+ /** `true` while a timer is pending. */
7
+ isValueChanging: boolean;
8
+ /**
9
+ * Propagate `value` to `value` immediately and to `delayedValue` after
10
+ * `delay` ms, or synchronously when `delay` is omitted / `<= 0`.
11
+ */
12
+ dispatch: (value: T, delay?: number) => void;
13
+ }
14
+ /**
15
+ * Imperative companion to a debounced value: the consumer chooses *when*
16
+ * and *with what delay* a write should propagate from `value` (eager) to
17
+ * `delayedValue` (lagging).
18
+ *
19
+ * `value` reflects the dispatched value immediately.
20
+ * `delayedValue` receives the same value after `delay` ms, or synchronously
21
+ * when `delay` is omitted / `<= 0`.
22
+ *
23
+ * Calling `dispatch` again before the previous timer fires **cancels** the
24
+ * earlier pending update. Without that cancellation, two overlapping
25
+ * dispatches would race and the older value could clobber the newer one
26
+ * after both timers fire.
27
+ *
28
+ * `isValueChanging` is `true` while a timer is pending.
29
+ *
30
+ * Unlike the qwik twin (which returns a `{ signal, delayedSignal, dispatch }`
31
+ * trio of signals), this React port returns plain reactive values via
32
+ * `{ value, delayedValue, isValueChanging, dispatch }`.
33
+ *
34
+ * @param initialValue - Seed value for both `value` and `delayedValue`.
35
+ */
36
+ export declare const useDelayedSignal: <T>(initialValue: T) => UseDelayedSignalReturn<T>;
37
+ //# sourceMappingURL=use-delayed-signal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-delayed-signal.d.ts","sourceRoot":"","sources":["../../src/hooks/use-delayed-signal.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB,CAAC,CAAC;IACvC,iDAAiD;IACjD,KAAK,EAAE,CAAC,CAAC;IACT,yEAAyE;IACzE,YAAY,EAAE,CAAC,CAAC;IAChB,uCAAuC;IACvC,eAAe,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAChC,cAAc,CAAC,KACd,sBAAsB,CAAC,CAAC,CAwC1B,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Same-tab broadcast channel. Fired on `window` by `applyTheme` after every
3
+ * theme mutation. Each `useElmethisTheme()` call owns an independent piece of
4
+ * state, and the `storage` event only fires in *other* tabs — so without this
5
+ * event, sibling components in the same tab would never see a toggle.
6
+ * `detail` carries the new `Theme | null` (`null` = reverted to OS auto).
7
+ */
8
+ export declare const THEME_CHANGE_EVENT = "elmethis-theme-change";
9
+ type Theme = "light" | "dark";
10
+ /**
11
+ * Coerce a raw storage value into an explicit Theme, or `null` when no
12
+ * explicit choice is stored. `null` means "follow the OS" — i.e. fall back
13
+ * to the `color-scheme: light dark` default, which tracks
14
+ * `prefers-color-scheme`.
15
+ *
16
+ * Exported so the (otherwise inline) decision rule can be regression-tested
17
+ * directly without having to dispatch a real `StorageEvent`.
18
+ *
19
+ * Only the literal strings `"dark"` and `"light"` are explicit choices;
20
+ * anything else — including `null` (the key was cleared in another tab) and
21
+ * unknown strings — resolves to `null` (auto / OS).
22
+ */
23
+ export declare const parseTheme: (raw: string | null) => Theme | null;
24
+ export declare function useElmethisTheme(): {
25
+ isDarkTheme: boolean;
26
+ toggleTheme: () => void;
27
+ };
28
+ export {};
29
+ //# sourceMappingURL=use-elmethis-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-elmethis-theme.d.ts","sourceRoot":"","sources":["../../src/hooks/use-elmethis-theme.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAE1D,KAAK,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAE9B;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,GAAG,IAAI,KAAG,KAAK,GAAG,IACI,CAAC;AAmE7D,wBAAgB,gBAAgB;;;EAwE/B"}
@@ -0,0 +1,23 @@
1
+ import { type ReactNode } from "react";
2
+ export interface UseModalOptions {
3
+ /**
4
+ * Delay in **milliseconds** of the open/close fade animation.
5
+ */
6
+ delay?: number;
7
+ }
8
+ /**
9
+ * Imperative sugar over {@link ElmModal}. Owns a single `isOpen` intent state
10
+ * and returns `show` / `hide` / `toggle` to drive it, plus a `Modal` component
11
+ * that renders the native `<dialog>` (open/animate/close lifecycle and timer
12
+ * cleanup all live in `ElmModal`).
13
+ */
14
+ export declare const useModal: (options?: UseModalOptions) => {
15
+ Modal: ({ children }: {
16
+ children?: ReactNode;
17
+ }) => import("react").JSX.Element;
18
+ isOpen: boolean;
19
+ show: () => void;
20
+ hide: () => void;
21
+ toggle: () => void;
22
+ };
23
+ //# sourceMappingURL=use-modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-modal.d.ts","sourceRoot":"","sources":["../../src/hooks/use-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,UAAS,eAAoB;0BAwCnB;QAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE;;;;;CAe1D,CAAC"}
@@ -0,0 +1,35 @@
1
+ export type UseStorageOptions<T> = {
2
+ storageArea: "local" | "session";
3
+ key: string;
4
+ initialValue: T;
5
+ /** BroadcastChannel name for cross-tab sync (required for sessionStorage) */
6
+ channel?: string;
7
+ };
8
+ export type UseStorageReturn<T> = {
9
+ /** The current value. Initialized with `initialValue` until the client reads storage. */
10
+ state: T;
11
+ /** Update the value (and persist it to the storage area). */
12
+ setState: (value: T) => void;
13
+ /** Reset to `initialValue` and remove the key from the storage area. */
14
+ remove: () => void;
15
+ };
16
+ /**
17
+ * Persisted, cross-tab-synced state backed by `localStorage` / `sessionStorage`.
18
+ *
19
+ * React port of qwik's `useStorage`. Qwik's signal model does not exist in
20
+ * React, so where qwik returned `{ state, remove }` with `state` as a
21
+ * read/write `Signal<T>`, this returns `{ state, setState, remove }` — read
22
+ * `state`, write with `setState(next)`, clear with `remove()`.
23
+ *
24
+ * Reads happen only on the client (after mount), matching qwik's
25
+ * `useVisibleTask$({ strategy: "document-ready" })`. Cross-tab sync uses the
26
+ * native `storage` event for `localStorage`; `sessionStorage` (which does not
27
+ * emit `storage` across tabs) syncs via a `BroadcastChannel`. The channel is
28
+ * allocated once per mount and reused for every write/remove.
29
+ */
30
+ export declare const useStorage: <T>({ storageArea, key, initialValue, channel, }: UseStorageOptions<T>) => UseStorageReturn<T>;
31
+ export type UseLocalStorageOptions<T> = Omit<UseStorageOptions<T>, "storageArea">;
32
+ export declare const useLocalStorage: <T>({ key, initialValue, }: UseLocalStorageOptions<T>) => UseStorageReturn<T>;
33
+ export type UseSessionStorageOptions<T> = Omit<UseStorageOptions<T>, "storageArea">;
34
+ export declare const useSessionStorage: <T>({ key, initialValue, }: UseSessionStorageOptions<T>) => UseStorageReturn<T>;
35
+ //# sourceMappingURL=use-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-storage.d.ts","sourceRoot":"","sources":["../../src/hooks/use-storage.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IACjC,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,CAAC,CAAC;IAChB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,yFAAyF;IACzF,KAAK,EAAE,CAAC,CAAC;IACT,6DAA6D;IAC7D,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,wEAAwE;IACxE,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAKF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,8CAK3B,iBAAiB,CAAC,CAAC,CAAC,KAAG,gBAAgB,CAAC,CAAC,CA8G3C,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAAC,CAAC,IAAI,IAAI,CAC1C,iBAAiB,CAAC,CAAC,CAAC,EACpB,aAAa,CACd,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,wBAGhC,sBAAsB,CAAC,CAAC,CAAC,KAAG,gBAAgB,CAAC,CAAC,CAMhD,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,IAAI,CAC5C,iBAAiB,CAAC,CAAC,CAAC,EACpB,aAAa,CACd,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,wBAGlC,wBAAwB,CAAC,CAAC,CAAC,KAAG,gBAAgB,CAAC,CAAC,CAOlD,CAAC"}
@@ -0,0 +1,32 @@
1
+ export declare class ThrottledQueue {
2
+ private readonly queue;
3
+ private lastFinishedAt;
4
+ private running;
5
+ private destroyed;
6
+ private timer;
7
+ private readonly minInterval;
8
+ constructor(minInterval?: number);
9
+ push<T>(fn: () => Promise<T>): Promise<T>;
10
+ destroy(reason?: string): void;
11
+ private drain;
12
+ private scheduleNext;
13
+ }
14
+ /**
15
+ * Client-side throttled task queue.
16
+ *
17
+ * React port of qwik's `useThrottledQueue`. Qwik returned a
18
+ * `Signal<NoSerialize<ThrottledQueue>>` instantiated in a mount-time
19
+ * `useVisibleTask$`. React has no signal/serialization model, so the queue is
20
+ * held in a ref and created on mount via `useEffect` (which, like
21
+ * `useVisibleTask$`, only runs on the client). The hook returns the
22
+ * `ThrottledQueue` instance directly.
23
+ *
24
+ * The queue is created lazily on first client render and destroyed on unmount,
25
+ * rejecting any still-pending tasks.
26
+ *
27
+ * @example
28
+ * const queue = useThrottledQueue(200);
29
+ * await queue?.push(async () => doWork());
30
+ */
31
+ export declare function useThrottledQueue(minInterval?: number): ThrottledQueue | null;
32
+ //# sourceMappingURL=use-throttled-queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-throttled-queue.d.ts","sourceRoot":"","sources":["../../src/hooks/use-throttled-queue.tsx"],"names":[],"mappings":"AAIA,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,WAAW,SAAM;IAI7B,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAmBzC,OAAO,CAAC,MAAM,SAA6B,GAAG,IAAI;IAgBlD,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,YAAY;CAiBrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,SAAM,GAAG,cAAc,GAAG,IAAI,CA0B1E"}
@@ -0,0 +1,47 @@
1
+ import { type Dispatch, type SetStateAction } from "react";
2
+ export interface UseThrottledSignalReturn<T> {
3
+ /** Reflects every write immediately. */
4
+ value: T;
5
+ /** Setter for `value`. Writing drives the throttled update. */
6
+ setValue: Dispatch<SetStateAction<T>>;
7
+ /** Leading + trailing edge throttled view of `value`. */
8
+ throttledValue: T;
9
+ /** `true` while the throttle cooldown window is active. */
10
+ isCooling: boolean;
11
+ }
12
+ /**
13
+ * Returns reactive state where writing to `value` drives a leading + trailing
14
+ * edge throttled update to `throttledValue`.
15
+ *
16
+ * React port of qwik's `useThrottledSignal`. Qwik's signal model does not exist
17
+ * in React, so where qwik returned a `{ signal, throttledSignal, isCooling }`
18
+ * trio of `Signal<T>`, the React idiom returns
19
+ * `{ value, setValue, throttledValue, isCooling }` — `value`/`setValue` is the
20
+ * usual `useState` pair, `throttledValue` and `isCooling` are read-only.
21
+ *
22
+ * `value` reflects every write immediately.
23
+ * `throttledValue` updates on the *leading edge* of each throttle window: the
24
+ * first write within any `interval` ms window propagates at once. Further
25
+ * writes within the same window are suppressed, but the most recent suppressed
26
+ * value is delivered on the *trailing edge* when the window expires, and a
27
+ * fresh window starts.
28
+ *
29
+ * `isCooling` is `true` while the throttle cooldown window is active.
30
+ *
31
+ * When `interval` is 0 or negative, `throttledValue` is updated synchronously
32
+ * alongside `value` (no throttling).
33
+ *
34
+ * @param initialValue - The initial value for both `value` and `throttledValue`.
35
+ * @param interval - Throttle interval in milliseconds.
36
+ *
37
+ * @example
38
+ * ```tsx
39
+ * const { value, setValue, throttledValue, isCooling } = useThrottledSignal(0, 200);
40
+ *
41
+ * // value updates on every mousemove
42
+ * // throttledValue updates at most once every 200 ms
43
+ * <div onMouseMove={(e) => setValue(e.clientX)} />
44
+ * ```
45
+ */
46
+ export declare const useThrottledSignal: <T>(initialValue: T | (() => T), interval: number) => UseThrottledSignalReturn<T>;
47
+ //# sourceMappingURL=use-throttled-signal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-throttled-signal.d.ts","sourceRoot":"","sources":["../../src/hooks/use-throttled-signal.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,cAAc,EACpB,MAAM,OAAO,CAAC;AAEf,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,wCAAwC;IACxC,KAAK,EAAE,CAAC,CAAC;IACT,+DAA+D;IAC/D,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,yDAAyD;IACzD,cAAc,EAAE,CAAC,CAAC;IAClB,2DAA2D;IAC3D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAClC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3B,UAAU,MAAM,KACf,wBAAwB,CAAC,CAAC,CAiE5B,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { type Dispatch, type SetStateAction } from "react";
2
+ export interface UseThrottledStoreReturn<T extends object> {
3
+ /** Reflects every write immediately. */
4
+ value: T;
5
+ /** Setter for `value`. Writing drives the throttled update. */
6
+ setValue: Dispatch<SetStateAction<T>>;
7
+ /** Leading + trailing edge throttled view of `value`. */
8
+ throttledValue: T;
9
+ /** `true` while the throttle cooldown window is active. */
10
+ isCooling: boolean;
11
+ }
12
+ /**
13
+ * Returns reactive struct state where writing to `value` drives a leading +
14
+ * trailing edge throttled update to `throttledValue`.
15
+ *
16
+ * React port of qwik's `useThrottledStore`. Qwik's store model — a mutable,
17
+ * deep-reactive `Proxy<T>` you mutate in place (`store.x = 1`) — does not exist
18
+ * in React. Where qwik returned a `{ store, throttledStore, isCooling }` trio of
19
+ * proxies, this port returns `{ value, setValue, throttledValue, isCooling }`:
20
+ * `value`/`setValue` is the usual `useState` pair, `throttledValue` and
21
+ * `isCooling` are read-only. To update a field, set a fresh object:
22
+ * `setValue((prev) => ({ ...prev, name: "Alice" }))`.
23
+ *
24
+ * Because React state is immutable, the deep-clone / key-stripping machinery the
25
+ * qwik twin needs to isolate the two proxies and delete stale keys is not
26
+ * required here — callers hand the hook fresh objects. Equality between the two
27
+ * stores is compared **structurally** (`es-toolkit` `isEqual`), so setting a
28
+ * fresh object that is deeply equal to the current `throttledValue` does not
29
+ * arm a throttle window.
30
+ *
31
+ * `value` reflects every write immediately.
32
+ * `throttledValue` updates on the *leading edge* of each throttle window: the
33
+ * first write within any `interval` ms window propagates at once. Further writes
34
+ * within the same window are suppressed, but the most recent suppressed value is
35
+ * delivered on the *trailing edge* when the window expires, and a fresh window
36
+ * starts.
37
+ *
38
+ * `isCooling` is `true` while the throttle cooldown window is active.
39
+ *
40
+ * When `interval` is 0 or negative, `throttledValue` is updated synchronously
41
+ * alongside `value` (no throttling).
42
+ *
43
+ * Aliasing footgun: passing a module-scope object as `initialValue` will share
44
+ * its nested references across every component instance. Pass a fresh object
45
+ * literal at the call site so updates do not leak between instances.
46
+ *
47
+ * @param initialValue - The initial value for both `value` and `throttledValue`.
48
+ * @param interval - Throttle interval in milliseconds.
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * const { value, setValue, throttledValue, isCooling } =
53
+ * useThrottledStore({ x: 0, y: 0 }, 100);
54
+ *
55
+ * // value updates on every mousemove
56
+ * // throttledValue updates at most once every 100 ms
57
+ * <div onMouseMove={(e) => setValue({ x: e.clientX, y: e.clientY })} />
58
+ * ```
59
+ */
60
+ export declare const useThrottledStore: <T extends object>(initialValue: T | (() => T), interval: number) => UseThrottledStoreReturn<T>;
61
+ //# sourceMappingURL=use-throttled-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-throttled-store.d.ts","sourceRoot":"","sources":["../../src/hooks/use-throttled-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,cAAc,EACpB,MAAM,OAAO,CAAC;AAGf,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,MAAM;IACvD,wCAAwC;IACxC,KAAK,EAAE,CAAC,CAAC;IACT,+DAA+D;IAC/D,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,yDAAyD;IACzD,cAAc,EAAE,CAAC,CAAC;IAClB,2DAA2D;IAC3D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,MAAM,EAChD,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC3B,UAAU,MAAM,KACf,uBAAuB,CAAC,CAAC,CAiE3B,CAAC"}
@@ -0,0 +1,63 @@
1
+ import "@elmethis/core/tokens.css";
2
+ export { ElmA2ui, type ElmA2uiProps } from "./components/a2ui/elm-a2ui";
3
+ export { blockCatalog, blockComponents, blockFunctions, } from "./components/a2ui/catalog/block-catalog";
4
+ export { ElmCodeBlock, type ElmCodeBlockProps, } from "./components/code/elm-code-block";
5
+ export { ElmKatex, type ElmKatexProps } from "./components/code/elm-katex";
6
+ export { ElmShikiHighlighter, type ElmShikiHighlighterProps, } from "./components/code/elm-shiki-highlighter";
7
+ export { ElmCollapse, type ElmCollapseProps, } from "./components/containments/elm-collapse";
8
+ export { ElmModal, type ElmModalProps, } from "./components/containments/elm-modal";
9
+ export { ElmParallax, type ElmParallaxProps, } from "./components/containments/elm-parallax";
10
+ export { ElmTab, ElmTabList, ElmTabPanel, ElmTabs, type ElmTabListProps, type ElmTabPanelProps, type ElmTabProps, type ElmTabsProps, } from "./components/containments/elm-tabs";
11
+ export { ElmToggle, type ElmToggleProps, } from "./components/containments/elm-toggle";
12
+ export { ElmTooltip, type ElmTooltipProps, } from "./components/containments/elm-tooltip";
13
+ export { ElmBlockFallback, type ElmBlockFallbackProps, } from "./components/fallback/elm-block-fallback";
14
+ export { ElmRectangleWave, type ElmRectangleWaveProps, } from "./components/fallback/elm-rectangle-wave";
15
+ export { ElmUnsupportedBlock, type ElmUnsupportedBlockProps, } from "./components/fallback/elm-unsupported-block";
16
+ export { ElmButton, type ElmButtonProps } from "./components/form/elm-button";
17
+ export { ElmCheckbox, type ElmCheckboxProps, } from "./components/form/elm-checkbox";
18
+ export { ElmSelect, type ElmSelectOption, type ElmSelectProps, } from "./components/form/elm-select";
19
+ export { ElmSwitch, type ElmSwitchProps } from "./components/form/elm-switch";
20
+ export { ElmTextArea, type ElmTextAreaProps, } from "./components/form/elm-text-area";
21
+ export { ElmTextField, type ElmTextFieldProps, } from "./components/form/elm-text-field";
22
+ export { ElmValidation, type ElmValidationProps, } from "./components/form/elm-validation";
23
+ export { ElmCopyIcon, type ElmCopyIconProps, } from "./components/icon/elm-copy-icon";
24
+ export { ElmDotLoadingIcon, type ElmDotLoadingIconProps, } from "./components/icon/elm-dot-loading-icon";
25
+ export { ElmInlineIcon, type ElmInlineIconProps, } from "./components/icon/elm-inline-icon";
26
+ export { ElmLanguageIcon, type ElmLanguageIconProps, } from "./components/icon/elm-language-icon";
27
+ export { ElmMdiIcon, type ElmMdiIconProps, } from "./components/icon/elm-mdi-icon";
28
+ export { ElmSquareLoadingIcon, type ElmSquareLoadingIconProps, } from "./components/icon/elm-square-loading-icon";
29
+ export { ElmToggleTheme, type ElmToggleThemeProps, } from "./components/icon/elm-toggle-theme";
30
+ export { ElmBlockImage, type ElmBlockImageProps, } from "./components/media/elm-block-image";
31
+ export { ElmFile, type ElmFileProps } from "./components/media/elm-file";
32
+ export { ElmBookmark, type ElmBookmarkProps, } from "./components/navigation/elm-bookmark";
33
+ export { ElmBreadcrumb, type ElmBreadcrumbProps, } from "./components/navigation/elm-breadcrumb";
34
+ export { ElmPageTop, type ElmPageTopProps, } from "./components/navigation/elm-page-top";
35
+ export { ElmColorPrimitiveSample, type ElmColorPrimitiveSampleProps, } from "./components/others/elm-color-primitive-sample";
36
+ export { ElmColorSemanticSample, type ElmColorSemanticSampleProps, } from "./components/others/elm-color-semantic-sample";
37
+ export { ElmJarkup, type ElmJarkupProps } from "./components/others/elm-jarkup";
38
+ export { ElmMarkdown, type ElmMarkdownProps, } from "./components/others/elm-markdown";
39
+ export { useWordle, type UseWordleOptions, type LetterResult, type LetterStatus, type GameStatus, } from "./components/others/use-wordle";
40
+ export * from "./components/table";
41
+ export { ElmBlockQuote, type ElmBlockQuoteProps, } from "./components/typography/elm-block-quote";
42
+ export { ElmCallout, type ElmCalloutProps, } from "./components/typography/elm-callout";
43
+ export { ElmDivider, type ElmDividerProps, } from "./components/typography/elm-divider";
44
+ export { ElmFragmentIdentifier, type ElmFragmentIdentifierProps, } from "./components/typography/elm-fragment-identifier";
45
+ export { ElmHeading, type ElmHeadingProps, } from "./components/typography/elm-heading";
46
+ export { ElmInlineText, type ElmInlineTextProps, } from "./components/typography/elm-inline-text";
47
+ export { ElmList, type ElmListProps } from "./components/typography/elm-list";
48
+ export { ElmParagraph, type ElmParagraphProps, } from "./components/typography/elm-paragraph";
49
+ export { useAsyncState, type UseAsyncStateOptions, type UseAsyncStateReturn, } from "./hooks/use-async-state";
50
+ export { useAutoAnimate, type UseAutoAnimateOptions, } from "./hooks/use-auto-animate";
51
+ export { useBindableSignal } from "./hooks/use-bindable-signal";
52
+ export { useClipboard, type UseClipboardOptions } from "./hooks/use-clipboard";
53
+ export { useBindableStore } from "./hooks/use-bindable-store";
54
+ export { useDebouncedSignal, type UseDebouncedSignalReturn, } from "./hooks/use-debounced-signal";
55
+ export { useDebouncedStore } from "./hooks/use-debounced-store";
56
+ export { useDelayedSignal, type UseDelayedSignalReturn, } from "./hooks/use-delayed-signal";
57
+ export { THEME_CHANGE_EVENT, useElmethisTheme, } from "./hooks/use-elmethis-theme";
58
+ export { useLocalStorage, type UseLocalStorageOptions, useSessionStorage, type UseSessionStorageOptions, } from "./hooks/use-storage";
59
+ export { useModal, type UseModalOptions } from "./hooks/use-modal";
60
+ export { useThrottledQueue, ThrottledQueue } from "./hooks/use-throttled-queue";
61
+ export { useThrottledSignal, type UseThrottledSignalReturn, } from "./hooks/use-throttled-signal";
62
+ export { useThrottledStore, type UseThrottledStoreReturn, } from "./hooks/use-throttled-store";
63
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,28 +1,24 @@
1
1
  {
2
2
  "name": "@elmethis/react",
3
- "version": "0.3.19",
3
+ "version": "0.4.0",
4
+ "description": "React component library for elmethis.",
4
5
  "publishConfig": {
5
6
  "access": "public"
6
7
  },
8
+ "private": false,
7
9
  "type": "module",
8
- "author": "Ikuma Yamashita",
9
- "repository": {
10
- "type": "git",
11
- "url": "git@github.com:46ki75/elmethis.git"
12
- },
13
10
  "main": "./lib/index.react.mjs",
14
- "react": "./lib/index.react.mjs",
15
- "types": "./lib-types/index.d.ts",
16
11
  "module": "./lib/index.react.mjs",
12
+ "types": "./lib-types/index.d.ts",
17
13
  "exports": {
18
14
  ".": {
19
- "types": "./lib-types/lib.d.ts",
15
+ "types": "./lib-types/index.d.ts",
20
16
  "import": {
21
- "types": "./lib-types/lib.d.ts",
17
+ "types": "./lib-types/index.d.ts",
22
18
  "default": "./lib/index.react.mjs"
23
19
  },
24
20
  "require": {
25
- "types": "./lib-types/lib.d.ts",
21
+ "types": "./lib-types/index.d.ts",
26
22
  "default": "./lib/index.react.cjs"
27
23
  }
28
24
  },
@@ -34,49 +30,83 @@
34
30
  "lib",
35
31
  "lib-types"
36
32
  ],
33
+ "sideEffects": [
34
+ "**/*.css"
35
+ ],
36
+ "engines": {
37
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
38
+ },
39
+ "peerDependencies": {
40
+ "react": ">=19",
41
+ "react-dom": ">=19"
42
+ },
37
43
  "dependencies": {
38
- "@iconify-json/devicon": "^1.2.62",
39
- "@iconify-json/mdi": "^1.2.3",
40
- "@iconify/react": "^6.0.2",
44
+ "@46ki75/ikuma-theme": "^0.0.10",
45
+ "@a2ui/react": "^0.10.0",
46
+ "@a2ui/web_core": "^0.10.0",
47
+ "@formkit/auto-animate": "^0.9.0",
41
48
  "@mdi/js": "^7.4.47",
42
- "@radix-ui/react-use-controllable-state": "^1.2.2",
49
+ "@radix-ui/react-use-controllable-state": "^1.2.3",
43
50
  "clsx": "^2.1.1",
51
+ "dompurify": "^3.4.2",
52
+ "es-toolkit": "^1.47.1",
44
53
  "jarkup-ts": "^0.14.0",
45
- "katex": "^0.16.45",
46
- "lodash-es": "^4.18.1",
47
- "marked": "^18.0.0",
48
- "mermaid": "^11.14.0",
49
- "polished": "^4.3.1",
50
- "react": "^19.2.5",
51
- "react-dom": "^19.2.5",
52
- "shiki": "^4.0.2"
54
+ "katex": "^0.17.0",
55
+ "marked": "^18.0.5",
56
+ "shiki": "^4.2.0",
57
+ "usehooks-ts": "^3.1.1",
58
+ "zod": "^3",
59
+ "@elmethis/core": "^0.10.0"
53
60
  },
54
61
  "devDependencies": {
55
- "@copilotkit/react-core": "^1.56.2",
56
- "@eslint/js": "^10.0.1",
57
- "@storybook/addon-docs": "^10.3.5",
58
- "@storybook/react-vite": "^10.3.5",
59
- "@types/lodash-es": "^4.17.12",
60
- "@types/node": "^24.12.2",
61
- "@types/react": "^19.2.14",
62
+ "@eslint/js": "latest",
63
+ "@storybook/addon-docs": "^10.4.4",
64
+ "@storybook/react-vite": "^10.4.4",
65
+ "@testing-library/jest-dom": "^6.9.0",
66
+ "@testing-library/react": "^16.3.0",
67
+ "@types/katex": "^0.16.8",
68
+ "@types/node": "^25.7.0",
69
+ "@types/react": "^19.2.17",
62
70
  "@types/react-dom": "^19.2.3",
63
- "@vitejs/plugin-react": "^6.0.1",
64
- "eslint": "^10.2.0",
65
- "eslint-plugin-react-hooks": "^7.0.1",
71
+ "@vitejs/plugin-react": "^6.0.2",
72
+ "@vitest/browser-playwright": "^4.1.8",
73
+ "@vitest/ui": "^4.1.8",
74
+ "concurrently": "^10.0.3",
75
+ "eslint": "^10.4.1",
76
+ "eslint-plugin-react-hooks": "^7.1.1",
66
77
  "eslint-plugin-react-refresh": "^0.5.2",
67
- "globals": "^17.5.0",
68
- "prettier": "3.8.3",
69
- "storybook": "^10.3.5",
70
- "typescript": "~6.0.2",
71
- "typescript-eslint": "^8.58.2",
72
- "vite": "^8.0.4"
78
+ "globals": "^17.6.0",
79
+ "happy-dom": "^20.10.2",
80
+ "playwright": "^1.60.0",
81
+ "prettier": "3.8.4",
82
+ "react": "^19.2.7",
83
+ "react-dom": "^19.2.7",
84
+ "storybook": "^10.4.4",
85
+ "stylelint": "^17.13.0",
86
+ "stylelint-config-css-modules": "^4.6.0",
87
+ "stylelint-config-standard": "^40.0.0",
88
+ "stylelint-value-no-unknown-custom-properties": "^6.1.1",
89
+ "typescript": "~6.0.3",
90
+ "typescript-eslint": "^8.61.0",
91
+ "vite": "^8.0.4",
92
+ "vitest": "^4.1.8",
93
+ "vitest-browser-react": "^2.2.0"
73
94
  },
74
95
  "scripts": {
75
- "build": "tsc --noEmit && vite build && pnpm run build.types",
96
+ "build": "pnpm run build.lib && pnpm run build.types",
97
+ "build.lib": "vite build",
76
98
  "build.types": "tsc --project tsconfig.lib.json",
77
- "lint": "eslint .",
78
- "format": "prettier --write ./src",
79
- "storybook": "storybook dev -p 6006 --no-open",
80
- "build-storybook": "storybook build"
99
+ "build-storybook": "storybook build",
100
+ "dev": "storybook dev -p 19221 --no-open",
101
+ "fmt": "prettier --write ./src",
102
+ "fmt.check": "prettier --check ./src",
103
+ "lint": "eslint \"src/**/*.ts*\"",
104
+ "lint.css": "stylelint \"src/**/*.css\"",
105
+ "test": "pnpm run test.unit && pnpm run test.browser",
106
+ "test.unit": "vitest --run",
107
+ "test.browser": "vitest --run --config vitest.browser.config.ts",
108
+ "test.build": "pnpm run build && pnpm run build-storybook",
109
+ "check": "concurrently -g \"pnpm:fmt.check\" \"pnpm:lint\" \"pnpm:lint.css\" \"pnpm:test.unit\" \"pnpm:test.browser\"",
110
+ "check.ci": "concurrently -g \"pnpm:check\" \"pnpm:test.build\""
81
111
  }
82
112
  }