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,5 +1,6 @@
1
- import { existsSync, readFileSync, readdirSync, statSync } from "fs";
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(ts, name) {
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(ts, baseDir, configPath) {
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 = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
34
- if (hasParseErrors(source)) throw new Error(`[on-zero] unable to parse ${path}`);
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(ts, option.name);
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(ts, property.name);
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(ts, option2.name);
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 hasParseErrors(source) {
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 = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
302
- if (hasParseErrors(source)) {
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
- ts.forEachChild(node, function (child) {
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(ts, path, namespace) {
414
- var source = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
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.isStringLiteralLike(firstArgument)) {
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.isStringLiteralLike(node.arguments[0])) {
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
- ts.forEachChild(node, visit);
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(ts, baseDir, instance, instanceDirs) {
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(ts, baseDir, path);
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(ts, path, name) : null,
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(ts, modelPath, entry.name) : null,
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(ts, paths) {
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 = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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(ts, paths, namespaces) {
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 = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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
- ts.forEachChild(candidate, inspect);
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
- ts.forEachChild(node, visit);
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(ts, namespace, relations) {
794
+ function queriedTables(project, namespace, relations) {
798
795
  if (!namespace.queryPath) return [];
799
- var source = ts.createSourceFile(namespace.queryPath, readFileSync(namespace.queryPath, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, function (child) {
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(ts, namespace) {
943
+ function aggregateTables(project, namespace) {
947
944
  if (!namespace.aggregatePath) return [];
948
- var source = ts.createSourceFile(namespace.aggregatePath, readFileSync(namespace.aggregatePath, "utf8"), ts.ScriptTarget.Latest, true);
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(ts, candidate.name) === fieldName;
988
+ return ts.isPropertyAssignment(candidate) && propertyName(candidate.name) === fieldName;
992
989
  });
993
- if (!field || !ts.isStringLiteralLike(unwrap(field.initializer))) {
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(ts, baseDir, sourceRoots, namespace) {
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 = ts.createSourceFile(path, readFileSync(path, "utf8"), ts.ScriptTarget.Latest, true);
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
- ts.forEachChild(node, visit);
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(ts, baseDir, configPath, instanceDirs) {
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(ts, baseDir, path);
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(ts, baseDir, configPath) {
1195
+ function discoverDataLayout(project, baseDir, configPath) {
1199
1196
  var _ref;
1200
- var config = readDataConfig(ts, baseDir, configPath);
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(ts, baseDir, config.path, configured.map(function (instance2) {
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(ts, baseDir, instance, instanceDirs);
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(ts, metadata);
1313
- var columns = tableColumns(ts, metadata, namespaces);
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(ts, namespace2)[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
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(ts, namespace2, relations)[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
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(ts, baseDir, sourceRoots, namespace3)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
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;