Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… #1210

Merged
merged 9 commits into from
Sep 22, 2023

Conversation

rweber-esri
Copy link
Contributor

@rweber-esri rweber-esri commented Sep 13, 2023

[email protected], adds support for sear

affects: @esri/hub-common, @esri/hub-downloads

ISSUES CLOSED: 7720

  1. Description:
  • bumps @esri/arcgis-rest-portal to 3.7.0
  • unlocks ability to search for users outside the current user's org
  • adds new portalUser and communityUser targetEntity support to hubSearch, which DO NOT force the portal record enrichment
  • renames portalSearchUsers => portalSearchUsersLegacy while preserving existing user targetEntity behavior (still forces the portal record enrichment)
  • expands support for searching for non-date related ranges, e.g. orgid:[0 TO {]
  • adds getChannelUsersQuery method to build an IQuery to search for users within the context of specific channel configurations
  1. Instructions for testing:

  2. Closes Issues: #7720

  3. Updated meaningful TSDoc to methods including Parameters and Returns, see Documentation Guide

  4. used semantic commit messages

  5. PR title follows semantic commit format (CRITICAL if the title is not in a semantic format, the release automation will not run!)

  6. updated peerDependencies as needed. CRITICAL our automated release system can not be counted on to update peerDependencies so we must do it manually in our PRs when needed. See the updating peerDependencies section of the release instructions for more details.

@codecov
Copy link

codecov bot commented Sep 13, 2023

Codecov Report

Patch coverage: 100.00% and no project coverage change.

Comparison is base (0b9465f) 100.00% compared to head (450a882) 100.00%.
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #1210   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          751       751           
  Lines        13569     13646   +77     
  Branches      2338      2368   +30     
=========================================
+ Hits         13569     13646   +77     
Files Changed Coverage Δ
packages/common/src/discussions/utils.ts 100.00% <100.00%> (ø)
...n/src/search/_internal/portalSearchGroupMembers.ts 100.00% <100.00%> (ø)
...s/common/src/search/_internal/portalSearchUsers.ts 100.00% <100.00%> (ø)
packages/common/src/search/hubSearch.ts 100.00% <100.00%> (ø)
...kages/common/src/search/serializeQueryForPortal.ts 100.00% <100.00%> (ø)
packages/common/src/users/HubUsers.ts 100.00% <100.00%> (ø)

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

return enrichUserSearchResult(user, include, requestOptions);
return enrichUserSearchResult(
user,
["org.name as OrgName", ...include],
Copy link
Contributor Author

@rweber-esri rweber-esri Sep 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preserving the existing org enrichment when searching for group members to avoid a breaking change since enrichUserSearchResult needed to be refactored since new portalSearchUsers and communitySearchUsers do not want/need that enrichment

return searchPortal(so as IUserSearchOptions);
return searchPortal({
...searchOptions,
include: ["org.name as OrgName", ...(searchOptions.include || [])],
Copy link
Contributor Author

@rweber-esri rweber-esri Sep 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preserving the existing org enrichment when searching for users within the current user's org to avoid a breaking change since enrichUserSearchResult needed to be refactored since new portalSearchUsers and communitySearchUsers do not want/need that enrichment. This fn is used by the old/legacy users targetEntity which will be deprecated in a future release.

*/
async function searchPortal(
searchOptions: IUserSearchOptions
export function portalSearchUsers(
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the same as the old portalSearchUsers (renamed to portalSearchUsersLegacy), except that it does not impose the portal enrichment

* @param searchOptions
* @returns a promise that resolves enriched internal portal user search results
*/
async function searchPortal(
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New portal user search method, mapped to portalUser targetEntity, does not force the org enrichment

* @param searchOptions
* @returns a promise that resolves enriched community user search results
*/
async function searchCommunity(
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New community user search method, mapped to communityUser targetEntity, does not force the org enrichment

key,
value as unknown as IDateRange<number>
);
if (dateProps.includes(key) || isRange(value)) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

expands ability to perform range searches beyond created and modified keys

// Parse the includes into a valid set of enrichments
const specs = include.map(parseInclude);
const specs = include.filter(unique).map(parseInclude);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No longer force the portal enrichment for all user searches, the user & groupMember targetEntityies still gets that enrichment though by explicitly passing it now to avoid breaking change

Copy link
Contributor

@tannerjt tannerjt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@rweber-esri
Copy link
Contributor Author

@dbouwman I believe this PR satisfied what we had discussed per adding new hubSearch targetEntities to search for portal users & community users without the portal enrichment, while preserving the existing functionality and portal enrichment for the old user targetEntity to be deprecated in the future. Also CC @tomwayson

@@ -57,6 +57,8 @@ export type EntityType =
| "item"
| "group"
| "user"
| "portalUser"
| "communityUser"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to include TSDoc that explains the difference between these types of Users? @dbouwman

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ajturner Sadly this is not supported by typescript/tsdoc here's an issue: microsoft/TypeScript#38106 but the tldr is that if the doc strings a really important, use a full enum.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can put this into a guide though

packages/common/src/search/_internal/portalSearchUsers.ts Outdated Show resolved Hide resolved
packages/common/src/search/_internal/portalSearchUsers.ts Outdated Show resolved Hide resolved
@github-actions
Copy link

There hasn't been any activity on this pull request in the past 3 days, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 7 days. If you want this PR to never become stale, please apply the "Draft" label.

@github-actions github-actions bot added the Stale Stale issue - update or it will be closed label Sep 18, 2023
@rweber-esri rweber-esri added Draft Draft PR or Issue (don't mark stale) and removed Stale Stale issue - update or it will be closed labels Sep 18, 2023
Copy link
Contributor

@velveetachef velveetachef left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, small tweak for channelAcl

packages/common/src/discussions/utils.ts Outdated Show resolved Hide resolved
packages/common/src/discussions/utils.ts Show resolved Hide resolved
[email protected], adds support for sear

affects: @esri/hub-common, @esri/hub-downloads

ISSUES CLOSED: 7720
…alSearchUsersLegacy to searchPo

affects: @esri/hub-common

ISSUES CLOSED: 7720
affects: @esri/hub-common

ISSUES CLOSED: 7720
affects: @esri/hub-common

ISSUES CLOSED: 7720
affects: @esri/hub-common

ISSUES CLOSED: 7720
…back

affects: @esri/hub-common

ISSUES CLOSED: 7720
affects: @esri/hub-common

ISSUES CLOSED: 7720
affects: @esri/hub-common

ISSUES CLOSED: 7720
@rweber-esri rweber-esri force-pushed the f/7720-add-searchChannelUsers-method branch from 05ba680 to 450a882 Compare September 21, 2023 19:40
Copy link
Member

@dbouwman dbouwman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great @rweber-esri! Thanks for implementing all the parts of what we'd discussed, and for also DRYing up some of the internals. :)

@rweber-esri rweber-esri changed the title feat: adds searchChannelUsers method, bumps to @esri/arcgis-rest-port… feat: adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… Sep 22, 2023
@rweber-esri rweber-esri merged commit 320d6d8 into master Sep 22, 2023
7 checks passed
@rweber-esri rweber-esri deleted the f/7720-add-searchChannelUsers-method branch September 22, 2023 01:44
github-actions bot pushed a commit that referenced this pull request Sep 22, 2023
# @esri/hub-downloads [14.1.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-09-22)

### Features

* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
github-actions bot pushed a commit that referenced this pull request Sep 22, 2023
# [14.21.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-09-22)

### Features

* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
github-actions bot pushed a commit that referenced this pull request Oct 8, 2023
# [26.1.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-10-08)

### Bug Fixes

* update groups link from teams to groups ([#1262](#1262)) ([26dd47a](26dd47a))
* **hub-discussions:** add author and editor to isearchchannels ([#1257](#1257)) ([5d22e8b](5d22e8b))
* add featured content to initiatives edit ([#1208](#1208)) ([a3f0361](a3f0361))
* add Project to wellKnownColletions ([#1254](#1254)) ([82eb6a1](82eb6a1))
* added default empty quotes for computeProps ([#1204](#1204)) ([3c83e4a](3c83e4a))
* auto-populating groups in project creation ([#1225](#1225)) ([0b9465f](0b9465f))
* checkPermission and checkPrivileges first check isAuthenticated ([#1227](#1227)) ([b292131](b292131))
* ensure featured content catalogs are returned as an array ([#1207](#1207)) ([d28b56f](d28b56f))
* properly deserialize trustedOrgs from context ([#1256](#1256)) ([760b4ff](760b4ff))
* **hub-common:** content location should be of type extent, not polygon ([#1228](#1228)) ([c5539f4](c5539f4))
* **hub-common:** fix fetchHubContent does not support slugs ([#1216](#1216)) ([d3a4eba](d3a4eba))
* **hub-common:** re-adds the discussion permissions to validPermissions array ([#1223](#1223)) ([9db7245](9db7245))
* **hub-common:** workspace route for content is /workspace/content/:id not /workspace/contents/:id ([#1250](#1250)) ([f2c6679](f2c6679))
* uiSchema translation keys ([#1224](#1224)) ([a55292f](a55292f))

### Features

* **hub-common:** adds followers group discussion settings on site wo… ([#1251](#1251)) ([e0beb59](e0beb59))
* Add Initiative and Project Associations ([#1213](#1213)) ([7cb0298](7cb0298))
* add links hash for project, initiative, and group entities ([#1226](#1226)) ([aba8f7b](aba8f7b))
* add new polling util ([#1265](#1265)) ([e36c142](e36c142))
* add option to enrich an entity  ([#1220](#1220)) ([0b57ff5](0b57ff5))
* add supporting groups to sites property map ([#1205](#1205)) ([2d473d6](2d473d6))
* add workspaceRelative to enrichGroupSearchResult ([#1206](#1206)) ([f6d2016](f6d2016))
* addGroupMembers ([#1230](#1230)) ([3a7c900](3a7c900))
* adds entity discussion settings ([#1221](#1221)) ([5e25a43](5e25a43))
* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
* collaborator pane for content workspace ([#1259](#1259)) ([e00e624](e00e624))
* initiative template entity ([#1229](#1229)) ([f5a995a](f5a995a))
* initiative template workspace ([#1246](#1246)) ([cb385e5](cb385e5))
* scaffold solution template entity ([#1253](#1253)) ([54d1fe6](54d1fe6))
* **hub-common:** add application type content edit link ([#1217](#1217)) ([82ceec4](82ceec4))
* **hub-common:** add blocked as a possible PostStatus ([#1222](#1222)) ([11c8a58](11c8a58))
* **hub-common:** add content settings schemas and derive props from server definitions ([#1209](#1209)) ([1721285](1721285))
* **hub-common:** add hub:[entity]:manage permission for all entities ([#1202](#1202)) ([71191b7](71191b7))
* **hub-discussions:** adding ability to update the groups of a channel ([#1218](#1218)) ([7bc2117](7bc2117))
* followers settings schema and behavior ([#1211](#1211)) ([a8be73b](a8be73b))
* item extent now selectable, savable, and reflects in old and new view ([#1212](#1212)) ([5dbe3bb](5dbe3bb))
* partnered orgs added to context ([#1214](#1214)) ([7979571](7979571))
* refactor entity schema implementation ([#1203](#1203)) ([88cdd2b](88cdd2b))
github-actions bot pushed a commit that referenced this pull request Oct 8, 2023
# [14.1.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-10-08)

### Bug Fixes

* update groups link from teams to groups ([#1262](#1262)) ([26dd47a](26dd47a))
* **hub-discussions:** add author and editor to isearchchannels ([#1257](#1257)) ([5d22e8b](5d22e8b))
* account for index values that are 0 in card view models ([#1196](#1196)) ([bbc1928](bbc1928))
* add featured content to initiatives edit ([#1208](#1208)) ([a3f0361](a3f0361))
* add Project to wellKnownColletions ([#1254](#1254)) ([82eb6a1](82eb6a1))
* add shareContent group permission and minor hub group clean up ([#1194](#1194)) ([9a90b6d](9a90b6d))
* added default empty quotes for computeProps ([#1204](#1204)) ([3c83e4a](3c83e4a))
* auto-populating groups in project creation ([#1225](#1225)) ([0b9465f](0b9465f))
* checkPermission and checkPrivileges first check isAuthenticated ([#1227](#1227)) ([b292131](b292131))
* ensure featured content catalogs are returned as an array ([#1207](#1207)) ([d28b56f](d28b56f))
* properly deserialize trustedOrgs from context ([#1256](#1256)) ([760b4ff](760b4ff))
* **hub-common:** content location should be of type extent, not polygon ([#1228](#1228)) ([c5539f4](c5539f4))
* **hub-common:** fix fetchHubContent does not support slugs ([#1216](#1216)) ([d3a4eba](d3a4eba))
* **hub-common:** re-adds the discussion permissions to validPermissions array ([#1223](#1223)) ([9db7245](9db7245))
* **hub-common:** workspace route for content is /workspace/content/:id not /workspace/contents/:id ([#1250](#1250)) ([f2c6679](f2c6679))
* rollback stat migration ([#1193](#1193)) ([8465e15](8465e15))
* shouldClearEmptyFields now accounts for licenseInfo ([#1198](#1198)) ([3f4eb47](3f4eb47))
* uiSchema translation keys ([#1224](#1224)) ([a55292f](a55292f))
* **hub-discussions:** user can read channel if group is non-discussable ([#1201](#1201)) ([28d61f3](28d61f3))

### Features

* **hub-common:** adds followers group discussion settings on site wo… ([#1251](#1251)) ([e0beb59](e0beb59))
*  add feature and entity flagging into checkPermission ([#1187](#1187)) ([b040283](b040283))
* Add Initiative and Project Associations ([#1213](#1213)) ([7cb0298](7cb0298))
* add invite users to hub group ([#1197](#1197)) ([014b2bd](014b2bd))
* add links hash for project, initiative, and group entities ([#1226](#1226)) ([aba8f7b](aba8f7b))
* add member role badges to user card model ([#1195](#1195)) ([e09608d](e09608d))
* add new polling util ([#1265](#1265)) ([e36c142](e36c142))
* add option to enrich an entity  ([#1220](#1220)) ([0b57ff5](0b57ff5))
* add supporting groups to sites property map ([#1205](#1205)) ([2d473d6](2d473d6))
* add workspaceRelative to enrichGroupSearchResult ([#1206](#1206)) ([f6d2016](f6d2016))
* addGroupMembers ([#1230](#1230)) ([3a7c900](3a7c900))
* adding license picker to content workspace ([#1192](#1192)) ([312b333](312b333))
* adds entity discussion settings ([#1221](#1221)) ([5e25a43](5e25a43))
* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
* collaborator pane for content workspace ([#1259](#1259)) ([e00e624](e00e624))
* initiative template entity ([#1229](#1229)) ([f5a995a](f5a995a))
* initiative template workspace ([#1246](#1246)) ([cb385e5](cb385e5))
* scaffold solution template entity ([#1253](#1253)) ([54d1fe6](54d1fe6))
* **hub-common:** add application type content edit link ([#1217](#1217)) ([82ceec4](82ceec4))
* **hub-common:** add blocked as a possible PostStatus ([#1222](#1222)) ([11c8a58](11c8a58))
* **hub-common:** add content settings schemas and derive props from server definitions ([#1209](#1209)) ([1721285](1721285))
* **hub-common:** add getResultSiteRelativeLink so Hub Page results can have slugs in siteRelative l ([#1200](#1200)) ([27e0740](27e0740))
* **hub-common:** add hub:[entity]:manage permission for all entities ([#1202](#1202)) ([71191b7](71191b7))
* **hub-common:** add icon for Discussion content type ([#1185](#1185)) ([7ae927a](7ae927a))
* **hub-discussions:** adding ability to update the groups of a channel ([#1218](#1218)) ([7bc2117](7bc2117))
* followers settings schema and behavior ([#1211](#1211)) ([a8be73b](a8be73b))
* item extent now selectable, savable, and reflects in old and new view ([#1212](#1212)) ([5dbe3bb](5dbe3bb))
* partnered orgs added to context ([#1214](#1214)) ([7979571](7979571))
* refactor entity schema implementation ([#1203](#1203)) ([88cdd2b](88cdd2b))
* **hub-common:** add unified "links" hash as an optional property for all entities ([#1199](#1199)) ([ba14502](ba14502))
* site's followers pane permissions ([#1186](#1186)) ([90feec7](90feec7))
* ungate dashboard from projects ([#1188](#1188)) ([658b936](658b936))
github-actions bot pushed a commit that referenced this pull request Oct 8, 2023
# [14.1.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-10-08)

### Bug Fixes

* update groups link from teams to groups ([#1262](#1262)) ([26dd47a](26dd47a))
* **hub-discussions:** add author and editor to isearchchannels ([#1257](#1257)) ([5d22e8b](5d22e8b))
* account for index values that are 0 in card view models ([#1196](#1196)) ([bbc1928](bbc1928))
* add featured content to initiatives edit ([#1208](#1208)) ([a3f0361](a3f0361))
* add Project to wellKnownColletions ([#1254](#1254)) ([82eb6a1](82eb6a1))
* add shareContent group permission and minor hub group clean up ([#1194](#1194)) ([9a90b6d](9a90b6d))
* added default empty quotes for computeProps ([#1204](#1204)) ([3c83e4a](3c83e4a))
* auto-populating groups in project creation ([#1225](#1225)) ([0b9465f](0b9465f))
* checkPermission and checkPrivileges first check isAuthenticated ([#1227](#1227)) ([b292131](b292131))
* ensure featured content catalogs are returned as an array ([#1207](#1207)) ([d28b56f](d28b56f))
* properly deserialize trustedOrgs from context ([#1256](#1256)) ([760b4ff](760b4ff))
* **hub-common:** content location should be of type extent, not polygon ([#1228](#1228)) ([c5539f4](c5539f4))
* **hub-common:** fix fetchHubContent does not support slugs ([#1216](#1216)) ([d3a4eba](d3a4eba))
* **hub-common:** re-adds the discussion permissions to validPermissions array ([#1223](#1223)) ([9db7245](9db7245))
* **hub-common:** workspace route for content is /workspace/content/:id not /workspace/contents/:id ([#1250](#1250)) ([f2c6679](f2c6679))
* shouldClearEmptyFields now accounts for licenseInfo ([#1198](#1198)) ([3f4eb47](3f4eb47))
* uiSchema translation keys ([#1224](#1224)) ([a55292f](a55292f))
* **hub-discussions:** user can read channel if group is non-discussable ([#1201](#1201)) ([28d61f3](28d61f3))

### Features

* **hub-common:** adds followers group discussion settings on site wo… ([#1251](#1251)) ([e0beb59](e0beb59))
* Add Initiative and Project Associations ([#1213](#1213)) ([7cb0298](7cb0298))
* add invite users to hub group ([#1197](#1197)) ([014b2bd](014b2bd))
* add links hash for project, initiative, and group entities ([#1226](#1226)) ([aba8f7b](aba8f7b))
* add member role badges to user card model ([#1195](#1195)) ([e09608d](e09608d))
* add new polling util ([#1265](#1265)) ([e36c142](e36c142))
* add option to enrich an entity  ([#1220](#1220)) ([0b57ff5](0b57ff5))
* add supporting groups to sites property map ([#1205](#1205)) ([2d473d6](2d473d6))
* add workspaceRelative to enrichGroupSearchResult ([#1206](#1206)) ([f6d2016](f6d2016))
* addGroupMembers ([#1230](#1230)) ([3a7c900](3a7c900))
* adding license picker to content workspace ([#1192](#1192)) ([312b333](312b333))
* adds entity discussion settings ([#1221](#1221)) ([5e25a43](5e25a43))
* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
* collaborator pane for content workspace ([#1259](#1259)) ([e00e624](e00e624))
* initiative template entity ([#1229](#1229)) ([f5a995a](f5a995a))
* initiative template workspace ([#1246](#1246)) ([cb385e5](cb385e5))
* scaffold solution template entity ([#1253](#1253)) ([54d1fe6](54d1fe6))
* **hub-common:** add application type content edit link ([#1217](#1217)) ([82ceec4](82ceec4))
* **hub-common:** add blocked as a possible PostStatus ([#1222](#1222)) ([11c8a58](11c8a58))
* **hub-common:** add content settings schemas and derive props from server definitions ([#1209](#1209)) ([1721285](1721285))
* **hub-common:** add getResultSiteRelativeLink so Hub Page results can have slugs in siteRelative l ([#1200](#1200)) ([27e0740](27e0740))
* **hub-common:** add hub:[entity]:manage permission for all entities ([#1202](#1202)) ([71191b7](71191b7))
* **hub-discussions:** adding ability to update the groups of a channel ([#1218](#1218)) ([7bc2117](7bc2117))
* followers settings schema and behavior ([#1211](#1211)) ([a8be73b](a8be73b))
* item extent now selectable, savable, and reflects in old and new view ([#1212](#1212)) ([5dbe3bb](5dbe3bb))
* partnered orgs added to context ([#1214](#1214)) ([7979571](7979571))
* refactor entity schema implementation ([#1203](#1203)) ([88cdd2b](88cdd2b))
* **hub-common:** add unified "links" hash as an optional property for all entities ([#1199](#1199)) ([ba14502](ba14502))
github-actions bot pushed a commit that referenced this pull request Oct 8, 2023
# [14.1.0](https://github.com/Esri/hub.js/compare/@esri/[email protected]...@esri/[email protected]) (2023-10-08)

### Bug Fixes

* update groups link from teams to groups ([#1262](#1262)) ([26dd47a](26dd47a))
* **hub-discussions:** add author and editor to isearchchannels ([#1257](#1257)) ([5d22e8b](5d22e8b))
* account for index values that are 0 in card view models ([#1196](#1196)) ([bbc1928](bbc1928))
* add featured content to initiatives edit ([#1208](#1208)) ([a3f0361](a3f0361))
* add Project to wellKnownColletions ([#1254](#1254)) ([82eb6a1](82eb6a1))
* add shareContent group permission and minor hub group clean up ([#1194](#1194)) ([9a90b6d](9a90b6d))
* added default empty quotes for computeProps ([#1204](#1204)) ([3c83e4a](3c83e4a))
* auto-populating groups in project creation ([#1225](#1225)) ([0b9465f](0b9465f))
* checkPermission and checkPrivileges first check isAuthenticated ([#1227](#1227)) ([b292131](b292131))
* ensure featured content catalogs are returned as an array ([#1207](#1207)) ([d28b56f](d28b56f))
* properly deserialize trustedOrgs from context ([#1256](#1256)) ([760b4ff](760b4ff))
* **hub-common:** content location should be of type extent, not polygon ([#1228](#1228)) ([c5539f4](c5539f4))
* **hub-common:** fix fetchHubContent does not support slugs ([#1216](#1216)) ([d3a4eba](d3a4eba))
* **hub-common:** re-adds the discussion permissions to validPermissions array ([#1223](#1223)) ([9db7245](9db7245))
* **hub-common:** workspace route for content is /workspace/content/:id not /workspace/contents/:id ([#1250](#1250)) ([f2c6679](f2c6679))
* rollback stat migration ([#1193](#1193)) ([8465e15](8465e15))
* shouldClearEmptyFields now accounts for licenseInfo ([#1198](#1198)) ([3f4eb47](3f4eb47))
* uiSchema translation keys ([#1224](#1224)) ([a55292f](a55292f))
* **hub-discussions:** user can read channel if group is non-discussable ([#1201](#1201)) ([28d61f3](28d61f3))

### Features

* **hub-common:** adds followers group discussion settings on site wo… ([#1251](#1251)) ([e0beb59](e0beb59))
*  add feature and entity flagging into checkPermission ([#1187](#1187)) ([b040283](b040283))
* Add Initiative and Project Associations ([#1213](#1213)) ([7cb0298](7cb0298))
* add invite users to hub group ([#1197](#1197)) ([014b2bd](014b2bd))
* add links hash for project, initiative, and group entities ([#1226](#1226)) ([aba8f7b](aba8f7b))
* add member role badges to user card model ([#1195](#1195)) ([e09608d](e09608d))
* add new polling util ([#1265](#1265)) ([e36c142](e36c142))
* add option to enrich an entity  ([#1220](#1220)) ([0b57ff5](0b57ff5))
* add supporting groups to sites property map ([#1205](#1205)) ([2d473d6](2d473d6))
* add workspaceRelative to enrichGroupSearchResult ([#1206](#1206)) ([f6d2016](f6d2016))
* addGroupMembers ([#1230](#1230)) ([3a7c900](3a7c900))
* adding license picker to content workspace ([#1192](#1192)) ([312b333](312b333))
* adds entity discussion settings ([#1221](#1221)) ([5e25a43](5e25a43))
* adds getChannelUsersQuery method, bumps to @esri/arcgis-rest-port… ([#1210](#1210)) ([320d6d8](320d6d8))
* collaborator pane for content workspace ([#1259](#1259)) ([e00e624](e00e624))
* initiative template entity ([#1229](#1229)) ([f5a995a](f5a995a))
* initiative template workspace ([#1246](#1246)) ([cb385e5](cb385e5))
* scaffold solution template entity ([#1253](#1253)) ([54d1fe6](54d1fe6))
* **hub-common:** add application type content edit link ([#1217](#1217)) ([82ceec4](82ceec4))
* **hub-common:** add blocked as a possible PostStatus ([#1222](#1222)) ([11c8a58](11c8a58))
* **hub-common:** add content settings schemas and derive props from server definitions ([#1209](#1209)) ([1721285](1721285))
* **hub-common:** add getResultSiteRelativeLink so Hub Page results can have slugs in siteRelative l ([#1200](#1200)) ([27e0740](27e0740))
* **hub-common:** add hub:[entity]:manage permission for all entities ([#1202](#1202)) ([71191b7](71191b7))
* **hub-common:** add icon for Discussion content type ([#1185](#1185)) ([7ae927a](7ae927a))
* **hub-discussions:** adding ability to update the groups of a channel ([#1218](#1218)) ([7bc2117](7bc2117))
* followers settings schema and behavior ([#1211](#1211)) ([a8be73b](a8be73b))
* item extent now selectable, savable, and reflects in old and new view ([#1212](#1212)) ([5dbe3bb](5dbe3bb))
* partnered orgs added to context ([#1214](#1214)) ([7979571](7979571))
* refactor entity schema implementation ([#1203](#1203)) ([88cdd2b](88cdd2b))
* **hub-common:** add unified "links" hash as an optional property for all entities ([#1199](#1199)) ([ba14502](ba14502))
* site's followers pane permissions ([#1186](#1186)) ([90feec7](90feec7))
* ungate dashboard from projects ([#1188](#1188)) ([658b936](658b936))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Draft Draft PR or Issue (don't mark stale)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants