@metaobjectsdev/codegen-ts-tanstack 0.15.20 → 0.15.21
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/templates/grid-hook-file.d.ts.map +1 -1
- package/dist/templates/grid-hook-file.js +3 -2
- package/dist/templates/grid-hook-file.js.map +1 -1
- package/dist/templates/hooks-file.d.ts.map +1 -1
- package/dist/templates/hooks-file.js +34 -22
- package/dist/templates/hooks-file.js.map +1 -1
- package/package.json +3 -3
- package/src/templates/grid-hook-file.ts +3 -2
- package/src/templates/hooks-file.ts +34 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-hook-file.d.ts","sourceRoot":"","sources":["../../src/templates/grid-hook-file.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,0BAA0B,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AA8BhE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"grid-hook-file.d.ts","sourceRoot":"","sources":["../../src/templates/grid-hook-file.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,0BAA0B,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AA8BhE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAgHjF"}
|
|
@@ -82,8 +82,9 @@ export function ${hookName}() {
|
|
|
82
82
|
for (const f of columnFilters) {
|
|
83
83
|
filterObj[f.id] = f.value as unknown;
|
|
84
84
|
}
|
|
85
|
-
const
|
|
86
|
-
|
|
85
|
+
const sortEntry = sorting[0];
|
|
86
|
+
const sort = sortEntry
|
|
87
|
+
? \`\${sortEntry.id}:\${sortEntry.desc ? "desc" : "asc"}\`
|
|
87
88
|
: undefined;
|
|
88
89
|
return ${buildFilterQsSym}({
|
|
89
90
|
...filterObj,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-hook-file.js","sourceRoot":"","sources":["../../src/templates/grid-hook-file.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"grid-hook-file.js","sourceRoot":"","sources":["../../src/templates/grid-hook-file.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,yDAAyD;AACzD,wEAAwE;AACxE,2EAA2E;AAC3E,EAAE;AACF,yEAAyE;AACzE,gBAAgB;AAChB,6CAA6C;AAC7C,6FAA6F;AAE7F,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAa,MAAM,SAAS,CAAC;AAEzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAUvG,SAAS,YAAY,CAAC,MAAkB;IACtC,MAAM,GAAG,GAAe,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAkB,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,OAAO,KAAK,wBAAwB;YAAE,SAAS;QACrD,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,SAAS;YACzB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;YAC1B,eAAe,EAAE,CAAC,CAAC,MAAM,KAAK,SAAS;YACvC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,gBAAgB,EAAE,CAAC,CAAC,gBAA8C;SACnE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAkB,EAAE,GAAkB;IACvE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;IAC/B,MAAM,QAAQ,GAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAQ,YAAY,CAAC,MAAM,CAAC,CAAC;IAExC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,yEAAyE;IACzE,8CAA8C;IAC9C,MAAM,YAAY,GAAG,qBAAqB,CACxC,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,kBAAkB,EACtB,MAAM,CAAC,OAAO,EACd,UAAU,EACV,GAAG,CAAC,QAAQ,CACb,CAAC;IAEF,uDAAuD;IACvD,MAAM,WAAW,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAI,GAAG,CAAC,eAAe,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAS,GAAG,CAAC,sCAAsC,CAAC,CAAC;IAC1E,MAAM,kBAAkB,GAAM,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAChF,MAAM,mBAAmB,GAAG,GAAG,CAAC,2CAA2C,CAAC,CAAC;IAC7E,MAAM,gBAAgB,GAAM,GAAG,CAAC,2CAA2C,CAAC,CAAC;IAE7E,MAAM,aAAa,GAAS,IAAI,CAAA;WACvB,UAAU,WAAW,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAC5C,UAAU,OAAO,UAAU,cAAc,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;CACpF,CAAC;IAEA,oDAAoD;IACpD,MAAM,mBAAmB,GAAa,KAAK;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAExD,0EAA0E;IAC1E,uDAAuD;IACvD,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,UAAU,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9G,MAAM,sBAAsB,GAC1B,mBAAmB,CAAC,MAAM,GAAG,CAAC;QAC5B,CAAC,CAAC,IAAI,CAAA,YAAY,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK;QAC7F,CAAC,CAAC,IAAI,CAAA,EAAE,CAAC;IAEb,MAAM,QAAQ,GAAW,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,MAAM,GAAG,GAAQ,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,UAAU,GAAG,GAAG,MAAM,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5E,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB;YAC1C,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,KAAK,MAAM,CAAC,KAAK;YACjH,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,iBAAiB,GAAG,6BAA6B,IAAI,CAAC,QAAQ,IAAI,CAAC;QAEzE,OAAO,IAAI,CAAA;kBACG,QAAQ;8CACoB,WAAW,IAAI,eAAe,KAAK,cAAc;8CACjD,WAAW,IAAI,kBAAkB,KAAK,iBAAiB;8CACvD,WAAW,IAAI,qBAAqB;8CACpC,WAAW;;oBAErC,mBAAmB;;eAExB,UAAU;iDACwB,WAAW,CAAC,CAAC,CAAC,QAAQ,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI;;;;;;;;aAQhF,gBAAgB;;;;;;;;;;kBAUX,WAAW,YAAY,UAAU;iBAClC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;qCAC1C,UAAU;aAClC,UAAU,kBAAkB,UAAU;;;;;;;;;;;;;;;;;CAiBlD,CAAC;IACA,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GACV,MAAM,gBAAgB,4BAA4B;QAClD,uBAAuB,UAAU,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;IAE1D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,OAAO,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,sBAAsB,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AACjG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-file.d.ts","sourceRoot":"","sources":["../../src/templates/hooks-file.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"hooks-file.d.ts","sourceRoot":"","sources":["../../src/templates/hooks-file.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,4BAA4B,CAAC;AAW/E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAmB9E"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { code, imp, joinCode, Import } from "ts-poet";
|
|
2
|
-
import { GENERATED_HEADER, isProjection, pluralize, entityModuleSpecifier, isTphDiscriminatorBase, tphPlan, } from "@metaobjectsdev/codegen-ts";
|
|
2
|
+
import { GENERATED_HEADER, isProjection, pluralize, entityModuleSpecifier, isTphDiscriminatorBase, tphPlan, getPkInfo, } from "@metaobjectsdev/codegen-ts";
|
|
3
3
|
/**
|
|
4
4
|
* Render <Entity>.hooks.ts — query-key factory + 2 query hooks + (for non-projections) 3 mutation hooks.
|
|
5
5
|
*
|
|
@@ -47,8 +47,8 @@ function m2mEntriesFor(entity, ctx) {
|
|
|
47
47
|
}
|
|
48
48
|
/** The `relation: (relation, sourceId) => ...` query-key factory line, included
|
|
49
49
|
* in the keys factory ONLY when the entity has M:N relationships. */
|
|
50
|
-
function m2mKeyLine(keysVar) {
|
|
51
|
-
return (` relation: (relation: string, sourceId:
|
|
50
|
+
function m2mKeyLine(keysVar, pkType) {
|
|
51
|
+
return (` relation: (relation: string, sourceId: ${pkType} | undefined) =>\n` +
|
|
52
52
|
` [...${keysVar}.all(), "relation", relation, sourceId ?? null] as const,`);
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
@@ -58,6 +58,9 @@ function m2mKeyLine(keysVar) {
|
|
|
58
58
|
function renderM2mHooks(entity, ctx, keysVar, entries) {
|
|
59
59
|
if (entries.length === 0)
|
|
60
60
|
return null;
|
|
61
|
+
// sourceId IS this entity's PK — it is interpolated straight into
|
|
62
|
+
// `GET /<source-plural>/{sourceId}/<relation>`, so it must carry the declared PK type.
|
|
63
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
61
64
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
62
65
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
63
66
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
@@ -83,7 +86,7 @@ function renderM2mHooks(entity, ctx, keysVar, entries) {
|
|
|
83
86
|
const relLit = JSON.stringify(e.name);
|
|
84
87
|
return code `
|
|
85
88
|
export function ${hookName}(
|
|
86
|
-
sourceId:
|
|
89
|
+
sourceId: ${pkType} | undefined,
|
|
87
90
|
opts?: Omit<${useQueryOptionsSym}<${targetSym}[]>, "queryKey" | "queryFn">,
|
|
88
91
|
): ${useQueryResultSym}<${targetSym}[]> {
|
|
89
92
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -106,11 +109,14 @@ function capitalize(s) {
|
|
|
106
109
|
// ---------------------------------------------------------------------------
|
|
107
110
|
function renderReadOnlyHooksFile(entity, entityModule, ctx) {
|
|
108
111
|
const entityName = entity.name;
|
|
112
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
113
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
114
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
109
115
|
const entityNamePlural = pluralize(entityName);
|
|
110
116
|
const lcEntity = entityName.charAt(0).toLowerCase() + entityName.slice(1);
|
|
111
117
|
const keysVar = `${lcEntity}Keys`;
|
|
112
118
|
const m2mEntries = m2mEntriesFor(entity, ctx);
|
|
113
|
-
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar)}` : "";
|
|
119
|
+
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar, pkType)}` : "";
|
|
114
120
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
115
121
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
116
122
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
@@ -129,12 +135,12 @@ export const ${keysVar} = {
|
|
|
129
135
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
130
136
|
list: (filter?: ${entityName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
131
137
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
132
|
-
detail: (id:
|
|
138
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,${relationKeyLine}
|
|
133
139
|
};
|
|
134
140
|
`;
|
|
135
141
|
const queries = code `
|
|
136
142
|
export function use${entityName}(
|
|
137
|
-
id:
|
|
143
|
+
id: ${pkType},
|
|
138
144
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
139
145
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
140
146
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -169,11 +175,14 @@ export function use${entityNamePlural}(
|
|
|
169
175
|
// ---------------------------------------------------------------------------
|
|
170
176
|
function renderFullHooksFile(entity, entityModule, ctx) {
|
|
171
177
|
const entityName = entity.name;
|
|
178
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
179
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
180
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
172
181
|
const entityNamePlural = pluralize(entityName);
|
|
173
182
|
const lcEntity = entityName.charAt(0).toLowerCase() + entityName.slice(1);
|
|
174
183
|
const keysVar = `${lcEntity}Keys`;
|
|
175
184
|
const m2mEntries = m2mEntriesFor(entity, ctx);
|
|
176
|
-
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar)}` : "";
|
|
185
|
+
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar, pkType)}` : "";
|
|
177
186
|
const useMutationSym = imp("useMutation@@tanstack/react-query");
|
|
178
187
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
179
188
|
const useQueryClientSym = imp("useQueryClient@@tanstack/react-query");
|
|
@@ -198,12 +207,12 @@ export const ${keysVar} = {
|
|
|
198
207
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
199
208
|
list: (filter?: ${entityName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
200
209
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
201
|
-
detail: (id:
|
|
210
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,${relationKeyLine}
|
|
202
211
|
};
|
|
203
212
|
`;
|
|
204
213
|
const queries = code `
|
|
205
214
|
export function use${entityName}(
|
|
206
|
-
id:
|
|
215
|
+
id: ${pkType},
|
|
207
216
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
208
217
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
209
218
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -249,8 +258,8 @@ export function useCreate${entityName}(
|
|
|
249
258
|
}
|
|
250
259
|
|
|
251
260
|
export function useUpdate${entityName}(
|
|
252
|
-
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id:
|
|
253
|
-
): ${useMutationResultSym}<${entityName}Row, Error, { id:
|
|
261
|
+
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }>, "mutationFn">,
|
|
262
|
+
): ${useMutationResultSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }> {
|
|
254
263
|
const fetcher = ${useEntityFetcherSym}();
|
|
255
264
|
const qc = ${useQueryClientSym}();
|
|
256
265
|
return ${useMutationSym}({
|
|
@@ -268,8 +277,8 @@ export function useUpdate${entityName}(
|
|
|
268
277
|
}
|
|
269
278
|
|
|
270
279
|
export function useDelete${entityName}(
|
|
271
|
-
opts?: Omit<${useMutationOptionsSym}<void, Error,
|
|
272
|
-
): ${useMutationResultSym}<void, Error,
|
|
280
|
+
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
281
|
+
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
273
282
|
const fetcher = ${useEntityFetcherSym}();
|
|
274
283
|
const qc = ${useQueryClientSym}();
|
|
275
284
|
return ${useMutationSym}({
|
|
@@ -292,6 +301,9 @@ export function useDelete${entityName}(
|
|
|
292
301
|
// ---------------------------------------------------------------------------
|
|
293
302
|
function renderTphHooksFile(base, ctx, baseModule) {
|
|
294
303
|
const baseName = base.name;
|
|
304
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
305
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
306
|
+
const pkType = getPkInfo(base, ctx).tsType;
|
|
295
307
|
const lcBase = baseName.charAt(0).toLowerCase() + baseName.slice(1);
|
|
296
308
|
const keysVar = `${lcBase}Keys`;
|
|
297
309
|
// Single source of truth for discriminator field + subtypes + route segments.
|
|
@@ -328,19 +340,19 @@ export const ${keysVar} = {
|
|
|
328
340
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
329
341
|
list: (filter?: ${baseName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
330
342
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
331
|
-
detail: (id:
|
|
343
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,
|
|
332
344
|
subtypeLists: (sub: string) => [...${keysVar}.all(), sub, "list"] as const,
|
|
333
345
|
// filter is loosely typed here (cache-key identity only); the per-subtype
|
|
334
346
|
// hooks below type it precisely as <Sub>Filter.
|
|
335
347
|
subtypeList: (sub: string, filter?: unknown) => [...${keysVar}.subtypeLists(sub), filter ?? {}] as const,
|
|
336
348
|
subtypeDetails:(sub: string) => [...${keysVar}.all(), sub, "detail"] as const,
|
|
337
|
-
subtypeDetail: (sub: string, id:
|
|
349
|
+
subtypeDetail: (sub: string, id: ${pkType}) => [...${keysVar}.subtypeDetails(sub), id] as const,
|
|
338
350
|
};
|
|
339
351
|
`;
|
|
340
352
|
// Polymorphic reads — return the discriminated union.
|
|
341
353
|
const polymorphic = code `
|
|
342
354
|
export function use${baseName}(
|
|
343
|
-
id:
|
|
355
|
+
id: ${pkType},
|
|
344
356
|
opts?: Omit<${useQueryOptionsSym}<${baseName}>, "queryKey" | "queryFn">,
|
|
345
357
|
): ${useQueryResultSym}<${baseName}> {
|
|
346
358
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -386,7 +398,7 @@ export function use${pluralize(subName)}(
|
|
|
386
398
|
}
|
|
387
399
|
|
|
388
400
|
export function use${subName}(
|
|
389
|
-
id:
|
|
401
|
+
id: ${pkType},
|
|
390
402
|
opts?: Omit<${useQueryOptionsSym}<${subName}>, "queryKey" | "queryFn">,
|
|
391
403
|
): ${useQueryResultSym}<${subName}> {
|
|
392
404
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -417,8 +429,8 @@ export function useCreate${subName}(
|
|
|
417
429
|
}
|
|
418
430
|
|
|
419
431
|
export function useUpdate${subName}(
|
|
420
|
-
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id:
|
|
421
|
-
): ${useMutationResultSym}<${subName}, Error, { id:
|
|
432
|
+
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }>, "mutationFn">,
|
|
433
|
+
): ${useMutationResultSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }> {
|
|
422
434
|
const fetcher = ${useEntityFetcherSym}();
|
|
423
435
|
const qc = ${useQueryClientSym}();
|
|
424
436
|
return ${useMutationSym}({
|
|
@@ -436,8 +448,8 @@ export function useUpdate${subName}(
|
|
|
436
448
|
}
|
|
437
449
|
|
|
438
450
|
export function useDelete${subName}(
|
|
439
|
-
opts?: Omit<${useMutationOptionsSym}<void, Error,
|
|
440
|
-
): ${useMutationResultSym}<void, Error,
|
|
451
|
+
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
452
|
+
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
441
453
|
const fetcher = ${useEntityFetcherSym}();
|
|
442
454
|
const qc = ${useQueryClientSym}();
|
|
443
455
|
return ${useMutationSym}({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-file.js","sourceRoot":"","sources":["../../src/templates/hooks-file.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hooks-file.js","sourceRoot":"","sources":["../../src/templates/hooks-file.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metaobjectsdev/codegen-ts-tanstack",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.21",
|
|
4
4
|
"description": "TanStack codegen for metaobjects — emits hooks and column definitions for TanStack Query and Table.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"access": "public"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@metaobjectsdev/metadata": "0.15.
|
|
48
|
-
"@metaobjectsdev/codegen-ts": "0.15.
|
|
47
|
+
"@metaobjectsdev/metadata": "0.15.21",
|
|
48
|
+
"@metaobjectsdev/codegen-ts": "0.15.21",
|
|
49
49
|
"ts-poet": "^6.10.0"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
@@ -110,8 +110,9 @@ export function ${hookName}() {
|
|
|
110
110
|
for (const f of columnFilters) {
|
|
111
111
|
filterObj[f.id] = f.value as unknown;
|
|
112
112
|
}
|
|
113
|
-
const
|
|
114
|
-
|
|
113
|
+
const sortEntry = sorting[0];
|
|
114
|
+
const sort = sortEntry
|
|
115
|
+
? \`\${sortEntry.id}:\${sortEntry.desc ? "desc" : "asc"}\`
|
|
115
116
|
: undefined;
|
|
116
117
|
return ${buildFilterQsSym}({
|
|
117
118
|
...filterObj,
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
entityModuleSpecifier,
|
|
9
9
|
isTphDiscriminatorBase,
|
|
10
10
|
tphPlan,
|
|
11
|
+
getPkInfo,
|
|
11
12
|
} from "@metaobjectsdev/codegen-ts";
|
|
12
13
|
|
|
13
14
|
/**
|
|
@@ -68,9 +69,9 @@ function m2mEntriesFor(entity: MetaObject, ctx: RenderContext): RelationEntry[]
|
|
|
68
69
|
|
|
69
70
|
/** The `relation: (relation, sourceId) => ...` query-key factory line, included
|
|
70
71
|
* in the keys factory ONLY when the entity has M:N relationships. */
|
|
71
|
-
function m2mKeyLine(keysVar: string): string {
|
|
72
|
+
function m2mKeyLine(keysVar: string, pkType: string): string {
|
|
72
73
|
return (
|
|
73
|
-
` relation: (relation: string, sourceId:
|
|
74
|
+
` relation: (relation: string, sourceId: ${pkType} | undefined) =>\n` +
|
|
74
75
|
` [...${keysVar}.all(), "relation", relation, sourceId ?? null] as const,`
|
|
75
76
|
);
|
|
76
77
|
}
|
|
@@ -87,6 +88,9 @@ function renderM2mHooks(
|
|
|
87
88
|
): Code | null {
|
|
88
89
|
if (entries.length === 0) return null;
|
|
89
90
|
|
|
91
|
+
// sourceId IS this entity's PK — it is interpolated straight into
|
|
92
|
+
// `GET /<source-plural>/{sourceId}/<relation>`, so it must carry the declared PK type.
|
|
93
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
90
94
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
91
95
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
92
96
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
@@ -123,7 +127,7 @@ function renderM2mHooks(
|
|
|
123
127
|
const relLit = JSON.stringify(e.name);
|
|
124
128
|
return code`
|
|
125
129
|
export function ${hookName}(
|
|
126
|
-
sourceId:
|
|
130
|
+
sourceId: ${pkType} | undefined,
|
|
127
131
|
opts?: Omit<${useQueryOptionsSym}<${targetSym}[]>, "queryKey" | "queryFn">,
|
|
128
132
|
): ${useQueryResultSym}<${targetSym}[]> {
|
|
129
133
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -150,11 +154,14 @@ function capitalize(s: string): string {
|
|
|
150
154
|
|
|
151
155
|
function renderReadOnlyHooksFile(entity: MetaObject, entityModule: string, ctx: RenderContext): string {
|
|
152
156
|
const entityName = entity.name;
|
|
157
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
158
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
159
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
153
160
|
const entityNamePlural = pluralize(entityName);
|
|
154
161
|
const lcEntity = entityName.charAt(0).toLowerCase() + entityName.slice(1);
|
|
155
162
|
const keysVar = `${lcEntity}Keys`;
|
|
156
163
|
const m2mEntries = m2mEntriesFor(entity, ctx);
|
|
157
|
-
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar)}` : "";
|
|
164
|
+
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar, pkType)}` : "";
|
|
158
165
|
|
|
159
166
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
160
167
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
@@ -176,13 +183,13 @@ export const ${keysVar} = {
|
|
|
176
183
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
177
184
|
list: (filter?: ${entityName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
178
185
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
179
|
-
detail: (id:
|
|
186
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,${relationKeyLine}
|
|
180
187
|
};
|
|
181
188
|
`;
|
|
182
189
|
|
|
183
190
|
const queries: Code = code`
|
|
184
191
|
export function use${entityName}(
|
|
185
|
-
id:
|
|
192
|
+
id: ${pkType},
|
|
186
193
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
187
194
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
188
195
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -222,11 +229,14 @@ export function use${entityNamePlural}(
|
|
|
222
229
|
|
|
223
230
|
function renderFullHooksFile(entity: MetaObject, entityModule: string, ctx: RenderContext): string {
|
|
224
231
|
const entityName = entity.name;
|
|
232
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
233
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
234
|
+
const pkType = getPkInfo(entity, ctx).tsType;
|
|
225
235
|
const entityNamePlural = pluralize(entityName);
|
|
226
236
|
const lcEntity = entityName.charAt(0).toLowerCase() + entityName.slice(1);
|
|
227
237
|
const keysVar = `${lcEntity}Keys`;
|
|
228
238
|
const m2mEntries = m2mEntriesFor(entity, ctx);
|
|
229
|
-
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar)}` : "";
|
|
239
|
+
const relationKeyLine = m2mEntries.length > 0 ? `\n${m2mKeyLine(keysVar, pkType)}` : "";
|
|
230
240
|
|
|
231
241
|
const useMutationSym = imp("useMutation@@tanstack/react-query");
|
|
232
242
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
@@ -254,13 +264,13 @@ export const ${keysVar} = {
|
|
|
254
264
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
255
265
|
list: (filter?: ${entityName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
256
266
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
257
|
-
detail: (id:
|
|
267
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,${relationKeyLine}
|
|
258
268
|
};
|
|
259
269
|
`;
|
|
260
270
|
|
|
261
271
|
const queries: Code = code`
|
|
262
272
|
export function use${entityName}(
|
|
263
|
-
id:
|
|
273
|
+
id: ${pkType},
|
|
264
274
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
265
275
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
266
276
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -308,8 +318,8 @@ export function useCreate${entityName}(
|
|
|
308
318
|
}
|
|
309
319
|
|
|
310
320
|
export function useUpdate${entityName}(
|
|
311
|
-
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id:
|
|
312
|
-
): ${useMutationResultSym}<${entityName}Row, Error, { id:
|
|
321
|
+
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }>, "mutationFn">,
|
|
322
|
+
): ${useMutationResultSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }> {
|
|
313
323
|
const fetcher = ${useEntityFetcherSym}();
|
|
314
324
|
const qc = ${useQueryClientSym}();
|
|
315
325
|
return ${useMutationSym}({
|
|
@@ -327,8 +337,8 @@ export function useUpdate${entityName}(
|
|
|
327
337
|
}
|
|
328
338
|
|
|
329
339
|
export function useDelete${entityName}(
|
|
330
|
-
opts?: Omit<${useMutationOptionsSym}<void, Error,
|
|
331
|
-
): ${useMutationResultSym}<void, Error,
|
|
340
|
+
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
341
|
+
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
332
342
|
const fetcher = ${useEntityFetcherSym}();
|
|
333
343
|
const qc = ${useQueryClientSym}();
|
|
334
344
|
return ${useMutationSym}({
|
|
@@ -359,6 +369,9 @@ export function useDelete${entityName}(
|
|
|
359
369
|
|
|
360
370
|
function renderTphHooksFile(base: MetaObject, ctx: RenderContext, baseModule: string): string {
|
|
361
371
|
const baseName = base.name;
|
|
372
|
+
// The id parameter must follow the entity's DECLARED primary-key type — a uuid/string
|
|
373
|
+
// PK typed as `number` is simply wrong for the data (and a tsc error at every call site).
|
|
374
|
+
const pkType = getPkInfo(base, ctx).tsType;
|
|
362
375
|
const lcBase = baseName.charAt(0).toLowerCase() + baseName.slice(1);
|
|
363
376
|
const keysVar = `${lcBase}Keys`;
|
|
364
377
|
// Single source of truth for discriminator field + subtypes + route segments.
|
|
@@ -399,20 +412,20 @@ export const ${keysVar} = {
|
|
|
399
412
|
lists: () => [...${keysVar}.all(), "list"] as const,
|
|
400
413
|
list: (filter?: ${baseName}Filter) => [...${keysVar}.lists(), filter ?? {}] as const,
|
|
401
414
|
details: () => [...${keysVar}.all(), "detail"] as const,
|
|
402
|
-
detail: (id:
|
|
415
|
+
detail: (id: ${pkType}) => [...${keysVar}.details(), id] as const,
|
|
403
416
|
subtypeLists: (sub: string) => [...${keysVar}.all(), sub, "list"] as const,
|
|
404
417
|
// filter is loosely typed here (cache-key identity only); the per-subtype
|
|
405
418
|
// hooks below type it precisely as <Sub>Filter.
|
|
406
419
|
subtypeList: (sub: string, filter?: unknown) => [...${keysVar}.subtypeLists(sub), filter ?? {}] as const,
|
|
407
420
|
subtypeDetails:(sub: string) => [...${keysVar}.all(), sub, "detail"] as const,
|
|
408
|
-
subtypeDetail: (sub: string, id:
|
|
421
|
+
subtypeDetail: (sub: string, id: ${pkType}) => [...${keysVar}.subtypeDetails(sub), id] as const,
|
|
409
422
|
};
|
|
410
423
|
`;
|
|
411
424
|
|
|
412
425
|
// Polymorphic reads — return the discriminated union.
|
|
413
426
|
const polymorphic: Code = code`
|
|
414
427
|
export function use${baseName}(
|
|
415
|
-
id:
|
|
428
|
+
id: ${pkType},
|
|
416
429
|
opts?: Omit<${useQueryOptionsSym}<${baseName}>, "queryKey" | "queryFn">,
|
|
417
430
|
): ${useQueryResultSym}<${baseName}> {
|
|
418
431
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -459,7 +472,7 @@ export function use${pluralize(subName)}(
|
|
|
459
472
|
}
|
|
460
473
|
|
|
461
474
|
export function use${subName}(
|
|
462
|
-
id:
|
|
475
|
+
id: ${pkType},
|
|
463
476
|
opts?: Omit<${useQueryOptionsSym}<${subName}>, "queryKey" | "queryFn">,
|
|
464
477
|
): ${useQueryResultSym}<${subName}> {
|
|
465
478
|
const fetcher = ${useEntityFetcherSym}();
|
|
@@ -490,8 +503,8 @@ export function useCreate${subName}(
|
|
|
490
503
|
}
|
|
491
504
|
|
|
492
505
|
export function useUpdate${subName}(
|
|
493
|
-
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id:
|
|
494
|
-
): ${useMutationResultSym}<${subName}, Error, { id:
|
|
506
|
+
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }>, "mutationFn">,
|
|
507
|
+
): ${useMutationResultSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }> {
|
|
495
508
|
const fetcher = ${useEntityFetcherSym}();
|
|
496
509
|
const qc = ${useQueryClientSym}();
|
|
497
510
|
return ${useMutationSym}({
|
|
@@ -509,8 +522,8 @@ export function useUpdate${subName}(
|
|
|
509
522
|
}
|
|
510
523
|
|
|
511
524
|
export function useDelete${subName}(
|
|
512
|
-
opts?: Omit<${useMutationOptionsSym}<void, Error,
|
|
513
|
-
): ${useMutationResultSym}<void, Error,
|
|
525
|
+
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
526
|
+
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
514
527
|
const fetcher = ${useEntityFetcherSym}();
|
|
515
528
|
const qc = ${useQueryClientSym}();
|
|
516
529
|
return ${useMutationSym}({
|