@elmethis/core 1.0.0-alpha.19 → 1.0.0-alpha.191

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 (314) hide show
  1. package/dist/_virtual/_plugin-vue_export-helper.mjs +10 -0
  2. package/dist/components/{headings/ElmHeading4.stories.d.ts → badge/ElmBadge.stories.d.ts} +2 -2
  3. package/dist/components/{typography/ElmBulletedList.vue.d.ts → badge/ElmBadge.vue.d.ts} +8 -7
  4. package/dist/components/badge/ElmBadge.vue.mjs +10 -0
  5. package/dist/components/badge/ElmBadge.vue2.mjs +33 -0
  6. package/dist/components/badge/ElmBadge.vue3.mjs +26 -0
  7. package/dist/components/badge/ElmTag.stories.d.ts +7 -0
  8. package/dist/components/badge/ElmTag.vue.d.ts +14 -0
  9. package/dist/components/badge/ElmTag.vue.mjs +10 -0
  10. package/dist/components/badge/ElmTag.vue2.mjs +39 -0
  11. package/dist/components/badge/ElmTag.vue3.mjs +26 -0
  12. package/dist/components/code/ElmCodeBlock.stories.d.ts +2 -0
  13. package/dist/components/code/ElmCodeBlock.vue.d.ts +31 -2
  14. package/dist/components/code/ElmCodeBlock.vue.mjs +23 -0
  15. package/dist/components/code/ElmCodeBlock.vue2.mjs +127 -0
  16. package/dist/components/code/ElmCodeBlock.vue3.mjs +42 -0
  17. package/dist/components/code/ElmKatex.vue.d.ts +3 -1
  18. package/dist/components/code/ElmKatex.vue.mjs +10 -0
  19. package/dist/components/code/ElmKatex.vue2.mjs +67 -0
  20. package/dist/components/code/ElmKatex.vue3.mjs +20 -0
  21. package/dist/components/code/ElmShikiHighlighter.stories.d.ts +6 -0
  22. package/dist/components/code/ElmShikiHighlighter.vue.d.ts +22 -0
  23. package/dist/components/code/ElmShikiHighlighter.vue.mjs +23 -0
  24. package/dist/components/code/ElmShikiHighlighter.vue2.mjs +55 -0
  25. package/dist/components/code/ElmShikiHighlighter.vue3.mjs +20 -0
  26. package/dist/components/code/shikiInstance.d.ts +2 -0
  27. package/dist/components/code/shikiInstance.mjs +76 -0
  28. package/dist/components/containments/ElmColumn.vue.d.ts +3 -2
  29. package/dist/components/containments/ElmColumn.vue.mjs +10 -0
  30. package/dist/components/containments/ElmColumn.vue2.mjs +16 -0
  31. package/dist/components/containments/ElmColumn.vue3.mjs +20 -0
  32. package/dist/components/containments/ElmColumnList.vue.d.ts +3 -2
  33. package/dist/components/containments/ElmColumnList.vue.mjs +10 -0
  34. package/dist/components/containments/ElmColumnList.vue2.mjs +16 -0
  35. package/dist/components/containments/ElmColumnList.vue3.mjs +18 -0
  36. package/dist/components/containments/ElmDesktopWindow.vue.d.ts +3 -2
  37. package/dist/components/containments/ElmDesktopWindow.vue.mjs +10 -0
  38. package/dist/components/containments/ElmDesktopWindow.vue2.mjs +42 -0
  39. package/dist/components/containments/ElmDesktopWindow.vue3.mjs +26 -0
  40. package/dist/components/containments/ElmModal.vue.d.ts +8 -7
  41. package/dist/components/containments/ElmModal.vue.mjs +23 -0
  42. package/dist/components/containments/ElmModal.vue2.mjs +44 -0
  43. package/dist/components/containments/ElmModal.vue3.mjs +23 -0
  44. package/dist/components/containments/ElmParallax.vue.mjs +10 -0
  45. package/dist/components/containments/ElmParallax.vue2.mjs +35 -0
  46. package/dist/components/containments/ElmParallax.vue3.mjs +20 -0
  47. package/dist/components/containments/ElmSnackbar.stories.d.ts +6 -0
  48. package/dist/components/containments/ElmSnackbar.vue.d.ts +11 -0
  49. package/dist/components/containments/ElmSnackbar.vue.mjs +10 -0
  50. package/dist/components/containments/ElmSnackbar.vue2.mjs +39 -0
  51. package/dist/components/containments/ElmSnackbar.vue3.mjs +26 -0
  52. package/dist/components/containments/ElmSnackbarContainer.vue.d.ts +10 -0
  53. package/dist/components/containments/ElmSnackbarContainer.vue.mjs +23 -0
  54. package/dist/components/containments/ElmSnackbarContainer.vue2.mjs +33 -0
  55. package/dist/components/containments/ElmSnackbarContainer.vue3.mjs +19 -0
  56. package/dist/components/containments/ElmToggle.stories.d.ts +1 -0
  57. package/dist/components/containments/ElmToggle.vue.d.ts +21 -10
  58. package/dist/components/containments/ElmToggle.vue.mjs +23 -0
  59. package/dist/components/containments/ElmToggle.vue2.mjs +103 -0
  60. package/dist/components/containments/ElmToggle.vue3.mjs +33 -0
  61. package/dist/components/containments/ElmTooltip.vue.d.ts +5 -2
  62. package/dist/components/containments/ElmTooltip.vue.mjs +23 -0
  63. package/dist/components/containments/ElmTooltip.vue2.mjs +49 -0
  64. package/dist/components/containments/ElmTooltip.vue3.mjs +20 -0
  65. package/dist/components/containments/useSnackbarState.d.ts +28 -0
  66. package/dist/components/data/ElmMultiProgress.stories.d.ts +6 -0
  67. package/dist/components/data/ElmMultiProgress.vue.d.ts +30 -0
  68. package/dist/components/data/ElmMultiProgress.vue.mjs +10 -0
  69. package/dist/components/data/ElmMultiProgress.vue2.mjs +45 -0
  70. package/dist/components/data/ElmMultiProgress.vue3.mjs +23 -0
  71. package/dist/components/data/ElmProgress.stories.d.ts +1 -0
  72. package/dist/components/data/ElmProgress.vue.d.ts +6 -1
  73. package/dist/components/data/ElmProgress.vue.mjs +10 -0
  74. package/dist/components/data/ElmProgress.vue2.mjs +53 -0
  75. package/dist/components/data/ElmProgress.vue3.mjs +32 -0
  76. package/dist/components/data/ElmStatusMessage.stories.d.ts +9 -0
  77. package/dist/components/data/ElmStatusMessage.vue.d.ts +6 -0
  78. package/dist/components/data/ElmStatusMessage.vue.mjs +23 -0
  79. package/dist/components/data/ElmStatusMessage.vue2.mjs +75 -0
  80. package/dist/components/data/ElmStatusMessage.vue3.mjs +23 -0
  81. package/dist/components/fallback/ElmBlockFallback.stories.d.ts +6 -0
  82. package/dist/components/fallback/ElmBlockFallback.vue.d.ts +4 -0
  83. package/dist/components/fallback/ElmBlockFallback.vue.mjs +10 -0
  84. package/dist/components/fallback/ElmBlockFallback.vue2.mjs +17 -0
  85. package/dist/components/fallback/ElmBlockFallback.vue3.mjs +18 -0
  86. package/dist/components/fallback/ElmRectangleWave.vue.d.ts +1 -1
  87. package/dist/components/fallback/ElmRectangleWave.vue.mjs +10 -0
  88. package/dist/components/fallback/ElmRectangleWave.vue2.mjs +15 -0
  89. package/dist/components/fallback/ElmRectangleWave.vue3.mjs +21 -0
  90. package/dist/components/{headings/ElmHeading1.stories.d.ts → fallback/ElmSpinner.stories.d.ts} +2 -2
  91. package/dist/components/fallback/ElmSpinner.vue.d.ts +9 -0
  92. package/dist/components/fallback/ElmSpinner.vue.mjs +10 -0
  93. package/dist/components/fallback/ElmSpinner.vue2.mjs +30 -0
  94. package/dist/components/fallback/ElmSpinner.vue3.mjs +24 -0
  95. package/dist/components/fallback/ElmUnsupportedBlock.stories.d.ts +6 -0
  96. package/dist/components/fallback/ElmUnsupportedBlock.vue.d.ts +5 -0
  97. package/dist/components/fallback/ElmUnsupportedBlock.vue.mjs +10 -0
  98. package/dist/components/fallback/ElmUnsupportedBlock.vue2.mjs +46 -0
  99. package/dist/components/fallback/ElmUnsupportedBlock.vue3.mjs +29 -0
  100. package/dist/components/form/ElmButton.stories.d.ts +11 -0
  101. package/dist/components/form/ElmButton.vue.d.ts +41 -0
  102. package/dist/components/form/ElmButton.vue.mjs +23 -0
  103. package/dist/components/form/ElmButton.vue2.mjs +68 -0
  104. package/dist/components/form/ElmButton.vue3.mjs +36 -0
  105. package/dist/components/form/ElmCheckbox.vue.d.ts +16 -6
  106. package/dist/components/form/ElmCheckbox.vue.mjs +10 -0
  107. package/dist/components/form/ElmCheckbox.vue2.mjs +177 -0
  108. package/dist/components/form/ElmCheckbox.vue3.mjs +34 -0
  109. package/dist/components/{headings/ElmHeading2.stories.d.ts → form/ElmSwitch.stories.d.ts} +2 -2
  110. package/dist/components/form/ElmSwitch.vue.d.ts +32 -0
  111. package/dist/components/form/ElmSwitch.vue.mjs +10 -0
  112. package/dist/components/form/ElmSwitch.vue2.mjs +61 -0
  113. package/dist/components/form/ElmSwitch.vue3.mjs +28 -0
  114. package/dist/components/form/ElmTextField.stories.d.ts +6 -0
  115. package/dist/components/form/ElmTextField.vue.d.ts +30 -0
  116. package/dist/components/form/ElmTextField.vue.mjs +10 -0
  117. package/dist/components/form/ElmTextField.vue2.mjs +124 -0
  118. package/dist/components/form/ElmTextField.vue3.mjs +46 -0
  119. package/dist/components/{headings/ElmHeading3.stories.d.ts → form/ElmTotp.stories.d.ts} +2 -2
  120. package/dist/components/form/ElmTotp.vue.d.ts +12 -0
  121. package/dist/components/form/ElmTotp.vue.mjs +10 -0
  122. package/dist/components/form/ElmTotp.vue2.mjs +102 -0
  123. package/dist/components/form/ElmTotp.vue3.mjs +34 -0
  124. package/dist/components/icon/ElmArrowIcon.stories.d.ts +6 -0
  125. package/dist/components/icon/ElmArrowIcon.vue.d.ts +26 -0
  126. package/dist/components/icon/ElmArrowIcon.vue.mjs +10 -0
  127. package/dist/components/icon/ElmArrowIcon.vue2.mjs +31 -0
  128. package/dist/components/icon/ElmArrowIcon.vue3.mjs +29 -0
  129. package/dist/components/icon/ElmBookmarkIcon.stories.d.ts +8 -0
  130. package/dist/components/icon/ElmBookmarkIcon.vue.d.ts +7 -0
  131. package/dist/components/icon/ElmBookmarkIcon.vue.mjs +10 -0
  132. package/dist/components/icon/ElmBookmarkIcon.vue2.mjs +45 -0
  133. package/dist/components/icon/ElmBookmarkIcon.vue3.mjs +27 -0
  134. package/dist/components/icon/ElmCubeIcon.vue.d.ts +1 -1
  135. package/dist/components/icon/ElmCubeIcon.vue.mjs +10 -0
  136. package/dist/components/icon/ElmCubeIcon.vue2.mjs +41 -0
  137. package/dist/components/icon/ElmCubeIcon.vue3.mjs +24 -0
  138. package/dist/components/icon/ElmDotLoadingIcon.vue.d.ts +2 -2
  139. package/dist/components/icon/ElmDotLoadingIcon.vue.mjs +10 -0
  140. package/dist/components/icon/ElmDotLoadingIcon.vue2.mjs +28 -0
  141. package/dist/components/icon/ElmDotLoadingIcon.vue3.mjs +26 -0
  142. package/dist/components/icon/ElmInlineIcon.stories.d.ts +6 -0
  143. package/dist/components/icon/ElmInlineIcon.vue.d.ts +12 -0
  144. package/dist/components/icon/ElmInlineIcon.vue.mjs +10 -0
  145. package/dist/components/icon/ElmInlineIcon.vue2.mjs +27 -0
  146. package/dist/components/icon/ElmInlineIcon.vue3.mjs +20 -0
  147. package/dist/components/icon/ElmLanguageIcon.vue.d.ts +1 -1
  148. package/dist/components/icon/ElmLanguageIcon.vue.mjs +23 -0
  149. package/dist/components/icon/ElmLanguageIcon.vue2.mjs +148 -0
  150. package/dist/components/icon/ElmLanguageIcon.vue3.mjs +23 -0
  151. package/dist/components/icon/ElmLoginIcon.stories.d.ts +6 -0
  152. package/dist/components/icon/ElmLoginIcon.vue.d.ts +18 -0
  153. package/dist/components/icon/ElmLoginIcon.vue.mjs +10 -0
  154. package/dist/components/icon/ElmLoginIcon.vue2.mjs +37 -0
  155. package/dist/components/icon/ElmLoginIcon.vue3.mjs +20 -0
  156. package/dist/components/icon/ElmToggleTheme.vue.mjs +10 -0
  157. package/dist/components/icon/ElmToggleTheme.vue2.mjs +30 -0
  158. package/dist/components/icon/ElmToggleTheme.vue3.mjs +20 -0
  159. package/dist/components/icon/languages/Bash.vue.d.ts +1 -1
  160. package/dist/{Bash-mlA01V07.js → components/icon/languages/Bash.vue.mjs} +20 -15
  161. package/dist/components/icon/languages/Bash.vue2.mjs +20 -0
  162. package/dist/components/icon/languages/{JavaScript.vue.d.ts → Css.vue.d.ts} +1 -1
  163. package/dist/components/icon/languages/Css.vue.mjs +19 -0
  164. package/dist/components/icon/languages/Rust.vue.d.ts +1 -1
  165. package/dist/components/icon/languages/Rust.vue.mjs +17 -0
  166. package/dist/components/jsonschema/ElmChildContainer.stories.d.ts +6 -0
  167. package/dist/components/{typography/ElmListItem.vue.d.ts → jsonschema/ElmChildContainer.vue.d.ts} +6 -3
  168. package/dist/components/jsonschema/ElmFieldAttribute.stories.d.ts +6 -0
  169. package/dist/components/jsonschema/ElmFieldAttribute.vue.d.ts +7 -0
  170. package/dist/components/jsonschema/ElmFieldType.stories.d.ts +7 -0
  171. package/dist/components/jsonschema/ElmFieldType.vue.d.ts +8 -0
  172. package/dist/components/jsonschema/ElmJsonSchema.stories.d.ts +7 -0
  173. package/dist/components/jsonschema/ElmJsonSchema.vue.d.ts +7 -0
  174. package/dist/components/media/ElmBlockImage.stories.d.ts +9 -0
  175. package/dist/components/media/ElmBlockImage.vue.d.ts +12 -0
  176. package/dist/components/media/ElmBlockImage.vue.mjs +23 -0
  177. package/dist/components/media/ElmBlockImage.vue2.mjs +117 -0
  178. package/dist/components/media/ElmBlockImage.vue3.mjs +36 -0
  179. package/dist/components/media/ElmFile.vue.d.ts +6 -1
  180. package/dist/components/media/ElmFile.vue.mjs +10 -0
  181. package/dist/components/media/ElmFile.vue2.mjs +77 -0
  182. package/dist/components/media/ElmFile.vue3.mjs +26 -0
  183. package/dist/components/media/ElmImage.stories.d.ts +2 -0
  184. package/dist/components/media/ElmImage.vue.d.ts +5 -0
  185. package/dist/components/media/ElmImage.vue.mjs +23 -0
  186. package/dist/components/media/ElmImage.vue2.mjs +91 -0
  187. package/dist/components/media/ElmImage.vue3.mjs +30 -0
  188. package/dist/components/navigation/ElmBookmark.stories.d.ts +2 -0
  189. package/dist/components/navigation/ElmBookmark.vue.d.ts +14 -10
  190. package/dist/components/navigation/ElmBookmark.vue.mjs +10 -0
  191. package/dist/components/navigation/ElmBookmark.vue2.mjs +115 -0
  192. package/dist/components/navigation/ElmBookmark.vue3.mjs +44 -0
  193. package/dist/components/navigation/ElmBreadcrumb.vue.d.ts +3 -1
  194. package/dist/components/navigation/ElmBreadcrumb.vue.mjs +10 -0
  195. package/dist/components/navigation/ElmBreadcrumb.vue2.mjs +63 -0
  196. package/dist/components/navigation/ElmBreadcrumb.vue3.mjs +30 -0
  197. package/dist/components/navigation/ElmPagetop.vue.d.ts +2 -2
  198. package/dist/components/navigation/ElmPagetop.vue.mjs +10 -0
  199. package/dist/components/navigation/ElmPagetop.vue2.mjs +51 -0
  200. package/dist/components/navigation/ElmPagetop.vue3.mjs +30 -0
  201. package/dist/components/navigation/ElmTableOfContents.vue.d.ts +1 -1
  202. package/dist/components/navigation/ElmTableOfContents.vue.mjs +10 -0
  203. package/dist/components/navigation/ElmTableOfContents.vue2.mjs +43 -0
  204. package/dist/components/navigation/ElmTableOfContents.vue3.mjs +26 -0
  205. package/dist/components/others/ElmColorSample.stories.d.ts +6 -0
  206. package/dist/components/others/ElmColorSample.vue.d.ts +8 -0
  207. package/dist/components/others/ElmColorSample.vue.mjs +23 -0
  208. package/dist/components/others/ElmColorSample.vue2.mjs +72 -0
  209. package/dist/components/others/ElmColorSample.vue3.mjs +21 -0
  210. package/dist/components/others/ElmColorTable.stories.d.ts +6 -0
  211. package/dist/components/others/ElmColorTable.vue.d.ts +11 -0
  212. package/dist/components/others/ElmColorTable.vue.mjs +10 -0
  213. package/dist/components/others/ElmColorTable.vue2.mjs +45 -0
  214. package/dist/components/others/ElmColorTable.vue3.mjs +22 -0
  215. package/dist/components/others/ElmJsonComponentRenderer.stories.d.ts +23 -0
  216. package/dist/components/others/ElmJsonComponentRenderer.vue.d.ts +6 -0
  217. package/dist/components/others/ElmJsonComponentRenderer.vue.mjs +10 -0
  218. package/dist/components/others/ElmJsonComponentRenderer.vue2.mjs +214 -0
  219. package/dist/components/others/ElmJsonComponentRenderer.vue3.mjs +21 -0
  220. package/dist/components/others/ElmTyping.stories.d.ts +6 -0
  221. package/dist/components/others/ElmTyping.vue.d.ts +4 -0
  222. package/dist/components/table/ElmTable.vue.d.ts +32 -4
  223. package/dist/components/table/ElmTable.vue.mjs +10 -0
  224. package/dist/components/table/ElmTable.vue2.mjs +61 -0
  225. package/dist/components/table/ElmTable.vue3.mjs +27 -0
  226. package/dist/components/table/ElmTableBody.vue.d.ts +8 -4
  227. package/dist/components/table/ElmTableBody.vue.mjs +14 -0
  228. package/dist/components/table/ElmTableBody.vue2.mjs +4 -0
  229. package/dist/components/table/ElmTableCell.vue.d.ts +7 -3
  230. package/dist/components/table/ElmTableCell.vue.mjs +10 -0
  231. package/dist/components/table/ElmTableCell.vue2.mjs +28 -0
  232. package/dist/components/table/ElmTableCell.vue3.mjs +26 -0
  233. package/dist/components/table/ElmTableHeader.vue.d.ts +8 -4
  234. package/dist/components/table/ElmTableHeader.vue.mjs +10 -0
  235. package/dist/components/table/ElmTableHeader.vue2.mjs +17 -0
  236. package/dist/components/table/ElmTableHeader.vue3.mjs +20 -0
  237. package/dist/components/table/ElmTableRow.vue.d.ts +8 -4
  238. package/dist/components/table/ElmTableRow.vue.mjs +10 -0
  239. package/dist/components/table/ElmTableRow.vue2.mjs +20 -0
  240. package/dist/components/table/ElmTableRow.vue3.mjs +21 -0
  241. package/dist/components/template/ElmTemplate.vue.d.ts +1 -1
  242. package/dist/components/typography/ElmBlockQuote.vue.d.ts +6 -2
  243. package/dist/components/typography/ElmBlockQuote.vue.mjs +10 -0
  244. package/dist/components/typography/ElmBlockQuote.vue2.mjs +64 -0
  245. package/dist/components/typography/ElmBlockQuote.vue3.mjs +26 -0
  246. package/dist/components/typography/ElmCallout.vue.d.ts +6 -3
  247. package/dist/components/typography/ElmCallout.vue.mjs +10 -0
  248. package/dist/components/typography/ElmCallout.vue2.mjs +57 -0
  249. package/dist/components/typography/ElmCallout.vue3.mjs +26 -0
  250. package/dist/components/typography/ElmDivider.vue.d.ts +8 -1
  251. package/dist/components/typography/ElmDivider.vue.mjs +10 -0
  252. package/dist/components/typography/ElmDivider.vue2.mjs +29 -0
  253. package/dist/components/typography/ElmDivider.vue3.mjs +20 -0
  254. package/dist/components/typography/ElmFragmentIdentifier.stories.d.ts +6 -0
  255. package/dist/components/typography/ElmFragmentIdentifier.vue.d.ts +8 -0
  256. package/dist/components/typography/ElmFragmentIdentifier.vue.mjs +10 -0
  257. package/dist/components/typography/ElmFragmentIdentifier.vue2.mjs +57 -0
  258. package/dist/components/typography/ElmFragmentIdentifier.vue3.mjs +23 -0
  259. package/dist/components/typography/ElmHeading.stories.d.ts +7 -0
  260. package/dist/components/typography/ElmHeading.vue.d.ts +49 -0
  261. package/dist/components/typography/ElmHeading.vue.mjs +10 -0
  262. package/dist/components/typography/ElmHeading.vue2.mjs +72 -0
  263. package/dist/components/typography/ElmHeading.vue3.mjs +39 -0
  264. package/dist/components/{inline → typography}/ElmInlineText.stories.d.ts +3 -0
  265. package/dist/components/{inline → typography}/ElmInlineText.vue.d.ts +22 -1
  266. package/dist/components/typography/ElmInlineText.vue.mjs +10 -0
  267. package/dist/components/typography/ElmInlineText.vue2.mjs +95 -0
  268. package/dist/components/typography/ElmInlineText.vue3.mjs +29 -0
  269. package/dist/components/typography/ElmList.stories.d.ts +8 -0
  270. package/dist/components/typography/ElmList.vue.d.ts +31 -0
  271. package/dist/components/typography/ElmList.vue.mjs +36 -0
  272. package/dist/components/typography/ElmList.vue3.mjs +17 -0
  273. package/dist/components/typography/ElmParagraph.vue.d.ts +5 -2
  274. package/dist/components/typography/ElmParagraph.vue.mjs +10 -0
  275. package/dist/components/typography/ElmParagraph.vue2.mjs +27 -0
  276. package/dist/components/typography/ElmParagraph.vue3.mjs +20 -0
  277. package/dist/components/typography/ElmTypingAnimation.stories.d.ts +6 -0
  278. package/dist/components/typography/ElmTypingAnimation.vue.d.ts +21 -0
  279. package/dist/hooks/useElmethisTheme.mjs +43 -0
  280. package/dist/hooks/useTyping.d.ts +17 -0
  281. package/dist/hooks/useTyping.mjs +37 -0
  282. package/dist/index.d.ts +112 -46
  283. package/dist/index.mjs +128 -0
  284. package/dist/node_modules/.pnpm/@mdi_js@7.4.47/node_modules/@mdi/js/mdi.mjs +14 -0
  285. package/package.json +32 -32
  286. package/dist/JavaScript-stKTLCvS.js +0 -22
  287. package/dist/Rust-PU5XwTn1.js +0 -16
  288. package/dist/TypeScript-ViBgqhx7.js +0 -22
  289. package/dist/components/code/ElmPrismHighlighter.stories.d.ts +0 -7
  290. package/dist/components/code/ElmPrismHighlighter.vue.d.ts +0 -14
  291. package/dist/components/headings/ElmHeading1.vue.d.ts +0 -20
  292. package/dist/components/headings/ElmHeading2.vue.d.ts +0 -20
  293. package/dist/components/headings/ElmHeading3.vue.d.ts +0 -20
  294. package/dist/components/headings/ElmHeading4.vue.d.ts +0 -20
  295. package/dist/components/headings/ElmHeading5.stories.d.ts +0 -6
  296. package/dist/components/headings/ElmHeading5.vue.d.ts +0 -20
  297. package/dist/components/headings/ElmHeading6.stories.d.ts +0 -6
  298. package/dist/components/headings/ElmHeading6.vue.d.ts +0 -20
  299. package/dist/components/icon/languages/TypeScript.vue.d.ts +0 -2
  300. package/dist/components/inline/ElmInlineCode.stories.d.ts +0 -6
  301. package/dist/components/inline/ElmInlineCode.vue.d.ts +0 -15
  302. package/dist/components/inline/ElmInlineLink.stories.d.ts +0 -9
  303. package/dist/components/inline/ElmInlineLink.vue.d.ts +0 -37
  304. package/dist/components/inline/ElmInlineRuby.stories.d.ts +0 -6
  305. package/dist/components/inline/ElmInlineRuby.vue.d.ts +0 -19
  306. package/dist/components/renderer/ElmJsonRenderer.stories.d.ts +0 -19
  307. package/dist/components/renderer/ElmJsonRenderer.vue.d.ts +0 -163
  308. package/dist/components/typography/ElmBulletedList.stories.d.ts +0 -7
  309. package/dist/components/typography/ElmListItem.stories.d.ts +0 -6
  310. package/dist/components/typography/ElmNumberedList.stories.d.ts +0 -7
  311. package/dist/components/typography/ElmNumberedList.vue.d.ts +0 -20
  312. package/dist/elmethis.js +0 -48
  313. package/dist/elmethis.umd.cjs +0 -419
  314. package/dist/index-DvtsYpwQ.js +0 -16274
@@ -0,0 +1,23 @@
1
+ (function() {
2
+ "use strict";
3
+ try {
4
+ if (typeof document != "undefined") {
5
+ var elementStyle = document.createElement("style");
6
+ elementStyle.appendChild(document.createTextNode("._fragment_fa0ru_1{display:flex;justify-content:flex-end;align-items:center}._icon_fa0ru_7{padding:.25rem;border-radius:.25rem;width:20px;height:20px;color:#6987b8;transition:background-color .2s;cursor:pointer}._icon_fa0ru_7:hover{background-color:#0000001a}[data-theme=dark] ._icon_fa0ru_7:hover{background-color:#ffffff1a}"));
7
+ document.head.appendChild(elementStyle);
8
+ }
9
+ } catch (e) {
10
+ console.error("vite-plugin-css-injected-by-js", e);
11
+ }
12
+ })();
13
+ const fragment = "_fragment_fa0ru_1";
14
+ const icon = "_icon_fa0ru_7";
15
+ const style0 = {
16
+ fragment,
17
+ icon
18
+ };
19
+ export {
20
+ style0 as default,
21
+ fragment,
22
+ icon
23
+ };
@@ -0,0 +1,7 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ElmHeading } from './ElmHeading.vue';
3
+ declare const meta: Meta<typeof ElmHeading>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Primary: Story;
7
+ export declare const Slot: Story;
@@ -0,0 +1,49 @@
1
+ import { Property } from 'csstype';
2
+ import { VNode } from 'vue';
3
+ export interface ElmHeadingProps {
4
+ /**
5
+ * Text to display
6
+ */
7
+ text?: string;
8
+ /**
9
+ * Font size of the text. Default is `'1.5rem'`.
10
+ */
11
+ size?: Property.FontSize;
12
+ /**
13
+ * ID of the heading element.
14
+ * Default is kebab-cased `text`. (using lodash)
15
+ */
16
+ id?: string;
17
+ /**
18
+ * Whether to disable fragment identifier.
19
+ * Default is `false`.
20
+ */
21
+ disableFragmentIdentifier?: boolean;
22
+ level?: 1 | 2 | 3 | 4 | 5 | 6;
23
+ }
24
+ declare function __VLS_template(): {
25
+ attrs: Partial<{}>;
26
+ slots: Readonly<{
27
+ default?: () => VNode[];
28
+ }> & {
29
+ default?: () => VNode[];
30
+ };
31
+ refs: {
32
+ target: unknown;
33
+ };
34
+ rootEl: any;
35
+ };
36
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
37
+ declare const __VLS_component: import('vue').DefineComponent<ElmHeadingProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmHeadingProps> & Readonly<{}>, {
38
+ disableFragmentIdentifier: boolean;
39
+ level: 1 | 2 | 3 | 4 | 5 | 6;
40
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
41
+ target: unknown;
42
+ }, any>;
43
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
44
+ export default _default;
45
+ type __VLS_WithTemplateSlots<T, S> = T & {
46
+ new (): {
47
+ $slots: S;
48
+ };
49
+ };
@@ -0,0 +1,10 @@
1
+ import _sfc_main from "./ElmHeading.vue2.mjs";
2
+ import style0 from "./ElmHeading.vue3.mjs";
3
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
+ const cssModules = {
5
+ "$style": style0
6
+ };
7
+ const ElmHeading = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
8
+ export {
9
+ ElmHeading as default
10
+ };
@@ -0,0 +1,72 @@
1
+ import { defineComponent, ref, useSlots, createElementBlock, openBlock, Fragment, createBlock, createCommentVNode, resolveDynamicComponent, normalizeStyle, unref, normalizeClass, withCtx, h } from "vue";
2
+ import { useIntersectionObserver } from "@vueuse/core";
3
+ import { kebabCase } from "lodash-es";
4
+ import ElmFragmentIdentifier from "./ElmFragmentIdentifier.vue.mjs";
5
+ const _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "ElmHeading",
7
+ props: {
8
+ text: {},
9
+ size: {},
10
+ id: {},
11
+ disableFragmentIdentifier: { type: Boolean, default: false },
12
+ level: { default: 1 }
13
+ },
14
+ setup(__props) {
15
+ const SIZE_MAP = Object.freeze({
16
+ 1: 1.5,
17
+ 2: 1.4,
18
+ 3: 1.3,
19
+ 4: 1.2,
20
+ 5: 1.15,
21
+ 6: 1.1
22
+ });
23
+ const props = __props;
24
+ const target = ref(null);
25
+ const targetIsVisible = ref(false);
26
+ useIntersectionObserver(target, ([{ isIntersecting }], _) => {
27
+ targetIsVisible.value = isIntersecting;
28
+ });
29
+ const slots = useSlots();
30
+ const renderSlots = () => {
31
+ if (props.text != null) {
32
+ return h("span", {}, props.text);
33
+ } else if (slots.default != null) {
34
+ return slots.default();
35
+ } else {
36
+ return h("span");
37
+ }
38
+ };
39
+ return (_ctx, _cache) => {
40
+ return openBlock(), createElementBlock(Fragment, null, [
41
+ (openBlock(), createBlock(resolveDynamicComponent(`h${_ctx.level}`), {
42
+ ref_key: "target",
43
+ ref: target,
44
+ class: normalizeClass([_ctx.$style[`h${_ctx.level}`], _ctx.$style["heading-common"]]),
45
+ id: _ctx.id ?? unref(kebabCase)(_ctx.text),
46
+ style: normalizeStyle({
47
+ "--font-size": _ctx.size ?? `${unref(SIZE_MAP)[_ctx.level]}rem`,
48
+ "--scale": targetIsVisible.value ? 1 : 0,
49
+ "--opacity": targetIsVisible.value ? 1 : 0
50
+ })
51
+ }, {
52
+ default: withCtx(() => [
53
+ (openBlock(), createBlock(resolveDynamicComponent(() => renderSlots()))),
54
+ _ctx.level === 2 ? (openBlock(), createElementBlock("span", {
55
+ key: 0,
56
+ class: normalizeClass(_ctx.$style["h2__underline"]),
57
+ "aria-hidden": ""
58
+ }, null, 2)) : createCommentVNode("", true)
59
+ ]),
60
+ _: 1
61
+ }, 8, ["class", "id", "style"])),
62
+ !_ctx.disableFragmentIdentifier ? (openBlock(), createBlock(ElmFragmentIdentifier, {
63
+ key: 0,
64
+ id: _ctx.id ?? unref(kebabCase)(_ctx.text)
65
+ }, null, 8, ["id"])) : createCommentVNode("", true)
66
+ ], 64);
67
+ };
68
+ }
69
+ });
70
+ export {
71
+ _sfc_main as default
72
+ };
@@ -0,0 +1,39 @@
1
+ (function() {
2
+ "use strict";
3
+ try {
4
+ if (typeof document != "undefined") {
5
+ var elementStyle = document.createElement("style");
6
+ elementStyle.appendChild(document.createTextNode('._heading-common_6xtyu_1{margin-block-start:1.5rem;position:relative;font-size:var(--font-size);line-height:var(--font-size);opacity:var(--opacity);transition:color .4s,opacity .8s;color:#000c}._heading-common_6xtyu_1::-moz-selection{color:#fffc;background-color:#000c}._heading-common_6xtyu_1::selection{color:#fffc;background-color:#000c}[data-theme=dark] ._heading-common_6xtyu_1{color:#fffc}[data-theme=dark] ._heading-common_6xtyu_1::-moz-selection{color:#000c;background-color:#fffc}[data-theme=dark] ._heading-common_6xtyu_1::selection{color:#000c;background-color:#fffc}._h1_6xtyu_22{margin-block-start:.5rem}._h1_6xtyu_22:after{position:absolute;content:"";bottom:-10px;left:0;width:100%;height:.25px;background-color:#00000080;transition:transform .8s;transform:scaleX(var(--scale))}[data-theme=dark] ._h1_6xtyu_22:after{background-color:#ffffff80}._h1_6xtyu_22:before{position:absolute;content:"";bottom:-12px;left:45%;width:10%;height:2px;background-color:#0009;transition:transform .8s;transform:scaleY(var(--scale));transform-origin:top}[data-theme=dark] ._h1_6xtyu_22:before{background-color:#fff9}._h2_6xtyu_55:after{position:absolute;content:"";right:2px;bottom:-4px;width:6px;height:8px;opacity:.8;transform:skew(-25deg);background-color:#000c}[data-theme=dark] ._h2_6xtyu_55:after{background-color:#fffc}._h2_6xtyu_55:before{position:absolute;content:"";right:10px;bottom:-4px;width:6px;height:8px;opacity:.8;transform:skew(-25deg);background-color:#000c}[data-theme=dark] ._h2_6xtyu_55:before{background-color:#fffc}._h2__underline_6xtyu_83{overflow:hidden;position:absolute;content:"";bottom:-6px;left:0;width:100%;height:.25px;background-color:#00000080;transition:transform .8s;transform:scaleX(var(--scale));transform-origin:left}[data-theme=dark] ._h2__underline_6xtyu_83{background-color:#ffffff80}._h3_6xtyu_100{box-sizing:border-box;padding-left:.75rem}._h3_6xtyu_100:after{position:absolute;content:"";width:3px;height:50%;top:25%;left:0;background-color:#000c}[data-theme=dark] ._h3_6xtyu_100:after{background-color:#fffc}._h4_6xtyu_117,._h5_6xtyu_121,._h6_6xtyu_125{position:relative}'));
7
+ document.head.appendChild(elementStyle);
8
+ }
9
+ } catch (e) {
10
+ console.error("vite-plugin-css-injected-by-js", e);
11
+ }
12
+ })();
13
+ const h1 = "_h1_6xtyu_22";
14
+ const h2 = "_h2_6xtyu_55";
15
+ const h2__underline = "_h2__underline_6xtyu_83";
16
+ const h3 = "_h3_6xtyu_100";
17
+ const h4 = "_h4_6xtyu_117";
18
+ const h5 = "_h5_6xtyu_121";
19
+ const h6 = "_h6_6xtyu_125";
20
+ const style0 = {
21
+ "heading-common": "_heading-common_6xtyu_1",
22
+ h1,
23
+ h2,
24
+ h2__underline,
25
+ h3,
26
+ h4,
27
+ h5,
28
+ h6
29
+ };
30
+ export {
31
+ style0 as default,
32
+ h1,
33
+ h2,
34
+ h2__underline,
35
+ h3,
36
+ h4,
37
+ h5,
38
+ h6
39
+ };
@@ -5,3 +5,6 @@ export default meta;
5
5
  type Story = StoryObj<typeof meta>;
6
6
  export declare const Primary: Story;
7
7
  export declare const Colored: Story;
8
+ export declare const Background: Story;
9
+ export declare const Ruby: Story;
10
+ export declare const Link: Story;
@@ -9,7 +9,7 @@ export interface ElmInlineTextProps {
9
9
  *
10
10
  * e.g.) `'red'`, `'#ff0000'`, `'rgba(255, 0, 0, 0.5)'`
11
11
  */
12
- color?: Property.BackgroundColor;
12
+ color?: Property.Color;
13
13
  /**
14
14
  * Specifies the font size of the text.
15
15
  */
@@ -30,9 +30,30 @@ export interface ElmInlineTextProps {
30
30
  * Specifies whether the text should be strikethrough.
31
31
  */
32
32
  strikethrough?: boolean;
33
+ /**
34
+ * Specifies whether the text should be displayed as code.
35
+ */
36
+ code?: boolean;
37
+ /**
38
+ * Specifies the background color of the text.
39
+ */
40
+ backgroundColor?: Property.BackgroundColor;
41
+ /**
42
+ * The ruby text to display.
43
+ */
44
+ ruby?: string;
45
+ /**
46
+ * The URL to navigate to.
47
+ *
48
+ * e.g. `https://example.com`
49
+ */
50
+ href?: string;
51
+ favicon?: string;
33
52
  }
34
53
  declare const _default: import('vue').DefineComponent<ElmInlineTextProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmInlineTextProps> & Readonly<{}>, {
54
+ code: boolean;
35
55
  bold: boolean;
56
+ size: Property.FontSize;
36
57
  italic: boolean;
37
58
  underline: boolean;
38
59
  strikethrough: boolean;
@@ -0,0 +1,10 @@
1
+ import _sfc_main from "./ElmInlineText.vue2.mjs";
2
+ import style0 from "./ElmInlineText.vue3.mjs";
3
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
+ const cssModules = {
5
+ "$style": style0
6
+ };
7
+ const ElmInlineText = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
8
+ export {
9
+ ElmInlineText as default
10
+ };
@@ -0,0 +1,95 @@
1
+ import { defineComponent, useCssModule, createElementBlock, createBlock, openBlock, normalizeStyle, normalizeClass, createCommentVNode, createTextVNode, createVNode, toDisplayString, unref, resolveDynamicComponent, h } from "vue";
2
+ import { Icon } from "@iconify/vue";
3
+ import { getLuminance } from "polished";
4
+ import ElmInlineIcon from "../icon/ElmInlineIcon.vue.mjs";
5
+ const _hoisted_1 = ["href"];
6
+ const _sfc_main = /* @__PURE__ */ defineComponent({
7
+ __name: "ElmInlineText",
8
+ props: {
9
+ text: {},
10
+ color: {},
11
+ size: { default: "1em" },
12
+ bold: { type: Boolean, default: false },
13
+ italic: { type: Boolean, default: false },
14
+ underline: { type: Boolean, default: false },
15
+ strikethrough: { type: Boolean, default: false },
16
+ code: { type: Boolean, default: false },
17
+ backgroundColor: {},
18
+ ruby: {},
19
+ href: {},
20
+ favicon: {}
21
+ },
22
+ setup(__props) {
23
+ const props = __props;
24
+ const style = useCssModule();
25
+ const render = () => {
26
+ const backgroundColor = props.backgroundColor != null ? getLuminance(props.backgroundColor) < 0.5 ? "rgba(255, 255, 255, 0.7)" : "rgba(0, 0, 0, 0.7)" : void 0;
27
+ let vnode = h(
28
+ "span",
29
+ {
30
+ class: style.text,
31
+ style: {
32
+ "--color": props.color ?? backgroundColor,
33
+ "--font-size": props.size,
34
+ "--background-color": props.backgroundColor
35
+ }
36
+ },
37
+ props.text
38
+ );
39
+ if (props.strikethrough) {
40
+ vnode = h("del", {}, vnode);
41
+ }
42
+ if (props.italic) {
43
+ vnode = h("em", {}, vnode);
44
+ }
45
+ if (props.underline) {
46
+ vnode = h("ins", {}, vnode);
47
+ }
48
+ if (props.bold) {
49
+ vnode = h("strong", {}, vnode);
50
+ }
51
+ if (props.code) {
52
+ vnode = h("code", { class: style.code }, vnode);
53
+ }
54
+ if (props.ruby) {
55
+ vnode = h(
56
+ "ruby",
57
+ {
58
+ class: style.text,
59
+ style: {
60
+ "--color": props.color ?? backgroundColor,
61
+ "--font-size": props.size,
62
+ "--background-color": props.backgroundColor
63
+ }
64
+ },
65
+ [h("span", {}, vnode), h("rt", {}, props.ruby)]
66
+ );
67
+ }
68
+ return vnode;
69
+ };
70
+ return (_ctx, _cache) => {
71
+ return _ctx.href ? (openBlock(), createElementBlock("a", {
72
+ key: 0,
73
+ class: normalizeClass(_ctx.$style.link),
74
+ href: _ctx.href,
75
+ style: normalizeStyle({ "--font-size": _ctx.size }),
76
+ target: "_blank",
77
+ rel: "noopener noreferrer"
78
+ }, [
79
+ _ctx.favicon ? (openBlock(), createBlock(ElmInlineIcon, {
80
+ key: 0,
81
+ src: _ctx.favicon,
82
+ alt: "favicon"
83
+ }, null, 8, ["src"])) : createCommentVNode("", true),
84
+ createTextVNode(" " + toDisplayString(_ctx.text ?? _ctx.href) + " ", 1),
85
+ createVNode(unref(Icon), {
86
+ icon: "mdi:external-link",
87
+ class: normalizeClass(_ctx.$style.icon)
88
+ }, null, 8, ["class"])
89
+ ], 14, _hoisted_1)) : (openBlock(), createBlock(resolveDynamicComponent(render()), { key: 1 }));
90
+ };
91
+ }
92
+ });
93
+ export {
94
+ _sfc_main as default
95
+ };
@@ -0,0 +1,29 @@
1
+ (function() {
2
+ "use strict";
3
+ try {
4
+ if (typeof document != "undefined") {
5
+ var elementStyle = document.createElement("style");
6
+ elementStyle.appendChild(document.createTextNode('._text_10ba4_1{padding:0;margin:0;color:#000000b3;color:var(--color, rgba(0, 0, 0, .7));font-size:1em;font-size:var(--font-size, 1em);line-height:1em;line-height:var(--font-size, 1em);background-color:var(--background-color)}._text_10ba4_1::-moz-selection{color:#ffffffb3;background-color:#000000b3;background-color:var(--color, rgba(0, 0, 0, .7))}._text_10ba4_1::selection{color:#ffffffb3;background-color:#000000b3;background-color:var(--color, rgba(0, 0, 0, .7))}[data-theme=dark] ._text_10ba4_1{color:#ffffffb3;color:var(--color, rgba(255, 255, 255, .7))}[data-theme=dark] ._text_10ba4_1::-moz-selection{color:#000000b3;background-color:#ffffffb3;background-color:var(--color, rgba(255, 255, 255, .7))}[data-theme=dark] ._text_10ba4_1::selection{color:#000000b3;background-color:#ffffffb3;background-color:var(--color, rgba(255, 255, 255, .7))}._code_10ba4_21{margin-inline:.25rem;padding:2px .5em;font-size:calc(1em - 2px);border-radius:.125rem;background-color:#00000013;font-family:"Source Code Pro" monospace}._link_10ba4_30{all:unset;box-sizing:border-box;padding:0 .25rem;font-size:var(--font-size);display:inline-flex;align-items:center;gap:.25rem;cursor:pointer;color:#6987b8;border-radius:.125rem .125rem 0 0;border-bottom:dashed 1px #6987b8;transition:background-color .2s,color .2s}._link_10ba4_30:hover{background-color:#6987b833}._link_10ba4_30:active{color:#59b57c;background-color:#59b57c33}._link_10ba4_30:visited{color:#9771bd;border-bottom:dashed 1px #9771bd}._link_10ba4_30:visited:hover{background-color:#9771bd33}._link_10ba4_30:visited:active{color:#59b57c;background-color:#59b57c33}._link_10ba4_30 ._icon_10ba4_62{width:var(--font-size);height:var(--font-size)}'));
7
+ document.head.appendChild(elementStyle);
8
+ }
9
+ } catch (e) {
10
+ console.error("vite-plugin-css-injected-by-js", e);
11
+ }
12
+ })();
13
+ const text = "_text_10ba4_1";
14
+ const code = "_code_10ba4_21";
15
+ const link = "_link_10ba4_30";
16
+ const icon = "_icon_10ba4_62";
17
+ const style0 = {
18
+ text,
19
+ code,
20
+ link,
21
+ icon
22
+ };
23
+ export {
24
+ code,
25
+ style0 as default,
26
+ icon,
27
+ link,
28
+ text
29
+ };
@@ -0,0 +1,8 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ElmList } from './ElmList.vue';
3
+ declare const meta: Meta<typeof ElmList>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Unordered: Story;
7
+ export declare const Ordered: Story;
8
+ export declare const Nested: Story;
@@ -0,0 +1,31 @@
1
+ export interface ElmListProps {
2
+ /**
3
+ * The type of list to render.
4
+ * - `unordered` `<ul/>` for a **bulleted** list
5
+ * - `ordered` `<ol/>` for a **numbered** list
6
+ */
7
+ listStyle: "unordered" | "ordered";
8
+ }
9
+ declare function __VLS_template(): {
10
+ attrs: Partial<{}>;
11
+ slots: {
12
+ default?(_: {}): any;
13
+ };
14
+ refs: {
15
+ target: unknown;
16
+ };
17
+ rootEl: any;
18
+ };
19
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
20
+ declare const __VLS_component: import('vue').DefineComponent<ElmListProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmListProps> & Readonly<{}>, {
21
+ listStyle: "unordered" | "ordered";
22
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
23
+ target: unknown;
24
+ }, any>;
25
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
26
+ export default _default;
27
+ type __VLS_WithTemplateSlots<T, S> = T & {
28
+ new (): {
29
+ $slots: S;
30
+ };
31
+ };
@@ -0,0 +1,36 @@
1
+ import { defineComponent, ref, createBlock, openBlock, resolveDynamicComponent, normalizeStyle, normalizeClass, withCtx, renderSlot } from "vue";
2
+ import { useIntersectionObserver } from "@vueuse/core";
3
+ const _sfc_main = /* @__PURE__ */ defineComponent({
4
+ __name: "ElmList",
5
+ props: {
6
+ listStyle: { default: "unordered" }
7
+ },
8
+ setup(__props) {
9
+ const target = ref(null);
10
+ const targetIsVisible = ref(false);
11
+ useIntersectionObserver(target, ([{ isIntersecting }], _) => {
12
+ targetIsVisible.value = isIntersecting;
13
+ });
14
+ return (_ctx, _cache) => {
15
+ return openBlock(), createBlock(resolveDynamicComponent(_ctx.listStyle === "unordered" ? "ul" : "ol"), {
16
+ ref_key: "target",
17
+ ref: target,
18
+ class: normalizeClass([
19
+ "elmethis-list-common",
20
+ _ctx.listStyle === "unordered" ? "elmethis-bulleted-list" : "elmethis-numbered-list"
21
+ ]),
22
+ style: normalizeStyle({
23
+ "--opacity": targetIsVisible.value ? 1 : 0
24
+ })
25
+ }, {
26
+ default: withCtx(() => [
27
+ renderSlot(_ctx.$slots, "default")
28
+ ]),
29
+ _: 3
30
+ }, 8, ["class", "style"]);
31
+ };
32
+ }
33
+ });
34
+ export {
35
+ _sfc_main as default
36
+ };
@@ -0,0 +1,17 @@
1
+ (function() {
2
+ "use strict";
3
+ try {
4
+ if (typeof document != "undefined") {
5
+ var elementStyle = document.createElement("style");
6
+ elementStyle.appendChild(document.createTextNode(".elmethis-list-common{margin-block:1rem;opacity:var(--opacity);transition:opacity .8s;box-sizing:border-box;padding-left:1.25rem}.elmethis-bulleted-list li{box-sizing:border-box;padding-left:.5rem;margin-block:.75rem}.elmethis-bulleted-list li::marker{content:url(data:image/svg+xml;base64,ICA8c3ZnCiAgICB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnCiAgICB2aWV3Qm94PScwIDAgMTYgMTYnCiAgICB3aWR0aD0nMTJweCcKICAgIGhlaWdodD0nMTJweCcKICA+CiAgICA8cGF0aAogICAgICBmaWxsPScjNDQ5NzYzJwogICAgICBvcGFjaXR5PScwLjgnCiAgICAgIGQ9J00zIDMuNzMyYTEuNSAxLjUgMCAwIDEgMi4zMDUtMS4yNjVsNi43MDYgNC4yNjdhMS41IDEuNSAwIDAgMSAwIDIuNTMxbC02LjcwNiA0LjI2OEExLjUgMS41IDAgMCAxIDMgMTIuMjY3VjMuNzMyWicKICAgIC8+CiAgPC9zdmc+)}.elmethis-bulleted-list li ul li::marker{content:url(data:image/svg+xml;base64,ICA8c3ZnCiAgICB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnCiAgICB2aWV3Qm94PScwIDAgMjQgMjQnCiAgICB3aWR0aD0nMTJweCcKICAgIGhlaWdodD0nMTJweCcKICAgIHN0cm9rZT0nIzQ0OTc2MycKICAgIGZpbGw9J3RyYW5zcGFyZW50JwogID4KICAgIDxwYXRoCiAgICAgIHN0cm9rZUxpbmVjYXA9J3JvdW5kJwogICAgICBzdHJva2VMaW5lam9pbj0ncm91bmQnCiAgICAgIGQ9J001LjI1IDUuNjUzYzAtLjg1Ni45MTctMS4zOTggMS42NjctLjk4NmwxMS41NCA2LjM0N2ExLjEyNSAxLjEyNSAwIDAgMSAwIDEuOTcybC0xMS41NCA2LjM0N2ExLjEyNSAxLjEyNSAwIDAgMS0xLjY2Ny0uOTg2VjUuNjUzWicKICAgIC8+CiAgPC9zdmc+)}.elmethis-bulleted-list li ul li ul li::marker{content:url(data:image/svg+xml;base64,ICA8c3ZnCiAgICB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnCiAgICB2aWV3Qm94PScwIDAgMjAgMjAnCiAgICB3aWR0aD0nMTJweCcKICAgIGhlaWdodD0nMTJweCcKICAgIHN0cm9rZT0nIzQ0OTc2MycKICAgIGZpbGw9JyM0NDk3NjMnCiAgPgogICAgPHBhdGgKICAgICAgZmlsbFJ1bGU9J2V2ZW5vZGQnCiAgICAgIGQ9J004LjIyIDUuMjJhLjc1Ljc1IDAgMCAxIDEuMDYgMGw0LjI1IDQuMjVhLjc1Ljc1IDAgMCAxIDAgMS4wNmwtNC4yNSA0LjI1YS43NS43NSAwIDAgMS0xLjA2LTEuMDZMMTEuOTQgMTAgOC4yMiA2LjI4YS43NS43NSAwIDAgMSAwLTEuMDZaJwogICAgICBjbGlwUnVsZT0nZXZlbm9kZCcKICAgIC8+CiAgPC9zdmc+)}.elmethis-numbered-list li{box-sizing:border-box;padding-left:.25rem;margin-block:.75rem;margin-left:.25rem;list-style-type:decimal}.elmethis-numbered-list li::marker{font-weight:700;color:#9771bd}.elmethis-numbered-list li ol li{list-style-type:lower-alpha}.elmethis-numbered-list li ol li ol li{list-style-type:lower-roman}.elmethis-numbered-list li ol li ol li ol li{list-style-type:lower-greek}"));
7
+ document.head.appendChild(elementStyle);
8
+ }
9
+ } catch (e) {
10
+ console.error("vite-plugin-css-injected-by-js", e);
11
+ }
12
+ })();
13
+ import _sfc_main from "./ElmList.vue.mjs";
14
+
15
+ export {
16
+ _sfc_main as default
17
+ };
@@ -1,16 +1,19 @@
1
1
  export interface ElmParagraphProps {
2
2
  }
3
3
  declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
4
5
  slots: {
5
6
  default?(_: {}): any;
6
7
  };
7
8
  refs: {
8
9
  target: HTMLParagraphElement;
9
10
  };
10
- attrs: Partial<{}>;
11
+ rootEl: HTMLParagraphElement;
11
12
  };
12
13
  type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
13
- declare const __VLS_component: import('vue').DefineComponent<ElmParagraphProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmParagraphProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
14
+ declare const __VLS_component: import('vue').DefineComponent<ElmParagraphProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmParagraphProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
15
+ target: HTMLParagraphElement;
16
+ }, HTMLParagraphElement>;
14
17
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
15
18
  export default _default;
16
19
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -0,0 +1,10 @@
1
+ import _sfc_main from "./ElmParagraph.vue2.mjs";
2
+ import style0 from "./ElmParagraph.vue3.mjs";
3
+ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
+ const cssModules = {
5
+ "$style": style0
6
+ };
7
+ const ElmParagraph = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
8
+ export {
9
+ ElmParagraph as default
10
+ };
@@ -0,0 +1,27 @@
1
+ import { defineComponent, ref, createElementBlock, openBlock, normalizeStyle, normalizeClass, renderSlot } from "vue";
2
+ import { useIntersectionObserver } from "@vueuse/core";
3
+ const _sfc_main = /* @__PURE__ */ defineComponent({
4
+ __name: "ElmParagraph",
5
+ setup(__props) {
6
+ const target = ref(null);
7
+ const targetIsVisible = ref(false);
8
+ useIntersectionObserver(target, ([{ isIntersecting }], _) => {
9
+ targetIsVisible.value = isIntersecting;
10
+ });
11
+ return (_ctx, _cache) => {
12
+ return openBlock(), createElementBlock("p", {
13
+ ref_key: "target",
14
+ ref: target,
15
+ class: normalizeClass(_ctx.$style.paragraph),
16
+ style: normalizeStyle({
17
+ "--opacity": targetIsVisible.value ? 1 : 0
18
+ })
19
+ }, [
20
+ renderSlot(_ctx.$slots, "default")
21
+ ], 6);
22
+ };
23
+ }
24
+ });
25
+ export {
26
+ _sfc_main as default
27
+ };
@@ -0,0 +1,20 @@
1
+ (function() {
2
+ "use strict";
3
+ try {
4
+ if (typeof document != "undefined") {
5
+ var elementStyle = document.createElement("style");
6
+ elementStyle.appendChild(document.createTextNode("._paragraph_19lcl_1{margin-block:2rem;opacity:var(--opacity);transition:opacity .8s;color:#000000b3}._paragraph_19lcl_1::-moz-selection{color:#ffffffb3;background-color:#000000b3}._paragraph_19lcl_1::selection{color:#ffffffb3;background-color:#000000b3}[data-theme=dark] ._paragraph_19lcl_1{color:#ffffffb3}[data-theme=dark] ._paragraph_19lcl_1::-moz-selection{color:#000000b3;background-color:#ffffffb3}[data-theme=dark] ._paragraph_19lcl_1::selection{color:#000000b3;background-color:#ffffffb3}"));
7
+ document.head.appendChild(elementStyle);
8
+ }
9
+ } catch (e) {
10
+ console.error("vite-plugin-css-injected-by-js", e);
11
+ }
12
+ })();
13
+ const paragraph = "_paragraph_19lcl_1";
14
+ const style0 = {
15
+ paragraph
16
+ };
17
+ export {
18
+ style0 as default,
19
+ paragraph
20
+ };
@@ -0,0 +1,6 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ElmTypingAnimation } from './ElmTypingAnimation.vue';
3
+ declare const meta: Meta<typeof ElmTypingAnimation>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Primary: Story;
@@ -0,0 +1,21 @@
1
+ import { Property } from 'csstype';
2
+ export interface ElmTypingAnimationProps {
3
+ /**
4
+ * The texts to display.
5
+ */
6
+ texts: string[];
7
+ /**
8
+ * The interval between each text.
9
+ */
10
+ interval?: number;
11
+ /**
12
+ * The font size of the text.
13
+ */
14
+ fontSize: Property.FontSize<string | number>;
15
+ }
16
+ declare const _default: import('vue').DefineComponent<ElmTypingAnimationProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ElmTypingAnimationProps> & Readonly<{}>, {
17
+ texts: string[];
18
+ interval: number;
19
+ fontSize: Property.FontSize<string | number>;
20
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLSpanElement>;
21
+ export default _default;
@@ -0,0 +1,43 @@
1
+ import { ref, watch, onMounted } from "vue";
2
+ const LOCAL_STORAGE_KEY = "elmethis-theme";
3
+ function useElmethisTheme() {
4
+ const isDarkTheme = ref(false);
5
+ const toggleTheme = () => {
6
+ isDarkTheme.value = !isDarkTheme.value;
7
+ };
8
+ watch(isDarkTheme, () => {
9
+ if (typeof document !== "undefined") {
10
+ document.documentElement.setAttribute(
11
+ "data-theme",
12
+ isDarkTheme.value ? "dark" : "light"
13
+ );
14
+ const body = document.querySelector("body");
15
+ if (body != null) {
16
+ body.style.colorScheme = isDarkTheme.value ? "dark" : "light";
17
+ }
18
+ if (localStorage != null) {
19
+ localStorage.setItem(
20
+ LOCAL_STORAGE_KEY,
21
+ isDarkTheme.value ? "dark" : "light"
22
+ );
23
+ }
24
+ }
25
+ });
26
+ onMounted(() => {
27
+ if (typeof document !== "undefined") {
28
+ const currentTheme = document.documentElement.getAttribute("data-theme");
29
+ if (currentTheme != null) {
30
+ isDarkTheme.value = currentTheme === "dark";
31
+ } else {
32
+ const localStorageTheme = localStorage.getItem(LOCAL_STORAGE_KEY);
33
+ if (localStorageTheme != null) {
34
+ isDarkTheme.value = localStorageTheme === "dark";
35
+ }
36
+ }
37
+ }
38
+ });
39
+ return { isDarkTheme, toggleTheme };
40
+ }
41
+ export {
42
+ useElmethisTheme
43
+ };