pocketbase-zod-schema 0.3.1 → 0.3.2

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 (56) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cli/index.cjs +36 -32
  3. package/dist/cli/index.cjs.map +1 -1
  4. package/dist/cli/index.d.cts +2 -2
  5. package/dist/cli/index.d.ts +2 -2
  6. package/dist/cli/index.js +36 -32
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/migrate.cjs +36 -32
  9. package/dist/cli/migrate.cjs.map +1 -1
  10. package/dist/cli/migrate.js +36 -32
  11. package/dist/cli/migrate.js.map +1 -1
  12. package/dist/cli/utils/index.d.cts +2 -2
  13. package/dist/cli/utils/index.d.ts +2 -2
  14. package/dist/{fields-RVj26U-O.d.cts → fields-DBBm06VU.d.cts} +34 -7
  15. package/dist/{fields-RVj26U-O.d.ts → fields-DBBm06VU.d.ts} +34 -7
  16. package/dist/index.cjs +125 -66
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.d.cts +3 -3
  19. package/dist/index.d.ts +3 -3
  20. package/dist/index.js +125 -66
  21. package/dist/index.js.map +1 -1
  22. package/dist/migration/analyzer.cjs.map +1 -1
  23. package/dist/migration/analyzer.d.cts +2 -2
  24. package/dist/migration/analyzer.d.ts +2 -2
  25. package/dist/migration/analyzer.js.map +1 -1
  26. package/dist/migration/diff.d.cts +2 -2
  27. package/dist/migration/diff.d.ts +2 -2
  28. package/dist/migration/generator.cjs +70 -60
  29. package/dist/migration/generator.cjs.map +1 -1
  30. package/dist/migration/generator.d.cts +2 -2
  31. package/dist/migration/generator.d.ts +2 -2
  32. package/dist/migration/generator.js +70 -60
  33. package/dist/migration/generator.js.map +1 -1
  34. package/dist/migration/index.cjs +70 -60
  35. package/dist/migration/index.cjs.map +1 -1
  36. package/dist/migration/index.d.cts +3 -3
  37. package/dist/migration/index.d.ts +3 -3
  38. package/dist/migration/index.js +70 -60
  39. package/dist/migration/index.js.map +1 -1
  40. package/dist/migration/snapshot.d.cts +2 -2
  41. package/dist/migration/snapshot.d.ts +2 -2
  42. package/dist/migration/utils/index.cjs.map +1 -1
  43. package/dist/migration/utils/index.d.cts +2 -2
  44. package/dist/migration/utils/index.d.ts +2 -2
  45. package/dist/migration/utils/index.js.map +1 -1
  46. package/dist/schema.cjs +55 -6
  47. package/dist/schema.cjs.map +1 -1
  48. package/dist/schema.d.cts +1 -1
  49. package/dist/schema.d.ts +1 -1
  50. package/dist/schema.js +55 -6
  51. package/dist/schema.js.map +1 -1
  52. package/dist/{type-mapper-DaBe-1ph.d.cts → type-mapper-DsGgZwUo.d.cts} +1 -1
  53. package/dist/{type-mapper-CZzVeDj7.d.ts → type-mapper-Dvh4QTM-.d.ts} +1 -1
  54. package/dist/{types-D-Fsdn_O.d.cts → types-CVxPCgWX.d.cts} +1 -1
  55. package/dist/{types-CUVzgZ9k.d.ts → types-Dfp-NP2D.d.ts} +1 -1
  56. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import { e as SchemaDiff, C as CollectionSchema, F as FieldDefinition, c as FieldModification, f as CollectionOperation } from '../types-D-Fsdn_O.cjs';
2
- import '../fields-RVj26U-O.cjs';
1
+ import { e as SchemaDiff, C as CollectionSchema, F as FieldDefinition, c as FieldModification, f as CollectionOperation } from '../types-CVxPCgWX.cjs';
2
+ import '../fields-DBBm06VU.cjs';
3
3
  import 'zod';
4
4
  import '../permissions-ZHafVSIx.cjs';
5
5
 
@@ -1,5 +1,5 @@
1
- import { e as SchemaDiff, C as CollectionSchema, F as FieldDefinition, c as FieldModification, f as CollectionOperation } from '../types-CUVzgZ9k.js';
2
- import '../fields-RVj26U-O.js';
1
+ import { e as SchemaDiff, C as CollectionSchema, F as FieldDefinition, c as FieldModification, f as CollectionOperation } from '../types-Dfp-NP2D.js';
2
+ import '../fields-DBBm06VU.js';
3
3
  import 'zod';
4
4
  import '../permissions-ZHafVSIx.js';
5
5
 
@@ -273,7 +273,7 @@ function formatValue(value) {
273
273
  return JSON.stringify(value).replace(/","/g, '", "');
274
274
  }
275
275
  if (typeof value === "object") {
276
- const entries = Object.entries(value).map(([k, v]) => `${k}: ${formatValue(v)}`).join(", ");
276
+ const entries = Object.entries(value).filter(([_k, v]) => v !== void 0).map(([k, v]) => `${k}: ${formatValue(v)}`).join(", ");
277
277
  return `{ ${entries} }`;
278
278
  }
279
279
  return String(value);
@@ -567,11 +567,9 @@ function generateFieldModification(collectionName, modification, varName, isLast
567
567
  function generateFieldDeletion(collectionName, fieldName, varName, isLast = false) {
568
568
  const lines = [];
569
569
  const collectionVar = varName || `collection_${collectionName}_${fieldName}`;
570
- const fieldVar = `${collectionVar}_field`;
571
570
  lines.push(` const ${collectionVar} = app.findCollectionByNameOrId("${collectionName}");`);
572
- lines.push(` const ${fieldVar} = ${collectionVar}.fields.getByName("${fieldName}");`);
573
571
  lines.push(``);
574
- lines.push(` ${collectionVar}.fields.remove(${fieldVar}.id);`);
572
+ lines.push(` ${collectionVar}.fields.removeByName("${fieldName}");`);
575
573
  lines.push(``);
576
574
  lines.push(isLast ? ` return app.save(${collectionVar});` : ` app.save(${collectionVar});`);
577
575
  return lines.join("\n");
@@ -689,20 +687,23 @@ function generateOperationUpMigration(operation, collectionIdMap) {
689
687
  lines.push(generateCollectionDeletion(collectionName, varName, true));
690
688
  }
691
689
  let code = lines.join("\n");
692
- const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
693
- const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
694
- const saveMatches = [...code.matchAll(savePattern)];
695
- const deleteMatches = [...code.matchAll(deletePattern)];
696
- const allMatches = [
697
- ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
698
- ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
699
- ].sort((a, b) => b.index - a.index);
700
- if (allMatches.length > 0) {
701
- const lastMatch = allMatches[0];
702
- if (lastMatch.type === "save") {
703
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
704
- } else {
705
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
690
+ const hasReturnStatement = /return\s+app\.(save|delete)\(/m.test(code);
691
+ if (!hasReturnStatement) {
692
+ const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
693
+ const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
694
+ const saveMatches = [...code.matchAll(savePattern)];
695
+ const deleteMatches = [...code.matchAll(deletePattern)];
696
+ const allMatches = [
697
+ ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
698
+ ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
699
+ ].sort((a, b) => b.index - a.index);
700
+ if (allMatches.length > 0) {
701
+ const lastMatch = allMatches[0];
702
+ if (lastMatch.type === "save") {
703
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
704
+ } else {
705
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
706
+ }
706
707
  }
707
708
  }
708
709
  return code;
@@ -791,20 +792,23 @@ function generateOperationDownMigration(operation, collectionIdMap) {
791
792
  }
792
793
  }
793
794
  let code = lines.join("\n");
794
- const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
795
- const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
796
- const saveMatches = [...code.matchAll(savePattern)];
797
- const deleteMatches = [...code.matchAll(deletePattern)];
798
- const allMatches = [
799
- ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
800
- ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
801
- ].sort((a, b) => b.index - a.index);
802
- if (allMatches.length > 0) {
803
- const lastMatch = allMatches[0];
804
- if (lastMatch.type === "save") {
805
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
806
- } else {
807
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
795
+ const hasReturnStatement = /return\s+app\.(save|delete)\(/m.test(code);
796
+ if (!hasReturnStatement) {
797
+ const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
798
+ const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
799
+ const saveMatches = [...code.matchAll(savePattern)];
800
+ const deleteMatches = [...code.matchAll(deletePattern)];
801
+ const allMatches = [
802
+ ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
803
+ ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
804
+ ].sort((a, b) => b.index - a.index);
805
+ if (allMatches.length > 0) {
806
+ const lastMatch = allMatches[0];
807
+ if (lastMatch.type === "save") {
808
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
809
+ } else {
810
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
811
+ }
808
812
  }
809
813
  }
810
814
  return code;
@@ -905,20 +909,23 @@ function generateUpMigration(diff) {
905
909
  lines.push(``);
906
910
  }
907
911
  let code = lines.join("\n");
908
- const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
909
- const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
910
- const saveMatches = [...code.matchAll(savePattern)];
911
- const deleteMatches = [...code.matchAll(deletePattern)];
912
- const allMatches = [
913
- ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
914
- ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
915
- ].sort((a, b) => b.index - a.index);
916
- if (allMatches.length > 0) {
917
- const lastMatch = allMatches[0];
918
- if (lastMatch.type === "save") {
919
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
920
- } else {
921
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
912
+ const hasReturnStatement = /return\s+app\.(save|delete)\(/m.test(code);
913
+ if (!hasReturnStatement) {
914
+ const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
915
+ const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
916
+ const saveMatches = [...code.matchAll(savePattern)];
917
+ const deleteMatches = [...code.matchAll(deletePattern)];
918
+ const allMatches = [
919
+ ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
920
+ ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
921
+ ].sort((a, b) => b.index - a.index);
922
+ if (allMatches.length > 0) {
923
+ const lastMatch = allMatches[0];
924
+ if (lastMatch.type === "save") {
925
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
926
+ } else {
927
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
928
+ }
922
929
  }
923
930
  }
924
931
  return code;
@@ -1035,20 +1042,23 @@ function generateDownMigration(diff) {
1035
1042
  lines.push(``);
1036
1043
  }
1037
1044
  let code = lines.join("\n");
1038
- const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
1039
- const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
1040
- const saveMatches = [...code.matchAll(savePattern)];
1041
- const deleteMatches = [...code.matchAll(deletePattern)];
1042
- const allMatches = [
1043
- ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
1044
- ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
1045
- ].sort((a, b) => b.index - a.index);
1046
- if (allMatches.length > 0) {
1047
- const lastMatch = allMatches[0];
1048
- if (lastMatch.type === "save") {
1049
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
1050
- } else {
1051
- code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
1045
+ const hasReturnStatement = /return\s+app\.(save|delete)\(/m.test(code);
1046
+ if (!hasReturnStatement) {
1047
+ const savePattern = /^(\s*)app\.save\((\w+)\);$/gm;
1048
+ const deletePattern = /^(\s*)app\.delete\((\w+)\);$/gm;
1049
+ const saveMatches = [...code.matchAll(savePattern)];
1050
+ const deleteMatches = [...code.matchAll(deletePattern)];
1051
+ const allMatches = [
1052
+ ...saveMatches.map((m) => ({ match: m, type: "save", index: m.index })),
1053
+ ...deleteMatches.map((m) => ({ match: m, type: "delete", index: m.index }))
1054
+ ].sort((a, b) => b.index - a.index);
1055
+ if (allMatches.length > 0) {
1056
+ const lastMatch = allMatches[0];
1057
+ if (lastMatch.type === "save") {
1058
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.save(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
1059
+ } else {
1060
+ code = code.substring(0, lastMatch.match.index) + lastMatch.match[1] + "return app.delete(" + lastMatch.match[2] + ");" + code.substring(lastMatch.match.index + lastMatch.match[0].length);
1061
+ }
1052
1062
  }
1053
1063
  }
1054
1064
  return code;