on-zero 0.4.7 → 0.4.8
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/cjs/createZeroClient.cjs +5 -1
- package/dist/cjs/createZeroClient.native.js +5 -1
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/generate-helpers.cjs +123 -19
- package/dist/cjs/generate-helpers.native.js +149 -25
- package/dist/cjs/generate-helpers.native.js.map +1 -1
- package/dist/cjs/generate-lite.native.js.map +1 -1
- package/dist/cjs/generate-lite.test.cjs +112 -0
- package/dist/cjs/generate-lite.test.native.js +112 -0
- package/dist/cjs/generate-lite.test.native.js.map +1 -1
- package/dist/cjs/generate.cjs +9 -1
- package/dist/cjs/generate.native.js +9 -1
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +87 -0
- package/dist/cjs/generate.test.native.js +87 -0
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +5 -1
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +5 -1
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/generate-helpers.mjs +123 -19
- package/dist/esm/generate-helpers.mjs.map +1 -1
- package/dist/esm/generate-helpers.native.js +149 -25
- package/dist/esm/generate-helpers.native.js.map +1 -1
- package/dist/esm/generate-lite.mjs.map +1 -1
- package/dist/esm/generate-lite.native.js.map +1 -1
- package/dist/esm/generate-lite.test.mjs +112 -0
- package/dist/esm/generate-lite.test.mjs.map +1 -1
- package/dist/esm/generate-lite.test.native.js +112 -0
- package/dist/esm/generate-lite.test.native.js.map +1 -1
- package/dist/esm/generate.mjs +9 -1
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +9 -1
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +87 -0
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +87 -0
- package/dist/esm/generate.test.native.js.map +1 -1
- package/package.json +2 -2
- package/src/createZeroClient.tsx +6 -1
- package/src/generate-helpers.ts +141 -20
- package/src/generate-lite.test.ts +135 -0
- package/src/generate-lite.ts +1 -2
- package/src/generate.test.ts +96 -0
- package/src/generate.ts +11 -3
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/generate-helpers.d.ts.map +1 -1
- package/types/generate-lite.d.ts.map +1 -1
- package/types/generate.d.ts.map +1 -1
|
@@ -66,6 +66,94 @@ const DIR = "/proj/src/data";
|
|
|
66
66
|
(0, import_vitest.expect)(result.schemaCount).toBe(0);
|
|
67
67
|
(0, import_vitest.expect)(result.mutationCount).toBe(3);
|
|
68
68
|
});
|
|
69
|
+
(0, import_vitest.test)("parses newline-separated mutation object types", () => {
|
|
70
|
+
const files = {
|
|
71
|
+
[`${DIR}/models/agentEvent.ts`]: "// fake",
|
|
72
|
+
[`${DIR}/models/deployment.ts`]: "// fake"
|
|
73
|
+
};
|
|
74
|
+
const fixtures = {
|
|
75
|
+
[`${DIR}/models/agentEvent.ts`]: {
|
|
76
|
+
mutations: [{
|
|
77
|
+
modelName: "agentEvent",
|
|
78
|
+
handlers: [{
|
|
79
|
+
name: "claimReviewLease",
|
|
80
|
+
paramTypeText: `{
|
|
81
|
+
id: string
|
|
82
|
+
projectId: string
|
|
83
|
+
createdAt: number
|
|
84
|
+
}`
|
|
85
|
+
}],
|
|
86
|
+
schema: null
|
|
87
|
+
}],
|
|
88
|
+
queries: []
|
|
89
|
+
},
|
|
90
|
+
[`${DIR}/models/deployment.ts`]: {
|
|
91
|
+
mutations: [{
|
|
92
|
+
modelName: "deployment",
|
|
93
|
+
handlers: [{
|
|
94
|
+
name: "deploy",
|
|
95
|
+
paramTypeText: `{
|
|
96
|
+
id: string
|
|
97
|
+
platform?: string // 'web' | 'ios'
|
|
98
|
+
buildTier?: string // 'dev' | 'testflight' | 'production'
|
|
99
|
+
}`
|
|
100
|
+
}],
|
|
101
|
+
schema: null
|
|
102
|
+
}],
|
|
103
|
+
queries: []
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
const result = (0, import_generate_lite.generateLite)({
|
|
107
|
+
files,
|
|
108
|
+
dir: DIR,
|
|
109
|
+
parse: makeParse(fixtures)
|
|
110
|
+
});
|
|
111
|
+
const synced = result.files["syncedMutations.ts"];
|
|
112
|
+
(0, import_vitest.expect)(synced).toContain("claimReviewLease:");
|
|
113
|
+
(0, import_vitest.expect)(synced).toContain("projectId: v.string()");
|
|
114
|
+
(0, import_vitest.expect)(synced).toContain("createdAt: v.number()");
|
|
115
|
+
(0, import_vitest.expect)(synced).toContain("deploy:");
|
|
116
|
+
(0, import_vitest.expect)(synced).toContain("platform: v.optional(v.string())");
|
|
117
|
+
(0, import_vitest.expect)(synced).toContain("buildTier: v.optional(v.string())");
|
|
118
|
+
(0, import_vitest.expect)(synced).not.toContain("claimReviewLease: v.object({})");
|
|
119
|
+
(0, import_vitest.expect)(synced).not.toContain("deploy: v.object({})");
|
|
120
|
+
});
|
|
121
|
+
(0, import_vitest.test)("parses object intersections and skips index signatures", () => {
|
|
122
|
+
const files = {
|
|
123
|
+
[`${DIR}/models/agent.ts`]: "// fake"
|
|
124
|
+
};
|
|
125
|
+
const fixtures = {
|
|
126
|
+
[`${DIR}/models/agent.ts`]: {
|
|
127
|
+
mutations: [{
|
|
128
|
+
modelName: "agent",
|
|
129
|
+
handlers: [{
|
|
130
|
+
name: "update",
|
|
131
|
+
paramTypeText: `{
|
|
132
|
+
id: string
|
|
133
|
+
} & {
|
|
134
|
+
status?: string
|
|
135
|
+
currentTaskId?: string
|
|
136
|
+
[key: string]: unknown
|
|
137
|
+
}`
|
|
138
|
+
}],
|
|
139
|
+
schema: null
|
|
140
|
+
}],
|
|
141
|
+
queries: []
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
const result = (0, import_generate_lite.generateLite)({
|
|
145
|
+
files,
|
|
146
|
+
dir: DIR,
|
|
147
|
+
parse: makeParse(fixtures)
|
|
148
|
+
});
|
|
149
|
+
const synced = result.files["syncedMutations.ts"];
|
|
150
|
+
(0, import_vitest.expect)(synced).toContain("update:");
|
|
151
|
+
(0, import_vitest.expect)(synced).toContain("id: v.string()");
|
|
152
|
+
(0, import_vitest.expect)(synced).toContain("status: v.optional(v.string())");
|
|
153
|
+
(0, import_vitest.expect)(synced).toContain("currentTaskId: v.optional(v.string())");
|
|
154
|
+
(0, import_vitest.expect)(synced).not.toContain("[key");
|
|
155
|
+
(0, import_vitest.expect)(synced).not.toContain("update: v.object({})");
|
|
156
|
+
});
|
|
69
157
|
(0, import_vitest.test)("falls back to v.unknown() for type references", () => {
|
|
70
158
|
const files = {
|
|
71
159
|
[`${DIR}/models/post.ts`]: "// fake"
|
|
@@ -99,6 +187,30 @@ const DIR = "/proj/src/data";
|
|
|
99
187
|
(0, import_vitest.expect)(synced).toContain("archive: v.unknown()");
|
|
100
188
|
(0, import_vitest.expect)(synced).toContain("publish: v.string()");
|
|
101
189
|
});
|
|
190
|
+
(0, import_vitest.test)("uses v.unknown() for explicitly unknown mutation params", () => {
|
|
191
|
+
const files = {
|
|
192
|
+
[`${DIR}/models/project.ts`]: "// fake"
|
|
193
|
+
};
|
|
194
|
+
const fixtures = {
|
|
195
|
+
[`${DIR}/models/project.ts`]: {
|
|
196
|
+
mutations: [{
|
|
197
|
+
modelName: "project",
|
|
198
|
+
handlers: [{
|
|
199
|
+
name: "insert",
|
|
200
|
+
paramTypeText: "unknown"
|
|
201
|
+
}],
|
|
202
|
+
schema: null
|
|
203
|
+
}],
|
|
204
|
+
queries: []
|
|
205
|
+
}
|
|
206
|
+
};
|
|
207
|
+
const result = (0, import_generate_lite.generateLite)({
|
|
208
|
+
files,
|
|
209
|
+
dir: DIR,
|
|
210
|
+
parse: makeParse(fixtures)
|
|
211
|
+
});
|
|
212
|
+
(0, import_vitest.expect)(result.files["syncedMutations.ts"]).toContain("insert: v.unknown()");
|
|
213
|
+
});
|
|
102
214
|
(0, import_vitest.test)("emits query files with v.unknown() fallback for references", () => {
|
|
103
215
|
const files = {
|
|
104
216
|
[`${DIR}/models/post.ts`]: "// fake",
|
|
@@ -68,6 +68,94 @@ var DIR = "/proj/src/data";
|
|
|
68
68
|
(0, import_vitest.expect)(result.schemaCount).toBe(0);
|
|
69
69
|
(0, import_vitest.expect)(result.mutationCount).toBe(3);
|
|
70
70
|
});
|
|
71
|
+
(0, import_vitest.test)("parses newline-separated mutation object types", function () {
|
|
72
|
+
var files = {
|
|
73
|
+
[`${DIR}/models/agentEvent.ts`]: "// fake",
|
|
74
|
+
[`${DIR}/models/deployment.ts`]: "// fake"
|
|
75
|
+
};
|
|
76
|
+
var fixtures = {
|
|
77
|
+
[`${DIR}/models/agentEvent.ts`]: {
|
|
78
|
+
mutations: [{
|
|
79
|
+
modelName: "agentEvent",
|
|
80
|
+
handlers: [{
|
|
81
|
+
name: "claimReviewLease",
|
|
82
|
+
paramTypeText: `{
|
|
83
|
+
id: string
|
|
84
|
+
projectId: string
|
|
85
|
+
createdAt: number
|
|
86
|
+
}`
|
|
87
|
+
}],
|
|
88
|
+
schema: null
|
|
89
|
+
}],
|
|
90
|
+
queries: []
|
|
91
|
+
},
|
|
92
|
+
[`${DIR}/models/deployment.ts`]: {
|
|
93
|
+
mutations: [{
|
|
94
|
+
modelName: "deployment",
|
|
95
|
+
handlers: [{
|
|
96
|
+
name: "deploy",
|
|
97
|
+
paramTypeText: `{
|
|
98
|
+
id: string
|
|
99
|
+
platform?: string // 'web' | 'ios'
|
|
100
|
+
buildTier?: string // 'dev' | 'testflight' | 'production'
|
|
101
|
+
}`
|
|
102
|
+
}],
|
|
103
|
+
schema: null
|
|
104
|
+
}],
|
|
105
|
+
queries: []
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
var result = (0, import_generate_lite.generateLite)({
|
|
109
|
+
files,
|
|
110
|
+
dir: DIR,
|
|
111
|
+
parse: makeParse(fixtures)
|
|
112
|
+
});
|
|
113
|
+
var synced = result.files["syncedMutations.ts"];
|
|
114
|
+
(0, import_vitest.expect)(synced).toContain("claimReviewLease:");
|
|
115
|
+
(0, import_vitest.expect)(synced).toContain("projectId: v.string()");
|
|
116
|
+
(0, import_vitest.expect)(synced).toContain("createdAt: v.number()");
|
|
117
|
+
(0, import_vitest.expect)(synced).toContain("deploy:");
|
|
118
|
+
(0, import_vitest.expect)(synced).toContain("platform: v.optional(v.string())");
|
|
119
|
+
(0, import_vitest.expect)(synced).toContain("buildTier: v.optional(v.string())");
|
|
120
|
+
(0, import_vitest.expect)(synced).not.toContain("claimReviewLease: v.object({})");
|
|
121
|
+
(0, import_vitest.expect)(synced).not.toContain("deploy: v.object({})");
|
|
122
|
+
});
|
|
123
|
+
(0, import_vitest.test)("parses object intersections and skips index signatures", function () {
|
|
124
|
+
var files = {
|
|
125
|
+
[`${DIR}/models/agent.ts`]: "// fake"
|
|
126
|
+
};
|
|
127
|
+
var fixtures = {
|
|
128
|
+
[`${DIR}/models/agent.ts`]: {
|
|
129
|
+
mutations: [{
|
|
130
|
+
modelName: "agent",
|
|
131
|
+
handlers: [{
|
|
132
|
+
name: "update",
|
|
133
|
+
paramTypeText: `{
|
|
134
|
+
id: string
|
|
135
|
+
} & {
|
|
136
|
+
status?: string
|
|
137
|
+
currentTaskId?: string
|
|
138
|
+
[key: string]: unknown
|
|
139
|
+
}`
|
|
140
|
+
}],
|
|
141
|
+
schema: null
|
|
142
|
+
}],
|
|
143
|
+
queries: []
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
var result = (0, import_generate_lite.generateLite)({
|
|
147
|
+
files,
|
|
148
|
+
dir: DIR,
|
|
149
|
+
parse: makeParse(fixtures)
|
|
150
|
+
});
|
|
151
|
+
var synced = result.files["syncedMutations.ts"];
|
|
152
|
+
(0, import_vitest.expect)(synced).toContain("update:");
|
|
153
|
+
(0, import_vitest.expect)(synced).toContain("id: v.string()");
|
|
154
|
+
(0, import_vitest.expect)(synced).toContain("status: v.optional(v.string())");
|
|
155
|
+
(0, import_vitest.expect)(synced).toContain("currentTaskId: v.optional(v.string())");
|
|
156
|
+
(0, import_vitest.expect)(synced).not.toContain("[key");
|
|
157
|
+
(0, import_vitest.expect)(synced).not.toContain("update: v.object({})");
|
|
158
|
+
});
|
|
71
159
|
(0, import_vitest.test)("falls back to v.unknown() for type references", function () {
|
|
72
160
|
var files = {
|
|
73
161
|
[`${DIR}/models/post.ts`]: "// fake"
|
|
@@ -101,6 +189,30 @@ var DIR = "/proj/src/data";
|
|
|
101
189
|
(0, import_vitest.expect)(synced).toContain("archive: v.unknown()");
|
|
102
190
|
(0, import_vitest.expect)(synced).toContain("publish: v.string()");
|
|
103
191
|
});
|
|
192
|
+
(0, import_vitest.test)("uses v.unknown() for explicitly unknown mutation params", function () {
|
|
193
|
+
var files = {
|
|
194
|
+
[`${DIR}/models/project.ts`]: "// fake"
|
|
195
|
+
};
|
|
196
|
+
var fixtures = {
|
|
197
|
+
[`${DIR}/models/project.ts`]: {
|
|
198
|
+
mutations: [{
|
|
199
|
+
modelName: "project",
|
|
200
|
+
handlers: [{
|
|
201
|
+
name: "insert",
|
|
202
|
+
paramTypeText: "unknown"
|
|
203
|
+
}],
|
|
204
|
+
schema: null
|
|
205
|
+
}],
|
|
206
|
+
queries: []
|
|
207
|
+
}
|
|
208
|
+
};
|
|
209
|
+
var result = (0, import_generate_lite.generateLite)({
|
|
210
|
+
files,
|
|
211
|
+
dir: DIR,
|
|
212
|
+
parse: makeParse(fixtures)
|
|
213
|
+
});
|
|
214
|
+
(0, import_vitest.expect)(result.files["syncedMutations.ts"]).toContain("insert: v.unknown()");
|
|
215
|
+
});
|
|
104
216
|
(0, import_vitest.test)("emits query files with v.unknown() fallback for references", function () {
|
|
105
217
|
var files = {
|
|
106
218
|
[`${DIR}/models/post.ts`]: "// fake",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["import_vitest","require","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","
|
|
1
|
+
{"version":3,"names":["import_vitest","require","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","not","toBeDefined","grouped","toMatch","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/generate.cjs
CHANGED
|
@@ -224,10 +224,18 @@ function extractMutationsFromModel(ts, sourceFile, content, fileName, silent, ty
|
|
|
224
224
|
}
|
|
225
225
|
const call = mutateNode;
|
|
226
226
|
const args = call.arguments;
|
|
227
|
-
const
|
|
227
|
+
const firstArg = args[0];
|
|
228
|
+
const hasNamedModel = Boolean(firstArg && ts.isStringLiteralLike(firstArg));
|
|
229
|
+
const hasCRUD = args.length >= 2 && !hasNamedModel;
|
|
228
230
|
let handlersArg = null;
|
|
229
231
|
if (args.length === 1 && ts.isObjectLiteralExpression(args[0])) {
|
|
230
232
|
handlersArg = args[0];
|
|
233
|
+
} else if (hasNamedModel) {
|
|
234
|
+
if (args.length >= 3 && ts.isObjectLiteralExpression(args[2])) {
|
|
235
|
+
handlersArg = args[2];
|
|
236
|
+
} else if (args.length >= 2 && ts.isObjectLiteralExpression(args[1])) {
|
|
237
|
+
handlersArg = args[1];
|
|
238
|
+
}
|
|
231
239
|
} else if (args.length === 3 && ts.isObjectLiteralExpression(args[2])) {
|
|
232
240
|
handlersArg = args[2];
|
|
233
241
|
}
|
|
@@ -283,10 +283,18 @@ function extractMutationsFromModel(ts, sourceFile, content, fileName, silent, ty
|
|
|
283
283
|
}
|
|
284
284
|
var call = mutateNode;
|
|
285
285
|
var args = call.arguments;
|
|
286
|
-
var
|
|
286
|
+
var firstArg = args[0];
|
|
287
|
+
var hasNamedModel = Boolean(firstArg && ts.isStringLiteralLike(firstArg));
|
|
288
|
+
var hasCRUD = args.length >= 2 && !hasNamedModel;
|
|
287
289
|
var handlersArg = null;
|
|
288
290
|
if (args.length === 1 && ts.isObjectLiteralExpression(args[0])) {
|
|
289
291
|
handlersArg = args[0];
|
|
292
|
+
} else if (hasNamedModel) {
|
|
293
|
+
if (args.length >= 3 && ts.isObjectLiteralExpression(args[2])) {
|
|
294
|
+
handlersArg = args[2];
|
|
295
|
+
} else if (args.length >= 2 && ts.isObjectLiteralExpression(args[1])) {
|
|
296
|
+
handlersArg = args[1];
|
|
297
|
+
}
|
|
290
298
|
} else if (args.length === 3 && ts.isObjectLiteralExpression(args[2])) {
|
|
291
299
|
handlersArg = args[2];
|
|
292
300
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_exports","__export","generate","generateDrizzleSchemaFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","hash","s","createHash","update","digest","generateCache","generateCachePath","getCacheDir","dir","process","cwd","nm","resolve","existsSync","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","readFileSync","e","saveCache","writeFileSync","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","dirname","options","fileMap","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","f","set","path","err","return","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","name","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","properties","prop","_prop_name","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","basename","hasCRUD","columns","primaryKeys","custom","call","extractSchemaColumns","_secondParam_type","push","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","endsWith","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","parseColumnType","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Boolean","Void","Undefined","Null","Any","Unknown","Never","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","join","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","entries","name1","getName","shouldSkipObjectKey","propType","isOptional","SymbolFlags","Optional","val","startsWith","formatObjectKey","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","getNumberIndexType","serializeColumnBuilder","col","zeroType","expr","serverName","optional","schema","lines","tableNames","keys","tables","sort","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","after","baseDir","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","generatedDir","queriesDir","allModelFiles","readdirSync","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","filesChanged","queryCount","mutationCount","parseTypeString","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2","_loop","file2","filePath2","fileBaseName2","content2","sourceFile2"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_exports","__export","generate","generateDrizzleSchemaFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","hash","s","createHash","update","digest","generateCache","generateCachePath","getCacheDir","dir","process","cwd","nm","resolve","existsSync","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","readFileSync","e","saveCache","writeFileSync","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","dirname","options","fileMap","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","f","set","path","err","return","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","name","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","properties","prop","_prop_name","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","basename","hasCRUD","columns","primaryKeys","custom","call","firstArg","hasNamedModel","Boolean","isStringLiteralLike","extractSchemaColumns","_secondParam_type","push","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","endsWith","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","parseColumnType","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","join","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","entries","name1","getName","shouldSkipObjectKey","propType","isOptional","SymbolFlags","Optional","val","startsWith","formatObjectKey","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","getNumberIndexType","serializeColumnBuilder","col","zeroType","expr","serverName","optional","schema","lines","tableNames","keys","tables","sort","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","after","baseDir","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","generatedDir","queriesDir","allModelFiles","readdirSync","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","filesChanged","queryCount","mutationCount","parseTypeString","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2","_loop","file2","filePath2","fileBaseName2","content2","sourceFile2"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -230,6 +230,93 @@ export const mutate = mutations({
|
|
|
230
230
|
(0, import_vitest.expect)(content).toContain("reset");
|
|
231
231
|
(0, import_vitest.expect)(content).toContain("v.string()");
|
|
232
232
|
});
|
|
233
|
+
(0, import_vitest.test)("generates validators for string-model multiline mutation params", async () => {
|
|
234
|
+
(0, import_node_fs.writeFileSync)((0, import_node_path.join)(testDir, "models/agentEvent.ts"), `
|
|
235
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
236
|
+
|
|
237
|
+
const perm = serverWhere('agentEvent', () => true)
|
|
238
|
+
|
|
239
|
+
export const mutate = mutations('agentEvent', perm, {
|
|
240
|
+
claimReviewLease: async (
|
|
241
|
+
{ tx },
|
|
242
|
+
props: {
|
|
243
|
+
id: string
|
|
244
|
+
projectId: string
|
|
245
|
+
agentId: string
|
|
246
|
+
userId: string
|
|
247
|
+
taskId: string
|
|
248
|
+
reviewKey: string
|
|
249
|
+
runnerId: string
|
|
250
|
+
createdAt: number
|
|
251
|
+
},
|
|
252
|
+
) => {
|
|
253
|
+
await tx.mutate.agentEvent.insert(props)
|
|
254
|
+
},
|
|
255
|
+
})
|
|
256
|
+
`);
|
|
257
|
+
await (0, import_generate.generate)({
|
|
258
|
+
dir: testDir,
|
|
259
|
+
silent: true
|
|
260
|
+
});
|
|
261
|
+
const content = (0, import_node_fs.readFileSync)((0, import_node_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
262
|
+
(0, import_vitest.expect)(content).toContain("claimReviewLease");
|
|
263
|
+
(0, import_vitest.expect)(content).toContain("projectId: v.string()");
|
|
264
|
+
(0, import_vitest.expect)(content).toContain("createdAt: v.number()");
|
|
265
|
+
(0, import_vitest.expect)(content).not.toContain("claimReviewLease: v.object({})");
|
|
266
|
+
});
|
|
267
|
+
(0, import_vitest.test)("generates validators for object intersections", async () => {
|
|
268
|
+
(0, import_node_fs.writeFileSync)((0, import_node_path.join)(testDir, "models/agent.ts"), `
|
|
269
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
270
|
+
|
|
271
|
+
const perm = serverWhere('agent', () => true)
|
|
272
|
+
|
|
273
|
+
export const mutate = mutations('agent', perm, {
|
|
274
|
+
update: async (
|
|
275
|
+
{ tx },
|
|
276
|
+
props: {
|
|
277
|
+
id: string
|
|
278
|
+
} & {
|
|
279
|
+
status?: string
|
|
280
|
+
currentTaskId?: string
|
|
281
|
+
[key: string]: unknown
|
|
282
|
+
},
|
|
283
|
+
) => {
|
|
284
|
+
await tx.mutate.agent.update(props)
|
|
285
|
+
},
|
|
286
|
+
})
|
|
287
|
+
`);
|
|
288
|
+
await (0, import_generate.generate)({
|
|
289
|
+
dir: testDir,
|
|
290
|
+
silent: true
|
|
291
|
+
});
|
|
292
|
+
const content = (0, import_node_fs.readFileSync)((0, import_node_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
293
|
+
(0, import_vitest.expect)(content).toContain("update");
|
|
294
|
+
(0, import_vitest.expect)(content).toContain("id: v.string()");
|
|
295
|
+
(0, import_vitest.expect)(content).toContain("status: v.optional(v.string())");
|
|
296
|
+
(0, import_vitest.expect)(content).toContain("currentTaskId: v.optional(v.string())");
|
|
297
|
+
(0, import_vitest.expect)(content).not.toContain("update: v.object({})");
|
|
298
|
+
(0, import_vitest.expect)(content).not.toContain("[key");
|
|
299
|
+
});
|
|
300
|
+
(0, import_vitest.test)("uses v.unknown for untyped mutation payloads", async () => {
|
|
301
|
+
(0, import_node_fs.writeFileSync)((0, import_node_path.join)(testDir, "models/project.ts"), `
|
|
302
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
303
|
+
|
|
304
|
+
const perm = serverWhere('project', () => true)
|
|
305
|
+
|
|
306
|
+
export const mutate = mutations('project', perm, {
|
|
307
|
+
insert: async ({ tx }, project) => {
|
|
308
|
+
await tx.mutate.project.insert(project)
|
|
309
|
+
},
|
|
310
|
+
})
|
|
311
|
+
`);
|
|
312
|
+
await (0, import_generate.generate)({
|
|
313
|
+
dir: testDir,
|
|
314
|
+
silent: true
|
|
315
|
+
});
|
|
316
|
+
const content = (0, import_node_fs.readFileSync)((0, import_node_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
317
|
+
(0, import_vitest.expect)(content).toContain("insert: v.unknown()");
|
|
318
|
+
(0, import_vitest.expect)(content).not.toContain("insert: v.void_()");
|
|
319
|
+
});
|
|
233
320
|
(0, import_vitest.test)("handles mutations with only context param (void)", async () => {
|
|
234
321
|
(0, import_node_fs.writeFileSync)((0, import_node_path.join)(testDir, "models/user.ts"), `
|
|
235
322
|
import { table, string } from 'on-zero'
|