@esri/hub-common 15.41.3 → 15.42.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 (156) hide show
  1. package/dist/esm/channels/HubChannel.js +173 -0
  2. package/dist/esm/channels/HubChannel.js.map +1 -0
  3. package/dist/esm/channels/_internal/ChannelBusinessRules.js +39 -0
  4. package/dist/esm/channels/_internal/ChannelBusinessRules.js.map +1 -0
  5. package/dist/esm/channels/_internal/ChannelSchema.js +198 -0
  6. package/dist/esm/channels/_internal/ChannelSchema.js.map +1 -0
  7. package/dist/esm/channels/_internal/ChannelUiSchemaCreate.js +288 -0
  8. package/dist/esm/channels/_internal/ChannelUiSchemaCreate.js.map +1 -0
  9. package/dist/esm/channels/_internal/ChannelUiSchemaEdit.js +20 -0
  10. package/dist/esm/channels/_internal/ChannelUiSchemaEdit.js.map +1 -0
  11. package/dist/esm/channels/_internal/buildDefaultChannel.js +26 -0
  12. package/dist/esm/channels/_internal/buildDefaultChannel.js.map +1 -0
  13. package/dist/esm/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js +49 -0
  14. package/dist/esm/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js.map +1 -0
  15. package/dist/esm/channels/_internal/transformChannelToEntity.js +61 -0
  16. package/dist/esm/channels/_internal/transformChannelToEntity.js.map +1 -0
  17. package/dist/esm/channels/_internal/transformEditorToEntity.js +22 -0
  18. package/dist/esm/channels/_internal/transformEditorToEntity.js.map +1 -0
  19. package/dist/esm/channels/_internal/transformEntityPermissionPoliciesToFormValues.js +164 -0
  20. package/dist/esm/channels/_internal/transformEntityPermissionPoliciesToFormValues.js.map +1 -0
  21. package/dist/esm/channels/_internal/transformEntityToChannelData.js +69 -0
  22. package/dist/esm/channels/_internal/transformEntityToChannelData.js.map +1 -0
  23. package/dist/esm/channels/_internal/transformEntityToEditor.js +20 -0
  24. package/dist/esm/channels/_internal/transformEntityToEditor.js.map +1 -0
  25. package/dist/esm/channels/_internal/transformFormValuesToEntityPermissionPolicies.js +68 -0
  26. package/dist/esm/channels/_internal/transformFormValuesToEntityPermissionPolicies.js.map +1 -0
  27. package/dist/esm/channels/edit.js +35 -0
  28. package/dist/esm/channels/edit.js.map +1 -0
  29. package/dist/esm/channels/fetch.js +14 -0
  30. package/dist/esm/channels/fetch.js.map +1 -0
  31. package/dist/esm/channels/index.js +4 -0
  32. package/dist/esm/channels/index.js.map +1 -0
  33. package/dist/esm/core/EntityEditor.js +4 -0
  34. package/dist/esm/core/EntityEditor.js.map +1 -1
  35. package/dist/esm/core/fetchHubEntity.js +4 -0
  36. package/dist/esm/core/fetchHubEntity.js.map +1 -1
  37. package/dist/esm/core/getTypeFromEntity.js +3 -0
  38. package/dist/esm/core/getTypeFromEntity.js.map +1 -1
  39. package/dist/esm/core/schemas/internal/getEditorSchemas.js +16 -0
  40. package/dist/esm/core/schemas/internal/getEditorSchemas.js.map +1 -1
  41. package/dist/esm/core/schemas/shared/CatalogSchema.js +2 -0
  42. package/dist/esm/core/schemas/shared/CatalogSchema.js.map +1 -1
  43. package/dist/esm/core/schemas/types.js +2 -0
  44. package/dist/esm/core/schemas/types.js.map +1 -1
  45. package/dist/esm/core/types/HubEntityType.js +1 -0
  46. package/dist/esm/core/types/HubEntityType.js.map +1 -1
  47. package/dist/esm/core/types/IHubChannel.js +1 -0
  48. package/dist/esm/core/types/IHubChannel.js.map +1 -0
  49. package/dist/esm/core/types/index.js +1 -0
  50. package/dist/esm/core/types/index.js.map +1 -1
  51. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  52. package/dist/esm/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  53. package/dist/esm/discussions/utils.js +3 -3
  54. package/dist/esm/discussions/utils.js.map +1 -1
  55. package/dist/esm/index.js +1 -0
  56. package/dist/esm/index.js.map +1 -1
  57. package/dist/esm/permissions/types/IEntityPermissionPolicy.js +13 -0
  58. package/dist/esm/permissions/types/IEntityPermissionPolicy.js.map +1 -1
  59. package/dist/esm/permissions/types/Permission.js +2 -0
  60. package/dist/esm/permissions/types/Permission.js.map +1 -1
  61. package/dist/esm/search/_internal/getEntityTypeFromType.js +1 -1
  62. package/dist/esm/search/_internal/getEntityTypeFromType.js.map +1 -1
  63. package/dist/esm/search/_internal/hubSearchChannels.js +5 -3
  64. package/dist/esm/search/_internal/hubSearchChannels.js.map +1 -1
  65. package/dist/node/channels/HubChannel.js +177 -0
  66. package/dist/node/channels/HubChannel.js.map +1 -0
  67. package/dist/node/channels/_internal/ChannelBusinessRules.js +42 -0
  68. package/dist/node/channels/_internal/ChannelBusinessRules.js.map +1 -0
  69. package/dist/node/channels/_internal/ChannelSchema.js +201 -0
  70. package/dist/node/channels/_internal/ChannelSchema.js.map +1 -0
  71. package/dist/node/channels/_internal/ChannelUiSchemaCreate.js +291 -0
  72. package/dist/node/channels/_internal/ChannelUiSchemaCreate.js.map +1 -0
  73. package/dist/node/channels/_internal/ChannelUiSchemaEdit.js +23 -0
  74. package/dist/node/channels/_internal/ChannelUiSchemaEdit.js.map +1 -0
  75. package/dist/node/channels/_internal/buildDefaultChannel.js +30 -0
  76. package/dist/node/channels/_internal/buildDefaultChannel.js.map +1 -0
  77. package/dist/node/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js +52 -0
  78. package/dist/node/channels/_internal/transformAclPermissionToEntityPermissionPolicy.js.map +1 -0
  79. package/dist/node/channels/_internal/transformChannelToEntity.js +65 -0
  80. package/dist/node/channels/_internal/transformChannelToEntity.js.map +1 -0
  81. package/dist/node/channels/_internal/transformEditorToEntity.js +26 -0
  82. package/dist/node/channels/_internal/transformEditorToEntity.js.map +1 -0
  83. package/dist/node/channels/_internal/transformEntityPermissionPoliciesToFormValues.js +167 -0
  84. package/dist/node/channels/_internal/transformEntityPermissionPoliciesToFormValues.js.map +1 -0
  85. package/dist/node/channels/_internal/transformEntityToChannelData.js +73 -0
  86. package/dist/node/channels/_internal/transformEntityToChannelData.js.map +1 -0
  87. package/dist/node/channels/_internal/transformEntityToEditor.js +24 -0
  88. package/dist/node/channels/_internal/transformEntityToEditor.js.map +1 -0
  89. package/dist/node/channels/_internal/transformFormValuesToEntityPermissionPolicies.js +72 -0
  90. package/dist/node/channels/_internal/transformFormValuesToEntityPermissionPolicies.js.map +1 -0
  91. package/dist/node/channels/edit.js +41 -0
  92. package/dist/node/channels/edit.js.map +1 -0
  93. package/dist/node/channels/fetch.js +18 -0
  94. package/dist/node/channels/fetch.js.map +1 -0
  95. package/dist/node/channels/index.js +7 -0
  96. package/dist/node/channels/index.js.map +1 -0
  97. package/dist/node/core/EntityEditor.js +4 -0
  98. package/dist/node/core/EntityEditor.js.map +1 -1
  99. package/dist/node/core/fetchHubEntity.js +4 -0
  100. package/dist/node/core/fetchHubEntity.js.map +1 -1
  101. package/dist/node/core/getTypeFromEntity.js +3 -0
  102. package/dist/node/core/getTypeFromEntity.js.map +1 -1
  103. package/dist/node/core/schemas/internal/getEditorSchemas.js +16 -0
  104. package/dist/node/core/schemas/internal/getEditorSchemas.js.map +1 -1
  105. package/dist/node/core/schemas/shared/CatalogSchema.js +2 -0
  106. package/dist/node/core/schemas/shared/CatalogSchema.js.map +1 -1
  107. package/dist/node/core/schemas/types.js +2 -0
  108. package/dist/node/core/schemas/types.js.map +1 -1
  109. package/dist/node/core/types/HubEntityType.js +1 -0
  110. package/dist/node/core/types/HubEntityType.js.map +1 -1
  111. package/dist/node/core/types/IHubChannel.js +3 -0
  112. package/dist/node/core/types/IHubChannel.js.map +1 -0
  113. package/dist/node/core/types/index.js +1 -0
  114. package/dist/node/core/types/index.js.map +1 -1
  115. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js +1 -0
  116. package/dist/node/discussions/api/settings/getDefaultEntitySettings.js.map +1 -1
  117. package/dist/node/discussions/utils.js +3 -3
  118. package/dist/node/discussions/utils.js.map +1 -1
  119. package/dist/node/index.js +1 -0
  120. package/dist/node/index.js.map +1 -1
  121. package/dist/node/permissions/types/IEntityPermissionPolicy.js +14 -0
  122. package/dist/node/permissions/types/IEntityPermissionPolicy.js.map +1 -1
  123. package/dist/node/permissions/types/Permission.js +2 -0
  124. package/dist/node/permissions/types/Permission.js.map +1 -1
  125. package/dist/node/search/_internal/getEntityTypeFromType.js +1 -1
  126. package/dist/node/search/_internal/getEntityTypeFromType.js.map +1 -1
  127. package/dist/node/search/_internal/hubSearchChannels.js +4 -2
  128. package/dist/node/search/_internal/hubSearchChannels.js.map +1 -1
  129. package/dist/types/channels/HubChannel.d.ts +105 -0
  130. package/dist/types/channels/_internal/ChannelBusinessRules.d.ts +19 -0
  131. package/dist/types/channels/_internal/ChannelSchema.d.ts +16 -0
  132. package/dist/types/channels/_internal/ChannelUiSchemaCreate.d.ts +10 -0
  133. package/dist/types/channels/_internal/ChannelUiSchemaEdit.d.ts +10 -0
  134. package/dist/types/channels/_internal/buildDefaultChannel.d.ts +8 -0
  135. package/dist/types/channels/_internal/transformAclPermissionToEntityPermissionPolicy.d.ts +11 -0
  136. package/dist/types/channels/_internal/transformChannelToEntity.d.ts +11 -0
  137. package/dist/types/channels/_internal/transformEditorToEntity.d.ts +8 -0
  138. package/dist/types/channels/_internal/transformEntityPermissionPoliciesToFormValues.d.ts +44 -0
  139. package/dist/types/channels/_internal/transformEntityToChannelData.d.ts +9 -0
  140. package/dist/types/channels/_internal/transformEntityToEditor.d.ts +9 -0
  141. package/dist/types/channels/_internal/transformFormValuesToEntityPermissionPolicies.d.ts +9 -0
  142. package/dist/types/channels/edit.d.ts +23 -0
  143. package/dist/types/channels/fetch.d.ts +9 -0
  144. package/dist/types/channels/index.d.ts +3 -0
  145. package/dist/types/content/_internal/internalContentUtils.d.ts +1 -1
  146. package/dist/types/content/get-family.d.ts +1 -1
  147. package/dist/types/core/EntityEditor.d.ts +1 -1
  148. package/dist/types/core/schemas/types.d.ts +2 -2
  149. package/dist/types/core/types/HubEntity.d.ts +3 -2
  150. package/dist/types/core/types/HubEntityType.d.ts +1 -1
  151. package/dist/types/core/types/IHubChannel.d.ts +91 -0
  152. package/dist/types/core/types/index.d.ts +1 -0
  153. package/dist/types/index.d.ts +1 -0
  154. package/dist/types/permissions/types/IEntityPermissionPolicy.d.ts +10 -2
  155. package/dist/types/permissions/types/Permission.d.ts +2 -1
  156. package/package.json +1 -1
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChannelSchema = exports.ChannelEditorTypes = void 0;
4
+ const ChannelBusinessRules_1 = require("./ChannelBusinessRules");
5
+ /**
6
+ * @private
7
+ * The supported channel editor types
8
+ */
9
+ exports.ChannelEditorTypes = [
10
+ "hub:channel:create",
11
+ "hub:channel:edit",
12
+ ];
13
+ /**
14
+ * @private
15
+ * The channel editor schema
16
+ */
17
+ exports.ChannelSchema = {
18
+ type: "object",
19
+ properties: {
20
+ name: {
21
+ type: "string",
22
+ },
23
+ blockWords: {
24
+ type: "string",
25
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
26
+ // @ts-ignore
27
+ format: "blockWords",
28
+ },
29
+ publicConfigs: {
30
+ type: "array",
31
+ items: {
32
+ type: "object",
33
+ properties: {
34
+ key: { type: "string" },
35
+ entityId: { type: "string" },
36
+ entityType: { type: "string" },
37
+ roles: {
38
+ type: "object",
39
+ properties: {
40
+ anonymous: {
41
+ type: "object",
42
+ properties: {
43
+ value: {
44
+ type: "string",
45
+ enum: [
46
+ ChannelBusinessRules_1.ChannelNonePermission,
47
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
48
+ ],
49
+ default: ChannelBusinessRules_1.ChannelNonePermission,
50
+ },
51
+ id: { type: "string" },
52
+ },
53
+ },
54
+ authenticated: {
55
+ type: "object",
56
+ properties: {
57
+ value: {
58
+ type: "string",
59
+ enum: [
60
+ ChannelBusinessRules_1.ChannelNonePermission,
61
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
62
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
63
+ ],
64
+ default: ChannelBusinessRules_1.ChannelNonePermission,
65
+ },
66
+ id: { type: "string" },
67
+ },
68
+ },
69
+ },
70
+ },
71
+ },
72
+ },
73
+ },
74
+ orgConfigs: {
75
+ type: "array",
76
+ items: {
77
+ type: "object",
78
+ properties: {
79
+ key: { type: "string" },
80
+ entityId: { type: "string" },
81
+ entityType: { type: "string" },
82
+ roles: {
83
+ type: "object",
84
+ properties: {
85
+ member: {
86
+ type: "object",
87
+ properties: {
88
+ value: {
89
+ type: "string",
90
+ enum: [
91
+ ChannelBusinessRules_1.ChannelNonePermission,
92
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
93
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
94
+ ],
95
+ default: ChannelBusinessRules_1.ChannelNonePermission,
96
+ },
97
+ id: { type: "string" },
98
+ },
99
+ },
100
+ admin: {
101
+ type: "object",
102
+ properties: {
103
+ value: {
104
+ type: "string",
105
+ enum: [ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelOwner],
106
+ default: ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelOwner,
107
+ },
108
+ id: { type: "string" },
109
+ },
110
+ },
111
+ },
112
+ },
113
+ },
114
+ },
115
+ },
116
+ groupConfigs: {
117
+ type: "array",
118
+ items: {
119
+ type: "object",
120
+ properties: {
121
+ key: { type: "string" },
122
+ entityId: { type: "string" },
123
+ entityType: { type: "string" },
124
+ roles: {
125
+ type: "object",
126
+ properties: {
127
+ member: {
128
+ type: "object",
129
+ properties: {
130
+ value: {
131
+ type: "string",
132
+ enum: [
133
+ ChannelBusinessRules_1.ChannelNonePermission,
134
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
135
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
136
+ ],
137
+ default: ChannelBusinessRules_1.ChannelNonePermission,
138
+ },
139
+ id: { type: "string" },
140
+ },
141
+ },
142
+ admin: {
143
+ type: "object",
144
+ properties: {
145
+ value: {
146
+ type: "string",
147
+ enum: [
148
+ ChannelBusinessRules_1.ChannelNonePermission,
149
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
150
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
151
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelManage,
152
+ ],
153
+ default: ChannelBusinessRules_1.ChannelNonePermission,
154
+ },
155
+ id: { type: "string" },
156
+ },
157
+ },
158
+ },
159
+ },
160
+ },
161
+ },
162
+ },
163
+ userConfigs: {
164
+ type: "array",
165
+ items: {
166
+ type: "object",
167
+ properties: {
168
+ key: { type: "string" },
169
+ entityId: { type: "string" },
170
+ entityType: { type: "string" },
171
+ roles: {
172
+ type: "object",
173
+ properties: {
174
+ user: {
175
+ type: "object",
176
+ properties: {
177
+ value: {
178
+ type: "string",
179
+ enum: [
180
+ ChannelBusinessRules_1.ChannelNonePermission,
181
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelRead,
182
+ ChannelBusinessRules_1.CHANNEL_PERMISSIONS.channelReadWrite,
183
+ ],
184
+ default: ChannelBusinessRules_1.ChannelNonePermission,
185
+ },
186
+ id: { type: "string" },
187
+ },
188
+ },
189
+ },
190
+ },
191
+ },
192
+ },
193
+ },
194
+ allowAsAnonymous: {
195
+ type: "boolean",
196
+ default: false,
197
+ },
198
+ },
199
+ required: ["name"],
200
+ };
201
+ //# sourceMappingURL=ChannelSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelSchema.js","sourceRoot":"","sources":["../../../../src/channels/_internal/ChannelSchema.ts"],"names":[],"mappings":";;;AACA,iEAGgC;AAEhC;;;GAGG;AACU,QAAA,kBAAkB,GAAG;IAChC,oBAAoB;IACpB,kBAAkB;CACV,CAAC;AAQX;;;GAGG;AACU,QAAA,aAAa,GAAyB;IACjD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;SACf;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,6DAA6D;YAC7D,aAAa;YACb,MAAM,EAAE,YAAY;SACrB;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;yCAChC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;4CAC/B,0CAAmB,CAAC,gBAAgB;yCACrC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;4CAC/B,0CAAmB,CAAC,gBAAgB;yCACrC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE,CAAC,0CAAmB,CAAC,YAAY,CAAC;wCACxC,OAAO,EAAE,0CAAmB,CAAC,YAAY;qCAC1C;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;4CAC/B,0CAAmB,CAAC,gBAAgB;yCACrC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;4CAC/B,0CAAmB,CAAC,gBAAgB;4CACpC,0CAAmB,CAAC,aAAa;yCAClC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,WAAW,EAAE;YACX,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE;4CACJ,4CAAqB;4CACrB,0CAAmB,CAAC,WAAW;4CAC/B,0CAAmB,CAAC,gBAAgB;yCACrC;wCACD,OAAO,EAAE,4CAAqB;qCAC/B;oCACD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf;KACF;IACD,QAAQ,EAAE,CAAC,MAAM,CAAC;CACnB,CAAC"}
@@ -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"}