@esri/hub-common 14.74.1 → 14.75.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 (214) hide show
  1. package/dist/esm/associations/addAssociation.js +3 -0
  2. package/dist/esm/associations/addAssociation.js.map +1 -1
  3. package/dist/esm/associations/breakAssociation.js +54 -0
  4. package/dist/esm/associations/breakAssociation.js.map +1 -0
  5. package/dist/esm/associations/getAssociatedEntitiesQuery.js +33 -0
  6. package/dist/esm/associations/getAssociatedEntitiesQuery.js.map +1 -0
  7. package/dist/esm/associations/getAssociationStats.js +49 -0
  8. package/dist/esm/associations/getAssociationStats.js.map +1 -0
  9. package/dist/esm/associations/getAvailableToRequestEntitiesQuery.js +65 -0
  10. package/dist/esm/associations/getAvailableToRequestEntitiesQuery.js.map +1 -0
  11. package/dist/esm/associations/getPendingEntitiesQuery.js +41 -0
  12. package/dist/esm/associations/getPendingEntitiesQuery.js.map +1 -0
  13. package/dist/esm/associations/getRequestingEntitiesQuery.js +41 -0
  14. package/dist/esm/associations/getRequestingEntitiesQuery.js.map +1 -0
  15. package/dist/esm/associations/getWellKnownAssociationsCatalog.js +72 -0
  16. package/dist/esm/associations/getWellKnownAssociationsCatalog.js.map +1 -0
  17. package/dist/esm/associations/index.js +12 -0
  18. package/dist/esm/associations/index.js.map +1 -1
  19. package/dist/esm/associations/internal/getAssociationHierarchy.js +33 -0
  20. package/dist/esm/associations/internal/getAssociationHierarchy.js.map +1 -0
  21. package/dist/esm/associations/internal/getIdsFromAssociationGroups.js +25 -0
  22. package/dist/esm/associations/internal/getIdsFromAssociationGroups.js.map +1 -0
  23. package/dist/esm/associations/internal/getIdsFromKeywords.js +22 -0
  24. package/dist/esm/associations/internal/getIdsFromKeywords.js.map +1 -0
  25. package/dist/esm/associations/internal/getIncludesAndReferencesQuery.js +58 -0
  26. package/dist/esm/associations/internal/getIncludesAndReferencesQuery.js.map +1 -0
  27. package/dist/esm/associations/internal/getIncludesDoesNotReferenceQuery.js +58 -0
  28. package/dist/esm/associations/internal/getIncludesDoesNotReferenceQuery.js.map +1 -0
  29. package/dist/esm/associations/internal/getReferencesDoesNotIncludeQuery.js +62 -0
  30. package/dist/esm/associations/internal/getReferencesDoesNotIncludeQuery.js.map +1 -0
  31. package/dist/esm/associations/internal/getTypeByIdsQuery.js +13 -15
  32. package/dist/esm/associations/internal/getTypeByIdsQuery.js.map +1 -1
  33. package/dist/esm/associations/internal/getTypeByNotIdsQuery.js +26 -0
  34. package/dist/esm/associations/internal/getTypeByNotIdsQuery.js.map +1 -0
  35. package/dist/esm/associations/internal/getTypeWithKeywordQuery.js +11 -6
  36. package/dist/esm/associations/internal/getTypeWithKeywordQuery.js.map +1 -1
  37. package/dist/esm/associations/internal/getTypeWithoutKeywordQuery.js +10 -5
  38. package/dist/esm/associations/internal/getTypeWithoutKeywordQuery.js.map +1 -1
  39. package/dist/esm/associations/internal/isAssociationSupported.js +29 -0
  40. package/dist/esm/associations/internal/isAssociationSupported.js.map +1 -0
  41. package/dist/esm/associations/internal/removeAssociationKeyword.js +16 -0
  42. package/dist/esm/associations/internal/removeAssociationKeyword.js.map +1 -0
  43. package/dist/esm/associations/internal/setAssociationKeyword.js +18 -0
  44. package/dist/esm/associations/internal/setAssociationKeyword.js.map +1 -0
  45. package/dist/esm/associations/listAssociations.js +4 -0
  46. package/dist/esm/associations/listAssociations.js.map +1 -1
  47. package/dist/esm/associations/removeAssociation.js +3 -0
  48. package/dist/esm/associations/removeAssociation.js.map +1 -1
  49. package/dist/esm/associations/requestAssociation.js +57 -0
  50. package/dist/esm/associations/requestAssociation.js.map +1 -0
  51. package/dist/esm/associations/types.js +0 -1
  52. package/dist/esm/associations/types.js.map +1 -1
  53. package/dist/esm/core/HubItemEntity.js +33 -10
  54. package/dist/esm/core/HubItemEntity.js.map +1 -1
  55. package/dist/esm/core/_internal/getBasePropertyMap.js +1 -1
  56. package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
  57. package/dist/esm/core/getTypesFromEntityType.js +39 -0
  58. package/dist/esm/core/getTypesFromEntityType.js.map +1 -0
  59. package/dist/esm/core/index.js +1 -0
  60. package/dist/esm/core/index.js.map +1 -1
  61. package/dist/esm/core/processActionLinks.js +1 -1
  62. package/dist/esm/core/processActionLinks.js.map +1 -1
  63. package/dist/esm/core/updateHubEntity.js +4 -0
  64. package/dist/esm/core/updateHubEntity.js.map +1 -1
  65. package/dist/esm/initiatives/HubInitiatives.js +15 -42
  66. package/dist/esm/initiatives/HubInitiatives.js.map +1 -1
  67. package/dist/esm/initiatives/_internal/InitiativeAssociationHierarchies.js +5 -0
  68. package/dist/esm/initiatives/_internal/InitiativeAssociationHierarchies.js.map +1 -0
  69. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js +29 -0
  70. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  71. package/dist/esm/projects/_internal/ProjectAssociationHierarchies.js +5 -0
  72. package/dist/esm/projects/_internal/ProjectAssociationHierarchies.js.map +1 -0
  73. package/dist/esm/projects/_internal/ProjectBusinessRules.js +6 -0
  74. package/dist/esm/projects/_internal/ProjectBusinessRules.js.map +1 -1
  75. package/dist/esm/projects/_internal/computeProps.js +4 -2
  76. package/dist/esm/projects/_internal/computeProps.js.map +1 -1
  77. package/dist/esm/projects/fetch.js +3 -0
  78. package/dist/esm/projects/fetch.js.map +1 -1
  79. package/dist/esm/search/_internal/buildCatalog.js +25 -0
  80. package/dist/esm/search/_internal/buildCatalog.js.map +1 -0
  81. package/dist/esm/search/wellKnownCatalog.js +29 -43
  82. package/dist/esm/search/wellKnownCatalog.js.map +1 -1
  83. package/dist/node/associations/addAssociation.js +3 -0
  84. package/dist/node/associations/addAssociation.js.map +1 -1
  85. package/dist/node/associations/breakAssociation.js +57 -0
  86. package/dist/node/associations/breakAssociation.js.map +1 -0
  87. package/dist/node/associations/getAssociatedEntitiesQuery.js +36 -0
  88. package/dist/node/associations/getAssociatedEntitiesQuery.js.map +1 -0
  89. package/dist/node/associations/getAssociationStats.js +52 -0
  90. package/dist/node/associations/getAssociationStats.js.map +1 -0
  91. package/dist/node/associations/getAvailableToRequestEntitiesQuery.js +68 -0
  92. package/dist/node/associations/getAvailableToRequestEntitiesQuery.js.map +1 -0
  93. package/dist/node/associations/getPendingEntitiesQuery.js +44 -0
  94. package/dist/node/associations/getPendingEntitiesQuery.js.map +1 -0
  95. package/dist/node/associations/getRequestingEntitiesQuery.js +44 -0
  96. package/dist/node/associations/getRequestingEntitiesQuery.js.map +1 -0
  97. package/dist/node/associations/getWellKnownAssociationsCatalog.js +76 -0
  98. package/dist/node/associations/getWellKnownAssociationsCatalog.js.map +1 -0
  99. package/dist/node/associations/index.js +14 -0
  100. package/dist/node/associations/index.js.map +1 -1
  101. package/dist/node/associations/internal/getAssociationHierarchy.js +36 -0
  102. package/dist/node/associations/internal/getAssociationHierarchy.js.map +1 -0
  103. package/dist/node/associations/internal/getIdsFromAssociationGroups.js +28 -0
  104. package/dist/node/associations/internal/getIdsFromAssociationGroups.js.map +1 -0
  105. package/dist/node/associations/internal/getIdsFromKeywords.js +25 -0
  106. package/dist/node/associations/internal/getIdsFromKeywords.js.map +1 -0
  107. package/dist/node/associations/internal/getIncludesAndReferencesQuery.js +61 -0
  108. package/dist/node/associations/internal/getIncludesAndReferencesQuery.js.map +1 -0
  109. package/dist/node/associations/internal/getIncludesDoesNotReferenceQuery.js +61 -0
  110. package/dist/node/associations/internal/getIncludesDoesNotReferenceQuery.js.map +1 -0
  111. package/dist/node/associations/internal/getReferencesDoesNotIncludeQuery.js +65 -0
  112. package/dist/node/associations/internal/getReferencesDoesNotIncludeQuery.js.map +1 -0
  113. package/dist/node/associations/internal/getTypeByIdsQuery.js +13 -15
  114. package/dist/node/associations/internal/getTypeByIdsQuery.js.map +1 -1
  115. package/dist/node/associations/internal/getTypeByNotIdsQuery.js +30 -0
  116. package/dist/node/associations/internal/getTypeByNotIdsQuery.js.map +1 -0
  117. package/dist/node/associations/internal/getTypeWithKeywordQuery.js +11 -6
  118. package/dist/node/associations/internal/getTypeWithKeywordQuery.js.map +1 -1
  119. package/dist/node/associations/internal/getTypeWithoutKeywordQuery.js +10 -5
  120. package/dist/node/associations/internal/getTypeWithoutKeywordQuery.js.map +1 -1
  121. package/dist/node/associations/internal/isAssociationSupported.js +32 -0
  122. package/dist/node/associations/internal/isAssociationSupported.js.map +1 -0
  123. package/dist/node/associations/internal/removeAssociationKeyword.js +20 -0
  124. package/dist/node/associations/internal/removeAssociationKeyword.js.map +1 -0
  125. package/dist/node/associations/internal/setAssociationKeyword.js +22 -0
  126. package/dist/node/associations/internal/setAssociationKeyword.js.map +1 -0
  127. package/dist/node/associations/listAssociations.js +4 -0
  128. package/dist/node/associations/listAssociations.js.map +1 -1
  129. package/dist/node/associations/removeAssociation.js +3 -0
  130. package/dist/node/associations/removeAssociation.js.map +1 -1
  131. package/dist/node/associations/requestAssociation.js +60 -0
  132. package/dist/node/associations/requestAssociation.js.map +1 -0
  133. package/dist/node/associations/types.js +0 -1
  134. package/dist/node/associations/types.js.map +1 -1
  135. package/dist/node/core/HubItemEntity.js +33 -10
  136. package/dist/node/core/HubItemEntity.js.map +1 -1
  137. package/dist/node/core/_internal/getBasePropertyMap.js +1 -1
  138. package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
  139. package/dist/node/core/getTypesFromEntityType.js +42 -0
  140. package/dist/node/core/getTypesFromEntityType.js.map +1 -0
  141. package/dist/node/core/index.js +1 -0
  142. package/dist/node/core/index.js.map +1 -1
  143. package/dist/node/core/processActionLinks.js +2 -2
  144. package/dist/node/core/processActionLinks.js.map +1 -1
  145. package/dist/node/core/updateHubEntity.js +4 -0
  146. package/dist/node/core/updateHubEntity.js.map +1 -1
  147. package/dist/node/initiatives/HubInitiatives.js +15 -42
  148. package/dist/node/initiatives/HubInitiatives.js.map +1 -1
  149. package/dist/node/initiatives/_internal/InitiativeAssociationHierarchies.js +8 -0
  150. package/dist/node/initiatives/_internal/InitiativeAssociationHierarchies.js.map +1 -0
  151. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js +29 -0
  152. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  153. package/dist/node/projects/_internal/ProjectAssociationHierarchies.js +8 -0
  154. package/dist/node/projects/_internal/ProjectAssociationHierarchies.js.map +1 -0
  155. package/dist/node/projects/_internal/ProjectBusinessRules.js +6 -0
  156. package/dist/node/projects/_internal/ProjectBusinessRules.js.map +1 -1
  157. package/dist/node/projects/_internal/computeProps.js +4 -2
  158. package/dist/node/projects/_internal/computeProps.js.map +1 -1
  159. package/dist/node/projects/fetch.js +3 -0
  160. package/dist/node/projects/fetch.js.map +1 -1
  161. package/dist/node/search/_internal/buildCatalog.js +29 -0
  162. package/dist/node/search/_internal/buildCatalog.js.map +1 -0
  163. package/dist/node/search/wellKnownCatalog.js +29 -43
  164. package/dist/node/search/wellKnownCatalog.js.map +1 -1
  165. package/dist/types/associations/addAssociation.d.ts +3 -0
  166. package/dist/types/associations/breakAssociation.d.ts +20 -0
  167. package/dist/types/associations/getAssociatedEntitiesQuery.d.ts +21 -0
  168. package/dist/types/associations/getAssociationStats.d.ts +13 -0
  169. package/dist/types/associations/getAvailableToRequestEntitiesQuery.d.ts +21 -0
  170. package/dist/types/associations/getPendingEntitiesQuery.d.ts +26 -0
  171. package/dist/types/associations/getRequestingEntitiesQuery.d.ts +26 -0
  172. package/dist/types/associations/getWellKnownAssociationsCatalog.d.ts +34 -0
  173. package/dist/types/associations/index.d.ts +9 -0
  174. package/dist/types/associations/internal/getAssociationHierarchy.d.ts +15 -0
  175. package/dist/types/associations/internal/getIdsFromAssociationGroups.d.ts +15 -0
  176. package/dist/types/associations/internal/getIdsFromKeywords.d.ts +13 -0
  177. package/dist/types/associations/internal/getIncludesAndReferencesQuery.d.ts +14 -0
  178. package/dist/types/associations/internal/getIncludesDoesNotReferenceQuery.d.ts +14 -0
  179. package/dist/types/associations/internal/getReferencesDoesNotIncludeQuery.d.ts +14 -0
  180. package/dist/types/associations/internal/getTypeByIdsQuery.d.ts +8 -6
  181. package/dist/types/associations/internal/getTypeByNotIdsQuery.d.ts +12 -0
  182. package/dist/types/associations/internal/getTypeWithKeywordQuery.d.ts +8 -5
  183. package/dist/types/associations/internal/getTypeWithoutKeywordQuery.d.ts +8 -5
  184. package/dist/types/associations/internal/isAssociationSupported.d.ts +11 -0
  185. package/dist/types/associations/internal/removeAssociationKeyword.d.ts +12 -0
  186. package/dist/types/associations/internal/setAssociationKeyword.d.ts +12 -0
  187. package/dist/types/associations/listAssociations.d.ts +4 -0
  188. package/dist/types/associations/removeAssociation.d.ts +3 -0
  189. package/dist/types/associations/requestAssociation.d.ts +23 -0
  190. package/dist/types/associations/types.d.ts +53 -0
  191. package/dist/types/core/HubItemEntity.d.ts +10 -1
  192. package/dist/types/core/behaviors/IWIthAssociationBehavior.d.ts +9 -0
  193. package/dist/types/core/behaviors/IWithFeaturedImageBehavior.d.ts +2 -2
  194. package/dist/types/core/getTypesFromEntityType.d.ts +10 -0
  195. package/dist/types/core/index.d.ts +1 -0
  196. package/dist/types/core/traits/IWithAssociations.d.ts +13 -0
  197. package/dist/types/initiatives/HubInitiatives.d.ts +12 -0
  198. package/dist/types/initiatives/_internal/InitiativeAssociationHierarchies.d.ts +2 -0
  199. package/dist/types/initiatives/_internal/InitiativeBusinessRules.d.ts +1 -1
  200. package/dist/types/projects/_internal/ProjectAssociationHierarchies.d.ts +2 -0
  201. package/dist/types/projects/_internal/ProjectBusinessRules.d.ts +1 -1
  202. package/dist/types/projects/fetch.d.ts +3 -0
  203. package/dist/types/search/_internal/buildCatalog.d.ts +12 -0
  204. package/package.json +1 -1
  205. package/dist/esm/associations/internal/getTargetEntityFromAssociationType.js +0 -18
  206. package/dist/esm/associations/internal/getTargetEntityFromAssociationType.js.map +0 -1
  207. package/dist/esm/associations/internal/getTypeFromAssociationType.js +0 -18
  208. package/dist/esm/associations/internal/getTypeFromAssociationType.js.map +0 -1
  209. package/dist/node/associations/internal/getTargetEntityFromAssociationType.js +0 -22
  210. package/dist/node/associations/internal/getTargetEntityFromAssociationType.js.map +0 -1
  211. package/dist/node/associations/internal/getTypeFromAssociationType.js +0 -22
  212. package/dist/node/associations/internal/getTypeFromAssociationType.js.map +0 -1
  213. package/dist/types/associations/internal/getTargetEntityFromAssociationType.d.ts +0 -8
  214. package/dist/types/associations/internal/getTypeFromAssociationType.d.ts +0 -7
@@ -0,0 +1,58 @@
1
+ import { getItemGroups } from "@esri/arcgis-rest-portal";
2
+ import { getTypesFromEntityType } from "../../core/getTypesFromEntityType";
3
+ import { getProp } from "../../objects/get-prop";
4
+ import { combineQueries } from "../../search/_internal/combineQueries";
5
+ import { getTypeWithoutKeywordQuery } from "./getTypeWithoutKeywordQuery";
6
+ import { getTypeByIdsQuery } from "./getTypeByIdsQuery";
7
+ import { getTypeFromEntity } from "../../core/getTypeFromEntity";
8
+ import { getIdsFromKeywords } from "./getIdsFromKeywords";
9
+ import { getIdsFromAssociationGroups } from "./getIdsFromAssociationGroups";
10
+ /**
11
+ * builds a query that will return entities that are
12
+ * "included" but NOT "referenced"
13
+ *
14
+ * @param entity - Hub entity
15
+ * @param associationType - entity type to query for
16
+ * @param isParent - whether the provided Hub entity is the parent in the association relationship
17
+ * @param context - contextual auth and portal information
18
+ * @returns {IQuery}
19
+ */
20
+ export const getIncludesDoesNotReferenceQuery = async (entity, associationType, isParent, context) => {
21
+ if (isParent) {
22
+ /**
23
+ * 1. build query that returns child entities WITHOUT a
24
+ * typeKeyword reference to the parent
25
+ */
26
+ const parentType = getTypeFromEntity(entity);
27
+ const referencedQuery = getTypeWithoutKeywordQuery(getTypesFromEntityType(associationType), `ref|${parentType}|${entity.id}`);
28
+ /** 2. grab the parent entity's association query */
29
+ const includedQuery = getProp(entity, "associations.rules.query");
30
+ /** 3. combine queries - will remove null/undefined entries */
31
+ return combineQueries([referencedQuery, includedQuery]);
32
+ }
33
+ else {
34
+ /** 1. fetch the groups a child has been shared with */
35
+ const { admin, member, other } = await getItemGroups(entity.id, context.requestOptions);
36
+ const groupsChildIsSharedWith = [...admin, ...member, ...other];
37
+ /**
38
+ * 2. filter the child's groups down to association groups
39
+ * (by checking if they have a typeKeyword of the form
40
+ * <associationType>|<id>) and extract parent ids
41
+ */
42
+ const parentIdsThatIncludeChild = getIdsFromAssociationGroups(groupsChildIsSharedWith, associationType);
43
+ /**
44
+ * 3. iterate over the child's typeKeywords and grab the parent
45
+ * ids it references (typeKeyword = <associationType>|<id>)
46
+ */
47
+ const parentIdsChildReferences = getIdsFromKeywords(entity, associationType);
48
+ /**
49
+ * 4. filter the parent ids down to those that include the
50
+ * child, but that the child does NOT reference
51
+ */
52
+ const parentIds = parentIdsThatIncludeChild.filter((id) => !parentIdsChildReferences.includes(id));
53
+ /** 5. return a query for the filtered parent ids */
54
+ const type = getTypesFromEntityType(associationType);
55
+ return parentIds.length ? getTypeByIdsQuery(type, parentIds) : null;
56
+ }
57
+ };
58
+ //# sourceMappingURL=getIncludesDoesNotReferenceQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIncludesDoesNotReferenceQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getIncludesDoesNotReferenceQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,EACnD,MAAiB,EACjB,eAA8B,EAC9B,QAAiB,EACjB,OAAuB,EACN,EAAE;IACnB,IAAI,QAAQ,EAAE;QACZ;;;WAGG;QACH,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,0BAA0B,CAChD,sBAAsB,CAAC,eAAe,CAAC,EACvC,OAAO,UAAU,IAAI,MAAM,CAAC,EAAE,EAAE,CACjC,CAAC;QAEF,oDAAoD;QACpD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QAElE,8DAA8D;QAC9D,OAAO,cAAc,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;KACzD;SAAM;QACL,uDAAuD;QACvD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAClD,MAAM,CAAC,EAAE,EACT,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,MAAM,uBAAuB,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;QAEhE;;;;WAIG;QACH,MAAM,yBAAyB,GAAG,2BAA2B,CAC3D,uBAAuB,EACvB,eAAe,CAChB,CAAC;QAEF;;;WAGG;QACH,MAAM,wBAAwB,GAAG,kBAAkB,CACjD,MAAM,EACN,eAAe,CAChB,CAAC;QAEF;;;WAGG;QACH,MAAM,SAAS,GAAG,yBAAyB,CAAC,MAAM,CAChD,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC,CACvD,CAAC;QAEF,oDAAoD;QACpD,MAAM,IAAI,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;QACrD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;KACrE;AACH,CAAC,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { getItemGroups } from "@esri/arcgis-rest-portal";
2
+ import { getTypesFromEntityType } from "../../core/getTypesFromEntityType";
3
+ import { getProp } from "../../objects/get-prop";
4
+ import { combineQueries } from "../../search/_internal/combineQueries";
5
+ import { getTypeWithKeywordQuery } from "./getTypeWithKeywordQuery";
6
+ import { negateGroupPredicates } from "../../search/_internal/negateGroupPredicates";
7
+ import { getTypeByIdsQuery } from "./getTypeByIdsQuery";
8
+ import { getTypeFromEntity } from "../../core/getTypeFromEntity";
9
+ import { getIdsFromKeywords } from "./getIdsFromKeywords";
10
+ import { getIdsFromAssociationGroups } from "./getIdsFromAssociationGroups";
11
+ /**
12
+ * builds a query that will return entities that are
13
+ * "referenced" but NOT "included"
14
+ *
15
+ * @param entity - Hub entity
16
+ * @param associationType - entity type to query for
17
+ * @param isParent - whether the provided Hub entity is the parent in the association relationship
18
+ * @param context - contextual auth and portal information
19
+ * @returns {IQuery}
20
+ */
21
+ export const getReferencesDoesNotIncludeQuery = async (entity, associationType, isParent, context) => {
22
+ if (isParent) {
23
+ /**
24
+ * 1. build query that returns child entities WITH a
25
+ * typeKeyword reference to the parent
26
+ */
27
+ const parentType = getTypeFromEntity(entity);
28
+ const referencedQuery = getTypeWithKeywordQuery(getTypesFromEntityType(associationType), `ref|${parentType}|${entity.id}`);
29
+ /**
30
+ * 2. grab the parent's association query and negate
31
+ * the group predicate
32
+ */
33
+ const notIncludedQuery = negateGroupPredicates(getProp(entity, "associations.rules.query"));
34
+ /** 3. combine queries - will remove null/undefined entries */
35
+ return combineQueries([referencedQuery, notIncludedQuery]);
36
+ }
37
+ else {
38
+ /** 1. fetch the groups a child has been shared with */
39
+ const { admin, member, other } = await getItemGroups(entity.id, context.requestOptions);
40
+ const groupsChildIsSharedWith = [...admin, ...member, ...other];
41
+ /**
42
+ * 2. filter the child's groups down to association groups
43
+ * (by checking if they have a typeKeyword of the form
44
+ * <associationType>|<id>) and extract parent ids
45
+ */
46
+ const parentIdsThatIncludeChild = getIdsFromAssociationGroups(groupsChildIsSharedWith, associationType);
47
+ /**
48
+ * 3. iterate over the child's typeKeywords and grab the parent
49
+ * ids it references (typeKeyword = <associationType>|<id>)
50
+ */
51
+ const parentIdsChildReferences = getIdsFromKeywords(entity, associationType);
52
+ /**
53
+ * 4. filter the parent ids down to those that the child
54
+ * references but that the parent does NOT include
55
+ */
56
+ const parentIds = parentIdsChildReferences.filter((id) => !parentIdsThatIncludeChild.includes(id));
57
+ /** 5. return a query for the filtered parent ids */
58
+ const type = getTypesFromEntityType(associationType);
59
+ return parentIds.length ? getTypeByIdsQuery(type, parentIds) : null;
60
+ }
61
+ };
62
+ //# sourceMappingURL=getReferencesDoesNotIncludeQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReferencesDoesNotIncludeQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getReferencesDoesNotIncludeQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,EACnD,MAAiB,EACjB,eAA8B,EAC9B,QAAiB,EACjB,OAAuB,EACN,EAAE;IACnB,IAAI,QAAQ,EAAE;QACZ;;;WAGG;QACH,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,uBAAuB,CAC7C,sBAAsB,CAAC,eAAe,CAAC,EACvC,OAAO,UAAU,IAAI,MAAM,CAAC,EAAE,EAAE,CACjC,CAAC;QAEF;;;WAGG;QACH,MAAM,gBAAgB,GAAG,qBAAqB,CAC5C,OAAO,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAC5C,CAAC;QAEF,8DAA8D;QAC9D,OAAO,cAAc,CAAC,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;KAC5D;SAAM;QACL,uDAAuD;QACvD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAClD,MAAM,CAAC,EAAE,EACT,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,MAAM,uBAAuB,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;QAEhE;;;;WAIG;QACH,MAAM,yBAAyB,GAAG,2BAA2B,CAC3D,uBAAuB,EACvB,eAAe,CAChB,CAAC;QAEF;;;WAGG;QACH,MAAM,wBAAwB,GAAG,kBAAkB,CACjD,MAAM,EACN,eAAe,CAChB,CAAC;QAEF;;;WAGG;QACH,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,CAC/C,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC,CACxD,CAAC;QAEF,oDAAoD;QACpD,MAAM,IAAI,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;QACrD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;KACrE;AACH,CAAC,CAAC"}
@@ -1,26 +1,24 @@
1
1
  import { getEntityTypeFromType } from "../../search/_internal/getEntityTypeFromType";
2
2
  /**
3
- * Get a query that can be used in a Gallery, and will return the associated
4
- * entities, based on the AssociationType
3
+ * @private
4
+ * Construct an IQuery to fetch a specified set of item id(s)
5
+ * by type(s). Note: if an array of types is provided, they
6
+ * must be the same underlying target entity type.
5
7
  *
6
- * @param entity
7
- * @param type
8
- * @returns
8
+ * @param itemType - a single item type or an array of item types
9
+ * @param ids - an array of ids
10
+ * @returns {IQuery}
9
11
  */
10
12
  export function getTypeByIdsQuery(itemType, ids) {
11
- const targetEntity = getEntityTypeFromType(itemType);
13
+ const targetEntity = typeof itemType === "string"
14
+ ? getEntityTypeFromType(itemType)
15
+ : getEntityTypeFromType(itemType[0]);
12
16
  const qry = {
13
17
  targetEntity,
14
18
  filters: [
15
- {
16
- operation: "AND",
17
- predicates: [
18
- {
19
- type: itemType,
20
- id: [...ids],
21
- },
22
- ],
23
- },
19
+ Object.assign(Object.assign({}, (ids.length && { operation: "AND" })), { predicates: [
20
+ Object.assign({ type: itemType }, (ids.length && { id: ids })),
21
+ ] }),
24
22
  ],
25
23
  };
26
24
  return qry;
@@ -1 +1 @@
1
- {"version":3,"file":"getTypeByIdsQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeByIdsQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,GAAa;IAC/D,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAErD,MAAM,GAAG,GAAW;QAClB,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC;qBACb;iBACF;aACF;SACF;KACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"getTypeByIdsQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeByIdsQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAA2B,EAC3B,GAAa;IAEb,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,QAAQ;QAC1B,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,MAAM,GAAG,GAAW;QAClB,YAAY;QACZ,OAAO,EAAE;4CAEF,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,KACvC,UAAU,EAAE;oCAER,IAAI,EAAE,QAAQ,IACX,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;iBAEjC;SAEJ;KACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { getEntityTypeFromType } from "../../search/_internal/getEntityTypeFromType";
2
+ /**
3
+ * @private
4
+ * Construct an IQuery to fetch the inverse of a specified set
5
+ * of item id(s) by type(s). Note: if an array of types is provided,
6
+ * they must be the same underlying target entity type.
7
+ *
8
+ * @param itemType - a single item type or an array of item types
9
+ * @param ids - an array of ids
10
+ * @returns {IQuery}
11
+ */
12
+ export function getTypeByNotIdsQuery(itemType, ids) {
13
+ const targetEntity = typeof itemType === "string"
14
+ ? getEntityTypeFromType(itemType)
15
+ : getEntityTypeFromType(itemType[0]);
16
+ const qry = {
17
+ targetEntity,
18
+ filters: [
19
+ Object.assign(Object.assign({}, (ids.length && { operation: "AND" })), { predicates: [
20
+ Object.assign({ type: itemType }, (ids.length && { id: { not: ids } })),
21
+ ] }),
22
+ ],
23
+ };
24
+ return qry;
25
+ }
26
+ //# sourceMappingURL=getTypeByNotIdsQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTypeByNotIdsQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeByNotIdsQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAA2B,EAC3B,GAAa;IAEb,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,QAAQ;QAC1B,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,MAAM,GAAG,GAAW;QAClB,YAAY;QACZ,OAAO,EAAE;4CAEF,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,KACvC,UAAU,EAAE;oCAER,IAAI,EAAE,QAAQ,IACX,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;iBAE1C;SAEJ;KACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,14 +1,19 @@
1
1
  import { getEntityTypeFromType } from "../../search/_internal/getEntityTypeFromType";
2
2
  /**
3
3
  * @private
4
- * Return an `IQuery` for a specific item type, with a specific typekeyword
5
- * This is used internally to build queries for "Connected" entities
6
- * @param itemType
7
- * @param keyword
4
+ * Construct an IQuery to fetch a set of items by type(s)
5
+ * with a specified typeKeyword. Note: if an array of types
6
+ * is provided, they must be the same underlying target
7
+ * entity type.
8
+ *
9
+ * @param itemType - The type(s) of item to fetch
10
+ * @param keyword - The typeKeyword to filter by
8
11
  * @returns
9
12
  */
10
13
  export function getTypeWithKeywordQuery(itemType, keyword) {
11
- const targetEntity = getEntityTypeFromType(itemType);
14
+ const targetEntity = typeof itemType === "string"
15
+ ? getEntityTypeFromType(itemType)
16
+ : getEntityTypeFromType(itemType[0]);
12
17
  return {
13
18
  targetEntity,
14
19
  filters: [
@@ -17,7 +22,7 @@ export function getTypeWithKeywordQuery(itemType, keyword) {
17
22
  predicates: [
18
23
  {
19
24
  type: itemType,
20
- typekeywords: keyword,
25
+ typekeywords: [keyword],
21
26
  },
22
27
  ],
23
28
  },
@@ -1 +1 @@
1
- {"version":3,"file":"getTypeWithKeywordQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeWithKeywordQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAAgB,EAChB,OAAe;IAEf,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAErD,OAAO;QACL,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,YAAY,EAAE,OAAO;qBACtB;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"getTypeWithKeywordQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeWithKeywordQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAA2B,EAC3B,OAAe;IAEf,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,QAAQ;QAC1B,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,OAAO;QACL,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,YAAY,EAAE,CAAC,OAAO,CAAC;qBACxB;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,14 +1,19 @@
1
1
  import { getEntityTypeFromType } from "../../search/_internal/getEntityTypeFromType";
2
2
  /**
3
3
  * @private
4
- * Return an `IQuery` for a specific item type, without a specific typekeyword
5
- * This is used internally to build queries for "Not Connected" entities
6
- * @param itemType
7
- * @param keyword
4
+ * Construct an IQuery to fetch a set of items by type(s)
5
+ * withOUT a specified typeKeyword. Note: if an array of
6
+ * types is provided, they must be the same underlying target
7
+ * entity type.
8
+ *
9
+ * @param itemType - The type(s) of item to fetch
10
+ * @param keyword - The typeKeyword to filter by
8
11
  * @returns
9
12
  */
10
13
  export function getTypeWithoutKeywordQuery(itemType, keyword) {
11
- const targetEntity = getEntityTypeFromType(itemType);
14
+ const targetEntity = typeof itemType === "string"
15
+ ? getEntityTypeFromType(itemType)
16
+ : getEntityTypeFromType(itemType[0]);
12
17
  return {
13
18
  targetEntity,
14
19
  filters: [
@@ -1 +1 @@
1
- {"version":3,"file":"getTypeWithoutKeywordQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeWithoutKeywordQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAgB,EAChB,OAAe;IAEf,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAErD,OAAO;QACL,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE;qBACjC;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"getTypeWithoutKeywordQuery.js","sourceRoot":"","sources":["../../../../src/associations/internal/getTypeWithoutKeywordQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAGrF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA2B,EAC3B,OAAe;IAEf,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,QAAQ;QAC1B,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,OAAO;QACL,YAAY;QACZ,OAAO,EAAE;YACP;gBACE,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE;qBACjC;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { getAssociationHierarchy } from "./getAssociationHierarchy";
2
+ /**
3
+ * given two entity types, this util returns
4
+ * whether or not associations are supported
5
+ * between the two
6
+ *
7
+ * @param type1 - first entity type
8
+ * @param type2 - second entity type
9
+ * @returns {boolean}
10
+ */
11
+ export const isAssociationSupported = (type1, type2) => {
12
+ try {
13
+ const hierarchy1 = getAssociationHierarchy(type1);
14
+ const hierarchy2 = getAssociationHierarchy(type2);
15
+ if (hierarchy1.children.includes(type2)) {
16
+ return hierarchy2.parents.includes(type1);
17
+ }
18
+ else if (hierarchy1.parents.includes(type2)) {
19
+ return hierarchy2.children.includes(type1);
20
+ }
21
+ else {
22
+ return false;
23
+ }
24
+ }
25
+ catch (error) {
26
+ return false;
27
+ }
28
+ };
29
+ //# sourceMappingURL=isAssociationSupported.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isAssociationSupported.js","sourceRoot":"","sources":["../../../../src/associations/internal/isAssociationSupported.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,KAAoB,EACpB,KAAoB,EACX,EAAE;IACX,IAAI;QACF,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAElD,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACvC,OAAO,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC7C,OAAO,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC5C;aAAM;YACL,OAAO,KAAK,CAAC;SACd;KACF;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * when a child decides it wants to "disconnect" itself from
3
+ * an existing association, the child removes the typeKeyword
4
+ * (ref|<type>|<id>) that "references" the parent
5
+ *
6
+ * @param typeKeywords - the child entity's typeKeywords
7
+ * @param type - the parent entity's type
8
+ * @param id - the parent entity's id
9
+ * @returns {string[]}
10
+ */
11
+ export function removeAssociationKeyword(typeKeywords, type, id) {
12
+ const associationKeyword = `ref|${type}|${id}`;
13
+ const filteredKeywords = typeKeywords.filter((keyword) => keyword !== associationKeyword);
14
+ return filteredKeywords;
15
+ }
16
+ //# sourceMappingURL=removeAssociationKeyword.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeAssociationKeyword.js","sourceRoot":"","sources":["../../../../src/associations/internal/removeAssociationKeyword.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACtC,YAAsB,EACtB,IAAmB,EACnB,EAAU;IAEV,MAAM,kBAAkB,GAAG,OAAO,IAAI,IAAI,EAAE,EAAE,CAAC;IAC/C,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAC1C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,kBAAkB,CAC5C,CAAC;IAEF,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * when a child sends an "outgoing" request or accepts an
3
+ * "incoming" request for association, the child "references"
4
+ * the parent via a typeKeyword (ref|<type>|<id>)
5
+ *
6
+ * @param typeKeywords - the child entity's typeKeywords
7
+ * @param type - the parent entity's type
8
+ * @param id - the parent entity's id
9
+ * @returns {string[]}
10
+ */
11
+ export function setAssociationKeyword(typeKeywords, type, id) {
12
+ const keyword = `ref|${type}|${id}`;
13
+ if (!typeKeywords.includes(keyword)) {
14
+ typeKeywords = [...typeKeywords, keyword];
15
+ }
16
+ return typeKeywords;
17
+ }
18
+ //# sourceMappingURL=setAssociationKeyword.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setAssociationKeyword.js","sourceRoot":"","sources":["../../../../src/associations/internal/setAssociationKeyword.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,YAAsB,EACtB,IAAmB,EACnB,EAAU;IAEV,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,EAAE,CAAC;IACpC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACnC,YAAY,GAAG,CAAC,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC;KAC3C;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -1,4 +1,8 @@
1
1
  /**
2
+ * ** DEPRECATED: please use getAssociatedEntitiesQuery
3
+ * to get a query for an entity's associations instead.
4
+ * This will be removed in the next breaking version **
5
+ *
2
6
  * Return a list of all associations on an entity for a type
3
7
  * @param entity
4
8
  * @returns
@@ -1 +1 @@
1
- {"version":3,"file":"listAssociations.js","sourceRoot":"","sources":["../../../src/associations/listAssociations.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAyB,EACzB,IAAqB;IAErB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,OAAO,EAAE,CAAC;KACX;IACD,OAAO,MAAM,CAAC,YAAY;SACvB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAsB,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"listAssociations.js","sourceRoot":"","sources":["../../../src/associations/listAssociations.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAyB,EACzB,IAAqB;IAErB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,OAAO,EAAE,CAAC;KACX;IACD,OAAO,MAAM,CAAC,YAAY;SACvB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAsB,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,4 +1,7 @@
1
1
  /**
2
+ * ** DEPRECATED: please use breakAssociation instead.
3
+ * This will be removed in the next breaking version **
4
+ *
2
5
  * Remove an association from an entity
3
6
  * @param info
4
7
  * @param entity
@@ -1 +1 @@
1
- {"version":3,"file":"removeAssociation.js","sourceRoot":"","sources":["../../../src/associations/removeAssociation.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,EACzB,IAAsB;IAEtB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,OAAO;KACR;IACD,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;QACd,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;KACtC;AACH,CAAC"}
1
+ {"version":3,"file":"removeAssociation.js","sourceRoot":"","sources":["../../../src/associations/removeAssociation.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,EACzB,IAAsB;IAEtB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACxB,OAAO;KACR;IACD,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;QACd,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;KACtC;AACH,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { shareItemWithGroup } from "@esri/arcgis-rest-portal";
2
+ import { getTypeFromEntity } from "../core/getTypeFromEntity";
3
+ import { fetchHubEntity } from "../core/fetchHubEntity";
4
+ import { getAssociationHierarchy } from "./internal/getAssociationHierarchy";
5
+ import { isAssociationSupported } from "./internal/isAssociationSupported";
6
+ import { setAssociationKeyword } from "./internal/setAssociationKeyword";
7
+ import { getProp } from "../objects";
8
+ import { updateHubEntity } from "../core/updateHubEntity";
9
+ /**
10
+ * When an entity sends an "outgoing" association request
11
+ * or accepts an "incoming" association request, half of
12
+ * the association "connection" is made.
13
+ *
14
+ * from the parent's perspective: the parent "includes"
15
+ * the child in its association group
16
+ *
17
+ * From the child's perspective: the child "references"
18
+ * the parent via a typeKeyword of the form ref|<parentType>|<parentId>
19
+ *
20
+ * Note: we export this function under 2 names - requestAssociation
21
+ * and acceptAssociation. These actions are functionally equivalent,
22
+ * but we want to make the intent more clear to the consumer.
23
+ *
24
+ * @param entity - entity requesting association
25
+ * @param type - type of the entity the requesting entity wants to associate with
26
+ * @param id - id of the entity the requesting entity wants to associate with
27
+ * @param context - contextual portal and auth information
28
+ */
29
+ export const requestAssociation = async (entity, associationType, id, context) => {
30
+ const entityType = getTypeFromEntity(entity);
31
+ const isSupported = isAssociationSupported(entityType, associationType);
32
+ if (!isSupported) {
33
+ throw new Error(`requestAssociation: Association between ${entityType} and ${associationType} is not supported.`);
34
+ }
35
+ const associationHierarchy = getAssociationHierarchy(entityType);
36
+ const isParent = associationHierarchy.children.includes(associationType);
37
+ if (isParent) {
38
+ const associationGroupId = getProp(entity, "associations.groupId");
39
+ const { owner } = await fetchHubEntity(associationType, id, context);
40
+ try {
41
+ await shareItemWithGroup({
42
+ id,
43
+ owner,
44
+ groupId: associationGroupId,
45
+ authentication: context.session,
46
+ });
47
+ }
48
+ catch (error) {
49
+ throw new Error(`requestAssociation: there was an error sharing ${id} to ${associationGroupId}: ${error}`);
50
+ }
51
+ }
52
+ else {
53
+ entity.typeKeywords = setAssociationKeyword(entity.typeKeywords, associationType, id);
54
+ await updateHubEntity(entityType, entity, context);
55
+ }
56
+ };
57
+ //# sourceMappingURL=requestAssociation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestAssociation.js","sourceRoot":"","sources":["../../../src/associations/requestAssociation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiB,EACjB,eAA8B,EAC9B,EAAU,EACV,OAAuB,EACR,EAAE;IACjB,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,sBAAsB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAExE,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CACb,2CAA2C,UAAU,QAAQ,eAAe,oBAAoB,CACjG,CAAC;KACH;IAED,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAEzE,IAAI,QAAQ,EAAE;QACZ,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;QACnE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACrE,IAAI;YACF,MAAM,kBAAkB,CAAC;gBACvB,EAAE;gBACF,KAAK;gBACL,OAAO,EAAE,kBAAkB;gBAC3B,cAAc,EAAE,OAAO,CAAC,OAAO;aAChC,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CACb,kDAAkD,EAAE,OAAO,kBAAkB,KAAK,KAAK,EAAE,CAC1F,CAAC;SACH;KACF;SAAM;QACL,MAAM,CAAC,YAAY,GAAG,qBAAqB,CACzC,MAAM,CAAC,YAAY,EACnB,eAAe,EACf,EAAE,CACH,CAAC;QACF,MAAM,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;KACpD;AACH,CAAC,CAAC"}
@@ -1,2 +1 @@
1
- // AS WE ADD MORE TYPES, UPDATE THE getItemTypeFromAssociationType FUNCTION
2
1
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/associations/types.ts"],"names":[],"mappings":"AAoBA,2EAA2E"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/associations/types.ts"],"names":[],"mappings":""}
@@ -266,18 +266,32 @@ export class HubItemEntity {
266
266
  * to keep the number of resources in control
267
267
  * @param file
268
268
  */
269
- async setFeaturedImage(file) {
269
+ async setFeaturedImage(file, clearExisting = false) {
270
270
  var _a;
271
- // If we have a featured image then clear it out.
272
- if ((_a = this.entity.view) === null || _a === void 0 ? void 0 : _a.featuredImageUrl) {
273
- await this.clearFeaturedImage();
271
+ try {
272
+ // If we have a featured image then clear it out.
273
+ if (((_a = this.entity.view) === null || _a === void 0 ? void 0 : _a.featuredImageUrl) || clearExisting) {
274
+ await this.clearFeaturedImage();
275
+ }
276
+ // add the new featured image
277
+ const featuredImageUrl = await uploadImageResource(this.entity.id, this.entity.owner, file, FEATURED_IMAGE_FILENAME, this.context.userRequestOptions);
278
+ // If successful, update the entity
279
+ this.entity.view = Object.assign(Object.assign({}, this.entity.view), { featuredImageUrl });
280
+ // save the entity
281
+ await this.save();
282
+ }
283
+ catch (err) {
284
+ // If the featured image url has been cleared, but the resource hasn't
285
+ // Been removed then we'll get the following error message.
286
+ // In that case, we'll try again with clearExisting set to true.
287
+ if (err instanceof Error &&
288
+ err.message === "CONT_00942: Resource already present") {
289
+ return this.setFeaturedImage(file, true);
290
+ }
291
+ else {
292
+ throw err;
293
+ }
274
294
  }
275
- // add the new featured image
276
- const featuredImageUrl = await uploadImageResource(this.entity.id, this.entity.owner, file, FEATURED_IMAGE_FILENAME, this.context.userRequestOptions);
277
- // If successful, update the entity
278
- this.entity.view = Object.assign(Object.assign({}, this.entity.view), { featuredImageUrl });
279
- // save the entity
280
- await this.save();
281
295
  }
282
296
  /**
283
297
  * Remove the featured image from the item
@@ -314,6 +328,9 @@ export class HubItemEntity {
314
328
  this.update({ typeKeywords, isDiscussable });
315
329
  }
316
330
  /**
331
+ * ** DEPRECATED: This will be removed in the next
332
+ * breaking version **
333
+ *
317
334
  * Return a list of IAssociationInfo objects representing
318
335
  * the associations this entity has, to the specified type
319
336
  * @param type
@@ -323,6 +340,9 @@ export class HubItemEntity {
323
340
  return listAssociations(this.entity, type);
324
341
  }
325
342
  /**
343
+ * ** DEPRECATED: please use requestAssociation instead.
344
+ * This will be removed in the next breaking version **
345
+ *
326
346
  * Add an association to this entity
327
347
  * @param info
328
348
  * @returns
@@ -331,6 +351,9 @@ export class HubItemEntity {
331
351
  return addAssociation(this.entity, info);
332
352
  }
333
353
  /**
354
+ * ** DEPRECATED: please use breakAssociation instead.
355
+ * This will be removed in the next breaking version **
356
+ *
334
357
  * Remove an association from this entity
335
358
  * @param info
336
359
  * @returns
@@ -1 +1 @@
1
- {"version":3,"file":"HubItemEntity.js","sourceRoot":"","sources":["../../../src/core/HubItemEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAElC,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EACL,mBAAmB,EACnB,eAAe,EAIf,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAqB,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAWtC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAgB,aAAa;IAiBjC,YAAY,MAAS,EAAE,OAAuB;QAJpC,gBAAW,GAAY,KAAK,CAAC;QAC7B,mBAAc,GACtB,IAAI,CAAC;QAGL,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,UAAsB;QACpC,OAAO,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IACD;;;;OAIG;IACH,qBAAqB,CAAC,UAAsB;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;QAClD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;IAChE,CAAC;IACD;;;OAGG;IACH,mBAAmB,CAAC,MAA+B;QACjD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,mBAAmB,CAC3C,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,MAAM,CACP,CAAC;IACJ,CAAC;IACD;;;;OAIG;IACH,sBAAsB,CAAC,UAAsB,EAAE,EAAU;QACvD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,sBAAsB,CAC9C,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,UAAU,EACV,EAAE,CACH,CAAC;IACJ,CAAC;IACD,kFAAkF;IAClF;;OAEG;IACH,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,4BAA4B;IAE5B;;;OAGG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAiB,CAAC;IAClD,CAAC;IAKD;;;;;OAKG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,+BAA+B;IAE/B,8BAA8B;IAC9B;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,OAAe;;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YAC7B,MAAM,IAAI,QAAQ,CAChB,uBAAuB,EACvB,yDAAyD,CAC1D,CAAC;SACH;QACD,sDAAsD;QACtD,qDAAqD;QACrD,+CAA+C;QAC/C,2DAA2D;QAC3D,iEAAiE;QACjE,qDAAqD;QACrD,MAAM,KAAK,SAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,0CAAE,IAAI,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CACxB,CAAC;QAEF,wEAAwE;QACxE,MAAM,WAAW,GAAG,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,KAAI,EAAE,CAAC,CAAC,QAAQ,CACtD,mBAAmB,CACpB,CAAC;QAEF,MAAM,kBAAkB,CAAC;YACvB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,OAAO;YACP,kBAAkB,EAAE,WAAW;YAC/B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe;QACpC,MAAM,oBAAoB,CAAC;YACzB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,OAAO;YACP,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,MAA2B;QACzC,MAAM,aAAa,CAAC;YAClB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;QACH,uCAAuC;QACvC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,OAAO,QAAQ,CACb,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAC5B,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAChC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CAAC,MAA2B;QACvD,MAAM,WAAW,CAAC;YAChB,KAAK,EAAE;gBACL,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;gBAChC,MAAM;aACP;YACD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,8BAA8B,CAAC,aAAsB;QACzD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAG,qBAAqB,CACxC,KAAK,CAAC,YAAY,EAClB,aAAa,CACd,CAAC;QACF,MAAM,WAAW,CAAC;YAChB,KAAK,EAAE;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,YAAY;aACb;YACD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,6FAA6F;QAC7F,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;IAED,YAAY;IAEZ;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,oBAAoB;QACpB,6CAA6C;QAC7C,8EAA8E;QAC9E,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;gBAC7B,MAAM,mBAAmB,CACvB,IAAI,CAAC,MAAM,CAAC,EAAE,EACd,IAAI,CAAC,MAAM,CAAC,KAAK,EACjB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAChC,CAAC;gBACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;aACjC;iBAAM;gBACL,qBAAqB;gBACrB,MAAM,gBAAgB,CACpB,IAAI,CAAC,MAAM,CAAC,EAAE,EACd,IAAI,CAAC,cAAc,CAAC,IAAI,EACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAC5B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAClB,CAAC;gBAEF,mFAAmF;gBACnF,2DAA2D;gBAC3D,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,aAAa,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;gBACpE,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;gBAClD,4BAA4B;gBAC5B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;aAC5B;SACF;IACH,CAAC;IAED,gCAAgC;IAEhC;;;;OAIG;IACH,YAAY,CAAC,IAAS,EAAE,QAAgB;QACtC,oFAAoF;QACpF,IAAI,CAAC,cAAc,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,cAAc,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,QAAgB,GAAG;QACjC,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;SACb,CAAC;QAEtB,MAAM,IAAI,GAAsB;YAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;YACjC,KAAK;SACN,CAAC;QAEF,OAAO,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IACD,mCAAmC;IAEnC,oCAAoC;IACpC;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAS;;QAC9B,iDAAiD;QACjD,UAAI,IAAI,CAAC,MAAM,CAAC,IAAI,0CAAE,gBAAgB,EAAE;YACtC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;SACjC;QACD,6BAA6B;QAC7B,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAChD,IAAI,CAAC,MAAM,CAAC,EAAE,EACd,IAAI,CAAC,MAAM,CAAC,KAAK,EACjB,IAAI,EACJ,uBAAuB,EACvB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAChC,CAAC;QACF,mCAAmC;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,mCACX,IAAI,CAAC,MAAM,CAAC,IAAI,KACnB,gBAAgB,GACjB,CAAC;QACF,kBAAkB;QAClB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IACD;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACtB,IAAI;YACF,sBAAsB;YACtB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,iBACvC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAClB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EACxB,QAAQ,EAAE,uBAAuB,IAC9B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAClC,CAAC;YACH,mCAAmC;YACnC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACjC,MAAM,IAAI,QAAQ,CAChB,2BAA2B,EAC3B,wCAAwC,CACzC,CAAC;aACH;YACD,8CAA8C;YAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YACzC,kBAAkB;YAClB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;SACnB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,KAAK,EAAE;gBACxB,MAAM,IAAI,QAAQ,CAAC,2BAA2B,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;aACnE;iBAAM;gBACL,MAAM,IAAI,QAAQ,CAChB,2BAA2B,EAC3B,wCAAwC,CACzC,CAAC;aACH;SACF;IACH,CAAC;IACD,uCAAuC;IAEvC;;;OAGG;IACH,mBAAmB,CAAC,aAAsB;QACxC,MAAM,YAAY,GAAG,qBAAqB,CACxC,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,aAAa,CACd,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,EAAgB,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,IAAqB;QACpC,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,IAAsB;QACnC,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,IAAsB;QACtC,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"HubItemEntity.js","sourceRoot":"","sources":["../../../src/core/HubItemEntity.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export function getBasePropertyMap() {
24
24
  "orgId",
25
25
  "protected",
26
26
  ];
27
- const dataProps = ["display", "geometry", "view"];
27
+ const dataProps = ["display", "geometry", "view", "associations"];
28
28
  const resourceProps = Object.keys(EntityResourceMap);
29
29
  const map = [];
30
30
  itemProps.forEach((entry) => {
@@ -1 +1 @@
1
- {"version":3,"file":"getBasePropertyMap.js","sourceRoot":"","sources":["../../../../src/core/_internal/getBasePropertyMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,SAAS,GAAG;QAChB,QAAQ;QACR,SAAS;QACT,SAAS;QACT,aAAa;QACb,QAAQ;QACR,IAAI;QACJ,aAAa;QACb,UAAU;QACV,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,cAAc;QACd,WAAW;QACX,KAAK;QACL,OAAO;QACP,WAAW;KACZ,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,kBAAkB;IAClB,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,sBAAsB;KACjC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,+BAA+B;KAC1C,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,oBAAoB;QAC/B,QAAQ,EAAE,qCAAqC;KAChD,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,kBAAkB;QAC7B,QAAQ,EAAE,mBAAmB;KAC9B,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"getBasePropertyMap.js","sourceRoot":"","sources":["../../../../src/core/_internal/getBasePropertyMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,SAAS,GAAG;QAChB,QAAQ;QACR,SAAS;QACT,SAAS;QACT,aAAa;QACb,QAAQ;QACR,IAAI;QACJ,aAAa;QACb,UAAU;QACV,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,cAAc;QACd,WAAW;QACX,KAAK;QACL,OAAO;QACP,WAAW;KACZ,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,kBAAkB;IAClB,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,sBAAsB;KACjC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,+BAA+B;KAC1C,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,0BAA0B;KACrC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,oBAAoB;QAC/B,QAAQ,EAAE,qCAAqC;KAChD,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC;QACP,SAAS,EAAE,kBAAkB;QAC7B,QAAQ,EAAE,mBAAmB;KAC9B,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}