joist-core 2.2.0-next.9 → 2.3.0

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 (184) hide show
  1. package/build/Aliases.d.ts.map +1 -1
  2. package/build/Aliases.js.map +1 -1
  3. package/build/BaseEntity.d.ts +2 -0
  4. package/build/BaseEntity.d.ts.map +1 -1
  5. package/build/BaseEntity.js.map +1 -1
  6. package/build/Entity.d.ts +1 -0
  7. package/build/Entity.d.ts.map +1 -1
  8. package/build/EntityFilter.d.ts +27 -8
  9. package/build/EntityFilter.d.ts.map +1 -1
  10. package/build/EntityFilter.js +18 -0
  11. package/build/EntityFilter.js.map +1 -1
  12. package/build/EntityGraphQLFilter.d.ts +3 -0
  13. package/build/EntityGraphQLFilter.d.ts.map +1 -1
  14. package/build/EntityGraphQLFilter.js.map +1 -1
  15. package/build/EntityManager.d.ts +14 -11
  16. package/build/EntityManager.d.ts.map +1 -1
  17. package/build/EntityManager.js +61 -28
  18. package/build/EntityManager.js.map +1 -1
  19. package/build/EntityMetadata.d.ts +31 -1
  20. package/build/EntityMetadata.d.ts.map +1 -1
  21. package/build/EntityMetadata.js +17 -0
  22. package/build/EntityMetadata.js.map +1 -1
  23. package/build/IndexManager.d.ts +3 -3
  24. package/build/IndexManager.d.ts.map +1 -1
  25. package/build/IndexManager.js +30 -20
  26. package/build/IndexManager.js.map +1 -1
  27. package/build/InstanceData.d.ts +2 -0
  28. package/build/InstanceData.d.ts.map +1 -1
  29. package/build/InstanceData.js +3 -1
  30. package/build/InstanceData.js.map +1 -1
  31. package/build/JoinRows.d.ts +54 -12
  32. package/build/JoinRows.d.ts.map +1 -1
  33. package/build/JoinRows.js +114 -44
  34. package/build/JoinRows.js.map +1 -1
  35. package/build/QueryParser.d.ts +6 -1
  36. package/build/QueryParser.d.ts.map +1 -1
  37. package/build/QueryParser.js +293 -190
  38. package/build/QueryParser.js.map +1 -1
  39. package/build/QueryParser.test.d.ts +2 -0
  40. package/build/QueryParser.test.d.ts.map +1 -0
  41. package/build/QueryParser.test.js +27 -0
  42. package/build/QueryParser.test.js.map +1 -0
  43. package/build/Todo.d.ts +4 -0
  44. package/build/Todo.d.ts.map +1 -1
  45. package/build/Todo.js.map +1 -1
  46. package/build/batchloaders/enumCollectionBatchLoader.d.ts +7 -0
  47. package/build/batchloaders/enumCollectionBatchLoader.d.ts.map +1 -0
  48. package/build/batchloaders/enumCollectionBatchLoader.js +54 -0
  49. package/build/batchloaders/enumCollectionBatchLoader.js.map +1 -0
  50. package/build/batchloaders/manyToManyBatchLoader.d.ts.map +1 -1
  51. package/build/batchloaders/manyToManyBatchLoader.js +10 -2
  52. package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
  53. package/build/batchloaders/populateBatchLoader.d.ts.map +1 -1
  54. package/build/batchloaders/populateBatchLoader.js +26 -8
  55. package/build/batchloaders/populateBatchLoader.js.map +1 -1
  56. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts.map +1 -1
  57. package/build/batchloaders/recursiveChildrenBatchLoader.js +2 -0
  58. package/build/batchloaders/recursiveChildrenBatchLoader.js.map +1 -1
  59. package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +1 -1
  60. package/build/batchloaders/recursiveM2mBatchLoader.js +1 -3
  61. package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
  62. package/build/batchloaders/recursiveParentsBatchLoader.d.ts.map +1 -1
  63. package/build/batchloaders/recursiveParentsBatchLoader.js +2 -0
  64. package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
  65. package/build/changes.d.ts +13 -0
  66. package/build/changes.d.ts.map +1 -1
  67. package/build/changes.js +49 -0
  68. package/build/changes.js.map +1 -1
  69. package/build/configure.d.ts +2 -0
  70. package/build/configure.d.ts.map +1 -1
  71. package/build/configure.js +6 -0
  72. package/build/configure.js.map +1 -1
  73. package/build/dataloaders/findCountDataLoader.d.ts +12 -2
  74. package/build/dataloaders/findCountDataLoader.d.ts.map +1 -1
  75. package/build/dataloaders/findCountDataLoader.js +45 -5
  76. package/build/dataloaders/findCountDataLoader.js.map +1 -1
  77. package/build/dataloaders/findDataLoader.d.ts +44 -9
  78. package/build/dataloaders/findDataLoader.d.ts.map +1 -1
  79. package/build/dataloaders/findDataLoader.js +123 -34
  80. package/build/dataloaders/findDataLoader.js.map +1 -1
  81. package/build/dataloaders/findIdsDataLoader.js +4 -4
  82. package/build/dataloaders/findIdsDataLoader.js.map +1 -1
  83. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +1 -1
  84. package/build/dataloaders/findOrCreateDataLoader.js +2 -2
  85. package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
  86. package/build/dataloaders/findPaginatedDataLoader.d.ts.map +1 -1
  87. package/build/dataloaders/findPaginatedDataLoader.js +14 -8
  88. package/build/dataloaders/findPaginatedDataLoader.js.map +1 -1
  89. package/build/dataloaders/manyToManyFindDataLoader.js +7 -1
  90. package/build/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  91. package/build/fields.d.ts +2 -0
  92. package/build/fields.d.ts.map +1 -1
  93. package/build/fields.js +2 -0
  94. package/build/fields.js.map +1 -1
  95. package/build/index.d.ts +3 -1
  96. package/build/index.d.ts.map +1 -1
  97. package/build/index.js +4 -1
  98. package/build/index.js.map +1 -1
  99. package/build/loadHints.d.ts +4 -4
  100. package/build/loadHints.d.ts.map +1 -1
  101. package/build/loadHints.js.map +1 -1
  102. package/build/loadLens.d.ts.map +1 -1
  103. package/build/loadLens.js +20 -4
  104. package/build/loadLens.js.map +1 -1
  105. package/build/newEntity.d.ts.map +1 -1
  106. package/build/newEntity.js +16 -14
  107. package/build/newEntity.js.map +1 -1
  108. package/build/newTestInstance.d.ts.map +1 -1
  109. package/build/newTestInstance.js +3 -0
  110. package/build/newTestInstance.js.map +1 -1
  111. package/build/normalizeHints.d.ts +7 -0
  112. package/build/normalizeHints.d.ts.map +1 -1
  113. package/build/normalizeHints.js +40 -2
  114. package/build/normalizeHints.js.map +1 -1
  115. package/build/preloading/JsonAggregatePreloader.d.ts.map +1 -1
  116. package/build/preloading/JsonAggregatePreloader.js +91 -9
  117. package/build/preloading/JsonAggregatePreloader.js.map +1 -1
  118. package/build/preloading/canPreload.d.ts +2 -2
  119. package/build/preloading/canPreload.d.ts.map +1 -1
  120. package/build/preloading/canPreload.js +3 -0
  121. package/build/preloading/canPreload.js.map +1 -1
  122. package/build/preloading/partitionHint.d.ts.map +1 -1
  123. package/build/preloading/partitionHint.js +10 -4
  124. package/build/preloading/partitionHint.js.map +1 -1
  125. package/build/reactiveHints.d.ts +2 -2
  126. package/build/reactiveHints.d.ts.map +1 -1
  127. package/build/reactiveHints.js +9 -0
  128. package/build/reactiveHints.js.map +1 -1
  129. package/build/relations/EnumCollection.d.ts +81 -0
  130. package/build/relations/EnumCollection.d.ts.map +1 -0
  131. package/build/relations/EnumCollection.js +211 -0
  132. package/build/relations/EnumCollection.js.map +1 -0
  133. package/build/relations/ManyToManyCollection.d.ts +1 -0
  134. package/build/relations/ManyToManyCollection.d.ts.map +1 -1
  135. package/build/relations/ManyToManyCollection.js +5 -2
  136. package/build/relations/ManyToManyCollection.js.map +1 -1
  137. package/build/relations/ManyToManyLargeCollection.d.ts +3 -2
  138. package/build/relations/ManyToManyLargeCollection.d.ts.map +1 -1
  139. package/build/relations/ManyToManyLargeCollection.js +7 -4
  140. package/build/relations/ManyToManyLargeCollection.js.map +1 -1
  141. package/build/relations/OneToManyCollection.d.ts.map +1 -1
  142. package/build/relations/OneToManyCollection.js +2 -2
  143. package/build/relations/OneToManyCollection.js.map +1 -1
  144. package/build/relations/OneToManyLargeCollection.d.ts.map +1 -1
  145. package/build/relations/OneToManyLargeCollection.js +2 -1
  146. package/build/relations/OneToManyLargeCollection.js.map +1 -1
  147. package/build/relations/ReactiveManyToMany.d.ts +1 -0
  148. package/build/relations/ReactiveManyToMany.d.ts.map +1 -1
  149. package/build/relations/ReactiveManyToMany.js +4 -1
  150. package/build/relations/ReactiveManyToMany.js.map +1 -1
  151. package/build/relations/ReactiveManyToManyOtherSide.d.ts +1 -0
  152. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +1 -1
  153. package/build/relations/ReactiveManyToManyOtherSide.js +4 -1
  154. package/build/relations/ReactiveManyToManyOtherSide.js.map +1 -1
  155. package/build/relations/RecursiveCollection.d.ts +2 -6
  156. package/build/relations/RecursiveCollection.d.ts.map +1 -1
  157. package/build/relations/RecursiveCollection.js +9 -17
  158. package/build/relations/RecursiveCollection.js.map +1 -1
  159. package/build/relations/RecursiveCycleError.d.ts +13 -0
  160. package/build/relations/RecursiveCycleError.d.ts.map +1 -0
  161. package/build/relations/RecursiveCycleError.js +15 -0
  162. package/build/relations/RecursiveCycleError.js.map +1 -0
  163. package/build/relations/hasProperty.d.ts +2 -1
  164. package/build/relations/hasProperty.d.ts.map +1 -1
  165. package/build/relations/hasProperty.js +15 -5
  166. package/build/relations/hasProperty.js.map +1 -1
  167. package/build/relations/index.d.ts +1 -0
  168. package/build/relations/index.d.ts.map +1 -1
  169. package/build/relations/index.js +5 -2
  170. package/build/relations/index.js.map +1 -1
  171. package/build/rules.js +1 -1
  172. package/build/rules.js.map +1 -1
  173. package/build/scopes.d.ts +185 -0
  174. package/build/scopes.d.ts.map +1 -0
  175. package/build/scopes.js +302 -0
  176. package/build/scopes.js.map +1 -0
  177. package/build/temporal.d.ts +32 -2
  178. package/build/temporal.d.ts.map +1 -1
  179. package/build/temporal.js +18 -0
  180. package/build/temporal.js.map +1 -1
  181. package/build/upsert.d.ts.map +1 -1
  182. package/build/upsert.js +9 -2
  183. package/build/upsert.js.map +1 -1
  184. package/package.json +7 -7
package/build/JoinRows.js CHANGED
@@ -5,6 +5,10 @@ const EntityManager_1 = require("./EntityManager");
5
5
  const EntityMetadata_1 = require("./EntityMetadata");
6
6
  const keys_1 = require("./keys");
7
7
  const utils_1 = require("./utils");
8
+ /** Whether a join column points at a not-yet-inserted entity (enum ids are never "new"). */
9
+ function isNewColumn(value) {
10
+ return typeof value !== "number" && value.isNewEntity;
11
+ }
8
12
  /** A small holder around m2m join rows, which we treat as psuedo-entities. */
9
13
  class JoinRows {
10
14
  m2m;
@@ -26,7 +30,6 @@ class JoinRows {
26
30
  throw new Error(`Cannot add a m2m row with an entity that is ${e1}`);
27
31
  if (!e2)
28
32
  throw new Error(`Cannot add a m2m row with an entity that is ${e2}`);
29
- const { em } = this.m2m.entity;
30
33
  const existing = this.index.get(m2m, e1, e2);
31
34
  if (existing) {
32
35
  existing.deleted = false;
@@ -36,28 +39,20 @@ class JoinRows {
36
39
  const row = {
37
40
  op: JoinRowOperation.Pending,
38
41
  id: undefined,
42
+ persisted: false,
39
43
  columns: { [m2m.columnName]: e1, [m2m.otherColumnName]: e2 },
40
44
  };
41
45
  this.rows.push(row);
42
46
  this.index.add(m2m, e1, e2, row);
43
47
  }
44
- (0, EntityManager_1.getEmInternalApi)(e1.em).isLoadedCache.resetIsLoaded(e1, m2m.fieldName);
45
- (0, EntityManager_1.getEmInternalApi)(e1.em).isLoadedCache.resetIsLoaded(e2, m2m.otherFieldName);
46
- this.rm.queueDownstreamReactables(e1, m2m.fieldName);
47
- this.rm.queueDownstreamReactables(e2, m2m.otherFieldName);
48
- if ((0, EntityMetadata_1.getBaseAndSelfMetas)(e1).some((meta) => meta.config.__data.touchOnChange.has(m2m.fieldName))) {
49
- em.touch(e1);
50
- }
51
- if ((0, EntityMetadata_1.getBaseAndSelfMetas)(e2).some((meta) => meta.config.__data.touchOnChange.has(m2m.otherFieldName))) {
52
- em.touch(e2);
53
- }
48
+ this.#reactToChange(m2m, e1, e2);
54
49
  }
55
50
  /** Adds a new remove to this table. */
56
51
  addRemove(m2m, e1, e2) {
57
- const { em } = this.m2m.entity;
58
52
  const existing = this.index.get(m2m, e1, e2);
59
53
  if (existing) {
60
- if (!existing.id) {
54
+ if (!existing.persisted) {
55
+ // It was only added in-memory and never persisted, so just drop it
61
56
  (0, utils_1.remove)(this.rows, existing);
62
57
  this.index.remove(existing);
63
58
  }
@@ -67,40 +62,33 @@ class JoinRows {
67
62
  existing.op = JoinRowOperation.Pending;
68
63
  }
69
64
  else {
70
- // Use -1 to force the sortJoinRows to notice us as dirty ("delete: true but id is set")
65
+ // We're removing against an unloaded collection, so assume the row exists in the database
66
+ // (persisted: true) and queue a delete; the delete keys off the (col1, col2) composite.
71
67
  const row = {
72
68
  op: JoinRowOperation.Pending,
73
- id: -1,
69
+ id: undefined,
70
+ persisted: true,
74
71
  columns: { [m2m.columnName]: e1, [m2m.otherColumnName]: e2 },
75
72
  deleted: true,
76
73
  };
77
74
  this.rows.push(row);
78
75
  this.index.add(m2m, e1, e2, row);
79
76
  }
80
- (0, EntityManager_1.getEmInternalApi)(e1.em).isLoadedCache.resetIsLoaded(e1, m2m.fieldName);
81
- (0, EntityManager_1.getEmInternalApi)(e1.em).isLoadedCache.resetIsLoaded(e2, m2m.otherFieldName);
82
- this.rm.queueDownstreamReactables(e1, m2m.fieldName);
83
- this.rm.queueDownstreamReactables(e2, m2m.otherFieldName);
84
- if ((0, EntityMetadata_1.getBaseAndSelfMetas)(e1).some((meta) => meta.config.__data.touchOnChange.has(m2m.fieldName))) {
85
- em.touch(e1);
86
- }
87
- if ((0, EntityMetadata_1.getBaseAndSelfMetas)(e2).some((meta) => meta.config.__data.touchOnChange.has(m2m.otherFieldName))) {
88
- em.touch(e2);
89
- }
77
+ this.#reactToChange(m2m, e1, e2);
90
78
  }
91
79
  /** Return any "old values" for a m2m collection that might need reactivity checks. */
92
80
  removedFor(m2m, e1) {
93
- const { columnName, otherColumnName } = m2m;
81
+ const { otherColumnName } = m2m;
94
82
  // I.e. if we did `t1.books.remove(b1)` find all join rows that have
95
83
  // `tag_id=t1`, are marked for deletion, and then `.map` them to the removed book.
96
84
  const removedRows = this.index.getOthers(m2m.columnName, e1).filter((r) => r.deleted);
97
85
  return removedRows.map((r) => r.columns[otherColumnName]);
98
86
  }
99
87
  addedFor(m2m, e1) {
100
- const { columnName, otherColumnName } = m2m;
88
+ const { otherColumnName } = m2m;
101
89
  const addedRows = this.index
102
90
  .getOthers(m2m.columnName, e1)
103
- .filter((r) => ((r.id === undefined && r.op === JoinRowOperation.Pending) || r.op === JoinRowOperation.Flushed) &&
91
+ .filter((r) => ((!r.persisted && r.op === JoinRowOperation.Pending) || r.op === JoinRowOperation.Flushed) &&
104
92
  r.deleted !== true);
105
93
  return addedRows.map((r) => r.columns[otherColumnName]);
106
94
  }
@@ -114,6 +102,7 @@ class JoinRows {
114
102
  const row = {
115
103
  op: JoinRowOperation.Pending,
116
104
  id,
105
+ persisted: true,
117
106
  columns: { [m2m.columnName]: e1, [m2m.otherColumnName]: e2 },
118
107
  };
119
108
  this.rows.push(row);
@@ -123,32 +112,43 @@ class JoinRows {
123
112
  /** Look up/create our internal JoinRow psuedo-entities for the db rows. */
124
113
  async loadRows(tuples, dbRows) {
125
114
  const { em } = this.m2m.entity;
126
- const { columnName: column1, otherColumnName: column2 } = this.m2m;
127
- const { meta: meta1, otherMeta: meta2 } = this.m2m;
115
+ const { columnName: column1, otherColumnName: column2, meta: meta1, otherMeta: meta2, otherEnum } = this.m2m;
128
116
  const oneIds = [];
129
- const twoIds = [];
117
+ // Tagged ids for an entity other-side, or raw enum ids for an enum other-side.
118
+ const twoVals = [];
130
119
  for (const dbRow of dbRows) {
131
120
  oneIds.push((0, keys_1.keyToTaggedId)(meta1, dbRow[column1]));
132
- twoIds.push((0, keys_1.keyToTaggedId)(meta2, dbRow[column2]));
121
+ twoVals.push(otherEnum ? dbRow[column2] : em.getEntity((0, keys_1.keyToTaggedId)(meta2, dbRow[column2])));
133
122
  }
134
- // Make sure we have entities in memory for all the joined-to tables
135
- await Promise.all([em.loadAll(meta1.cstr, oneIds), em.loadAll(meta2.cstr, twoIds)]);
136
- // If we're doing a em.refresh/reload, we need to watch for rows that are no longer here
123
+ // Make sure we have entities in memory for all the joined-to tables. The enum side has no
124
+ // entities to load; the entity sides do (and `twoVals` is re-resolved to entities below).
125
+ await Promise.all([
126
+ em.loadAll(meta1.cstr, oneIds),
127
+ otherEnum
128
+ ? Promise.resolve([])
129
+ : em.loadAll(meta2.cstr, dbRows.map((dbRow) => (0, keys_1.keyToTaggedId)(meta2, dbRow[column2]))),
130
+ ]);
131
+ // If we're doing a em.refresh/reload, we need to watch for rows that are no longer here. For an
132
+ // enum other-side, only persisted rows are delete-candidates (pending in-memory adds are kept,
133
+ // since `EnumCollection` relies on `JoinRows` to hold them rather than re-asserting on load).
137
134
  const existingRows = new Set();
138
135
  for (const [columnName, id] of tuples) {
139
136
  const others = this.index.getOthers(columnName, em.getEntity(id));
140
137
  for (const row of others)
141
- existingRows.add(row);
138
+ if (!otherEnum || row.persisted)
139
+ existingRows.add(row);
142
140
  }
143
141
  let i = 0;
144
142
  for (const dbRow of dbRows) {
145
143
  const e1 = em.getEntity(oneIds[i]);
146
- const e2 = em.getEntity(twoIds[i++]);
144
+ const e2 = otherEnum ? dbRow[column2] : em.getEntity((0, keys_1.keyToTaggedId)(meta2, dbRow[column2]));
145
+ i++;
147
146
  let row = this.index.get(this.m2m, e1, e2);
148
147
  if (!row) {
149
148
  row = {
150
149
  op: JoinRowOperation.Completed,
151
150
  id: dbRow.id,
151
+ persisted: true,
152
152
  columns: { [column1]: e1, [column2]: e2 },
153
153
  created_at: dbRow.created_at,
154
154
  };
@@ -157,8 +157,9 @@ class JoinRows {
157
157
  }
158
158
  else {
159
159
  // If a placeholder row was created while a ManyToManyCollection was unloaded, and we find it during
160
- // a subsequent load/query, update its id to be what is in the database.
160
+ // a subsequent load/query, update its id to be what is in the database and mark it persisted.
161
161
  row.id = dbRow.id;
162
+ row.persisted = true;
162
163
  // Mark this row as still valid
163
164
  existingRows.delete(row);
164
165
  }
@@ -175,10 +176,25 @@ class JoinRows {
175
176
  const c = others[0].columns[c1] === entity ? c2 : c1;
176
177
  return others.filter((o) => !o.deleted).map((row) => row.columns[c]);
177
178
  }
179
+ /** Drops all in-memory rows where `entity` is on `columnName`, e.g. when it is being deleted. */
180
+ removeAllFor(columnName, entity) {
181
+ for (const row of this.index.getOthers(columnName, entity)) {
182
+ (0, utils_1.remove)(this.rows, row);
183
+ this.index.remove(row);
184
+ }
185
+ }
186
+ /** Drops a single `(e1, e2)` row without queuing a flush, e.g. when mirroring another em's removal. */
187
+ removePreloadedRow(m2m, e1, e2) {
188
+ const row = this.index.get(m2m, e1, e2);
189
+ if (row) {
190
+ (0, utils_1.remove)(this.rows, row);
191
+ this.index.remove(row);
192
+ }
193
+ }
178
194
  /** Scans our `rows` for newly-added/newly-deleted rows that need `INSERT`s/`UPDATE`s. */
179
195
  toTodo() {
180
- const newRows = this.rows.filter((r) => r.id === undefined && r.deleted !== true && r.op === "pending");
181
- const deletedRows = this.rows.filter((r) => r.id !== undefined && r.deleted === true && r.op === "pending");
196
+ const newRows = this.rows.filter((r) => !r.persisted && r.deleted !== true && r.op === "pending");
197
+ const deletedRows = this.rows.filter((r) => r.persisted && r.deleted === true && r.op === "pending");
182
198
  if (newRows.length === 0 && deletedRows.length === 0) {
183
199
  return undefined;
184
200
  }
@@ -192,11 +208,47 @@ class JoinRows {
192
208
  row.op = JoinRowOperation.Completed;
193
209
  }
194
210
  },
211
+ // The driver flushes pure (int, int) FK pairs; resolve them here so it never has to know
212
+ // whether a column points at an entity (use its id) or an enum (its value is already the id).
213
+ dbValue: (row, columnName) => this.#dbValue(row, columnName),
214
+ isNew: (row, columnName) => isNewColumn(row.columns[columnName]),
195
215
  };
196
216
  }
197
217
  get hasChanges() {
198
218
  return this.rows.some(({ op }) => op === JoinRowOperation.Pending || op === JoinRowOperation.Flushed);
199
219
  }
220
+ /** The db int value for `row`'s `columnName`: an entity's id, or (for enums) the enum's id itself. */
221
+ #dbValue(row, columnName) {
222
+ const value = row.columns[columnName];
223
+ if (typeof value === "number")
224
+ return value;
225
+ const meta = columnName === this.m2m.columnName ? this.m2m.meta : this.m2m.otherMeta;
226
+ return (0, keys_1.keyToNumber)(meta, value.idTagged);
227
+ }
228
+ /**
229
+ * Invalidates caches & queues reactivity for a join-row change.
230
+ *
231
+ * The owning entity (`e1`) always reacts; the "other" side only reacts when it is an entity,
232
+ * since enum other-sides have no `em`/reverse-field to keep in sync.
233
+ */
234
+ #reactToChange(m2m, e1, e2) {
235
+ const { em } = this.m2m.entity;
236
+ const api = (0, EntityManager_1.getEmInternalApi)(e1.em);
237
+ api.isLoadedCache.resetIsLoaded(e1, m2m.fieldName);
238
+ this.rm.queueDownstreamReactables(e1, m2m.fieldName);
239
+ if ((0, EntityMetadata_1.getBaseAndSelfMetas)(e1).some((meta) => meta.config.__data.touchOnChange.has(m2m.fieldName))) {
240
+ em.touch(e1);
241
+ }
242
+ if (!m2m.otherEnum) {
243
+ const other = e2;
244
+ const otherFieldName = m2m.otherFieldName;
245
+ api.isLoadedCache.resetIsLoaded(other, otherFieldName);
246
+ this.rm.queueDownstreamReactables(other, otherFieldName);
247
+ if ((0, EntityMetadata_1.getBaseAndSelfMetas)(other).some((meta) => meta.config.__data.touchOnChange.has(otherFieldName))) {
248
+ em.touch(other);
249
+ }
250
+ }
251
+ }
200
252
  }
201
253
  exports.JoinRows = JoinRows;
202
254
  /** An enum to track our insert/delete state progression. */
@@ -208,8 +260,10 @@ var JoinRowOperation;
208
260
  })(JoinRowOperation || (exports.JoinRowOperation = JoinRowOperation = {}));
209
261
  /** Keep an in-memory index to avoid sequentially scanning `rows`. */
210
262
  class ManyToManyIndex {
263
+ m2m;
211
264
  indexes = {};
212
265
  constructor(m2m) {
266
+ this.m2m = m2m;
213
267
  this.indexes[m2m.columnName] = new Map();
214
268
  this.indexes[m2m.otherColumnName] = new Map();
215
269
  }
@@ -232,10 +286,26 @@ class ManyToManyIndex {
232
286
  const map = this.indexes[columnName].get(entity);
233
287
  if (!map)
234
288
  return [];
235
- // Sort by join-row id for a stable order regardless of how many batches contributed
236
- // rows — the underlying Map preserves insertion order, which depends on DataLoader
237
- // timing and is non-deterministic across processes. New rows (id === undefined) sort last.
238
- return Array.from(map.values()).sort((a, b) => (a.id ?? Infinity) - (b.id ?? Infinity));
289
+ // Sort for a stable order regardless of how many batches contributed rows — the underlying
290
+ // Map preserves insertion order, which depends on DataLoader timing and is non-deterministic
291
+ // across processes. New rows (no key yet) sort last.
292
+ const rows = Array.from(map.values());
293
+ if (this.m2m.hasJoinTableId) {
294
+ // Sort by join-row id.
295
+ return rows.sort((a, b) => (a.id ?? Infinity) - (b.id ?? Infinity));
296
+ }
297
+ // Id-less tables have no surrogate id, so sort by the other side's id.
298
+ const otherColumn = columnName === this.m2m.columnName ? this.m2m.otherColumnName : this.m2m.columnName;
299
+ if (this.m2m.otherEnum && otherColumn === this.m2m.otherColumnName) {
300
+ // The other side is an enum, so its column value is already its numeric id.
301
+ return rows.sort((a, b) => a.columns[otherColumn] - b.columns[otherColumn]);
302
+ }
303
+ const otherMeta = columnName === this.m2m.columnName ? this.m2m.otherMeta : this.m2m.meta;
304
+ const key = (r) => {
305
+ const other = r.columns[otherColumn];
306
+ return other.isNewEntity ? Infinity : (0, keys_1.keyToNumber)(otherMeta, other.id);
307
+ };
308
+ return rows.sort((a, b) => key(a) - key(b));
239
309
  }
240
310
  #doAdd(index, e1, e2, value) {
241
311
  const map = index.get(e1) ?? new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"JoinRows.js","sourceRoot":"","sources":["../src/JoinRows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JoinRows.js","sourceRoot":"","sources":["../src/JoinRows.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ExpressionFilter, OrderBy, ValueFilter } from "./EntityFilter";
2
- import { type EntityMetadata } from "./EntityMetadata";
2
+ import { type EntityMetadata, type Field } from "./EntityMetadata";
3
3
  import { Column } from "./index";
4
4
  /** A tree of ANDs/ORs with conditions or nested conditions. */
5
5
  export interface ParsedExpressionFilter {
@@ -229,6 +229,10 @@ export type ParsedEntityFilter = ParsedValueFilter<string | number> | {
229
229
  };
230
230
  /** Parses an entity filter, which could be "just an id", an array of ids, or a nested filter. */
231
231
  export declare function parseEntityFilter(meta: EntityMetadata, filter: any): ParsedEntityFilter | undefined;
232
+ /** Finds a filter field by fieldName or generated fieldIdName. */
233
+ export declare function findFilterField(meta: EntityMetadata, key: string): (Field & {
234
+ aliasSuffix: string;
235
+ }) | undefined;
232
236
  /**
233
237
  * An ADT version of `ValueFilter`.
234
238
  *
@@ -324,6 +328,7 @@ export declare function mapToDb(column: Column, filter: ParsedValueFilter<any>):
324
328
  export declare function maybeAddOrderBy(query: ParsedFindQuery, meta: EntityMetadata, alias: string): void;
325
329
  export declare function addTablePerClassJoinsAndClassTag(query: ParsedFindQuery, meta: EntityMetadata, alias: string, isPrimary: boolean): void;
326
330
  export declare function maybeAddNotSoftDeleted(conditions: ColumnCondition[], meta: EntityMetadata, alias: string, softDeletes: "include" | "exclude"): void;
331
+ export declare function filterSoftDeletes(meta: EntityMetadata, softDeletes: "include" | "exclude"): boolean;
327
332
  export declare function getTables(query: ParsedFindQuery): [PrimaryTable, JoinTable[], LateralJoinTable[], CrossJoinTable[]];
328
333
  /** Converts a search term like `foo bar` into a SQL `like` pattern like `%foo%bar%`. */
329
334
  export declare function makeLike(search: any | undefined): any;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryParser.d.ts","sourceRoot":"","sources":["../src/QueryParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryParser.d.ts","sourceRoot":"","sources":["../src/QueryParser.ts"],"names":[],"mappings":"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"}