@selfcommunity/react-ui 0.7.9-alpha.54 → 0.7.9-alpha.56

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 (44) hide show
  1. package/lib/cjs/components/BottomNavigation/BottomNavigation.js +1 -1
  2. package/lib/cjs/components/FeedObject/Contributors/Contributors.js +1 -1
  3. package/lib/cjs/components/Group/Group.d.ts +5 -0
  4. package/lib/cjs/components/Group/Group.js +2 -2
  5. package/lib/cjs/components/GroupForm/GroupForm.js +2 -1
  6. package/lib/cjs/components/GroupInviteButton/GroupInviteButton.js +48 -13
  7. package/lib/cjs/components/GroupMembersButton/GroupMembersButton.js +1 -1
  8. package/lib/cjs/components/Groups/Groups.js +1 -8
  9. package/lib/cjs/components/NavigationToolbarMobile/NavigationToolbarMobile.d.ts +1 -0
  10. package/lib/cjs/components/NavigationToolbarMobile/NavigationToolbarMobile.js +9 -1
  11. package/lib/cjs/components/UserSubscribedGroupsWidget/Skeleton.d.ts +21 -0
  12. package/lib/cjs/components/UserSubscribedGroupsWidget/Skeleton.js +46 -0
  13. package/lib/cjs/components/UserSubscribedGroupsWidget/UserSubscribedGroupsWidget.d.ts +68 -0
  14. package/lib/cjs/components/UserSubscribedGroupsWidget/UserSubscribedGroupsWidget.js +183 -0
  15. package/lib/cjs/components/UserSubscribedGroupsWidget/constants.d.ts +1 -0
  16. package/lib/cjs/components/UserSubscribedGroupsWidget/constants.js +4 -0
  17. package/lib/cjs/components/UserSubscribedGroupsWidget/index.d.ts +4 -0
  18. package/lib/cjs/components/UserSubscribedGroupsWidget/index.js +8 -0
  19. package/lib/cjs/components/VoteAudienceButton/VoteAudienceButton.js +1 -1
  20. package/lib/cjs/index.d.ts +2 -1
  21. package/lib/cjs/index.js +5 -2
  22. package/lib/esm/components/BottomNavigation/BottomNavigation.js +1 -1
  23. package/lib/esm/components/FeedObject/Contributors/Contributors.js +1 -1
  24. package/lib/esm/components/Group/Group.d.ts +5 -0
  25. package/lib/esm/components/Group/Group.js +4 -4
  26. package/lib/esm/components/GroupForm/GroupForm.js +2 -1
  27. package/lib/esm/components/GroupInviteButton/GroupInviteButton.js +48 -13
  28. package/lib/esm/components/GroupMembersButton/GroupMembersButton.js +1 -1
  29. package/lib/esm/components/Groups/Groups.js +1 -8
  30. package/lib/esm/components/NavigationToolbarMobile/NavigationToolbarMobile.d.ts +1 -0
  31. package/lib/esm/components/NavigationToolbarMobile/NavigationToolbarMobile.js +11 -3
  32. package/lib/esm/components/UserSubscribedGroupsWidget/Skeleton.d.ts +21 -0
  33. package/lib/esm/components/UserSubscribedGroupsWidget/Skeleton.js +42 -0
  34. package/lib/esm/components/UserSubscribedGroupsWidget/UserSubscribedGroupsWidget.d.ts +68 -0
  35. package/lib/esm/components/UserSubscribedGroupsWidget/UserSubscribedGroupsWidget.js +180 -0
  36. package/lib/esm/components/UserSubscribedGroupsWidget/constants.d.ts +1 -0
  37. package/lib/esm/components/UserSubscribedGroupsWidget/constants.js +1 -0
  38. package/lib/esm/components/UserSubscribedGroupsWidget/index.d.ts +4 -0
  39. package/lib/esm/components/UserSubscribedGroupsWidget/index.js +4 -0
  40. package/lib/esm/components/VoteAudienceButton/VoteAudienceButton.js +1 -1
  41. package/lib/esm/index.d.ts +2 -1
  42. package/lib/esm/index.js +2 -1
  43. package/lib/umd/react-ui.js +1 -1
  44. package/package.json +5 -5
@@ -0,0 +1,180 @@
1
+ import { __rest } from "tslib";
2
+ import React, { useEffect, useMemo, useReducer, useState } from 'react';
3
+ import { styled } from '@mui/material/styles';
4
+ import List from '@mui/material/List';
5
+ import { Button, CardContent, ListItem, Typography } from '@mui/material';
6
+ import { GroupService } from '@selfcommunity/api-services';
7
+ import { CacheStrategies, isInteger, Logger } from '@selfcommunity/utils';
8
+ import { SCCache, useSCPreferences, useSCUser } from '@selfcommunity/react-core';
9
+ import { actionWidgetTypes, dataWidgetReducer, stateWidgetInitializer } from '../../utils/widget';
10
+ import { SCFeatureName, SCGroupPrivacyType, SCGroupSubscriptionStatusType } from '@selfcommunity/types';
11
+ import { SCOPE_SC_UI } from '../../constants/Errors';
12
+ import { FormattedMessage } from 'react-intl';
13
+ import Skeleton from './Skeleton';
14
+ import classNames from 'classnames';
15
+ import BaseDialog from '../../shared/BaseDialog';
16
+ import Widget from '../Widget';
17
+ import { useThemeProps } from '@mui/system';
18
+ import HiddenPlaceholder from '../../shared/HiddenPlaceholder';
19
+ import { PREFIX } from './constants';
20
+ import Group, { GroupSkeleton } from '../Group';
21
+ const classes = {
22
+ root: `${PREFIX}-root`,
23
+ title: `${PREFIX}-title`,
24
+ noResults: `${PREFIX}-no-results`,
25
+ showMore: `${PREFIX}-show-more`,
26
+ dialogRoot: `${PREFIX}-dialog-root`,
27
+ endMessage: `${PREFIX}-end-message`
28
+ };
29
+ const Root = styled(Widget, {
30
+ name: PREFIX,
31
+ slot: 'Root'
32
+ })(() => ({}));
33
+ const DialogRoot = styled(BaseDialog, {
34
+ name: PREFIX,
35
+ slot: 'DialogRoot'
36
+ })(() => ({}));
37
+ /**
38
+ * > API documentation for the Community-JS User Profile Groups Subscribed Widget component. Learn about the available props and the CSS API.
39
+ *
40
+ *
41
+ * This component renders the list of the groups that the given user follows.
42
+ * Take a look at our <strong>demo</strong> component [here](/docs/sdk/community-js/react-ui/Components/UserSubscribedGroups)
43
+
44
+ #### Import
45
+ ```jsx
46
+ import {UserSubscribedGroupsWidget} from '@selfcommunity/react-ui';
47
+ ```
48
+ #### Component Name
49
+ The name `SCUserSubscribedGroupsWidget` can be used when providing style overrides in the theme.
50
+
51
+ #### CSS
52
+
53
+ |Rule Name|Global class|Description|
54
+ |---|---|---|
55
+ |root|.SCUserSubscribedGroupsWidget-root|Styles applied to the root element.|
56
+ |title|.SCUserSubscribedGroupsWidget-title|Styles applied to the title element.|
57
+ |noResults|.SCUserSubscribedGroupsWidget-no-results|Styles applied to no results section.|
58
+ |showMore|.SCUserSubscribedGroupsWidget-show-more|Styles applied to show more button element.|
59
+ |dialogRoot|.SCUserSubscribedGroupsWidget-dialog-root|Styles applied to the root dialog element.|
60
+ |endMessage|.SCUserSubscribedGroupsWidget-end-message|Styles applied to the end message element.|
61
+ * @param inProps
62
+ */
63
+ export default function UserSubscribedGroupsWidget(inProps) {
64
+ // PROPS
65
+ const props = useThemeProps({
66
+ props: inProps,
67
+ name: PREFIX
68
+ });
69
+ const { userId, autoHide, limit = 3, className, GroupProps = {}, cacheStrategy = CacheStrategies.NETWORK_ONLY, onHeightChange, onStateChange, DialogProps = {} } = props, rest = __rest(props, ["userId", "autoHide", "limit", "className", "GroupProps", "cacheStrategy", "onHeightChange", "onStateChange", "DialogProps"]);
70
+ // CONTEXT
71
+ const scUserContext = useSCUser();
72
+ const isMe = useMemo(() => scUserContext.user && userId === scUserContext.user.id, [scUserContext.user, userId]);
73
+ const { features } = useSCPreferences();
74
+ const groupsEnabled = useMemo(() => features.includes(SCFeatureName.GROUPING), [features]);
75
+ // STATE
76
+ const [state, dispatch] = useReducer(dataWidgetReducer, {
77
+ isLoadingNext: false,
78
+ next: null,
79
+ cacheKey: SCCache.getWidgetStateCacheKey(SCCache.GROUPS_SUBSCRIBED_TOOLS_STATE_CACHE_PREFIX_KEY, userId),
80
+ cacheStrategy
81
+ }, stateWidgetInitializer);
82
+ const [openDialog, setOpenDialog] = useState(false);
83
+ /**
84
+ * Initialize component
85
+ * Fetch data only if the component is not initialized and it is not loading data
86
+ */
87
+ const _initComponent = useMemo(() => () => {
88
+ if (!state.initialized && !state.isLoadingNext) {
89
+ GroupService.getUserSubscribedGroups(userId)
90
+ .then((groups) => {
91
+ dispatch({
92
+ type: actionWidgetTypes.LOAD_NEXT_SUCCESS,
93
+ payload: {
94
+ count: groups.count,
95
+ results: groups.results,
96
+ initialized: true
97
+ }
98
+ });
99
+ })
100
+ .catch((error) => {
101
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
102
+ Logger.error(SCOPE_SC_UI, error);
103
+ });
104
+ }
105
+ }, [state.isLoadingNext, state.initialized, userId, dispatch]);
106
+ // EFFECTS
107
+ useEffect(() => {
108
+ let _t;
109
+ if (groupsEnabled || (isInteger(userId) && scUserContext.user !== undefined)) {
110
+ _t = setTimeout(_initComponent);
111
+ return () => {
112
+ _t && clearTimeout(_t);
113
+ };
114
+ }
115
+ }, [scUserContext.user, groupsEnabled, userId]);
116
+ /**
117
+ * Virtual feed update
118
+ */
119
+ useEffect(() => {
120
+ onHeightChange && onHeightChange();
121
+ }, [state.results.length]);
122
+ useEffect(() => {
123
+ if ((!groupsEnabled && !scUserContext.user) || !isInteger(userId)) {
124
+ return;
125
+ }
126
+ else if (cacheStrategy === CacheStrategies.NETWORK_ONLY) {
127
+ onStateChange && onStateChange({ cacheStrategy: CacheStrategies.CACHE_FIRST });
128
+ }
129
+ }, [groupsEnabled, cacheStrategy, scUserContext.user, userId]);
130
+ // HANDLERS
131
+ const handleOnSubscribe = (group) => {
132
+ if (isMe) {
133
+ const newGroups = [...state.results];
134
+ const index = newGroups.findIndex((u) => u.id === group.id);
135
+ if (index !== -1) {
136
+ if (group.subscription_status === SCGroupSubscriptionStatusType.SUBSCRIBED) {
137
+ newGroups[index].subscribers_counter = group.subscribers_counter - 1;
138
+ newGroups[index].subscription_status = null;
139
+ }
140
+ else {
141
+ newGroups[index].subscribers_counter =
142
+ group.privacy === SCGroupPrivacyType.PUBLIC ? group.subscribers_counter + 1 : group.subscribers_counter;
143
+ newGroups[index].subscription_status =
144
+ group.privacy === SCGroupPrivacyType.PUBLIC ? SCGroupSubscriptionStatusType.SUBSCRIBED : SCGroupSubscriptionStatusType.REQUESTED;
145
+ }
146
+ dispatch({ type: actionWidgetTypes.SET_RESULTS, payload: { results: newGroups } });
147
+ }
148
+ }
149
+ };
150
+ const handleToggleDialogOpen = () => {
151
+ setOpenDialog((prev) => !prev);
152
+ };
153
+ // RENDER
154
+ if (!groupsEnabled || (autoHide && !state.count && state.initialized) || !userId) {
155
+ return React.createElement(HiddenPlaceholder, null);
156
+ }
157
+ if (!state.initialized) {
158
+ return React.createElement(Skeleton, null);
159
+ }
160
+ const content = (React.createElement(CardContent, null,
161
+ React.createElement(Typography, { className: classes.title, variant: "h5" },
162
+ React.createElement(FormattedMessage, { id: "ui.userSubscribedGroupsWidget.title", defaultMessage: "ui.userSubscribedGroupsWidget.title", values: {
163
+ total: isMe ? state.results.filter((g) => g.subscription_status === SCGroupSubscriptionStatusType.SUBSCRIBED).length : state.count
164
+ } })),
165
+ !state.count ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" },
166
+ React.createElement(FormattedMessage, { id: "ui.userSubscribedGroupsWidget.subtitle.noResults", defaultMessage: "ui.userSubscribedGroupsWidget.subtitle.noResults" }))) : (React.createElement(React.Fragment, null,
167
+ React.createElement(List, null, state.results.slice(0, limit).map((group) => (React.createElement(ListItem, { key: group.id },
168
+ React.createElement(Group, Object.assign({ elevation: 0, group: group, groupSubscribeButtonProps: { onSubscribe: handleOnSubscribe } }, GroupProps)))))),
169
+ limit < state.count && (React.createElement(Button, { className: classes.showMore, onClick: handleToggleDialogOpen },
170
+ React.createElement(FormattedMessage, { id: "ui.userSubscribedGroupsWidget.button.showAll", defaultMessage: "ui.userSubscribedGroupsWidget.button.showAll" }))),
171
+ openDialog && (React.createElement(DialogRoot, Object.assign({ className: classes.dialogRoot, title: React.createElement(FormattedMessage, { id: "ui.userSubscribedGroupsWidget.title", defaultMessage: "ui.userSubscribedGroupsWidget.title", values: { total: state.count } }), onClose: handleToggleDialogOpen, open: openDialog, scroll: "paper" }, DialogProps),
172
+ React.createElement(List, null,
173
+ state.results.map((g) => (React.createElement(ListItem, { key: g.id },
174
+ React.createElement(Group, Object.assign({ elevation: 0, group: g, groupSubscribeButtonProps: { onSubscribe: handleOnSubscribe } }, GroupProps))))),
175
+ state.isLoadingNext && (React.createElement(ListItem, null,
176
+ React.createElement(GroupSkeleton, Object.assign({ elevation: 0 }, GroupProps))))),
177
+ React.createElement(Typography, { className: classes.endMessage },
178
+ React.createElement(FormattedMessage, { id: "ui.userSubscribedGroupsWidget.noMoreResults", defaultMessage: "ui.userSubscribedGroupsWidget.noMoreResults" }))))))));
179
+ return (React.createElement(Root, Object.assign({ className: classNames(classes.root, className) }, rest), content));
180
+ }
@@ -0,0 +1 @@
1
+ export declare const PREFIX = "SCUserSubscribedGroupsWidget";
@@ -0,0 +1 @@
1
+ export const PREFIX = 'SCUserSubscribedGroupsWidget';
@@ -0,0 +1,4 @@
1
+ import UserSubscribedGroupsWidget, { UserSubscribedGroupsWidgetProps } from './UserSubscribedGroupsWidget';
2
+ import UserSubscribedGroupsWidgetSkeleton from './Skeleton';
3
+ export default UserSubscribedGroupsWidget;
4
+ export { UserSubscribedGroupsWidgetSkeleton, UserSubscribedGroupsWidgetProps };
@@ -0,0 +1,4 @@
1
+ import UserSubscribedGroupsWidget from './UserSubscribedGroupsWidget';
2
+ import UserSubscribedGroupsWidgetSkeleton from './Skeleton';
3
+ export default UserSubscribedGroupsWidget;
4
+ export { UserSubscribedGroupsWidgetSkeleton };
@@ -132,5 +132,5 @@ export default function VoteAudienceButton(inProps) {
132
132
  React.createElement(FormattedMessage, { id: "ui.voteAudienceButton.dialog.end", defaultMessage: "ui.voteAudienceButton.dialog.end" })) },
133
133
  React.createElement(List, null, voteList.map((vote) => (React.createElement(ListItem, { key: vote.user.id },
134
134
  React.createElement(User, { elevation: 0, user: vote.user, badgeContent: React.createElement(Avatar, { className: classes.dialogVoteBadge }, vote.reaction ? (React.createElement(Icon, null,
135
- React.createElement("img", { alt: vote.reaction.label, src: vote.reaction.image, width: "100%", height: "100%" }))) : (React.createElement(Icon, null, "thumb_up"))) })))))))))));
135
+ React.createElement("img", { alt: vote.reaction.label, src: vote.reaction.image, width: "100%", height: "100%" }))) : (React.createElement(Icon, null, "thumb_up"))), onClick: handleClose })))))))))));
136
136
  }
@@ -121,6 +121,7 @@ import Groups, { GroupsProps, GroupsSkeleton } from './components/Groups';
121
121
  import GroupForm, { GroupFormProps } from './components/GroupForm';
122
122
  import GroupSettingsIconButton, { GroupSettingsIconButtonProps } from './components/GroupSettingsIconButton';
123
123
  import GroupInvitedWidget, { GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton } from './components/GroupInvitedWidget';
124
+ import UserSubscribedGroupsWidget, { UserSubscribedGroupsWidgetProps, UserSubscribedGroupsWidgetSkeleton } from './components/UserSubscribedGroupsWidget';
124
125
  /**
125
126
  * Constants
126
127
  */
@@ -145,4 +146,4 @@ import FeedObjectMediaPreview, { FeedObjectMediaPreviewProps } from './component
145
146
  /**
146
147
  * List all exports
147
148
  */
148
- export { AccountDataPortability, AccountDataPortabilityProps, AccountDataPortabilityButton, AccountDataPortabilityButtonProps, AccountDelete, AccountDeleteProps, AccountDeleteButton, AccountDeleteButtonProps, AccountRecover, AccountRecoverProps, AccountReset, AccountResetProps, AccountVerify, AccountVerifyProps, AccountChangeMailValidation, AccountChangeMailValidationProps, NavigationSettingsIconButton, NavigationSettingsIconButtonProps, NavigationSettingsItem, NavigationToolbarMobile, NavigationToolbarMobileProps, NavigationToolbarMobileSkeleton, NavigationToolbar, NavigationToolbarProps, NavigationToolbarSkeleton, NavigationMenuIconButton, NavigationMenuContent, NavigationMenuIconButtonProps, BottomNavigation, BottomNavigationProps, BroadcastMessages, BroadcastMessagesProps, BroadcastMessagesSkeleton, Category, CategoryProps, CategorySkeleton, CategoryAutocomplete, CategoryAutocompleteProps, CategoryFollowersButton, CategoryFollowersButtonProps, CategoryHeader, CategoryHeaderProps, CategoryHeaderSkeleton, Categories, CategoriesProps, CategoriesSkeleton, CategoriesSkeletonProps, UserFollowedCategoriesWidget, UserFollowedCategoriesWidgetProps, UserFollowedCategoriesWidgetSkeleton, CategoriesPopularWidget, CategoriesPopularWidgetSkeleton, CategoriesSuggestionWidget, CategoriesSuggestionWidgetProps, CategoriesSuggestionWidgetSkeleton, ChangeCover, ChangePicture, ChangePictureProps, ChangeCoverProps, Composer, ComposerProps, ComposerIconButton, ComposerIconButtonProps, Editor, EditorProps, EditorSkeleton, FriendshipUserButton, FriendshipButtonProps, Feed, FeedRef, FeedProps, FeedSidebarProps, FeedSkeleton, CategoryFollowButton, CategoryFollowButtonProps, FollowUserButton, FollowUserButtonProps, ConnectionUserButton, FeedObject, FeedObjectProps, FeedObjectSkeleton, FeedObjectMediaPreview, FeedObjectMediaPreviewProps, FeedUpdatesWidget, FeedUpdatesWidgetProps, FeedUpdatesWidgetSkeleton, GenericSkeleton, AvatarGroupSkeleton, CommentObject, CommentsObject, CommentsObjectProps, CommentObjectProps, CommentsObjectSkeleton, CommentObjectSkeleton, CommentObjectReply, CommentObjectReplyProps, CommentsFeedObject, CommentsFeedObjectProps, CommentsFeedObjectSkeleton, ReplyComment, InlineComposerWidget, InlineComposerWidgetProps, InlineComposerWidgetSkeleton, Notification, NotificationProps, NotificationSkeleton, UserSuggestionWidget, UserSuggestionWidgetProps, UserSuggestionWidgetSkeleton, PlatformWidget, PlatformWidgetProps, PlatformWidgetSkeleton, LocationAutocomplete, LocationAutocompleteProps, LoyaltyProgramWidget, LoyaltyProgramWidgetProps, LoyaltyProgramWidgetSkeleton, CategoryTrendingFeedWidget, CategoryTrendingFeedWidgetProps, CategoryTrendingFeedWidgetSkeleton, CategoryTrendingUsersWidget, CategoryTrendingUsersWidgetProps, CategoryTrendingPeopleWidgetSkeleton, RelatedFeedObjectsWidget, RelatedFeedObjectWidgetProps, RelatedFeedObjectsWidgetSkeleton, UserActionIconButton, UserActionIconButtonProps, UserCounters, UserCountersProps, UserProfileHeader, UserProfileHeaderProps, UserProfileHeaderSkeleton, UserInfoDialog, UserInfoDialogProps, UserInfo, UserInfoProps, UserInfoSkeleton, UserProfileBlocked, UserProfileBlockedProps, SCUserProfileFields, SCUserProfileSettings, UserProfileEdit, UserProfileEditProps, UserProfileEditSkeleton, UserProfileEditSectionPublicInfo, UserProfileEditSectionPublicInfoProps, UserProfileEditSectionSettings, UserProfileEditSectionSettingsProps, UserProfileEditSectionAccount, UserProfileEditSectionAccountProps, UserFollowedUsersWidget, UserFollowedUsersWidgetProps, UserFollowedUsersWidgetSkeleton, UserFollowersWidget, UserFollowersWidgetProps, UserFollowersWidgetSkeleton, UserConnectionsWidget, UserConnectionsWidgetProps, UserConnectionsWidgetSkeleton, UserConnectionsRequestsWidget, UserConnectionsRequestsWidgetProps, UserConnectionsRequestsWidgetSkeleton, UserConnectionsRequestsSentWidget, UserConnectionsRequestsSentWidgetProps, UserConnectionsRequestsSentWidgetSkeleton, UserSocialAssociation, UserSocialAssociationProps, SCUserSocialAssociations, CustomAdv, CustomAdvProps, CustomAdvSkeleton, User, UserProps, UserSkeleton, PrivateMessageThread, PrivateMessageThreadProps, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemProps, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemProps, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorProps, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsProps, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentProps, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, PrivateMessageSettingsIconButtonProps, ToastNotifications, ToastNotificationsProps, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsProps, SnippetNotificationsSkeleton, SearchAutocomplete, SearchAutocompleteProps, SearchDialog, SearchDialogProps, Widget, WidgetProps, SCFeedWidgetType, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCMediaObjectType, SCMediaChunkType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupCoverProps, ChangeGroupPicture, ChangeGroupPictureProps, GroupHeader, GroupHeaderProps, GroupHeaderSkeleton, GroupMembersButton, GroupMembersButtonProps, CreateGroupButton, CreateGroupButtonProps, EditGroupButton, EditGroupButtonProps, GroupInviteButton, GroupInviteButtonProps, GroupInfoWidget, GroupInfoWidgetProps, GroupInfoWidgetSkeleton, Group, GroupProps, GroupSkeleton, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, Groups, GroupsProps, GroupsSkeleton, GroupForm, GroupFormProps, GroupInvitedWidget, GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton, HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordTextField, PhoneTextField, MetadataField, InfiniteScroll, StickyBox, useStickyBox, StickyBoxProps, StickyBoxComponent, UseStickyBoxProps, TagChip, TagChipProps, UserDeletedSnackBar, UserDeletedSnackBarProps, UserAvatar, UserAvatarProps, Lightbox, CentralProgress, ConfirmDialog, LanguageSwitcher, MediaChunkUploader, MediaChunkUploaderProps, File, Link, Share, EditMediaProps, MEDIA_TYPE_EMBED, FACEBOOK_SHARE, TWITTER_SHARE, LINKEDIN_SHARE, DEFAULT_PRELOAD_OFFSET_VIEWPORT, MIN_PRELOAD_OFFSET_VIEWPORT, MAX_PRELOAD_OFFSET_VIEWPORT, ConsentSolution, ConsentSolutionProps, ConsentSolutionSkeleton, ConsentSolutionButton, ConsentSolutionButtonProps, LEGAL_POLICIES, DEFAULT_FIELDS, DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, PollSuggestionWidgetProps, Incubator, IncubatorSubscribeButton, IncubatorSubscribeButtonProps, IncubatorProps, IncubatorListWidget, IncubatorListWidgetProps, IncubatorDetail, IncubatorDetailProps, IncubatorSuggestionWidget, IncubatorSuggestionWidgetProps, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterProps, FooterSkeleton, BaseItem, BaseItemProps, BaseDialog, BaseDialogProps, GroupSettingsIconButton, GroupSettingsIconButtonProps };
149
+ export { AccountDataPortability, AccountDataPortabilityProps, AccountDataPortabilityButton, AccountDataPortabilityButtonProps, AccountDelete, AccountDeleteProps, AccountDeleteButton, AccountDeleteButtonProps, AccountRecover, AccountRecoverProps, AccountReset, AccountResetProps, AccountVerify, AccountVerifyProps, AccountChangeMailValidation, AccountChangeMailValidationProps, NavigationSettingsIconButton, NavigationSettingsIconButtonProps, NavigationSettingsItem, NavigationToolbarMobile, NavigationToolbarMobileProps, NavigationToolbarMobileSkeleton, NavigationToolbar, NavigationToolbarProps, NavigationToolbarSkeleton, NavigationMenuIconButton, NavigationMenuContent, NavigationMenuIconButtonProps, BottomNavigation, BottomNavigationProps, BroadcastMessages, BroadcastMessagesProps, BroadcastMessagesSkeleton, Category, CategoryProps, CategorySkeleton, CategoryAutocomplete, CategoryAutocompleteProps, CategoryFollowersButton, CategoryFollowersButtonProps, CategoryHeader, CategoryHeaderProps, CategoryHeaderSkeleton, Categories, CategoriesProps, CategoriesSkeleton, CategoriesSkeletonProps, UserFollowedCategoriesWidget, UserFollowedCategoriesWidgetProps, UserFollowedCategoriesWidgetSkeleton, CategoriesPopularWidget, CategoriesPopularWidgetSkeleton, CategoriesSuggestionWidget, CategoriesSuggestionWidgetProps, CategoriesSuggestionWidgetSkeleton, ChangeCover, ChangePicture, ChangePictureProps, ChangeCoverProps, Composer, ComposerProps, ComposerIconButton, ComposerIconButtonProps, Editor, EditorProps, EditorSkeleton, FriendshipUserButton, FriendshipButtonProps, Feed, FeedRef, FeedProps, FeedSidebarProps, FeedSkeleton, CategoryFollowButton, CategoryFollowButtonProps, FollowUserButton, FollowUserButtonProps, ConnectionUserButton, FeedObject, FeedObjectProps, FeedObjectSkeleton, FeedObjectMediaPreview, FeedObjectMediaPreviewProps, FeedUpdatesWidget, FeedUpdatesWidgetProps, FeedUpdatesWidgetSkeleton, GenericSkeleton, AvatarGroupSkeleton, CommentObject, CommentsObject, CommentsObjectProps, CommentObjectProps, CommentsObjectSkeleton, CommentObjectSkeleton, CommentObjectReply, CommentObjectReplyProps, CommentsFeedObject, CommentsFeedObjectProps, CommentsFeedObjectSkeleton, ReplyComment, InlineComposerWidget, InlineComposerWidgetProps, InlineComposerWidgetSkeleton, Notification, NotificationProps, NotificationSkeleton, UserSuggestionWidget, UserSuggestionWidgetProps, UserSuggestionWidgetSkeleton, PlatformWidget, PlatformWidgetProps, PlatformWidgetSkeleton, LocationAutocomplete, LocationAutocompleteProps, LoyaltyProgramWidget, LoyaltyProgramWidgetProps, LoyaltyProgramWidgetSkeleton, CategoryTrendingFeedWidget, CategoryTrendingFeedWidgetProps, CategoryTrendingFeedWidgetSkeleton, CategoryTrendingUsersWidget, CategoryTrendingUsersWidgetProps, CategoryTrendingPeopleWidgetSkeleton, RelatedFeedObjectsWidget, RelatedFeedObjectWidgetProps, RelatedFeedObjectsWidgetSkeleton, UserActionIconButton, UserActionIconButtonProps, UserCounters, UserCountersProps, UserProfileHeader, UserProfileHeaderProps, UserProfileHeaderSkeleton, UserInfoDialog, UserInfoDialogProps, UserInfo, UserInfoProps, UserInfoSkeleton, UserProfileBlocked, UserProfileBlockedProps, SCUserProfileFields, SCUserProfileSettings, UserProfileEdit, UserProfileEditProps, UserProfileEditSkeleton, UserProfileEditSectionPublicInfo, UserProfileEditSectionPublicInfoProps, UserProfileEditSectionSettings, UserProfileEditSectionSettingsProps, UserProfileEditSectionAccount, UserProfileEditSectionAccountProps, UserFollowedUsersWidget, UserFollowedUsersWidgetProps, UserFollowedUsersWidgetSkeleton, UserFollowersWidget, UserFollowersWidgetProps, UserFollowersWidgetSkeleton, UserConnectionsWidget, UserConnectionsWidgetProps, UserConnectionsWidgetSkeleton, UserConnectionsRequestsWidget, UserConnectionsRequestsWidgetProps, UserConnectionsRequestsWidgetSkeleton, UserConnectionsRequestsSentWidget, UserConnectionsRequestsSentWidgetProps, UserConnectionsRequestsSentWidgetSkeleton, UserSocialAssociation, UserSocialAssociationProps, SCUserSocialAssociations, CustomAdv, CustomAdvProps, CustomAdvSkeleton, User, UserProps, UserSkeleton, PrivateMessageThread, PrivateMessageThreadProps, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemProps, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemProps, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorProps, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsProps, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentProps, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, PrivateMessageSettingsIconButtonProps, ToastNotifications, ToastNotificationsProps, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsProps, SnippetNotificationsSkeleton, SearchAutocomplete, SearchAutocompleteProps, SearchDialog, SearchDialogProps, Widget, WidgetProps, SCFeedWidgetType, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCMediaObjectType, SCMediaChunkType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupCoverProps, ChangeGroupPicture, ChangeGroupPictureProps, GroupHeader, GroupHeaderProps, GroupHeaderSkeleton, GroupMembersButton, GroupMembersButtonProps, CreateGroupButton, CreateGroupButtonProps, EditGroupButton, EditGroupButtonProps, GroupInviteButton, GroupInviteButtonProps, GroupInfoWidget, GroupInfoWidgetProps, GroupInfoWidgetSkeleton, Group, GroupProps, GroupSkeleton, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, Groups, GroupsProps, GroupsSkeleton, GroupForm, GroupFormProps, GroupInvitedWidget, GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton, UserSubscribedGroupsWidget, UserSubscribedGroupsWidgetProps, UserSubscribedGroupsWidgetSkeleton, HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordTextField, PhoneTextField, MetadataField, InfiniteScroll, StickyBox, useStickyBox, StickyBoxProps, StickyBoxComponent, UseStickyBoxProps, TagChip, TagChipProps, UserDeletedSnackBar, UserDeletedSnackBarProps, UserAvatar, UserAvatarProps, Lightbox, CentralProgress, ConfirmDialog, LanguageSwitcher, MediaChunkUploader, MediaChunkUploaderProps, File, Link, Share, EditMediaProps, MEDIA_TYPE_EMBED, FACEBOOK_SHARE, TWITTER_SHARE, LINKEDIN_SHARE, DEFAULT_PRELOAD_OFFSET_VIEWPORT, MIN_PRELOAD_OFFSET_VIEWPORT, MAX_PRELOAD_OFFSET_VIEWPORT, ConsentSolution, ConsentSolutionProps, ConsentSolutionSkeleton, ConsentSolutionButton, ConsentSolutionButtonProps, LEGAL_POLICIES, DEFAULT_FIELDS, DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, PollSuggestionWidgetProps, Incubator, IncubatorSubscribeButton, IncubatorSubscribeButtonProps, IncubatorProps, IncubatorListWidget, IncubatorListWidgetProps, IncubatorDetail, IncubatorDetailProps, IncubatorSuggestionWidget, IncubatorSuggestionWidgetProps, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterProps, FooterSkeleton, BaseItem, BaseItemProps, BaseDialog, BaseDialogProps, GroupSettingsIconButton, GroupSettingsIconButtonProps };
package/lib/esm/index.js CHANGED
@@ -121,6 +121,7 @@ import Groups, { GroupsSkeleton } from './components/Groups';
121
121
  import GroupForm from './components/GroupForm';
122
122
  import GroupSettingsIconButton from './components/GroupSettingsIconButton';
123
123
  import GroupInvitedWidget, { GroupInvitedWidgetSkeleton } from './components/GroupInvitedWidget';
124
+ import UserSubscribedGroupsWidget, { UserSubscribedGroupsWidgetSkeleton } from './components/UserSubscribedGroupsWidget';
124
125
  /**
125
126
  * Constants
126
127
  */
@@ -145,7 +146,7 @@ import FeedObjectMediaPreview from './components/FeedObjectMediaPreview';
145
146
  /**
146
147
  * List all exports
147
148
  */
148
- export { AccountDataPortability, AccountDataPortabilityButton, AccountDelete, AccountDeleteButton, AccountRecover, AccountReset, AccountVerify, AccountChangeMailValidation, NavigationSettingsIconButton, NavigationToolbarMobile, NavigationToolbarMobileSkeleton, NavigationToolbar, NavigationToolbarSkeleton, NavigationMenuIconButton, NavigationMenuContent, BottomNavigation, BroadcastMessages, BroadcastMessagesSkeleton, Category, CategorySkeleton, CategoryAutocomplete, CategoryFollowersButton, CategoryHeader, CategoryHeaderSkeleton, Categories, CategoriesSkeleton, UserFollowedCategoriesWidget, UserFollowedCategoriesWidgetSkeleton, CategoriesPopularWidget, CategoriesPopularWidgetSkeleton, CategoriesSuggestionWidget, CategoriesSuggestionWidgetSkeleton, ChangeCover, ChangePicture, Composer, ComposerIconButton, Editor, EditorSkeleton, FriendshipUserButton, Feed, FeedSkeleton, CategoryFollowButton, FollowUserButton, ConnectionUserButton, FeedObject, FeedObjectSkeleton, FeedObjectMediaPreview, FeedUpdatesWidget, FeedUpdatesWidgetSkeleton, GenericSkeleton, AvatarGroupSkeleton, CommentObject, CommentsObject, CommentsObjectSkeleton, CommentObjectSkeleton, CommentObjectReply, CommentsFeedObject, CommentsFeedObjectSkeleton, ReplyComment, InlineComposerWidget, InlineComposerWidgetSkeleton, Notification, NotificationSkeleton, UserSuggestionWidget, UserSuggestionWidgetSkeleton, PlatformWidget, PlatformWidgetSkeleton, LocationAutocomplete, LoyaltyProgramWidget, LoyaltyProgramWidgetSkeleton, CategoryTrendingFeedWidget, CategoryTrendingFeedWidgetSkeleton, CategoryTrendingUsersWidget, CategoryTrendingPeopleWidgetSkeleton, RelatedFeedObjectsWidget, RelatedFeedObjectsWidgetSkeleton, UserActionIconButton, UserCounters, UserProfileHeader, UserProfileHeaderSkeleton, UserInfoDialog, UserInfo, UserInfoSkeleton, UserProfileBlocked, SCUserProfileFields, SCUserProfileSettings, UserProfileEdit, UserProfileEditSkeleton, UserProfileEditSectionPublicInfo, UserProfileEditSectionSettings, UserProfileEditSectionAccount, UserFollowedUsersWidget, UserFollowedUsersWidgetSkeleton, UserFollowersWidget, UserFollowersWidgetSkeleton, UserConnectionsWidget, UserConnectionsWidgetSkeleton, UserConnectionsRequestsWidget, UserConnectionsRequestsWidgetSkeleton, UserConnectionsRequestsSentWidget, UserConnectionsRequestsSentWidgetSkeleton, UserSocialAssociation, SCUserSocialAssociations, CustomAdv, CustomAdvSkeleton, User, UserSkeleton, PrivateMessageThread, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, ToastNotifications, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsSkeleton, SearchAutocomplete, SearchDialog, Widget, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupPicture, GroupHeader, GroupHeaderSkeleton, GroupMembersButton, CreateGroupButton, EditGroupButton, GroupInviteButton, GroupInfoWidget, GroupInfoWidgetSkeleton, Group, GroupSkeleton, GroupSubscribeButton, GroupMembersWidget, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetSkeleton, Groups, GroupsSkeleton, GroupForm, GroupInvitedWidget, GroupInvitedWidgetSkeleton,
149
+ export { AccountDataPortability, AccountDataPortabilityButton, AccountDelete, AccountDeleteButton, AccountRecover, AccountReset, AccountVerify, AccountChangeMailValidation, NavigationSettingsIconButton, NavigationToolbarMobile, NavigationToolbarMobileSkeleton, NavigationToolbar, NavigationToolbarSkeleton, NavigationMenuIconButton, NavigationMenuContent, BottomNavigation, BroadcastMessages, BroadcastMessagesSkeleton, Category, CategorySkeleton, CategoryAutocomplete, CategoryFollowersButton, CategoryHeader, CategoryHeaderSkeleton, Categories, CategoriesSkeleton, UserFollowedCategoriesWidget, UserFollowedCategoriesWidgetSkeleton, CategoriesPopularWidget, CategoriesPopularWidgetSkeleton, CategoriesSuggestionWidget, CategoriesSuggestionWidgetSkeleton, ChangeCover, ChangePicture, Composer, ComposerIconButton, Editor, EditorSkeleton, FriendshipUserButton, Feed, FeedSkeleton, CategoryFollowButton, FollowUserButton, ConnectionUserButton, FeedObject, FeedObjectSkeleton, FeedObjectMediaPreview, FeedUpdatesWidget, FeedUpdatesWidgetSkeleton, GenericSkeleton, AvatarGroupSkeleton, CommentObject, CommentsObject, CommentsObjectSkeleton, CommentObjectSkeleton, CommentObjectReply, CommentsFeedObject, CommentsFeedObjectSkeleton, ReplyComment, InlineComposerWidget, InlineComposerWidgetSkeleton, Notification, NotificationSkeleton, UserSuggestionWidget, UserSuggestionWidgetSkeleton, PlatformWidget, PlatformWidgetSkeleton, LocationAutocomplete, LoyaltyProgramWidget, LoyaltyProgramWidgetSkeleton, CategoryTrendingFeedWidget, CategoryTrendingFeedWidgetSkeleton, CategoryTrendingUsersWidget, CategoryTrendingPeopleWidgetSkeleton, RelatedFeedObjectsWidget, RelatedFeedObjectsWidgetSkeleton, UserActionIconButton, UserCounters, UserProfileHeader, UserProfileHeaderSkeleton, UserInfoDialog, UserInfo, UserInfoSkeleton, UserProfileBlocked, SCUserProfileFields, SCUserProfileSettings, UserProfileEdit, UserProfileEditSkeleton, UserProfileEditSectionPublicInfo, UserProfileEditSectionSettings, UserProfileEditSectionAccount, UserFollowedUsersWidget, UserFollowedUsersWidgetSkeleton, UserFollowersWidget, UserFollowersWidgetSkeleton, UserConnectionsWidget, UserConnectionsWidgetSkeleton, UserConnectionsRequestsWidget, UserConnectionsRequestsWidgetSkeleton, UserConnectionsRequestsSentWidget, UserConnectionsRequestsSentWidgetSkeleton, UserSocialAssociation, SCUserSocialAssociations, CustomAdv, CustomAdvSkeleton, User, UserSkeleton, PrivateMessageThread, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, ToastNotifications, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsSkeleton, SearchAutocomplete, SearchDialog, Widget, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupPicture, GroupHeader, GroupHeaderSkeleton, GroupMembersButton, CreateGroupButton, EditGroupButton, GroupInviteButton, GroupInfoWidget, GroupInfoWidgetSkeleton, Group, GroupSkeleton, GroupSubscribeButton, GroupMembersWidget, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetSkeleton, Groups, GroupsSkeleton, GroupForm, GroupInvitedWidget, GroupInvitedWidgetSkeleton, UserSubscribedGroupsWidget, UserSubscribedGroupsWidgetSkeleton,
149
150
  /* SC UI SHARED */
150
151
  HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordTextField, PhoneTextField, MetadataField, InfiniteScroll, StickyBox, useStickyBox, TagChip, UserDeletedSnackBar, UserAvatar, Lightbox, CentralProgress, ConfirmDialog, LanguageSwitcher, MediaChunkUploader, File, Link, Share, MEDIA_TYPE_EMBED, FACEBOOK_SHARE, TWITTER_SHARE, LINKEDIN_SHARE, DEFAULT_PRELOAD_OFFSET_VIEWPORT, MIN_PRELOAD_OFFSET_VIEWPORT, MAX_PRELOAD_OFFSET_VIEWPORT,
151
152
  /* SC CONSENT SOLUTION */