cozy-ui 146.2.0 → 146.2.1
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/CHANGELOG.md +8 -0
- package/package.json +1 -1
- package/react/MemberRow/MemberRoleMenu.jsx +4 -2
- package/react/MemberRow/MemberRoleMenuHeader.jsx +3 -1
- package/transpiled/react/MemberRow/MemberRoleMenu.d.ts +5 -30
- package/transpiled/react/MemberRow/MemberRoleMenu.js +4 -2
- package/transpiled/react/MemberRow/MemberRoleMenuHeader.js +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
## [146.2.1](https://github.com/cozy/cozy-ui/compare/v146.2.0...v146.2.1) (2026-11-02)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **MemberRoleMenuHeader:** Register its locales ([396d6b4](https://github.com/cozy/cozy-ui/commit/396d6b4))
|
|
7
|
+
* **MemberRoleMenu:** Show the mobile header only with a member ([59b5d17](https://github.com/cozy/cozy-ui/commit/59b5d17))
|
|
8
|
+
|
|
1
9
|
# [146.2.0](https://github.com/cozy/cozy-ui/compare/v146.1.0...v146.2.0) (2026-11-02)
|
|
2
10
|
|
|
3
11
|
|
package/package.json
CHANGED
|
@@ -17,6 +17,7 @@ const MemberRoleMenu = ({ member, value, roles, onChange }) => {
|
|
|
17
17
|
const [isMenuDisplayed, setMenuDisplayed] = useState(false)
|
|
18
18
|
|
|
19
19
|
const label = roles.find(role => role.value === value)?.label
|
|
20
|
+
const isHeaderShown = isMobile && member !== undefined
|
|
20
21
|
|
|
21
22
|
const handleRoleClick = role => {
|
|
22
23
|
if (role.value !== value) onChange(role.value)
|
|
@@ -44,7 +45,7 @@ const MemberRoleMenu = ({ member, value, roles, onChange }) => {
|
|
|
44
45
|
onClose={() => setMenuDisplayed(false)}
|
|
45
46
|
>
|
|
46
47
|
{/* The header renders nothing on desktop but would still take the initial focus of the menu */}
|
|
47
|
-
{
|
|
48
|
+
{isHeaderShown && <MemberRoleMenuHeader member={member} />}
|
|
48
49
|
{roles.map(role => (
|
|
49
50
|
<ActionsMenuItem
|
|
50
51
|
key={role.value}
|
|
@@ -62,7 +63,8 @@ const MemberRoleMenu = ({ member, value, roles, onChange }) => {
|
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
MemberRoleMenu.propTypes = {
|
|
65
|
-
|
|
66
|
+
/** Member shown in the header of the menu on mobile */
|
|
67
|
+
member: memberPropType,
|
|
66
68
|
value: PropTypes.string.isRequired,
|
|
67
69
|
roles: rolesPropType.isRequired,
|
|
68
70
|
onChange: PropTypes.func.isRequired
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
|
-
import { useI18n } from 'twake-i18n'
|
|
2
|
+
import { useI18n, useExtendI18n } from 'twake-i18n'
|
|
3
3
|
|
|
4
4
|
import MemberAvatar from './MemberAvatar'
|
|
5
5
|
import MemberGroupAvatar from './MemberGroupAvatar'
|
|
6
|
+
import { locales } from './locales'
|
|
6
7
|
import { memberPropType } from './propTypes'
|
|
7
8
|
import ActionsMenuMobileHeader from '../ActionsMenu/ActionsMenuMobileHeader'
|
|
8
9
|
import ListItemIcon from '../ListItemIcon'
|
|
9
10
|
import ListItemText from '../ListItemText'
|
|
10
11
|
|
|
11
12
|
const MemberRoleMenuHeader = ({ member }) => {
|
|
13
|
+
useExtendI18n(locales)
|
|
12
14
|
const { t } = useI18n()
|
|
13
15
|
const { name, avatarUrl, initials, color, isGroup, isCurrentUser } = member
|
|
14
16
|
|
|
@@ -7,39 +7,14 @@ declare function MemberRoleMenu({ member, value, roles, onChange }: {
|
|
|
7
7
|
}): JSX.Element;
|
|
8
8
|
declare namespace MemberRoleMenu {
|
|
9
9
|
namespace propTypes {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
subtitle: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
14
|
-
avatarUrl: PropTypes.Requireable<string>;
|
|
15
|
-
initials: PropTypes.Requireable<string>;
|
|
16
|
-
color: PropTypes.Requireable<string>;
|
|
17
|
-
isGroup: PropTypes.Requireable<boolean>;
|
|
18
|
-
isOwner: PropTypes.Requireable<boolean>;
|
|
19
|
-
isCurrentUser: PropTypes.Requireable<boolean>;
|
|
20
|
-
role: PropTypes.Requireable<string>;
|
|
21
|
-
roles: PropTypes.Requireable<(PropTypes.InferProps<{
|
|
22
|
-
value: PropTypes.Validator<string>;
|
|
23
|
-
label: PropTypes.Validator<string>;
|
|
24
|
-
}> | null)[]>;
|
|
25
|
-
canChangeRole: PropTypes.Requireable<boolean>;
|
|
26
|
-
canRemove: PropTypes.Requireable<boolean>;
|
|
27
|
-
removeIcon: PropTypes.Requireable<object>;
|
|
28
|
-
removeLabel: PropTypes.Requireable<string>;
|
|
29
|
-
action: PropTypes.Requireable<PropTypes.InferProps<{
|
|
30
|
-
label: PropTypes.Validator<string>;
|
|
31
|
-
onClick: PropTypes.Validator<(...args: any[]) => any>;
|
|
32
|
-
}>>;
|
|
33
|
-
isPending: PropTypes.Requireable<boolean>;
|
|
34
|
-
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
35
|
-
data: PropTypes.Requireable<any>;
|
|
36
|
-
}>>;
|
|
37
|
-
const value: PropTypes.Validator<string>;
|
|
38
|
-
const roles: PropTypes.Validator<(PropTypes.InferProps<{
|
|
10
|
+
export { memberPropType as member };
|
|
11
|
+
export const value: PropTypes.Validator<string>;
|
|
12
|
+
export const roles: PropTypes.Validator<(PropTypes.InferProps<{
|
|
39
13
|
value: PropTypes.Validator<string>;
|
|
40
14
|
label: PropTypes.Validator<string>;
|
|
41
15
|
}> | null)[]>;
|
|
42
|
-
const onChange: PropTypes.Validator<(...args: any[]) => any>;
|
|
16
|
+
export const onChange: PropTypes.Validator<(...args: any[]) => any>;
|
|
43
17
|
}
|
|
44
18
|
}
|
|
19
|
+
import { memberPropType } from "./propTypes";
|
|
45
20
|
import PropTypes from "prop-types";
|
|
@@ -32,6 +32,7 @@ var MemberRoleMenu = function MemberRoleMenu(_ref) {
|
|
|
32
32
|
var label = (_roles$find = roles.find(function (role) {
|
|
33
33
|
return role.value === value;
|
|
34
34
|
})) === null || _roles$find === void 0 ? void 0 : _roles$find.label;
|
|
35
|
+
var isHeaderShown = isMobile && member !== undefined;
|
|
35
36
|
|
|
36
37
|
var handleRoleClick = function handleRoleClick(role) {
|
|
37
38
|
if (role.value !== value) onChange(role.value);
|
|
@@ -62,7 +63,7 @@ var MemberRoleMenu = function MemberRoleMenu(_ref) {
|
|
|
62
63
|
onClose: function onClose() {
|
|
63
64
|
return setMenuDisplayed(false);
|
|
64
65
|
}
|
|
65
|
-
},
|
|
66
|
+
}, isHeaderShown && /*#__PURE__*/React.createElement(MemberRoleMenuHeader, {
|
|
66
67
|
member: member
|
|
67
68
|
}), roles.map(function (role) {
|
|
68
69
|
return /*#__PURE__*/React.createElement(ActionsMenuItem, {
|
|
@@ -79,7 +80,8 @@ var MemberRoleMenu = function MemberRoleMenu(_ref) {
|
|
|
79
80
|
};
|
|
80
81
|
|
|
81
82
|
MemberRoleMenu.propTypes = {
|
|
82
|
-
|
|
83
|
+
/** Member shown in the header of the menu on mobile */
|
|
84
|
+
member: memberPropType,
|
|
83
85
|
value: PropTypes.string.isRequired,
|
|
84
86
|
roles: rolesPropType.isRequired,
|
|
85
87
|
onChange: PropTypes.func.isRequired
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { useI18n } from 'twake-i18n';
|
|
2
|
+
import { useI18n, useExtendI18n } from 'twake-i18n';
|
|
3
3
|
import MemberAvatar from "cozy-ui/transpiled/react/MemberRow/MemberAvatar";
|
|
4
4
|
import MemberGroupAvatar from "cozy-ui/transpiled/react/MemberRow/MemberGroupAvatar";
|
|
5
|
+
import { locales } from "cozy-ui/transpiled/react/MemberRow/locales";
|
|
5
6
|
import { memberPropType } from "cozy-ui/transpiled/react/MemberRow/propTypes";
|
|
6
7
|
import ActionsMenuMobileHeader from "cozy-ui/transpiled/react/ActionsMenu/ActionsMenuMobileHeader";
|
|
7
8
|
import ListItemIcon from "cozy-ui/transpiled/react/ListItemIcon";
|
|
@@ -9,6 +10,7 @@ import ListItemText from "cozy-ui/transpiled/react/ListItemText";
|
|
|
9
10
|
|
|
10
11
|
var MemberRoleMenuHeader = function MemberRoleMenuHeader(_ref) {
|
|
11
12
|
var member = _ref.member;
|
|
13
|
+
useExtendI18n(locales);
|
|
12
14
|
|
|
13
15
|
var _useI18n = useI18n(),
|
|
14
16
|
t = _useI18n.t;
|