@spinajs/orm 2.0.491 → 2.0.495

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 (86) hide show
  1. package/README.md +80 -80
  2. package/lib/cjs/builders.d.ts +1 -2
  3. package/lib/cjs/builders.d.ts.map +1 -1
  4. package/lib/cjs/builders.js +2 -0
  5. package/lib/cjs/builders.js.map +1 -1
  6. package/lib/cjs/decorators.d.ts +22 -0
  7. package/lib/cjs/decorators.d.ts.map +1 -1
  8. package/lib/cjs/decorators.js +29 -0
  9. package/lib/cjs/decorators.js.map +1 -1
  10. package/lib/cjs/descriptor.d.ts.map +1 -1
  11. package/lib/cjs/descriptor.js +2 -0
  12. package/lib/cjs/descriptor.js.map +1 -1
  13. package/lib/cjs/driver.d.ts +12 -0
  14. package/lib/cjs/driver.d.ts.map +1 -1
  15. package/lib/cjs/driver.js +12 -0
  16. package/lib/cjs/driver.js.map +1 -1
  17. package/lib/cjs/interfaces.d.ts +35 -24
  18. package/lib/cjs/interfaces.d.ts.map +1 -1
  19. package/lib/cjs/interfaces.js.map +1 -1
  20. package/lib/cjs/model.d.ts +26 -5
  21. package/lib/cjs/model.d.ts.map +1 -1
  22. package/lib/cjs/model.js +32 -9
  23. package/lib/cjs/model.js.map +1 -1
  24. package/lib/cjs/orm.d.ts.map +1 -1
  25. package/lib/cjs/orm.js +4 -1
  26. package/lib/cjs/orm.js.map +1 -1
  27. package/lib/cjs/relation-objects.d.ts +76 -163
  28. package/lib/cjs/relation-objects.d.ts.map +1 -1
  29. package/lib/cjs/relation-objects.js +223 -192
  30. package/lib/cjs/relation-objects.js.map +1 -1
  31. package/lib/cjs/schema-providers.d.ts +34 -0
  32. package/lib/cjs/schema-providers.d.ts.map +1 -1
  33. package/lib/cjs/schema-providers.js +59 -3
  34. package/lib/cjs/schema-providers.js.map +1 -1
  35. package/lib/cjs/schema.d.ts +20 -3
  36. package/lib/cjs/schema.d.ts.map +1 -1
  37. package/lib/cjs/schema.js +59 -9
  38. package/lib/cjs/schema.js.map +1 -1
  39. package/lib/cjs/snapshot.d.ts +1 -1
  40. package/lib/cjs/snapshot.d.ts.map +1 -1
  41. package/lib/cjs/snapshot.js +9 -2
  42. package/lib/cjs/snapshot.js.map +1 -1
  43. package/lib/mjs/builders.d.ts +1 -2
  44. package/lib/mjs/builders.d.ts.map +1 -1
  45. package/lib/mjs/builders.js +2 -0
  46. package/lib/mjs/builders.js.map +1 -1
  47. package/lib/mjs/decorators.d.ts +22 -0
  48. package/lib/mjs/decorators.d.ts.map +1 -1
  49. package/lib/mjs/decorators.js +28 -0
  50. package/lib/mjs/decorators.js.map +1 -1
  51. package/lib/mjs/descriptor.d.ts.map +1 -1
  52. package/lib/mjs/descriptor.js +2 -0
  53. package/lib/mjs/descriptor.js.map +1 -1
  54. package/lib/mjs/driver.d.ts +12 -0
  55. package/lib/mjs/driver.d.ts.map +1 -1
  56. package/lib/mjs/driver.js +12 -0
  57. package/lib/mjs/driver.js.map +1 -1
  58. package/lib/mjs/interfaces.d.ts +35 -24
  59. package/lib/mjs/interfaces.d.ts.map +1 -1
  60. package/lib/mjs/interfaces.js.map +1 -1
  61. package/lib/mjs/model.d.ts +26 -5
  62. package/lib/mjs/model.d.ts.map +1 -1
  63. package/lib/mjs/model.js +32 -9
  64. package/lib/mjs/model.js.map +1 -1
  65. package/lib/mjs/orm.d.ts.map +1 -1
  66. package/lib/mjs/orm.js +4 -1
  67. package/lib/mjs/orm.js.map +1 -1
  68. package/lib/mjs/relation-objects.d.ts +76 -163
  69. package/lib/mjs/relation-objects.d.ts.map +1 -1
  70. package/lib/mjs/relation-objects.js +225 -194
  71. package/lib/mjs/relation-objects.js.map +1 -1
  72. package/lib/mjs/schema-providers.d.ts +34 -0
  73. package/lib/mjs/schema-providers.d.ts.map +1 -1
  74. package/lib/mjs/schema-providers.js +59 -3
  75. package/lib/mjs/schema-providers.js.map +1 -1
  76. package/lib/mjs/schema.d.ts +20 -3
  77. package/lib/mjs/schema.d.ts.map +1 -1
  78. package/lib/mjs/schema.js +59 -9
  79. package/lib/mjs/schema.js.map +1 -1
  80. package/lib/mjs/snapshot.d.ts +1 -1
  81. package/lib/mjs/snapshot.d.ts.map +1 -1
  82. package/lib/mjs/snapshot.js +9 -2
  83. package/lib/mjs/snapshot.js.map +1 -1
  84. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  85. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  86. package/package.json +75 -73
@@ -1,5 +1,6 @@
1
1
  import { Class } from '@spinajs/di';
2
2
  import { SchemaProvider } from '@spinajs/validation';
3
+ import { IModelDescriptor } from './interfaces.js';
3
4
  /**
4
5
  * Resolves an ORM model name to its column schema plus relations. A name → model
5
6
  * class map is built once at initialization (see `resolve`) and reused on every
@@ -9,5 +10,38 @@ export declare class ModelSchemaProvider extends SchemaProvider {
9
10
  protected Models: Map<string, Class<unknown>>;
10
11
  resolve(): void;
11
12
  getSchema(typeName: string): Record<string, unknown> | undefined;
13
+ /**
14
+ * The same set of columns as `getSchema`, but WITHOUT `required`, without the `@Hidden()`
15
+ * columns, and with the types this driver really returns (`descriptor.ResponseSchema`).
16
+ *
17
+ * A response is partial by nature: `dehydrateWithRelations({ skipUndefined: true })` drops
18
+ * fields the query did not load, and `include` decides which relations show up at all. The
19
+ * list of required columns describes an INSERT, not what goes out to the client - published
20
+ * on a response it breaks validation on the first row that has no password or no relation.
21
+ *
22
+ * @param typeName - the model class name
23
+ */
24
+ getResponseSchema(typeName: string): Record<string, unknown> | undefined;
25
+ /**
26
+ * The model's columns plus its relations as properties. `includeRequired` distinguishes
27
+ * the write contract (getSchema) from the read one (getResponseSchema).
28
+ *
29
+ * @param typeName - the model class name
30
+ * @param includeRequired - whether to include the list of required columns (write contract)
31
+ */
32
+ protected buildSchema(typeName: string, includeRequired: boolean): Record<string, unknown> | undefined;
33
+ /**
34
+ * The read schema off the descriptor. `Orm.reloadTableInfo` builds it alongside `Schema`;
35
+ * when it is absent (the model never got a connection, or the descriptor was assembled by
36
+ * hand in a test) we fall back to `Schema` and strip from it what a response never carries
37
+ * anyway - the `@Hidden()` columns. Describing a read with the write contract beats not
38
+ * describing it at all.
39
+ *
40
+ * @param descriptor - the model descriptor
41
+ */
42
+ protected responseColumns(descriptor: IModelDescriptor | undefined): {
43
+ properties?: Record<string, unknown>;
44
+ required?: string[];
45
+ } | undefined;
12
46
  }
13
47
  //# sourceMappingURL=schema-providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-providers.d.ts","sourceRoot":"","sources":["../../src/schema-providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKrD;;;;GAIG;AACH,qBACa,mBAAoB,SAAQ,cAAc;IACrD,SAAS,CAAC,MAAM,8BAAqC;IAE9C,OAAO,IAAI,IAAI;IAMf,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;CAiCxE"}
1
+ {"version":3,"file":"schema-providers.d.ts","sourceRoot":"","sources":["../../src/schema-providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAInD;;;;GAIG;AACH,qBACa,mBAAoB,SAAQ,cAAc;IACrD,SAAS,CAAC,MAAM,8BAAqC;IAE9C,OAAO,IAAI,IAAI;IAMf,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAIvE;;;;;;;;;;OAUG;IACI,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAI/E;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IA0CtG;;;;;;;;OAQG;IACH,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS;CAmB/I"}
@@ -26,6 +26,30 @@ let ModelSchemaProvider = class ModelSchemaProvider extends validation_1.SchemaP
26
26
  }
27
27
  }
28
28
  getSchema(typeName) {
29
+ return this.buildSchema(typeName, true);
30
+ }
31
+ /**
32
+ * The same set of columns as `getSchema`, but WITHOUT `required`, without the `@Hidden()`
33
+ * columns, and with the types this driver really returns (`descriptor.ResponseSchema`).
34
+ *
35
+ * A response is partial by nature: `dehydrateWithRelations({ skipUndefined: true })` drops
36
+ * fields the query did not load, and `include` decides which relations show up at all. The
37
+ * list of required columns describes an INSERT, not what goes out to the client - published
38
+ * on a response it breaks validation on the first row that has no password or no relation.
39
+ *
40
+ * @param typeName - the model class name
41
+ */
42
+ getResponseSchema(typeName) {
43
+ return this.buildSchema(typeName, false);
44
+ }
45
+ /**
46
+ * The model's columns plus its relations as properties. `includeRequired` distinguishes
47
+ * the write contract (getSchema) from the read one (getResponseSchema).
48
+ *
49
+ * @param typeName - the model class name
50
+ * @param includeRequired - whether to include the list of required columns (write contract)
51
+ */
52
+ buildSchema(typeName, includeRequired) {
29
53
  const model = this.Models.get(typeName);
30
54
  if (!model) {
31
55
  return undefined;
@@ -35,14 +59,21 @@ let ModelSchemaProvider = class ModelSchemaProvider extends validation_1.SchemaP
35
59
  * to get proper descriptor from prototype chain
36
60
  */
37
61
  const descriptor = model.getModelDescriptor();
38
- const columns = descriptor?.Schema;
62
+ const columns = includeRequired ? descriptor?.Schema : this.responseColumns(descriptor);
39
63
  if (!columns || !columns.properties) {
40
64
  return undefined;
41
65
  }
66
+ // `@Hidden()` marks properties, not just columns - a hidden relation is dropped by
67
+ // `dehydrateWithRelations` exactly like a hidden column, so a read schema must not
68
+ // advertise it either. Columns are already filtered upstream (`buildModelJsonSchema`
69
+ // for `ResponseSchema`, `responseColumns` for the fallback); relations are added here,
70
+ // so they have to be filtered here. The write contract keeps them: a client may well
71
+ // send a relation the API never hands back.
72
+ const hiddenRelations = includeRequired ? new Set() : new Set(descriptor?.Hidden ?? []);
42
73
  const properties = { ...columns.properties };
43
74
  descriptor?.Relations?.forEach((relation, relationName) => {
44
75
  const target = relation?.TargetModel?.name;
45
- if (!target) {
76
+ if (!target || hiddenRelations.has(relationName)) {
46
77
  return;
47
78
  }
48
79
  const ref = { type: 'object', description: target };
@@ -50,11 +81,36 @@ let ModelSchemaProvider = class ModelSchemaProvider extends validation_1.SchemaP
50
81
  relation.Type !== undefined && TO_MANY_RELATION.has(relation.Type) ? { type: 'array', items: ref } : ref;
51
82
  });
52
83
  const schema = { type: 'object', properties };
53
- if (columns.required && columns.required.length > 0) {
84
+ if (includeRequired && columns.required && columns.required.length > 0) {
54
85
  schema.required = columns.required;
55
86
  }
56
87
  return schema;
57
88
  }
89
+ /**
90
+ * The read schema off the descriptor. `Orm.reloadTableInfo` builds it alongside `Schema`;
91
+ * when it is absent (the model never got a connection, or the descriptor was assembled by
92
+ * hand in a test) we fall back to `Schema` and strip from it what a response never carries
93
+ * anyway - the `@Hidden()` columns. Describing a read with the write contract beats not
94
+ * describing it at all.
95
+ *
96
+ * @param descriptor - the model descriptor
97
+ */
98
+ responseColumns(descriptor) {
99
+ const response = descriptor?.ResponseSchema;
100
+ if (response?.properties) {
101
+ return response;
102
+ }
103
+ const write = descriptor?.Schema;
104
+ if (!write?.properties) {
105
+ return undefined;
106
+ }
107
+ const hidden = new Set(descriptor?.Hidden ?? []);
108
+ if (hidden.size === 0) {
109
+ return write;
110
+ }
111
+ const properties = Object.fromEntries(Object.entries(write.properties).filter(([name]) => !hidden.has(name)));
112
+ return { properties };
113
+ }
58
114
  };
59
115
  exports.ModelSchemaProvider = ModelSchemaProvider;
60
116
  exports.ModelSchemaProvider = ModelSchemaProvider = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"schema-providers.js","sourceRoot":"","sources":["../../src/schema-providers.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oCAAoD;AACpD,oDAAqD;AAGrD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEjD;;;;GAIG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,2BAAc;IAAhD;;QACK,WAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAyCvD,CAAC;IAvCQ,OAAO;QACZ,KAAK,MAAM,KAAK,IAAI,OAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAuB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEM,SAAS,CAAC,QAAgB;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED;;;WAGG;QACH,MAAM,UAAU,GAAI,KAAa,CAAC,kBAAkB,EAAkC,CAAC;QACvF,MAAM,OAAO,GAAG,UAAU,EAAE,MAAM,CAAC;QACnC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAA4B,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACtE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC;YAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;YACpD,UAAU,CAAC,YAAY,CAAC;gBACtB,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7G,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAA4B,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;QACvE,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACrC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA1CY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAU,EAAC,2BAAc,CAAC;GACd,mBAAmB,CA0C/B"}
1
+ {"version":3,"file":"schema-providers.js","sourceRoot":"","sources":["../../src/schema-providers.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oCAAoD;AACpD,oDAAqD;AAGrD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEjD;;;;GAIG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,2BAAc;IAAhD;;QACK,WAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAwGvD,CAAC;IAtGQ,OAAO;QACZ,KAAK,MAAM,KAAK,IAAI,OAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAuB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEM,SAAS,CAAC,QAAgB;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;OAUG;IACI,iBAAiB,CAAC,QAAgB;QACvC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACO,WAAW,CAAC,QAAgB,EAAE,eAAwB;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED;;;WAGG;QACH,MAAM,UAAU,GAAI,KAAa,CAAC,kBAAkB,EAAkC,CAAC;QACvF,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,mFAAmF;QACnF,mFAAmF;QACnF,qFAAqF;QACrF,uFAAuF;QACvF,qFAAqF;QACrF,4CAA4C;QAC5C,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,GAAG,EAAU,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QAEhG,MAAM,UAAU,GAA4B,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACtE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC;YAC3C,IAAI,CAAC,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjD,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;YACpD,UAAU,CAAC,YAAY,CAAC;gBACtB,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7G,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAA4B,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;QACvE,IAAI,eAAe,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvE,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACrC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;OAQG;IACO,eAAe,CAAC,UAAwC;QAChE,MAAM,QAAQ,GAAG,UAAU,EAAE,cAAc,CAAC;QAC5C,IAAI,QAAQ,EAAE,UAAU,EAAE,CAAC;YACzB,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,EAAE,MAAM,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAqC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzI,OAAO,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC;CACF,CAAA;AAzGY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAU,EAAC,2BAAc,CAAC;GACd,mBAAmB,CAyG/B"}
@@ -1,7 +1,24 @@
1
1
  import { IModelDescriptor } from './interfaces.js';
2
2
  /**
3
- * Builds a JSON schema from a model's columns, stored on `descriptor.Schema` at model load.
4
- * `Ignore` columns are excluded and relations are omitted.
3
+ * Which side of the wire a model schema describes. `request` is what a client may SEND
4
+ * ( the model used as `@Body()` ), `response` is what the API hands BACK.
5
5
  */
6
- export declare function buildModelJsonSchema(descriptor: IModelDescriptor): any;
6
+ export type ModelSchemaKind = 'request' | 'response';
7
+ /**
8
+ * Builds a JSON schema from a model's columns, stored on `descriptor.Schema` /
9
+ * `descriptor.ResponseSchema` at model load. `Ignore` columns are excluded and relations
10
+ * are omitted.
11
+ *
12
+ * The two flavours differ in three ways, all of them facts about what a response IS:
13
+ * - `descriptor.Hidden` ( the model's `@Hidden()` properties ) is dropped: `dehydrate()` and
14
+ * `dehydrateWithRelations()` omit those columns unconditionally, so no response can
15
+ * ever carry them - rbac's User hides `Password`,
16
+ * - the driver may override a type it returns differently from what it accepts,
17
+ * - nothing is `required`: a response is partial by construction ( `skipUndefined`
18
+ * drops columns the query did not select ).
19
+ *
20
+ * @param descriptor - the model descriptor to describe
21
+ * @param kind - which contract to build, defaults to the write one
22
+ */
23
+ export declare function buildModelJsonSchema(descriptor: IModelDescriptor, kind?: ModelSchemaKind): any;
7
24
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAqBtE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,GAAG,GAAG,CAmBtE"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AA0CtE;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,UAAU,CAAC;AAErD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,GAAE,eAA2B,GAAG,GAAG,CAqBzG"}
package/lib/cjs/schema.js CHANGED
@@ -2,7 +2,26 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildModelJsonSchema = buildModelJsonSchema;
4
4
  const enums_js_1 = require("./enums.js");
5
- /** SQL column type → JSON-schema shape; unlisted types fall back to `string`. */
5
+ /**
6
+ * SQL column type → JSON-schema shape; unlisted types fall back to `string`.
7
+ *
8
+ * The keys must be the strings a DRIVER puts in `IColumnDescriptor.Type`. Every driver
9
+ * stores the column's own `DATA_TYPE` verbatim ( see orm-mysql / orm-mssql `tableInfo` ),
10
+ * so a `ColumnType` member whose value does not spell the SQL type exactly the way the
11
+ * database reports it will never match, and the column silently falls back to `string`.
12
+ * That is why 'datetime' sits here next to `ColumnType.DATE_TIME` ( = 'dateTime' ), which
13
+ * neither MySQL nor MSSQL ever emits.
14
+ *
15
+ * Known remaining mismatches with mysql2's real output, left alone on purpose - correcting
16
+ * them changes an already-published schema for columns nobody has complained about:
17
+ * - `bit` arrives as a Buffer, not a number,
18
+ * - `set` arrives as a comma-separated string unless SetValueConverter is attached,
19
+ * - `blob` / `binary` / `varbinary` arrive as Buffers and fall through to `string`.
20
+ *
21
+ * The values here are what a client may SEND. Where the driver hands something else BACK -
22
+ * mysql2's stringified DECIMAL - that driver says so through `OrmDriver.ResponseSchemaTypes`
23
+ * rather than bending this shared map, which every driver reads.
24
+ */
6
25
  const SQL_TYPE_TO_SCHEMA = {
7
26
  [enums_js_1.ColumnType.TINY_INTEGER]: { type: 'integer' },
8
27
  [enums_js_1.ColumnType.SMALL_INTEGER]: { type: 'integer' },
@@ -16,39 +35,70 @@ const SQL_TYPE_TO_SCHEMA = {
16
35
  [enums_js_1.ColumnType.BOOLEAN]: { type: 'boolean' },
17
36
  [enums_js_1.ColumnType.DATE]: { type: 'string', format: 'date' },
18
37
  [enums_js_1.ColumnType.DATE_TIME]: { type: 'string', format: 'date-time' },
38
+ // MySQL and MSSQL both report DATETIME as 'datetime'; ColumnType.DATE_TIME above never matches.
39
+ datetime: { type: 'string', format: 'date-time' },
19
40
  [enums_js_1.ColumnType.TIMESTAMP]: { type: 'string', format: 'date-time' },
20
41
  [enums_js_1.ColumnType.JSON]: { type: 'object' },
21
42
  [enums_js_1.ColumnType.SET]: { type: 'array', items: { type: 'string' } },
22
43
  };
23
44
  /**
24
- * Builds a JSON schema from a model's columns, stored on `descriptor.Schema` at model load.
25
- * `Ignore` columns are excluded and relations are omitted.
45
+ * Builds a JSON schema from a model's columns, stored on `descriptor.Schema` /
46
+ * `descriptor.ResponseSchema` at model load. `Ignore` columns are excluded and relations
47
+ * are omitted.
48
+ *
49
+ * The two flavours differ in three ways, all of them facts about what a response IS:
50
+ * - `descriptor.Hidden` ( the model's `@Hidden()` properties ) is dropped: `dehydrate()` and
51
+ * `dehydrateWithRelations()` omit those columns unconditionally, so no response can
52
+ * ever carry them - rbac's User hides `Password`,
53
+ * - the driver may override a type it returns differently from what it accepts,
54
+ * - nothing is `required`: a response is partial by construction ( `skipUndefined`
55
+ * drops columns the query did not select ).
56
+ *
57
+ * @param descriptor - the model descriptor to describe
58
+ * @param kind - which contract to build, defaults to the write one
26
59
  */
27
- function buildModelJsonSchema(descriptor) {
60
+ function buildModelJsonSchema(descriptor, kind = 'request') {
28
61
  const properties = {};
29
62
  const required = [];
63
+ const hidden = kind === 'response' ? new Set(descriptor.Hidden ?? []) : new Set();
64
+ const overrides = kind === 'response' ? driverResponseTypes(descriptor) : {};
30
65
  for (const col of descriptor.Columns ?? []) {
31
- if (!col || col.Ignore || !col.Name) {
66
+ if (!col || col.Ignore || !col.Name || hidden.has(col.Name)) {
32
67
  continue;
33
68
  }
34
- properties[col.Name] = columnToSchema(col);
69
+ properties[col.Name] = columnToSchema(col, overrides);
35
70
  if (!col.Nullable && !col.AutoIncrement) {
36
71
  required.push(col.Name);
37
72
  }
38
73
  }
39
74
  const schema = { type: 'object', properties };
40
- if (required.length > 0) {
75
+ if (kind === 'request' && required.length > 0) {
41
76
  schema.required = required;
42
77
  }
43
78
  return schema;
44
79
  }
80
+ /**
81
+ * Per-SQL-type response overrides declared by the driver this model is bound to, or an
82
+ * empty map for a model with no connection yet ( then the shared defaults stand ).
83
+ *
84
+ * Read structurally rather than through the OrmDriver type: this module is imported by
85
+ * the descriptor building path and must not pull the driver module in with it.
86
+ *
87
+ * @param descriptor - the model descriptor whose driver is asked
88
+ */
89
+ function driverResponseTypes(descriptor) {
90
+ return descriptor.Driver?.ResponseSchemaTypes ?? {};
91
+ }
45
92
  /**
46
93
  * Maps a column descriptor to a JSON-schema property based on its SQL type.
47
94
  * Adds `maxLength`, `description` and `nullable` when the column has them.
95
+ *
96
+ * @param col - column to describe
97
+ * @param overrides - per-type shapes that win over the shared map ( response flavour only )
48
98
  */
49
- function columnToSchema(col) {
99
+ function columnToSchema(col, overrides = {}) {
50
100
  const converter = col.Converter?.constructor?.name;
51
- const schema = { ...(SQL_TYPE_TO_SCHEMA[col.Type] ?? { type: 'string' }) };
101
+ const schema = { ...(overrides[col.Type] ?? SQL_TYPE_TO_SCHEMA[col.Type] ?? { type: 'string' }) };
52
102
  if (converter === 'BooleanValueConverter') {
53
103
  schema.type = 'boolean';
54
104
  delete schema.format;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export declare const UNCOPYABLE: unique symbol;
29
29
  *
30
30
  * Immutable values (primitives, luxon `DateTime`) are returned as-is. Everything the ORM can
31
31
  * put in a column and that can be mutated in place — `Buffer` (binary/UUID columns), `Date`,
32
- * arrays and plain objects (JSON columns) — is copied.
32
+ * plain arrays and plain objects (JSON columns) — is copied.
33
33
  *
34
34
  * A mutable instance of a class the ORM does not own cannot be copied safely: cloning it
35
35
  * could break its invariants. Such a value is replaced by {@link UNCOPYABLE} unless its
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEpE;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;CACnC;AAED,wBAAgB,cAAc,IAAI,cAAc,CAK/C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,eAA4C,CAAC;AAEpE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CA+BzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAoClG;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBhH"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEpE;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;CACnC;AAED,wBAAgB,cAAc,IAAI,cAAc,CAK/C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,eAA4C,CAAC;AAEpE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAsCzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAoClG;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBhH"}
@@ -32,7 +32,7 @@ exports.UNCOPYABLE = Symbol('spinajs.orm.snapshot.uncopyable');
32
32
  *
33
33
  * Immutable values (primitives, luxon `DateTime`) are returned as-is. Everything the ORM can
34
34
  * put in a column and that can be mutated in place — `Buffer` (binary/UUID columns), `Date`,
35
- * arrays and plain objects (JSON columns) — is copied.
35
+ * plain arrays and plain objects (JSON columns) — is copied.
36
36
  *
37
37
  * A mutable instance of a class the ORM does not own cannot be copied safely: cloning it
38
38
  * could break its invariants. Such a value is replaced by {@link UNCOPYABLE} unless its
@@ -61,7 +61,14 @@ function snapshotValue(value, converter) {
61
61
  if (value instanceof Date) {
62
62
  return new Date(value.getTime());
63
63
  }
64
- if (Array.isArray(value) || lodash_1.default.isPlainObject(value)) {
64
+ // `Array.isArray` is true for SUBCLASSES of Array too, and `_.cloneDeep` reconstructs those with
65
+ // `new value.constructor()` — no arguments. A subclass whose constructor requires them throws
66
+ // from inside lodash, out of a stack that names neither the model nor the column. The ORM's own
67
+ // `Relation` is exactly such a subclass ( it reads `TargetModel` off its second parameter ), and
68
+ // `@Filterable` on a relation property is enough to route one through here — see
69
+ // `ModelBase.snapshotColumns()`. Only a genuine plain array is safe to clone; anything else is an
70
+ // instance of a class the ORM does not own, which is what UNCOPYABLE is for.
71
+ if ((Array.isArray(value) && Object.getPrototypeOf(value) === Array.prototype) || lodash_1.default.isPlainObject(value)) {
65
72
  return lodash_1.default.cloneDeep(value);
66
73
  }
67
74
  return exports.UNCOPYABLE;
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"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"}
@@ -310,8 +310,7 @@ export declare class SelectQueryBuilder<T = any> extends QueryBuilder<T> {
310
310
  clone(): this;
311
311
  protected _getRelationInstance(relation: string): IOrmRelation;
312
312
  populate<R = this>(relation: Constructor<ModelBase>): this;
313
- populate<R = this>(relation: string[]): this;
314
- populate<R = this>(relation: string): this;
313
+ populate<R = this>(relation?: string | string[] | null, callback?: (this: SelectQueryBuilder<R>, relation: IOrmRelation) => void): this;
315
314
  populate<R = this>(relation: {}, callback?: (this: SelectQueryBuilder<R>, relation: IOrmRelation) => void): this;
316
315
  mergeBuilder(builder: SelectQueryBuilder, includeStatements?: boolean): void;
317
316
  mergeRelations(builder: SelectQueryBuilder): void;
@@ -1 +1 @@
1
- {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/builders.ts"],"names":[],"mappings":"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"}
@@ -1055,6 +1055,8 @@ let SelectQueryBuilder = SelectQueryBuilder_1 = class SelectQueryBuilder extends
1055
1055
  });
1056
1056
  return this;
1057
1057
  }
1058
+ // Everything that is not a string was handled above (constructor / array /
1059
+ // object), so the remaining value is a plain relation name.
1058
1060
  this._getRelationInstance(relation).execute(callback);
1059
1061
  return this;
1060
1062
  }