@esri/hub-common 15.41.4 → 15.43.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 (285) hide show
  1. package/dist/esm/ArcGISContextManager.js.map +1 -1
  2. package/dist/esm/associations/internal/getIncludesAndReferencesQuery.js.map +1 -1
  3. package/dist/esm/channels/HubChannel.js +173 -0
  4. package/dist/esm/channels/HubChannel.js.map +1 -0
  5. package/dist/esm/channels/_internal/ChannelBusinessRules.js +39 -0
  6. package/dist/esm/channels/_internal/ChannelBusinessRules.js.map +1 -0
  7. package/dist/esm/channels/_internal/ChannelSchema.js +198 -0
  8. package/dist/esm/channels/_internal/ChannelSchema.js.map +1 -0
  9. package/dist/esm/channels/_internal/ChannelUiSchemaCreate.js +288 -0
  10. package/dist/esm/channels/_internal/ChannelUiSchemaCreate.js.map +1 -0
  11. package/dist/esm/channels/_internal/ChannelUiSchemaEdit.js +20 -0
  12. package/dist/esm/channels/_internal/ChannelUiSchemaEdit.js.map +1 -0
  13. package/dist/esm/channels/_internal/buildDefaultChannel.js +26 -0
  14. package/dist/esm/channels/_internal/buildDefaultChannel.js.map +1 -0
  15. package/dist/esm/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js +49 -0
  16. package/dist/esm/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js.map +1 -0
  17. package/dist/esm/channels/_internal/transformChannelToEntity.js +61 -0
  18. package/dist/esm/channels/_internal/transformChannelToEntity.js.map +1 -0
  19. package/dist/esm/channels/_internal/transformEditorToEntity.js +22 -0
  20. package/dist/esm/channels/_internal/transformEditorToEntity.js.map +1 -0
  21. package/dist/esm/channels/_internal/transformEntityPermissionPoliciesToFormValues.js +150 -0
  22. package/dist/esm/channels/_internal/transformEntityPermissionPoliciesToFormValues.js.map +1 -0
  23. package/dist/esm/channels/_internal/transformEntityToChannelData.js +69 -0
  24. package/dist/esm/channels/_internal/transformEntityToChannelData.js.map +1 -0
  25. package/dist/esm/channels/_internal/transformEntityToEditor.js +20 -0
  26. package/dist/esm/channels/_internal/transformEntityToEditor.js.map +1 -0
  27. package/dist/esm/channels/_internal/transformFormValuesToEntityPermissionPolicies.js +55 -0
  28. package/dist/esm/channels/_internal/transformFormValuesToEntityPermissionPolicies.js.map +1 -0
  29. package/dist/esm/channels/edit.js +35 -0
  30. package/dist/esm/channels/edit.js.map +1 -0
  31. package/dist/esm/channels/fetch.js +14 -0
  32. package/dist/esm/channels/fetch.js.map +1 -0
  33. package/dist/esm/channels/index.js +4 -0
  34. package/dist/esm/channels/index.js.map +1 -0
  35. package/dist/esm/collections.js +2 -2
  36. package/dist/esm/collections.js.map +1 -1
  37. package/dist/esm/content/_internal/computeProps.js.map +1 -1
  38. package/dist/esm/core/EntityEditor.js +4 -0
  39. package/dist/esm/core/EntityEditor.js.map +1 -1
  40. package/dist/esm/core/catalogContains.js +5 -2
  41. package/dist/esm/core/catalogContains.js.map +1 -1
  42. package/dist/esm/core/deepCatalogContains.js.map +1 -1
  43. package/dist/esm/core/fetchHubEntity.js +4 -0
  44. package/dist/esm/core/fetchHubEntity.js.map +1 -1
  45. package/dist/esm/core/getTypeFromEntity.js +3 -0
  46. package/dist/esm/core/getTypeFromEntity.js.map +1 -1
  47. package/dist/esm/core/schemas/internal/events/EventGalleryCardUiSchema.js +1 -1
  48. package/dist/esm/core/schemas/internal/events/EventGalleryCardUiSchema.js.map +1 -1
  49. package/dist/esm/core/schemas/internal/getCardEditorSchemas.js +2 -0
  50. package/dist/esm/core/schemas/internal/getCardEditorSchemas.js.map +1 -1
  51. package/dist/esm/core/schemas/internal/getEditorSchemas.js +16 -0
  52. package/dist/esm/core/schemas/internal/getEditorSchemas.js.map +1 -1
  53. package/dist/esm/core/schemas/internal/getTagItems.js.map +1 -1
  54. package/dist/esm/core/schemas/types.js +2 -0
  55. package/dist/esm/core/schemas/types.js.map +1 -1
  56. package/dist/esm/core/types/HubEntityType.js +1 -0
  57. package/dist/esm/core/types/HubEntityType.js.map +1 -1
  58. package/dist/esm/core/types/IHubChannel.js +1 -0
  59. package/dist/esm/core/types/IHubChannel.js.map +1 -0
  60. package/dist/esm/core/types/index.js +1 -0
  61. package/dist/esm/core/types/index.js.map +1 -1
  62. package/dist/esm/discussions/_internal/computeProps.js.map +1 -1
  63. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  64. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  65. package/dist/esm/discussions/api/types.js.map +1 -1
  66. package/dist/esm/discussions/utils.js +3 -3
  67. package/dist/esm/discussions/utils.js.map +1 -1
  68. package/dist/esm/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.js +1 -1
  69. package/dist/esm/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.js.map +1 -1
  70. package/dist/esm/downloads/_internal/getDownloadFlow.js.map +1 -1
  71. package/dist/esm/downloads/getHubDownloadApiFormats.js.map +1 -1
  72. package/dist/esm/events/_internal/EventUiSchemaEdit.js.map +1 -1
  73. package/dist/esm/events/_internal/PropertyMapper.js.map +1 -1
  74. package/dist/esm/groups/HubGroups.js.map +1 -1
  75. package/dist/esm/groups/_internal/GroupUiSchemaCreateFollowers.js +0 -1
  76. package/dist/esm/groups/_internal/GroupUiSchemaCreateFollowers.js.map +1 -1
  77. package/dist/esm/groups/_internal/GroupUiSchemaSettings.js +0 -1
  78. package/dist/esm/groups/_internal/GroupUiSchemaSettings.js.map +1 -1
  79. package/dist/esm/index.js +1 -0
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/esm/initiative-templates/_internal/computeProps.js.map +1 -1
  82. package/dist/esm/initiative-templates/edit.js +1 -1
  83. package/dist/esm/initiative-templates/edit.js.map +1 -1
  84. package/dist/esm/initiative-templates/fetch.js +1 -1
  85. package/dist/esm/initiative-templates/fetch.js.map +1 -1
  86. package/dist/esm/initiatives/HubInitiative.js.map +1 -1
  87. package/dist/esm/initiatives/_internal/computeProps.js.map +1 -1
  88. package/dist/esm/models/index.js.map +1 -1
  89. package/dist/esm/objects/deepFilter.js.map +1 -1
  90. package/dist/esm/pages/HubPage.js +0 -1
  91. package/dist/esm/pages/HubPage.js.map +1 -1
  92. package/dist/esm/pages/_internal/computeProps.js.map +1 -1
  93. package/dist/esm/permissions/checkPermission.js +0 -1
  94. package/dist/esm/permissions/checkPermission.js.map +1 -1
  95. package/dist/esm/permissions/types/IEntityPermissionPolicy.js +13 -0
  96. package/dist/esm/permissions/types/IEntityPermissionPolicy.js.map +1 -1
  97. package/dist/esm/permissions/types/Permission.js +2 -0
  98. package/dist/esm/permissions/types/Permission.js.map +1 -1
  99. package/dist/esm/projects/HubProject.js.map +1 -1
  100. package/dist/esm/projects/_internal/computeProps.js.map +1 -1
  101. package/dist/esm/projects/edit.js.map +1 -1
  102. package/dist/esm/projects/fetch.js.map +1 -1
  103. package/dist/esm/resources/_internal/_validate-url-helpers.js +1 -1
  104. package/dist/esm/resources/_internal/_validate-url-helpers.js.map +1 -1
  105. package/dist/esm/search/Catalog.js.map +1 -1
  106. package/dist/esm/search/_internal/explainHelpers.js +2 -2
  107. package/dist/esm/search/_internal/explainHelpers.js.map +1 -1
  108. package/dist/esm/search/_internal/getEntityTypeFromType.js +1 -1
  109. package/dist/esm/search/_internal/getEntityTypeFromType.js.map +1 -1
  110. package/dist/esm/search/_internal/hubEventsHelpers/eventAttendeeToSearchResult.js.map +1 -1
  111. package/dist/esm/search/_internal/hubSearchChannels.js +5 -3
  112. package/dist/esm/search/_internal/hubSearchChannels.js.map +1 -1
  113. package/dist/esm/search/_internal/hubSearchEventAttendees.js.map +1 -1
  114. package/dist/esm/search/_internal/hubSearchEvents.js.map +1 -1
  115. package/dist/esm/search/explainQueryResult.js.map +1 -1
  116. package/dist/esm/search/negateGroupPredicates.js +1 -1
  117. package/dist/esm/search/negateGroupPredicates.js.map +1 -1
  118. package/dist/esm/sites/HubSites.js.map +1 -1
  119. package/dist/esm/sites/_internal/computeLinks.js.map +1 -1
  120. package/dist/esm/sites/_internal/computeProps.js.map +1 -1
  121. package/dist/esm/sites/feeds/getFeedTemplate.js.map +1 -1
  122. package/dist/esm/surveys/HubSurvey.js.map +1 -1
  123. package/dist/esm/surveys/_internal/computeProps.js.map +1 -1
  124. package/dist/esm/templates/_internal/computeProps.js.map +1 -1
  125. package/dist/esm/templates/edit.js.map +1 -1
  126. package/dist/esm/urls/getCardModelUrl.js.map +1 -1
  127. package/dist/esm/users/view.js +1 -1
  128. package/dist/esm/users/view.js.map +1 -1
  129. package/dist/esm/utils/asyncForEach.js.map +1 -1
  130. package/dist/node/ArcGISContextManager.js.map +1 -1
  131. package/dist/node/associations/internal/getIncludesAndReferencesQuery.js.map +1 -1
  132. package/dist/node/channels/HubChannel.js +177 -0
  133. package/dist/node/channels/HubChannel.js.map +1 -0
  134. package/dist/node/channels/_internal/ChannelBusinessRules.js +42 -0
  135. package/dist/node/channels/_internal/ChannelBusinessRules.js.map +1 -0
  136. package/dist/node/channels/_internal/ChannelSchema.js +201 -0
  137. package/dist/node/channels/_internal/ChannelSchema.js.map +1 -0
  138. package/dist/node/channels/_internal/ChannelUiSchemaCreate.js +291 -0
  139. package/dist/node/channels/_internal/ChannelUiSchemaCreate.js.map +1 -0
  140. package/dist/node/channels/_internal/ChannelUiSchemaEdit.js +23 -0
  141. package/dist/node/channels/_internal/ChannelUiSchemaEdit.js.map +1 -0
  142. package/dist/node/channels/_internal/buildDefaultChannel.js +30 -0
  143. package/dist/node/channels/_internal/buildDefaultChannel.js.map +1 -0
  144. package/dist/node/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js +52 -0
  145. package/dist/node/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js.map +1 -0
  146. package/dist/node/channels/_internal/transformChannelToEntity.js +65 -0
  147. package/dist/node/channels/_internal/transformChannelToEntity.js.map +1 -0
  148. package/dist/node/channels/_internal/transformEditorToEntity.js +26 -0
  149. package/dist/node/channels/_internal/transformEditorToEntity.js.map +1 -0
  150. package/dist/node/channels/_internal/transformEntityPermissionPoliciesToFormValues.js +153 -0
  151. package/dist/node/channels/_internal/transformEntityPermissionPoliciesToFormValues.js.map +1 -0
  152. package/dist/node/channels/_internal/transformEntityToChannelData.js +73 -0
  153. package/dist/node/channels/_internal/transformEntityToChannelData.js.map +1 -0
  154. package/dist/node/channels/_internal/transformEntityToEditor.js +24 -0
  155. package/dist/node/channels/_internal/transformEntityToEditor.js.map +1 -0
  156. package/dist/node/channels/_internal/transformFormValuesToEntityPermissionPolicies.js +59 -0
  157. package/dist/node/channels/_internal/transformFormValuesToEntityPermissionPolicies.js.map +1 -0
  158. package/dist/node/channels/edit.js +41 -0
  159. package/dist/node/channels/edit.js.map +1 -0
  160. package/dist/node/channels/fetch.js +18 -0
  161. package/dist/node/channels/fetch.js.map +1 -0
  162. package/dist/node/channels/index.js +7 -0
  163. package/dist/node/channels/index.js.map +1 -0
  164. package/dist/node/collections.js +2 -2
  165. package/dist/node/collections.js.map +1 -1
  166. package/dist/node/content/_internal/computeProps.js.map +1 -1
  167. package/dist/node/core/EntityEditor.js +4 -0
  168. package/dist/node/core/EntityEditor.js.map +1 -1
  169. package/dist/node/core/catalogContains.js +5 -2
  170. package/dist/node/core/catalogContains.js.map +1 -1
  171. package/dist/node/core/deepCatalogContains.js.map +1 -1
  172. package/dist/node/core/fetchHubEntity.js +4 -0
  173. package/dist/node/core/fetchHubEntity.js.map +1 -1
  174. package/dist/node/core/getTypeFromEntity.js +3 -0
  175. package/dist/node/core/getTypeFromEntity.js.map +1 -1
  176. package/dist/node/core/schemas/internal/events/EventGalleryCardUiSchema.js.map +1 -1
  177. package/dist/node/core/schemas/internal/getCardEditorSchemas.js +2 -0
  178. package/dist/node/core/schemas/internal/getCardEditorSchemas.js.map +1 -1
  179. package/dist/node/core/schemas/internal/getEditorSchemas.js +16 -0
  180. package/dist/node/core/schemas/internal/getEditorSchemas.js.map +1 -1
  181. package/dist/node/core/schemas/internal/getTagItems.js.map +1 -1
  182. package/dist/node/core/schemas/types.js +2 -0
  183. package/dist/node/core/schemas/types.js.map +1 -1
  184. package/dist/node/core/types/HubEntityType.js +1 -0
  185. package/dist/node/core/types/HubEntityType.js.map +1 -1
  186. package/dist/node/core/types/IHubChannel.js +3 -0
  187. package/dist/node/core/types/IHubChannel.js.map +1 -0
  188. package/dist/node/core/types/index.js +1 -0
  189. package/dist/node/core/types/index.js.map +1 -1
  190. package/dist/node/discussions/_internal/computeProps.js.map +1 -1
  191. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  192. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  193. package/dist/node/discussions/api/types.js.map +1 -1
  194. package/dist/node/discussions/utils.js +3 -3
  195. package/dist/node/discussions/utils.js.map +1 -1
  196. package/dist/node/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.js +1 -1
  197. package/dist/node/downloads/_internal/file-url-fetchers/fetchHubApiDownloadFile.js.map +1 -1
  198. package/dist/node/downloads/_internal/getDownloadFlow.js.map +1 -1
  199. package/dist/node/downloads/getHubDownloadApiFormats.js.map +1 -1
  200. package/dist/node/events/_internal/EventUiSchemaEdit.js.map +1 -1
  201. package/dist/node/events/_internal/PropertyMapper.js.map +1 -1
  202. package/dist/node/groups/HubGroups.js.map +1 -1
  203. package/dist/node/groups/_internal/GroupUiSchemaCreateFollowers.js +0 -1
  204. package/dist/node/groups/_internal/GroupUiSchemaCreateFollowers.js.map +1 -1
  205. package/dist/node/groups/_internal/GroupUiSchemaSettings.js +0 -1
  206. package/dist/node/groups/_internal/GroupUiSchemaSettings.js.map +1 -1
  207. package/dist/node/index.js +1 -0
  208. package/dist/node/index.js.map +1 -1
  209. package/dist/node/initiative-templates/_internal/computeProps.js.map +1 -1
  210. package/dist/node/initiative-templates/edit.js.map +1 -1
  211. package/dist/node/initiative-templates/fetch.js.map +1 -1
  212. package/dist/node/initiatives/HubInitiative.js.map +1 -1
  213. package/dist/node/initiatives/_internal/computeProps.js.map +1 -1
  214. package/dist/node/models/index.js.map +1 -1
  215. package/dist/node/objects/deepFilter.js.map +1 -1
  216. package/dist/node/pages/HubPage.js +0 -1
  217. package/dist/node/pages/HubPage.js.map +1 -1
  218. package/dist/node/pages/_internal/computeProps.js.map +1 -1
  219. package/dist/node/permissions/checkPermission.js +0 -1
  220. package/dist/node/permissions/checkPermission.js.map +1 -1
  221. package/dist/node/permissions/types/IEntityPermissionPolicy.js +14 -0
  222. package/dist/node/permissions/types/IEntityPermissionPolicy.js.map +1 -1
  223. package/dist/node/permissions/types/Permission.js +2 -0
  224. package/dist/node/permissions/types/Permission.js.map +1 -1
  225. package/dist/node/projects/HubProject.js.map +1 -1
  226. package/dist/node/projects/_internal/computeProps.js.map +1 -1
  227. package/dist/node/projects/edit.js.map +1 -1
  228. package/dist/node/projects/fetch.js.map +1 -1
  229. package/dist/node/resources/_internal/_validate-url-helpers.js +1 -1
  230. package/dist/node/resources/_internal/_validate-url-helpers.js.map +1 -1
  231. package/dist/node/search/Catalog.js.map +1 -1
  232. package/dist/node/search/_internal/explainHelpers.js +2 -2
  233. package/dist/node/search/_internal/explainHelpers.js.map +1 -1
  234. package/dist/node/search/_internal/getEntityTypeFromType.js +1 -1
  235. package/dist/node/search/_internal/getEntityTypeFromType.js.map +1 -1
  236. package/dist/node/search/_internal/hubEventsHelpers/eventAttendeeToSearchResult.js.map +1 -1
  237. package/dist/node/search/_internal/hubSearchChannels.js +4 -2
  238. package/dist/node/search/_internal/hubSearchChannels.js.map +1 -1
  239. package/dist/node/search/_internal/hubSearchEventAttendees.js.map +1 -1
  240. package/dist/node/search/_internal/hubSearchEvents.js.map +1 -1
  241. package/dist/node/search/explainQueryResult.js.map +1 -1
  242. package/dist/node/search/negateGroupPredicates.js +1 -1
  243. package/dist/node/search/negateGroupPredicates.js.map +1 -1
  244. package/dist/node/sites/HubSites.js.map +1 -1
  245. package/dist/node/sites/_internal/computeLinks.js.map +1 -1
  246. package/dist/node/sites/_internal/computeProps.js.map +1 -1
  247. package/dist/node/sites/feeds/getFeedTemplate.js.map +1 -1
  248. package/dist/node/surveys/HubSurvey.js.map +1 -1
  249. package/dist/node/surveys/_internal/computeProps.js.map +1 -1
  250. package/dist/node/templates/_internal/computeProps.js.map +1 -1
  251. package/dist/node/templates/edit.js.map +1 -1
  252. package/dist/node/urls/getCardModelUrl.js.map +1 -1
  253. package/dist/node/users/view.js +1 -1
  254. package/dist/node/users/view.js.map +1 -1
  255. package/dist/node/utils/asyncForEach.js.map +1 -1
  256. package/dist/types/channels/HubChannel.d.ts +105 -0
  257. package/dist/types/channels/_internal/ChannelBusinessRules.d.ts +19 -0
  258. package/dist/types/channels/_internal/ChannelSchema.d.ts +16 -0
  259. package/dist/types/channels/_internal/ChannelUiSchemaCreate.d.ts +10 -0
  260. package/dist/types/channels/_internal/ChannelUiSchemaEdit.d.ts +10 -0
  261. package/dist/types/channels/_internal/buildDefaultChannel.d.ts +8 -0
  262. package/dist/types/channels/_internal/transformAclPermissionToEntityPermissionPolicy.d.ts +11 -0
  263. package/dist/types/channels/_internal/transformChannelToEntity.d.ts +11 -0
  264. package/dist/types/channels/_internal/transformEditorToEntity.d.ts +8 -0
  265. package/dist/types/channels/_internal/transformEntityPermissionPoliciesToFormValues.d.ts +44 -0
  266. package/dist/types/channels/_internal/transformEntityToChannelData.d.ts +9 -0
  267. package/dist/types/channels/_internal/transformEntityToEditor.d.ts +9 -0
  268. package/dist/types/channels/_internal/transformFormValuesToEntityPermissionPolicies.d.ts +9 -0
  269. package/dist/types/channels/edit.d.ts +23 -0
  270. package/dist/types/channels/fetch.d.ts +9 -0
  271. package/dist/types/channels/index.d.ts +3 -0
  272. package/dist/types/content/_internal/internalContentUtils.d.ts +1 -1
  273. package/dist/types/content/get-family.d.ts +1 -1
  274. package/dist/types/core/EntityEditor.d.ts +1 -1
  275. package/dist/types/core/schemas/types.d.ts +2 -2
  276. package/dist/types/core/types/HubEntity.d.ts +3 -2
  277. package/dist/types/core/types/HubEntityType.d.ts +1 -1
  278. package/dist/types/core/types/IHubChannel.d.ts +91 -0
  279. package/dist/types/core/types/index.d.ts +1 -0
  280. package/dist/types/discussions/api/types.d.ts +4 -3
  281. package/dist/types/index.d.ts +1 -0
  282. package/dist/types/permissions/types/IEntityPermissionPolicy.d.ts +10 -2
  283. package/dist/types/permissions/types/Permission.d.ts +2 -1
  284. package/dist/types/utils/asyncForEach.d.ts +1 -1
  285. package/package.json +1 -1
@@ -0,0 +1,291 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildUiSchema = void 0;
4
+ const wellKnownCatalog_1 = require("../../search/wellKnownCatalog");
5
+ const constants_1 = require("../../discussions/constants");
6
+ const ChannelBusinessRules_1 = require("./ChannelBusinessRules");
7
+ /**
8
+ * @private
9
+ * constructs the complete create uiSchema for Hub Channels.
10
+ * This defines how the schema properties should be
11
+ * rendered in the channel editing experience
12
+ */
13
+ exports.buildUiSchema = async (i18nScope, _options, context) => {
14
+ const facet = {
15
+ label: `{{${i18nScope}.sections.group.picker.facets.label:translate}}`,
16
+ key: "groups",
17
+ display: "single-select",
18
+ operation: "OR",
19
+ options: [
20
+ {
21
+ label: `{{${i18nScope}.sections.group.picker.facets.myGroups.label:translate}}`,
22
+ key: "my-group",
23
+ selected: true,
24
+ predicates: [
25
+ {
26
+ owner: context.currentUser.username,
27
+ typekeywords: { not: constants_1.CANNOT_DISCUSS },
28
+ },
29
+ ],
30
+ },
31
+ {
32
+ label: `{{${i18nScope}.sections.group.picker.facets.myOrganization.label:translate}}`,
33
+ key: "my-organization",
34
+ selected: false,
35
+ predicates: [
36
+ {
37
+ orgid: context.currentUser.orgId,
38
+ searchUserAccess: "groupMember",
39
+ searchUserName: context.currentUser.username,
40
+ typekeywords: { not: constants_1.CANNOT_DISCUSS },
41
+ },
42
+ ],
43
+ },
44
+ ],
45
+ };
46
+ if (context.communityOrgId) {
47
+ facet.options.push({
48
+ label: `{{${i18nScope}.sections.group.picker.facets.myCommunity.label:translate}}`,
49
+ key: "my-community",
50
+ selected: false,
51
+ predicates: [
52
+ {
53
+ orgid: context.communityOrgId,
54
+ searchUserAccess: "groupMember",
55
+ searchUserName: context.currentUser.username,
56
+ typekeywords: { not: constants_1.CANNOT_DISCUSS },
57
+ },
58
+ ],
59
+ });
60
+ }
61
+ return {
62
+ type: "Layout",
63
+ elements: [
64
+ {
65
+ type: "Section",
66
+ labelKey: `${i18nScope}.sections.basicInfo.label`,
67
+ options: {
68
+ headerTag: "h3",
69
+ },
70
+ elements: [
71
+ {
72
+ labelKey: `${i18nScope}.fields.name.label`,
73
+ type: "Control",
74
+ scope: "/properties/name",
75
+ options: {
76
+ control: "hub-field-input-input",
77
+ messages: [
78
+ {
79
+ type: "ERROR",
80
+ keyword: "required",
81
+ icon: true,
82
+ labelKey: `${i18nScope}.fields.name.channelNameRequiredError`,
83
+ allowShowBeforeInteract: true,
84
+ },
85
+ ],
86
+ },
87
+ },
88
+ ],
89
+ },
90
+ {
91
+ type: "Section",
92
+ labelKey: `${i18nScope}.sections.settings.label`,
93
+ options: {
94
+ headerTag: "h3",
95
+ },
96
+ elements: [
97
+ {
98
+ type: "Control",
99
+ scope: "/properties/allowAsAnonymous",
100
+ labelKey: `${i18nScope}.fields.allowAsAnonymous.label`,
101
+ options: {
102
+ control: "hub-field-input-switch",
103
+ helperText: {
104
+ labelKey: `${i18nScope}.fields.allowAsAnonymous.helperText`,
105
+ },
106
+ },
107
+ },
108
+ {
109
+ type: "Control",
110
+ scope: "/properties/blockWords",
111
+ label: "Blocked words",
112
+ labelKey: `${i18nScope}.fields.blockWords.label`,
113
+ options: {
114
+ control: "hub-field-input-input",
115
+ type: "textarea",
116
+ helperText: {
117
+ labelKey: `${i18nScope}.fields.blockWords.helperText`,
118
+ },
119
+ messages: [
120
+ {
121
+ type: "ERROR",
122
+ keyword: "format",
123
+ icon: true,
124
+ labelKey: `${i18nScope}.fields.blockWords.formatError`,
125
+ },
126
+ ],
127
+ },
128
+ },
129
+ ],
130
+ },
131
+ {
132
+ type: "Section",
133
+ labelKey: `${i18nScope}.sections.permissions.label`,
134
+ options: {
135
+ headerTag: "h3",
136
+ },
137
+ elements: [
138
+ // {
139
+ // type: "Notice",
140
+ // options: {
141
+ // noticeId: "20250311-channel-permissions-info",
142
+ // },
143
+ // },
144
+ {
145
+ type: "Section",
146
+ labelKey: `${i18nScope}.sections.public.label`,
147
+ options: {
148
+ headerTag: "h4",
149
+ },
150
+ elements: [
151
+ {
152
+ type: "Control",
153
+ scope: "/properties/publicConfigs",
154
+ options: {
155
+ control: "hub-field-permissions",
156
+ roles: [
157
+ {
158
+ roleType: "anonymous",
159
+ description: `{{${i18nScope}.fields.public.anonymous.description:translate}}`,
160
+ label: `{{${i18nScope}.fields.public.anonymous.label:translate}}`,
161
+ permissionLabels: [
162
+ `{{${i18nScope}.sections.permissions.options.noAccess:translate}}`,
163
+ `{{${i18nScope}.sections.permissions.options.view:translate}}`,
164
+ ],
165
+ },
166
+ {
167
+ roleType: "authenticated",
168
+ description: `{{${i18nScope}.fields.public.authenticated.description:translate}}`,
169
+ label: `{{${i18nScope}.fields.public.authenticated.label:translate}}`,
170
+ permissionLabels: [
171
+ `{{${i18nScope}.sections.permissions.options.noAccess:translate}}`,
172
+ `{{${i18nScope}.sections.permissions.options.view:translate}}`,
173
+ `{{${i18nScope}.sections.permissions.options.participate:translate}}`,
174
+ ],
175
+ },
176
+ ],
177
+ },
178
+ },
179
+ ],
180
+ },
181
+ {
182
+ type: "Section",
183
+ labelKey: `${i18nScope}.sections.organization.label`,
184
+ options: {
185
+ headerTag: "h4",
186
+ variant: "variant-layout-editor",
187
+ },
188
+ elements: [
189
+ {
190
+ type: "Control",
191
+ scope: "/properties/orgConfigs",
192
+ options: {
193
+ control: "hub-field-permissions",
194
+ roles: [
195
+ {
196
+ roleType: "member",
197
+ description: `{{${i18nScope}.fields.organization.member.description:translate}}`,
198
+ label: `{{${i18nScope}.fields.organization.member.label:translate}}`,
199
+ permissionLabels: [
200
+ `{{${i18nScope}.sections.permissions.options.noAccess:translate}}`,
201
+ `{{${i18nScope}.sections.permissions.options.view:translate}}`,
202
+ `{{${i18nScope}.sections.permissions.options.participate:translate}}`,
203
+ ],
204
+ },
205
+ {
206
+ roleType: "admin",
207
+ description: `{{${i18nScope}.fields.organization.admin.description:translate}}`,
208
+ label: `{{${i18nScope}.fields.organization.admin.label:translate}}`,
209
+ disabled: true,
210
+ permissionLabels: [
211
+ `{{${i18nScope}.sections.permissions.options.owner:translate}}`,
212
+ ],
213
+ },
214
+ ],
215
+ },
216
+ },
217
+ ],
218
+ },
219
+ {
220
+ type: "Section",
221
+ labelKey: `${i18nScope}.sections.group.label`,
222
+ options: {
223
+ headerTag: "h4",
224
+ variant: "variant-layout-editor",
225
+ },
226
+ elements: [
227
+ {
228
+ type: "Control",
229
+ scope: "/properties/groupConfigs",
230
+ options: {
231
+ control: "hub-field-permissions",
232
+ actions: [
233
+ {
234
+ label: `{{${i18nScope}.sections.group.picker.button:translate}}`,
235
+ type: "add",
236
+ options: {
237
+ label: `{{${i18nScope}.sections.group.picker.title:translate}}`,
238
+ entityType: "group",
239
+ catalogs: [
240
+ wellKnownCatalog_1.getWellKnownCatalog(i18nScope, "allGroups", "group", {
241
+ user: context.currentUser,
242
+ }),
243
+ ],
244
+ facets: [facet],
245
+ defaultValues: {
246
+ member: ChannelBusinessRules_1.ChannelNonePermission,
247
+ admin: ChannelBusinessRules_1.ChannelNonePermission,
248
+ },
249
+ },
250
+ },
251
+ {
252
+ ariaLabel: `{{${i18nScope}.sections.group.remove.button:translate}}`,
253
+ buttonStyle: "outline",
254
+ buttonKind: "neutral",
255
+ type: "remove",
256
+ icon: "x",
257
+ },
258
+ ],
259
+ roles: [
260
+ {
261
+ roleType: "member",
262
+ description: `{{${i18nScope}.fields.group.member.description:translate}}`,
263
+ label: `{{${i18nScope}.fields.group.member.label:translate}}`,
264
+ permissionLabels: [
265
+ `{{${i18nScope}.sections.permissions.options.noAccess:translate}}`,
266
+ `{{${i18nScope}.sections.permissions.options.view:translate}}`,
267
+ `{{${i18nScope}.sections.permissions.options.participate:translate}}`,
268
+ ],
269
+ },
270
+ {
271
+ roleType: "admin",
272
+ description: `{{${i18nScope}.fields.group.admin.description:translate}}`,
273
+ label: `{{${i18nScope}.fields.group.admin.label:translate}}`,
274
+ permissionLabels: [
275
+ `{{${i18nScope}.sections.permissions.options.noAccess:translate}}`,
276
+ `{{${i18nScope}.sections.permissions.options.view:translate}}`,
277
+ `{{${i18nScope}.sections.permissions.options.participate:translate}}`,
278
+ `{{${i18nScope}.sections.permissions.options.manage:translate}}`,
279
+ ],
280
+ },
281
+ ],
282
+ },
283
+ },
284
+ ],
285
+ },
286
+ ],
287
+ },
288
+ ],
289
+ };
290
+ };
291
+ //# sourceMappingURL=ChannelUiSchemaCreate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelUiSchemaCreate.js","sourceRoot":"","sources":["../../../../src/channels/_internal/ChannelUiSchemaCreate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildUiSchema = void 0;
4
+ const ChannelUiSchemaCreate_1 = require("./ChannelUiSchemaCreate");
5
+ /**
6
+ * @private
7
+ * constructs the complete edit uiSchema for Hub Channels.
8
+ * This defines how the schema properties should be
9
+ * rendered in the channel editing experience
10
+ */
11
+ exports.buildUiSchema = async (i18nScope, options, context) => {
12
+ const uiSchema = await ChannelUiSchemaCreate_1.buildUiSchema(i18nScope, options, context);
13
+ if (options.canEdit) {
14
+ uiSchema.elements.splice(0, 0, {
15
+ type: "Notice",
16
+ options: {
17
+ noticeId: "20250311-channel-edit-warning",
18
+ },
19
+ });
20
+ }
21
+ return uiSchema;
22
+ };
23
+ //# sourceMappingURL=ChannelUiSchemaEdit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelUiSchemaEdit.js","sourceRoot":"","sources":["../../../../src/channels/_internal/ChannelUiSchemaEdit.ts"],"names":[],"mappings":";;;AAGA,mEAA+E;AAE/E;;;;;GAKG;AACU,QAAA,aAAa,GAAG,KAAK,EAChC,SAAiB,EACjB,OAA6B,EAC7B,OAAuB,EACH,EAAE;IACtB,MAAM,QAAQ,GAAG,MAAM,qCAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACxE,IAAI,OAAO,CAAC,OAAO,EAAE;QACnB,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;YAC7B,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,QAAQ,EAAE,+BAA+B;aAC1C;SACF,CAAC,CAAC;KACJ;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildDefaultChannel = void 0;
4
+ const types_1 = require("../../discussions/api/types");
5
+ const transformAclPermissionToEntityPermissionPolicy_1 = require("./transformAclPermissionToEntityPermissionPolicy");
6
+ /**
7
+ * @private
8
+ * Builds a partial IHubChannel object with default values
9
+ * @param orgId the currently authenticated user's orgId
10
+ * @returns a partial IHubChannel object
11
+ */
12
+ function buildDefaultChannel(orgId) {
13
+ return {
14
+ name: "",
15
+ blockWords: [],
16
+ allowAsAnonymous: false,
17
+ canEdit: true,
18
+ canDelete: true,
19
+ permissions: [
20
+ transformAclPermissionToEntityPermissionPolicy_1.transformAclPermissionToEntityPermissionPolicy({
21
+ category: types_1.AclCategory.ORG,
22
+ subCategory: types_1.AclSubCategory.ADMIN,
23
+ role: types_1.Role.OWNER,
24
+ key: orgId,
25
+ }),
26
+ ],
27
+ };
28
+ }
29
+ exports.buildDefaultChannel = buildDefaultChannel;
30
+ //# sourceMappingURL=buildDefaultChannel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildDefaultChannel.js","sourceRoot":"","sources":["../../../../src/channels/_internal/buildDefaultChannel.ts"],"names":[],"mappings":";;;AACA,uDAAgF;AAChF,qHAAkH;AAElH;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAa;IAC/C,OAAO;QACL,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE;QACd,gBAAgB,EAAE,KAAK;QACvB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EAAE;YACX,+FAA8C,CAAC;gBAC7C,QAAQ,EAAE,mBAAW,CAAC,GAAG;gBACzB,WAAW,EAAE,sBAAc,CAAC,KAAK;gBACjC,IAAI,EAAE,YAAI,CAAC,KAAK;gBAChB,GAAG,EAAE,KAAK;aACX,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAhBD,kDAgBC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformAclPermissionToEntityPermissionPolicy = void 0;
4
+ const IEntityPermissionPolicy_1 = require("../../permissions/types/IEntityPermissionPolicy");
5
+ const ChannelBusinessRules_1 = require("./ChannelBusinessRules");
6
+ const types_1 = require("../../discussions/api/types");
7
+ const ROLE_TO_PERMISSION_MAP = {
8
+ [types_1.Role.READ]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
9
+ [types_1.Role.WRITE]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelWrite,
10
+ [types_1.Role.READWRITE]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
11
+ [types_1.Role.MODERATE]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelModerate,
12
+ [types_1.Role.MANAGE]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelManage,
13
+ [types_1.Role.OWNER]: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelOwner,
14
+ };
15
+ /**
16
+ * @private
17
+ * Transforms an IChannelAclPermission-like object to an IEntityPermissionPolicy object
18
+ * @param channelAclPermission An IChannelAclPermission-like object
19
+ * @returns an IEntityPermissionPolicy object
20
+ */
21
+ exports.transformAclPermissionToEntityPermissionPolicy = (channelAclPermission) => {
22
+ const permission = ROLE_TO_PERMISSION_MAP[channelAclPermission.role];
23
+ let collaborationType;
24
+ if (channelAclPermission.category === types_1.AclCategory.ANONYMOUS_USER) {
25
+ collaborationType = IEntityPermissionPolicy_1.COLLABORATION_TYPES.anonymous;
26
+ }
27
+ else if (channelAclPermission.category === types_1.AclCategory.AUTHENTICATED_USER) {
28
+ collaborationType = IEntityPermissionPolicy_1.COLLABORATION_TYPES.authenticated;
29
+ }
30
+ else if (channelAclPermission.category === types_1.AclCategory.GROUP) {
31
+ collaborationType =
32
+ channelAclPermission.subCategory === types_1.AclSubCategory.ADMIN
33
+ ? IEntityPermissionPolicy_1.COLLABORATION_TYPES.groupAdmin
34
+ : IEntityPermissionPolicy_1.COLLABORATION_TYPES.group;
35
+ }
36
+ else if (channelAclPermission.category === types_1.AclCategory.ORG) {
37
+ collaborationType =
38
+ channelAclPermission.subCategory === types_1.AclSubCategory.ADMIN
39
+ ? IEntityPermissionPolicy_1.COLLABORATION_TYPES.orgAdmin
40
+ : IEntityPermissionPolicy_1.COLLABORATION_TYPES.org;
41
+ }
42
+ else {
43
+ collaborationType = IEntityPermissionPolicy_1.COLLABORATION_TYPES.user;
44
+ }
45
+ return {
46
+ permission,
47
+ collaborationId: channelAclPermission.key || null,
48
+ collaborationType,
49
+ id: channelAclPermission.id || null,
50
+ };
51
+ };
52
+ //# sourceMappingURL=transformAclPermissionToEntityPermissionPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformAclPermissionToEntityPermissionPolicy.js","sourceRoot":"","sources":["../../../../src/channels/_internal/transformAclPermissionToEntityPermissionPolicy.ts"],"names":[],"mappings":";;;AAAA,6FAIyD;AACzD,iEAA6D;AAC7D,uDAKqC;AAErC,MAAM,sBAAsB,GAAG;IAC7B,CAAC,YAAI,CAAC,IAAI,CAAC,EAAE,0CAAmB,CAAC,WAAW;IAC5C,CAAC,YAAI,CAAC,KAAK,CAAC,EAAE,0CAAmB,CAAC,YAAY;IAC9C,CAAC,YAAI,CAAC,SAAS,CAAC,EAAE,0CAAmB,CAAC,gBAAgB;IACtD,CAAC,YAAI,CAAC,QAAQ,CAAC,EAAE,0CAAmB,CAAC,eAAe;IACpD,CAAC,YAAI,CAAC,MAAM,CAAC,EAAE,0CAAmB,CAAC,aAAa;IAChD,CAAC,YAAI,CAAC,KAAK,CAAC,EAAE,0CAAmB,CAAC,YAAY;CAC/C,CAAC;AAEF;;;;;GAKG;AACU,QAAA,8CAA8C,GAAG,CAC5D,oBAAuE,EAC9C,EAAE;IAC3B,MAAM,UAAU,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,iBAAoC,CAAC;IACzC,IAAI,oBAAoB,CAAC,QAAQ,KAAK,mBAAW,CAAC,cAAc,EAAE;QAChE,iBAAiB,GAAG,6CAAmB,CAAC,SAAS,CAAC;KACnD;SAAM,IAAI,oBAAoB,CAAC,QAAQ,KAAK,mBAAW,CAAC,kBAAkB,EAAE;QAC3E,iBAAiB,GAAG,6CAAmB,CAAC,aAAa,CAAC;KACvD;SAAM,IAAI,oBAAoB,CAAC,QAAQ,KAAK,mBAAW,CAAC,KAAK,EAAE;QAC9D,iBAAiB;YACf,oBAAoB,CAAC,WAAW,KAAK,sBAAc,CAAC,KAAK;gBACvD,CAAC,CAAC,6CAAmB,CAAC,UAAU;gBAChC,CAAC,CAAC,6CAAmB,CAAC,KAAK,CAAC;KACjC;SAAM,IAAI,oBAAoB,CAAC,QAAQ,KAAK,mBAAW,CAAC,GAAG,EAAE;QAC5D,iBAAiB;YACf,oBAAoB,CAAC,WAAW,KAAK,sBAAc,CAAC,KAAK;gBACvD,CAAC,CAAC,6CAAmB,CAAC,QAAQ;gBAC9B,CAAC,CAAC,6CAAmB,CAAC,GAAG,CAAC;KAC/B;SAAM;QACL,iBAAiB,GAAG,6CAAmB,CAAC,IAAI,CAAC;KAC9C;IACD,OAAO;QACL,UAAU;QACV,eAAe,EAAE,oBAAoB,CAAC,GAAG,IAAI,IAAI;QACjD,iBAAiB;QACjB,EAAE,EAAE,oBAAoB,CAAC,EAAE,IAAI,IAAI;KACpC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformChannelToEntity = void 0;
4
+ const channels_1 = require("../../discussions/api/utils/channels");
5
+ const transformAclPermissionToEntityPermissionPolicy_1 = require("./transformAclPermissionToEntityPermissionPolicy");
6
+ /**
7
+ * @private
8
+ * Transforms a given IChannel object to an IHubChannel object
9
+ * @param channel An IChannel object
10
+ * @param user The currently authenticated user
11
+ * @returns an IHubChannel object
12
+ */
13
+ function transformChannelToEntity(channel, user) {
14
+ return {
15
+ access: channel.access,
16
+ id: channel.id,
17
+ name: channel.name,
18
+ createdDate: new Date(channel.createdAt),
19
+ createdDateSource: "channel.createdAt",
20
+ updatedDate: new Date(channel.updatedAt),
21
+ updatedDateSource: "channel.updatedAt",
22
+ type: "Channel",
23
+ source: channel.creator,
24
+ links: {
25
+ thumbnail: null,
26
+ self: null,
27
+ siteRelative: null,
28
+ siteRelativeEntityType: null,
29
+ workspaceRelative: null,
30
+ layoutRelative: null,
31
+ },
32
+ blockWords: channel.blockWords,
33
+ permissions: channel.channelAcl.map((channelAclPermission) => transformAclPermissionToEntityPermissionPolicy_1.transformAclPermissionToEntityPermissionPolicy(channelAclPermission)),
34
+ allowAsAnonymous: channel.allowAsAnonymous,
35
+ // TODO: verify w/ Jeremy if the 3rd param is right...
36
+ canEdit: channels_1.canEditChannelV2(channel, user, channel),
37
+ canDelete: channels_1.canDeleteChannelV2(channel, user),
38
+ orgId: channel.orgId,
39
+ owner: channel.creator,
40
+ channel,
41
+ // these don't apply to channels, yet they have to be defined or builds fail in hub-common:
42
+ // - packages/common/src/associations/breakAssociation.ts
43
+ // - packages/common/src/associations/requestAssociation.ts
44
+ // - packages/common/src/content/_internal/ContentUiSchemaSettings.ts
45
+ // - packages/common/src/templates/_internal/TemplateUiSchemaEdit.ts
46
+ // the above are implemented in such a way that they assume every HubEntity has the below members...
47
+ // those fns should be refactored to code to abstractions rather than concretions,
48
+ // i.e. trait interfaces that define the properties that the source depends on
49
+ typeKeywords: [],
50
+ thumbnail: undefined,
51
+ // these don't apply to channels, yet they have to be defined or builds fail in hub-components:
52
+ // - packages/hub-components/src/utils/cardModelConverters/internal/utils.ts
53
+ // - packages/hub-components/src/components/arcgis-hub-entity-view/about-components/arcgis-hub-entity-about/arcgis-hub-entity-about.tsx
54
+ // - packages/hub-components/src/components/arcgis-hub-entity-view/hero-components/arcgis-hub-entity-hero/arcgis-hub-entity-hero.tsx
55
+ // the above components are implemented in such a way that they assume every HubEntity has the below members...
56
+ // those components should be rafactored to code to abstractions rather than concretions,
57
+ // i.e. trait interfaces that define the properties that the source depends on
58
+ view: undefined,
59
+ description: undefined,
60
+ location: undefined,
61
+ tags: [],
62
+ };
63
+ }
64
+ exports.transformChannelToEntity = transformChannelToEntity;
65
+ //# sourceMappingURL=transformChannelToEntity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformChannelToEntity.js","sourceRoot":"","sources":["../../../../src/channels/_internal/transformChannelToEntity.ts"],"names":[],"mappings":";;;AACA,mEAG8C;AAG9C,qHAAkH;AAElH;;;;;;GAMG;AACH,SAAgB,wBAAwB,CACtC,OAAiB,EACjB,IAAW;IAEX,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACxC,iBAAiB,EAAE,mBAAmB;QACtC,WAAW,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACxC,iBAAiB,EAAE,mBAAmB;QACtC,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,OAAO,CAAC,OAAO;QACvB,KAAK,EAAE;YACL,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,IAAI;YACV,YAAY,EAAE,IAAI;YAClB,sBAAsB,EAAE,IAAI;YAC5B,iBAAiB,EAAE,IAAI;YACvB,cAAc,EAAE,IAAI;SACrB;QACD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,oBAAoB,EAAE,EAAE,CAC3D,+FAA8C,CAAC,oBAAoB,CAAC,CACrE;QACD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,sDAAsD;QACtD,OAAO,EAAE,2BAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;QACjD,SAAS,EAAE,6BAAkB,CAAC,OAAO,EAAE,IAAI,CAAC;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,OAAO;QACtB,OAAO;QAEP,2FAA2F;QAC3F,2DAA2D;QAC3D,6DAA6D;QAC7D,uEAAuE;QACvE,sEAAsE;QACtE,oGAAoG;QACpG,kFAAkF;QAClF,8EAA8E;QAC9E,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,SAAS;QAEpB,+FAA+F;QAC/F,8EAA8E;QAC9E,yIAAyI;QACzI,sIAAsI;QACtI,+GAA+G;QAC/G,yFAAyF;QACzF,8EAA8E;QAC9E,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,SAAS;QACtB,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC;AAzDD,4DAyDC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformEditorToEntity = void 0;
4
+ const transformFormValuesToEntityPermissionPolicies_1 = require("./transformFormValuesToEntityPermissionPolicies");
5
+ /**
6
+ * @private
7
+ * Transforms an IHubChannelEditor object to a partial IHubChannel object
8
+ * @param editor an IHubChannelEditor object
9
+ * @returns a partial IHubChannel object
10
+ */
11
+ function transformEditorToEntity(editor) {
12
+ const permissionValues = [
13
+ ...editor.publicConfigs,
14
+ ...editor.orgConfigs,
15
+ ...editor.groupConfigs,
16
+ ...editor.userConfigs,
17
+ ];
18
+ return {
19
+ name: editor.name,
20
+ blockWords: editor.blockWords.split(",").map((val) => val.trim()),
21
+ allowAsAnonymous: editor.allowAsAnonymous,
22
+ permissions: transformFormValuesToEntityPermissionPolicies_1.transformFormValuesToEntityPermissionPolicies(permissionValues),
23
+ };
24
+ }
25
+ exports.transformEditorToEntity = transformEditorToEntity;
26
+ //# sourceMappingURL=transformEditorToEntity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformEditorToEntity.js","sourceRoot":"","sources":["../../../../src/channels/_internal/transformEditorToEntity.ts"],"names":[],"mappings":";;;AACA,mHAAgH;AAEhH;;;;;GAKG;AACH,SAAgB,uBAAuB,CACrC,MAAyB;IAEzB,MAAM,gBAAgB,GAAG;QACvB,GAAG,MAAM,CAAC,aAAa;QACvB,GAAG,MAAM,CAAC,UAAU;QACpB,GAAG,MAAM,CAAC,YAAY;QACtB,GAAG,MAAM,CAAC,WAAW;KACtB,CAAC;IACF,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACjE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,WAAW,EACT,6FAA6C,CAAC,gBAAgB,CAAC;KAClE,CAAC;AACJ,CAAC;AAhBD,0DAgBC"}