@spinajs/orm 2.0.520 → 2.0.521

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 (79) hide show
  1. package/lib/cjs/builders.d.ts.map +1 -1
  2. package/lib/cjs/builders.js +0 -1
  3. package/lib/cjs/builders.js.map +1 -1
  4. package/lib/cjs/converters.d.ts.map +1 -1
  5. package/lib/cjs/converters.js +12 -5
  6. package/lib/cjs/converters.js.map +1 -1
  7. package/lib/cjs/decorators.d.ts.map +1 -1
  8. package/lib/cjs/decorators.js +41 -4
  9. package/lib/cjs/decorators.js.map +1 -1
  10. package/lib/cjs/interfaces.d.ts +7 -9
  11. package/lib/cjs/interfaces.d.ts.map +1 -1
  12. package/lib/cjs/interfaces.js.map +1 -1
  13. package/lib/cjs/metadata.d.ts.map +1 -1
  14. package/lib/cjs/metadata.js +0 -1
  15. package/lib/cjs/metadata.js.map +1 -1
  16. package/lib/cjs/model.d.ts +72 -53
  17. package/lib/cjs/model.d.ts.map +1 -1
  18. package/lib/cjs/model.js +155 -104
  19. package/lib/cjs/model.js.map +1 -1
  20. package/lib/cjs/relation-objects.d.ts +9 -4
  21. package/lib/cjs/relation-objects.d.ts.map +1 -1
  22. package/lib/cjs/relation-objects.js +15 -13
  23. package/lib/cjs/relation-objects.js.map +1 -1
  24. package/lib/cjs/snapshot.d.ts +12 -0
  25. package/lib/cjs/snapshot.d.ts.map +1 -1
  26. package/lib/cjs/snapshot.js +9 -0
  27. package/lib/cjs/snapshot.js.map +1 -1
  28. package/lib/cjs/subject-builder.d.ts +3 -2
  29. package/lib/cjs/subject-builder.d.ts.map +1 -1
  30. package/lib/cjs/subject-builder.js +10 -9
  31. package/lib/cjs/subject-builder.js.map +1 -1
  32. package/lib/cjs/subject-executor.d.ts +2 -2
  33. package/lib/cjs/subject-executor.d.ts.map +1 -1
  34. package/lib/cjs/subject-executor.js +11 -8
  35. package/lib/cjs/subject-executor.js.map +1 -1
  36. package/lib/cjs/subject.d.ts +8 -1
  37. package/lib/cjs/subject.d.ts.map +1 -1
  38. package/lib/cjs/subject.js.map +1 -1
  39. package/lib/mjs/builders.d.ts.map +1 -1
  40. package/lib/mjs/builders.js +0 -1
  41. package/lib/mjs/builders.js.map +1 -1
  42. package/lib/mjs/converters.d.ts.map +1 -1
  43. package/lib/mjs/converters.js +12 -5
  44. package/lib/mjs/converters.js.map +1 -1
  45. package/lib/mjs/decorators.d.ts.map +1 -1
  46. package/lib/mjs/decorators.js +41 -4
  47. package/lib/mjs/decorators.js.map +1 -1
  48. package/lib/mjs/interfaces.d.ts +7 -9
  49. package/lib/mjs/interfaces.d.ts.map +1 -1
  50. package/lib/mjs/interfaces.js.map +1 -1
  51. package/lib/mjs/metadata.d.ts.map +1 -1
  52. package/lib/mjs/metadata.js +0 -1
  53. package/lib/mjs/metadata.js.map +1 -1
  54. package/lib/mjs/model.d.ts +72 -53
  55. package/lib/mjs/model.d.ts.map +1 -1
  56. package/lib/mjs/model.js +156 -105
  57. package/lib/mjs/model.js.map +1 -1
  58. package/lib/mjs/relation-objects.d.ts +9 -4
  59. package/lib/mjs/relation-objects.d.ts.map +1 -1
  60. package/lib/mjs/relation-objects.js +15 -13
  61. package/lib/mjs/relation-objects.js.map +1 -1
  62. package/lib/mjs/snapshot.d.ts +12 -0
  63. package/lib/mjs/snapshot.d.ts.map +1 -1
  64. package/lib/mjs/snapshot.js +8 -0
  65. package/lib/mjs/snapshot.js.map +1 -1
  66. package/lib/mjs/subject-builder.d.ts +3 -2
  67. package/lib/mjs/subject-builder.d.ts.map +1 -1
  68. package/lib/mjs/subject-builder.js +10 -9
  69. package/lib/mjs/subject-builder.js.map +1 -1
  70. package/lib/mjs/subject-executor.d.ts +2 -2
  71. package/lib/mjs/subject-executor.d.ts.map +1 -1
  72. package/lib/mjs/subject-executor.js +11 -8
  73. package/lib/mjs/subject-executor.js.map +1 -1
  74. package/lib/mjs/subject.d.ts +8 -1
  75. package/lib/mjs/subject.d.ts.map +1 -1
  76. package/lib/mjs/subject.js.map +1 -1
  77. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  78. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  79. package/package.json +7 -7
@@ -5,7 +5,7 @@ import { RawQuery, UpdateQueryBuilder, TruncateTableQueryBuilder, SelectQueryBui
5
5
  import { Op } from './enums.js';
6
6
  import { Wrap } from './statements.js';
7
7
  import { OrmDriver } from './driver.js';
8
- import { IModelSnapshot } from './snapshot.js';
8
+ import { IModelChange, IModelSnapshot } from './snapshot.js';
9
9
  import { IContainer, Constructor } from '@spinajs/di';
10
10
  import { DateTime } from 'luxon';
11
11
  /**
@@ -18,22 +18,13 @@ import { DateTime } from 'luxon';
18
18
  */
19
19
  export declare function updateModelDescriptor(targetOrForward: any, callback: (descriptor: IModelDescriptor) => void): void;
20
20
  export declare class ModelBase<M = unknown> implements IModelBase {
21
- private __is_dirty__;
22
- /**
23
- * Marks model as dirty. It means that model have unsaved changes
24
- */
25
- get IsDirty(): boolean;
26
- set IsDirty(val: boolean);
27
21
  private _container;
28
22
  /**
29
- * prop to track model props that changeded since last update
30
- */
31
- private __dirty_props__;
32
- /**
33
- * Diff baseline, captured when this instance was hydrated from a database row.
34
- * `null` means "this model has never been in the database", which is what `save()`
35
- * uses to classify it as an INSERT — not the presence of a primary key, because
36
- * `setDefaults()` pre-fills @Uuid keys on construction.
23
+ * Diff baseline: a value copy of every persisted column, taken when the row was last read
24
+ * from or written to the database. `null` means the row has never been in the database, which
25
+ * is what classifies it as an INSERT - not the presence of a primary key, because
26
+ * `setDefaults()` pre-fills @Uuid keys on construction. Written only by `takeSnapshot()` and
27
+ * `clearSnapshot()`.
37
28
  */
38
29
  private __snapshot__;
39
30
  static readonly _queryScopes: QueryScope;
@@ -84,14 +75,45 @@ export declare class ModelBase<M = unknown> implements IModelBase {
84
75
  * dies. A relation's baseline is `snapshotRelation()`'s job, and it stores primary keys.
85
76
  */
86
77
  private snapshotColumns;
78
+ /**
79
+ * The value this model writes for every foreign key a @BelongsTo currently manages, keyed by
80
+ * column name. A relation holding a target owns its foreign key: `toSql()` writes the target's
81
+ * join-column value ( `Relation.PrimaryKey` — the target's primary key unless `@BelongsTo`
82
+ * names another column ), so a direct write to the column never reaches the database. A
83
+ * relation holding null or undefined owns nothing and is absent here, leaving the column to
84
+ * speak for itself: NULL after a `detach()`, untouched after a `populate()` that found no row.
85
+ *
86
+ * A @Recursive relation is excluded whatever it holds: `toSql()` writes its foreign key from
87
+ * the raw column, overriding the relation, so the column is what reaches the database.
88
+ *
89
+ * The single place that answers "what does this model persist for this column", so the
90
+ * snapshot baseline and the diff can never read the question differently.
91
+ */
92
+ private effectiveForeignKeys;
87
93
  /**
88
94
  * Captures the current value of every column as the diff baseline, discarding any
89
95
  * previous baseline and any relation keys recorded against it.
90
96
  *
97
+ * Reads the raw columns, deliberately: a snapshot is taken after an INSERT too, and an INSERT
98
+ * may omit a foreign key on purpose ( a deferred self-reference, whose target had no key yet ).
99
+ * Recording what the relation now holds would claim that key had been written and suppress the
100
+ * follow-up UPDATE that actually writes it. `writeBackRelationKeys()` is what brings a column
101
+ * in line with its relation, and it runs only where the key really was written.
102
+ *
91
103
  * Values are copied, never aliased — see `snapshotValue`. An aliased snapshot makes
92
104
  * every diff empty and `save()` a silent no-op.
93
105
  */
94
106
  takeSnapshot(): void;
107
+ /**
108
+ * Copies the value each @BelongsTo relation just wrote back onto its foreign-key column, so
109
+ * the model agrees with the row. Call it after a statement that wrote those keys, before
110
+ * `takeSnapshot()`.
111
+ *
112
+ * Without it a foreign key written directly and then overridden by its relation keeps the
113
+ * overridden value in the column, the snapshot records that value as the baseline, and the
114
+ * model reads dirty forever - every `save()` minting an UPDATE that changes nothing.
115
+ */
116
+ private writeBackRelationKeys;
95
117
  /**
96
118
  * Records the primary keys of the members currently in relation `name` as that
97
119
  * relation's baseline. A no-op when the model has no snapshot — an unhydrated model
@@ -105,49 +127,48 @@ export declare class ModelBase<M = unknown> implements IModelBase {
105
127
  */
106
128
  clearSnapshot(): void;
107
129
  /**
108
- * Names of the columns whose current value differs from the snapshot.
109
- *
110
- * With no snapshot every column is reported as changed, which is the right answer for a
111
- * model that is about to be inserted.
112
- *
113
- * This is deliberately independent of `__dirty_props__`: the proxy records a property as
114
- * dirty on any write, including one that puts the original value back, so the snapshot
115
- * diff is the more precise answer and the one the UPDATE payload is built from.
130
+ * `true` until the row has been in the database: the diff baseline is `null`. This is what
131
+ * classifies the model as an INSERT - not the presence of a primary key, because
132
+ * `setDefaults()` pre-fills @Uuid keys on construction.
133
+ */
134
+ get IsNew(): boolean;
135
+ /**
136
+ * Whether `save()` would write anything: a model that has never been in the database, or one
137
+ * with at least one column ( or re-pointed foreign key ) differing from its baseline.
116
138
  *
117
- * Reads the same column set `takeSnapshot()` wrote, and must keep doing so: comparing a column
118
- * the baseline never covered means comparing its live value against `undefined`, which reports it
119
- * changed on every single save.
139
+ * Derived from the snapshot on every read - there is no write observer - so it costs one
140
+ * comparison per column until the first difference. There is deliberately no setter: the only
141
+ * way to make a model clean is to persist it or to re-baseline it with `takeSnapshot()`.
120
142
  */
121
- changedColumns(): string[];
143
+ get IsDirty(): boolean;
122
144
  /**
123
- * Foreign-key columns a relation object reported as rewritten, via {@link markDirty}.
145
+ * Every persisted column whose current value differs from the baseline, in descriptor column
146
+ * order, followed by any @BelongsTo foreign key the descriptor declares no column for. On a
147
+ * model with no baseline every column is reported with `OldValue: undefined`.
124
148
  *
125
- * These are the only columns the snapshot diff cannot see. `SingleRelation.attach()` stores
126
- * the new target on the relation wrapper and marks the foreign key dirty, but never writes
127
- * the column on the model — the value is materialised from the relation later, by
128
- * `StandardModelToSqlConverter`. So `changedColumns()` compares the column against its
129
- * snapshot, finds it untouched, and reports no change even though the relation was
130
- * re-pointed. Detaching a relation and calling `update()` would then emit nothing at all.
149
+ * Computed on demand - nothing observes writes - so an in-place mutation of a JSON column is
150
+ * seen exactly like an assignment. Call it once and reuse the result rather than polling it
151
+ * in a loop.
131
152
  *
132
- * Restricted to declared relation foreign keys on purpose. `__dirty_props__` also collects
133
- * ordinary property writes, and folding those in wholesale would undo the precision the
134
- * diff exists for: a column written A -> B -> A is in `__dirty_props__` but has no net
135
- * change, and must not be written back.
153
+ * Named `changeSet` - not `changes` - because model members and columns share a namespace and
154
+ * `changes` is a real column name in downstream schemas.
136
155
  */
137
- protected relationDirtyColumns(): string[];
156
+ changeSet(): IModelChange[];
138
157
  /**
139
- * Records `prop` as changed and marks the model dirty.
140
- *
141
- * This is the supported way for relation objects to report that they rewrote one of the
142
- * owner's foreign keys. It replaces the `(owner as any).__dirty_props__.push(...)` casts
143
- * that reached into a private field from outside the class ( A6 ).
158
+ * The single diff. `stopAtFirst` lets a boolean question return as soon as one change is found.
144
159
  *
145
- * The push comes before `IsDirty = true` so the method stays correct even if the
146
- * `IsDirty` setter ever starts clearing `__dirty_props__` on a truthy assignment too.
160
+ * Every foreign key is resolved to ONE effective value before anything is compared, so
161
+ * `IsDirty` and `changeSet()` can never disagree and the short-circuit can never skip a
162
+ * decision the full diff would have made.
147
163
  *
148
- * @param prop - column name
164
+ * The rule: a @BelongsTo holding a target decides its foreign key, because that is what
165
+ * `toSql()` writes - the target's join-column value, `Relation.PrimaryKey`, which is the
166
+ * target's own primary key unless `@BelongsTo` names another column. A direct write to the
167
+ * column is therefore overridden and never reaches the database, and the diff has to say so.
168
+ * A relation holding null or undefined decides nothing and the column stands: NULL after a
169
+ * `detach()`, untouched after a `populate()` that found no row.
149
170
  */
150
- markDirty(prop: string): void;
171
+ private diff;
151
172
  valueOf(): any;
152
173
  driver(): OrmDriver;
153
174
  /**
@@ -328,11 +349,9 @@ export declare class ModelBase<M = unknown> implements IModelBase {
328
349
  /**
329
350
  * Writes the columns that differ from the snapshot.
330
351
  *
331
- * The change set comes from `changedColumns()` the snapshot diff and not from the
332
- * proxy's `__dirty_props__`, which records a property as dirty on ANY write including one
333
- * that puts the original value straight back. `save()` has always used the diff, and
334
- * `changedColumns()` documents it as the more precise answer; this path used the imprecise
335
- * one, so the same edit produced a different UPDATE depending on which method you called.
352
+ * The change set is `changeSet()` - the snapshot diff, which also covers a foreign key that was
353
+ * re-pointed through its relation - so re-assigning a column its current value produces no
354
+ * UPDATE, and a column written A -> B -> A is not written back.
336
355
  *
337
356
  * A model with no snapshot ( never hydrated ) reports every column as changed, which is the
338
357
  * right answer: there is no baseline to be more precise than.
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}