@metaobjectsdev/codegen-ts-tanstack 1.0.0-rc.4 → 1.0.0-rc.5
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/tanstack-grid-hook.d.ts.map +1 -1
- package/dist/tanstack-grid-hook.js +4 -3
- package/dist/tanstack-grid-hook.js.map +1 -1
- package/dist/tanstack-grid.d.ts.map +1 -1
- package/dist/tanstack-grid.js +2 -2
- package/dist/tanstack-grid.js.map +1 -1
- package/dist/tanstack-query.d.ts +1 -1
- package/dist/tanstack-query.d.ts.map +1 -1
- package/dist/tanstack-query.js +5 -4
- package/dist/tanstack-query.js.map +1 -1
- package/dist/templates/columns-file.d.ts.map +1 -1
- package/dist/templates/columns-file.js +8 -11
- package/dist/templates/columns-file.js.map +1 -1
- package/dist/templates/grid-hook-file.d.ts.map +1 -1
- package/dist/templates/grid-hook-file.js +9 -9
- package/dist/templates/grid-hook-file.js.map +1 -1
- package/dist/templates/hooks-file.d.ts +1 -1
- package/dist/templates/hooks-file.d.ts.map +1 -1
- package/dist/templates/hooks-file.js +23 -23
- package/dist/templates/hooks-file.js.map +1 -1
- package/package.json +3 -3
- package/src/reference/grid-hook.ts +5 -3
- package/src/reference/grid.ts +2 -1
- package/src/reference/hooks.ts +6 -4
- package/src/tanstack-grid-hook.ts +4 -2
- package/src/tanstack-grid.ts +2 -1
- package/src/tanstack-query.ts +5 -3
- package/src/templates/columns-file.ts +13 -11
- package/src/templates/grid-hook-file.ts +15 -11
- package/src/templates/hooks-file.ts +23 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-grid-hook.d.ts","sourceRoot":"","sources":["../src/tanstack-grid-hook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,
|
|
1
|
+
{"version":3,"file":"tanstack-grid-hook.d.ts","sourceRoot":"","sources":["../src/tanstack-grid-hook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,EAGxD,MAAM,4BAA4B,CAAC;AAIpC,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC;;;;;;;;;;;;;;;OAeG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAuExB,gBAAgB,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { perEntity, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype, withClientDirective, namesRef, namesConstArg, } from "@metaobjectsdev/codegen-ts";
|
|
1
|
+
import { perEntity, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype, withClientDirective, namesRef, namesConstArg, effectivePackage, } from "@metaobjectsdev/codegen-ts";
|
|
2
2
|
import { hasDataGridLayout, warnMissingDataGridLayout } from "./data-grid-gate.js";
|
|
3
3
|
import { renderGridHookFile } from "./templates/grid-hook-file.js";
|
|
4
4
|
/**
|
|
@@ -54,11 +54,12 @@ export const tanstackGridHook = function tanstackGridHook(opts) {
|
|
|
54
54
|
// module's).
|
|
55
55
|
const rc = ctx.renderContext;
|
|
56
56
|
const metaNames = namesRef(entity, rc);
|
|
57
|
+
const pkg = effectivePackage(entity);
|
|
57
58
|
return [{
|
|
58
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
59
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, entityMetaFileName(entity.name)),
|
|
59
60
|
content: await formatTs(renderEntityMetaFile(entity, ctx.renderContext.apiPrefix, namesConstArg(metaNames))),
|
|
60
61
|
}, {
|
|
61
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
62
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, `${entity.name}.grid.ts`),
|
|
62
63
|
content: withClientDirective(await formatTs(renderGridHookFile(entity, ctx.renderContext)), ctx.renderContext.clientDirective),
|
|
63
64
|
}];
|
|
64
65
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-grid-hook.js","sourceRoot":"","sources":["../src/tanstack-grid-hook.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAyC,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,aAAa,EAAE,YAAY,EAC1J,mBAAmB,EAAE,QAAQ,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"tanstack-grid-hook.js","sourceRoot":"","sources":["../src/tanstack-grid-hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-grid.d.ts","sourceRoot":"","sources":["../src/tanstack-grid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,
|
|
1
|
+
{"version":3,"file":"tanstack-grid.d.ts","sourceRoot":"","sources":["../src/tanstack-grid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,EAGxD,MAAM,4BAA4B,CAAC;AAIpC,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC;;;;;;;;;;;;;;;OAeG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,YAAY,EAyCpB,gBAAgB,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC"}
|
package/dist/tanstack-grid.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { perEntity, formatTs, entityOutputPath, servesReadApi, isTphSubtype, withClientDirective, } from "@metaobjectsdev/codegen-ts";
|
|
1
|
+
import { perEntity, formatTs, entityOutputPath, servesReadApi, isTphSubtype, withClientDirective, effectivePackage, } from "@metaobjectsdev/codegen-ts";
|
|
2
2
|
import { hasDataGridLayout, warnMissingDataGridLayout } from "./data-grid-gate.js";
|
|
3
3
|
import { renderColumnsFile } from "./templates/columns-file.js";
|
|
4
4
|
/**
|
|
@@ -34,7 +34,7 @@ export const tanstackGrid = function tanstackGrid(opts) {
|
|
|
34
34
|
throw new Error("tanstack-grid: renderContext is required (provided by runGen)");
|
|
35
35
|
}
|
|
36
36
|
return {
|
|
37
|
-
path: entityOutputPath(ctx.renderContext.outputLayout, entity
|
|
37
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, effectivePackage(entity), `${entity.name}.columns.tsx`),
|
|
38
38
|
content: withClientDirective(await formatTs(renderColumnsFile(entity, ctx.renderContext)), ctx.renderContext.clientDirective),
|
|
39
39
|
};
|
|
40
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-grid.js","sourceRoot":"","sources":["../src/tanstack-grid.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAyC,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAChH,mBAAmB,
|
|
1
|
+
{"version":3,"file":"tanstack-grid.js","sourceRoot":"","sources":["../src/tanstack-grid.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAyC,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAChH,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAwBhE;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,YAAY,CAAC,IAAuB;IACvE,MAAM,UAAU,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAChD,oFAAoF;IACpF,gCAAgC;IAChC,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC/D,gFAAgF;IAChF,oDAAoD;IACpD,0EAA0E;IAC1E,iFAAiF;IACjF,gFAAgF;IAChF,qFAAqF;IACrF,iFAAiF;IACjF,oEAAoE;IACpE,MAAM,gBAAgB,GAAG,CAAC,CAAa,EAAW,EAAE,CAClD,aAAa,CAAC,CAAC,CAAC;WACb,UAAU,CAAC,CAAC,CAAC;WACb,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,MAAkB,EAAE,GAAG,EAAE,EAAE;QACvD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,cAAc,CAAC;YAC9G,OAAO,EAAE,mBAAmB,CAC1B,MAAM,QAAQ,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,EAC5D,GAAG,CAAC,aAAa,CAAC,eAAe,CAClC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;QACtE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACtB,yBAAyB,CAAC,GAAG,EAAE,gBAAgB,EAAE,sBAAsB,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;KACF,CAAC;IACF,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAA8C,CAAC"}
|
package/dist/tanstack-query.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export interface TanstackQueryOpts {
|
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
8
|
* Per-entity generator that emits <Entity>.hooks.ts — a query-key factory
|
|
9
|
-
* plus 2 query hooks and 3 mutation hooks backed by
|
|
9
|
+
* plus 2 query hooks and 3 mutation hooks backed by useEntityPathFetcher().
|
|
10
10
|
*
|
|
11
11
|
* If the user supplies their own filter, it AND-composes with the built-in gates.
|
|
12
12
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-query.d.ts","sourceRoot":"","sources":["../src/tanstack-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,
|
|
1
|
+
{"version":3,"file":"tanstack-query.d.ts","sourceRoot":"","sources":["../src/tanstack-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,EAGxD,MAAM,4BAA4B,CAAC;AAGpC,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAwDrB,gBAAgB,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC"}
|
package/dist/tanstack-query.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { perEntity, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype, withClientDirective, namesRef, namesConstArg, } from "@metaobjectsdev/codegen-ts";
|
|
1
|
+
import { perEntity, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype, withClientDirective, namesRef, namesConstArg, effectivePackage, } from "@metaobjectsdev/codegen-ts";
|
|
2
2
|
import { renderHooksFile } from "./templates/hooks-file.js";
|
|
3
3
|
/**
|
|
4
4
|
* Per-entity generator that emits <Entity>.hooks.ts — a query-key factory
|
|
5
|
-
* plus 2 query hooks and 3 mutation hooks backed by
|
|
5
|
+
* plus 2 query hooks and 3 mutation hooks backed by useEntityPathFetcher().
|
|
6
6
|
*
|
|
7
7
|
* If the user supplies their own filter, it AND-composes with the built-in gates.
|
|
8
8
|
*
|
|
@@ -40,12 +40,13 @@ export const tanstackQuery = function tanstackQuery(opts) {
|
|
|
40
40
|
// generator's own target — no separate check needed.
|
|
41
41
|
const rc = ctx.renderContext;
|
|
42
42
|
const metaNames = namesRef(entity, rc);
|
|
43
|
+
const pkg = effectivePackage(entity);
|
|
43
44
|
const metaFile = {
|
|
44
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
45
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, entityMetaFileName(entity.name)),
|
|
45
46
|
content: await formatTs(renderEntityMetaFile(entity, ctx.renderContext.apiPrefix, namesConstArg(metaNames))),
|
|
46
47
|
};
|
|
47
48
|
return [metaFile, {
|
|
48
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
49
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, `${entity.name}.hooks.ts`),
|
|
49
50
|
// Outside formatTs deliberately: the directive must stay the module's first
|
|
50
51
|
// token, and a formatter is entitled to move a leading string expression.
|
|
51
52
|
content: withClientDirective(await formatTs(renderHooksFile(entity, ctx.renderContext)), ctx.renderContext.clientDirective),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tanstack-query.js","sourceRoot":"","sources":["../src/tanstack-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAyC,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,aAAa,EAAE,YAAY,EAC1J,mBAAmB,EAAE,QAAQ,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"tanstack-query.js","sourceRoot":"","sources":["../src/tanstack-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAyC,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,aAAa,EAAE,YAAY,EAC1J,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAC5C,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAO5D;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,aAAa,CAAC,IAAwB;IAC1E,MAAM,UAAU,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,gBAAgB;QACtB,6EAA6E;QAC7E,4EAA4E;QAC5E,+EAA+E;QAC/E,mDAAmD;QACnD,+EAA+E;QAC/E,iFAAiF;QACjF,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QAChF,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;YACxC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;YACJ,CAAC,CAAM,0EAA0E;YACjF,yEAAyE;YACzE,+EAA+E;YAC/E,gFAAgF;YAChF,qCAAqC;YACrC,EAAE;YACF,6EAA6E;YAC7E,iFAAiF;YACjF,gFAAgF;YAChF,mEAAmE;YACnE,iFAAiF;YACjF,wEAAwE;YACxE,qDAAqD;YACrD,MAAM,EAAE,GAAG,GAAG,CAAC,aAAa,CAAC;YAC7B,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG;gBACf,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,EACxD,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAClC,OAAO,EAAE,MAAM,QAAQ,CAAC,oBAAoB,CAC1C,MAAM,EACN,GAAG,CAAC,aAAa,CAAC,SAAS,EAC3B,aAAa,CAAC,SAAS,CAAC,CACzB,CAAC;aACH,CAAC;YACF,OAAO,CAAC,QAAQ,EAAE;oBAChB,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,WAAW,CAAC;oBACtF,4EAA4E;oBAC5E,0EAA0E;oBAC1E,OAAO,EAAE,mBAAmB,CAC1B,MAAM,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,EAC1D,GAAG,CAAC,aAAa,CAAC,eAAe,CAClC;iBACF,CAAC,CAAC;QACL,CAAC,CAAC;KACH,CAAC;IACF,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAA+C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columns-file.d.ts","sourceRoot":"","sources":["../../src/templates/columns-file.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"columns-file.d.ts","sourceRoot":"","sources":["../../src/templates/columns-file.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,0BAA0B,CAAC;AAUtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAgLhE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAkFhF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { code, imp, joinCode } from "ts-poet";
|
|
2
|
-
import { LAYOUT_SUBTYPE_DATA_GRID, LAYOUT_DATA_GRID_ATTR_PAGE_SIZE,
|
|
3
|
-
import { GENERATED_HEADER, entityModuleSpecifier, isTphDiscriminatorBase, collectTphSubtypeFields, isSortableField, viewForContext, VIEW_CONTEXT_GRID, } from "@metaobjectsdev/codegen-ts";
|
|
2
|
+
import { LAYOUT_SUBTYPE_DATA_GRID, LAYOUT_DATA_GRID_ATTR_PAGE_SIZE, LAYOUT_DATA_GRID_ATTR_FILTERABLE, LAYOUT_DATA_GRID_ATTR_FILTER, LAYOUT_DATA_GRID_ATTR_COLUMNS, OBJECT_ATTR_DISCRIMINATOR, VIEW_SUBTYPE_HIDDEN, } from "@metaobjectsdev/metadata";
|
|
3
|
+
import { GENERATED_HEADER, entityModuleSpecifier, isTphDiscriminatorBase, collectTphSubtypeFields, isSortableField, viewForContext, VIEW_CONTEXT_GRID, effectivePackage, resolveGridDefaultSort, } from "@metaobjectsdev/codegen-ts";
|
|
4
4
|
function humanize(s) {
|
|
5
5
|
return s
|
|
6
6
|
.replace(/([a-z])([A-Z])/g, "$1 $2")
|
|
@@ -99,8 +99,7 @@ function extractGrids(entity, tph) {
|
|
|
99
99
|
return [spec];
|
|
100
100
|
});
|
|
101
101
|
// ADR-0039: resolving — dataGrid layout attrs may be inherited via extends.
|
|
102
|
-
const
|
|
103
|
-
const sortOrder = layout.attr(LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER);
|
|
102
|
+
const defaultSort = resolveGridDefaultSort(entity, layout);
|
|
104
103
|
const filterAttr = layout.attr(LAYOUT_DATA_GRID_ATTR_FILTER);
|
|
105
104
|
const grid = {
|
|
106
105
|
name: layout.name || "default",
|
|
@@ -108,10 +107,8 @@ function extractGrids(entity, tph) {
|
|
|
108
107
|
filterable: layout.attr(LAYOUT_DATA_GRID_ATTR_FILTERABLE) === true,
|
|
109
108
|
columns,
|
|
110
109
|
};
|
|
111
|
-
if (
|
|
112
|
-
grid.
|
|
113
|
-
if (sortOrder === "asc" || sortOrder === "desc")
|
|
114
|
-
grid.defaultSortOrder = sortOrder;
|
|
110
|
+
if (defaultSort !== undefined)
|
|
111
|
+
grid.defaultSort = defaultSort;
|
|
115
112
|
if (typeof filterAttr === "object" && filterAttr !== null && !Array.isArray(filterAttr)) {
|
|
116
113
|
grid.filter = filterAttr;
|
|
117
114
|
}
|
|
@@ -156,8 +153,8 @@ export function renderColumnsFile(entity, ctx) {
|
|
|
156
153
|
const sections = grids.map((grid) => {
|
|
157
154
|
const gridConstName = `${lcEntity}${capitalize(grid.name)}Grid`;
|
|
158
155
|
const columnsConstName = `${lcEntity}${capitalize(grid.name)}Columns`;
|
|
159
|
-
const sortBlock = grid.
|
|
160
|
-
? ` defaultSort: { field: ${JSON.stringify(grid.
|
|
156
|
+
const sortBlock = grid.defaultSort
|
|
157
|
+
? ` defaultSort: { field: ${JSON.stringify(grid.defaultSort.field)}, order: ${JSON.stringify(grid.defaultSort.order)} as const },\n`
|
|
161
158
|
: "";
|
|
162
159
|
const gridConst = code `
|
|
163
160
|
export const ${gridConstName} = {
|
|
@@ -190,7 +187,7 @@ export const ${filterConstName}: ${entityName}Filter = ${JSON.stringify(grid.fil
|
|
|
190
187
|
`// Source metadata: ${entityName} (${entity.fqn()})\n`;
|
|
191
188
|
// Import the entity's own file. Same target → relative "./Entity"; cross
|
|
192
189
|
// target → importBase-qualified package path.
|
|
193
|
-
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, entity
|
|
190
|
+
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, effectivePackage(entity), entityName, ctx.extStyle);
|
|
194
191
|
// Import <Entity>Row always; import <Entity>Filter only when a filter const is emitted.
|
|
195
192
|
// TPH base: <Base>Row is a distinct export (the all-columns row); import it
|
|
196
193
|
// directly. Non-TPH: the entity type IS the row, imported under the Row alias.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columns-file.js","sourceRoot":"","sources":["../../src/templates/columns-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAa,MAAM,SAAS,CAAC;AAEzD,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAC/B,
|
|
1
|
+
{"version":3,"file":"columns-file.js","sourceRoot":"","sources":["../../src/templates/columns-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
|
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;AA2ChE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAkHjF"}
|
|
@@ -18,7 +18,7 @@ function metaModuleOf(entityModule) {
|
|
|
18
18
|
? `${entityModule.slice(0, -3)}.meta.js`
|
|
19
19
|
: `${entityModule}.meta`;
|
|
20
20
|
}
|
|
21
|
-
import { GENERATED_HEADER, entityModuleSpecifier, siblingSpecifier } from "@metaobjectsdev/codegen-ts";
|
|
21
|
+
import { GENERATED_HEADER, entityModuleSpecifier, siblingSpecifier, effectivePackage, resolveGridDefaultSort, } from "@metaobjectsdev/codegen-ts";
|
|
22
22
|
function extractGrids(entity) {
|
|
23
23
|
const out = [];
|
|
24
24
|
for (const l of entity.layouts()) {
|
|
@@ -28,8 +28,7 @@ function extractGrids(entity) {
|
|
|
28
28
|
name: l.name || "default",
|
|
29
29
|
pageSize: l.pageSize ?? 25,
|
|
30
30
|
hasFilterPreset: l.filter !== undefined,
|
|
31
|
-
|
|
32
|
-
defaultSortOrder: l.defaultSortOrder,
|
|
31
|
+
defaultSort: resolveGridDefaultSort(entity, l),
|
|
33
32
|
});
|
|
34
33
|
}
|
|
35
34
|
return out;
|
|
@@ -43,9 +42,10 @@ export function renderGridHookFile(entity, ctx) {
|
|
|
43
42
|
const grids = extractGrids(entity);
|
|
44
43
|
if (grids.length === 0)
|
|
45
44
|
return "";
|
|
45
|
+
const pkg = effectivePackage(entity);
|
|
46
46
|
// Import the entity's own file. Same target → relative "./Entity"; cross
|
|
47
47
|
// target → importBase-qualified package path.
|
|
48
|
-
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget,
|
|
48
|
+
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, pkg, entityName, ctx.extStyle);
|
|
49
49
|
// ts-poet symbols (imp()) — typed and deduped on emit.
|
|
50
50
|
const useStateSym = imp("useState@react");
|
|
51
51
|
const useMemoSym = imp("useMemo@react");
|
|
@@ -53,7 +53,7 @@ export function renderGridHookFile(entity, ctx) {
|
|
|
53
53
|
const SortingStateSym = imp("t:SortingState@@tanstack/react-table");
|
|
54
54
|
const PaginationStateSym = imp("t:PaginationState@@tanstack/react-table");
|
|
55
55
|
const ColumnFiltersStateSym = imp("t:ColumnFiltersState@@tanstack/react-table");
|
|
56
|
-
const
|
|
56
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
57
57
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
58
58
|
const entityImports = code `
|
|
59
59
|
import { ${entityName} } from ${JSON.stringify(metaModuleOf(entityModule))};
|
|
@@ -65,7 +65,7 @@ import type { ${entityName} as ${entityName}Row } from ${JSON.stringify(entityMo
|
|
|
65
65
|
.map((g) => `${lcEntity}${capitalize(g.name)}Filter`);
|
|
66
66
|
// Columns file is a same-target sibling of the grid-hook (both emitted to
|
|
67
67
|
// selfTarget) — always relative, package-layout aware.
|
|
68
|
-
const columnsModule = siblingSpecifier(ctx.selfTarget,
|
|
68
|
+
const columnsModule = siblingSpecifier(ctx.selfTarget, pkg, `${entityName}.columns`, ctx.extStyle);
|
|
69
69
|
const filterPresetImportCode = filterPresetImports.length > 0
|
|
70
70
|
? code `import { ${filterPresetImports.join(", ")} } from ${JSON.stringify(columnsModule)};\n`
|
|
71
71
|
: code ``;
|
|
@@ -73,8 +73,8 @@ import type { ${entityName} as ${entityName}Row } from ${JSON.stringify(entityMo
|
|
|
73
73
|
const cap = capitalize(grid.name);
|
|
74
74
|
const hookName = `use${entityName}${cap}Grid`;
|
|
75
75
|
const presetConst = grid.hasFilterPreset ? `${lcEntity}${cap}Filter` : null;
|
|
76
|
-
const initialSorting = grid.
|
|
77
|
-
? `[{ id: ${JSON.stringify(grid.
|
|
76
|
+
const initialSorting = grid.defaultSort
|
|
77
|
+
? `[{ id: ${JSON.stringify(grid.defaultSort.field)}, desc: ${JSON.stringify(grid.defaultSort.order === "desc")} }]`
|
|
78
78
|
: `[]`;
|
|
79
79
|
const initialPagination = `{ pageIndex: 0, pageSize: ${grid.pageSize} }`;
|
|
80
80
|
return code `
|
|
@@ -84,7 +84,7 @@ export function ${hookName}() {
|
|
|
84
84
|
const [columnFilters, setColumnFilters] = ${useStateSym}<${ColumnFiltersStateSym}>([]);
|
|
85
85
|
const [search, setSearch] = ${useStateSym}<string>("");
|
|
86
86
|
|
|
87
|
-
const fetcher = ${
|
|
87
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
88
88
|
|
|
89
89
|
const qs = ${useMemoSym}(() => {
|
|
90
90
|
const filterObj: Record<string, unknown> = ${presetConst ? `{ ...${presetConst} }` : `{}`};
|
|
@@ -1 +1 @@
|
|
|
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;AAGpE;;;kFAGkF;AAClF,SAAS,YAAY,CAAC,YAAoB;IACxC,OAAO,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU;QACxC,CAAC,CAAC,GAAG,YAAY,OAAO,CAAC;AAC7B,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"grid-hook-file.js","sourceRoot":"","sources":["../../src/templates/grid-hook-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import type { RenderContext } from "@metaobjectsdev/codegen-ts";
|
|
|
13
13
|
* - useUpdate<Entity>
|
|
14
14
|
* - useDelete<Entity>
|
|
15
15
|
*
|
|
16
|
-
* All hooks call
|
|
16
|
+
* All hooks call useEntityPathFetcher() (from @metaobjectsdev/tanstack) for
|
|
17
17
|
* the underlying HTTP. Mutations aggressively invalidate <entity>Keys.all().
|
|
18
18
|
*/
|
|
19
19
|
export declare function renderHooksFile(entity: MetaObject, ctx: RenderContext): string;
|
|
@@ -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;AAuB/E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAmB9E"}
|
|
@@ -8,7 +8,7 @@ function metaModuleOf(entityModule) {
|
|
|
8
8
|
? `${entityModule.slice(0, -3)}.meta.js`
|
|
9
9
|
: `${entityModule}.meta`;
|
|
10
10
|
}
|
|
11
|
-
import { GENERATED_HEADER, isProjection, pluralize, entityModuleSpecifier, isTphDiscriminatorBase, tphPlan, getPkInfo, } from "@metaobjectsdev/codegen-ts";
|
|
11
|
+
import { GENERATED_HEADER, isProjection, pluralize, entityModuleSpecifier, isTphDiscriminatorBase, tphPlan, getPkInfo, effectivePackage, } from "@metaobjectsdev/codegen-ts";
|
|
12
12
|
/**
|
|
13
13
|
* Render <Entity>.hooks.ts — query-key factory + 2 query hooks + (for non-projections) 3 mutation hooks.
|
|
14
14
|
*
|
|
@@ -22,13 +22,13 @@ import { GENERATED_HEADER, isProjection, pluralize, entityModuleSpecifier, isTph
|
|
|
22
22
|
* - useUpdate<Entity>
|
|
23
23
|
* - useDelete<Entity>
|
|
24
24
|
*
|
|
25
|
-
* All hooks call
|
|
25
|
+
* All hooks call useEntityPathFetcher() (from @metaobjectsdev/tanstack) for
|
|
26
26
|
* the underlying HTTP. Mutations aggressively invalidate <entity>Keys.all().
|
|
27
27
|
*/
|
|
28
28
|
export function renderHooksFile(entity, ctx) {
|
|
29
29
|
// Import the entity's own file. Same target → relative "./Entity"; cross
|
|
30
30
|
// target → importBase-qualified package path.
|
|
31
|
-
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, entity
|
|
31
|
+
const entityModule = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, effectivePackage(entity), entity.name, ctx.extStyle);
|
|
32
32
|
// FR-017 Tier 3: a TPH discriminator base gets a polymorphic + per-subtype
|
|
33
33
|
// hooks file (the subtype entities are filtered out of this generator).
|
|
34
34
|
if (isTphDiscriminatorBase(entity, ctx.loadedRoot)) {
|
|
@@ -73,7 +73,7 @@ function renderM2mHooks(entity, ctx, keysVar, entries) {
|
|
|
73
73
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
74
74
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
75
75
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
76
|
-
const
|
|
76
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
77
77
|
const source = entity.name;
|
|
78
78
|
// Distinct target row types, imported (aliased) from each target's entity
|
|
79
79
|
// module. ts-poet's imp() tracks + hoists these into the import block. The
|
|
@@ -98,7 +98,7 @@ export function ${hookName}(
|
|
|
98
98
|
sourceId: ${pkType} | undefined,
|
|
99
99
|
opts?: Omit<${useQueryOptionsSym}<${targetSym}[]>, "queryKey" | "queryFn">,
|
|
100
100
|
): ${useQueryResultSym}<${targetSym}[]> {
|
|
101
|
-
const fetcher = ${
|
|
101
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
102
102
|
return ${useQuerySym}<${targetSym}[]>({
|
|
103
103
|
queryKey: ${keysVar}.relation(${relLit}, sourceId),
|
|
104
104
|
queryFn: () => fetcher<${targetSym}[]>(\`\${${source}.$path}/\${sourceId}/${e.name}\`),
|
|
@@ -129,7 +129,7 @@ function renderReadOnlyHooksFile(entity, entityModule, ctx) {
|
|
|
129
129
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
130
130
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
131
131
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
132
|
-
const
|
|
132
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
133
133
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
134
134
|
const entityImports = code `
|
|
135
135
|
import { ${entityName} } from ${JSON.stringify(metaModuleOf(entityModule))};
|
|
@@ -152,7 +152,7 @@ export function use${entityName}(
|
|
|
152
152
|
id: ${pkType},
|
|
153
153
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
154
154
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
155
|
-
const fetcher = ${
|
|
155
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
156
156
|
return ${useQuerySym}<${entityName}Row>({
|
|
157
157
|
queryKey: ${keysVar}.detail(id),
|
|
158
158
|
queryFn: () => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`),
|
|
@@ -164,7 +164,7 @@ export function use${entityNamePlural}(
|
|
|
164
164
|
filter?: ${entityName}Filter,
|
|
165
165
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row[]>, "queryKey" | "queryFn">,
|
|
166
166
|
): ${useQueryResultSym}<${entityName}Row[]> {
|
|
167
|
-
const fetcher = ${
|
|
167
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
168
168
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
169
169
|
return ${useQuerySym}<${entityName}Row[]>({
|
|
170
170
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -199,7 +199,7 @@ function renderFullHooksFile(entity, entityModule, ctx) {
|
|
|
199
199
|
const useMutationOptionsSym = imp("t:UseMutationOptions@@tanstack/react-query");
|
|
200
200
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
201
201
|
const useMutationResultSym = imp("t:UseMutationResult@@tanstack/react-query");
|
|
202
|
-
const
|
|
202
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
203
203
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
204
204
|
const entityImports = code `
|
|
205
205
|
import { ${entityName} } from ${JSON.stringify(metaModuleOf(entityModule))};
|
|
@@ -224,7 +224,7 @@ export function use${entityName}(
|
|
|
224
224
|
id: ${pkType},
|
|
225
225
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
226
226
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
227
|
-
const fetcher = ${
|
|
227
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
228
228
|
return ${useQuerySym}<${entityName}Row>({
|
|
229
229
|
queryKey: ${keysVar}.detail(id),
|
|
230
230
|
queryFn: () => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`),
|
|
@@ -236,7 +236,7 @@ export function use${entityNamePlural}(
|
|
|
236
236
|
filter?: ${entityName}Filter,
|
|
237
237
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row[]>, "queryKey" | "queryFn">,
|
|
238
238
|
): ${useQueryResultSym}<${entityName}Row[]> {
|
|
239
|
-
const fetcher = ${
|
|
239
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
240
240
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
241
241
|
return ${useQuerySym}<${entityName}Row[]>({
|
|
242
242
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -250,7 +250,7 @@ export function use${entityNamePlural}(
|
|
|
250
250
|
export function useCreate${entityName}(
|
|
251
251
|
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, ${entityName}Insert>, "mutationFn">,
|
|
252
252
|
): ${useMutationResultSym}<${entityName}Row, Error, ${entityName}Insert> {
|
|
253
|
-
const fetcher = ${
|
|
253
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
254
254
|
const qc = ${useQueryClientSym}();
|
|
255
255
|
return ${useMutationSym}<${entityName}Row, Error, ${entityName}Insert>({
|
|
256
256
|
mutationFn: (input) => fetcher<${entityName}Row>(\`\${${entityName}.$path}\`, {
|
|
@@ -269,7 +269,7 @@ export function useCreate${entityName}(
|
|
|
269
269
|
export function useUpdate${entityName}(
|
|
270
270
|
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }>, "mutationFn">,
|
|
271
271
|
): ${useMutationResultSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }> {
|
|
272
|
-
const fetcher = ${
|
|
272
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
273
273
|
const qc = ${useQueryClientSym}();
|
|
274
274
|
return ${useMutationSym}({
|
|
275
275
|
mutationFn: ({ id, input }) => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`, {
|
|
@@ -288,7 +288,7 @@ export function useUpdate${entityName}(
|
|
|
288
288
|
export function useDelete${entityName}(
|
|
289
289
|
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
290
290
|
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
291
|
-
const fetcher = ${
|
|
291
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
292
292
|
const qc = ${useQueryClientSym}();
|
|
293
293
|
return ${useMutationSym}({
|
|
294
294
|
mutationFn: (id) => fetcher<void>(\`\${${entityName}.$path}/\${id}\`, { method: "DELETE" }),
|
|
@@ -325,7 +325,7 @@ function renderTphHooksFile(base, ctx, baseModule) {
|
|
|
325
325
|
const useMutationOptionsSym = imp("t:UseMutationOptions@@tanstack/react-query");
|
|
326
326
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
327
327
|
const useMutationResultSym = imp("t:UseMutationResult@@tanstack/react-query");
|
|
328
|
-
const
|
|
328
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
329
329
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
330
330
|
const subtypes = plan.subtypes;
|
|
331
331
|
// `${baseName}` imports BOTH the constants value (for $path) and the
|
|
@@ -335,7 +335,7 @@ function renderTphHooksFile(base, ctx, baseModule) {
|
|
|
335
335
|
// allowlist actually permits.
|
|
336
336
|
const subImportLines = subtypes
|
|
337
337
|
.map((s) => {
|
|
338
|
-
const m = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, s.entity
|
|
338
|
+
const m = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, effectivePackage(s.entity), s.entity.name, ctx.extStyle);
|
|
339
339
|
return `import { type ${s.entity.name}, type ${s.entity.name}Filter } from ${JSON.stringify(m)};`;
|
|
340
340
|
})
|
|
341
341
|
.join("\n");
|
|
@@ -364,7 +364,7 @@ export function use${baseName}(
|
|
|
364
364
|
id: ${pkType},
|
|
365
365
|
opts?: Omit<${useQueryOptionsSym}<${baseName}>, "queryKey" | "queryFn">,
|
|
366
366
|
): ${useQueryResultSym}<${baseName}> {
|
|
367
|
-
const fetcher = ${
|
|
367
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
368
368
|
return ${useQuerySym}<${baseName}>({
|
|
369
369
|
queryKey: ${keysVar}.detail(id),
|
|
370
370
|
queryFn: () => fetcher<${baseName}>(\`\${${baseName}.$path}/\${id}\`),
|
|
@@ -376,7 +376,7 @@ export function use${pluralize(baseName)}(
|
|
|
376
376
|
filter?: ${baseName}Filter,
|
|
377
377
|
opts?: Omit<${useQueryOptionsSym}<${baseName}[]>, "queryKey" | "queryFn">,
|
|
378
378
|
): ${useQueryResultSym}<${baseName}[]> {
|
|
379
|
-
const fetcher = ${
|
|
379
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
380
380
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
381
381
|
return ${useQuerySym}<${baseName}[]>({
|
|
382
382
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -397,7 +397,7 @@ export function use${pluralize(subName)}(
|
|
|
397
397
|
filter?: ${subName}Filter,
|
|
398
398
|
opts?: Omit<${useQueryOptionsSym}<${subName}[]>, "queryKey" | "queryFn">,
|
|
399
399
|
): ${useQueryResultSym}<${subName}[]> {
|
|
400
|
-
const fetcher = ${
|
|
400
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
401
401
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
402
402
|
return ${useQuerySym}<${subName}[]>({
|
|
403
403
|
queryKey: ${keysVar}.subtypeList(${valueLit}, filter),
|
|
@@ -410,7 +410,7 @@ export function use${subName}(
|
|
|
410
410
|
id: ${pkType},
|
|
411
411
|
opts?: Omit<${useQueryOptionsSym}<${subName}>, "queryKey" | "queryFn">,
|
|
412
412
|
): ${useQueryResultSym}<${subName}> {
|
|
413
|
-
const fetcher = ${
|
|
413
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
414
414
|
return ${useQuerySym}<${subName}>({
|
|
415
415
|
queryKey: ${keysVar}.subtypeDetail(${valueLit}, id),
|
|
416
416
|
queryFn: () => fetcher<${subName}>(\`\${${baseName}.$path}/${seg}/\${id}\`),
|
|
@@ -421,7 +421,7 @@ export function use${subName}(
|
|
|
421
421
|
export function useCreate${subName}(
|
|
422
422
|
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, ${createInput}>, "mutationFn">,
|
|
423
423
|
): ${useMutationResultSym}<${subName}, Error, ${createInput}> {
|
|
424
|
-
const fetcher = ${
|
|
424
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
425
425
|
const qc = ${useQueryClientSym}();
|
|
426
426
|
return ${useMutationSym}<${subName}, Error, ${createInput}>({
|
|
427
427
|
mutationFn: (input) => fetcher<${subName}>(${subPath}, {
|
|
@@ -440,7 +440,7 @@ export function useCreate${subName}(
|
|
|
440
440
|
export function useUpdate${subName}(
|
|
441
441
|
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }>, "mutationFn">,
|
|
442
442
|
): ${useMutationResultSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }> {
|
|
443
|
-
const fetcher = ${
|
|
443
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
444
444
|
const qc = ${useQueryClientSym}();
|
|
445
445
|
return ${useMutationSym}({
|
|
446
446
|
mutationFn: ({ id, input }) => fetcher<${subName}>(\`\${${baseName}.$path}/${seg}/\${id}\`, {
|
|
@@ -459,7 +459,7 @@ export function useUpdate${subName}(
|
|
|
459
459
|
export function useDelete${subName}(
|
|
460
460
|
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
461
461
|
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
462
|
-
const fetcher = ${
|
|
462
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
463
463
|
const qc = ${useQueryClientSym}();
|
|
464
464
|
return ${useMutationSym}({
|
|
465
465
|
mutationFn: (id) => fetcher<void>(\`\${${baseName}.$path}/${seg}/\${id}\`, { method: "DELETE" }),
|
|
@@ -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": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.5",
|
|
4
4
|
"description": "TanStack codegen for metaobjects — TanStack Query hooks for every entity, plus TanStack Table column definitions and grid-state hooks for entities declaring a layout.dataGrid.",
|
|
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": "1.0.0-rc.
|
|
48
|
-
"@metaobjectsdev/codegen-ts": "1.0.0-rc.
|
|
47
|
+
"@metaobjectsdev/metadata": "1.0.0-rc.5",
|
|
48
|
+
"@metaobjectsdev/codegen-ts": "1.0.0-rc.5",
|
|
49
49
|
"ts-poet": "^6.10.0"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
//
|
|
5
5
|
// RUNTIME: this file executes under whatever runs `meta gen` — NODE, even in a Bun
|
|
6
6
|
// project. Do not reach for `Bun.*` globals here.
|
|
7
|
-
// targets: TanStack Query. The emitted hook calls `
|
|
7
|
+
// targets: TanStack Query. The emitted hook calls `useEntityPathFetcher()` from
|
|
8
8
|
// `@metaobjectsdev/tanstack`, so the module is a CLIENT component.
|
|
9
9
|
// If your framework compiles server and client from one tree and resolves
|
|
10
10
|
// each half under different conditions, the emitted file may need a marker
|
|
@@ -36,6 +36,7 @@ import {
|
|
|
36
36
|
withClientDirective,
|
|
37
37
|
namesRef,
|
|
38
38
|
namesConstArg,
|
|
39
|
+
effectivePackage,
|
|
39
40
|
} from "@metaobjectsdev/codegen-ts";
|
|
40
41
|
import {
|
|
41
42
|
renderGridHookFile,
|
|
@@ -119,8 +120,9 @@ export const tanstackGridHook = function tanstackGridHook(opts?: TanstackGridHoo
|
|
|
119
120
|
// module's).
|
|
120
121
|
const rc = ctx.renderContext;
|
|
121
122
|
const metaNames = namesRef(entity, rc);
|
|
123
|
+
const pkg = effectivePackage(entity);
|
|
122
124
|
return [{
|
|
123
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
125
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg,
|
|
124
126
|
entityMetaFileName(entity.name)),
|
|
125
127
|
content: await formatTs(renderEntityMetaFile(
|
|
126
128
|
entity,
|
|
@@ -130,7 +132,7 @@ export const tanstackGridHook = function tanstackGridHook(opts?: TanstackGridHoo
|
|
|
130
132
|
}, {
|
|
131
133
|
path: entityOutputPath(
|
|
132
134
|
ctx.renderContext.outputLayout,
|
|
133
|
-
|
|
135
|
+
pkg,
|
|
134
136
|
`${entity.name}.grid.ts`,
|
|
135
137
|
),
|
|
136
138
|
content: withClientDirective(
|
package/src/reference/grid.ts
CHANGED
|
@@ -32,6 +32,7 @@ import {
|
|
|
32
32
|
servesReadApi,
|
|
33
33
|
isTphSubtype,
|
|
34
34
|
withClientDirective,
|
|
35
|
+
effectivePackage,
|
|
35
36
|
} from "@metaobjectsdev/codegen-ts";
|
|
36
37
|
import {
|
|
37
38
|
renderColumnsFile,
|
|
@@ -95,7 +96,7 @@ export const tanstackGrid = function tanstackGrid(opts?: TanstackGridOpts): Gene
|
|
|
95
96
|
throw new Error("tanstack-grid: renderContext is required (provided by runGen)");
|
|
96
97
|
}
|
|
97
98
|
return {
|
|
98
|
-
path: entityOutputPath(ctx.renderContext.outputLayout, entity
|
|
99
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, effectivePackage(entity), `${entity.name}.columns.tsx`),
|
|
99
100
|
content: withClientDirective(
|
|
100
101
|
await formatTs(renderColumnsFile(entity, ctx.renderContext)),
|
|
101
102
|
ctx.renderContext.clientDirective,
|
package/src/reference/hooks.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
//
|
|
5
5
|
// RUNTIME: this file executes under whatever runs `meta gen` — NODE, even in a Bun
|
|
6
6
|
// project. Do not reach for `Bun.*` globals here.
|
|
7
|
-
// targets: TanStack Query. The emitted hooks call `
|
|
7
|
+
// targets: TanStack Query. The emitted hooks call `useEntityPathFetcher()` from
|
|
8
8
|
// `@metaobjectsdev/tanstack`, so the module is a CLIENT component.
|
|
9
9
|
// If your framework compiles server and client from one tree and resolves
|
|
10
10
|
// each half under different conditions, the emitted file may need a marker
|
|
@@ -35,6 +35,7 @@ import {
|
|
|
35
35
|
withClientDirective,
|
|
36
36
|
namesRef,
|
|
37
37
|
namesConstArg,
|
|
38
|
+
effectivePackage,
|
|
38
39
|
} from "@metaobjectsdev/codegen-ts";
|
|
39
40
|
import { renderHooksFile } from "@metaobjectsdev/codegen-ts-tanstack";
|
|
40
41
|
|
|
@@ -45,7 +46,7 @@ export interface TanstackQueryOpts {
|
|
|
45
46
|
|
|
46
47
|
/**
|
|
47
48
|
* Per-entity generator that emits <Entity>.hooks.ts — a query-key factory
|
|
48
|
-
* plus 2 query hooks and 3 mutation hooks backed by
|
|
49
|
+
* plus 2 query hooks and 3 mutation hooks backed by useEntityPathFetcher().
|
|
49
50
|
*
|
|
50
51
|
* If the user supplies their own filter, it AND-composes with the built-in gates.
|
|
51
52
|
*
|
|
@@ -85,8 +86,9 @@ export const tanstackQuery = function tanstackQuery(opts?: TanstackQueryOpts): G
|
|
|
85
86
|
// generator's own target — no separate check needed.
|
|
86
87
|
const rc = ctx.renderContext;
|
|
87
88
|
const metaNames = namesRef(entity, rc);
|
|
89
|
+
const pkg = effectivePackage(entity);
|
|
88
90
|
const metaFile = {
|
|
89
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
91
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg,
|
|
90
92
|
entityMetaFileName(entity.name)),
|
|
91
93
|
content: await formatTs(renderEntityMetaFile(
|
|
92
94
|
entity,
|
|
@@ -95,7 +97,7 @@ export const tanstackQuery = function tanstackQuery(opts?: TanstackQueryOpts): G
|
|
|
95
97
|
)),
|
|
96
98
|
};
|
|
97
99
|
return [metaFile, {
|
|
98
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
100
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, `${entity.name}.hooks.ts`),
|
|
99
101
|
// Outside formatTs deliberately: the directive must stay the module's first
|
|
100
102
|
// token, and a formatter is entitled to move a leading string expression.
|
|
101
103
|
content: withClientDirective(
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { MetaObject } from "@metaobjectsdev/metadata";
|
|
2
2
|
import { perEntity, type Generator, type GeneratorFactory, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype,
|
|
3
3
|
withClientDirective, namesRef, namesConstArg,
|
|
4
|
+
effectivePackage,
|
|
4
5
|
} from "@metaobjectsdev/codegen-ts";
|
|
5
6
|
import { hasDataGridLayout, warnMissingDataGridLayout } from "./data-grid-gate.js";
|
|
6
7
|
import { renderGridHookFile } from "./templates/grid-hook-file.js";
|
|
@@ -81,8 +82,9 @@ export const tanstackGridHook = function tanstackGridHook(opts?: TanstackGridHoo
|
|
|
81
82
|
// module's).
|
|
82
83
|
const rc = ctx.renderContext;
|
|
83
84
|
const metaNames = namesRef(entity, rc);
|
|
85
|
+
const pkg = effectivePackage(entity);
|
|
84
86
|
return [{
|
|
85
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
87
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg,
|
|
86
88
|
entityMetaFileName(entity.name)),
|
|
87
89
|
content: await formatTs(renderEntityMetaFile(
|
|
88
90
|
entity,
|
|
@@ -92,7 +94,7 @@ export const tanstackGridHook = function tanstackGridHook(opts?: TanstackGridHoo
|
|
|
92
94
|
}, {
|
|
93
95
|
path: entityOutputPath(
|
|
94
96
|
ctx.renderContext.outputLayout,
|
|
95
|
-
|
|
97
|
+
pkg,
|
|
96
98
|
`${entity.name}.grid.ts`,
|
|
97
99
|
),
|
|
98
100
|
content: withClientDirective(
|
package/src/tanstack-grid.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { MetaObject } from "@metaobjectsdev/metadata";
|
|
2
2
|
import { perEntity, type Generator, type GeneratorFactory, formatTs, entityOutputPath, servesReadApi, isTphSubtype,
|
|
3
3
|
withClientDirective,
|
|
4
|
+
effectivePackage,
|
|
4
5
|
} from "@metaobjectsdev/codegen-ts";
|
|
5
6
|
import { hasDataGridLayout, warnMissingDataGridLayout } from "./data-grid-gate.js";
|
|
6
7
|
import { renderColumnsFile } from "./templates/columns-file.js";
|
|
@@ -61,7 +62,7 @@ export const tanstackGrid = function tanstackGrid(opts?: TanstackGridOpts): Gene
|
|
|
61
62
|
throw new Error("tanstack-grid: renderContext is required (provided by runGen)");
|
|
62
63
|
}
|
|
63
64
|
return {
|
|
64
|
-
path: entityOutputPath(ctx.renderContext.outputLayout, entity
|
|
65
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, effectivePackage(entity), `${entity.name}.columns.tsx`),
|
|
65
66
|
content: withClientDirective(
|
|
66
67
|
await formatTs(renderColumnsFile(entity, ctx.renderContext)),
|
|
67
68
|
ctx.renderContext.clientDirective,
|
package/src/tanstack-query.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { MetaObject } from "@metaobjectsdev/metadata";
|
|
2
2
|
import { perEntity, type Generator, type GeneratorFactory, formatTs, entityOutputPath, entityMetaFileName, renderEntityMetaFile, servesReadApi, isTphSubtype,
|
|
3
3
|
withClientDirective, namesRef, namesConstArg,
|
|
4
|
+
effectivePackage,
|
|
4
5
|
} from "@metaobjectsdev/codegen-ts";
|
|
5
6
|
import { renderHooksFile } from "./templates/hooks-file.js";
|
|
6
7
|
|
|
@@ -11,7 +12,7 @@ export interface TanstackQueryOpts {
|
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Per-entity generator that emits <Entity>.hooks.ts — a query-key factory
|
|
14
|
-
* plus 2 query hooks and 3 mutation hooks backed by
|
|
15
|
+
* plus 2 query hooks and 3 mutation hooks backed by useEntityPathFetcher().
|
|
15
16
|
*
|
|
16
17
|
* If the user supplies their own filter, it AND-composes with the built-in gates.
|
|
17
18
|
*
|
|
@@ -51,8 +52,9 @@ export const tanstackQuery = function tanstackQuery(opts?: TanstackQueryOpts): G
|
|
|
51
52
|
// generator's own target — no separate check needed.
|
|
52
53
|
const rc = ctx.renderContext;
|
|
53
54
|
const metaNames = namesRef(entity, rc);
|
|
55
|
+
const pkg = effectivePackage(entity);
|
|
54
56
|
const metaFile = {
|
|
55
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
57
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg,
|
|
56
58
|
entityMetaFileName(entity.name)),
|
|
57
59
|
content: await formatTs(renderEntityMetaFile(
|
|
58
60
|
entity,
|
|
@@ -61,7 +63,7 @@ export const tanstackQuery = function tanstackQuery(opts?: TanstackQueryOpts): G
|
|
|
61
63
|
)),
|
|
62
64
|
};
|
|
63
65
|
return [metaFile, {
|
|
64
|
-
path: entityOutputPath(ctx.renderContext.outputLayout,
|
|
66
|
+
path: entityOutputPath(ctx.renderContext.outputLayout, pkg, `${entity.name}.hooks.ts`),
|
|
65
67
|
// Outside formatTs deliberately: the directive must stay the module's first
|
|
66
68
|
// token, and a formatter is entitled to move a leading string expression.
|
|
67
69
|
content: withClientDirective(
|
|
@@ -3,8 +3,6 @@ import type { MetaObject, MetaField } from "@metaobjectsdev/metadata";
|
|
|
3
3
|
import {
|
|
4
4
|
LAYOUT_SUBTYPE_DATA_GRID,
|
|
5
5
|
LAYOUT_DATA_GRID_ATTR_PAGE_SIZE,
|
|
6
|
-
LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_FIELD,
|
|
7
|
-
LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER,
|
|
8
6
|
LAYOUT_DATA_GRID_ATTR_FILTERABLE,
|
|
9
7
|
LAYOUT_DATA_GRID_ATTR_FILTER,
|
|
10
8
|
LAYOUT_DATA_GRID_ATTR_COLUMNS,
|
|
@@ -20,6 +18,9 @@ import {
|
|
|
20
18
|
isSortableField,
|
|
21
19
|
viewForContext,
|
|
22
20
|
VIEW_CONTEXT_GRID,
|
|
21
|
+
effectivePackage,
|
|
22
|
+
resolveGridDefaultSort,
|
|
23
|
+
type GridDefaultSort,
|
|
23
24
|
} from "@metaobjectsdev/codegen-ts";
|
|
24
25
|
|
|
25
26
|
/** FR-017 TPH grid context, threaded into extractGrids when the entity is a
|
|
@@ -42,8 +43,11 @@ interface ColumnSpec {
|
|
|
42
43
|
interface GridSpec {
|
|
43
44
|
name: string;
|
|
44
45
|
pageSize: number;
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
// One RESOLVED value, never a field and an order that can disagree: emitting
|
|
47
|
+
// `defaultSort` only when BOTH attrs were declared is what silently dropped the
|
|
48
|
+
// initial sort of every grid that named a field and let the field's
|
|
49
|
+
// @sortableDefaultOrder supply the direction.
|
|
50
|
+
defaultSort?: GridDefaultSort;
|
|
47
51
|
filterable: boolean;
|
|
48
52
|
filter?: Record<string, unknown>; // desugared, load-time-validated @filter object
|
|
49
53
|
columns: ColumnSpec[];
|
|
@@ -150,8 +154,7 @@ function extractGrids(entity: MetaObject, tph?: TphGridInfo): GridSpec[] {
|
|
|
150
154
|
});
|
|
151
155
|
|
|
152
156
|
// ADR-0039: resolving — dataGrid layout attrs may be inherited via extends.
|
|
153
|
-
const
|
|
154
|
-
const sortOrder = layout.attr(LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER);
|
|
157
|
+
const defaultSort = resolveGridDefaultSort(entity, layout);
|
|
155
158
|
|
|
156
159
|
const filterAttr = layout.attr(LAYOUT_DATA_GRID_ATTR_FILTER);
|
|
157
160
|
const grid: GridSpec = {
|
|
@@ -160,8 +163,7 @@ function extractGrids(entity: MetaObject, tph?: TphGridInfo): GridSpec[] {
|
|
|
160
163
|
filterable: layout.attr(LAYOUT_DATA_GRID_ATTR_FILTERABLE) === true,
|
|
161
164
|
columns,
|
|
162
165
|
};
|
|
163
|
-
if (
|
|
164
|
-
if (sortOrder === "asc" || sortOrder === "desc") grid.defaultSortOrder = sortOrder;
|
|
166
|
+
if (defaultSort !== undefined) grid.defaultSort = defaultSort;
|
|
165
167
|
if (typeof filterAttr === "object" && filterAttr !== null && !Array.isArray(filterAttr)) {
|
|
166
168
|
grid.filter = filterAttr as Record<string, unknown>;
|
|
167
169
|
}
|
|
@@ -209,8 +211,8 @@ export function renderColumnsFile(entity: MetaObject, ctx: RenderContext): strin
|
|
|
209
211
|
const gridConstName = `${lcEntity}${capitalize(grid.name)}Grid`;
|
|
210
212
|
const columnsConstName = `${lcEntity}${capitalize(grid.name)}Columns`;
|
|
211
213
|
|
|
212
|
-
const sortBlock = grid.
|
|
213
|
-
? ` defaultSort: { field: ${JSON.stringify(grid.
|
|
214
|
+
const sortBlock = grid.defaultSort
|
|
215
|
+
? ` defaultSort: { field: ${JSON.stringify(grid.defaultSort.field)}, order: ${JSON.stringify(grid.defaultSort.order)} as const },\n`
|
|
214
216
|
: "";
|
|
215
217
|
const gridConst = code`
|
|
216
218
|
export const ${gridConstName} = {
|
|
@@ -251,7 +253,7 @@ export const ${filterConstName}: ${entityName}Filter = ${JSON.stringify(grid.fil
|
|
|
251
253
|
const entityModule = entityModuleSpecifier(
|
|
252
254
|
ctx.selfTarget,
|
|
253
255
|
ctx.entityModuleTarget,
|
|
254
|
-
entity
|
|
256
|
+
effectivePackage(entity),
|
|
255
257
|
entityName,
|
|
256
258
|
ctx.extStyle,
|
|
257
259
|
);
|
|
@@ -23,14 +23,17 @@ function metaModuleOf(entityModule: string): string {
|
|
|
23
23
|
: `${entityModule}.meta`;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
import { GENERATED_HEADER, entityModuleSpecifier, siblingSpecifier
|
|
26
|
+
import { GENERATED_HEADER, entityModuleSpecifier, siblingSpecifier,
|
|
27
|
+
effectivePackage, resolveGridDefaultSort, type GridDefaultSort,
|
|
28
|
+
} from "@metaobjectsdev/codegen-ts";
|
|
27
29
|
|
|
28
30
|
interface GridSpec {
|
|
29
31
|
name: string; // e.g. "default", "activeOnly"
|
|
30
32
|
pageSize: number;
|
|
31
33
|
hasFilterPreset: boolean;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
+
// Resolved through the SAME call the grid const uses, so the hook's initial
|
|
35
|
+
// sorting and the const's `defaultSort` cannot disagree about one declaration.
|
|
36
|
+
defaultSort?: GridDefaultSort | undefined;
|
|
34
37
|
}
|
|
35
38
|
|
|
36
39
|
function extractGrids(entity: MetaObject): GridSpec[] {
|
|
@@ -41,8 +44,7 @@ function extractGrids(entity: MetaObject): GridSpec[] {
|
|
|
41
44
|
name: l.name || "default",
|
|
42
45
|
pageSize: l.pageSize ?? 25,
|
|
43
46
|
hasFilterPreset: l.filter !== undefined,
|
|
44
|
-
|
|
45
|
-
defaultSortOrder: l.defaultSortOrder as "asc" | "desc" | undefined,
|
|
47
|
+
defaultSort: resolveGridDefaultSort(entity, l),
|
|
46
48
|
});
|
|
47
49
|
}
|
|
48
50
|
return out;
|
|
@@ -59,12 +61,14 @@ export function renderGridHookFile(entity: MetaObject, ctx: RenderContext): stri
|
|
|
59
61
|
|
|
60
62
|
if (grids.length === 0) return "";
|
|
61
63
|
|
|
64
|
+
const pkg = effectivePackage(entity);
|
|
65
|
+
|
|
62
66
|
// Import the entity's own file. Same target → relative "./Entity"; cross
|
|
63
67
|
// target → importBase-qualified package path.
|
|
64
68
|
const entityModule = entityModuleSpecifier(
|
|
65
69
|
ctx.selfTarget,
|
|
66
70
|
ctx.entityModuleTarget,
|
|
67
|
-
|
|
71
|
+
pkg,
|
|
68
72
|
entityName,
|
|
69
73
|
ctx.extStyle,
|
|
70
74
|
);
|
|
@@ -76,7 +80,7 @@ export function renderGridHookFile(entity: MetaObject, ctx: RenderContext): stri
|
|
|
76
80
|
const SortingStateSym = imp("t:SortingState@@tanstack/react-table");
|
|
77
81
|
const PaginationStateSym = imp("t:PaginationState@@tanstack/react-table");
|
|
78
82
|
const ColumnFiltersStateSym = imp("t:ColumnFiltersState@@tanstack/react-table");
|
|
79
|
-
const
|
|
83
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
80
84
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
81
85
|
|
|
82
86
|
const entityImports: Code = code`
|
|
@@ -91,7 +95,7 @@ import type { ${entityName} as ${entityName}Row } from ${JSON.stringify(entityMo
|
|
|
91
95
|
|
|
92
96
|
// Columns file is a same-target sibling of the grid-hook (both emitted to
|
|
93
97
|
// selfTarget) — always relative, package-layout aware.
|
|
94
|
-
const columnsModule = siblingSpecifier(ctx.selfTarget,
|
|
98
|
+
const columnsModule = siblingSpecifier(ctx.selfTarget, pkg, `${entityName}.columns`, ctx.extStyle);
|
|
95
99
|
const filterPresetImportCode: Code =
|
|
96
100
|
filterPresetImports.length > 0
|
|
97
101
|
? code`import { ${filterPresetImports.join(", ")} } from ${JSON.stringify(columnsModule)};\n`
|
|
@@ -102,8 +106,8 @@ import type { ${entityName} as ${entityName}Row } from ${JSON.stringify(entityMo
|
|
|
102
106
|
const hookName = `use${entityName}${cap}Grid`;
|
|
103
107
|
const presetConst = grid.hasFilterPreset ? `${lcEntity}${cap}Filter` : null;
|
|
104
108
|
|
|
105
|
-
const initialSorting = grid.
|
|
106
|
-
? `[{ id: ${JSON.stringify(grid.
|
|
109
|
+
const initialSorting = grid.defaultSort
|
|
110
|
+
? `[{ id: ${JSON.stringify(grid.defaultSort.field)}, desc: ${JSON.stringify(grid.defaultSort.order === "desc")} }]`
|
|
107
111
|
: `[]`;
|
|
108
112
|
const initialPagination = `{ pageIndex: 0, pageSize: ${grid.pageSize} }`;
|
|
109
113
|
|
|
@@ -114,7 +118,7 @@ export function ${hookName}() {
|
|
|
114
118
|
const [columnFilters, setColumnFilters] = ${useStateSym}<${ColumnFiltersStateSym}>([]);
|
|
115
119
|
const [search, setSearch] = ${useStateSym}<string>("");
|
|
116
120
|
|
|
117
|
-
const fetcher = ${
|
|
121
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
118
122
|
|
|
119
123
|
const qs = ${useMemoSym}(() => {
|
|
120
124
|
const filterObj: Record<string, unknown> = ${presetConst ? `{ ...${presetConst} }` : `{}`};
|
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
isTphDiscriminatorBase,
|
|
21
21
|
tphPlan,
|
|
22
22
|
getPkInfo,
|
|
23
|
+
effectivePackage,
|
|
23
24
|
} from "@metaobjectsdev/codegen-ts";
|
|
24
25
|
|
|
25
26
|
/**
|
|
@@ -35,7 +36,7 @@ import {
|
|
|
35
36
|
* - useUpdate<Entity>
|
|
36
37
|
* - useDelete<Entity>
|
|
37
38
|
*
|
|
38
|
-
* All hooks call
|
|
39
|
+
* All hooks call useEntityPathFetcher() (from @metaobjectsdev/tanstack) for
|
|
39
40
|
* the underlying HTTP. Mutations aggressively invalidate <entity>Keys.all().
|
|
40
41
|
*/
|
|
41
42
|
export function renderHooksFile(entity: MetaObject, ctx: RenderContext): string {
|
|
@@ -44,7 +45,7 @@ export function renderHooksFile(entity: MetaObject, ctx: RenderContext): string
|
|
|
44
45
|
const entityModule = entityModuleSpecifier(
|
|
45
46
|
ctx.selfTarget,
|
|
46
47
|
ctx.entityModuleTarget,
|
|
47
|
-
entity
|
|
48
|
+
effectivePackage(entity),
|
|
48
49
|
entity.name,
|
|
49
50
|
ctx.extStyle,
|
|
50
51
|
);
|
|
@@ -105,7 +106,7 @@ function renderM2mHooks(
|
|
|
105
106
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
106
107
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
107
108
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
108
|
-
const
|
|
109
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
109
110
|
|
|
110
111
|
const source = entity.name;
|
|
111
112
|
|
|
@@ -141,7 +142,7 @@ export function ${hookName}(
|
|
|
141
142
|
sourceId: ${pkType} | undefined,
|
|
142
143
|
opts?: Omit<${useQueryOptionsSym}<${targetSym}[]>, "queryKey" | "queryFn">,
|
|
143
144
|
): ${useQueryResultSym}<${targetSym}[]> {
|
|
144
|
-
const fetcher = ${
|
|
145
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
145
146
|
return ${useQuerySym}<${targetSym}[]>({
|
|
146
147
|
queryKey: ${keysVar}.relation(${relLit}, sourceId),
|
|
147
148
|
queryFn: () => fetcher<${targetSym}[]>(\`\${${source}.$path}/\${sourceId}/${e.name}\`),
|
|
@@ -177,7 +178,7 @@ function renderReadOnlyHooksFile(entity: MetaObject, entityModule: string, ctx:
|
|
|
177
178
|
const useQuerySym = imp("useQuery@@tanstack/react-query");
|
|
178
179
|
const useQueryOptionsSym = imp("t:UseQueryOptions@@tanstack/react-query");
|
|
179
180
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
180
|
-
const
|
|
181
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
181
182
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
182
183
|
|
|
183
184
|
const entityImports: Code = code`
|
|
@@ -203,7 +204,7 @@ export function use${entityName}(
|
|
|
203
204
|
id: ${pkType},
|
|
204
205
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
205
206
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
206
|
-
const fetcher = ${
|
|
207
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
207
208
|
return ${useQuerySym}<${entityName}Row>({
|
|
208
209
|
queryKey: ${keysVar}.detail(id),
|
|
209
210
|
queryFn: () => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`),
|
|
@@ -215,7 +216,7 @@ export function use${entityNamePlural}(
|
|
|
215
216
|
filter?: ${entityName}Filter,
|
|
216
217
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row[]>, "queryKey" | "queryFn">,
|
|
217
218
|
): ${useQueryResultSym}<${entityName}Row[]> {
|
|
218
|
-
const fetcher = ${
|
|
219
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
219
220
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
220
221
|
return ${useQuerySym}<${entityName}Row[]>({
|
|
221
222
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -256,7 +257,7 @@ function renderFullHooksFile(entity: MetaObject, entityModule: string, ctx: Rend
|
|
|
256
257
|
const useMutationOptionsSym = imp("t:UseMutationOptions@@tanstack/react-query");
|
|
257
258
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
258
259
|
const useMutationResultSym = imp("t:UseMutationResult@@tanstack/react-query");
|
|
259
|
-
const
|
|
260
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
260
261
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
261
262
|
|
|
262
263
|
const entityImports: Code = code`
|
|
@@ -284,7 +285,7 @@ export function use${entityName}(
|
|
|
284
285
|
id: ${pkType},
|
|
285
286
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row>, "queryKey" | "queryFn">,
|
|
286
287
|
): ${useQueryResultSym}<${entityName}Row> {
|
|
287
|
-
const fetcher = ${
|
|
288
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
288
289
|
return ${useQuerySym}<${entityName}Row>({
|
|
289
290
|
queryKey: ${keysVar}.detail(id),
|
|
290
291
|
queryFn: () => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`),
|
|
@@ -296,7 +297,7 @@ export function use${entityNamePlural}(
|
|
|
296
297
|
filter?: ${entityName}Filter,
|
|
297
298
|
opts?: Omit<${useQueryOptionsSym}<${entityName}Row[]>, "queryKey" | "queryFn">,
|
|
298
299
|
): ${useQueryResultSym}<${entityName}Row[]> {
|
|
299
|
-
const fetcher = ${
|
|
300
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
300
301
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
301
302
|
return ${useQuerySym}<${entityName}Row[]>({
|
|
302
303
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -312,7 +313,7 @@ export function use${entityNamePlural}(
|
|
|
312
313
|
export function useCreate${entityName}(
|
|
313
314
|
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, ${entityName}Insert>, "mutationFn">,
|
|
314
315
|
): ${useMutationResultSym}<${entityName}Row, Error, ${entityName}Insert> {
|
|
315
|
-
const fetcher = ${
|
|
316
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
316
317
|
const qc = ${useQueryClientSym}();
|
|
317
318
|
return ${useMutationSym}<${entityName}Row, Error, ${entityName}Insert>({
|
|
318
319
|
mutationFn: (input) => fetcher<${entityName}Row>(\`\${${entityName}.$path}\`, {
|
|
@@ -331,7 +332,7 @@ export function useCreate${entityName}(
|
|
|
331
332
|
export function useUpdate${entityName}(
|
|
332
333
|
opts?: Omit<${useMutationOptionsSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }>, "mutationFn">,
|
|
333
334
|
): ${useMutationResultSym}<${entityName}Row, Error, { id: ${pkType}; input: ${entityName}Update }> {
|
|
334
|
-
const fetcher = ${
|
|
335
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
335
336
|
const qc = ${useQueryClientSym}();
|
|
336
337
|
return ${useMutationSym}({
|
|
337
338
|
mutationFn: ({ id, input }) => fetcher<${entityName}Row>(\`\${${entityName}.$path}/\${id}\`, {
|
|
@@ -350,7 +351,7 @@ export function useUpdate${entityName}(
|
|
|
350
351
|
export function useDelete${entityName}(
|
|
351
352
|
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
352
353
|
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
353
|
-
const fetcher = ${
|
|
354
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
354
355
|
const qc = ${useQueryClientSym}();
|
|
355
356
|
return ${useMutationSym}({
|
|
356
357
|
mutationFn: (id) => fetcher<void>(\`\${${entityName}.$path}/\${id}\`, { method: "DELETE" }),
|
|
@@ -396,7 +397,7 @@ function renderTphHooksFile(base: MetaObject, ctx: RenderContext, baseModule: st
|
|
|
396
397
|
const useMutationOptionsSym = imp("t:UseMutationOptions@@tanstack/react-query");
|
|
397
398
|
const useQueryResultSym = imp("t:UseQueryResult@@tanstack/react-query");
|
|
398
399
|
const useMutationResultSym = imp("t:UseMutationResult@@tanstack/react-query");
|
|
399
|
-
const
|
|
400
|
+
const useEntityPathFetcherSym = imp("useEntityPathFetcher@@metaobjectsdev/tanstack");
|
|
400
401
|
const buildFilterQsSym = imp("buildFilterQs@@metaobjectsdev/runtime-web");
|
|
401
402
|
|
|
402
403
|
const subtypes = plan.subtypes;
|
|
@@ -408,7 +409,7 @@ function renderTphHooksFile(base: MetaObject, ctx: RenderContext, baseModule: st
|
|
|
408
409
|
// allowlist actually permits.
|
|
409
410
|
const subImportLines = subtypes
|
|
410
411
|
.map((s) => {
|
|
411
|
-
const m = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, s.entity
|
|
412
|
+
const m = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, effectivePackage(s.entity), s.entity.name, ctx.extStyle);
|
|
412
413
|
return `import { type ${s.entity.name}, type ${s.entity.name}Filter } from ${JSON.stringify(m)};`;
|
|
413
414
|
})
|
|
414
415
|
.join("\n");
|
|
@@ -439,7 +440,7 @@ export function use${baseName}(
|
|
|
439
440
|
id: ${pkType},
|
|
440
441
|
opts?: Omit<${useQueryOptionsSym}<${baseName}>, "queryKey" | "queryFn">,
|
|
441
442
|
): ${useQueryResultSym}<${baseName}> {
|
|
442
|
-
const fetcher = ${
|
|
443
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
443
444
|
return ${useQuerySym}<${baseName}>({
|
|
444
445
|
queryKey: ${keysVar}.detail(id),
|
|
445
446
|
queryFn: () => fetcher<${baseName}>(\`\${${baseName}.$path}/\${id}\`),
|
|
@@ -451,7 +452,7 @@ export function use${pluralize(baseName)}(
|
|
|
451
452
|
filter?: ${baseName}Filter,
|
|
452
453
|
opts?: Omit<${useQueryOptionsSym}<${baseName}[]>, "queryKey" | "queryFn">,
|
|
453
454
|
): ${useQueryResultSym}<${baseName}[]> {
|
|
454
|
-
const fetcher = ${
|
|
455
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
455
456
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
456
457
|
return ${useQuerySym}<${baseName}[]>({
|
|
457
458
|
queryKey: ${keysVar}.list(filter),
|
|
@@ -473,7 +474,7 @@ export function use${pluralize(subName)}(
|
|
|
473
474
|
filter?: ${subName}Filter,
|
|
474
475
|
opts?: Omit<${useQueryOptionsSym}<${subName}[]>, "queryKey" | "queryFn">,
|
|
475
476
|
): ${useQueryResultSym}<${subName}[]> {
|
|
476
|
-
const fetcher = ${
|
|
477
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
477
478
|
const qs = filter ? "?" + ${buildFilterQsSym}(filter as Record<string, unknown>) : "";
|
|
478
479
|
return ${useQuerySym}<${subName}[]>({
|
|
479
480
|
queryKey: ${keysVar}.subtypeList(${valueLit}, filter),
|
|
@@ -486,7 +487,7 @@ export function use${subName}(
|
|
|
486
487
|
id: ${pkType},
|
|
487
488
|
opts?: Omit<${useQueryOptionsSym}<${subName}>, "queryKey" | "queryFn">,
|
|
488
489
|
): ${useQueryResultSym}<${subName}> {
|
|
489
|
-
const fetcher = ${
|
|
490
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
490
491
|
return ${useQuerySym}<${subName}>({
|
|
491
492
|
queryKey: ${keysVar}.subtypeDetail(${valueLit}, id),
|
|
492
493
|
queryFn: () => fetcher<${subName}>(\`\${${baseName}.$path}/${seg}/\${id}\`),
|
|
@@ -497,7 +498,7 @@ export function use${subName}(
|
|
|
497
498
|
export function useCreate${subName}(
|
|
498
499
|
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, ${createInput}>, "mutationFn">,
|
|
499
500
|
): ${useMutationResultSym}<${subName}, Error, ${createInput}> {
|
|
500
|
-
const fetcher = ${
|
|
501
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
501
502
|
const qc = ${useQueryClientSym}();
|
|
502
503
|
return ${useMutationSym}<${subName}, Error, ${createInput}>({
|
|
503
504
|
mutationFn: (input) => fetcher<${subName}>(${subPath}, {
|
|
@@ -516,7 +517,7 @@ export function useCreate${subName}(
|
|
|
516
517
|
export function useUpdate${subName}(
|
|
517
518
|
opts?: Omit<${useMutationOptionsSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }>, "mutationFn">,
|
|
518
519
|
): ${useMutationResultSym}<${subName}, Error, { id: ${pkType}; input: ${updateInput} }> {
|
|
519
|
-
const fetcher = ${
|
|
520
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
520
521
|
const qc = ${useQueryClientSym}();
|
|
521
522
|
return ${useMutationSym}({
|
|
522
523
|
mutationFn: ({ id, input }) => fetcher<${subName}>(\`\${${baseName}.$path}/${seg}/\${id}\`, {
|
|
@@ -535,7 +536,7 @@ export function useUpdate${subName}(
|
|
|
535
536
|
export function useDelete${subName}(
|
|
536
537
|
opts?: Omit<${useMutationOptionsSym}<void, Error, ${pkType}>, "mutationFn">,
|
|
537
538
|
): ${useMutationResultSym}<void, Error, ${pkType}> {
|
|
538
|
-
const fetcher = ${
|
|
539
|
+
const fetcher = ${useEntityPathFetcherSym}();
|
|
539
540
|
const qc = ${useQueryClientSym}();
|
|
540
541
|
return ${useMutationSym}({
|
|
541
542
|
mutationFn: (id) => fetcher<void>(\`\${${baseName}.$path}/${seg}/\${id}\`, { method: "DELETE" }),
|