joist-orm 1.161.1 → 1.162.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.
@@ -2,7 +2,7 @@ import { IdType } from "./Entity";
2
2
  import { Entity, EntityManager, InstanceData, OptsOf, PartialOrNull, TaggedId } from "./index";
3
3
  export declare let currentlyInstantiatingEntity: Entity | undefined;
4
4
  /**
5
- * Returns the internal `#orm` tracking field for `entity`.
5
+ * Returns the internal `__data` tracking field for `entity`.
6
6
  *
7
7
  * This should be treated as an internal API and may change without notice.
8
8
  */
@@ -13,8 +13,8 @@ export declare function getInstanceData(entity: Entity): InstanceData;
13
13
  * Currently, this just adds the `.load(lensFn)` method for declarative reference traversal.
14
14
  */
15
15
  export declare abstract class BaseEntity<EM extends EntityManager, I extends IdType = IdType> implements Entity {
16
- #private;
17
16
  static getInstanceData(entity: Entity): InstanceData;
17
+ protected readonly __data: InstanceData;
18
18
  protected constructor(em: EM, optsOrId: any);
19
19
  get fullNonReactiveAccess(): this;
20
20
  /** @returns the entity's id, tagged/untagged based on your config, or a runtime error if it's new/unassigned. */
@@ -1 +1 @@
1
- {"version":3,"file":"BaseEntity.d.ts","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,MAAM,EACN,aAAa,EACb,QAAQ,EAIT,MAAM,SAAS,CAAC;AAEjB,eAAO,IAAI,4BAA4B,EAAE,MAAM,GAAG,SAAS,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAE5D;AAED;;;;GAIG;AACH,8BAAsB,UAAU,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,MAAM;;WACvF,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK3D,SAAS,aAAa,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG;IAc3C,IAAI,qBAAqB,IAAI,IAAI,CAEhC;IAED,iHAAiH;IACjH,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEf,wGAAwG;IACxG,QAAQ,KAAK,OAAO,IAAI,CAAC,GAAG,SAAS,CAAC;IAEtC,0FAA0F;IAC1F,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,oFAAoF;IACpF,QAAQ,KAAK,aAAa,IAAI,QAAQ,GAAG,SAAS,CAAC;IAEnD,wFAAwF;IACxF,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI;IAEnD;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI;IAEhE;;;;;OAKG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,QAAQ,IAAI,MAAM;IAgBlB,IAAW,EAAE,IAAI,EAAE,CAElB;IAED;;;;;;OAMG;IACI,MAAM,IAAI,MAAM;IAIvB,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM;CAY/B"}
1
+ {"version":3,"file":"BaseEntity.d.ts","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,MAAM,EACN,aAAa,EACb,QAAQ,EAIT,MAAM,SAAS,CAAC;AAEjB,eAAO,IAAI,4BAA4B,EAAE,MAAM,GAAG,SAAS,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAE5D;AAED;;;;GAIG;AACH,8BAAsB,UAAU,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,MAAM;WACvF,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAI3D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,YAAY,CAAC;IAEzC,SAAS,aAAa,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG;IAa3C,IAAI,qBAAqB,IAAI,IAAI,CAEhC;IAED,iHAAiH;IACjH,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEf,wGAAwG;IACxG,QAAQ,KAAK,OAAO,IAAI,CAAC,GAAG,SAAS,CAAC;IAEtC,0FAA0F;IAC1F,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,oFAAoF;IACpF,QAAQ,KAAK,aAAa,IAAI,QAAQ,GAAG,SAAS,CAAC;IAEnD,wFAAwF;IACxF,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI;IAEnD;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI;IAEhE;;;;;OAKG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,QAAQ,IAAI,MAAM;IAgBlB,IAAW,EAAE,IAAI,EAAE,CAElB;IAED;;;;;;OAMG;IACI,MAAM,IAAI,MAAM;IAIvB,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM;CAY/B"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseEntity = exports.getInstanceData = exports.currentlyInstantiatingEntity = void 0;
4
4
  const index_1 = require("./index");
5
5
  /**
6
- * Returns the internal `#orm` tracking field for `entity`.
6
+ * Returns the internal `__data` tracking field for `entity`.
7
7
  *
8
8
  * This should be treated as an internal API and may change without notice.
9
9
  */
@@ -18,18 +18,18 @@ exports.getInstanceData = getInstanceData;
18
18
  */
19
19
  class BaseEntity {
20
20
  static getInstanceData(entity) {
21
- return entity.#orm;
21
+ return entity.__data;
22
22
  }
23
- #orm;
23
+ // We use a protected field so that subclass getters can easily access `this.__data.relations`.
24
+ __data;
24
25
  constructor(em, optsOrId) {
26
+ const isNew = typeof optsOrId !== "string";
27
+ const data = new index_1.InstanceData(em, this.constructor.metadata, isNew);
28
+ // This makes it non-enumerable to avoid Jest/recursive things tripping over it
29
+ Object.defineProperty(this, "__data", { value: data, enumerable: false, writable: false, configurable: false });
25
30
  // Only do em.register for em.create-d entities, otherwise defer to hydrate to em.register
26
- if (typeof optsOrId === "string") {
27
- this.#orm = new index_1.InstanceData(em, this.constructor.metadata, false);
28
- }
29
- else {
30
- this.#orm = new index_1.InstanceData(em, this.constructor.metadata, true);
31
+ if (isNew)
31
32
  em.register(this);
32
- }
33
33
  exports.currentlyInstantiatingEntity = this;
34
34
  }
35
35
  // This gives rules a way to access the fully typed object instead of their Reacted view.
@@ -49,13 +49,13 @@ class BaseEntity {
49
49
  * is no longer new; this only flips to `false` after the `flush` transaction has been committed.
50
50
  */
51
51
  get isNewEntity() {
52
- return this.#orm.isNewEntity;
52
+ return this.__data.isNewEntity;
53
53
  }
54
54
  get isDeletedEntity() {
55
- return this.#orm.isDeletedEntity;
55
+ return this.__data.isDeletedEntity;
56
56
  }
57
57
  get isDirtyEntity() {
58
- return this.#orm.isDirtyEntity;
58
+ return this.__data.isDirtyEntity;
59
59
  }
60
60
  toString() {
61
61
  const meta = (0, index_1.getMetadata)(this);
@@ -74,7 +74,7 @@ class BaseEntity {
74
74
  }
75
75
  }
76
76
  get em() {
77
- return this.#orm.em;
77
+ return this.__data.em;
78
78
  }
79
79
  /**
80
80
  * A very simple toJSON that just returns the id.
@@ -1 +1 @@
1
- {"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":";;;AACA,mCAUiB;AAIjB;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAFD,0CAEC;AAED;;;;GAIG;AACH,MAAsB,UAAU;IACvB,MAAM,CAAC,eAAe,CAAC,MAAc;QAC1C,OAAQ,MAA0B,CAAC,IAAI,CAAC;IAC1C,CAAC;IACQ,IAAI,CAAgB;IAE7B,YAAsB,EAAM,EAAE,QAAa;QACzC,0FAA0F;QAC1F,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,GAAG,IAAI,oBAAY,CAAC,EAAE,EAAG,IAAI,CAAC,WAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,oBAAY,CAAC,EAAE,EAAG,IAAI,CAAC,WAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC3E,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,oCAA4B,GAAG,IAAI,CAAC;IACtC,CAAC;IAED,yFAAyF;IACzF,4FAA4F;IAC5F,8BAA8B;IAC9B,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAcD,wFAAwF;IACxF,IAAI,UAAU;QACZ,OAAO,IAAA,eAAO,EAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IASD;;;;;OAKG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;QAC/B,sFAAsF;QACtF,4FAA4F;QAC5F,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC;YACxE,uEAAuE;YACvE,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,MAAM,EAAE,GAAG,IAAA,mBAAW,EAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;YAC/C,8GAA8G;YAC9G,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,EAAQ,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACI,MAAM;QACX,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,CAAC,MAAM,CAAC,WAAW,CAAC;QAClB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AA7GD,gCA6GC"}
1
+ {"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getProperties.d.ts","sourceRoot":"","sources":["../src/getProperties.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA6BvE;AAED,qBAAa,eAAe;CAAG;AAM/B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAc5D"}
1
+ {"version":3,"file":"getProperties.d.ts","sourceRoot":"","sources":["../src/getProperties.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA0CvE;AAED,qBAAa,eAAe;CAAG;AAM/B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAc5D"}
@@ -26,14 +26,25 @@ function getProperties(meta) {
26
26
  return propertiesCache[key];
27
27
  }
28
28
  const instance = getFakeInstance(meta);
29
- propertiesCache[key] = Object.fromEntries([
30
- ...Object.values(meta.allFields)
31
- .filter((f) => f.kind !== "primaryKey" && f.kind !== "primitive" && f.kind !== "enum")
32
- .map((f) => f.fieldName),
33
- ...Object.getOwnPropertyNames(meta.cstr.prototype),
34
- ...Object.keys(instance),
35
- ]
36
- .filter((key) => key !== "constructor" && !key.startsWith("__"))
29
+ // Mostly for historical reasons, we don't treat known primitives/enums as properties,
30
+ // i.e. properties were originally meant to be the wrapper objects like `hasOne`,
31
+ // `hasMany`, `ReactiveField`, etc.
32
+ //
33
+ // That said, we've since start leaking other things like getters, regular async methods,
34
+ // etc., into properties, so that `entityResolver` can pick them up as keys to put into
35
+ // the GraphQL resolvers. So we should probably just remove this filter and let everything
36
+ // get returned as properties.
37
+ const knownPrimitives = Object.values(meta.allFields)
38
+ .filter((f) => f.kind === "primaryKey" || f.kind === "primitive" || f.kind === "enum")
39
+ .map((f) => f.fieldName);
40
+ propertiesCache[key] = Object.fromEntries(
41
+ // Recursively looking for ownKeys will find:
42
+ // - Custom properties set on the instance, like `readonly author: Reference<Author> = hasOneThrough(...)`
43
+ // - Getters declared within the class like `get initials()`
44
+ // - Getters auto-created by transform-properties when it lazies `readonly author = hasOneThrough(...)` relations
45
+ // - Getters declared within the codegen classes like `get books(): Reference<...>`
46
+ getRecursiveOwnNames(instance)
47
+ .filter((key) => key !== "constructor" && !key.startsWith("__") && !knownPrimitives.includes(key))
37
48
  .map((key) => {
38
49
  // Return the value of `instance[key]` but wrap it in a try/catch in case it's
39
50
  // a getter that runs code that fails b/c of the dummy state we're in.
@@ -72,4 +83,29 @@ function getFakeInstance(meta) {
72
83
  }, {}));
73
84
  }
74
85
  exports.getFakeInstance = getFakeInstance;
86
+ // These are keys we codegen into `AuthorCodegen` files to get the best typing
87
+ // experience, but really should be treated as BaseEntity keys that we don't
88
+ // need to expose from `getProperties`.
89
+ const ignoredKeys = new Set([
90
+ "id",
91
+ "idMaybe",
92
+ "idTagged",
93
+ "idTaggedMaybe",
94
+ "set",
95
+ "setPartial",
96
+ "changes",
97
+ "isSoftDeletedEntity",
98
+ "load",
99
+ "populate",
100
+ "isLoaded",
101
+ "toJSON",
102
+ ]);
103
+ // function getRecursiveOwnNames(cstr: MaybeAbstractEntityConstructor<any>): string[] {
104
+ function getRecursiveOwnNames(instance) {
105
+ const keys = [];
106
+ for (let curr = instance; curr && curr !== BaseEntity_1.BaseEntity.prototype; curr = Object.getPrototypeOf(curr)) {
107
+ keys.push(...Object.getOwnPropertyNames(curr));
108
+ }
109
+ return keys.filter((k) => !ignoredKeys.has(k));
110
+ }
75
111
  //# sourceMappingURL=getProperties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getProperties.js","sourceRoot":"","sources":["../src/getProperties.ts"],"names":[],"mappings":";;;AAAA,6CAA+C;AAG/C,mCAAyC;AAEzC;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,aAAa,CAAC,IAAoB;IAChD,qDAAqD;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IAC5G,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACvC,eAAe,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,WAAW,CACvC;QACE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;aAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1B,GAAG,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QAClD,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;KACzB;SACE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,aAAa,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SAC/D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,8EAA8E;QAC9E,sEAAsE;QACtE,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,EAAG,QAAgB,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;QACF,sGAAsG;SACrG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,uBAAuB,IAAI,GAAG,KAAK,iBAAiB,CAAC,CACnF,CAAC;IACF,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AA7BD,sCA6BC;AAED,MAAa,eAAe;CAAG;AAA/B,0CAA+B;AAC/B,MAAM,OAAO,GAAG,IAAI,eAAe,EAAE,CAAC;AAEtC,MAAM,eAAe,GAAwB,EAAE,CAAC;AAChD,MAAM,aAAa,GAA2B,EAAE,CAAC;AAEjD;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAoB;IAClD,2FAA2F;IAC3F,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAA,sBAAc,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACvE;QACE,QAAQ,EAAE,CAAC,MAAW,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;YACnC,GAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC7B,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;QAChB,CAAC;QACD,mFAAmF;QACnF,YAAY,EAAE,IAAI;KACZ,EACR,EAAE,CACH,CAAC,CAAC;AACL,CAAC;AAdD,0CAcC"}
1
+ {"version":3,"file":"getProperties.js","sourceRoot":"","sources":["../src/getProperties.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loadLens.d.ts","sourceRoot":"","sources":["../src/loadLens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadLens.d.ts","sourceRoot":"","sources":["../src/loadLens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,KAAK,EAAe,MAAM,kBAAkB,CAAC;AAItE,mEAAmE;AACnE,KAAK,QAAQ,CAAC,CAAC,IAAI;IAAE,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC;AAE1C,gFAAgF;AAChF,KAAK,aAAa,CAAC,CAAC,IAAI,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;AAE7C,iHAAiH;AAKjH,KAAK,UAAU,CAAC,CAAC,EAAE,CAAC,IAClB,CAAC,SAAS,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;AAEtH,yGAAyG;AACzG,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAElE,KAAK,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAC1C,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACxD,CAAC,CAAC,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GACjC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACxD,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrE,CAAC;AAEF;;;;;;;;GAQG;AAIH,wBAAsB,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,EACnD,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EACd,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EACjC,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAClD,OAAO,CAAC,CAAC,CAAC,CAqDZ;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAU5E;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,CAarH;AAgBD;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CA2BrF;AAMD,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CA8BhG"}
package/build/loadLens.js CHANGED
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isLensLoaded = exports.getLens = exports.mapPathsToTarget = exports.isAllSqlPaths = exports.loadLens = void 0;
4
- const lensDataLoader_1 = require("./dataloaders/lensDataLoader");
5
4
  const Entity_1 = require("./Entity");
6
5
  const EntityMetadata_1 = require("./EntityMetadata");
6
+ const lensDataLoader_1 = require("./dataloaders/lensDataLoader");
7
+ const AbstractRelationImpl_1 = require("./relations/AbstractRelationImpl");
7
8
  /**
8
9
  * Allows declaratively loading/traversing several layers of references at once.
9
10
  *
@@ -128,8 +129,18 @@ function getLens(start, fn) {
128
129
  // Now evaluate each step of the path
129
130
  for (const path of paths) {
130
131
  if (Array.isArray(current)) {
131
- current = current.map((c) => maybeGet(c, path)).flat();
132
- current = [...new Set(current.filter((c) => c !== undefined && !c.isSoftDeletedEntity))];
132
+ // Use a set to dedup as we go
133
+ const next = new Set();
134
+ // This can be a hot path, so avoid `map` and `flat` and just loop
135
+ for (const c of current) {
136
+ const value = maybeGet(c, path);
137
+ if (Array.isArray(value))
138
+ for (const v of value)
139
+ maybeAdd(next, v);
140
+ else
141
+ maybeAdd(next, value);
142
+ }
143
+ current = [...next];
133
144
  }
134
145
  else {
135
146
  current = maybeGet(current, path);
@@ -144,30 +155,60 @@ function getLens(start, fn) {
144
155
  return current;
145
156
  }
146
157
  exports.getLens = getLens;
158
+ function maybeAdd(set, value) {
159
+ if (value !== undefined && !value.isSoftDeletedEntity)
160
+ set.add(value);
161
+ }
147
162
  /** Returns whether a lens is loaded; primarily for deeply loaded instances in tests. */
148
163
  function isLensLoaded(start, fn) {
149
- // This is pretty hacky, but we just call `get` and assume it will blow up with "not loaded" errors.
150
- try {
151
- getLens(start, fn);
152
- return true;
153
- }
154
- catch {
155
- return false;
164
+ // This is a huge copy/paste of `getLens` but we check `isNotLoaded` and early return
165
+ // as soon as we find any not-loaded relation
166
+ const paths = collectPaths(fn);
167
+ let current = start;
168
+ let seenSoftDeleted = false;
169
+ // Now evaluate each step of the path
170
+ for (const path of paths) {
171
+ if (Array.isArray(current)) {
172
+ // Use a set to dedup as we go
173
+ const next = new Set();
174
+ for (const c of current) {
175
+ if (isNotLoaded(c, path))
176
+ return false;
177
+ const value = maybeGet(c, path);
178
+ if (Array.isArray(value))
179
+ for (const v of value)
180
+ maybeAdd(next, v);
181
+ else
182
+ maybeAdd(next, value);
183
+ }
184
+ current = [...next];
185
+ }
186
+ else {
187
+ if (isNotLoaded(current, path))
188
+ return false;
189
+ current = maybeGet(current, path);
190
+ seenSoftDeleted ||= current?.isSoftDeletedEntity;
191
+ // If we had been traversing m2o -> m2o and just hit an o2m/m2m, and any of our
192
+ // prior m2os had been soft deleted, just filter everything out.
193
+ if (Array.isArray(current) && seenSoftDeleted) {
194
+ return true;
195
+ }
196
+ }
156
197
  }
198
+ return true;
157
199
  }
158
200
  exports.isLensLoaded = isLensLoaded;
201
+ function isNotLoaded(object, path) {
202
+ const value = object[path];
203
+ return value instanceof AbstractRelationImpl_1.AbstractRelationImpl && !value.isLoaded;
204
+ }
159
205
  function maybeGet(object, path) {
160
206
  if (object === undefined || object === null) {
161
207
  return undefined;
162
208
  }
163
209
  const value = object[path];
164
- if (value && typeof value === "object" && "get" in value) {
165
- if (typeof value.get === "function") {
166
- return value.get();
167
- }
168
- else {
169
- return value.get;
170
- }
210
+ if (typeof value === "object" && "get" in value) {
211
+ return value.get;
171
212
  }
172
213
  else if (value && typeof value === "function") {
173
214
  return value.apply(object);
@@ -1 +1 @@
1
- {"version":3,"file":"loadLens.js","sourceRoot":"","sources":["../src/loadLens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadLens.js","sourceRoot":"","sources":["../src/loadLens.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.161.1",
3
+ "version": "1.162.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,7 +21,7 @@
21
21
  "dependencies": {
22
22
  "@types/object-hash": "^3.0.6",
23
23
  "dataloader": "^2.2.2",
24
- "joist-utils": "1.161.1",
24
+ "joist-utils": "1.162.0",
25
25
  "knex": "^3.1.0",
26
26
  "object-hash": "^3.0.0",
27
27
  "pg": "^8.11.5",