@elmethis/core 1.0.0-alpha.15 → 1.0.0-alpha.150
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.
- package/dist/_virtual/_plugin-vue_export-helper.mjs +10 -0
- package/dist/components/{inline/ElmInlineCode.stories.d.ts → badge/ElmBadge.stories.d.ts} +2 -2
- package/dist/components/badge/ElmBadge.vue.d.ts +21 -0
- package/dist/components/badge/ElmBadge.vue.mjs +10 -0
- package/dist/components/badge/ElmBadge.vue2.mjs +33 -0
- package/dist/components/badge/ElmBadge.vue3.mjs +14 -0
- package/dist/components/badge/ElmTag.stories.d.ts +7 -0
- package/dist/components/badge/ElmTag.vue.d.ts +14 -0
- package/dist/components/badge/ElmTag.vue.mjs +10 -0
- package/dist/components/badge/ElmTag.vue2.mjs +39 -0
- package/dist/components/badge/ElmTag.vue3.mjs +14 -0
- package/dist/components/code/ElmCodeBlock.vue.d.ts +8 -1
- package/dist/components/code/ElmCodeBlock.vue.mjs +10 -0
- package/dist/components/code/ElmCodeBlock.vue2.mjs +86 -0
- package/dist/components/code/ElmCodeBlock.vue3.mjs +18 -0
- package/dist/components/code/ElmKatex.vue.d.ts +3 -1
- package/dist/components/code/ElmKatex.vue.mjs +10 -0
- package/dist/components/code/ElmKatex.vue2.mjs +46 -0
- package/dist/components/code/ElmKatex.vue3.mjs +8 -0
- package/dist/components/code/{ElmPrismHighlighter.stories.d.ts → ElmShikiHighlighter.stories.d.ts} +2 -3
- package/dist/components/code/{ElmPrismHighlighter.vue.d.ts → ElmShikiHighlighter.vue.d.ts} +3 -3
- package/dist/components/code/ElmShikiHighlighter.vue.mjs +11 -0
- package/dist/components/code/ElmShikiHighlighter.vue2.mjs +44 -0
- package/dist/components/code/ElmShikiHighlighter.vue3.mjs +8 -0
- package/dist/components/containments/ElmColumn.vue.d.ts +3 -2
- package/dist/components/containments/ElmColumn.vue.mjs +10 -0
- package/dist/components/containments/ElmColumn.vue2.mjs +16 -0
- package/dist/components/containments/ElmColumn.vue3.mjs +8 -0
- package/dist/components/containments/ElmColumnList.vue.d.ts +3 -2
- package/dist/components/containments/ElmColumnList.vue.mjs +10 -0
- package/dist/components/containments/ElmColumnList.vue2.mjs +16 -0
- package/dist/components/containments/ElmColumnList.vue3.mjs +6 -0
- package/dist/components/containments/ElmDesktopWindow.stories.d.ts +6 -0
- package/dist/components/containments/ElmDesktopWindow.vue.d.ts +27 -0
- package/dist/components/containments/ElmDesktopWindow.vue.mjs +10 -0
- package/dist/components/containments/ElmDesktopWindow.vue2.mjs +42 -0
- package/dist/components/containments/ElmDesktopWindow.vue3.mjs +14 -0
- package/dist/components/containments/ElmModal.stories.d.ts +6 -0
- package/dist/components/containments/ElmModal.vue.d.ts +35 -0
- package/dist/components/containments/ElmModal.vue.mjs +10 -0
- package/dist/components/containments/ElmModal.vue2.mjs +44 -0
- package/dist/components/containments/ElmModal.vue3.mjs +11 -0
- package/dist/components/containments/ElmParallax.vue.mjs +10 -0
- package/dist/components/containments/ElmParallax.vue2.mjs +35 -0
- package/dist/components/containments/ElmParallax.vue3.mjs +8 -0
- package/dist/components/containments/ElmSnackbar.stories.d.ts +6 -0
- package/dist/components/containments/ElmSnackbar.vue.d.ts +11 -0
- package/dist/components/containments/ElmSnackbar.vue.mjs +10 -0
- package/dist/components/containments/ElmSnackbar.vue2.mjs +39 -0
- package/dist/components/containments/ElmSnackbar.vue3.mjs +14 -0
- package/dist/components/containments/ElmSnackbarContainer.vue.d.ts +10 -0
- package/dist/components/containments/ElmSnackbarContainer.vue.mjs +10 -0
- package/dist/components/containments/ElmSnackbarContainer.vue2.mjs +33 -0
- package/dist/components/containments/ElmSnackbarContainer.vue3.mjs +7 -0
- package/dist/components/containments/ElmToggle.stories.d.ts +1 -0
- package/dist/components/containments/ElmToggle.vue.d.ts +13 -6
- package/dist/components/containments/ElmToggle.vue.mjs +10 -0
- package/dist/components/containments/ElmToggle.vue2.mjs +71 -0
- package/dist/components/containments/ElmToggle.vue3.mjs +17 -0
- package/dist/components/containments/ElmTooltip.vue.d.ts +5 -2
- package/dist/components/containments/ElmTooltip.vue.mjs +10 -0
- package/dist/components/containments/ElmTooltip.vue2.mjs +49 -0
- package/dist/components/containments/ElmTooltip.vue3.mjs +8 -0
- package/dist/components/containments/useSnackbarState.d.ts +28 -0
- package/dist/components/data/ElmMultiProgress.stories.d.ts +6 -0
- package/dist/components/data/ElmMultiProgress.vue.d.ts +30 -0
- package/dist/components/data/ElmMultiProgress.vue.mjs +10 -0
- package/dist/components/data/ElmMultiProgress.vue2.mjs +45 -0
- package/dist/components/data/ElmMultiProgress.vue3.mjs +11 -0
- package/dist/components/data/ElmProgress.stories.d.ts +1 -0
- package/dist/components/data/ElmProgress.vue.d.ts +6 -1
- package/dist/components/data/ElmProgress.vue.mjs +10 -0
- package/dist/components/data/ElmProgress.vue2.mjs +53 -0
- package/dist/components/data/ElmProgress.vue3.mjs +20 -0
- package/dist/components/data/ElmStatusMessage.stories.d.ts +9 -0
- package/dist/components/data/ElmStatusMessage.vue.d.ts +6 -0
- package/dist/components/data/ElmStatusMessage.vue.mjs +10 -0
- package/dist/components/data/ElmStatusMessage.vue2.mjs +75 -0
- package/dist/components/data/ElmStatusMessage.vue3.mjs +11 -0
- package/dist/components/fallback/ElmBlockFallback.stories.d.ts +6 -0
- package/dist/components/fallback/ElmBlockFallback.vue.d.ts +4 -0
- package/dist/components/fallback/ElmBlockFallback.vue.mjs +10 -0
- package/dist/components/fallback/ElmBlockFallback.vue2.mjs +17 -0
- package/dist/components/fallback/ElmBlockFallback.vue3.mjs +6 -0
- package/dist/components/fallback/ElmRectangleWave.vue.d.ts +1 -1
- package/dist/components/fallback/ElmRectangleWave.vue.mjs +10 -0
- package/dist/components/fallback/ElmRectangleWave.vue2.mjs +15 -0
- package/dist/components/fallback/ElmRectangleWave.vue3.mjs +9 -0
- package/dist/components/fallback/ElmSpinner.stories.d.ts +6 -0
- package/dist/components/fallback/ElmSpinner.vue.d.ts +9 -0
- package/dist/components/fallback/ElmSpinner.vue.mjs +10 -0
- package/dist/components/fallback/ElmSpinner.vue2.mjs +30 -0
- package/dist/components/fallback/ElmSpinner.vue3.mjs +12 -0
- package/dist/components/form/ElmButton.stories.d.ts +11 -0
- package/dist/components/form/ElmButton.vue.d.ts +41 -0
- package/dist/components/form/ElmButton.vue.mjs +10 -0
- package/dist/components/form/ElmButton.vue2.mjs +57 -0
- package/dist/components/form/ElmButton.vue3.mjs +20 -0
- package/dist/components/form/ElmCheckbox.vue.d.ts +16 -6
- package/dist/components/form/ElmCheckbox.vue.mjs +10 -0
- package/dist/components/form/ElmCheckbox.vue2.mjs +177 -0
- package/dist/components/form/ElmCheckbox.vue3.mjs +22 -0
- package/dist/components/form/ElmSwitch.stories.d.ts +6 -0
- package/dist/components/form/ElmSwitch.vue.d.ts +32 -0
- package/dist/components/form/ElmSwitch.vue.mjs +10 -0
- package/dist/components/form/ElmSwitch.vue2.mjs +61 -0
- package/dist/components/form/ElmSwitch.vue3.mjs +16 -0
- package/dist/components/form/ElmTextField.stories.d.ts +6 -0
- package/dist/components/form/ElmTextField.vue.d.ts +30 -0
- package/dist/components/form/ElmTextField.vue.mjs +10 -0
- package/dist/components/form/ElmTextField.vue2.mjs +124 -0
- package/dist/components/form/ElmTextField.vue3.mjs +34 -0
- package/dist/components/form/ElmTotp.stories.d.ts +6 -0
- package/dist/components/form/ElmTotp.vue.d.ts +12 -0
- package/dist/components/form/ElmTotp.vue.mjs +10 -0
- package/dist/components/form/ElmTotp.vue2.mjs +102 -0
- package/dist/components/form/ElmTotp.vue3.mjs +22 -0
- package/dist/components/headings/ElmFragmentIdentifier.stories.d.ts +6 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue.d.ts +8 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue.mjs +10 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue2.mjs +54 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue3.mjs +11 -0
- package/dist/components/headings/ElmHeading1.vue.d.ts +9 -1
- package/dist/components/headings/ElmHeading1.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading1.vue2.mjs +43 -0
- package/dist/components/headings/ElmHeading1.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading2.vue.d.ts +9 -1
- package/dist/components/headings/ElmHeading2.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading2.vue2.mjs +49 -0
- package/dist/components/headings/ElmHeading2.vue3.mjs +11 -0
- package/dist/components/headings/ElmHeading3.vue.d.ts +9 -1
- package/dist/components/headings/ElmHeading3.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading3.vue2.mjs +39 -0
- package/dist/components/headings/ElmHeading3.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading4.vue.d.ts +6 -0
- package/dist/components/headings/ElmHeading4.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading4.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading4.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading5.vue.d.ts +6 -0
- package/dist/components/headings/ElmHeading5.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading5.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading5.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading6.vue.d.ts +6 -0
- package/dist/components/headings/ElmHeading6.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading6.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading6.vue3.mjs +8 -0
- package/dist/components/icon/ElmArrowIcon.stories.d.ts +6 -0
- package/dist/components/icon/ElmArrowIcon.vue.d.ts +26 -0
- package/dist/components/icon/ElmArrowIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmArrowIcon.vue2.mjs +31 -0
- package/dist/components/icon/ElmArrowIcon.vue3.mjs +17 -0
- package/dist/components/icon/ElmBookmarkIcon.stories.d.ts +8 -0
- package/dist/components/icon/ElmBookmarkIcon.vue.d.ts +7 -0
- package/dist/components/icon/ElmBookmarkIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmBookmarkIcon.vue2.mjs +45 -0
- package/dist/components/icon/ElmBookmarkIcon.vue3.mjs +15 -0
- package/dist/components/icon/ElmCubeIcon.vue.d.ts +1 -1
- package/dist/components/icon/ElmCubeIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmCubeIcon.vue2.mjs +41 -0
- package/dist/components/icon/ElmCubeIcon.vue3.mjs +12 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue.d.ts +2 -2
- package/dist/components/icon/ElmDotLoadingIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue2.mjs +28 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue3.mjs +14 -0
- package/dist/components/icon/ElmLanguageIcon.vue.d.ts +1 -1
- package/dist/components/icon/ElmLanguageIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmLanguageIcon.vue2.mjs +148 -0
- package/dist/components/icon/ElmLanguageIcon.vue3.mjs +11 -0
- package/dist/components/icon/ElmLoginIcon.stories.d.ts +6 -0
- package/dist/components/icon/ElmLoginIcon.vue.d.ts +18 -0
- package/dist/components/icon/ElmLoginIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmLoginIcon.vue2.mjs +37 -0
- package/dist/components/icon/ElmLoginIcon.vue3.mjs +8 -0
- package/dist/components/icon/ElmToggleTheme.vue.mjs +10 -0
- package/dist/components/icon/ElmToggleTheme.vue2.mjs +30 -0
- package/dist/components/icon/ElmToggleTheme.vue3.mjs +8 -0
- package/dist/components/icon/languages/Bash.vue.d.ts +1 -1
- package/dist/{Bash-Cd5wtNan.js → components/icon/languages/Bash.vue.mjs} +20 -15
- package/dist/components/icon/languages/Bash.vue2.mjs +8 -0
- package/dist/components/icon/languages/{JavaScript.vue.d.ts → Css.vue.d.ts} +1 -1
- package/dist/components/icon/languages/Css.vue.mjs +19 -0
- package/dist/components/icon/languages/Rust.vue.d.ts +1 -1
- package/dist/components/icon/languages/Rust.vue.mjs +17 -0
- package/dist/components/inline/ElmInlineLink.vue.d.ts +1 -1
- package/dist/components/inline/ElmInlineLink.vue.mjs +10 -0
- package/dist/components/inline/ElmInlineLink.vue2.mjs +53 -0
- package/dist/components/inline/ElmInlineLink.vue3.mjs +11 -0
- package/dist/components/inline/ElmInlineRuby.vue.d.ts +1 -1
- package/dist/components/inline/ElmInlineRuby.vue.mjs +29 -0
- package/dist/components/inline/ElmInlineRuby.vue2.mjs +4 -0
- package/dist/components/inline/ElmInlineText.stories.d.ts +1 -0
- package/dist/components/inline/ElmInlineText.vue.d.ts +10 -1
- package/dist/components/inline/ElmInlineText.vue.mjs +10 -0
- package/dist/components/inline/ElmInlineText.vue2.mjs +57 -0
- package/dist/components/inline/ElmInlineText.vue3.mjs +11 -0
- package/dist/components/inline/ElmTypingAnimation.stories.d.ts +6 -0
- package/dist/components/inline/ElmTypingAnimation.vue.d.ts +21 -0
- package/dist/components/jsonschema/ElmChildContainer.stories.d.ts +6 -0
- package/dist/components/jsonschema/ElmChildContainer.vue.d.ts +21 -0
- package/dist/components/jsonschema/ElmFieldAttribute.stories.d.ts +6 -0
- package/dist/components/jsonschema/ElmFieldAttribute.vue.d.ts +7 -0
- package/dist/components/jsonschema/ElmFieldType.stories.d.ts +7 -0
- package/dist/components/jsonschema/ElmFieldType.vue.d.ts +8 -0
- package/dist/components/jsonschema/ElmJsonSchema.stories.d.ts +7 -0
- package/dist/components/jsonschema/ElmJsonSchema.vue.d.ts +7 -0
- package/dist/components/media/ElmFile.vue.d.ts +6 -1
- package/dist/components/media/ElmFile.vue.mjs +10 -0
- package/dist/components/media/ElmFile.vue2.mjs +77 -0
- package/dist/components/media/ElmFile.vue3.mjs +14 -0
- package/dist/components/media/ElmImage.stories.d.ts +1 -0
- package/dist/components/media/ElmImage.vue.d.ts +5 -0
- package/dist/components/media/ElmImage.vue.mjs +10 -0
- package/dist/components/media/ElmImage.vue2.mjs +91 -0
- package/dist/components/media/ElmImage.vue3.mjs +18 -0
- package/dist/components/navigation/ElmBookmark.stories.d.ts +2 -0
- package/dist/components/navigation/ElmBookmark.vue.d.ts +13 -9
- package/dist/components/navigation/ElmBookmark.vue.mjs +10 -0
- package/dist/components/navigation/ElmBookmark.vue2.mjs +115 -0
- package/dist/components/navigation/ElmBookmark.vue3.mjs +32 -0
- package/dist/components/navigation/ElmBreadcrumb.vue.d.ts +3 -1
- package/dist/components/navigation/ElmBreadcrumb.vue.mjs +10 -0
- package/dist/components/navigation/ElmBreadcrumb.vue2.mjs +63 -0
- package/dist/components/navigation/ElmBreadcrumb.vue3.mjs +18 -0
- package/dist/components/navigation/ElmPagetop.vue.d.ts +1 -1
- package/dist/components/navigation/ElmPagetop.vue.mjs +10 -0
- package/dist/components/navigation/ElmPagetop.vue2.mjs +51 -0
- package/dist/components/navigation/ElmPagetop.vue3.mjs +18 -0
- package/dist/components/navigation/ElmTableOfContents.vue.d.ts +1 -1
- package/dist/components/navigation/ElmTableOfContents.vue.mjs +10 -0
- package/dist/components/navigation/ElmTableOfContents.vue2.mjs +43 -0
- package/dist/components/navigation/ElmTableOfContents.vue3.mjs +14 -0
- package/dist/components/others/ElmColorSample.stories.d.ts +6 -0
- package/dist/components/others/ElmColorSample.vue.d.ts +8 -0
- package/dist/components/others/ElmColorSample.vue.mjs +10 -0
- package/dist/components/others/ElmColorSample.vue2.mjs +72 -0
- package/dist/components/others/ElmColorSample.vue3.mjs +9 -0
- package/dist/components/others/ElmColorTable.stories.d.ts +6 -0
- package/dist/components/others/ElmColorTable.vue.d.ts +11 -0
- package/dist/components/others/ElmColorTable.vue.mjs +10 -0
- package/dist/components/others/ElmColorTable.vue2.mjs +45 -0
- package/dist/components/others/ElmColorTable.vue3.mjs +10 -0
- package/dist/components/others/ElmTemplate.stories.d.ts +6 -0
- package/dist/components/others/ElmTyping.vue.d.ts +4 -0
- package/dist/components/renderer/ElmJsonRenderer.vue.d.ts +33 -8
- package/dist/components/renderer/ElmJsonRenderer.vue.mjs +96 -0
- package/dist/components/renderer/ElmJsonRenderer.vue2.mjs +4 -0
- package/dist/components/renderer/ElmJsonRendererAsync.vue.d.ts +3 -0
- package/dist/components/renderer/ElmJsonRendererAsync.vue.mjs +24 -0
- package/dist/components/renderer/ElmJsonRendererAsync.vue2.mjs +4 -0
- package/dist/components/table/ElmTable.vue.d.ts +8 -2
- package/dist/components/table/ElmTable.vue.mjs +6 -0
- package/dist/components/table/ElmTable.vue2.mjs +22 -0
- package/dist/components/table/ElmTableBody.vue.d.ts +3 -2
- package/dist/components/table/ElmTableBody.vue.mjs +15 -0
- package/dist/components/table/ElmTableBody.vue3.mjs +5 -0
- package/dist/components/table/ElmTableCell.vue.d.ts +2 -1
- package/dist/components/table/ElmTableCell.vue.mjs +6 -0
- package/dist/components/table/ElmTableCell.vue2.mjs +22 -0
- package/dist/components/table/ElmTableHeader.vue.d.ts +3 -2
- package/dist/components/table/ElmTableHeader.vue.mjs +15 -0
- package/dist/components/table/ElmTableHeader.vue3.mjs +5 -0
- package/dist/components/table/ElmTableRow.vue.d.ts +3 -2
- package/dist/components/table/ElmTableRow.vue.mjs +14 -0
- package/dist/components/table/ElmTableRow.vue2.mjs +4 -0
- package/dist/components/template/ElmTemplate.vue.d.ts +1 -1
- package/dist/components/typography/ElmBlockQuote.vue.d.ts +5 -2
- package/dist/components/typography/ElmBlockQuote.vue.mjs +10 -0
- package/dist/components/typography/ElmBlockQuote.vue2.mjs +27 -0
- package/dist/components/typography/ElmBlockQuote.vue3.mjs +8 -0
- package/dist/components/typography/ElmBulletedList.vue.d.ts +5 -2
- package/dist/components/typography/ElmBulletedList.vue.mjs +27 -0
- package/dist/components/typography/ElmBulletedList.vue3.mjs +5 -0
- package/dist/components/typography/ElmCallout.vue.d.ts +5 -2
- package/dist/components/typography/ElmCallout.vue.mjs +10 -0
- package/dist/components/typography/ElmCallout.vue2.mjs +57 -0
- package/dist/components/typography/ElmCallout.vue3.mjs +14 -0
- package/dist/components/typography/ElmDivider.vue.d.ts +8 -1
- package/dist/components/typography/ElmDivider.vue.mjs +10 -0
- package/dist/components/typography/ElmDivider.vue2.mjs +29 -0
- package/dist/components/typography/ElmDivider.vue3.mjs +8 -0
- package/dist/components/typography/ElmListItem.vue.d.ts +3 -2
- package/dist/components/typography/ElmListItem.vue.mjs +10 -0
- package/dist/components/typography/ElmListItem.vue2.mjs +16 -0
- package/dist/components/typography/ElmListItem.vue3.mjs +8 -0
- package/dist/components/typography/ElmNumberedList.vue.d.ts +5 -2
- package/dist/components/typography/ElmNumberedList.vue.mjs +27 -0
- package/dist/components/typography/ElmNumberedList.vue3.mjs +5 -0
- package/dist/components/typography/ElmParagraph.vue.d.ts +5 -2
- package/dist/components/typography/ElmParagraph.vue.mjs +10 -0
- package/dist/components/typography/ElmParagraph.vue2.mjs +27 -0
- package/dist/components/typography/ElmParagraph.vue3.mjs +8 -0
- package/dist/hooks/useElmethisTheme.d.ts +4 -0
- package/dist/hooks/useElmethisTheme.mjs +43 -0
- package/dist/hooks/useTyping.d.ts +17 -0
- package/dist/hooks/useTyping.mjs +37 -0
- package/dist/index.d.ts +27 -4
- package/dist/index.mjs +148 -0
- package/dist/node_modules/.pnpm/nanoid@5.1.5/node_modules/nanoid/index.browser.mjs +13 -0
- package/dist/node_modules/.pnpm/nanoid@5.1.5/node_modules/nanoid/url-alphabet/index.mjs +4 -0
- package/package.json +38 -29
- package/dist/JavaScript-CPGj6jvI.js +0 -22
- package/dist/Rust-Beyp-qeb.js +0 -16
- package/dist/TypeScript-Dk8QmsMS.js +0 -22
- package/dist/components/icon/languages/TypeScript.vue.d.ts +0 -2
- package/dist/components/inline/ElmInlineCode.vue.d.ts +0 -15
- package/dist/elmethis.js +0 -46
- package/dist/elmethis.umd.cjs +0 -419
- package/dist/index-DO0Qe0Kt.js +0 -16225
|
@@ -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
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface Target {
|
|
2
|
+
char: string;
|
|
3
|
+
status: 'typed' | 'incorrect' | 'current' | 'default';
|
|
4
|
+
}
|
|
5
|
+
export declare function useTyping(): {
|
|
6
|
+
start: (target: string) => void;
|
|
7
|
+
targetArray: import('vue').Ref<{
|
|
8
|
+
char: string;
|
|
9
|
+
status: "typed" | "incorrect" | "current" | "default";
|
|
10
|
+
}[], Target[] | {
|
|
11
|
+
char: string;
|
|
12
|
+
status: "typed" | "incorrect" | "current" | "default";
|
|
13
|
+
}[]>;
|
|
14
|
+
isFinished: import('vue').Ref<boolean, boolean>;
|
|
15
|
+
mistakes: import('vue').Ref<number, number>;
|
|
16
|
+
};
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { onKeyStroke } from "@vueuse/core";
|
|
2
|
+
import { ref } from "vue";
|
|
3
|
+
function useTyping() {
|
|
4
|
+
const targetString = ref(null);
|
|
5
|
+
const targetArray = ref([]);
|
|
6
|
+
const currentCharIndex = ref(0);
|
|
7
|
+
const mistakes = ref(0);
|
|
8
|
+
const isFinished = ref(false);
|
|
9
|
+
const start = (target) => {
|
|
10
|
+
isFinished.value = false;
|
|
11
|
+
currentCharIndex.value = 0;
|
|
12
|
+
targetString.value = target;
|
|
13
|
+
targetArray.value = target.split("").map((char) => ({ char, status: "default" }));
|
|
14
|
+
targetArray.value[0].status = "current";
|
|
15
|
+
};
|
|
16
|
+
onKeyStroke((event) => {
|
|
17
|
+
if (targetArray.value[currentCharIndex.value] != null && !isFinished.value && event.key.length === 1) {
|
|
18
|
+
if (event.key === targetArray.value[currentCharIndex.value].char) {
|
|
19
|
+
targetArray.value[currentCharIndex.value].status = "typed";
|
|
20
|
+
if (currentCharIndex.value === targetArray.value.length - 1) {
|
|
21
|
+
isFinished.value = true;
|
|
22
|
+
} else {
|
|
23
|
+
currentCharIndex.value += 1;
|
|
24
|
+
targetArray.value[currentCharIndex.value] = targetArray.value[currentCharIndex.value];
|
|
25
|
+
targetArray.value[currentCharIndex.value].status = "current";
|
|
26
|
+
}
|
|
27
|
+
} else {
|
|
28
|
+
mistakes.value += 1;
|
|
29
|
+
targetArray.value[currentCharIndex.value].status = "incorrect";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
return { start, targetArray, isFinished, mistakes };
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
useTyping
|
|
37
|
+
};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,24 +1,41 @@
|
|
|
1
|
+
import { default as ElmBadge, ElmBadgeProps } from './components/badge/ElmBadge.vue';
|
|
2
|
+
import { default as ElmTag, ElmTagProps } from './components/badge/ElmTag.vue';
|
|
1
3
|
import { default as ElmCodeBlock, ElmCodeBlockProps } from './components/code/ElmCodeBlock.vue';
|
|
2
|
-
import { default as ElmPrismHighlighter, ElmPrismHighlighterProps } from './components/code/ElmPrismHighlighter.vue';
|
|
3
4
|
import { default as ElmKatex, ElmKatexProps } from './components/code/ElmKatex.vue';
|
|
4
5
|
import { default as ElmColumn, ElmColumnProps } from './components/containments/ElmColumn.vue';
|
|
5
6
|
import { default as ElmColumnList, ElmColumnListProps } from './components/containments/ElmColumnList.vue';
|
|
7
|
+
import { default as ElmDesktopWindow, ElmDesktopWindowProps } from './components/containments/ElmDesktopWindow.vue';
|
|
8
|
+
import { default as ElmModal, ElmModalProps } from './components/containments/ElmModal.vue';
|
|
6
9
|
import { default as ElmParallax, ElmParallaxProps } from './components/containments/ElmParallax.vue';
|
|
10
|
+
import { default as ElmSnackbar, ElmSnackbarProps } from './components/containments/ElmSnackbar.vue';
|
|
11
|
+
import { default as ElmSnackbarContainer, ElmSnackbarContainerProps } from './components/containments/ElmSnackbarContainer.vue';
|
|
7
12
|
import { default as ElmToggle, ElmToggleProps } from './components/containments/ElmToggle.vue';
|
|
8
13
|
import { default as ElmTooltip, ElmTooltipProps } from './components/containments/ElmTooltip.vue';
|
|
9
14
|
import { default as ElmProgress, ElmProgressProps } from './components/data/ElmProgress.vue';
|
|
15
|
+
import { default as ElmMultiProgress, ElmMultiProgressProps } from './components/data/ElmMultiProgress.vue';
|
|
16
|
+
import { default as ElmStatusMessage, ElmStatusMessageProps } from './components/data/ElmStatusMessage.vue';
|
|
10
17
|
import { default as ElmRectangleWave, ElmRectangleWaveProps } from './components/fallback/ElmRectangleWave.vue';
|
|
18
|
+
import { default as ElmBlockFallback, ElmBlockFallbackProps } from './components/fallback/ElmBlockFallback.vue';
|
|
19
|
+
import { default as ElmSpinner, ElmSpinnerProps } from './components/fallback/ElmSpinner.vue';
|
|
20
|
+
import { default as ElmButton, ElmButtonProps } from './components/form/ElmButton.vue';
|
|
21
|
+
import { default as ElmCheckbox, ElmCheckboxProps } from './components/form/ElmCheckbox.vue';
|
|
22
|
+
import { default as ElmSwitch, ElmSwitchProps } from './components/form/ElmSwitch.vue';
|
|
23
|
+
import { default as ElmTextField, ElmTextFieldProps } from './components/form/ElmTextField.vue';
|
|
24
|
+
import { default as ElmTotp, ElmTotpProps } from './components/form/ElmTotp.vue';
|
|
11
25
|
import { default as ElmHeading1, ElmHeading1Props } from './components/headings/ElmHeading1.vue';
|
|
12
26
|
import { default as ElmHeading2, ElmHeading2Props } from './components/headings/ElmHeading2.vue';
|
|
13
27
|
import { default as ElmHeading3, ElmHeading3Props } from './components/headings/ElmHeading3.vue';
|
|
14
28
|
import { default as ElmHeading4, ElmHeading4Props } from './components/headings/ElmHeading4.vue';
|
|
15
29
|
import { default as ElmHeading5, ElmHeading5Props } from './components/headings/ElmHeading5.vue';
|
|
16
30
|
import { default as ElmHeading6, ElmHeading6Props } from './components/headings/ElmHeading6.vue';
|
|
31
|
+
import { default as ElmFragmentIdentifier, ElmFragmentIdentifierProps } from './components/headings/ElmFragmentIdentifier.vue';
|
|
32
|
+
import { default as ElmArrowIcon, ElmArrowIconProps } from './components/icon/ElmArrowIcon.vue';
|
|
33
|
+
import { default as ElmBookmarkIcon, ElmBookmarkIconProps } from './components/icon/ElmBookmarkIcon.vue';
|
|
17
34
|
import { default as ElmCubeIcon, ElmCubeIconProps } from './components/icon/ElmCubeIcon.vue';
|
|
18
35
|
import { default as ElmDotLoadingIcon, ElmDotLoadingIconProps } from './components/icon/ElmDotLoadingIcon.vue';
|
|
19
36
|
import { default as ElmLanguageIcon, ElmLanguageIconProps } from './components/icon/ElmLanguageIcon.vue';
|
|
37
|
+
import { default as ElmLoginIcon, ElmLoginIconProps } from './components/icon/ElmLoginIcon.vue';
|
|
20
38
|
import { default as ElmToggleTheme, ElmToggleThemeProps } from './components/icon/ElmToggleTheme.vue';
|
|
21
|
-
import { default as ElmInlineCode, ElmInlineCodeProps } from './components/inline/ElmInlineCode.vue';
|
|
22
39
|
import { default as ElmInlineLink, ElmInlineLinkProps } from './components/inline/ElmInlineLink.vue';
|
|
23
40
|
import { default as ElmInlineRuby, ElmInlineRubyProps } from './components/inline/ElmInlineRuby.vue';
|
|
24
41
|
import { default as ElmInlineText, ElmInlineTextProps } from './components/inline/ElmInlineText.vue';
|
|
@@ -28,7 +45,10 @@ import { default as ElmBookmark, ElmBookmarkProps } from './components/navigatio
|
|
|
28
45
|
import { default as ElmBreadcrumb, ElmBreadcrumbProps } from './components/navigation/ElmBreadcrumb.vue';
|
|
29
46
|
import { default as ElmPagetop, ElmPagetopProps } from './components/navigation/ElmPagetop.vue';
|
|
30
47
|
import { default as ElmTableOfContents, ElmTableOfContentsProps } from './components/navigation/ElmTableOfContents.vue';
|
|
48
|
+
import { default as ElmColorSample, ElmColorSampleProps } from './components/others/ElmColorSample.vue';
|
|
49
|
+
import { default as ElmColorTable, ElmColorTableProps } from './components/others/ElmColorTable.vue';
|
|
31
50
|
import { default as ElmJsonRenderer, ElmJsonRendererProps } from './components/renderer/ElmJsonRenderer.vue';
|
|
51
|
+
import { default as ElmJsonRendererAsync } from './components/renderer/ElmJsonRendererAsync.vue';
|
|
32
52
|
import { default as ElmTable, ElmTableProps } from './components/table/ElmTable.vue';
|
|
33
53
|
import { default as ElmTableHeader, ElmTableHeaderProps } from './components/table/ElmTableHeader.vue';
|
|
34
54
|
import { default as ElmTableBody, ElmTableBodyProps } from './components/table/ElmTableBody.vue';
|
|
@@ -39,6 +59,9 @@ import { default as ElmBulletedList, ElmBulletedListProps } from './components/t
|
|
|
39
59
|
import { default as ElmCallout, ElmCalloutProps } from './components/typography/ElmCallout.vue';
|
|
40
60
|
import { default as ElmDivider, ElmDividerProps } from './components/typography/ElmDivider.vue';
|
|
41
61
|
import { default as ElmNumberedList, ElmNumberedListProps } from './components/typography/ElmNumberedList.vue';
|
|
62
|
+
import { default as ElmParagraph, ElmParagraphProps } from './components/typography/ElmParagraph.vue';
|
|
42
63
|
import { default as ElmListItem, ElmListItemProps } from './components/typography/ElmListItem.vue';
|
|
43
|
-
|
|
44
|
-
|
|
64
|
+
import { useElmethisTheme } from './hooks/useElmethisTheme';
|
|
65
|
+
import { useTyping } from './hooks/useTyping';
|
|
66
|
+
export { ElmBadge, ElmTag, ElmCodeBlock, ElmKatex, ElmColumn, ElmColumnList, ElmDesktopWindow, ElmModal, ElmParallax, ElmSnackbar, ElmSnackbarContainer, ElmToggle, ElmTooltip, ElmProgress, ElmMultiProgress, ElmStatusMessage, ElmRectangleWave, ElmBlockFallback, ElmSpinner, ElmButton, ElmCheckbox, ElmSwitch, ElmTextField, ElmTotp, ElmHeading1, ElmHeading2, ElmHeading3, ElmHeading4, ElmHeading5, ElmHeading6, ElmFragmentIdentifier, ElmArrowIcon, ElmBookmarkIcon, ElmCubeIcon, ElmDotLoadingIcon, ElmLanguageIcon, ElmLoginIcon, ElmToggleTheme, ElmInlineLink, ElmInlineRuby, ElmInlineText, ElmFile, ElmImage, ElmBookmark, ElmBreadcrumb, ElmPagetop, ElmTableOfContents, ElmColorSample, ElmColorTable, ElmJsonRenderer, ElmJsonRendererAsync, ElmTable, ElmTableHeader, ElmTableBody, ElmTableRow, ElmTableCell, ElmBlockQuote, ElmBulletedList, ElmCallout, ElmDivider, ElmNumberedList, ElmParagraph, ElmListItem, useElmethisTheme, useTyping };
|
|
67
|
+
export type { ElmBadgeProps, ElmTagProps, ElmCodeBlockProps, ElmKatexProps, ElmColumnProps, ElmColumnListProps, ElmDesktopWindowProps, ElmModalProps, ElmParallaxProps, ElmSnackbarProps, ElmSnackbarContainerProps, ElmToggleProps, ElmTooltipProps, ElmProgressProps, ElmMultiProgressProps, ElmStatusMessageProps, ElmRectangleWaveProps, ElmBlockFallbackProps, ElmSpinnerProps, ElmButtonProps, ElmCheckboxProps, ElmSwitchProps, ElmTextFieldProps, ElmTotpProps, ElmHeading1Props, ElmHeading2Props, ElmHeading3Props, ElmHeading4Props, ElmHeading5Props, ElmHeading6Props, ElmFragmentIdentifierProps, ElmArrowIconProps, ElmBookmarkIconProps, ElmCubeIconProps, ElmDotLoadingIconProps, ElmLanguageIconProps, ElmLoginIconProps, ElmToggleThemeProps, ElmInlineLinkProps, ElmInlineRubyProps, ElmInlineTextProps, ElmFileProps, ElmImageProps, ElmBookmarkProps, ElmBreadcrumbProps, ElmPagetopProps, ElmTableOfContentsProps, ElmJsonRendererProps, ElmColorSampleProps, ElmColorTableProps, ElmTableProps, ElmTableHeaderProps, ElmTableBodyProps, ElmTableRowProps, ElmTableCellProps, ElmBlockQuoteProps, ElmBulletedListProps, ElmCalloutProps, ElmDividerProps, ElmNumberedListProps, ElmParagraphProps, ElmListItemProps };
|