joist-core 2.2.0 → 2.3.0-next.2

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 (233) 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 +1 -1
  6. package/build/BaseEntity.js.map +1 -1
  7. package/build/Entity.d.ts +1 -0
  8. package/build/Entity.d.ts.map +1 -1
  9. package/build/EntityFilter.d.ts +29 -10
  10. package/build/EntityFilter.d.ts.map +1 -1
  11. package/build/EntityFilter.js +18 -0
  12. package/build/EntityFilter.js.map +1 -1
  13. package/build/EntityGraphQLFilter.d.ts +3 -0
  14. package/build/EntityGraphQLFilter.d.ts.map +1 -1
  15. package/build/EntityGraphQLFilter.js.map +1 -1
  16. package/build/EntityManager.d.ts +36 -50
  17. package/build/EntityManager.d.ts.map +1 -1
  18. package/build/EntityManager.js +248 -124
  19. package/build/EntityManager.js.map +1 -1
  20. package/build/EntityMetadata.d.ts +48 -2
  21. package/build/EntityMetadata.d.ts.map +1 -1
  22. package/build/EntityMetadata.js +17 -0
  23. package/build/EntityMetadata.js.map +1 -1
  24. package/build/IndexManager.d.ts +5 -5
  25. package/build/IndexManager.d.ts.map +1 -1
  26. package/build/IndexManager.js +48 -32
  27. package/build/IndexManager.js.map +1 -1
  28. package/build/InstanceData.d.ts +16 -2
  29. package/build/InstanceData.d.ts.map +1 -1
  30. package/build/InstanceData.js +37 -4
  31. package/build/InstanceData.js.map +1 -1
  32. package/build/IsLoadedCache.d.ts.map +1 -1
  33. package/build/IsLoadedCache.js +31 -25
  34. package/build/IsLoadedCache.js.map +1 -1
  35. package/build/JoinRows.d.ts +54 -12
  36. package/build/JoinRows.d.ts.map +1 -1
  37. package/build/JoinRows.js +114 -44
  38. package/build/JoinRows.js.map +1 -1
  39. package/build/QueryParser.collectionJoins.js +8 -2
  40. package/build/QueryParser.collectionJoins.js.map +1 -1
  41. package/build/QueryParser.d.ts +15 -3
  42. package/build/QueryParser.d.ts.map +1 -1
  43. package/build/QueryParser.js +293 -190
  44. package/build/QueryParser.js.map +1 -1
  45. package/build/QueryParser.pruning.d.ts.map +1 -1
  46. package/build/QueryParser.pruning.js +8 -1
  47. package/build/QueryParser.pruning.js.map +1 -1
  48. package/build/QueryParser.test.d.ts +2 -0
  49. package/build/QueryParser.test.d.ts.map +1 -0
  50. package/build/QueryParser.test.js +27 -0
  51. package/build/QueryParser.test.js.map +1 -0
  52. package/build/ReactionsManager.d.ts +2 -1
  53. package/build/ReactionsManager.d.ts.map +1 -1
  54. package/build/ReactionsManager.js +53 -49
  55. package/build/ReactionsManager.js.map +1 -1
  56. package/build/Todo.d.ts +4 -0
  57. package/build/Todo.d.ts.map +1 -1
  58. package/build/Todo.js.map +1 -1
  59. package/build/batchloaders/BatchLoader.d.ts.map +1 -1
  60. package/build/batchloaders/BatchLoader.js +6 -1
  61. package/build/batchloaders/BatchLoader.js.map +1 -1
  62. package/build/batchloaders/enumCollectionBatchLoader.d.ts +7 -0
  63. package/build/batchloaders/enumCollectionBatchLoader.d.ts.map +1 -0
  64. package/build/batchloaders/enumCollectionBatchLoader.js +54 -0
  65. package/build/batchloaders/enumCollectionBatchLoader.js.map +1 -0
  66. package/build/batchloaders/manyToManyBatchLoader.d.ts.map +1 -1
  67. package/build/batchloaders/manyToManyBatchLoader.js +10 -2
  68. package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
  69. package/build/batchloaders/populateBatchLoader.d.ts.map +1 -1
  70. package/build/batchloaders/populateBatchLoader.js +26 -8
  71. package/build/batchloaders/populateBatchLoader.js.map +1 -1
  72. package/build/batchloaders/recursiveChildrenBatchLoader.d.ts.map +1 -1
  73. package/build/batchloaders/recursiveChildrenBatchLoader.js +2 -0
  74. package/build/batchloaders/recursiveChildrenBatchLoader.js.map +1 -1
  75. package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +1 -1
  76. package/build/batchloaders/recursiveM2mBatchLoader.js +1 -3
  77. package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
  78. package/build/batchloaders/recursiveParentsBatchLoader.d.ts.map +1 -1
  79. package/build/batchloaders/recursiveParentsBatchLoader.js +2 -0
  80. package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
  81. package/build/changes.d.ts +13 -0
  82. package/build/changes.d.ts.map +1 -1
  83. package/build/changes.js +49 -0
  84. package/build/changes.js.map +1 -1
  85. package/build/configure.d.ts +5 -3
  86. package/build/configure.d.ts.map +1 -1
  87. package/build/configure.js +70 -0
  88. package/build/configure.js.map +1 -1
  89. package/build/dataloaders/fastWhereFilterHash.d.ts +15 -0
  90. package/build/dataloaders/fastWhereFilterHash.d.ts.map +1 -0
  91. package/build/dataloaders/fastWhereFilterHash.js +164 -0
  92. package/build/dataloaders/fastWhereFilterHash.js.map +1 -0
  93. package/build/dataloaders/fastWhereFilterHash.test.d.ts +2 -0
  94. package/build/dataloaders/fastWhereFilterHash.test.d.ts.map +1 -0
  95. package/build/dataloaders/fastWhereFilterHash.test.js +59 -0
  96. package/build/dataloaders/fastWhereFilterHash.test.js.map +1 -0
  97. package/build/dataloaders/findCountDataLoader.d.ts +13 -4
  98. package/build/dataloaders/findCountDataLoader.d.ts.map +1 -1
  99. package/build/dataloaders/findCountDataLoader.js +58 -15
  100. package/build/dataloaders/findCountDataLoader.js.map +1 -1
  101. package/build/dataloaders/findDataLoader.d.ts +49 -10
  102. package/build/dataloaders/findDataLoader.d.ts.map +1 -1
  103. package/build/dataloaders/findDataLoader.js +217 -108
  104. package/build/dataloaders/findDataLoader.js.map +1 -1
  105. package/build/dataloaders/findIdsDataLoader.d.ts +1 -2
  106. package/build/dataloaders/findIdsDataLoader.d.ts.map +1 -1
  107. package/build/dataloaders/findIdsDataLoader.js +18 -17
  108. package/build/dataloaders/findIdsDataLoader.js.map +1 -1
  109. package/build/dataloaders/findOrCreateDataLoader.d.ts.map +1 -1
  110. package/build/dataloaders/findOrCreateDataLoader.js +3 -3
  111. package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
  112. package/build/dataloaders/findPaginatedDataLoader.d.ts +7 -0
  113. package/build/dataloaders/findPaginatedDataLoader.d.ts.map +1 -0
  114. package/build/dataloaders/findPaginatedDataLoader.js +84 -0
  115. package/build/dataloaders/findPaginatedDataLoader.js.map +1 -0
  116. package/build/dataloaders/manyToManyFindDataLoader.js +7 -1
  117. package/build/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  118. package/build/drivers/EntityWriter.js +13 -7
  119. package/build/drivers/EntityWriter.js.map +1 -1
  120. package/build/drivers/buildRawQuery.d.ts +6 -4
  121. package/build/drivers/buildRawQuery.d.ts.map +1 -1
  122. package/build/drivers/buildRawQuery.js +8 -4
  123. package/build/drivers/buildRawQuery.js.map +1 -1
  124. package/build/fields.d.ts +2 -0
  125. package/build/fields.d.ts.map +1 -1
  126. package/build/fields.js +18 -6
  127. package/build/fields.js.map +1 -1
  128. package/build/index.d.ts +3 -1
  129. package/build/index.d.ts.map +1 -1
  130. package/build/index.js +4 -1
  131. package/build/index.js.map +1 -1
  132. package/build/keys.d.ts.map +1 -1
  133. package/build/keys.js +8 -6
  134. package/build/keys.js.map +1 -1
  135. package/build/loadHints.d.ts +13 -4
  136. package/build/loadHints.d.ts.map +1 -1
  137. package/build/loadHints.js +63 -9
  138. package/build/loadHints.js.map +1 -1
  139. package/build/loadLens.d.ts +11 -0
  140. package/build/loadLens.d.ts.map +1 -1
  141. package/build/loadLens.js +43 -10
  142. package/build/loadLens.js.map +1 -1
  143. package/build/newEntity.d.ts.map +1 -1
  144. package/build/newEntity.js +16 -14
  145. package/build/newEntity.js.map +1 -1
  146. package/build/newTestInstance.d.ts.map +1 -1
  147. package/build/newTestInstance.js +3 -0
  148. package/build/newTestInstance.js.map +1 -1
  149. package/build/normalizeHints.d.ts +7 -0
  150. package/build/normalizeHints.d.ts.map +1 -1
  151. package/build/normalizeHints.js +40 -2
  152. package/build/normalizeHints.js.map +1 -1
  153. package/build/preloading/JsonAggregatePreloader.d.ts.map +1 -1
  154. package/build/preloading/JsonAggregatePreloader.js +91 -9
  155. package/build/preloading/JsonAggregatePreloader.js.map +1 -1
  156. package/build/preloading/canPreload.d.ts +2 -2
  157. package/build/preloading/canPreload.d.ts.map +1 -1
  158. package/build/preloading/canPreload.js +3 -0
  159. package/build/preloading/canPreload.js.map +1 -1
  160. package/build/preloading/partitionHint.d.ts.map +1 -1
  161. package/build/preloading/partitionHint.js +10 -4
  162. package/build/preloading/partitionHint.js.map +1 -1
  163. package/build/reactiveHints.d.ts +2 -2
  164. package/build/reactiveHints.d.ts.map +1 -1
  165. package/build/reactiveHints.js +9 -0
  166. package/build/reactiveHints.js.map +1 -1
  167. package/build/relations/EnumCollection.d.ts +81 -0
  168. package/build/relations/EnumCollection.d.ts.map +1 -0
  169. package/build/relations/EnumCollection.js +211 -0
  170. package/build/relations/EnumCollection.js.map +1 -0
  171. package/build/relations/ManyToManyCollection.d.ts +1 -0
  172. package/build/relations/ManyToManyCollection.d.ts.map +1 -1
  173. package/build/relations/ManyToManyCollection.js +5 -2
  174. package/build/relations/ManyToManyCollection.js.map +1 -1
  175. package/build/relations/ManyToManyLargeCollection.d.ts +3 -2
  176. package/build/relations/ManyToManyLargeCollection.d.ts.map +1 -1
  177. package/build/relations/ManyToManyLargeCollection.js +7 -4
  178. package/build/relations/ManyToManyLargeCollection.js.map +1 -1
  179. package/build/relations/OneToManyCollection.d.ts.map +1 -1
  180. package/build/relations/OneToManyCollection.js +2 -2
  181. package/build/relations/OneToManyCollection.js.map +1 -1
  182. package/build/relations/OneToManyLargeCollection.d.ts.map +1 -1
  183. package/build/relations/OneToManyLargeCollection.js +2 -1
  184. package/build/relations/OneToManyLargeCollection.js.map +1 -1
  185. package/build/relations/ReactiveManyToMany.d.ts +1 -0
  186. package/build/relations/ReactiveManyToMany.d.ts.map +1 -1
  187. package/build/relations/ReactiveManyToMany.js +4 -1
  188. package/build/relations/ReactiveManyToMany.js.map +1 -1
  189. package/build/relations/ReactiveManyToManyOtherSide.d.ts +1 -0
  190. package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +1 -1
  191. package/build/relations/ReactiveManyToManyOtherSide.js +4 -1
  192. package/build/relations/ReactiveManyToManyOtherSide.js.map +1 -1
  193. package/build/relations/RecursiveCollection.d.ts +2 -6
  194. package/build/relations/RecursiveCollection.d.ts.map +1 -1
  195. package/build/relations/RecursiveCollection.js +9 -17
  196. package/build/relations/RecursiveCollection.js.map +1 -1
  197. package/build/relations/RecursiveCycleError.d.ts +13 -0
  198. package/build/relations/RecursiveCycleError.d.ts.map +1 -0
  199. package/build/relations/RecursiveCycleError.js +15 -0
  200. package/build/relations/RecursiveCycleError.js.map +1 -0
  201. package/build/relations/hasOneThrough.d.ts.map +1 -1
  202. package/build/relations/hasOneThrough.js +6 -4
  203. package/build/relations/hasOneThrough.js.map +1 -1
  204. package/build/relations/hasProperty.d.ts +2 -1
  205. package/build/relations/hasProperty.d.ts.map +1 -1
  206. package/build/relations/hasProperty.js +15 -5
  207. package/build/relations/hasProperty.js.map +1 -1
  208. package/build/relations/index.d.ts +1 -0
  209. package/build/relations/index.d.ts.map +1 -1
  210. package/build/relations/index.js +5 -2
  211. package/build/relations/index.js.map +1 -1
  212. package/build/rules.js +1 -1
  213. package/build/rules.js.map +1 -1
  214. package/build/scopes.d.ts +185 -0
  215. package/build/scopes.d.ts.map +1 -0
  216. package/build/scopes.js +302 -0
  217. package/build/scopes.js.map +1 -0
  218. package/build/temporal.d.ts +32 -2
  219. package/build/temporal.d.ts.map +1 -1
  220. package/build/temporal.js +18 -0
  221. package/build/temporal.js.map +1 -1
  222. package/build/upsert.d.ts.map +1 -1
  223. package/build/upsert.js +9 -2
  224. package/build/upsert.js.map +1 -1
  225. package/build/utils.d.ts +2 -0
  226. package/build/utils.d.ts.map +1 -1
  227. package/build/utils.js +12 -0
  228. package/build/utils.js.map +1 -1
  229. package/package.json +8 -10
  230. package/build/caches.d.ts +0 -6
  231. package/build/caches.d.ts.map +0 -1
  232. package/build/caches.js +0 -42
  233. package/build/caches.js.map +0 -1
package/build/index.d.ts CHANGED
@@ -30,7 +30,7 @@ export * from "./EntityMetadata";
30
30
  export { EnumMetadata } from "./EnumMetadata";
31
31
  export { EntityOrId, HintNode } from "./HintTree";
32
32
  export { InstanceData } from "./InstanceData";
33
- export { JoinRow, JoinRowOperation, ManyToManyLike } from "./JoinRows";
33
+ export { JoinColumnValue, JoinRow, JoinRowOperation, ManyToManyLike } from "./JoinRows";
34
34
  export * from "./PendingChanges";
35
35
  export { Plugin } from "./PluginManager";
36
36
  export * from "./QueryParser";
@@ -63,6 +63,8 @@ export * from "./relations";
63
63
  export { cannotBeChanged, cannotBeUpdated, GenericError, maxValueRule, minValueRule, mustBeSubType, newRequiredRule, rangeValueRule, ValidationCode, ValidationError, ValidationErrors, ValidationRule, ValidationRuleResult, } from "./rules";
64
64
  export { getRuntimeConfig, setRuntimeConfig, type RuntimeConfig } from "./runtimeConfig";
65
65
  export * from "./serde";
66
+ export * from "./scopes";
67
+ export { Temporal } from "./temporal";
66
68
  export * from "./temporalMappers";
67
69
  export { isInTrustedContext, runInTrustedContext } from "./trusted";
68
70
  export * from "./typeMap";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/build/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.deepNormalizeHint = exports.testIndex = exports.setFactoryLogging = exports.noValue = exports.newTestInstance = exports.maybeNewPoly = exports.maybeNew = exports.maybeBranchValue = exports.isFactoryCreation = exports.getTestIndex = exports.factories = exports.defaultValue = exports.lazyField = exports.setReactionLogging = exports.ReactionLogger = exports.setFactoryWriter = exports.unsafeLoaded = exports.maybePopulateThen = exports.isNew = exports.isLoaded = exports.ensureLoaded = exports.assertLoaded = exports.kqStar = exports.kqDot = exports.kq = exports.setField = exports.isFieldSet = exports.isChangeableField = exports.getField = exports.driverApi = exports.maybeGetConstructorFromReference = exports.getMetadataForType = exports.getMetadataForTable = exports.getConstructorFromTaggedId = exports.configureMetadata = exports.resetBootFlag = exports.ConfigApi = exports.Todo = exports.visitConditions = exports.Plugin = exports.JoinRowOperation = exports.InstanceData = exports.isEntity = exports.ConditionBuilder = exports.getInstanceData = exports.BaseEntity = exports.AliasAssigner = exports.newPgConnectionConfig = exports.internals = exports.testing = void 0;
18
- exports.NoIdError = exports.withLoaded = exports.StubbedRelation = exports.ensureWithLoaded = exports.zeroTo = exports.partition = exports.indexBy = exports.failIfAnyRejected = exports.fail = exports.cleanStringValue = exports.cleanSql = exports.assertNever = exports.asNew = exports.abbreviation = exports.upsert = exports.updatePartial = exports.ensureRectangularArraySizes = exports.buildUnnestCte = exports.runInTrustedContext = exports.isInTrustedContext = exports.setRuntimeConfig = exports.getRuntimeConfig = exports.ValidationErrors = exports.ValidationCode = exports.rangeValueRule = exports.newRequiredRule = exports.mustBeSubType = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.cannotBeChanged = exports.reverseReactiveHint = exports.isTypeOrSubType = exports.convertToLoadHint = exports.JsonAggregatePreloader = exports.ImmutableEntitiesPlugin = exports.normalizeHint = void 0;
18
+ exports.NoIdError = exports.withLoaded = exports.StubbedRelation = exports.ensureWithLoaded = exports.zeroTo = exports.partition = exports.indexBy = exports.failIfAnyRejected = exports.fail = exports.cleanStringValue = exports.cleanSql = exports.assertNever = exports.asNew = exports.abbreviation = exports.upsert = exports.updatePartial = exports.ensureRectangularArraySizes = exports.buildUnnestCte = exports.runInTrustedContext = exports.isInTrustedContext = exports.Temporal = exports.setRuntimeConfig = exports.getRuntimeConfig = exports.ValidationErrors = exports.ValidationCode = exports.rangeValueRule = exports.newRequiredRule = exports.mustBeSubType = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.cannotBeChanged = exports.reverseReactiveHint = exports.isTypeOrSubType = exports.convertToLoadHint = exports.JsonAggregatePreloader = exports.ImmutableEntitiesPlugin = exports.normalizeHint = void 0;
19
19
  exports.setOpts = setOpts;
20
20
  exports.setOpt = setOpt;
21
21
  exports.ensureNotDeleted = ensureNotDeleted;
@@ -150,6 +150,9 @@ var runtimeConfig_1 = require("./runtimeConfig");
150
150
  Object.defineProperty(exports, "getRuntimeConfig", { enumerable: true, get: function () { return runtimeConfig_1.getRuntimeConfig; } });
151
151
  Object.defineProperty(exports, "setRuntimeConfig", { enumerable: true, get: function () { return runtimeConfig_1.setRuntimeConfig; } });
152
152
  __exportStar(require("./serde"), exports);
153
+ __exportStar(require("./scopes"), exports);
154
+ var temporal_1 = require("./temporal");
155
+ Object.defineProperty(exports, "Temporal", { enumerable: true, get: function () { return temporal_1.Temporal; } });
153
156
  __exportStar(require("./temporalMappers"), exports);
154
157
  var trusted_1 = require("./trusted");
155
158
  Object.defineProperty(exports, "isInTrustedContext", { enumerable: true, get: function () { return trusted_1.isInTrustedContext; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAOxC,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IAEvD,4EAA4E;IAC5E,QAAQ,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;CAC9C,CAAC;AAEF,6GAA6G;AAC7G,wBAAgB,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAY/G;AAID,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,SAAS,GAC5D,QAAQ,GAAG,SAAS,CAEtB;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9E,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAkCtG,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAE9F;AAED,wHAAwH;AACxH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAIhE;AAOD,mEAAmE;AACnE,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACzD,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;AAsBtE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,8EAA8E;AAC9E,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ,CAAC;AACnE,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAe3F,yGAAyG;AACzG,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAC3C,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GACrC,CAAC,GAAG,QAAQ,GAAG,SAAS,CAE1B;AAED,uGAAuG;AACvG,wBAAgB,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACrE,wBAAgB,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACjF,wBAAgB,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AACpG,wBAAgB,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAqBhH,6BAA6B;AAC7B,wBAAgB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,MAAM,EAAE,CAAC;AAChG,wBAAgB,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,MAAM,EAAE,CAAC;AAQ5G,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACvE,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAC/F,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;AAOhD,0EAA0E;AAC1E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,CAIrF;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,CAOzE;AAED,0CAA0C;AAC1C,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAM5C"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"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"}
package/build/keys.js CHANGED
@@ -142,20 +142,22 @@ function ensureTagged(meta, value) {
142
142
  return (0, Entity_1.isEntity)(value) ? value : toTaggedId(meta, value);
143
143
  }
144
144
  function tagId(metaOrCstr, id) {
145
+ const tag = tagName(metaOrCstr);
145
146
  if (typeof id === "number") {
146
- return `${tagName(metaOrCstr)}${tagDelimiter}${id}`;
147
+ return `${tag}${tagDelimiter}${id}`;
147
148
  }
148
149
  if (id === null || id === undefined) {
149
150
  return undefined;
150
151
  }
151
- if (id.includes(tagDelimiter)) {
152
- const [tag] = id.split(tagDelimiter);
153
- if (tag !== tagName(metaOrCstr)) {
154
- throw new Error(`Invalid tagged id, expected tag ${tagName(metaOrCstr)}, got ${id}`);
152
+ // Avoid using includes/split, for a faster indexOf + length + startsWith
153
+ const delimiterIndex = id.indexOf(tagDelimiter);
154
+ if (delimiterIndex !== -1) {
155
+ if (delimiterIndex !== tag.length || !id.startsWith(tag)) {
156
+ throw new Error(`Invalid tagged id, expected tag ${tag}, got ${id}`);
155
157
  }
156
158
  return id;
157
159
  }
158
- return `${tagName(metaOrCstr)}${tagDelimiter}${id}`;
160
+ return `${tag}${tagDelimiter}${id}`;
159
161
  }
160
162
  function tagIds(metaOrCstr, keys) {
161
163
  return keys.map((k) => tagId(metaOrCstr, k));
package/build/keys.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Entity } from "./Entity";
2
2
  import { NormalizeHint } from "./normalizeHints";
3
- import { AsyncMethod, Collection, LoadedCollection, LoadedMethod, LoadedProperty, LoadedReadOnlyCollection, LoadedReference, OneToOneReference, Property, ReadOnlyCollection, Reference, Relation } from "./relations";
3
+ import { AsyncMethod, Collection, EnumCollection, LoadedCollection, LoadedEnumCollection, LoadedMethod, LoadedProperty, LoadedReadOnlyCollection, LoadedReference, OneToOneReference, Property, ReadOnlyCollection, Reference, Relation } from "./relations";
4
4
  import { LoadedOneToOneReference } from "./relations/OneToOneReference";
5
5
  import { OptsOf } from "./typeMap";
6
6
  import { MaybePromise, NullOrDefinedOr } from "./utils";
@@ -10,11 +10,11 @@ type DeepLoadHint<T extends Entity> = NestedLoadHint<T> & {
10
10
  };
11
11
  type MaybeBaseType = any;
12
12
  /** Marks a given `T[K]` field as the loaded/synchronous version of the collection. */
13
- export type MarkLoaded<T extends Entity, P, UH = {}> = P extends OneToOneReference<MaybeBaseType, infer U> ? LoadedOneToOneReference<T, Loaded<U, UH>> : P extends Reference<MaybeBaseType, infer U, infer N> ? LoadedReference<T, Loaded<U, UH>, N> : P extends Collection<MaybeBaseType, infer U> ? LoadedCollection<T, Loaded<U, UH>> : P extends ReadOnlyCollection<MaybeBaseType, infer U> ? LoadedReadOnlyCollection<T, Loaded<U, UH>> : P extends Property<MaybeBaseType, infer V> ? [
13
+ export type MarkLoaded<T extends Entity, P, UH = {}> = P extends EnumCollection<MaybeBaseType, infer E> ? LoadedEnumCollection<T, E> : P extends OneToOneReference<MaybeBaseType, infer U> ? LoadedOneToOneReference<T, Loaded<U, UH>> : P extends Reference<MaybeBaseType, infer U, infer N> ? LoadedReference<T, Loaded<U, UH>, N> : P extends Collection<MaybeBaseType, infer U> ? LoadedCollection<T, Loaded<U, UH>> : P extends ReadOnlyCollection<MaybeBaseType, infer U> ? LoadedReadOnlyCollection<T, Loaded<U, UH>> : P extends Property<MaybeBaseType, infer V> ? [
14
14
  V
15
15
  ] extends [(infer U extends Entity) | undefined] ? LoadedProperty<T, Loaded<U, UH> | Exclude<V, U>> : V extends readonly (infer U extends Entity)[] ? LoadedProperty<T, Loaded<U, UH>[]> : LoadedProperty<T, V> : P extends AsyncMethod<T, infer A, infer V> ? LoadedMethod<T, A, V> : unknown;
16
16
  /** A version of MarkLoaded the uses `DeepLoadHint` for tests. */
17
- type MarkDeepLoaded<T extends Entity, P> = P extends OneToOneReference<MaybeBaseType, infer U> ? LoadedOneToOneReference<T, Loaded<U, DeepLoadHint<U>>> : P extends Reference<MaybeBaseType, infer U, infer N> ? LoadedReference<T, Loaded<U, DeepLoadHint<U>>, N> : P extends Collection<MaybeBaseType, infer U> ? LoadedCollection<T, Loaded<U, DeepLoadHint<U>>> : P extends ReadOnlyCollection<MaybeBaseType, infer U> ? LoadedReadOnlyCollection<T, Loaded<U, DeepLoadHint<U>>> : P extends Property<MaybeBaseType, infer V> ? [
17
+ type MarkDeepLoaded<T extends Entity, P> = P extends EnumCollection<MaybeBaseType, infer E> ? LoadedEnumCollection<T, E> : P extends OneToOneReference<MaybeBaseType, infer U> ? LoadedOneToOneReference<T, Loaded<U, DeepLoadHint<U>>> : P extends Reference<MaybeBaseType, infer U, infer N> ? LoadedReference<T, Loaded<U, DeepLoadHint<U>>, N> : P extends Collection<MaybeBaseType, infer U> ? LoadedCollection<T, Loaded<U, DeepLoadHint<U>>> : P extends ReadOnlyCollection<MaybeBaseType, infer U> ? LoadedReadOnlyCollection<T, Loaded<U, DeepLoadHint<U>>> : P extends Property<MaybeBaseType, infer V> ? [
18
18
  V
19
19
  ] extends [(infer U extends Entity) | undefined] ? LoadedProperty<T, Loaded<U, DeepLoadHint<U>> | Exclude<V, U>> : V extends readonly (infer U extends Entity)[] ? LoadedProperty<T, Loaded<U, DeepLoadHint<U>>[]> : LoadedProperty<T, V> : P extends AsyncMethod<T, infer A, infer V> ? LoadedMethod<T, A, V> : unknown;
20
20
  /**
@@ -66,7 +66,7 @@ export type Loadable<T extends Entity> = {
66
66
  * Note that we usually return entities, but for AsyncProperties it could be
67
67
  * a calculated primitive value like number or string.
68
68
  */
69
- export type LoadableValue<V> = V extends Reference<any, infer U, any> ? U : V extends Collection<any, infer U> ? U : V extends ReadOnlyCollection<any, infer U> ? U : V extends AsyncMethod<any, any, infer V> ? V : V extends Property<any, infer P> ? P extends (infer U extends Entity) | undefined ? U : P : never;
69
+ export type LoadableValue<V> = V extends EnumCollection<any, infer E> ? E : V extends Reference<any, infer U, any> ? U : V extends Collection<any, infer U> ? U : V extends ReadOnlyCollection<any, infer U> ? U : V extends AsyncMethod<any, any, infer V> ? V : V extends Property<any, infer P> ? P extends (infer U extends Entity) | undefined ? U : P : never;
70
70
  /**
71
71
  * A load hint of a single key, multiple keys, or nested keys and sub-hints.
72
72
  *
@@ -84,6 +84,15 @@ export type Loaded<T extends Entity, H> = T & {
84
84
  };
85
85
  /** Recursively checks if the relations from a load hint are loaded on an entity. */
86
86
  export declare function isLoaded<T extends Entity, H extends LoadHint<T>>(entity: T, hint: H): entity is Loaded<T, H>;
87
+ /**
88
+ * Recursively checks if a relation-only populate hint is loaded on an entity.
89
+ *
90
+ * Unlike `isLoaded`, this returns `false` for non-loadable/primitive leaves instead of ignoring them, because
91
+ * `ReactiveField.load` calls `em.populate` with load hints converted from reactive hints, i.e. `{ firstName: {} }`.
92
+ * Treating those primitive leaves as loaded would let `EntityManager.populate` skip the batchloader path and change
93
+ * reactive recalculation ordering, so the populate fast-path only applies to true relation populate hints.
94
+ */
95
+ export declare function isLoadedForPopulate<T extends Entity, H extends LoadHint<T>>(entity: T, hint: H): entity is Loaded<T, H>;
87
96
  export declare function maybePopulateThen<T extends Entity, H extends LoadHint<T>, R>(entity: T, hint: H, fn: (loaded: Loaded<T, H>) => R): MaybePromise<R>;
88
97
  /**
89
98
  * Runtime checks that `entity` has `hint` loaded, and type guards it as a `Loaded<T, hint>`.
@@ -1 +1 @@
1
- {"version":3,"file":"loadHints.d.ts","sourceRoot":"","sources":["../src/loadHints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadHints.d.ts","sourceRoot":"","sources":["../src/loadHints.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isNew = isNew;
4
4
  exports.isLoaded = isLoaded;
5
+ exports.isLoadedForPopulate = isLoadedForPopulate;
5
6
  exports.maybePopulateThen = maybePopulateThen;
6
7
  exports.assertLoaded = assertLoaded;
7
8
  exports.ensureLoaded = ensureLoaded;
@@ -19,25 +20,78 @@ function isLoaded(entity, hint) {
19
20
  return entity[hint].isLoaded;
20
21
  }
21
22
  else if (Array.isArray(hint)) {
22
- return hint.every((key) => entity[key].isLoaded);
23
+ for (const key of hint) {
24
+ if (!entity[key].isLoaded)
25
+ return false;
26
+ }
27
+ return true;
23
28
  }
24
29
  else if (typeof hint === "object") {
25
- return Object.entries(hint).every(([key, nestedHint]) => {
30
+ for (const entry of Object.entries(hint)) {
31
+ const [key, nestedHint] = entry;
26
32
  const relation = (0, reactiveHints_1.getRelationFromMaybePolyKey)(entity, key);
27
33
  if (!relation || typeof relation.load !== "function")
28
- return true;
34
+ continue;
29
35
  if (relation.isLoaded) {
30
36
  const result = relation.get;
31
- return Array.isArray(result)
32
- ? result.every((entity) => isLoaded(entity, nestedHint))
33
- : result
34
- ? isLoaded(result, nestedHint)
35
- : true;
37
+ if (Array.isArray(result)) {
38
+ for (const entity of result) {
39
+ if (!isLoaded(entity, nestedHint))
40
+ return false;
41
+ }
42
+ }
43
+ else if (result && !isLoaded(result, nestedHint)) {
44
+ return false;
45
+ }
36
46
  }
37
47
  else {
38
48
  return false;
39
49
  }
40
- });
50
+ }
51
+ return true;
52
+ }
53
+ else {
54
+ throw new Error(`Unexpected hint ${hint}`);
55
+ }
56
+ }
57
+ /**
58
+ * Recursively checks if a relation-only populate hint is loaded on an entity.
59
+ *
60
+ * Unlike `isLoaded`, this returns `false` for non-loadable/primitive leaves instead of ignoring them, because
61
+ * `ReactiveField.load` calls `em.populate` with load hints converted from reactive hints, i.e. `{ firstName: {} }`.
62
+ * Treating those primitive leaves as loaded would let `EntityManager.populate` skip the batchloader path and change
63
+ * reactive recalculation ordering, so the populate fast-path only applies to true relation populate hints.
64
+ */
65
+ function isLoadedForPopulate(entity, hint) {
66
+ if (typeof hint === "string") {
67
+ const relation = (0, reactiveHints_1.getRelationFromMaybePolyKey)(entity, hint);
68
+ return !!relation && typeof relation.load === "function" && relation.isLoaded;
69
+ }
70
+ else if (Array.isArray(hint)) {
71
+ for (const key of hint) {
72
+ if (!isLoadedForPopulate(entity, key))
73
+ return false;
74
+ }
75
+ return true;
76
+ }
77
+ else if (typeof hint === "object") {
78
+ for (const entry of Object.entries(hint)) {
79
+ const [key, nestedHint] = entry;
80
+ const relation = (0, reactiveHints_1.getRelationFromMaybePolyKey)(entity, key);
81
+ if (!relation || typeof relation.load !== "function" || !relation.isLoaded)
82
+ return false;
83
+ const result = relation.get;
84
+ if (Array.isArray(result)) {
85
+ for (const entity of result) {
86
+ if (!isLoadedForPopulate(entity, nestedHint))
87
+ return false;
88
+ }
89
+ }
90
+ else if (result && !isLoadedForPopulate(result, nestedHint)) {
91
+ return false;
92
+ }
93
+ }
94
+ return true;
41
95
  }
42
96
  else {
43
97
  throw new Error(`Unexpected hint ${hint}`);
@@ -1 +1 @@
1
- {"version":3,"file":"loadHints.js","sourceRoot":"","sources":["../src/loadHints.ts"],"names":[],"mappings":";;AAoIA,sBAEC;AA6DD,4BAuBC;AAED,8CAMC;AAOD,oCAKC;AAOD,oCAGC;AAOD,oCAEC;AA/PD,mDAA8D;AAiB9D,mCAA8D;AAE9D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC;AA8G1B,mGAAmG;AACnG,SAAgB,KAAK,CAAmB,CAAI;IAC1C,OAAO,CAAC,CAAC,WAAW,CAAC;AACvB,CAAC;AA4DD,oFAAoF;AACpF,SAAgB,QAAQ,CAA0C,MAAS,EAAE,IAAO;IAClF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAQ,MAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;IACxC,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAQ,IAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAE,MAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE;YAChE,MAAM,QAAQ,GAAG,IAAA,2CAA2B,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC1D,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC;YAClE,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC;gBAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;oBAC1B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBACxD,CAAC,CAAC,MAAM;wBACN,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;wBAC9B,CAAC,CAAC,IAAI,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAC/B,MAAS,EACT,IAAO,EACP,EAA+B;IAE/B,OAAO,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvF,CAAC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAC1B,MAAS,EACT,IAAO;IAEP,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;QAAE,IAAA,YAAI,EAAC,GAAG,MAAM,CAAC,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9F,CAAC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAgD,MAAS,EAAE,IAAO;IAC5F,YAAY,CAAO,MAAM,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAgD,MAAS,EAAE,IAAO;IAC5F,OAAO,MAAsB,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"loadHints.js","sourceRoot":"","sources":["../src/loadHints.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,11 @@ export declare function loadLens<T extends Entity, U, V>(start: T | readonly T[]
48
48
  forceReload?: boolean;
49
49
  sql?: boolean;
50
50
  }): Promise<V>;
51
+ /** Loads a precomputed lens path, avoiding repeated lambda/proxy evaluation for long-lived relation declarations. */
52
+ export declare function loadLensPath<T extends Entity, V>(start: T | readonly T[], paths: string[], opts?: {
53
+ forceReload?: boolean;
54
+ sql?: boolean;
55
+ }): Promise<V>;
51
56
  export declare function isAllSqlPaths(meta: EntityMetadata, paths: string[]): boolean;
52
57
  export declare function mapPathsToTarget(source: EntityMetadata, paths: string[]): [EntityMetadata, [EntityMetadata, Field][]];
53
58
  /**
@@ -56,10 +61,16 @@ export declare function mapPathsToTarget(source: EntityMetadata, paths: string[]
56
61
  * This assumes you've first evaluated the lens with `loadLens` and now can access it synchronously.
57
62
  */
58
63
  export declare function getLens<T, U, V>(startMeta: EntityMetadata, start: T | readonly T[], fn: (lens: Lens<T>) => Lens<U, V>): V;
64
+ /** Synchronously traverses a precomputed lens path. */
65
+ export declare function getLensPath<T, V>(startMeta: EntityMetadata, start: T | readonly T[], paths: string[]): V;
59
66
  /** Returns whether a lens is loaded; primarily for deeply loaded instances in tests. */
60
67
  export declare function isLensLoaded<T, U, V>(start: T | readonly T[], fn: (lens: Lens<T>) => Lens<U, V>): boolean;
68
+ /** Returns whether a precomputed lens path is loaded; primarily for deeply loaded instances in tests. */
69
+ export declare function isLensLoadedPath<T>(start: T | readonly T[], paths: string[]): boolean;
61
70
  /** Accepts a lens like `a => a.books.reviews` and returns a hint like `{ books: { reviews: {} } }`. */
62
71
  export declare function lensToLoadHint<T extends Entity, U, V>(fn: (lens: Lens<T>) => Lens<U, V>): LoadHint<T>;
72
+ /** Accepts lens paths like `[books, reviews]` and returns a hint like `{ books: { reviews: {} } }`. */
73
+ export declare function lensPathToLoadHint<T extends Entity>(paths: string[]): LoadHint<T>;
63
74
  /** Accepts a lens like `a => a.books.reviews` and returns the paths like `[books, reviews]`. */
64
75
  export declare function lensToPath<T extends Entity, U, V>(fn: (lens: Lens<T>) => Lens<U, V>): string[];
65
76
  export {};
@@ -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":"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"}
package/build/loadLens.js CHANGED
@@ -1,11 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.loadLens = loadLens;
4
+ exports.loadLensPath = loadLensPath;
4
5
  exports.isAllSqlPaths = isAllSqlPaths;
5
6
  exports.mapPathsToTarget = mapPathsToTarget;
6
7
  exports.getLens = getLens;
8
+ exports.getLensPath = getLensPath;
7
9
  exports.isLensLoaded = isLensLoaded;
10
+ exports.isLensLoadedPath = isLensLoadedPath;
8
11
  exports.lensToLoadHint = lensToLoadHint;
12
+ exports.lensPathToLoadHint = lensPathToLoadHint;
9
13
  exports.lensToPath = lensToPath;
10
14
  const Entity_1 = require("./Entity");
11
15
  const EntityManager_1 = require("./EntityManager");
@@ -26,6 +30,10 @@ const AbstractRelationImpl_1 = require("./relations/AbstractRelationImpl");
26
30
  // subclass itself, so we use the codegen hammer in our subclass to force the right Lens type
27
31
  // in a .load stub that just calls us for the implementation.
28
32
  async function loadLens(start, fn, opts = {}) {
33
+ return loadLensPath(start, collectPaths(fn), opts);
34
+ }
35
+ /** Loads a precomputed lens path, avoiding repeated lambda/proxy evaluation for long-lived relation declarations. */
36
+ function loadLensPath(start, paths, opts = {}) {
29
37
  // Probe for the meta, so we can track when/if it needs to flip to a collection (even after hitting undefined)
30
38
  const meta = Array.isArray(start)
31
39
  ? (0, Entity_1.isEntity)(start[0]) && (0, EntityMetadata_1.getMetadata)(start[0])
@@ -34,10 +42,18 @@ async function loadLens(start, fn, opts = {}) {
34
42
  if (!meta)
35
43
  return [];
36
44
  // If we're already loaded, just return
37
- if (!opts.forceReload && isLensLoaded(start, fn)) {
38
- return getLens(meta, start, fn);
45
+ if (!opts.forceReload && isLensLoadedPath(start, paths)) {
46
+ // Keep this synchronous to avoid adding a promise turn; this preserves nuanced hook timing in production code.
47
+ return getLensPath(meta, start, paths);
39
48
  }
40
- const paths = collectPaths(fn);
49
+ return loadLensPathAsync(meta, start, paths, opts);
50
+ }
51
+ /**
52
+ * Loads an unloaded lens path, keeping the already-loaded shortcut in `loadLensPath` synchronous.
53
+ *
54
+ * I.e. this avoids adding an extra promise turn for already-loaded paths during concurrent hooks.
55
+ */
56
+ async function loadLensPathAsync(meta, start, paths, opts) {
41
57
  // See if we can load this via SQL
42
58
  if (opts.sql) {
43
59
  // Are all paths SQL query-able?
@@ -97,7 +113,7 @@ async function loadLens(start, fn, opts = {}) {
97
113
  if (field?.kind === "o2m" || field?.kind === "m2m")
98
114
  return [];
99
115
  }
100
- currentMeta = field && "otherMetadata" in field ? field.otherMetadata() : undefined;
116
+ currentMeta = nextMeta(current, field);
101
117
  }
102
118
  return current;
103
119
  }
@@ -150,7 +166,10 @@ function maybeLoad(object, path, opts) {
150
166
  * This assumes you've first evaluated the lens with `loadLens` and now can access it synchronously.
151
167
  */
152
168
  function getLens(startMeta, start, fn) {
153
- const paths = collectPaths(fn);
169
+ return getLensPath(startMeta, start, collectPaths(fn));
170
+ }
171
+ /** Synchronously traverses a precomputed lens path. */
172
+ function getLensPath(startMeta, start, paths) {
154
173
  let currentMeta = startMeta;
155
174
  let current = start;
156
175
  let seenSoftDeleted = false;
@@ -186,19 +205,29 @@ function getLens(startMeta, start, fn) {
186
205
  if (field?.kind === "o2m" || field?.kind === "m2m")
187
206
  return [];
188
207
  }
189
- currentMeta = field && "otherMetadata" in field ? field.otherMetadata() : undefined;
208
+ currentMeta = nextMeta(current, field);
190
209
  }
191
210
  return current;
192
211
  }
212
+ /** Returns the next runtime metadata, preserving subtype-specific fields after base-typed traversals. */
213
+ function nextMeta(current, field) {
214
+ const entity = Array.isArray(current) ? current[0] : current;
215
+ if ((0, Entity_1.isEntity)(entity))
216
+ return (0, EntityMetadata_1.getMetadata)(entity);
217
+ return field && "otherMetadata" in field ? field.otherMetadata() : undefined;
218
+ }
193
219
  function maybeAdd(set, value) {
194
220
  if (value !== undefined && !value.isSoftDeletedEntity)
195
221
  set.add(value);
196
222
  }
197
223
  /** Returns whether a lens is loaded; primarily for deeply loaded instances in tests. */
198
224
  function isLensLoaded(start, fn) {
225
+ return isLensLoadedPath(start, collectPaths(fn));
226
+ }
227
+ /** Returns whether a precomputed lens path is loaded; primarily for deeply loaded instances in tests. */
228
+ function isLensLoadedPath(start, paths) {
199
229
  // This is a huge copy/paste of `getLens` but we check `isNotLoaded` and early return
200
230
  // as soon as we find any not-loaded relation
201
- const paths = collectPaths(fn);
202
231
  let current = start;
203
232
  let seenSoftDeleted = false;
204
233
  // Now evaluate each step of the path
@@ -234,16 +263,20 @@ function isLensLoaded(start, fn) {
234
263
  }
235
264
  /** Accepts a lens like `a => a.books.reviews` and returns a hint like `{ books: { reviews: {} } }`. */
236
265
  function lensToLoadHint(fn) {
237
- const paths = collectPaths(fn);
266
+ return lensPathToLoadHint(collectPaths(fn));
267
+ }
268
+ /** Accepts lens paths like `[books, reviews]` and returns a hint like `{ books: { reviews: {} } }`. */
269
+ function lensPathToLoadHint(paths) {
238
270
  let current = {};
239
- for (const path of paths.reverse()) {
271
+ for (let i = paths.length - 1; i >= 0; i--) {
272
+ const path = paths[i];
240
273
  current = { [path]: current };
241
274
  }
242
275
  return current;
243
276
  }
244
277
  /** Accepts a lens like `a => a.books.reviews` and returns the paths like `[books, reviews]`. */
245
278
  function lensToPath(fn) {
246
- return collectPaths(fn);
279
+ return [...collectPaths(fn)];
247
280
  }
248
281
  function isNotLoaded(object, path) {
249
282
  const value = object && object[path];
@@ -1 +1 @@
1
- {"version":3,"file":"loadLens.js","sourceRoot":"","sources":["../src/loadLens.ts"],"names":[],"mappings":";;AAqFA,4BAmFC;AAED,sCAUC;AAGD,4CAaC;AAqBD,0BA4CC;AAOD,oCA8BC;AAGD,wCAOC;AAGD,gCAEC;AAzTD,qCAA4C;AAC5C,mDAA8C;AAC9C,qDAS0B;AAC1B,iEAA8D;AAE9D,2CAAyC;AACzC,2EAAwE;AA0DxE;;;;;;;;GAQG;AACH,8FAA8F;AAC9F,6FAA6F;AAC7F,6DAA6D;AACtD,KAAK,UAAU,QAAQ,CAC5B,KAAuB,EACvB,EAAiC,EACjC,OAAiD,EAAE;IAEnD,8GAA8G;IAC9G,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/B,CAAC,CAAC,IAAA,iBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAA,4BAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,IAAA,iBAAQ,EAAC,KAAK,CAAC,IAAI,IAAA,4BAAW,EAAC,KAAK,CAAC,CAAC;IAC1C,2EAA2E;IAC3E,IAAI,CAAC,IAAI;QAAE,OAAO,EAAO,CAAC;IAE1B,uCAAuC;IACvC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;QACjD,OAAO,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAE/B,kCAAkC;IAClC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,gCAAgC;QAChC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QACD,0DAA0D;QAC1D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,iGAAiG;YACjG,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,MAAM,IAAA,+BAAc,EAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;qBACrD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;qBACtC,KAAK,CAAC,SAAS,QAAQ,CAAC,GAAG;oBAC1B,MAAM,IAAA,2BAAW,EAAC,GAAG,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAM,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,IAAA,+BAAc,EAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;qBACtD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;qBACpB,KAAK,CAAC,SAAS,QAAQ,CAAC,GAAG;oBAC1B,MAAM,IAAA,2BAAW,EAAC,GAAG,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAM,CAAC;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,IAAI,OAAO,GAAQ,KAAK,CAAC;IACzB,IAAI,WAAW,GAA+B,IAAI,CAAC;IACnD,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,qCAAqC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,WAAW,EAAE,SAAS,CAAC,IAAI,CAM5B,CAAC;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACnF,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAC9F,6HAA6H;YAC7H,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,OAAQ,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/C,eAAe,KAAM,OAAe,EAAE,mBAAmB,CAAC;YAC1D,2FAA2F;YAC3F,8FAA8F;YAC9F,8BAA8B;YAC9B,EAAE;YACF,iGAAiG;YACjG,8CAA8C;YAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;gBAC9C,OAAO,EAAS,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,4FAA4F;YAC5F,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK;gBAAE,OAAO,EAAS,CAAC;QACvE,CAAC;QACD,WAAW,GAAG,KAAK,IAAI,eAAe,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,CAAC;IACD,OAAO,OAAQ,CAAC;AAClB,CAAC;AAED,SAAgB,aAAa,CAAC,IAAoB,EAAE,KAAe;IACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACvG,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qEAAqE;AACrE,SAAgB,gBAAgB,CAAC,MAAsB,EAAE,KAAe;IACtE,IAAI,KAAK,GAAG,MAAM,CAAC;IACnB,IAAI,MAAM,GAA8B,EAAE,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACvG,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,SAAS,CAAC,MAAW,EAAE,IAAY,EAAE,IAA+B;IAC3E,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CACrB,SAAyB,EACzB,KAAuB,EACvB,EAAiC;IAEjC,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,WAAW,GAA+B,SAAS,CAAC;IACxD,IAAI,OAAO,GAAQ,KAAK,CAAC;IACzB,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,qCAAqC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,kFAAkF;QAClF,MAAM,KAAK,GAAG,WAAW,EAAE,SAAS,CAAC,IAAI,CAM5B,CAAC;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,8BAA8B;YAC9B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACvB,kEAAkE;YAClE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,KAAK,MAAM,CAAC,IAAI,KAAK;wBAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;;oBAC9D,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAClC,eAAe,KAAM,OAAe,EAAE,mBAAmB,CAAC;YAC1D,+EAA+E;YAC/E,gEAAgE;YAChE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;gBAC9C,OAAO,EAAS,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,4FAA4F;YAC5F,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK;gBAAE,OAAO,EAAS,CAAC;QACvE,CAAC;QACD,WAAW,GAAG,KAAK,IAAI,eAAe,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,CAAC;IACD,OAAO,OAAQ,CAAC;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,GAAa,EAAE,KAAU;IACzC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,mBAAmB;QAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,wFAAwF;AACxF,SAAgB,YAAY,CAAU,KAAuB,EAAE,EAAiC;IAC9F,qFAAqF;IACrF,6CAA6C;IAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,OAAO,GAAQ,KAAK,CAAC;IACzB,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,qCAAqC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,8BAA8B;YAC9B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC;gBACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,KAAK,MAAM,CAAC,IAAI,KAAK;wBAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;;oBAC9D,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC7C,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAClC,eAAe,KAAM,OAAe,EAAE,mBAAmB,CAAC;YAC1D,+EAA+E;YAC/E,gEAAgE;YAChE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;gBAC9C,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uGAAuG;AACvG,SAAgB,cAAc,CAAyB,EAAiC;IACtF,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACnC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,OAAsB,CAAC;AAChC,CAAC;AAED,gGAAgG;AAChG,SAAgB,UAAU,CAAyB,EAAiC;IAClF,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,WAAW,CAAC,MAAW,EAAE,IAAY;IAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,KAAK,YAAY,2CAAoB,IAAI,IAAA,sBAAU,EAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,MAAW,EAAE,IAAY;IACzC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC,GAAG,CAAC;IACnB,CAAC;SAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EAAY;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,+EAA+E;IAC/E,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,EAAE,EACF;QACE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ;YACvB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7B,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CACF,CAAC;IACF,sEAAsE;IACtE,EAAE,CAAC,KAAY,CAAC,CAAC;IACjB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,mEAAmE;AACnE,SAAS,eAAe,CAAI,KAAuB;IACjD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"loadLens.js","sourceRoot":"","sources":["../src/loadLens.ts"],"names":[],"mappings":"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"}