@selfcommunity/react-ui 0.8.0-alpha.24 → 0.8.0-alpha.26

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.
@@ -30,6 +30,6 @@ function NavigationMenuDrawer(inProps) {
30
30
  name: PREFIX
31
31
  });
32
32
  const { className = null, drawerHeaderContent = (0, jsx_runtime_1.jsx)(DefaultHeaderContent_1.default, {}), drawerContent = (0, jsx_runtime_1.jsx)(DefaultDrawerContent_1.default, {}), ScrollContainerProps = {}, open, onClose } = props, rest = tslib_1.__rest(props, ["className", "drawerHeaderContent", "drawerContent", "ScrollContainerProps", "open", "onClose"]);
33
- return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className), open: open, onClose: onClose }, rest, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.drawerHeader }, { children: [drawerHeaderContent, (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ className: classes.drawerHeaderAction, onClick: onClose }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, { children: "close" }) }))] })), (0, jsx_runtime_1.jsx)(material_1.Divider, {}), (0, jsx_runtime_1.jsx)(ScrollContainer_1.default, Object.assign({}, ScrollContainerProps, { children: (0, jsx_runtime_1.jsx)(material_1.List, Object.assign({ className: classes.drawerContent, onClick: onClose }, { children: drawerContent })) }))] })));
33
+ return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ anchor: "left", className: (0, classnames_1.default)(classes.root, className), open: open, onClose: onClose }, rest, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.drawerHeader }, { children: [drawerHeaderContent, (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ className: classes.drawerHeaderAction, onClick: onClose }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, { children: "close" }) }))] })), (0, jsx_runtime_1.jsx)(material_1.Divider, {}), (0, jsx_runtime_1.jsx)(ScrollContainer_1.default, Object.assign({}, ScrollContainerProps, { children: (0, jsx_runtime_1.jsx)(material_1.List, Object.assign({ className: classes.drawerContent, onClick: onClose }, { children: drawerContent })) }))] })));
34
34
  }
35
35
  exports.default = NavigationMenuDrawer;
@@ -1,9 +1,19 @@
1
1
  import { IconButtonProps } from '@mui/material';
2
2
  import { NavigationMenuDrawerProps } from './NavigationMenuDrawer';
3
3
  export interface NavigationMenuIconButtonProps extends IconButtonProps {
4
+ /**
5
+ * Prop to show/hide the default drawer component
6
+ * @default true
7
+ */
8
+ showDrawer?: boolean;
9
+ /**
10
+ * Callback triggered on menu click
11
+ * @default null
12
+ */
13
+ onMenuIconClick?: () => void;
4
14
  /**
5
15
  * Props to spread to default drawer root
6
- * @default {anchor: 'left'}
16
+ * @default {}
7
17
  */
8
18
  DrawerProps?: NavigationMenuDrawerProps;
9
19
  }
@@ -47,7 +47,7 @@ function NavigationMenuIconButton(inProps) {
47
47
  props: inProps,
48
48
  name: PREFIX
49
49
  });
50
- const { className = null, DrawerProps = { anchor: 'left' } } = props, rest = tslib_1.__rest(props, ["className", "DrawerProps"]);
50
+ const { className = null, DrawerProps = {}, onMenuIconClick = null, showDrawer = true } = props, rest = tslib_1.__rest(props, ["className", "DrawerProps", "onMenuIconClick", "showDrawer"]);
51
51
  // STATE
52
52
  const [anchorEl, setAnchorEl] = (0, react_1.useState)(null);
53
53
  // CONTEXT
@@ -63,6 +63,6 @@ function NavigationMenuIconButton(inProps) {
63
63
  if (!preferences[react_core_1.SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY].value && !((_a = scUserContext.user) === null || _a === void 0 ? void 0 : _a.id)) {
64
64
  return null;
65
65
  }
66
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest, { onClick: handleOpen }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, { children: "menu" }) })), (0, jsx_runtime_1.jsx)(NavigationMenuDrawer_1.default, Object.assign({ open: Boolean(anchorEl), onClose: handleClose }, DrawerProps))] }));
66
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest, { onClick: onMenuIconClick !== null && onMenuIconClick !== void 0 ? onMenuIconClick : handleOpen }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, { children: "menu" }) })), showDrawer && (0, jsx_runtime_1.jsx)(NavigationMenuDrawer_1.default, Object.assign({ open: Boolean(anchorEl), onClose: handleClose }, DrawerProps))] }));
67
67
  }
68
68
  exports.default = NavigationMenuIconButton;
@@ -13,6 +13,9 @@ const react_intl_1 = require("react-intl");
13
13
  const react_core_1 = require("@selfcommunity/react-core");
14
14
  const SocialShare_1 = require("../../../../constants/SocialShare");
15
15
  const api_services_1 = require("@selfcommunity/api-services");
16
+ const utils_1 = require("@selfcommunity/utils");
17
+ const Errors_1 = require("../../../../constants/Errors");
18
+ const types_1 = require("@selfcommunity/types");
16
19
  const classes = {
17
20
  root: `${constants_1.PREFIX}-invite-root`,
18
21
  title: `${constants_1.PREFIX}-invite-title`,
@@ -26,6 +29,7 @@ const Root = (0, styles_1.styled)(Box_1.default, {
26
29
  name: constants_1.PREFIX,
27
30
  slot: 'InviteRoot'
28
31
  })(() => ({}));
32
+ const META_ROBOTS_ENABLE_DEFAULT = 'index,follow';
29
33
  function Invite(inProps) {
30
34
  // PROPS
31
35
  const props = (0, system_1.useThemeProps)({
@@ -33,16 +37,38 @@ function Invite(inProps) {
33
37
  name: constants_1.PREFIX
34
38
  });
35
39
  const { className, onCompleteAction = null } = props;
40
+ // STATUS
41
+ const [isMetaRobotsUpdating, setMetaRobotsUpdating] = (0, react_1.useState)(false);
36
42
  // CONTEXT
37
43
  const scPreferencesContext = (0, react_1.useContext)(react_core_1.SCPreferencesContext);
44
+ const metaRobots = (0, react_1.useMemo)(() => {
45
+ return scPreferencesContext.preferences && react_core_1.SCPreferences.WEBMASTER_META_ROBOTS in scPreferencesContext.preferences
46
+ ? scPreferencesContext.preferences[react_core_1.SCPreferences.WEBMASTER_META_ROBOTS].value
47
+ : null;
48
+ }, [scPreferencesContext.preferences]);
38
49
  const url = (0, react_1.useMemo)(() => scPreferencesContext.preferences &&
39
50
  react_core_1.SCPreferences.CONFIGURATIONS_GROUPS_ENABLED in scPreferencesContext.preferences &&
40
51
  scPreferencesContext.preferences[react_core_1.SCPreferences.CONFIGURATIONS_APP_URL].value, [scPreferencesContext.preferences]);
41
52
  // HANDLERS
42
- const handleShare = (shareUrl, shareType) => {
53
+ const handleShare = (shareUrl, shareType) => tslib_1.__awaiter(this, void 0, void 0, function* () {
54
+ if (metaRobots.toLowerCase().replace(/\s+/g, '') !== META_ROBOTS_ENABLE_DEFAULT) {
55
+ yield enableSeo();
56
+ }
43
57
  window.open(shareUrl, `${shareType}-share-dialog`, 'width=626,height=436');
44
58
  onCompleteAction();
45
- };
59
+ });
60
+ const enableSeo = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ try {
62
+ setMetaRobotsUpdating(true);
63
+ yield api_services_1.PreferenceService.updatePreferences({ [types_1.SCPreferenceName.META_ROBOTS]: 'index, follow' });
64
+ }
65
+ catch (e) {
66
+ utils_1.Logger.error(Errors_1.SCOPE_SC_UI, e);
67
+ }
68
+ finally {
69
+ setMetaRobotsUpdating(false);
70
+ }
71
+ });
46
72
  /**
47
73
  * Fetches platform url
48
74
  */
@@ -67,6 +93,6 @@ function Invite(inProps) {
67
93
  onCompleteAction();
68
94
  fetchPlatform('/marketing/invitation');
69
95
  };
70
- return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "h4", className: classes.title }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.invite", defaultMessage: "ui.onBoardingWidget.invite" }) })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.social }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.title", defaultMessage: "ui.onBoardingWidget.step.invite.social.title" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.social.subtitle" }) })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.iconContainer }, { children: [(0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.FACEBOOK_SHARE + url, 'facebook'), disabled: !url }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "facebook" })) })), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.X_SHARE + url, 'x'), disabled: !url }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "twitter" })) })), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.LINKEDIN_SHARE + url, 'linkedin'), disabled: !url }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "linkedin" })) }))] }))] })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.email }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.title", defaultMessage: "ui.onBoardingWidget.step.invite.email.title" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.email.subtitle" }) }))] })), (0, jsx_runtime_1.jsx)(Box_1.default, Object.assign({ component: "span", className: classes.action }, { children: (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "outlined", size: "small", onClick: handleCompleteAction }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { defaultMessage: "ui.onBoardingWidget.step.invite.button", id: "ui.onBoardingWidget.step.invite.button" }) })) }))] })));
96
+ return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "h4", className: classes.title }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.invite", defaultMessage: "ui.onBoardingWidget.invite" }) })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.social }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.title", defaultMessage: "ui.onBoardingWidget.step.invite.social.title" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.social.subtitle" }) })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.iconContainer }, { children: [(0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.FACEBOOK_SHARE + url, 'facebook'), disabled: !url || isMetaRobotsUpdating }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "facebook" })) })), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.X_SHARE + url, 'x'), disabled: !url || isMetaRobotsUpdating }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "twitter" })) })), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: () => handleShare(SocialShare_1.LINKEDIN_SHARE + url, 'linkedin'), disabled: !url || isMetaRobotsUpdating }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ classes: { root: classes.icon } }, { children: "linkedin" })) }))] }))] })), (0, jsx_runtime_1.jsxs)(Box_1.default, Object.assign({ className: classes.email }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.title", defaultMessage: "ui.onBoardingWidget.step.invite.email.title" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.email.subtitle" }) }))] })), (0, jsx_runtime_1.jsx)(Box_1.default, Object.assign({ component: "span", className: classes.action }, { children: (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "outlined", size: "small", onClick: handleCompleteAction }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { defaultMessage: "ui.onBoardingWidget.step.invite.button", id: "ui.onBoardingWidget.step.invite.button" }) })) }))] })));
71
97
  }
72
98
  exports.default = Invite;
@@ -28,5 +28,5 @@ export default function NavigationMenuDrawer(inProps) {
28
28
  name: PREFIX
29
29
  });
30
30
  const { className = null, drawerHeaderContent = _jsx(DefaultHeaderContent, {}), drawerContent = _jsx(DefaultDrawerContent, {}), ScrollContainerProps = {}, open, onClose } = props, rest = __rest(props, ["className", "drawerHeaderContent", "drawerContent", "ScrollContainerProps", "open", "onClose"]);
31
- return (_jsxs(Root, Object.assign({ className: classNames(classes.root, className), open: open, onClose: onClose }, rest, { children: [_jsxs(Box, Object.assign({ className: classes.drawerHeader }, { children: [drawerHeaderContent, _jsx(IconButton, Object.assign({ className: classes.drawerHeaderAction, onClick: onClose }, { children: _jsx(Icon, { children: "close" }) }))] })), _jsx(Divider, {}), _jsx(ScrollContainer, Object.assign({}, ScrollContainerProps, { children: _jsx(List, Object.assign({ className: classes.drawerContent, onClick: onClose }, { children: drawerContent })) }))] })));
31
+ return (_jsxs(Root, Object.assign({ anchor: "left", className: classNames(classes.root, className), open: open, onClose: onClose }, rest, { children: [_jsxs(Box, Object.assign({ className: classes.drawerHeader }, { children: [drawerHeaderContent, _jsx(IconButton, Object.assign({ className: classes.drawerHeaderAction, onClick: onClose }, { children: _jsx(Icon, { children: "close" }) }))] })), _jsx(Divider, {}), _jsx(ScrollContainer, Object.assign({}, ScrollContainerProps, { children: _jsx(List, Object.assign({ className: classes.drawerContent, onClick: onClose }, { children: drawerContent })) }))] })));
32
32
  }
@@ -1,9 +1,19 @@
1
1
  import { IconButtonProps } from '@mui/material';
2
2
  import { NavigationMenuDrawerProps } from './NavigationMenuDrawer';
3
3
  export interface NavigationMenuIconButtonProps extends IconButtonProps {
4
+ /**
5
+ * Prop to show/hide the default drawer component
6
+ * @default true
7
+ */
8
+ showDrawer?: boolean;
9
+ /**
10
+ * Callback triggered on menu click
11
+ * @default null
12
+ */
13
+ onMenuIconClick?: () => void;
4
14
  /**
5
15
  * Props to spread to default drawer root
6
- * @default {anchor: 'left'}
16
+ * @default {}
7
17
  */
8
18
  DrawerProps?: NavigationMenuDrawerProps;
9
19
  }
@@ -45,7 +45,7 @@ export default function NavigationMenuIconButton(inProps) {
45
45
  props: inProps,
46
46
  name: PREFIX
47
47
  });
48
- const { className = null, DrawerProps = { anchor: 'left' } } = props, rest = __rest(props, ["className", "DrawerProps"]);
48
+ const { className = null, DrawerProps = {}, onMenuIconClick = null, showDrawer = true } = props, rest = __rest(props, ["className", "DrawerProps", "onMenuIconClick", "showDrawer"]);
49
49
  // STATE
50
50
  const [anchorEl, setAnchorEl] = useState(null);
51
51
  // CONTEXT
@@ -61,5 +61,5 @@ export default function NavigationMenuIconButton(inProps) {
61
61
  if (!preferences[SCPreferences.CONFIGURATIONS_CONTENT_AVAILABILITY].value && !((_a = scUserContext.user) === null || _a === void 0 ? void 0 : _a.id)) {
62
62
  return null;
63
63
  }
64
- return (_jsxs(_Fragment, { children: [_jsx(Root, Object.assign({ className: classNames(classes.root, className) }, rest, { onClick: handleOpen }, { children: _jsx(Icon, { children: "menu" }) })), _jsx(NavigationMenuDrawer, Object.assign({ open: Boolean(anchorEl), onClose: handleClose }, DrawerProps))] }));
64
+ return (_jsxs(_Fragment, { children: [_jsx(Root, Object.assign({ className: classNames(classes.root, className) }, rest, { onClick: onMenuIconClick !== null && onMenuIconClick !== void 0 ? onMenuIconClick : handleOpen }, { children: _jsx(Icon, { children: "menu" }) })), showDrawer && _jsx(NavigationMenuDrawer, Object.assign({ open: Boolean(anchorEl), onClose: handleClose }, DrawerProps))] }));
65
65
  }
@@ -1,5 +1,6 @@
1
+ import { __awaiter } from "tslib";
1
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useContext, useMemo } from 'react';
3
+ import { useContext, useMemo, useState } from 'react';
3
4
  import { styled } from '@mui/material/styles';
4
5
  import Box from '@mui/material/Box';
5
6
  import { useThemeProps } from '@mui/system';
@@ -9,7 +10,10 @@ import { Button, Icon, IconButton, Typography } from '@mui/material';
9
10
  import { FormattedMessage } from 'react-intl';
10
11
  import { SCPreferences, SCPreferencesContext } from '@selfcommunity/react-core';
11
12
  import { FACEBOOK_SHARE, LINKEDIN_SHARE, X_SHARE } from '../../../../constants/SocialShare';
12
- import { Endpoints, http } from '@selfcommunity/api-services';
13
+ import { Endpoints, http, PreferenceService } from '@selfcommunity/api-services';
14
+ import { Logger } from '@selfcommunity/utils';
15
+ import { SCOPE_SC_UI } from '../../../../constants/Errors';
16
+ import { SCPreferenceName } from '@selfcommunity/types';
13
17
  const classes = {
14
18
  root: `${PREFIX}-invite-root`,
15
19
  title: `${PREFIX}-invite-title`,
@@ -23,6 +27,7 @@ const Root = styled(Box, {
23
27
  name: PREFIX,
24
28
  slot: 'InviteRoot'
25
29
  })(() => ({}));
30
+ const META_ROBOTS_ENABLE_DEFAULT = 'index,follow';
26
31
  export default function Invite(inProps) {
27
32
  // PROPS
28
33
  const props = useThemeProps({
@@ -30,16 +35,38 @@ export default function Invite(inProps) {
30
35
  name: PREFIX
31
36
  });
32
37
  const { className, onCompleteAction = null } = props;
38
+ // STATUS
39
+ const [isMetaRobotsUpdating, setMetaRobotsUpdating] = useState(false);
33
40
  // CONTEXT
34
41
  const scPreferencesContext = useContext(SCPreferencesContext);
42
+ const metaRobots = useMemo(() => {
43
+ return scPreferencesContext.preferences && SCPreferences.WEBMASTER_META_ROBOTS in scPreferencesContext.preferences
44
+ ? scPreferencesContext.preferences[SCPreferences.WEBMASTER_META_ROBOTS].value
45
+ : null;
46
+ }, [scPreferencesContext.preferences]);
35
47
  const url = useMemo(() => scPreferencesContext.preferences &&
36
48
  SCPreferences.CONFIGURATIONS_GROUPS_ENABLED in scPreferencesContext.preferences &&
37
49
  scPreferencesContext.preferences[SCPreferences.CONFIGURATIONS_APP_URL].value, [scPreferencesContext.preferences]);
38
50
  // HANDLERS
39
- const handleShare = (shareUrl, shareType) => {
51
+ const handleShare = (shareUrl, shareType) => __awaiter(this, void 0, void 0, function* () {
52
+ if (metaRobots.toLowerCase().replace(/\s+/g, '') !== META_ROBOTS_ENABLE_DEFAULT) {
53
+ yield enableSeo();
54
+ }
40
55
  window.open(shareUrl, `${shareType}-share-dialog`, 'width=626,height=436');
41
56
  onCompleteAction();
42
- };
57
+ });
58
+ const enableSeo = () => __awaiter(this, void 0, void 0, function* () {
59
+ try {
60
+ setMetaRobotsUpdating(true);
61
+ yield PreferenceService.updatePreferences({ [SCPreferenceName.META_ROBOTS]: 'index, follow' });
62
+ }
63
+ catch (e) {
64
+ Logger.error(SCOPE_SC_UI, e);
65
+ }
66
+ finally {
67
+ setMetaRobotsUpdating(false);
68
+ }
69
+ });
43
70
  /**
44
71
  * Fetches platform url
45
72
  */
@@ -64,5 +91,5 @@ export default function Invite(inProps) {
64
91
  onCompleteAction();
65
92
  fetchPlatform('/marketing/invitation');
66
93
  };
67
- return (_jsxs(Root, Object.assign({ className: classNames(classes.root, className) }, { children: [_jsx(Typography, Object.assign({ variant: "h4", className: classes.title }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.invite", defaultMessage: "ui.onBoardingWidget.invite" }) })), _jsxs(Box, Object.assign({ className: classes.social }, { children: [_jsx(Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.title", defaultMessage: "ui.onBoardingWidget.step.invite.social.title" }) })), _jsx(Typography, Object.assign({ variant: "subtitle1" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.social.subtitle" }) })), _jsxs(Box, Object.assign({ className: classes.iconContainer }, { children: [_jsx(IconButton, Object.assign({ onClick: () => handleShare(FACEBOOK_SHARE + url, 'facebook'), disabled: !url }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "facebook" })) })), _jsx(IconButton, Object.assign({ onClick: () => handleShare(X_SHARE + url, 'x'), disabled: !url }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "twitter" })) })), _jsx(IconButton, Object.assign({ onClick: () => handleShare(LINKEDIN_SHARE + url, 'linkedin'), disabled: !url }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "linkedin" })) }))] }))] })), _jsxs(Box, Object.assign({ className: classes.email }, { children: [_jsx(Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.title", defaultMessage: "ui.onBoardingWidget.step.invite.email.title" }) })), _jsx(Typography, Object.assign({ variant: "subtitle1" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.email.subtitle" }) }))] })), _jsx(Box, Object.assign({ component: "span", className: classes.action }, { children: _jsx(Button, Object.assign({ variant: "outlined", size: "small", onClick: handleCompleteAction }, { children: _jsx(FormattedMessage, { defaultMessage: "ui.onBoardingWidget.step.invite.button", id: "ui.onBoardingWidget.step.invite.button" }) })) }))] })));
94
+ return (_jsxs(Root, Object.assign({ className: classNames(classes.root, className) }, { children: [_jsx(Typography, Object.assign({ variant: "h4", className: classes.title }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.invite", defaultMessage: "ui.onBoardingWidget.invite" }) })), _jsxs(Box, Object.assign({ className: classes.social }, { children: [_jsx(Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.title", defaultMessage: "ui.onBoardingWidget.step.invite.social.title" }) })), _jsx(Typography, Object.assign({ variant: "subtitle1" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.social.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.social.subtitle" }) })), _jsxs(Box, Object.assign({ className: classes.iconContainer }, { children: [_jsx(IconButton, Object.assign({ onClick: () => handleShare(FACEBOOK_SHARE + url, 'facebook'), disabled: !url || isMetaRobotsUpdating }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "facebook" })) })), _jsx(IconButton, Object.assign({ onClick: () => handleShare(X_SHARE + url, 'x'), disabled: !url || isMetaRobotsUpdating }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "twitter" })) })), _jsx(IconButton, Object.assign({ onClick: () => handleShare(LINKEDIN_SHARE + url, 'linkedin'), disabled: !url || isMetaRobotsUpdating }, { children: _jsx(Icon, Object.assign({ classes: { root: classes.icon } }, { children: "linkedin" })) }))] }))] })), _jsxs(Box, Object.assign({ className: classes.email }, { children: [_jsx(Typography, Object.assign({ className: classes.title, variant: "h4" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.title", defaultMessage: "ui.onBoardingWidget.step.invite.email.title" }) })), _jsx(Typography, Object.assign({ variant: "subtitle1" }, { children: _jsx(FormattedMessage, { id: "ui.onBoardingWidget.step.invite.email.subtitle", defaultMessage: "ui.onBoardingWidget.step.invite.email.subtitle" }) }))] })), _jsx(Box, Object.assign({ component: "span", className: classes.action }, { children: _jsx(Button, Object.assign({ variant: "outlined", size: "small", onClick: handleCompleteAction }, { children: _jsx(FormattedMessage, { defaultMessage: "ui.onBoardingWidget.step.invite.button", id: "ui.onBoardingWidget.step.invite.button" }) })) }))] })));
68
95
  }