@linagora/twake-mui 4.2.0 → 4.3.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 +14 -0
- package/README.md +1 -1
- package/dist/components/Chip/index.d.ts +8 -0
- package/dist/components/Chip/index.js +11 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/lib/makeLightOverrides.js +9 -0
- package/dist/stories/Chip.stories.d.ts +7 -0
- package/dist/stories/Chip.stories.js +100 -0
- package/package.json +7 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## @linagora/twake-mui [4.3.1](https://github.com/linagora/twake-ui/compare/@linagora/twake-mui@4.3.0...@linagora/twake-mui@4.3.1) (2026-08-31)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Dependencies
|
|
5
|
+
|
|
6
|
+
* **@linagora/twake-icons:** upgraded to 2.10.0
|
|
7
|
+
|
|
8
|
+
# @linagora/twake-mui [4.3.0](https://github.com/linagora/twake-ui/compare/@linagora/twake-mui@4.2.0...@linagora/twake-mui@4.3.0) (2026-08-27)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* Override chip component ([70b6e72](https://github.com/linagora/twake-ui/commit/70b6e720bff2e672940ef01963877671de531121))
|
|
14
|
+
|
|
1
15
|
# @linagora/twake-mui [4.2.0](https://github.com/linagora/twake-ui/compare/@linagora/twake-mui@4.1.1...@linagora/twake-mui@4.2.0) (2026-08-27)
|
|
2
16
|
|
|
3
17
|
|
package/README.md
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Icon, CrossSmall } from '@linagora/twake-icons';
|
|
2
|
+
import { Box, Chip as MuiChip, IconButton } from '@mui/material';
|
|
3
|
+
import cx from 'classnames';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
export const Chip = ({ className, deleteIcon = (React.createElement(IconButton, null,
|
|
6
|
+
React.createElement(Icon, { icon: CrossSmall }))), label, endIcon, square = false, ...props }) => {
|
|
7
|
+
return (React.createElement(MuiChip, { className: cx(className, { square }), deleteIcon: deleteIcon, label: endIcon ? (React.createElement(Box, { component: "span", sx: { display: 'flex', alignItems: 'center', gap: 1 } },
|
|
8
|
+
label,
|
|
9
|
+
React.createElement("span", null, endIcon))) : (label), ...props }));
|
|
10
|
+
};
|
|
11
|
+
export default Chip;
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,9 @@ export { theme } from './lib/theme';
|
|
|
7
7
|
export { radius } from './lib/radius';
|
|
8
8
|
export { TwakeMuiThemeProvider } from './components/ThemeProvider';
|
|
9
9
|
export { Avatar, default as AvatarDefault } from './components/Avatar';
|
|
10
|
+
export { default as Chip } from './components/Chip';
|
|
10
11
|
export { nameToColor, supportedColors } from './components/Avatar/helpers';
|
|
11
12
|
export { default as AccordionExpandIcon } from './components/AccordionExpandIcon';
|
|
12
13
|
export type { TwakeTheme } from './lib/theme';
|
|
13
14
|
export type { AvatarProps } from './components/Avatar';
|
|
15
|
+
export type { ChipProps } from './components/Chip';
|
package/dist/index.js
CHANGED
|
@@ -10,5 +10,6 @@ export { radius } from './lib/radius';
|
|
|
10
10
|
// COMPONENTS & HELPERS
|
|
11
11
|
export { TwakeMuiThemeProvider } from './components/ThemeProvider';
|
|
12
12
|
export { Avatar, default as AvatarDefault } from './components/Avatar';
|
|
13
|
+
export { default as Chip } from './components/Chip';
|
|
13
14
|
export { nameToColor, supportedColors } from './components/Avatar/helpers';
|
|
14
15
|
export { default as AccordionExpandIcon } from './components/AccordionExpandIcon';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { Chip } from '../components/Chip';
|
|
3
|
+
declare const meta: Meta<typeof Chip>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const Screenshot: Story;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/* eslint-disable no-console */
|
|
2
|
+
import { Icon, FileOutline, Openwith, Right } from '@linagora/twake-icons';
|
|
3
|
+
import { Avatar, Grid, Stack, Typography, IconButton } from '@mui/material';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import { Chip } from '../components/Chip';
|
|
6
|
+
const meta = {
|
|
7
|
+
title: 'Chip',
|
|
8
|
+
component: Chip,
|
|
9
|
+
parameters: { layout: 'centered' },
|
|
10
|
+
tags: ['autodocs'],
|
|
11
|
+
argTypes: {
|
|
12
|
+
color: {
|
|
13
|
+
control: 'select',
|
|
14
|
+
options: [
|
|
15
|
+
'default',
|
|
16
|
+
'primary',
|
|
17
|
+
'secondary',
|
|
18
|
+
'error',
|
|
19
|
+
'warning',
|
|
20
|
+
'success'
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
variant: {
|
|
24
|
+
control: 'select',
|
|
25
|
+
options: ['filled', 'outlined']
|
|
26
|
+
},
|
|
27
|
+
disabled: {
|
|
28
|
+
control: 'boolean'
|
|
29
|
+
},
|
|
30
|
+
size: {
|
|
31
|
+
control: 'select',
|
|
32
|
+
options: ['small', 'medium']
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
export default meta;
|
|
37
|
+
export const Default = {
|
|
38
|
+
args: {
|
|
39
|
+
color: 'default',
|
|
40
|
+
variant: 'filled',
|
|
41
|
+
label: 'Chip Content'
|
|
42
|
+
},
|
|
43
|
+
render: args => React.createElement(Chip, { ...args })
|
|
44
|
+
};
|
|
45
|
+
export const Screenshot = {
|
|
46
|
+
tags: ['argos'],
|
|
47
|
+
render: () => {
|
|
48
|
+
const colors = [
|
|
49
|
+
'default',
|
|
50
|
+
'primary',
|
|
51
|
+
'secondary',
|
|
52
|
+
'success',
|
|
53
|
+
'error',
|
|
54
|
+
'warning',
|
|
55
|
+
'info'
|
|
56
|
+
];
|
|
57
|
+
const variants = ['filled', 'outlined'];
|
|
58
|
+
const squareProps = [false, true];
|
|
59
|
+
const sizeProps = ['small', 'medium'];
|
|
60
|
+
return (React.createElement(Stack, { spacing: 4 }, sizeProps.map(size => (React.createElement("div", { key: size },
|
|
61
|
+
React.createElement(Typography, { variant: "h3", sx: { mb: 2 } }, size),
|
|
62
|
+
squareProps.map(square => (React.createElement("div", { key: String(square) },
|
|
63
|
+
React.createElement(Typography, { variant: "h4", sx: { mb: 2 } }, square ? 'Square' : 'Rounded'),
|
|
64
|
+
colors.map(color => (React.createElement("div", { key: color },
|
|
65
|
+
React.createElement(Typography, { variant: "h4", sx: { textTransform: 'capitalize', mt: 2 } }, color),
|
|
66
|
+
React.createElement(Grid, { container: true, spacing: 4 }, variants.map(variant => (React.createElement(Grid, { key: variant, size: { xs: 12, sm: 6 } },
|
|
67
|
+
React.createElement(Stack, { spacing: 2 },
|
|
68
|
+
React.createElement(Typography, { variant: "h6", sx: { textTransform: 'capitalize' } }, variant),
|
|
69
|
+
React.createElement(Stack, { spacing: 1 },
|
|
70
|
+
React.createElement(Typography, { variant: "caption", sx: { color: 'text.secondary' } }, "default"),
|
|
71
|
+
React.createElement("div", null,
|
|
72
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Simple Chip", square: square, size: size })),
|
|
73
|
+
React.createElement("div", null,
|
|
74
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Clickable Chip", clickable: true, onClick: () => console.info('click'), square: square, size: size })),
|
|
75
|
+
React.createElement("div", null,
|
|
76
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Deletable chip", onDelete: () => console.info('delete'), square: square, size: size })),
|
|
77
|
+
React.createElement("div", null,
|
|
78
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Chip with Icon", icon: React.createElement(Icon, { icon: FileOutline }), square: square, size: size })),
|
|
79
|
+
React.createElement("div", null,
|
|
80
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Deletable chip with icon", icon: React.createElement(Icon, { icon: FileOutline }), onDelete: () => console.info('delete'), square: square, size: size })),
|
|
81
|
+
React.createElement("div", null,
|
|
82
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Avatar Chip", avatar: React.createElement(Avatar, null, "M"), square: square, size: size })),
|
|
83
|
+
React.createElement("div", null,
|
|
84
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Action chip", avatar: React.createElement(Avatar, null, "M"), deleteIcon: React.createElement(IconButton, null,
|
|
85
|
+
React.createElement(Icon, { icon: Right })), endIcon: React.createElement(IconButton, { sx: {
|
|
86
|
+
color: color === 'default'
|
|
87
|
+
? `${color}.main`
|
|
88
|
+
: `inherit`
|
|
89
|
+
}, onClick: () => console.info('end adornment clicked') },
|
|
90
|
+
React.createElement(Icon, { icon: Openwith })), onDelete: () => console.info('delete'), square: square, size: size }))),
|
|
91
|
+
React.createElement(Stack, { spacing: 1 },
|
|
92
|
+
React.createElement(Typography, { variant: "caption", sx: { color: 'text.secondary' } }, "disabled"),
|
|
93
|
+
React.createElement("div", null,
|
|
94
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Chip Content", disabled: true, square: square, size: size })),
|
|
95
|
+
React.createElement("div", null,
|
|
96
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Chip Content", onDelete: () => { }, disabled: true, square: square, size: size })),
|
|
97
|
+
React.createElement("div", null,
|
|
98
|
+
React.createElement(Chip, { color: color, variant: variant, label: "Chip Content", icon: React.createElement(Icon, { icon: FileOutline }), disabled: true, square: square, size: size })))))))))))))))))));
|
|
99
|
+
}
|
|
100
|
+
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@linagora/twake-mui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.3.1",
|
|
5
5
|
"description": "MUI v9 theme system for Twake applications",
|
|
6
6
|
"author": "Twake",
|
|
7
7
|
"license": "MIT",
|
|
@@ -50,18 +50,21 @@
|
|
|
50
50
|
"peerDependencies": {
|
|
51
51
|
"@emotion/react": "^11.5.0",
|
|
52
52
|
"@emotion/styled": "^11.3.0",
|
|
53
|
-
"@linagora/twake-icons": "2.
|
|
53
|
+
"@linagora/twake-icons": "2.10.0",
|
|
54
54
|
"@mui/lab": "^9.0.0-beta.6",
|
|
55
55
|
"@mui/material": "^9.2.0",
|
|
56
56
|
"react": "^18",
|
|
57
57
|
"react-dom": "^18"
|
|
58
58
|
},
|
|
59
|
+
"dependencies": {
|
|
60
|
+
"classnames": "^2.5.1"
|
|
61
|
+
},
|
|
59
62
|
"devDependencies": {
|
|
60
63
|
"@argos-ci/cli": "4.2.0",
|
|
61
64
|
"@argos-ci/storybook": "5.3.2",
|
|
62
65
|
"@emotion/react": "^11.5.0",
|
|
63
66
|
"@emotion/styled": "^11.3.0",
|
|
64
|
-
"@linagora/twake-icons": "2.
|
|
67
|
+
"@linagora/twake-icons": "2.10.0",
|
|
65
68
|
"@mui/icons-material": "^9.2.0",
|
|
66
69
|
"@mui/lab": "^9.0.0-beta.6",
|
|
67
70
|
"@mui/material": "^9.2.0",
|
|
@@ -70,6 +73,7 @@
|
|
|
70
73
|
"@storybook/builder-vite": "10.3.5",
|
|
71
74
|
"@storybook/react": "10.3.5",
|
|
72
75
|
"@storybook/react-vite": "10.3.5",
|
|
76
|
+
"@types/classnames": "^2.3.1",
|
|
73
77
|
"@types/lodash": "4.17.24",
|
|
74
78
|
"@types/react": "18.2.0",
|
|
75
79
|
"@types/react-dom": "^18.2.0",
|