@esri/hub-common 17.3.0 → 17.4.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 (83) hide show
  1. package/dist/esm/content/_internal/ContentBusinessRules.js +34 -0
  2. package/dist/esm/content/_internal/ContentBusinessRules.js.map +1 -1
  3. package/dist/esm/core/types/HubEntityType.js +9 -6
  4. package/dist/esm/core/types/HubEntityType.js.map +1 -1
  5. package/dist/esm/initiative-templates/_internal/InitiativeTemplateBusinessRules.js +13 -0
  6. package/dist/esm/initiative-templates/_internal/InitiativeTemplateBusinessRules.js.map +1 -1
  7. package/dist/esm/search/_internal/commonHelpers/getApi.js +1 -1
  8. package/dist/esm/search/_internal/commonHelpers/getApi.js.map +1 -1
  9. package/dist/esm/search/_internal/commonHelpers/getOgcApiDefinition.js +2 -2
  10. package/dist/esm/search/_internal/commonHelpers/getOgcApiDefinition.js.map +1 -1
  11. package/dist/esm/search/_internal/hubSearchItems.js +6 -2
  12. package/dist/esm/search/_internal/hubSearchItems.js.map +1 -1
  13. package/dist/esm/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.js +7 -7
  14. package/dist/esm/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.js.map +1 -1
  15. package/dist/esm/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.js +2 -2
  16. package/dist/esm/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.js.map +1 -1
  17. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.js +1 -1
  18. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.js.map +1 -1
  19. package/dist/esm/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.js +1 -1
  20. package/dist/esm/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.js.map +1 -1
  21. package/dist/esm/search/_internal/hubSearchItemsHelpers/ogcApiRequest.js +5 -2
  22. package/dist/esm/search/_internal/hubSearchItemsHelpers/ogcApiRequest.js.map +1 -1
  23. package/dist/esm/search/_internal/hubSearchItemsHelpers/searchOgcItems.js +2 -4
  24. package/dist/esm/search/_internal/hubSearchItemsHelpers/searchOgcItems.js.map +1 -1
  25. package/dist/esm/search/index.js +1 -0
  26. package/dist/esm/search/index.js.map +1 -1
  27. package/dist/esm/search/searchAssociatedContent.js +44 -0
  28. package/dist/esm/search/searchAssociatedContent.js.map +1 -0
  29. package/dist/esm/surveys/_internal/SurveyBusinessRules.js +13 -0
  30. package/dist/esm/surveys/_internal/SurveyBusinessRules.js.map +1 -1
  31. package/dist/esm/templates/_internal/TemplateBusinessRules.js +13 -0
  32. package/dist/esm/templates/_internal/TemplateBusinessRules.js.map +1 -1
  33. package/dist/node/content/_internal/ContentBusinessRules.js +34 -0
  34. package/dist/node/content/_internal/ContentBusinessRules.js.map +1 -1
  35. package/dist/node/core/types/HubEntityType.js +10 -7
  36. package/dist/node/core/types/HubEntityType.js.map +1 -1
  37. package/dist/node/initiative-templates/_internal/InitiativeTemplateBusinessRules.js +13 -0
  38. package/dist/node/initiative-templates/_internal/InitiativeTemplateBusinessRules.js.map +1 -1
  39. package/dist/node/search/_internal/commonHelpers/getApi.js +1 -1
  40. package/dist/node/search/_internal/commonHelpers/getApi.js.map +1 -1
  41. package/dist/node/search/_internal/commonHelpers/getOgcApiDefinition.js +2 -2
  42. package/dist/node/search/_internal/commonHelpers/getOgcApiDefinition.js.map +1 -1
  43. package/dist/node/search/_internal/hubSearchItems.js +6 -2
  44. package/dist/node/search/_internal/hubSearchItems.js.map +1 -1
  45. package/dist/node/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.js +7 -7
  46. package/dist/node/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.js.map +1 -1
  47. package/dist/node/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.js +2 -2
  48. package/dist/node/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.js.map +1 -1
  49. package/dist/node/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.js +1 -1
  50. package/dist/node/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.js.map +1 -1
  51. package/dist/node/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.js +1 -1
  52. package/dist/node/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.js.map +1 -1
  53. package/dist/node/search/_internal/hubSearchItemsHelpers/ogcApiRequest.js +5 -2
  54. package/dist/node/search/_internal/hubSearchItemsHelpers/ogcApiRequest.js.map +1 -1
  55. package/dist/node/search/_internal/hubSearchItemsHelpers/searchOgcItems.js +2 -4
  56. package/dist/node/search/_internal/hubSearchItemsHelpers/searchOgcItems.js.map +1 -1
  57. package/dist/node/search/index.js +1 -0
  58. package/dist/node/search/index.js.map +1 -1
  59. package/dist/node/search/searchAssociatedContent.js +48 -0
  60. package/dist/node/search/searchAssociatedContent.js.map +1 -0
  61. package/dist/node/surveys/_internal/SurveyBusinessRules.js +13 -0
  62. package/dist/node/surveys/_internal/SurveyBusinessRules.js.map +1 -1
  63. package/dist/node/templates/_internal/TemplateBusinessRules.js +13 -0
  64. package/dist/node/templates/_internal/TemplateBusinessRules.js.map +1 -1
  65. package/dist/types/content/_internal/ContentBusinessRules.d.ts +1 -1
  66. package/dist/types/content/_internal/internalContentUtils.d.ts +1 -1
  67. package/dist/types/content/get-family.d.ts +1 -1
  68. package/dist/types/core/types/HubEntityType.d.ts +3 -1
  69. package/dist/types/initiative-templates/_internal/InitiativeTemplateBusinessRules.d.ts +1 -1
  70. package/dist/types/search/_internal/commonHelpers/getOgcApiDefinition.d.ts +2 -2
  71. package/dist/types/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.d.ts +2 -3
  72. package/dist/types/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.d.ts +2 -3
  73. package/dist/types/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.d.ts +3 -3
  74. package/dist/types/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.d.ts +3 -3
  75. package/dist/types/search/_internal/hubSearchItemsHelpers/interfaces.d.ts +8 -0
  76. package/dist/types/search/_internal/hubSearchItemsHelpers/ogcApiRequest.d.ts +2 -2
  77. package/dist/types/search/_internal/hubSearchItemsHelpers/searchOgcItems.d.ts +2 -2
  78. package/dist/types/search/index.d.ts +1 -0
  79. package/dist/types/search/searchAssociatedContent.d.ts +12 -0
  80. package/dist/types/search/types/types.d.ts +32 -2
  81. package/dist/types/surveys/_internal/SurveyBusinessRules.d.ts +1 -1
  82. package/dist/types/templates/_internal/TemplateBusinessRules.d.ts +1 -1
  83. package/package.json +1 -1
@@ -14,6 +14,8 @@ export const ContentPermissions = [
14
14
  "hub:content:delete",
15
15
  "hub:content:edit",
16
16
  "hub:content:view",
17
+ "hub:content:view:related",
18
+ "hub:content:view:connected",
17
19
  "hub:content:canChangeAccess",
18
20
  "hub:content:workspace",
19
21
  "hub:content:workspace:overview",
@@ -49,6 +51,38 @@ export const ContentPermissionPolicies = [
49
51
  services: ["portal"],
50
52
  authenticated: false,
51
53
  },
54
+ {
55
+ permission: "hub:content:view:related",
56
+ dependencies: ["hub:content:view"],
57
+ services: ["hub-search"],
58
+ assertions: [
59
+ {
60
+ property: "entity:access",
61
+ type: "eq",
62
+ value: "public",
63
+ },
64
+ ],
65
+ },
66
+ // NOTE: The connected content feature is only available for individual _feature layers_ within
67
+ // a feature / map service. Consumers of this permission are in charge of ensuring that the user
68
+ // is viewing a feature layer within a feature / map service before applying this permission.
69
+ {
70
+ permission: "hub:content:view:connected",
71
+ dependencies: ["hub:content:view"],
72
+ services: ["hub-search"],
73
+ assertions: [
74
+ {
75
+ property: "entity:access",
76
+ type: "eq",
77
+ value: "public",
78
+ },
79
+ {
80
+ property: "entity:type",
81
+ type: "included-in",
82
+ value: ["Feature Service", "Map Service"],
83
+ },
84
+ ],
85
+ },
52
86
  {
53
87
  permission: "hub:content:edit",
54
88
  authenticated: true,
@@ -1 +1 @@
1
- {"version":3,"file":"ContentBusinessRules.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentBusinessRules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentBusinessRules.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentBusinessRules.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,20 @@
1
- export const HUB_ENTITY_TYPES = [
1
+ export const HUB_ITEM_ENTITY_TYPES = [
2
2
  "content",
3
- "discussion",
4
- "event",
5
- "group",
6
3
  "initiative",
7
4
  "initiativeTemplate",
8
- "org",
9
- "organization",
10
5
  "page",
11
6
  "project",
12
7
  "site",
13
8
  "survey",
14
9
  "template",
10
+ ];
11
+ export const HUB_ENTITY_TYPES = [
12
+ ...HUB_ITEM_ENTITY_TYPES,
13
+ "discussion",
14
+ "event",
15
+ "group",
16
+ "org",
17
+ "organization",
15
18
  "user",
16
19
  "channel",
17
20
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"HubEntityType.js","sourceRoot":"","sources":["../../../../src/core/types/HubEntityType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,SAAS;IACT,YAAY;IACZ,OAAO;IACP,OAAO;IACP,YAAY;IACZ,oBAAoB;IACpB,KAAK;IACL,cAAc;IACd,MAAM;IACN,SAAS;IACT,MAAM;IACN,QAAQ;IACR,UAAU;IACV,MAAM;IACN,SAAS;CACD,CAAC"}
1
+ {"version":3,"file":"HubEntityType.js","sourceRoot":"","sources":["../../../../src/core/types/HubEntityType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,SAAS;IACT,YAAY;IACZ,oBAAoB;IACpB,MAAM;IACN,SAAS;IACT,MAAM;IACN,QAAQ;IACR,UAAU;CACF,CAAC;AAGX,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,qBAAqB;IACxB,YAAY;IACZ,OAAO;IACP,OAAO;IACP,KAAK;IACL,cAAc;IACd,MAAM;IACN,SAAS;CACD,CAAC"}
@@ -15,6 +15,7 @@ export const InitiativeTemplatePermissions = [
15
15
  "hub:initiativeTemplate:delete",
16
16
  "hub:initiativeTemplate:edit",
17
17
  "hub:initiativeTemplate:view",
18
+ "hub:initiativeTemplate:view:related",
18
19
  "hub:initiativeTemplate:canChangeAccess",
19
20
  "hub:initiativeTemplate:workspace",
20
21
  "hub:initiativeTemplate:workspace:dashboard",
@@ -42,6 +43,18 @@ export const InitiativeTemplatePermissionPolicies = [
42
43
  permission: "hub:initiativeTemplate:view",
43
44
  dependencies: ["hub:initiativeTemplate"],
44
45
  },
46
+ {
47
+ permission: "hub:initiativeTemplate:view:related",
48
+ dependencies: ["hub:initiativeTemplate:view"],
49
+ services: ["hub-search"],
50
+ assertions: [
51
+ {
52
+ property: "entity:access",
53
+ type: "eq",
54
+ value: "public",
55
+ },
56
+ ],
57
+ },
45
58
  {
46
59
  permission: "hub:initiativeTemplate:edit",
47
60
  dependencies: ["hub:initiativeTemplate"],
@@ -1 +1 @@
1
- {"version":3,"file":"InitiativeTemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/initiative-templates/_internal/InitiativeTemplateBusinessRules.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAkB;AAC9D,gBAAgB;CACjB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,wBAAwB;IACxB,+BAA+B;IAC/B,+BAA+B;IAC/B,6BAA6B;IAC7B,6BAA6B;IAC7B,wCAAwC;IACxC,kCAAkC;IAClC,4CAA4C;IAC5C,0CAA0C;IAC1C,gDAAgD;IAChD,2CAA2C;IAC3C,+BAA+B;CACvB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAwB;IACvE;QACE,UAAU,EAAE,wBAAwB;QACpC,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,wBAAwB,CAAC;KACzC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,wCAAwC;QACpD,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,4CAA4C;QACxD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,0CAA0C;QACtD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,gDAAgD;QAC5D,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,2CAA2C;QACvD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,6BAA6B,CAAC;KAC9C;CACF,CAAC"}
1
+ {"version":3,"file":"InitiativeTemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/initiative-templates/_internal/InitiativeTemplateBusinessRules.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAkB;AAC9D,gBAAgB;CACjB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,wBAAwB;IACxB,+BAA+B;IAC/B,+BAA+B;IAC/B,6BAA6B;IAC7B,6BAA6B;IAC7B,qCAAqC;IACrC,wCAAwC;IACxC,kCAAkC;IAClC,4CAA4C;IAC5C,0CAA0C;IAC1C,gDAAgD;IAChD,2CAA2C;IAC3C,+BAA+B;CACvB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAwB;IACvE;QACE,UAAU,EAAE,wBAAwB;QACpC,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,wBAAwB,CAAC;KACzC;IACD;QACE,UAAU,EAAE,qCAAqC;QACjD,YAAY,EAAE,CAAC,6BAA6B,CAAC;QAC7C,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,QAAQ;aAChB;SACF;KACF;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,wCAAwC;QACpD,YAAY,EAAE,CAAC,wBAAwB,CAAC;QACxC,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,4CAA4C;QACxD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,0CAA0C;QACtD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,gDAAgD;QAC5D,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,2CAA2C;QACvD,YAAY,EAAE;YACZ,kCAAkC;YAClC,6BAA6B;SAC9B;KACF;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,6BAA6B,CAAC;KAC9C;CACF,CAAC"}
@@ -31,7 +31,7 @@ export function getApi(targetEntity, options) {
31
31
  result = { type: "arcgis-hub", url: null };
32
32
  }
33
33
  else if (shouldUseOgcApi(targetEntity, options)) {
34
- result = getOgcApiDefinition(targetEntity, options);
34
+ result = getOgcApiDefinition(targetEntity, options.requestOptions);
35
35
  }
36
36
  else {
37
37
  result = { type: "arcgis", url: portal };
@@ -1 +1 @@
1
- {"version":3,"file":"getApi.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getApi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,UAAU,MAAM,CACpB,YAAwB,EACxB,OAA0B;IAE1B,MAAM,EACJ,GAAG,EACH,cAAc,EAAE,EAAE,MAAM,EAAE,GAC3B,GAAG,OAAO,CAAC;IAEZ,IAAI,MAAsB,CAAC;IAC3B,IAAI,GAAG,EAAE;QACP,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;KACzB;SAAM,IAAI,uBAAuB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACzD,MAAM,GAAG,2BAA2B,EAAE,CAAC;KACxC;SAAM,IAAI,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACpD,mEAAmE;QACnE,6DAA6D;QAC7D,mDAAmD;QACnD,MAAM,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;KAC5C;SAAM,IAAI,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACjD,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;KACrD;SAAM;QACL,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;KAC1C;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"getApi.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getApi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,UAAU,MAAM,CACpB,YAAwB,EACxB,OAA0B;IAE1B,MAAM,EACJ,GAAG,EACH,cAAc,EAAE,EAAE,MAAM,EAAE,GAC3B,GAAG,OAAO,CAAC;IAEZ,IAAI,MAAsB,CAAC;IAC3B,IAAI,GAAG,EAAE;QACP,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;KACzB;SAAM,IAAI,uBAAuB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACzD,MAAM,GAAG,2BAA2B,EAAE,CAAC;KACxC;SAAM,IAAI,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACpD,mEAAmE;QACnE,6DAA6D;QAC7D,mDAAmD;QACnD,MAAM,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;KAC5C;SAAM,IAAI,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACjD,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;KACpE;SAAM;QACL,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;KAC1C;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -5,8 +5,8 @@
5
5
  * @param options IHubRequestOptions to derive OGC API info from
6
6
  * @returns an IApiDefinition with needed info to target the OGC API
7
7
  */
8
- export function getOgcApiDefinition(targetEntity, options) {
9
- const umbrellaDomain = new URL(options.requestOptions.hubApiUrl).hostname;
8
+ export function getOgcApiDefinition(targetEntity, requestOptions) {
9
+ const umbrellaDomain = new URL(requestOptions.hubApiUrl).hostname;
10
10
  return targetEntity === "discussionPost"
11
11
  ? {
12
12
  type: "arcgis-hub",
@@ -1 +1 @@
1
- {"version":3,"file":"getOgcApiDefinition.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getOgcApiDefinition.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,YAAwB,EACxB,OAA0B;IAE1B,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;IAC1E,OAAO,YAAY,KAAK,gBAAgB;QACtC,CAAC,CAAC;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,WAAW,cAAc,gBAAgB;SAC/C;QACH,CAAC,CAAC;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,WAAW,cAAc,gBAAgB;SAC/C,CAAC;AACR,CAAC"}
1
+ {"version":3,"file":"getOgcApiDefinition.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getOgcApiDefinition.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,YAAwB,EACxB,cAAkC;IAElC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;IAClE,OAAO,YAAY,KAAK,gBAAgB;QACtC,CAAC,CAAC;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,WAAW,cAAc,gBAAgB;SAC/C;QACH,CAAC,CAAC;YACE,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,WAAW,cAAc,gBAAgB;SAC/C,CAAC;AACR,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { getOgcCollectionUrl } from "./hubSearchItemsHelpers/getOgcCollectionUrl";
1
2
  import { searchOgcAggregations } from "./hubSearchItemsHelpers/searchOgcAggregations";
2
3
  import { searchOgcItems } from "./hubSearchItemsHelpers/searchOgcItems";
3
4
  /**
@@ -9,7 +10,10 @@ import { searchOgcItems } from "./hubSearchItemsHelpers/searchOgcItems";
9
10
  */
10
11
  export async function hubSearchItems(query, options) {
11
12
  var _a;
12
- return ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) ? searchOgcAggregations(query, options)
13
- : searchOgcItems(query, options);
13
+ if ((_a = options.aggFields) === null || _a === void 0 ? void 0 : _a.length) {
14
+ return searchOgcAggregations(query, options);
15
+ }
16
+ const url = `${getOgcCollectionUrl(query, options)}/items`;
17
+ return searchOgcItems(url, query, options);
14
18
  }
15
19
  //# sourceMappingURL=hubSearchItems.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hubSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/hubSearchItems.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAExE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,OAA0B;;IAE1B,OAAO,OAAA,OAAO,CAAC,SAAS,0CAAE,MAAM,EAC9B,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC;QACvC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"hubSearchItems.js","sourceRoot":"","sources":["../../../../src/search/_internal/hubSearchItems.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAExE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,OAA0B;;IAE1B,UAAI,OAAO,CAAC,SAAS,0CAAE,MAAM,EAAE;QAC7B,OAAO,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KAC9C;IACD,MAAM,GAAG,GAAG,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC;IAC3D,OAAO,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,OAAiC,CAAC,CAAC;AACvE,CAAC"}
@@ -1,15 +1,15 @@
1
1
  import { getNextOgcCallback } from "./getNextOgcCallback";
2
2
  import { ogcItemToSearchResult } from "./ogcItemToSearchResult";
3
3
  import { ogcItemToDiscussionPostResult } from "./ogcItemToDiscussionPostResult";
4
- export async function formatOgcItemsResponse(response, originalQuery, originalOptions) {
4
+ export async function formatOgcItemsResponse(response, url, originalQuery, originalOptions) {
5
5
  if (originalQuery.targetEntity === "discussionPost") {
6
- return formatDiscussionPostTargetEntityResponse(response, originalQuery, originalOptions);
6
+ return formatDiscussionPostTargetEntityResponse(response, url, originalQuery, originalOptions);
7
7
  }
8
- return formatItemTargetEntityResponse(response, originalQuery, originalOptions);
8
+ return formatItemTargetEntityResponse(response, url, originalQuery, originalOptions);
9
9
  }
10
- async function formatDiscussionPostTargetEntityResponse(response, originalQuery, originalOptions) {
10
+ async function formatDiscussionPostTargetEntityResponse(response, url, originalQuery, originalOptions) {
11
11
  const formattedResults = await Promise.all(response.features.map((f) => ogcItemToDiscussionPostResult(f)));
12
- const next = getNextOgcCallback(response, originalQuery, originalOptions);
12
+ const next = getNextOgcCallback(response, url, originalQuery, originalOptions);
13
13
  const nextLink = response.links.find((l) => l.rel === "next");
14
14
  return {
15
15
  total: response.numberMatched,
@@ -18,9 +18,9 @@ async function formatDiscussionPostTargetEntityResponse(response, originalQuery,
18
18
  next,
19
19
  };
20
20
  }
21
- async function formatItemTargetEntityResponse(response, originalQuery, originalOptions) {
21
+ async function formatItemTargetEntityResponse(response, url, originalQuery, originalOptions) {
22
22
  const formattedResults = await Promise.all(response.features.map((f) => ogcItemToSearchResult(f, originalOptions.include, originalOptions.requestOptions)));
23
- const next = getNextOgcCallback(response, originalQuery, originalOptions);
23
+ const next = getNextOgcCallback(response, url, originalQuery, originalOptions);
24
24
  const nextLink = response.links.find((l) => l.rel === "next");
25
25
  return {
26
26
  total: response.numberMatched,
@@ -1 +1 @@
1
- {"version":3,"file":"formatOgcItemsResponse.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAGhF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAA2B,EAC3B,aAAqB,EACrB,eAAkC;IAElC,IAAI,aAAa,CAAC,YAAY,KAAK,gBAAgB,EAAE;QACnD,OAAO,wCAAwC,CAC7C,QAAQ,EACR,aAAa,EACb,eAAe,CAChB,CAAC;KACH;IAED,OAAO,8BAA8B,CACnC,QAAQ,EACR,aAAa,EACb,eAAe,CAChB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wCAAwC,CACrD,QAA2B,EAC3B,aAAqB,EACrB,eAAkC;IAElC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAC/D,CAAC;IACF,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,aAAa;QAC7B,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,CAAC,CAAC,QAAQ;QACnB,IAAI;KACL,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,8BAA8B,CAC3C,QAA2B,EAC3B,aAAqB,EACrB,eAAkC;IAElC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,qBAAqB,CACnB,CAAC,EACD,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,cAAc,CAC/B,CACF,CACF,CAAC;IACF,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,aAAa;QAC7B,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,CAAC,CAAC,QAAQ;QACnB,IAAI;KACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"formatOgcItemsResponse.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/formatOgcItemsResponse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAGhF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAA2B,EAC3B,GAAW,EACX,aAAqB,EACrB,eAAuC;IAEvC,IAAI,aAAa,CAAC,YAAY,KAAK,gBAAgB,EAAE;QACnD,OAAO,wCAAwC,CAC7C,QAAQ,EACR,GAAG,EACH,aAAa,EACb,eAAe,CAChB,CAAC;KACH;IAED,OAAO,8BAA8B,CACnC,QAAQ,EACR,GAAG,EACH,aAAa,EACb,eAAe,CAChB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wCAAwC,CACrD,QAA2B,EAC3B,GAAW,EACX,aAAqB,EACrB,eAAuC;IAEvC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAC/D,CAAC;IACF,MAAM,IAAI,GAAG,kBAAkB,CAC7B,QAAQ,EACR,GAAG,EACH,aAAa,EACb,eAAe,CAChB,CAAC;IACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,aAAa;QAC7B,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,CAAC,CAAC,QAAQ;QACnB,IAAI;KACL,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,8BAA8B,CAC3C,QAA2B,EAC3B,GAAW,EACX,aAAqB,EACrB,eAAuC;IAEvC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,qBAAqB,CACnB,CAAC,EACD,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,cAAc,CAC/B,CACF,CACF,CAAC;IACF,MAAM,IAAI,GAAG,kBAAkB,CAC7B,QAAQ,EACR,GAAG,EACH,aAAa,EACb,eAAe,CAChB,CAAC;IACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,aAAa;QAC7B,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,CAAC,CAAC,QAAQ;QACnB,IAAI;KACL,CAAC;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { searchOgcItems } from "./searchOgcItems";
2
- export function getNextOgcCallback(response, originalQuery, originalOptions) {
2
+ export function getNextOgcCallback(response, url, originalQuery, originalOptions) {
3
3
  const nextLink = response.links.find((l) => l.rel === "next");
4
4
  let callback = () => null;
5
5
  if (nextLink) {
@@ -7,7 +7,7 @@ export function getNextOgcCallback(response, originalQuery, originalOptions) {
7
7
  const nextUrl = new URL(nextLink.href);
8
8
  const start = +nextUrl.searchParams.get("startindex");
9
9
  const nextOptions = Object.assign(Object.assign({}, originalOptions), { start });
10
- return searchOgcItems(originalQuery, nextOptions);
10
+ return searchOgcItems(url, originalQuery, nextOptions);
11
11
  };
12
12
  }
13
13
  return callback;
@@ -1 +1 @@
1
- {"version":3,"file":"getNextOgcCallback.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,UAAU,kBAAkB,CAChC,QAA2B,EAC3B,aAAqB,EACrB,eAAkC;IAElC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,IAAI,QAAQ,GAAG,GAAkD,EAAE,CAAC,IAAI,CAAC;IACzE,IAAI,QAAQ,EAAE;QACZ,QAAQ,GAAG,GAAG,EAAE;YACd,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACtD,MAAM,WAAW,mCAA2B,eAAe,KAAE,KAAK,GAAE,CAAC;YACrE,OAAO,cAAc,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACpD,CAAC,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"getNextOgcCallback.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getNextOgcCallback.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,UAAU,kBAAkB,CAChC,QAA2B,EAC3B,GAAW,EACX,aAAqB,EACrB,eAAuC;IAEvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IAE9D,IAAI,QAAQ,GAAG,GAAkD,EAAE,CAAC,IAAI,CAAC;IACzE,IAAI,QAAQ,EAAE;QACZ,QAAQ,GAAG,GAAG,EAAE;YACd,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACtD,MAAM,WAAW,mCAAgC,eAAe,KAAE,KAAK,GAAE,CAAC;YAC1E,OAAO,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -11,7 +11,7 @@ import { getSortByQueryParam } from "./getSortByQueryParam";
11
11
  * to the /items endpoint of an OGC API collection
12
12
  *
13
13
  * @param query an IQuery to derive query params from
14
- * @param options an IHubSearchOptions object to derive query params from
14
+ * @param options an ISearchOgcItemsOptions object to derive query params from
15
15
  * @returns a hash of query params to be included in the request
16
16
  */
17
17
  export function getOgcItemQueryParams(query, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"getOgcItemQueryParams.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAc5D;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAa,EACb,OAA0B;IAE1B,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;IAC1B,+CAA+C;IAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IACjC,MAAM,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE1C,OAAO;QACL,MAAM;QACN,KAAK;QACL,KAAK;QACL,UAAU;QACV,CAAC;QACD,MAAM;QACN,IAAI;QACJ,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"getOgcItemQueryParams.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getOgcItemQueryParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAe5D;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAa,EACb,OAA+B;IAE/B,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;IAC1B,+CAA+C;IAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IACjC,MAAM,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE1C,OAAO;QACL,MAAM;QACN,KAAK;QACL,KAAK;QACL,UAAU;QACV,CAAC;QACD,MAAM;QACN,IAAI;QACJ,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Serializes the sort options provided from the request options
4
4
  * object into a string that the OGC API can understand
5
5
  *
6
- * @param options IHubSearchOptions that contain sorting information
6
+ * @param options ISearchOgcItemsOptions that contain sorting information
7
7
  * @returns a serialized sort string
8
8
  */
9
9
  export function getSortByQueryParam(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"getSortByQueryParam.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA0B;IAC5D,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACzC,IAAI,MAAM,CAAC;IACX,IAAI,SAAS,EAAE;QACb,MAAM;YACJ,SAAS,KAAK,MAAM;gBAClB,CAAC,CAAC,eAAe,SAAS,EAAE;gBAC5B,CAAC,CAAC,cAAc,SAAS,EAAE,CAAC;KACjC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"getSortByQueryParam.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getSortByQueryParam.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA+B;IACjE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACzC,IAAI,MAAM,CAAC;IACX,IAAI,SAAS,EAAE;QACb,MAAM;YACJ,SAAS,KAAK,MAAM;gBAClB,CAAC,CAAC,eAAe,SAAS,EAAE;gBAC5B,CAAC,CAAC,cAAc,SAAS,EAAE,CAAC;KACjC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -28,9 +28,12 @@ import { getQueryString } from "./getQueryString";
28
28
  export async function ogcApiRequest(url, queryParams, options) {
29
29
  var _a;
30
30
  const updatedQueryParams = cloneObject(queryParams);
31
- const targetDomain = new URL(options.site).hostname;
31
+ let targetDomain;
32
+ if (options.site) {
33
+ targetDomain = new URL(options.site).hostname;
34
+ }
32
35
  const urlDomain = new URL(url).hostname;
33
- if (targetDomain !== urlDomain) {
36
+ if (targetDomain && targetDomain !== urlDomain) {
34
37
  updatedQueryParams.target = targetDomain;
35
38
  }
36
39
  const withQueryString = url + getQueryString(updatedQueryParams);
@@ -1 +1 @@
1
- {"version":3,"file":"ogcApiRequest.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/ogcApiRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAW,EACX,WAAgC,EAChC,OAA0B;;IAE1B,MAAM,kBAAkB,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEpD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;IACpD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IACxC,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,kBAAkB,CAAC,MAAM,GAAG,YAAY,CAAC;KAC1C;IAED,MAAM,eAAe,GAAG,GAAG,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAEjE,4BAA4B;IAC5B,MAAM,MAAM,GAAG,OAAA,OAAO,CAAC,cAAc,0CAAE,KAAK,KAAI,KAAK,CAAC;IACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,iBAAiB,CACzB,QAAQ,CAAC,UAAU,EACnB,eAAe,EACf,QAAQ,CAAC,MAAM,CAChB,CAAC;KACH;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"ogcApiRequest.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/ogcApiRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAW,EACX,WAAgC,EAChC,OAA+B;;IAE/B,MAAM,kBAAkB,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,YAAY,CAAC;IACjB,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,YAAY,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;KAC/C;IACD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IACxC,IAAI,YAAY,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9C,kBAAkB,CAAC,MAAM,GAAG,YAAY,CAAC;KAC1C;IAED,MAAM,eAAe,GAAG,GAAG,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAEjE,4BAA4B;IAC5B,MAAM,MAAM,GAAG,OAAA,OAAO,CAAC,cAAc,0CAAE,KAAK,KAAI,KAAK,CAAC;IACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,iBAAiB,CACzB,QAAQ,CAAC,UAAU,EACnB,eAAe,EACf,QAAQ,CAAC,MAAM,CAChB,CAAC;KACH;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC"}
@@ -1,11 +1,9 @@
1
1
  import { formatOgcItemsResponse } from "./formatOgcItemsResponse";
2
- import { getOgcCollectionUrl } from "./getOgcCollectionUrl";
3
2
  import { getOgcItemQueryParams } from "./getOgcItemQueryParams";
4
3
  import { ogcApiRequest } from "./ogcApiRequest";
5
- export async function searchOgcItems(query, options) {
6
- const url = `${getOgcCollectionUrl(query, options)}/items`;
4
+ export async function searchOgcItems(url, query, options) {
7
5
  const queryParams = getOgcItemQueryParams(query, options);
8
6
  const rawResponse = await ogcApiRequest(url, queryParams, options);
9
- return formatOgcItemsResponse(rawResponse, query, options);
7
+ return formatOgcItemsResponse(rawResponse, url, query, options);
10
8
  }
11
9
  //# sourceMappingURL=searchOgcItems.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"searchOgcItems.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/searchOgcItems.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC;IAC3D,MAAM,WAAW,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAsB,MAAM,aAAa,CACxD,GAAG,EACH,WAAW,EACX,OAAO,CACR,CAAC;IAEF,OAAO,sBAAsB,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"searchOgcItems.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/searchOgcItems.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAW,EACX,KAAa,EACb,OAA+B;IAE/B,MAAM,WAAW,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAsB,MAAM,aAAa,CACxD,GAAG,EACH,WAAW,EACX,OAAO,CACR,CAAC;IAEF,OAAO,sBAAsB,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAClE,CAAC"}
@@ -6,4 +6,5 @@ export * from "./types";
6
6
  export * from "./upgradeCatalogSchema";
7
7
  export * from "./utils";
8
8
  export * from "./wellKnownCatalog";
9
+ export * from "./searchAssociatedContent";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { getTypeFromEntity } from "../core/getTypeFromEntity";
2
+ import { HUB_ITEM_ENTITY_TYPES, } from "../core/types/HubEntityType";
3
+ import HubError from "../HubError";
4
+ import { getOgcApiDefinition } from "./_internal/commonHelpers/getOgcApiDefinition";
5
+ import { searchOgcItems } from "./_internal/hubSearchItemsHelpers/searchOgcItems";
6
+ /**
7
+ * Searches for content that is associated with a given entity.
8
+ * Current associations supported are "related" and "connected".
9
+ *
10
+ * If unspecified, the number of results returned is 4.
11
+ *
12
+ * NOTE: only item based entities are supported for now.
13
+ *
14
+ * @returns Search results for the associated content
15
+ */
16
+ export async function searchAssociatedContent(opts) {
17
+ const { scope, requestOptions, num = 4 } = opts;
18
+ const searchOptions = {
19
+ requestOptions,
20
+ num,
21
+ };
22
+ // Validate that we received an item-based entity
23
+ const entityType = getTypeFromEntity(opts.entity);
24
+ if (!HUB_ITEM_ENTITY_TYPES.includes(entityType)) {
25
+ throw new HubError("searchAssociatedContent", `associated content is not supported for entity type "${entityType}"`);
26
+ }
27
+ // For now, we only support searching associated items, not other types of entities
28
+ if (scope.targetEntity !== "item") {
29
+ throw new HubError("searchAssociatedContent", `associated content scope does not support targetEntity "${scope.targetEntity}"`);
30
+ }
31
+ // The "connected" association requires a layerId
32
+ if (!opts.layerId && opts.association === "connected") {
33
+ throw new HubError("searchAssociatedContent", `"layerId" is required for searching "connected" content`);
34
+ }
35
+ // Calculate the hubId
36
+ const { entity, layerId } = opts;
37
+ const hubId = layerId ? `${entity.id}_${layerId}` : entity.id;
38
+ // Construct the OGC API URL
39
+ const { association } = opts;
40
+ const api = getOgcApiDefinition(scope.targetEntity, searchOptions.requestOptions);
41
+ const url = `${api.url}/collections/all/items/${hubId}/${association}`;
42
+ return searchOgcItems(url, scope, searchOptions);
43
+ }
44
+ //# sourceMappingURL=searchAssociatedContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchAssociatedContent.js","sourceRoot":"","sources":["../../../src/search/searchAssociatedContent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EACL,qBAAqB,GAEtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAOlF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAqC;IAErC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;IAChD,MAAM,aAAa,GAA2B;QAC5C,cAAc;QACd,GAAG;KACJ,CAAC;IAEF,iDAAiD;IACjD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAsB,CAAC;IACvE,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAC/C,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,wDAAwD,UAAU,GAAG,CACtE,CAAC;KACH;IAED,mFAAmF;IACnF,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM,EAAE;QACjC,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,2DAA2D,KAAK,CAAC,YAAY,GAAG,CACjF,CAAC;KACH;IAED,iDAAiD;IACjD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE;QACrD,MAAM,IAAI,QAAQ,CAChB,yBAAyB,EACzB,yDAAyD,CAC1D,CAAC;KACH;IAED,sBAAsB;IACtB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACjC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IAE9D,4BAA4B;IAC5B,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAC7B,MAAM,GAAG,GAAG,mBAAmB,CAC7B,KAAK,CAAC,YAAY,EAClB,aAAa,CAAC,cAAc,CAC7B,CAAC;IACF,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,0BAA0B,KAAK,IAAI,WAAW,EAAE,CAAC;IAEvE,OAAO,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AACnD,CAAC"}
@@ -9,6 +9,7 @@ export const SurveyPermissions = [
9
9
  "hub:survey:delete",
10
10
  "hub:survey:edit",
11
11
  "hub:survey:view",
12
+ "hub:survey:view:related",
12
13
  "hub:survey:owner",
13
14
  "hub:survey:canChangeAccess",
14
15
  "hub:survey:workspace",
@@ -32,6 +33,18 @@ export const SurveyPermissionPolicies = [
32
33
  permission: "hub:survey:view",
33
34
  dependencies: ["hub:survey"],
34
35
  },
36
+ {
37
+ permission: "hub:survey:view:related",
38
+ dependencies: ["hub:survey:view"],
39
+ services: ["hub-search"],
40
+ assertions: [
41
+ {
42
+ property: "entity:access",
43
+ type: "eq",
44
+ value: "public",
45
+ },
46
+ ],
47
+ },
35
48
  {
36
49
  permission: "hub:survey:create",
37
50
  authenticated: true,
@@ -1 +1 @@
1
- {"version":3,"file":"SurveyBusinessRules.js","sourceRoot":"","sources":["../../../../src/surveys/_internal/SurveyBusinessRules.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY;IACZ,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;IACjB,kBAAkB;IAClB,4BAA4B;IAC5B,sBAAsB;IACtB,gCAAgC;IAChC,8BAA8B;IAC9B,+BAA+B;IAC/B,oCAAoC;IACpC,mBAAmB;CACX,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAwB;IAC3D;QACE,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;KACvC;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,YAAY,CAAC;KAC7B;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,UAAU,EAAE;YACV,oBAAoB;YACpB,kCAAkC;YAClC,wBAAwB;YACxB,0BAA0B;SAC3B;KACF;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,4BAA4B;QACxC,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,sBAAsB;QAClC,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,oCAAoC;QAChD,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,iBAAiB,CAAC;KAClC;CACF,CAAC"}
1
+ {"version":3,"file":"SurveyBusinessRules.js","sourceRoot":"","sources":["../../../../src/surveys/_internal/SurveyBusinessRules.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY;IACZ,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;IACjB,yBAAyB;IACzB,kBAAkB;IAClB,4BAA4B;IAC5B,sBAAsB;IACtB,gCAAgC;IAChC,8BAA8B;IAC9B,+BAA+B;IAC/B,oCAAoC;IACpC,mBAAmB;CACX,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAwB;IAC3D;QACE,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;KACvC;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,YAAY,CAAC;KAC7B;IACD;QACE,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,iBAAiB,CAAC;QACjC,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,QAAQ;aAChB;SACF;KACF;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,UAAU,EAAE;YACV,oBAAoB;YACpB,kCAAkC;YAClC,wBAAwB;YACxB,0BAA0B;SAC3B;KACF;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,4BAA4B;QACxC,YAAY,EAAE,CAAC,YAAY,CAAC;QAC5B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,sBAAsB;QAClC,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,oCAAoC;QAChD,YAAY,EAAE,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;KAC1D;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,iBAAiB,CAAC;KAClC;CACF,CAAC"}
@@ -15,6 +15,7 @@ export const TemplatePermissions = [
15
15
  "hub:template:edit",
16
16
  "hub:template:manage",
17
17
  "hub:template:view",
18
+ "hub:template:view:related",
18
19
  "hub:template:canChangeAccess",
19
20
  "hub:template:workspace",
20
21
  "hub:template:workspace:details",
@@ -47,6 +48,18 @@ export const TemplatePermissionPolicies = [
47
48
  permission: "hub:template:view",
48
49
  dependencies: ["hub:template"],
49
50
  },
51
+ {
52
+ permission: "hub:template:view:related",
53
+ dependencies: ["hub:template:view"],
54
+ services: ["hub-search"],
55
+ assertions: [
56
+ {
57
+ property: "entity:access",
58
+ type: "eq",
59
+ value: "public",
60
+ },
61
+ ],
62
+ },
50
63
  {
51
64
  permission: "hub:template:edit",
52
65
  dependencies: ["hub:template"],
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/templates/_internal/TemplateBusinessRules.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkB,EAAE,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,cAAc;IACd,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,8BAA8B;IAC9B,wBAAwB;IACxB,gCAAgC;IAChC,kCAAkC;IAClC,sCAAsC;IACtC,iCAAiC;CACzB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC7D;QACE,UAAU,EAAE,cAAc;QAC1B,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;KAC/B;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,mBAAmB,CAAC;KACpC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,wBAAwB;QACpC,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,sCAAsC;QAClD,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;CACF,CAAC"}
1
+ {"version":3,"file":"TemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/templates/_internal/TemplateBusinessRules.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkB,EAAE,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,cAAc;IACd,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,2BAA2B;IAC3B,8BAA8B;IAC9B,wBAAwB;IACxB,gCAAgC;IAChC,kCAAkC;IAClC,sCAAsC;IACtC,iCAAiC;CACzB,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC7D;QACE,UAAU,EAAE,cAAc;QAC1B,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;KACnB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;KAC/B;IACD;QACE,UAAU,EAAE,2BAA2B;QACvC,YAAY,EAAE,CAAC,mBAAmB,CAAC;QACnC,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,QAAQ;aAChB;SACF;KACF;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,mBAAmB,CAAC;KACpC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,gCAAgC;gBAC1C,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,4BAA4B;oBAC5B,yBAAyB;oBACzB,2BAA2B;oBAC3B,wBAAwB;iBACzB;aACF;YACD;gBACE,QAAQ,EAAE,oBAAoB;gBAC9B,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf;SACF;KACF;IACD;QACE,UAAU,EAAE,wBAAwB;QACpC,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,sCAAsC;QAClD,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;CACF,CAAC"}
@@ -17,6 +17,8 @@ exports.ContentPermissions = [
17
17
  "hub:content:delete",
18
18
  "hub:content:edit",
19
19
  "hub:content:view",
20
+ "hub:content:view:related",
21
+ "hub:content:view:connected",
20
22
  "hub:content:canChangeAccess",
21
23
  "hub:content:workspace",
22
24
  "hub:content:workspace:overview",
@@ -52,6 +54,38 @@ exports.ContentPermissionPolicies = [
52
54
  services: ["portal"],
53
55
  authenticated: false,
54
56
  },
57
+ {
58
+ permission: "hub:content:view:related",
59
+ dependencies: ["hub:content:view"],
60
+ services: ["hub-search"],
61
+ assertions: [
62
+ {
63
+ property: "entity:access",
64
+ type: "eq",
65
+ value: "public",
66
+ },
67
+ ],
68
+ },
69
+ // NOTE: The connected content feature is only available for individual _feature layers_ within
70
+ // a feature / map service. Consumers of this permission are in charge of ensuring that the user
71
+ // is viewing a feature layer within a feature / map service before applying this permission.
72
+ {
73
+ permission: "hub:content:view:connected",
74
+ dependencies: ["hub:content:view"],
75
+ services: ["hub-search"],
76
+ assertions: [
77
+ {
78
+ property: "entity:access",
79
+ type: "eq",
80
+ value: "public",
81
+ },
82
+ {
83
+ property: "entity:type",
84
+ type: "included-in",
85
+ value: ["Feature Service", "Map Service"],
86
+ },
87
+ ],
88
+ },
55
89
  {
56
90
  permission: "hub:content:edit",
57
91
  authenticated: true,
@@ -1 +1 @@
1
- {"version":3,"file":"ContentBusinessRules.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentBusinessRules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentBusinessRules.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentBusinessRules.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HUB_ENTITY_TYPES = void 0;
4
- exports.HUB_ENTITY_TYPES = [
3
+ exports.HUB_ENTITY_TYPES = exports.HUB_ITEM_ENTITY_TYPES = void 0;
4
+ exports.HUB_ITEM_ENTITY_TYPES = [
5
5
  "content",
6
- "discussion",
7
- "event",
8
- "group",
9
6
  "initiative",
10
7
  "initiativeTemplate",
11
- "org",
12
- "organization",
13
8
  "page",
14
9
  "project",
15
10
  "site",
16
11
  "survey",
17
12
  "template",
13
+ ];
14
+ exports.HUB_ENTITY_TYPES = [
15
+ ...exports.HUB_ITEM_ENTITY_TYPES,
16
+ "discussion",
17
+ "event",
18
+ "group",
19
+ "org",
20
+ "organization",
18
21
  "user",
19
22
  "channel",
20
23
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"HubEntityType.js","sourceRoot":"","sources":["../../../../src/core/types/HubEntityType.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC9B,SAAS;IACT,YAAY;IACZ,OAAO;IACP,OAAO;IACP,YAAY;IACZ,oBAAoB;IACpB,KAAK;IACL,cAAc;IACd,MAAM;IACN,SAAS;IACT,MAAM;IACN,QAAQ;IACR,UAAU;IACV,MAAM;IACN,SAAS;CACD,CAAC"}
1
+ {"version":3,"file":"HubEntityType.js","sourceRoot":"","sources":["../../../../src/core/types/HubEntityType.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG;IACnC,SAAS;IACT,YAAY;IACZ,oBAAoB;IACpB,MAAM;IACN,SAAS;IACT,MAAM;IACN,QAAQ;IACR,UAAU;CACF,CAAC;AAGE,QAAA,gBAAgB,GAAG;IAC9B,GAAG,6BAAqB;IACxB,YAAY;IACZ,OAAO;IACP,OAAO;IACP,KAAK;IACL,cAAc;IACd,MAAM;IACN,SAAS;CACD,CAAC"}