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,5 +1,6 @@
|
|
|
1
|
-
import { existsSync,
|
|
1
|
+
import { existsSync, readdirSync, statSync } from "fs";
|
|
2
2
|
import { basename, dirname, relative, resolve, sep } from "path";
|
|
3
|
+
import * as ts from "typescript/unstable/ast";
|
|
3
4
|
function _type_of(obj) {
|
|
4
5
|
"@swc/helpers - typeof";
|
|
5
6
|
|
|
@@ -15,13 +16,13 @@ var isWithin = function isWithin2(root, path) {
|
|
|
15
16
|
var child = relative(root, path);
|
|
16
17
|
return child === "" || child !== ".." && !child.startsWith(`..${sep}`);
|
|
17
18
|
};
|
|
18
|
-
function propertyName(
|
|
19
|
+
function propertyName(name) {
|
|
19
20
|
if (ts.isIdentifier(name) || ts.isStringLiteral(name) || ts.isNumericLiteral(name)) {
|
|
20
21
|
return name.text;
|
|
21
22
|
}
|
|
22
23
|
return null;
|
|
23
24
|
}
|
|
24
|
-
function readDataConfig(
|
|
25
|
+
function readDataConfig(project, baseDir, configPath) {
|
|
25
26
|
var path = configPath ? resolve(configPath) : resolve(baseDir, "on-zero.config.ts");
|
|
26
27
|
if (!existsSync(path)) {
|
|
27
28
|
if (configPath) throw new Error(`[on-zero] config file does not exist: ${path}`);
|
|
@@ -30,8 +31,8 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
30
31
|
if (dirname(path) !== baseDir) {
|
|
31
32
|
throw new Error(`[on-zero] ${path} must be at the data root ${baseDir}`);
|
|
32
33
|
}
|
|
33
|
-
var source =
|
|
34
|
-
if (hasParseErrors(
|
|
34
|
+
var source = project.sourceFile(path);
|
|
35
|
+
if (project.hasParseErrors(path)) throw new Error(`[on-zero] unable to parse ${path}`);
|
|
35
36
|
var config = null;
|
|
36
37
|
var _iteratorNormalCompletion = true,
|
|
37
38
|
_didIteratorError = false,
|
|
@@ -74,7 +75,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
74
75
|
if (!ts.isPropertyAssignment(option)) {
|
|
75
76
|
throw new Error(`[on-zero] ${path} options must use explicit property assignments`);
|
|
76
77
|
}
|
|
77
|
-
var name = propertyName(
|
|
78
|
+
var name = propertyName(option.name);
|
|
78
79
|
if (!name) throw new Error(`[on-zero] ${path} has an unsupported option name`);
|
|
79
80
|
if (rootOptions.has(name)) throw new Error(`[on-zero] ${path} repeats option '${name}'`);
|
|
80
81
|
rootOptions.set(name, option.initializer);
|
|
@@ -129,7 +130,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
129
130
|
if (!ts.isPropertyAssignment(property)) {
|
|
130
131
|
throw new Error(`[on-zero] ${path} instances must use explicit property assignments`);
|
|
131
132
|
}
|
|
132
|
-
var name2 = propertyName(
|
|
133
|
+
var name2 = propertyName(property.name);
|
|
133
134
|
if (!name2) throw new Error(`[on-zero] ${path} has an unsupported instance name`);
|
|
134
135
|
if (!ts.isObjectLiteralExpression(property.initializer)) {
|
|
135
136
|
throw new Error(`[on-zero] instance '${name2}' must be an object`);
|
|
@@ -152,7 +153,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
152
153
|
if (!ts.isPropertyAssignment(option2)) {
|
|
153
154
|
throw new Error(`[on-zero] instance '${name2}' options must be assignments`);
|
|
154
155
|
}
|
|
155
|
-
var optionName = propertyName(
|
|
156
|
+
var optionName = propertyName(option2.name);
|
|
156
157
|
if (!optionName) throw new Error(`[on-zero] instance '${name2}' has an invalid option`);
|
|
157
158
|
if (seen.has(optionName)) {
|
|
158
159
|
throw new Error(`[on-zero] instance '${name2}' repeats option '${optionName}'`);
|
|
@@ -289,17 +290,13 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
289
290
|
instances
|
|
290
291
|
};
|
|
291
292
|
}
|
|
292
|
-
function
|
|
293
|
-
var _source_parseDiagnostics;
|
|
294
|
-
return Boolean((_source_parseDiagnostics = source.parseDiagnostics) === null || _source_parseDiagnostics === void 0 ? void 0 : _source_parseDiagnostics.length);
|
|
295
|
-
}
|
|
296
|
-
function namespaceExportKinds(ts, baseDir, path) {
|
|
293
|
+
function namespaceExportKinds(project, baseDir, path) {
|
|
297
294
|
var none = {
|
|
298
295
|
model: false,
|
|
299
296
|
query: false
|
|
300
297
|
};
|
|
301
|
-
var source =
|
|
302
|
-
if (hasParseErrors(
|
|
298
|
+
var source = project.sourceFile(path);
|
|
299
|
+
if (project.hasParseErrors(path)) {
|
|
303
300
|
var displayPath = relative(dirname(baseDir), path).split(sep).join("/");
|
|
304
301
|
console.warn(`[on-zero] ignoring ${displayPath}: no recognized data exports`);
|
|
305
302
|
return none;
|
|
@@ -397,7 +394,7 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
397
394
|
}
|
|
398
395
|
}
|
|
399
396
|
var found1 = false;
|
|
400
|
-
|
|
397
|
+
node.forEachChild(function (child) {
|
|
401
398
|
if (!found1 && reachesQuery(child)) found1 = true;
|
|
402
399
|
});
|
|
403
400
|
return found1;
|
|
@@ -410,8 +407,8 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
410
407
|
query
|
|
411
408
|
};
|
|
412
409
|
}
|
|
413
|
-
function mutationTable(
|
|
414
|
-
var source =
|
|
410
|
+
function mutationTable(project, path, namespace) {
|
|
411
|
+
var source = project.sourceFile(path);
|
|
415
412
|
var schemaTable = null;
|
|
416
413
|
var _iteratorNormalCompletion = true,
|
|
417
414
|
_didIteratorError = false,
|
|
@@ -435,7 +432,7 @@ function mutationTable(ts, path, namespace) {
|
|
|
435
432
|
if (!ts.isIdentifier(declaration.name) || !declaration.initializer) return "continue";
|
|
436
433
|
if (declaration.name.text === "mutate" && ts.isCallExpression(declaration.initializer)) {
|
|
437
434
|
var firstArgument = declaration.initializer.arguments[0];
|
|
438
|
-
if (firstArgument && ts.
|
|
435
|
+
if (firstArgument && ts.isStringLiteral(firstArgument)) {
|
|
439
436
|
return {
|
|
440
437
|
v: firstArgument.text
|
|
441
438
|
};
|
|
@@ -443,11 +440,11 @@ function mutationTable(ts, path, namespace) {
|
|
|
443
440
|
}
|
|
444
441
|
if (declaration.name.text !== "schema") return "continue";
|
|
445
442
|
var visit = function visit1(node) {
|
|
446
|
-
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.
|
|
443
|
+
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.isStringLiteral(node.arguments[0])) {
|
|
447
444
|
schemaTable = node.arguments[0].text;
|
|
448
445
|
return;
|
|
449
446
|
}
|
|
450
|
-
|
|
447
|
+
node.forEachChild(visit);
|
|
451
448
|
};
|
|
452
449
|
visit(declaration.initializer);
|
|
453
450
|
};
|
|
@@ -486,7 +483,7 @@ function mutationTable(ts, path, namespace) {
|
|
|
486
483
|
}
|
|
487
484
|
return schemaTable !== null && schemaTable !== void 0 ? schemaTable : namespace;
|
|
488
485
|
}
|
|
489
|
-
function discoverNamespaces(
|
|
486
|
+
function discoverNamespaces(project, baseDir, instance, instanceDirs) {
|
|
490
487
|
var namespaces = [];
|
|
491
488
|
var _iteratorNormalCompletion = true,
|
|
492
489
|
_didIteratorError = false,
|
|
@@ -501,7 +498,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
501
498
|
if (entry.isFile()) {
|
|
502
499
|
if (!isSourceFile(entry.name) || entry.name === "on-zero.config.ts") continue;
|
|
503
500
|
var path = resolve(instance.dir, entry.name);
|
|
504
|
-
var kinds = namespaceExportKinds(
|
|
501
|
+
var kinds = namespaceExportKinds(project, baseDir, path);
|
|
505
502
|
if (!kinds.model && !kinds.query) continue;
|
|
506
503
|
var name = basename(entry.name, ".ts");
|
|
507
504
|
namespaces.push({
|
|
@@ -512,7 +509,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
512
509
|
// missing mutations.ts leaves modelPath null
|
|
513
510
|
modelPath: kinds.model ? path : null,
|
|
514
511
|
aggregatePath: null,
|
|
515
|
-
table: kinds.model ? mutationTable(
|
|
512
|
+
table: kinds.model ? mutationTable(project, path, name) : null,
|
|
516
513
|
sourcePaths: [path]
|
|
517
514
|
});
|
|
518
515
|
continue;
|
|
@@ -538,7 +535,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
538
535
|
queryPath: hasQueries ? queryPath : null,
|
|
539
536
|
modelPath: hasMutations ? modelPath : null,
|
|
540
537
|
aggregatePath: hasAggregates ? aggregatePath : null,
|
|
541
|
-
table: hasMutations ? mutationTable(
|
|
538
|
+
table: hasMutations ? mutationTable(project, modelPath, entry.name) : null,
|
|
542
539
|
sourcePaths: [hasQueries && queryPath, hasMutations && modelPath, hasAggregates && aggregatePath].filter(function (path2) {
|
|
543
540
|
return Boolean(path2);
|
|
544
541
|
})
|
|
@@ -595,7 +592,7 @@ function metadataPaths(baseDir) {
|
|
|
595
592
|
}
|
|
596
593
|
return paths.sort();
|
|
597
594
|
}
|
|
598
|
-
function relationTargets(
|
|
595
|
+
function relationTargets(project, paths) {
|
|
599
596
|
var relations = /* @__PURE__ */new Map();
|
|
600
597
|
var _iteratorNormalCompletion = true,
|
|
601
598
|
_didIteratorError = false,
|
|
@@ -603,10 +600,10 @@ function relationTargets(ts, paths) {
|
|
|
603
600
|
try {
|
|
604
601
|
var _loop = function () {
|
|
605
602
|
var path = _step.value;
|
|
606
|
-
var source =
|
|
603
|
+
var source = project.sourceFile(path);
|
|
607
604
|
var visit = function visit1(node) {
|
|
608
605
|
if (!ts.isCallExpression(node) || node.expression.getText(source) !== "defineRelations") {
|
|
609
|
-
|
|
606
|
+
node.forEachChild(visit);
|
|
610
607
|
return;
|
|
611
608
|
}
|
|
612
609
|
var factory = node.arguments[1];
|
|
@@ -691,7 +688,7 @@ function relationTargets(ts, paths) {
|
|
|
691
688
|
}
|
|
692
689
|
return relations;
|
|
693
690
|
}
|
|
694
|
-
function tableColumns(
|
|
691
|
+
function tableColumns(project, paths, namespaces) {
|
|
695
692
|
var columns = /* @__PURE__ */new Map();
|
|
696
693
|
var sources = /* @__PURE__ */new Set([...paths, ...namespaces.flatMap(function (namespace) {
|
|
697
694
|
return namespace.sourcePaths;
|
|
@@ -702,17 +699,17 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
702
699
|
try {
|
|
703
700
|
var _loop = function () {
|
|
704
701
|
var path = _step.value;
|
|
705
|
-
var source =
|
|
702
|
+
var source = project.sourceFile(path);
|
|
706
703
|
var visit = function visit1(node) {
|
|
707
704
|
if (!ts.isVariableDeclaration(node) || !ts.isIdentifier(node.name) || !node.initializer) {
|
|
708
|
-
|
|
705
|
+
node.forEachChild(visit);
|
|
709
706
|
return;
|
|
710
707
|
}
|
|
711
708
|
var tableNames = /* @__PURE__ */new Set([node.name.text]);
|
|
712
709
|
var foundColumns = null;
|
|
713
710
|
var inspect = function inspect1(candidate) {
|
|
714
711
|
if (!ts.isCallExpression(candidate)) {
|
|
715
|
-
|
|
712
|
+
candidate.forEachChild(inspect);
|
|
716
713
|
return;
|
|
717
714
|
}
|
|
718
715
|
var _iteratorNormalCompletion3 = true,
|
|
@@ -746,7 +743,7 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
746
743
|
if (foundColumns) {
|
|
747
744
|
var names = new Set(foundColumns.properties.map(function (property) {
|
|
748
745
|
var _property_name;
|
|
749
|
-
return (_property_name = property.name) === null || _property_name === void 0 ? void 0 : _property_name.getText(source).replace(/^['"]|['"]$/g, "");
|
|
746
|
+
return ts.isSpreadAssignment(property) ? null : (_property_name = property.name) === null || _property_name === void 0 ? void 0 : _property_name.getText(source).replace(/^['"]|['"]$/g, "");
|
|
750
747
|
}).filter(function (name) {
|
|
751
748
|
return Boolean(name);
|
|
752
749
|
}));
|
|
@@ -773,7 +770,7 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
773
770
|
}
|
|
774
771
|
}
|
|
775
772
|
}
|
|
776
|
-
|
|
773
|
+
node.forEachChild(visit);
|
|
777
774
|
};
|
|
778
775
|
visit(source);
|
|
779
776
|
};
|
|
@@ -794,9 +791,9 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
794
791
|
}
|
|
795
792
|
return columns;
|
|
796
793
|
}
|
|
797
|
-
function queriedTables(
|
|
794
|
+
function queriedTables(project, namespace, relations) {
|
|
798
795
|
if (!namespace.queryPath) return [];
|
|
799
|
-
var source =
|
|
796
|
+
var source = project.sourceFile(namespace.queryPath);
|
|
800
797
|
var reached = [];
|
|
801
798
|
var functions = /* @__PURE__ */new Map();
|
|
802
799
|
var exported = /* @__PURE__ */new Set();
|
|
@@ -907,7 +904,7 @@ function queriedTables(ts, namespace, relations) {
|
|
|
907
904
|
visiting.delete(key);
|
|
908
905
|
}
|
|
909
906
|
}
|
|
910
|
-
|
|
907
|
+
node.forEachChild(function (child) {
|
|
911
908
|
return visit(child, currentTable, query);
|
|
912
909
|
});
|
|
913
910
|
};
|
|
@@ -943,9 +940,9 @@ function queriedTables(ts, namespace, relations) {
|
|
|
943
940
|
}
|
|
944
941
|
return reached;
|
|
945
942
|
}
|
|
946
|
-
function aggregateTables(
|
|
943
|
+
function aggregateTables(project, namespace) {
|
|
947
944
|
if (!namespace.aggregatePath) return [];
|
|
948
|
-
var source =
|
|
945
|
+
var source = project.sourceFile(namespace.aggregatePath);
|
|
949
946
|
var unwrap = function unwrap2(node) {
|
|
950
947
|
var current = node;
|
|
951
948
|
while (ts.isSatisfiesExpression(current) || ts.isAsExpression(current) || ts.isParenthesizedExpression(current)) {
|
|
@@ -988,9 +985,9 @@ function aggregateTables(ts, namespace) {
|
|
|
988
985
|
var _loop = function (_i2, _iter2) {
|
|
989
986
|
var fieldName = _iter2[_i2];
|
|
990
987
|
var field = definition.properties.find(function (candidate) {
|
|
991
|
-
return ts.isPropertyAssignment(candidate) && propertyName(
|
|
988
|
+
return ts.isPropertyAssignment(candidate) && propertyName(candidate.name) === fieldName;
|
|
992
989
|
});
|
|
993
|
-
if (!field || !ts.
|
|
990
|
+
if (!field || !ts.isStringLiteral(unwrap(field.initializer))) {
|
|
994
991
|
throw new Error(`[on-zero] ${namespace.aggregatePath} aggregate ${property.name.getText(source)} ${fieldName} must be a string literal`);
|
|
995
992
|
}
|
|
996
993
|
tables.add(unwrap(field.initializer).text);
|
|
@@ -1051,14 +1048,14 @@ function aggregateTables(ts, namespace) {
|
|
|
1051
1048
|
}
|
|
1052
1049
|
return [...tables].sort();
|
|
1053
1050
|
}
|
|
1054
|
-
function mutationSupportTables(
|
|
1051
|
+
function mutationSupportTables(project, baseDir, sourceRoots, namespace) {
|
|
1055
1052
|
if (!namespace.modelPath) return [];
|
|
1056
1053
|
var tables = /* @__PURE__ */new Set();
|
|
1057
1054
|
var visited = /* @__PURE__ */new Set();
|
|
1058
1055
|
var scan = function scan1(path) {
|
|
1059
1056
|
if (visited.has(path)) return;
|
|
1060
1057
|
visited.add(path);
|
|
1061
|
-
var source =
|
|
1058
|
+
var source = project.sourceFile(path);
|
|
1062
1059
|
var visit = function visit1(node) {
|
|
1063
1060
|
if (ts.isPropertyAccessExpression(node) && ts.isPropertyAccessExpression(node.expression) && ["mutate", "query"].includes(node.expression.name.text)) {
|
|
1064
1061
|
var transaction = node.expression.expression;
|
|
@@ -1085,7 +1082,7 @@ function mutationSupportTables(ts, baseDir, sourceRoots, namespace) {
|
|
|
1085
1082
|
}
|
|
1086
1083
|
}
|
|
1087
1084
|
}
|
|
1088
|
-
|
|
1085
|
+
node.forEachChild(visit);
|
|
1089
1086
|
};
|
|
1090
1087
|
visit(source);
|
|
1091
1088
|
};
|
|
@@ -1151,7 +1148,7 @@ function assertNoInstanceFiles(roots) {
|
|
|
1151
1148
|
}
|
|
1152
1149
|
}
|
|
1153
1150
|
}
|
|
1154
|
-
function assertNoUnclaimedNamespaces(
|
|
1151
|
+
function assertNoUnclaimedNamespaces(project, baseDir, configPath, instanceDirs) {
|
|
1155
1152
|
var walk = function walk1(dir) {
|
|
1156
1153
|
if (instanceDirs.some(function (instanceDir) {
|
|
1157
1154
|
return isWithin(instanceDir, dir);
|
|
@@ -1173,7 +1170,7 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
1173
1170
|
if (!entry.isFile() || !isSourceFile(entry.name) || path === configPath || entry.name === "instance.ts") {
|
|
1174
1171
|
continue;
|
|
1175
1172
|
}
|
|
1176
|
-
var kinds = namespaceExportKinds(
|
|
1173
|
+
var kinds = namespaceExportKinds(project, baseDir, path);
|
|
1177
1174
|
if (kinds.model || kinds.query) {
|
|
1178
1175
|
throw new Error(`[on-zero] data namespace ${path} is outside every instance directory declared in ${configPath}`);
|
|
1179
1176
|
}
|
|
@@ -1195,9 +1192,9 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
1195
1192
|
};
|
|
1196
1193
|
walk(baseDir);
|
|
1197
1194
|
}
|
|
1198
|
-
function discoverDataLayout(
|
|
1195
|
+
function discoverDataLayout(project, baseDir, configPath) {
|
|
1199
1196
|
var _ref;
|
|
1200
|
-
var config = readDataConfig(
|
|
1197
|
+
var config = readDataConfig(project, baseDir, configPath);
|
|
1201
1198
|
var configured = (_ref = config === null || config === void 0 ? void 0 : config.instances) !== null && _ref !== void 0 ? _ref : [{
|
|
1202
1199
|
name: "default",
|
|
1203
1200
|
dir: baseDir,
|
|
@@ -1209,7 +1206,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1209
1206
|
})])];
|
|
1210
1207
|
assertNoInstanceFiles(sourceRoots);
|
|
1211
1208
|
if (config) {
|
|
1212
|
-
assertNoUnclaimedNamespaces(
|
|
1209
|
+
assertNoUnclaimedNamespaces(project, baseDir, config.path, configured.map(function (instance2) {
|
|
1213
1210
|
return instance2.dir;
|
|
1214
1211
|
}));
|
|
1215
1212
|
}
|
|
@@ -1234,7 +1231,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1234
1231
|
try {
|
|
1235
1232
|
for (var _iterator = instances[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
1236
1233
|
var instance = _step.value;
|
|
1237
|
-
instance.namespaces = discoverNamespaces(
|
|
1234
|
+
instance.namespaces = discoverNamespaces(project, baseDir, instance, instanceDirs);
|
|
1238
1235
|
}
|
|
1239
1236
|
} catch (err) {
|
|
1240
1237
|
_didIteratorError = true;
|
|
@@ -1309,8 +1306,8 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1309
1306
|
}
|
|
1310
1307
|
}
|
|
1311
1308
|
var metadata = metadataPaths(baseDir);
|
|
1312
|
-
var relations = relationTargets(
|
|
1313
|
-
var columns = tableColumns(
|
|
1309
|
+
var relations = relationTargets(project, metadata);
|
|
1310
|
+
var columns = tableColumns(project, metadata, namespaces);
|
|
1314
1311
|
var relatedOwners = /* @__PURE__ */new Map();
|
|
1315
1312
|
var _iteratorNormalCompletion3 = true,
|
|
1316
1313
|
_didIteratorError3 = false,
|
|
@@ -1334,7 +1331,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1334
1331
|
_didIteratorError5 = false,
|
|
1335
1332
|
_iteratorError5 = void 0;
|
|
1336
1333
|
try {
|
|
1337
|
-
for (var _iterator5 = aggregateTables(
|
|
1334
|
+
for (var _iterator5 = aggregateTables(project, namespace2)[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
1338
1335
|
var table = _step5.value;
|
|
1339
1336
|
var _tableOwners_get;
|
|
1340
1337
|
var owner2 = (_tableOwners_get = tableOwners.get(table)) !== null && _tableOwners_get !== void 0 ? _tableOwners_get : relatedOwners.get(table);
|
|
@@ -1363,7 +1360,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1363
1360
|
_didIteratorError6 = false,
|
|
1364
1361
|
_iteratorError6 = void 0;
|
|
1365
1362
|
try {
|
|
1366
|
-
for (var _iterator6 = queriedTables(
|
|
1363
|
+
for (var _iterator6 = queriedTables(project, namespace2, relations)[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
1367
1364
|
var reached = _step6.value;
|
|
1368
1365
|
var _tableOwners_get1;
|
|
1369
1366
|
var owner3 = (_tableOwners_get1 = tableOwners.get(reached.table)) !== null && _tableOwners_get1 !== void 0 ? _tableOwners_get1 : relatedOwners.get(reached.table);
|
|
@@ -1464,7 +1461,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1464
1461
|
_didIteratorError12 = false,
|
|
1465
1462
|
_iteratorError12 = void 0;
|
|
1466
1463
|
try {
|
|
1467
|
-
for (var _iterator12 = mutationSupportTables(
|
|
1464
|
+
for (var _iterator12 = mutationSupportTables(project, baseDir, sourceRoots, namespace3)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
1468
1465
|
var table2 = _step12.value;
|
|
1469
1466
|
if (tableOwners.has(table2) || relatedOwners.has(table2)) continue;
|
|
1470
1467
|
if (!instance2.syncTables.includes(table2)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["existsSync","readFileSync","readdirSync","statSync","basename","dirname","relative","resolve","sep","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","name","endsWith","toImportPath","toImportPath2","baseDir","path","split","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","ts","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","configPath","Error","source","createSourceFile","ScriptTarget","Latest","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","value","isExportAssignment","isExportEquals","call","expression","isCallExpression","getText","arguments","isObjectLiteralExpression","err","return","rootOptions","Map","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","properties","_step1","option","isPropertyAssignment","has","set","initializer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","keys","_step2","name1","instancesNode","get","instances","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop","property","_step3","name2","some","instance","dir","scope","supportTables","seen","Set","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","option2","optionName","add","isArrayLiteralExpression","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","elements","_step12","table","push","isDirectory","_iterator3","length","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_loop1","_step4","duplicate","find","candidate","_iterator4","_source_parseDiagnostics","Boolean","parseDiagnostics","namespaceExportKinds","none","model","query","displayPath","console","warn","functions","exported","isVariableStatement","_statement_modifiers","isExported","modifiers","modifier","kind","SyntaxKind","ExportKeyword","declarationList","declarations","declaration","initializerText","isArrowFunction","isFunctionExpression","body","isFunctionDeclaration","_statement_modifiers1","visiting","reachesQuery","reachesQuery1","node","isPropertyAccessExpression","helper","found","delete","found1","forEachChild","mutationTable","namespace","schemaTable","firstArgument","isStringLiteralLike","v","visit","visit1","_ret","discoverNamespaces","instanceDirs","namespaces","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","queryPath","modelPath","aggregatePath","sourcePaths","folder","hasQueries","hasMutations","hasAggregates","includes","filter","path2","metadataPaths","paths","relations","databaseDir","relationTargets","factory","isParenthesizedExpression","tableProperty","_relations_get","tableRelations","relationProperty","tableColumns","columns","sources","flatMap","isVariableDeclaration","tableNames","foundColumns","inspect","inspect1","argument","test","names","map","_property_name","tableName"],"sources":["../../src/generate-layout.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["existsSync","readdirSync","statSync","basename","dirname","relative","resolve","sep","ts","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","name","endsWith","toImportPath","toImportPath2","baseDir","path","split","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","project","configPath","Error","source","sourceFile","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","value","isExportAssignment","isExportEquals","call","expression","isCallExpression","getText","arguments","isObjectLiteralExpression","err","return","rootOptions","Map","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","properties","_step1","option","isPropertyAssignment","has","set","initializer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","keys","_step2","name1","instancesNode","get","instances","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop","property","_step3","name2","some","instance","dir","scope","supportTables","seen","Set","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","option2","optionName","add","isArrayLiteralExpression","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","elements","_step12","table","push","isDirectory","_iterator3","length","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_loop1","_step4","duplicate","find","candidate","_iterator4","namespaceExportKinds","none","model","query","displayPath","console","warn","functions","exported","isVariableStatement","_statement_modifiers","isExported","modifiers","modifier","kind","SyntaxKind","ExportKeyword","declarationList","declarations","declaration","initializerText","isArrowFunction","isFunctionExpression","body","isFunctionDeclaration","_statement_modifiers1","visiting","reachesQuery","reachesQuery1","node","isPropertyAccessExpression","helper","found","delete","found1","forEachChild","mutationTable","namespace","schemaTable","firstArgument","v","visit","visit1","_ret","discoverNamespaces","instanceDirs","namespaces","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","queryPath","modelPath","aggregatePath","sourcePaths","folder","hasQueries","hasMutations","hasAggregates","includes","filter","path2","Boolean","metadataPaths","paths","relations","databaseDir","relationTargets","factory","isParenthesizedExpression","tableProperty","_relations_get","tableRelations","relationProperty","tableColumns","columns","sources","flatMap","isVariableDeclaration","tableNames","foundColumns","inspect","inspect1","argument","test","names","map","_property_name","isSpreadAssignment","tableName"],"sources":["../../src/generate-layout.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CRUD_MUTATION_NAMES, generateAggregatesFile, generateGroupedQueriesFile, generateInstancesFile, generateModelsFile, generateReadmeFile, generateSyncedMutationsFile, generateSyncedQueriesFile, generateTablesFile, generateTypesFile, parseColumnType, parseTypeString } from "./generate-helpers.mjs";
|
|
1
|
+
import { CRUD_MUTATION_NAMES, generateAggregatesFile, generateGroupedQueriesFile, generateInstancesFile, generateModelsFile, generateReadmeFile, generateSyncedMutationsFile, generateSyncedQueriesFile, generateTablesFile, generateTypesFile, parseColumnType, parseTypeString, renderDrizzleSchemaInputModule, renderDrizzleZeroSqliteSchemaModule } from "./generate-helpers.mjs";
|
|
2
2
|
function stripTrailingSlash(s) {
|
|
3
3
|
return s.endsWith("/") ? s.slice(0, -1) : s;
|
|
4
4
|
}
|
|
@@ -205,6 +205,7 @@ function generateLite(opts) {
|
|
|
205
205
|
aggregateTables.set(namespace.name, [...new Set(parsed.aggregateTables ?? [])]);
|
|
206
206
|
}
|
|
207
207
|
const relations = /* @__PURE__ */new Map();
|
|
208
|
+
const drizzleRelations = [];
|
|
208
209
|
const tableColumns = /* @__PURE__ */new Map();
|
|
209
210
|
for (const path of Object.keys(files).filter(path2 => path2.endsWith("/relations.ts") || /\/database\/(?:schema[^/]*|zeroSchemaInput)\.ts$/.test(path2))) {
|
|
210
211
|
const parsed = parse(files[path], path);
|
|
@@ -212,6 +213,7 @@ function generateLite(opts) {
|
|
|
212
213
|
const tableRelations = relations.get(relation.sourceTable) ?? /* @__PURE__ */new Map();
|
|
213
214
|
tableRelations.set(relation.name, relation.targetTable);
|
|
214
215
|
relations.set(relation.sourceTable, tableRelations);
|
|
216
|
+
drizzleRelations.push(relation);
|
|
215
217
|
}
|
|
216
218
|
for (const table of parsed.tables ?? []) {
|
|
217
219
|
tableColumns.set(table.name, new Set(table.columns));
|
|
@@ -450,6 +452,32 @@ function generateLite(opts) {
|
|
|
450
452
|
importPath: `../${relativePath(baseDir, namespace.aggregatePath).replace(/\.ts$/, "")}`
|
|
451
453
|
})));
|
|
452
454
|
}
|
|
455
|
+
const allTables = [...new Set(instances.flatMap(instance => [...(syncTables.get(instance.name) ?? []), ...(supportTables.get(instance.name) ?? [])]))].sort();
|
|
456
|
+
const hasDatabaseSchema = Object.keys(files).some(path => /\/database\/schema\.ts$/.test(path));
|
|
457
|
+
if (hasDatabaseSchema && allTables.length > 0) {
|
|
458
|
+
const included = new Set(allTables);
|
|
459
|
+
const relationTables = /* @__PURE__ */new Map();
|
|
460
|
+
for (const relation of drizzleRelations) {
|
|
461
|
+
if (!included.has(relation.sourceTable) || !included.has(relation.targetTable)) {
|
|
462
|
+
continue;
|
|
463
|
+
}
|
|
464
|
+
const properties = relationTables.get(relation.sourceTable) ?? [];
|
|
465
|
+
properties.push(relation.sourceText ?? `${relation.name}: r.many.${relation.targetTable}({})`);
|
|
466
|
+
relationTables.set(relation.sourceTable, properties);
|
|
467
|
+
}
|
|
468
|
+
out["drizzleSchema.ts"] = renderDrizzleSchemaInputModule({
|
|
469
|
+
schemaImportPath: "../../database/schema",
|
|
470
|
+
tableNames: allTables,
|
|
471
|
+
relationTables: [...relationTables.entries()].map(([key, properties]) => ({
|
|
472
|
+
key,
|
|
473
|
+
properties
|
|
474
|
+
}))
|
|
475
|
+
});
|
|
476
|
+
out["schema.ts"] = renderDrizzleZeroSqliteSchemaModule({
|
|
477
|
+
importPath: "./drizzleSchema",
|
|
478
|
+
tableNames: allTables
|
|
479
|
+
});
|
|
480
|
+
}
|
|
453
481
|
let mutationCount = 0;
|
|
454
482
|
for (const m of allModelMutations) {
|
|
455
483
|
if (m.hasCRUD) mutationCount += CRUD_MUTATION_NAMES.length;
|