@selfcommunity/react-ui 0.7.9-alpha.2 → 0.7.9-alpha.4

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 (101) hide show
  1. package/lib/cjs/components/BottomNavigation/BottomNavigation.js +3 -1
  2. package/lib/cjs/components/Composer/Attributes/Attributes.d.ts +1 -1
  3. package/lib/cjs/components/Composer/Attributes/Attributes.js +7 -0
  4. package/lib/cjs/components/Composer/Composer.d.ts +2 -1
  5. package/lib/cjs/components/Composer/Composer.js +40 -11
  6. package/lib/cjs/components/Composer/Content/ContentDiscussion/ContentDiscussion.js +7 -3
  7. package/lib/cjs/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +9 -2
  8. package/lib/cjs/components/Composer/Layer/AudienceLayer/AudienceLayer.js +35 -13
  9. package/lib/cjs/components/CreateGroupButton/CreateGroupButton.d.ts +2 -2
  10. package/lib/cjs/components/CreateGroupButton/CreateGroupButton.js +5 -6
  11. package/lib/cjs/components/CustomAdv/CustomAdv.d.ts +4 -0
  12. package/lib/cjs/components/{CreateGroup/CreateGroup.d.ts → EditGroupButton/EditGroupButton.d.ts} +11 -16
  13. package/lib/cjs/components/EditGroupButton/EditGroupButton.js +57 -0
  14. package/lib/cjs/components/EditGroupButton/index.d.ts +3 -0
  15. package/lib/cjs/components/EditGroupButton/index.js +5 -0
  16. package/lib/cjs/components/Group/Group.d.ts +4 -3
  17. package/lib/cjs/components/Group/Group.js +2 -2
  18. package/lib/cjs/components/Group/Skeleton.js +1 -1
  19. package/lib/cjs/components/GroupAutocomplete/GroupAutocomplete.d.ts +49 -0
  20. package/lib/cjs/components/GroupAutocomplete/GroupAutocomplete.js +101 -0
  21. package/lib/cjs/components/GroupAutocomplete/index.d.ts +3 -0
  22. package/lib/cjs/components/GroupAutocomplete/index.js +5 -0
  23. package/lib/cjs/components/GroupForm/GroupForm.d.ts +70 -0
  24. package/lib/cjs/components/GroupForm/GroupForm.js +239 -0
  25. package/lib/cjs/components/GroupForm/constants.d.ts +1 -0
  26. package/lib/cjs/components/{CreateGroup → GroupForm}/constants.js +1 -1
  27. package/lib/cjs/components/GroupForm/index.d.ts +3 -0
  28. package/lib/cjs/components/GroupForm/index.js +5 -0
  29. package/lib/cjs/components/GroupHeader/GroupHeader.js +4 -2
  30. package/lib/cjs/components/GroupInfoWidget/GroupInfoWidget.js +8 -8
  31. package/lib/cjs/components/GroupInviteButton/GroupInviteButton.js +6 -4
  32. package/lib/cjs/components/GroupMembersWidget/GroupMembersWidget.js +19 -14
  33. package/lib/cjs/components/GroupSubscribeButton/GroupSubscribeButton.js +11 -1
  34. package/lib/cjs/components/Groups/Groups.d.ts +65 -0
  35. package/lib/cjs/components/Groups/Groups.js +181 -0
  36. package/lib/cjs/components/Groups/Skeleton.d.ts +34 -0
  37. package/lib/cjs/components/Groups/Skeleton.js +45 -0
  38. package/lib/cjs/components/Groups/constants.d.ts +1 -0
  39. package/lib/cjs/components/Groups/constants.js +4 -0
  40. package/lib/cjs/components/Groups/index.d.ts +4 -0
  41. package/lib/cjs/components/Groups/index.js +8 -0
  42. package/lib/cjs/components/InlineComposerWidget/InlineComposerWidget.d.ts +2 -1
  43. package/lib/cjs/components/NavigationToolbar/NavigationToolbar.js +5 -1
  44. package/lib/cjs/index.d.ts +5 -3
  45. package/lib/cjs/index.js +10 -4
  46. package/lib/esm/components/BottomNavigation/BottomNavigation.js +3 -1
  47. package/lib/esm/components/Composer/Attributes/Attributes.d.ts +1 -1
  48. package/lib/esm/components/Composer/Attributes/Attributes.js +7 -0
  49. package/lib/esm/components/Composer/Composer.d.ts +2 -1
  50. package/lib/esm/components/Composer/Composer.js +40 -11
  51. package/lib/esm/components/Composer/Content/ContentDiscussion/ContentDiscussion.js +7 -3
  52. package/lib/esm/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +9 -2
  53. package/lib/esm/components/Composer/Layer/AudienceLayer/AudienceLayer.js +34 -13
  54. package/lib/esm/components/CreateGroupButton/CreateGroupButton.d.ts +2 -2
  55. package/lib/esm/components/CreateGroupButton/CreateGroupButton.js +5 -6
  56. package/lib/esm/components/CustomAdv/CustomAdv.d.ts +4 -0
  57. package/lib/esm/components/{CreateGroup/CreateGroup.d.ts → EditGroupButton/EditGroupButton.d.ts} +11 -16
  58. package/lib/esm/components/EditGroupButton/EditGroupButton.js +54 -0
  59. package/lib/esm/components/EditGroupButton/index.d.ts +3 -0
  60. package/lib/esm/components/EditGroupButton/index.js +2 -0
  61. package/lib/esm/components/Group/Group.d.ts +4 -3
  62. package/lib/esm/components/Group/Group.js +2 -2
  63. package/lib/esm/components/Group/Skeleton.js +1 -1
  64. package/lib/esm/components/GroupAutocomplete/GroupAutocomplete.d.ts +49 -0
  65. package/lib/esm/components/GroupAutocomplete/GroupAutocomplete.js +99 -0
  66. package/lib/esm/components/GroupAutocomplete/index.d.ts +3 -0
  67. package/lib/esm/components/GroupAutocomplete/index.js +2 -0
  68. package/lib/esm/components/GroupForm/GroupForm.d.ts +70 -0
  69. package/lib/esm/components/GroupForm/GroupForm.js +236 -0
  70. package/lib/esm/components/GroupForm/constants.d.ts +1 -0
  71. package/lib/esm/components/GroupForm/constants.js +1 -0
  72. package/lib/esm/components/GroupForm/index.d.ts +3 -0
  73. package/lib/esm/components/GroupForm/index.js +2 -0
  74. package/lib/esm/components/GroupHeader/GroupHeader.js +4 -2
  75. package/lib/esm/components/GroupInfoWidget/GroupInfoWidget.js +8 -8
  76. package/lib/esm/components/GroupInviteButton/GroupInviteButton.js +6 -4
  77. package/lib/esm/components/GroupMembersWidget/GroupMembersWidget.js +20 -15
  78. package/lib/esm/components/GroupSubscribeButton/GroupSubscribeButton.js +11 -1
  79. package/lib/esm/components/Groups/Groups.d.ts +65 -0
  80. package/lib/esm/components/Groups/Groups.js +178 -0
  81. package/lib/esm/components/Groups/Skeleton.d.ts +34 -0
  82. package/lib/esm/components/Groups/Skeleton.js +42 -0
  83. package/lib/esm/components/Groups/constants.d.ts +1 -0
  84. package/lib/esm/components/Groups/constants.js +1 -0
  85. package/lib/esm/components/Groups/index.d.ts +4 -0
  86. package/lib/esm/components/Groups/index.js +4 -0
  87. package/lib/esm/components/InlineComposerWidget/InlineComposerWidget.d.ts +2 -1
  88. package/lib/esm/components/NavigationToolbar/NavigationToolbar.js +5 -1
  89. package/lib/esm/index.d.ts +5 -3
  90. package/lib/esm/index.js +4 -2
  91. package/lib/umd/react-ui.js +1 -1
  92. package/package.json +6 -6
  93. package/lib/cjs/components/CreateGroup/CreateGroup.js +0 -187
  94. package/lib/cjs/components/CreateGroup/constants.d.ts +0 -1
  95. package/lib/cjs/components/CreateGroup/index.d.ts +0 -3
  96. package/lib/cjs/components/CreateGroup/index.js +0 -5
  97. package/lib/esm/components/CreateGroup/CreateGroup.js +0 -184
  98. package/lib/esm/components/CreateGroup/constants.d.ts +0 -1
  99. package/lib/esm/components/CreateGroup/constants.js +0 -1
  100. package/lib/esm/components/CreateGroup/index.d.ts +0 -3
  101. package/lib/esm/components/CreateGroup/index.js +0 -2
@@ -79,12 +79,22 @@ export default function GroupSubscribeButton(inProps) {
79
79
  Logger.error(SCOPE_SC_UI, e);
80
80
  });
81
81
  };
82
+ const unsubscribe = () => {
83
+ scGroupsManager
84
+ .unsubscribe(scGroup)
85
+ .then(() => {
86
+ // onJoin && onJoin(scGroup, !joined);
87
+ })
88
+ .catch((e) => {
89
+ Logger.error(SCOPE_SC_UI, e);
90
+ });
91
+ };
82
92
  const handleSubscribeAction = () => {
83
93
  if (!scUserContext.user) {
84
94
  scContext.settings.handleAnonymousAction();
85
95
  }
86
96
  else {
87
- subscribe();
97
+ SCGroupSubscriptionStatusType.SUBSCRIBED ? unsubscribe() : subscribe();
88
98
  }
89
99
  };
90
100
  /**
@@ -0,0 +1,65 @@
1
+ import { EndpointType } from '@selfcommunity/api-services';
2
+ import { CacheStrategies } from '@selfcommunity/utils';
3
+ import { GroupProps } from '../Group';
4
+ export interface GroupsProps {
5
+ /**
6
+ * Endpoint to call
7
+ */
8
+ endpoint: EndpointType;
9
+ /**
10
+ * Hides this component
11
+ * @default false
12
+ */
13
+ autoHide?: boolean;
14
+ /**
15
+ * Limit the number of users to show
16
+ * @default false
17
+ */
18
+ limit?: number;
19
+ /**
20
+ * Caching strategies
21
+ * @default CacheStrategies.CACHE_FIRST
22
+ */
23
+ cacheStrategy?: CacheStrategies;
24
+ /**
25
+ * Props to spread to single group object
26
+ * @default empty object
27
+ */
28
+ GroupProps?: GroupProps;
29
+ /**
30
+ * Other props
31
+ */
32
+ [p: string]: any;
33
+ }
34
+ /**
35
+ * > API documentation for the Community-JS Groups component. Learn about the available props and the CSS API.
36
+ *
37
+ *
38
+ * This component renders the list of the follows of the given group.
39
+ * Take a look at our <strong>demo</strong> component [here](/docs/sdk/community-js/react-ui/Components/Groups)
40
+
41
+ #### Import
42
+
43
+ ```jsx
44
+ import {Groups} from '@selfcommunity/react-ui';
45
+ ```
46
+
47
+ #### Component Name
48
+
49
+ The name `SCGroups` can be used when providing style overrides in the theme.
50
+
51
+
52
+ #### CSS
53
+
54
+ |Rule Name|Global class|Description|
55
+ |---|---|---|
56
+ |root|.SCGroups-root|Styles applied to the root element.|
57
+ |title|.SCGroups-title|Styles applied to the title element.|
58
+ |noResults|.SCGroups-no-results|Styles applied to no results section.|
59
+ |showMore|.SCGroups-show-more|Styles applied to show more button element.|
60
+ |dialogRoot|.SCGroups-dialog-root|Styles applied to the dialog root element.|
61
+ |endMessage|.SCGroups-end-message|Styles applied to the end message element.|
62
+
63
+ * @param inProps
64
+ */
65
+ export default function Groups(inProps: GroupsProps): JSX.Element;
@@ -0,0 +1,178 @@
1
+ import { __rest } from "tslib";
2
+ import React, { useEffect, useMemo, useReducer } from 'react';
3
+ import { styled } from '@mui/material/styles';
4
+ import { Box, Button, Grid, Typography } from '@mui/material';
5
+ import { http } from '@selfcommunity/api-services';
6
+ import { CacheStrategies, Logger } from '@selfcommunity/utils';
7
+ import { SCCache, SCPreferences, useSCPreferences, useSCUser } from '@selfcommunity/react-core';
8
+ import { actionWidgetTypes, dataWidgetReducer, stateWidgetInitializer } from '../../utils/widget';
9
+ import Skeleton from './Skeleton';
10
+ import { FormattedMessage } from 'react-intl';
11
+ import classNames from 'classnames';
12
+ import { SCOPE_SC_UI } from '../../constants/Errors';
13
+ import { useThemeProps } from '@mui/system';
14
+ import HiddenPlaceholder from '../../shared/HiddenPlaceholder';
15
+ import { PREFIX } from './constants';
16
+ import Group from '../Group';
17
+ const classes = {
18
+ root: `${PREFIX}-root`,
19
+ groups: `${PREFIX}-groups`,
20
+ item: `${PREFIX}-item`,
21
+ noResults: `${PREFIX}-no-results`,
22
+ showMore: `${PREFIX}-show-more`,
23
+ endMessage: `${PREFIX}-end-message`
24
+ };
25
+ const Root = styled(Box, {
26
+ name: PREFIX,
27
+ slot: 'Root'
28
+ })(() => ({}));
29
+ /**
30
+ * > API documentation for the Community-JS Groups component. Learn about the available props and the CSS API.
31
+ *
32
+ *
33
+ * This component renders the list of the follows of the given group.
34
+ * Take a look at our <strong>demo</strong> component [here](/docs/sdk/community-js/react-ui/Components/Groups)
35
+
36
+ #### Import
37
+
38
+ ```jsx
39
+ import {Groups} from '@selfcommunity/react-ui';
40
+ ```
41
+
42
+ #### Component Name
43
+
44
+ The name `SCGroups` can be used when providing style overrides in the theme.
45
+
46
+
47
+ #### CSS
48
+
49
+ |Rule Name|Global class|Description|
50
+ |---|---|---|
51
+ |root|.SCGroups-root|Styles applied to the root element.|
52
+ |title|.SCGroups-title|Styles applied to the title element.|
53
+ |noResults|.SCGroups-no-results|Styles applied to no results section.|
54
+ |showMore|.SCGroups-show-more|Styles applied to show more button element.|
55
+ |dialogRoot|.SCGroups-dialog-root|Styles applied to the dialog root element.|
56
+ |endMessage|.SCGroups-end-message|Styles applied to the end message element.|
57
+
58
+ * @param inProps
59
+ */
60
+ export default function Groups(inProps) {
61
+ // PROPS
62
+ const props = useThemeProps({
63
+ props: inProps,
64
+ name: PREFIX
65
+ });
66
+ const { endpoint, autoHide = false, limit = 6, className, cacheStrategy = CacheStrategies.NETWORK_ONLY, onHeightChange, onStateChange, GroupProps = { variant: 'outlined', ButtonBaseProps: { disableRipple: true, component: Box } } } = props, rest = __rest(props, ["endpoint", "autoHide", "limit", "className", "cacheStrategy", "onHeightChange", "onStateChange", "GroupProps"]);
67
+ // STATE
68
+ const [state, dispatch] = useReducer(dataWidgetReducer, {
69
+ isLoadingNext: false,
70
+ next: null,
71
+ cacheKey: SCCache.getWidgetStateCacheKey(SCCache.GROUPS_LIST_TOOLS_STATE_CACHE_PREFIX_KEY),
72
+ cacheStrategy,
73
+ visibleItems: limit
74
+ }, stateWidgetInitializer);
75
+ // CONTEXT
76
+ const scUserContext = useSCUser();
77
+ const scPreferencesContext = useSCPreferences();
78
+ // MEMO
79
+ const contentAvailability = useMemo(() => SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY in scPreferencesContext.preferences &&
80
+ scPreferencesContext.preferences[SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY].value, [scPreferencesContext.preferences]);
81
+ // HOOKS
82
+ // const theme = useTheme<SCThemeType>();
83
+ // const isMobile = useMediaQuery(theme.breakpoints.down('md'));
84
+ /**
85
+ * Initialize component
86
+ * Fetch data only if the component is not initialized, and it is not loading data
87
+ */
88
+ const _initComponent = useMemo(() => () => {
89
+ if (!state.initialized && !state.isLoadingNext) {
90
+ dispatch({ type: actionWidgetTypes.LOADING_NEXT });
91
+ http
92
+ .request({
93
+ url: endpoint.url({ limit }),
94
+ method: endpoint.method
95
+ })
96
+ .then((payload) => {
97
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: Object.assign(Object.assign({}, payload.data), { initialized: true }) });
98
+ })
99
+ .catch((error) => {
100
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
101
+ Logger.error(SCOPE_SC_UI, error);
102
+ });
103
+ }
104
+ }, [state.isLoadingNext, state.initialized, endpoint, limit, dispatch]);
105
+ // EFFECTS
106
+ useEffect(() => {
107
+ var _a;
108
+ let _t;
109
+ if ((contentAvailability || (!contentAvailability && ((_a = scUserContext.user) === null || _a === void 0 ? void 0 : _a.id))) && scUserContext.user !== undefined) {
110
+ _t = setTimeout(_initComponent);
111
+ return () => {
112
+ _t && clearTimeout(_t);
113
+ };
114
+ }
115
+ }, [scUserContext.user, contentAvailability]);
116
+ useEffect(() => {
117
+ if (state.next && state.results.length === limit && state.initialized) {
118
+ dispatch({ type: actionWidgetTypes.LOADING_NEXT });
119
+ http
120
+ .request({
121
+ url: endpoint.url({ offset: limit, limit: 10 }),
122
+ method: endpoint.method
123
+ })
124
+ .then((payload) => {
125
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: payload.data });
126
+ })
127
+ .catch((error) => {
128
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
129
+ Logger.error(SCOPE_SC_UI, error);
130
+ });
131
+ }
132
+ }, [state.next, state.results.length, state.initialized, limit]);
133
+ /**
134
+ * Virtual feed update
135
+ */
136
+ useEffect(() => {
137
+ onHeightChange && onHeightChange();
138
+ }, [state.results]);
139
+ useEffect(() => {
140
+ if (!endpoint || (!contentAvailability && !scUserContext.user)) {
141
+ return;
142
+ }
143
+ else if (cacheStrategy === CacheStrategies.NETWORK_ONLY) {
144
+ onStateChange && onStateChange({ cacheStrategy: CacheStrategies.CACHE_FIRST });
145
+ }
146
+ }, [scUserContext.user, endpoint, contentAvailability]);
147
+ useEffect(() => {
148
+ if (!endpoint || !scUserContext.user || !state.initialized) {
149
+ return;
150
+ }
151
+ }, []);
152
+ // HANDLERS
153
+ const handleNext = useMemo(() => () => {
154
+ dispatch({ type: actionWidgetTypes.LOADING_NEXT });
155
+ http
156
+ .request({
157
+ url: state.next,
158
+ method: endpoint.method
159
+ })
160
+ .then((res) => {
161
+ dispatch({ type: actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: res.data });
162
+ });
163
+ }, [dispatch, state.next, state.isLoadingNext, state.initialized, endpoint.method]);
164
+ // RENDER
165
+ if ((autoHide && !state.count && state.initialized) || (!contentAvailability && !scUserContext.user) || !endpoint) {
166
+ return React.createElement(HiddenPlaceholder, null);
167
+ }
168
+ if (!state.initialized) {
169
+ return React.createElement(Skeleton, null);
170
+ }
171
+ const content = (React.createElement(React.Fragment, null, !state.count ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" },
172
+ React.createElement(FormattedMessage, { id: "ui.groupRequestsWidget.subtitle.noResults", defaultMessage: "" }))) : (React.createElement(React.Fragment, null,
173
+ React.createElement(Grid, { container: true, spacing: { xs: 3 }, className: classes.groups }, state.results.slice(0, state.visibleItems).map((group) => (React.createElement(Grid, { item: true, xs: 12, sm: 8, md: 6, key: group.id, className: classes.item },
174
+ React.createElement(Group, Object.assign({ actions: React.createElement(React.Fragment, null), group: group, groupId: group.id, buttonProps: { onClick: () => console.log(group) } }, GroupProps)))))),
175
+ state.count > state.visibleItems && (React.createElement(Button, { className: classes.showMore, onClick: handleNext },
176
+ React.createElement(FormattedMessage, { id: "ui.groupRequestsWidget.button.showMore", defaultMessage: "ui.groupRequestsWidget.button.showMore" })))))));
177
+ return (React.createElement(Root, Object.assign({ className: classNames(classes.root, className) }, rest), content));
178
+ }
@@ -0,0 +1,34 @@
1
+ export interface GroupsSkeletonProps {
2
+ /**
3
+ * Overrides or extends the styles applied to the component.
4
+ * @default null
5
+ */
6
+ className?: string;
7
+ /**
8
+ * Overrides or extends the styles applied to the component.
9
+ * @default null
10
+ */
11
+ GroupSkeletonProps?: any;
12
+ }
13
+ /**
14
+ * > API documentation for the Community-JS Groups Skeleton component. Learn about the available props and the CSS API.
15
+
16
+ #### Import
17
+
18
+ ```jsx
19
+ import {GroupsSkeleton} from '@selfcommunity/react-ui';
20
+ ```
21
+
22
+ #### Component Name
23
+
24
+ The name `SCGroups-skeleton-root` can be used when providing style overrides in the theme.
25
+
26
+ #### CSS
27
+
28
+ |Rule Name|Global class|Description|
29
+ |---|---|---|
30
+ |root|.SCGroups-skeleton-root|Styles applied to the root element.|
31
+ |groups|.SCGroups-skeleton-groups|Styles applied to the group elements.|
32
+ *
33
+ */
34
+ export default function GroupsSkeleton(inProps: GroupsSkeletonProps): JSX.Element;
@@ -0,0 +1,42 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ import { styled } from '@mui/material/styles';
4
+ import { PREFIX } from './constants';
5
+ import { Box, Grid } from '@mui/material';
6
+ import classNames from 'classnames';
7
+ import { GroupSkeleton } from '../Group';
8
+ const classes = {
9
+ root: `${PREFIX}-skeleton-root`,
10
+ groups: `${PREFIX}-groups`
11
+ };
12
+ const Root = styled(Box, {
13
+ name: PREFIX,
14
+ slot: 'SkeletonRoot'
15
+ })(() => ({}));
16
+ /**
17
+ * > API documentation for the Community-JS Groups Skeleton component. Learn about the available props and the CSS API.
18
+
19
+ #### Import
20
+
21
+ ```jsx
22
+ import {GroupsSkeleton} from '@selfcommunity/react-ui';
23
+ ```
24
+
25
+ #### Component Name
26
+
27
+ The name `SCGroups-skeleton-root` can be used when providing style overrides in the theme.
28
+
29
+ #### CSS
30
+
31
+ |Rule Name|Global class|Description|
32
+ |---|---|---|
33
+ |root|.SCGroups-skeleton-root|Styles applied to the root element.|
34
+ |groups|.SCGroups-skeleton-groups|Styles applied to the group elements.|
35
+ *
36
+ */
37
+ export default function GroupsSkeleton(inProps) {
38
+ const { className, GroupSkeletonProps = {} } = inProps, rest = __rest(inProps, ["className", "GroupSkeletonProps"]);
39
+ return (React.createElement(Root, Object.assign({ className: classNames(classes.root, className) }, rest),
40
+ React.createElement(Grid, { container: true, spacing: { xs: 3 }, className: classes.groups }, [...Array(15)].map((category, index) => (React.createElement(Grid, { item: true, xs: 12, sm: 8, md: 6, key: index },
41
+ React.createElement(GroupSkeleton, Object.assign({ elevation: 0, variant: 'outlined' }, GroupSkeletonProps))))))));
42
+ }
@@ -0,0 +1 @@
1
+ export declare const PREFIX = "SCGroups";
@@ -0,0 +1 @@
1
+ export const PREFIX = 'SCGroups';
@@ -0,0 +1,4 @@
1
+ import Groups, { GroupsProps } from './Groups';
2
+ import GroupsSkeleton from './Skeleton';
3
+ export default Groups;
4
+ export { GroupsProps, GroupsSkeleton };
@@ -0,0 +1,4 @@
1
+ import Groups from './Groups';
2
+ import GroupsSkeleton from './Skeleton';
3
+ export default Groups;
4
+ export { GroupsSkeleton };
@@ -1,4 +1,4 @@
1
- import { SCCategoryType, SCMediaType, SCPollType, SCTagType } from '@selfcommunity/types';
1
+ import { SCCategoryType, SCGroupType, SCMediaType, SCPollType, SCTagType } from '@selfcommunity/types';
2
2
  import { SCMediaObjectType } from '../../types/media';
3
3
  import { WidgetProps } from '../Widget';
4
4
  export interface InlineComposerWidgetProps extends Omit<WidgetProps, 'defaultValue'> {
@@ -15,6 +15,7 @@ export interface InlineComposerWidgetProps extends Omit<WidgetProps, 'defaultVal
15
15
  title?: string;
16
16
  text?: string;
17
17
  categories?: SCCategoryType[];
18
+ group?: SCGroupType;
18
19
  audience?: string;
19
20
  addressing?: SCTagType[];
20
21
  medias?: SCMediaType[];
@@ -21,6 +21,7 @@ const classes = {
21
21
  navigation: `${PREFIX}-navigation`,
22
22
  home: `${PREFIX}-home`,
23
23
  explore: `${PREFIX}-explore`,
24
+ groups: `${PREFIX}-groups`,
24
25
  search: `${PREFIX}-search`,
25
26
  composer: `${PREFIX}-composer`,
26
27
  profile: `${PREFIX}-profile`,
@@ -98,6 +99,7 @@ export default function NavigationToolbar(inProps) {
98
99
  return _preferences;
99
100
  }, [scPreferences.preferences]);
100
101
  const privateMessagingEnabled = useMemo(() => scPreferences.features.includes(SCFeatureName.PRIVATE_MESSAGING), [scPreferences.features]);
102
+ const groupsEnabled = useMemo(() => scPreferences.features.includes(SCFeatureName.GROUPING), [scPreferences.features]);
101
103
  // STATE
102
104
  const [anchorNotification, setAnchorNotification] = React.useState(null);
103
105
  // HANDLERS
@@ -118,7 +120,9 @@ export default function NavigationToolbar(inProps) {
118
120
  React.createElement(Icon, null, "home"))),
119
121
  preferences[SCPreferences.CONFIGURATIONS_EXPLORE_STREAM_ENABLED] &&
120
122
  (preferences[SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY] || scUserContext.user) && (React.createElement(IconButton, { className: classNames(classes.explore, { [classes.active]: value.startsWith(scRoutingContext.url(SCRoutes.EXPLORE_ROUTE_NAME, {})) }), "aria-label": "Explore", to: scRoutingContext.url(SCRoutes.EXPLORE_ROUTE_NAME, {}), component: Link },
121
- React.createElement(Icon, null, "explore")))));
123
+ React.createElement(Icon, null, "explore"))),
124
+ groupsEnabled && scUserContext.user && (React.createElement(IconButton, { className: classNames(classes.groups, { [classes.active]: value.startsWith(scRoutingContext.url(SCRoutes.GROUPS_ROUTE_NAME, {})) }), "aria-label": "Groups", to: scRoutingContext.url(SCRoutes.GROUPS_ROUTE_NAME, {}), component: Link },
125
+ React.createElement(Icon, null, "groups")))));
122
126
  return (React.createElement(Root, Object.assign({ className: classNames(className, classes.root) }, rest),
123
127
  React.createElement(NavigationMenuIconButtonComponent, null),
124
128
  React.createElement(Link, { to: scRoutingContext.url(SCRoutes.HOME_ROUTE_NAME, {}), className: classes.logo },
@@ -108,14 +108,16 @@ import ChangeGroupCover, { ChangeGroupCoverProps } from './components/ChangeGrou
108
108
  import ChangeGroupPicture, { ChangeGroupPictureProps } from './components/ChangeGroupPicture';
109
109
  import GroupHeader, { GroupHeaderProps, GroupHeaderSkeleton } from './components/GroupHeader';
110
110
  import GroupMembersButton, { GroupMembersButtonProps } from './components/GroupMembersButton';
111
- import CreateGroupButton from './components/CreateGroupButton';
112
- import CreateButton, { CreateGroupButtonProps } from './components/CreateGroupButton';
111
+ import CreateGroupButton, { CreateGroupButtonProps } from './components/CreateGroupButton';
112
+ import EditGroupButton, { EditGroupButtonProps } from './components/EditGroupButton';
113
113
  import GroupInviteButton, { GroupInviteButtonProps } from './components/GroupInviteButton';
114
114
  import GroupInfoWidget, { GroupInfoWidgetProps, GroupInfoWidgetSkeleton } from './components/GroupInfoWidget';
115
115
  import Group, { GroupProps } from './components/Group';
116
116
  import GroupSubscribeButton, { GroupSubscribeButtonProps } from './components/GroupSubscribeButton';
117
117
  import GroupMembersWidget, { GroupMembersWidgetProps, GroupMembersWidgetSkeleton } from './components/GroupMembersWidget';
118
118
  import GroupRequestsWidget, { GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton } from './components/GroupRequestsWidget';
119
+ import Groups, { GroupsProps, GroupsSkeleton } from './components/Groups';
120
+ import GroupForm, { GroupFormProps } from './components/GroupForm';
119
121
  /**
120
122
  * Constants
121
123
  */
@@ -140,4 +142,4 @@ import FeedObjectMediaPreview, { FeedObjectMediaPreviewProps } from './component
140
142
  /**
141
143
  * List all exports
142
144
  */
143
- 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, CreateButton, CreateGroupButtonProps, GroupInviteButton, GroupInviteButtonProps, GroupInfoWidget, GroupInfoWidgetProps, GroupInfoWidgetSkeleton, Group, GroupProps, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, 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 };
145
+ 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, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, Groups, GroupsProps, GroupsSkeleton, GroupForm, GroupFormProps, 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 };
package/lib/esm/index.js CHANGED
@@ -109,13 +109,15 @@ import ChangeGroupPicture from './components/ChangeGroupPicture';
109
109
  import GroupHeader, { GroupHeaderSkeleton } from './components/GroupHeader';
110
110
  import GroupMembersButton from './components/GroupMembersButton';
111
111
  import CreateGroupButton from './components/CreateGroupButton';
112
- import CreateButton from './components/CreateGroupButton';
112
+ import EditGroupButton from './components/EditGroupButton';
113
113
  import GroupInviteButton from './components/GroupInviteButton';
114
114
  import GroupInfoWidget, { GroupInfoWidgetSkeleton } from './components/GroupInfoWidget';
115
115
  import Group from './components/Group';
116
116
  import GroupSubscribeButton from './components/GroupSubscribeButton';
117
117
  import GroupMembersWidget, { GroupMembersWidgetSkeleton } from './components/GroupMembersWidget';
118
118
  import GroupRequestsWidget, { GroupRequestsWidgetSkeleton } from './components/GroupRequestsWidget';
119
+ import Groups, { GroupsSkeleton } from './components/Groups';
120
+ import GroupForm from './components/GroupForm';
119
121
  /**
120
122
  * Constants
121
123
  */
@@ -140,7 +142,7 @@ import FeedObjectMediaPreview from './components/FeedObjectMediaPreview';
140
142
  /**
141
143
  * List all exports
142
144
  */
143
- 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, CreateButton, GroupInviteButton, GroupInfoWidget, GroupInfoWidgetSkeleton, Group, GroupSubscribeButton, GroupMembersWidget, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetSkeleton,
145
+ 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, GroupSubscribeButton, GroupMembersWidget, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetSkeleton, Groups, GroupsSkeleton, GroupForm,
144
146
  /* SC UI SHARED */
145
147
  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,
146
148
  /* SC CONSENT SOLUTION */