nuxt-typed-router 2.2.0-beta.0 → 2.2.1

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/README.md CHANGED
@@ -93,6 +93,7 @@ export default defineNuxtConfig({
93
93
 
94
94
  - [ ] Add `path` autocomplete with TS string templates
95
95
  - [ ] Enforce strong params typing depending of origin route
96
+ - [ ] Add support for `validate` in `definePageMeta`
96
97
 
97
98
 
98
99
  ## Development
package/dist/module.json CHANGED
@@ -5,5 +5,5 @@
5
5
  "nuxt": "^3.0.0-rc.1",
6
6
  "bridge": false
7
7
  },
8
- "version": "2.2.0-beta.0"
8
+ "version": "2.2.1"
9
9
  }
package/dist/module.mjs CHANGED
@@ -74,6 +74,23 @@ function createRoutesNamedLocationsResolvedExport(routesParams) {
74
74
  `;
75
75
  }
76
76
 
77
+ function createRoutesParamsRecordResolvedExport(routesParams) {
78
+ return `
79
+ /**
80
+ * Record resolved used for resolved routes
81
+ *
82
+ * */
83
+ export type RoutesParamsRecordResolved = {
84
+ ${routesParams.map(
85
+ ({ name, params }) => `"${name}": ${params.length ? `{
86
+ ${params.map(
87
+ ({ key, notRequiredOnPage, catchAll }) => `"${key}"${notRequiredOnPage ? "?" : ""}: string${catchAll ? "[]" : ""}`
88
+ ).join(",\n")}
89
+ }` : "never"}`
90
+ ).join(",\n")}
91
+ }`;
92
+ }
93
+
77
94
  function createRoutesTypesFile({
78
95
  routesList,
79
96
  routesObjectTemplate,
@@ -86,6 +103,8 @@ function createRoutesTypesFile({
86
103
  ${createRoutesNamesListExport(routesList)}
87
104
 
88
105
  ${createRoutesParamsRecordExport(routesParams)}
106
+
107
+ ${createRoutesParamsRecordResolvedExport(routesParams)}
89
108
 
90
109
  ${createRoutesNamedLocationsExport(routesParams)}
91
110
 
@@ -118,6 +137,7 @@ function createTypedRouterFile() {
118
137
  RoutesNamedLocationsResolved,
119
138
  RoutesNamesList,
120
139
  RoutesParamsRecord,
140
+ RoutesParamsRecordResolved
121
141
  } from './__routes';
122
142
  import type { HasOneRequiredParameter } from './__types_utils';
123
143
 
@@ -226,7 +246,7 @@ function createTypedRouterFile() {
226
246
  * */
227
247
  export type TypedResolvedMatcherLocation<T extends RoutesNamesList> = {
228
248
  name: T;
229
- } & ([RoutesParamsRecord[T]] extends [never] ? {} : { params: RoutesParamsRecord[T] });
249
+ } & ([RoutesParamsRecordResolved[T]] extends [never] ? {} : { params: RoutesParamsRecordResolved[T] });
230
250
 
231
251
 
232
252
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nuxt-typed-router",
3
- "version": "2.2.0-beta.0",
3
+ "version": "2.2.1",
4
4
  "description": "Provide autocompletion for pages route names generated by Nuxt router",
5
5
  "type": "module",
6
6
  "main": "./dist/module.cjs",