diff --git a/.gitignore b/.gitignore
index a547bf3..89b40c9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,3 +22,6 @@ dist-ssr
*.njsproj
*.sln
*.sw?
+
+# Vitepress
+docs/.vitepress/cache
diff --git a/docs/.vitepress/config.cts b/docs/.vitepress/config.cts
new file mode 100644
index 0000000..27b9400
--- /dev/null
+++ b/docs/.vitepress/config.cts
@@ -0,0 +1,45 @@
+import { defineConfig } from "vitepress"
+
+export default defineConfig({
+ title: 'Vue form handler',
+ description: 'Discover the easy way of handling your vue forms',
+ themeConfig: {
+ nav: [
+ { text: 'Home', link: '/' },
+ { text: 'Get started', link: '/getting-started' },
+ ],
+ sidebar: [
+ {
+ text: 'Documentation', items: [
+ { text: 'Get started', link: '/getting-started' },
+ { text: 'Tutorial', link: '/tutorial' },
+ {
+ text: 'Guides', items: [
+ { text: 'Validation', link: '/guides/validation' },
+ { text: 'Typescript', link: '/guides/typescript' },
+ { text: 'Form submission', link: '/guides/form-submission' },
+ { text: 'Custom components', link: '/guides/custom-components' },
+ { text: 'Native support', link: '/guides/native-support' },
+ ]
+ },
+ {
+ text: 'Examples', items: [
+ { text: 'Basic', link: '/examples/basic' },
+ { text: 'Async validations', link: '/examples/async-validations' },
+ { text: 'Typescript', link: '/examples/typescript' },
+ { text: 'Interceptor', link: '/examples/interceptor' },
+ { text: 'Dependent fields', link: '/examples/dependent-fields' },
+ { text: 'More examples', link: '/examples/more-examples' }
+ ]
+ },
+ ]
+ },
+ {
+ text: 'API Reference', items: [
+ { text: 'useFormHandler()', link: '/api/use-form-handler' },
+ { text: `FormHandler`, link: '/api/form-handler' }
+ ]
+ }
+ ]
+ }
+})
\ No newline at end of file
diff --git a/docs/api/form-handler.md b/docs/api/form-handler.md
new file mode 100644
index 0000000..a86ffae
--- /dev/null
+++ b/docs/api/form-handler.md
@@ -0,0 +1 @@
+# \
\ No newline at end of file
diff --git a/docs/api/use-form-handler.md b/docs/api/use-form-handler.md
new file mode 100644
index 0000000..41a9eff
--- /dev/null
+++ b/docs/api/use-form-handler.md
@@ -0,0 +1 @@
+# useFormHandler()
\ No newline at end of file
diff --git a/docs/examples/async-validations.md b/docs/examples/async-validations.md
new file mode 100644
index 0000000..a8bb5bf
--- /dev/null
+++ b/docs/examples/async-validations.md
@@ -0,0 +1 @@
+# Async validations
\ No newline at end of file
diff --git a/docs/examples/basic.md b/docs/examples/basic.md
new file mode 100644
index 0000000..1d2c247
--- /dev/null
+++ b/docs/examples/basic.md
@@ -0,0 +1 @@
+# Basic Example
\ No newline at end of file
diff --git a/docs/examples/dependent-fields.md b/docs/examples/dependent-fields.md
new file mode 100644
index 0000000..ea5c798
--- /dev/null
+++ b/docs/examples/dependent-fields.md
@@ -0,0 +1 @@
+# Dependent fields
\ No newline at end of file
diff --git a/docs/examples/interceptor.md b/docs/examples/interceptor.md
new file mode 100644
index 0000000..c5b25bb
--- /dev/null
+++ b/docs/examples/interceptor.md
@@ -0,0 +1 @@
+# Interceptor
\ No newline at end of file
diff --git a/docs/examples/more-examples.md b/docs/examples/more-examples.md
new file mode 100644
index 0000000..fdaa6ff
--- /dev/null
+++ b/docs/examples/more-examples.md
@@ -0,0 +1 @@
+# More examples
\ No newline at end of file
diff --git a/docs/examples/typescript.md b/docs/examples/typescript.md
new file mode 100644
index 0000000..721c965
--- /dev/null
+++ b/docs/examples/typescript.md
@@ -0,0 +1 @@
+# Typescript
\ No newline at end of file
diff --git a/docs/getting-started.md b/docs/getting-started.md
new file mode 100644
index 0000000..70ea414
--- /dev/null
+++ b/docs/getting-started.md
@@ -0,0 +1,31 @@
+# Getting started
+
+## Some section
+
+Some content here
+
+
+## Another section
+
+More content there
+
+
+## Basic example
+
+Some code there
+
+``` vue
+
+
+
+
+```
\ No newline at end of file
diff --git a/docs/guides/custom-components.md b/docs/guides/custom-components.md
new file mode 100644
index 0000000..20796fa
--- /dev/null
+++ b/docs/guides/custom-components.md
@@ -0,0 +1 @@
+# Custom components
\ No newline at end of file
diff --git a/docs/guides/form-submission.md b/docs/guides/form-submission.md
new file mode 100644
index 0000000..2d47ca1
--- /dev/null
+++ b/docs/guides/form-submission.md
@@ -0,0 +1 @@
+# Form submission
\ No newline at end of file
diff --git a/docs/guides/native-support.md b/docs/guides/native-support.md
new file mode 100644
index 0000000..70315f3
--- /dev/null
+++ b/docs/guides/native-support.md
@@ -0,0 +1 @@
+# Native support
\ No newline at end of file
diff --git a/docs/guides/typescript.md b/docs/guides/typescript.md
new file mode 100644
index 0000000..721c965
--- /dev/null
+++ b/docs/guides/typescript.md
@@ -0,0 +1 @@
+# Typescript
\ No newline at end of file
diff --git a/docs/guides/validation.md b/docs/guides/validation.md
new file mode 100644
index 0000000..0d70767
--- /dev/null
+++ b/docs/guides/validation.md
@@ -0,0 +1 @@
+# Validation
\ No newline at end of file
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..73b5cd8
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,38 @@
+---
+layout: home
+
+hero:
+ name: Vue form handler
+ text: Vue & TS powered form handler.
+ tagline: The only handler you'll need to easily work with forms in vue
+ image:
+ src: /logo.png
+ alt: Vue form handler
+ actions:
+ - theme: brand
+ text: Get Started
+ link: /getting-started
+ - theme: alt
+ text: View on GitHub
+ link: https://github.com/dbssman/vue-form-handler
+
+features:
+ - title: Fully tree shakeable
+ details: Only take what you want
+ icon: ⚡
+ - title: Type Strong
+ details: Written in TypeScript, with full TS docs
+ icon: 💪
+ - title: Flexible
+ details: You can wrap the handler over native inputs or any other like the ones from material libraries or custom inputs
+ icon: 🔩
+ - title: Super light
+ details: Small package size
+ icon: 🪶
+ - title: DX
+ details: Great development experience
+ icon: 💻
+ - title: Interactive demos
+ details: Documentation of functions also come with interactive demos!
+ icon: 🎪
+---
\ No newline at end of file
diff --git a/docs/tutorial.md b/docs/tutorial.md
new file mode 100644
index 0000000..203501d
--- /dev/null
+++ b/docs/tutorial.md
@@ -0,0 +1 @@
+# Tutorial
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 560d0e8..9ffdba8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -21,10 +21,168 @@
"path": "^0.12.7",
"typescript": "^4.6.4",
"vite": "^3.2.3",
+ "vitepress": "^1.0.0-alpha.33",
"vitest": "^0.26.1",
"vue-tsc": "^1.0.9"
}
},
+ "node_modules/@algolia/autocomplete-core": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.2.tgz",
+ "integrity": "sha512-eclwUDC6qfApNnEfu1uWcL/rudQsn59tjEoUYZYE2JSXZrHLRjBUGMxiCoknobU2Pva8ejb0eRxpIYDtVVqdsw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/autocomplete-shared": "1.7.2"
+ }
+ },
+ "node_modules/@algolia/autocomplete-preset-algolia": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.2.tgz",
+ "integrity": "sha512-+RYEG6B0QiGGfRb2G3MtPfyrl0dALF3cQNTWBzBX6p5o01vCCGTTinAm2UKG3tfc2CnOMAtnPLkzNZyJUpnVJw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/autocomplete-shared": "1.7.2"
+ },
+ "peerDependencies": {
+ "@algolia/client-search": ">= 4.9.1 < 6",
+ "algoliasearch": ">= 4.9.1 < 6"
+ }
+ },
+ "node_modules/@algolia/autocomplete-shared": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.2.tgz",
+ "integrity": "sha512-QCckjiC7xXHIUaIL3ektBtjJ0w7tTA3iqKcAE/Hjn1lZ5omp7i3Y4e09rAr9ZybqirL7AbxCLLq0Ra5DDPKeug==",
+ "dev": true
+ },
+ "node_modules/@algolia/cache-browser-local-storage": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.14.3.tgz",
+ "integrity": "sha512-hWH1yCxgG3+R/xZIscmUrWAIBnmBFHH5j30fY/+aPkEZWt90wYILfAHIOZ1/Wxhho5SkPfwFmT7ooX2d9JeQBw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/cache-common": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/cache-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.14.3.tgz",
+ "integrity": "sha512-oZJofOoD9FQOwiGTzyRnmzvh3ZP8WVTNPBLH5xU5JNF7drDbRT0ocVT0h/xB2rPHYzOeXRrLaQQBwRT/CKom0Q==",
+ "dev": true
+ },
+ "node_modules/@algolia/cache-in-memory": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.14.3.tgz",
+ "integrity": "sha512-ES0hHQnzWjeioLQf5Nq+x1AWdZJ50znNPSH3puB/Y4Xsg4Av1bvLmTJe7SY2uqONaeMTvL0OaVcoVtQgJVw0vg==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/cache-common": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/client-account": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.14.3.tgz",
+ "integrity": "sha512-PBcPb0+f5Xbh5UfLZNx2Ow589OdP8WYjB4CnvupfYBrl9JyC1sdH4jcq/ri8osO/mCZYjZrQsKAPIqW/gQmizQ==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/client-analytics": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.14.3.tgz",
+ "integrity": "sha512-eAwQq0Hb/aauv9NhCH5Dp3Nm29oFx28sayFN2fdOWemwSeJHIl7TmcsxVlRsO50fsD8CtPcDhtGeD3AIFLNvqw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/client-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.14.3.tgz",
+ "integrity": "sha512-jkPPDZdi63IK64Yg4WccdCsAP4pHxSkr4usplkUZM5C1l1oEpZXsy2c579LQ0rvwCs5JFmwfNG4ahOszidfWPw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/client-personalization": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.14.3.tgz",
+ "integrity": "sha512-UCX1MtkVNgaOL9f0e22x6tC9e2H3unZQlSUdnVaSKpZ+hdSChXGaRjp2UIT7pxmPqNCyv51F597KEX5WT60jNg==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/client-search": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.14.3.tgz",
+ "integrity": "sha512-I2U7xBx5OPFdPLA8AXKUPPxGY3HDxZ4r7+mlZ8ZpLbI8/ri6fnu6B4z3wcL7sgHhDYMwnAE8Xr0AB0h3Hnkp4A==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/logger-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.14.3.tgz",
+ "integrity": "sha512-kUEAZaBt/J3RjYi8MEBT2QEexJR2kAE2mtLmezsmqMQZTV502TkHCxYzTwY2dE7OKcUTxi4OFlMuS4GId9CWPw==",
+ "dev": true
+ },
+ "node_modules/@algolia/logger-console": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.14.3.tgz",
+ "integrity": "sha512-ZWqAlUITktiMN2EiFpQIFCJS10N96A++yrexqC2Z+3hgF/JcKrOxOdT4nSCQoEPvU4Ki9QKbpzbebRDemZt/hw==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/logger-common": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/requester-browser-xhr": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.14.3.tgz",
+ "integrity": "sha512-AZeg2T08WLUPvDncl2XLX2O67W5wIO8MNaT7z5ii5LgBTuk/rU4CikTjCe2xsUleIZeFl++QrPAi4Bdxws6r/Q==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/requester-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.14.3.tgz",
+ "integrity": "sha512-RrRzqNyKFDP7IkTuV3XvYGF9cDPn9h6qEDl595lXva3YUk9YSS8+MGZnnkOMHvjkrSCKfoLeLbm/T4tmoIeclw==",
+ "dev": true
+ },
+ "node_modules/@algolia/requester-node-http": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.14.3.tgz",
+ "integrity": "sha512-O5wnPxtDRPuW2U0EaOz9rMMWdlhwP0J0eSL1Z7TtXF8xnUeeUyNJrdhV5uy2CAp6RbhM1VuC3sOJcIR6Av+vbA==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
+ "node_modules/@algolia/transporter": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.14.3.tgz",
+ "integrity": "sha512-2qlKlKsnGJ008exFRb5RTeTOqhLZj0bkMCMVskxoqWejs2Q2QtWmsiH98hDfpw0fmnyhzHEt0Z7lqxBYp8bW2w==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/cache-common": "4.14.3",
+ "@algolia/logger-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
"node_modules/@babel/parser": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz",
@@ -33,34 +191,398 @@
"parser": "bin/babel-parser.js"
},
"engines": {
- "node": ">=6.0.0"
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@docsearch/css": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.0.tgz",
+ "integrity": "sha512-rODCdDtGyudLj+Va8b6w6Y85KE85bXRsps/R4Yjwt5vueXKXZQKYw0aA9knxLBT6a/bI/GMrAcmCR75KYOM6hg==",
+ "dev": true
+ },
+ "node_modules/@docsearch/js": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.3.0.tgz",
+ "integrity": "sha512-oFXWRPNvPxAzBhnFJ9UCFIYZiQNc3Yrv6912nZHw/UIGxsyzKpNRZgHq8HDk1niYmOSoLKtVFcxkccpQmYGFyg==",
+ "dev": true,
+ "dependencies": {
+ "@docsearch/react": "3.3.0",
+ "preact": "^10.0.0"
+ }
+ },
+ "node_modules/@docsearch/react": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.0.tgz",
+ "integrity": "sha512-fhS5adZkae2SSdMYEMVg6pxI5a/cE+tW16ki1V0/ur4Fdok3hBRkmN/H8VvlXnxzggkQIIRIVvYPn00JPjen3A==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/autocomplete-core": "1.7.2",
+ "@algolia/autocomplete-preset-algolia": "1.7.2",
+ "@docsearch/css": "3.3.0",
+ "algoliasearch": "^4.0.0"
+ },
+ "peerDependencies": {
+ "@types/react": ">= 16.8.0 < 19.0.0",
+ "react": ">= 16.8.0 < 19.0.0",
+ "react-dom": ">= 16.8.0 < 19.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.15.16",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.16.tgz",
+ "integrity": "sha512-nyB6CH++2mSgx3GbnrJsZSxzne5K0HMyNIWafDHqYy7IwxFc4fd/CgHVZXr8Eh+Q3KbIAcAe3vGyqIPhGblvMQ==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.10.tgz",
+ "integrity": "sha512-47Y+NwVKTldTlDhSgJHZ/RpvBQMUDG7eKihqaF/u6g7s0ZPz4J1vy8A3rwnnUOF2CuDn7w7Gj/QcMoWz3U3SJw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.10.tgz",
+ "integrity": "sha512-C4PfnrBMcuAcOurQzpF1tTtZz94IXO5JmICJJ3NFJRHbXXsQUg9RFG45KvydKqtFfBaFLCHpduUkUfXwIvGnRg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.10.tgz",
+ "integrity": "sha512-bH/bpFwldyOKdi9HSLCLhhKeVgRYr9KblchwXgY2NeUHBB/BzTUHtUSBgGBmpydB1/4E37m+ggXXfSrnD7/E7g==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.10.tgz",
+ "integrity": "sha512-OXt7ijoLuy+AjDSKQWu+KdDFMBbdeaL6wtgMKtDUXKWHiAMKHan5+R1QAG6HD4+K0nnOvEJXKHeA9QhXNAjOTQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.10.tgz",
+ "integrity": "sha512-shSQX/3GHuspE3Uxtq5kcFG/zqC+VuMnJkqV7LczO41cIe6CQaXHD3QdMLA4ziRq/m0vZo7JdterlgbmgNIAlQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.10.tgz",
+ "integrity": "sha512-5YVc1zdeaJGASijZmTzSO4h6uKzsQGG3pkjI6fuXvolhm3hVRhZwnHJkforaZLmzvNv5Tb7a3QL2FAVmrgySIA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.10.tgz",
+ "integrity": "sha512-c360287ZWI2miBnvIj23bPyVctgzeMT2kQKR+x94pVqIN44h3GF8VMEs1SFPH1UgyDr3yBbx3vowDS1SVhyVhA==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.10.tgz",
+ "integrity": "sha512-2aqeNVxIaRfPcIaMZIFoblLh588sWyCbmj1HHCCs9WmeNWm+EIN0SmvsmPvTa/TsNZFKnxTcvkX2eszTcCqIrA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.10.tgz",
+ "integrity": "sha512-sqMIEWeyrLGU7J5RB5fTkLRIFwsgsQ7ieWXlDLEmC2HblPYGb3AucD7inw2OrKFpRPKsec1l+lssiM3+NV5aOw==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.15.16",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.16.tgz",
+ "integrity": "sha512-SDLfP1uoB0HZ14CdVYgagllgrG7Mdxhkt4jDJOKl/MldKrkQ6vDJMZKl2+5XsEY/Lzz37fjgLQoJBGuAw/x8kQ==",
+ "cpu": [
+ "loong64"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.10.tgz",
+ "integrity": "sha512-FN8mZOH7531iPHM0kaFhAOqqNHoAb6r/YHW2ZIxNi0a85UBi2DO4Vuyn7t1p4UN8a4LoAnLOT1PqNgHkgBJgbA==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.10.tgz",
+ "integrity": "sha512-Dg9RiqdvHOAWnOKIOTsIx8dFX9EDlY2IbPEY7YFzchrCiTZmMkD7jWA9UdZbNUygPjdmQBVPRCrLydReFlX9yg==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.10.tgz",
+ "integrity": "sha512-XMqtpjwzbmlar0BJIxmzu/RZ7EWlfVfH68Vadrva0Wj5UKOdKvqskuev2jY2oPV3aoQUyXwnMbMrFmloO2GfAw==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.10.tgz",
+ "integrity": "sha512-fu7XtnoeRNFMx8DjK3gPWpFBDM2u5ba+FYwg27SjMJwKvJr4bDyKz5c+FLXLUSSAkMAt/UL+cUbEbra+rYtUgw==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.10.tgz",
+ "integrity": "sha512-61lcjVC/RldNNMUzQQdyCWjCxp9YLEQgIxErxU9XluX7juBdGKb0pvddS0vPNuCvotRbzijZ1pzII+26haWzbA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.10.tgz",
+ "integrity": "sha512-JeZXCX3viSA9j4HqSoygjssdqYdfHd6yCFWyfSekLbz4Ef+D2EjvsN02ZQPwYl5a5gg/ehdHgegHhlfOFP0HCA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.10.tgz",
+ "integrity": "sha512-3qpxQKuEVIIg8SebpXsp82OBrqjPV/OwNWmG+TnZDr3VGyChNnGMHccC1xkbxCHDQNnnXjxhMQNyHmdFJbmbRA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.10.tgz",
+ "integrity": "sha512-z+q0xZ+et/7etz7WoMyXTHZ1rB8PMSNp/FOqURLJLOPb3GWJ2aj4oCqFCjPwEbW1rsT7JPpxeH/DwGAWk/I1Bg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
}
},
- "node_modules/@esbuild/android-arm": {
- "version": "0.15.16",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.16.tgz",
- "integrity": "sha512-nyB6CH++2mSgx3GbnrJsZSxzne5K0HMyNIWafDHqYy7IwxFc4fd/CgHVZXr8Eh+Q3KbIAcAe3vGyqIPhGblvMQ==",
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.10.tgz",
+ "integrity": "sha512-+YYu5sbQ9npkNT9Dec+tn1F/kjg6SMgr6bfi/6FpXYZvCRfu2YFPZGb+3x8K30s8eRxFpoG4sGhiSUkr1xbHEw==",
"cpu": [
- "arm"
+ "arm64"
],
+ "dev": true,
"optional": true,
"os": [
- "android"
+ "win32"
],
"engines": {
"node": ">=12"
}
},
- "node_modules/@esbuild/linux-loong64": {
- "version": "0.15.16",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.16.tgz",
- "integrity": "sha512-SDLfP1uoB0HZ14CdVYgagllgrG7Mdxhkt4jDJOKl/MldKrkQ6vDJMZKl2+5XsEY/Lzz37fjgLQoJBGuAw/x8kQ==",
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.10.tgz",
+ "integrity": "sha512-Aw7Fupk7XNehR1ftHGYwUteyJ2q+em/aE+fVU3YMTBN2V5A7Z4aVCSV+SvCp9HIIHZavPFBpbdP3VfjQpdf6Xg==",
"cpu": [
- "loong64"
+ "ia32"
],
+ "dev": true,
"optional": true,
"os": [
- "linux"
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.10.tgz",
+ "integrity": "sha512-qddWullt3sC1EIpfHvCRBq3H4g3L86DZpD6n8k2XFjFVyp01D++uNbN1hT/JRsHxTbyyemZcpwL5aRlJwc/zFw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
],
"engines": {
"node": ">=12"
@@ -350,6 +872,12 @@
"integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==",
"devOptional": true
},
+ "node_modules/@types/web-bluetooth": {
+ "version": "0.0.16",
+ "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz",
+ "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==",
+ "dev": true
+ },
"node_modules/@vitejs/plugin-vue": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz",
@@ -464,6 +992,12 @@
"@vue/shared": "3.2.45"
}
},
+ "node_modules/@vue/devtools-api": {
+ "version": "6.4.5",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.4.5.tgz",
+ "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==",
+ "dev": true
+ },
"node_modules/@vue/reactivity": {
"version": "3.2.45",
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.45.tgz",
@@ -529,6 +1063,94 @@
"vue": "^3.0.1"
}
},
+ "node_modules/@vueuse/core": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.9.0.tgz",
+ "integrity": "sha512-JdDb7TrE0imZnwBhMF4+0PCJqGD3AxzH8S2sfk54P0rqvklK+EAtAR/mPb1HwV/JPujQFQJhghQ190Yq03YpVw==",
+ "dev": true,
+ "dependencies": {
+ "@types/web-bluetooth": "^0.0.16",
+ "@vueuse/metadata": "9.9.0",
+ "@vueuse/shared": "9.9.0",
+ "vue-demi": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/@vueuse/core/node_modules/vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "vue-demi-fix": "bin/vue-demi-fix.js",
+ "vue-demi-switch": "bin/vue-demi-switch.js"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.0-rc.1",
+ "vue": "^3.0.0-0 || ^2.6.0"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vueuse/metadata": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.9.0.tgz",
+ "integrity": "sha512-pgxsUJv/d7IjKpLeB6TthggEsaBwM3ffc5jPrr5TmxAm/fup0mGR5VTzrdA/PSx85tpb+CIvP92D+55qBNc8ag==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/@vueuse/shared": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.9.0.tgz",
+ "integrity": "sha512-+D0XFwHG0T+uaIbCSlROBwm1wzs71B7n3KyDOxnvfEMMHDOzl09rYKwaE2AENmYwYPXfHPbSBRDD2gBVHbvTcg==",
+ "dev": true,
+ "dependencies": {
+ "vue-demi": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/@vueuse/shared/node_modules/vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "vue-demi-fix": "bin/vue-demi-fix.js",
+ "vue-demi-switch": "bin/vue-demi-switch.js"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.0-rc.1",
+ "vue": "^3.0.0-0 || ^2.6.0"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ }
+ }
+ },
"node_modules/acorn": {
"version": "8.8.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
@@ -565,6 +1187,28 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
+ "node_modules/algoliasearch": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.14.3.tgz",
+ "integrity": "sha512-GZTEuxzfWbP/vr7ZJfGzIl8fOsoxN916Z6FY2Egc9q2TmZ6hvq5KfAxY89pPW01oW/2HDEKA8d30f9iAH9eXYg==",
+ "dev": true,
+ "dependencies": {
+ "@algolia/cache-browser-local-storage": "4.14.3",
+ "@algolia/cache-common": "4.14.3",
+ "@algolia/cache-in-memory": "4.14.3",
+ "@algolia/client-account": "4.14.3",
+ "@algolia/client-analytics": "4.14.3",
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-personalization": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/logger-common": "4.14.3",
+ "@algolia/logger-console": "4.14.3",
+ "@algolia/requester-browser-xhr": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/requester-node-http": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
"node_modules/argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -587,6 +1231,12 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "node_modules/body-scroll-lock": {
+ "version": "4.0.0-beta.0",
+ "resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-4.0.0-beta.0.tgz",
+ "integrity": "sha512-a7tP5+0Mw3YlUJcGAKUqIBkYYGlYxk2fnCasq/FUph1hadxlTRjF+gAcZksxANnaMnALjxEddmSi/H3OR8ugcQ==",
+ "dev": true
+ },
"node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -1501,9 +2151,9 @@
"dev": true
},
"node_modules/postcss": {
- "version": "8.4.19",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz",
- "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==",
+ "version": "8.4.20",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz",
+ "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==",
"funding": [
{
"type": "opencollective",
@@ -1523,6 +2173,16 @@
"node": "^10 || ^12 || >=14"
}
},
+ "node_modules/preact": {
+ "version": "10.11.3",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.11.3.tgz",
+ "integrity": "sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==",
+ "dev": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/preact"
+ }
+ },
"node_modules/process": {
"version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
@@ -1639,6 +2299,17 @@
"node": ">=10"
}
},
+ "node_modules/shiki": {
+ "version": "0.12.1",
+ "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.12.1.tgz",
+ "integrity": "sha512-aieaV1m349rZINEBkjxh2QbBvFFQOlgqYTNtCal82hHj4dDZ76oMlQIX+C7ryerBTDiga3e5NfH6smjdJ02BbQ==",
+ "dev": true,
+ "dependencies": {
+ "jsonc-parser": "^3.2.0",
+ "vscode-oniguruma": "^1.7.0",
+ "vscode-textmate": "^8.0.0"
+ }
+ },
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -1824,18 +2495,229 @@
"resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz",
"integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==",
"engines": {
- "node": ">= 0.10"
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/vite": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.4.tgz",
+ "integrity": "sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==",
+ "dependencies": {
+ "esbuild": "^0.15.9",
+ "postcss": "^8.4.18",
+ "resolve": "^1.22.1",
+ "rollup": "^2.79.1"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite-node": {
+ "version": "0.26.1",
+ "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.26.1.tgz",
+ "integrity": "sha512-5FJSKZZJz48zFRKHE55WyevZe61hLMQEsqGn+ungfd60kxEztFybZ3yG9ToGFtOWNCCy7Vn5EVuXD8bdeHOSdw==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.3.4",
+ "mlly": "^1.0.0",
+ "pathe": "^0.2.0",
+ "source-map": "^0.6.1",
+ "source-map-support": "^0.5.21",
+ "vite": "^3.0.0 || ^4.0.0"
+ },
+ "bin": {
+ "vite-node": "vite-node.mjs"
+ },
+ "engines": {
+ "node": ">=v14.16.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/vite-plugin-dts": {
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-1.7.1.tgz",
+ "integrity": "sha512-2oGMnAjcrZN7jM1TloiS1b1mCn42s3El04ix2RFhId5P1WfMigF8WAwsqT6a6jk0Yso8t7AeZsBkkxYShR0hBQ==",
+ "dependencies": {
+ "@microsoft/api-extractor": "^7.33.5",
+ "@rollup/pluginutils": "^5.0.2",
+ "@rushstack/node-core-library": "^3.53.2",
+ "debug": "^4.3.4",
+ "fast-glob": "^3.2.12",
+ "fs-extra": "^10.1.0",
+ "kolorist": "^1.6.0",
+ "ts-morph": "^16.0.0"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": ">=2.9.0"
+ }
+ },
+ "node_modules/vitepress": {
+ "version": "1.0.0-alpha.33",
+ "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-alpha.33.tgz",
+ "integrity": "sha512-EhMDqWLllYr5mXqAz4GCQ1o/bu5umQ6C2d8voiSaTHMkYCxsGc31ETykflM6NOhGx6yccwXygrYIIeN1l6BUEA==",
+ "dev": true,
+ "dependencies": {
+ "@docsearch/css": "^3.3.0",
+ "@docsearch/js": "^3.3.0",
+ "@vitejs/plugin-vue": "^4.0.0",
+ "@vue/devtools-api": "^6.4.5",
+ "@vueuse/core": "^9.8.2",
+ "body-scroll-lock": "4.0.0-beta.0",
+ "shiki": "^0.12.1",
+ "vite": "^4.0.2",
+ "vue": "^3.2.45"
+ },
+ "bin": {
+ "vitepress": "bin/vitepress.js"
+ }
+ },
+ "node_modules/vitepress/node_modules/@esbuild/android-arm": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.10.tgz",
+ "integrity": "sha512-RmJjQTRrO6VwUWDrzTBLmV4OJZTarYsiepLGlF2rYTVB701hSorPywPGvP6d8HCuuRibyXa5JX4s3jN2kHEtjQ==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/vitepress/node_modules/@esbuild/linux-loong64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.10.tgz",
+ "integrity": "sha512-O7Pd5hLEtTg37NC73pfhUOGTjx/+aXu5YoSq3ahCxcN7Bcr2F47mv+kG5t840thnsEzrv0oB70+LJu3gUgchvg==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/vitepress/node_modules/@vitejs/plugin-vue": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz",
+ "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/vitepress/node_modules/esbuild": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.10.tgz",
+ "integrity": "sha512-z5dIViHoVnw2l+NCJ3zj5behdXjYvXne9gL18OOivCadXDUhyDkeSvEtLcGVAJW2fNmh33TDUpsi704XYlDodw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.16.10",
+ "@esbuild/android-arm64": "0.16.10",
+ "@esbuild/android-x64": "0.16.10",
+ "@esbuild/darwin-arm64": "0.16.10",
+ "@esbuild/darwin-x64": "0.16.10",
+ "@esbuild/freebsd-arm64": "0.16.10",
+ "@esbuild/freebsd-x64": "0.16.10",
+ "@esbuild/linux-arm": "0.16.10",
+ "@esbuild/linux-arm64": "0.16.10",
+ "@esbuild/linux-ia32": "0.16.10",
+ "@esbuild/linux-loong64": "0.16.10",
+ "@esbuild/linux-mips64el": "0.16.10",
+ "@esbuild/linux-ppc64": "0.16.10",
+ "@esbuild/linux-riscv64": "0.16.10",
+ "@esbuild/linux-s390x": "0.16.10",
+ "@esbuild/linux-x64": "0.16.10",
+ "@esbuild/netbsd-x64": "0.16.10",
+ "@esbuild/openbsd-x64": "0.16.10",
+ "@esbuild/sunos-x64": "0.16.10",
+ "@esbuild/win32-arm64": "0.16.10",
+ "@esbuild/win32-ia32": "0.16.10",
+ "@esbuild/win32-x64": "0.16.10"
+ }
+ },
+ "node_modules/vitepress/node_modules/rollup": {
+ "version": "3.8.1",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.8.1.tgz",
+ "integrity": "sha512-4yh9eMW7byOroYcN8DlF9P/2jCpu6txVIHjEqquQVSx7DI0RgyCCN3tjrcy4ra6yVtV336aLBB3v2AarYAxePQ==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
}
},
- "node_modules/vite": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.4.tgz",
- "integrity": "sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==",
+ "node_modules/vitepress/node_modules/vite": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.3.tgz",
+ "integrity": "sha512-HvuNv1RdE7deIfQb8mPk51UKjqptO/4RXZ5yXSAvurd5xOckwS/gg8h9Tky3uSbnjYTgUm0hVCet1cyhKd73ZA==",
+ "dev": true,
"dependencies": {
- "esbuild": "^0.15.9",
- "postcss": "^8.4.18",
+ "esbuild": "^0.16.3",
+ "postcss": "^8.4.20",
"resolve": "^1.22.1",
- "rollup": "^2.79.1"
+ "rollup": "^3.7.0"
},
"bin": {
"vite": "bin/vite.js"
@@ -1875,50 +2757,6 @@
}
}
},
- "node_modules/vite-node": {
- "version": "0.26.1",
- "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.26.1.tgz",
- "integrity": "sha512-5FJSKZZJz48zFRKHE55WyevZe61hLMQEsqGn+ungfd60kxEztFybZ3yG9ToGFtOWNCCy7Vn5EVuXD8bdeHOSdw==",
- "dev": true,
- "dependencies": {
- "debug": "^4.3.4",
- "mlly": "^1.0.0",
- "pathe": "^0.2.0",
- "source-map": "^0.6.1",
- "source-map-support": "^0.5.21",
- "vite": "^3.0.0 || ^4.0.0"
- },
- "bin": {
- "vite-node": "vite-node.mjs"
- },
- "engines": {
- "node": ">=v14.16.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/antfu"
- }
- },
- "node_modules/vite-plugin-dts": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-1.7.1.tgz",
- "integrity": "sha512-2oGMnAjcrZN7jM1TloiS1b1mCn42s3El04ix2RFhId5P1WfMigF8WAwsqT6a6jk0Yso8t7AeZsBkkxYShR0hBQ==",
- "dependencies": {
- "@microsoft/api-extractor": "^7.33.5",
- "@rollup/pluginutils": "^5.0.2",
- "@rushstack/node-core-library": "^3.53.2",
- "debug": "^4.3.4",
- "fast-glob": "^3.2.12",
- "fs-extra": "^10.1.0",
- "kolorist": "^1.6.0",
- "ts-morph": "^16.0.0"
- },
- "engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "peerDependencies": {
- "vite": ">=2.9.0"
- }
- },
"node_modules/vitest": {
"version": "0.26.1",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.26.1.tgz",
@@ -1975,6 +2813,18 @@
}
}
},
+ "node_modules/vscode-oniguruma": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz",
+ "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==",
+ "dev": true
+ },
+ "node_modules/vscode-textmate": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz",
+ "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==",
+ "dev": true
+ },
"node_modules/vue": {
"version": "3.2.45",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.45.tgz",
@@ -2080,23 +2930,344 @@
}
},
"dependencies": {
+ "@algolia/autocomplete-core": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.2.tgz",
+ "integrity": "sha512-eclwUDC6qfApNnEfu1uWcL/rudQsn59tjEoUYZYE2JSXZrHLRjBUGMxiCoknobU2Pva8ejb0eRxpIYDtVVqdsw==",
+ "dev": true,
+ "requires": {
+ "@algolia/autocomplete-shared": "1.7.2"
+ }
+ },
+ "@algolia/autocomplete-preset-algolia": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.2.tgz",
+ "integrity": "sha512-+RYEG6B0QiGGfRb2G3MtPfyrl0dALF3cQNTWBzBX6p5o01vCCGTTinAm2UKG3tfc2CnOMAtnPLkzNZyJUpnVJw==",
+ "dev": true,
+ "requires": {
+ "@algolia/autocomplete-shared": "1.7.2"
+ }
+ },
+ "@algolia/autocomplete-shared": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.2.tgz",
+ "integrity": "sha512-QCckjiC7xXHIUaIL3ektBtjJ0w7tTA3iqKcAE/Hjn1lZ5omp7i3Y4e09rAr9ZybqirL7AbxCLLq0Ra5DDPKeug==",
+ "dev": true
+ },
+ "@algolia/cache-browser-local-storage": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.14.3.tgz",
+ "integrity": "sha512-hWH1yCxgG3+R/xZIscmUrWAIBnmBFHH5j30fY/+aPkEZWt90wYILfAHIOZ1/Wxhho5SkPfwFmT7ooX2d9JeQBw==",
+ "dev": true,
+ "requires": {
+ "@algolia/cache-common": "4.14.3"
+ }
+ },
+ "@algolia/cache-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.14.3.tgz",
+ "integrity": "sha512-oZJofOoD9FQOwiGTzyRnmzvh3ZP8WVTNPBLH5xU5JNF7drDbRT0ocVT0h/xB2rPHYzOeXRrLaQQBwRT/CKom0Q==",
+ "dev": true
+ },
+ "@algolia/cache-in-memory": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.14.3.tgz",
+ "integrity": "sha512-ES0hHQnzWjeioLQf5Nq+x1AWdZJ50znNPSH3puB/Y4Xsg4Av1bvLmTJe7SY2uqONaeMTvL0OaVcoVtQgJVw0vg==",
+ "dev": true,
+ "requires": {
+ "@algolia/cache-common": "4.14.3"
+ }
+ },
+ "@algolia/client-account": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.14.3.tgz",
+ "integrity": "sha512-PBcPb0+f5Xbh5UfLZNx2Ow589OdP8WYjB4CnvupfYBrl9JyC1sdH4jcq/ri8osO/mCZYjZrQsKAPIqW/gQmizQ==",
+ "dev": true,
+ "requires": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "@algolia/client-analytics": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.14.3.tgz",
+ "integrity": "sha512-eAwQq0Hb/aauv9NhCH5Dp3Nm29oFx28sayFN2fdOWemwSeJHIl7TmcsxVlRsO50fsD8CtPcDhtGeD3AIFLNvqw==",
+ "dev": true,
+ "requires": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "@algolia/client-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.14.3.tgz",
+ "integrity": "sha512-jkPPDZdi63IK64Yg4WccdCsAP4pHxSkr4usplkUZM5C1l1oEpZXsy2c579LQ0rvwCs5JFmwfNG4ahOszidfWPw==",
+ "dev": true,
+ "requires": {
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "@algolia/client-personalization": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.14.3.tgz",
+ "integrity": "sha512-UCX1MtkVNgaOL9f0e22x6tC9e2H3unZQlSUdnVaSKpZ+hdSChXGaRjp2UIT7pxmPqNCyv51F597KEX5WT60jNg==",
+ "dev": true,
+ "requires": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "@algolia/client-search": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.14.3.tgz",
+ "integrity": "sha512-I2U7xBx5OPFdPLA8AXKUPPxGY3HDxZ4r7+mlZ8ZpLbI8/ri6fnu6B4z3wcL7sgHhDYMwnAE8Xr0AB0h3Hnkp4A==",
+ "dev": true,
+ "requires": {
+ "@algolia/client-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
+ "@algolia/logger-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.14.3.tgz",
+ "integrity": "sha512-kUEAZaBt/J3RjYi8MEBT2QEexJR2kAE2mtLmezsmqMQZTV502TkHCxYzTwY2dE7OKcUTxi4OFlMuS4GId9CWPw==",
+ "dev": true
+ },
+ "@algolia/logger-console": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.14.3.tgz",
+ "integrity": "sha512-ZWqAlUITktiMN2EiFpQIFCJS10N96A++yrexqC2Z+3hgF/JcKrOxOdT4nSCQoEPvU4Ki9QKbpzbebRDemZt/hw==",
+ "dev": true,
+ "requires": {
+ "@algolia/logger-common": "4.14.3"
+ }
+ },
+ "@algolia/requester-browser-xhr": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.14.3.tgz",
+ "integrity": "sha512-AZeg2T08WLUPvDncl2XLX2O67W5wIO8MNaT7z5ii5LgBTuk/rU4CikTjCe2xsUleIZeFl++QrPAi4Bdxws6r/Q==",
+ "dev": true,
+ "requires": {
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
+ "@algolia/requester-common": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.14.3.tgz",
+ "integrity": "sha512-RrRzqNyKFDP7IkTuV3XvYGF9cDPn9h6qEDl595lXva3YUk9YSS8+MGZnnkOMHvjkrSCKfoLeLbm/T4tmoIeclw==",
+ "dev": true
+ },
+ "@algolia/requester-node-http": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.14.3.tgz",
+ "integrity": "sha512-O5wnPxtDRPuW2U0EaOz9rMMWdlhwP0J0eSL1Z7TtXF8xnUeeUyNJrdhV5uy2CAp6RbhM1VuC3sOJcIR6Av+vbA==",
+ "dev": true,
+ "requires": {
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
+ "@algolia/transporter": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.14.3.tgz",
+ "integrity": "sha512-2qlKlKsnGJ008exFRb5RTeTOqhLZj0bkMCMVskxoqWejs2Q2QtWmsiH98hDfpw0fmnyhzHEt0Z7lqxBYp8bW2w==",
+ "dev": true,
+ "requires": {
+ "@algolia/cache-common": "4.14.3",
+ "@algolia/logger-common": "4.14.3",
+ "@algolia/requester-common": "4.14.3"
+ }
+ },
"@babel/parser": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz",
"integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA=="
},
+ "@docsearch/css": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.0.tgz",
+ "integrity": "sha512-rODCdDtGyudLj+Va8b6w6Y85KE85bXRsps/R4Yjwt5vueXKXZQKYw0aA9knxLBT6a/bI/GMrAcmCR75KYOM6hg==",
+ "dev": true
+ },
+ "@docsearch/js": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.3.0.tgz",
+ "integrity": "sha512-oFXWRPNvPxAzBhnFJ9UCFIYZiQNc3Yrv6912nZHw/UIGxsyzKpNRZgHq8HDk1niYmOSoLKtVFcxkccpQmYGFyg==",
+ "dev": true,
+ "requires": {
+ "@docsearch/react": "3.3.0",
+ "preact": "^10.0.0"
+ }
+ },
+ "@docsearch/react": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.0.tgz",
+ "integrity": "sha512-fhS5adZkae2SSdMYEMVg6pxI5a/cE+tW16ki1V0/ur4Fdok3hBRkmN/H8VvlXnxzggkQIIRIVvYPn00JPjen3A==",
+ "dev": true,
+ "requires": {
+ "@algolia/autocomplete-core": "1.7.2",
+ "@algolia/autocomplete-preset-algolia": "1.7.2",
+ "@docsearch/css": "3.3.0",
+ "algoliasearch": "^4.0.0"
+ }
+ },
"@esbuild/android-arm": {
"version": "0.15.16",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.16.tgz",
"integrity": "sha512-nyB6CH++2mSgx3GbnrJsZSxzne5K0HMyNIWafDHqYy7IwxFc4fd/CgHVZXr8Eh+Q3KbIAcAe3vGyqIPhGblvMQ==",
"optional": true
},
+ "@esbuild/android-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.10.tgz",
+ "integrity": "sha512-47Y+NwVKTldTlDhSgJHZ/RpvBQMUDG7eKihqaF/u6g7s0ZPz4J1vy8A3rwnnUOF2CuDn7w7Gj/QcMoWz3U3SJw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/android-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.10.tgz",
+ "integrity": "sha512-C4PfnrBMcuAcOurQzpF1tTtZz94IXO5JmICJJ3NFJRHbXXsQUg9RFG45KvydKqtFfBaFLCHpduUkUfXwIvGnRg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/darwin-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.10.tgz",
+ "integrity": "sha512-bH/bpFwldyOKdi9HSLCLhhKeVgRYr9KblchwXgY2NeUHBB/BzTUHtUSBgGBmpydB1/4E37m+ggXXfSrnD7/E7g==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/darwin-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.10.tgz",
+ "integrity": "sha512-OXt7ijoLuy+AjDSKQWu+KdDFMBbdeaL6wtgMKtDUXKWHiAMKHan5+R1QAG6HD4+K0nnOvEJXKHeA9QhXNAjOTQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/freebsd-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.10.tgz",
+ "integrity": "sha512-shSQX/3GHuspE3Uxtq5kcFG/zqC+VuMnJkqV7LczO41cIe6CQaXHD3QdMLA4ziRq/m0vZo7JdterlgbmgNIAlQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/freebsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.10.tgz",
+ "integrity": "sha512-5YVc1zdeaJGASijZmTzSO4h6uKzsQGG3pkjI6fuXvolhm3hVRhZwnHJkforaZLmzvNv5Tb7a3QL2FAVmrgySIA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-arm": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.10.tgz",
+ "integrity": "sha512-c360287ZWI2miBnvIj23bPyVctgzeMT2kQKR+x94pVqIN44h3GF8VMEs1SFPH1UgyDr3yBbx3vowDS1SVhyVhA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.10.tgz",
+ "integrity": "sha512-2aqeNVxIaRfPcIaMZIFoblLh588sWyCbmj1HHCCs9WmeNWm+EIN0SmvsmPvTa/TsNZFKnxTcvkX2eszTcCqIrA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-ia32": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.10.tgz",
+ "integrity": "sha512-sqMIEWeyrLGU7J5RB5fTkLRIFwsgsQ7ieWXlDLEmC2HblPYGb3AucD7inw2OrKFpRPKsec1l+lssiM3+NV5aOw==",
+ "dev": true,
+ "optional": true
+ },
"@esbuild/linux-loong64": {
"version": "0.15.16",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.16.tgz",
"integrity": "sha512-SDLfP1uoB0HZ14CdVYgagllgrG7Mdxhkt4jDJOKl/MldKrkQ6vDJMZKl2+5XsEY/Lzz37fjgLQoJBGuAw/x8kQ==",
"optional": true
},
+ "@esbuild/linux-mips64el": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.10.tgz",
+ "integrity": "sha512-FN8mZOH7531iPHM0kaFhAOqqNHoAb6r/YHW2ZIxNi0a85UBi2DO4Vuyn7t1p4UN8a4LoAnLOT1PqNgHkgBJgbA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-ppc64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.10.tgz",
+ "integrity": "sha512-Dg9RiqdvHOAWnOKIOTsIx8dFX9EDlY2IbPEY7YFzchrCiTZmMkD7jWA9UdZbNUygPjdmQBVPRCrLydReFlX9yg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-riscv64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.10.tgz",
+ "integrity": "sha512-XMqtpjwzbmlar0BJIxmzu/RZ7EWlfVfH68Vadrva0Wj5UKOdKvqskuev2jY2oPV3aoQUyXwnMbMrFmloO2GfAw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-s390x": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.10.tgz",
+ "integrity": "sha512-fu7XtnoeRNFMx8DjK3gPWpFBDM2u5ba+FYwg27SjMJwKvJr4bDyKz5c+FLXLUSSAkMAt/UL+cUbEbra+rYtUgw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.10.tgz",
+ "integrity": "sha512-61lcjVC/RldNNMUzQQdyCWjCxp9YLEQgIxErxU9XluX7juBdGKb0pvddS0vPNuCvotRbzijZ1pzII+26haWzbA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/netbsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.10.tgz",
+ "integrity": "sha512-JeZXCX3viSA9j4HqSoygjssdqYdfHd6yCFWyfSekLbz4Ef+D2EjvsN02ZQPwYl5a5gg/ehdHgegHhlfOFP0HCA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/openbsd-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.10.tgz",
+ "integrity": "sha512-3qpxQKuEVIIg8SebpXsp82OBrqjPV/OwNWmG+TnZDr3VGyChNnGMHccC1xkbxCHDQNnnXjxhMQNyHmdFJbmbRA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/sunos-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.10.tgz",
+ "integrity": "sha512-z+q0xZ+et/7etz7WoMyXTHZ1rB8PMSNp/FOqURLJLOPb3GWJ2aj4oCqFCjPwEbW1rsT7JPpxeH/DwGAWk/I1Bg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-arm64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.10.tgz",
+ "integrity": "sha512-+YYu5sbQ9npkNT9Dec+tn1F/kjg6SMgr6bfi/6FpXYZvCRfu2YFPZGb+3x8K30s8eRxFpoG4sGhiSUkr1xbHEw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-ia32": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.10.tgz",
+ "integrity": "sha512-Aw7Fupk7XNehR1ftHGYwUteyJ2q+em/aE+fVU3YMTBN2V5A7Z4aVCSV+SvCp9HIIHZavPFBpbdP3VfjQpdf6Xg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-x64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.10.tgz",
+ "integrity": "sha512-qddWullt3sC1EIpfHvCRBq3H4g3L86DZpD6n8k2XFjFVyp01D++uNbN1hT/JRsHxTbyyemZcpwL5aRlJwc/zFw==",
+ "dev": true,
+ "optional": true
+ },
"@microsoft/api-extractor": {
"version": "7.33.6",
"resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.33.6.tgz",
@@ -2341,6 +3512,12 @@
"integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==",
"devOptional": true
},
+ "@types/web-bluetooth": {
+ "version": "0.0.16",
+ "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz",
+ "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==",
+ "dev": true
+ },
"@vitejs/plugin-vue": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz",
@@ -2449,6 +3626,12 @@
"@vue/shared": "3.2.45"
}
},
+ "@vue/devtools-api": {
+ "version": "6.4.5",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.4.5.tgz",
+ "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==",
+ "dev": true
+ },
"@vue/reactivity": {
"version": "3.2.45",
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.45.tgz",
@@ -2509,6 +3692,51 @@
"dev": true,
"requires": {}
},
+ "@vueuse/core": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.9.0.tgz",
+ "integrity": "sha512-JdDb7TrE0imZnwBhMF4+0PCJqGD3AxzH8S2sfk54P0rqvklK+EAtAR/mPb1HwV/JPujQFQJhghQ190Yq03YpVw==",
+ "dev": true,
+ "requires": {
+ "@types/web-bluetooth": "^0.0.16",
+ "@vueuse/metadata": "9.9.0",
+ "@vueuse/shared": "9.9.0",
+ "vue-demi": "*"
+ },
+ "dependencies": {
+ "vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "dev": true,
+ "requires": {}
+ }
+ }
+ },
+ "@vueuse/metadata": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.9.0.tgz",
+ "integrity": "sha512-pgxsUJv/d7IjKpLeB6TthggEsaBwM3ffc5jPrr5TmxAm/fup0mGR5VTzrdA/PSx85tpb+CIvP92D+55qBNc8ag==",
+ "dev": true
+ },
+ "@vueuse/shared": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.9.0.tgz",
+ "integrity": "sha512-+D0XFwHG0T+uaIbCSlROBwm1wzs71B7n3KyDOxnvfEMMHDOzl09rYKwaE2AENmYwYPXfHPbSBRDD2gBVHbvTcg==",
+ "dev": true,
+ "requires": {
+ "vue-demi": "*"
+ },
+ "dependencies": {
+ "vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "dev": true,
+ "requires": {}
+ }
+ }
+ },
"acorn": {
"version": "8.8.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
@@ -2532,6 +3760,28 @@
"uri-js": "^4.2.2"
}
},
+ "algoliasearch": {
+ "version": "4.14.3",
+ "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.14.3.tgz",
+ "integrity": "sha512-GZTEuxzfWbP/vr7ZJfGzIl8fOsoxN916Z6FY2Egc9q2TmZ6hvq5KfAxY89pPW01oW/2HDEKA8d30f9iAH9eXYg==",
+ "dev": true,
+ "requires": {
+ "@algolia/cache-browser-local-storage": "4.14.3",
+ "@algolia/cache-common": "4.14.3",
+ "@algolia/cache-in-memory": "4.14.3",
+ "@algolia/client-account": "4.14.3",
+ "@algolia/client-analytics": "4.14.3",
+ "@algolia/client-common": "4.14.3",
+ "@algolia/client-personalization": "4.14.3",
+ "@algolia/client-search": "4.14.3",
+ "@algolia/logger-common": "4.14.3",
+ "@algolia/logger-console": "4.14.3",
+ "@algolia/requester-browser-xhr": "4.14.3",
+ "@algolia/requester-common": "4.14.3",
+ "@algolia/requester-node-http": "4.14.3",
+ "@algolia/transporter": "4.14.3"
+ }
+ },
"argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -2551,6 +3801,12 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "body-scroll-lock": {
+ "version": "4.0.0-beta.0",
+ "resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-4.0.0-beta.0.tgz",
+ "integrity": "sha512-a7tP5+0Mw3YlUJcGAKUqIBkYYGlYxk2fnCasq/FUph1hadxlTRjF+gAcZksxANnaMnALjxEddmSi/H3OR8ugcQ==",
+ "dev": true
+ },
"brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -3161,15 +4417,21 @@
}
},
"postcss": {
- "version": "8.4.19",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz",
- "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==",
+ "version": "8.4.20",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz",
+ "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==",
"requires": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
}
},
+ "preact": {
+ "version": "10.11.3",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.11.3.tgz",
+ "integrity": "sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==",
+ "dev": true
+ },
"process": {
"version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
@@ -3230,6 +4492,17 @@
"lru-cache": "^6.0.0"
}
},
+ "shiki": {
+ "version": "0.12.1",
+ "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.12.1.tgz",
+ "integrity": "sha512-aieaV1m349rZINEBkjxh2QbBvFFQOlgqYTNtCal82hHj4dDZ76oMlQIX+C7ryerBTDiga3e5NfH6smjdJ02BbQ==",
+ "dev": true,
+ "requires": {
+ "jsonc-parser": "^3.2.0",
+ "vscode-oniguruma": "^1.7.0",
+ "vscode-textmate": "^8.0.0"
+ }
+ },
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -3410,6 +4683,98 @@
"ts-morph": "^16.0.0"
}
},
+ "vitepress": {
+ "version": "1.0.0-alpha.33",
+ "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-alpha.33.tgz",
+ "integrity": "sha512-EhMDqWLllYr5mXqAz4GCQ1o/bu5umQ6C2d8voiSaTHMkYCxsGc31ETykflM6NOhGx6yccwXygrYIIeN1l6BUEA==",
+ "dev": true,
+ "requires": {
+ "@docsearch/css": "^3.3.0",
+ "@docsearch/js": "^3.3.0",
+ "@vitejs/plugin-vue": "^4.0.0",
+ "@vue/devtools-api": "^6.4.5",
+ "@vueuse/core": "^9.8.2",
+ "body-scroll-lock": "4.0.0-beta.0",
+ "shiki": "^0.12.1",
+ "vite": "^4.0.2",
+ "vue": "^3.2.45"
+ },
+ "dependencies": {
+ "@esbuild/android-arm": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.10.tgz",
+ "integrity": "sha512-RmJjQTRrO6VwUWDrzTBLmV4OJZTarYsiepLGlF2rYTVB701hSorPywPGvP6d8HCuuRibyXa5JX4s3jN2kHEtjQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-loong64": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.10.tgz",
+ "integrity": "sha512-O7Pd5hLEtTg37NC73pfhUOGTjx/+aXu5YoSq3ahCxcN7Bcr2F47mv+kG5t840thnsEzrv0oB70+LJu3gUgchvg==",
+ "dev": true,
+ "optional": true
+ },
+ "@vitejs/plugin-vue": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz",
+ "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==",
+ "dev": true,
+ "requires": {}
+ },
+ "esbuild": {
+ "version": "0.16.10",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.10.tgz",
+ "integrity": "sha512-z5dIViHoVnw2l+NCJ3zj5behdXjYvXne9gL18OOivCadXDUhyDkeSvEtLcGVAJW2fNmh33TDUpsi704XYlDodw==",
+ "dev": true,
+ "requires": {
+ "@esbuild/android-arm": "0.16.10",
+ "@esbuild/android-arm64": "0.16.10",
+ "@esbuild/android-x64": "0.16.10",
+ "@esbuild/darwin-arm64": "0.16.10",
+ "@esbuild/darwin-x64": "0.16.10",
+ "@esbuild/freebsd-arm64": "0.16.10",
+ "@esbuild/freebsd-x64": "0.16.10",
+ "@esbuild/linux-arm": "0.16.10",
+ "@esbuild/linux-arm64": "0.16.10",
+ "@esbuild/linux-ia32": "0.16.10",
+ "@esbuild/linux-loong64": "0.16.10",
+ "@esbuild/linux-mips64el": "0.16.10",
+ "@esbuild/linux-ppc64": "0.16.10",
+ "@esbuild/linux-riscv64": "0.16.10",
+ "@esbuild/linux-s390x": "0.16.10",
+ "@esbuild/linux-x64": "0.16.10",
+ "@esbuild/netbsd-x64": "0.16.10",
+ "@esbuild/openbsd-x64": "0.16.10",
+ "@esbuild/sunos-x64": "0.16.10",
+ "@esbuild/win32-arm64": "0.16.10",
+ "@esbuild/win32-ia32": "0.16.10",
+ "@esbuild/win32-x64": "0.16.10"
+ }
+ },
+ "rollup": {
+ "version": "3.8.1",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.8.1.tgz",
+ "integrity": "sha512-4yh9eMW7byOroYcN8DlF9P/2jCpu6txVIHjEqquQVSx7DI0RgyCCN3tjrcy4ra6yVtV336aLBB3v2AarYAxePQ==",
+ "dev": true,
+ "requires": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "vite": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.3.tgz",
+ "integrity": "sha512-HvuNv1RdE7deIfQb8mPk51UKjqptO/4RXZ5yXSAvurd5xOckwS/gg8h9Tky3uSbnjYTgUm0hVCet1cyhKd73ZA==",
+ "dev": true,
+ "requires": {
+ "esbuild": "^0.16.3",
+ "fsevents": "~2.3.2",
+ "postcss": "^8.4.20",
+ "resolve": "^1.22.1",
+ "rollup": "^3.7.0"
+ }
+ }
+ }
+ },
"vitest": {
"version": "0.26.1",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.26.1.tgz",
@@ -3433,6 +4798,18 @@
"vite-node": "0.26.1"
}
},
+ "vscode-oniguruma": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz",
+ "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==",
+ "dev": true
+ },
+ "vscode-textmate": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz",
+ "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==",
+ "dev": true
+ },
"vue": {
"version": "3.2.45",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.45.tgz",
diff --git a/package.json b/package.json
index 67d64f0..97cf3bd 100644
--- a/package.json
+++ b/package.json
@@ -20,7 +20,10 @@
"build": "vue-tsc && vite build",
"preview": "vite preview",
"test": "vitest --dom",
- "coverage": "vitest run --coverage"
+ "coverage": "vitest run --coverage",
+ "docs:dev": "vitepress dev docs",
+ "docs:build": "vitepress build docs",
+ "docs:preview": "vitepress preview docs"
},
"dependencies": {
"happy-dom": "^8.1.0",
@@ -36,6 +39,7 @@
"path": "^0.12.7",
"typescript": "^4.6.4",
"vite": "^3.2.3",
+ "vitepress": "^1.0.0-alpha.33",
"vitest": "^0.26.1",
"vue-tsc": "^1.0.9"
}
diff --git a/src/types.ts b/src/types.ts
index 4eaa287..be14214 100644
--- a/src/types.ts
+++ b/src/types.ts
@@ -72,6 +72,9 @@ export interface RegisterOptions {
/** Default value for the field */
defaultValue?: any
+ /** Required indicator for the control */
+ required?:boolean
+
/** Validations for the field */
validations?: Validations
diff --git a/src/useFormHandler.ts b/src/useFormHandler.ts
index 45bcffd..2541f0a 100644
--- a/src/useFormHandler.ts
+++ b/src/useFormHandler.ts
@@ -164,7 +164,8 @@ const useFormHandler:FormHandler = ({
}),
...(options.native !== false && {
value: values[name],
- onInput: (el:any) => handleChange(name,el && (el.target && el.target.value))
+ onInput: (el:any) => handleChange(name,el && (el.target && el.target.value)),
+ ...(options.required && {required: true})
}),
...(options.clearable && {onClear: () => resetField(name)})
})}