@selfcommunity/react-ui 0.7.0-alpha.361 → 0.7.0-alpha.363
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.
- package/lib/cjs/components/AccountDataPortability/AccountDataPortability.js +1 -1
- package/lib/cjs/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.d.ts +6 -1
- package/lib/cjs/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js +13 -3
- package/lib/cjs/components/PrivateMessageSnippets/PrivateMessageSnippets.js +7 -4
- package/lib/esm/components/AccountDataPortability/AccountDataPortability.js +1 -1
- package/lib/esm/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.d.ts +6 -1
- package/lib/esm/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js +13 -3
- package/lib/esm/components/PrivateMessageSnippets/PrivateMessageSnippets.js +7 -4
- package/lib/umd/react-ui.js +1 -1
- package/package.json +4 -4
|
@@ -90,7 +90,7 @@ function AccountDataPortability(inProps) {
|
|
|
90
90
|
*/
|
|
91
91
|
const handleDownloadDataPortabilityFile = () => {
|
|
92
92
|
setDownloadingDataPortability(true);
|
|
93
|
-
api_services_1.DataPortabilityService.downloadDataPortability()
|
|
93
|
+
api_services_1.DataPortabilityService.downloadDataPortability({ timeout: 30 * 60 * 1000 })
|
|
94
94
|
.then((res) => {
|
|
95
95
|
const url = window.URL.createObjectURL(new Blob([res], { type: 'application/zip' }));
|
|
96
96
|
const link = document.createElement('a');
|
package/lib/cjs/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IconButtonProps } from '@mui/material';
|
|
2
|
+
import { SCUserType } from '@selfcommunity/types';
|
|
2
3
|
export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
3
4
|
/**
|
|
4
5
|
* Overrides or extends the styles applied to the component.
|
|
@@ -6,7 +7,7 @@ export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
|
6
7
|
*/
|
|
7
8
|
className?: string;
|
|
8
9
|
/**
|
|
9
|
-
* Handles callback on menu item click
|
|
10
|
+
* Handles callback on menu item delete click
|
|
10
11
|
*/
|
|
11
12
|
onMenuItemDeleteClick?: () => void;
|
|
12
13
|
/**
|
|
@@ -17,6 +18,10 @@ export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
|
17
18
|
* The deleting thread id
|
|
18
19
|
*/
|
|
19
20
|
threadToDelete?: any;
|
|
21
|
+
/**
|
|
22
|
+
* The user receiver context
|
|
23
|
+
*/
|
|
24
|
+
user?: SCUserType;
|
|
20
25
|
/**
|
|
21
26
|
* Any other properties
|
|
22
27
|
*/
|
package/lib/cjs/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js
CHANGED
|
@@ -8,6 +8,7 @@ const react_intl_1 = require("react-intl");
|
|
|
8
8
|
const Icon_1 = tslib_1.__importDefault(require("@mui/material/Icon"));
|
|
9
9
|
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
10
10
|
const system_1 = require("@mui/system");
|
|
11
|
+
const react_core_1 = require("@selfcommunity/react-core");
|
|
11
12
|
const ConfirmDialog_1 = tslib_1.__importDefault(require("../../shared/ConfirmDialog/ConfirmDialog"));
|
|
12
13
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
13
14
|
const pubsub_js_1 = tslib_1.__importDefault(require("pubsub-js"));
|
|
@@ -62,13 +63,14 @@ function PrivateMessageSettingsIconButton(inProps) {
|
|
|
62
63
|
props: inProps,
|
|
63
64
|
name: PREFIX
|
|
64
65
|
});
|
|
65
|
-
const { className = null, onMenuItemDeleteClick, onItemDeleteConfirm, threadToDelete } = props, rest = tslib_1.__rest(props, ["className", "onMenuItemDeleteClick", "onItemDeleteConfirm", "threadToDelete"]);
|
|
66
|
+
const { className = null, onMenuItemDeleteClick, user, onItemDeleteConfirm, threadToDelete } = props, rest = tslib_1.__rest(props, ["className", "onMenuItemDeleteClick", "user", "onItemDeleteConfirm", "threadToDelete"]);
|
|
66
67
|
// STATE
|
|
67
68
|
const [anchorEl, setAnchorEl] = (0, react_1.useState)(null);
|
|
68
69
|
const [openConfirmDialog, setOpenConfirmDialog] = (0, react_1.useState)(false);
|
|
69
70
|
// HOOKS
|
|
70
71
|
const theme = (0, material_1.useTheme)();
|
|
71
72
|
const isMobile = (0, material_1.useMediaQuery)(theme.breakpoints.down('md'));
|
|
73
|
+
const scRoutingContext = (0, react_core_1.useSCRouting)();
|
|
72
74
|
// HANDLERS
|
|
73
75
|
const handleOpen = (event) => {
|
|
74
76
|
setAnchorEl(event.currentTarget);
|
|
@@ -108,7 +110,11 @@ function PrivateMessageSettingsIconButton(inProps) {
|
|
|
108
110
|
react_1.default.createElement(material_1.ListItem, { className: classes.item, key: "delete", onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick },
|
|
109
111
|
react_1.default.createElement(material_1.ListItemIcon, null,
|
|
110
112
|
react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "delete")),
|
|
111
|
-
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
|
|
113
|
+
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" })),
|
|
114
|
+
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) },
|
|
115
|
+
react_1.default.createElement(material_1.ListItemIcon, null,
|
|
116
|
+
react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "people_alt")),
|
|
117
|
+
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))
|
|
112
118
|
];
|
|
113
119
|
}
|
|
114
120
|
else {
|
|
@@ -116,7 +122,11 @@ function PrivateMessageSettingsIconButton(inProps) {
|
|
|
116
122
|
react_1.default.createElement(material_1.MenuItem, { className: classes.item, onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick, key: "delete" },
|
|
117
123
|
react_1.default.createElement(material_1.ListItemIcon, null,
|
|
118
124
|
react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "delete")),
|
|
119
|
-
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
|
|
125
|
+
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" })),
|
|
126
|
+
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" },
|
|
127
|
+
react_1.default.createElement(material_1.ListItemIcon, null,
|
|
128
|
+
react_1.default.createElement(Icon_1.default, { fontSize: "small" }, "people_alt")),
|
|
129
|
+
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))
|
|
120
130
|
];
|
|
121
131
|
}
|
|
122
132
|
};
|
|
@@ -94,9 +94,12 @@ function PrivateMessageSnippets(inProps) {
|
|
|
94
94
|
}
|
|
95
95
|
return el.receiver.username.includes(search.toLowerCase());
|
|
96
96
|
});
|
|
97
|
-
const messageReceiver = (item, loggedUserId) => {
|
|
98
|
-
var _a, _b, _c;
|
|
99
|
-
|
|
97
|
+
const messageReceiver = (item, loggedUserId, obj) => {
|
|
98
|
+
var _a, _b, _c, _d;
|
|
99
|
+
if (obj) {
|
|
100
|
+
return ((_a = item === null || item === void 0 ? void 0 : item.receiver) === null || _a === void 0 ? void 0 : _a.id) !== loggedUserId ? item === null || item === void 0 ? void 0 : item.receiver : item === null || item === void 0 ? void 0 : item.sender;
|
|
101
|
+
}
|
|
102
|
+
return ((_b = item === null || item === void 0 ? void 0 : item.receiver) === null || _b === void 0 ? void 0 : _b.id) !== loggedUserId ? (_c = item === null || item === void 0 ? void 0 : item.receiver) === null || _c === void 0 ? void 0 : _c.id : (_d = item === null || item === void 0 ? void 0 : item.sender) === null || _d === void 0 ? void 0 : _d.id;
|
|
100
103
|
};
|
|
101
104
|
//HANDLERS
|
|
102
105
|
const handleChange = (event) => {
|
|
@@ -218,7 +221,7 @@ function PrivateMessageSnippets(inProps) {
|
|
|
218
221
|
} }),
|
|
219
222
|
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,
|
|
220
223
|
message.thread_status === types_1.SCPrivateMessageStatusType.NEW && (react_1.default.createElement(material_1.Icon, { fontSize: "small", color: "secondary" }, "fiber_manual_record")),
|
|
221
|
-
!isMobile && (react_1.default.createElement(PrivateMessageSettingsIconButton_1.default, { threadToDelete: messageReceiver(message, authUserId), onItemDeleteConfirm: () => handleDeleteConversation(messageReceiver(message, authUserId)) }))), selected: userObj !== types_1.SCPrivateMessageStatusType.NEW &&
|
|
224
|
+
!isMobile && (react_1.default.createElement(PrivateMessageSettingsIconButton_1.default, { threadToDelete: messageReceiver(message, authUserId), onItemDeleteConfirm: () => handleDeleteConversation(messageReceiver(message, authUserId)), user: messageReceiver(message, authUserId, true) }))), selected: userObj !== types_1.SCPrivateMessageStatusType.NEW &&
|
|
222
225
|
messageReceiver(message, authUserId) === (isObj ? messageReceiver(userObj, authUserId) : userObj) })))))))));
|
|
223
226
|
}
|
|
224
227
|
exports.default = PrivateMessageSnippets;
|
|
@@ -88,7 +88,7 @@ export default function AccountDataPortability(inProps) {
|
|
|
88
88
|
*/
|
|
89
89
|
const handleDownloadDataPortabilityFile = () => {
|
|
90
90
|
setDownloadingDataPortability(true);
|
|
91
|
-
DataPortabilityService.downloadDataPortability()
|
|
91
|
+
DataPortabilityService.downloadDataPortability({ timeout: 30 * 60 * 1000 })
|
|
92
92
|
.then((res) => {
|
|
93
93
|
const url = window.URL.createObjectURL(new Blob([res], { type: 'application/zip' }));
|
|
94
94
|
const link = document.createElement('a');
|
package/lib/esm/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IconButtonProps } from '@mui/material';
|
|
2
|
+
import { SCUserType } from '@selfcommunity/types';
|
|
2
3
|
export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
3
4
|
/**
|
|
4
5
|
* Overrides or extends the styles applied to the component.
|
|
@@ -6,7 +7,7 @@ export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
|
6
7
|
*/
|
|
7
8
|
className?: string;
|
|
8
9
|
/**
|
|
9
|
-
* Handles callback on menu item click
|
|
10
|
+
* Handles callback on menu item delete click
|
|
10
11
|
*/
|
|
11
12
|
onMenuItemDeleteClick?: () => void;
|
|
12
13
|
/**
|
|
@@ -17,6 +18,10 @@ export interface PrivateMessageSettingsIconButtonProps extends IconButtonProps {
|
|
|
17
18
|
* The deleting thread id
|
|
18
19
|
*/
|
|
19
20
|
threadToDelete?: any;
|
|
21
|
+
/**
|
|
22
|
+
* The user receiver context
|
|
23
|
+
*/
|
|
24
|
+
user?: SCUserType;
|
|
20
25
|
/**
|
|
21
26
|
* Any other properties
|
|
22
27
|
*/
|
package/lib/esm/components/PrivateMessageSettingsIconButton/PrivateMessageSettingsIconButton.js
CHANGED
|
@@ -6,6 +6,7 @@ import { FormattedMessage } from 'react-intl';
|
|
|
6
6
|
import Icon from '@mui/material/Icon';
|
|
7
7
|
import classNames from 'classnames';
|
|
8
8
|
import { useThemeProps } from '@mui/system';
|
|
9
|
+
import { Link, SCRoutes, useSCRouting } from '@selfcommunity/react-core';
|
|
9
10
|
import ConfirmDialog from '../../shared/ConfirmDialog/ConfirmDialog';
|
|
10
11
|
import { PrivateMessageService } from '@selfcommunity/api-services';
|
|
11
12
|
import PubSub from 'pubsub-js';
|
|
@@ -60,13 +61,14 @@ export default function PrivateMessageSettingsIconButton(inProps) {
|
|
|
60
61
|
props: inProps,
|
|
61
62
|
name: PREFIX
|
|
62
63
|
});
|
|
63
|
-
const { className = null, onMenuItemDeleteClick, onItemDeleteConfirm, threadToDelete } = props, rest = __rest(props, ["className", "onMenuItemDeleteClick", "onItemDeleteConfirm", "threadToDelete"]);
|
|
64
|
+
const { className = null, onMenuItemDeleteClick, user, onItemDeleteConfirm, threadToDelete } = props, rest = __rest(props, ["className", "onMenuItemDeleteClick", "user", "onItemDeleteConfirm", "threadToDelete"]);
|
|
64
65
|
// STATE
|
|
65
66
|
const [anchorEl, setAnchorEl] = useState(null);
|
|
66
67
|
const [openConfirmDialog, setOpenConfirmDialog] = useState(false);
|
|
67
68
|
// HOOKS
|
|
68
69
|
const theme = useTheme();
|
|
69
70
|
const isMobile = useMediaQuery(theme.breakpoints.down('md'));
|
|
71
|
+
const scRoutingContext = useSCRouting();
|
|
70
72
|
// HANDLERS
|
|
71
73
|
const handleOpen = (event) => {
|
|
72
74
|
setAnchorEl(event.currentTarget);
|
|
@@ -106,7 +108,11 @@ export default function PrivateMessageSettingsIconButton(inProps) {
|
|
|
106
108
|
React.createElement(ListItem, { className: classes.item, key: "delete", onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick },
|
|
107
109
|
React.createElement(ListItemIcon, null,
|
|
108
110
|
React.createElement(Icon, { fontSize: "small" }, "delete")),
|
|
109
|
-
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
|
|
111
|
+
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" })),
|
|
112
|
+
React.createElement(ListItem, { className: classes.item, key: "profile", component: Link, to: scRoutingContext.url(SCRoutes.USER_PROFILE_ROUTE_NAME, user) },
|
|
113
|
+
React.createElement(ListItemIcon, null,
|
|
114
|
+
React.createElement(Icon, { fontSize: "small" }, "people_alt")),
|
|
115
|
+
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))
|
|
110
116
|
];
|
|
111
117
|
}
|
|
112
118
|
else {
|
|
@@ -114,7 +120,11 @@ export default function PrivateMessageSettingsIconButton(inProps) {
|
|
|
114
120
|
React.createElement(MenuItem, { className: classes.item, onClick: threadToDelete ? handleOpenDialog : onMenuItemDeleteClick, key: "delete" },
|
|
115
121
|
React.createElement(ListItemIcon, null,
|
|
116
122
|
React.createElement(Icon, { fontSize: "small" }, "delete")),
|
|
117
|
-
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" }))
|
|
123
|
+
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.delete", defaultMessage: "ui.privateMessageSettingsIconButton.item.delete" })),
|
|
124
|
+
React.createElement(MenuItem, { className: classes.item, component: Link, to: scRoutingContext.url(SCRoutes.USER_PROFILE_ROUTE_NAME, user), key: "profile" },
|
|
125
|
+
React.createElement(ListItemIcon, null,
|
|
126
|
+
React.createElement(Icon, { fontSize: "small" }, "people_alt")),
|
|
127
|
+
React.createElement(FormattedMessage, { id: "ui.privateMessageSettingsIconButton.item.profile", defaultMessage: "ui.privateMessageSettingsIconButton.item.profile" }))
|
|
118
128
|
];
|
|
119
129
|
}
|
|
120
130
|
};
|
|
@@ -92,9 +92,12 @@ export default function PrivateMessageSnippets(inProps) {
|
|
|
92
92
|
}
|
|
93
93
|
return el.receiver.username.includes(search.toLowerCase());
|
|
94
94
|
});
|
|
95
|
-
const messageReceiver = (item, loggedUserId) => {
|
|
96
|
-
var _a, _b, _c;
|
|
97
|
-
|
|
95
|
+
const messageReceiver = (item, loggedUserId, obj) => {
|
|
96
|
+
var _a, _b, _c, _d;
|
|
97
|
+
if (obj) {
|
|
98
|
+
return ((_a = item === null || item === void 0 ? void 0 : item.receiver) === null || _a === void 0 ? void 0 : _a.id) !== loggedUserId ? item === null || item === void 0 ? void 0 : item.receiver : item === null || item === void 0 ? void 0 : item.sender;
|
|
99
|
+
}
|
|
100
|
+
return ((_b = item === null || item === void 0 ? void 0 : item.receiver) === null || _b === void 0 ? void 0 : _b.id) !== loggedUserId ? (_c = item === null || item === void 0 ? void 0 : item.receiver) === null || _c === void 0 ? void 0 : _c.id : (_d = item === null || item === void 0 ? void 0 : item.sender) === null || _d === void 0 ? void 0 : _d.id;
|
|
98
101
|
};
|
|
99
102
|
//HANDLERS
|
|
100
103
|
const handleChange = (event) => {
|
|
@@ -216,6 +219,6 @@ export default function PrivateMessageSnippets(inProps) {
|
|
|
216
219
|
} }),
|
|
217
220
|
React.createElement(List, null, filteredSnippets.map((message) => (React.createElement(PrivateMessageSnippetItem, { message: message, key: message.id, onItemClick: () => handleOpenThread(message), secondaryAction: React.createElement(React.Fragment, null,
|
|
218
221
|
message.thread_status === SCPrivateMessageStatusType.NEW && (React.createElement(Icon, { fontSize: "small", color: "secondary" }, "fiber_manual_record")),
|
|
219
|
-
!isMobile && (React.createElement(PrivateMessageSettingsIconButton, { threadToDelete: messageReceiver(message, authUserId), onItemDeleteConfirm: () => handleDeleteConversation(messageReceiver(message, authUserId)) }))), selected: userObj !== SCPrivateMessageStatusType.NEW &&
|
|
222
|
+
!isMobile && (React.createElement(PrivateMessageSettingsIconButton, { threadToDelete: messageReceiver(message, authUserId), onItemDeleteConfirm: () => handleDeleteConversation(messageReceiver(message, authUserId)), user: messageReceiver(message, authUserId, true) }))), selected: userObj !== SCPrivateMessageStatusType.NEW &&
|
|
220
223
|
messageReceiver(message, authUserId) === (isObj ? messageReceiver(userObj, authUserId) : userObj) })))))))));
|
|
221
224
|
}
|