on-zero 0.16.17 → 0.16.19
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 +44 -11
- package/dist/cjs/createZeroClient.native.js +54 -17
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroClient.recovery.test.cjs +49 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js +53 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/cjs/generate-helpers.cjs +28 -0
- package/dist/cjs/generate-helpers.native.js +36 -0
- package/dist/cjs/generate-helpers.native.js.map +1 -1
- package/dist/cjs/generate-layout.cjs +62 -53
- package/dist/cjs/generate-layout.native.js +62 -54
- package/dist/cjs/generate-layout.native.js.map +1 -1
- package/dist/cjs/generate-lite.cjs +28 -0
- package/dist/cjs/generate-lite.native.js +89 -33
- package/dist/cjs/generate-lite.native.js.map +1 -1
- package/dist/cjs/generate-lite.test.cjs +46 -0
- package/dist/cjs/generate-lite.test.native.js +46 -0
- package/dist/cjs/generate-lite.test.native.js.map +1 -1
- package/dist/cjs/generate.cjs +237 -243
- package/dist/cjs/generate.native.js +352 -353
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +35 -0
- package/dist/cjs/generate.test.native.js +35 -0
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.cjs +2 -1
- package/dist/cjs/helpers/createMutators.native.js +3 -1
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.cjs +8 -2
- package/dist/cjs/helpers/recoverZeroClient.native.js +10 -2
- package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.test.cjs +53 -0
- package/dist/cjs/helpers/recoverZeroClient.test.native.js +55 -0
- package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/cjs/native-typescript.cjs +190 -0
- package/dist/cjs/native-typescript.native.js +255 -0
- package/dist/cjs/native-typescript.native.js.map +1 -0
- package/dist/esm/createZeroClient.mjs +44 -11
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +54 -17
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.mjs +50 -1
- package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js +54 -1
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/esm/generate-helpers.mjs +27 -1
- package/dist/esm/generate-helpers.mjs.map +1 -1
- package/dist/esm/generate-helpers.native.js +35 -1
- package/dist/esm/generate-helpers.native.js.map +1 -1
- package/dist/esm/generate-layout.mjs +52 -54
- package/dist/esm/generate-layout.mjs.map +1 -1
- package/dist/esm/generate-layout.native.js +52 -55
- package/dist/esm/generate-layout.native.js.map +1 -1
- package/dist/esm/generate-lite.mjs +29 -1
- package/dist/esm/generate-lite.mjs.map +1 -1
- package/dist/esm/generate-lite.native.js +90 -34
- package/dist/esm/generate-lite.native.js.map +1 -1
- package/dist/esm/generate-lite.test.mjs +46 -0
- package/dist/esm/generate-lite.test.mjs.map +1 -1
- package/dist/esm/generate-lite.test.native.js +46 -0
- package/dist/esm/generate-lite.test.native.js.map +1 -1
- package/dist/esm/generate.mjs +238 -244
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +353 -354
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +35 -0
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +35 -0
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.mjs +2 -1
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +3 -1
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.mjs +8 -2
- package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.native.js +10 -2
- package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.mjs +53 -0
- package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js +55 -0
- package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/native-typescript.mjs +164 -0
- package/dist/esm/native-typescript.mjs.map +1 -0
- package/dist/esm/native-typescript.native.js +226 -0
- package/dist/esm/native-typescript.native.js.map +1 -0
- package/package.json +4 -3
- package/src/createZeroClient.recovery.test.tsx +56 -1
- package/src/createZeroClient.tsx +54 -15
- package/src/generate-helpers.ts +79 -0
- package/src/generate-layout.ts +64 -108
- package/src/generate-lite.test.ts +49 -0
- package/src/generate-lite.ts +44 -0
- package/src/generate.test.ts +52 -0
- package/src/generate.ts +313 -366
- package/src/helpers/createMutators.ts +14 -3
- package/src/helpers/recoverZeroClient.test.ts +50 -0
- package/src/helpers/recoverZeroClient.ts +12 -2
- package/src/native-typescript.ts +176 -0
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/generate-helpers.d.ts +13 -0
- package/types/generate-helpers.d.ts.map +1 -1
- package/types/generate-layout.d.ts +2 -1
- package/types/generate-layout.d.ts.map +1 -1
- package/types/generate-lite.d.ts +1 -0
- package/types/generate-lite.d.ts.map +1 -1
- package/types/generate.d.ts.map +1 -1
- package/types/helpers/createMutators.d.ts.map +1 -1
- package/types/helpers/recoverZeroClient.d.ts.map +1 -1
- package/types/native-typescript.d.ts +11 -0
- package/types/native-typescript.d.ts.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_helpers_exports","__export","CRUD_MUTATION_NAMES","columnTypeToValibot","extractValibotExpression","formatObjectKey","generateAggregatesFile","generateGroupedQueriesFile","generateInstancesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","getModelImportName","parseColumnType","parseTypeString","schemaColumnsToValibot","shouldSkipObjectKey","uniqueModuleAliases","module","exports","name","startsWith","test","JSON","stringify","names","alias","taken","Set","aliases","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","candidate","has","add","set","err","return","splitTopLevelTypeUnion","type","parts","depth","start","quote","i","length","char","Math","max","push","slice","trim","filter","Boolean","splitTopLevelTypeIntersection","stripTypeComments","out","nextNonWhitespace","splitTopLevelObjectEntries","_nextNonWhitespace","includes","parseInlineObjectEntries","endsWith","inner","entries","part","trimmed","replace","match","RegExp","opt","typeStr","parsed","val","unionParts","hasNull","hasUndefined","valueParts","part2","parsedParts","map","some","join","intersectionParts","objectEntries","objectEntries1","entries1","modules","sorted","sort","a","b","localeCompare","param","imports","importPath","get","sortedByImportName","modelsObj","importName","modelNames","typeExports","pascalName","charAt","toUpperCase","schemaName","queries","queryByFile","query","sourceFile","sortedFiles","keys","file","query2","instances","instance","queryNames","modelEntries","scope","visibility","tables","syncTables","supportTables","namespaces","namespace","merged","q","Array","from","namespaceDefs","fileQueries","queryDefs","q2","validatorDef","valibotCode","params","indentedValidator","indentContinuationLines"],"sources":["../../src/generate-helpers.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_helpers_exports","__export","CRUD_MUTATION_NAMES","columnTypeToValibot","extractValibotExpression","formatObjectKey","generateAggregatesFile","generateGroupedQueriesFile","generateInstancesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","getModelImportName","parseColumnType","parseTypeString","renderDrizzleSchemaInputModule","renderDrizzleZeroSqliteSchemaModule","schemaColumnsToValibot","shouldSkipObjectKey","uniqueModuleAliases","module","exports","name","startsWith","test","JSON","stringify","names","alias","taken","Set","aliases","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","candidate","has","add","set","err","return","splitTopLevelTypeUnion","type","parts","depth","start","quote","i","length","char","Math","max","push","slice","trim","filter","Boolean","splitTopLevelTypeIntersection","stripTypeComments","out","nextNonWhitespace","splitTopLevelObjectEntries","_nextNonWhitespace","includes","parseInlineObjectEntries","endsWith","inner","entries","part","trimmed","replace","match","RegExp","opt","typeStr","parsed","val","unionParts","hasNull","hasUndefined","valueParts","part2","parsedParts","map","some","join","intersectionParts","objectEntries","objectEntries1","entries1","modules","sorted","sort","a","b","localeCompare","param","imports","importPath","get","sortedByImportName","modelsObj","importName","modelNames","typeExports","pascalName","charAt","toUpperCase","schemaName","queries","queryByFile","query","sourceFile","sortedFiles","keys","file","query2","instances","instance","queryNames","modelEntries","scope","visibility","tables","syncTables","supportTables","namespaces","namespace","merged","q","Array","from","namespaceDefs","fileQueries","queryDefs","q2","validatorDef","valibotCode","params","indentedValidator","indentContinuationLines","queriesObject","col","base","optional","columns","primaryKeys","mode","pk"],"sources":["../../src/generate-helpers.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __export = (target, all) => {
|
|
6
8
|
for (var name in all) __defProp(target, name, {
|
|
@@ -17,6 +19,15 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
19
|
}
|
|
18
20
|
return to;
|
|
19
21
|
};
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
20
31
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
32
|
value: true
|
|
22
33
|
}), mod);
|
|
@@ -28,19 +39,20 @@ __export(generate_layout_exports, {
|
|
|
28
39
|
module.exports = __toCommonJS(generate_layout_exports);
|
|
29
40
|
var import_node_fs = require("node:fs");
|
|
30
41
|
var import_node_path = require("node:path");
|
|
42
|
+
var ts = __toESM(require("typescript/unstable/ast"), 1);
|
|
31
43
|
const isSourceFile = name => name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
|
|
32
44
|
const toImportPath = (baseDir, path) => (0, import_node_path.relative)(baseDir, path).split(import_node_path.sep).join("/").replace(/\.ts$/, "");
|
|
33
45
|
const isWithin = (root, path) => {
|
|
34
46
|
const child = (0, import_node_path.relative)(root, path);
|
|
35
47
|
return child === "" || child !== ".." && !child.startsWith(`..${import_node_path.sep}`);
|
|
36
48
|
};
|
|
37
|
-
function propertyName(
|
|
49
|
+
function propertyName(name) {
|
|
38
50
|
if (ts.isIdentifier(name) || ts.isStringLiteral(name) || ts.isNumericLiteral(name)) {
|
|
39
51
|
return name.text;
|
|
40
52
|
}
|
|
41
53
|
return null;
|
|
42
54
|
}
|
|
43
|
-
function readDataConfig(
|
|
55
|
+
function readDataConfig(project, baseDir, configPath) {
|
|
44
56
|
const path = configPath ? (0, import_node_path.resolve)(configPath) : (0, import_node_path.resolve)(baseDir, "on-zero.config.ts");
|
|
45
57
|
if (!(0, import_node_fs.existsSync)(path)) {
|
|
46
58
|
if (configPath) throw new Error(`[on-zero] config file does not exist: ${path}`);
|
|
@@ -49,8 +61,8 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
49
61
|
if ((0, import_node_path.dirname)(path) !== baseDir) {
|
|
50
62
|
throw new Error(`[on-zero] ${path} must be at the data root ${baseDir}`);
|
|
51
63
|
}
|
|
52
|
-
const source =
|
|
53
|
-
if (hasParseErrors(
|
|
64
|
+
const source = project.sourceFile(path);
|
|
65
|
+
if (project.hasParseErrors(path)) throw new Error(`[on-zero] unable to parse ${path}`);
|
|
54
66
|
let config = null;
|
|
55
67
|
for (const statement of source.statements) {
|
|
56
68
|
if (!ts.isExportAssignment(statement) || statement.isExportEquals) continue;
|
|
@@ -69,7 +81,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
69
81
|
if (!ts.isPropertyAssignment(option)) {
|
|
70
82
|
throw new Error(`[on-zero] ${path} options must use explicit property assignments`);
|
|
71
83
|
}
|
|
72
|
-
const name = propertyName(
|
|
84
|
+
const name = propertyName(option.name);
|
|
73
85
|
if (!name) throw new Error(`[on-zero] ${path} has an unsupported option name`);
|
|
74
86
|
if (rootOptions.has(name)) throw new Error(`[on-zero] ${path} repeats option '${name}'`);
|
|
75
87
|
rootOptions.set(name, option.initializer);
|
|
@@ -86,7 +98,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
86
98
|
if (!ts.isPropertyAssignment(property)) {
|
|
87
99
|
throw new Error(`[on-zero] ${path} instances must use explicit property assignments`);
|
|
88
100
|
}
|
|
89
|
-
const name = propertyName(
|
|
101
|
+
const name = propertyName(property.name);
|
|
90
102
|
if (!name) throw new Error(`[on-zero] ${path} has an unsupported instance name`);
|
|
91
103
|
if (!ts.isObjectLiteralExpression(property.initializer)) {
|
|
92
104
|
throw new Error(`[on-zero] instance '${name}' must be an object`);
|
|
@@ -102,7 +114,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
102
114
|
if (!ts.isPropertyAssignment(option)) {
|
|
103
115
|
throw new Error(`[on-zero] instance '${name}' options must be assignments`);
|
|
104
116
|
}
|
|
105
|
-
const optionName = propertyName(
|
|
117
|
+
const optionName = propertyName(option.name);
|
|
106
118
|
if (!optionName) throw new Error(`[on-zero] instance '${name}' has an invalid option`);
|
|
107
119
|
if (seen.has(optionName)) {
|
|
108
120
|
throw new Error(`[on-zero] instance '${name}' repeats option '${optionName}'`);
|
|
@@ -169,16 +181,13 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
169
181
|
instances
|
|
170
182
|
};
|
|
171
183
|
}
|
|
172
|
-
function
|
|
173
|
-
return Boolean(source.parseDiagnostics?.length);
|
|
174
|
-
}
|
|
175
|
-
function namespaceExportKinds(ts, baseDir, path) {
|
|
184
|
+
function namespaceExportKinds(project, baseDir, path) {
|
|
176
185
|
const none = {
|
|
177
186
|
model: false,
|
|
178
187
|
query: false
|
|
179
188
|
};
|
|
180
|
-
const source =
|
|
181
|
-
if (hasParseErrors(
|
|
189
|
+
const source = project.sourceFile(path);
|
|
190
|
+
if (project.hasParseErrors(path)) {
|
|
182
191
|
const displayPath = (0, import_node_path.relative)((0, import_node_path.dirname)(baseDir), path).split(import_node_path.sep).join("/");
|
|
183
192
|
console.warn(`[on-zero] ignoring ${displayPath}: no recognized data exports`);
|
|
184
193
|
return none;
|
|
@@ -232,7 +241,7 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
232
241
|
}
|
|
233
242
|
}
|
|
234
243
|
let found = false;
|
|
235
|
-
|
|
244
|
+
node.forEachChild(child => {
|
|
236
245
|
if (!found && reachesQuery(child)) found = true;
|
|
237
246
|
});
|
|
238
247
|
return found;
|
|
@@ -243,8 +252,8 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
243
252
|
query
|
|
244
253
|
};
|
|
245
254
|
}
|
|
246
|
-
function mutationTable(
|
|
247
|
-
const source =
|
|
255
|
+
function mutationTable(project, path, namespace) {
|
|
256
|
+
const source = project.sourceFile(path);
|
|
248
257
|
let schemaTable = null;
|
|
249
258
|
for (const statement of source.statements) {
|
|
250
259
|
if (!ts.isVariableStatement(statement)) continue;
|
|
@@ -255,24 +264,24 @@ function mutationTable(ts, path, namespace) {
|
|
|
255
264
|
if (!ts.isIdentifier(declaration.name) || !declaration.initializer) continue;
|
|
256
265
|
if (declaration.name.text === "mutate" && ts.isCallExpression(declaration.initializer)) {
|
|
257
266
|
const firstArgument = declaration.initializer.arguments[0];
|
|
258
|
-
if (firstArgument && ts.
|
|
267
|
+
if (firstArgument && ts.isStringLiteral(firstArgument)) {
|
|
259
268
|
return firstArgument.text;
|
|
260
269
|
}
|
|
261
270
|
}
|
|
262
271
|
if (declaration.name.text !== "schema") continue;
|
|
263
272
|
const visit = node => {
|
|
264
|
-
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.
|
|
273
|
+
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.isStringLiteral(node.arguments[0])) {
|
|
265
274
|
schemaTable = node.arguments[0].text;
|
|
266
275
|
return;
|
|
267
276
|
}
|
|
268
|
-
|
|
277
|
+
node.forEachChild(visit);
|
|
269
278
|
};
|
|
270
279
|
visit(declaration.initializer);
|
|
271
280
|
}
|
|
272
281
|
}
|
|
273
282
|
return schemaTable ?? namespace;
|
|
274
283
|
}
|
|
275
|
-
function discoverNamespaces(
|
|
284
|
+
function discoverNamespaces(project, baseDir, instance, instanceDirs) {
|
|
276
285
|
const namespaces = [];
|
|
277
286
|
for (const entry of (0, import_node_fs.readdirSync)(instance.dir, {
|
|
278
287
|
withFileTypes: true
|
|
@@ -280,7 +289,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
280
289
|
if (entry.isFile()) {
|
|
281
290
|
if (!isSourceFile(entry.name) || entry.name === "on-zero.config.ts") continue;
|
|
282
291
|
const path = (0, import_node_path.resolve)(instance.dir, entry.name);
|
|
283
|
-
const kinds = namespaceExportKinds(
|
|
292
|
+
const kinds = namespaceExportKinds(project, baseDir, path);
|
|
284
293
|
if (!kinds.model && !kinds.query) continue;
|
|
285
294
|
const name = (0, import_node_path.basename)(entry.name, ".ts");
|
|
286
295
|
namespaces.push({
|
|
@@ -291,7 +300,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
291
300
|
// missing mutations.ts leaves modelPath null
|
|
292
301
|
modelPath: kinds.model ? path : null,
|
|
293
302
|
aggregatePath: null,
|
|
294
|
-
table: kinds.model ? mutationTable(
|
|
303
|
+
table: kinds.model ? mutationTable(project, path, name) : null,
|
|
295
304
|
sourcePaths: [path]
|
|
296
305
|
});
|
|
297
306
|
continue;
|
|
@@ -317,7 +326,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
317
326
|
queryPath: hasQueries ? queryPath : null,
|
|
318
327
|
modelPath: hasMutations ? modelPath : null,
|
|
319
328
|
aggregatePath: hasAggregates ? aggregatePath : null,
|
|
320
|
-
table: hasMutations ? mutationTable(
|
|
329
|
+
table: hasMutations ? mutationTable(project, modelPath, entry.name) : null,
|
|
321
330
|
sourcePaths: [hasQueries && queryPath, hasMutations && modelPath, hasAggregates && aggregatePath].filter(path => Boolean(path))
|
|
322
331
|
});
|
|
323
332
|
}
|
|
@@ -339,13 +348,13 @@ function metadataPaths(baseDir) {
|
|
|
339
348
|
}
|
|
340
349
|
return paths.sort();
|
|
341
350
|
}
|
|
342
|
-
function relationTargets(
|
|
351
|
+
function relationTargets(project, paths) {
|
|
343
352
|
const relations = /* @__PURE__ */new Map();
|
|
344
353
|
for (const path of paths.filter(path2 => (0, import_node_path.basename)(path2) === "relations.ts")) {
|
|
345
|
-
const source =
|
|
354
|
+
const source = project.sourceFile(path);
|
|
346
355
|
const visit = node => {
|
|
347
356
|
if (!ts.isCallExpression(node) || node.expression.getText(source) !== "defineRelations") {
|
|
348
|
-
|
|
357
|
+
node.forEachChild(visit);
|
|
349
358
|
return;
|
|
350
359
|
}
|
|
351
360
|
const factory = node.arguments[1];
|
|
@@ -374,21 +383,21 @@ function relationTargets(ts, paths) {
|
|
|
374
383
|
}
|
|
375
384
|
return relations;
|
|
376
385
|
}
|
|
377
|
-
function tableColumns(
|
|
386
|
+
function tableColumns(project, paths, namespaces) {
|
|
378
387
|
const columns = /* @__PURE__ */new Map();
|
|
379
388
|
const sources = /* @__PURE__ */new Set([...paths, ...namespaces.flatMap(namespace => namespace.sourcePaths)]);
|
|
380
389
|
for (const path of sources) {
|
|
381
|
-
const source =
|
|
390
|
+
const source = project.sourceFile(path);
|
|
382
391
|
const visit = node => {
|
|
383
392
|
if (!ts.isVariableDeclaration(node) || !ts.isIdentifier(node.name) || !node.initializer) {
|
|
384
|
-
|
|
393
|
+
node.forEachChild(visit);
|
|
385
394
|
return;
|
|
386
395
|
}
|
|
387
396
|
const tableNames = /* @__PURE__ */new Set([node.name.text]);
|
|
388
397
|
let foundColumns = null;
|
|
389
398
|
const inspect = candidate => {
|
|
390
399
|
if (!ts.isCallExpression(candidate)) {
|
|
391
|
-
|
|
400
|
+
candidate.forEachChild(inspect);
|
|
392
401
|
return;
|
|
393
402
|
}
|
|
394
403
|
for (const argument of candidate.arguments) {
|
|
@@ -401,18 +410,18 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
401
410
|
};
|
|
402
411
|
inspect(node.initializer);
|
|
403
412
|
if (foundColumns) {
|
|
404
|
-
const names = new Set(foundColumns.properties.map(property => property.name?.getText(source).replace(/^['"]|['"]$/g, "")).filter(name => Boolean(name)));
|
|
413
|
+
const names = new Set(foundColumns.properties.map(property => ts.isSpreadAssignment(property) ? null : property.name?.getText(source).replace(/^['"]|['"]$/g, "")).filter(name => Boolean(name)));
|
|
405
414
|
for (const tableName of tableNames) columns.set(tableName, names);
|
|
406
415
|
}
|
|
407
|
-
|
|
416
|
+
node.forEachChild(visit);
|
|
408
417
|
};
|
|
409
418
|
visit(source);
|
|
410
419
|
}
|
|
411
420
|
return columns;
|
|
412
421
|
}
|
|
413
|
-
function queriedTables(
|
|
422
|
+
function queriedTables(project, namespace, relations) {
|
|
414
423
|
if (!namespace.queryPath) return [];
|
|
415
|
-
const source =
|
|
424
|
+
const source = project.sourceFile(namespace.queryPath);
|
|
416
425
|
const reached = [];
|
|
417
426
|
const functions = /* @__PURE__ */new Map();
|
|
418
427
|
const exported = /* @__PURE__ */new Set();
|
|
@@ -475,7 +484,7 @@ function queriedTables(ts, namespace, relations) {
|
|
|
475
484
|
visiting.delete(key);
|
|
476
485
|
}
|
|
477
486
|
}
|
|
478
|
-
|
|
487
|
+
node.forEachChild(child => visit(child, currentTable, query));
|
|
479
488
|
};
|
|
480
489
|
for (const name of exported) {
|
|
481
490
|
if (["mutate", "schema", "where"].includes(name)) continue;
|
|
@@ -490,9 +499,9 @@ function queriedTables(ts, namespace, relations) {
|
|
|
490
499
|
}
|
|
491
500
|
return reached;
|
|
492
501
|
}
|
|
493
|
-
function aggregateTables(
|
|
502
|
+
function aggregateTables(project, namespace) {
|
|
494
503
|
if (!namespace.aggregatePath) return [];
|
|
495
|
-
const source =
|
|
504
|
+
const source = project.sourceFile(namespace.aggregatePath);
|
|
496
505
|
const unwrap = node => {
|
|
497
506
|
let current = node;
|
|
498
507
|
while (ts.isSatisfiesExpression(current) || ts.isAsExpression(current) || ts.isParenthesizedExpression(current)) {
|
|
@@ -523,8 +532,8 @@ function aggregateTables(ts, namespace) {
|
|
|
523
532
|
throw new Error(`[on-zero] ${namespace.aggregatePath} aggregate ${property.name.getText(source)} must be an object literal`);
|
|
524
533
|
}
|
|
525
534
|
for (const fieldName of ["source", "target"]) {
|
|
526
|
-
const field = definition.properties.find(candidate => ts.isPropertyAssignment(candidate) && propertyName(
|
|
527
|
-
if (!field || !ts.
|
|
535
|
+
const field = definition.properties.find(candidate => ts.isPropertyAssignment(candidate) && propertyName(candidate.name) === fieldName);
|
|
536
|
+
if (!field || !ts.isStringLiteral(unwrap(field.initializer))) {
|
|
528
537
|
throw new Error(`[on-zero] ${namespace.aggregatePath} aggregate ${property.name.getText(source)} ${fieldName} must be a string literal`);
|
|
529
538
|
}
|
|
530
539
|
tables.add(unwrap(field.initializer).text);
|
|
@@ -534,14 +543,14 @@ function aggregateTables(ts, namespace) {
|
|
|
534
543
|
}
|
|
535
544
|
return [...tables].sort();
|
|
536
545
|
}
|
|
537
|
-
function mutationSupportTables(
|
|
546
|
+
function mutationSupportTables(project, baseDir, sourceRoots, namespace) {
|
|
538
547
|
if (!namespace.modelPath) return [];
|
|
539
548
|
const tables = /* @__PURE__ */new Set();
|
|
540
549
|
const visited = /* @__PURE__ */new Set();
|
|
541
550
|
const scan = path => {
|
|
542
551
|
if (visited.has(path)) return;
|
|
543
552
|
visited.add(path);
|
|
544
|
-
const source =
|
|
553
|
+
const source = project.sourceFile(path);
|
|
545
554
|
const visit = node => {
|
|
546
555
|
if (ts.isPropertyAccessExpression(node) && ts.isPropertyAccessExpression(node.expression) && ["mutate", "query"].includes(node.expression.name.text)) {
|
|
547
556
|
const transaction = node.expression.expression;
|
|
@@ -561,7 +570,7 @@ function mutationSupportTables(ts, baseDir, sourceRoots, namespace) {
|
|
|
561
570
|
}
|
|
562
571
|
}
|
|
563
572
|
}
|
|
564
|
-
|
|
573
|
+
node.forEachChild(visit);
|
|
565
574
|
};
|
|
566
575
|
visit(source);
|
|
567
576
|
};
|
|
@@ -587,7 +596,7 @@ function assertNoInstanceFiles(roots) {
|
|
|
587
596
|
};
|
|
588
597
|
for (const root of roots) walk(root);
|
|
589
598
|
}
|
|
590
|
-
function assertNoUnclaimedNamespaces(
|
|
599
|
+
function assertNoUnclaimedNamespaces(project, baseDir, configPath, instanceDirs) {
|
|
591
600
|
const walk = dir => {
|
|
592
601
|
if (instanceDirs.some(instanceDir => isWithin(instanceDir, dir))) return;
|
|
593
602
|
for (const entry of (0, import_node_fs.readdirSync)(dir, {
|
|
@@ -602,7 +611,7 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
602
611
|
if (!entry.isFile() || !isSourceFile(entry.name) || path === configPath || entry.name === "instance.ts") {
|
|
603
612
|
continue;
|
|
604
613
|
}
|
|
605
|
-
const kinds = namespaceExportKinds(
|
|
614
|
+
const kinds = namespaceExportKinds(project, baseDir, path);
|
|
606
615
|
if (kinds.model || kinds.query) {
|
|
607
616
|
throw new Error(`[on-zero] data namespace ${path} is outside every instance directory declared in ${configPath}`);
|
|
608
617
|
}
|
|
@@ -610,8 +619,8 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
610
619
|
};
|
|
611
620
|
walk(baseDir);
|
|
612
621
|
}
|
|
613
|
-
function discoverDataLayout(
|
|
614
|
-
const config = readDataConfig(
|
|
622
|
+
function discoverDataLayout(project, baseDir, configPath) {
|
|
623
|
+
const config = readDataConfig(project, baseDir, configPath);
|
|
615
624
|
const configured = config?.instances ?? [{
|
|
616
625
|
name: "default",
|
|
617
626
|
dir: baseDir,
|
|
@@ -621,7 +630,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
621
630
|
const sourceRoots = [... /* @__PURE__ */new Set([baseDir, ...configured.map(instance => instance.dir)])];
|
|
622
631
|
assertNoInstanceFiles(sourceRoots);
|
|
623
632
|
if (config) {
|
|
624
|
-
assertNoUnclaimedNamespaces(
|
|
633
|
+
assertNoUnclaimedNamespaces(project, baseDir, config.path, configured.map(instance => instance.dir));
|
|
625
634
|
}
|
|
626
635
|
const instances = configured.map(instance => ({
|
|
627
636
|
name: instance.name,
|
|
@@ -635,7 +644,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
635
644
|
}));
|
|
636
645
|
const instanceDirs = new Set(instances.map(instance => instance.dir));
|
|
637
646
|
for (const instance of instances) {
|
|
638
|
-
instance.namespaces = discoverNamespaces(
|
|
647
|
+
instance.namespaces = discoverNamespaces(project, baseDir, instance, instanceDirs);
|
|
639
648
|
}
|
|
640
649
|
const namespaces = instances.flatMap(instance => instance.namespaces);
|
|
641
650
|
const namespaceOwners = /* @__PURE__ */new Map();
|
|
@@ -656,14 +665,14 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
656
665
|
tableOwners.set(namespace.table, namespace.instance);
|
|
657
666
|
}
|
|
658
667
|
const metadata = metadataPaths(baseDir);
|
|
659
|
-
const relations = relationTargets(
|
|
660
|
-
const columns = tableColumns(
|
|
668
|
+
const relations = relationTargets(project, metadata);
|
|
669
|
+
const columns = tableColumns(project, metadata, namespaces);
|
|
661
670
|
const relatedOwners = /* @__PURE__ */new Map();
|
|
662
671
|
for (const instance of instances) {
|
|
663
672
|
const tables = new Set(instance.namespaces.map(namespace => namespace.table).filter(table => table !== null));
|
|
664
673
|
const syncTables = new Set(tables);
|
|
665
674
|
for (const namespace of instance.namespaces) {
|
|
666
|
-
for (const table of aggregateTables(
|
|
675
|
+
for (const table of aggregateTables(project, namespace)) {
|
|
667
676
|
const owner = tableOwners.get(table) ?? relatedOwners.get(table);
|
|
668
677
|
if (owner && owner !== instance.name) {
|
|
669
678
|
throw new Error(`[on-zero] ${namespace.name} aggregates in instance '${instance.name}' reach table '${table}' owned by instance '${owner}'`);
|
|
@@ -672,7 +681,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
672
681
|
tables.add(table);
|
|
673
682
|
syncTables.add(table);
|
|
674
683
|
}
|
|
675
|
-
for (const reached of queriedTables(
|
|
684
|
+
for (const reached of queriedTables(project, namespace, relations)) {
|
|
676
685
|
const owner = tableOwners.get(reached.table) ?? relatedOwners.get(reached.table);
|
|
677
686
|
if (owner && owner !== instance.name) {
|
|
678
687
|
throw new Error(`[on-zero] ${namespace.name}.${reached.query} in instance '${instance.name}' reaches table '${reached.table}' owned by instance '${owner}'`);
|
|
@@ -695,7 +704,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
695
704
|
for (const instance of instances) {
|
|
696
705
|
const supportTables = new Set(instance.declaredSupportTables);
|
|
697
706
|
for (const namespace of instance.namespaces) {
|
|
698
|
-
for (const table of mutationSupportTables(
|
|
707
|
+
for (const table of mutationSupportTables(project, baseDir, sourceRoots, namespace)) {
|
|
699
708
|
if (tableOwners.has(table) || relatedOwners.has(table)) continue;
|
|
700
709
|
if (!instance.syncTables.includes(table)) {
|
|
701
710
|
supportTables.add(table);
|