@selfcommunity/react-ui 0.7.50-alpha.1 → 0.7.51-alpha.0

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 (36) hide show
  1. package/lib/cjs/assets/index.d.ts +2 -0
  2. package/lib/cjs/assets/index.js +7 -0
  3. package/lib/cjs/assets/logo.d.ts +2 -0
  4. package/lib/cjs/assets/logo.js +3 -0
  5. package/lib/cjs/components/Composer/Composer.js +9 -7
  6. package/lib/cjs/components/Feed/Feed.js +1 -1
  7. package/lib/cjs/components/PlatformWidget/PlatformWidget.d.ts +24 -2
  8. package/lib/cjs/components/PlatformWidget/PlatformWidget.js +247 -18
  9. package/lib/cjs/components/PlatformWidget/constants.d.ts +4 -0
  10. package/lib/cjs/components/PlatformWidget/constants.js +5 -1
  11. package/lib/cjs/index.d.ts +6 -2
  12. package/lib/cjs/index.js +6 -1
  13. package/lib/cjs/shared/BaseDialog/BaseDialog.js +3 -2
  14. package/lib/cjs/shared/EmojiPicker/EmojiPicker.js +4 -2
  15. package/lib/cjs/types/index.d.ts +2 -1
  16. package/lib/cjs/types/platformWidget.d.ts +15 -0
  17. package/lib/cjs/types/platformWidget.js +2 -0
  18. package/lib/esm/assets/index.d.ts +2 -0
  19. package/lib/esm/assets/index.js +3 -0
  20. package/lib/esm/assets/logo.d.ts +2 -0
  21. package/lib/esm/assets/logo.js +1 -0
  22. package/lib/esm/components/Composer/Composer.js +9 -7
  23. package/lib/esm/components/Feed/Feed.js +2 -2
  24. package/lib/esm/components/PlatformWidget/PlatformWidget.d.ts +24 -2
  25. package/lib/esm/components/PlatformWidget/PlatformWidget.js +251 -22
  26. package/lib/esm/components/PlatformWidget/constants.d.ts +4 -0
  27. package/lib/esm/components/PlatformWidget/constants.js +4 -0
  28. package/lib/esm/index.d.ts +6 -2
  29. package/lib/esm/index.js +7 -1
  30. package/lib/esm/shared/BaseDialog/BaseDialog.js +3 -2
  31. package/lib/esm/shared/EmojiPicker/EmojiPicker.js +4 -2
  32. package/lib/esm/types/index.d.ts +2 -1
  33. package/lib/esm/types/platformWidget.d.ts +15 -0
  34. package/lib/esm/types/platformWidget.js +1 -0
  35. package/lib/umd/react-ui.js +1 -1
  36. package/package.json +7 -7
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ import Logo from './logo';
2
+ export { Logo };
@@ -0,0 +1,3 @@
1
+ // images
2
+ import Logo from './logo';
3
+ export { Logo };
@@ -0,0 +1,2 @@
1
+ declare const _default: "data:image/png;base64,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";
2
+ export default _default;
@@ -0,0 +1 @@
1
+ export default 'data:image/png;base64,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';
@@ -11,7 +11,7 @@ import { COMPOSER_POLL_MIN_CHOICES, COMPOSER_TITLE_MAX_LENGTH, COMPOSER_TYPE_POL
11
11
  import { MEDIA_TYPE_SHARE } from '../../constants/Media';
12
12
  import LoadingButton from '@mui/lab/LoadingButton';
13
13
  import AudienceLayer from './Layer/AudienceLayer';
14
- import { iOS, random, stripHtml } from '@selfcommunity/utils';
14
+ import { iOS, isClientSideRendering, random, stripHtml } from '@selfcommunity/utils';
15
15
  import classNames from 'classnames';
16
16
  import ContentPoll from './Content/ContentPoll';
17
17
  import { useSnackbar } from 'notistack';
@@ -132,7 +132,7 @@ export default function Composer(inProps) {
132
132
  const { enqueueSnackbar } = useSnackbar();
133
133
  // HOOKS
134
134
  const theme = useTheme();
135
- const fullScreen = useMediaQuery(theme.breakpoints.down('md'), { noSsr: typeof window !== 'undefined' });
135
+ const fullScreen = useMediaQuery(theme.breakpoints.down('md'), { noSsr: isClientSideRendering() });
136
136
  // State variables
137
137
  const [isSubmitting, setIsSubmitting] = useState(false);
138
138
  const [layer, setLayer] = useState();
@@ -475,13 +475,15 @@ export default function Composer(inProps) {
475
475
  });
476
476
  }
477
477
  else {
478
+ console.log('qui');
478
479
  onClose && onClose(event);
479
- setLayer(null);
480
+ console.log('qui2');
481
+ /*setLayer(null);
480
482
  feedType && feedType === SCFeedTypologyType.CATEGORY
481
- ? dispatch({ type: 'resetCategoryFeed' })
482
- : feedType === SCFeedTypologyType.GROUP
483
- ? dispatch({ type: 'resetGroupFeed' })
484
- : dispatch({ type: 'reset' });
483
+ ? dispatch({type: 'resetCategoryFeed'})
484
+ : feedType === SCFeedTypologyType.GROUP
485
+ ? dispatch({type: 'resetGroupFeed'})
486
+ : dispatch({type: 'reset'}); */
485
487
  }
486
488
  }, [onClose, canSubmit, handleRemoveLayer]);
487
489
  const handleClosePrompt = useCallback((event) => {
@@ -7,7 +7,7 @@ import { FormattedMessage } from 'react-intl';
7
7
  import { GenericSkeleton } from '../Skeleton';
8
8
  import CustomAdv from '../CustomAdv';
9
9
  import { SCCustomAdvPosition } from '@selfcommunity/types';
10
- import { CacheStrategies, getQueryStringParameter, updateQueryStringParameter } from '@selfcommunity/utils';
10
+ import { CacheStrategies, getQueryStringParameter, isClientSideRendering, updateQueryStringParameter } from '@selfcommunity/utils';
11
11
  import classNames from 'classnames';
12
12
  import PubSub from 'pubsub-js';
13
13
  import { useThemeProps } from '@mui/system';
@@ -101,7 +101,7 @@ const Feed = (inProps, ref) => {
101
101
  }, [scPreferences.preferences]);
102
102
  // RENDER
103
103
  const theme = useTheme();
104
- const oneColLayout = useMediaQuery(theme.breakpoints.down('md'), { noSsr: typeof window !== 'undefined' });
104
+ const oneColLayout = useMediaQuery(theme.breakpoints.down('md'), { noSsr: isClientSideRendering() });
105
105
  const advEnabled = useMemo(() => preferences &&
106
106
  preferences[SCPreferences.ADVERTISING_CUSTOM_ADV_ENABLED] &&
107
107
  ((preferences[SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED] && scUserContext.user === null) ||
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { PlatformWidgetActionType } from '../../types/platformWidget';
2
3
  import { VirtualScrollerItemProps } from '../../types/virtualScroller';
3
4
  export interface PlatformWidgetProps extends VirtualScrollerItemProps {
4
5
  /**
@@ -19,11 +20,18 @@ export interface PlatformWidgetProps extends VirtualScrollerItemProps {
19
20
  /**
20
21
  * Actions to be inserted before
21
22
  */
22
- startActions?: React.ReactNode | null;
23
+ startActions?: PlatformWidgetActionType[];
23
24
  /**
24
25
  * Actions to be inserted after
25
26
  */
26
- endActions?: React.ReactNode | null;
27
+ endActions?: PlatformWidgetActionType[];
28
+ /**
29
+ * Hide actions
30
+ */
31
+ hideHubAction?: boolean;
32
+ hideConsoleAction?: boolean;
33
+ hideModerationAction?: boolean;
34
+ hideContactUsAction?: boolean;
27
35
  /**
28
36
  * Other props
29
37
  */
@@ -53,6 +61,20 @@ export interface PlatformWidgetProps extends VirtualScrollerItemProps {
53
61
  |---|---|---|
54
62
  |root|.SCPlatformWidget-root|Styles applied to the root element.|
55
63
  |title|.SCPlatformWidget-title|Styles applied to the title element.|
64
+ |actions|.SCPlatformWidget-actions|Styles applied to the actions container.|
65
+ |action|.SCPlatformWidget-action|Styles applied to the single action element.|
66
+ |actionHighlighted|.SCPlatformWidget-action-highlighted|Styles applied to the action highlighted.|
67
+ |tutorial|.SCPlatformWidget-tutorial|Styles applied to the tutorial element.|
68
+ |tutorialContent|.SCPlatformWidget-tutorial-content|Styles applied to the content of the tutorial element.|
69
+ |tutorialTitle|.SCPlatformWidget-tutorial-title|Styles applied to the title element of the tutorial.|
70
+ |tutorialTitleClose|.SCPlatformWidget-tutorial-title-close|Styles applied to the close button of the title in the tutorial.|
71
+ |tutorialDesc|.SCPlatformWidget-tutorial-desc|Styles applied to the tutorial description element.|
72
+ |tutorialOpen|.SCPlatformWidget-tutorial-open|Styles applied to the tutorial element when is active.|
73
+ |divider|.SCPlatformWidget-divider|Styles applied to the divider element in the tutorial container.|
74
+ |tutorialControls|.SCPlatformWidget-tutorial-controls|Styles applied to the tutorial bottom controls.|
75
+ |btnStep|.SCPlatformWidget-btn-step|Styles applied to the button next/previous/skip/close of the tutorial controls.|
76
+ |btnPreviousStep|.SCPlatformWidget-btn-previous-step|Styles applied to the button previous element of the tutorial controls.|
77
+ |btnNextStep|.SCPlatformWidget-btn-next-step|Styles applied to the button next element of the tutorial controls.|
56
78
 
57
79
  *
58
80
  * @param inProps
@@ -1,24 +1,125 @@
1
1
  import { __rest } from "tslib";
2
- import React, { useContext, useMemo } from 'react';
2
+ import React, { useCallback, useContext, useMemo, useState } from 'react';
3
3
  import { styled } from '@mui/material/styles';
4
- import { Button, Grid, Typography } from '@mui/material';
4
+ import { Backdrop, Box, Button, Collapse, Divider, Grid, Icon, IconButton, Stack, Tooltip, Typography } from '@mui/material';
5
5
  import { http, Endpoints } from '@selfcommunity/api-services';
6
- import { SCUserContext, UserUtils, useSCLocale } from '@selfcommunity/react-core';
7
- import Icon from '@mui/material/Icon';
6
+ import { Link, SCUserContext, UserUtils, useSCContext } from '@selfcommunity/react-core';
8
7
  import { FormattedMessage } from 'react-intl';
9
8
  import classNames from 'classnames';
10
9
  import Widget from '../Widget';
11
10
  import { useThemeProps } from '@mui/system';
12
11
  import HiddenPlaceholder from '../../shared/HiddenPlaceholder';
13
- import { PREFIX } from './constants';
12
+ import { CONTACT_PROD, CONTACT_STAGE, HUB_PROD, HUB_STAGE, PREFIX } from './constants';
13
+ import { Logo as LogoPlaceholder } from '../../assets';
14
+ import Grow from '@mui/material/Grow';
14
15
  const classes = {
15
16
  root: `${PREFIX}-root`,
16
- title: `${PREFIX}-title`
17
+ title: `${PREFIX}-title`,
18
+ content: `${PREFIX}-content`,
19
+ actions: `${PREFIX}-actions`,
20
+ action: `${PREFIX}-action`,
21
+ actionHighlighted: `${PREFIX}-action-highlighted`,
22
+ tutorial: `${PREFIX}-tutorial`,
23
+ tutorialContent: `${PREFIX}-tutorial-content`,
24
+ tutorialTitle: `${PREFIX}-tutorial-title`,
25
+ tutorialTitleClose: `${PREFIX}-tutorial-title-close`,
26
+ tutorialDesc: `${PREFIX}-tutorial-desc`,
27
+ tutorialOpen: `${PREFIX}-tutorial-open`,
28
+ divider: `${PREFIX}-divider`,
29
+ tutorialControls: `${PREFIX}-tutorial-controls`,
30
+ btnStep: `${PREFIX}-btn-step`,
31
+ btnPreviousStep: `${PREFIX}-btn-previous-step`,
32
+ btnNextStep: `${PREFIX}-btn-next-step`
17
33
  };
18
34
  const Root = styled(Widget, {
19
35
  name: PREFIX,
20
36
  slot: 'Root'
21
- })(() => ({}));
37
+ })(({ theme }) => ({
38
+ padding: '0px !important',
39
+ [`&.${classes.tutorialOpen}`]: {
40
+ position: 'relative',
41
+ zIndex: theme.zIndex.drawer + 2,
42
+ [`& .${classes.tutorial}`]: {
43
+ padding: 0
44
+ }
45
+ },
46
+ [`& .${classes.title}`]: {
47
+ display: 'flex',
48
+ justifyContent: 'center',
49
+ marginBottom: theme.spacing(1)
50
+ },
51
+ [`& .${classes.content}`]: {
52
+ padding: `${theme.spacing(2)} 0 0 0`,
53
+ backgroundColor: '#EFEFEF'
54
+ },
55
+ [`& .${classes.actions}`]: {
56
+ display: 'flex',
57
+ paddingBottom: 0,
58
+ boxShadow: 'inset -1px -3px 7px -4px #CECECE',
59
+ '-webkit-overflow-scrolling': 'touch',
60
+ overflowX: 'auto',
61
+ overflowY: 'hidden',
62
+ scrollbarWidth: 'none' /* Firefox */,
63
+ '-ms-overflow-style': 'none' /* IE and Edge */,
64
+ '&::-webkit-scrollbar': {
65
+ display: 'none'
66
+ }
67
+ },
68
+ [`& .${classes.action}`]: {
69
+ padding: `0px 2px ${theme.spacing(2)} 2px`,
70
+ display: 'flex',
71
+ flexGrow: 1,
72
+ justifyContent: 'center'
73
+ },
74
+ [`& .${classes.tutorialContent}`]: {
75
+ width: '100%'
76
+ },
77
+ [`& .${classes.divider}`]: {
78
+ paddingTop: theme.spacing()
79
+ },
80
+ [`& .${classes.tutorialTitle}`]: {
81
+ position: 'relative',
82
+ fontWeight: 700,
83
+ fontSize: 15,
84
+ padding: `${theme.spacing(3)} ${theme.spacing()} ${theme.spacing()} ${theme.spacing(3)}`
85
+ },
86
+ [`& .${classes.tutorialTitleClose}`]: {
87
+ position: 'absolute',
88
+ top: theme.spacing(3),
89
+ right: theme.spacing(3)
90
+ },
91
+ [`& .${classes.tutorialDesc}`]: {
92
+ fontSize: 14,
93
+ fontWeight: 200,
94
+ color: theme.palette.grey[700],
95
+ padding: `0px ${theme.spacing(3)} ${theme.spacing()} ${theme.spacing(3)}`
96
+ },
97
+ [`& .${classes.tutorialControls}`]: {
98
+ padding: theme.spacing(2)
99
+ },
100
+ [`& .${classes.actionHighlighted}`]: {
101
+ position: 'relative',
102
+ '&:before': {
103
+ content: '""',
104
+ display: 'block',
105
+ position: 'absolute',
106
+ bottom: -11,
107
+ width: 10,
108
+ height: 10,
109
+ transform: 'translateY(-50%) rotate(45deg)',
110
+ boxShadow: '0px -20px 20px 0px #CECECE',
111
+ zIndex: 0,
112
+ backgroundColor: theme.palette.common.white
113
+ },
114
+ '& .MuiButton-root': {
115
+ backgroundColor: theme.palette.primary.main,
116
+ color: theme.palette.common.white
117
+ }
118
+ },
119
+ [`& .${classes.btnStep}`]: {
120
+ borderRadius: 3
121
+ }
122
+ }));
22
123
  /**
23
124
  * > API documentation for the Community-JS PlatformWidget component. Learn about the available props and the CSS API.
24
125
  *
@@ -43,6 +144,20 @@ const Root = styled(Widget, {
43
144
  |---|---|---|
44
145
  |root|.SCPlatformWidget-root|Styles applied to the root element.|
45
146
  |title|.SCPlatformWidget-title|Styles applied to the title element.|
147
+ |actions|.SCPlatformWidget-actions|Styles applied to the actions container.|
148
+ |action|.SCPlatformWidget-action|Styles applied to the single action element.|
149
+ |actionHighlighted|.SCPlatformWidget-action-highlighted|Styles applied to the action highlighted.|
150
+ |tutorial|.SCPlatformWidget-tutorial|Styles applied to the tutorial element.|
151
+ |tutorialContent|.SCPlatformWidget-tutorial-content|Styles applied to the content of the tutorial element.|
152
+ |tutorialTitle|.SCPlatformWidget-tutorial-title|Styles applied to the title element of the tutorial.|
153
+ |tutorialTitleClose|.SCPlatformWidget-tutorial-title-close|Styles applied to the close button of the title in the tutorial.|
154
+ |tutorialDesc|.SCPlatformWidget-tutorial-desc|Styles applied to the tutorial description element.|
155
+ |tutorialOpen|.SCPlatformWidget-tutorial-open|Styles applied to the tutorial element when is active.|
156
+ |divider|.SCPlatformWidget-divider|Styles applied to the divider element in the tutorial container.|
157
+ |tutorialControls|.SCPlatformWidget-tutorial-controls|Styles applied to the tutorial bottom controls.|
158
+ |btnStep|.SCPlatformWidget-btn-step|Styles applied to the button next/previous/skip/close of the tutorial controls.|
159
+ |btnPreviousStep|.SCPlatformWidget-btn-previous-step|Styles applied to the button previous element of the tutorial controls.|
160
+ |btnNextStep|.SCPlatformWidget-btn-next-step|Styles applied to the button next element of the tutorial controls.|
46
161
 
47
162
  *
48
163
  * @param inProps
@@ -54,14 +169,102 @@ export default function PlatformWidget(inProps) {
54
169
  props: inProps,
55
170
  name: PREFIX
56
171
  });
57
- const { autoHide, className, title = null, startActions = null, endActions = null, onHeightChange, onStateChange } = props, rest = __rest(props, ["autoHide", "className", "title", "startActions", "endActions", "onHeightChange", "onStateChange"]);
172
+ const { autoHide, className, title = null, startActions = [], endActions = [], hideConsoleAction = false, hideModerationAction = false, hideHubAction = false, hideContactUsAction = false, onHeightChange } = props, rest = __rest(props, ["autoHide", "className", "title", "startActions", "endActions", "hideConsoleAction", "hideModerationAction", "hideHubAction", "hideContactUsAction", "onHeightChange"]);
58
173
  // CONTEXT
174
+ const scContext = useSCContext();
59
175
  const scUserContext = useContext(SCUserContext);
60
- const scLocaleContext = useSCLocale();
176
+ // STATE
177
+ const [tutorialIndex, setTutorialIndex] = useState(0);
178
+ const [isTutorialOpen, setIsTutorialOpen] = useState(false);
61
179
  // CONST
62
- const language = scLocaleContext.locale;
63
180
  const isAdmin = useMemo(() => UserUtils.isAdmin(scUserContext.user), [scUserContext.user]);
181
+ const isEditor = useMemo(() => UserUtils.isEditor(scUserContext.user), [scUserContext.user]);
64
182
  const isModerator = useMemo(() => UserUtils.isModerator(scUserContext.user), [scUserContext.user]);
183
+ const isStage = scContext.settings.portal.includes('stage');
184
+ const actions = [
185
+ ...startActions,
186
+ ...((isAdmin || isEditor) && !hideConsoleAction
187
+ ? [
188
+ {
189
+ render: (React.createElement(Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('') },
190
+ React.createElement(FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" }))),
191
+ title: React.createElement(FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" }),
192
+ content: React.createElement(FormattedMessage, { id: "ui.platformWidget.adm.desc", defaultMessage: "ui.platformWidget.adm.desc" })
193
+ }
194
+ ]
195
+ : []),
196
+ ...((isAdmin || isModerator) && !hideModerationAction
197
+ ? [
198
+ {
199
+ render: (React.createElement(Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('/moderation/flags/') },
200
+ React.createElement(FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" }))),
201
+ title: React.createElement(FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" }),
202
+ content: React.createElement(FormattedMessage, { id: "ui.platformWidget.mod.desc", defaultMessage: "ui.platformWidget.mod.desc" })
203
+ }
204
+ ]
205
+ : []),
206
+ ...(isAdmin && !hideHubAction
207
+ ? [
208
+ {
209
+ render: (React.createElement(Button, { variant: "outlined", size: "small", component: Link, to: isStage ? HUB_STAGE : HUB_PROD, target: "_blank" },
210
+ React.createElement(FormattedMessage, { id: "ui.platformWidget.hub", defaultMessage: "ui.platformWidget.hub" }))),
211
+ title: React.createElement(FormattedMessage, { id: "ui.platformWidget.hub", defaultMessage: "ui.platformWidget.hub" }),
212
+ content: React.createElement(FormattedMessage, { id: "ui.platformWidget.hub.desc", defaultMessage: "ui.platformWidget.hub.desc" })
213
+ }
214
+ ]
215
+ : []),
216
+ ...(!hideContactUsAction
217
+ ? [
218
+ {
219
+ render: (React.createElement(Button, { variant: "outlined", size: "small", component: Link, to: isStage ? CONTACT_STAGE : CONTACT_PROD, target: "_blank" },
220
+ React.createElement(FormattedMessage, { id: "ui.platformWidget.contactUs", defaultMessage: "ui.platformWidget.contactUs" }))),
221
+ title: React.createElement(FormattedMessage, { id: "ui.platformWidget.contactUs", defaultMessage: "ui.platformWidget.contactUs" }),
222
+ content: React.createElement(FormattedMessage, { id: "ui.platformWidget.contactUs.desc", defaultMessage: "ui.platformWidget.contactUs.desc" })
223
+ }
224
+ ]
225
+ : []),
226
+ ...endActions
227
+ ];
228
+ /**
229
+ * Handle open tutorial
230
+ */
231
+ const handleOpenTutorial = useCallback(() => {
232
+ setTutorialIndex(0);
233
+ setIsTutorialOpen(true);
234
+ onHeightChange && onHeightChange();
235
+ }, [setTutorialIndex, setIsTutorialOpen, onHeightChange]);
236
+ /**
237
+ * Handle close tutorial
238
+ */
239
+ const handleCloseTutorial = useCallback(() => {
240
+ setIsTutorialOpen(false);
241
+ setTutorialIndex(0);
242
+ onHeightChange && onHeightChange();
243
+ }, [setIsTutorialOpen, setTutorialIndex, onHeightChange]);
244
+ /**
245
+ * Handle next step tutorial
246
+ */
247
+ const handlePrevious = useCallback(() => {
248
+ if (tutorialIndex > 0) {
249
+ setTutorialIndex((prev) => prev - 1);
250
+ }
251
+ else {
252
+ handleCloseTutorial();
253
+ }
254
+ onHeightChange && onHeightChange();
255
+ }, [tutorialIndex, setTutorialIndex, handleCloseTutorial, onHeightChange]);
256
+ /**
257
+ * Handle next step tutorial
258
+ */
259
+ const handleNext = useCallback(() => {
260
+ if (tutorialIndex < actions.length - 1) {
261
+ setTutorialIndex((prev) => prev + 1);
262
+ }
263
+ else {
264
+ handleCloseTutorial();
265
+ }
266
+ onHeightChange && onHeightChange();
267
+ }, [actions, tutorialIndex, setTutorialIndex, handleCloseTutorial, onHeightChange]);
65
268
  /**
66
269
  * Fetches platform url
67
270
  */
@@ -82,25 +285,51 @@ export default function PlatformWidget(inProps) {
82
285
  console.log(error);
83
286
  });
84
287
  }
288
+ /**
289
+ * Render tutorial
290
+ */
291
+ const tutorial = (React.createElement(Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center", className: classes.tutorial },
292
+ !isTutorialOpen && (React.createElement(Grid, { item: true, xs: "auto", alignItems: "center", justifyContent: "center" },
293
+ React.createElement(IconButton, { size: "medium", onClick: handleOpenTutorial },
294
+ React.createElement(Icon, null, "info")))),
295
+ React.createElement(Collapse, { in: isTutorialOpen, className: classes.tutorialContent }, isTutorialOpen && (React.createElement(Grid, { item: true, xs: "auto" },
296
+ React.createElement(Typography, { variant: 'body2', className: classes.tutorialTitle, component: 'div' },
297
+ React.createElement(Grow, { in: true, timeout: 1000 },
298
+ React.createElement("span", null, actions[tutorialIndex].title)),
299
+ React.createElement(IconButton, { size: 'small', className: classes.tutorialTitleClose, onClick: handleCloseTutorial },
300
+ React.createElement(Icon, null, "close"))),
301
+ React.createElement(Grow, { in: true, timeout: 1200 },
302
+ React.createElement(Typography, { variant: 'body2', className: classes.tutorialDesc }, actions[tutorialIndex].content)),
303
+ React.createElement(Divider, { className: classes.divider }),
304
+ React.createElement(Stack, { direction: "row", justifyContent: "space-between", alignItems: "center", spacing: 2, className: classes.tutorialControls },
305
+ React.createElement(Button, { variant: "text", size: "small", onClick: handlePrevious, className: classNames(classes.btnStep, classes.btnPreviousStep) }, tutorialIndex === 0 ? (React.createElement(FormattedMessage, { id: "ui.platformWidget.tutorial.skip", defaultMessage: "ui.platformWidget.tutorial.skip" })) : (React.createElement(FormattedMessage, { id: "ui.platformWidget.tutorial.previous", defaultMessage: "ui.platformWidget.tutorial.previous" }))),
306
+ React.createElement(Typography, { component: 'div' },
307
+ tutorialIndex + 1,
308
+ "/",
309
+ actions.length),
310
+ React.createElement(Button, { variant: "contained", size: "small", color: "primary", onClick: handleNext, className: classNames(classes.btnStep, classes.btnNextStep) }, tutorialIndex === actions.length - 1 ? (React.createElement(FormattedMessage, { id: "ui.platformWidget.tutorial.close", defaultMessage: "ui.platformWidget.tutorial.close" })) : (React.createElement(FormattedMessage, { id: "ui.platformWidget.tutorial.next", defaultMessage: "ui.platformWidget.tutorial.next" })))))))));
85
311
  /**
86
312
  * Renders platform card
87
313
  */
88
- const c = (React.createElement(Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center" },
89
- React.createElement(Grid, { item: true, xs: 12 }, title ? (title) : (React.createElement(Typography, { className: classes.title, component: "h3", align: "center" },
90
- React.createElement(FormattedMessage, { id: "ui.platformWidget.title", defaultMessage: "ui.platformWidget.title" }),
91
- React.createElement(Icon, { fontSize: "small" }, "lock")))),
92
- startActions,
93
- isAdmin && (React.createElement(Grid, { item: true, xs: "auto" },
94
- React.createElement(Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('') },
95
- React.createElement(FormattedMessage, { id: "ui.platformWidget.adm", defaultMessage: "ui.platformWidget.adm" })))),
96
- React.createElement(Grid, { item: true, xs: "auto" },
97
- React.createElement(Button, { variant: "outlined", size: "small", onClick: () => fetchPlatform('/moderation/flags/') }, isAdmin || isModerator ? (React.createElement(FormattedMessage, { id: "ui.platformWidget.mod", defaultMessage: "ui.platformWidget.mod" })) : (React.createElement(FormattedMessage, { id: "ui.platformWidget.edt", defaultMessage: "ui.platformWidget.edt" })))),
98
- endActions));
314
+ const content = (React.createElement(Grid, { container: true, spacing: isAdmin ? 1 : 3, justifyContent: "center", className: classes.content },
315
+ React.createElement(Grid, { item: true, xs: 12 }, title ? (title) : (React.createElement(Box, { className: classes.title },
316
+ React.createElement(Tooltip, { title: React.createElement(FormattedMessage, { id: "ui.platformWidget.title.tooltip", defaultMessage: "ui.platformWidget.title.tooltip" }) },
317
+ React.createElement("img", { src: LogoPlaceholder, alt: "logo" }))))),
318
+ React.createElement(Grid, { item: true, xs: 12, className: classes.actions },
319
+ React.createElement(Grid, { item: true, xs: 1, className: classes.action }),
320
+ actions.map((a, i) => {
321
+ return (React.createElement(Grid, { item: true, xs: "auto", className: classNames(classes.action, { [classes.actionHighlighted]: tutorialIndex === i && isTutorialOpen }) }, a.render));
322
+ }),
323
+ React.createElement(Grid, { item: true, xs: 1, className: classes.action }))));
99
324
  /**
100
325
  * Renders root object (if not hidden by autoHide prop)
101
326
  */
102
327
  if (!autoHide && ((_a = scUserContext === null || scUserContext === void 0 ? void 0 : scUserContext.user) === null || _a === void 0 ? void 0 : _a.role)) {
103
- return (React.createElement(Root, Object.assign({ className: classNames(classes.root, className) }, rest), c));
328
+ return (React.createElement(React.Fragment, null,
329
+ React.createElement(Root, Object.assign({ className: classNames(classes.root, className, { [classes.tutorialOpen]: isTutorialOpen }) }, rest),
330
+ content,
331
+ tutorial),
332
+ React.createElement(Backdrop, { sx: { color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }, open: isTutorialOpen, onClick: handleCloseTutorial })));
104
333
  }
105
334
  return React.createElement(HiddenPlaceholder, null);
106
335
  }
@@ -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 +1,5 @@
1
1
  export const PREFIX = 'SCPlatformWidget';
2
+ export const HUB_STAGE = 'https://hub.stage.quentrix.com/';
3
+ export const HUB_PROD = 'https://hub.selfcommunity.com/';
4
+ export const CONTACT_STAGE = 'https://hub.stage.quentrix.com/dashboard/account/contact-us';
5
+ export const CONTACT_PROD = 'https://hub.selfcommunity.com/dashboard/account/contact-us';
@@ -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';
@@ -144,7 +144,11 @@ import { getUnseenNotification, getUnseenNotificationCounter } from './utils/fee
144
144
  import * as MessageUploaderUtils from './utils/thumbnailCoverter';
145
145
  import { getRelativeTime } from './utils/formatRelativeTime';
146
146
  import FeedObjectMediaPreview, { FeedObjectMediaPreviewProps } from './components/FeedObjectMediaPreview';
147
+ /**
148
+ * Import Assets
149
+ */
150
+ import { Logo } from './assets';
147
151
  /**
148
152
  * List all exports
149
153
  */
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 };
154
+ 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, 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, 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, Logo };
package/lib/esm/index.js CHANGED
@@ -144,6 +144,10 @@ import { getUnseenNotification, getUnseenNotificationCounter } from './utils/fee
144
144
  import * as MessageUploaderUtils from './utils/thumbnailCoverter';
145
145
  import { getRelativeTime } from './utils/formatRelativeTime';
146
146
  import FeedObjectMediaPreview from './components/FeedObjectMediaPreview';
147
+ /**
148
+ * Import Assets
149
+ */
150
+ import { Logo } from './assets';
147
151
  /**
148
152
  * List all exports
149
153
  */
@@ -153,4 +157,6 @@ HiddenPlaceholder, UrlTextField, UsernameTextField, EmailTextField, PasswordText
153
157
  /* SC CONSENT SOLUTION */
154
158
  ConsentSolution, ConsentSolutionSkeleton, ConsentSolutionButton, LEGAL_POLICIES, DEFAULT_FIELDS,
155
159
  /* SC UI PAGINATION */
156
- DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, Incubator, IncubatorSubscribeButton, IncubatorListWidget, IncubatorDetail, IncubatorSuggestionWidget, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterSkeleton, BaseItem, BaseDialog, GroupSettingsIconButton };
160
+ DEFAULT_PAGINATION_QUERY_PARAM_NAME, DEFAULT_PAGINATION_OFFSET, DEFAULT_PAGINATION_LIMIT, DEFAULT_WIDGETS_NUMBER, PollSuggestionWidget, Incubator, IncubatorSubscribeButton, IncubatorListWidget, IncubatorDetail, IncubatorSuggestionWidget, ContributionUtils, bytesToSize, getUnseenNotification, getUnseenNotificationCounter, MessageUploaderUtils, getRelativeTime, Footer, FooterSkeleton, BaseItem, BaseDialog, GroupSettingsIconButton,
161
+ /* Assets */
162
+ Logo };
@@ -10,6 +10,7 @@ import { useTheme } from '@mui/material';
10
10
  import MuiDialogTitle from '@mui/material/DialogTitle';
11
11
  import IconButton from '@mui/material/IconButton';
12
12
  import Icon from '@mui/material/Icon';
13
+ import { isClientSideRendering } from '@selfcommunity/utils';
13
14
  const PREFIX = 'SCBaseDialog';
14
15
  const classes = {
15
16
  root: `${PREFIX}-root`,
@@ -22,7 +23,7 @@ const DialogTitleRoot = styled(MuiDialogTitle, {
22
23
  })(({ theme }) => ({}));
23
24
  const DialogTitle = ({ children = null, onClose = null }) => {
24
25
  const theme = useTheme();
25
- const isMobile = useMediaQuery(theme.breakpoints.down('md'), { noSsr: typeof window !== 'undefined' });
26
+ const isMobile = useMediaQuery(theme.breakpoints.down('md'), { noSsr: isClientSideRendering() });
26
27
  return (React.createElement(DialogTitleRoot, { className: classes.titleRoot },
27
28
  React.createElement("span", null, children),
28
29
  onClose ? (React.createElement(IconButton, { "aria-label": "close", onClick: onClose },
@@ -36,7 +37,7 @@ const Root = styled(Dialog, {
36
37
  export default function BaseDialog(props) {
37
38
  // OPTIONS
38
39
  const theme = useTheme();
39
- const isMobile = useMediaQuery(theme.breakpoints.down('md'), { noSsr: typeof window !== 'undefined' });
40
+ const isMobile = useMediaQuery(theme.breakpoints.down('md'), { noSsr: isClientSideRendering() });
40
41
  const fullScreen = isMobile;
41
42
  // PROPS
42
43
  const { className = '', title = '', subtitle = null, DialogContentProps = { dividers: !isMobile }, open = false, onClose = null, actions = null, children, maxWidth = 'sm', scroll = 'body' } = props, rest = __rest(props, ["className", "title", "subtitle", "DialogContentProps", "open", "onClose", "actions", "children", "maxWidth", "scroll"]);
@@ -2,10 +2,12 @@ import { __rest } from "tslib";
2
2
  import React from 'react';
3
3
  import { styled } from '@mui/material/styles';
4
4
  import { Box } from '@mui/material';
5
+ import { EmojiStyle } from 'emoji-picker-react';
5
6
  import { useThemeProps } from '@mui/system';
6
7
  import classNames from 'classnames';
8
+ import { isClientSideRendering } from '@selfcommunity/utils';
7
9
  let Picker;
8
- typeof window !== 'undefined' &&
10
+ isClientSideRendering() &&
9
11
  import('emoji-picker-react').then((_module) => {
10
12
  Picker = _module.default;
11
13
  });
@@ -24,6 +26,6 @@ export default function EmojiPicker(inProps) {
24
26
  props: inProps,
25
27
  name: PREFIX
26
28
  });
27
- const { className = '', emojiStyle = 'native' } = props, rest = __rest(props, ["className", "emojiStyle"]);
29
+ const { className = '', emojiStyle = EmojiStyle.NATIVE } = props, rest = __rest(props, ["className", "emojiStyle"]);
28
30
  return React.createElement(Root, { className: classNames(classes.root, className) }, Picker && React.createElement(Picker, Object.assign({ emojiStyle: emojiStyle }, rest)));
29
31
  }
@@ -6,4 +6,5 @@ import { SCNotificationObjectTemplateType } from './notification';
6
6
  import { SCBroadcastMessageTemplateType } from './broadcastMessage';
7
7
  import { VirtualScrollerItemProps } from './virtualScroller';
8
8
  import { SCUserProfileFields, SCUserProfileSettings, SCUserSocialAssociations } from './user';
9
- export { SCFeedWidgetType, SCMediaObjectType, SCMediaChunkType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCFeedObjectTemplateType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, SCUserProfileFields, SCUserProfileSettings, SCUserSocialAssociations, VirtualScrollerItemProps };
9
+ import { PlatformWidgetActionType } from './platformWidget';
10
+ export { SCFeedWidgetType, SCMediaObjectType, SCMediaChunkType, SCCommentsOrderBy, SCFeedObjectActivitiesType, SCFeedObjectTemplateType, SCNotificationObjectTemplateType, SCBroadcastMessageTemplateType, SCUserProfileFields, SCUserProfileSettings, SCUserSocialAssociations, VirtualScrollerItemProps, PlatformWidgetActionType };
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export interface PlatformWidgetActionType {
3
+ /**
4
+ * Render action to be inserted
5
+ */
6
+ render: React.ReactNode;
7
+ /**
8
+ * Title for tutorial
9
+ */
10
+ title: React.ReactNode | string;
11
+ /**
12
+ * Content for tutorial
13
+ */
14
+ content: React.ReactNode | string;
15
+ }