diff --git a/package.json b/package.json
index 423315e..9f51159 100644
--- a/package.json
+++ b/package.json
@@ -15,10 +15,13 @@
"@formkit/icons": "latest",
"@formkit/themes": "latest",
"@formkit/vue": "latest",
+ "@formkit/zod": "^1.6.9",
"autoprefixer": "latest",
+ "i18next": "^23.16.6",
"postcss": "latest",
"tailwindcss": "latest",
- "vue": "^3.5.13"
+ "vue": "^3.5.13",
+ "zod-i18n-map": "^2.27.0"
},
"devDependencies": {
"@vitejs/plugin-vue": "^5.2.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index a40bf81..0db6af0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -23,9 +23,15 @@ importers:
'@formkit/vue':
specifier: latest
version: 1.6.9(tailwindcss@3.4.15)(vue@3.5.13(typescript@5.6.3))
+ '@formkit/zod':
+ specifier: ^1.6.9
+ version: 1.6.9(zod@3.23.8)
autoprefixer:
specifier: latest
version: 10.4.20(postcss@8.4.49)
+ i18next:
+ specifier: ^23.16.6
+ version: 23.16.6
postcss:
specifier: latest
version: 8.4.49
@@ -35,6 +41,9 @@ importers:
vue:
specifier: ^3.5.13
version: 3.5.13(typescript@5.6.3)
+ zod-i18n-map:
+ specifier: ^2.27.0
+ version: 2.27.0(i18next@23.16.6)(zod@3.23.8)
devDependencies:
'@vitejs/plugin-vue':
specifier: ^5.2.0
@@ -68,6 +77,10 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
+ '@babel/runtime@7.26.0':
+ resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==}
+ engines: {node: '>=6.9.0'}
+
'@babel/types@7.26.0':
resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
engines: {node: '>=6.9.0'}
@@ -262,6 +275,11 @@ packages:
peerDependencies:
vue: ^3.4.0
+ '@formkit/zod@1.6.9':
+ resolution: {integrity: sha512-oQp2n2UoJTZTVsbbiDLRzpdOcGPrFTpmoaqp3tzbL4m7XJ9CE+Z9Q1sFA3MXTb1xrdCh3xWY2KAyXB0x4j5svw==}
+ peerDependencies:
+ zod: ^3.0.0
+
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
@@ -621,6 +639,9 @@ packages:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
+ i18next@23.16.6:
+ resolution: {integrity: sha512-wGdE5rUfkZtrL5k6MCptxbpjmgwku4rBRVU/YOJ7Xfd841fgaZjlxHpVJ5NIz8sfSvAJhEhJrvJ8qE7AWXE4Xg==}
+
is-binary-path@2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
@@ -801,6 +822,9 @@ packages:
resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
engines: {node: '>=8.10.0'}
+ regenerator-runtime@0.14.1:
+ resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+
resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
@@ -962,6 +986,15 @@ packages:
engines: {node: '>= 14'}
hasBin: true
+ zod-i18n-map@2.27.0:
+ resolution: {integrity: sha512-ORu9XpiVh3WDiEUs5Cr9siGgnpeODoBsTIgSD8sQCH9B//f9KowlzqHUEdPYb3vFonaSH8yPvPCOFM4niwp3Sg==}
+ peerDependencies:
+ i18next: '>=21.3.0'
+ zod: '>=3.17.0'
+
+ zod@3.23.8:
+ resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
+
snapshots:
'@alloc/quick-lru@5.2.0': {}
@@ -974,6 +1007,10 @@ snapshots:
dependencies:
'@babel/types': 7.26.0
+ '@babel/runtime@7.26.0':
+ dependencies:
+ regenerator-runtime: 0.14.1
+
'@babel/types@7.26.0':
dependencies:
'@babel/helper-string-parser': 7.25.9
@@ -1123,6 +1160,11 @@ snapshots:
- unocss
- windicss
+ '@formkit/zod@1.6.9(zod@3.23.8)':
+ dependencies:
+ '@formkit/core': 1.6.9
+ zod: 3.23.8
+
'@isaacs/cliui@8.0.2':
dependencies:
string-width: 5.1.2
@@ -1490,6 +1532,10 @@ snapshots:
he@1.2.0: {}
+ i18next@23.16.6:
+ dependencies:
+ '@babel/runtime': 7.26.0
+
is-binary-path@2.1.0:
dependencies:
binary-extensions: 2.3.0
@@ -1631,6 +1677,8 @@ snapshots:
dependencies:
picomatch: 2.3.1
+ regenerator-runtime@0.14.1: {}
+
resolve@1.22.8:
dependencies:
is-core-module: 2.15.1
@@ -1806,3 +1854,10 @@ snapshots:
strip-ansi: 7.1.0
yaml@2.6.0: {}
+
+ zod-i18n-map@2.27.0(i18next@23.16.6)(zod@3.23.8):
+ dependencies:
+ i18next: 23.16.6
+ zod: 3.23.8
+
+ zod@3.23.8: {}
diff --git a/src/App.vue b/src/App.vue
index 7248cea..cc6551a 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,233 +1,15 @@
-
-
- {{ value }}
-
-
{{ value }}+ +