@livetiles/reach-components-react 0.5.0-preview.78 → 0.5.0-preview.781

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 (236) hide show
  1. package/AnalyticsDummyContextProvider.d.ts +2 -0
  2. package/ChannelFilter.d.ts +3 -0
  3. package/ChannelSelectorWrapper.d.ts +3 -0
  4. package/EmojiPicker.esm.esm.js +1 -1
  5. package/ErrorWrapper.d.ts +3 -2
  6. package/EventDetail.d.ts +10 -1
  7. package/EventGridCard.d.ts +5 -4
  8. package/EventItemContextProvider.d.ts +4 -0
  9. package/EventItemPreviewContextProvider.d.ts +5 -0
  10. package/EventsGrid.d.ts +2 -2
  11. package/EventsList.d.ts +2 -2
  12. package/NewsDetail.d.ts +5 -0
  13. package/NewsDetailViewMetaInfo.d.ts +4 -1
  14. package/NewsGrid.d.ts +4 -3
  15. package/NewsGridCard.d.ts +8 -6
  16. package/NewsHero.d.ts +10 -3
  17. package/NewsList.d.ts +3 -3
  18. package/PageDetail.d.ts +10 -1
  19. package/PageGridCard.d.ts +3 -2
  20. package/PageItemContextProvider.d.ts +4 -0
  21. package/PageItemPreviewContextProvider.d.ts +5 -0
  22. package/PageTableOfContents.d.ts +3 -2
  23. package/PagesGrid.d.ts +3 -2
  24. package/PagesList.d.ts +2 -2
  25. package/PublishableItemGrid.d.ts +4 -2
  26. package/PublishableItemList.d.ts +4 -3
  27. package/ReachContext.d.ts +15 -0
  28. package/SharedItemDetailPreview.d.ts +16 -0
  29. package/ToolbarBookmarkButton.d.ts +4 -0
  30. package/{ToolbarNewsLanguageSelector.d.ts → ToolbarLanguageSelector.d.ts} +1 -1
  31. package/{ToolbarManageNewsItemButton.d.ts → ToolbarManageItemButton.d.ts} +3 -0
  32. package/ar-dz.async.esm.esm.js +1 -1
  33. package/ar-ma.async.esm.esm.js +1 -1
  34. package/ar-sa.async.esm.esm.js +1 -1
  35. package/ar-tn.async.esm.esm.js +1 -1
  36. package/ar.async.esm.esm.js +1 -1
  37. package/asn1.esm.js +1 -0
  38. package/auto-track-f51a2a4b.esm.js +1 -0
  39. package/bg.async.esm.esm.js +1 -1
  40. package/bn.async.esm.esm.js +1 -1
  41. package/ca.async.esm.esm.js +1 -1
  42. package/common/CommentCountIconWithTooltip.d.ts +3 -1
  43. package/common/filter/LibNewsFilterDefinition.d.ts +7 -0
  44. package/common/hero/Hero.d.ts +2 -3
  45. package/common/hooks/useBannerOnResize.d.ts +5 -0
  46. package/common/utils.d.ts +1 -3
  47. package/cs.async.esm.esm.js +1 -1
  48. package/da.async.esm.esm.js +1 -1
  49. package/da.async.esm2.esm.js +1 -1
  50. package/de-at.async.esm.esm.js +1 -1
  51. package/de.async.esm.esm.js +1 -1
  52. package/de.async.esm2.esm.js +1 -1
  53. package/editor/EventEditorContextProvider.d.ts +9 -1
  54. package/editor/EventEditorToolbarRecurringControls.d.ts +0 -2
  55. package/editor/PageEditor.d.ts +6 -0
  56. package/editor/PageEditorContextProvider.d.ts +11 -0
  57. package/editor/PageEditorPanel.d.ts +5 -0
  58. package/editor/PageEditorToolbarStateActions.d.ts +2 -0
  59. package/el.async.esm.esm.js +1 -1
  60. package/en-au.async.esm.esm.js +1 -1
  61. package/en-ca.async.esm.esm.js +1 -1
  62. package/en-gb.async.esm.esm.js +1 -1
  63. package/en-ie.async.esm.esm.js +1 -1
  64. package/en-nz.async.esm.esm.js +1 -1
  65. package/en-us.async.esm.esm.js +1 -1
  66. package/en.async.esm.esm.js +1 -1
  67. package/es.async.esm.esm.js +1 -1
  68. package/es.async.esm2.esm.js +1 -1
  69. package/et.async.esm.esm.js +1 -1
  70. package/fa-ir.async.esm.esm.js +1 -1
  71. package/fi.async.esm.esm.js +1 -1
  72. package/fr-ca.async.esm.esm.js +1 -1
  73. package/fr-ch.async.esm.esm.js +1 -1
  74. package/fr.async.esm.esm.js +1 -1
  75. package/fr.async.esm2.esm.js +1 -1
  76. package/gu.async.esm.esm.js +1 -1
  77. package/he.async.esm.esm.js +1 -1
  78. package/hi.async.esm.esm.js +1 -1
  79. package/hr.async.esm.esm.js +1 -1
  80. package/hu.async.esm.esm.js +1 -1
  81. package/id.async.esm.esm.js +1 -1
  82. package/index-86828242.esm.js +1 -0
  83. package/index-9966489c.esm.js +1 -0
  84. package/index-b8e04782.esm.js +705 -0
  85. package/index-bb815ffc.esm.js +1 -0
  86. package/index-beff4bdb.esm.js +1 -0
  87. package/index-d4477314.esm.js +1 -0
  88. package/index.d.ts +543 -254
  89. package/index.esm.js +1 -1
  90. package/index.esm2.js +122 -23
  91. package/index.esm4.js +1 -1
  92. package/index.esm5.js +1 -0
  93. package/index.esm6.js +1 -0
  94. package/index.esm7.js +1 -0
  95. package/index.esm8.js +1 -0
  96. package/index.umd-3ae1841e.esm.js +1 -0
  97. package/index.umd.js +846 -27
  98. package/index10.esm.js +4 -0
  99. package/input-shims.esm.js +4 -0
  100. package/ios.transition.esm.js +4 -0
  101. package/is-plan-event-enabled-d9660f36.esm.js +1 -0
  102. package/it-ch.async.esm.esm.js +1 -1
  103. package/it.async.esm.esm.js +1 -1
  104. package/it.async.esm2.esm.js +1 -1
  105. package/ja.async.esm.esm.js +1 -1
  106. package/ja.async.esm2.esm.js +1 -1
  107. package/javascript.esm.js +1 -0
  108. package/kn.async.esm.esm.js +1 -1
  109. package/ko.async.esm.esm.js +1 -1
  110. package/lt.async.esm.esm.js +1 -1
  111. package/lv.async.esm.esm.js +1 -1
  112. package/md.transition.esm.js +4 -0
  113. package/mllike.esm.js +1 -0
  114. package/ms.async.esm.esm.js +1 -1
  115. package/nb.async.esm.esm.js +1 -1
  116. package/nl-be.async.esm.esm.js +1 -1
  117. package/nl.async.esm.esm.js +1 -1
  118. package/package.json +1 -1
  119. package/pl.async.esm.esm.js +1 -1
  120. package/pt-br.async.esm.esm.js +1 -1
  121. package/pt.async.esm.esm.js +1 -1
  122. package/python.esm.js +1 -0
  123. package/ro.async.esm.esm.js +1 -1
  124. package/rpm.esm.js +1 -0
  125. package/ru.async.esm.esm.js +1 -1
  126. package/sk.async.esm.esm.js +1 -1
  127. package/skeletons/CompactListShimmer.d.ts +5 -0
  128. package/skeletons/EventGridShimmerItem.d.ts +2 -0
  129. package/skeletons/EventShimmerListItem.d.ts +2 -0
  130. package/skeletons/ListShimmer.d.ts +6 -0
  131. package/skeletons/NewsGridShimmerItem.d.ts +4 -0
  132. package/skeletons/NewsHeroShimmer.d.ts +6 -0
  133. package/skeletons/NewsShimmerListItem.d.ts +2 -0
  134. package/skeletons/PageGridShimmerItem.d.ts +4 -0
  135. package/skeletons/PageShimmerListItem.d.ts +2 -0
  136. package/skeletons/PublishableItemGridShimmer.d.ts +9 -0
  137. package/skeletons/utils.d.ts +1 -0
  138. package/sl.async.esm.esm.js +1 -1
  139. package/sql.esm.js +1 -0
  140. package/sr-latn.async.esm.esm.js +1 -1
  141. package/sr.async.esm.esm.js +1 -1
  142. package/status-tap.esm.js +4 -0
  143. package/sv.async.esm.esm.js +1 -1
  144. package/swipe-back.esm.js +4 -0
  145. package/swiper.bundle.esm.js +4 -0
  146. package/ta.async.esm.esm.js +1 -1
  147. package/te.async.esm.esm.js +1 -1
  148. package/th.async.esm.esm.js +1 -1
  149. package/tr.async.esm.esm.js +1 -1
  150. package/tr.async.esm2.esm.js +1 -1
  151. package/ttcn-cfg.esm.js +1 -0
  152. package/uk.async.esm.esm.js +1 -1
  153. package/vi.async.esm.esm.js +1 -1
  154. package/zh-CN.async.esm2.esm.js +1 -1
  155. package/zh-TW.async.esm2.esm.js +1 -1
  156. package/zh-cn.async.esm.esm.js +1 -1
  157. package/zh-hk.async.esm.esm.js +1 -1
  158. package/zh-tw.async.esm.esm.js +1 -1
  159. package/NewsDetailPreview.d.ts +0 -7
  160. package/ar-dz.async.esm2.esm.js +0 -1
  161. package/ar-kw.async.esm.esm.js +0 -1
  162. package/ar-ly.async.esm.esm.js +0 -1
  163. package/ar-ma.async.esm2.esm.js +0 -1
  164. package/ar-sa.async.esm2.esm.js +0 -1
  165. package/ar.esm.js +0 -1
  166. package/bg.async.esm2.esm.js +0 -1
  167. package/bn.async.esm2.esm.js +0 -1
  168. package/ca.async.esm2.esm.js +0 -1
  169. package/cs.async.esm2.esm.js +0 -1
  170. package/de-ch.async.esm.esm.js +0 -1
  171. package/de.async.esm3.esm.js +0 -1
  172. package/de.esm.js +0 -1
  173. package/el.async.esm2.esm.js +0 -1
  174. package/en-au.async.esm2.esm.js +0 -1
  175. package/en-ca.async.esm2.esm.js +0 -1
  176. package/en-gb.async.esm2.esm.js +0 -1
  177. package/en-il.async.esm.esm.js +0 -1
  178. package/en-nz.async.esm2.esm.js +0 -1
  179. package/en-sg.async.esm.esm.js +0 -1
  180. package/en.esm.js +0 -1
  181. package/es-do.async.esm.esm.js +0 -1
  182. package/es-us.async.esm.esm.js +0 -1
  183. package/es.async.esm3.esm.js +0 -1
  184. package/es.esm.js +0 -1
  185. package/et.async.esm2.esm.js +0 -1
  186. package/fa.async.esm.esm.js +0 -1
  187. package/fi.async.esm2.esm.js +0 -1
  188. package/fr-ca.async.esm2.esm.js +0 -1
  189. package/fr-ch.async.esm2.esm.js +0 -1
  190. package/fr.async.esm3.esm.js +0 -1
  191. package/fr.esm.js +0 -1
  192. package/gu.async.esm2.esm.js +0 -1
  193. package/he.async.esm2.esm.js +0 -1
  194. package/hi.async.esm2.esm.js +0 -1
  195. package/hr.async.esm2.esm.js +0 -1
  196. package/hu.async.esm2.esm.js +0 -1
  197. package/id.async.esm2.esm.js +0 -1
  198. package/it.async.esm3.esm.js +0 -1
  199. package/it.esm.js +0 -1
  200. package/ja.async.esm3.esm.js +0 -1
  201. package/ja.esm.js +0 -1
  202. package/kn.async.esm2.esm.js +0 -1
  203. package/ko.async.esm2.esm.js +0 -1
  204. package/lt.async.esm2.esm.js +0 -1
  205. package/lv.async.esm2.esm.js +0 -1
  206. package/ml.async.esm.esm.js +0 -1
  207. package/mr.async.esm.esm.js +0 -1
  208. package/ms-my.async.esm.esm.js +0 -1
  209. package/ms.async.esm2.esm.js +0 -1
  210. package/ms.esm.js +0 -1
  211. package/nb.async.esm2.esm.js +0 -1
  212. package/nl-be.async.esm2.esm.js +0 -1
  213. package/nl.async.esm2.esm.js +0 -1
  214. package/nl.esm.js +0 -1
  215. package/pl.async.esm2.esm.js +0 -1
  216. package/pt-br.async.esm2.esm.js +0 -1
  217. package/pt.async.esm2.esm.js +0 -1
  218. package/pt.esm.js +0 -1
  219. package/ro.async.esm2.esm.js +0 -1
  220. package/ru.async.esm2.esm.js +0 -1
  221. package/sk.async.esm2.esm.js +0 -1
  222. package/sl.async.esm2.esm.js +0 -1
  223. package/sr-cyrl.async.esm.esm.js +0 -1
  224. package/sr.async.esm2.esm.js +0 -1
  225. package/sr.esm.js +0 -1
  226. package/sv.async.esm2.esm.js +0 -1
  227. package/sw.async.esm.esm.js +0 -1
  228. package/ta.async.esm2.esm.js +0 -1
  229. package/te.async.esm2.esm.js +0 -1
  230. package/th.async.esm2.esm.js +0 -1
  231. package/tr.async.esm3.esm.js +0 -1
  232. package/tr.esm.js +0 -1
  233. package/uk.async.esm2.esm.js +0 -1
  234. package/vi.async.esm2.esm.js +0 -1
  235. package/zh-cn.async.esm3.esm.js +0 -1
  236. package/zh-tw.async.esm3.esm.js +0 -1
package/index.d.ts CHANGED
@@ -1,64 +1,8 @@
1
+ /// <reference types="react" />
1
2
  import { FC, ReactNode } from 'react';
2
3
  import { IDialogProps, IDropdownOption, IPersonaProps } from 'office-ui-fabric-react';
3
4
  import * as styled_components from 'styled-components';
4
5
 
5
- declare type ReachContextProps = {
6
- config?: {
7
- apiEndpoint?: string;
8
- webAppUrl?: string;
9
- api3Endpoint?: string;
10
- webSocketsEndpoint?: string;
11
- };
12
- onRequestToken?: () => Promise<string>;
13
- subscriptionId: string;
14
- language?: string;
15
- disableUiFabricThemeOverwrite?: boolean;
16
- };
17
- declare const ReachContextProvider: FC<ReachContextProps>;
18
-
19
- interface NewsDetailProps {
20
- itemId?: string;
21
- hideComments?: boolean;
22
- hideLikes?: boolean;
23
- preventExternalContentAutoRedirect?: boolean;
24
- className?: string;
25
- }
26
- declare const NewsDetail: FC<NewsDetailProps>;
27
-
28
- interface PageDetailProps {
29
- itemId: string;
30
- hideComments?: boolean;
31
- hideLikes?: boolean;
32
- preventExternalContentAutoRedirect?: boolean;
33
- className?: string;
34
- }
35
- declare const PageDetail: FC<PageDetailProps>;
36
-
37
- interface EventDetailProps {
38
- itemId: string;
39
- hideComments?: boolean;
40
- hideLikes?: boolean;
41
- className?: string;
42
- }
43
- declare const EventDetail: FC<EventDetailProps>;
44
-
45
- interface PostDetailProps {
46
- postId: string;
47
- threadId?: string;
48
- onAfterDelete?: (id: string) => unknown;
49
- commentCount?: number;
50
- onItemClick?: (postId: string) => unknown;
51
- }
52
- declare const PostDetail: FC<PostDetailProps>;
53
-
54
- interface PaginatedList<TItem> {
55
- items: TItem[];
56
- paginationToken?: any;
57
- nextItem?: TItem;
58
- hasMoreUnreadComments?: boolean;
59
- hasNextPage?: boolean;
60
- }
61
-
62
6
  declare enum AuthenticationType {
63
7
  unknown = 0,
64
8
  azuread = 1,
@@ -86,8 +30,46 @@ interface IdentityProviderSettings {
86
30
  scope: string;
87
31
  }
88
32
 
89
- interface Resources {
90
- [language: string]: Record<string, string>;
33
+ interface VideoSource$1 {
34
+ prefix: string;
35
+ name: string;
36
+ alwaysShowPlayer?: boolean;
37
+ }
38
+
39
+ declare type ReachContextProps = {
40
+ config?: {
41
+ apiEndpoint?: string;
42
+ webAppUrl?: string;
43
+ api3Endpoint?: string;
44
+ webSocketsEndpoint?: string;
45
+ additionalVideoSources?: VideoSource$1[];
46
+ };
47
+ onRequestToken?: () => Promise<string>;
48
+ subscriptionId: string;
49
+ language?: string;
50
+ disableUiFabricThemeOverwrite?: boolean;
51
+ locale?: string;
52
+ /**
53
+ * These properties can be used to define the behavior of the analytics module.
54
+ *
55
+ * With `disableAnalytics` you can completely disable all analytics tracking.
56
+ * The `appName` is optional but highly encouraged to be set,
57
+ * in order to know where the components are used in. The value must be a non-empty string,
58
+ * only containing alphabetical letters and dashes (-). Should not be longer than 30 characters.
59
+ */
60
+ analyticsProps?: {
61
+ disableAnalytics?: boolean;
62
+ appName?: string;
63
+ };
64
+ };
65
+ declare const ReachContextProvider: FC<ReachContextProps>;
66
+
67
+ interface PaginatedList<TItem> {
68
+ items: TItem[];
69
+ paginationToken?: any;
70
+ nextItem?: TItem;
71
+ hasMoreUnreadComments?: boolean;
72
+ hasNextPage?: boolean;
91
73
  }
92
74
 
93
75
  interface BasicUserInformation {
@@ -109,121 +91,37 @@ interface Account extends BasicUserInformation {
109
91
  tenantId?: string;
110
92
  }
111
93
 
112
- interface UserChannelSubscription {
113
- id: string;
114
- name: string;
115
- sendNotifications?: boolean;
116
- isPinnedToNavigation?: boolean;
117
- isMandatory?: boolean;
94
+ interface Resources {
95
+ [language: string]: Record<string, string>;
118
96
  }
119
97
 
120
- interface PublishableItemNotificationSummary {
121
- itemId: string;
122
- title?: string;
123
- channelIds?: string[];
124
- publishingDate?: string;
125
- }
126
- declare enum GroupRoleNames {
127
- Admin = "Admin",
128
- Editor = "Editor",
129
- Author = "Author",
130
- Reader = "Reader",
131
- LimitedReader = "LimitedReader",
132
- None = "None"
133
- }
134
- declare enum GroupRoles {
135
- None = 0,
136
- LimitedReader = 5,
137
- Reader = 10,
138
- Author = 20,
139
- Editor = 30,
140
- Admin = 40
141
- }
142
- declare enum NotificationType {
143
- None = 0,
144
- MobilePush = 1,
145
- Email = 2,
146
- Teams = 4,
147
- BrowserPush = 8
148
- }
149
- interface NotificationTypeSettings {
150
- news: NotificationType;
151
- posts: NotificationType;
152
- comments: NotificationType;
153
- mentions: NotificationType;
154
- events: NotificationType;
155
- chat: NotificationType;
156
- pluginNotifications: {
157
- [key: string]: NotificationType;
98
+ interface LanguageBase {
99
+ code: string;
100
+ }
101
+
102
+ interface KeywordGroup {
103
+ id: string;
104
+ name: string;
105
+ keywords: Keyword[];
106
+ translations: {
107
+ [key: string]: string;
158
108
  };
159
109
  }
160
- interface CurrentUser extends Account {
161
- isEmailVerificationPending?: boolean;
162
- isSubscriptionOwner: boolean;
163
- givenName: string;
164
- surname: string;
165
- preferredUiLanguage: string;
166
- preferredContentLanguage?: string;
167
- preferredLocale?: string;
168
- bookmarks: string[];
169
- groups: UserGroup[];
170
- subscription: SubscriptionSummary;
171
- availableSubscriptions: SubscriptionSummary[];
172
- channels: UserChannelSubscription[];
173
- userHash: string;
174
- unreadNews: PublishableItemNotificationSummary[];
175
- unreadEvents: PublishableItemNotificationSummary[];
176
- unreadPosts: {
177
- groupId: string;
178
- itemId: string;
179
- }[];
180
- unreadFeedItemsCount?: number;
181
- mostRecentPostGroups: string[];
182
- notificationTypeSettings: NotificationTypeSettings;
183
- hasPendingRegistration?: boolean;
184
- minRoles: UserMinRoles;
185
- hasDirectory: boolean;
186
- contacts: UserContact[];
187
- termsAndConditionsApprovedHash: string;
188
- isPublicUser?: boolean;
189
- hasUnreadChats?: boolean;
190
- }
191
- interface UserContact {
192
- tokenUniqueId: string;
193
- tenantId: string;
194
- }
195
- interface GroupBase {
110
+ interface Keyword {
196
111
  id: string;
197
112
  name: string;
198
- translations?: {
113
+ groupId?: string;
114
+ translations: {
199
115
  [key: string]: string;
200
116
  };
201
- }
202
- interface UserGroup extends GroupBase {
203
- allowPosts: boolean;
204
- disablePostComments: boolean;
205
- availableChannelIds: string[];
206
- defaultChannelIds: string[];
207
- mandatoryChannelIds: string[];
208
- availableKeywordIds: string[];
209
- defaultKeywordIds: string[];
210
- mandatoryKeywordIds: string[];
211
- role: UserGroupRole;
212
- }
213
- interface UserMinRoles {
214
- isEditor: boolean;
215
- isAuthor: boolean;
216
- isAdmin: boolean;
217
- isReader: boolean;
218
- isSubscriptionOwner: boolean;
219
- }
220
- interface UserGroupRole {
221
- roleValue: GroupRoles;
222
- displayName: GroupRoleNames;
223
117
  }
224
118
 
225
- interface LanguageBase {
226
- code: string;
119
+ interface Channel {
120
+ id: string;
121
+ name: string;
122
+ translations?: {
123
+ [key: string]: string;
124
+ };
227
125
  }
228
126
 
229
127
  interface DirectoryConfiguration extends DirectoryConfigurationPatch {
@@ -284,6 +182,7 @@ interface SubscriptionSummary extends BaseSubscription {
284
182
  customDomain?: string;
285
183
  allowSelfRegistration?: boolean;
286
184
  brandFolderConfig?: BrandFolderConfig;
185
+ hideSubscriptionName?: boolean;
287
186
  }
288
187
  interface BrandFolderConfig {
289
188
  sections?: string[];
@@ -314,9 +213,21 @@ interface WebPluginDefinition {
314
213
  subscriptionId?: string;
315
214
  environment?: string;
316
215
  }
317
- interface PluginExtension {
318
- area: string;
319
- componentName: string;
216
+ declare enum ExtensionArea {
217
+ global = "Global",
218
+ page = "Page",
219
+ eventEditorFeedbackSection = "EventEditorFeedbackSection",
220
+ eventDetailViewSection = "EventDetailViewSection",
221
+ itemEditor = "ItemEditor",
222
+ newsEditorFeedbackSection = "NewsEditorFeedbackSection",
223
+ newsOverviewCardSection = "NewsOverviewCardSection"
224
+ }
225
+ declare type InlinePlugin = {
226
+ area: ExtensionArea.itemEditor;
227
+ objectButton: PluginObjectButton;
228
+ };
229
+ declare type PagePlugin = {
230
+ area: ExtensionArea.page;
320
231
  route: string;
321
232
  navigationNode?: {
322
233
  componentName?: string;
@@ -326,7 +237,20 @@ interface PluginExtension {
326
237
  [key: string]: string;
327
238
  };
328
239
  };
329
- }
240
+ };
241
+ declare type PluginExtension = {
242
+ area: ExtensionArea;
243
+ componentName: string;
244
+ } & (InlinePlugin | PagePlugin);
245
+ declare type PluginObjectButton = {
246
+ buttonLabel: {
247
+ defaultLabel: string;
248
+ translations?: {
249
+ [key: string]: string;
250
+ };
251
+ };
252
+ iconName: string;
253
+ };
330
254
  interface PluginNotificationDefinitions {
331
255
  key: string;
332
256
  title: string;
@@ -353,28 +277,127 @@ declare enum FieldType {
353
277
  Text = 1,
354
278
  MultilineText = 2
355
279
  }
356
- declare enum FieldMode {
357
- Unknown = 0,
358
- AdminOnly = 1,
359
- UserEditable = 2,
360
- Hidden = 3
361
- }
362
-
363
- interface Channel {
280
+ declare enum FieldMode {
281
+ Unknown = 0,
282
+ AdminOnly = 1,
283
+ UserEditable = 2,
284
+ Hidden = 3
285
+ }
286
+
287
+ interface UserChannelSubscription {
288
+ id: string;
289
+ name: string;
290
+ sendNotifications?: boolean;
291
+ isPinnedToNavigation?: boolean;
292
+ isMandatory?: boolean;
293
+ }
294
+
295
+ interface PublishableItemNotificationSummary {
296
+ itemId: string;
297
+ title?: string;
298
+ channelIds?: string[];
299
+ publishingDate?: string;
300
+ }
301
+ declare enum GroupRoleNames {
302
+ Admin = "Admin",
303
+ Editor = "Editor",
304
+ Author = "Author",
305
+ Reader = "Reader",
306
+ LimitedReader = "LimitedReader",
307
+ None = "None"
308
+ }
309
+ declare enum GroupRoles {
310
+ None = 0,
311
+ LimitedReader = 5,
312
+ Reader = 10,
313
+ Author = 20,
314
+ Editor = 30,
315
+ Admin = 40
316
+ }
317
+ declare enum NotificationType {
318
+ None = 0,
319
+ MobilePush = 1,
320
+ Email = 2,
321
+ Teams = 4,
322
+ BrowserPush = 8
323
+ }
324
+ interface NotificationTypeSettings {
325
+ news: NotificationType;
326
+ posts: NotificationType;
327
+ comments: NotificationType;
328
+ mentions: NotificationType;
329
+ events: NotificationType;
330
+ chat: NotificationType;
331
+ pluginNotifications: {
332
+ [key: string]: NotificationType;
333
+ };
334
+ newsEditor: NotificationType;
335
+ eventEditor: NotificationType;
336
+ }
337
+ interface CurrentUser extends Account {
338
+ isEmailVerificationPending?: boolean;
339
+ isSubscriptionOwner: boolean;
340
+ givenName: string;
341
+ surname: string;
342
+ preferredUiLanguage: string;
343
+ preferredContentLanguage?: string;
344
+ preferredLocale?: string;
345
+ bookmarks: string[];
346
+ groups: UserGroup[];
347
+ subscription: SubscriptionSummary;
348
+ availableSubscriptions: SubscriptionSummary[];
349
+ channels: UserChannelSubscription[];
350
+ userHash: string;
351
+ unreadNews: PublishableItemNotificationSummary[];
352
+ unreadEvents: PublishableItemNotificationSummary[];
353
+ unreadPosts: {
354
+ groupId: string;
355
+ itemId: string;
356
+ }[];
357
+ unreadFeedItemsCount?: number;
358
+ mostRecentPostGroups: string[];
359
+ notificationTypeSettings: NotificationTypeSettings;
360
+ hasPendingRegistration?: boolean;
361
+ minRoles: UserMinRoles;
362
+ hasDirectory: boolean;
363
+ contacts: UserContact[];
364
+ termsAndConditionsApprovedHash: string;
365
+ isPublicUser?: boolean;
366
+ hasUnreadChats?: boolean;
367
+ publicSubscriptionIds?: string[];
368
+ }
369
+ interface UserContact {
370
+ tokenUniqueId: string;
371
+ tenantId: string;
372
+ }
373
+ interface GroupBase {
364
374
  id: string;
365
375
  name: string;
366
376
  translations?: {
367
377
  [key: string]: string;
368
378
  };
369
- }
370
-
371
- interface Keyword {
372
- id: string;
373
- name: string;
374
- groupId?: string;
375
- translations: {
376
- [key: string]: string;
377
- };
379
+ }
380
+ interface UserGroup extends GroupBase {
381
+ allowPosts: boolean;
382
+ disablePostComments: boolean;
383
+ availableChannelIds: string[];
384
+ defaultChannelIds: string[];
385
+ mandatoryChannelIds: string[];
386
+ availableKeywordIds: string[];
387
+ defaultKeywordIds: string[];
388
+ mandatoryKeywordIds: string[];
389
+ role: UserGroupRole;
390
+ }
391
+ interface UserMinRoles {
392
+ isEditor: boolean;
393
+ isAuthor: boolean;
394
+ isAdmin: boolean;
395
+ isReader: boolean;
396
+ isSubscriptionOwner: boolean;
397
+ }
398
+ interface UserGroupRole {
399
+ roleValue: GroupRoles;
400
+ displayName: GroupRoleNames;
378
401
  }
379
402
 
380
403
  interface ItemStatistics {
@@ -411,7 +434,7 @@ declare enum KnownNewsState {
411
434
  declare type VersionId = string;
412
435
  interface SchedulableItem extends PublishableItem {
413
436
  metadata?: NewsMetadata;
414
- channels?: SchedulableItemChannel[];
437
+ channels?: Channel[];
415
438
  }
416
439
  interface NewsItem extends SchedulableItem {
417
440
  source?: string;
@@ -419,20 +442,11 @@ interface NewsItem extends SchedulableItem {
419
442
  expiryDate?: string;
420
443
  knownState: KnownNewsState;
421
444
  hasNewComments?: boolean;
422
- isLiked?: boolean;
423
- shareToken?: ShareToken;
424
- }
425
- interface ShareToken {
426
- published?: string;
427
- preview?: string;
428
445
  }
429
446
  interface NewsItemAlertOptions {
430
447
  duration?: string;
431
448
  endDate?: Date;
432
449
  expireAfter?: boolean;
433
- }
434
- interface SchedulableItemChannel {
435
- name: string;
436
450
  }
437
451
 
438
452
  declare enum VideoSource {
@@ -447,6 +461,19 @@ interface BaseItem {
447
461
  id?: string;
448
462
  statistics?: ItemStatistics;
449
463
  poll?: Poll;
464
+ searchHighlights?: SearchHighlightSummary;
465
+ }
466
+ interface SearchHighlightSummary {
467
+ title: SearchHighlight[];
468
+ content: SearchHighlight[];
469
+ }
470
+ interface SearchHighlight {
471
+ language: string;
472
+ texts: {
473
+ value: string;
474
+ type: 'text' | 'hit';
475
+ }[];
476
+ score: number;
450
477
  }
451
478
  interface Poll {
452
479
  questions: PollQuestion[];
@@ -481,7 +508,6 @@ interface PublishableItemContent extends ContentDefinition {
481
508
  headline?: string;
482
509
  intro?: string;
483
510
  body?: string;
484
- bodyRaw?: string;
485
511
  customProperties?: {
486
512
  [key: string]: any;
487
513
  };
@@ -546,6 +572,7 @@ interface PublishableItem extends BaseItem {
546
572
  statistics?: ItemStatistics;
547
573
  useExternalContent?: boolean;
548
574
  isDemoContent?: boolean;
575
+ isLiked?: boolean;
549
576
  }
550
577
  interface PollTranslation {
551
578
  questions: QuestionTranslations[];
@@ -571,7 +598,8 @@ declare enum AttachmentType {
571
598
  Event = 5,
572
599
  Page = 6,
573
600
  Post = 7,
574
- Giphy = 8
601
+ Giphy = 8,
602
+ MicrosoftStreamVideo = 9
575
603
  }
576
604
  interface BaseAttachment {
577
605
  id: string;
@@ -587,6 +615,19 @@ interface Attachment extends BaseAttachment {
587
615
  type: AttachmentType;
588
616
  }
589
617
 
618
+ declare enum GraphQLAttachmentType {
619
+ Image = "IMAGE",
620
+ File = "FILE",
621
+ YouTubeVideo = "YOU_TUBE_VIDEO",
622
+ VimeoVideo = "VIMEO_VIDEO",
623
+ News = "NEWS",
624
+ Event = "EVENT",
625
+ Page = "PAGE",
626
+ Post = "POST",
627
+ Giphy = "GIPHY",
628
+ MicrosoftStreamVideo = "MICROSOFT_STREAM_VIDEO"
629
+ }
630
+
590
631
  interface ItemWithAttachments {
591
632
  attachments?: Attachment[];
592
633
  fileAccessToken?: string;
@@ -647,6 +688,7 @@ interface EventItem extends SchedulableItem {
647
688
  recurrenceSeriesId?: string;
648
689
  isSeriesMaster?: string;
649
690
  isVirtual?: boolean;
691
+ isAllDayEvent?: boolean;
650
692
  }
651
693
  interface EventRegistrationSettings {
652
694
  enabled?: boolean;
@@ -736,6 +778,7 @@ interface PageItem extends PublishableItem {
736
778
  isUnlinked?: boolean;
737
779
  pageType?: PageType;
738
780
  firstChildId?: string;
781
+ isGroupInheritanceBroken?: boolean;
739
782
  }
740
783
  interface ContentsSummary {
741
784
  [lang: string]: TitleContent & {
@@ -757,6 +800,7 @@ interface PageNavigationNode {
757
800
  hasAnyPageChild?: boolean;
758
801
  pageType?: PageType;
759
802
  useExternalContent?: boolean;
803
+ isGroupInheritanceBroken?: boolean;
760
804
  isSearchMatch?: boolean;
761
805
  topLevelFolderName?: string;
762
806
  uploadToken?: string;
@@ -771,7 +815,65 @@ declare enum PageType {
771
815
  Document = 1
772
816
  }
773
817
 
774
- declare const Dialog: FC<IDialogProps>;
818
+ declare type KeywordsByGroupId = {
819
+ [key: string]: Keyword[];
820
+ };
821
+
822
+ interface SubscriptionData {
823
+ channels?: Channel[];
824
+ allKeywords?: Keyword[];
825
+ keywordsByGroupId?: KeywordsByGroupId;
826
+ selectedKeywordGroups?: KeywordGroup[];
827
+ }
828
+ interface LazySubscriptionContextType extends SubscriptionData {
829
+ getChannels: () => Promise<Channel[]>;
830
+ refreshSubscription: () => void;
831
+ }
832
+
833
+ declare function useLazySubscriptionContext(): LazySubscriptionContextType;
834
+
835
+ interface NewsDetailProps {
836
+ itemId?: string;
837
+ hideComments?: boolean;
838
+ hideLikes?: boolean;
839
+ preventExternalContentAutoRedirect?: boolean;
840
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
841
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
842
+ className?: string;
843
+ }
844
+ declare const NewsDetail: FC<NewsDetailProps>;
845
+
846
+ interface PageDetailProps {
847
+ itemId?: string;
848
+ hideComments?: boolean;
849
+ hideLikes?: boolean;
850
+ preventExternalContentAutoRedirect?: boolean;
851
+ homeBreadcrumbTargetUrl?: string;
852
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
853
+ className?: string;
854
+ }
855
+ declare const PageDetail: FC<PageDetailProps>;
856
+
857
+ interface EventDetailProps {
858
+ itemId?: string;
859
+ hideComments?: boolean;
860
+ hideLikes?: boolean;
861
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
862
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
863
+ className?: string;
864
+ }
865
+ declare const EventDetail: FC<EventDetailProps>;
866
+
867
+ interface PostDetailProps {
868
+ postId: string;
869
+ threadId?: string;
870
+ onAfterDelete?: (id: string) => unknown;
871
+ commentCount?: number;
872
+ onItemClick?: (postId: string) => unknown;
873
+ }
874
+ declare const PostDetail: FC<PostDetailProps>;
875
+
876
+ declare const LegacyDialog: FC<IDialogProps>;
775
877
 
776
878
  interface ToolbarProps {
777
879
  leftSide?: ReactNode;
@@ -788,6 +890,12 @@ interface ToolbarSearchProps {
788
890
  }
789
891
  declare const Toolbar: FC<ToolbarProps>;
790
892
 
893
+ declare type TokenType = string | number;
894
+
895
+ interface ItemLoader<TItem, TTokenType extends TokenType> {
896
+ (pageSize: number, token?: TTokenType): Promise<PaginatedList<TItem>>;
897
+ }
898
+
791
899
  interface ToolbarChannelSelectorProps {
792
900
  getInitialSelectedKey?: (dropdownOptions: IDropdownOption[]) => string;
793
901
  allChannelsOption?: ToolbarChannelSelectorOption;
@@ -833,6 +941,15 @@ declare const ToolbarUnreadItemsButton: FC<{
833
941
  onClick: () => unknown;
834
942
  }>;
835
943
 
944
+ declare const ToolbarManageButton: FC<{
945
+ onClick?: () => unknown;
946
+ to?: {
947
+ url: string;
948
+ target?: string;
949
+ };
950
+ disabled?: boolean;
951
+ }>;
952
+
836
953
  interface ToolbarCloseButtonProps {
837
954
  onClick?: () => unknown;
838
955
  to?: {
@@ -861,8 +978,9 @@ declare const ToolbarEventViewSelector: FC<ToolbarEventViewSelectorProps>;
861
978
  interface Props extends IPersonaProps {
862
979
  upn: string;
863
980
  tenantId?: string;
864
- className?: string;
865
981
  displayName?: string;
982
+ forceShowSecondaryText?: boolean;
983
+ className?: string;
866
984
  }
867
985
  declare const Avatar: FC<Props>;
868
986
 
@@ -873,6 +991,13 @@ interface UserDetailsProps {
873
991
  }
874
992
  declare const UserDetails: FC<UserDetailsProps>;
875
993
 
994
+ declare enum ErrorType {
995
+ GenericError = "genericError",
996
+ Error404 = "error404",
997
+ Error403 = "error403",
998
+ LoginError = "loginError"
999
+ }
1000
+
876
1001
  interface PageViewTrackerSettings {
877
1002
  disabled?: boolean;
878
1003
  }
@@ -919,6 +1044,32 @@ declare enum LogicalOperator {
919
1044
  And = "AND"
920
1045
  }
921
1046
 
1047
+ interface Post extends BaseItem, ItemWithAttachments {
1048
+ id: string;
1049
+ comments?: PaginatedList<Comment>;
1050
+ groupId: string;
1051
+ content: string;
1052
+ permalink?: string;
1053
+ author: Account;
1054
+ publishingDate: string;
1055
+ modified?: string;
1056
+ statistics: ItemStatistics;
1057
+ keywords?: {
1058
+ [key: string]: Keyword[];
1059
+ };
1060
+ contentLanguageCode?: string;
1061
+ isLiked?: boolean;
1062
+ isUnread?: boolean;
1063
+ isDemoContent?: boolean;
1064
+ isFollowing?: boolean;
1065
+ }
1066
+ interface PostFilterDefinition {
1067
+ token?: string;
1068
+ pageSize?: string;
1069
+ search?: string;
1070
+ keywords?: FilterWithLogicalOperator;
1071
+ }
1072
+
922
1073
  interface AuthorFilterDefinition extends IndexableFilterDefinition {
923
1074
  author?: string;
924
1075
  }
@@ -927,6 +1078,20 @@ interface ChannelsFilterDefinition extends IndexableFilterDefinition {
927
1078
  channels?: FilterWithLogicalOperator;
928
1079
  }
929
1080
 
1081
+ interface EventContactsFilterDefinition extends IndexableFilterDefinition {
1082
+ contacts?: string[];
1083
+ }
1084
+
1085
+ interface EventsStartDateFilterDefinition extends IndexableFilterDefinition {
1086
+ startsAfter?: string;
1087
+ startsBefore?: string;
1088
+ }
1089
+
1090
+ interface EventFilterDefinition extends PublishableItemFilterDefinition, EventContactsFilterDefinition, EventsStartDateFilterDefinition, ChannelsFilterDefinition {
1091
+ excludePastEvents?: boolean;
1092
+ pastEventsOnly?: boolean;
1093
+ }
1094
+
930
1095
  interface StateFilterDefinition extends IndexableFilterDefinition {
931
1096
  state?: WorkflowStatus;
932
1097
  }
@@ -938,26 +1103,90 @@ interface NewsFilterDefinition extends PublishableItemFilterDefinition, AuthorFi
938
1103
  includeExpired?: boolean;
939
1104
  }
940
1105
 
1106
+ declare enum StreamEventResponse {
1107
+ NotSet = "NOTSET",
1108
+ Registered = "REGISTERED",
1109
+ Declined = "DECLINED"
1110
+ }
1111
+
1112
+ declare enum StreamItemTypes {
1113
+ Post = "POST",
1114
+ News = "NEWS",
1115
+ Event = "EVENT",
1116
+ Page = "PAGE"
1117
+ }
1118
+ declare enum StreamConversationScope {
1119
+ Public = "PUBLIC",
1120
+ Editor = "EDITOR",
1121
+ Posts = "POSTS"
1122
+ }
1123
+ interface PostStreamItem extends Post {
1124
+ type: StreamItemTypes.Post;
1125
+ isUnread: boolean;
1126
+ keywordsList?: Keyword[];
1127
+ groupIds?: string[];
1128
+ postAttachments?: StreamAttachment[];
1129
+ postComments?: PaginatedList<StreamPostComment>;
1130
+ hasMoreUnreadComments: boolean;
1131
+ }
1132
+ interface StreamPostComment extends Comment {
1133
+ postCommentAttachments?: StreamAttachment[];
1134
+ streamConversationScope?: StreamConversationScope;
1135
+ }
1136
+ interface StreamAttachment extends BaseAttachment {
1137
+ type: GraphQLAttachmentType;
1138
+ }
1139
+ interface NewsStreamItem extends NewsItem {
1140
+ type: StreamItemTypes.News;
1141
+ contentsList: StreamPublishableItemContents[];
1142
+ channelsList: Channel[];
1143
+ isUnread: boolean;
1144
+ keywordsList?: Keyword[];
1145
+ knownNewsState?: StreamKnownNewsState[];
1146
+ }
1147
+ declare enum StreamKnownNewsState {
1148
+ Unconfirmed = "UNCONFIRMED",
1149
+ Alert = "ALERT"
1150
+ }
1151
+ interface EventStreamItem extends EventItem {
1152
+ type: StreamItemTypes.Event;
1153
+ contentsList: StreamPublishableItemContents[];
1154
+ channelsList: Channel[];
1155
+ isUnread: boolean;
1156
+ keywordsList?: Keyword[];
1157
+ userResponseType?: StreamEventResponse;
1158
+ eventCancelInformation?: StreamEventCancelInformation;
1159
+ }
1160
+ interface PageStreamItem extends PageItem {
1161
+ type: StreamItemTypes.Page;
1162
+ contentsList: StreamPublishableItemContents[];
1163
+ channelsList: Channel[];
1164
+ isUnread: boolean;
1165
+ keywordsList?: Keyword[];
1166
+ streamPageType?: string;
1167
+ path?: (PageNavigationNode & {
1168
+ parentId?: string;
1169
+ contentsList: StreamPublishableItemContents[];
1170
+ })[];
1171
+ }
1172
+ interface StreamPublishableItemContents {
1173
+ language: string;
1174
+ title: string;
1175
+ intro?: string;
1176
+ headline?: string;
1177
+ }
1178
+ interface StreamEventCancelInformation extends EventCancelInformation {
1179
+ cancellationReasons?: {
1180
+ [key: string]: string;
1181
+ }[];
1182
+ }
1183
+
941
1184
  interface TargetLinkOverrideContextProps {
942
1185
  onResolveContentTargetUrl: (itemId: string, itemType: ItemResourceTypes) => string;
943
1186
  onResolveEmbeddedContentTargetUrl?: (itemId: string, itemType: ItemResourceTypes) => string;
944
1187
  }
945
1188
  declare const TargetLinkOverrideContextProvider: FC<TargetLinkOverrideContextProps>;
946
1189
 
947
- interface EventContactsFilterDefinition extends IndexableFilterDefinition {
948
- contacts?: string[];
949
- }
950
-
951
- interface EventsStartDateFilterDefinition extends IndexableFilterDefinition {
952
- startsAfter?: string;
953
- startsBefore?: string;
954
- }
955
-
956
- interface EventFilterDefinition extends PublishableItemFilterDefinition, EventContactsFilterDefinition, EventsStartDateFilterDefinition, ChannelsFilterDefinition {
957
- excludePastEvents?: boolean;
958
- pastEventsOnly?: boolean;
959
- }
960
-
961
1190
  interface KeywordPickerProps {
962
1191
  value?: Keyword[] | string[];
963
1192
  onChange: (keywords: Keyword[], logicalOperator?: LogicalOperator) => void;
@@ -978,37 +1207,26 @@ interface PageFilterDefinition extends PublishableItemFilterDefinition {
978
1207
  pageType?: PageType;
979
1208
  }
980
1209
 
981
- interface Post extends BaseItem, ItemWithAttachments {
982
- id: string;
983
- comments?: PaginatedList<Comment>;
984
- groupId: string;
985
- content: string;
986
- permalink?: string;
987
- author: Account;
988
- publishingDate: string;
989
- modified?: string;
990
- statistics: ItemStatistics;
991
- keywords?: {
992
- [key: string]: Keyword[];
993
- };
994
- contentLanguageCode?: string;
995
- isLiked?: boolean;
996
- isUnread?: boolean;
997
- isDemoContent?: boolean;
998
- isFollowing?: boolean;
999
- }
1000
- interface PostFilterDefinition {
1001
- token?: string;
1002
- pageSize?: string;
1003
- search?: string;
1004
- keywords?: FilterWithLogicalOperator;
1005
- }
1210
+ declare function useNewsStreamDataLoader(filter?: NewsFilterDefinition, searchText?: string, includeAllItems?: boolean): ItemLoader<NewsStreamItem, number>;
1211
+
1212
+ declare function useEventsStreamDataLoader(filter?: EventFilterDefinition, searchText?: string, view?: EventView): ItemLoader<EventStreamItem, number>;
1006
1213
 
1007
1214
  interface PostStreamFilterDefinition extends PostFilterDefinition, BeforePublishingDateFilterDefinition, AuthorFilterDefinition {
1008
1215
  }
1009
1216
 
1217
+ declare function usePostsStreamDataLoader(groupId?: string, filter?: PostStreamFilterDefinition, searchText?: string): ItemLoader<PostStreamItem, number>;
1218
+
1219
+ declare function usePagesStreamDataLoader(filter?: PageFilterDefinition, searchText?: string): ItemLoader<PageStreamItem, number>;
1220
+
1010
1221
  interface LibNewsFilterDefinition extends Omit<NewsFilterDefinition, 'channels' | 'keywords'> {
1222
+ /**
1223
+ * Limit results to those associated with the given channels.
1224
+ * For better performance set channel IDs instead of names.
1225
+ */
1011
1226
  channels?: string | FilterWithLogicalOperator;
1227
+ /**
1228
+ * Limit results to those associated with given keywords (keyword IDs)
1229
+ */
1012
1230
  keywords?: string | FilterWithLogicalOperator;
1013
1231
  }
1014
1232
 
@@ -1021,8 +1239,8 @@ interface NewsListProps {
1021
1239
  searchText?: string;
1022
1240
  itemLayoutMode?: ItemLayoutMode;
1023
1241
  onItemClick?: (item: NewsItem, itemUrl?: string, isTitleClicked?: boolean) => unknown;
1024
- onChannelClick?: (channel: string) => unknown;
1025
- onKeywordClick?: (keyword: string) => unknown;
1242
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
1243
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
1026
1244
  hidePlaceholderIfNoBanner?: boolean;
1027
1245
  hidePagination?: boolean;
1028
1246
  pageSize?: number;
@@ -1039,6 +1257,9 @@ declare const ManageChannels: FC<ManageChannelsProps>;
1039
1257
  interface ChannelSelectorWrapperProps {
1040
1258
  onChannelsChanged: (channels: Channel[], logicalOperator?: LogicalOperator) => void;
1041
1259
  showLogicalOperatorOptions?: boolean;
1260
+ /**
1261
+ * For better performance set channel IDs instead of names.
1262
+ */
1042
1263
  defaultSelectedChannels?: string[] | FilterWithLogicalOperator;
1043
1264
  className?: string;
1044
1265
  }
@@ -1055,10 +1276,11 @@ interface NewsGridProps {
1055
1276
  maxColumnCount?: number;
1056
1277
  rowCount?: number;
1057
1278
  onItemClick?: (item: NewsItem, itemUrl?: string, isTitleClicked?: boolean) => unknown;
1058
- onChannelClick?: (channel: string) => unknown;
1059
- onKeywordClick?: (keyword: string) => unknown;
1279
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
1280
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
1060
1281
  includeAllItems?: boolean;
1061
1282
  className?: string;
1283
+ hideIntro?: boolean;
1062
1284
  }
1063
1285
  declare const NewsGrid: FC<NewsGridProps>;
1064
1286
 
@@ -1074,7 +1296,7 @@ interface EventGridProps {
1074
1296
  maxColumnCount?: number;
1075
1297
  rowCount?: number;
1076
1298
  onItemClick?: (item: EventItem, itemUrl?: string) => unknown;
1077
- onChannelClick?: (channel: string) => unknown;
1299
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
1078
1300
  className?: string;
1079
1301
  }
1080
1302
  declare const EventsGrid: FC<EventGridProps>;
@@ -1085,7 +1307,7 @@ interface EventsListProps {
1085
1307
  searchText?: string;
1086
1308
  itemLayoutMode?: ItemLayoutMode;
1087
1309
  onItemClick?: (item: EventItem, itemUrl?: string) => unknown;
1088
- onChannelClick?: (channel: string) => unknown;
1310
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
1089
1311
  hidePlaceholderIfNoBanner?: boolean;
1090
1312
  hidePagination?: boolean;
1091
1313
  pageSize?: number;
@@ -1094,7 +1316,14 @@ interface EventsListProps {
1094
1316
  declare const EventsList: FC<EventsListProps>;
1095
1317
 
1096
1318
  interface NewsHeroFilterProps {
1319
+ /**
1320
+ * Limit results to those associated with the given channels.
1321
+ * For better performance set channel IDs instead of names.
1322
+ */
1097
1323
  channels?: string | FilterWithLogicalOperator;
1324
+ /**
1325
+ * Limit results to those associated with given keywords (keyword IDs)
1326
+ */
1098
1327
  keywords?: string | FilterWithLogicalOperator;
1099
1328
  pageSize?: number;
1100
1329
  }
@@ -1106,8 +1335,8 @@ interface NewsHeroProps {
1106
1335
  width?: number | string;
1107
1336
  height?: number | string;
1108
1337
  includeAllItems?: boolean;
1109
- onChannelClick?: (channel: string) => unknown;
1110
- onKeywordClick?: (keyword: string) => unknown;
1338
+ onChannelClick?: (channelName: string, channelItem?: Channel) => unknown;
1339
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
1111
1340
  showKeywords?: boolean;
1112
1341
  }
1113
1342
  declare const NewsHero: FC<NewsHeroProps>;
@@ -1136,27 +1365,52 @@ declare const NewsItemContextProvider: FC<{
1136
1365
  itemId: string;
1137
1366
  }>;
1138
1367
 
1139
- declare const ToolbarNewsLanguageSelector: FC<{
1368
+ declare const PageItemContextProvider: FC<{
1369
+ itemId: string;
1370
+ }>;
1371
+
1372
+ declare const EventItemContextProvider: FC<{
1373
+ itemId: string;
1374
+ }>;
1375
+
1376
+ declare const ToolbarLanguageSelector: FC<{
1140
1377
  showEditLanguagePreferences?: boolean;
1141
1378
  onEditLanguagePreferences?: () => unknown;
1142
1379
  }>;
1143
1380
 
1381
+ declare const ToolbarManageItemButton: FC<{
1382
+ onClick?: (itemId: string) => unknown;
1383
+ }>;
1144
1384
  declare const ToolbarManageNewsItemButton: FC<{
1145
1385
  onClick?: (itemId: string) => unknown;
1146
1386
  }>;
1147
1387
 
1148
- interface NewsDetailPreviewProps {
1388
+ interface SharedItemDetailPreviewProps {
1149
1389
  itemId?: string;
1150
1390
  versionId?: string;
1151
1391
  className?: string;
1392
+ hideLikes?: boolean;
1393
+ hideComments?: boolean;
1152
1394
  }
1153
- declare const NewsDetailPreview: FC<NewsDetailPreviewProps>;
1395
+ declare const NewsDetailPreview: FC<SharedItemDetailPreviewProps>;
1396
+ declare const PageDetailPreview: FC<SharedItemDetailPreviewProps>;
1397
+ declare const EventDetailPreview: FC<SharedItemDetailPreviewProps>;
1154
1398
 
1155
1399
  declare const NewsItemPreviewContextProvider: FC<{
1156
1400
  itemId: string;
1157
1401
  versionId?: string;
1158
1402
  }>;
1159
1403
 
1404
+ declare const PageItemPreviewContextProvider: FC<{
1405
+ itemId: string;
1406
+ versionId?: string;
1407
+ }>;
1408
+
1409
+ declare const EventItemPreviewContextProvider: FC<{
1410
+ itemId: string;
1411
+ versionId?: string;
1412
+ }>;
1413
+
1160
1414
  interface FilterProps {
1161
1415
  filter: IndexableFilterDefinition;
1162
1416
  onChange: (filter: Partial<IndexableFilterDefinition> | null) => void;
@@ -1165,6 +1419,9 @@ interface FilterProps {
1165
1419
  declare const ToolbarFilterPanel: FC<FilterProps>;
1166
1420
 
1167
1421
  interface ChannelFilterProps {
1422
+ /**
1423
+ * For better performance set channel IDs instead of names.
1424
+ */
1168
1425
  channels?: string[];
1169
1426
  className?: string;
1170
1427
  }
@@ -1313,7 +1570,8 @@ interface PagesGridProps {
1313
1570
  maxColumnCount?: number;
1314
1571
  rowCount?: number;
1315
1572
  onItemClick?: (item: PageItem, itemUrl?: string, isTitleClicked?: boolean) => unknown;
1316
- onKeywordClick?: (keyword: string) => unknown;
1573
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => unknown;
1574
+ hideIntro?: boolean;
1317
1575
  className?: string;
1318
1576
  }
1319
1577
  declare const PagesGrid: FC<PagesGridProps>;
@@ -1323,7 +1581,7 @@ interface PagesListProps {
1323
1581
  searchText?: string;
1324
1582
  itemLayoutMode?: ItemLayoutMode;
1325
1583
  onItemClick?: (item: PageItem, itemUrl?: string, isTitleClicked?: boolean) => void;
1326
- onKeywordClick?: (keyword: string) => void;
1584
+ onKeywordClick?: (keywordId: string, keywordItem?: Keyword) => void;
1327
1585
  hidePlaceholderIfNoBanner?: boolean;
1328
1586
  hidePagination?: boolean;
1329
1587
  pageSize?: number;
@@ -1354,10 +1612,41 @@ declare const EventEditorPanel: FC<EventEditorPanelProps>;
1354
1612
  declare const EventEditorToolbarStateActions: FC;
1355
1613
 
1356
1614
  interface EventEditorToolbarRecurringControlsProps {
1357
- onRedirectToRecurrence: (id: string, isMaster: boolean) => void;
1358
- onResetModifiedInstance: () => void;
1359
1615
  className?: string;
1360
1616
  }
1361
1617
  declare const EventEditorToolbarRecurringControls: FC<EventEditorToolbarRecurringControlsProps>;
1362
1618
 
1363
- export { AuthorFilter, AuthorToolbarFilter, Avatar, Props as AvatarProps, ChannelFilter, ChannelFilterProps, ChannelSelectorWrapper as ChannelSelector, ChannelSelectorWrapperProps as ChannelSelectorProps, ChannelToolbarFilter, ClearAllFiltersButton, ClearAllFiltersButtonProps, ContactToolbarFilter, EditorToolbarIndicators, EditorToolbarIndicatorsProps, EventDatesToolbarFilter, EventDatesToolbarFilterProps, EventDetail, EventDetailProps, EventEditor, EventEditorContextProvider, EventEditorContextProviderProps, EventEditorPanel, EventEditorPanelProps, EventEditorProps, EventEditorToolbarRecurringControls, EventEditorToolbarRecurringControlsProps, EventEditorToolbarStateActions, EventGridProps, EventView, EventsEditorDashboard, EventsEditorDashboardProps, EventsGrid, EventsList, EventsListProps, FilterProps, FilterSearch, FilterWithLogicalOperator, GroupNotificationsSettings, GroupNotificationsSettingsProps, ItemLayoutMode, ItemResourceTypes, Keyword, ScrollableKeywordPicker as KeywordPicker, KeywordPickerProps, KeywordsFilter, KeywordsToolbarFilter, LibNewsFilterDefinition, LogicalOperator, ManageChannels, ManageChannelsProps, NewsDetail, NewsDetailPreview, NewsDetailPreviewProps, NewsDetailProps, NewsEditor, NewsEditorContextProvider, NewsEditorContextProviderProps, NewsEditorDashboard, NewsEditorDashboardProps, NewsEditorPanel, NewsEditorPanelProps, NewsEditorProps, NewsEditorToolbarStateActions, NewsGrid, NewsGridProps, NewsHero, NewsHeroProps, NewsItemContextProvider, NewsItemPreviewContextProvider, NewsList, NewsListProps, PageDetail, PageDetailProps, PageType, PageViewTrackerSettings, PageViewTrackerSettingsContextProvider, PagesGrid, PagesGridProps, PagesList, PagesListProps, PostDetail, PostDetailProps, PostGroupSelector, PostGroupSelectorButton, PostGroupSelectorProps, PostGroupsPicker, PostGroupsPickerProps, PostInputBox, PostInputBoxProps, PostList, PostListContextProvider, PostListContextProviderProps, PostListProps, PublishableItem, PublishingDateFilter, PublishingDateToolbarFilter, ReachContextProps, ReachContextProvider, Dialog as ReachDialog, TargetLinkOverrideContextProvider, Toolbar, ToolbarChannelSelector, ToolbarChannelSelectorOption, ToolbarChannelSelectorProps, ToolbarCloseButton, ToolbarCloseButtonProps, ToolbarEventViewSelector, ToolbarEventViewSelectorProps, ToolbarFilterModal, ToolbarFilterModalButton, ToolbarFilterModalProps, ToolbarFilterPanel, ToolbarFilterSearch, ToolbarFilterToggleButton, ToolbarIconButton, ToolbarIconButtonProps, ToolbarManageNewsItemButton, ToolbarMarkAllEventsAsReadButton, ToolbarMarkAllNewsAsReadButton, ToolbarMarkEventsItemsAsReadButtonProps, ToolbarMarkNewsItemsAsReadButtonProps, ToolbarNewsLanguageSelector, ToolbarPostNotificationButton, ToolbarProps, ToolbarSearchProps, ToolbarUnreadItemsButton, UserDetails, UserDetailsProps, VerticalFilterPanel, VerticalFilterPanelProps, isFilterActive, useCurrentUser };
1619
+ interface PageEditorContextProviderProps {
1620
+ itemId?: string;
1621
+ groupId?: string;
1622
+ parentId?: string;
1623
+ onSuccessfulCreate?: (itemId: string) => void;
1624
+ onSuccessfulDelete?: (itemId: number | string, status: WorkflowStatus) => void;
1625
+ onSuccessfulDeletePermanently?: (itemId: number | string) => void;
1626
+ }
1627
+ declare const PageEditorContextProvider: FC<PageEditorContextProviderProps>;
1628
+
1629
+ interface PageEditorProps {
1630
+ homeBreadcrumbTargetUrl?: string;
1631
+ className?: string;
1632
+ }
1633
+ declare const PageEditor: FC<PageEditorProps>;
1634
+
1635
+ declare const PageEditorToolbarStateActions: FC;
1636
+
1637
+ interface PageEditorPanelProps {
1638
+ className?: string;
1639
+ }
1640
+ declare const PageEditorPanel: FC<PageEditorPanelProps>;
1641
+
1642
+ interface ErrorWrapperProps {
1643
+ errorType: ErrorType;
1644
+ isList?: boolean;
1645
+ }
1646
+ declare const ErrorWrapper: FC<ErrorWrapperProps>;
1647
+
1648
+ declare const ToolbarBookmarkButton: FC<{
1649
+ onClick?: () => unknown;
1650
+ }>;
1651
+
1652
+ export { AuthorFilter, AuthorToolbarFilter, Avatar, Props as AvatarProps, ChannelFilter, ChannelFilterProps, ChannelSelectorWrapper as ChannelSelector, ChannelSelectorWrapperProps as ChannelSelectorProps, ChannelToolbarFilter, ClearAllFiltersButton, ClearAllFiltersButtonProps, ContactToolbarFilter, EditorToolbarIndicators, EditorToolbarIndicatorsProps, ErrorType, ErrorWrapper, ErrorWrapperProps, EventDatesToolbarFilter, EventDatesToolbarFilterProps, EventDetail, EventDetailPreview, EventDetailProps, EventEditor, EventEditorContextProvider, EventEditorContextProviderProps, EventEditorPanel, EventEditorPanelProps, EventEditorProps, EventEditorToolbarRecurringControls, EventEditorToolbarRecurringControlsProps, EventEditorToolbarStateActions, EventGridProps, EventItemContextProvider, EventItemPreviewContextProvider, EventStreamItem, EventView, EventsEditorDashboard, EventsEditorDashboardProps, EventsGrid, EventsList, EventsListProps, FilterProps, FilterSearch, FilterWithLogicalOperator, GroupNotificationsSettings, GroupNotificationsSettingsProps, ItemLayoutMode, ItemLoader, ItemResourceTypes, Keyword, ScrollableKeywordPicker as KeywordPicker, KeywordPickerProps, KeywordsFilter, KeywordsToolbarFilter, LibNewsFilterDefinition, LogicalOperator, ManageChannels, ManageChannelsProps, NewsDetail, NewsDetailPreview, NewsDetailProps, NewsEditor, NewsEditorContextProvider, NewsEditorContextProviderProps, NewsEditorDashboard, NewsEditorDashboardProps, NewsEditorPanel, NewsEditorPanelProps, NewsEditorProps, NewsEditorToolbarStateActions, NewsGrid, NewsGridProps, NewsHero, NewsHeroProps, NewsItemContextProvider, NewsItemPreviewContextProvider, NewsList, NewsListProps, NewsStreamItem, PageDetail, PageDetailPreview, PageDetailProps, PageEditor, PageEditorContextProvider, PageEditorContextProviderProps, PageEditorPanel, PageEditorPanelProps, PageEditorProps, PageEditorToolbarStateActions, PageItemContextProvider, PageItemPreviewContextProvider, PageStreamItem, PageType, PageViewTrackerSettings, PageViewTrackerSettingsContextProvider, PagesGrid, PagesGridProps, PagesList, PagesListProps, PostDetail, PostDetailProps, PostGroupSelector, PostGroupSelectorButton, PostGroupSelectorProps, PostGroupsPicker, PostGroupsPickerProps, PostInputBox, PostInputBoxProps, PostList, PostListContextProvider, PostListContextProviderProps, PostListProps, PostStreamItem, PublishableItem, PublishingDateFilter, PublishingDateToolbarFilter, ReachContextProps, ReachContextProvider, LegacyDialog as ReachDialog, SharedItemDetailPreviewProps, TargetLinkOverrideContextProvider, Toolbar, ToolbarBookmarkButton, ToolbarChannelSelector, ToolbarChannelSelectorOption, ToolbarChannelSelectorProps, ToolbarCloseButton, ToolbarCloseButtonProps, ToolbarEventViewSelector, ToolbarEventViewSelectorProps, ToolbarFilterModal, ToolbarFilterModalButton, ToolbarFilterModalProps, ToolbarFilterPanel, ToolbarFilterSearch, ToolbarFilterToggleButton, ToolbarIconButton, ToolbarIconButtonProps, ToolbarLanguageSelector, ToolbarManageButton, ToolbarManageItemButton, ToolbarManageNewsItemButton, ToolbarMarkAllEventsAsReadButton, ToolbarMarkAllNewsAsReadButton, ToolbarMarkEventsItemsAsReadButtonProps, ToolbarMarkNewsItemsAsReadButtonProps, ToolbarLanguageSelector as ToolbarNewsLanguageSelector, ToolbarPostNotificationButton, ToolbarProps, ToolbarSearchProps, ToolbarUnreadItemsButton, UserDetails, UserDetailsProps, VerticalFilterPanel, VerticalFilterPanelProps, VideoSource$1 as VideoSource, isFilterActive, useCurrentUser, useEventsStreamDataLoader, useLazySubscriptionContext, useNewsStreamDataLoader, usePagesStreamDataLoader, usePostsStreamDataLoader };