@expo/entity 0.31.0 → 0.32.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 (257) hide show
  1. package/build/ComposedEntityCacheAdapter.d.ts +4 -6
  2. package/build/ComposedEntityCacheAdapter.js +3 -6
  3. package/build/ComposedEntityCacheAdapter.js.map +1 -1
  4. package/build/EnforcingEntityLoader.d.ts +6 -1
  5. package/build/EnforcingEntityLoader.js +8 -0
  6. package/build/EnforcingEntityLoader.js.map +1 -1
  7. package/build/Entity.d.ts +20 -10
  8. package/build/Entity.js +2 -2
  9. package/build/Entity.js.map +1 -1
  10. package/build/EntityAssociationLoader.d.ts +9 -9
  11. package/build/EntityCompanion.d.ts +6 -5
  12. package/build/EntityCompanion.js +6 -4
  13. package/build/EntityCompanion.js.map +1 -1
  14. package/build/EntityCompanionProvider.d.ts +28 -36
  15. package/build/EntityCompanionProvider.js +4 -19
  16. package/build/EntityCompanionProvider.js.map +1 -1
  17. package/build/EntityConfiguration.d.ts +3 -3
  18. package/build/EntityConfiguration.js +2 -2
  19. package/build/EntityConfiguration.js.map +1 -1
  20. package/build/EntityDatabaseAdapter.d.ts +1 -1
  21. package/build/EntityDatabaseAdapter.js +1 -1
  22. package/build/EntityDatabaseAdapter.js.map +1 -1
  23. package/build/EntityFieldDefinition.d.ts +2 -2
  24. package/build/EntityFieldDefinition.js +1 -1
  25. package/build/EntityFieldDefinition.js.map +1 -1
  26. package/build/EntityLoader.d.ts +19 -2
  27. package/build/EntityLoader.js +41 -5
  28. package/build/EntityLoader.js.map +1 -1
  29. package/build/EntityLoaderFactory.d.ts +4 -7
  30. package/build/EntityLoaderFactory.js +3 -5
  31. package/build/EntityLoaderFactory.js.map +1 -1
  32. package/build/EntityMutationInfo.d.ts +3 -3
  33. package/build/EntityMutationInfo.js +1 -1
  34. package/build/EntityMutationInfo.js.map +1 -1
  35. package/build/EntityMutationTriggerConfiguration.d.ts +3 -3
  36. package/build/EntityMutationValidator.d.ts +1 -1
  37. package/build/EntityMutator.d.ts +9 -7
  38. package/build/EntityMutator.js +21 -21
  39. package/build/EntityMutator.js.map +1 -1
  40. package/build/EntityMutatorFactory.d.ts +4 -2
  41. package/build/EntityMutatorFactory.js +5 -4
  42. package/build/EntityMutatorFactory.js.map +1 -1
  43. package/build/EntityPrivacyPolicy.d.ts +3 -3
  44. package/build/EntityPrivacyPolicy.js +2 -2
  45. package/build/EntityPrivacyPolicy.js.map +1 -1
  46. package/build/EntityQueryContext.d.ts +13 -5
  47. package/build/EntityQueryContext.js +11 -4
  48. package/build/EntityQueryContext.js.map +1 -1
  49. package/build/EntityQueryContextProvider.d.ts +3 -3
  50. package/build/EntityQueryContextProvider.js +2 -2
  51. package/build/EntityQueryContextProvider.js.map +1 -1
  52. package/build/EntitySecondaryCacheLoader.d.ts +1 -1
  53. package/build/EntitySecondaryCacheLoader.js +1 -1
  54. package/build/EntitySecondaryCacheLoader.js.map +1 -1
  55. package/build/GenericEntityCacheAdapter.d.ts +14 -0
  56. package/build/GenericEntityCacheAdapter.js +38 -0
  57. package/build/GenericEntityCacheAdapter.js.map +1 -0
  58. package/build/{EntityCacheAdapter.d.ts → IEntityCacheAdapter.d.ts} +5 -8
  59. package/build/IEntityCacheAdapter.js +3 -0
  60. package/build/IEntityCacheAdapter.js.map +1 -0
  61. package/build/IEntityCacheAdapterProvider.d.ts +2 -2
  62. package/build/IEntityGenericCacher.d.ts +31 -2
  63. package/build/ReadonlyEntity.d.ts +19 -7
  64. package/build/ReadonlyEntity.js +15 -13
  65. package/build/ReadonlyEntity.js.map +1 -1
  66. package/build/ViewerContext.d.ts +3 -3
  67. package/build/ViewerContext.js +3 -3
  68. package/build/ViewerContext.js.map +1 -1
  69. package/build/ViewerScopedEntityCompanion.d.ts +2 -2
  70. package/build/ViewerScopedEntityCompanion.js.map +1 -1
  71. package/build/ViewerScopedEntityCompanionProvider.d.ts +3 -3
  72. package/build/ViewerScopedEntityCompanionProvider.js +3 -3
  73. package/build/ViewerScopedEntityCompanionProvider.js.map +1 -1
  74. package/build/ViewerScopedEntityLoaderFactory.d.ts +1 -1
  75. package/build/ViewerScopedEntityMutatorFactory.d.ts +1 -1
  76. package/build/__tests__/ComposedCacheAdapter-test.js +4 -8
  77. package/build/__tests__/ComposedCacheAdapter-test.js.map +1 -1
  78. package/build/__tests__/EnforcingEntityLoader-test.js +26 -0
  79. package/build/__tests__/EnforcingEntityLoader-test.js.map +1 -1
  80. package/build/__tests__/Entity-test.js +42 -20
  81. package/build/__tests__/Entity-test.js.map +1 -1
  82. package/build/__tests__/EntityAssociationLoader-test.js +6 -6
  83. package/build/__tests__/EntityAssociationLoader-test.js.map +1 -1
  84. package/build/__tests__/EntityCommonUseCases-test.js +20 -22
  85. package/build/__tests__/EntityCommonUseCases-test.js.map +1 -1
  86. package/build/__tests__/EntityCompanion-test.js +2 -1
  87. package/build/__tests__/EntityCompanion-test.js.map +1 -1
  88. package/build/__tests__/EntityCompanionProvider-test.js +15 -40
  89. package/build/__tests__/EntityCompanionProvider-test.js.map +1 -1
  90. package/build/__tests__/EntityEdges-test.js +48 -54
  91. package/build/__tests__/EntityEdges-test.js.map +1 -1
  92. package/build/__tests__/EntityLoader-constructor-test.d.ts +9 -5
  93. package/build/__tests__/EntityLoader-constructor-test.js +13 -14
  94. package/build/__tests__/EntityLoader-constructor-test.js.map +1 -1
  95. package/build/__tests__/EntityLoader-test.js +80 -10
  96. package/build/__tests__/EntityLoader-test.js.map +1 -1
  97. package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js +20 -22
  98. package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js.map +1 -1
  99. package/build/__tests__/EntityMutator-test.js +67 -14
  100. package/build/__tests__/EntityMutator-test.js.map +1 -1
  101. package/build/__tests__/EntityPrivacyPolicy-test.js +82 -29
  102. package/build/__tests__/EntityPrivacyPolicy-test.js.map +1 -1
  103. package/build/__tests__/EntityQueryContext-test.js +12 -0
  104. package/build/__tests__/EntityQueryContext-test.js.map +1 -1
  105. package/build/__tests__/EntitySecondaryCacheLoader-test.js +1 -2
  106. package/build/__tests__/EntitySecondaryCacheLoader-test.js.map +1 -1
  107. package/build/__tests__/EntitySelfReferentialEdges-test.js +16 -20
  108. package/build/__tests__/EntitySelfReferentialEdges-test.js.map +1 -1
  109. package/build/__tests__/GenericEntityCacheAdapter-test.d.ts +1 -0
  110. package/build/__tests__/GenericEntityCacheAdapter-test.js +80 -0
  111. package/build/__tests__/GenericEntityCacheAdapter-test.js.map +1 -0
  112. package/build/__tests__/ReadonlyEntity-test.js +79 -13
  113. package/build/__tests__/ReadonlyEntity-test.js.map +1 -1
  114. package/build/__tests__/ViewerScopedEntityCompanionProvider-test.js +2 -25
  115. package/build/__tests__/ViewerScopedEntityCompanionProvider-test.js.map +1 -1
  116. package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js +20 -23
  117. package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js.map +1 -1
  118. package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js +17 -20
  119. package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js.map +1 -1
  120. package/build/errors/EntityError.js +2 -2
  121. package/build/errors/EntityError.js.map +1 -1
  122. package/build/errors/EntityInvalidFieldValueError.d.ts +2 -2
  123. package/build/errors/EntityInvalidFieldValueError.js.map +1 -1
  124. package/build/errors/EntityNotAuthorizedError.d.ts +2 -2
  125. package/build/errors/EntityNotAuthorizedError.js +1 -1
  126. package/build/errors/EntityNotAuthorizedError.js.map +1 -1
  127. package/build/errors/EntityNotFoundError.d.ts +2 -2
  128. package/build/errors/EntityNotFoundError.js.map +1 -1
  129. package/build/index.d.ts +2 -1
  130. package/build/index.js +3 -3
  131. package/build/index.js.map +1 -1
  132. package/build/internal/EntityDataManager.d.ts +1 -1
  133. package/build/internal/EntityDataManager.js +1 -1
  134. package/build/internal/EntityDataManager.js.map +1 -1
  135. package/build/internal/EntityFieldTransformationUtils.d.ts +1 -1
  136. package/build/internal/EntityFieldTransformationUtils.js +4 -4
  137. package/build/internal/EntityFieldTransformationUtils.js.map +1 -1
  138. package/build/internal/EntityTableDataCoordinator.d.ts +3 -3
  139. package/build/internal/EntityTableDataCoordinator.js.map +1 -1
  140. package/build/internal/ReadThroughEntityCache.d.ts +3 -3
  141. package/build/internal/ReadThroughEntityCache.js +1 -1
  142. package/build/internal/ReadThroughEntityCache.js.map +1 -1
  143. package/build/internal/__tests__/EntityDataManager-test.js +1 -1
  144. package/build/internal/__tests__/EntityDataManager-test.js.map +1 -1
  145. package/build/internal/__tests__/ReadThroughEntityCache-test.js.map +1 -1
  146. package/build/metrics/EntityMetricsUtils.js.map +1 -1
  147. package/build/metrics/IEntityMetricsAdapter.js +4 -4
  148. package/build/metrics/IEntityMetricsAdapter.js.map +1 -1
  149. package/build/rules/AlwaysAllowPrivacyPolicyRule.d.ts +2 -2
  150. package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -1
  151. package/build/rules/AlwaysDenyPrivacyPolicyRule.d.ts +2 -2
  152. package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -1
  153. package/build/rules/AlwaysSkipPrivacyPolicyRule.d.ts +2 -2
  154. package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -1
  155. package/build/rules/PrivacyPolicyRule.d.ts +1 -1
  156. package/build/rules/PrivacyPolicyRule.js +1 -1
  157. package/build/rules/PrivacyPolicyRule.js.map +1 -1
  158. package/build/testfixtures/DateIDTestEntity.d.ts +2 -3
  159. package/build/testfixtures/DateIDTestEntity.js +7 -9
  160. package/build/testfixtures/DateIDTestEntity.js.map +1 -1
  161. package/build/testfixtures/SimpleTestEntity.d.ts +3 -4
  162. package/build/testfixtures/SimpleTestEntity.js +7 -9
  163. package/build/testfixtures/SimpleTestEntity.js.map +1 -1
  164. package/build/testfixtures/TestEntity.d.ts +2 -3
  165. package/build/testfixtures/TestEntity.js +14 -10
  166. package/build/testfixtures/TestEntity.js.map +1 -1
  167. package/build/testfixtures/TestEntity2.d.ts +2 -3
  168. package/build/testfixtures/TestEntity2.js +7 -9
  169. package/build/testfixtures/TestEntity2.js.map +1 -1
  170. package/build/testfixtures/TestEntityNumberKey.d.ts +2 -3
  171. package/build/testfixtures/TestEntityNumberKey.js +7 -9
  172. package/build/testfixtures/TestEntityNumberKey.js.map +1 -1
  173. package/build/utils/testing/PrivacyPolicyRuleTestUtils.d.ts +4 -4
  174. package/build/utils/testing/StubCacheAdapter.d.ts +6 -5
  175. package/build/utils/testing/StubCacheAdapter.js +5 -6
  176. package/build/utils/testing/StubCacheAdapter.js.map +1 -1
  177. package/build/utils/testing/StubDatabaseAdapterProvider.js.map +1 -1
  178. package/build/utils/testing/StubQueryContextProvider.d.ts +2 -1
  179. package/build/utils/testing/StubQueryContextProvider.js +1 -1
  180. package/build/utils/testing/StubQueryContextProvider.js.map +1 -1
  181. package/build/utils/testing/createUnitTestEntityCompanionProvider.js +2 -2
  182. package/build/utils/testing/createUnitTestEntityCompanionProvider.js.map +1 -1
  183. package/package.json +3 -3
  184. package/src/ComposedEntityCacheAdapter.ts +4 -11
  185. package/src/EnforcingEntityLoader.ts +17 -1
  186. package/src/Entity.ts +23 -12
  187. package/src/EntityAssociationLoader.ts +12 -12
  188. package/src/EntityCompanion.ts +13 -32
  189. package/src/EntityCompanionProvider.ts +41 -80
  190. package/src/EntityConfiguration.ts +4 -5
  191. package/src/EntityFieldDefinition.ts +2 -2
  192. package/src/EntityLoader.ts +45 -2
  193. package/src/EntityLoaderFactory.ts +7 -9
  194. package/src/EntityMutationInfo.ts +2 -2
  195. package/src/EntityMutationTriggerConfiguration.ts +3 -3
  196. package/src/EntityMutationValidator.ts +1 -1
  197. package/src/EntityMutator.ts +38 -31
  198. package/src/EntityMutatorFactory.ts +6 -1
  199. package/src/EntityPrivacyPolicy.ts +2 -2
  200. package/src/EntityQueryContext.ts +24 -4
  201. package/src/EntityQueryContextProvider.ts +7 -5
  202. package/src/EntitySecondaryCacheLoader.ts +1 -1
  203. package/src/GenericEntityCacheAdapter.ts +65 -0
  204. package/src/{EntityCacheAdapter.ts → IEntityCacheAdapter.ts} +5 -8
  205. package/src/IEntityCacheAdapterProvider.ts +2 -2
  206. package/src/IEntityGenericCacher.ts +32 -2
  207. package/src/ReadonlyEntity.ts +32 -32
  208. package/src/ViewerContext.ts +10 -8
  209. package/src/ViewerScopedEntityCompanion.ts +2 -2
  210. package/src/ViewerScopedEntityCompanionProvider.ts +4 -12
  211. package/src/ViewerScopedEntityLoaderFactory.ts +1 -1
  212. package/src/ViewerScopedEntityMutatorFactory.ts +1 -1
  213. package/src/__tests__/ComposedCacheAdapter-test.ts +6 -11
  214. package/src/__tests__/EnforcingEntityLoader-test.ts +41 -0
  215. package/src/__tests__/Entity-test.ts +42 -21
  216. package/src/__tests__/EntityCommonUseCases-test.ts +20 -22
  217. package/src/__tests__/EntityCompanion-test.ts +6 -9
  218. package/src/__tests__/EntityCompanionProvider-test.ts +14 -26
  219. package/src/__tests__/EntityEdges-test.ts +43 -49
  220. package/src/__tests__/EntityLoader-constructor-test.ts +16 -12
  221. package/src/__tests__/EntityLoader-test.ts +105 -0
  222. package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +20 -22
  223. package/src/__tests__/EntityMutator-test.ts +119 -19
  224. package/src/__tests__/EntityPrivacyPolicy-test.ts +82 -29
  225. package/src/__tests__/EntityQueryContext-test.ts +23 -1
  226. package/src/__tests__/EntitySelfReferentialEdges-test.ts +8 -10
  227. package/src/__tests__/GenericEntityCacheAdapter-test.ts +102 -0
  228. package/src/__tests__/ReadonlyEntity-test.ts +79 -13
  229. package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +2 -5
  230. package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +30 -24
  231. package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +14 -18
  232. package/src/errors/EntityInvalidFieldValueError.ts +2 -2
  233. package/src/errors/EntityNotAuthorizedError.ts +2 -2
  234. package/src/errors/EntityNotFoundError.ts +2 -2
  235. package/src/index.ts +2 -1
  236. package/src/internal/EntityDataManager.ts +1 -1
  237. package/src/internal/EntityTableDataCoordinator.ts +4 -4
  238. package/src/internal/ReadThroughEntityCache.ts +2 -2
  239. package/src/internal/__tests__/EntityDataManager-test.ts +2 -1
  240. package/src/internal/__tests__/ReadThroughEntityCache-test.ts +8 -8
  241. package/src/metrics/EntityMetricsUtils.ts +1 -1
  242. package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +2 -2
  243. package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +2 -2
  244. package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +2 -2
  245. package/src/rules/PrivacyPolicyRule.ts +1 -1
  246. package/src/testfixtures/DateIDTestEntity.ts +6 -8
  247. package/src/testfixtures/SimpleTestEntity.ts +6 -8
  248. package/src/testfixtures/TestEntity.ts +19 -15
  249. package/src/testfixtures/TestEntity2.ts +6 -8
  250. package/src/testfixtures/TestEntityNumberKey.ts +6 -8
  251. package/src/utils/testing/PrivacyPolicyRuleTestUtils.ts +4 -4
  252. package/src/utils/testing/StubCacheAdapter.ts +9 -11
  253. package/src/utils/testing/StubDatabaseAdapterProvider.ts +1 -1
  254. package/src/utils/testing/StubQueryContextProvider.ts +4 -3
  255. package/src/utils/testing/createUnitTestEntityCompanionProvider.ts +3 -3
  256. package/build/EntityCacheAdapter.js +0 -13
  257. package/build/EntityCacheAdapter.js.map +0 -1
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Entity_1 = __importDefault(require("../Entity"));
7
- const EntityCompanionProvider_1 = require("../EntityCompanionProvider");
8
7
  const EntityConfiguration_1 = __importDefault(require("../EntityConfiguration"));
9
8
  const EntityFieldDefinition_1 = require("../EntityFieldDefinition");
10
9
  const EntityFields_1 = require("../EntityFields");
@@ -33,14 +32,18 @@ class CategoryPrivacyPolicy extends EntityPrivacyPolicy_1.default {
33
32
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
34
33
  const makeEntityClass = (edgeDeletionBehavior) => {
35
34
  class CategoryEntity extends Entity_1.default {
36
- static getCompanionDefinition() {
37
- return categoryEntityCompanion;
35
+ static defineCompanionDefinition() {
36
+ return {
37
+ entityClass: CategoryEntity,
38
+ entityConfiguration: categoryEntityConfiguration,
39
+ privacyPolicyClass: CategoryPrivacyPolicy,
40
+ };
38
41
  }
39
42
  }
40
43
  const categoryEntityConfiguration = new EntityConfiguration_1.default({
41
44
  idField: 'id',
42
45
  tableName: 'categories',
43
- getInboundEdges: () => [CategoryEntity],
46
+ inboundEdges: [CategoryEntity],
44
47
  schema: {
45
48
  id: new EntityFields_1.UUIDField({
46
49
  columnName: 'id',
@@ -50,7 +53,7 @@ const makeEntityClass = (edgeDeletionBehavior) => {
50
53
  columnName: 'parent_category_id',
51
54
  cache: true,
52
55
  association: {
53
- getAssociatedEntityClass: () => CategoryEntity,
56
+ associatedEntityClass: CategoryEntity,
54
57
  edgeDeletionBehavior,
55
58
  },
56
59
  }),
@@ -58,11 +61,6 @@ const makeEntityClass = (edgeDeletionBehavior) => {
58
61
  databaseAdapterFlavor: 'postgres',
59
62
  cacheAdapterFlavor: 'redis',
60
63
  });
61
- const categoryEntityCompanion = new EntityCompanionProvider_1.EntityCompanionDefinition({
62
- entityClass: CategoryEntity,
63
- entityConfiguration: categoryEntityConfiguration,
64
- privacyPolicyClass: CategoryPrivacyPolicy,
65
- });
66
64
  return {
67
65
  CategoryEntity,
68
66
  };
@@ -149,7 +147,6 @@ describe('EntityEdgeDeletionBehavior.SET_NULL', () => {
149
147
  });
150
148
  describe('EntityEdgeDeletionBehavior.CASCADE_DELETE_INVALIDATE_CACHE', () => {
151
149
  it('invalidates the cache', async () => {
152
- var _a, _b, _c, _d;
153
150
  const { CategoryEntity } = makeEntityClass(EntityFieldDefinition_1.EntityEdgeDeletionBehavior.CASCADE_DELETE_INVALIDATE_CACHE_ONLY);
154
151
  const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
155
152
  const viewerContext = new TestViewerContext_1.default(companionProvider);
@@ -171,22 +168,21 @@ describe('EntityEdgeDeletionBehavior.CASCADE_DELETE_INVALIDATE_CACHE', () => {
171
168
  const subCategoryCachedBefore = await categoryCacheAdapter.loadManyAsync('parent_category_id', [
172
169
  parentCategory.getID(),
173
170
  ]);
174
- expect((_a = subCategoryCachedBefore.get(parentCategory.getID())) === null || _a === void 0 ? void 0 : _a.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
171
+ expect(subCategoryCachedBefore.get(parentCategory.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
175
172
  const subSubCategoryCachedBefore = await categoryCacheAdapter.loadManyAsync('parent_category_id', [subCategory.getID()]);
176
- expect((_b = subSubCategoryCachedBefore.get(subCategory.getID())) === null || _b === void 0 ? void 0 : _b.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
173
+ expect(subSubCategoryCachedBefore.get(subCategory.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
177
174
  await CategoryEntity.enforceDeleteAsync(parentCategory);
178
175
  const subCategoryCachedAfter = await categoryCacheAdapter.loadManyAsync('parent_category_id', [
179
176
  parentCategory.getID(),
180
177
  ]);
181
- expect((_c = subCategoryCachedAfter.get(parentCategory.getID())) === null || _c === void 0 ? void 0 : _c.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
178
+ expect(subCategoryCachedAfter.get(parentCategory.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
182
179
  const subSubCategoryCachedAfter = await categoryCacheAdapter.loadManyAsync('parent_category_id', [subCategory.getID()]);
183
- expect((_d = subSubCategoryCachedAfter.get(subCategory.getID())) === null || _d === void 0 ? void 0 : _d.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
180
+ expect(subSubCategoryCachedAfter.get(subCategory.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
184
181
  await expect(CategoryEntity.loader(viewerContext).enforcing().loadByIDNullableAsync(parentCategory.getID())).resolves.toBeNull();
185
182
  await expect(CategoryEntity.loader(viewerContext).enforcing().loadByIDNullableAsync(subCategory.getID())).resolves.not.toBeNull();
186
183
  await expect(CategoryEntity.loader(viewerContext).enforcing().loadByIDNullableAsync(subSubCategory.getID())).resolves.not.toBeNull();
187
184
  });
188
185
  it('handles cycles', async () => {
189
- var _a, _b, _c, _d;
190
186
  const { CategoryEntity } = makeEntityClass(EntityFieldDefinition_1.EntityEdgeDeletionBehavior.CASCADE_DELETE_INVALIDATE_CACHE_ONLY);
191
187
  const companionProvider = (0, createUnitTestEntityCompanionProvider_1.createUnitTestEntityCompanionProvider)();
192
188
  const viewerContext = new TestViewerContext_1.default(companionProvider);
@@ -208,15 +204,15 @@ describe('EntityEdgeDeletionBehavior.CASCADE_DELETE_INVALIDATE_CACHE', () => {
208
204
  categoryA.getID(),
209
205
  categoryB.getID(),
210
206
  ]);
211
- expect((_a = categoriesCachedBefore.get(categoryA.getID())) === null || _a === void 0 ? void 0 : _a.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
212
- expect((_b = categoriesCachedBefore.get(categoryB.getID())) === null || _b === void 0 ? void 0 : _b.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
207
+ expect(categoriesCachedBefore.get(categoryA.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
208
+ expect(categoriesCachedBefore.get(categoryB.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.HIT);
213
209
  await CategoryEntity.enforceDeleteAsync(categoryA);
214
210
  const categoriesCachedAfter = await categoryCacheAdapter.loadManyAsync('parent_category_id', [
215
211
  categoryA.getID(),
216
212
  categoryB.getID(),
217
213
  ]);
218
- expect((_c = categoriesCachedAfter.get(categoryA.getID())) === null || _c === void 0 ? void 0 : _c.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
219
- expect((_d = categoriesCachedAfter.get(categoryB.getID())) === null || _d === void 0 ? void 0 : _d.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
214
+ expect(categoriesCachedAfter.get(categoryA.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
215
+ expect(categoriesCachedAfter.get(categoryB.getID())?.status).toEqual(ReadThroughEntityCache_1.CacheStatus.MISS);
220
216
  });
221
217
  });
222
218
  //# sourceMappingURL=EntitySelfReferentialEdges-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntitySelfReferentialEdges-test.js","sourceRoot":"","sources":["../../src/__tests__/EntitySelfReferentialEdges-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntitySelfReferentialEdges-test.js","sourceRoot":"","sources":["../../src/__tests__/EntitySelfReferentialEdges-test.ts"],"names":[],"mappings":";;;;;AAAA,uDAA+B;AAE/B,iFAAyD;AACzD,oEAAsE;AACtE,kDAA4C;AAC5C,iFAAyD;AACzD,+EAAiE;AACjE,yGAAiF;AACjF,0FAAkE;AAElE,kHAA+G;AAO/G,MAAM,qBAAsB,SAAQ,6BAMnC;IAND;;QAO8B,cAAS,GAAG;YACtC,IAAI,sCAA4B,EAAuD;SACxF,CAAC;QAC0B,gBAAW,GAAG;YACxC,IAAI,sCAA4B,EAAuD;SACxF,CAAC;QAC0B,gBAAW,GAAG;YACxC,IAAI,sCAA4B,EAAuD;SACxF,CAAC;QAC0B,gBAAW,GAAG;YACxC,IAAI,sCAA4B,EAAuD;SACxF,CAAC;IACJ,CAAC;CAAA;AAED,4EAA4E;AAC5E,MAAM,eAAe,GAAG,CAAC,oBAAgD,EAAE,EAAE;IAC3E,MAAM,cAAe,SAAQ,gBAAiD;QAC5E,MAAM,CAAC,yBAAyB;YAO9B,OAAO;gBACL,WAAW,EAAE,cAAc;gBAC3B,mBAAmB,EAAE,2BAA2B;gBAChD,kBAAkB,EAAE,qBAAqB;aAC1C,CAAC;QACJ,CAAC;KACF;IAED,MAAM,2BAA2B,GAAG,IAAI,6BAAmB,CAAiB;QAC1E,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,YAAY;QACvB,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,MAAM,EAAE;YACN,EAAE,EAAE,IAAI,wBAAS,CAAC;gBAChB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;aACZ,CAAC;YACF,kBAAkB,EAAE,IAAI,wBAAS,CAAC;gBAChC,UAAU,EAAE,oBAAoB;gBAChC,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE;oBACX,qBAAqB,EAAE,cAAc;oBACrC,oBAAoB;iBACrB;aACF,CAAC;SACH;QACD,qBAAqB,EAAE,UAAU;QACjC,kBAAkB,EAAE,OAAO;KAC5B,CAAC,CAAC;IAEH,OAAO;QACL,cAAc;KACf,CAAC;AACJ,CAAC,CAAC;AAEF,QAAQ,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACzD,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QACvB,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CAAC,kDAA0B,CAAC,cAAc,CAAC,CAAC;QACtF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACxF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC5D,QAAQ,CAAC,oBAAoB,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;aACtD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC/D,QAAQ,CAAC,oBAAoB,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC;aACnD,kBAAkB,EAAE,CAAC;QAExB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAC5F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE1B,MAAM,cAAc,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAExD,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAC5F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CAAC,kDAA0B,CAAC,cAAc,CAAC,CAAC;QAEtF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC1D,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;aACpC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QAExB,MAAM,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAC1F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAC1F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACzB,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CAAC,kDAA0B,CAAC,QAAQ,CAAC,CAAC;QAEhF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACxF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC5D,QAAQ,CAAC,oBAAoB,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;aACtD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC/D,QAAQ,CAAC,oBAAoB,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC;aACnD,kBAAkB,EAAE,CAAC;QAExB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAC5F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE1B,MAAM,cAAc,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAExD,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAEtB,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACjE,SAAS,EAAE;aACX,aAAa,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;QACtC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEpE,MAAM,oBAAoB,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACpE,SAAS,EAAE;aACX,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QACzC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CAAC,kDAA0B,CAAC,QAAQ,CAAC,CAAC;QAEhF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC1D,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;aACpC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QAExB,MAAM,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aAC/D,SAAS,EAAE;aACX,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,4DAA4D,EAAE,GAAG,EAAE;IAC1E,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CACxC,kDAA0B,CAAC,oCAAoC,CAChE,CAAC;QAEF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACxF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC5D,QAAQ,CAAC,oBAAoB,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;aACtD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC/D,QAAQ,CAAC,oBAAoB,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC;aACnD,kBAAkB,EAAE,CAAC;QAExB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACjC,SAAS,EAAE;aACX,wBAAwB,CAAC,oBAAoB,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAC1E,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACjC,SAAS,EAAE;aACX,wBAAwB,CAAC,oBAAoB,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CACvE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE1B,MAAM,oBAAoB,GAAG,aAAa,CAAC,sCAAsC,CAC/E,cAAc,CACf,CAAC,iBAAiB,CAAC,CAAC,sBAAsB,CAAC,CAC1C,cAAc,CACsC,CAAC;QACvD,MAAM,uBAAuB,GAAG,MAAM,oBAAoB,CAAC,aAAa,CAAC,oBAAoB,EAAE;YAC7F,cAAc,CAAC,KAAK,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,GAAG,CAAC,CAAC;QAE7F,MAAM,0BAA0B,GAAG,MAAM,oBAAoB,CAAC,aAAa,CACzE,oBAAoB,EACpB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CACtB,CAAC;QACF,MAAM,CAAC,0BAA0B,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,GAAG,CAAC,CAAC;QAE7F,MAAM,cAAc,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAExD,MAAM,sBAAsB,GAAG,MAAM,oBAAoB,CAAC,aAAa,CAAC,oBAAoB,EAAE;YAC5F,cAAc,CAAC,KAAK,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,IAAI,CAAC,CAAC;QAE7F,MAAM,yBAAyB,GAAG,MAAM,oBAAoB,CAAC,aAAa,CACxE,oBAAoB,EACpB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CACtB,CAAC;QACF,MAAM,CAAC,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,IAAI,CAAC,CAAC;QAE7F,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAC5F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAC/F,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,EAAE,cAAc,EAAE,GAAG,eAAe,CACxC,kDAA0B,CAAC,oCAAoC,CAChE,CAAC;QAEF,MAAM,iBAAiB,GAAG,IAAA,6EAAqC,GAAE,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,2BAAiB,CAAC,iBAAiB,CAAC,CAAC;QAE/D,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC;aAC1D,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QACxB,MAAM,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;aACpC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;aACjD,kBAAkB,EAAE,CAAC;QAExB,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACjC,SAAS,EAAE;aACX,wBAAwB,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CACrE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,CACV,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;aACjC,SAAS,EAAE;aACX,wBAAwB,CAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CACrE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE1B,MAAM,oBAAoB,GAAG,aAAa,CAAC,sCAAsC,CAC/E,cAAc,CACf,CAAC,iBAAiB,CAAC,CAAC,sBAAsB,CAAC,CAC1C,cAAc,CACsC,CAAC;QACvD,MAAM,sBAAsB,GAAG,MAAM,oBAAoB,CAAC,aAAa,CAAC,oBAAoB,EAAE;YAC5F,SAAS,CAAC,KAAK,EAAE;YACjB,SAAS,CAAC,KAAK,EAAE;SAClB,CAAC,CAAC;QACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,GAAG,CAAC,CAAC;QACvF,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,GAAG,CAAC,CAAC;QAEvF,MAAM,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,qBAAqB,GAAG,MAAM,oBAAoB,CAAC,aAAa,CAAC,oBAAoB,EAAE;YAC3F,SAAS,CAAC,KAAK,EAAE;YACjB,SAAS,CAAC,KAAK,EAAE;SAClB,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,IAAI,CAAC,CAAC;QACvF,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,oCAAW,CAAC,IAAI,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ts_mockito_1 = require("ts-mockito");
7
+ const GenericEntityCacheAdapter_1 = __importDefault(require("../GenericEntityCacheAdapter"));
8
+ const ReadThroughEntityCache_1 = require("../internal/ReadThroughEntityCache");
9
+ describe(GenericEntityCacheAdapter_1.default, () => {
10
+ describe('loadManyAsync', () => {
11
+ it('returns appropriate cache results', async () => {
12
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
13
+ (0, ts_mockito_1.when)(mockGenericCacher.makeCacheKey('id', (0, ts_mockito_1.anyString)())).thenCall((fieldName, fieldValue) => {
14
+ return `${fieldName}.${fieldValue}`;
15
+ });
16
+ (0, ts_mockito_1.when)(mockGenericCacher.loadManyAsync((0, ts_mockito_1.deepEqual)(['id.wat', 'id.who', 'id.why']))).thenResolve(new Map([
17
+ ['id.wat', { status: ReadThroughEntityCache_1.CacheStatus.HIT, item: { id: 'wat' } }],
18
+ ['id.who', { status: ReadThroughEntityCache_1.CacheStatus.NEGATIVE }],
19
+ ['id.why', { status: ReadThroughEntityCache_1.CacheStatus.MISS }],
20
+ ]));
21
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
22
+ const results = await cacheAdapter.loadManyAsync('id', ['wat', 'who', 'why']);
23
+ expect(results.get('wat')).toMatchObject({ status: ReadThroughEntityCache_1.CacheStatus.HIT, item: { id: 'wat' } });
24
+ expect(results.get('who')).toMatchObject({ status: ReadThroughEntityCache_1.CacheStatus.NEGATIVE });
25
+ expect(results.get('why')).toMatchObject({ status: ReadThroughEntityCache_1.CacheStatus.MISS });
26
+ expect(results.size).toBe(3);
27
+ (0, ts_mockito_1.verify)(mockGenericCacher.loadManyAsync((0, ts_mockito_1.anything)())).once();
28
+ });
29
+ it('returns empty map when passed empty array of fieldValues', async () => {
30
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
31
+ (0, ts_mockito_1.when)(mockGenericCacher.loadManyAsync((0, ts_mockito_1.deepEqual)([]))).thenResolve(new Map([]));
32
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
33
+ const results = await cacheAdapter.loadManyAsync('id', []);
34
+ expect(results).toEqual(new Map());
35
+ });
36
+ });
37
+ describe('cacheManyAsync', () => {
38
+ it('correctly caches all objects', async () => {
39
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
40
+ (0, ts_mockito_1.when)(mockGenericCacher.makeCacheKey('id', (0, ts_mockito_1.anyString)())).thenCall((fieldName, fieldValue) => {
41
+ return `${fieldName}.${fieldValue}`;
42
+ });
43
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
44
+ await cacheAdapter.cacheManyAsync('id', new Map([['wat', { id: 'wat' }]]));
45
+ (0, ts_mockito_1.verify)(mockGenericCacher.cacheManyAsync((0, ts_mockito_1.deepEqual)(new Map([['id.wat', { id: 'wat' }]])))).once();
46
+ });
47
+ });
48
+ describe('cacheDBMissesAsync', () => {
49
+ it('correctly caches misses', async () => {
50
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
51
+ (0, ts_mockito_1.when)(mockGenericCacher.makeCacheKey('id', (0, ts_mockito_1.anyString)())).thenCall((fieldName, fieldValue) => {
52
+ return `${fieldName}.${fieldValue}`;
53
+ });
54
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
55
+ await cacheAdapter.cacheDBMissesAsync('id', ['wat']);
56
+ (0, ts_mockito_1.verify)(mockGenericCacher.cacheDBMissesAsync((0, ts_mockito_1.deepEqual)(['id.wat']))).once();
57
+ });
58
+ });
59
+ describe('invalidateManyAsync', () => {
60
+ it('invalidates correctly', async () => {
61
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
62
+ (0, ts_mockito_1.when)(mockGenericCacher.makeCacheKey('id', (0, ts_mockito_1.anyString)())).thenCall((fieldName, fieldValue) => {
63
+ return `${fieldName}.${fieldValue}`;
64
+ });
65
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
66
+ await cacheAdapter.invalidateManyAsync('id', ['wat']);
67
+ (0, ts_mockito_1.verify)(mockGenericCacher.invalidateManyAsync((0, ts_mockito_1.deepEqual)(['id.wat']))).once();
68
+ });
69
+ it('returns when passed empty array of fieldValues', async () => {
70
+ const mockGenericCacher = (0, ts_mockito_1.mock)();
71
+ (0, ts_mockito_1.when)(mockGenericCacher.makeCacheKey('id', (0, ts_mockito_1.anyString)())).thenCall((fieldName, fieldValue) => {
72
+ return `${fieldName}.${fieldValue}`;
73
+ });
74
+ const cacheAdapter = new GenericEntityCacheAdapter_1.default((0, ts_mockito_1.instance)(mockGenericCacher));
75
+ await cacheAdapter.invalidateManyAsync('id', []);
76
+ (0, ts_mockito_1.verify)(mockGenericCacher.invalidateManyAsync((0, ts_mockito_1.deepEqual)([]))).once();
77
+ });
78
+ });
79
+ });
80
+ //# sourceMappingURL=GenericEntityCacheAdapter-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericEntityCacheAdapter-test.js","sourceRoot":"","sources":["../../src/__tests__/GenericEntityCacheAdapter-test.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,12 @@ describe(ReadonlyEntity_1.default, () => {
18
18
  const data = {
19
19
  id: 'what',
20
20
  };
21
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
21
+ const testEntity = new SimpleTestEntity_1.default({
22
+ viewerContext,
23
+ id: 'what',
24
+ databaseFields: data,
25
+ selectedFields: data,
26
+ });
22
27
  expect(testEntity.getID()).toEqual('what');
23
28
  });
24
29
  });
@@ -28,18 +33,37 @@ describe(ReadonlyEntity_1.default, () => {
28
33
  const data = {
29
34
  id: 'what',
30
35
  };
31
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
36
+ const testEntity = new SimpleTestEntity_1.default({
37
+ viewerContext,
38
+ id: 'what',
39
+ databaseFields: data,
40
+ selectedFields: data,
41
+ });
32
42
  expect(testEntity.toString()).toEqual('SimpleTestEntity[what]');
33
43
  });
34
44
  });
35
45
  describe('getUniqueIdentifier', () => {
36
46
  it('returns a different value for two different entities of the same type', () => {
37
47
  const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
38
- const testEntity = new SimpleTestEntity_1.default(viewerContext, {
48
+ const testEntity = new SimpleTestEntity_1.default({
49
+ viewerContext,
39
50
  id: '1',
51
+ databaseFields: {
52
+ id: '1',
53
+ },
54
+ selectedFields: {
55
+ id: '1',
56
+ },
40
57
  });
41
- const testEntity2 = new SimpleTestEntity_1.default(viewerContext, {
58
+ const testEntity2 = new SimpleTestEntity_1.default({
59
+ viewerContext,
42
60
  id: '2',
61
+ databaseFields: {
62
+ id: '2',
63
+ },
64
+ selectedFields: {
65
+ id: '2',
66
+ },
43
67
  });
44
68
  expect(testEntity.getUniqueIdentifier()).not.toEqual(testEntity2.getUniqueIdentifier());
45
69
  });
@@ -47,21 +71,42 @@ describe(ReadonlyEntity_1.default, () => {
47
71
  const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
48
72
  const viewerContext2 = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
49
73
  const data = { id: '1' };
50
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
51
- const testEntity2 = new SimpleTestEntity_1.default(viewerContext2, data);
74
+ const testEntity = new SimpleTestEntity_1.default({
75
+ viewerContext,
76
+ id: '1',
77
+ databaseFields: data,
78
+ selectedFields: data,
79
+ });
80
+ const testEntity2 = new SimpleTestEntity_1.default({
81
+ viewerContext: viewerContext2,
82
+ id: '1',
83
+ databaseFields: data,
84
+ selectedFields: data,
85
+ });
52
86
  expect(testEntity.getUniqueIdentifier()).toEqual(testEntity2.getUniqueIdentifier());
53
87
  });
54
88
  it('returns a different value for different entities even if same ID', () => {
55
89
  const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
56
90
  const data = { id: '1' };
57
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
58
- const testEntity2 = new TestEntity_1.default(viewerContext, {
91
+ const testEntity = new SimpleTestEntity_1.default({
92
+ viewerContext,
93
+ id: 'what',
94
+ databaseFields: data,
95
+ selectedFields: data,
96
+ });
97
+ const data2 = {
59
98
  customIdField: '1',
60
99
  testIndexedField: '2',
61
100
  stringField: '3',
62
101
  intField: 4,
63
102
  dateField: new Date(),
64
103
  nullableField: null,
104
+ };
105
+ const testEntity2 = new TestEntity_1.default({
106
+ viewerContext,
107
+ id: '1',
108
+ databaseFields: data2,
109
+ selectedFields: data2,
65
110
  });
66
111
  expect(testEntity.getUniqueIdentifier()).not.toEqual(testEntity2.getUniqueIdentifier());
67
112
  });
@@ -70,15 +115,26 @@ describe(ReadonlyEntity_1.default, () => {
70
115
  const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
71
116
  const dataWithoutID = {};
72
117
  expect(() => {
73
- new SimpleTestEntity_1.default(viewerContext, dataWithoutID); // eslint-disable-line no-new
118
+ // eslint-disable-next-line no-new
119
+ new SimpleTestEntity_1.default({
120
+ viewerContext,
121
+ id: undefined,
122
+ databaseFields: dataWithoutID,
123
+ selectedFields: dataWithoutID,
124
+ });
74
125
  }).toThrow();
75
126
  });
76
- it('returns correct viewerContext from instantiation', () => {
127
+ it('returns correct viewerCo}ntext from instantiation', () => {
77
128
  const viewerContext = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
78
129
  const data = {
79
130
  id: 'what',
80
131
  };
81
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
132
+ const testEntity = new SimpleTestEntity_1.default({
133
+ viewerContext,
134
+ id: 'what',
135
+ databaseFields: data,
136
+ selectedFields: data,
137
+ });
82
138
  expect(testEntity.getViewerContext()).toBe(viewerContext);
83
139
  });
84
140
  it('returns correct data for field getters', () => {
@@ -86,7 +142,12 @@ describe(ReadonlyEntity_1.default, () => {
86
142
  const data = {
87
143
  id: 'what',
88
144
  };
89
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
145
+ const testEntity = new SimpleTestEntity_1.default({
146
+ viewerContext,
147
+ id: 'what',
148
+ databaseFields: data,
149
+ selectedFields: data,
150
+ });
90
151
  expect(testEntity.getField('id')).toEqual('what');
91
152
  expect(testEntity.getAllFields()).toEqual(data);
92
153
  });
@@ -97,7 +158,12 @@ describe(ReadonlyEntity_1.default, () => {
97
158
  const data = {
98
159
  id: 'what',
99
160
  };
100
- const testEntity = new SimpleTestEntity_1.default(viewerContext, data);
161
+ const testEntity = new SimpleTestEntity_1.default({
162
+ viewerContext,
163
+ id: 'what',
164
+ databaseFields: data,
165
+ selectedFields: data,
166
+ });
101
167
  expect(testEntity.associationLoader()).toBeInstanceOf(EntityAssociationLoader_1.default);
102
168
  });
103
169
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ReadonlyEntity-test.js","sourceRoot":"","sources":["../../src/__tests__/ReadonlyEntity-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReadonlyEntity-test.js","sourceRoot":"","sources":["../../src/__tests__/ReadonlyEntity-test.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,4 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
@@ -31,13 +8,13 @@ const EntityCompanionProvider_1 = __importDefault(require("../EntityCompanionPro
31
8
  const ViewerContext_1 = __importDefault(require("../ViewerContext"));
32
9
  const ViewerScopedEntityCompanion_1 = __importDefault(require("../ViewerScopedEntityCompanion"));
33
10
  const ViewerScopedEntityCompanionProvider_1 = __importDefault(require("../ViewerScopedEntityCompanionProvider"));
34
- const TestEntity_1 = __importStar(require("../testfixtures/TestEntity"));
11
+ const TestEntity_1 = __importDefault(require("../testfixtures/TestEntity"));
35
12
  describe(ViewerScopedEntityCompanionProvider_1.default, () => {
36
13
  it('returns viewer scoped entity companion', () => {
37
14
  const vc = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(ViewerContext_1.default));
38
15
  const entityCompanionProvider = (0, ts_mockito_1.instance)((0, ts_mockito_1.mock)(EntityCompanionProvider_1.default));
39
16
  const viewerScopedEntityCompanionProvider = new ViewerScopedEntityCompanionProvider_1.default(entityCompanionProvider, vc);
40
- expect(viewerScopedEntityCompanionProvider.getViewerScopedCompanionForEntity(TestEntity_1.default, TestEntity_1.testEntityCompanion)).toBeInstanceOf(ViewerScopedEntityCompanion_1.default);
17
+ expect(viewerScopedEntityCompanionProvider.getViewerScopedCompanionForEntity(TestEntity_1.default)).toBeInstanceOf(ViewerScopedEntityCompanion_1.default);
41
18
  });
42
19
  });
43
20
  //# sourceMappingURL=ViewerScopedEntityCompanionProvider-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewerScopedEntityCompanionProvider-test.js","sourceRoot":"","sources":["../../src/__tests__/ViewerScopedEntityCompanionProvider-test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,yFAAiE;AACjE,qEAA6C;AAC7C,iGAAyE;AACzE,iHAAyF;AACzF,yEAA6E;AAE7E,QAAQ,CAAC,6CAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,EAAE,GAAG,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,uBAAa,CAAC,CAAC,CAAC;QACzC,MAAM,uBAAuB,GAAG,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,iCAAuB,CAAC,CAAC,CAAC;QACxE,MAAM,mCAAmC,GAAG,IAAI,6CAAmC,CACjF,uBAAuB,EACvB,EAAE,CACH,CAAC;QACF,MAAM,CACJ,mCAAmC,CAAC,iCAAiC,CACnE,oBAAU,EACV,gCAAmB,CACpB,CACF,CAAC,cAAc,CAAC,qCAA2B,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ViewerScopedEntityCompanionProvider-test.js","sourceRoot":"","sources":["../../src/__tests__/ViewerScopedEntityCompanionProvider-test.ts"],"names":[],"mappings":";;;;;AAAA,2CAA4C;AAE5C,yFAAiE;AACjE,qEAA6C;AAC7C,iGAAyE;AACzE,iHAAyF;AACzF,4EAAoD;AAEpD,QAAQ,CAAC,6CAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,EAAE,GAAG,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,uBAAa,CAAC,CAAC,CAAC;QACzC,MAAM,uBAAuB,GAAG,IAAA,qBAAQ,EAAC,IAAA,iBAAI,EAAC,iCAAuB,CAAC,CAAC,CAAC;QACxE,MAAM,mCAAmC,GAAG,IAAI,6CAAmC,CACjF,uBAAuB,EACvB,EAAE,CACH,CAAC;QACF,MAAM,CACJ,mCAAmC,CAAC,iCAAiC,CAAC,oBAAU,CAAC,CAClF,CAAC,cAAc,CAAC,qCAA2B,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Entity_1 = __importDefault(require("../../Entity"));
7
- const EntityCompanionProvider_1 = require("../../EntityCompanionProvider");
8
7
  const EntityConfiguration_1 = __importDefault(require("../../EntityConfiguration"));
9
8
  const EntityFields_1 = require("../../EntityFields");
10
9
  const EntityPrivacyPolicy_1 = __importDefault(require("../../EntityPrivacyPolicy"));
@@ -92,37 +91,35 @@ class TestEntityPrivacyPolicy extends EntityPrivacyPolicy_1.default {
92
91
  }
93
92
  }
94
93
  class OneTestEntity extends Entity_1.default {
95
- constructor(viewerContext, rawFields) {
96
- if (rawFields.entity_type !== EntityType.ONE) {
94
+ constructor(constructorParams) {
95
+ if (constructorParams.selectedFields.entity_type !== EntityType.ONE) {
97
96
  throw new Error('OneTestEntity must be instantiated with one data');
98
97
  }
99
- super(viewerContext, rawFields);
98
+ super(constructorParams);
100
99
  }
101
- static getCompanionDefinition() {
102
- return oneTestEntityCompanion;
100
+ static defineCompanionDefinition() {
101
+ return {
102
+ entityClass: OneTestEntity,
103
+ entityConfiguration: testEntityConfiguration,
104
+ privacyPolicyClass: TestEntityPrivacyPolicy,
105
+ entitySelectedFields: ['id', 'entity_type', 'common_other_field'],
106
+ };
103
107
  }
104
108
  }
105
109
  class TwoTestEntity extends Entity_1.default {
106
- constructor(viewerContext, rawFields) {
107
- if (rawFields.entity_type !== EntityType.TWO) {
110
+ constructor(constructorParams) {
111
+ if (constructorParams.selectedFields.entity_type !== EntityType.TWO) {
108
112
  throw new Error('TwoTestEntity must be instantiated with two data');
109
113
  }
110
- super(viewerContext, rawFields);
114
+ super(constructorParams);
111
115
  }
112
- static getCompanionDefinition() {
113
- return twoTestEntityCompanion;
116
+ static defineCompanionDefinition() {
117
+ return {
118
+ entityClass: TwoTestEntity,
119
+ entityConfiguration: testEntityConfiguration,
120
+ privacyPolicyClass: TestEntityPrivacyPolicy,
121
+ entitySelectedFields: ['id', 'other_field', 'common_other_field', 'entity_type'],
122
+ };
114
123
  }
115
124
  }
116
- const oneTestEntityCompanion = new EntityCompanionProvider_1.EntityCompanionDefinition({
117
- entityClass: OneTestEntity,
118
- entityConfiguration: testEntityConfiguration,
119
- privacyPolicyClass: TestEntityPrivacyPolicy,
120
- entitySelectedFields: ['id', 'entity_type', 'common_other_field'],
121
- });
122
- const twoTestEntityCompanion = new EntityCompanionProvider_1.EntityCompanionDefinition({
123
- entityClass: TwoTestEntity,
124
- entityConfiguration: testEntityConfiguration,
125
- privacyPolicyClass: TestEntityPrivacyPolicy,
126
- entitySelectedFields: ['id', 'other_field', 'common_other_field', 'entity_type'],
127
- });
128
125
  //# sourceMappingURL=TwoEntitySameTableDisjointRows-test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TwoEntitySameTableDisjointRows-test.js","sourceRoot":"","sources":["../../../src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TwoEntitySameTableDisjointRows-test.js","sourceRoot":"","sources":["../../../src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts"],"names":[],"mappings":"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"}