@livetiles/reach-components-react 0.4.0-preview.17 → 0.4.0-preview.18

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.
package/index.d.ts CHANGED
@@ -1,25 +1,724 @@
1
- import { ReachContextProps, ReachContextProvider } from './ReachContext';
2
- import { NewsDetail, NewsDetailProps } from './NewsDetail';
3
- import { PageDetail, PageDetailProps } from './PageDetail';
4
- import { EventDetail, EventDetailProps } from './EventDetail';
5
- import { ItemLayoutMode, NewsList, NewsListProps } from './NewsList';
6
- import { ManageChannels, ManageChannelsProps } from './ManageChannels';
7
- import { useCurrentUser } from '@livetiles/reach/util/common';
8
- import { ToolbarChannelSelectorOption, ToolbarChannelSelectorProps, ToolbarCloseButtonProps, ToolbarIconButtonProps, ToolbarMarkAllItemsAsReadButtonProps, ToolbarProps, ToolbarSearchProps, UserDetails, UserDetailsProps } from '@livetiles/reach/ui/common';
9
- import { Avatar, Props as AvatarProps } from '@livetiles/reach/ui/common';
10
- import { NewsGrid, NewsGridProps } from './NewsGrid';
11
- import { NewsHero, NewsHeroProps } from './NewsHero';
12
- import { NewsEditorDashboard, NewsEditorDashboardProps } from './NewsEditorDashboard';
13
- import { PublishableItem } from '@livetiles/reach/util/common';
14
- import { Toolbar } from '@livetiles/reach/ui/common';
15
- import { ToolbarIconButton } from '@livetiles/reach/ui/common';
16
- import { ToolbarChannelSelector } from '@livetiles/reach/ui/common';
17
- import { ToolbarMarkAllEventsAsReadButton } from '@livetiles/reach/ui/common';
18
- import { ToolbarMarkAllNewsAsReadButton } from '@livetiles/reach/ui/common';
19
- import { NewsItemContextProvider } from './NewsItemContextProvider';
20
- import { ToolbarNewsLanguageSelector } from './ToolbarNewsLanguageSelector';
21
- import { ToolbarCloseButton } from '@livetiles/reach/ui/common';
22
- import { ToolbarManageNewsItemButton } from './ToolbarManageNewsItemButton';
23
- import { NewsDetailPreview, NewsDetailPreviewProps } from './NewsDetailPreview';
24
- export { ReachContextProvider, NewsDetail, PageDetail, EventDetail, NewsList, ItemLayoutMode, NewsGrid, ManageChannels, useCurrentUser, UserDetails, Avatar, NewsHero, NewsEditorDashboard, Toolbar, ToolbarIconButton, ToolbarChannelSelector, ToolbarMarkAllEventsAsReadButton, ToolbarMarkAllNewsAsReadButton, ToolbarCloseButton, NewsItemContextProvider, ToolbarNewsLanguageSelector, ToolbarManageNewsItemButton, NewsDetailPreview, };
25
- export type { ReachContextProps, NewsDetailProps, PageDetailProps, EventDetailProps, NewsListProps, NewsGridProps, ManageChannelsProps, UserDetailsProps, AvatarProps, NewsHeroProps, PublishableItem, NewsEditorDashboardProps, NewsDetailPreviewProps, ToolbarProps, ToolbarSearchProps, ToolbarIconButtonProps, ToolbarChannelSelectorProps, ToolbarChannelSelectorOption, ToolbarMarkAllItemsAsReadButtonProps, ToolbarCloseButtonProps, };
1
+ import { FC, ReactNode } from 'react';
2
+ import { IDropdownOption, IPersonaProps } from 'office-ui-fabric-react';
3
+ import * as styled_components from 'styled-components';
4
+
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
+ declare enum AuthenticationType {
46
+ unknown = 0,
47
+ azuread = 1,
48
+ b2c = 3,
49
+ temporary = 4,
50
+ apiKey = 5,
51
+ teams = 6,
52
+ onPremKeycloak = 7,
53
+ openId = 8,
54
+ public = 99
55
+ }
56
+
57
+ declare enum IdentityProviderNames {
58
+ MicrosoftWork = "microsoft-work",
59
+ Google = "google",
60
+ EMail = "email",
61
+ Apple = "apple"
62
+ }
63
+ interface IdentityProviderSettings {
64
+ name: string;
65
+ issuer: string;
66
+ clientId: string;
67
+ realm: string;
68
+ url: string;
69
+ scope: string;
70
+ }
71
+
72
+ interface Resources {
73
+ [language: string]: Record<string, string>;
74
+ }
75
+
76
+ interface BasicUserInformation {
77
+ displayName?: string;
78
+ userPrincipalName?: string;
79
+ mail?: string;
80
+ tokenUniqueId?: string;
81
+ authenticationType?: AuthenticationType;
82
+ created?: string;
83
+ }
84
+
85
+ declare enum AccountType {
86
+ User = 1,
87
+ Group = 2
88
+ }
89
+ interface Account extends BasicUserInformation {
90
+ id?: string;
91
+ type?: AccountType;
92
+ tenantId?: string;
93
+ }
94
+
95
+ interface UserChannelSubscription {
96
+ id: string;
97
+ name: string;
98
+ sendNotifications?: boolean;
99
+ isPinnedToNavigation?: boolean;
100
+ isMandatory?: boolean;
101
+ }
102
+
103
+ interface PublishableItemNotificationSummary {
104
+ itemId: string;
105
+ title?: string;
106
+ channelIds?: string[];
107
+ publishingDate?: string;
108
+ }
109
+ declare enum GroupRoleNames {
110
+ Admin = "Admin",
111
+ Editor = "Editor",
112
+ Author = "Author",
113
+ Reader = "Reader",
114
+ LimitedReader = "LimitedReader",
115
+ None = "None"
116
+ }
117
+ declare enum GroupRoles {
118
+ None = 0,
119
+ LimitedReader = 5,
120
+ Reader = 10,
121
+ Author = 20,
122
+ Editor = 30,
123
+ Admin = 40
124
+ }
125
+ declare enum NotificationType {
126
+ None = 0,
127
+ MobilePush = 1,
128
+ Email = 2,
129
+ Teams = 4,
130
+ BrowserPush = 8
131
+ }
132
+ interface NotificationTypeSettings {
133
+ news: NotificationType;
134
+ posts: NotificationType;
135
+ comments: NotificationType;
136
+ mentions: NotificationType;
137
+ events: NotificationType;
138
+ chat: NotificationType;
139
+ pluginNotifications: {
140
+ [key: string]: NotificationType;
141
+ };
142
+ }
143
+ interface CurrentUser extends Account {
144
+ isEmailVerificationPending?: boolean;
145
+ isSubscriptionOwner: boolean;
146
+ givenName: string;
147
+ surname: string;
148
+ preferredUiLanguage: string;
149
+ preferredContentLanguage?: string;
150
+ preferredLocale?: string;
151
+ bookmarks: string[];
152
+ groups: UserGroup[];
153
+ subscription: SubscriptionSummary;
154
+ availableSubscriptions: SubscriptionSummary[];
155
+ channels: UserChannelSubscription[];
156
+ userHash: string;
157
+ unreadNews: PublishableItemNotificationSummary[];
158
+ unreadEvents: PublishableItemNotificationSummary[];
159
+ unreadPosts: {
160
+ groupId: string;
161
+ itemId: string;
162
+ }[];
163
+ unreadFeedItemsCount?: number;
164
+ notificationTypeSettings: NotificationTypeSettings;
165
+ hasPendingRegistration?: boolean;
166
+ minRoles: UserMinRoles;
167
+ hasDirectory: boolean;
168
+ contacts: UserContact[];
169
+ termsAndConditionsApprovedHash: string;
170
+ isPublicUser?: boolean;
171
+ hasUnreadChats?: boolean;
172
+ }
173
+ interface UserContact {
174
+ tokenUniqueId: string;
175
+ tenantId: string;
176
+ }
177
+ interface GroupBase {
178
+ id: string;
179
+ name: string;
180
+ translations?: {
181
+ [key: string]: string;
182
+ };
183
+ }
184
+ interface UserGroup extends GroupBase {
185
+ allowPosts: boolean;
186
+ disablePostComments: boolean;
187
+ availableChannelIds: string[];
188
+ defaultChannelIds: string[];
189
+ mandatoryChannelIds: string[];
190
+ availableKeywordIds: string[];
191
+ defaultKeywordIds: string[];
192
+ mandatoryKeywordIds: string[];
193
+ role: UserGroupRole;
194
+ }
195
+ interface UserMinRoles {
196
+ isEditor: boolean;
197
+ isAuthor: boolean;
198
+ isAdmin: boolean;
199
+ isReader: boolean;
200
+ isSubscriptionOwner: boolean;
201
+ }
202
+ interface UserGroupRole {
203
+ roleValue: GroupRoles;
204
+ displayName: GroupRoleNames;
205
+ }
206
+
207
+ interface LanguageBase {
208
+ code: string;
209
+ }
210
+
211
+ interface DirectoryConfiguration extends DirectoryConfigurationPatch {
212
+ domains?: string[];
213
+ tenantId: string;
214
+ organization?: string;
215
+ hasAdminConsent: boolean;
216
+ hasTeamsAdminConsent: boolean;
217
+ allowAccessToExternalUsers: boolean;
218
+ }
219
+ interface DirectoryConfigurationPatch {
220
+ hasAdminConsent?: boolean;
221
+ hasTeamsAdminConsent?: boolean;
222
+ allowAccessToExternalUsers?: boolean;
223
+ }
224
+ interface SignInSettings {
225
+ customIdentityProviders: IdentityProviderSettings[];
226
+ identityProviders: IdentityProviderNames[];
227
+ customResources: Resources;
228
+ }
229
+ interface BaseSubscription {
230
+ id: string;
231
+ subscriptionName: string;
232
+ subscriptionHandle?: string;
233
+ contact: Account;
234
+ theme: Theme;
235
+ defaultLanguage: string;
236
+ logoUrl: string;
237
+ faviconUrl?: string;
238
+ navigation: NavigationNode[];
239
+ regionSettings?: RegionSettings;
240
+ signInSettings?: SignInSettings;
241
+ useInAppBrowser?: boolean;
242
+ hasUnreadItems: boolean;
243
+ pageTrackingInfo: PageTrackingInfo;
244
+ termsAndConditionsHash?: string;
245
+ }
246
+ interface PageTrackingInfo {
247
+ type: string;
248
+ key: string;
249
+ }
250
+ interface RegionSettings {
251
+ name: string;
252
+ contentRegion: string;
253
+ }
254
+ interface SubscriptionSummary extends BaseSubscription {
255
+ languages: LanguageBase[];
256
+ featureMask: string;
257
+ company: string;
258
+ directories: DirectoryConfiguration[];
259
+ webPluginDefinitions: WebPluginDefinition[];
260
+ userPropertyDefinitions: UserPropertyDefinition[];
261
+ userFlowSettings?: UserFlowSettings;
262
+ customDomain?: string;
263
+ allowSelfRegistration?: boolean;
264
+ }
265
+ interface UserFlowSettings {
266
+ customToken?: string;
267
+ minimalRole?: UserGroupRole;
268
+ }
269
+ interface Theme {
270
+ name: string;
271
+ primaryColor: string;
272
+ secondaryColor: string;
273
+ useHighlightColorOnWhiteBackground?: boolean;
274
+ }
275
+ interface NavigationNode {
276
+ key: string;
277
+ label: string;
278
+ translations?: {
279
+ [key: string]: string;
280
+ };
281
+ }
282
+ interface WebPluginDefinition {
283
+ pluginId: string;
284
+ extensions: PluginExtension[];
285
+ notifications?: PluginNotificationDefinitions[];
286
+ settings: {
287
+ [key: string]: string;
288
+ };
289
+ isGlobal?: boolean;
290
+ bundleUrl?: string;
291
+ bundleModificationDate?: string;
292
+ subscriptionId?: string;
293
+ environment?: string;
294
+ }
295
+ interface PluginExtension {
296
+ area: string;
297
+ componentName: string;
298
+ route: string;
299
+ navigationNode?: {
300
+ iconName?: string;
301
+ label?: string;
302
+ translations?: {
303
+ [key: string]: string;
304
+ };
305
+ };
306
+ }
307
+ interface PluginNotificationDefinitions {
308
+ key: string;
309
+ title: string;
310
+ titleTranslations?: {
311
+ [key: string]: string;
312
+ };
313
+ description?: string;
314
+ descriptionTranslations?: {
315
+ [key: string]: string;
316
+ };
317
+ possibleNotificationTypes: NotificationType;
318
+ }
319
+ interface UserPropertyDefinition {
320
+ name: string;
321
+ label?: string;
322
+ translations?: {
323
+ [key: string]: string;
324
+ };
325
+ type?: FieldType;
326
+ mode?: FieldMode;
327
+ }
328
+ declare enum FieldType {
329
+ Unknown = 0,
330
+ Text = 1,
331
+ MultilineText = 2
332
+ }
333
+ declare enum FieldMode {
334
+ Unknown = 0,
335
+ AdminOnly = 1,
336
+ UserEditable = 2,
337
+ Hidden = 3
338
+ }
339
+
340
+ interface Channel {
341
+ id: string;
342
+ name: string;
343
+ translations?: {
344
+ [key: string]: string;
345
+ };
346
+ }
347
+
348
+ interface Keyword {
349
+ id: string;
350
+ name: string;
351
+ groupId?: string;
352
+ translations: {
353
+ [key: string]: string;
354
+ };
355
+ }
356
+
357
+ interface ItemStatistics {
358
+ commentCount?: number;
359
+ likeCount?: number;
360
+ readCount?: number;
361
+ confirmationCount?: number;
362
+ bookmarkCount?: number;
363
+ participantsCount?: number;
364
+ }
365
+
366
+ interface NotificationSettings {
367
+ isEnabled: boolean;
368
+ }
369
+
370
+ interface FeedbackSettings {
371
+ feedbackOptions: ReadonlyArray<Feedback>;
372
+ }
373
+ declare type Feedback = 'comment' | 'like' | 'confirm' | null;
374
+
375
+ interface NewsMetadata {
376
+ mailNotificationSettings?: NotificationSettings;
377
+ pushNotificationSettings?: NotificationSettings;
378
+ feedbackSettings?: FeedbackSettings;
379
+ }
380
+
381
+ declare enum KnownNewsState {
382
+ None = 0,
383
+ Unconfirmed = 1,
384
+ Alert = 2
385
+ }
386
+
387
+ declare type VersionId = string;
388
+ interface SchedulableItem extends PublishableItem {
389
+ metadata?: NewsMetadata;
390
+ channels?: SchedulableItemChannel[];
391
+ }
392
+ interface NewsItem extends SchedulableItem {
393
+ source?: string;
394
+ alertOptions?: NewsItemAlertOptions;
395
+ expiryDate?: string;
396
+ knownState: KnownNewsState;
397
+ hasNewComments?: boolean;
398
+ isLiked?: boolean;
399
+ }
400
+ interface NewsItemAlertOptions {
401
+ duration?: string;
402
+ endDate?: Date;
403
+ expireAfter?: boolean;
404
+ }
405
+ interface SchedulableItemChannel {
406
+ name: string;
407
+ }
408
+
409
+ declare enum VideoSource {
410
+ YouTube = 0,
411
+ Vimeo = 1,
412
+ MicrosoftStream = 2,
413
+ GenericUrl = 3,
414
+ Kaltura = 4
415
+ }
416
+
417
+ interface BaseItem {
418
+ id?: string;
419
+ statistics?: ItemStatistics;
420
+ poll?: Poll;
421
+ }
422
+ interface Poll {
423
+ questions: PollQuestion[];
424
+ }
425
+ interface PollQuestion extends PollQuestionSettings {
426
+ questionId: string;
427
+ choices: PollQuestionChoice[];
428
+ }
429
+ interface PollQuestionSettings {
430
+ isMultiChoice?: boolean;
431
+ }
432
+ interface PollQuestionChoice {
433
+ choiceId: string;
434
+ description?: string;
435
+ disabled?: boolean;
436
+ }
437
+
438
+ declare enum WorkflowStatus {
439
+ draft = "draft",
440
+ ready = "ready",
441
+ rejected = "rejected",
442
+ approved = "approved",
443
+ deleted = "deleted"
444
+ }
445
+
446
+ interface ContentDefinition {
447
+ active: boolean;
448
+ language: string;
449
+ }
450
+ interface PublishableItemContent extends ContentDefinition {
451
+ title?: string;
452
+ headline?: string;
453
+ intro?: string;
454
+ body?: string;
455
+ bodyRaw?: string;
456
+ customProperties?: {
457
+ [key: string]: any;
458
+ };
459
+ poll?: PollTranslation;
460
+ externalUrl?: string;
461
+ fileInfo?: DocumentFileInfo;
462
+ }
463
+ interface DocumentFileInfo {
464
+ fileId: string;
465
+ mimeType: string;
466
+ fileName: string;
467
+ extension: string;
468
+ shouldOpenInBrowser?: boolean;
469
+ }
470
+ interface BannerInfo {
471
+ type: 'image' | 'video' | null;
472
+ videoSource?: VideoSource;
473
+ videoId?: string;
474
+ videoUrl?: string;
475
+ isDirectVideoUrl?: boolean;
476
+ imageId?: string;
477
+ }
478
+ interface LeaseInfo {
479
+ leaseId: string | null;
480
+ user: Account;
481
+ }
482
+ interface PublishableItemContents {
483
+ [key: string]: PublishableItemContent;
484
+ }
485
+ interface PublishableItem extends BaseItem {
486
+ lease: LeaseInfo;
487
+ id?: string;
488
+ versionId?: VersionId;
489
+ publishingDate?: string;
490
+ deleted?: string;
491
+ author?: Account;
492
+ owner?: Account;
493
+ onBehalfOf?: Account;
494
+ contents?: PublishableItemContents;
495
+ status?: WorkflowStatus;
496
+ keywords?: {
497
+ [key: string]: Keyword[];
498
+ };
499
+ fileAccessToken?: string;
500
+ bannerInfo?: BannerInfo;
501
+ customProperties?: {
502
+ [key: string]: any;
503
+ };
504
+ modifiedBy: Account;
505
+ modified: string;
506
+ created: string;
507
+ publishedVersionId?: string;
508
+ isCurrentPublishedVersion?: boolean;
509
+ isLatestVersion?: boolean;
510
+ permalink?: string;
511
+ groupIds: string[];
512
+ statistics?: ItemStatistics;
513
+ useExternalContent?: boolean;
514
+ isDemoContent?: boolean;
515
+ }
516
+ interface PollTranslation {
517
+ questions: QuestionTranslations[];
518
+ }
519
+ interface QuestionTranslations {
520
+ questionId: string;
521
+ text: string;
522
+ choices: ChoiceTranslations[];
523
+ }
524
+ interface ChoiceTranslations {
525
+ choiceId: string;
526
+ text: string;
527
+ }
528
+
529
+ declare function useCurrentUser(): CurrentUser;
530
+
531
+ interface ToolbarProps {
532
+ leftSide?: ReactNode;
533
+ hideLeftSide?: boolean;
534
+ rightSide?: ReactNode;
535
+ hideRightSide?: boolean;
536
+ search?: ToolbarSearchProps;
537
+ className?: string;
538
+ }
539
+ interface ToolbarSearchProps {
540
+ searchText?: string;
541
+ onSearchTextChange?: (searchText: string) => void;
542
+ onExecuteSearch?: (searchText: string) => void;
543
+ }
544
+ declare const Toolbar: FC<ToolbarProps>;
545
+
546
+ interface ToolbarChannelSelectorProps {
547
+ getInitialSelectedKey?: (dropdownOptions: IDropdownOption[]) => string;
548
+ allChannelsOption?: ToolbarChannelSelectorOption;
549
+ channelsOptions?: {
550
+ availableChannels?: string[];
551
+ onSelected?: (channel: Channel) => unknown;
552
+ to?: (channel: Channel) => unknown;
553
+ };
554
+ bookmarkOption?: ToolbarChannelSelectorOption;
555
+ manageChannelsOption?: ToolbarChannelSelectorOption;
556
+ }
557
+ interface ToolbarChannelSelectorOption {
558
+ onSelected?: () => unknown;
559
+ to?: string;
560
+ }
561
+ declare const ToolbarChannelSelector: FC<ToolbarChannelSelectorProps>;
562
+
563
+ interface ToolbarIconButtonProps {
564
+ iconName: string;
565
+ ariaLabelResourceKey: string;
566
+ onClick?: () => unknown;
567
+ to?: string;
568
+ target?: string;
569
+ tooltipText?: string;
570
+ tooltipResourceKey?: string;
571
+ disabled?: boolean;
572
+ className?: string;
573
+ }
574
+ declare const ToolbarIconButton: styled_components.StyledComponent<FC<ToolbarIconButtonProps>, styled_components.DefaultTheme, {}, never>;
575
+
576
+ interface ToolbarMarkAllItemsAsReadButtonProps {
577
+ onMarkAsReadStarted?: () => unknown;
578
+ onMarkAsReadFinished?: () => unknown;
579
+ disabled?: boolean;
580
+ }
581
+ declare const ToolbarMarkAllNewsAsReadButton: FC<ToolbarMarkAllItemsAsReadButtonProps>;
582
+ declare const ToolbarMarkAllEventsAsReadButton: FC<ToolbarMarkAllItemsAsReadButtonProps>;
583
+
584
+ interface ToolbarCloseButtonProps {
585
+ onClick?: () => unknown;
586
+ to?: {
587
+ url: string;
588
+ target?: string;
589
+ };
590
+ }
591
+ declare const ToolbarCloseButton: FC<ToolbarCloseButtonProps>;
592
+
593
+ interface Props extends IPersonaProps {
594
+ upn: string;
595
+ tenantId?: string;
596
+ className?: string;
597
+ displayName?: string;
598
+ }
599
+ declare const Avatar: FC<Props>;
600
+
601
+ interface UserDetailsProps {
602
+ upn: string;
603
+ showAvatar: boolean;
604
+ id?: string;
605
+ }
606
+ declare const UserDetails: FC<UserDetailsProps>;
607
+
608
+ interface OwnerFilterDefinition extends IndexableFilterDefinition {
609
+ owner?: string;
610
+ }
611
+
612
+ interface SourceFilterDefinition extends IndexableFilterDefinition {
613
+ source?: string;
614
+ }
615
+
616
+ interface KeywordsFilterDefinition extends IndexableFilterDefinition {
617
+ keywords?: string;
618
+ }
619
+
620
+ interface BeforePublishingDateFilterDefinition extends IndexableFilterDefinition {
621
+ beforeDate?: string;
622
+ }
623
+
624
+ interface PublishableItemFilterDefinition extends IndexableFilterDefinition, BaseFilterDefinition, BeforePublishingDateFilterDefinition, OwnerFilterDefinition, SourceFilterDefinition, KeywordsFilterDefinition {
625
+ }
626
+ interface BaseFilterDefinition {
627
+ search?: string;
628
+ token?: string;
629
+ pageSize?: string | number;
630
+ groupId?: string;
631
+ }
632
+ interface IndexableFilterDefinition {
633
+ [key: string]: any;
634
+ }
635
+
636
+ interface AuthorFilterDefinition extends IndexableFilterDefinition {
637
+ author?: string;
638
+ }
639
+
640
+ interface ChannelsFilterDefinition extends IndexableFilterDefinition {
641
+ channels?: string;
642
+ }
643
+
644
+ interface StateFilterDefinition extends IndexableFilterDefinition {
645
+ state?: WorkflowStatus;
646
+ }
647
+
648
+ interface NewsFilterDefinition extends PublishableItemFilterDefinition, AuthorFilterDefinition, ChannelsFilterDefinition, StateFilterDefinition {
649
+ groupId?: string;
650
+ bookmarksOnly?: boolean;
651
+ }
652
+
653
+ declare enum ItemLayoutMode {
654
+ Default = "default",
655
+ Compact = "compact"
656
+ }
657
+ interface NewsListProps {
658
+ filter?: NewsFilterDefinition;
659
+ itemLayoutMode?: ItemLayoutMode;
660
+ onItemClick?: (item: NewsItem, itemUrl?: string) => unknown;
661
+ hidePlaceholderIfNoBanner?: boolean;
662
+ hidePagination?: boolean;
663
+ pageSize?: number;
664
+ className?: string;
665
+ }
666
+ declare const NewsList: FC<NewsListProps>;
667
+
668
+ interface ManageChannelsProps {
669
+ className?: string;
670
+ }
671
+ declare const ManageChannels: FC<ManageChannelsProps>;
672
+
673
+ interface NewsGridProps {
674
+ filter?: NewsFilterDefinition;
675
+ hidePagination?: boolean;
676
+ columnCount?: number;
677
+ rowCount?: number;
678
+ onItemClick?: (item: NewsItem, itemUrl?: string) => unknown;
679
+ className?: string;
680
+ }
681
+ declare const NewsGrid: FC<NewsGridProps>;
682
+
683
+ interface NewsHeroProps {
684
+ filter?: ChannelsFilterDefinition & KeywordsFilterDefinition & {
685
+ pageSize?: number;
686
+ };
687
+ disableAutoplay?: boolean;
688
+ autoplayInterval?: number;
689
+ onItemClick?: (item: NewsItem, itemUrl?: string) => unknown;
690
+ width?: number | string;
691
+ height?: number | string;
692
+ }
693
+ declare const NewsHero: FC<NewsHeroProps>;
694
+
695
+ interface NewsEditorDashboardProps {
696
+ groupId?: string;
697
+ className?: string;
698
+ onItemClick?: (item: NewsItem) => unknown;
699
+ pageSize?: number;
700
+ hidePagination?: boolean;
701
+ }
702
+ declare const NewsEditorDashboard: FC<NewsEditorDashboardProps>;
703
+
704
+ declare const NewsItemContextProvider: FC<{
705
+ itemId: string;
706
+ }>;
707
+
708
+ declare const ToolbarNewsLanguageSelector: FC<{
709
+ showEditLanguagePreferences?: boolean;
710
+ onEditLanguagePreferences?: () => unknown;
711
+ }>;
712
+
713
+ declare const ToolbarManageNewsItemButton: FC<{
714
+ onClick?: (itemId: string) => unknown;
715
+ }>;
716
+
717
+ interface NewsDetailPreviewProps {
718
+ itemId?: string;
719
+ versionId?: string;
720
+ className?: string;
721
+ }
722
+ declare const NewsDetailPreview: FC<NewsDetailPreviewProps>;
723
+
724
+ export { Avatar, Props as AvatarProps, EventDetail, EventDetailProps, ItemLayoutMode, ManageChannels, ManageChannelsProps, NewsDetail, NewsDetailPreview, NewsDetailPreviewProps, NewsDetailProps, NewsEditorDashboard, NewsEditorDashboardProps, NewsGrid, NewsGridProps, NewsHero, NewsHeroProps, NewsItemContextProvider, NewsList, NewsListProps, PageDetail, PageDetailProps, PublishableItem, ReachContextProps, ReachContextProvider, Toolbar, ToolbarChannelSelector, ToolbarChannelSelectorOption, ToolbarChannelSelectorProps, ToolbarCloseButton, ToolbarCloseButtonProps, ToolbarIconButton, ToolbarIconButtonProps, ToolbarManageNewsItemButton, ToolbarMarkAllEventsAsReadButton, ToolbarMarkAllItemsAsReadButtonProps, ToolbarMarkAllNewsAsReadButton, ToolbarNewsLanguageSelector, ToolbarProps, ToolbarSearchProps, UserDetails, UserDetailsProps, useCurrentUser };
package/index.esm2.js CHANGED
@@ -87262,9 +87262,9 @@ var AuthenticationContextProvider = function AuthenticationContextProvider(_a) {
87262
87262
  }), void 0);
87263
87263
  };
87264
87264
 
87265
- var version$1 = "0.3.10";
87266
- var buildId = "95156";
87267
- var commitId = "69238dd990b7cfbb7b5624868b2fe072eeb08079";
87265
+ var version$1 = "0.3.11";
87266
+ var buildId = "95162";
87267
+ var commitId = "790018b9a20bf54762623688675d7b591e301470";
87268
87268
  var isCustomerBuild = false;
87269
87269
  var buildInfo = {
87270
87270
  version: version$1,
package/index.umd.js CHANGED
@@ -87119,9 +87119,9 @@
87119
87119
  }), void 0);
87120
87120
  };
87121
87121
 
87122
- var version$1 = "0.3.10";
87123
- var buildId = "95156";
87124
- var commitId = "69238dd990b7cfbb7b5624868b2fe072eeb08079";
87122
+ var version$1 = "0.3.11";
87123
+ var buildId = "95162";
87124
+ var commitId = "790018b9a20bf54762623688675d7b591e301470";
87125
87125
  var isCustomerBuild = false;
87126
87126
  var buildInfo = {
87127
87127
  version: version$1,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@livetiles/reach-components-react",
3
3
  "description": "Provides React components to consume LiveTiles Reach data",
4
- "version": "0.4.0-preview.17",
4
+ "version": "0.4.0-preview.18",
5
5
  "peerDependencies": {
6
6
  "react": "^16.13.1 || ^17",
7
7
  "react-dom": "^16.13.1 || ^17",