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.
Files changed (110) hide show
  1. package/dist/cjs/createZeroClient.cjs +44 -11
  2. package/dist/cjs/createZeroClient.native.js +54 -17
  3. package/dist/cjs/createZeroClient.native.js.map +1 -1
  4. package/dist/cjs/createZeroClient.recovery.test.cjs +49 -0
  5. package/dist/cjs/createZeroClient.recovery.test.native.js +53 -0
  6. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  7. package/dist/cjs/generate-helpers.cjs +28 -0
  8. package/dist/cjs/generate-helpers.native.js +36 -0
  9. package/dist/cjs/generate-helpers.native.js.map +1 -1
  10. package/dist/cjs/generate-layout.cjs +62 -53
  11. package/dist/cjs/generate-layout.native.js +62 -54
  12. package/dist/cjs/generate-layout.native.js.map +1 -1
  13. package/dist/cjs/generate-lite.cjs +28 -0
  14. package/dist/cjs/generate-lite.native.js +89 -33
  15. package/dist/cjs/generate-lite.native.js.map +1 -1
  16. package/dist/cjs/generate-lite.test.cjs +46 -0
  17. package/dist/cjs/generate-lite.test.native.js +46 -0
  18. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  19. package/dist/cjs/generate.cjs +237 -243
  20. package/dist/cjs/generate.native.js +352 -353
  21. package/dist/cjs/generate.native.js.map +1 -1
  22. package/dist/cjs/generate.test.cjs +35 -0
  23. package/dist/cjs/generate.test.native.js +35 -0
  24. package/dist/cjs/generate.test.native.js.map +1 -1
  25. package/dist/cjs/helpers/createMutators.cjs +2 -1
  26. package/dist/cjs/helpers/createMutators.native.js +3 -1
  27. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  28. package/dist/cjs/helpers/recoverZeroClient.cjs +8 -2
  29. package/dist/cjs/helpers/recoverZeroClient.native.js +10 -2
  30. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  31. package/dist/cjs/helpers/recoverZeroClient.test.cjs +53 -0
  32. package/dist/cjs/helpers/recoverZeroClient.test.native.js +55 -0
  33. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  34. package/dist/cjs/native-typescript.cjs +190 -0
  35. package/dist/cjs/native-typescript.native.js +255 -0
  36. package/dist/cjs/native-typescript.native.js.map +1 -0
  37. package/dist/esm/createZeroClient.mjs +44 -11
  38. package/dist/esm/createZeroClient.mjs.map +1 -1
  39. package/dist/esm/createZeroClient.native.js +54 -17
  40. package/dist/esm/createZeroClient.native.js.map +1 -1
  41. package/dist/esm/createZeroClient.recovery.test.mjs +50 -1
  42. package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
  43. package/dist/esm/createZeroClient.recovery.test.native.js +54 -1
  44. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  45. package/dist/esm/generate-helpers.mjs +27 -1
  46. package/dist/esm/generate-helpers.mjs.map +1 -1
  47. package/dist/esm/generate-helpers.native.js +35 -1
  48. package/dist/esm/generate-helpers.native.js.map +1 -1
  49. package/dist/esm/generate-layout.mjs +52 -54
  50. package/dist/esm/generate-layout.mjs.map +1 -1
  51. package/dist/esm/generate-layout.native.js +52 -55
  52. package/dist/esm/generate-layout.native.js.map +1 -1
  53. package/dist/esm/generate-lite.mjs +29 -1
  54. package/dist/esm/generate-lite.mjs.map +1 -1
  55. package/dist/esm/generate-lite.native.js +90 -34
  56. package/dist/esm/generate-lite.native.js.map +1 -1
  57. package/dist/esm/generate-lite.test.mjs +46 -0
  58. package/dist/esm/generate-lite.test.mjs.map +1 -1
  59. package/dist/esm/generate-lite.test.native.js +46 -0
  60. package/dist/esm/generate-lite.test.native.js.map +1 -1
  61. package/dist/esm/generate.mjs +238 -244
  62. package/dist/esm/generate.mjs.map +1 -1
  63. package/dist/esm/generate.native.js +353 -354
  64. package/dist/esm/generate.native.js.map +1 -1
  65. package/dist/esm/generate.test.mjs +35 -0
  66. package/dist/esm/generate.test.mjs.map +1 -1
  67. package/dist/esm/generate.test.native.js +35 -0
  68. package/dist/esm/generate.test.native.js.map +1 -1
  69. package/dist/esm/helpers/createMutators.mjs +2 -1
  70. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  71. package/dist/esm/helpers/createMutators.native.js +3 -1
  72. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  73. package/dist/esm/helpers/recoverZeroClient.mjs +8 -2
  74. package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -1
  75. package/dist/esm/helpers/recoverZeroClient.native.js +10 -2
  76. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
  77. package/dist/esm/helpers/recoverZeroClient.test.mjs +53 -0
  78. package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -1
  79. package/dist/esm/helpers/recoverZeroClient.test.native.js +55 -0
  80. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
  81. package/dist/esm/index.native.js.map +1 -1
  82. package/dist/esm/native-typescript.mjs +164 -0
  83. package/dist/esm/native-typescript.mjs.map +1 -0
  84. package/dist/esm/native-typescript.native.js +226 -0
  85. package/dist/esm/native-typescript.native.js.map +1 -0
  86. package/package.json +4 -3
  87. package/src/createZeroClient.recovery.test.tsx +56 -1
  88. package/src/createZeroClient.tsx +54 -15
  89. package/src/generate-helpers.ts +79 -0
  90. package/src/generate-layout.ts +64 -108
  91. package/src/generate-lite.test.ts +49 -0
  92. package/src/generate-lite.ts +44 -0
  93. package/src/generate.test.ts +52 -0
  94. package/src/generate.ts +313 -366
  95. package/src/helpers/createMutators.ts +14 -3
  96. package/src/helpers/recoverZeroClient.test.ts +50 -0
  97. package/src/helpers/recoverZeroClient.ts +12 -2
  98. package/src/native-typescript.ts +176 -0
  99. package/types/createZeroClient.d.ts.map +1 -1
  100. package/types/generate-helpers.d.ts +13 -0
  101. package/types/generate-helpers.d.ts.map +1 -1
  102. package/types/generate-layout.d.ts +2 -1
  103. package/types/generate-layout.d.ts.map +1 -1
  104. package/types/generate-lite.d.ts +1 -0
  105. package/types/generate-lite.d.ts.map +1 -1
  106. package/types/generate.d.ts.map +1 -1
  107. package/types/helpers/createMutators.d.ts.map +1 -1
  108. package/types/helpers/recoverZeroClient.d.ts.map +1 -1
  109. package/types/native-typescript.d.ts +11 -0
  110. 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(ts, name) {
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(ts, baseDir, configPath) {
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 = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
64
- if (hasParseErrors(source)) throw new Error(`[on-zero] unable to parse ${path}`);
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(ts, option.name);
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(ts, property.name);
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(ts, option2.name);
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 hasParseErrors(source) {
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 = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
332
- if (hasParseErrors(source)) {
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
- ts.forEachChild(node, function (child) {
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(ts, path, namespace) {
444
- var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
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.isStringLiteralLike(firstArgument)) {
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.isStringLiteralLike(node.arguments[0])) {
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
- ts.forEachChild(node, visit);
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(ts, baseDir, instance, instanceDirs) {
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(ts, baseDir, path);
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(ts, path, name) : null,
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(ts, modelPath, entry.name) : null,
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(ts, paths) {
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 = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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(ts, paths, namespaces) {
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 = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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
- ts.forEachChild(candidate, inspect);
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
- ts.forEachChild(node, visit);
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(ts, namespace, relations) {
835
+ function queriedTables(project, namespace, relations) {
828
836
  if (!namespace.queryPath) return [];
829
- var source = ts.createSourceFile(namespace.queryPath, (0, import_fs.readFileSync)(namespace.queryPath, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, function (child) {
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(ts, namespace) {
984
+ function aggregateTables(project, namespace) {
977
985
  if (!namespace.aggregatePath) return [];
978
- var source = ts.createSourceFile(namespace.aggregatePath, (0, import_fs.readFileSync)(namespace.aggregatePath, "utf8"), ts.ScriptTarget.Latest, true);
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(ts, candidate.name) === fieldName;
1029
+ return ts.isPropertyAssignment(candidate) && propertyName(candidate.name) === fieldName;
1022
1030
  });
1023
- if (!field || !ts.isStringLiteralLike(unwrap(field.initializer))) {
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(ts, baseDir, sourceRoots, namespace) {
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 = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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(ts, baseDir, configPath, instanceDirs) {
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(ts, baseDir, path);
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(ts, baseDir, configPath) {
1236
+ function discoverDataLayout(project, baseDir, configPath) {
1229
1237
  var _ref;
1230
- var config = readDataConfig(ts, baseDir, configPath);
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(ts, baseDir, config.path, configured.map(function (instance2) {
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(ts, baseDir, instance, instanceDirs);
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(ts, metadata);
1343
- var columns = tableColumns(ts, metadata, namespaces);
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(ts, namespace2)[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
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(ts, namespace2, relations)[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
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(ts, baseDir, sourceRoots, namespace3)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
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;