@selfcommunity/react-ui 0.7.50-alpha.0 → 0.7.50-event.28

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 (176) hide show
  1. package/lib/cjs/assets/logo.d.ts +2 -0
  2. package/lib/cjs/assets/logo.js +3 -0
  3. package/lib/cjs/components/Category/Category.d.ts +1 -1
  4. package/lib/cjs/components/Category/Category.js +1 -1
  5. package/lib/cjs/components/ChangeCover/ChangeCover.js +3 -3
  6. package/lib/cjs/components/ChangePicture/ChangePictureDialog/ChangePictureDialog.js +1 -1
  7. package/lib/cjs/components/Composer/Composer.js +9 -7
  8. package/lib/cjs/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +1 -1
  9. package/lib/cjs/components/Composer/Layer/CategoryLayer/CategoryLayer.d.ts +1 -1
  10. package/lib/cjs/components/Composer/Layer/CloseLayer/CloseLayer.d.ts +1 -1
  11. package/lib/cjs/components/Composer/Layer/LocationLayer/LocationLayer.d.ts +1 -1
  12. package/lib/cjs/components/ComposerIconButton/ComposerIconButton.d.ts +1 -1
  13. package/lib/cjs/components/CreateEventButton/CreateEventButton.d.ts +38 -0
  14. package/lib/cjs/components/CreateEventButton/CreateEventButton.js +79 -0
  15. package/lib/cjs/components/CreateEventButton/index.d.ts +3 -0
  16. package/lib/cjs/components/CreateEventButton/index.js +5 -0
  17. package/lib/cjs/components/CreateGroupButton/CreateGroupButton.js +1 -1
  18. package/lib/cjs/components/Event/Event.d.ts +57 -0
  19. package/lib/cjs/components/Event/Event.js +90 -0
  20. package/lib/cjs/components/Event/Skeleton.d.ts +22 -0
  21. package/lib/cjs/components/Event/Skeleton.js +44 -0
  22. package/lib/cjs/components/Event/constants.d.ts +1 -0
  23. package/lib/cjs/components/Event/constants.js +4 -0
  24. package/lib/cjs/components/Event/index.d.ts +4 -0
  25. package/lib/cjs/components/Event/index.js +8 -0
  26. package/lib/cjs/components/EventForm/EventAddress.d.ts +12 -0
  27. package/lib/cjs/components/EventForm/EventAddress.js +129 -0
  28. package/lib/cjs/components/EventForm/EventForm.d.ts +59 -0
  29. package/lib/cjs/components/EventForm/EventForm.js +323 -0
  30. package/lib/cjs/components/EventForm/UploadEventCover.d.ts +40 -0
  31. package/lib/cjs/components/EventForm/UploadEventCover.js +98 -0
  32. package/lib/cjs/components/EventForm/constants.d.ts +1 -0
  33. package/lib/cjs/components/EventForm/constants.js +4 -0
  34. package/lib/cjs/components/EventForm/index.d.ts +3 -0
  35. package/lib/cjs/components/EventForm/index.js +5 -0
  36. package/lib/cjs/components/EventLocationWidget/EventLocationWidget.d.ts +55 -0
  37. package/lib/cjs/components/EventLocationWidget/EventLocationWidget.js +103 -0
  38. package/lib/cjs/components/EventLocationWidget/Skeleton.d.ts +22 -0
  39. package/lib/cjs/components/EventLocationWidget/Skeleton.js +47 -0
  40. package/lib/cjs/components/EventLocationWidget/constants.d.ts +1 -0
  41. package/lib/cjs/components/EventLocationWidget/constants.js +4 -0
  42. package/lib/cjs/components/EventLocationWidget/index.d.ts +4 -0
  43. package/lib/cjs/components/EventLocationWidget/index.js +8 -0
  44. package/lib/cjs/components/Feed/Feed.js +1 -1
  45. package/lib/cjs/components/FeedObject/Actions/Share/Share.js +5 -5
  46. package/lib/cjs/components/GroupForm/GroupForm.js +2 -2
  47. package/lib/cjs/components/GroupHeader/GroupHeader.js +3 -3
  48. package/lib/cjs/components/GroupInfoWidget/GroupInfoWidget.js +1 -1
  49. package/lib/cjs/components/GroupInviteButton/GroupInviteButton.js +3 -3
  50. package/lib/cjs/components/GroupInvitedWidget/GroupInvitedWidget.js +1 -1
  51. package/lib/cjs/components/GroupSettingsIconButton/GroupSettingsIconButton.js +1 -1
  52. package/lib/cjs/components/GroupSubscribeButton/GroupSubscribeButton.js +1 -1
  53. package/lib/cjs/components/IncubatorListWidget/IncubatorListWidget.js +1 -1
  54. package/lib/cjs/components/NavigationMenuIconButton/DefaultDrawerContent.d.ts +3 -2
  55. package/lib/cjs/components/NavigationMenuIconButton/DefaultDrawerContent.js +19 -3
  56. package/lib/cjs/components/NavigationMenuIconButton/DefaultHeaderContent.d.ts +3 -1
  57. package/lib/cjs/components/NavigationMenuIconButton/DefaultHeaderContent.js +22 -3
  58. package/lib/cjs/components/NavigationMenuIconButton/index.d.ts +2 -1
  59. package/lib/cjs/components/NavigationMenuIconButton/index.js +3 -1
  60. package/lib/cjs/components/Notification/Notification.js +1 -1
  61. package/lib/cjs/components/PlatformWidget/PlatformWidget.d.ts +24 -2
  62. package/lib/cjs/components/PlatformWidget/PlatformWidget.js +256 -18
  63. package/lib/cjs/components/PlatformWidget/constants.d.ts +4 -0
  64. package/lib/cjs/components/PlatformWidget/constants.js +5 -1
  65. package/lib/cjs/components/PrivateMessageEditor/MessageMediaUploader/index.js +1 -1
  66. package/lib/cjs/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js +6 -6
  67. package/lib/cjs/components/PrivateMessageSnippets/PrivateMessageSnippets.js +1 -1
  68. package/lib/cjs/components/PrivateMessageThread/PrivateMessageThread.js +1 -1
  69. package/lib/cjs/constants/Event.d.ts +2 -0
  70. package/lib/cjs/constants/Event.js +5 -0
  71. package/lib/cjs/constants/PubSub.d.ts +1 -1
  72. package/lib/cjs/constants/PubSub.js +10 -10
  73. package/lib/cjs/index.d.ts +12 -4
  74. package/lib/cjs/index.js +21 -5
  75. package/lib/cjs/shared/BaseDialog/BaseDialog.js +3 -2
  76. package/lib/cjs/shared/EmojiPicker/EmojiPicker.js +4 -2
  77. package/lib/cjs/shared/Media/File/PreviewComponent.d.ts +1 -1
  78. package/lib/cjs/shared/Media/Link/LayerComponent.d.ts +1 -1
  79. package/lib/cjs/shared/Media/Link/PreviewComponent.d.ts +1 -1
  80. package/lib/cjs/shared/MetadataField/index.d.ts +2 -1
  81. package/lib/cjs/types/index.d.ts +2 -1
  82. package/lib/cjs/types/platformWidget.d.ts +15 -0
  83. package/lib/cjs/types/platformWidget.js +2 -0
  84. package/lib/cjs/utils/string.d.ts +1 -0
  85. package/lib/cjs/utils/string.js +9 -1
  86. package/lib/esm/assets/logo.d.ts +2 -0
  87. package/lib/esm/assets/logo.js +1 -0
  88. package/lib/esm/components/Category/Category.d.ts +1 -1
  89. package/lib/esm/components/Category/Category.js +1 -1
  90. package/lib/esm/components/ChangeCover/ChangeCover.js +3 -3
  91. package/lib/esm/components/ChangePicture/ChangePictureDialog/ChangePictureDialog.js +1 -1
  92. package/lib/esm/components/Composer/Composer.js +9 -7
  93. package/lib/esm/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +1 -1
  94. package/lib/esm/components/Composer/Layer/CategoryLayer/CategoryLayer.d.ts +1 -1
  95. package/lib/esm/components/Composer/Layer/CloseLayer/CloseLayer.d.ts +1 -1
  96. package/lib/esm/components/Composer/Layer/LocationLayer/LocationLayer.d.ts +1 -1
  97. package/lib/esm/components/ComposerIconButton/ComposerIconButton.d.ts +1 -1
  98. package/lib/esm/components/CreateEventButton/CreateEventButton.d.ts +38 -0
  99. package/lib/esm/components/CreateEventButton/CreateEventButton.js +76 -0
  100. package/lib/esm/components/CreateEventButton/index.d.ts +3 -0
  101. package/lib/esm/components/CreateEventButton/index.js +2 -0
  102. package/lib/esm/components/CreateGroupButton/CreateGroupButton.js +1 -1
  103. package/lib/esm/components/Event/Event.d.ts +57 -0
  104. package/lib/esm/components/Event/Event.js +87 -0
  105. package/lib/esm/components/Event/Skeleton.d.ts +22 -0
  106. package/lib/esm/components/Event/Skeleton.js +40 -0
  107. package/lib/esm/components/Event/constants.d.ts +1 -0
  108. package/lib/esm/components/Event/constants.js +1 -0
  109. package/lib/esm/components/Event/index.d.ts +4 -0
  110. package/lib/esm/components/Event/index.js +4 -0
  111. package/lib/esm/components/EventForm/EventAddress.d.ts +12 -0
  112. package/lib/esm/components/EventForm/EventAddress.js +126 -0
  113. package/lib/esm/components/EventForm/EventForm.d.ts +59 -0
  114. package/lib/esm/components/EventForm/EventForm.js +320 -0
  115. package/lib/esm/components/EventForm/UploadEventCover.d.ts +40 -0
  116. package/lib/esm/components/EventForm/UploadEventCover.js +95 -0
  117. package/lib/esm/components/EventForm/constants.d.ts +1 -0
  118. package/lib/esm/components/EventForm/constants.js +1 -0
  119. package/lib/esm/components/EventForm/index.d.ts +3 -0
  120. package/lib/esm/components/EventForm/index.js +2 -0
  121. package/lib/esm/components/EventLocationWidget/EventLocationWidget.d.ts +55 -0
  122. package/lib/esm/components/EventLocationWidget/EventLocationWidget.js +100 -0
  123. package/lib/esm/components/EventLocationWidget/Skeleton.d.ts +22 -0
  124. package/lib/esm/components/EventLocationWidget/Skeleton.js +43 -0
  125. package/lib/esm/components/EventLocationWidget/constants.d.ts +1 -0
  126. package/lib/esm/components/EventLocationWidget/constants.js +1 -0
  127. package/lib/esm/components/EventLocationWidget/index.d.ts +4 -0
  128. package/lib/esm/components/EventLocationWidget/index.js +4 -0
  129. package/lib/esm/components/Feed/Feed.js +2 -2
  130. package/lib/esm/components/FeedObject/Actions/Share/Share.js +5 -5
  131. package/lib/esm/components/GroupForm/GroupForm.js +3 -3
  132. package/lib/esm/components/GroupHeader/GroupHeader.js +4 -4
  133. package/lib/esm/components/GroupInfoWidget/GroupInfoWidget.js +2 -2
  134. package/lib/esm/components/GroupInviteButton/GroupInviteButton.js +4 -4
  135. package/lib/esm/components/GroupInvitedWidget/GroupInvitedWidget.js +2 -2
  136. package/lib/esm/components/GroupSettingsIconButton/GroupSettingsIconButton.js +2 -2
  137. package/lib/esm/components/GroupSubscribeButton/GroupSubscribeButton.js +2 -2
  138. package/lib/esm/components/IncubatorListWidget/IncubatorListWidget.js +1 -1
  139. package/lib/esm/components/NavigationMenuIconButton/DefaultDrawerContent.d.ts +3 -2
  140. package/lib/esm/components/NavigationMenuIconButton/DefaultDrawerContent.js +21 -4
  141. package/lib/esm/components/NavigationMenuIconButton/DefaultHeaderContent.d.ts +3 -1
  142. package/lib/esm/components/NavigationMenuIconButton/DefaultHeaderContent.js +23 -3
  143. package/lib/esm/components/NavigationMenuIconButton/index.d.ts +2 -1
  144. package/lib/esm/components/NavigationMenuIconButton/index.js +2 -1
  145. package/lib/esm/components/Notification/Notification.js +1 -1
  146. package/lib/esm/components/PlatformWidget/PlatformWidget.d.ts +24 -2
  147. package/lib/esm/components/PlatformWidget/PlatformWidget.js +260 -22
  148. package/lib/esm/components/PlatformWidget/constants.d.ts +4 -0
  149. package/lib/esm/components/PlatformWidget/constants.js +4 -0
  150. package/lib/esm/components/PrivateMessageEditor/MessageMediaUploader/index.js +1 -1
  151. package/lib/esm/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js +6 -6
  152. package/lib/esm/components/PrivateMessageSnippets/PrivateMessageSnippets.js +1 -1
  153. package/lib/esm/components/PrivateMessageThread/PrivateMessageThread.js +1 -1
  154. package/lib/esm/constants/Event.d.ts +2 -0
  155. package/lib/esm/constants/Event.js +2 -0
  156. package/lib/esm/constants/PubSub.d.ts +1 -1
  157. package/lib/esm/constants/PubSub.js +9 -9
  158. package/lib/esm/index.d.ts +12 -4
  159. package/lib/esm/index.js +13 -3
  160. package/lib/esm/shared/BaseDialog/BaseDialog.js +3 -2
  161. package/lib/esm/shared/EmojiPicker/EmojiPicker.js +4 -2
  162. package/lib/esm/shared/Media/File/PreviewComponent.d.ts +1 -1
  163. package/lib/esm/shared/Media/Link/LayerComponent.d.ts +1 -1
  164. package/lib/esm/shared/Media/Link/PreviewComponent.d.ts +1 -1
  165. package/lib/esm/shared/MetadataField/index.d.ts +2 -1
  166. package/lib/esm/types/index.d.ts +2 -1
  167. package/lib/esm/types/platformWidget.d.ts +15 -0
  168. package/lib/esm/types/platformWidget.js +1 -0
  169. package/lib/esm/utils/string.d.ts +1 -0
  170. package/lib/esm/utils/string.js +7 -0
  171. package/lib/umd/204.js +2 -0
  172. package/lib/umd/204.js.LICENSE.txt +22 -0
  173. package/lib/umd/react-ui.js +1 -1
  174. package/package.json +24 -7
  175. package/lib/umd/311.js +0 -2
  176. package/lib/umd/311.js.LICENSE.txt +0 -7
@@ -6,21 +6,130 @@ const styles_1 = require("@mui/material/styles");
6
6
  const material_1 = require("@mui/material");
7
7
  const api_services_1 = require("@selfcommunity/api-services");
8
8
  const react_core_1 = require("@selfcommunity/react-core");
9
- const Icon_1 = tslib_1.__importDefault(require("@mui/material/Icon"));
10
9
  const react_intl_1 = require("react-intl");
11
10
  const classnames_1 = tslib_1.__importDefault(require("classnames"));
12
11
  const Widget_1 = tslib_1.__importDefault(require("../Widget"));
13
12
  const system_1 = require("@mui/system");
14
13
  const HiddenPlaceholder_1 = tslib_1.__importDefault(require("../../shared/HiddenPlaceholder"));
15
14
  const constants_1 = require("./constants");
15
+ const logo_1 = tslib_1.__importDefault(require("../../assets/logo"));
16
+ const Grow_1 = tslib_1.__importDefault(require("@mui/material/Grow"));
16
17
  const classes = {
17
18
  root: `${constants_1.PREFIX}-root`,
18
- title: `${constants_1.PREFIX}-title`
19
+ title: `${constants_1.PREFIX}-title`,
20
+ content: `${constants_1.PREFIX}-content`,
21
+ actions: `${constants_1.PREFIX}-actions`,
22
+ action: `${constants_1.PREFIX}-action`,
23
+ actionHighlighted: `${constants_1.PREFIX}-action-highlighted`,
24
+ tutorial: `${constants_1.PREFIX}-tutorial`,
25
+ tutorialContent: `${constants_1.PREFIX}-tutorial-content`,
26
+ tutorialTitle: `${constants_1.PREFIX}-tutorial-title`,
27
+ tutorialTitleClose: `${constants_1.PREFIX}-tutorial-title-close`,
28
+ tutorialDesc: `${constants_1.PREFIX}-tutorial-desc`,
29
+ tutorialOpen: `${constants_1.PREFIX}-tutorial-open`,
30
+ divider: `${constants_1.PREFIX}-divider`,
31
+ tutorialControls: `${constants_1.PREFIX}-tutorial-controls`,
32
+ btnStep: `${constants_1.PREFIX}-btn-step`,
33
+ btnPreviousStep: `${constants_1.PREFIX}-btn-previous-step`,
34
+ btnNextStep: `${constants_1.PREFIX}-btn-next-step`
19
35
  };
20
36
  const Root = (0, styles_1.styled)(Widget_1.default, {
21
37
  name: constants_1.PREFIX,
22
38
  slot: 'Root'
23
- })(() => ({}));
39
+ })(({ theme }) => ({
40
+ padding: '0px !important',
41
+ [`&.${classes.tutorialOpen}`]: {
42
+ position: 'relative',
43
+ zIndex: theme.zIndex.drawer + 2,
44
+ [`& .${classes.tutorial}`]: {
45
+ padding: 0
46
+ }
47
+ },
48
+ [`& .${classes.title}`]: {
49
+ display: 'flex',
50
+ justifyContent: 'center',
51
+ marginBottom: theme.spacing(1)
52
+ },
53
+ [`& .${classes.content}`]: {
54
+ padding: `${theme.spacing(2)} 0 0 0`,
55
+ backgroundColor: '#EFEFEF'
56
+ },
57
+ [`& .${classes.actions}`]: {
58
+ display: 'flex',
59
+ paddingBottom: 0,
60
+ boxShadow: 'inset -1px -3px 7px -4px #CECECE',
61
+ '-webkit-overflow-scrolling': 'touch',
62
+ overflowX: 'auto',
63
+ overflowY: 'hidden',
64
+ scrollbarWidth: 'none' /* Firefox */,
65
+ '-ms-overflow-style': 'none' /* IE and Edge */,
66
+ '&::-webkit-scrollbar': {
67
+ display: 'none'
68
+ }
69
+ },
70
+ [`& .${classes.action}`]: {
71
+ padding: `0px 2px ${theme.spacing(2)} 2px`,
72
+ display: 'flex',
73
+ flexGrow: 1,
74
+ justifyContent: 'center',
75
+ '& .MuiButton-root': {
76
+ color: theme.palette.getContrastText(theme.palette.common.white),
77
+ backgroundColor: theme.palette.common.white,
78
+ '&:hover': {
79
+ color: theme.palette.getContrastText(theme.palette.primary.main),
80
+ backgroundColor: theme.palette.primary.main
81
+ }
82
+ }
83
+ },
84
+ [`& .${classes.tutorialContent}`]: {
85
+ width: '100%'
86
+ },
87
+ [`& .${classes.divider}`]: {
88
+ paddingTop: theme.spacing()
89
+ },
90
+ [`& .${classes.tutorialTitle}`]: {
91
+ position: 'relative',
92
+ fontWeight: 700,
93
+ fontSize: 15,
94
+ padding: `${theme.spacing(3)} ${theme.spacing()} ${theme.spacing()} ${theme.spacing(3)}`
95
+ },
96
+ [`& .${classes.tutorialTitleClose}`]: {
97
+ position: 'absolute',
98
+ top: theme.spacing(3),
99
+ right: theme.spacing(3)
100
+ },
101
+ [`& .${classes.tutorialDesc}`]: {
102
+ fontSize: 14,
103
+ fontWeight: 500,
104
+ color: theme.palette.grey[700],
105
+ padding: `0px ${theme.spacing(3)} ${theme.spacing()} ${theme.spacing(3)}`
106
+ },
107
+ [`& .${classes.tutorialControls}`]: {
108
+ padding: theme.spacing(2)
109
+ },
110
+ [`& .${classes.actionHighlighted}`]: {
111
+ position: 'relative',
112
+ '&:before': {
113
+ content: '""',
114
+ display: 'block',
115
+ position: 'absolute',
116
+ bottom: -11,
117
+ width: 10,
118
+ height: 10,
119
+ transform: 'translateY(-50%) rotate(45deg)',
120
+ boxShadow: '0px -20px 20px 0px #CECECE',
121
+ zIndex: 0,
122
+ backgroundColor: theme.palette.common.white
123
+ },
124
+ '& .MuiButton-root': {
125
+ backgroundColor: theme.palette.primary.main,
126
+ color: theme.palette.common.white
127
+ }
128
+ },
129
+ [`& .${classes.btnStep}`]: {
130
+ borderRadius: 3
131
+ }
132
+ }));
24
133
  /**
25
134
  * > API documentation for the Community-JS PlatformWidget component. Learn about the available props and the CSS API.
26
135
  *
@@ -45,6 +154,20 @@ const Root = (0, styles_1.styled)(Widget_1.default, {
45
154
  |---|---|---|
46
155
  |root|.SCPlatformWidget-root|Styles applied to the root element.|
47
156
  |title|.SCPlatformWidget-title|Styles applied to the title element.|
157
+ |actions|.SCPlatformWidget-actions|Styles applied to the actions container.|
158
+ |action|.SCPlatformWidget-action|Styles applied to the single action element.|
159
+ |actionHighlighted|.SCPlatformWidget-action-highlighted|Styles applied to the action highlighted.|
160
+ |tutorial|.SCPlatformWidget-tutorial|Styles applied to the tutorial element.|
161
+ |tutorialContent|.SCPlatformWidget-tutorial-content|Styles applied to the content of the tutorial element.|
162
+ |tutorialTitle|.SCPlatformWidget-tutorial-title|Styles applied to the title element of the tutorial.|
163
+ |tutorialTitleClose|.SCPlatformWidget-tutorial-title-close|Styles applied to the close button of the title in the tutorial.|
164
+ |tutorialDesc|.SCPlatformWidget-tutorial-desc|Styles applied to the tutorial description element.|
165
+ |tutorialOpen|.SCPlatformWidget-tutorial-open|Styles applied to the tutorial element when is active.|
166
+ |divider|.SCPlatformWidget-divider|Styles applied to the divider element in the tutorial container.|
167
+ |tutorialControls|.SCPlatformWidget-tutorial-controls|Styles applied to the tutorial bottom controls.|
168
+ |btnStep|.SCPlatformWidget-btn-step|Styles applied to the button next/previous/skip/close of the tutorial controls.|
169
+ |btnPreviousStep|.SCPlatformWidget-btn-previous-step|Styles applied to the button previous element of the tutorial controls.|
170
+ |btnNextStep|.SCPlatformWidget-btn-next-step|Styles applied to the button next element of the tutorial controls.|
48
171
 
49
172
  *
50
173
  * @param inProps
@@ -56,14 +179,103 @@ function PlatformWidget(inProps) {
56
179
  props: inProps,
57
180
  name: constants_1.PREFIX
58
181
  });
59
- const { autoHide, className, title = null, startActions = null, endActions = null, onHeightChange, onStateChange } = props, rest = tslib_1.__rest(props, ["autoHide", "className", "title", "startActions", "endActions", "onHeightChange", "onStateChange"]);
182
+ const { autoHide, className, title = null, startActions = [], endActions = [], hideConsoleAction = false, hideModerationAction = false, hideHubAction = false, hideContactUsAction = false, onHeightChange } = props, rest = tslib_1.__rest(props, ["autoHide", "className", "title", "startActions", "endActions", "hideConsoleAction", "hideModerationAction", "hideHubAction", "hideContactUsAction", "onHeightChange"]);
60
183
  // CONTEXT
184
+ const scContext = (0, react_core_1.useSCContext)();
61
185
  const scUserContext = (0, react_1.useContext)(react_core_1.SCUserContext);
62
- const scLocaleContext = (0, react_core_1.useSCLocale)();
186
+ // STATE
187
+ const [tutorialIndex, setTutorialIndex] = (0, react_1.useState)(0);
188
+ const [isTutorialOpen, setIsTutorialOpen] = (0, react_1.useState)(false);
63
189
  // CONST
64
- const language = scLocaleContext.locale;
65
190
  const isAdmin = (0, react_1.useMemo)(() => react_core_1.UserUtils.isAdmin(scUserContext.user), [scUserContext.user]);
191
+ const isEditor = (0, react_1.useMemo)(() => react_core_1.UserUtils.isEditor(scUserContext.user), [scUserContext.user]);
66
192
  const isModerator = (0, react_1.useMemo)(() => react_core_1.UserUtils.isModerator(scUserContext.user), [scUserContext.user]);
193
+ const isCommunityOwner = (0, react_1.useMemo)(() => { var _a; return ((_a = scUserContext === null || scUserContext === void 0 ? void 0 : scUserContext.user) === null || _a === void 0 ? void 0 : _a.id) === 1; }, [scUserContext.user]);
194
+ const isStage = scContext.settings.portal.includes('stage');
195
+ const actions = [
196
+ ...startActions,
197
+ ...((isAdmin || isEditor) && !hideConsoleAction
198
+ ? [
199
+ {
200
+ render: (react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('') },
201
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" }))),
202
+ title: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" }),
203
+ content: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.adm.desc", defaultMessage: "ui.platformWidget.adm.desc" })
204
+ }
205
+ ]
206
+ : []),
207
+ ...((isAdmin || isModerator) && !hideModerationAction
208
+ ? [
209
+ {
210
+ render: (react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('/moderation/flags/') },
211
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" }))),
212
+ title: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" }),
213
+ content: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.mod.desc", defaultMessage: "ui.platformWidget.mod.desc" })
214
+ }
215
+ ]
216
+ : []),
217
+ ...(isAdmin && isCommunityOwner && !hideHubAction
218
+ ? [
219
+ {
220
+ render: (react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", component: react_core_1.Link, to: isStage ? constants_1.HUB_STAGE : constants_1.HUB_PROD, target: "_blank" },
221
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.hub", defaultMessage: "ui.platformWidget.hub" }))),
222
+ title: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.hub", defaultMessage: "ui.platformWidget.hub" }),
223
+ content: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.hub.desc", defaultMessage: "ui.platformWidget.hub.desc" })
224
+ }
225
+ ]
226
+ : []),
227
+ ...(isCommunityOwner && !hideContactUsAction
228
+ ? [
229
+ {
230
+ render: (react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", component: react_core_1.Link, to: isStage ? constants_1.CONTACT_STAGE : constants_1.CONTACT_PROD, target: "_blank" },
231
+ react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.contactUs", defaultMessage: "ui.platformWidget.contactUs" }))),
232
+ title: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.contactUs", defaultMessage: "ui.platformWidget.contactUs" }),
233
+ content: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.contactUs.desc", defaultMessage: "ui.platformWidget.contactUs.desc" })
234
+ }
235
+ ]
236
+ : []),
237
+ ...endActions
238
+ ];
239
+ /**
240
+ * Handle open tutorial
241
+ */
242
+ const handleOpenTutorial = (0, react_1.useCallback)(() => {
243
+ setTutorialIndex(0);
244
+ setIsTutorialOpen(true);
245
+ onHeightChange && onHeightChange();
246
+ }, [setTutorialIndex, setIsTutorialOpen, onHeightChange]);
247
+ /**
248
+ * Handle close tutorial
249
+ */
250
+ const handleCloseTutorial = (0, react_1.useCallback)(() => {
251
+ setIsTutorialOpen(false);
252
+ setTutorialIndex(0);
253
+ onHeightChange && onHeightChange();
254
+ }, [setIsTutorialOpen, setTutorialIndex, onHeightChange]);
255
+ /**
256
+ * Handle next step tutorial
257
+ */
258
+ const handlePrevious = (0, react_1.useCallback)(() => {
259
+ if (tutorialIndex > 0) {
260
+ setTutorialIndex((prev) => prev - 1);
261
+ }
262
+ else {
263
+ handleCloseTutorial();
264
+ }
265
+ onHeightChange && onHeightChange();
266
+ }, [tutorialIndex, setTutorialIndex, handleCloseTutorial, onHeightChange]);
267
+ /**
268
+ * Handle next step tutorial
269
+ */
270
+ const handleNext = (0, react_1.useCallback)(() => {
271
+ if (tutorialIndex < actions.length - 1) {
272
+ setTutorialIndex((prev) => prev + 1);
273
+ }
274
+ else {
275
+ handleCloseTutorial();
276
+ }
277
+ onHeightChange && onHeightChange();
278
+ }, [actions, tutorialIndex, setTutorialIndex, handleCloseTutorial, onHeightChange]);
67
279
  /**
68
280
  * Fetches platform url
69
281
  */
@@ -84,25 +296,51 @@ function PlatformWidget(inProps) {
84
296
  console.log(error);
85
297
  });
86
298
  }
299
+ /**
300
+ * Render tutorial
301
+ */
302
+ const tutorial = (react_1.default.createElement(material_1.Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center", className: classes.tutorial },
303
+ !isTutorialOpen && (react_1.default.createElement(material_1.Grid, { item: true, xs: "auto", alignItems: "center", justifyContent: "center" },
304
+ react_1.default.createElement(material_1.IconButton, { size: "medium", onClick: handleOpenTutorial },
305
+ react_1.default.createElement(material_1.Icon, null, "info")))),
306
+ react_1.default.createElement(material_1.Collapse, { in: isTutorialOpen, className: classes.tutorialContent }, isTutorialOpen && (react_1.default.createElement(material_1.Grid, { item: true, xs: "auto" },
307
+ react_1.default.createElement(material_1.Typography, { variant: 'body2', className: classes.tutorialTitle, component: 'div' },
308
+ react_1.default.createElement(Grow_1.default, { in: true, timeout: 1000 },
309
+ react_1.default.createElement("span", null, actions[tutorialIndex].title)),
310
+ react_1.default.createElement(material_1.IconButton, { size: 'small', className: classes.tutorialTitleClose, onClick: handleCloseTutorial },
311
+ react_1.default.createElement(material_1.Icon, null, "close"))),
312
+ react_1.default.createElement(Grow_1.default, { in: true, timeout: 1200 },
313
+ react_1.default.createElement(material_1.Typography, { variant: 'body2', className: classes.tutorialDesc }, actions[tutorialIndex].content)),
314
+ react_1.default.createElement(material_1.Divider, { className: classes.divider }),
315
+ react_1.default.createElement(material_1.Stack, { direction: "row", justifyContent: "space-between", alignItems: "center", spacing: 2, className: classes.tutorialControls },
316
+ react_1.default.createElement(material_1.Button, { variant: "text", size: "small", onClick: handlePrevious, className: (0, classnames_1.default)(classes.btnStep, classes.btnPreviousStep) }, tutorialIndex === 0 ? (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.tutorial.skip", defaultMessage: "ui.platformWidget.tutorial.skip" })) : (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.tutorial.previous", defaultMessage: "ui.platformWidget.tutorial.previous" }))),
317
+ react_1.default.createElement(material_1.Typography, { component: 'div' },
318
+ tutorialIndex + 1,
319
+ "/",
320
+ actions.length),
321
+ react_1.default.createElement(material_1.Button, { variant: "contained", size: "small", color: "primary", onClick: handleNext, className: (0, classnames_1.default)(classes.btnStep, classes.btnNextStep) }, tutorialIndex === actions.length - 1 ? (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.tutorial.close", defaultMessage: "ui.platformWidget.tutorial.close" })) : (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.tutorial.next", defaultMessage: "ui.platformWidget.tutorial.next" })))))))));
87
322
  /**
88
323
  * Renders platform card
89
324
  */
90
- const c = (react_1.default.createElement(material_1.Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center" },
91
- react_1.default.createElement(material_1.Grid, { item: true, xs: 12 }, title ? (title) : (react_1.default.createElement(material_1.Typography, { className: classes.title, component: "h3", align: "center" },
92
- react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.title", defaultMessage: "ui.platformWidget.title" }),
93
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "lock")))),
94
- startActions,
95
- isAdmin && (react_1.default.createElement(material_1.Grid, { item: true, xs: "auto" },
96
- react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('') },
97
- react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" })))),
98
- react_1.default.createElement(material_1.Grid, { item: true, xs: "auto" },
99
- react_1.default.createElement(material_1.Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('/moderation/flags/') }, isAdmin || isModerator ? (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" })) : (react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.edt", defaultMessage: "ui.platformWidget.edt" })))),
100
- endActions));
325
+ const content = (react_1.default.createElement(material_1.Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center", className: classes.content },
326
+ react_1.default.createElement(material_1.Grid, { item: true, xs: 12 }, title ? (title) : (react_1.default.createElement(material_1.Box, { className: classes.title },
327
+ react_1.default.createElement(material_1.Tooltip, { title: react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.platformWidget.title.tooltip", defaultMessage: "ui.platformWidget.title.tooltip" }), placement: "top" },
328
+ react_1.default.createElement("img", { src: logo_1.default, alt: "logo" }))))),
329
+ react_1.default.createElement(material_1.Grid, { item: true, xs: 12, className: classes.actions },
330
+ react_1.default.createElement(material_1.Grid, { item: true, xs: 1, className: classes.action }),
331
+ actions.map((a, i) => {
332
+ return (react_1.default.createElement(material_1.Grid, { key: i, item: true, xs: "auto", className: (0, classnames_1.default)(classes.action, { [classes.actionHighlighted]: tutorialIndex === i && isTutorialOpen }) }, a.render));
333
+ }),
334
+ react_1.default.createElement(material_1.Grid, { item: true, xs: 1, className: classes.action }))));
101
335
  /**
102
336
  * Renders root object (if not hidden by autoHide prop)
103
337
  */
104
338
  if (!autoHide && ((_a = scUserContext === null || scUserContext === void 0 ? void 0 : scUserContext.user) === null || _a === void 0 ? void 0 : _a.role)) {
105
- return (react_1.default.createElement(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest), c));
339
+ return (react_1.default.createElement(react_1.default.Fragment, null,
340
+ react_1.default.createElement(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className, { [classes.tutorialOpen]: isTutorialOpen }) }, rest),
341
+ content,
342
+ tutorial),
343
+ react_1.default.createElement(material_1.Backdrop, { sx: { color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }, open: isTutorialOpen, onClick: handleCloseTutorial })));
106
344
  }
107
345
  return react_1.default.createElement(HiddenPlaceholder_1.default, null);
108
346
  }
@@ -1 +1,5 @@
1
1
  export declare const PREFIX = "SCPlatformWidget";
2
+ export declare const HUB_STAGE = "https://hub.stage.quentrix.com/";
3
+ export declare const HUB_PROD = "https://hub.selfcommunity.com/";
4
+ export declare const CONTACT_STAGE = "https://hub.stage.quentrix.com/dashboard/account/contact-us";
5
+ export declare const CONTACT_PROD = "https://hub.selfcommunity.com/dashboard/account/contact-us";
@@ -1,4 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PREFIX = void 0;
3
+ exports.CONTACT_PROD = exports.CONTACT_STAGE = exports.HUB_PROD = exports.HUB_STAGE = exports.PREFIX = void 0;
4
4
  exports.PREFIX = 'SCPlatformWidget';
5
+ exports.HUB_STAGE = 'https://hub.stage.quentrix.com/';
6
+ exports.HUB_PROD = 'https://hub.selfcommunity.com/';
7
+ exports.CONTACT_STAGE = 'https://hub.stage.quentrix.com/dashboard/account/contact-us';
8
+ exports.CONTACT_PROD = 'https://hub.selfcommunity.com/dashboard/account/contact-us';
@@ -108,7 +108,7 @@ function MessageMediaUploader(props) {
108
108
  * Renders root object
109
109
  */
110
110
  return (react_1.default.createElement(Root, { className: (0, classnames_1.default)(classes.root, className) },
111
- react_1.default.createElement(material_1.CardHeader, { action: react_1.default.createElement(Icon_1.default, { fontSize: 'small', onClick: onClose, className: classes.closeButton }, "close") }),
111
+ react_1.default.createElement(material_1.CardHeader, { action: react_1.default.createElement(Icon_1.default, { onClick: onClose, className: classes.closeButton }, "close") }),
112
112
  Object.keys(errors).map((id) => (react_1.default.createElement(material_1.Fade, { in: true, key: id },
113
113
  react_1.default.createElement(material_1.Alert, { severity: "error", onClose: handleRemoveErrors(id) },
114
114
  react_1.default.createElement(material_1.AlertTitle, null, errors[id].name),
@@ -112,15 +112,15 @@ function PrivateMessageSettingsIconButton(inProps) {
112
112
  return [
113
113
  user && !group && (react_1.default.createElement(material_1.ListItem, { className: classes.item, key: "profile", component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.USER_PROFILE_ROUTE_NAME, user) },
114
114
  react_1.default.createElement(material_1.ListItemIcon, null,
115
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "people_alt")),
115
+ react_1.default.createElement(Icon_1.default, null, "people_alt")),
116
116
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))),
117
117
  group && !user && (react_1.default.createElement(material_1.ListItem, { className: classes.item, key: "group", component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.GROUP_ROUTE_NAME, group) },
118
118
  react_1.default.createElement(material_1.ListItemIcon, null,
119
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "groups")),
119
+ react_1.default.createElement(Icon_1.default, null, "groups")),
120
120
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.group", defaultMessage: "ui.privateMessageSettingsIconButton.item.group" }))),
121
121
  react_1.default.createElement(material_1.ListItem, { className: classes.item, key: "delete", onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick },
122
122
  react_1.default.createElement(material_1.ListItemIcon, null,
123
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "delete")),
123
+ react_1.default.createElement(Icon_1.default, null, "delete")),
124
124
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
125
125
  ];
126
126
  }
@@ -128,15 +128,15 @@ function PrivateMessageSettingsIconButton(inProps) {
128
128
  return [
129
129
  user && !group && (react_1.default.createElement(material_1.MenuItem, { className: classes.item, component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.USER_PROFILE_ROUTE_NAME, user), key: "profile", onClick: handleCloseDialog },
130
130
  react_1.default.createElement(material_1.ListItemIcon, null,
131
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "people_alt")),
131
+ react_1.default.createElement(Icon_1.default, null, "people_alt")),
132
132
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))),
133
133
  group && !user && (react_1.default.createElement(material_1.MenuItem, { className: classes.item, component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.GROUP_ROUTE_NAME, group), key: "group", onClick: handleCloseDialog },
134
134
  react_1.default.createElement(material_1.ListItemIcon, null,
135
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "groups")),
135
+ react_1.default.createElement(Icon_1.default, null, "groups")),
136
136
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.group", defaultMessage: "ui.privateMessageSettingsIconButton.item.group" }))),
137
137
  react_1.default.createElement(material_1.MenuItem, { className: classes.item, onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick, key: "delete" },
138
138
  react_1.default.createElement(material_1.ListItemIcon, null,
139
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "delete")),
139
+ react_1.default.createElement(Icon_1.default, null, "delete")),
140
140
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
141
141
  ];
142
142
  }
@@ -247,7 +247,7 @@ function PrivateMessageSnippets(inProps) {
247
247
  react_1.default.createElement(material_1.Icon, null, "close")))
248
248
  } }),
249
249
  react_1.default.createElement(material_1.List, null, filteredSnippets.map((message) => (react_1.default.createElement(PrivateMessageSnippetItem_1.default, { message: message, key: message.id, onItemClick: () => handleOpenThread(message), secondaryAction: react_1.default.createElement(react_1.default.Fragment, null,
250
- message.thread_status === types_1.SCPrivateMessageStatusType.NEW && (react_1.default.createElement(material_1.Icon, { fontSize: "small", color: "secondary" }, "fiber_manual_record")),
250
+ message.thread_status === types_1.SCPrivateMessageStatusType.NEW && react_1.default.createElement(material_1.Icon, { color: "secondary" }, "fiber_manual_record"),
251
251
  !isMobile && (react_1.default.createElement(PrivateMessageSettingsIconButton_1.default, { threadToDelete: (message === null || message === void 0 ? void 0 : message.group) ? message.group.id : messageReceiver(message, authUserId), onItemDeleteConfirm: () => handleDeleteConversation(messageReceiver(message, authUserId)), user: messageReceiver(message, authUserId, true), group: message === null || message === void 0 ? void 0 : message.group }))), selected: isSelected(message) })))))))));
252
252
  }
253
253
  exports.default = PrivateMessageSnippets;
@@ -499,7 +499,7 @@ function PrivateMessageThread(inProps) {
499
499
  react_1.default.createElement(react_intl_1.FormattedMessage, { defaultMessage: "ui.privateMessage.thread.newMessage.to", id: "ui.privateMessage.thread.newMessage.to" })),
500
500
  react_1.default.createElement(Autocomplete_1.default, { className: classes.autocomplete, loading: loading, multiple: !singleMessageThread, limitTags: 3, freeSolo: true, disableClearable: true, options: followers, onChange: handleChange, onInputChange: handleInputChange, inputValue: value, value: singleMessageThread ? singleMessageUser : recipients, getOptionLabel: (option) => (option ? option.username : '...'), isOptionEqualToValue: (option, value) => (option ? value.id === option.id : false), renderInput: (params) => (react_1.default.createElement(material_1.TextField, Object.assign({}, params, { placeholder: singleMessageThread ? '...' : `${intl.formatMessage(translMessages.placeholder)}`, variant: "standard", InputProps: Object.assign(Object.assign({}, params.InputProps), { disableUnderline: true }) }))), classes: { popper: classes.autocompleteDialog }, disabled: Boolean(singleMessageUser) })),
501
501
  react_1.default.createElement(material_1.IconButton, { size: "small", onClick: handleNewMessageClose },
502
- react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "close"))),
502
+ react_1.default.createElement(Icon_1.default, null, "close"))),
503
503
  react_1.default.createElement(material_1.List, { className: classes.newMessageContent }),
504
504
  react_1.default.createElement(PrivateMessageEditor_1.default, { className: classes.editor, send: handleSend, autoHide: !followers, error: error, onErrorRemove: () => setError(false) }))) : (react_1.default.createElement(material_1.Typography, { className: classes.emptyMessage },
505
505
  react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessage.thread.emptyBox.message", defaultMessage: "ui.privateMessage.thread.emptyBox.message" })))));
@@ -0,0 +1,2 @@
1
+ export declare const EVENT_TITLE_MAX_LENGTH = 50;
2
+ export declare const EVENT_DESCRIPTION_MAX_LENGTH = 150;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EVENT_DESCRIPTION_MAX_LENGTH = exports.EVENT_TITLE_MAX_LENGTH = void 0;
4
+ exports.EVENT_TITLE_MAX_LENGTH = 50;
5
+ exports.EVENT_DESCRIPTION_MAX_LENGTH = 150;
@@ -8,7 +8,7 @@ export declare enum SCTopicType {
8
8
  /**
9
9
  * Event types
10
10
  */
11
- export declare enum SCEventType {
11
+ export declare enum SCGroupEventType {
12
12
  CREATE = "create",
13
13
  EDIT = "edit",
14
14
  MEMBERS = "members",
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SCEventType = exports.SCTopicType = void 0;
3
+ exports.SCGroupEventType = exports.SCTopicType = void 0;
4
4
  /**
5
5
  * Define topics for pubsub
6
6
  */
@@ -11,12 +11,12 @@ var SCTopicType;
11
11
  /**
12
12
  * Event types
13
13
  */
14
- var SCEventType;
15
- (function (SCEventType) {
16
- SCEventType["CREATE"] = "create";
17
- SCEventType["EDIT"] = "edit";
18
- SCEventType["MEMBERS"] = "members";
19
- SCEventType["ADD_MEMBER"] = "members.add_member";
20
- SCEventType["INVITE_MEMBER"] = "members.invite_member";
21
- SCEventType["REMOVE_MEMBER"] = "members.remove_member";
22
- })(SCEventType = exports.SCEventType || (exports.SCEventType = {}));
14
+ var SCGroupEventType;
15
+ (function (SCGroupEventType) {
16
+ SCGroupEventType["CREATE"] = "create";
17
+ SCGroupEventType["EDIT"] = "edit";
18
+ SCGroupEventType["MEMBERS"] = "members";
19
+ SCGroupEventType["ADD_MEMBER"] = "members.add_member";
20
+ SCGroupEventType["INVITE_MEMBER"] = "members.invite_member";
21
+ SCGroupEventType["REMOVE_MEMBER"] = "members.remove_member";
22
+ })(SCGroupEventType = exports.SCGroupEventType || (exports.SCGroupEventType = {}));
@@ -8,7 +8,7 @@ import AccountDeleteButton, { AccountDeleteButtonProps } from './components/Acco
8
8
  import NavigationSettingsIconButton, { NavigationSettingsIconButtonProps, NavigationSettingsItem } from './components/NavigationSettingsIconButton';
9
9
  import NavigationToolbar, { NavigationToolbarProps, NavigationToolbarSkeleton } from './components/NavigationToolbar';
10
10
  import NavigationToolbarMobile, { NavigationToolbarMobileProps, NavigationToolbarMobileSkeleton } from './components/NavigationToolbarMobile';
11
- import NavigationMenuIconButton, { NavigationMenuContent, NavigationMenuIconButtonProps } from './components/NavigationMenuIconButton';
11
+ import NavigationMenuIconButton, { NavigationMenuContent, NavigationMenuIconButtonProps, NavigationMenuHeader } from './components/NavigationMenuIconButton';
12
12
  import BottomNavigation, { BottomNavigationProps } from './components/BottomNavigation';
13
13
  import BroadcastMessages, { BroadcastMessagesProps, BroadcastMessagesSkeleton } from './components/BroadcastMessages';
14
14
  import Category, { CategoryProps, CategorySkeleton } from './components/Category';
@@ -72,7 +72,7 @@ import AccountRecover, { AccountRecoverProps } from './components/AccountRecover
72
72
  import AccountReset, { AccountResetProps } from './components/AccountReset';
73
73
  import AccountVerify, { AccountVerifyProps } from './components/AccountVerify';
74
74
  import AccountChangeMailValidation, { AccountChangeMailValidationProps } from './components/AccountChangeMailValidation';
75
- import { SCBroadcastMessageTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCFeedObjectTemplateType, SCFeedWidgetType, SCMediaChunkType, SCMediaObjectType, SCNotificationObjectTemplateType, SCUserProfileFields, SCUserProfileSettings, SCUserSocialAssociations, VirtualScrollerItemProps } from './types';
75
+ import { SCBroadcastMessageTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCFeedObjectTemplateType, SCFeedWidgetType, SCMediaChunkType, SCMediaObjectType, SCNotificationObjectTemplateType, SCUserProfileFields, SCUserProfileSettings, SCUserSocialAssociations, VirtualScrollerItemProps, PlatformWidgetActionType } from './types';
76
76
  import Widget, { WidgetProps } from './components/Widget';
77
77
  import ConfirmDialog from './shared/ConfirmDialog/ConfirmDialog';
78
78
  import LanguageSwitcher from './shared/LanguageSwitcher';
@@ -123,6 +123,10 @@ import GroupSettingsIconButton, { GroupSettingsIconButtonProps } from './compone
123
123
  import GroupInvitedWidget, { GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton } from './components/GroupInvitedWidget';
124
124
  import UserSubscribedGroupsWidget, { UserSubscribedGroupsWidgetProps, UserSubscribedGroupsWidgetSkeleton } from './components/UserSubscribedGroupsWidget';
125
125
  import DefaultDrawerContent, { DefaultDrawerContentProps } from './components/NavigationMenuIconButton/DefaultDrawerContent';
126
+ import DefaultHeaderContent, { DefaultHeaderContentProps } from './components/NavigationMenuIconButton/DefaultHeaderContent';
127
+ import CreateEventButton, { CreateEventButtonProps } from './components/CreateEventButton';
128
+ import EventLocationWidget, { EventLocationWidgetProps, EventLocationWidgetSkeleton } from './components/EventLocationWidget';
129
+ import Event, { EventProps, EventSkeleton } from './components/Event';
126
130
  /**
127
131
  * Constants
128
132
  */
@@ -136,7 +140,7 @@ import { DEFAULT_FIELDS } from './constants/UserProfile';
136
140
  * Utilities
137
141
  */
138
142
  import * as ContributionUtils from './utils/contribution';
139
- import MetadataField from './shared/MetadataField';
143
+ import MetadataField, { MetadataFieldProps } from './shared/MetadataField';
140
144
  import InfiniteScroll from './shared/InfiniteScroll';
141
145
  import CentralProgress from './shared/CentralProgress';
142
146
  import { bytesToSize } from './utils/sizeCoverter';
@@ -144,7 +148,11 @@ import { getUnseenNotification, getUnseenNotificationCounter } from './utils/fee
144
148
  import * as MessageUploaderUtils from './utils/thumbnailCoverter';
145
149
  import { getRelativeTime } from './utils/formatRelativeTime';
146
150
  import FeedObjectMediaPreview, { FeedObjectMediaPreviewProps } from './components/FeedObjectMediaPreview';
151
+ /**
152
+ * Import Assets
153
+ */
154
+ import LogoSelfCommunity from './assets/logo';
147
155
  /**
148
156
  * List all exports
149
157
  */
150
- 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, VirtualScrollerItemProps, CustomAdv, CustomAdvProps, CustomAdvSkeleton, User, UserProps, UserSkeleton, PrivateMessageThread, PrivateMessageThreadProps, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemProps, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemProps, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorProps, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsProps, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentProps, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, PrivateMessageSettingsIconButtonProps, ToastNotifications, ToastNotificationsProps, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsProps, SnippetNotificationsSkeleton, SearchAutocomplete, SearchAutocompleteProps, SearchDialog, SearchDialogProps, Widget, WidgetProps, SCFeedWidgetType, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCMediaObjectType, SCMediaChunkType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupCoverProps, ChangeGroupPicture, ChangeGroupPictureProps, GroupHeader, GroupHeaderProps, GroupHeaderSkeleton, GroupMembersButton, GroupMembersButtonProps, CreateGroupButton, CreateGroupButtonProps, EditGroupButton, EditGroupButtonProps, GroupInviteButton, GroupInviteButtonProps, GroupInfoWidget, GroupInfoWidgetProps, GroupInfoWidgetSkeleton, Group, GroupProps, GroupSkeleton, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, Groups, GroupsProps, GroupsSkeleton, GroupForm, GroupFormProps, GroupInvitedWidget, GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton, UserSubscribedGroupsWidget, UserSubscribedGroupsWidgetProps, UserSubscribedGroupsWidgetSkeleton, DefaultDrawerContent, DefaultDrawerContentProps, HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordTextField, PhoneTextField, MetadataField, InfiniteScroll, StickyBox, useStickyBox, StickyBoxProps, StickyBoxComponent, UseStickyBoxProps, TagChip, TagChipProps, UserDeletedSnackBar, UserDeletedSnackBarProps, UserAvatar, UserAvatarProps, Lightbox, CentralProgress, ConfirmDialog, LanguageSwitcher, MediaChunkUploader, MediaChunkUploaderProps, File, Link, Share, EditMediaProps, MEDIA_TYPE_EMBED, FACEBOOK_SHARE, X_SHARE, LINKEDIN_SHARE, DEFAULT_PRELOAD_OFFSET_VIEWPORT, MIN_PRELOAD_OFFSET_VIEWPORT, MAX_PRELOAD_OFFSET_VIEWPORT, ConsentSolution, ConsentSolutionProps, ConsentSolutionSkeleton, ConsentSolutionButton, ConsentSolutionButtonProps, LEGAL_POLICIES, DEFAULT_FIELDS, DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, PollSuggestionWidgetProps, Incubator, IncubatorSubscribeButton, IncubatorSubscribeButtonProps, IncubatorProps, IncubatorListWidget, IncubatorListWidgetProps, IncubatorDetail, IncubatorDetailProps, IncubatorSuggestionWidget, IncubatorSuggestionWidgetProps, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterProps, FooterSkeleton, BaseItem, BaseItemProps, BaseDialog, BaseDialogProps, GroupSettingsIconButton, GroupSettingsIconButtonProps };
158
+ 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, NavigationMenuHeader, 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, VirtualScrollerItemProps, PlatformWidgetActionType, CustomAdv, CustomAdvProps, CustomAdvSkeleton, User, UserProps, UserSkeleton, PrivateMessageThread, PrivateMessageThreadProps, PrivateMessageThreadSkeleton, PrivateMessageThreadItem, PrivateMessageThreadItemProps, PrivateMessageThreadItemSkeleton, PrivateMessageSnippetItem, PrivateMessageSnippetItemProps, PrivateMessageSnippetItemSkeleton, PrivateMessageEditor, PrivateMessageEditorProps, PrivateMessageEditorSkeleton, PrivateMessageSnippets, PrivateMessageSnippetsProps, PrivateMessageSnippetsSkeleton, PrivateMessageComponent, PrivateMessageComponentProps, PrivateMessageComponentSkeleton, PrivateMessageSettingsIconButton, PrivateMessageSettingsIconButtonProps, ToastNotifications, ToastNotificationsProps, ToastNotificationsSkeleton, SnippetNotifications, SnippetNotificationsProps, SnippetNotificationsSkeleton, SearchAutocomplete, SearchAutocompleteProps, SearchDialog, SearchDialogProps, Widget, WidgetProps, SCFeedWidgetType, SCFeedObjectTemplateType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCMediaObjectType, SCMediaChunkType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, ChangeGroupCover, ChangeGroupCoverProps, ChangeGroupPicture, ChangeGroupPictureProps, GroupHeader, GroupHeaderProps, GroupHeaderSkeleton, GroupMembersButton, GroupMembersButtonProps, CreateGroupButton, CreateGroupButtonProps, EditGroupButton, EditGroupButtonProps, GroupInviteButton, GroupInviteButtonProps, GroupInfoWidget, GroupInfoWidgetProps, GroupInfoWidgetSkeleton, Group, GroupProps, GroupSkeleton, GroupSubscribeButton, GroupSubscribeButtonProps, GroupMembersWidget, GroupMembersWidgetProps, GroupMembersWidgetSkeleton, GroupRequestsWidget, GroupRequestsWidgetProps, GroupRequestsWidgetSkeleton, Groups, GroupsProps, GroupsSkeleton, GroupForm, GroupFormProps, GroupInvitedWidget, GroupInvitedWidgetProps, GroupInvitedWidgetSkeleton, UserSubscribedGroupsWidget, UserSubscribedGroupsWidgetProps, UserSubscribedGroupsWidgetSkeleton, DefaultDrawerContent, DefaultDrawerContentProps, DefaultHeaderContent, DefaultHeaderContentProps, CreateEventButton, CreateEventButtonProps, EventLocationWidget, EventLocationWidgetProps, EventLocationWidgetSkeleton, Event, EventProps, EventSkeleton, HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordTextField, PhoneTextField, MetadataField, MetadataFieldProps, 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, X_SHARE, LINKEDIN_SHARE, DEFAULT_PRELOAD_OFFSET_VIEWPORT, MIN_PRELOAD_OFFSET_VIEWPORT, MAX_PRELOAD_OFFSET_VIEWPORT, ConsentSolution, ConsentSolutionProps, ConsentSolutionSkeleton, ConsentSolutionButton, ConsentSolutionButtonProps, LEGAL_POLICIES, DEFAULT_FIELDS, DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, PollSuggestionWidgetProps, Incubator, IncubatorSubscribeButton, IncubatorSubscribeButtonProps, IncubatorProps, IncubatorListWidget, IncubatorListWidgetProps, IncubatorDetail, IncubatorDetailProps, IncubatorSuggestionWidget, IncubatorSuggestionWidgetProps, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterProps, FooterSkeleton, BaseItem, BaseItemProps, BaseDialog, BaseDialogProps, GroupSettingsIconButton, GroupSettingsIconButtonProps, LogoSelfCommunity };