@expo/entity 0.45.0 → 0.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (425) hide show
  1. package/build/{AuthorizationResultBasedEntityAssociationLoader.d.ts → src/AuthorizationResultBasedEntityAssociationLoader.d.ts} +4 -4
  2. package/build/{AuthorizationResultBasedEntityAssociationLoader.js → src/AuthorizationResultBasedEntityAssociationLoader.js} +2 -1
  3. package/build/src/AuthorizationResultBasedEntityAssociationLoader.js.map +1 -0
  4. package/build/{AuthorizationResultBasedEntityLoader.d.ts → src/AuthorizationResultBasedEntityLoader.d.ts} +8 -8
  5. package/build/{AuthorizationResultBasedEntityLoader.js → src/AuthorizationResultBasedEntityLoader.js} +6 -5
  6. package/build/src/AuthorizationResultBasedEntityLoader.js.map +1 -0
  7. package/build/{AuthorizationResultBasedEntityMutator.d.ts → src/AuthorizationResultBasedEntityMutator.d.ts} +15 -13
  8. package/build/{AuthorizationResultBasedEntityMutator.js → src/AuthorizationResultBasedEntityMutator.js} +77 -39
  9. package/build/src/AuthorizationResultBasedEntityMutator.js.map +1 -0
  10. package/build/{ComposedEntityCacheAdapter.d.ts → src/ComposedEntityCacheAdapter.d.ts} +2 -2
  11. package/build/{ComposedEntityCacheAdapter.js → src/ComposedEntityCacheAdapter.js} +2 -1
  12. package/build/src/ComposedEntityCacheAdapter.js.map +1 -0
  13. package/build/{ComposedSecondaryEntityCache.d.ts → src/ComposedSecondaryEntityCache.d.ts} +1 -1
  14. package/build/{ComposedSecondaryEntityCache.js → src/ComposedSecondaryEntityCache.js} +2 -1
  15. package/build/src/ComposedSecondaryEntityCache.js.map +1 -0
  16. package/build/{EnforcingEntityAssociationLoader.d.ts → src/EnforcingEntityAssociationLoader.d.ts} +5 -5
  17. package/build/{EnforcingEntityAssociationLoader.js → src/EnforcingEntityAssociationLoader.js} +2 -1
  18. package/build/src/EnforcingEntityAssociationLoader.js.map +1 -0
  19. package/build/{EnforcingEntityCreator.d.ts → src/EnforcingEntityCreator.d.ts} +4 -4
  20. package/build/{EnforcingEntityCreator.js → src/EnforcingEntityCreator.js} +2 -1
  21. package/build/src/EnforcingEntityCreator.js.map +1 -0
  22. package/build/{EnforcingEntityDeleter.d.ts → src/EnforcingEntityDeleter.d.ts} +4 -4
  23. package/build/{EnforcingEntityDeleter.js → src/EnforcingEntityDeleter.js} +2 -1
  24. package/build/src/EnforcingEntityDeleter.js.map +1 -0
  25. package/build/{EnforcingEntityLoader.d.ts → src/EnforcingEntityLoader.d.ts} +5 -5
  26. package/build/{EnforcingEntityLoader.js → src/EnforcingEntityLoader.js} +2 -1
  27. package/build/src/EnforcingEntityLoader.js.map +1 -0
  28. package/build/{EnforcingEntityUpdater.d.ts → src/EnforcingEntityUpdater.d.ts} +4 -4
  29. package/build/{EnforcingEntityUpdater.js → src/EnforcingEntityUpdater.js} +2 -1
  30. package/build/src/EnforcingEntityUpdater.js.map +1 -0
  31. package/build/{Entity.d.ts → src/Entity.d.ts} +7 -7
  32. package/build/{Entity.js → src/Entity.js} +13 -15
  33. package/build/src/Entity.js.map +1 -0
  34. package/build/{EntityAssociationLoader.d.ts → src/EntityAssociationLoader.d.ts} +5 -5
  35. package/build/{EntityAssociationLoader.js → src/EntityAssociationLoader.js} +6 -8
  36. package/build/src/EntityAssociationLoader.js.map +1 -0
  37. package/build/{EntityCompanion.d.ts → src/EntityCompanion.d.ts} +10 -10
  38. package/build/{EntityCompanion.js → src/EntityCompanion.js} +6 -8
  39. package/build/src/EntityCompanion.js.map +1 -0
  40. package/build/{EntityCompanionProvider.d.ts → src/EntityCompanionProvider.d.ts} +12 -12
  41. package/build/{EntityCompanionProvider.js → src/EntityCompanionProvider.js} +6 -5
  42. package/build/src/EntityCompanionProvider.js.map +1 -0
  43. package/build/{EntityConfiguration.d.ts → src/EntityConfiguration.d.ts} +2 -2
  44. package/build/{EntityConfiguration.js → src/EntityConfiguration.js} +2 -2
  45. package/build/src/EntityConfiguration.js.map +1 -0
  46. package/build/{EntityCreator.d.ts → src/EntityCreator.d.ts} +5 -5
  47. package/build/{EntityCreator.js → src/EntityCreator.js} +4 -6
  48. package/build/{EntityCreator.js.map → src/EntityCreator.js.map} +1 -1
  49. package/build/{EntityDatabaseAdapter.d.ts → src/EntityDatabaseAdapter.d.ts} +2 -2
  50. package/build/{EntityDatabaseAdapter.js → src/EntityDatabaseAdapter.js} +2 -2
  51. package/build/src/EntityDatabaseAdapter.js.map +1 -0
  52. package/build/{EntityDeleter.d.ts → src/EntityDeleter.d.ts} +5 -5
  53. package/build/{EntityDeleter.js → src/EntityDeleter.js} +5 -7
  54. package/build/{EntityDeleter.js.map → src/EntityDeleter.js.map} +1 -1
  55. package/build/{EntityFieldDefinition.d.ts → src/EntityFieldDefinition.d.ts} +3 -3
  56. package/build/src/EntityFieldDefinition.js.map +1 -0
  57. package/build/{EntityFields.d.ts → src/EntityFields.d.ts} +7 -0
  58. package/build/{EntityFields.js → src/EntityFields.js} +11 -1
  59. package/build/src/EntityFields.js.map +1 -0
  60. package/build/{EntityLoader.d.ts → src/EntityLoader.d.ts} +7 -7
  61. package/build/{EntityLoader.js → src/EntityLoader.js} +4 -6
  62. package/build/{EntityLoader.js.map → src/EntityLoader.js.map} +1 -1
  63. package/build/{EntityLoaderFactory.d.ts → src/EntityLoaderFactory.d.ts} +8 -8
  64. package/build/src/EntityLoaderFactory.js +29 -0
  65. package/build/src/EntityLoaderFactory.js.map +1 -0
  66. package/build/{EntityLoaderUtils.d.ts → src/EntityLoaderUtils.d.ts} +7 -7
  67. package/build/{EntityLoaderUtils.js → src/EntityLoaderUtils.js} +2 -1
  68. package/build/src/EntityLoaderUtils.js.map +1 -0
  69. package/build/{EntityMutationInfo.d.ts → src/EntityMutationInfo.d.ts} +2 -2
  70. package/build/src/EntityMutationInfo.js.map +1 -0
  71. package/build/{EntityMutationTriggerConfiguration.d.ts → src/EntityMutationTriggerConfiguration.d.ts} +3 -3
  72. package/build/src/EntityMutationTriggerConfiguration.js.map +1 -0
  73. package/build/{EntityMutationValidator.d.ts → src/EntityMutationValidator.d.ts} +3 -3
  74. package/build/{EntityMutationValidator.js → src/EntityMutationValidator.js} +2 -1
  75. package/build/src/EntityMutationValidator.js.map +1 -0
  76. package/build/{EntityMutatorFactory.d.ts → src/EntityMutatorFactory.d.ts} +15 -14
  77. package/build/{EntityMutatorFactory.js → src/EntityMutatorFactory.js} +6 -5
  78. package/build/src/EntityMutatorFactory.js.map +1 -0
  79. package/build/{EntityPrivacyPolicy.d.ts → src/EntityPrivacyPolicy.d.ts} +6 -6
  80. package/build/{EntityPrivacyPolicy.js → src/EntityPrivacyPolicy.js} +8 -11
  81. package/build/{EntityPrivacyPolicy.js.map → src/EntityPrivacyPolicy.js.map} +1 -1
  82. package/build/{EntityQueryContext.d.ts → src/EntityQueryContext.d.ts} +1 -1
  83. package/build/src/EntityQueryContext.js.map +1 -0
  84. package/build/{EntityQueryContextProvider.d.ts → src/EntityQueryContextProvider.d.ts} +2 -2
  85. package/build/{EntityQueryContextProvider.js → src/EntityQueryContextProvider.js} +2 -1
  86. package/build/src/EntityQueryContextProvider.js.map +1 -0
  87. package/build/{EntitySecondaryCacheLoader.d.ts → src/EntitySecondaryCacheLoader.d.ts} +5 -5
  88. package/build/{EntitySecondaryCacheLoader.js → src/EntitySecondaryCacheLoader.js} +2 -1
  89. package/build/src/EntitySecondaryCacheLoader.js.map +1 -0
  90. package/build/{EntityUpdater.d.ts → src/EntityUpdater.d.ts} +5 -5
  91. package/build/{EntityUpdater.js → src/EntityUpdater.js} +5 -7
  92. package/build/{EntityUpdater.js.map → src/EntityUpdater.js.map} +1 -1
  93. package/build/{GenericEntityCacheAdapter.d.ts → src/GenericEntityCacheAdapter.d.ts} +3 -3
  94. package/build/{GenericEntityCacheAdapter.js → src/GenericEntityCacheAdapter.js} +2 -1
  95. package/build/src/GenericEntityCacheAdapter.js.map +1 -0
  96. package/build/{GenericSecondaryEntityCache.d.ts → src/GenericSecondaryEntityCache.d.ts} +2 -2
  97. package/build/{GenericSecondaryEntityCache.js → src/GenericSecondaryEntityCache.js} +2 -1
  98. package/build/src/GenericSecondaryEntityCache.js.map +1 -0
  99. package/build/{IEntityCacheAdapter.d.ts → src/IEntityCacheAdapter.d.ts} +1 -1
  100. package/build/src/IEntityCacheAdapter.js.map +1 -0
  101. package/build/{IEntityCacheAdapterProvider.d.ts → src/IEntityCacheAdapterProvider.d.ts} +3 -3
  102. package/build/src/IEntityCacheAdapterProvider.js.map +1 -0
  103. package/build/{IEntityDatabaseAdapterProvider.d.ts → src/IEntityDatabaseAdapterProvider.d.ts} +3 -3
  104. package/build/src/IEntityDatabaseAdapterProvider.js.map +1 -0
  105. package/build/{IEntityGenericCacher.d.ts → src/IEntityGenericCacher.d.ts} +1 -1
  106. package/build/src/IEntityGenericCacher.js.map +1 -0
  107. package/build/{ReadonlyEntity.d.ts → src/ReadonlyEntity.d.ts} +8 -8
  108. package/build/{ReadonlyEntity.js → src/ReadonlyEntity.js} +9 -8
  109. package/build/src/ReadonlyEntity.js.map +1 -0
  110. package/build/{ViewerContext.d.ts → src/ViewerContext.d.ts} +5 -5
  111. package/build/{ViewerContext.js → src/ViewerContext.js} +4 -6
  112. package/build/{ViewerContext.js.map → src/ViewerContext.js.map} +1 -1
  113. package/build/{ViewerScopedEntityCompanion.d.ts → src/ViewerScopedEntityCompanion.d.ts} +9 -9
  114. package/build/{ViewerScopedEntityCompanion.js → src/ViewerScopedEntityCompanion.js} +6 -8
  115. package/build/{ViewerScopedEntityCompanion.js.map → src/ViewerScopedEntityCompanion.js.map} +1 -1
  116. package/build/{ViewerScopedEntityCompanionProvider.d.ts → src/ViewerScopedEntityCompanionProvider.d.ts} +6 -6
  117. package/build/{ViewerScopedEntityCompanionProvider.js → src/ViewerScopedEntityCompanionProvider.js} +4 -6
  118. package/build/src/ViewerScopedEntityCompanionProvider.js.map +1 -0
  119. package/build/{ViewerScopedEntityLoaderFactory.d.ts → src/ViewerScopedEntityLoaderFactory.d.ts} +6 -6
  120. package/build/{ViewerScopedEntityLoaderFactory.js → src/ViewerScopedEntityLoaderFactory.js} +2 -1
  121. package/build/src/ViewerScopedEntityLoaderFactory.js.map +1 -0
  122. package/build/{ViewerScopedEntityMutatorFactory.d.ts → src/ViewerScopedEntityMutatorFactory.d.ts} +9 -8
  123. package/build/{ViewerScopedEntityMutatorFactory.js → src/ViewerScopedEntityMutatorFactory.js} +6 -5
  124. package/build/src/ViewerScopedEntityMutatorFactory.js.map +1 -0
  125. package/build/src/entityUtils.js.map +1 -0
  126. package/build/{errors → src/errors}/EntityCacheAdapterError.d.ts +2 -2
  127. package/build/src/errors/EntityCacheAdapterError.js +13 -0
  128. package/build/src/errors/EntityCacheAdapterError.js.map +1 -0
  129. package/build/{errors → src/errors}/EntityDatabaseAdapterError.d.ts +2 -2
  130. package/build/{errors → src/errors}/EntityDatabaseAdapterError.js +4 -37
  131. package/build/src/errors/EntityDatabaseAdapterError.js.map +1 -0
  132. package/build/{errors → src/errors}/EntityError.d.ts +1 -1
  133. package/build/{errors → src/errors}/EntityError.js +2 -2
  134. package/build/src/errors/EntityError.js.map +1 -0
  135. package/build/{errors → src/errors}/EntityInvalidFieldValueError.d.ts +5 -5
  136. package/build/src/errors/EntityInvalidFieldValueError.js +13 -0
  137. package/build/src/errors/EntityInvalidFieldValueError.js.map +1 -0
  138. package/build/{errors → src/errors}/EntityNotAuthorizedError.d.ts +4 -4
  139. package/build/src/errors/EntityNotAuthorizedError.js +16 -0
  140. package/build/src/errors/EntityNotAuthorizedError.js.map +1 -0
  141. package/build/{errors → src/errors}/EntityNotFoundError.d.ts +5 -5
  142. package/build/src/errors/EntityNotFoundError.js +18 -0
  143. package/build/src/errors/EntityNotFoundError.js.map +1 -0
  144. package/build/src/index.d.ts +76 -0
  145. package/build/src/index.js +94 -0
  146. package/build/src/index.js.map +1 -0
  147. package/build/{internal → src/internal}/CompositeFieldHolder.d.ts +1 -1
  148. package/build/src/internal/CompositeFieldHolder.js.map +1 -0
  149. package/build/src/internal/CompositeFieldValueMap.js.map +1 -0
  150. package/build/{internal → src/internal}/EntityDataManager.d.ts +5 -5
  151. package/build/{internal → src/internal}/EntityDataManager.js +2 -1
  152. package/build/src/internal/EntityDataManager.js.map +1 -0
  153. package/build/{internal → src/internal}/EntityFieldTransformationUtils.d.ts +1 -1
  154. package/build/src/internal/EntityFieldTransformationUtils.js.map +1 -0
  155. package/build/{internal → src/internal}/EntityLoadInterfaces.d.ts +1 -1
  156. package/build/src/internal/EntityLoadInterfaces.js.map +1 -0
  157. package/build/{internal → src/internal}/EntityTableDataCoordinator.d.ts +9 -9
  158. package/build/{internal → src/internal}/EntityTableDataCoordinator.js +5 -7
  159. package/build/{internal → src/internal}/EntityTableDataCoordinator.js.map +1 -1
  160. package/build/{internal → src/internal}/ReadThroughEntityCache.d.ts +3 -3
  161. package/build/{internal → src/internal}/ReadThroughEntityCache.js +2 -2
  162. package/build/src/internal/ReadThroughEntityCache.js.map +1 -0
  163. package/build/{internal → src/internal}/SingleFieldHolder.d.ts +1 -1
  164. package/build/src/internal/SingleFieldHolder.js.map +1 -0
  165. package/build/{metrics → src/metrics}/EntityMetricsUtils.d.ts +1 -1
  166. package/build/src/metrics/EntityMetricsUtils.js.map +1 -0
  167. package/build/{metrics → src/metrics}/IEntityMetricsAdapter.d.ts +1 -1
  168. package/build/src/metrics/IEntityMetricsAdapter.js.map +1 -0
  169. package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.d.ts +2 -2
  170. package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.js +2 -1
  171. package/build/src/metrics/NoOpEntityMetricsAdapter.js.map +1 -0
  172. package/build/{rules → src/rules}/AlwaysAllowPrivacyPolicyRule.d.ts +4 -4
  173. package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js +14 -0
  174. package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -0
  175. package/build/{rules → src/rules}/AlwaysDenyPrivacyPolicyRule.d.ts +4 -4
  176. package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js +14 -0
  177. package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -0
  178. package/build/{rules → src/rules}/AlwaysSkipPrivacyPolicyRule.d.ts +4 -4
  179. package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js +14 -0
  180. package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -0
  181. package/build/{rules → src/rules}/PrivacyPolicyRule.d.ts +3 -3
  182. package/build/{rules → src/rules}/PrivacyPolicyRule.js +2 -2
  183. package/build/src/rules/PrivacyPolicyRule.js.map +1 -0
  184. package/build/{utils → src/utils}/EntityCreationUtils.d.ts +3 -3
  185. package/build/{utils → src/utils}/EntityCreationUtils.js +2 -5
  186. package/build/{utils → src/utils}/EntityCreationUtils.js.map +1 -1
  187. package/build/{utils → src/utils}/EntityPrivacyUtils.d.ts +4 -4
  188. package/build/{utils → src/utils}/EntityPrivacyUtils.js +4 -7
  189. package/build/{utils → src/utils}/EntityPrivacyUtils.js.map +1 -1
  190. package/build/src/utils/collections/SerializableKeyMap.js.map +1 -0
  191. package/build/src/utils/collections/maps.js.map +1 -0
  192. package/build/src/utils/collections/sets.js.map +1 -0
  193. package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.d.ts +3 -3
  194. package/build/src/utils/mergeEntityMutationTriggerConfigurations.js.map +1 -0
  195. package/package.json +14 -24
  196. package/src/AuthorizationResultBasedEntityAssociationLoader.ts +4 -4
  197. package/src/AuthorizationResultBasedEntityLoader.ts +13 -12
  198. package/src/AuthorizationResultBasedEntityMutator.ts +78 -63
  199. package/src/ComposedEntityCacheAdapter.ts +3 -3
  200. package/src/ComposedSecondaryEntityCache.ts +1 -1
  201. package/src/EnforcingEntityAssociationLoader.ts +6 -5
  202. package/src/EnforcingEntityCreator.ts +4 -4
  203. package/src/EnforcingEntityDeleter.ts +4 -4
  204. package/src/EnforcingEntityLoader.ts +5 -5
  205. package/src/EnforcingEntityUpdater.ts +4 -4
  206. package/src/Entity.ts +10 -10
  207. package/src/EntityAssociationLoader.ts +5 -5
  208. package/src/EntityCompanion.ts +10 -10
  209. package/src/EntityCompanionProvider.ts +13 -13
  210. package/src/EntityConfiguration.ts +3 -3
  211. package/src/EntityCreator.ts +5 -5
  212. package/src/EntityDatabaseAdapter.ts +3 -3
  213. package/src/EntityDeleter.ts +6 -6
  214. package/src/EntityFieldDefinition.ts +3 -3
  215. package/src/EntityFields.ts +13 -0
  216. package/src/EntityLoader.ts +7 -7
  217. package/src/EntityLoaderFactory.ts +9 -9
  218. package/src/EntityLoaderUtils.ts +7 -7
  219. package/src/EntityMutationInfo.ts +2 -2
  220. package/src/EntityMutationTriggerConfiguration.ts +3 -3
  221. package/src/EntityMutationValidator.ts +3 -3
  222. package/src/EntityMutatorFactory.ts +17 -12
  223. package/src/EntityPrivacyPolicy.ts +7 -6
  224. package/src/EntityQueryContext.ts +1 -1
  225. package/src/EntityQueryContextProvider.ts +3 -3
  226. package/src/EntitySecondaryCacheLoader.ts +5 -5
  227. package/src/EntityUpdater.ts +6 -6
  228. package/src/GenericEntityCacheAdapter.ts +3 -3
  229. package/src/GenericSecondaryEntityCache.ts +2 -2
  230. package/src/IEntityCacheAdapter.ts +1 -1
  231. package/src/IEntityCacheAdapterProvider.ts +3 -3
  232. package/src/IEntityDatabaseAdapterProvider.ts +3 -3
  233. package/src/IEntityGenericCacher.ts +1 -1
  234. package/src/ReadonlyEntity.ts +10 -10
  235. package/src/ViewerContext.ts +6 -6
  236. package/src/ViewerScopedEntityCompanion.ts +9 -9
  237. package/src/ViewerScopedEntityCompanionProvider.ts +6 -6
  238. package/src/ViewerScopedEntityLoaderFactory.ts +6 -6
  239. package/src/ViewerScopedEntityMutatorFactory.ts +11 -8
  240. package/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.ts +5 -4
  241. package/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.ts +14 -18
  242. package/src/__tests__/AuthorizationResultBasedEntityLoader-test.ts +18 -16
  243. package/src/__tests__/ComposedCacheAdapter-test.ts +5 -3
  244. package/src/__tests__/ComposedSecondaryEntityCache-test.ts +2 -1
  245. package/src/__tests__/EnforcingEntityAssociationLoader-test.ts +4 -3
  246. package/src/__tests__/EnforcingEntityLoader-test.ts +4 -3
  247. package/src/__tests__/Entity-test.ts +8 -6
  248. package/src/__tests__/EntityAssociationLoader-test.ts +7 -5
  249. package/src/__tests__/EntityCommonUseCases-test.ts +10 -9
  250. package/src/__tests__/EntityCompanion-test.ts +13 -11
  251. package/src/__tests__/EntityCompanionProvider-test.ts +7 -5
  252. package/src/__tests__/EntityConfiguration-test.ts +3 -1
  253. package/src/__tests__/EntityDatabaseAdapter-test.ts +9 -7
  254. package/src/__tests__/EntityEdges-test.ts +10 -8
  255. package/src/__tests__/EntityFields-test.ts +15 -7
  256. package/src/__tests__/EntityLoader-test.ts +8 -6
  257. package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +8 -6
  258. package/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.ts +5 -3
  259. package/src/__tests__/EntityMutator-test.ts +250 -45
  260. package/src/__tests__/EntityPrivacyPolicy-test.ts +19 -16
  261. package/src/__tests__/EntityQueryContext-test.ts +7 -6
  262. package/src/__tests__/EntitySecondaryCacheLoader-test.ts +5 -3
  263. package/src/__tests__/EntitySelfReferentialEdges-test.ts +7 -5
  264. package/src/__tests__/GenericEntityCacheAdapter-test.ts +4 -3
  265. package/src/__tests__/ReadonlyEntity-test.ts +10 -9
  266. package/src/__tests__/ViewerContext-test.ts +3 -1
  267. package/src/__tests__/ViewerScopedEntityCompanion-test.ts +10 -8
  268. package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +7 -6
  269. package/src/__tests__/ViewerScopedEntityLoaderFactory-test.ts +5 -4
  270. package/src/__tests__/ViewerScopedEntityMutatorFactory-test.ts +8 -6
  271. package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +15 -13
  272. package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +7 -5
  273. package/src/__tests__/entityUtils-test.ts +3 -2
  274. package/src/errors/EntityCacheAdapterError.ts +2 -2
  275. package/src/errors/EntityDatabaseAdapterError.ts +2 -2
  276. package/src/errors/EntityError.ts +1 -1
  277. package/src/errors/EntityInvalidFieldValueError.ts +5 -5
  278. package/src/errors/EntityNotAuthorizedError.ts +4 -4
  279. package/src/errors/EntityNotFoundError.ts +5 -5
  280. package/src/errors/__tests__/EntityDatabaseAdapterError-test.ts +6 -3
  281. package/src/index.ts +39 -54
  282. package/src/internal/CompositeFieldHolder.ts +2 -1
  283. package/src/internal/EntityDataManager.ts +7 -5
  284. package/src/internal/EntityFieldTransformationUtils.ts +1 -1
  285. package/src/internal/EntityLoadInterfaces.ts +1 -1
  286. package/src/internal/EntityTableDataCoordinator.ts +10 -10
  287. package/src/internal/ReadThroughEntityCache.ts +3 -3
  288. package/src/internal/SingleFieldHolder.ts +1 -1
  289. package/src/internal/__tests__/CompositeFieldHolder-test.ts +2 -0
  290. package/src/internal/__tests__/CompositeFieldValueMap-test.ts +2 -0
  291. package/src/internal/__tests__/EntityDataManager-test.ts +34 -31
  292. package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +5 -3
  293. package/src/internal/__tests__/ReadThroughEntityCache-test.ts +5 -4
  294. package/src/metrics/EntityMetricsUtils.ts +3 -2
  295. package/src/metrics/IEntityMetricsAdapter.ts +1 -1
  296. package/src/metrics/NoOpEntityMetricsAdapter.ts +3 -2
  297. package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +4 -4
  298. package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +4 -4
  299. package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +4 -4
  300. package/src/rules/PrivacyPolicyRule.ts +3 -3
  301. package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +3 -3
  302. package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +3 -3
  303. package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +3 -3
  304. package/src/utils/EntityCreationUtils.ts +4 -4
  305. package/src/utils/EntityPrivacyUtils.ts +5 -5
  306. package/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.ts +5 -3
  307. package/src/utils/__testfixtures__/SimpleTestEntity.ts +6 -6
  308. package/src/utils/__testfixtures__/StubCacheAdapter.ts +4 -4
  309. package/src/utils/__testfixtures__/StubDatabaseAdapter.ts +8 -7
  310. package/src/utils/__testfixtures__/StubDatabaseAdapterProvider.ts +5 -5
  311. package/src/utils/__testfixtures__/StubQueryContextProvider.ts +2 -2
  312. package/src/utils/__testfixtures__/TestEntity.ts +7 -7
  313. package/src/utils/__testfixtures__/TestEntity2.ts +6 -6
  314. package/src/utils/__testfixtures__/TestEntityWithMutationTriggers.ts +6 -10
  315. package/src/utils/__testfixtures__/TestViewerContext.ts +2 -2
  316. package/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.ts +5 -5
  317. package/src/utils/__testfixtures__/describeFieldTestCase.ts +3 -1
  318. package/src/utils/__tests__/EntityCreationUtils-test.ts +5 -3
  319. package/src/utils/__tests__/EntityPrivacyUtils-test.ts +15 -13
  320. package/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.ts +10 -8
  321. package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +2 -0
  322. package/src/utils/collections/__tests__/SerializableKeyMap-test.ts +2 -0
  323. package/src/utils/collections/__tests__/maps-test.ts +3 -1
  324. package/src/utils/collections/__tests__/sets-test.ts +2 -0
  325. package/src/utils/mergeEntityMutationTriggerConfigurations.ts +3 -3
  326. package/LICENSE +0 -21
  327. package/build/AuthorizationResultBasedEntityAssociationLoader.js.map +0 -1
  328. package/build/AuthorizationResultBasedEntityLoader.js.map +0 -1
  329. package/build/AuthorizationResultBasedEntityMutator.js.map +0 -1
  330. package/build/ComposedEntityCacheAdapter.js.map +0 -1
  331. package/build/ComposedSecondaryEntityCache.js.map +0 -1
  332. package/build/EnforcingEntityAssociationLoader.js.map +0 -1
  333. package/build/EnforcingEntityCreator.js.map +0 -1
  334. package/build/EnforcingEntityDeleter.js.map +0 -1
  335. package/build/EnforcingEntityLoader.js.map +0 -1
  336. package/build/EnforcingEntityUpdater.js.map +0 -1
  337. package/build/Entity.js.map +0 -1
  338. package/build/EntityAssociationLoader.js.map +0 -1
  339. package/build/EntityCompanion.js.map +0 -1
  340. package/build/EntityCompanionProvider.js.map +0 -1
  341. package/build/EntityConfiguration.js.map +0 -1
  342. package/build/EntityDatabaseAdapter.js.map +0 -1
  343. package/build/EntityFieldDefinition.js.map +0 -1
  344. package/build/EntityFields.js.map +0 -1
  345. package/build/EntityLoaderFactory.js +0 -31
  346. package/build/EntityLoaderFactory.js.map +0 -1
  347. package/build/EntityLoaderUtils.js.map +0 -1
  348. package/build/EntityMutationInfo.js.map +0 -1
  349. package/build/EntityMutationTriggerConfiguration.js.map +0 -1
  350. package/build/EntityMutationValidator.js.map +0 -1
  351. package/build/EntityMutatorFactory.js.map +0 -1
  352. package/build/EntityQueryContext.js.map +0 -1
  353. package/build/EntityQueryContextProvider.js.map +0 -1
  354. package/build/EntitySecondaryCacheLoader.js.map +0 -1
  355. package/build/GenericEntityCacheAdapter.js.map +0 -1
  356. package/build/GenericSecondaryEntityCache.js.map +0 -1
  357. package/build/IEntityCacheAdapter.js.map +0 -1
  358. package/build/IEntityCacheAdapterProvider.js.map +0 -1
  359. package/build/IEntityDatabaseAdapterProvider.js.map +0 -1
  360. package/build/IEntityGenericCacher.js.map +0 -1
  361. package/build/ReadonlyEntity.js.map +0 -1
  362. package/build/ViewerScopedEntityCompanionProvider.js.map +0 -1
  363. package/build/ViewerScopedEntityLoaderFactory.js.map +0 -1
  364. package/build/ViewerScopedEntityMutatorFactory.js.map +0 -1
  365. package/build/entityUtils.js.map +0 -1
  366. package/build/errors/EntityCacheAdapterError.js +0 -46
  367. package/build/errors/EntityCacheAdapterError.js.map +0 -1
  368. package/build/errors/EntityDatabaseAdapterError.js.map +0 -1
  369. package/build/errors/EntityError.js.map +0 -1
  370. package/build/errors/EntityInvalidFieldValueError.js +0 -45
  371. package/build/errors/EntityInvalidFieldValueError.js.map +0 -1
  372. package/build/errors/EntityNotAuthorizedError.js +0 -48
  373. package/build/errors/EntityNotAuthorizedError.js.map +0 -1
  374. package/build/errors/EntityNotFoundError.js +0 -50
  375. package/build/errors/EntityNotFoundError.js.map +0 -1
  376. package/build/index.d.ts +0 -91
  377. package/build/index.js +0 -155
  378. package/build/index.js.map +0 -1
  379. package/build/internal/CompositeFieldHolder.js.map +0 -1
  380. package/build/internal/CompositeFieldValueMap.js.map +0 -1
  381. package/build/internal/EntityDataManager.js.map +0 -1
  382. package/build/internal/EntityFieldTransformationUtils.js.map +0 -1
  383. package/build/internal/EntityLoadInterfaces.js.map +0 -1
  384. package/build/internal/ReadThroughEntityCache.js.map +0 -1
  385. package/build/internal/SingleFieldHolder.js.map +0 -1
  386. package/build/metrics/EntityMetricsUtils.js.map +0 -1
  387. package/build/metrics/IEntityMetricsAdapter.js.map +0 -1
  388. package/build/metrics/NoOpEntityMetricsAdapter.js.map +0 -1
  389. package/build/rules/AlwaysAllowPrivacyPolicyRule.js +0 -46
  390. package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +0 -1
  391. package/build/rules/AlwaysDenyPrivacyPolicyRule.js +0 -46
  392. package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +0 -1
  393. package/build/rules/AlwaysSkipPrivacyPolicyRule.js +0 -46
  394. package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +0 -1
  395. package/build/rules/PrivacyPolicyRule.js.map +0 -1
  396. package/build/tsconfig.build.tsbuildinfo +0 -1
  397. package/build/utils/collections/SerializableKeyMap.js.map +0 -1
  398. package/build/utils/collections/maps.js.map +0 -1
  399. package/build/utils/collections/sets.js.map +0 -1
  400. package/build/utils/mergeEntityMutationTriggerConfigurations.js.map +0 -1
  401. /package/build/{EntityFieldDefinition.js → src/EntityFieldDefinition.js} +0 -0
  402. /package/build/{EntityMutationInfo.js → src/EntityMutationInfo.js} +0 -0
  403. /package/build/{EntityMutationTriggerConfiguration.js → src/EntityMutationTriggerConfiguration.js} +0 -0
  404. /package/build/{EntityQueryContext.js → src/EntityQueryContext.js} +0 -0
  405. /package/build/{IEntityCacheAdapter.js → src/IEntityCacheAdapter.js} +0 -0
  406. /package/build/{IEntityCacheAdapterProvider.js → src/IEntityCacheAdapterProvider.js} +0 -0
  407. /package/build/{IEntityDatabaseAdapterProvider.js → src/IEntityDatabaseAdapterProvider.js} +0 -0
  408. /package/build/{IEntityGenericCacher.js → src/IEntityGenericCacher.js} +0 -0
  409. /package/build/{entityUtils.d.ts → src/entityUtils.d.ts} +0 -0
  410. /package/build/{entityUtils.js → src/entityUtils.js} +0 -0
  411. /package/build/{internal → src/internal}/CompositeFieldHolder.js +0 -0
  412. /package/build/{internal → src/internal}/CompositeFieldValueMap.d.ts +0 -0
  413. /package/build/{internal → src/internal}/CompositeFieldValueMap.js +0 -0
  414. /package/build/{internal → src/internal}/EntityFieldTransformationUtils.js +0 -0
  415. /package/build/{internal → src/internal}/EntityLoadInterfaces.js +0 -0
  416. /package/build/{internal → src/internal}/SingleFieldHolder.js +0 -0
  417. /package/build/{metrics → src/metrics}/EntityMetricsUtils.js +0 -0
  418. /package/build/{metrics → src/metrics}/IEntityMetricsAdapter.js +0 -0
  419. /package/build/{utils → src/utils}/collections/SerializableKeyMap.d.ts +0 -0
  420. /package/build/{utils → src/utils}/collections/SerializableKeyMap.js +0 -0
  421. /package/build/{utils → src/utils}/collections/maps.d.ts +0 -0
  422. /package/build/{utils → src/utils}/collections/maps.js +0 -0
  423. /package/build/{utils → src/utils}/collections/sets.d.ts +0 -0
  424. /package/build/{utils → src/utils}/collections/sets.js +0 -0
  425. /package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.js +0 -0
@@ -1,4 +1,4 @@
1
- import EntityConfiguration from '../EntityConfiguration';
1
+ import { EntityConfiguration } from '../EntityConfiguration';
2
2
  import { ISerializable, SerializableKeyMap } from '../utils/collections/SerializableKeyMap';
3
3
  /**
4
4
  * Load method type identifier of a load key. Used for keying data loaders and identification in metrics.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityLoadInterfaces.js","sourceRoot":"","sources":["../../../src/internal/EntityLoadInterfaces.ts"],"names":[],"mappings":";;;AACA,gFAA4F;AAE5F;;GAEG;AACH,IAAY,oBAUX;AAVD,WAAY,oBAAoB;IAC9B;;OAEG;IACH,yCAAiB,CAAA;IAEjB;;OAEG;IACH,+CAAuB,CAAA;AACzB,CAAC,EAVW,oBAAoB,oCAApB,oBAAoB,QAU/B;AAgHD;;;;GAIG;AACH,MAAsB,YAIpB,SAAQ,uCAA8C;CAAG;AAJ3D,oCAI2D"}
@@ -1,11 +1,11 @@
1
- import EntityDataManager from './EntityDataManager';
2
- import EntityConfiguration from '../EntityConfiguration';
3
- import EntityDatabaseAdapter from '../EntityDatabaseAdapter';
4
- import EntityQueryContextProvider from '../EntityQueryContextProvider';
5
- import IEntityCacheAdapter from '../IEntityCacheAdapter';
6
- import IEntityCacheAdapterProvider from '../IEntityCacheAdapterProvider';
7
- import IEntityDatabaseAdapterProvider from '../IEntityDatabaseAdapterProvider';
8
- import IEntityMetricsAdapter from '../metrics/IEntityMetricsAdapter';
1
+ import { EntityConfiguration } from '../EntityConfiguration';
2
+ import { EntityDatabaseAdapter } from '../EntityDatabaseAdapter';
3
+ import { EntityQueryContextProvider } from '../EntityQueryContextProvider';
4
+ import { IEntityCacheAdapter } from '../IEntityCacheAdapter';
5
+ import { IEntityCacheAdapterProvider } from '../IEntityCacheAdapterProvider';
6
+ import { IEntityDatabaseAdapterProvider } from '../IEntityDatabaseAdapterProvider';
7
+ import { EntityDataManager } from './EntityDataManager';
8
+ import { IEntityMetricsAdapter } from '../metrics/IEntityMetricsAdapter';
9
9
  /**
10
10
  * Responsible for orchestrating fetching and caching of entity data from a
11
11
  * table. Note that one instance is shared amongst all entities that read from
@@ -13,7 +13,7 @@ import IEntityMetricsAdapter from '../metrics/IEntityMetricsAdapter';
13
13
  *
14
14
  * @internal
15
15
  */
16
- export default class EntityTableDataCoordinator<TFields extends Record<string, any>, TIDField extends keyof TFields> {
16
+ export declare class EntityTableDataCoordinator<TFields extends Record<string, any>, TIDField extends keyof TFields> {
17
17
  readonly entityConfiguration: EntityConfiguration<TFields, TIDField>;
18
18
  private readonly queryContextProvider;
19
19
  readonly databaseAdapter: EntityDatabaseAdapter<TFields, TIDField>;
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const EntityDataManager_1 = __importDefault(require("./EntityDataManager"));
7
- const ReadThroughEntityCache_1 = __importDefault(require("./ReadThroughEntityCache"));
3
+ exports.EntityTableDataCoordinator = void 0;
4
+ const EntityDataManager_1 = require("./EntityDataManager");
5
+ const ReadThroughEntityCache_1 = require("./ReadThroughEntityCache");
8
6
  /**
9
7
  * Responsible for orchestrating fetching and caching of entity data from a
10
8
  * table. Note that one instance is shared amongst all entities that read from
@@ -23,11 +21,11 @@ class EntityTableDataCoordinator {
23
21
  this.queryContextProvider = queryContextProvider;
24
22
  this.databaseAdapter = databaseAdapterProvider.getDatabaseAdapter(entityConfiguration);
25
23
  this.cacheAdapter = cacheAdapterProvider.getCacheAdapter(entityConfiguration);
26
- this.dataManager = new EntityDataManager_1.default(this.databaseAdapter, new ReadThroughEntityCache_1.default(entityConfiguration, this.cacheAdapter), queryContextProvider, metricsAdapter, entityClassName);
24
+ this.dataManager = new EntityDataManager_1.EntityDataManager(this.databaseAdapter, new ReadThroughEntityCache_1.ReadThroughEntityCache(entityConfiguration, this.cacheAdapter), queryContextProvider, metricsAdapter, entityClassName);
27
25
  }
28
26
  getQueryContextProvider() {
29
27
  return this.queryContextProvider;
30
28
  }
31
29
  }
32
- exports.default = EntityTableDataCoordinator;
30
+ exports.EntityTableDataCoordinator = EntityTableDataCoordinator;
33
31
  //# sourceMappingURL=EntityTableDataCoordinator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityTableDataCoordinator.js","sourceRoot":"","sources":["../../src/internal/EntityTableDataCoordinator.ts"],"names":[],"mappings":";;;;;AAAA,4EAAoD;AACpD,sFAA8D;AAS9D;;;;;;GAMG;AACH,MAAqB,0BAA0B;IASlC;IAGQ;IARV,eAAe,CAA2C;IAC1D,YAAY,CAAyC;IACrD,WAAW,CAAuC;IAE3D,YACW,mBAA2D,EACpE,uBAAuD,EACvD,oBAAiD,EAChC,oBAAgD,EACjE,cAAqC,EACrC,eAAuB;QALd,wBAAmB,GAAnB,mBAAmB,CAAwC;QAGnD,yBAAoB,GAApB,oBAAoB,CAA4B;QAIjE,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACvF,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC9E,IAAI,CAAC,WAAW,GAAG,IAAI,2BAAiB,CACtC,IAAI,CAAC,eAAe,EACpB,IAAI,gCAAsB,CAAC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,EAClE,oBAAoB,EACpB,cAAc,EACd,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;CACF;AA9BD,6CA8BC"}
1
+ {"version":3,"file":"EntityTableDataCoordinator.js","sourceRoot":"","sources":["../../../src/internal/EntityTableDataCoordinator.ts"],"names":[],"mappings":";;;AAMA,2DAAwD;AACxD,qEAAkE;AAGlE;;;;;;GAMG;AACH,MAAa,0BAA0B;IAS1B;IAGQ;IARV,eAAe,CAA2C;IAC1D,YAAY,CAAyC;IACrD,WAAW,CAAuC;IAE3D,YACW,mBAA2D,EACpE,uBAAuD,EACvD,oBAAiD,EAChC,oBAAgD,EACjE,cAAqC,EACrC,eAAuB;QALd,wBAAmB,GAAnB,mBAAmB,CAAwC;QAGnD,yBAAoB,GAApB,oBAAoB,CAA4B;QAIjE,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACvF,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC9E,IAAI,CAAC,WAAW,GAAG,IAAI,qCAAiB,CACtC,IAAI,CAAC,eAAe,EACpB,IAAI,+CAAsB,CAAC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,EAClE,oBAAoB,EACpB,cAAc,EACd,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;CACF;AA9BD,gEA8BC"}
@@ -1,5 +1,5 @@
1
- import EntityConfiguration from '../EntityConfiguration';
2
- import IEntityCacheAdapter from '../IEntityCacheAdapter';
1
+ import { EntityConfiguration } from '../EntityConfiguration';
2
+ import { IEntityCacheAdapter } from '../IEntityCacheAdapter';
3
3
  import { IEntityLoadKey, IEntityLoadValue } from './EntityLoadInterfaces';
4
4
  /**
5
5
  * @internal
@@ -26,7 +26,7 @@ export type CacheLoadResult<TFields extends Record<string, any>> = {
26
26
  *
27
27
  * @internal
28
28
  */
29
- export default class ReadThroughEntityCache<TFields extends Record<string, any>, TIDField extends keyof TFields> {
29
+ export declare class ReadThroughEntityCache<TFields extends Record<string, any>, TIDField extends keyof TFields> {
30
30
  private readonly entityConfiguration;
31
31
  private readonly entityCacheAdapter;
32
32
  constructor(entityConfiguration: EntityConfiguration<TFields, TIDField>, entityCacheAdapter: IEntityCacheAdapter<TFields, TIDField>);
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CacheStatus = void 0;
6
+ exports.ReadThroughEntityCache = exports.CacheStatus = void 0;
7
7
  const invariant_1 = __importDefault(require("invariant"));
8
8
  const maps_1 = require("../utils/collections/maps");
9
9
  /**
@@ -105,5 +105,5 @@ class ReadThroughEntityCache {
105
105
  await this.entityCacheAdapter.invalidateManyAsync(key, values);
106
106
  }
107
107
  }
108
- exports.default = ReadThroughEntityCache;
108
+ exports.ReadThroughEntityCache = ReadThroughEntityCache;
109
109
  //# sourceMappingURL=ReadThroughEntityCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadThroughEntityCache.js","sourceRoot":"","sources":["../../../src/internal/ReadThroughEntityCache.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import EntityConfiguration from '../EntityConfiguration';
1
+ import { EntityConfiguration } from '../EntityConfiguration';
2
2
  import { EntityLoadMethodType, IEntityLoadKey, IEntityLoadValue, LoadValueMap } from './EntityLoadInterfaces';
3
3
  /**
4
4
  * A load key that represents a single field (fieldName) on an entity.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleFieldHolder.js","sourceRoot":"","sources":["../../../src/internal/SingleFieldHolder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import IEntityMetricsAdapter, { EntityMetricsLoadType, EntityMetricsMutationType } from './IEntityMetricsAdapter';
2
1
  import { EntityQueryContext } from '../EntityQueryContext';
2
+ import { EntityMetricsLoadType, EntityMetricsMutationType, IEntityMetricsAdapter } from './IEntityMetricsAdapter';
3
3
  import { IEntityLoadValue } from '../internal/EntityLoadInterfaces';
4
4
  export declare const timeAndLogLoadEventAsync: (metricsAdapter: IEntityMetricsAdapter, loadType: EntityMetricsLoadType, entityClassName: string, queryContext: EntityQueryContext) => <TFields>(promise: Promise<readonly Readonly<TFields>[]>) => Promise<readonly Readonly<TFields>[]>;
5
5
  export declare const timeAndLogLoadMapEventAsync: (metricsAdapter: IEntityMetricsAdapter, loadType: EntityMetricsLoadType, entityClassName: string, queryContext: EntityQueryContext) => <TFields extends Record<string, any>, TSerializedLoadValue, TLoadValue extends IEntityLoadValue<TSerializedLoadValue>>(promise: Promise<ReadonlyMap<TLoadValue, readonly Readonly<TFields>[]>>) => Promise<ReadonlyMap<TLoadValue, readonly Readonly<TFields>[]>>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityMetricsUtils.js","sourceRoot":"","sources":["../../../src/metrics/EntityMetricsUtils.ts"],"names":[],"mappings":";;;AAOA,oDAAsD;AAE/C,MAAM,wBAAwB,GACnC,CACE,cAAqC,EACrC,QAA+B,EAC/B,eAAuB,EACvB,YAAgC,EAChC,EAAE,CACJ,KAAK,EAAW,OAA8C,EAAE,EAAE;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,cAAc,CAAC,uBAAuB,CAAC;QACrC,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,YAAY,CAAC,eAAe,EAAE;QAC/C,eAAe;QACf,QAAQ,EAAE,OAAO,GAAG,SAAS;QAC7B,KAAK,EAAE,MAAM,CAAC,MAAM;KACrB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AArBS,QAAA,wBAAwB,4BAqBjC;AAEG,MAAM,2BAA2B,GACtC,CACE,cAAqC,EACrC,QAA+B,EAC/B,eAAuB,EACvB,YAAgC,EAChC,EAAE,CACJ,KAAK,EAKH,OAAuE,EACvE,EAAE;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE/D,cAAc,CAAC,uBAAuB,CAAC;QACrC,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,YAAY,CAAC,eAAe,EAAE;QAC/C,eAAe;QACf,QAAQ,EAAE,OAAO,GAAG,SAAS;QAC7B,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA7BS,QAAA,2BAA2B,+BA6BpC;AAEG,MAAM,4BAA4B,GACvC,CACE,cAAqC,EACrC,YAAuC,EACvC,eAAuB,EACvB,YAAgC,EAChC,EAAE,CACJ,KAAK,EAAK,OAAmB,EAAE,EAAE;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,cAAc,CAAC,uBAAuB,CAAC;QACrC,IAAI,EAAE,YAAY;QAClB,eAAe,EAAE,YAAY,CAAC,eAAe,EAAE;QAC/C,eAAe;QACf,QAAQ,EAAE,OAAO,GAAG,SAAS;KAC9B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AApBS,QAAA,4BAA4B,gCAoBrC"}
@@ -122,7 +122,7 @@ export interface EntityMetricsAuthorizationEvent {
122
122
  * An interface for gathering metrics about the Entity framework. Information about
123
123
  * entity load and mutation operations is piped to an instance of this adapter.
124
124
  */
125
- export default interface IEntityMetricsAdapter {
125
+ export interface IEntityMetricsAdapter {
126
126
  /**
127
127
  * Called when a EntityPrivacyPolicy authorization succeeds or fails.
128
128
  * @param authorizationEvent - info about the authorization event
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IEntityMetricsAdapter.js","sourceRoot":"","sources":["../../../src/metrics/IEntityMetricsAdapter.ts"],"names":[],"mappings":";;;AAMA,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,2EAAS,CAAA;IACT,qHAA8B,CAAA;IAC9B,mFAAa,CAAA;AACf,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAgCD,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACnC,6EAAM,CAAA;IACN,6EAAM,CAAA;IACN,6EAAM,CAAA;AACR,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAwBD,IAAY,2BAgBX;AAhBD,WAAY,2BAA2B;IACrC;;;OAGG;IACH,yFAAU,CAAA;IAEV;;OAEG;IACH,+EAAK,CAAA;IAEL;;OAEG;IACH,qFAAQ,CAAA;AACV,CAAC,EAhBW,2BAA2B,2CAA3B,2BAA2B,QAgBtC;AAgCD,IAAY,gCAGX;AAHD,WAAY,gCAAgC;IAC1C,uFAAI,CAAA;IACJ,yFAAK,CAAA;AACP,CAAC,EAHW,gCAAgC,gDAAhC,gCAAgC,QAG3C"}
@@ -1,5 +1,5 @@
1
- import IEntityMetricsAdapter, { EntityMetricsAuthorizationEvent, EntityMetricsLoadEvent, EntityMetricsMutationEvent, IncrementLoadCountEvent } from './IEntityMetricsAdapter';
2
- export default class NoOpEntityMetricsAdapter implements IEntityMetricsAdapter {
1
+ import { EntityMetricsAuthorizationEvent, EntityMetricsLoadEvent, EntityMetricsMutationEvent, IEntityMetricsAdapter, IncrementLoadCountEvent } from './IEntityMetricsAdapter';
2
+ export declare class NoOpEntityMetricsAdapter implements IEntityMetricsAdapter {
3
3
  logAuthorizationEvent(_authorizationEvent: EntityMetricsAuthorizationEvent): void;
4
4
  logDataManagerLoadEvent(_loadEvent: EntityMetricsLoadEvent): void;
5
5
  logMutatorMutationEvent(_mutationEvent: EntityMetricsMutationEvent): void;
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NoOpEntityMetricsAdapter = void 0;
3
4
  class NoOpEntityMetricsAdapter {
4
5
  logAuthorizationEvent(_authorizationEvent) { }
5
6
  logDataManagerLoadEvent(_loadEvent) { }
6
7
  logMutatorMutationEvent(_mutationEvent) { }
7
8
  incrementDataManagerLoadCount(_incrementLoadCountEvent) { }
8
9
  }
9
- exports.default = NoOpEntityMetricsAdapter;
10
+ exports.NoOpEntityMetricsAdapter = NoOpEntityMetricsAdapter;
10
11
  //# sourceMappingURL=NoOpEntityMetricsAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoOpEntityMetricsAdapter.js","sourceRoot":"","sources":["../../../src/metrics/NoOpEntityMetricsAdapter.ts"],"names":[],"mappings":";;;AAQA,MAAa,wBAAwB;IACnC,qBAAqB,CAAC,mBAAoD,IAAS,CAAC;IACpF,uBAAuB,CAAC,UAAkC,IAAS,CAAC;IACpE,uBAAuB,CAAC,cAA0C,IAAS,CAAC;IAC5E,6BAA6B,CAAC,wBAAiD,IAAS,CAAC;CAC1F;AALD,4DAKC"}
@@ -1,11 +1,11 @@
1
- import PrivacyPolicyRule, { RuleEvaluationResult } from './PrivacyPolicyRule';
2
1
  import { EntityPrivacyPolicyEvaluationContext } from '../EntityPrivacyPolicy';
3
2
  import { EntityQueryContext } from '../EntityQueryContext';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { PrivacyPolicyRule, RuleEvaluationResult } from './PrivacyPolicyRule';
6
6
  /**
7
7
  * Privacy policy rule that always allows.
8
8
  */
9
- export default class AlwaysAllowPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
9
+ export declare class AlwaysAllowPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
10
10
  evaluateAsync(_viewerContext: TViewerContext, _queryContext: EntityQueryContext, _evaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, _entity: TEntity): Promise<RuleEvaluationResult>;
11
11
  }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlwaysAllowPrivacyPolicyRule = void 0;
4
+ const PrivacyPolicyRule_1 = require("./PrivacyPolicyRule");
5
+ /**
6
+ * Privacy policy rule that always allows.
7
+ */
8
+ class AlwaysAllowPrivacyPolicyRule extends PrivacyPolicyRule_1.PrivacyPolicyRule {
9
+ async evaluateAsync(_viewerContext, _queryContext, _evaluationContext, _entity) {
10
+ return PrivacyPolicyRule_1.RuleEvaluationResult.ALLOW;
11
+ }
12
+ }
13
+ exports.AlwaysAllowPrivacyPolicyRule = AlwaysAllowPrivacyPolicyRule;
14
+ //# sourceMappingURL=AlwaysAllowPrivacyPolicyRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlwaysAllowPrivacyPolicyRule.js","sourceRoot":"","sources":["../../../src/rules/AlwaysAllowPrivacyPolicyRule.ts"],"names":[],"mappings":";;;AAIA,2DAA8E;AAE9E;;GAEG;AACH,MAAa,4BAMX,SAAQ,qCAA8E;IACtF,KAAK,CAAC,aAAa,CACjB,cAA8B,EAC9B,aAAiC,EACjC,kBAMC,EACD,OAAgB;QAEhB,OAAO,wCAAoB,CAAC,KAAK,CAAC;IACpC,CAAC;CACF;AArBD,oEAqBC"}
@@ -1,11 +1,11 @@
1
- import PrivacyPolicyRule, { RuleEvaluationResult } from './PrivacyPolicyRule';
2
1
  import { EntityPrivacyPolicyEvaluationContext } from '../EntityPrivacyPolicy';
3
2
  import { EntityQueryContext } from '../EntityQueryContext';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { PrivacyPolicyRule, RuleEvaluationResult } from './PrivacyPolicyRule';
6
6
  /**
7
7
  * Privacy policy rule that always denies.
8
8
  */
9
- export default class AlwaysDenyPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
9
+ export declare class AlwaysDenyPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
10
10
  evaluateAsync(_viewerContext: TViewerContext, _queryContext: EntityQueryContext, _evaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, _entity: TEntity): Promise<RuleEvaluationResult>;
11
11
  }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlwaysDenyPrivacyPolicyRule = void 0;
4
+ const PrivacyPolicyRule_1 = require("./PrivacyPolicyRule");
5
+ /**
6
+ * Privacy policy rule that always denies.
7
+ */
8
+ class AlwaysDenyPrivacyPolicyRule extends PrivacyPolicyRule_1.PrivacyPolicyRule {
9
+ async evaluateAsync(_viewerContext, _queryContext, _evaluationContext, _entity) {
10
+ return PrivacyPolicyRule_1.RuleEvaluationResult.DENY;
11
+ }
12
+ }
13
+ exports.AlwaysDenyPrivacyPolicyRule = AlwaysDenyPrivacyPolicyRule;
14
+ //# sourceMappingURL=AlwaysDenyPrivacyPolicyRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlwaysDenyPrivacyPolicyRule.js","sourceRoot":"","sources":["../../../src/rules/AlwaysDenyPrivacyPolicyRule.ts"],"names":[],"mappings":";;;AAIA,2DAA8E;AAE9E;;GAEG;AACH,MAAa,2BAMX,SAAQ,qCAA8E;IACtF,KAAK,CAAC,aAAa,CACjB,cAA8B,EAC9B,aAAiC,EACjC,kBAMC,EACD,OAAgB;QAEhB,OAAO,wCAAoB,CAAC,IAAI,CAAC;IACnC,CAAC;CACF;AArBD,kEAqBC"}
@@ -1,11 +1,11 @@
1
- import PrivacyPolicyRule, { RuleEvaluationResult } from './PrivacyPolicyRule';
2
1
  import { EntityPrivacyPolicyEvaluationContext } from '../EntityPrivacyPolicy';
3
2
  import { EntityQueryContext } from '../EntityQueryContext';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { PrivacyPolicyRule, RuleEvaluationResult } from './PrivacyPolicyRule';
6
6
  /**
7
7
  * A no-op policy rule that always skips.
8
8
  */
9
- export default class AlwaysSkipPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
9
+ export declare class AlwaysSkipPrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> extends PrivacyPolicyRule<TFields, TIDField, TViewerContext, TEntity, TSelectedFields> {
10
10
  evaluateAsync(_viewerContext: TViewerContext, _queryContext: EntityQueryContext, _evaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, _entity: TEntity): Promise<RuleEvaluationResult>;
11
11
  }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlwaysSkipPrivacyPolicyRule = void 0;
4
+ const PrivacyPolicyRule_1 = require("./PrivacyPolicyRule");
5
+ /**
6
+ * A no-op policy rule that always skips.
7
+ */
8
+ class AlwaysSkipPrivacyPolicyRule extends PrivacyPolicyRule_1.PrivacyPolicyRule {
9
+ async evaluateAsync(_viewerContext, _queryContext, _evaluationContext, _entity) {
10
+ return PrivacyPolicyRule_1.RuleEvaluationResult.SKIP;
11
+ }
12
+ }
13
+ exports.AlwaysSkipPrivacyPolicyRule = AlwaysSkipPrivacyPolicyRule;
14
+ //# sourceMappingURL=AlwaysSkipPrivacyPolicyRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlwaysSkipPrivacyPolicyRule.js","sourceRoot":"","sources":["../../../src/rules/AlwaysSkipPrivacyPolicyRule.ts"],"names":[],"mappings":";;;AAIA,2DAA8E;AAE9E;;GAEG;AACH,MAAa,2BAMX,SAAQ,qCAA8E;IACtF,KAAK,CAAC,aAAa,CACjB,cAA8B,EAC9B,aAAiC,EACjC,kBAMC,EACD,OAAgB;QAEhB,OAAO,wCAAoB,CAAC,IAAI,CAAC;IACnC,CAAC;CACF;AArBD,kEAqBC"}
@@ -1,7 +1,7 @@
1
1
  import { EntityPrivacyPolicyEvaluationContext } from '../EntityPrivacyPolicy';
2
2
  import { EntityQueryContext } from '../EntityQueryContext';
3
- import ReadonlyEntity from '../ReadonlyEntity';
4
- import ViewerContext from '../ViewerContext';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
5
  export declare enum RuleEvaluationResult {
6
6
  /**
7
7
  * Deny viewer access to the entity.
@@ -32,6 +32,6 @@ export declare enum RuleEvaluationResult {
32
32
  * - Blocking. For example, a user blocks another user from seeing their posts, and the rule
33
33
  * would be named something like `DenyIfViewerHasBeenBlockedPrivacyPolicyRule`.
34
34
  */
35
- export default abstract class PrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> {
35
+ export declare abstract class PrivacyPolicyRule<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> {
36
36
  abstract evaluateAsync(viewerContext: TViewerContext, queryContext: EntityQueryContext, evaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, entity: TEntity): Promise<RuleEvaluationResult>;
37
37
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RuleEvaluationResult = void 0;
3
+ exports.PrivacyPolicyRule = exports.RuleEvaluationResult = void 0;
4
4
  var RuleEvaluationResult;
5
5
  (function (RuleEvaluationResult) {
6
6
  /**
@@ -34,5 +34,5 @@ var RuleEvaluationResult;
34
34
  */
35
35
  class PrivacyPolicyRule {
36
36
  }
37
- exports.default = PrivacyPolicyRule;
37
+ exports.PrivacyPolicyRule = PrivacyPolicyRule;
38
38
  //# sourceMappingURL=PrivacyPolicyRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrivacyPolicyRule.js","sourceRoot":"","sources":["../../../src/rules/PrivacyPolicyRule.ts"],"names":[],"mappings":";;;AAKA,IAAY,oBAeX;AAfD,WAAY,oBAAoB;IAC9B;;OAEG;IACH,gEAAS,CAAA;IAET;;OAEG;IACH,+DAAQ,CAAA;IAER;;OAEG;IACH,iEAAS,CAAA;AACX,CAAC,EAfW,oBAAoB,oCAApB,oBAAoB,QAe/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAsB,iBAAiB;CAmBtC;AAnBD,8CAmBC"}
@@ -1,8 +1,8 @@
1
1
  import { IEntityClass } from '../Entity';
2
- import EntityPrivacyPolicy from '../EntityPrivacyPolicy';
2
+ import { EntityPrivacyPolicy } from '../EntityPrivacyPolicy';
3
3
  import { EntityTransactionalQueryContext } from '../EntityQueryContext';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
4
+ import { ReadonlyEntity } from '../ReadonlyEntity';
5
+ import { ViewerContext } from '../ViewerContext';
6
6
  /**
7
7
  * Create an entity if it doesn't exist, or get the existing entity if it does.
8
8
  */
@@ -1,12 +1,9 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.createOrGetExistingAsync = createOrGetExistingAsync;
7
4
  exports.createWithUniqueConstraintRecoveryAsync = createWithUniqueConstraintRecoveryAsync;
8
5
  const EntityDatabaseAdapterError_1 = require("../errors/EntityDatabaseAdapterError");
9
- const EntityNotFoundError_1 = __importDefault(require("../errors/EntityNotFoundError"));
6
+ const EntityNotFoundError_1 = require("../errors/EntityNotFoundError");
10
7
  /**
11
8
  * Create an entity if it doesn't exist, or get the existing entity if it does.
12
9
  */
@@ -45,7 +42,7 @@ async function createWithUniqueConstraintRecoveryAsync(viewerContext, entityClas
45
42
  if (e instanceof EntityDatabaseAdapterError_1.EntityDatabaseAdapterUniqueConstraintError) {
46
43
  const entity = await getAsync(viewerContext, getArgs, queryContext);
47
44
  if (!entity) {
48
- throw new EntityNotFoundError_1.default(`Expected entity to exist after unique constraint error: ${entityClass.name}`);
45
+ throw new EntityNotFoundError_1.EntityNotFoundError(`Expected entity to exist after unique constraint error: ${entityClass.name}`);
49
46
  }
50
47
  return entity;
51
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EntityCreationUtils.js","sourceRoot":"","sources":["../../src/utils/EntityCreationUtils.ts"],"names":[],"mappings":";;;;;AAWA,4DAkEC;AAMD,0FA2DC;AAzID,qFAAkG;AAClG,wFAAgE;AAEhE;;GAEG;AACI,KAAK,UAAU,wBAAwB,CAgB5C,aAA6B,EAC7B,WAOC,EACD,QAI4B,EAC5B,OAAiB,EACjB,WAIqB,EACrB,UAAuB,EACvB,YAA8C;IAE9C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,yHAAyH;QACzH,uBAAuB;QACvB,uEAAuE;QACvE,sGAAsG;QACtG,mHAAmH;QACnH,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,2BAA2B,CAAC,CAAC,kBAAkB,EAAE,EAAE,CACxF,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,kBAAkB,CAAC,CACrD,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,uCAAuC,CAClD,aAAa,EACb,WAAW,EACX,QAAQ,EACR,OAAO,EACP,WAAW,EACX,UAAU,EACV,YAAY,CACb,CAAC;AACJ,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,uCAAuC,CAgB3D,aAA6B,EAC7B,WAOC,EACD,QAI4B,EAC5B,OAAiB,EACjB,WAIqB,EACrB,UAAuB,EACvB,YAA8C;IAE9C,IAAI,CAAC;QACH,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,MAAM,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,YAAY,CAAC,2BAA2B,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAC3E,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAC3D,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,uEAA0C,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,6BAAmB,CAC3B,2DAA2D,WAAW,CAAC,IAAI,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"EntityCreationUtils.js","sourceRoot":"","sources":["../../../src/utils/EntityCreationUtils.ts"],"names":[],"mappings":";;AAWA,4DAkEC;AAMD,0FA2DC;AAzID,qFAAkG;AAClG,uEAAoE;AAEpE;;GAEG;AACI,KAAK,UAAU,wBAAwB,CAgB5C,aAA6B,EAC7B,WAOC,EACD,QAI4B,EAC5B,OAAiB,EACjB,WAIqB,EACrB,UAAuB,EACvB,YAA8C;IAE9C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,yHAAyH;QACzH,uBAAuB;QACvB,uEAAuE;QACvE,sGAAsG;QACtG,mHAAmH;QACnH,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,2BAA2B,CAAC,CAAC,kBAAkB,EAAE,EAAE,CACxF,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,kBAAkB,CAAC,CACrD,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,uCAAuC,CAClD,aAAa,EACb,WAAW,EACX,QAAQ,EACR,OAAO,EACP,WAAW,EACX,UAAU,EACV,YAAY,CACb,CAAC;AACJ,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,uCAAuC,CAgB3D,aAA6B,EAC7B,WAOC,EACD,QAI4B,EAC5B,OAAiB,EACjB,WAIqB,EACrB,UAAuB,EACvB,YAA8C;IAE9C,IAAI,CAAC;QACH,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,MAAM,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,YAAY,CAAC,2BAA2B,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAC3E,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAC3D,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,uEAA0C,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,yCAAmB,CAC3B,2DAA2D,WAAW,CAAC,IAAI,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,8 +1,8 @@
1
- import Entity, { IEntityClass } from '../Entity';
2
- import EntityPrivacyPolicy from '../EntityPrivacyPolicy';
1
+ import { Entity, IEntityClass } from '../Entity';
2
+ import { EntityPrivacyPolicy } from '../EntityPrivacyPolicy';
3
3
  import { EntityQueryContext } from '../EntityQueryContext';
4
- import ViewerContext from '../ViewerContext';
5
- import EntityNotAuthorizedError from '../errors/EntityNotAuthorizedError';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { EntityNotAuthorizedError } from '../errors/EntityNotAuthorizedError';
6
6
  export type EntityPrivacyEvaluationResultSuccess = {
7
7
  allowed: true;
8
8
  };
@@ -1,7 +1,4 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.canViewerUpdateAsync = canViewerUpdateAsync;
7
4
  exports.getCanViewerUpdateResultAsync = getCanViewerUpdateResultAsync;
@@ -10,7 +7,7 @@ exports.getCanViewerDeleteResultAsync = getCanViewerDeleteResultAsync;
10
7
  const results_1 = require("@expo/results");
11
8
  const EntityFieldDefinition_1 = require("../EntityFieldDefinition");
12
9
  const entityUtils_1 = require("../entityUtils");
13
- const EntityNotAuthorizedError_1 = __importDefault(require("../errors/EntityNotAuthorizedError"));
10
+ const EntityNotAuthorizedError_1 = require("../errors/EntityNotAuthorizedError");
14
11
  /**
15
12
  * Check whether an entity loaded by a viewer can be updated by that same viewer.
16
13
  *
@@ -61,7 +58,7 @@ async function canViewerUpdateInternalAsync(entityClass, sourceEntity, cascading
61
58
  const privacyPolicy = companion.entityCompanion.privacyPolicy;
62
59
  const evaluationResult = await (0, results_1.asyncResult)(privacyPolicy.authorizeUpdateAsync(sourceEntity.getViewerContext(), queryContext, { previousValue: null, cascadingDeleteCause }, sourceEntity, companion.getMetricsAdapter()));
63
60
  if (!evaluationResult.ok) {
64
- if (evaluationResult.reason instanceof EntityNotAuthorizedError_1.default) {
61
+ if (evaluationResult.reason instanceof EntityNotAuthorizedError_1.EntityNotAuthorizedError) {
65
62
  return { allowed: false, authorizationErrors: [evaluationResult.reason] };
66
63
  }
67
64
  else {
@@ -115,7 +112,7 @@ async function canViewerDeleteInternalAsync(entityClass, sourceEntity, cascading
115
112
  const privacyPolicy = viewerScopedCompanion.entityCompanion.privacyPolicy;
116
113
  const evaluationResult = await (0, results_1.asyncResult)(privacyPolicy.authorizeDeleteAsync(sourceEntity.getViewerContext(), queryContext, { previousValue: null, cascadingDeleteCause }, sourceEntity, viewerScopedCompanion.getMetricsAdapter()));
117
114
  if (!evaluationResult.ok) {
118
- if (evaluationResult.reason instanceof EntityNotAuthorizedError_1.default) {
115
+ if (evaluationResult.reason instanceof EntityNotAuthorizedError_1.EntityNotAuthorizedError) {
119
116
  return { allowed: false, authorizationErrors: [evaluationResult.reason] };
120
117
  }
121
118
  else {
@@ -179,7 +176,7 @@ async function canViewerDeleteInternalAsync(entityClass, sourceEntity, cascading
179
176
  }
180
177
  const failedEntityLoadResults = (0, entityUtils_1.failedResults)(entityResultsToCheckForInboundEdge);
181
178
  for (const failedResult of failedEntityLoadResults) {
182
- if (failedResult.reason instanceof EntityNotAuthorizedError_1.default) {
179
+ if (failedResult.reason instanceof EntityNotAuthorizedError_1.EntityNotAuthorizedError) {
183
180
  return { allowed: false, authorizationErrors: [failedResult.reason] };
184
181
  }
185
182
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"EntityPrivacyUtils.js","sourceRoot":"","sources":["../../src/utils/EntityPrivacyUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityPrivacyUtils.js","sourceRoot":"","sources":["../../../src/utils/EntityPrivacyUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SerializableKeyMap.js","sourceRoot":"","sources":["../../../../src/utils/collections/SerializableKeyMap.ts"],"names":[],"mappings":";;;AAOA;;;GAGG;AACH,MAAsB,kBAAkB;IAGnB,aAAa,CAAsB;IAEtD,YAAY,QAA2C;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC,CAC3E,CAAC;IACJ,CAAC;IAID,OAAO,CACL,UAAkF,EAClF,OAAa;QAEb,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACxC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,KAAK;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;IAED,CAAC,OAAO;QACN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,CAAC,IAAI;QACH,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,CAAC,MAAM;QACL,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF;AAxED,gDAwEC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maps.js","sourceRoot":"","sources":["../../../../src/utils/collections/maps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sets.js","sourceRoot":"","sources":["../../../../src/utils/collections/sets.ts"],"names":[],"mappings":";;AAAA,oCAEC;AAFD,SAAgB,YAAY,CAAI,CAAiB,EAAE,CAAiB;IAClE,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC"}
@@ -1,4 +1,4 @@
1
- import EntityMutationTriggerConfiguration from '../EntityMutationTriggerConfiguration';
2
- import ReadonlyEntity from '../ReadonlyEntity';
3
- import ViewerContext from '../ViewerContext';
1
+ import { EntityMutationTriggerConfiguration } from '../EntityMutationTriggerConfiguration';
2
+ import { ReadonlyEntity } from '../ReadonlyEntity';
3
+ import { ViewerContext } from '../ViewerContext';
4
4
  export declare function mergeEntityMutationTriggerConfigurations<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields>(...mutationTriggerConfigurations: EntityMutationTriggerConfiguration<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>[]): EntityMutationTriggerConfiguration<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeEntityMutationTriggerConfigurations.js","sourceRoot":"","sources":["../../../src/utils/mergeEntityMutationTriggerConfigurations.ts"],"names":[],"mappings":";;AAQA,4FAmCC;AAvCD,SAAS,UAAU,CAAS,KAAgC;IAC1D,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC;AAED,SAAgB,wCAAwC,CAOtD,GAAG,6BAMA;IAEH,MAAM,MAAM,GAAG;QACb,YAAY,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC7F,WAAW,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC3F,YAAY,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC7F,WAAW,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC3F,YAAY,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC7F,WAAW,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC3F,SAAS,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACvF,QAAQ,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACrF,WAAW,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;KAC5F,CAAC;IAEF,gDAAgD;IAChD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAA4B,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,23 +1,22 @@
1
1
  {
2
2
  "name": "@expo/entity",
3
- "version": "0.45.0",
3
+ "version": "0.47.0",
4
4
  "description": "A privacy-first data model",
5
5
  "files": [
6
6
  "build",
7
+ "!*.tsbuildinfo",
8
+ "!__*",
7
9
  "src"
8
10
  ],
9
- "main": "build/index.js",
10
- "types": "build/index.d.ts",
11
+ "main": "build/src/index.js",
12
+ "types": "build/src/index.d.ts",
11
13
  "scripts": {
12
- "tsc": "tsc",
13
- "build": "tsc -b tsconfig.build.json",
14
- "clean": "rm -rf build coverage coverage-integration",
15
- "lint": "eslint src",
16
- "lint-fix": "eslint src --fix",
17
- "test": "jest --rootDir . --config ../../resources/jest.config.js",
18
- "integration": "../../resources/run-with-docker yarn integration-no-setup",
19
- "integration-no-setup": "jest --config ../../resources/jest-integration.config.js --rootDir . --runInBand --passWithNoTests",
20
- "ctix": "ctix build --config ../../.ctirc && ../../resources/prepend-barrel.sh '@expo/entity'"
14
+ "build": "tsc --build",
15
+ "prepack": "rm -rf build && yarn build",
16
+ "clean": "yarn build --clean",
17
+ "lint": "yarn run --top-level eslint src",
18
+ "lint-fix": "yarn run lint --fix",
19
+ "test": "yarn test:all --rootDir $(pwd)"
21
20
  },
22
21
  "engines": {
23
22
  "node": ">=16"
@@ -34,24 +33,15 @@
34
33
  "invariant": "^2.2.4"
35
34
  },
36
35
  "devDependencies": {
36
+ "@jest/globals": "^30.0.1",
37
37
  "@types/invariant": "^2.2.37",
38
- "@types/jest": "^29.5.14",
39
38
  "@types/lodash": "^4.17.16",
40
- "@types/node": "^20.14.1",
39
+ "@types/node": "^20.19.1",
41
40
  "@types/uuid": "^8.3.0",
42
- "ctix": "^2.7.1",
43
- "eslint": "^9.26.0",
44
- "eslint-config-universe": "^15.0.3",
45
- "eslint-plugin-tsdoc": "^0.4.0",
46
- "jest": "^29.7.0",
47
41
  "lodash": "^4.17.21",
48
- "prettier": "^3.5.3",
49
- "prettier-plugin-organize-imports": "^4.1.0",
50
- "ts-jest": "^29.3.2",
51
42
  "ts-mockito": "^2.6.1",
52
43
  "typescript": "^5.8.3",
53
44
  "uuid": "^8.3.0",
54
45
  "uuidv7": "^1.0.0"
55
- },
56
- "gitHead": "fe2d246f87adc98a13cc7c1ae57f3628769560c9"
46
+ }
57
47
  }