joist-orm 1.185.2 → 1.186.1

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.
package/build/config.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { AsyncDefault } from "./defaults";
1
2
  import { Entity } from "./Entity";
2
3
  import { EntityField, FieldsOf, Loaded, LoadHint, MaybeAbstractEntityConstructor, Reacted, ReactiveHint, RelationsIn, SettableFields } from "./index";
3
4
  import { ValidationRule, ValidationRuleInternal } from "./rules";
@@ -127,7 +128,11 @@ export declare class ConfigData<T extends Entity, C> {
127
128
  /** Synchronous defaults for this entity type, invoked on `em.create`. */
128
129
  syncDefaults: Record<string, ((entity: T) => void) | unknown>;
129
130
  /** Asynchronous defaults for this entity type, invoked on `em.flush`. */
130
- asyncDefaults: Record<string, (entity: T, ctx: C) => MaybePromise<T>>;
131
+ asyncDefaults: Record<string, AsyncDefault<T>>;
132
+ /** Asynchronous defaults organized by dependent-level for parallel loading. */
133
+ asyncDefaultsByLevel: AsyncDefault<T>[][];
134
+ /** All fields in order of default dependencies. */
135
+ fieldsInOrder: string[];
131
136
  reactiveRules: ReactiveRule[];
132
137
  reactiveDerivedValues: ReactiveField[];
133
138
  cascadeDeleteFields: Array<keyof RelationsIn<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/build/config.js CHANGED
@@ -4,6 +4,7 @@ exports.ConfigData = exports.ConfigApi = exports.constraintNameToValidationError
4
4
  exports.setBooted = setBooted;
5
5
  exports.resetBootFlag = resetBootFlag;
6
6
  exports.getCallerName = getCallerName;
7
+ const defaults_1 = require("./defaults");
7
8
  const index_1 = require("./index");
8
9
  const reactiveHints_1 = require("./reactiveHints");
9
10
  exports.constraintNameToValidationError = {};
@@ -108,12 +109,7 @@ class ConfigApi {
108
109
  if (fn) {
109
110
  // If we're called once by the codegen, and again by the user, override the syncDefault
110
111
  delete this.__data.syncDefaults[fieldName];
111
- this.__data.asyncDefaults[fieldName] = async (entity, ctx) => {
112
- // Ideally we'd convert this once outside `fn`, but we don't have `metadata` yet
113
- const loadHint = (0, reactiveHints_1.convertToLoadHint)((0, index_1.getMetadata)(entity), hintOrFnOrValue);
114
- const loaded = await entity.em.populate(entity, loadHint);
115
- return fn(loaded, ctx);
116
- };
112
+ this.__data.asyncDefaults[fieldName] = new defaults_1.AsyncDefault(fieldName, hintOrFnOrValue, fn);
117
113
  }
118
114
  else {
119
115
  this.__data.syncDefaults[fieldName] = hintOrFnOrValue;
@@ -173,6 +169,10 @@ class ConfigData {
173
169
  syncDefaults = {};
174
170
  /** Asynchronous defaults for this entity type, invoked on `em.flush`. */
175
171
  asyncDefaults = {};
172
+ /** Asynchronous defaults organized by dependent-level for parallel loading. */
173
+ asyncDefaultsByLevel = [];
174
+ /** All fields in order of default dependencies. */
175
+ fieldsInOrder = [];
176
176
  // An array of the reactive rules that depend on this entity
177
177
  reactiveRules = [];
178
178
  // An array of the reactive fields that depend on this entity
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AAsCA,8BAEC;AAyMD,sCAEC;AAuED,sCASC;AAlUD,mCAWiB;AACjB,mDAAoD;AAcvC,QAAA,+BAA+B,GAA2B,EAAE,CAAC;AAE1E,IAAI,MAAM,GAAG,KAAK,CAAC;AAEnB;;;;;;GAMG;AACH,SAAgB,SAAS;IACvB,MAAM,GAAG,IAAI,CAAC;AAChB,CAAC;AAED,wEAAwE;AACxE,MAAa,SAAS;IACpB,MAAM,GAAG,IAAI,UAAU,EAAQ,CAAC;IAEhC;;;;;;OAMG;IACH,oBAAoB,CAAC,cAAsB,EAAE,eAAuB;QAClE,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,sBAAsB,CAAC,CAAC;QAC5D,uCAA+B,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC;IACpE,CAAC;IAeD,OAAO,CAAC,UAAmC,EAAE,SAA+B;QAC1E,iDAAiD;QACjD,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACpC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,EAAE,GAAG,UAAU,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,UAAU,CAAC;YACxB,0DAA0D;YAC1D,MAAM,EAAE,GAAG,CAAC,MAAS,EAAE,EAAE;gBACvB,gFAAgF;gBAChF,MAAM,QAAQ,GAAG,IAAA,iCAAiB,EAAC,IAAA,mBAAW,EAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC9D,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAe,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAU,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1F,CAAC;gBACD,OAAO,SAAU,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,wFAAwF;IACxF,aAAa,CAAC,QAA4C;QACxD,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,eAAe,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,aAAa,CAAC,QAA8B;QAC1C,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,eAAe,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAEO,OAAO,CAAC,IAAgB,EAAE,UAA8B,EAAE,OAAmC;QACnG,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,SAAS,CAAC,CAAC;QAC/C,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,KAAK,EAAE,MAAS,EAAE,GAAM,EAAE,EAAE;gBACrC,yCAAyC;gBACzC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC5D,OAAO,OAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC/B,CAAC,CAAC;YACF,6DAA6D;YAC5D,EAAU,CAAC,IAAI,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,aAAa,CAAC,EAAY;QACxB,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAID,YAAY,CAAC,UAA8B,EAAE,OAAmC;QAC9E,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAID,WAAW,CAAC,UAA8B,EAAE,OAAmC;QAC7E,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAMD,YAAY,CAAC,UAA8B,EAAE,OAAmC;QAC9E,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAID,YAAY,CAAC,UAA8B,EAAE,OAAmC;QAC9E,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAID,eAAe,CAAC,UAA8B,EAAE,OAAmC;QACjF,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,YAAY,CAAC,EAAgB;QAC3B,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,WAAW,CAAC,EAAgB;QAC1B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IA8BD,UAAU,CAAuD,SAAY,EAAE,eAAoB,EAAE,EAAQ;QAC3G,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,YAAY,CAAC,CAAC;QAClD,IAAI,EAAE,EAAE,CAAC;YACP,uFAAuF;YACvF,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,MAAS,EAAE,GAAM,EAAE,EAAE;gBACjE,gFAAgF;gBAChF,MAAM,QAAQ,GAAG,IAAA,iCAAiB,EAAC,IAAA,mBAAW,EAAC,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC;gBACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC1D,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzB,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;4CAEwC;IACxC,WAAW,KAAU,CAAC;IAEd,aAAa,CAAC,IAAY,EAAE,EAAU;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,+DAA+D;YAC/D,IAAI,iBAAiB,EAAE,EAAE,CAAC;gBACxB,mEAAmE;gBACnE,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC/B,MAAM,GAAG,KAAK,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE,SAAS,IAAI,qEAAqE,CAAC,CAAC;YAClH,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAtLD,8BAsLC;AAED,SAAS,iBAAiB;IACxB,OAAO,mBAAmB,IAAI,UAAU,IAAI,oBAAoB,IAAI,UAAU,CAAC;AACjF,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,aAAa;IAC3B,MAAM,GAAG,KAAK,CAAC;AACjB,CAAC;AAyCD,yFAAyF;AACzF,MAAa,UAAU;IACrB,sBAAsB,GAAe,EAAE,CAAC;IACxC,iDAAiD;IACjD,KAAK,GAAgC,EAAE,CAAC;IACxC,sCAAsC;IACtC,KAAK,GAAuC;QAC1C,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;KAChB,CAAC;IACF,yEAAyE;IACzE,YAAY,GAAoD,EAAE,CAAC;IACnE,yEAAyE;IACzE,aAAa,GAA2D,EAAE,CAAC;IAE3E,4DAA4D;IAC5D,aAAa,GAAmB,EAAE,CAAC;IACnC,6DAA6D;IAC7D,qBAAqB,GAAoB,EAAE,CAAC;IAC5C,mBAAmB,GAAgC,EAAE,CAAC;IACtD,aAAa,GAA8B,IAAI,GAAG,EAAE,CAAC;IACrD,oFAAoF;IACpF,uBAAuB,GAAwB,EAAE,CAAC;CACnD;AA3BD,gCA2BC;AAED,SAAgB,aAAa,CAAC,cAAsB,CAAC;IACnD,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;IAC7B,qGAAqG;IACrG,sFAAsF;IACtF,mEAAmE;IACnE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,wEAAwE;IACxE,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,GAAY,CAAC;IACtB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,8BAA8B,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAA+B,MAAM,kBAAkB,CAAC;AAK/E,OAAO,EAAyB,SAAS,EAAE,MAAM,aAAa,CAAC;AAW/D,yEAAyE;AACzE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAQ/D;AAQD,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,GAAG,8BAA8B,CAAC,GAAG,CAAC,CAG5F;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAErE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAEnE;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,GAC5D,8BAA8B,CAAC,GAAG,CAAC,GAAG,SAAS,CAGjD"}
1
+ {"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,8BAA8B,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAA+B,MAAM,kBAAkB,CAAC;AAK/E,OAAO,EAAyB,SAAS,EAAE,MAAM,aAAa,CAAC;AAa/D,yEAAyE;AACzE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAS/D;AAQD,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,GAAG,8BAA8B,CAAC,GAAG,CAAC,CAG5F;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAErE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAEnE;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,GAC5D,8BAA8B,CAAC,GAAG,CAAC,GAAG,SAAS,CAGjD"}
@@ -1,4 +1,7 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.configureMetadata = configureMetadata;
4
7
  exports.getConstructorFromTaggedId = getConstructorFromTaggedId;
@@ -14,6 +17,8 @@ const ReactiveQueryField_1 = require("./relations/ReactiveQueryField");
14
17
  const rules_1 = require("./rules");
15
18
  const serde_1 = require("./serde");
16
19
  const utils_1 = require("./utils");
20
+ // @ts-ignore
21
+ const batching_toposort_1 = __importDefault(require("batching-toposort"));
17
22
  const tagToConstructorMap = new Map();
18
23
  const tableToMetaMap = new Map();
19
24
  const typeToMetaMap = new Map();
@@ -26,6 +31,7 @@ function configureMetadata(metas) {
26
31
  hookUpBaseTypeAndSubTypes(metas);
27
32
  reverseIndexReactivity(metas);
28
33
  populatePolyComponentFields(metas);
34
+ sortFieldsBySetDefaultHints(metas);
29
35
  }
30
36
  function fireAfterMetadatas(metas) {
31
37
  for (const meta of metas) {
@@ -72,6 +78,30 @@ function setImmutableFields(metas) {
72
78
  });
73
79
  }
74
80
  }
81
+ // Order fields based on setDefault dependencies
82
+ function sortFieldsBySetDefaultHints(metas) {
83
+ for (const meta of metas) {
84
+ // Put every field into the dag of { dependency: dependents[] }
85
+ const dag = {};
86
+ for (const fieldName of Object.keys(meta.allFields)) {
87
+ dag[fieldName] ??= [];
88
+ // ...if `fieldName` is from a base type, this won't technically find it
89
+ const df = meta.config.__data.asyncDefaults[fieldName];
90
+ if (df)
91
+ for (const dep of df.dependsOn)
92
+ (dag[dep] ??= []).push(fieldName);
93
+ }
94
+ // [[a, b], [c, d]]
95
+ const levels = (0, batching_toposort_1.default)(dag);
96
+ meta.config.__data.asyncDefaultsByLevel = levels
97
+ .map((level) => {
98
+ return level.map((fieldName) => meta.config.__data.asyncDefaults[fieldName]).filter((df) => !!df);
99
+ })
100
+ .filter((level) => level.length > 0);
101
+ // [a, b, c, d]
102
+ meta.config.__data.fieldsInOrder = levels.flat();
103
+ }
104
+ }
75
105
  // Setup subTypes/baseTypes
76
106
  function hookUpBaseTypeAndSubTypes(metas) {
77
107
  const metaByName = metas.reduce((acc, m) => {
@@ -1 +1 @@
1
- {"version":3,"file":"configure.js","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configure.js","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,20 @@
1
1
  import { Entity } from "./Entity";
2
2
  import { EntityMetadata } from "./EntityMetadata";
3
3
  import { Todo } from "./Todo";
4
+ import { ReactiveHint } from "./reactiveHints";
4
5
  export declare function hasDefaultValue(meta: EntityMetadata, fieldName: string): boolean;
5
6
  /** Run the sync defaults for `entity`. */
6
7
  export declare function setSyncDefaults(entity: Entity): void;
7
8
  /** Runs the async defaults for all inserted entities in `todos`. */
8
9
  export declare function setAsyncDefaults(ctx: unknown, todos: Record<string, Todo>): Promise<unknown>;
10
+ /** Wraps the hint + lambda of an async `setDefault`. */
11
+ export declare class AsyncDefault<T extends Entity> {
12
+ #private;
13
+ readonly fieldName: string;
14
+ constructor(fieldName: string, fieldHint: ReactiveHint<T>, fn: (entity: T, ctx: any) => any);
15
+ /** Return the immediate, sibling fields we depend on. */
16
+ get dependsOn(): string[];
17
+ /** For the given `entity`, returns what the default value should be. */
18
+ getValue(entity: T, ctx: any): Promise<any>;
19
+ }
9
20
  //# sourceMappingURL=defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAoD,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAI9B,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAIhF;AAED,0CAA0C;AAC1C,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAqBpD;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAiB5F"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAoD,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,OAAO,EAAqB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGlE,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAIhF;AAED,0CAA0C;AAC1C,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAqBpD;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CA4B5F;AAED,wDAAwD;AACxD,qBAAa,YAAY,CAAC,CAAC,SAAS,MAAM;;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAKf,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,GAAG;IAM3F,yDAAyD;IACzD,IAAI,SAAS,IAAI,MAAM,EAAE,CAGxB;IAED,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAK5C"}
package/build/defaults.js CHANGED
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AsyncDefault = void 0;
3
4
  exports.hasDefaultValue = hasDefaultValue;
4
5
  exports.setSyncDefaults = setSyncDefaults;
5
6
  exports.setAsyncDefaults = setAsyncDefaults;
6
7
  const EntityMetadata_1 = require("./EntityMetadata");
7
8
  const fields_1 = require("./fields");
9
+ const normalizeHints_1 = require("./normalizeHints");
10
+ const reactiveHints_1 = require("./reactiveHints");
8
11
  const index_1 = require("./relations/index");
9
12
  function hasDefaultValue(meta, fieldName) {
10
13
  return (0, EntityMetadata_1.getBaseAndSelfMetas)(meta).some((m) => fieldName in m.config.__data.syncDefaults || fieldName in m.config.__data.asyncDefaults);
@@ -36,14 +39,50 @@ function setSyncDefaults(entity) {
36
39
  }
37
40
  /** Runs the async defaults for all inserted entities in `todos`. */
38
41
  function setAsyncDefaults(ctx, todos) {
39
- return Promise.all(Object.values(todos).flatMap((todo) => todo.inserts.flatMap((entity) => (0, EntityMetadata_1.getBaseAndSelfMetas)((0, EntityMetadata_1.getMetadata)(entity)).flatMap((m) => Object.entries(m.config.__data.asyncDefaults).map(async ([fieldName, fn]) => {
40
- const value = entity[fieldName];
41
- if (value === undefined) {
42
- entity[fieldName] = await fn(entity, ctx);
42
+ // For inheritance, we want our sort to be across-subtypes, i.e. a Child.foo depends on a Parent.bar field
43
+ // It would be nice if `meta.config.data.__asyncDefaults` ended up with all DFs from the type + base types
44
+ // When setting defaults, we probably want per-subtype Todos, as then we could bulk `em.populate(...subtypes..., fieldHint)`
45
+ // It's tempting to create a single `fieldHint`, but which fields will need defaults will change from
46
+ // flush to flush, and entity to entity.
47
+ return Promise.all(Object.values(todos).flatMap((todo) =>
48
+ // Would probably be good to bulk `em.populate` all the entities at once, instead of dataloader-ing them back together
49
+ todo.inserts.flatMap((entity) => (0, EntityMetadata_1.getBaseAndSelfMetas)((0, EntityMetadata_1.getMetadata)(entity)).flatMap(async (m) => {
50
+ // Apply defaults by level, for defaults by depend on another
51
+ for await (const level of m.config.__data.asyncDefaultsByLevel) {
52
+ await Promise.all(level.map(async (df) => {
53
+ const value = entity[df.fieldName];
54
+ if (value === undefined) {
55
+ entity[df.fieldName] = await df.getValue(entity, ctx);
56
+ }
57
+ else if ((0, index_1.isLoadedReference)(value) && !value.isSet) {
58
+ value.set(await df.getValue(entity, ctx));
59
+ }
60
+ }));
43
61
  }
44
- else if ((0, index_1.isLoadedReference)(value) && !value.isSet) {
45
- value.set(await fn(entity, ctx));
46
- }
47
- })))));
62
+ }))));
63
+ }
64
+ /** Wraps the hint + lambda of an async `setDefault`. */
65
+ class AsyncDefault {
66
+ fieldName;
67
+ #fieldHint;
68
+ #loadHint;
69
+ #fn;
70
+ constructor(fieldName, fieldHint, fn) {
71
+ this.fieldName = fieldName;
72
+ this.#fieldHint = fieldHint;
73
+ this.#fn = fn;
74
+ }
75
+ /** Return the immediate, sibling fields we depend on. */
76
+ get dependsOn() {
77
+ // i.e. `{ author: { firstName }, title: {}` -> `[author, title]`
78
+ return Object.keys((0, normalizeHints_1.normalizeHint)(this.#fieldHint));
79
+ }
80
+ /** For the given `entity`, returns what the default value should be. */
81
+ getValue(entity, ctx) {
82
+ // We can't convert this until now, since it requires the `metadata`
83
+ this.#loadHint ??= (0, reactiveHints_1.convertToLoadHint)((0, EntityMetadata_1.getMetadata)(entity), this.#fieldHint);
84
+ return entity.em.populate(entity, this.#loadHint).then((loaded) => this.#fn(loaded, ctx));
85
+ }
48
86
  }
87
+ exports.AsyncDefault = AsyncDefault;
49
88
  //# sourceMappingURL=defaults.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecursiveCollection.d.ts","sourceRoot":"","sources":["../../src/relations/RecursiveCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecursiveCollection.d.ts","sourceRoot":"","sources":["../../src/relations/RecursiveCollection.ts"],"names":[],"mappings":"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"}
@@ -82,13 +82,20 @@ class RecursiveParentsCollectionImpl extends AbstractRecursiveCollectionImpl {
82
82
  async load(opts = {}) {
83
83
  (0, index_1.ensureNotDeleted)(this.entity, "pending");
84
84
  if (!this.isLoaded || opts.forceReload) {
85
- await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this).load(this.entity);
86
- // See if there are any WIP changes, i.e. new parents, that the ^ SQL query didn't know to load.
87
- // We don't have to `while` loop this, because if parent itself has WIP changes above it, then
88
- // its own `RecursiveParentsCollectionImpl.load` will load it, before returning to this method.
89
- const unloadedParent = this.findUnloadedReference();
90
- if (unloadedParent) {
91
- await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this).load(unloadedParent.entity);
85
+ // If we have `[grandchild, newlyCreatedParent, existingGrandparent, ...more...]`, skip up to the
86
+ // `existingGrandparent`, because if we `.load(entity)` (i.e. where we are the `grandchild`) then
87
+ // recursiveParentsDataLoader will try CTE query up from `grandchild[parent]`, but since that will
88
+ // be `newlyCreatedParent`, it doesn't have an id yet.
89
+ const entityToLoad = opts.forceReload ? this.entity : this.findUnloadedReference()?.entity;
90
+ if (entityToLoad && !entityToLoad.isNewEntity) {
91
+ await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this).load(entityToLoad);
92
+ // See if there are any WIP changes, i.e. new parents, that the ^ SQL query didn't know to load.
93
+ // We don't have to `while` loop this, because if parent itself has WIP changes above it, then
94
+ // its own `RecursiveParentsCollectionImpl.load` will load it, before returning to this method.
95
+ const unloadedParent = this.findUnloadedReference();
96
+ if (unloadedParent) {
97
+ await (0, recursiveParentsDataLoader_1.recursiveParentsDataLoader)(this.entity.em, this).load(unloadedParent.entity);
98
+ }
92
99
  }
93
100
  }
94
101
  return this.filterDeleted(this.doGet(), opts);
@@ -1 +1 @@
1
- {"version":3,"file":"RecursiveCollection.js","sourceRoot":"","sources":["../../src/relations/RecursiveCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecursiveCollection.js","sourceRoot":"","sources":["../../src/relations/RecursiveCollection.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "joist-orm",
3
- "version": "1.185.2",
3
+ "version": "1.186.1",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,8 +21,9 @@
21
21
  "dependencies": {
22
22
  "@types/object-hash": "^3.0.6",
23
23
  "ansis": "^3.2.0",
24
+ "batching-toposort": "^1.2.0",
24
25
  "dataloader": "^2.2.2",
25
- "joist-utils": "1.185.2",
26
+ "joist-utils": "1.186.1",
26
27
  "knex": "^3.1.0",
27
28
  "object-hash": "^3.0.0",
28
29
  "pg": "^8.12.0",