@selfcommunity/react-ui 0.7.9-alpha.1 → 0.7.9-alpha.3

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 (186) hide show
  1. package/lib/cjs/components/BottomNavigation/BottomNavigation.js +3 -1
  2. package/lib/cjs/components/ChangeGroupCover/ChangeGroupCover.d.ts +55 -0
  3. package/lib/cjs/components/ChangeGroupCover/ChangeGroupCover.js +117 -0
  4. package/lib/cjs/components/ChangeGroupCover/constants.d.ts +1 -0
  5. package/lib/cjs/components/ChangeGroupCover/constants.js +4 -0
  6. package/lib/cjs/components/ChangeGroupCover/index.d.ts +3 -0
  7. package/lib/cjs/components/ChangeGroupCover/index.js +5 -0
  8. package/lib/cjs/components/ChangeGroupPicture/ChangeGroupPicture.d.ts +57 -0
  9. package/lib/cjs/components/ChangeGroupPicture/ChangeGroupPicture.js +117 -0
  10. package/lib/cjs/components/ChangeGroupPicture/constants.d.ts +1 -0
  11. package/lib/cjs/components/ChangeGroupPicture/constants.js +4 -0
  12. package/lib/cjs/components/ChangeGroupPicture/index.d.ts +3 -0
  13. package/lib/cjs/components/ChangeGroupPicture/index.js +5 -0
  14. package/lib/cjs/components/CreateGroup/CreateGroup.d.ts +48 -0
  15. package/lib/cjs/components/CreateGroup/CreateGroup.js +187 -0
  16. package/lib/cjs/components/CreateGroup/constants.d.ts +1 -0
  17. package/lib/cjs/components/CreateGroup/constants.js +4 -0
  18. package/lib/cjs/components/CreateGroup/index.d.ts +3 -0
  19. package/lib/cjs/components/CreateGroup/index.js +5 -0
  20. package/lib/cjs/components/CreateGroupButton/CreateGroupButton.d.ts +38 -0
  21. package/lib/cjs/components/CreateGroupButton/CreateGroupButton.js +73 -0
  22. package/lib/cjs/components/CreateGroupButton/index.d.ts +3 -0
  23. package/lib/cjs/components/CreateGroupButton/index.js +5 -0
  24. package/lib/cjs/components/Group/Group.d.ts +67 -0
  25. package/lib/cjs/components/Group/Group.js +96 -0
  26. package/lib/cjs/components/Group/Skeleton.d.ts +22 -0
  27. package/lib/cjs/components/Group/Skeleton.js +42 -0
  28. package/lib/cjs/components/Group/constants.d.ts +1 -0
  29. package/lib/cjs/components/Group/constants.js +4 -0
  30. package/lib/cjs/components/Group/index.d.ts +4 -0
  31. package/lib/cjs/components/Group/index.js +8 -0
  32. package/lib/cjs/components/GroupHeader/GroupHeader.d.ts +83 -0
  33. package/lib/cjs/components/GroupHeader/GroupHeader.js +137 -0
  34. package/lib/cjs/components/GroupHeader/Skeleton.d.ts +27 -0
  35. package/lib/cjs/components/GroupHeader/Skeleton.js +56 -0
  36. package/lib/cjs/components/GroupHeader/constants.d.ts +1 -0
  37. package/lib/cjs/components/GroupHeader/constants.js +4 -0
  38. package/lib/cjs/components/GroupHeader/index.d.ts +4 -0
  39. package/lib/cjs/components/GroupHeader/index.js +8 -0
  40. package/lib/cjs/components/GroupInfoWidget/GroupInfoWidget.d.ts +52 -0
  41. package/lib/cjs/components/GroupInfoWidget/GroupInfoWidget.js +100 -0
  42. package/lib/cjs/components/GroupInfoWidget/Skeleton.d.ts +21 -0
  43. package/lib/cjs/components/GroupInfoWidget/Skeleton.js +38 -0
  44. package/lib/cjs/components/GroupInfoWidget/constants.d.ts +1 -0
  45. package/lib/cjs/components/GroupInfoWidget/constants.js +4 -0
  46. package/lib/cjs/components/GroupInfoWidget/index.d.ts +4 -0
  47. package/lib/cjs/components/GroupInfoWidget/index.js +8 -0
  48. package/lib/cjs/components/GroupInviteButton/GroupInviteButton.d.ts +57 -0
  49. package/lib/cjs/components/GroupInviteButton/GroupInviteButton.js +261 -0
  50. package/lib/cjs/components/GroupInviteButton/index.d.ts +3 -0
  51. package/lib/cjs/components/GroupInviteButton/index.js +5 -0
  52. package/lib/cjs/components/GroupMembersButton/GroupMembersButton.d.ts +46 -0
  53. package/lib/cjs/components/GroupMembersButton/GroupMembersButton.js +135 -0
  54. package/lib/cjs/components/GroupMembersButton/index.d.ts +3 -0
  55. package/lib/cjs/components/GroupMembersButton/index.js +5 -0
  56. package/lib/cjs/components/GroupMembersWidget/GroupMembersWidget.d.ts +79 -0
  57. package/lib/cjs/components/GroupMembersWidget/GroupMembersWidget.js +197 -0
  58. package/lib/cjs/components/GroupMembersWidget/Skeleton.d.ts +22 -0
  59. package/lib/cjs/components/GroupMembersWidget/Skeleton.js +38 -0
  60. package/lib/cjs/components/GroupMembersWidget/constants.d.ts +1 -0
  61. package/lib/cjs/components/GroupMembersWidget/constants.js +4 -0
  62. package/lib/cjs/components/GroupMembersWidget/index.d.ts +4 -0
  63. package/lib/cjs/components/GroupMembersWidget/index.js +8 -0
  64. package/lib/cjs/components/GroupRequestsWidget/GroupRequestsWidget.d.ts +79 -0
  65. package/lib/cjs/components/GroupRequestsWidget/GroupRequestsWidget.js +194 -0
  66. package/lib/cjs/components/GroupRequestsWidget/Skeleton.d.ts +22 -0
  67. package/lib/cjs/components/GroupRequestsWidget/Skeleton.js +38 -0
  68. package/lib/cjs/components/GroupRequestsWidget/constants.d.ts +1 -0
  69. package/lib/cjs/components/GroupRequestsWidget/constants.js +4 -0
  70. package/lib/cjs/components/GroupRequestsWidget/index.d.ts +4 -0
  71. package/lib/cjs/components/GroupRequestsWidget/index.js +8 -0
  72. package/lib/cjs/components/GroupSubscribeButton/GroupSubscribeButton.d.ts +51 -0
  73. package/lib/cjs/components/GroupSubscribeButton/GroupSubscribeButton.js +117 -0
  74. package/lib/cjs/components/GroupSubscribeButton/index.d.ts +3 -0
  75. package/lib/cjs/components/GroupSubscribeButton/index.js +5 -0
  76. package/lib/cjs/components/Groups/Groups.d.ts +65 -0
  77. package/lib/cjs/components/Groups/Groups.js +184 -0
  78. package/lib/cjs/components/Groups/Skeleton.d.ts +22 -0
  79. package/lib/cjs/components/Groups/Skeleton.js +38 -0
  80. package/lib/cjs/components/Groups/constants.d.ts +1 -0
  81. package/lib/cjs/components/Groups/constants.js +4 -0
  82. package/lib/cjs/components/Groups/index.d.ts +4 -0
  83. package/lib/cjs/components/Groups/index.js +8 -0
  84. package/lib/cjs/components/InlineComposerWidget/InlineComposerWidget.d.ts +4 -0
  85. package/lib/cjs/components/InlineComposerWidget/InlineComposerWidget.js +2 -3
  86. package/lib/cjs/components/NavigationToolbar/NavigationToolbar.js +5 -1
  87. package/lib/cjs/components/User/User.d.ts +12 -0
  88. package/lib/cjs/components/User/User.js +5 -3
  89. package/lib/cjs/constants/Group.d.ts +2 -0
  90. package/lib/cjs/constants/Group.js +5 -0
  91. package/lib/cjs/index.d.ts +14 -1
  92. package/lib/cjs/index.js +34 -2
  93. package/lib/esm/components/BottomNavigation/BottomNavigation.js +3 -1
  94. package/lib/esm/components/ChangeGroupCover/ChangeGroupCover.d.ts +55 -0
  95. package/lib/esm/components/ChangeGroupCover/ChangeGroupCover.js +114 -0
  96. package/lib/esm/components/ChangeGroupCover/constants.d.ts +1 -0
  97. package/lib/esm/components/ChangeGroupCover/constants.js +1 -0
  98. package/lib/esm/components/ChangeGroupCover/index.d.ts +3 -0
  99. package/lib/esm/components/ChangeGroupCover/index.js +2 -0
  100. package/lib/esm/components/ChangeGroupPicture/ChangeGroupPicture.d.ts +57 -0
  101. package/lib/esm/components/ChangeGroupPicture/ChangeGroupPicture.js +114 -0
  102. package/lib/esm/components/ChangeGroupPicture/constants.d.ts +1 -0
  103. package/lib/esm/components/ChangeGroupPicture/constants.js +1 -0
  104. package/lib/esm/components/ChangeGroupPicture/index.d.ts +3 -0
  105. package/lib/esm/components/ChangeGroupPicture/index.js +2 -0
  106. package/lib/esm/components/CreateGroup/CreateGroup.d.ts +48 -0
  107. package/lib/esm/components/CreateGroup/CreateGroup.js +184 -0
  108. package/lib/esm/components/CreateGroup/constants.d.ts +1 -0
  109. package/lib/esm/components/CreateGroup/constants.js +1 -0
  110. package/lib/esm/components/CreateGroup/index.d.ts +3 -0
  111. package/lib/esm/components/CreateGroup/index.js +2 -0
  112. package/lib/esm/components/CreateGroupButton/CreateGroupButton.d.ts +38 -0
  113. package/lib/esm/components/CreateGroupButton/CreateGroupButton.js +70 -0
  114. package/lib/esm/components/CreateGroupButton/index.d.ts +3 -0
  115. package/lib/esm/components/CreateGroupButton/index.js +2 -0
  116. package/lib/esm/components/Group/Group.d.ts +67 -0
  117. package/lib/esm/components/Group/Group.js +93 -0
  118. package/lib/esm/components/Group/Skeleton.d.ts +22 -0
  119. package/lib/esm/components/Group/Skeleton.js +38 -0
  120. package/lib/esm/components/Group/constants.d.ts +1 -0
  121. package/lib/esm/components/Group/constants.js +1 -0
  122. package/lib/esm/components/Group/index.d.ts +4 -0
  123. package/lib/esm/components/Group/index.js +4 -0
  124. package/lib/esm/components/GroupHeader/GroupHeader.d.ts +83 -0
  125. package/lib/esm/components/GroupHeader/GroupHeader.js +134 -0
  126. package/lib/esm/components/GroupHeader/Skeleton.d.ts +27 -0
  127. package/lib/esm/components/GroupHeader/Skeleton.js +53 -0
  128. package/lib/esm/components/GroupHeader/constants.d.ts +1 -0
  129. package/lib/esm/components/GroupHeader/constants.js +1 -0
  130. package/lib/esm/components/GroupHeader/index.d.ts +4 -0
  131. package/lib/esm/components/GroupHeader/index.js +4 -0
  132. package/lib/esm/components/GroupInfoWidget/GroupInfoWidget.d.ts +52 -0
  133. package/lib/esm/components/GroupInfoWidget/GroupInfoWidget.js +97 -0
  134. package/lib/esm/components/GroupInfoWidget/Skeleton.d.ts +21 -0
  135. package/lib/esm/components/GroupInfoWidget/Skeleton.js +34 -0
  136. package/lib/esm/components/GroupInfoWidget/constants.d.ts +1 -0
  137. package/lib/esm/components/GroupInfoWidget/constants.js +1 -0
  138. package/lib/esm/components/GroupInfoWidget/index.d.ts +4 -0
  139. package/lib/esm/components/GroupInfoWidget/index.js +4 -0
  140. package/lib/esm/components/GroupInviteButton/GroupInviteButton.d.ts +57 -0
  141. package/lib/esm/components/GroupInviteButton/GroupInviteButton.js +258 -0
  142. package/lib/esm/components/GroupInviteButton/index.d.ts +3 -0
  143. package/lib/esm/components/GroupInviteButton/index.js +2 -0
  144. package/lib/esm/components/GroupMembersButton/GroupMembersButton.d.ts +46 -0
  145. package/lib/esm/components/GroupMembersButton/GroupMembersButton.js +132 -0
  146. package/lib/esm/components/GroupMembersButton/index.d.ts +3 -0
  147. package/lib/esm/components/GroupMembersButton/index.js +2 -0
  148. package/lib/esm/components/GroupMembersWidget/GroupMembersWidget.d.ts +79 -0
  149. package/lib/esm/components/GroupMembersWidget/GroupMembersWidget.js +194 -0
  150. package/lib/esm/components/GroupMembersWidget/Skeleton.d.ts +22 -0
  151. package/lib/esm/components/GroupMembersWidget/Skeleton.js +34 -0
  152. package/lib/esm/components/GroupMembersWidget/constants.d.ts +1 -0
  153. package/lib/esm/components/GroupMembersWidget/constants.js +1 -0
  154. package/lib/esm/components/GroupMembersWidget/index.d.ts +4 -0
  155. package/lib/esm/components/GroupMembersWidget/index.js +4 -0
  156. package/lib/esm/components/GroupRequestsWidget/GroupRequestsWidget.d.ts +79 -0
  157. package/lib/esm/components/GroupRequestsWidget/GroupRequestsWidget.js +191 -0
  158. package/lib/esm/components/GroupRequestsWidget/Skeleton.d.ts +22 -0
  159. package/lib/esm/components/GroupRequestsWidget/Skeleton.js +34 -0
  160. package/lib/esm/components/GroupRequestsWidget/constants.d.ts +1 -0
  161. package/lib/esm/components/GroupRequestsWidget/constants.js +1 -0
  162. package/lib/esm/components/GroupRequestsWidget/index.d.ts +4 -0
  163. package/lib/esm/components/GroupRequestsWidget/index.js +4 -0
  164. package/lib/esm/components/GroupSubscribeButton/GroupSubscribeButton.d.ts +51 -0
  165. package/lib/esm/components/GroupSubscribeButton/GroupSubscribeButton.js +114 -0
  166. package/lib/esm/components/GroupSubscribeButton/index.d.ts +3 -0
  167. package/lib/esm/components/GroupSubscribeButton/index.js +2 -0
  168. package/lib/esm/components/Groups/Groups.d.ts +65 -0
  169. package/lib/esm/components/Groups/Groups.js +181 -0
  170. package/lib/esm/components/Groups/Skeleton.d.ts +22 -0
  171. package/lib/esm/components/Groups/Skeleton.js +34 -0
  172. package/lib/esm/components/Groups/constants.d.ts +1 -0
  173. package/lib/esm/components/Groups/constants.js +1 -0
  174. package/lib/esm/components/Groups/index.d.ts +4 -0
  175. package/lib/esm/components/Groups/index.js +4 -0
  176. package/lib/esm/components/InlineComposerWidget/InlineComposerWidget.d.ts +4 -0
  177. package/lib/esm/components/InlineComposerWidget/InlineComposerWidget.js +3 -4
  178. package/lib/esm/components/NavigationToolbar/NavigationToolbar.js +5 -1
  179. package/lib/esm/components/User/User.d.ts +12 -0
  180. package/lib/esm/components/User/User.js +5 -3
  181. package/lib/esm/constants/Group.d.ts +2 -0
  182. package/lib/esm/constants/Group.js +2 -0
  183. package/lib/esm/index.d.ts +14 -1
  184. package/lib/esm/index.js +14 -1
  185. package/lib/umd/react-ui.js +1 -1
  186. package/package.json +6 -6
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const react_1 = tslib_1.__importStar(require("react"));
5
+ const styles_1 = require("@mui/material/styles");
6
+ const List_1 = tslib_1.__importDefault(require("@mui/material/List"));
7
+ const material_1 = require("@mui/material");
8
+ const api_services_1 = require("@selfcommunity/api-services");
9
+ const utils_1 = require("@selfcommunity/utils");
10
+ const react_core_1 = require("@selfcommunity/react-core");
11
+ const widget_1 = require("../../utils/widget");
12
+ const Skeleton_1 = tslib_1.__importDefault(require("./Skeleton"));
13
+ const react_intl_1 = require("react-intl");
14
+ const classnames_1 = tslib_1.__importDefault(require("classnames"));
15
+ const Errors_1 = require("../../constants/Errors");
16
+ const system_1 = require("@mui/system");
17
+ const HiddenPlaceholder_1 = tslib_1.__importDefault(require("../../shared/HiddenPlaceholder"));
18
+ const constants_1 = require("./constants");
19
+ const Group_1 = tslib_1.__importDefault(require("../Group"));
20
+ const classes = {
21
+ root: `${constants_1.PREFIX}-root`,
22
+ item: `${constants_1.PREFIX}-item`,
23
+ noResults: `${constants_1.PREFIX}-no-results`,
24
+ showMore: `${constants_1.PREFIX}-show-more`,
25
+ endMessage: `${constants_1.PREFIX}-end-message`
26
+ };
27
+ const Root = (0, styles_1.styled)(material_1.Box, {
28
+ name: constants_1.PREFIX,
29
+ slot: 'Root'
30
+ })(() => ({}));
31
+ /**
32
+ * > API documentation for the Community-JS Groups component. Learn about the available props and the CSS API.
33
+ *
34
+ *
35
+ * This component renders the list of the follows of the given group.
36
+ * Take a look at our <strong>demo</strong> component [here](/docs/sdk/community-js/react-ui/Components/Groups)
37
+
38
+ #### Import
39
+
40
+ ```jsx
41
+ import {Groups} from '@selfcommunity/react-ui';
42
+ ```
43
+
44
+ #### Component Name
45
+
46
+ The name `SCGroups` can be used when providing style overrides in the theme.
47
+
48
+
49
+ #### CSS
50
+
51
+ |Rule Name|Global class|Description|
52
+ |---|---|---|
53
+ |root|.SCGroups-root|Styles applied to the root element.|
54
+ |title|.SCGroups-title|Styles applied to the title element.|
55
+ |noResults|.SCGroups-no-results|Styles applied to no results section.|
56
+ |showMore|.SCGroups-show-more|Styles applied to show more button element.|
57
+ |dialogRoot|.SCGroups-dialog-root|Styles applied to the dialog root element.|
58
+ |endMessage|.SCGroups-end-message|Styles applied to the end message element.|
59
+
60
+ * @param inProps
61
+ */
62
+ function Groups(inProps) {
63
+ // PROPS
64
+ const props = (0, system_1.useThemeProps)({
65
+ props: inProps,
66
+ name: constants_1.PREFIX
67
+ });
68
+ const { endpoint, autoHide = false, limit = 5, className, cacheStrategy = utils_1.CacheStrategies.NETWORK_ONLY, onHeightChange, onStateChange, GroupProps = {} } = props, rest = tslib_1.__rest(props, ["endpoint", "autoHide", "limit", "className", "cacheStrategy", "onHeightChange", "onStateChange", "GroupProps"]);
69
+ // STATE
70
+ const [state, dispatch] = (0, react_1.useReducer)(widget_1.dataWidgetReducer, {
71
+ isLoadingNext: false,
72
+ next: null,
73
+ cacheKey: react_core_1.SCCache.getWidgetStateCacheKey(react_core_1.SCCache.GROUPS_LIST_TOOLS_STATE_CACHE_PREFIX_KEY),
74
+ cacheStrategy,
75
+ visibleItems: limit
76
+ }, widget_1.stateWidgetInitializer);
77
+ // CONTEXT
78
+ const scUserContext = (0, react_core_1.useSCUser)();
79
+ const scPreferencesContext = (0, react_core_1.useSCPreferences)();
80
+ // MEMO
81
+ const contentAvailability = (0, react_1.useMemo)(() => react_core_1.SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY in scPreferencesContext.preferences &&
82
+ scPreferencesContext.preferences[react_core_1.SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY].value, [scPreferencesContext.preferences]);
83
+ // HOOKS
84
+ // const theme = useTheme<SCThemeType>();
85
+ // const isMobile = useMediaQuery(theme.breakpoints.down('md'));
86
+ /**
87
+ * Initialize component
88
+ * Fetch data only if the component is not initialized, and it is not loading data
89
+ */
90
+ const _initComponent = (0, react_1.useMemo)(() => () => {
91
+ if (!state.initialized && !state.isLoadingNext) {
92
+ dispatch({ type: widget_1.actionWidgetTypes.LOADING_NEXT });
93
+ api_services_1.http
94
+ .request({
95
+ url: endpoint.url({ limit }),
96
+ method: endpoint.method
97
+ })
98
+ .then((payload) => {
99
+ dispatch({ type: widget_1.actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: Object.assign(Object.assign({}, payload.data), { initialized: true }) });
100
+ })
101
+ .catch((error) => {
102
+ dispatch({ type: widget_1.actionWidgetTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
103
+ utils_1.Logger.error(Errors_1.SCOPE_SC_UI, error);
104
+ });
105
+ }
106
+ }, [state.isLoadingNext, state.initialized, endpoint, limit, dispatch]);
107
+ // EFFECTS
108
+ (0, react_1.useEffect)(() => {
109
+ var _a;
110
+ let _t;
111
+ if ((contentAvailability || (!contentAvailability && ((_a = scUserContext.user) === null || _a === void 0 ? void 0 : _a.id))) && scUserContext.user !== undefined) {
112
+ _t = setTimeout(_initComponent);
113
+ return () => {
114
+ _t && clearTimeout(_t);
115
+ };
116
+ }
117
+ }, [scUserContext.user, contentAvailability]);
118
+ (0, react_1.useEffect)(() => {
119
+ if (state.next && state.results.length === limit && state.initialized) {
120
+ dispatch({ type: widget_1.actionWidgetTypes.LOADING_NEXT });
121
+ api_services_1.http
122
+ .request({
123
+ url: endpoint.url({ offset: limit, limit: 10 }),
124
+ method: endpoint.method
125
+ })
126
+ .then((payload) => {
127
+ dispatch({ type: widget_1.actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: payload.data });
128
+ })
129
+ .catch((error) => {
130
+ dispatch({ type: widget_1.actionWidgetTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
131
+ utils_1.Logger.error(Errors_1.SCOPE_SC_UI, error);
132
+ });
133
+ }
134
+ }, [state.next, state.results.length, state.initialized, limit]);
135
+ /**
136
+ * Virtual feed update
137
+ */
138
+ (0, react_1.useEffect)(() => {
139
+ onHeightChange && onHeightChange();
140
+ }, [state.results]);
141
+ (0, react_1.useEffect)(() => {
142
+ if (!endpoint || (!contentAvailability && !scUserContext.user)) {
143
+ return;
144
+ }
145
+ else if (cacheStrategy === utils_1.CacheStrategies.NETWORK_ONLY) {
146
+ onStateChange && onStateChange({ cacheStrategy: utils_1.CacheStrategies.CACHE_FIRST });
147
+ }
148
+ }, [scUserContext.user, endpoint, contentAvailability]);
149
+ (0, react_1.useEffect)(() => {
150
+ if (!endpoint || !scUserContext.user || !state.initialized) {
151
+ return;
152
+ }
153
+ }, []);
154
+ // HANDLERS
155
+ // const handleNext = useMemo(
156
+ // () => (): void => {
157
+ // dispatch({type: actionWidgetTypes.LOADING_NEXT});
158
+ // http
159
+ // .request({
160
+ // url: state.next,
161
+ // method: endpoint
162
+ // })
163
+ // .then((res: AxiosResponse<any>) => {
164
+ // dispatch({type: actionWidgetTypes.LOAD_NEXT_SUCCESS, payload: res.data});
165
+ // });
166
+ // },
167
+ // [dispatch, state.next, state.isLoadingNext, state.initialized]
168
+ // );
169
+ // RENDER
170
+ if ((autoHide && !state.count && state.initialized) || (!contentAvailability && !scUserContext.user) || !endpoint) {
171
+ return react_1.default.createElement(HiddenPlaceholder_1.default, null);
172
+ }
173
+ if (!state.initialized) {
174
+ return react_1.default.createElement(Skeleton_1.default, null);
175
+ }
176
+ const content = (react_1.default.createElement(react_1.default.Fragment, null, !state.count ? (react_1.default.createElement(material_1.Typography, { className: classes.noResults, variant: "body2" },
177
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.groupRequestsWidget.subtitle.noResults", defaultMessage: "" }))) : (react_1.default.createElement(react_1.default.Fragment, null,
178
+ react_1.default.createElement(List_1.default, null, state.results.slice(0, state.visibleItems).map((group) => (react_1.default.createElement(material_1.ListItem, { key: group.id, className: classes.item },
179
+ react_1.default.createElement(Group_1.default, Object.assign({ elevation: 1, actions: react_1.default.createElement(react_1.default.Fragment, null), group: group, groupId: group.id, buttonProps: { onClick: () => console.log(group) } }, GroupProps)))))),
180
+ state.count > state.visibleItems && (react_1.default.createElement(material_1.Button, { className: classes.showMore, onClick: () => console.log('load more') },
181
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.groupRequestsWidget.button.showMore", defaultMessage: "ui.groupRequestsWidget.button.showMore" })))))));
182
+ return (react_1.default.createElement(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest), content));
183
+ }
184
+ exports.default = Groups;
@@ -0,0 +1,22 @@
1
+ import { WidgetProps } from '../Widget';
2
+ /**
3
+ * > API documentation for the Community-JS Groups Skeleton component. Learn about the available props and the CSS API.
4
+
5
+ #### Import
6
+
7
+ ```jsx
8
+ import {GroupsSkeleton} from '@selfcommunity/react-ui';
9
+ ```
10
+
11
+ #### Component Name
12
+
13
+ The name `SCGroups-skeleton-root` can be used when providing style overrides in the theme.
14
+
15
+ #### CSS
16
+
17
+ |Rule Name|Global class|Description|
18
+ |---|---|---|
19
+ |root|.SCGroups-skeleton-root|Styles applied to the root element.|
20
+ *
21
+ */
22
+ export default function GroupsSkeleton(props: WidgetProps): JSX.Element;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const react_1 = tslib_1.__importDefault(require("react"));
5
+ const CategoryTrendingUsersWidget_1 = require("../CategoryTrendingUsersWidget");
6
+ const styles_1 = require("@mui/material/styles");
7
+ const constants_1 = require("./constants");
8
+ const classes = {
9
+ root: `${constants_1.PREFIX}-skeleton-root`
10
+ };
11
+ const Root = (0, styles_1.styled)(CategoryTrendingUsersWidget_1.CategoryTrendingPeopleWidgetSkeleton, {
12
+ name: constants_1.PREFIX,
13
+ slot: 'SkeletonRoot'
14
+ })(() => ({}));
15
+ /**
16
+ * > API documentation for the Community-JS Groups Skeleton component. Learn about the available props and the CSS API.
17
+
18
+ #### Import
19
+
20
+ ```jsx
21
+ import {GroupsSkeleton} from '@selfcommunity/react-ui';
22
+ ```
23
+
24
+ #### Component Name
25
+
26
+ The name `SCGroups-skeleton-root` can be used when providing style overrides in the theme.
27
+
28
+ #### CSS
29
+
30
+ |Rule Name|Global class|Description|
31
+ |---|---|---|
32
+ |root|.SCGroups-skeleton-root|Styles applied to the root element.|
33
+ *
34
+ */
35
+ function GroupsSkeleton(props) {
36
+ return react_1.default.createElement(Root, Object.assign({ className: classes.root }, props));
37
+ }
38
+ exports.default = GroupsSkeleton;
@@ -0,0 +1 @@
1
+ export declare const PREFIX = "SCGroups";
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PREFIX = void 0;
4
+ exports.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,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupsSkeleton = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Groups_1 = tslib_1.__importDefault(require("./Groups"));
6
+ const Skeleton_1 = tslib_1.__importDefault(require("./Skeleton"));
7
+ exports.GroupsSkeleton = Skeleton_1.default;
8
+ exports.default = Groups_1.default;
@@ -26,6 +26,10 @@ export interface InlineComposerWidgetProps extends Omit<WidgetProps, 'defaultVal
26
26
  * @default null
27
27
  */
28
28
  onSuccess?: (res: any) => void;
29
+ /**
30
+ * The label showed inside the composer
31
+ */
32
+ label?: any;
29
33
  }
30
34
  /**
31
35
  * > API documentation for the Community-JS Inline Composer component. Learn about the available props and the CSS API.
@@ -54,7 +54,7 @@ function InlineComposerWidget(inProps) {
54
54
  props: inProps,
55
55
  name: constants_1.PREFIX
56
56
  });
57
- const { mediaObjectTypes = [Media_1.File, Media_1.Link], defaultValue, onSuccess = null } = props, rest = tslib_1.__rest(props, ["mediaObjectTypes", "defaultValue", "onSuccess"]);
57
+ const { mediaObjectTypes = [Media_1.File, Media_1.Link], defaultValue, onSuccess = null, label } = props, rest = tslib_1.__rest(props, ["mediaObjectTypes", "defaultValue", "onSuccess", "label"]);
58
58
  // Context
59
59
  const scContext = (0, react_core_1.useSCContext)();
60
60
  const scUserContext = (0, react_core_1.useSCUser)();
@@ -98,8 +98,7 @@ function InlineComposerWidget(inProps) {
98
98
  react_1.default.createElement(Root, Object.assign({ className: classes.root }, rest),
99
99
  react_1.default.createElement(material_1.CardContent, { className: classes.content },
100
100
  react_1.default.createElement(material_1.Box, { className: classes.input },
101
- react_1.default.createElement(material_1.Button, { variant: "text", disableFocusRipple: true, disableRipple: true, disableElevation: true, onClick: handleOpen, fullWidth: true, color: "inherit" },
102
- react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.inlineComposerWidget.label", defaultMessage: "ui.inlineComposerWidget.label" }))),
101
+ react_1.default.createElement(material_1.Button, { variant: "text", disableFocusRipple: true, disableRipple: true, disableElevation: true, onClick: handleOpen, fullWidth: true, color: "inherit" }, label !== null && label !== void 0 ? label : react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.inlineComposerWidget.label", defaultMessage: "ui.inlineComposerWidget.label" }))),
103
102
  react_1.default.createElement(material_1.Box, { className: classes.avatar }, !scUserContext.user ? (react_1.default.createElement(material_1.Avatar, { variant: "circular" })) : (react_1.default.createElement(react_core_1.Link, { to: scRoutingContext.url(react_core_1.SCRoutes.USER_PROFILE_ROUTE_NAME, scUserContext.user) },
104
103
  react_1.default.createElement(material_1.Avatar, { alt: scUserContext.user.username, variant: "circular", src: scUserContext.user.avatar })))))),
105
104
  react_1.default.createElement(Composer_1.default, { open: open, mediaObjectTypes: mediaObjectTypes, defaultValue: defaultValue, fullWidth: true, onClose: handleClose, onSuccess: handleSuccess })));
@@ -23,6 +23,7 @@ const classes = {
23
23
  navigation: `${constants_1.PREFIX}-navigation`,
24
24
  home: `${constants_1.PREFIX}-home`,
25
25
  explore: `${constants_1.PREFIX}-explore`,
26
+ groups: `${constants_1.PREFIX}-groups`,
26
27
  search: `${constants_1.PREFIX}-search`,
27
28
  composer: `${constants_1.PREFIX}-composer`,
28
29
  profile: `${constants_1.PREFIX}-profile`,
@@ -100,6 +101,7 @@ function NavigationToolbar(inProps) {
100
101
  return _preferences;
101
102
  }, [scPreferences.preferences]);
102
103
  const privateMessagingEnabled = (0, react_1.useMemo)(() => scPreferences.features.includes(types_1.SCFeatureName.PRIVATE_MESSAGING), [scPreferences.features]);
104
+ const groupsEnabled = (0, react_1.useMemo)(() => scPreferences.features.includes(types_1.SCFeatureName.GROUPING), [scPreferences.features]);
103
105
  // STATE
104
106
  const [anchorNotification, setAnchorNotification] = react_1.default.useState(null);
105
107
  // HANDLERS
@@ -120,7 +122,9 @@ function NavigationToolbar(inProps) {
120
122
  react_1.default.createElement(Icon_1.default, null, "home"))),
121
123
  preferences[react_core_1.SCPreferences.CONFIGURATIONS_EXPLORE_STREAM_ENABLED] &&
122
124
  (preferences[react_core_1.SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY] || scUserContext.user) && (react_1.default.createElement(material_1.IconButton, { className: (0, classnames_1.default)(classes.explore, { [classes.active]: value.startsWith(scRoutingContext.url(react_core_1.SCRoutes.EXPLORE_ROUTE_NAME, {})) }), "aria-label": "Explore", to: scRoutingContext.url(react_core_1.SCRoutes.EXPLORE_ROUTE_NAME, {}), component: react_core_1.Link },
123
- react_1.default.createElement(Icon_1.default, null, "explore")))));
125
+ react_1.default.createElement(Icon_1.default, null, "explore"))),
126
+ groupsEnabled && scUserContext.user && (react_1.default.createElement(material_1.IconButton, { className: (0, classnames_1.default)(classes.groups, { [classes.active]: value.startsWith(scRoutingContext.url(react_core_1.SCRoutes.GROUPS_ROUTE_NAME, {})) }), "aria-label": "Groups", to: scRoutingContext.url(react_core_1.SCRoutes.GROUPS_ROUTE_NAME, {}), component: react_core_1.Link },
127
+ react_1.default.createElement(Icon_1.default, null, "groups")))));
124
128
  return (react_1.default.createElement(Root, Object.assign({ className: (0, classnames_1.default)(className, classes.root) }, rest),
125
129
  react_1.default.createElement(NavigationMenuIconButtonComponent, null),
126
130
  react_1.default.createElement(react_core_1.Link, { to: scRoutingContext.url(react_core_1.SCRoutes.HOME_ROUTE_NAME, {}), className: classes.logo },
@@ -1,3 +1,5 @@
1
+ import React from 'react';
2
+ import { ButtonBaseProps } from '@mui/material';
1
3
  import { SCUserType } from '@selfcommunity/types';
2
4
  import { FollowUserButtonProps } from '../FollowUserButton/FollowUserButton';
3
5
  import { FriendshipButtonProps } from '../FriendshipUserButton/FriendshipUserButton';
@@ -32,6 +34,16 @@ export interface UserProps extends WidgetProps {
32
34
  * Badge content to show as user avatar badge if show reaction is true.
33
35
  */
34
36
  badgeContent?: any;
37
+ /**
38
+ * Prop to add actions
39
+ * @default null
40
+ */
41
+ actions?: React.ReactNode;
42
+ /**
43
+ * Props to spread to the button
44
+ * @default {}
45
+ */
46
+ buttonProps?: ButtonBaseProps;
35
47
  /**
36
48
  * Any other properties
37
49
  */
@@ -66,7 +66,7 @@ function User(inProps) {
66
66
  props: inProps,
67
67
  name: constants_1.PREFIX
68
68
  });
69
- const { userId = null, user = null, handleIgnoreAction, className = null, followConnectUserButtonProps = {}, showFollowers = false, elevation, badgeContent = null } = props, rest = tslib_1.__rest(props, ["userId", "user", "handleIgnoreAction", "className", "followConnectUserButtonProps", "showFollowers", "elevation", "badgeContent"]);
69
+ const { userId = null, user = null, handleIgnoreAction, className = null, followConnectUserButtonProps = {}, showFollowers = false, elevation, badgeContent = null, actions = null, buttonProps = {} } = props, rest = tslib_1.__rest(props, ["userId", "user", "handleIgnoreAction", "className", "followConnectUserButtonProps", "showFollowers", "elevation", "badgeContent", "actions", "buttonProps"]);
70
70
  // STATE
71
71
  const { scUser, setSCUser } = (0, react_core_1.useSCFetchUser)({ id: userId, user });
72
72
  // CONTEXT
@@ -102,11 +102,13 @@ function User(inProps) {
102
102
  * Renders root object
103
103
  */
104
104
  return (react_1.default.createElement(react_1.default.Fragment, null,
105
- react_1.default.createElement(Root, Object.assign({ elevation: elevation }, rest, { className: (0, classnames_1.default)(classes.root, className), ButtonBaseProps: scUser.deleted ? { onClick: () => setOpenAlert(true) } : { component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.USER_PROFILE_ROUTE_NAME, scUser) }, image: badgeContent ? (react_1.default.createElement(material_1.Badge, { overlap: "circular", anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, badgeContent: badgeContent },
105
+ react_1.default.createElement(Root, Object.assign({ elevation: elevation }, rest, { className: (0, classnames_1.default)(classes.root, className), ButtonBaseProps: buttonProps !== null && buttonProps !== void 0 ? buttonProps : (scUser.deleted
106
+ ? { onClick: () => setOpenAlert(true) }
107
+ : { component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.USER_PROFILE_ROUTE_NAME, scUser) }), image: badgeContent ? (react_1.default.createElement(material_1.Badge, { overlap: "circular", anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, badgeContent: badgeContent },
106
108
  react_1.default.createElement(material_1.Avatar, { alt: scUser.username, src: scUser.avatar, className: classes.avatar }))) : (react_1.default.createElement(UserAvatar_1.default, { hide: !hasBadge },
107
109
  react_1.default.createElement(material_1.Avatar, { alt: scUser.username, src: scUser.avatar, className: classes.avatar }))), primary: hasBadge && preferences ? (react_1.default.createElement(react_1.default.Fragment, null,
108
110
  scUser.username,
109
- react_1.default.createElement(material_1.Chip, { component: "span", className: classes.staffBadgeLabel, size: "small", label: preferences[react_core_1.SCPreferences.STAFF_STAFF_BADGE_LABEL] }))) : (scUser.username), secondary: showFollowers ? `${intl.formatMessage(messages.userFollowers, { total: scUser.followers_counter })}` : scUser.description, actions: renderAuthenticatedActions() })),
111
+ react_1.default.createElement(material_1.Chip, { component: "span", className: classes.staffBadgeLabel, size: "small", label: preferences[react_core_1.SCPreferences.STAFF_STAFF_BADGE_LABEL] }))) : (scUser.username), secondary: showFollowers ? `${intl.formatMessage(messages.userFollowers, { total: scUser.followers_counter })}` : scUser.description, actions: actions !== null && actions !== void 0 ? actions : renderAuthenticatedActions() })),
110
112
  openAlert && react_1.default.createElement(UserDeletedSnackBar_1.default, { open: openAlert, handleClose: () => setOpenAlert(false) })));
111
113
  }
112
114
  exports.default = User;
@@ -0,0 +1,2 @@
1
+ export declare const GROUP_TITLE_MAX_LENGTH = 50;
2
+ export declare const GROUP_DESCRIPTION_MAX_LENGTH = 500;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GROUP_DESCRIPTION_MAX_LENGTH = exports.GROUP_TITLE_MAX_LENGTH = void 0;
4
+ exports.GROUP_TITLE_MAX_LENGTH = 50;
5
+ exports.GROUP_DESCRIPTION_MAX_LENGTH = 500;
@@ -104,6 +104,19 @@ import SearchAutocomplete, { SearchAutocompleteProps } from './components/Search
104
104
  import SearchDialog, { SearchDialogProps } from './components/SearchDialog';
105
105
  import PrivateMessageSettingsIconButton, { PrivateMessageSettingsIconButtonProps } from './components/PrivateMessageSettingsIconButton';
106
106
  import PrivateMessageComponent, { PrivateMessageComponentProps, PrivateMessageComponentSkeleton } from './components/PrivateMessageComponent';
107
+ import ChangeGroupCover, { ChangeGroupCoverProps } from './components/ChangeGroupCover';
108
+ import ChangeGroupPicture, { ChangeGroupPictureProps } from './components/ChangeGroupPicture';
109
+ import GroupHeader, { GroupHeaderProps, GroupHeaderSkeleton } from './components/GroupHeader';
110
+ import GroupMembersButton, { GroupMembersButtonProps } from './components/GroupMembersButton';
111
+ import CreateGroupButton from './components/CreateGroupButton';
112
+ import CreateButton, { CreateGroupButtonProps } from './components/CreateGroupButton';
113
+ import GroupInviteButton, { GroupInviteButtonProps } from './components/GroupInviteButton';
114
+ import GroupInfoWidget, { GroupInfoWidgetProps, GroupInfoWidgetSkeleton } from './components/GroupInfoWidget';
115
+ import Group, { GroupProps } from './components/Group';
116
+ import GroupSubscribeButton, { GroupSubscribeButtonProps } from './components/GroupSubscribeButton';
117
+ import GroupMembersWidget, { GroupMembersWidgetProps, GroupMembersWidgetSkeleton } from './components/GroupMembersWidget';
118
+ import GroupRequestsWidget, { GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton } from './components/GroupRequestsWidget';
119
+ import Groups, { GroupsProps, GroupsSkeleton } from './components/Groups';
107
120
  /**
108
121
  * Constants
109
122
  */
@@ -128,4 +141,4 @@ import FeedObjectMediaPreview, { FeedObjectMediaPreviewProps } from './component
128
141
  /**
129
142
  * List all exports
130
143
  */
131
- 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, 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 };
144
+ 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, Groups, GroupsProps, GroupsSkeleton, 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/cjs/index.js CHANGED
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GenericSkeleton = exports.FeedUpdatesWidgetSkeleton = exports.FeedUpdatesWidget = exports.FeedObjectMediaPreview = exports.FeedObjectSkeleton = exports.FeedObject = exports.ConnectionUserButton = exports.FollowUserButton = exports.CategoryFollowButton = exports.FeedSkeleton = exports.Feed = exports.FriendshipUserButton = exports.EditorSkeleton = exports.Editor = exports.ComposerIconButton = exports.Composer = exports.ChangePicture = exports.ChangeCover = exports.CategoriesSuggestionWidgetSkeleton = exports.CategoriesSuggestionWidget = exports.CategoriesPopularWidgetSkeleton = exports.CategoriesPopularWidget = exports.UserFollowedCategoriesWidgetSkeleton = exports.UserFollowedCategoriesWidget = exports.CategoriesSkeleton = exports.Categories = exports.CategoryHeaderSkeleton = exports.CategoryHeader = exports.CategoryFollowersButton = exports.CategoryAutocomplete = exports.CategorySkeleton = exports.Category = exports.BroadcastMessagesSkeleton = exports.BroadcastMessages = exports.BottomNavigation = exports.NavigationMenuContent = exports.NavigationMenuIconButton = exports.NavigationToolbarSkeleton = exports.NavigationToolbar = exports.NavigationToolbarMobileSkeleton = exports.NavigationToolbarMobile = exports.NavigationSettingsIconButton = exports.AccountChangeMailValidation = exports.AccountVerify = exports.AccountReset = exports.AccountRecover = exports.AccountDeleteButton = exports.AccountDelete = exports.AccountDataPortabilityButton = exports.AccountDataPortability = void 0;
4
4
  exports.UserConnectionsRequestsSentWidget = exports.UserConnectionsRequestsWidgetSkeleton = exports.UserConnectionsRequestsWidget = exports.UserConnectionsWidgetSkeleton = exports.UserConnectionsWidget = exports.UserFollowersWidgetSkeleton = exports.UserFollowersWidget = exports.UserFollowedUsersWidgetSkeleton = exports.UserFollowedUsersWidget = exports.UserProfileEditSectionAccount = exports.UserProfileEditSectionSettings = exports.UserProfileEditSectionPublicInfo = exports.UserProfileEditSkeleton = exports.UserProfileEdit = exports.SCUserProfileSettings = exports.SCUserProfileFields = exports.UserProfileBlocked = exports.UserInfoSkeleton = exports.UserInfo = exports.UserInfoDialog = exports.UserProfileHeaderSkeleton = exports.UserProfileHeader = exports.UserCounters = exports.UserActionIconButton = exports.RelatedFeedObjectsWidgetSkeleton = exports.RelatedFeedObjectsWidget = exports.CategoryTrendingPeopleWidgetSkeleton = exports.CategoryTrendingUsersWidget = exports.CategoryTrendingFeedWidgetSkeleton = exports.CategoryTrendingFeedWidget = exports.LoyaltyProgramWidgetSkeleton = exports.LoyaltyProgramWidget = exports.LocationAutocomplete = exports.PlatformWidgetSkeleton = exports.PlatformWidget = exports.UserSuggestionWidgetSkeleton = exports.UserSuggestionWidget = exports.NotificationSkeleton = exports.Notification = exports.InlineComposerWidgetSkeleton = exports.InlineComposerWidget = exports.ReplyComment = exports.CommentsFeedObjectSkeleton = exports.CommentsFeedObject = exports.CommentObjectReply = exports.CommentObjectSkeleton = exports.CommentsObjectSkeleton = exports.CommentsObject = exports.CommentObject = exports.AvatarGroupSkeleton = void 0;
5
- exports.File = exports.MediaChunkUploader = exports.LanguageSwitcher = exports.ConfirmDialog = exports.CentralProgress = exports.Lightbox = exports.UserAvatar = exports.UserDeletedSnackBar = exports.TagChip = exports.useStickyBox = exports.StickyBox = exports.InfiniteScroll = exports.MetadataField = exports.PhoneTextField = exports.PasswordTextField = exports.EmailTextField = exports.UsernameTextField = exports.UrlTextField = exports.SCBroadcastMessageTemplateType = exports.SCNotificationObjectTemplateType = exports.SCFeedObjectActivitiesType = exports.SCCommentsOrderBy = exports.SCFeedObjectTemplateType = exports.Widget = exports.SearchDialog = exports.SearchAutocomplete = exports.SnippetNotificationsSkeleton = exports.SnippetNotifications = exports.ToastNotificationsSkeleton = exports.ToastNotifications = exports.PrivateMessageSettingsIconButton = exports.PrivateMessageComponentSkeleton = exports.PrivateMessageComponent = exports.PrivateMessageSnippetsSkeleton = exports.PrivateMessageSnippets = exports.PrivateMessageEditorSkeleton = exports.PrivateMessageEditor = exports.PrivateMessageSnippetItemSkeleton = exports.PrivateMessageSnippetItem = exports.PrivateMessageThreadItemSkeleton = exports.PrivateMessageThreadItem = exports.PrivateMessageThreadSkeleton = exports.PrivateMessageThread = exports.UserSkeleton = exports.User = exports.CustomAdvSkeleton = exports.CustomAdv = exports.SCUserSocialAssociations = exports.UserSocialAssociation = exports.UserConnectionsRequestsSentWidgetSkeleton = void 0;
6
- exports.BaseDialog = exports.BaseItem = exports.FooterSkeleton = exports.Footer = exports.getRelativeTime = exports.MessageUploaderUtils = exports.getUnseenNotificationCounter = exports.getUnseenNotification = exports.bytesToSize = exports.ContributionUtils = exports.IncubatorSuggestionWidget = exports.IncubatorDetail = exports.IncubatorListWidget = exports.IncubatorSubscribeButton = exports.Incubator = exports.PollSuggestionWidget = exports.DEFAULT_WIDGETS_NUMBER = exports.DEFAULT_PAGINATION_LIMIT = exports.DEFAULT_PAGINATION_OFFSET = exports.DEFAULT_PAGINATION_QUERY_PARAM_NAME = exports.DEFAULT_FIELDS = exports.LEGAL_POLICIES = exports.ConsentSolutionButton = exports.ConsentSolutionSkeleton = exports.ConsentSolution = exports.MAX_PRELOAD_OFFSET_VIEWPORT = exports.MIN_PRELOAD_OFFSET_VIEWPORT = exports.DEFAULT_PRELOAD_OFFSET_VIEWPORT = exports.LINKEDIN_SHARE = exports.TWITTER_SHARE = exports.FACEBOOK_SHARE = exports.MEDIA_TYPE_EMBED = exports.Share = exports.Link = void 0;
5
+ exports.GroupsSkeleton = exports.Groups = exports.GroupRequestsWidgetSkeleton = exports.GroupRequestsWidget = exports.GroupMembersWidgetSkeleton = exports.GroupMembersWidget = exports.GroupSubscribeButton = exports.Group = exports.GroupInfoWidgetSkeleton = exports.GroupInfoWidget = exports.GroupInviteButton = exports.CreateButton = exports.CreateGroupButton = exports.GroupMembersButton = exports.GroupHeaderSkeleton = exports.GroupHeader = exports.ChangeGroupPicture = exports.ChangeGroupCover = exports.SCBroadcastMessageTemplateType = exports.SCNotificationObjectTemplateType = exports.SCFeedObjectActivitiesType = exports.SCCommentsOrderBy = exports.SCFeedObjectTemplateType = exports.Widget = exports.SearchDialog = exports.SearchAutocomplete = exports.SnippetNotificationsSkeleton = exports.SnippetNotifications = exports.ToastNotificationsSkeleton = exports.ToastNotifications = exports.PrivateMessageSettingsIconButton = exports.PrivateMessageComponentSkeleton = exports.PrivateMessageComponent = exports.PrivateMessageSnippetsSkeleton = exports.PrivateMessageSnippets = exports.PrivateMessageEditorSkeleton = exports.PrivateMessageEditor = exports.PrivateMessageSnippetItemSkeleton = exports.PrivateMessageSnippetItem = exports.PrivateMessageThreadItemSkeleton = exports.PrivateMessageThreadItem = exports.PrivateMessageThreadSkeleton = exports.PrivateMessageThread = exports.UserSkeleton = exports.User = exports.CustomAdvSkeleton = exports.CustomAdv = exports.SCUserSocialAssociations = exports.UserSocialAssociation = exports.UserConnectionsRequestsSentWidgetSkeleton = void 0;
6
+ exports.FooterSkeleton = exports.Footer = exports.getRelativeTime = exports.MessageUploaderUtils = exports.getUnseenNotificationCounter = exports.getUnseenNotification = exports.bytesToSize = exports.ContributionUtils = exports.IncubatorSuggestionWidget = exports.IncubatorDetail = exports.IncubatorListWidget = exports.IncubatorSubscribeButton = exports.Incubator = exports.PollSuggestionWidget = exports.DEFAULT_WIDGETS_NUMBER = exports.DEFAULT_PAGINATION_LIMIT = exports.DEFAULT_PAGINATION_OFFSET = exports.DEFAULT_PAGINATION_QUERY_PARAM_NAME = exports.DEFAULT_FIELDS = exports.LEGAL_POLICIES = exports.ConsentSolutionButton = exports.ConsentSolutionSkeleton = exports.ConsentSolution = exports.MAX_PRELOAD_OFFSET_VIEWPORT = exports.MIN_PRELOAD_OFFSET_VIEWPORT = exports.DEFAULT_PRELOAD_OFFSET_VIEWPORT = exports.LINKEDIN_SHARE = exports.TWITTER_SHARE = exports.FACEBOOK_SHARE = exports.MEDIA_TYPE_EMBED = exports.Share = exports.Link = exports.File = exports.MediaChunkUploader = exports.LanguageSwitcher = exports.ConfirmDialog = exports.CentralProgress = exports.Lightbox = exports.UserAvatar = exports.UserDeletedSnackBar = exports.TagChip = exports.useStickyBox = exports.StickyBox = exports.InfiniteScroll = exports.MetadataField = exports.PhoneTextField = exports.PasswordTextField = exports.EmailTextField = exports.UsernameTextField = exports.UrlTextField = void 0;
7
+ exports.BaseDialog = exports.BaseItem = void 0;
7
8
  const tslib_1 = require("tslib");
8
9
  /**
9
10
  * Components
@@ -273,6 +274,37 @@ exports.PrivateMessageSettingsIconButton = PrivateMessageSettingsIconButton_1.de
273
274
  const PrivateMessageComponent_1 = tslib_1.__importStar(require("./components/PrivateMessageComponent"));
274
275
  exports.PrivateMessageComponent = PrivateMessageComponent_1.default;
275
276
  Object.defineProperty(exports, "PrivateMessageComponentSkeleton", { enumerable: true, get: function () { return PrivateMessageComponent_1.PrivateMessageComponentSkeleton; } });
277
+ const ChangeGroupCover_1 = tslib_1.__importDefault(require("./components/ChangeGroupCover"));
278
+ exports.ChangeGroupCover = ChangeGroupCover_1.default;
279
+ const ChangeGroupPicture_1 = tslib_1.__importDefault(require("./components/ChangeGroupPicture"));
280
+ exports.ChangeGroupPicture = ChangeGroupPicture_1.default;
281
+ const GroupHeader_1 = tslib_1.__importStar(require("./components/GroupHeader"));
282
+ exports.GroupHeader = GroupHeader_1.default;
283
+ Object.defineProperty(exports, "GroupHeaderSkeleton", { enumerable: true, get: function () { return GroupHeader_1.GroupHeaderSkeleton; } });
284
+ const GroupMembersButton_1 = tslib_1.__importDefault(require("./components/GroupMembersButton"));
285
+ exports.GroupMembersButton = GroupMembersButton_1.default;
286
+ const CreateGroupButton_1 = tslib_1.__importDefault(require("./components/CreateGroupButton"));
287
+ exports.CreateGroupButton = CreateGroupButton_1.default;
288
+ const CreateGroupButton_2 = tslib_1.__importDefault(require("./components/CreateGroupButton"));
289
+ exports.CreateButton = CreateGroupButton_2.default;
290
+ const GroupInviteButton_1 = tslib_1.__importDefault(require("./components/GroupInviteButton"));
291
+ exports.GroupInviteButton = GroupInviteButton_1.default;
292
+ const GroupInfoWidget_1 = tslib_1.__importStar(require("./components/GroupInfoWidget"));
293
+ exports.GroupInfoWidget = GroupInfoWidget_1.default;
294
+ Object.defineProperty(exports, "GroupInfoWidgetSkeleton", { enumerable: true, get: function () { return GroupInfoWidget_1.GroupInfoWidgetSkeleton; } });
295
+ const Group_1 = tslib_1.__importDefault(require("./components/Group"));
296
+ exports.Group = Group_1.default;
297
+ const GroupSubscribeButton_1 = tslib_1.__importDefault(require("./components/GroupSubscribeButton"));
298
+ exports.GroupSubscribeButton = GroupSubscribeButton_1.default;
299
+ const GroupMembersWidget_1 = tslib_1.__importStar(require("./components/GroupMembersWidget"));
300
+ exports.GroupMembersWidget = GroupMembersWidget_1.default;
301
+ Object.defineProperty(exports, "GroupMembersWidgetSkeleton", { enumerable: true, get: function () { return GroupMembersWidget_1.GroupMembersWidgetSkeleton; } });
302
+ const GroupRequestsWidget_1 = tslib_1.__importStar(require("./components/GroupRequestsWidget"));
303
+ exports.GroupRequestsWidget = GroupRequestsWidget_1.default;
304
+ Object.defineProperty(exports, "GroupRequestsWidgetSkeleton", { enumerable: true, get: function () { return GroupRequestsWidget_1.GroupRequestsWidgetSkeleton; } });
305
+ const Groups_1 = tslib_1.__importStar(require("./components/Groups"));
306
+ exports.Groups = Groups_1.default;
307
+ Object.defineProperty(exports, "GroupsSkeleton", { enumerable: true, get: function () { return Groups_1.GroupsSkeleton; } });
276
308
  /**
277
309
  * Constants
278
310
  */
@@ -12,7 +12,7 @@ const classes = {
12
12
  root: `${PREFIX}-root`,
13
13
  ios: `${PREFIX}-ios`,
14
14
  action: `${PREFIX}-action`,
15
- composer: `${PREFIX}-composer`,
15
+ composer: `${PREFIX}-composer`
16
16
  };
17
17
  const Root = styled(MuiBottomNavigation, {
18
18
  name: PREFIX,
@@ -60,6 +60,7 @@ export default function BottomNavigation(inProps) {
60
60
  const { preferences, features } = useSCPreferences();
61
61
  // MEMO
62
62
  const privateMessagingEnabled = useMemo(() => features.includes(SCFeatureName.PRIVATE_MESSAGING), [features]);
63
+ const groupsEnabled = useMemo(() => features.includes(SCFeatureName.GROUPING), [features]);
63
64
  const isIOS = useMemo(() => iOS(), []);
64
65
  // RENDER
65
66
  return (React.createElement(Root, Object.assign({ className: classNames(className, classes.root, { [classes.ios]: isIOS }) }, rest), children
@@ -69,6 +70,7 @@ export default function BottomNavigation(inProps) {
69
70
  (scUserContext.user || preferences[SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY].value) &&
70
71
  preferences[SCPreferences.CONFIGURATIONS_EXPLORE_STREAM_ENABLED].value ? (React.createElement(BottomNavigationAction, { key: "explore", className: classes.action, component: Link, to: scRoutingContext.url(SCRoutes.EXPLORE_ROUTE_NAME, {}), value: scRoutingContext.url(SCRoutes.EXPLORE_ROUTE_NAME, {}), icon: React.createElement(Icon, null, "explore") })) : null,
71
72
  React.createElement(BottomNavigationAction, { key: "composer", className: classNames(classes.composer, classes.action), component: ComposerIconButton, disableRipple: true }),
73
+ groupsEnabled && scUserContext.user ? (React.createElement(BottomNavigationAction, { key: "groups", className: classes.action, component: Link, to: scRoutingContext.url(SCRoutes.GROUPS_ROUTE_NAME, {}), value: scRoutingContext.url(SCRoutes.GROUPS_ROUTE_NAME, {}), icon: React.createElement(Icon, null, "groups") })) : null,
72
74
  scUserContext.user ? (React.createElement(BottomNavigationAction, { key: "notifications", className: classes.action, component: Link, to: scRoutingContext.url(SCRoutes.USER_NOTIFICATIONS_ROUTE_NAME, {}), value: scRoutingContext.url(SCRoutes.USER_NOTIFICATIONS_ROUTE_NAME, {}), icon: React.createElement(Badge, { badgeContent: scUserContext.user.unseen_notification_banners_counter + scUserContext.user.unseen_interactions_counter, color: "secondary" },
73
75
  React.createElement(Icon, null, "notifications_active")) })) : null,
74
76
  privateMessagingEnabled && scUserContext.user ? (React.createElement(BottomNavigationAction, { key: "messages", className: classes.action, component: Link, to: scRoutingContext.url(SCRoutes.USER_PRIVATE_MESSAGES_ROUTE_NAME, {}), value: scRoutingContext.url(SCRoutes.USER_PRIVATE_MESSAGES_ROUTE_NAME, {}), icon: React.createElement(Badge, { badgeContent: 0, color: "secondary" },
@@ -0,0 +1,55 @@
1
+ export interface ChangeGroupCoverProps {
2
+ /**
3
+ * Id of the group. It is optional only for group creation modal.
4
+ * @default null
5
+ */
6
+ groupId?: number;
7
+ /**
8
+ * On change function.
9
+ * @default null
10
+ */
11
+ onChange?: (cover: any) => void;
12
+ /**
13
+ * Hides this component
14
+ * @default false
15
+ */
16
+ autoHide?: boolean;
17
+ /**
18
+ * Overrides or extends the styles applied to the component.
19
+ * @default null
20
+ */
21
+ className?: string;
22
+ /**
23
+ * Prop to handle cover loading in the create group modal.
24
+ * @default false
25
+ */
26
+ isCreationMode?: boolean;
27
+ /**
28
+ * Any other properties
29
+ */
30
+ [p: string]: any;
31
+ }
32
+ /**
33
+ * > API documentation for the Community-JS Change Group Cover component. Learn about the available props and the CSS API.
34
+ *
35
+ *
36
+ * This component renders a button that allows admins to edit the group cover and a popover that specifies format and sizes allowed.
37
+ * Take a look at our <strong>demo</strong> component [here](/docs/sdk/community-js/react-ui/Components/ChangeGroupCover)
38
+
39
+ #### Import
40
+ ```jsx
41
+ import {ChangeGroupCover} from '@selfcommunity/react-ui';
42
+ ```
43
+
44
+ #### Component Name
45
+ The name `SCChangeGroupCoverButton` can be used when providing style overrides in the theme.
46
+
47
+ #### CSS
48
+
49
+ |Rule Name|Global class|Description|
50
+ |---|---|---|
51
+ |root|.SCChangeGroupCoverButton-root|Styles applied to the root element.|
52
+
53
+ * @param inProps
54
+ */
55
+ export default function ChangeGroupCover(inProps: ChangeGroupCoverProps): JSX.Element;