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,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
9
|
var __export = (target, all) => {
|
|
8
10
|
for (var name in all) __defProp(target, name, {
|
|
@@ -19,6 +21,15 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
19
21
|
}
|
|
20
22
|
return to;
|
|
21
23
|
};
|
|
24
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
26
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
27
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
+
value: mod,
|
|
31
|
+
enumerable: true
|
|
32
|
+
}) : target, mod));
|
|
22
33
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
34
|
value: true
|
|
24
35
|
}), mod);
|
|
@@ -30,6 +41,7 @@ __export(generate_layout_exports, {
|
|
|
30
41
|
module.exports = __toCommonJS(generate_layout_exports);
|
|
31
42
|
var import_fs = require("fs");
|
|
32
43
|
var import_path = require("path");
|
|
44
|
+
var ts = __toESM(require("typescript/unstable/ast"), 1);
|
|
33
45
|
function _type_of(obj) {
|
|
34
46
|
"@swc/helpers - typeof";
|
|
35
47
|
|
|
@@ -45,13 +57,13 @@ var isWithin = function isWithin2(root, path) {
|
|
|
45
57
|
var child = (0, import_path.relative)(root, path);
|
|
46
58
|
return child === "" || child !== ".." && !child.startsWith(`..${import_path.sep}`);
|
|
47
59
|
};
|
|
48
|
-
function propertyName(
|
|
60
|
+
function propertyName(name) {
|
|
49
61
|
if (ts.isIdentifier(name) || ts.isStringLiteral(name) || ts.isNumericLiteral(name)) {
|
|
50
62
|
return name.text;
|
|
51
63
|
}
|
|
52
64
|
return null;
|
|
53
65
|
}
|
|
54
|
-
function readDataConfig(
|
|
66
|
+
function readDataConfig(project, baseDir, configPath) {
|
|
55
67
|
var path = configPath ? (0, import_path.resolve)(configPath) : (0, import_path.resolve)(baseDir, "on-zero.config.ts");
|
|
56
68
|
if (!(0, import_fs.existsSync)(path)) {
|
|
57
69
|
if (configPath) throw new Error(`[on-zero] config file does not exist: ${path}`);
|
|
@@ -60,8 +72,8 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
60
72
|
if ((0, import_path.dirname)(path) !== baseDir) {
|
|
61
73
|
throw new Error(`[on-zero] ${path} must be at the data root ${baseDir}`);
|
|
62
74
|
}
|
|
63
|
-
var source =
|
|
64
|
-
if (hasParseErrors(
|
|
75
|
+
var source = project.sourceFile(path);
|
|
76
|
+
if (project.hasParseErrors(path)) throw new Error(`[on-zero] unable to parse ${path}`);
|
|
65
77
|
var config = null;
|
|
66
78
|
var _iteratorNormalCompletion = true,
|
|
67
79
|
_didIteratorError = false,
|
|
@@ -104,7 +116,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
104
116
|
if (!ts.isPropertyAssignment(option)) {
|
|
105
117
|
throw new Error(`[on-zero] ${path} options must use explicit property assignments`);
|
|
106
118
|
}
|
|
107
|
-
var name = propertyName(
|
|
119
|
+
var name = propertyName(option.name);
|
|
108
120
|
if (!name) throw new Error(`[on-zero] ${path} has an unsupported option name`);
|
|
109
121
|
if (rootOptions.has(name)) throw new Error(`[on-zero] ${path} repeats option '${name}'`);
|
|
110
122
|
rootOptions.set(name, option.initializer);
|
|
@@ -159,7 +171,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
159
171
|
if (!ts.isPropertyAssignment(property)) {
|
|
160
172
|
throw new Error(`[on-zero] ${path} instances must use explicit property assignments`);
|
|
161
173
|
}
|
|
162
|
-
var name2 = propertyName(
|
|
174
|
+
var name2 = propertyName(property.name);
|
|
163
175
|
if (!name2) throw new Error(`[on-zero] ${path} has an unsupported instance name`);
|
|
164
176
|
if (!ts.isObjectLiteralExpression(property.initializer)) {
|
|
165
177
|
throw new Error(`[on-zero] instance '${name2}' must be an object`);
|
|
@@ -182,7 +194,7 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
182
194
|
if (!ts.isPropertyAssignment(option2)) {
|
|
183
195
|
throw new Error(`[on-zero] instance '${name2}' options must be assignments`);
|
|
184
196
|
}
|
|
185
|
-
var optionName = propertyName(
|
|
197
|
+
var optionName = propertyName(option2.name);
|
|
186
198
|
if (!optionName) throw new Error(`[on-zero] instance '${name2}' has an invalid option`);
|
|
187
199
|
if (seen.has(optionName)) {
|
|
188
200
|
throw new Error(`[on-zero] instance '${name2}' repeats option '${optionName}'`);
|
|
@@ -319,17 +331,13 @@ function readDataConfig(ts, baseDir, configPath) {
|
|
|
319
331
|
instances
|
|
320
332
|
};
|
|
321
333
|
}
|
|
322
|
-
function
|
|
323
|
-
var _source_parseDiagnostics;
|
|
324
|
-
return Boolean((_source_parseDiagnostics = source.parseDiagnostics) === null || _source_parseDiagnostics === void 0 ? void 0 : _source_parseDiagnostics.length);
|
|
325
|
-
}
|
|
326
|
-
function namespaceExportKinds(ts, baseDir, path) {
|
|
334
|
+
function namespaceExportKinds(project, baseDir, path) {
|
|
327
335
|
var none = {
|
|
328
336
|
model: false,
|
|
329
337
|
query: false
|
|
330
338
|
};
|
|
331
|
-
var source =
|
|
332
|
-
if (hasParseErrors(
|
|
339
|
+
var source = project.sourceFile(path);
|
|
340
|
+
if (project.hasParseErrors(path)) {
|
|
333
341
|
var displayPath = (0, import_path.relative)((0, import_path.dirname)(baseDir), path).split(import_path.sep).join("/");
|
|
334
342
|
console.warn(`[on-zero] ignoring ${displayPath}: no recognized data exports`);
|
|
335
343
|
return none;
|
|
@@ -427,7 +435,7 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
427
435
|
}
|
|
428
436
|
}
|
|
429
437
|
var found1 = false;
|
|
430
|
-
|
|
438
|
+
node.forEachChild(function (child) {
|
|
431
439
|
if (!found1 && reachesQuery(child)) found1 = true;
|
|
432
440
|
});
|
|
433
441
|
return found1;
|
|
@@ -440,8 +448,8 @@ function namespaceExportKinds(ts, baseDir, path) {
|
|
|
440
448
|
query
|
|
441
449
|
};
|
|
442
450
|
}
|
|
443
|
-
function mutationTable(
|
|
444
|
-
var source =
|
|
451
|
+
function mutationTable(project, path, namespace) {
|
|
452
|
+
var source = project.sourceFile(path);
|
|
445
453
|
var schemaTable = null;
|
|
446
454
|
var _iteratorNormalCompletion = true,
|
|
447
455
|
_didIteratorError = false,
|
|
@@ -465,7 +473,7 @@ function mutationTable(ts, path, namespace) {
|
|
|
465
473
|
if (!ts.isIdentifier(declaration.name) || !declaration.initializer) return "continue";
|
|
466
474
|
if (declaration.name.text === "mutate" && ts.isCallExpression(declaration.initializer)) {
|
|
467
475
|
var firstArgument = declaration.initializer.arguments[0];
|
|
468
|
-
if (firstArgument && ts.
|
|
476
|
+
if (firstArgument && ts.isStringLiteral(firstArgument)) {
|
|
469
477
|
return {
|
|
470
478
|
v: firstArgument.text
|
|
471
479
|
};
|
|
@@ -473,11 +481,11 @@ function mutationTable(ts, path, namespace) {
|
|
|
473
481
|
}
|
|
474
482
|
if (declaration.name.text !== "schema") return "continue";
|
|
475
483
|
var visit = function visit1(node) {
|
|
476
|
-
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.
|
|
484
|
+
if (ts.isCallExpression(node) && node.expression.getText(source) === "table" && node.arguments[0] && ts.isStringLiteral(node.arguments[0])) {
|
|
477
485
|
schemaTable = node.arguments[0].text;
|
|
478
486
|
return;
|
|
479
487
|
}
|
|
480
|
-
|
|
488
|
+
node.forEachChild(visit);
|
|
481
489
|
};
|
|
482
490
|
visit(declaration.initializer);
|
|
483
491
|
};
|
|
@@ -516,7 +524,7 @@ function mutationTable(ts, path, namespace) {
|
|
|
516
524
|
}
|
|
517
525
|
return schemaTable !== null && schemaTable !== void 0 ? schemaTable : namespace;
|
|
518
526
|
}
|
|
519
|
-
function discoverNamespaces(
|
|
527
|
+
function discoverNamespaces(project, baseDir, instance, instanceDirs) {
|
|
520
528
|
var namespaces = [];
|
|
521
529
|
var _iteratorNormalCompletion = true,
|
|
522
530
|
_didIteratorError = false,
|
|
@@ -531,7 +539,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
531
539
|
if (entry.isFile()) {
|
|
532
540
|
if (!isSourceFile(entry.name) || entry.name === "on-zero.config.ts") continue;
|
|
533
541
|
var path = (0, import_path.resolve)(instance.dir, entry.name);
|
|
534
|
-
var kinds = namespaceExportKinds(
|
|
542
|
+
var kinds = namespaceExportKinds(project, baseDir, path);
|
|
535
543
|
if (!kinds.model && !kinds.query) continue;
|
|
536
544
|
var name = (0, import_path.basename)(entry.name, ".ts");
|
|
537
545
|
namespaces.push({
|
|
@@ -542,7 +550,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
542
550
|
// missing mutations.ts leaves modelPath null
|
|
543
551
|
modelPath: kinds.model ? path : null,
|
|
544
552
|
aggregatePath: null,
|
|
545
|
-
table: kinds.model ? mutationTable(
|
|
553
|
+
table: kinds.model ? mutationTable(project, path, name) : null,
|
|
546
554
|
sourcePaths: [path]
|
|
547
555
|
});
|
|
548
556
|
continue;
|
|
@@ -568,7 +576,7 @@ function discoverNamespaces(ts, baseDir, instance, instanceDirs) {
|
|
|
568
576
|
queryPath: hasQueries ? queryPath : null,
|
|
569
577
|
modelPath: hasMutations ? modelPath : null,
|
|
570
578
|
aggregatePath: hasAggregates ? aggregatePath : null,
|
|
571
|
-
table: hasMutations ? mutationTable(
|
|
579
|
+
table: hasMutations ? mutationTable(project, modelPath, entry.name) : null,
|
|
572
580
|
sourcePaths: [hasQueries && queryPath, hasMutations && modelPath, hasAggregates && aggregatePath].filter(function (path2) {
|
|
573
581
|
return Boolean(path2);
|
|
574
582
|
})
|
|
@@ -625,7 +633,7 @@ function metadataPaths(baseDir) {
|
|
|
625
633
|
}
|
|
626
634
|
return paths.sort();
|
|
627
635
|
}
|
|
628
|
-
function relationTargets(
|
|
636
|
+
function relationTargets(project, paths) {
|
|
629
637
|
var relations = /* @__PURE__ */new Map();
|
|
630
638
|
var _iteratorNormalCompletion = true,
|
|
631
639
|
_didIteratorError = false,
|
|
@@ -633,10 +641,10 @@ function relationTargets(ts, paths) {
|
|
|
633
641
|
try {
|
|
634
642
|
var _loop = function () {
|
|
635
643
|
var path = _step.value;
|
|
636
|
-
var source =
|
|
644
|
+
var source = project.sourceFile(path);
|
|
637
645
|
var visit = function visit1(node) {
|
|
638
646
|
if (!ts.isCallExpression(node) || node.expression.getText(source) !== "defineRelations") {
|
|
639
|
-
|
|
647
|
+
node.forEachChild(visit);
|
|
640
648
|
return;
|
|
641
649
|
}
|
|
642
650
|
var factory = node.arguments[1];
|
|
@@ -721,7 +729,7 @@ function relationTargets(ts, paths) {
|
|
|
721
729
|
}
|
|
722
730
|
return relations;
|
|
723
731
|
}
|
|
724
|
-
function tableColumns(
|
|
732
|
+
function tableColumns(project, paths, namespaces) {
|
|
725
733
|
var columns = /* @__PURE__ */new Map();
|
|
726
734
|
var sources = /* @__PURE__ */new Set([...paths, ...namespaces.flatMap(function (namespace) {
|
|
727
735
|
return namespace.sourcePaths;
|
|
@@ -732,17 +740,17 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
732
740
|
try {
|
|
733
741
|
var _loop = function () {
|
|
734
742
|
var path = _step.value;
|
|
735
|
-
var source =
|
|
743
|
+
var source = project.sourceFile(path);
|
|
736
744
|
var visit = function visit1(node) {
|
|
737
745
|
if (!ts.isVariableDeclaration(node) || !ts.isIdentifier(node.name) || !node.initializer) {
|
|
738
|
-
|
|
746
|
+
node.forEachChild(visit);
|
|
739
747
|
return;
|
|
740
748
|
}
|
|
741
749
|
var tableNames = /* @__PURE__ */new Set([node.name.text]);
|
|
742
750
|
var foundColumns = null;
|
|
743
751
|
var inspect = function inspect1(candidate) {
|
|
744
752
|
if (!ts.isCallExpression(candidate)) {
|
|
745
|
-
|
|
753
|
+
candidate.forEachChild(inspect);
|
|
746
754
|
return;
|
|
747
755
|
}
|
|
748
756
|
var _iteratorNormalCompletion3 = true,
|
|
@@ -776,7 +784,7 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
776
784
|
if (foundColumns) {
|
|
777
785
|
var names = new Set(foundColumns.properties.map(function (property) {
|
|
778
786
|
var _property_name;
|
|
779
|
-
return (_property_name = property.name) === null || _property_name === void 0 ? void 0 : _property_name.getText(source).replace(/^['"]|['"]$/g, "");
|
|
787
|
+
return ts.isSpreadAssignment(property) ? null : (_property_name = property.name) === null || _property_name === void 0 ? void 0 : _property_name.getText(source).replace(/^['"]|['"]$/g, "");
|
|
780
788
|
}).filter(function (name) {
|
|
781
789
|
return Boolean(name);
|
|
782
790
|
}));
|
|
@@ -803,7 +811,7 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
803
811
|
}
|
|
804
812
|
}
|
|
805
813
|
}
|
|
806
|
-
|
|
814
|
+
node.forEachChild(visit);
|
|
807
815
|
};
|
|
808
816
|
visit(source);
|
|
809
817
|
};
|
|
@@ -824,9 +832,9 @@ function tableColumns(ts, paths, namespaces) {
|
|
|
824
832
|
}
|
|
825
833
|
return columns;
|
|
826
834
|
}
|
|
827
|
-
function queriedTables(
|
|
835
|
+
function queriedTables(project, namespace, relations) {
|
|
828
836
|
if (!namespace.queryPath) return [];
|
|
829
|
-
var source =
|
|
837
|
+
var source = project.sourceFile(namespace.queryPath);
|
|
830
838
|
var reached = [];
|
|
831
839
|
var functions = /* @__PURE__ */new Map();
|
|
832
840
|
var exported = /* @__PURE__ */new Set();
|
|
@@ -937,7 +945,7 @@ function queriedTables(ts, namespace, relations) {
|
|
|
937
945
|
visiting.delete(key);
|
|
938
946
|
}
|
|
939
947
|
}
|
|
940
|
-
|
|
948
|
+
node.forEachChild(function (child) {
|
|
941
949
|
return visit(child, currentTable, query);
|
|
942
950
|
});
|
|
943
951
|
};
|
|
@@ -973,9 +981,9 @@ function queriedTables(ts, namespace, relations) {
|
|
|
973
981
|
}
|
|
974
982
|
return reached;
|
|
975
983
|
}
|
|
976
|
-
function aggregateTables(
|
|
984
|
+
function aggregateTables(project, namespace) {
|
|
977
985
|
if (!namespace.aggregatePath) return [];
|
|
978
|
-
var source =
|
|
986
|
+
var source = project.sourceFile(namespace.aggregatePath);
|
|
979
987
|
var unwrap = function unwrap2(node) {
|
|
980
988
|
var current = node;
|
|
981
989
|
while (ts.isSatisfiesExpression(current) || ts.isAsExpression(current) || ts.isParenthesizedExpression(current)) {
|
|
@@ -1018,9 +1026,9 @@ function aggregateTables(ts, namespace) {
|
|
|
1018
1026
|
var _loop = function (_i2, _iter2) {
|
|
1019
1027
|
var fieldName = _iter2[_i2];
|
|
1020
1028
|
var field = definition.properties.find(function (candidate) {
|
|
1021
|
-
return ts.isPropertyAssignment(candidate) && propertyName(
|
|
1029
|
+
return ts.isPropertyAssignment(candidate) && propertyName(candidate.name) === fieldName;
|
|
1022
1030
|
});
|
|
1023
|
-
if (!field || !ts.
|
|
1031
|
+
if (!field || !ts.isStringLiteral(unwrap(field.initializer))) {
|
|
1024
1032
|
throw new Error(`[on-zero] ${namespace.aggregatePath} aggregate ${property.name.getText(source)} ${fieldName} must be a string literal`);
|
|
1025
1033
|
}
|
|
1026
1034
|
tables.add(unwrap(field.initializer).text);
|
|
@@ -1081,14 +1089,14 @@ function aggregateTables(ts, namespace) {
|
|
|
1081
1089
|
}
|
|
1082
1090
|
return [...tables].sort();
|
|
1083
1091
|
}
|
|
1084
|
-
function mutationSupportTables(
|
|
1092
|
+
function mutationSupportTables(project, baseDir, sourceRoots, namespace) {
|
|
1085
1093
|
if (!namespace.modelPath) return [];
|
|
1086
1094
|
var tables = /* @__PURE__ */new Set();
|
|
1087
1095
|
var visited = /* @__PURE__ */new Set();
|
|
1088
1096
|
var scan = function scan1(path) {
|
|
1089
1097
|
if (visited.has(path)) return;
|
|
1090
1098
|
visited.add(path);
|
|
1091
|
-
var source =
|
|
1099
|
+
var source = project.sourceFile(path);
|
|
1092
1100
|
var visit = function visit1(node) {
|
|
1093
1101
|
if (ts.isPropertyAccessExpression(node) && ts.isPropertyAccessExpression(node.expression) && ["mutate", "query"].includes(node.expression.name.text)) {
|
|
1094
1102
|
var transaction = node.expression.expression;
|
|
@@ -1115,7 +1123,7 @@ function mutationSupportTables(ts, baseDir, sourceRoots, namespace) {
|
|
|
1115
1123
|
}
|
|
1116
1124
|
}
|
|
1117
1125
|
}
|
|
1118
|
-
|
|
1126
|
+
node.forEachChild(visit);
|
|
1119
1127
|
};
|
|
1120
1128
|
visit(source);
|
|
1121
1129
|
};
|
|
@@ -1181,7 +1189,7 @@ function assertNoInstanceFiles(roots) {
|
|
|
1181
1189
|
}
|
|
1182
1190
|
}
|
|
1183
1191
|
}
|
|
1184
|
-
function assertNoUnclaimedNamespaces(
|
|
1192
|
+
function assertNoUnclaimedNamespaces(project, baseDir, configPath, instanceDirs) {
|
|
1185
1193
|
var walk = function walk1(dir) {
|
|
1186
1194
|
if (instanceDirs.some(function (instanceDir) {
|
|
1187
1195
|
return isWithin(instanceDir, dir);
|
|
@@ -1203,7 +1211,7 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
1203
1211
|
if (!entry.isFile() || !isSourceFile(entry.name) || path === configPath || entry.name === "instance.ts") {
|
|
1204
1212
|
continue;
|
|
1205
1213
|
}
|
|
1206
|
-
var kinds = namespaceExportKinds(
|
|
1214
|
+
var kinds = namespaceExportKinds(project, baseDir, path);
|
|
1207
1215
|
if (kinds.model || kinds.query) {
|
|
1208
1216
|
throw new Error(`[on-zero] data namespace ${path} is outside every instance directory declared in ${configPath}`);
|
|
1209
1217
|
}
|
|
@@ -1225,9 +1233,9 @@ function assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {
|
|
|
1225
1233
|
};
|
|
1226
1234
|
walk(baseDir);
|
|
1227
1235
|
}
|
|
1228
|
-
function discoverDataLayout(
|
|
1236
|
+
function discoverDataLayout(project, baseDir, configPath) {
|
|
1229
1237
|
var _ref;
|
|
1230
|
-
var config = readDataConfig(
|
|
1238
|
+
var config = readDataConfig(project, baseDir, configPath);
|
|
1231
1239
|
var configured = (_ref = config === null || config === void 0 ? void 0 : config.instances) !== null && _ref !== void 0 ? _ref : [{
|
|
1232
1240
|
name: "default",
|
|
1233
1241
|
dir: baseDir,
|
|
@@ -1239,7 +1247,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1239
1247
|
})])];
|
|
1240
1248
|
assertNoInstanceFiles(sourceRoots);
|
|
1241
1249
|
if (config) {
|
|
1242
|
-
assertNoUnclaimedNamespaces(
|
|
1250
|
+
assertNoUnclaimedNamespaces(project, baseDir, config.path, configured.map(function (instance2) {
|
|
1243
1251
|
return instance2.dir;
|
|
1244
1252
|
}));
|
|
1245
1253
|
}
|
|
@@ -1264,7 +1272,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1264
1272
|
try {
|
|
1265
1273
|
for (var _iterator = instances[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
1266
1274
|
var instance = _step.value;
|
|
1267
|
-
instance.namespaces = discoverNamespaces(
|
|
1275
|
+
instance.namespaces = discoverNamespaces(project, baseDir, instance, instanceDirs);
|
|
1268
1276
|
}
|
|
1269
1277
|
} catch (err) {
|
|
1270
1278
|
_didIteratorError = true;
|
|
@@ -1339,8 +1347,8 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1339
1347
|
}
|
|
1340
1348
|
}
|
|
1341
1349
|
var metadata = metadataPaths(baseDir);
|
|
1342
|
-
var relations = relationTargets(
|
|
1343
|
-
var columns = tableColumns(
|
|
1350
|
+
var relations = relationTargets(project, metadata);
|
|
1351
|
+
var columns = tableColumns(project, metadata, namespaces);
|
|
1344
1352
|
var relatedOwners = /* @__PURE__ */new Map();
|
|
1345
1353
|
var _iteratorNormalCompletion3 = true,
|
|
1346
1354
|
_didIteratorError3 = false,
|
|
@@ -1364,7 +1372,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1364
1372
|
_didIteratorError5 = false,
|
|
1365
1373
|
_iteratorError5 = void 0;
|
|
1366
1374
|
try {
|
|
1367
|
-
for (var _iterator5 = aggregateTables(
|
|
1375
|
+
for (var _iterator5 = aggregateTables(project, namespace2)[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
1368
1376
|
var table = _step5.value;
|
|
1369
1377
|
var _tableOwners_get;
|
|
1370
1378
|
var owner2 = (_tableOwners_get = tableOwners.get(table)) !== null && _tableOwners_get !== void 0 ? _tableOwners_get : relatedOwners.get(table);
|
|
@@ -1393,7 +1401,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1393
1401
|
_didIteratorError6 = false,
|
|
1394
1402
|
_iteratorError6 = void 0;
|
|
1395
1403
|
try {
|
|
1396
|
-
for (var _iterator6 = queriedTables(
|
|
1404
|
+
for (var _iterator6 = queriedTables(project, namespace2, relations)[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
1397
1405
|
var reached = _step6.value;
|
|
1398
1406
|
var _tableOwners_get1;
|
|
1399
1407
|
var owner3 = (_tableOwners_get1 = tableOwners.get(reached.table)) !== null && _tableOwners_get1 !== void 0 ? _tableOwners_get1 : relatedOwners.get(reached.table);
|
|
@@ -1494,7 +1502,7 @@ function discoverDataLayout(ts, baseDir, configPath) {
|
|
|
1494
1502
|
_didIteratorError12 = false,
|
|
1495
1503
|
_iteratorError12 = void 0;
|
|
1496
1504
|
try {
|
|
1497
|
-
for (var _iterator12 = mutationSupportTables(
|
|
1505
|
+
for (var _iterator12 = mutationSupportTables(project, baseDir, sourceRoots, namespace3)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
1498
1506
|
var table2 = _step12.value;
|
|
1499
1507
|
if (tableOwners.has(table2) || relatedOwners.has(table2)) continue;
|
|
1500
1508
|
if (!instance2.syncTables.includes(table2)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_layout_exports","__export","discoverDataLayout","namespaceImportPath","module","exports","import_fs","require","import_path","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","name","endsWith","toImportPath","toImportPath2","baseDir","path","relative","split","sep","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","ts","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","configPath","resolve","existsSync","Error","dirname","source","createSourceFile","readFileSync","ScriptTarget","Latest","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","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","statSync","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","readdirSync","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","basename","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":["__toCommonJS","mod","__copyProps","__defProp","value","generate_layout_exports","__export","discoverDataLayout","namespaceImportPath","module","exports","import_fs","require","import_path","ts","__toESM","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","name","endsWith","toImportPath","toImportPath2","baseDir","path","relative","split","sep","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","project","configPath","resolve","existsSync","Error","dirname","source","sourceFile","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","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","statSync","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","readdirSync","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","basename","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":[]}
|
|
@@ -232,6 +232,7 @@ function generateLite(opts) {
|
|
|
232
232
|
aggregateTables.set(namespace.name, [...new Set(parsed.aggregateTables ?? [])]);
|
|
233
233
|
}
|
|
234
234
|
const relations = /* @__PURE__ */new Map();
|
|
235
|
+
const drizzleRelations = [];
|
|
235
236
|
const tableColumns = /* @__PURE__ */new Map();
|
|
236
237
|
for (const path of Object.keys(files).filter(path2 => path2.endsWith("/relations.ts") || /\/database\/(?:schema[^/]*|zeroSchemaInput)\.ts$/.test(path2))) {
|
|
237
238
|
const parsed = parse(files[path], path);
|
|
@@ -239,6 +240,7 @@ function generateLite(opts) {
|
|
|
239
240
|
const tableRelations = relations.get(relation.sourceTable) ?? /* @__PURE__ */new Map();
|
|
240
241
|
tableRelations.set(relation.name, relation.targetTable);
|
|
241
242
|
relations.set(relation.sourceTable, tableRelations);
|
|
243
|
+
drizzleRelations.push(relation);
|
|
242
244
|
}
|
|
243
245
|
for (const table of parsed.tables ?? []) {
|
|
244
246
|
tableColumns.set(table.name, new Set(table.columns));
|
|
@@ -477,6 +479,32 @@ function generateLite(opts) {
|
|
|
477
479
|
importPath: `../${relativePath(baseDir, namespace.aggregatePath).replace(/\.ts$/, "")}`
|
|
478
480
|
})));
|
|
479
481
|
}
|
|
482
|
+
const allTables = [...new Set(instances.flatMap(instance => [...(syncTables.get(instance.name) ?? []), ...(supportTables.get(instance.name) ?? [])]))].sort();
|
|
483
|
+
const hasDatabaseSchema = Object.keys(files).some(path => /\/database\/schema\.ts$/.test(path));
|
|
484
|
+
if (hasDatabaseSchema && allTables.length > 0) {
|
|
485
|
+
const included = new Set(allTables);
|
|
486
|
+
const relationTables = /* @__PURE__ */new Map();
|
|
487
|
+
for (const relation of drizzleRelations) {
|
|
488
|
+
if (!included.has(relation.sourceTable) || !included.has(relation.targetTable)) {
|
|
489
|
+
continue;
|
|
490
|
+
}
|
|
491
|
+
const properties = relationTables.get(relation.sourceTable) ?? [];
|
|
492
|
+
properties.push(relation.sourceText ?? `${relation.name}: r.many.${relation.targetTable}({})`);
|
|
493
|
+
relationTables.set(relation.sourceTable, properties);
|
|
494
|
+
}
|
|
495
|
+
out["drizzleSchema.ts"] = (0, import_generate_helpers.renderDrizzleSchemaInputModule)({
|
|
496
|
+
schemaImportPath: "../../database/schema",
|
|
497
|
+
tableNames: allTables,
|
|
498
|
+
relationTables: [...relationTables.entries()].map(([key, properties]) => ({
|
|
499
|
+
key,
|
|
500
|
+
properties
|
|
501
|
+
}))
|
|
502
|
+
});
|
|
503
|
+
out["schema.ts"] = (0, import_generate_helpers.renderDrizzleZeroSqliteSchemaModule)({
|
|
504
|
+
importPath: "./drizzleSchema",
|
|
505
|
+
tableNames: allTables
|
|
506
|
+
});
|
|
507
|
+
}
|
|
480
508
|
let mutationCount = 0;
|
|
481
509
|
for (const m of allModelMutations) {
|
|
482
510
|
if (m.hasCRUD) mutationCount += import_generate_helpers.CRUD_MUTATION_NAMES.length;
|