@expo/entity 0.44.0 → 0.46.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 (614) 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} +10 -5
  6. package/build/src/AuthorizationResultBasedEntityLoader.js.map +1 -0
  7. package/build/{AuthorizationResultBasedEntityMutator.d.ts → src/AuthorizationResultBasedEntityMutator.d.ts} +11 -11
  8. package/build/{AuthorizationResultBasedEntityMutator.js → src/AuthorizationResultBasedEntityMutator.js} +2 -2
  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} +4 -6
  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/src/EntityFields.js.map +1 -0
  58. package/build/{EntityLoader.d.ts → src/EntityLoader.d.ts} +7 -7
  59. package/build/{EntityLoader.js → src/EntityLoader.js} +4 -6
  60. package/build/{EntityLoader.js.map → src/EntityLoader.js.map} +1 -1
  61. package/build/{EntityLoaderFactory.d.ts → src/EntityLoaderFactory.d.ts} +8 -8
  62. package/build/src/EntityLoaderFactory.js +29 -0
  63. package/build/src/EntityLoaderFactory.js.map +1 -0
  64. package/build/{EntityLoaderUtils.d.ts → src/EntityLoaderUtils.d.ts} +7 -7
  65. package/build/{EntityLoaderUtils.js → src/EntityLoaderUtils.js} +2 -1
  66. package/build/src/EntityLoaderUtils.js.map +1 -0
  67. package/build/{EntityMutationInfo.d.ts → src/EntityMutationInfo.d.ts} +2 -2
  68. package/build/src/EntityMutationInfo.js.map +1 -0
  69. package/build/{EntityMutationTriggerConfiguration.d.ts → src/EntityMutationTriggerConfiguration.d.ts} +3 -3
  70. package/build/src/EntityMutationTriggerConfiguration.js.map +1 -0
  71. package/build/{EntityMutationValidator.d.ts → src/EntityMutationValidator.d.ts} +3 -3
  72. package/build/{EntityMutationValidator.js → src/EntityMutationValidator.js} +2 -1
  73. package/build/src/EntityMutationValidator.js.map +1 -0
  74. package/build/{EntityMutatorFactory.d.ts → src/EntityMutatorFactory.d.ts} +12 -12
  75. package/build/{EntityMutatorFactory.js → src/EntityMutatorFactory.js} +2 -1
  76. package/build/src/EntityMutatorFactory.js.map +1 -0
  77. package/build/{EntityPrivacyPolicy.d.ts → src/EntityPrivacyPolicy.d.ts} +6 -6
  78. package/build/{EntityPrivacyPolicy.js → src/EntityPrivacyPolicy.js} +8 -11
  79. package/build/{EntityPrivacyPolicy.js.map → src/EntityPrivacyPolicy.js.map} +1 -1
  80. package/build/{EntityQueryContext.d.ts → src/EntityQueryContext.d.ts} +1 -1
  81. package/build/src/EntityQueryContext.js.map +1 -0
  82. package/build/{EntityQueryContextProvider.d.ts → src/EntityQueryContextProvider.d.ts} +2 -2
  83. package/build/{EntityQueryContextProvider.js → src/EntityQueryContextProvider.js} +2 -1
  84. package/build/src/EntityQueryContextProvider.js.map +1 -0
  85. package/build/{EntitySecondaryCacheLoader.d.ts → src/EntitySecondaryCacheLoader.d.ts} +5 -5
  86. package/build/{EntitySecondaryCacheLoader.js → src/EntitySecondaryCacheLoader.js} +2 -1
  87. package/build/src/EntitySecondaryCacheLoader.js.map +1 -0
  88. package/build/{EntityUpdater.d.ts → src/EntityUpdater.d.ts} +5 -5
  89. package/build/{EntityUpdater.js → src/EntityUpdater.js} +4 -6
  90. package/build/{EntityUpdater.js.map → src/EntityUpdater.js.map} +1 -1
  91. package/build/{GenericEntityCacheAdapter.d.ts → src/GenericEntityCacheAdapter.d.ts} +3 -3
  92. package/build/{GenericEntityCacheAdapter.js → src/GenericEntityCacheAdapter.js} +2 -1
  93. package/build/src/GenericEntityCacheAdapter.js.map +1 -0
  94. package/build/{GenericSecondaryEntityCache.d.ts → src/GenericSecondaryEntityCache.d.ts} +2 -2
  95. package/build/{GenericSecondaryEntityCache.js → src/GenericSecondaryEntityCache.js} +2 -1
  96. package/build/src/GenericSecondaryEntityCache.js.map +1 -0
  97. package/build/{IEntityCacheAdapter.d.ts → src/IEntityCacheAdapter.d.ts} +1 -1
  98. package/build/src/IEntityCacheAdapter.js.map +1 -0
  99. package/build/{IEntityCacheAdapterProvider.d.ts → src/IEntityCacheAdapterProvider.d.ts} +3 -3
  100. package/build/src/IEntityCacheAdapterProvider.js.map +1 -0
  101. package/build/{IEntityDatabaseAdapterProvider.d.ts → src/IEntityDatabaseAdapterProvider.d.ts} +3 -3
  102. package/build/src/IEntityDatabaseAdapterProvider.js.map +1 -0
  103. package/build/{IEntityGenericCacher.d.ts → src/IEntityGenericCacher.d.ts} +1 -1
  104. package/build/src/IEntityGenericCacher.js.map +1 -0
  105. package/build/{ReadonlyEntity.d.ts → src/ReadonlyEntity.d.ts} +8 -8
  106. package/build/{ReadonlyEntity.js → src/ReadonlyEntity.js} +9 -8
  107. package/build/src/ReadonlyEntity.js.map +1 -0
  108. package/build/{ViewerContext.d.ts → src/ViewerContext.d.ts} +5 -5
  109. package/build/{ViewerContext.js → src/ViewerContext.js} +4 -6
  110. package/build/{ViewerContext.js.map → src/ViewerContext.js.map} +1 -1
  111. package/build/{ViewerScopedEntityCompanion.d.ts → src/ViewerScopedEntityCompanion.d.ts} +9 -9
  112. package/build/{ViewerScopedEntityCompanion.js → src/ViewerScopedEntityCompanion.js} +6 -8
  113. package/build/{ViewerScopedEntityCompanion.js.map → src/ViewerScopedEntityCompanion.js.map} +1 -1
  114. package/build/{ViewerScopedEntityCompanionProvider.d.ts → src/ViewerScopedEntityCompanionProvider.d.ts} +6 -6
  115. package/build/{ViewerScopedEntityCompanionProvider.js → src/ViewerScopedEntityCompanionProvider.js} +4 -6
  116. package/build/src/ViewerScopedEntityCompanionProvider.js.map +1 -0
  117. package/build/{ViewerScopedEntityLoaderFactory.d.ts → src/ViewerScopedEntityLoaderFactory.d.ts} +6 -6
  118. package/build/{ViewerScopedEntityLoaderFactory.js → src/ViewerScopedEntityLoaderFactory.js} +2 -1
  119. package/build/src/ViewerScopedEntityLoaderFactory.js.map +1 -0
  120. package/build/{ViewerScopedEntityMutatorFactory.d.ts → src/ViewerScopedEntityMutatorFactory.d.ts} +6 -6
  121. package/build/{ViewerScopedEntityMutatorFactory.js → src/ViewerScopedEntityMutatorFactory.js} +2 -1
  122. package/build/src/ViewerScopedEntityMutatorFactory.js.map +1 -0
  123. package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.d.ts +1 -0
  124. package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js +240 -0
  125. package/build/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js.map +1 -0
  126. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.d.ts +26 -0
  127. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js +109 -0
  128. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js.map +1 -0
  129. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.d.ts +1 -0
  130. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.js +590 -0
  131. package/build/src/__tests__/AuthorizationResultBasedEntityLoader-test.js.map +1 -0
  132. package/build/src/__tests__/ComposedCacheAdapter-test.d.ts +1 -0
  133. package/build/src/__tests__/ComposedCacheAdapter-test.js +259 -0
  134. package/build/src/__tests__/ComposedCacheAdapter-test.js.map +1 -0
  135. package/build/src/__tests__/ComposedSecondaryEntityCache-test.d.ts +1 -0
  136. package/build/src/__tests__/ComposedSecondaryEntityCache-test.js +67 -0
  137. package/build/src/__tests__/ComposedSecondaryEntityCache-test.js.map +1 -0
  138. package/build/src/__tests__/EnforcingEntityAssociationLoader-test.d.ts +1 -0
  139. package/build/src/__tests__/EnforcingEntityAssociationLoader-test.js +113 -0
  140. package/build/src/__tests__/EnforcingEntityAssociationLoader-test.js.map +1 -0
  141. package/build/src/__tests__/EnforcingEntityLoader-test.d.ts +1 -0
  142. package/build/src/__tests__/EnforcingEntityLoader-test.js +316 -0
  143. package/build/src/__tests__/EnforcingEntityLoader-test.js.map +1 -0
  144. package/build/src/__tests__/Entity-test.d.ts +1 -0
  145. package/build/src/__tests__/Entity-test.js +92 -0
  146. package/build/src/__tests__/Entity-test.js.map +1 -0
  147. package/build/src/__tests__/EntityAssociationLoader-test.d.ts +1 -0
  148. package/build/src/__tests__/EntityAssociationLoader-test.js +28 -0
  149. package/build/src/__tests__/EntityAssociationLoader-test.js.map +1 -0
  150. package/build/src/__tests__/EntityCommonUseCases-test.d.ts +1 -0
  151. package/build/src/__tests__/EntityCommonUseCases-test.js +111 -0
  152. package/build/src/__tests__/EntityCommonUseCases-test.js.map +1 -0
  153. package/build/src/__tests__/EntityCompanion-test.d.ts +1 -0
  154. package/build/src/__tests__/EntityCompanion-test.js +42 -0
  155. package/build/src/__tests__/EntityCompanion-test.js.map +1 -0
  156. package/build/src/__tests__/EntityCompanionProvider-test.d.ts +1 -0
  157. package/build/src/__tests__/EntityCompanionProvider-test.js +53 -0
  158. package/build/src/__tests__/EntityCompanionProvider-test.js.map +1 -0
  159. package/build/src/__tests__/EntityConfiguration-test.d.ts +1 -0
  160. package/build/src/__tests__/EntityConfiguration-test.js +164 -0
  161. package/build/src/__tests__/EntityConfiguration-test.js.map +1 -0
  162. package/build/src/__tests__/EntityDatabaseAdapter-test.d.ts +1 -0
  163. package/build/src/__tests__/EntityDatabaseAdapter-test.js +189 -0
  164. package/build/src/__tests__/EntityDatabaseAdapter-test.js.map +1 -0
  165. package/build/src/__tests__/EntityEdges-test.d.ts +1 -0
  166. package/build/src/__tests__/EntityEdges-test.js +680 -0
  167. package/build/src/__tests__/EntityEdges-test.js.map +1 -0
  168. package/build/src/__tests__/EntityFields-test.d.ts +1 -0
  169. package/build/src/__tests__/EntityFields-test.js +61 -0
  170. package/build/src/__tests__/EntityFields-test.js.map +1 -0
  171. package/build/src/__tests__/EntityLoader-test.d.ts +1 -0
  172. package/build/src/__tests__/EntityLoader-test.js +34 -0
  173. package/build/src/__tests__/EntityLoader-test.js.map +1 -0
  174. package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.d.ts +1 -0
  175. package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.js +71 -0
  176. package/build/src/__tests__/EntityMutator-MutationCacheConsistency-test.js.map +1 -0
  177. package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.d.ts +1 -0
  178. package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.js +54 -0
  179. package/build/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.js.map +1 -0
  180. package/build/src/__tests__/EntityMutator-test.d.ts +1 -0
  181. package/build/src/__tests__/EntityMutator-test.js +721 -0
  182. package/build/src/__tests__/EntityMutator-test.js.map +1 -0
  183. package/build/src/__tests__/EntityPrivacyPolicy-test.d.ts +1 -0
  184. package/build/src/__tests__/EntityPrivacyPolicy-test.js +429 -0
  185. package/build/src/__tests__/EntityPrivacyPolicy-test.js.map +1 -0
  186. package/build/src/__tests__/EntityQueryContext-test.d.ts +1 -0
  187. package/build/src/__tests__/EntityQueryContext-test.js +181 -0
  188. package/build/src/__tests__/EntityQueryContext-test.js.map +1 -0
  189. package/build/src/__tests__/EntitySecondaryCacheLoader-test.d.ts +1 -0
  190. package/build/src/__tests__/EntitySecondaryCacheLoader-test.js +58 -0
  191. package/build/src/__tests__/EntitySecondaryCacheLoader-test.js.map +1 -0
  192. package/build/src/__tests__/EntitySelfReferentialEdges-test.d.ts +1 -0
  193. package/build/src/__tests__/EntitySelfReferentialEdges-test.js +196 -0
  194. package/build/src/__tests__/EntitySelfReferentialEdges-test.js.map +1 -0
  195. package/build/src/__tests__/GenericEntityCacheAdapter-test.d.ts +1 -0
  196. package/build/src/__tests__/GenericEntityCacheAdapter-test.js +95 -0
  197. package/build/src/__tests__/GenericEntityCacheAdapter-test.js.map +1 -0
  198. package/build/src/__tests__/ReadonlyEntity-test.d.ts +1 -0
  199. package/build/src/__tests__/ReadonlyEntity-test.js +209 -0
  200. package/build/src/__tests__/ReadonlyEntity-test.js.map +1 -0
  201. package/build/src/__tests__/ViewerContext-test.d.ts +1 -0
  202. package/build/src/__tests__/ViewerContext-test.js +28 -0
  203. package/build/src/__tests__/ViewerContext-test.js.map +1 -0
  204. package/build/src/__tests__/ViewerScopedEntityCompanion-test.d.ts +1 -0
  205. package/build/src/__tests__/ViewerScopedEntityCompanion-test.js +18 -0
  206. package/build/src/__tests__/ViewerScopedEntityCompanion-test.js.map +1 -0
  207. package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.d.ts +1 -0
  208. package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.js +18 -0
  209. package/build/src/__tests__/ViewerScopedEntityCompanionProvider-test.js.map +1 -0
  210. package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.d.ts +1 -0
  211. package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.js +21 -0
  212. package/build/src/__tests__/ViewerScopedEntityLoaderFactory-test.js.map +1 -0
  213. package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.d.ts +1 -0
  214. package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.js +20 -0
  215. package/build/src/__tests__/ViewerScopedEntityMutatorFactory-test.js.map +1 -0
  216. package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.d.ts +1 -0
  217. package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.js +121 -0
  218. package/build/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.js.map +1 -0
  219. package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.d.ts +1 -0
  220. package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js +119 -0
  221. package/build/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js.map +1 -0
  222. package/build/src/__tests__/entityUtils-test.d.ts +1 -0
  223. package/build/src/__tests__/entityUtils-test.js +88 -0
  224. package/build/src/__tests__/entityUtils-test.js.map +1 -0
  225. package/build/src/entityUtils.js.map +1 -0
  226. package/build/{errors → src/errors}/EntityCacheAdapterError.d.ts +2 -2
  227. package/build/src/errors/EntityCacheAdapterError.js +13 -0
  228. package/build/src/errors/EntityCacheAdapterError.js.map +1 -0
  229. package/build/{errors → src/errors}/EntityDatabaseAdapterError.d.ts +2 -2
  230. package/build/{errors → src/errors}/EntityDatabaseAdapterError.js +4 -37
  231. package/build/src/errors/EntityDatabaseAdapterError.js.map +1 -0
  232. package/build/{errors → src/errors}/EntityError.d.ts +1 -1
  233. package/build/{errors → src/errors}/EntityError.js +2 -2
  234. package/build/src/errors/EntityError.js.map +1 -0
  235. package/build/{errors → src/errors}/EntityInvalidFieldValueError.d.ts +5 -5
  236. package/build/src/errors/EntityInvalidFieldValueError.js +13 -0
  237. package/build/src/errors/EntityInvalidFieldValueError.js.map +1 -0
  238. package/build/{errors → src/errors}/EntityNotAuthorizedError.d.ts +4 -4
  239. package/build/src/errors/EntityNotAuthorizedError.js +16 -0
  240. package/build/src/errors/EntityNotAuthorizedError.js.map +1 -0
  241. package/build/src/errors/EntityNotFoundError.d.ts +17 -0
  242. package/build/src/errors/EntityNotFoundError.js +18 -0
  243. package/build/src/errors/EntityNotFoundError.js.map +1 -0
  244. package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.d.ts +1 -0
  245. package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.js +21 -0
  246. package/build/src/errors/__tests__/EntityDatabaseAdapterError-test.js.map +1 -0
  247. package/build/src/index.d.ts +76 -0
  248. package/build/src/index.js +94 -0
  249. package/build/src/index.js.map +1 -0
  250. package/build/{internal → src/internal}/CompositeFieldHolder.d.ts +1 -1
  251. package/build/src/internal/CompositeFieldHolder.js.map +1 -0
  252. package/build/src/internal/CompositeFieldValueMap.js.map +1 -0
  253. package/build/{internal → src/internal}/EntityDataManager.d.ts +5 -5
  254. package/build/{internal → src/internal}/EntityDataManager.js +2 -1
  255. package/build/src/internal/EntityDataManager.js.map +1 -0
  256. package/build/{internal → src/internal}/EntityFieldTransformationUtils.d.ts +1 -1
  257. package/build/src/internal/EntityFieldTransformationUtils.js.map +1 -0
  258. package/build/{internal → src/internal}/EntityLoadInterfaces.d.ts +1 -1
  259. package/build/src/internal/EntityLoadInterfaces.js.map +1 -0
  260. package/build/{internal → src/internal}/EntityTableDataCoordinator.d.ts +9 -9
  261. package/build/{internal → src/internal}/EntityTableDataCoordinator.js +5 -7
  262. package/build/{internal → src/internal}/EntityTableDataCoordinator.js.map +1 -1
  263. package/build/{internal → src/internal}/ReadThroughEntityCache.d.ts +3 -3
  264. package/build/{internal → src/internal}/ReadThroughEntityCache.js +2 -2
  265. package/build/src/internal/ReadThroughEntityCache.js.map +1 -0
  266. package/build/{internal → src/internal}/SingleFieldHolder.d.ts +1 -1
  267. package/build/src/internal/SingleFieldHolder.js.map +1 -0
  268. package/build/src/internal/__tests__/CompositeFieldHolder-test.d.ts +1 -0
  269. package/build/src/internal/__tests__/CompositeFieldHolder-test.js +25 -0
  270. package/build/src/internal/__tests__/CompositeFieldHolder-test.js.map +1 -0
  271. package/build/src/internal/__tests__/CompositeFieldValueMap-test.d.ts +1 -0
  272. package/build/src/internal/__tests__/CompositeFieldValueMap-test.js +40 -0
  273. package/build/src/internal/__tests__/CompositeFieldValueMap-test.js.map +1 -0
  274. package/build/src/internal/__tests__/EntityDataManager-test.d.ts +1 -0
  275. package/build/src/internal/__tests__/EntityDataManager-test.js +666 -0
  276. package/build/src/internal/__tests__/EntityDataManager-test.js.map +1 -0
  277. package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.d.ts +1 -0
  278. package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.js +135 -0
  279. package/build/src/internal/__tests__/EntityFieldTransformationUtils-test.js.map +1 -0
  280. package/build/src/internal/__tests__/ReadThroughEntityCache-test.d.ts +1 -0
  281. package/build/src/internal/__tests__/ReadThroughEntityCache-test.js +217 -0
  282. package/build/src/internal/__tests__/ReadThroughEntityCache-test.js.map +1 -0
  283. package/build/{metrics → src/metrics}/EntityMetricsUtils.d.ts +1 -1
  284. package/build/src/metrics/EntityMetricsUtils.js.map +1 -0
  285. package/build/{metrics → src/metrics}/IEntityMetricsAdapter.d.ts +1 -1
  286. package/build/src/metrics/IEntityMetricsAdapter.js.map +1 -0
  287. package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.d.ts +2 -2
  288. package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.js +2 -1
  289. package/build/src/metrics/NoOpEntityMetricsAdapter.js.map +1 -0
  290. package/build/{rules → src/rules}/AlwaysAllowPrivacyPolicyRule.d.ts +4 -4
  291. package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js +14 -0
  292. package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -0
  293. package/build/{rules → src/rules}/AlwaysDenyPrivacyPolicyRule.d.ts +4 -4
  294. package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js +14 -0
  295. package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -0
  296. package/build/{rules → src/rules}/AlwaysSkipPrivacyPolicyRule.d.ts +4 -4
  297. package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js +14 -0
  298. package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -0
  299. package/build/{rules → src/rules}/PrivacyPolicyRule.d.ts +3 -3
  300. package/build/{rules → src/rules}/PrivacyPolicyRule.js +2 -2
  301. package/build/src/rules/PrivacyPolicyRule.js.map +1 -0
  302. package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.d.ts +1 -0
  303. package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js +18 -0
  304. package/build/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js.map +1 -0
  305. package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.d.ts +1 -0
  306. package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js +18 -0
  307. package/build/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js.map +1 -0
  308. package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.d.ts +1 -0
  309. package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js +18 -0
  310. package/build/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js.map +1 -0
  311. package/build/src/utils/EntityCreationUtils.d.ts +14 -0
  312. package/build/src/utils/EntityCreationUtils.js +54 -0
  313. package/build/src/utils/EntityCreationUtils.js.map +1 -0
  314. package/build/{utils → src/utils}/EntityPrivacyUtils.d.ts +4 -4
  315. package/build/{utils → src/utils}/EntityPrivacyUtils.js +4 -7
  316. package/build/{utils → src/utils}/EntityPrivacyUtils.js.map +1 -1
  317. package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.d.ts +28 -0
  318. package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.js +53 -0
  319. package/build/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.js.map +1 -0
  320. package/build/src/utils/__testfixtures__/SimpleTestEntity.d.ts +20 -0
  321. package/build/src/utils/__testfixtures__/SimpleTestEntity.js +46 -0
  322. package/build/src/utils/__testfixtures__/SimpleTestEntity.js.map +1 -0
  323. package/build/src/utils/__testfixtures__/StubCacheAdapter.d.ts +29 -0
  324. package/build/src/utils/__testfixtures__/StubCacheAdapter.js +103 -0
  325. package/build/src/utils/__testfixtures__/StubCacheAdapter.js.map +1 -0
  326. package/build/src/utils/__testfixtures__/StubDatabaseAdapter.d.ts +26 -0
  327. package/build/src/utils/__testfixtures__/StubDatabaseAdapter.js +173 -0
  328. package/build/src/utils/__testfixtures__/StubDatabaseAdapter.js.map +1 -0
  329. package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.d.ts +7 -0
  330. package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.js +12 -0
  331. package/build/src/utils/__testfixtures__/StubDatabaseAdapterProvider.js.map +1 -0
  332. package/build/src/utils/__testfixtures__/StubQueryContextProvider.d.ts +7 -0
  333. package/build/src/utils/__testfixtures__/StubQueryContextProvider.js +17 -0
  334. package/build/src/utils/__testfixtures__/StubQueryContextProvider.js.map +1 -0
  335. package/build/src/utils/__testfixtures__/TSMockitoExtensions.d.ts +9 -0
  336. package/build/src/utils/__testfixtures__/TSMockitoExtensions.js +65 -0
  337. package/build/src/utils/__testfixtures__/TSMockitoExtensions.js.map +1 -0
  338. package/build/src/utils/__testfixtures__/TestEntity.d.ts +30 -0
  339. package/build/src/utils/__testfixtures__/TestEntity.js +96 -0
  340. package/build/src/utils/__testfixtures__/TestEntity.js.map +1 -0
  341. package/build/src/utils/__testfixtures__/TestEntity2.d.ts +20 -0
  342. package/build/src/utils/__testfixtures__/TestEntity2.js +49 -0
  343. package/build/src/utils/__testfixtures__/TestEntity2.js.map +1 -0
  344. package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.d.ts +36 -0
  345. package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.js +80 -0
  346. package/build/src/utils/__testfixtures__/TestEntityWithMutationTriggers.js.map +1 -0
  347. package/build/src/utils/__testfixtures__/TestViewerContext.d.ts +3 -0
  348. package/build/src/utils/__testfixtures__/TestViewerContext.js +8 -0
  349. package/build/src/utils/__testfixtures__/TestViewerContext.js.map +1 -0
  350. package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.d.ts +7 -0
  351. package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.js +33 -0
  352. package/build/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.js.map +1 -0
  353. package/build/src/utils/__testfixtures__/describeFieldTestCase.d.ts +2 -0
  354. package/build/src/utils/__testfixtures__/describeFieldTestCase.js +19 -0
  355. package/build/src/utils/__testfixtures__/describeFieldTestCase.js.map +1 -0
  356. package/build/src/utils/__tests__/EntityCreationUtils-test.d.ts +1 -0
  357. package/build/src/utils/__tests__/EntityCreationUtils-test.js +144 -0
  358. package/build/src/utils/__tests__/EntityCreationUtils-test.js.map +1 -0
  359. package/build/src/utils/__tests__/EntityPrivacyUtils-test.d.ts +1 -0
  360. package/build/src/utils/__tests__/EntityPrivacyUtils-test.js +460 -0
  361. package/build/src/utils/__tests__/EntityPrivacyUtils-test.js.map +1 -0
  362. package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.d.ts +1 -0
  363. package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js +180 -0
  364. package/build/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js.map +1 -0
  365. package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.d.ts +1 -0
  366. package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js +27 -0
  367. package/build/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js.map +1 -0
  368. package/build/src/utils/collections/SerializableKeyMap.js.map +1 -0
  369. package/build/src/utils/collections/__tests__/SerializableKeyMap-test.d.ts +5 -0
  370. package/build/src/utils/collections/__tests__/SerializableKeyMap-test.js +99 -0
  371. package/build/src/utils/collections/__tests__/SerializableKeyMap-test.js.map +1 -0
  372. package/build/src/utils/collections/__tests__/maps-test.d.ts +1 -0
  373. package/build/src/utils/collections/__tests__/maps-test.js +121 -0
  374. package/build/src/utils/collections/__tests__/maps-test.js.map +1 -0
  375. package/build/src/utils/collections/__tests__/sets-test.d.ts +1 -0
  376. package/build/src/utils/collections/__tests__/sets-test.js +19 -0
  377. package/build/src/utils/collections/__tests__/sets-test.js.map +1 -0
  378. package/build/src/utils/collections/maps.js.map +1 -0
  379. package/build/src/utils/collections/sets.js.map +1 -0
  380. package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.d.ts +3 -3
  381. package/build/src/utils/mergeEntityMutationTriggerConfigurations.js.map +1 -0
  382. package/build/tsconfig.tsbuildinfo +1 -0
  383. package/package.json +11 -23
  384. package/src/AuthorizationResultBasedEntityAssociationLoader.ts +4 -4
  385. package/src/AuthorizationResultBasedEntityLoader.ts +20 -13
  386. package/src/AuthorizationResultBasedEntityMutator.ts +15 -14
  387. package/src/ComposedEntityCacheAdapter.ts +3 -3
  388. package/src/ComposedSecondaryEntityCache.ts +1 -1
  389. package/src/EnforcingEntityAssociationLoader.ts +6 -5
  390. package/src/EnforcingEntityCreator.ts +4 -4
  391. package/src/EnforcingEntityDeleter.ts +4 -4
  392. package/src/EnforcingEntityLoader.ts +5 -5
  393. package/src/EnforcingEntityUpdater.ts +4 -4
  394. package/src/Entity.ts +10 -10
  395. package/src/EntityAssociationLoader.ts +5 -5
  396. package/src/EntityCompanion.ts +10 -10
  397. package/src/EntityCompanionProvider.ts +13 -13
  398. package/src/EntityConfiguration.ts +3 -3
  399. package/src/EntityCreator.ts +5 -5
  400. package/src/EntityDatabaseAdapter.ts +3 -3
  401. package/src/EntityDeleter.ts +5 -5
  402. package/src/EntityFieldDefinition.ts +3 -3
  403. package/src/EntityLoader.ts +7 -7
  404. package/src/EntityLoaderFactory.ts +9 -9
  405. package/src/EntityLoaderUtils.ts +7 -7
  406. package/src/EntityMutationInfo.ts +2 -2
  407. package/src/EntityMutationTriggerConfiguration.ts +3 -3
  408. package/src/EntityMutationValidator.ts +3 -3
  409. package/src/EntityMutatorFactory.ts +12 -12
  410. package/src/EntityPrivacyPolicy.ts +7 -6
  411. package/src/EntityQueryContext.ts +1 -1
  412. package/src/EntityQueryContextProvider.ts +3 -3
  413. package/src/EntitySecondaryCacheLoader.ts +5 -5
  414. package/src/EntityUpdater.ts +5 -5
  415. package/src/GenericEntityCacheAdapter.ts +3 -3
  416. package/src/GenericSecondaryEntityCache.ts +2 -2
  417. package/src/IEntityCacheAdapter.ts +1 -1
  418. package/src/IEntityCacheAdapterProvider.ts +3 -3
  419. package/src/IEntityDatabaseAdapterProvider.ts +3 -3
  420. package/src/IEntityGenericCacher.ts +1 -1
  421. package/src/ReadonlyEntity.ts +10 -10
  422. package/src/ViewerContext.ts +6 -6
  423. package/src/ViewerScopedEntityCompanion.ts +9 -9
  424. package/src/ViewerScopedEntityCompanionProvider.ts +6 -6
  425. package/src/ViewerScopedEntityLoaderFactory.ts +6 -6
  426. package/src/ViewerScopedEntityMutatorFactory.ts +6 -6
  427. package/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.ts +5 -4
  428. package/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.ts +14 -18
  429. package/src/__tests__/AuthorizationResultBasedEntityLoader-test.ts +18 -16
  430. package/src/__tests__/ComposedCacheAdapter-test.ts +5 -3
  431. package/src/__tests__/ComposedSecondaryEntityCache-test.ts +2 -1
  432. package/src/__tests__/EnforcingEntityAssociationLoader-test.ts +4 -3
  433. package/src/__tests__/EnforcingEntityLoader-test.ts +4 -3
  434. package/src/__tests__/Entity-test.ts +8 -6
  435. package/src/__tests__/EntityAssociationLoader-test.ts +7 -5
  436. package/src/__tests__/EntityCommonUseCases-test.ts +10 -9
  437. package/src/__tests__/EntityCompanion-test.ts +13 -11
  438. package/src/__tests__/EntityCompanionProvider-test.ts +7 -5
  439. package/src/__tests__/EntityConfiguration-test.ts +3 -1
  440. package/src/__tests__/EntityDatabaseAdapter-test.ts +9 -7
  441. package/src/__tests__/EntityEdges-test.ts +10 -8
  442. package/src/__tests__/EntityFields-test.ts +8 -7
  443. package/src/__tests__/EntityLoader-test.ts +8 -6
  444. package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +8 -6
  445. package/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.ts +5 -3
  446. package/src/__tests__/EntityMutator-test.ts +33 -29
  447. package/src/__tests__/EntityPrivacyPolicy-test.ts +19 -16
  448. package/src/__tests__/EntityQueryContext-test.ts +7 -6
  449. package/src/__tests__/EntitySecondaryCacheLoader-test.ts +5 -3
  450. package/src/__tests__/EntitySelfReferentialEdges-test.ts +7 -5
  451. package/src/__tests__/GenericEntityCacheAdapter-test.ts +4 -3
  452. package/src/__tests__/ReadonlyEntity-test.ts +10 -9
  453. package/src/__tests__/ViewerContext-test.ts +3 -1
  454. package/src/__tests__/ViewerScopedEntityCompanion-test.ts +10 -8
  455. package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +7 -6
  456. package/src/__tests__/ViewerScopedEntityLoaderFactory-test.ts +5 -4
  457. package/src/__tests__/ViewerScopedEntityMutatorFactory-test.ts +8 -6
  458. package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +15 -13
  459. package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +7 -5
  460. package/src/__tests__/entityUtils-test.ts +3 -2
  461. package/src/errors/EntityCacheAdapterError.ts +2 -2
  462. package/src/errors/EntityDatabaseAdapterError.ts +2 -2
  463. package/src/errors/EntityError.ts +1 -1
  464. package/src/errors/EntityInvalidFieldValueError.ts +5 -5
  465. package/src/errors/EntityNotAuthorizedError.ts +4 -4
  466. package/src/errors/EntityNotFoundError.ts +56 -9
  467. package/src/errors/__tests__/EntityDatabaseAdapterError-test.ts +29 -0
  468. package/src/index.ts +40 -54
  469. package/src/internal/CompositeFieldHolder.ts +2 -1
  470. package/src/internal/EntityDataManager.ts +7 -5
  471. package/src/internal/EntityFieldTransformationUtils.ts +1 -1
  472. package/src/internal/EntityLoadInterfaces.ts +1 -1
  473. package/src/internal/EntityTableDataCoordinator.ts +10 -10
  474. package/src/internal/ReadThroughEntityCache.ts +3 -3
  475. package/src/internal/SingleFieldHolder.ts +1 -1
  476. package/src/internal/__tests__/CompositeFieldHolder-test.ts +2 -0
  477. package/src/internal/__tests__/CompositeFieldValueMap-test.ts +2 -0
  478. package/src/internal/__tests__/EntityDataManager-test.ts +34 -31
  479. package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +5 -3
  480. package/src/internal/__tests__/ReadThroughEntityCache-test.ts +5 -4
  481. package/src/metrics/EntityMetricsUtils.ts +3 -2
  482. package/src/metrics/IEntityMetricsAdapter.ts +1 -1
  483. package/src/metrics/NoOpEntityMetricsAdapter.ts +3 -2
  484. package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +4 -4
  485. package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +4 -4
  486. package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +4 -4
  487. package/src/rules/PrivacyPolicyRule.ts +3 -3
  488. package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +3 -3
  489. package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +3 -3
  490. package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +3 -3
  491. package/src/utils/EntityCreationUtils.ts +143 -0
  492. package/src/utils/EntityPrivacyUtils.ts +5 -5
  493. package/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.ts +5 -3
  494. package/src/utils/__testfixtures__/SimpleTestEntity.ts +6 -6
  495. package/src/utils/__testfixtures__/StubCacheAdapter.ts +4 -4
  496. package/src/utils/__testfixtures__/StubDatabaseAdapter.ts +8 -7
  497. package/src/utils/__testfixtures__/StubDatabaseAdapterProvider.ts +5 -5
  498. package/src/utils/__testfixtures__/StubQueryContextProvider.ts +2 -2
  499. package/src/utils/__testfixtures__/TestEntity.ts +7 -7
  500. package/src/utils/__testfixtures__/TestEntity2.ts +6 -6
  501. package/src/utils/__testfixtures__/TestEntityWithMutationTriggers.ts +6 -10
  502. package/src/utils/__testfixtures__/TestViewerContext.ts +2 -2
  503. package/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.ts +5 -5
  504. package/src/utils/__testfixtures__/describeFieldTestCase.ts +3 -1
  505. package/src/utils/__tests__/EntityCreationUtils-test.ts +356 -0
  506. package/src/utils/__tests__/EntityPrivacyUtils-test.ts +15 -13
  507. package/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.ts +10 -8
  508. package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +2 -0
  509. package/src/utils/collections/__tests__/SerializableKeyMap-test.ts +2 -0
  510. package/src/utils/collections/__tests__/maps-test.ts +3 -1
  511. package/src/utils/collections/__tests__/sets-test.ts +2 -0
  512. package/src/utils/mergeEntityMutationTriggerConfigurations.ts +3 -3
  513. package/build/AuthorizationResultBasedEntityAssociationLoader.js.map +0 -1
  514. package/build/AuthorizationResultBasedEntityLoader.js.map +0 -1
  515. package/build/AuthorizationResultBasedEntityMutator.js.map +0 -1
  516. package/build/ComposedEntityCacheAdapter.js.map +0 -1
  517. package/build/ComposedSecondaryEntityCache.js.map +0 -1
  518. package/build/EnforcingEntityAssociationLoader.js.map +0 -1
  519. package/build/EnforcingEntityCreator.js.map +0 -1
  520. package/build/EnforcingEntityDeleter.js.map +0 -1
  521. package/build/EnforcingEntityLoader.js.map +0 -1
  522. package/build/EnforcingEntityUpdater.js.map +0 -1
  523. package/build/Entity.js.map +0 -1
  524. package/build/EntityAssociationLoader.js.map +0 -1
  525. package/build/EntityCompanion.js.map +0 -1
  526. package/build/EntityCompanionProvider.js.map +0 -1
  527. package/build/EntityConfiguration.js.map +0 -1
  528. package/build/EntityDatabaseAdapter.js.map +0 -1
  529. package/build/EntityFieldDefinition.js.map +0 -1
  530. package/build/EntityFields.js.map +0 -1
  531. package/build/EntityLoaderFactory.js +0 -31
  532. package/build/EntityLoaderFactory.js.map +0 -1
  533. package/build/EntityLoaderUtils.js.map +0 -1
  534. package/build/EntityMutationInfo.js.map +0 -1
  535. package/build/EntityMutationTriggerConfiguration.js.map +0 -1
  536. package/build/EntityMutationValidator.js.map +0 -1
  537. package/build/EntityMutatorFactory.js.map +0 -1
  538. package/build/EntityQueryContext.js.map +0 -1
  539. package/build/EntityQueryContextProvider.js.map +0 -1
  540. package/build/EntitySecondaryCacheLoader.js.map +0 -1
  541. package/build/GenericEntityCacheAdapter.js.map +0 -1
  542. package/build/GenericSecondaryEntityCache.js.map +0 -1
  543. package/build/IEntityCacheAdapter.js.map +0 -1
  544. package/build/IEntityCacheAdapterProvider.js.map +0 -1
  545. package/build/IEntityDatabaseAdapterProvider.js.map +0 -1
  546. package/build/IEntityGenericCacher.js.map +0 -1
  547. package/build/ReadonlyEntity.js.map +0 -1
  548. package/build/ViewerScopedEntityCompanionProvider.js.map +0 -1
  549. package/build/ViewerScopedEntityLoaderFactory.js.map +0 -1
  550. package/build/ViewerScopedEntityMutatorFactory.js.map +0 -1
  551. package/build/entityUtils.js.map +0 -1
  552. package/build/errors/EntityCacheAdapterError.js +0 -46
  553. package/build/errors/EntityCacheAdapterError.js.map +0 -1
  554. package/build/errors/EntityDatabaseAdapterError.js.map +0 -1
  555. package/build/errors/EntityError.js.map +0 -1
  556. package/build/errors/EntityInvalidFieldValueError.js +0 -45
  557. package/build/errors/EntityInvalidFieldValueError.js.map +0 -1
  558. package/build/errors/EntityNotAuthorizedError.js +0 -48
  559. package/build/errors/EntityNotAuthorizedError.js.map +0 -1
  560. package/build/errors/EntityNotFoundError.d.ts +0 -10
  561. package/build/errors/EntityNotFoundError.js +0 -45
  562. package/build/errors/EntityNotFoundError.js.map +0 -1
  563. package/build/index.d.ts +0 -90
  564. package/build/index.js +0 -154
  565. package/build/index.js.map +0 -1
  566. package/build/internal/CompositeFieldHolder.js.map +0 -1
  567. package/build/internal/CompositeFieldValueMap.js.map +0 -1
  568. package/build/internal/EntityDataManager.js.map +0 -1
  569. package/build/internal/EntityFieldTransformationUtils.js.map +0 -1
  570. package/build/internal/EntityLoadInterfaces.js.map +0 -1
  571. package/build/internal/ReadThroughEntityCache.js.map +0 -1
  572. package/build/internal/SingleFieldHolder.js.map +0 -1
  573. package/build/metrics/EntityMetricsUtils.js.map +0 -1
  574. package/build/metrics/IEntityMetricsAdapter.js.map +0 -1
  575. package/build/metrics/NoOpEntityMetricsAdapter.js.map +0 -1
  576. package/build/rules/AlwaysAllowPrivacyPolicyRule.js +0 -46
  577. package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +0 -1
  578. package/build/rules/AlwaysDenyPrivacyPolicyRule.js +0 -46
  579. package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +0 -1
  580. package/build/rules/AlwaysSkipPrivacyPolicyRule.js +0 -46
  581. package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +0 -1
  582. package/build/rules/PrivacyPolicyRule.js.map +0 -1
  583. package/build/tsconfig.build.tsbuildinfo +0 -1
  584. package/build/utils/collections/SerializableKeyMap.js.map +0 -1
  585. package/build/utils/collections/maps.js.map +0 -1
  586. package/build/utils/collections/sets.js.map +0 -1
  587. package/build/utils/mergeEntityMutationTriggerConfigurations.js.map +0 -1
  588. /package/build/{EntityFieldDefinition.js → src/EntityFieldDefinition.js} +0 -0
  589. /package/build/{EntityFields.d.ts → src/EntityFields.d.ts} +0 -0
  590. /package/build/{EntityFields.js → src/EntityFields.js} +0 -0
  591. /package/build/{EntityMutationInfo.js → src/EntityMutationInfo.js} +0 -0
  592. /package/build/{EntityMutationTriggerConfiguration.js → src/EntityMutationTriggerConfiguration.js} +0 -0
  593. /package/build/{EntityQueryContext.js → src/EntityQueryContext.js} +0 -0
  594. /package/build/{IEntityCacheAdapter.js → src/IEntityCacheAdapter.js} +0 -0
  595. /package/build/{IEntityCacheAdapterProvider.js → src/IEntityCacheAdapterProvider.js} +0 -0
  596. /package/build/{IEntityDatabaseAdapterProvider.js → src/IEntityDatabaseAdapterProvider.js} +0 -0
  597. /package/build/{IEntityGenericCacher.js → src/IEntityGenericCacher.js} +0 -0
  598. /package/build/{entityUtils.d.ts → src/entityUtils.d.ts} +0 -0
  599. /package/build/{entityUtils.js → src/entityUtils.js} +0 -0
  600. /package/build/{internal → src/internal}/CompositeFieldHolder.js +0 -0
  601. /package/build/{internal → src/internal}/CompositeFieldValueMap.d.ts +0 -0
  602. /package/build/{internal → src/internal}/CompositeFieldValueMap.js +0 -0
  603. /package/build/{internal → src/internal}/EntityFieldTransformationUtils.js +0 -0
  604. /package/build/{internal → src/internal}/EntityLoadInterfaces.js +0 -0
  605. /package/build/{internal → src/internal}/SingleFieldHolder.js +0 -0
  606. /package/build/{metrics → src/metrics}/EntityMetricsUtils.js +0 -0
  607. /package/build/{metrics → src/metrics}/IEntityMetricsAdapter.js +0 -0
  608. /package/build/{utils → src/utils}/collections/SerializableKeyMap.d.ts +0 -0
  609. /package/build/{utils → src/utils}/collections/SerializableKeyMap.js +0 -0
  610. /package/build/{utils → src/utils}/collections/maps.d.ts +0 -0
  611. /package/build/{utils → src/utils}/collections/maps.js +0 -0
  612. /package/build/{utils → src/utils}/collections/sets.d.ts +0 -0
  613. /package/build/{utils → src/utils}/collections/sets.js +0 -0
  614. /package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.js +0 -0
@@ -1,10 +1,12 @@
1
- import Entity from '../../Entity';
1
+ import { describe, expect, test } from '@jest/globals';
2
+
3
+ import { Entity } from '../../Entity';
2
4
  import { EntityCompanionDefinition } from '../../EntityCompanionProvider';
3
- import EntityConfiguration from '../../EntityConfiguration';
5
+ import { EntityConfiguration } from '../../EntityConfiguration';
4
6
  import { StringField, UUIDField } from '../../EntityFields';
5
- import EntityPrivacyPolicy from '../../EntityPrivacyPolicy';
6
- import ViewerContext from '../../ViewerContext';
7
- import AlwaysAllowPrivacyPolicyRule from '../../rules/AlwaysAllowPrivacyPolicyRule';
7
+ import { EntityPrivacyPolicy } from '../../EntityPrivacyPolicy';
8
+ import { ViewerContext } from '../../ViewerContext';
9
+ import { AlwaysAllowPrivacyPolicyRule } from '../../rules/AlwaysAllowPrivacyPolicyRule';
8
10
  import { createUnitTestEntityCompanionProvider } from '../../utils/__testfixtures__/createUnitTestEntityCompanionProvider';
9
11
 
10
12
  describe('Two entities backed by the same table', () => {
@@ -1,4 +1,5 @@
1
1
  import { result } from '@expo/results';
2
+ import { describe, expect, it } from '@jest/globals';
2
3
 
3
4
  import {
4
5
  enforceResultsAsync,
@@ -105,7 +106,7 @@ describe(partitionArray, () => {
105
106
  type B = false;
106
107
  const arr: (A | B)[] = [true, false, true, true, false];
107
108
  const [as, bs] = partitionArray<A, B>(arr, (val: A | B): val is A => val === true);
108
- expect(as).toMatchObject([true, true, true]);
109
- expect(bs).toMatchObject([false, false]);
109
+ expect(as).toStrictEqual([true, true, true]);
110
+ expect(bs).toStrictEqual([false, false]);
110
111
  });
111
112
  });
@@ -1,6 +1,6 @@
1
- import EntityError, { EntityErrorCode, EntityErrorState } from './EntityError';
1
+ import { EntityError, EntityErrorCode, EntityErrorState } from './EntityError';
2
2
 
3
- export default abstract class EntityCacheAdapterError extends EntityError {}
3
+ export abstract class EntityCacheAdapterError extends EntityError {}
4
4
 
5
5
  export class EntityCacheAdapterTransientError extends EntityCacheAdapterError {
6
6
  public readonly state = EntityErrorState.TRANSIENT;
@@ -1,6 +1,6 @@
1
- import EntityError, { EntityErrorCode, EntityErrorState } from './EntityError';
1
+ import { EntityError, EntityErrorCode, EntityErrorState } from './EntityError';
2
2
 
3
- export default abstract class EntityDatabaseAdapterError extends EntityError {}
3
+ export abstract class EntityDatabaseAdapterError extends EntityError {}
4
4
 
5
5
  export class EntityDatabaseAdapterTransientError extends EntityDatabaseAdapterError {
6
6
  public readonly state = EntityErrorState.TRANSIENT;
@@ -20,7 +20,7 @@ export enum EntityErrorCode {
20
20
  ERR_ENTITY_CACHE_ADAPTER_TRANSIENT = 'ERR_ENTITY_CACHE_ADAPTER_TRANSIENT',
21
21
  }
22
22
 
23
- export default abstract class EntityError extends ES6Error {
23
+ export abstract class EntityError extends ES6Error {
24
24
  public abstract readonly state: EntityErrorState;
25
25
  public abstract readonly code: EntityErrorCode;
26
26
 
@@ -1,10 +1,10 @@
1
- import EntityError, { EntityErrorCode, EntityErrorState } from './EntityError';
2
1
  import { IEntityClass } from '../Entity';
3
- import EntityPrivacyPolicy from '../EntityPrivacyPolicy';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
2
+ import { EntityPrivacyPolicy } from '../EntityPrivacyPolicy';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { EntityError, EntityErrorCode, EntityErrorState } from './EntityError';
6
6
 
7
- export default class EntityInvalidFieldValueError<
7
+ export class EntityInvalidFieldValueError<
8
8
  TFields extends Record<string, any>,
9
9
  TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>,
10
10
  TViewerContext extends ViewerContext,
@@ -1,9 +1,9 @@
1
- import EntityError, { EntityErrorCode, EntityErrorState } from './EntityError';
2
1
  import { EntityAuthorizationAction } from '../EntityPrivacyPolicy';
3
- import ReadonlyEntity from '../ReadonlyEntity';
4
- import ViewerContext from '../ViewerContext';
2
+ import { ReadonlyEntity } from '../ReadonlyEntity';
3
+ import { ViewerContext } from '../ViewerContext';
4
+ import { EntityError, EntityErrorCode, EntityErrorState } from './EntityError';
5
5
 
6
- export default class EntityNotAuthorizedError<
6
+ export class EntityNotAuthorizedError<
7
7
  TFields extends Record<string, any>,
8
8
  TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>,
9
9
  TViewerContext extends ViewerContext,
@@ -1,10 +1,37 @@
1
- import EntityError, { EntityErrorCode, EntityErrorState } from './EntityError';
2
1
  import { IEntityClass } from '../Entity';
3
- import EntityPrivacyPolicy from '../EntityPrivacyPolicy';
4
- import ReadonlyEntity from '../ReadonlyEntity';
5
- import ViewerContext from '../ViewerContext';
2
+ import { EntityPrivacyPolicy } from '../EntityPrivacyPolicy';
3
+ import { ReadonlyEntity } from '../ReadonlyEntity';
4
+ import { ViewerContext } from '../ViewerContext';
5
+ import { EntityError, EntityErrorCode, EntityErrorState } from './EntityError';
6
6
 
7
- export default class EntityNotFoundError<
7
+ type EntityNotFoundOptions<
8
+ TFields extends Record<string, any>,
9
+ TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>,
10
+ TViewerContext extends ViewerContext,
11
+ TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>,
12
+ TPrivacyPolicy extends EntityPrivacyPolicy<
13
+ TFields,
14
+ TIDField,
15
+ TViewerContext,
16
+ TEntity,
17
+ TSelectedFields
18
+ >,
19
+ N extends keyof TFields,
20
+ TSelectedFields extends keyof TFields = keyof TFields,
21
+ > = {
22
+ entityClass: IEntityClass<
23
+ TFields,
24
+ TIDField,
25
+ TViewerContext,
26
+ TEntity,
27
+ TPrivacyPolicy,
28
+ TSelectedFields
29
+ >;
30
+ fieldName: N;
31
+ fieldValue: TFields[N];
32
+ };
33
+
34
+ export class EntityNotFoundError<
8
35
  TFields extends Record<string, any>,
9
36
  TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>,
10
37
  TViewerContext extends ViewerContext,
@@ -22,18 +49,38 @@ export default class EntityNotFoundError<
22
49
  public readonly state = EntityErrorState.PERMANENT;
23
50
  public readonly code = EntityErrorCode.ERR_ENTITY_NOT_FOUND;
24
51
 
52
+ constructor(message: string);
25
53
  constructor(
26
- entityClass: IEntityClass<
54
+ options: EntityNotFoundOptions<
27
55
  TFields,
28
56
  TIDField,
29
57
  TViewerContext,
30
58
  TEntity,
31
59
  TPrivacyPolicy,
60
+ N,
32
61
  TSelectedFields
33
62
  >,
34
- fieldName: N,
35
- fieldValue: TFields[N],
63
+ );
64
+
65
+ constructor(
66
+ messageOrOptions:
67
+ | string
68
+ | EntityNotFoundOptions<
69
+ TFields,
70
+ TIDField,
71
+ TViewerContext,
72
+ TEntity,
73
+ TPrivacyPolicy,
74
+ N,
75
+ TSelectedFields
76
+ >,
36
77
  ) {
37
- super(`Entity not found: ${entityClass.name} (${String(fieldName)} = ${fieldValue})`);
78
+ if (typeof messageOrOptions === 'string') {
79
+ super(messageOrOptions);
80
+ } else {
81
+ super(
82
+ `Entity not found: ${messageOrOptions.entityClass.name} (${String(messageOrOptions.fieldName)} = ${messageOrOptions.fieldValue})`,
83
+ );
84
+ }
38
85
  }
39
86
  }
@@ -0,0 +1,29 @@
1
+ import { describe, expect, it } from '@jest/globals';
2
+
3
+ import {
4
+ EntityDatabaseAdapterCheckConstraintError,
5
+ EntityDatabaseAdapterError,
6
+ EntityDatabaseAdapterExclusionConstraintError,
7
+ EntityDatabaseAdapterForeignKeyConstraintError,
8
+ EntityDatabaseAdapterNotNullConstraintError,
9
+ EntityDatabaseAdapterTransientError,
10
+ EntityDatabaseAdapterUniqueConstraintError,
11
+ EntityDatabaseAdapterUnknownError,
12
+ } from '../EntityDatabaseAdapterError';
13
+
14
+ describe(EntityDatabaseAdapterError, () => {
15
+ // necessary for coverage within the entity package since these errors are
16
+ // currently only ever instantiated by database adapter implementations
17
+ it('instantiates all errors successfully', () => {
18
+ const errors = [
19
+ new EntityDatabaseAdapterTransientError('test'),
20
+ new EntityDatabaseAdapterUnknownError('test'),
21
+ new EntityDatabaseAdapterCheckConstraintError('test'),
22
+ new EntityDatabaseAdapterExclusionConstraintError('test'),
23
+ new EntityDatabaseAdapterForeignKeyConstraintError('test'),
24
+ new EntityDatabaseAdapterNotNullConstraintError('test'),
25
+ new EntityDatabaseAdapterUniqueConstraintError('test'),
26
+ ];
27
+ expect(errors).not.toBeFalsy();
28
+ });
29
+ });
package/src/index.ts CHANGED
@@ -4,87 +4,73 @@
4
4
  * @module @expo/entity
5
5
  */
6
6
 
7
- export { default as AuthorizationResultBasedEntityAssociationLoader } from './AuthorizationResultBasedEntityAssociationLoader';
8
7
  export * from './AuthorizationResultBasedEntityAssociationLoader';
9
- export { default as AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
8
+ export * from './AuthorizationResultBasedEntityLoader';
10
9
  export * from './AuthorizationResultBasedEntityMutator';
11
- export { default as ComposedEntityCacheAdapter } from './ComposedEntityCacheAdapter';
12
- export { default as ComposedSecondaryEntityCache } from './ComposedSecondaryEntityCache';
13
- export { default as EnforcingEntityAssociationLoader } from './EnforcingEntityAssociationLoader';
14
- export { default as EnforcingEntityCreator } from './EnforcingEntityCreator';
15
- export { default as EnforcingEntityDeleter } from './EnforcingEntityDeleter';
16
- export { default as EnforcingEntityLoader } from './EnforcingEntityLoader';
17
- export { default as EnforcingEntityUpdater } from './EnforcingEntityUpdater';
18
- export { default as Entity } from './Entity';
10
+ export * from './ComposedEntityCacheAdapter';
11
+ export * from './ComposedSecondaryEntityCache';
12
+ export * from './EnforcingEntityAssociationLoader';
13
+ export * from './EnforcingEntityCreator';
14
+ export * from './EnforcingEntityDeleter';
15
+ export * from './EnforcingEntityLoader';
16
+ export * from './EnforcingEntityUpdater';
19
17
  export * from './Entity';
20
- export { default as EntityAssociationLoader } from './EntityAssociationLoader';
21
- export { default as EntityCompanion } from './EntityCompanion';
18
+ export * from './EntityAssociationLoader';
22
19
  export * from './EntityCompanion';
23
- export { default as EntityCompanionProvider } from './EntityCompanionProvider';
24
20
  export * from './EntityCompanionProvider';
25
- export { default as EntityConfiguration } from './EntityConfiguration';
26
21
  export * from './EntityConfiguration';
27
- export { default as EntityCreator } from './EntityCreator';
28
- export { default as EntityDatabaseAdapter } from './EntityDatabaseAdapter';
22
+ export * from './EntityCreator';
29
23
  export * from './EntityDatabaseAdapter';
30
- export { default as EntityDeleter } from './EntityDeleter';
24
+ export * from './EntityDeleter';
31
25
  export * from './EntityFieldDefinition';
32
26
  export * from './EntityFields';
33
- export { default as EntityLoader } from './EntityLoader';
34
- export { default as EntityLoaderFactory } from './EntityLoaderFactory';
35
- export { default as EntityLoaderUtils } from './EntityLoaderUtils';
27
+ export * from './EntityLoader';
28
+ export * from './EntityLoaderFactory';
29
+ export * from './EntityLoaderUtils';
36
30
  export * from './EntityMutationInfo';
37
- export { type default as EntityMutationTriggerConfiguration } from './EntityMutationTriggerConfiguration';
38
31
  export * from './EntityMutationTriggerConfiguration';
39
- export { default as EntityMutationValidator } from './EntityMutationValidator';
40
- export { default as EntityMutatorFactory } from './EntityMutatorFactory';
41
- export { default as EntityPrivacyPolicy } from './EntityPrivacyPolicy';
32
+ export * from './EntityMutationValidator';
33
+ export * from './EntityMutatorFactory';
42
34
  export * from './EntityPrivacyPolicy';
43
35
  export * from './EntityQueryContext';
44
- export { default as EntityQueryContextProvider } from './EntityQueryContextProvider';
45
- export { default as EntitySecondaryCacheLoader } from './EntitySecondaryCacheLoader';
36
+ export * from './EntityQueryContextProvider';
46
37
  export * from './EntitySecondaryCacheLoader';
47
- export { default as EntityUpdater } from './EntityUpdater';
38
+ export * from './EntityUpdater';
48
39
  export * from './entityUtils';
49
- export { default as GenericEntityCacheAdapter } from './GenericEntityCacheAdapter';
50
- export { default as GenericSecondaryEntityCache } from './GenericSecondaryEntityCache';
51
- export { type default as IEntityCacheAdapter } from './IEntityCacheAdapter';
52
- export { type default as IEntityCacheAdapterProvider } from './IEntityCacheAdapterProvider';
53
- export { type default as IEntityDatabaseAdapterProvider } from './IEntityDatabaseAdapterProvider';
54
- export { type default as IEntityGenericCacher } from './IEntityGenericCacher';
55
- export { default as ReadonlyEntity } from './ReadonlyEntity';
56
- export { default as ViewerContext } from './ViewerContext';
57
- export { default as ViewerScopedEntityCompanion } from './ViewerScopedEntityCompanion';
58
- export { default as ViewerScopedEntityCompanionProvider } from './ViewerScopedEntityCompanionProvider';
59
- export { default as ViewerScopedEntityLoaderFactory } from './ViewerScopedEntityLoaderFactory';
60
- export { default as ViewerScopedEntityMutatorFactory } from './ViewerScopedEntityMutatorFactory';
61
- export { default as EntityCacheAdapterError } from './errors/EntityCacheAdapterError';
40
+ export * from './GenericEntityCacheAdapter';
41
+ export * from './GenericSecondaryEntityCache';
42
+ export * from './IEntityCacheAdapter';
43
+ export * from './IEntityCacheAdapterProvider';
44
+ export * from './IEntityDatabaseAdapterProvider';
45
+ export * from './IEntityGenericCacher';
46
+ export * from './ReadonlyEntity';
47
+ export * from './ViewerContext';
48
+ export * from './ViewerScopedEntityCompanion';
49
+ export * from './ViewerScopedEntityCompanionProvider';
50
+ export * from './ViewerScopedEntityLoaderFactory';
51
+ export * from './ViewerScopedEntityMutatorFactory';
62
52
  export * from './errors/EntityCacheAdapterError';
63
- export { default as EntityDatabaseAdapterError } from './errors/EntityDatabaseAdapterError';
64
53
  export * from './errors/EntityDatabaseAdapterError';
65
- export { default as EntityError } from './errors/EntityError';
66
54
  export * from './errors/EntityError';
67
- export { default as EntityInvalidFieldValueError } from './errors/EntityInvalidFieldValueError';
68
- export { default as EntityNotAuthorizedError } from './errors/EntityNotAuthorizedError';
69
- export { default as EntityNotFoundError } from './errors/EntityNotFoundError';
55
+ export * from './errors/EntityInvalidFieldValueError';
56
+ export * from './errors/EntityNotAuthorizedError';
57
+ export * from './errors/EntityNotFoundError';
70
58
  export * from './internal/CompositeFieldHolder';
71
59
  export * from './internal/CompositeFieldValueMap';
72
- export { default as EntityDataManager } from './internal/EntityDataManager';
60
+ export * from './internal/EntityDataManager';
73
61
  export * from './internal/EntityFieldTransformationUtils';
74
62
  export * from './internal/EntityLoadInterfaces';
75
- export { default as EntityTableDataCoordinator } from './internal/EntityTableDataCoordinator';
76
- export { default as ReadThroughEntityCache } from './internal/ReadThroughEntityCache';
63
+ export * from './internal/EntityTableDataCoordinator';
77
64
  export * from './internal/ReadThroughEntityCache';
78
65
  export * from './internal/SingleFieldHolder';
79
66
  export * from './metrics/EntityMetricsUtils';
80
- export { type default as IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
81
67
  export * from './metrics/IEntityMetricsAdapter';
82
- export { default as NoOpEntityMetricsAdapter } from './metrics/NoOpEntityMetricsAdapter';
83
- export { default as AlwaysAllowPrivacyPolicyRule } from './rules/AlwaysAllowPrivacyPolicyRule';
84
- export { default as AlwaysDenyPrivacyPolicyRule } from './rules/AlwaysDenyPrivacyPolicyRule';
85
- export { default as AlwaysSkipPrivacyPolicyRule } from './rules/AlwaysSkipPrivacyPolicyRule';
86
- export { default as PrivacyPolicyRule } from './rules/PrivacyPolicyRule';
68
+ export * from './metrics/NoOpEntityMetricsAdapter';
69
+ export * from './rules/AlwaysAllowPrivacyPolicyRule';
70
+ export * from './rules/AlwaysDenyPrivacyPolicyRule';
71
+ export * from './rules/AlwaysSkipPrivacyPolicyRule';
87
72
  export * from './rules/PrivacyPolicyRule';
73
+ export * from './utils/EntityCreationUtils';
88
74
  export * from './utils/EntityPrivacyUtils';
89
75
  export * from './utils/mergeEntityMutationTriggerConfigurations';
90
76
  export * from './utils/collections/maps';
@@ -1,8 +1,9 @@
1
1
  import invariant from 'invariant';
2
2
 
3
- import EntityConfiguration, {
3
+ import {
4
4
  EntityCompositeField,
5
5
  EntityCompositeFieldValue,
6
+ EntityConfiguration,
6
7
  } from '../EntityConfiguration';
7
8
  import { pick } from '../entityUtils';
8
9
  import { getDatabaseFieldForEntityField } from './EntityFieldTransformationUtils';
@@ -1,8 +1,8 @@
1
1
  import DataLoader from 'dataloader';
2
2
  import invariant from 'invariant';
3
3
 
4
- import ReadThroughEntityCache from './ReadThroughEntityCache';
5
- import EntityDatabaseAdapter, {
4
+ import {
5
+ EntityDatabaseAdapter,
6
6
  FieldEqualityCondition,
7
7
  QuerySelectionModifiers,
8
8
  QuerySelectionModifiersWithOrderByRaw,
@@ -12,15 +12,17 @@ import {
12
12
  EntityTransactionalQueryContext,
13
13
  TransactionalDataLoaderMode,
14
14
  } from '../EntityQueryContext';
15
- import EntityQueryContextProvider from '../EntityQueryContextProvider';
15
+ import { EntityQueryContextProvider } from '../EntityQueryContextProvider';
16
16
  import { partitionErrors } from '../entityUtils';
17
17
  import { IEntityLoadKey, IEntityLoadValue, LoadPair } from './EntityLoadInterfaces';
18
+ import { ReadThroughEntityCache } from './ReadThroughEntityCache';
18
19
  import {
19
20
  timeAndLogLoadEventAsync,
20
21
  timeAndLogLoadMapEventAsync,
21
22
  } from '../metrics/EntityMetricsUtils';
22
- import IEntityMetricsAdapter, {
23
+ import {
23
24
  EntityMetricsLoadType,
25
+ IEntityMetricsAdapter,
24
26
  IncrementLoadCountEventType,
25
27
  } from '../metrics/IEntityMetricsAdapter';
26
28
  import { computeIfAbsent } from '../utils/collections/maps';
@@ -38,7 +40,7 @@ type DataLoaderMap<TFields extends Record<string, any>> = Map<
38
40
  *
39
41
  * @internal
40
42
  */
41
- export default class EntityDataManager<
43
+ export class EntityDataManager<
42
44
  TFields extends Record<string, any>,
43
45
  TIDField extends keyof TFields,
44
46
  > {
@@ -1,7 +1,7 @@
1
1
  import invariant from 'invariant';
2
2
  import nullthrows from 'nullthrows';
3
3
 
4
- import EntityConfiguration from '../EntityConfiguration';
4
+ import { EntityConfiguration } from '../EntityConfiguration';
5
5
 
6
6
  /**
7
7
  * @internal
@@ -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
  /**
@@ -1,12 +1,12 @@
1
- import EntityDataManager from './EntityDataManager';
2
- import ReadThroughEntityCache from './ReadThroughEntityCache';
3
- import EntityConfiguration from '../EntityConfiguration';
4
- import EntityDatabaseAdapter from '../EntityDatabaseAdapter';
5
- import EntityQueryContextProvider from '../EntityQueryContextProvider';
6
- import IEntityCacheAdapter from '../IEntityCacheAdapter';
7
- import IEntityCacheAdapterProvider from '../IEntityCacheAdapterProvider';
8
- import IEntityDatabaseAdapterProvider from '../IEntityDatabaseAdapterProvider';
9
- 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 { ReadThroughEntityCache } from './ReadThroughEntityCache';
9
+ import { IEntityMetricsAdapter } from '../metrics/IEntityMetricsAdapter';
10
10
 
11
11
  /**
12
12
  * Responsible for orchestrating fetching and caching of entity data from a
@@ -15,7 +15,7 @@ import IEntityMetricsAdapter from '../metrics/IEntityMetricsAdapter';
15
15
  *
16
16
  * @internal
17
17
  */
18
- export default class EntityTableDataCoordinator<
18
+ export class EntityTableDataCoordinator<
19
19
  TFields extends Record<string, any>,
20
20
  TIDField extends keyof TFields,
21
21
  > {
@@ -1,7 +1,7 @@
1
1
  import invariant from 'invariant';
2
2
 
3
- import EntityConfiguration from '../EntityConfiguration';
4
- import IEntityCacheAdapter from '../IEntityCacheAdapter';
3
+ import { EntityConfiguration } from '../EntityConfiguration';
4
+ import { IEntityCacheAdapter } from '../IEntityCacheAdapter';
5
5
  import { IEntityLoadKey, IEntityLoadValue } from './EntityLoadInterfaces';
6
6
  import { filterMap } from '../utils/collections/maps';
7
7
 
@@ -35,7 +35,7 @@ export type CacheLoadResult<TFields extends Record<string, any>> =
35
35
  *
36
36
  * @internal
37
37
  */
38
- export default class ReadThroughEntityCache<
38
+ export class ReadThroughEntityCache<
39
39
  TFields extends Record<string, any>,
40
40
  TIDField extends keyof TFields,
41
41
  > {
@@ -1,6 +1,6 @@
1
1
  import invariant from 'invariant';
2
2
 
3
- import EntityConfiguration from '../EntityConfiguration';
3
+ import { EntityConfiguration } from '../EntityConfiguration';
4
4
  import { getDatabaseFieldForEntityField } from './EntityFieldTransformationUtils';
5
5
  import {
6
6
  EntityLoadMethodType,
@@ -1,3 +1,5 @@
1
+ import { describe, expect, it } from '@jest/globals';
2
+
1
3
  import { CompositeFieldHolder, CompositeFieldValueHolder } from '../CompositeFieldHolder';
2
4
 
3
5
  describe(CompositeFieldHolder, () => {
@@ -1,3 +1,5 @@
1
+ import { describe, expect, it } from '@jest/globals';
2
+
1
3
  import { EntityCompositeFieldValue } from '../../EntityConfiguration';
2
4
  import { CompositeFieldValueHolder } from '../CompositeFieldHolder';
3
5
  import { CompositeFieldValueMap } from '../CompositeFieldValueMap';
@@ -1,37 +1,40 @@
1
+ import { describe, expect, it, jest } from '@jest/globals';
1
2
  import {
2
- mock,
3
- instance,
4
- when,
5
- anything,
6
- verify,
7
- spy,
3
+ anyNumber,
8
4
  anyString,
9
- resetCalls,
5
+ anything,
10
6
  deepEqual,
11
- anyNumber,
7
+ instance,
8
+ mock,
9
+ resetCalls,
10
+ spy,
11
+ verify,
12
+ when,
12
13
  } from 'ts-mockito';
13
14
 
14
- import EntityDatabaseAdapter from '../../EntityDatabaseAdapter';
15
+ import { EntityDatabaseAdapter } from '../../EntityDatabaseAdapter';
15
16
  import { TransactionalDataLoaderMode } from '../../EntityQueryContext';
16
- import IEntityMetricsAdapter, {
17
+ import {
17
18
  EntityMetricsLoadType,
19
+ IEntityMetricsAdapter,
18
20
  IncrementLoadCountEventType,
19
21
  } from '../../metrics/IEntityMetricsAdapter';
20
- import NoOpEntityMetricsAdapter from '../../metrics/NoOpEntityMetricsAdapter';
22
+ import { NoOpEntityMetricsAdapter } from '../../metrics/NoOpEntityMetricsAdapter';
21
23
  import {
22
- NoCacheStubCacheAdapterProvider,
23
24
  InMemoryFullCacheStubCacheAdapterProvider,
25
+ NoCacheStubCacheAdapterProvider,
24
26
  } from '../../utils/__testfixtures__/StubCacheAdapter';
25
- import StubDatabaseAdapter from '../../utils/__testfixtures__/StubDatabaseAdapter';
26
- import StubQueryContextProvider from '../../utils/__testfixtures__/StubQueryContextProvider';
27
- import TestEntity, {
27
+ import { StubDatabaseAdapter } from '../../utils/__testfixtures__/StubDatabaseAdapter';
28
+ import { StubQueryContextProvider } from '../../utils/__testfixtures__/StubQueryContextProvider';
29
+ import {
30
+ TestEntity,
28
31
  testEntityConfiguration,
29
32
  TestFields,
30
33
  } from '../../utils/__testfixtures__/TestEntity';
31
34
  import { CompositeFieldHolder, CompositeFieldValueHolder } from '../CompositeFieldHolder';
32
- import EntityDataManager from '../EntityDataManager';
35
+ import { EntityDataManager } from '../EntityDataManager';
33
36
  import { EntityLoadMethodType } from '../EntityLoadInterfaces';
34
- import ReadThroughEntityCache from '../ReadThroughEntityCache';
37
+ import { ReadThroughEntityCache } from '../ReadThroughEntityCache';
35
38
  import { SingleFieldHolder, SingleFieldValueHolder } from '../SingleFieldHolder';
36
39
 
37
40
  const getObjects = (): Map<string, TestFields[]> =>
@@ -303,7 +306,7 @@ describe(EntityDataManager, () => {
303
306
  expect(dbSpy).toHaveBeenCalledTimes(1);
304
307
  expect(cacheSpy).toHaveBeenCalledTimes(1);
305
308
 
306
- expect(entityData).toMatchObject(entityData2);
309
+ expect(entityData).toEqual(entityData2);
307
310
  expect(entityData.get(new SingleFieldValueHolder('hello'))).toHaveLength(2);
308
311
  expect(entityData.get(new SingleFieldValueHolder('world'))).toHaveLength(1);
309
312
 
@@ -378,9 +381,9 @@ describe(EntityDataManager, () => {
378
381
  expect(dbSpy).toHaveBeenCalledTimes(3);
379
382
  expect(cacheSpy).toHaveBeenCalledTimes(0);
380
383
 
381
- expect(entityData).toMatchObject(entityData2);
382
- expect(entityData2).toMatchObject(entityData3);
383
- expect(entityData3).toMatchObject(entityData4);
384
+ expect(entityData).toEqual(entityData2);
385
+ expect(entityData2).toEqual(entityData3);
386
+ expect(entityData3).toEqual(entityData4);
384
387
  expect(entityData.get(new SingleFieldValueHolder('hello'))).toHaveLength(2);
385
388
  expect(entityData.get(new SingleFieldValueHolder('world'))).toHaveLength(1);
386
389
 
@@ -453,9 +456,9 @@ describe(EntityDataManager, () => {
453
456
  expect(dbSpy).toHaveBeenCalledTimes(3);
454
457
  expect(cacheSpy).toHaveBeenCalledTimes(0);
455
458
 
456
- expect(entityData).toMatchObject(entityData2);
457
- expect(entityData2).toMatchObject(entityData3);
458
- expect(entityData3).toMatchObject(entityData4);
459
+ expect(entityData).toEqual(entityData2);
460
+ expect(entityData2).toEqual(entityData3);
461
+ expect(entityData3).toEqual(entityData4);
459
462
  expect(entityData.get(new SingleFieldValueHolder('hello'))).toHaveLength(2);
460
463
  expect(entityData.get(new SingleFieldValueHolder('world'))).toHaveLength(1);
461
464
 
@@ -532,9 +535,9 @@ describe(EntityDataManager, () => {
532
535
  expect(dbSpy).toHaveBeenCalledTimes(4);
533
536
  expect(cacheSpy).toHaveBeenCalledTimes(0);
534
537
 
535
- expect(entityData).toMatchObject(entityData2);
536
- expect(entityData2).toMatchObject(entityData3);
537
- expect(entityData3).toMatchObject(entityData4);
538
+ expect(entityData).toEqual(entityData2);
539
+ expect(entityData2).toEqual(entityData3);
540
+ expect(entityData3).toEqual(entityData4);
538
541
  expect(entityData.get(new SingleFieldValueHolder('hello'))).toHaveLength(2);
539
542
  expect(entityData.get(new SingleFieldValueHolder('world'))).toHaveLength(1);
540
543
 
@@ -1273,7 +1276,7 @@ describe(EntityDataManager, () => {
1273
1276
  new SingleFieldHolder('nullableField'),
1274
1277
  [new SingleFieldValueHolder(null as any)],
1275
1278
  ),
1276
- ).rejects.toThrowError('Invalid load: TestEntity (nullableField = null)');
1279
+ ).rejects.toThrow('Invalid load: TestEntity (nullableField = null)');
1277
1280
 
1278
1281
  await expect(
1279
1282
  entityDataManager.loadManyEqualingAsync(
@@ -1281,7 +1284,7 @@ describe(EntityDataManager, () => {
1281
1284
  new SingleFieldHolder('nullableField'),
1282
1285
  [new SingleFieldValueHolder(undefined as any)],
1283
1286
  ),
1284
- ).rejects.toThrowError('Invalid load: TestEntity (nullableField = undefined)');
1287
+ ).rejects.toThrow('Invalid load: TestEntity (nullableField = undefined)');
1285
1288
  });
1286
1289
 
1287
1290
  it('throws when a composite value load-by value is null or undefined', async () => {
@@ -1320,7 +1323,7 @@ describe(EntityDataManager, () => {
1320
1323
  }),
1321
1324
  ],
1322
1325
  ),
1323
- ).rejects.toThrowError(
1326
+ ).rejects.toThrow(
1324
1327
  'Invalid load: TestEntity (nullableField,testIndexedField = CompositeFieldValue(nullableField=null,testIndexedField=unique1))',
1325
1328
  );
1326
1329
 
@@ -1338,7 +1341,7 @@ describe(EntityDataManager, () => {
1338
1341
  }),
1339
1342
  ],
1340
1343
  ),
1341
- ).rejects.toThrowError(
1344
+ ).rejects.toThrow(
1342
1345
  'Invalid load: TestEntity (nullableField,testIndexedField = CompositeFieldValue(nullableField=undefined,testIndexedField=unique1))',
1343
1346
  );
1344
1347
  });