@moderneinc/neo-styled-components 2.6.0-next.d5f203 → 2.6.0-next.e7eb6e
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/dist/ListItemButton/ListItemButton.d.ts +1 -1
- package/dist/MarketplaceCard/MarketplaceCard.d.ts +2 -2
- package/dist/MarketplaceLargeCard/MarketplaceLargeCard.d.ts +2 -2
- package/dist/StatusBanner/StatusBanner.d.ts +4 -4
- package/dist/index.d.ts +7 -7
- package/dist/index.esm.js +86 -82
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +85 -81
- package/dist/index.js.map +1 -1
- package/dist/utils/focusRing.d.ts +3 -3
- package/package.json +1 -1
|
@@ -48,7 +48,7 @@ export interface NeoListItemButtonProps extends ListItemButtonProps {
|
|
|
48
48
|
* - showIcon → Conditional rendering of ListItemIcon child
|
|
49
49
|
*
|
|
50
50
|
* Design Tokens Used:
|
|
51
|
-
* - semanticColors.
|
|
51
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active border
|
|
52
52
|
* - semanticColors.border.primary (#d1d5db) - Default/disabled border
|
|
53
53
|
* - semanticColors.icons.default (#1f2937) - Active icon color
|
|
54
54
|
* - semanticColors.icons.disabled (#d1d5db) - Deselected/disabled icon color
|
|
@@ -68,8 +68,8 @@ export interface NeoMarketplaceCardProps extends Omit<CardProps, 'children' | 't
|
|
|
68
68
|
* Design Tokens Used:
|
|
69
69
|
* - semanticColors.surfaces.card (#FFFFFF) - Default card background
|
|
70
70
|
* - semanticColors.status.info.light (#f2f3ff) - Active/focused card background
|
|
71
|
-
* - semanticColors.border.
|
|
72
|
-
* - semanticColors.
|
|
71
|
+
* - semanticColors.border.primary (#d1d5db) - Default border
|
|
72
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active/focused border
|
|
73
73
|
* - shadows.focusWhite1 - Inner white focus ring (2px spread)
|
|
74
74
|
* - shadows.focusBlue2 - Outer blue focus ring (4px spread)
|
|
75
75
|
* - colors.grey[800] (#1F2937) - Text color
|
|
@@ -77,8 +77,8 @@ export interface NeoMarketplaceLargeCardProps extends Omit<CardProps, 'children'
|
|
|
77
77
|
* Design Tokens Used:
|
|
78
78
|
* - semanticColors.surfaces.card (#ffffff) - Light theme background
|
|
79
79
|
* - colors.grey[800] (#1f2937) - Dark theme background
|
|
80
|
-
* - semanticColors.border.
|
|
81
|
-
* - semanticColors.
|
|
80
|
+
* - semanticColors.border.primary (#d1d5db) - Default border (50% opacity on dark)
|
|
81
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active/focused border (light theme)
|
|
82
82
|
* - colors.digitalGreen[300] (#88fe9b) - Active/focused border (dark theme)
|
|
83
83
|
* - borderRadius.xS (4px) - Corner radius
|
|
84
84
|
* - shadows.focusWhite1 + shadows.focusBlue2 - Focus ring
|
|
@@ -38,10 +38,10 @@ export interface NeoStatusBannerProps extends Omit<AlertProps, 'severity' | 'var
|
|
|
38
38
|
* - Mode (Light|Dark) → variant ('outlined'|'filled')
|
|
39
39
|
*
|
|
40
40
|
* Design Tokens Used:
|
|
41
|
-
* - status.success.light, status.success.
|
|
42
|
-
* - status.error.light, status.error.
|
|
43
|
-
* - status.neutral.light, status.neutral.
|
|
44
|
-
* - status.info.light, status.info.
|
|
41
|
+
* - status.success.light, status.success.default
|
|
42
|
+
* - status.error.light, status.error.default
|
|
43
|
+
* - status.neutral.light, status.neutral.default
|
|
44
|
+
* - status.info.light, status.info.default
|
|
45
45
|
* - typography.tooltip, typography.bodySecondary
|
|
46
46
|
* - grey[800]
|
|
47
47
|
* - fontSize.default, fontSize.sm
|
package/dist/index.d.ts
CHANGED
|
@@ -2167,10 +2167,10 @@ interface NeoStatusBannerProps extends Omit<AlertProps, 'severity' | 'variant'>
|
|
|
2167
2167
|
* - Mode (Light|Dark) → variant ('outlined'|'filled')
|
|
2168
2168
|
*
|
|
2169
2169
|
* Design Tokens Used:
|
|
2170
|
-
* - status.success.light, status.success.
|
|
2171
|
-
* - status.error.light, status.error.
|
|
2172
|
-
* - status.neutral.light, status.neutral.
|
|
2173
|
-
* - status.info.light, status.info.
|
|
2170
|
+
* - status.success.light, status.success.default
|
|
2171
|
+
* - status.error.light, status.error.default
|
|
2172
|
+
* - status.neutral.light, status.neutral.default
|
|
2173
|
+
* - status.info.light, status.info.default
|
|
2174
2174
|
* - typography.tooltip, typography.bodySecondary
|
|
2175
2175
|
* - grey[800]
|
|
2176
2176
|
* - fontSize.default, fontSize.sm
|
|
@@ -2606,7 +2606,7 @@ interface NeoListItemButtonProps extends ListItemButtonProps {
|
|
|
2606
2606
|
* - showIcon → Conditional rendering of ListItemIcon child
|
|
2607
2607
|
*
|
|
2608
2608
|
* Design Tokens Used:
|
|
2609
|
-
* - semanticColors.
|
|
2609
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active border
|
|
2610
2610
|
* - semanticColors.border.primary (#d1d5db) - Default/disabled border
|
|
2611
2611
|
* - semanticColors.icons.default (#1f2937) - Active icon color
|
|
2612
2612
|
* - semanticColors.icons.disabled (#d1d5db) - Deselected/disabled icon color
|
|
@@ -2767,8 +2767,8 @@ interface NeoMarketplaceCardProps extends Omit<CardProps, 'children' | 'title'>
|
|
|
2767
2767
|
* Design Tokens Used:
|
|
2768
2768
|
* - semanticColors.surfaces.card (#FFFFFF) - Default card background
|
|
2769
2769
|
* - semanticColors.status.info.light (#f2f3ff) - Active/focused card background
|
|
2770
|
-
* - semanticColors.border.
|
|
2771
|
-
* - semanticColors.
|
|
2770
|
+
* - semanticColors.border.primary (#d1d5db) - Default border
|
|
2771
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active/focused border
|
|
2772
2772
|
* - shadows.focusWhite1 - Inner white focus ring (2px spread)
|
|
2773
2773
|
* - shadows.focusBlue2 - Outer blue focus ring (4px spread)
|
|
2774
2774
|
* - colors.grey[800] (#1F2937) - Text color
|
package/dist/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { semanticColors, colors, spacing, typography, borderRadius, shadows } from '@moderneinc/neo-design';
|
|
3
3
|
import Box from '@mui/material/Box';
|
|
4
4
|
import { styled, alpha } from '@mui/material/styles';
|
|
5
5
|
import Avatar from '@mui/material/Avatar';
|
|
@@ -63,14 +63,14 @@ import { TreeItem, treeItemClasses } from '@mui/x-tree-view/TreeItem';
|
|
|
63
63
|
import { RichTreeViewPro } from '@mui/x-tree-view-pro/RichTreeViewPro';
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
|
-
* Outline-based focus ring styles derived from Neo
|
|
66
|
+
* Outline-based focus ring styles derived from Neo border tokens.
|
|
67
67
|
* Uses CSS outline (not box-shadow) so focus rings are never clipped by overflow:hidden.
|
|
68
68
|
*
|
|
69
|
-
* Produces a double-ring effect: a white inner gap (via outline-offset) and a
|
|
69
|
+
* Produces a double-ring effect: a white inner gap (via outline-offset) and a colored outer ring.
|
|
70
70
|
*/
|
|
71
71
|
const focusRingStyles = {
|
|
72
|
-
outline:
|
|
73
|
-
outlineOffset:
|
|
72
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
73
|
+
outlineOffset: '2px',
|
|
74
74
|
};
|
|
75
75
|
|
|
76
76
|
// biome-ignore lint/suspicious/noExplicitAny: Type cast required to override MUI Avatar variant type without global augmentation
|
|
@@ -218,7 +218,7 @@ const StyledChip$2 = styled(Chip)(({ theme }) => ({
|
|
|
218
218
|
[`&.${chipClasses.colorDefault}`]: {
|
|
219
219
|
backgroundColor: semanticColors.status.neutral.light,
|
|
220
220
|
color: semanticColors.status.neutral.dark,
|
|
221
|
-
border: `1px solid ${semanticColors.status.neutral.
|
|
221
|
+
border: `1px solid ${semanticColors.status.neutral.default}80`,
|
|
222
222
|
[`& .${chipClasses.icon}, & .${chipClasses.deleteIcon}`]: {
|
|
223
223
|
color: semanticColors.status.neutral.dark,
|
|
224
224
|
},
|
|
@@ -227,7 +227,7 @@ const StyledChip$2 = styled(Chip)(({ theme }) => ({
|
|
|
227
227
|
[`&.${chipClasses.colorError}`]: {
|
|
228
228
|
backgroundColor: semanticColors.status.error.light,
|
|
229
229
|
color: semanticColors.status.error.dark,
|
|
230
|
-
border: `1px solid ${semanticColors.status.error.
|
|
230
|
+
border: `1px solid ${semanticColors.status.error.default}80`,
|
|
231
231
|
[`& .${chipClasses.icon}, & .${chipClasses.deleteIcon}`]: {
|
|
232
232
|
color: semanticColors.status.error.dark,
|
|
233
233
|
},
|
|
@@ -236,7 +236,7 @@ const StyledChip$2 = styled(Chip)(({ theme }) => ({
|
|
|
236
236
|
[`&.${chipClasses.colorWarning}`]: {
|
|
237
237
|
backgroundColor: semanticColors.status.warning.light,
|
|
238
238
|
color: semanticColors.status.warning.dark,
|
|
239
|
-
border: `1px solid ${semanticColors.status.warning.
|
|
239
|
+
border: `1px solid ${semanticColors.status.warning.default}80`,
|
|
240
240
|
[`& .${chipClasses.icon}, & .${chipClasses.deleteIcon}`]: {
|
|
241
241
|
color: semanticColors.status.warning.dark,
|
|
242
242
|
},
|
|
@@ -245,7 +245,7 @@ const StyledChip$2 = styled(Chip)(({ theme }) => ({
|
|
|
245
245
|
[`&.${chipClasses.colorSuccess}`]: {
|
|
246
246
|
backgroundColor: semanticColors.status.success.light,
|
|
247
247
|
color: semanticColors.status.success.dark,
|
|
248
|
-
border: `1px solid ${semanticColors.status.success.
|
|
248
|
+
border: `1px solid ${semanticColors.status.success.default}80`,
|
|
249
249
|
[`& .${chipClasses.icon}, & .${chipClasses.deleteIcon}`]: {
|
|
250
250
|
color: semanticColors.status.success.dark,
|
|
251
251
|
},
|
|
@@ -254,7 +254,7 @@ const StyledChip$2 = styled(Chip)(({ theme }) => ({
|
|
|
254
254
|
[`&.${chipClasses.colorInfo}`]: {
|
|
255
255
|
backgroundColor: semanticColors.status.info.light,
|
|
256
256
|
color: semanticColors.status.info.dark,
|
|
257
|
-
border: `1px solid ${semanticColors.status.info.
|
|
257
|
+
border: `1px solid ${semanticColors.status.info.default}80`,
|
|
258
258
|
[`& .${chipClasses.icon}, & .${chipClasses.deleteIcon}`]: {
|
|
259
259
|
color: semanticColors.status.info.dark,
|
|
260
260
|
},
|
|
@@ -1065,13 +1065,13 @@ const NeoBanner = ({ variant = 'light', message, messagePosition = 'left', linkT
|
|
|
1065
1065
|
return semanticColors.surfaces.white;
|
|
1066
1066
|
}
|
|
1067
1067
|
if (variant === 'success') {
|
|
1068
|
-
return semanticColors.status.success.
|
|
1068
|
+
return semanticColors.status.success.default;
|
|
1069
1069
|
}
|
|
1070
1070
|
if (variant === 'error') {
|
|
1071
|
-
return semanticColors.status.error.
|
|
1071
|
+
return semanticColors.status.error.default;
|
|
1072
1072
|
}
|
|
1073
1073
|
if (variant === 'warning') {
|
|
1074
|
-
return semanticColors.status.warning.
|
|
1074
|
+
return semanticColors.status.warning.default;
|
|
1075
1075
|
}
|
|
1076
1076
|
return colors.grey['800'];
|
|
1077
1077
|
};
|
|
@@ -1103,7 +1103,7 @@ const StyledBreadcrumbLink = styled(Link, {
|
|
|
1103
1103
|
color: current ? semanticColors.buttons.tertiary.hover : semanticColors.icons.hover,
|
|
1104
1104
|
},
|
|
1105
1105
|
'&:focus-visible': {
|
|
1106
|
-
outline: `2px solid ${semanticColors.
|
|
1106
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1107
1107
|
outlineOffset: 2,
|
|
1108
1108
|
},
|
|
1109
1109
|
}));
|
|
@@ -1193,7 +1193,7 @@ const StyledButtonBase$1 = styled(ButtonBase, {
|
|
|
1193
1193
|
},
|
|
1194
1194
|
// Focus visible for keyboard navigation
|
|
1195
1195
|
[`&.${buttonBaseClasses.focusVisible}`]: {
|
|
1196
|
-
outline: `2px solid ${semanticColors.
|
|
1196
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1197
1197
|
outlineOffset: 2,
|
|
1198
1198
|
},
|
|
1199
1199
|
};
|
|
@@ -1233,7 +1233,7 @@ const StyledButtonBase$1 = styled(ButtonBase, {
|
|
|
1233
1233
|
: {
|
|
1234
1234
|
[`&.${buttonBaseClasses.disabled}`]: {
|
|
1235
1235
|
backgroundColor: semanticColors.buttons.secondary.disabledBackground,
|
|
1236
|
-
borderColor: semanticColors.
|
|
1236
|
+
borderColor: semanticColors.border.secondary,
|
|
1237
1237
|
color: semanticColors.typography.button.disabled,
|
|
1238
1238
|
},
|
|
1239
1239
|
}),
|
|
@@ -1378,7 +1378,7 @@ const StyledButtonTab = styled(MuiToggleButton)(({ theme }) => ({
|
|
|
1378
1378
|
color: semanticColors.typography.tab.active,
|
|
1379
1379
|
},
|
|
1380
1380
|
'&.Mui-focusVisible': {
|
|
1381
|
-
outline: `2px solid ${semanticColors.
|
|
1381
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1382
1382
|
outlineOffset: -2,
|
|
1383
1383
|
borderRadius: borderRadius.xXS,
|
|
1384
1384
|
},
|
|
@@ -1479,7 +1479,7 @@ const StyledButtonTabGroup = styled(MuiToggleButtonGroup)(({ theme, size = 'medi
|
|
|
1479
1479
|
},
|
|
1480
1480
|
// Focus visible for keyboard navigation
|
|
1481
1481
|
'&.Mui-focusVisible': {
|
|
1482
|
-
outline: `2px solid ${semanticColors.
|
|
1482
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1483
1483
|
outlineOffset: -2,
|
|
1484
1484
|
zIndex: 1,
|
|
1485
1485
|
},
|
|
@@ -1599,7 +1599,7 @@ const StyledCheckbox = styled(Checkbox, {
|
|
|
1599
1599
|
height: config.size,
|
|
1600
1600
|
padding: 0,
|
|
1601
1601
|
marginTop: size === 'xs' ? 3 : 2,
|
|
1602
|
-
color: semanticColors.border.
|
|
1602
|
+
color: semanticColors.border.primary,
|
|
1603
1603
|
flexShrink: 0,
|
|
1604
1604
|
// Root element
|
|
1605
1605
|
[`&.${checkboxClasses.root}`]: {
|
|
@@ -1622,20 +1622,20 @@ const StyledCheckbox = styled(Checkbox, {
|
|
|
1622
1622
|
},
|
|
1623
1623
|
// Disabled state
|
|
1624
1624
|
[`&.${checkboxClasses.disabled}`]: {
|
|
1625
|
-
color: semanticColors.border.
|
|
1625
|
+
color: semanticColors.border.primary,
|
|
1626
1626
|
cursor: 'not-allowed',
|
|
1627
1627
|
// When checked and disabled
|
|
1628
1628
|
[`&.${checkboxClasses.checked}`]: {
|
|
1629
|
-
color: semanticColors.border.
|
|
1629
|
+
color: semanticColors.border.primary,
|
|
1630
1630
|
},
|
|
1631
1631
|
// When indeterminate and disabled
|
|
1632
1632
|
[`&.${checkboxClasses.indeterminate}`]: {
|
|
1633
|
-
color: semanticColors.border.
|
|
1633
|
+
color: semanticColors.border.primary,
|
|
1634
1634
|
},
|
|
1635
1635
|
},
|
|
1636
1636
|
// Focus visible for keyboard navigation
|
|
1637
1637
|
'&.Mui-focusVisible': {
|
|
1638
|
-
outline: `2px solid ${semanticColors.
|
|
1638
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1639
1639
|
outlineOffset: 2,
|
|
1640
1640
|
borderRadius: config.borderRadius,
|
|
1641
1641
|
},
|
|
@@ -1765,7 +1765,7 @@ const StyledButtonBase = styled(ButtonBase, {
|
|
|
1765
1765
|
cursor: 'text',
|
|
1766
1766
|
// Focus visible for keyboard navigation
|
|
1767
1767
|
[`&.${buttonBaseClasses.focusVisible}`]: {
|
|
1768
|
-
outline: `2px solid ${semanticColors.
|
|
1768
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
1769
1769
|
outlineOffset: 2,
|
|
1770
1770
|
},
|
|
1771
1771
|
};
|
|
@@ -1836,7 +1836,7 @@ const StyledSearchField = styled(TextField)(({ theme }) => ({
|
|
|
1836
1836
|
fontSize: theme.typography.pxToRem(typography.fontSize.default),
|
|
1837
1837
|
borderRadius: borderRadius.input,
|
|
1838
1838
|
backgroundColor: semanticColors.input.background,
|
|
1839
|
-
border: `1px solid ${semanticColors.border.
|
|
1839
|
+
border: `1px solid ${semanticColors.border.primary}`,
|
|
1840
1840
|
paddingTop: spacing.spacing_1,
|
|
1841
1841
|
paddingBottom: spacing.spacing_1,
|
|
1842
1842
|
paddingLeft: spacing.spacing_1_1_2,
|
|
@@ -2093,11 +2093,11 @@ const ChevronDownIcon = (props) => (jsx(ChevronDown, { ...props, size: spacing.s
|
|
|
2093
2093
|
const StyledSelect = styled(MuiSelect)({
|
|
2094
2094
|
minHeight: spacing.spacing_5,
|
|
2095
2095
|
backgroundColor: semanticColors.input.background,
|
|
2096
|
-
border: `1px solid ${semanticColors.border.
|
|
2096
|
+
border: `1px solid ${semanticColors.border.primary}`,
|
|
2097
2097
|
borderRadius: `${borderRadius.input}px`,
|
|
2098
2098
|
'&:hover': {
|
|
2099
2099
|
backgroundColor: semanticColors.input.hoverBackground,
|
|
2100
|
-
borderColor: semanticColors.border.
|
|
2100
|
+
borderColor: semanticColors.border.primary,
|
|
2101
2101
|
},
|
|
2102
2102
|
'&.Mui-focused': {
|
|
2103
2103
|
backgroundColor: semanticColors.input.background,
|
|
@@ -2213,7 +2213,7 @@ const StyledGridFilterPanel = styled(GridFilterPanel)({
|
|
|
2213
2213
|
position: 'relative',
|
|
2214
2214
|
minHeight: spacing.spacing_5,
|
|
2215
2215
|
backgroundColor: semanticColors.input.background,
|
|
2216
|
-
border: `1px solid ${semanticColors.border.
|
|
2216
|
+
border: `1px solid ${semanticColors.border.primary}`,
|
|
2217
2217
|
borderRadius: `${borderRadius.input}px`,
|
|
2218
2218
|
fontSize: typography.fontSize.default,
|
|
2219
2219
|
fontWeight: typography.fontWeight.regular,
|
|
@@ -2221,11 +2221,11 @@ const StyledGridFilterPanel = styled(GridFilterPanel)({
|
|
|
2221
2221
|
},
|
|
2222
2222
|
[`& .${gridClasses.filterForm} .${inputBaseClasses.root}:hover`]: {
|
|
2223
2223
|
backgroundColor: semanticColors.input.hoverBackground,
|
|
2224
|
-
borderColor: semanticColors.border.
|
|
2224
|
+
borderColor: semanticColors.border.primary,
|
|
2225
2225
|
},
|
|
2226
2226
|
[`& .${gridClasses.filterForm} .${inputBaseClasses.root}.${inputBaseClasses.focused}`]: {
|
|
2227
2227
|
backgroundColor: semanticColors.input.background,
|
|
2228
|
-
borderColor: semanticColors.border.
|
|
2228
|
+
borderColor: semanticColors.border.primary,
|
|
2229
2229
|
},
|
|
2230
2230
|
[`& .${gridClasses.filterForm} .${inputBaseClasses.root}::before`]: {
|
|
2231
2231
|
display: 'none',
|
|
@@ -2649,11 +2649,11 @@ const outlinedColorStyles = {
|
|
|
2649
2649
|
},
|
|
2650
2650
|
};
|
|
2651
2651
|
const filledColorStyles = {
|
|
2652
|
-
default: semanticColors.status.neutral.
|
|
2653
|
-
error: semanticColors.status.error.
|
|
2654
|
-
warning: semanticColors.status.warning.
|
|
2655
|
-
success: semanticColors.status.success.
|
|
2656
|
-
info: semanticColors.status.info.
|
|
2652
|
+
default: semanticColors.status.neutral.default,
|
|
2653
|
+
error: semanticColors.status.error.default,
|
|
2654
|
+
warning: semanticColors.status.warning.default,
|
|
2655
|
+
success: semanticColors.status.success.default,
|
|
2656
|
+
info: semanticColors.status.info.default,
|
|
2657
2657
|
violet: colors.violet[500],
|
|
2658
2658
|
beta: colors.digitalBlue[300],
|
|
2659
2659
|
};
|
|
@@ -3261,7 +3261,7 @@ const StyledIconButton = styled(IconButton, {
|
|
|
3261
3261
|
},
|
|
3262
3262
|
// Focus visible for keyboard navigation
|
|
3263
3263
|
'&:focus-visible': {
|
|
3264
|
-
outline: `2px solid ${semanticColors.
|
|
3264
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
3265
3265
|
outlineOffset: 2,
|
|
3266
3266
|
},
|
|
3267
3267
|
};
|
|
@@ -3601,7 +3601,7 @@ const sizeMap = {
|
|
|
3601
3601
|
};
|
|
3602
3602
|
const StyledBadge = styled(Badge)(({ ownerState }) => {
|
|
3603
3603
|
const size = sizeMap[ownerState.size];
|
|
3604
|
-
const color = semanticColors.status[ownerState.color].
|
|
3604
|
+
const color = semanticColors.status[ownerState.color].default;
|
|
3605
3605
|
return {
|
|
3606
3606
|
[`& .${badgeClasses.badge}`]: {
|
|
3607
3607
|
width: size,
|
|
@@ -3629,7 +3629,7 @@ const StyledBadge = styled(Badge)(({ ownerState }) => {
|
|
|
3629
3629
|
*/
|
|
3630
3630
|
const NeoDot = ({ size = 'medium', variant = 'solid', color = 'neutral', ...props }) => {
|
|
3631
3631
|
const dotSize = sizeMap[size];
|
|
3632
|
-
const mediumColor = semanticColors.status[color].
|
|
3632
|
+
const mediumColor = semanticColors.status[color].default;
|
|
3633
3633
|
const lightColor = semanticColors.status[color].light;
|
|
3634
3634
|
// For outline variant, use SVG for precise control
|
|
3635
3635
|
const renderDot = () => {
|
|
@@ -4223,9 +4223,9 @@ const StyledInputBase = styled(InputBase, {
|
|
|
4223
4223
|
},
|
|
4224
4224
|
medium: {
|
|
4225
4225
|
height: spacing.spacing_5_1_2,
|
|
4226
|
-
padding: `${spacing.
|
|
4226
|
+
padding: `${spacing.spacing_1_1_4}px ${spacing.spacing_2}px ${spacing.spacing_1_1_4}px ${startAdornment ? 0 : spacing.spacing_2}px`,
|
|
4227
4227
|
fontSize: theme.typography.pxToRem(typography.fontSize.default),
|
|
4228
|
-
borderRadius:
|
|
4228
|
+
borderRadius: spacing.spacing_8,
|
|
4229
4229
|
},
|
|
4230
4230
|
};
|
|
4231
4231
|
const sizeStyles = sizeConfig[size];
|
|
@@ -4234,7 +4234,7 @@ const StyledInputBase = styled(InputBase, {
|
|
|
4234
4234
|
fontSize: sizeStyles.fontSize,
|
|
4235
4235
|
borderRadius: sizeStyles.borderRadius,
|
|
4236
4236
|
backgroundColor: semanticColors.input.background,
|
|
4237
|
-
border: `1px solid ${destructive ? semanticColors.status.error.
|
|
4237
|
+
border: `1px solid ${destructive ? semanticColors.status.error.default : semanticColors.border.primary}`,
|
|
4238
4238
|
transition: theme.transitions.create(['border-color', 'background-color'], {
|
|
4239
4239
|
duration: theme.transitions.duration.short,
|
|
4240
4240
|
}),
|
|
@@ -4248,19 +4248,21 @@ const StyledInputBase = styled(InputBase, {
|
|
|
4248
4248
|
// Hover state
|
|
4249
4249
|
'&:hover': {
|
|
4250
4250
|
backgroundColor: semanticColors.input.hoverBackground,
|
|
4251
|
-
borderColor: destructive
|
|
4251
|
+
borderColor: destructive
|
|
4252
|
+
? semanticColors.status.error.default
|
|
4253
|
+
: semanticColors.border.primary,
|
|
4252
4254
|
},
|
|
4253
4255
|
// Focused state
|
|
4254
4256
|
[`&.${inputBaseClasses.focused}`]: {
|
|
4255
4257
|
backgroundColor: semanticColors.input.background,
|
|
4256
4258
|
borderColor: destructive
|
|
4257
|
-
? semanticColors.status.error.
|
|
4259
|
+
? semanticColors.status.error.default
|
|
4258
4260
|
: semanticColors.buttons.primary.default,
|
|
4259
4261
|
},
|
|
4260
4262
|
// Disabled state
|
|
4261
4263
|
[`&.${inputBaseClasses.disabled}`]: {
|
|
4262
4264
|
backgroundColor: semanticColors.input.disabledBackground,
|
|
4263
|
-
borderColor: semanticColors.border.
|
|
4265
|
+
borderColor: semanticColors.border.primary,
|
|
4264
4266
|
color: semanticColors.icons.disabled,
|
|
4265
4267
|
[`& .${inputBaseClasses.input}`]: {
|
|
4266
4268
|
WebkitTextFillColor: semanticColors.icons.disabled,
|
|
@@ -4268,11 +4270,11 @@ const StyledInputBase = styled(InputBase, {
|
|
|
4268
4270
|
},
|
|
4269
4271
|
// Error state
|
|
4270
4272
|
[`&.${inputBaseClasses.error}`]: {
|
|
4271
|
-
borderColor: semanticColors.status.error.
|
|
4273
|
+
borderColor: semanticColors.status.error.default,
|
|
4272
4274
|
},
|
|
4273
4275
|
// Adornment styling
|
|
4274
4276
|
[`& .${inputAdornmentClasses.root}`]: {
|
|
4275
|
-
color: destructive ? semanticColors.status.error.
|
|
4277
|
+
color: destructive ? semanticColors.status.error.default : semanticColors.icons.placeholder,
|
|
4276
4278
|
},
|
|
4277
4279
|
};
|
|
4278
4280
|
});
|
|
@@ -4286,7 +4288,7 @@ const StyledFormHelperText = styled(FormHelperText, {
|
|
|
4286
4288
|
fontSize: theme.typography.pxToRem(typography.fontSize.sm),
|
|
4287
4289
|
color: semanticColors.typography.input.helper,
|
|
4288
4290
|
[`&.${formHelperTextClasses.error}`]: {
|
|
4289
|
-
color: semanticColors.status.error.
|
|
4291
|
+
color: semanticColors.status.error.default,
|
|
4290
4292
|
},
|
|
4291
4293
|
[`&.${formHelperTextClasses.disabled}`]: {
|
|
4292
4294
|
color: semanticColors.icons.disabled,
|
|
@@ -4586,7 +4588,7 @@ const StyledListItemButton = styled(ListItemButton)(({ theme }) => ({
|
|
|
4586
4588
|
transition: theme.transitions.create(['border', 'background-color']),
|
|
4587
4589
|
// Active (selected) state
|
|
4588
4590
|
[`&.${listItemButtonClasses.selected}`]: {
|
|
4589
|
-
border: `2px solid ${semanticColors.
|
|
4591
|
+
border: `2px solid ${semanticColors.buttons.primary.default}`,
|
|
4590
4592
|
backgroundColor: theme.palette.common.white,
|
|
4591
4593
|
'&:hover': {
|
|
4592
4594
|
backgroundColor: theme.palette.common.white,
|
|
@@ -4620,9 +4622,9 @@ const StyledListItemButton = styled(ListItemButton)(({ theme }) => ({
|
|
|
4620
4622
|
},
|
|
4621
4623
|
// Focus state
|
|
4622
4624
|
[`&.${listItemButtonClasses.focusVisible}`]: {
|
|
4623
|
-
outline: `2px solid ${semanticColors.
|
|
4625
|
+
outline: `2px solid ${semanticColors.buttons.primary.default}`,
|
|
4624
4626
|
outlineOffset: 2,
|
|
4625
|
-
border: `2px solid ${semanticColors.
|
|
4627
|
+
border: `2px solid ${semanticColors.buttons.primary.default}`,
|
|
4626
4628
|
backgroundColor: theme.palette.common.white,
|
|
4627
4629
|
[`& .${listItemIconClasses.root}`]: {
|
|
4628
4630
|
color: semanticColors.icons.default,
|
|
@@ -4681,7 +4683,7 @@ const StyledListItemButton = styled(ListItemButton)(({ theme }) => ({
|
|
|
4681
4683
|
* - showIcon → Conditional rendering of ListItemIcon child
|
|
4682
4684
|
*
|
|
4683
4685
|
* Design Tokens Used:
|
|
4684
|
-
* - semanticColors.
|
|
4686
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active border
|
|
4685
4687
|
* - semanticColors.border.primary (#d1d5db) - Default/disabled border
|
|
4686
4688
|
* - semanticColors.icons.default (#1f2937) - Active icon color
|
|
4687
4689
|
* - semanticColors.icons.disabled (#d1d5db) - Deselected/disabled icon color
|
|
@@ -4714,17 +4716,17 @@ const StyledCard = styled(MuiCard, {
|
|
|
4714
4716
|
flexDirection: 'column',
|
|
4715
4717
|
gap: theme.spacing(2), // 16px
|
|
4716
4718
|
backgroundColor: semanticColors.surfaces.card,
|
|
4717
|
-
border: `1px solid ${selected ? semanticColors.
|
|
4719
|
+
border: `1px solid ${selected ? semanticColors.buttons.primary.default : semanticColors.border.primary}`,
|
|
4718
4720
|
borderRadius: borderRadius.xS,
|
|
4719
4721
|
boxShadow: selected ? activeShadow$1 : 'none',
|
|
4720
4722
|
transition: theme.transitions.create(['border-color', 'background-color', 'box-shadow']),
|
|
4721
4723
|
cursor: 'pointer',
|
|
4722
4724
|
'&:hover': {
|
|
4723
|
-
borderColor: semanticColors.
|
|
4725
|
+
borderColor: semanticColors.buttons.primary.default,
|
|
4724
4726
|
boxShadow: activeShadow$1,
|
|
4725
4727
|
},
|
|
4726
4728
|
'&:focus-visible': {
|
|
4727
|
-
borderColor: semanticColors.
|
|
4729
|
+
borderColor: semanticColors.buttons.primary.default,
|
|
4728
4730
|
...focusRingStyles,
|
|
4729
4731
|
},
|
|
4730
4732
|
...(disabled && {
|
|
@@ -4828,8 +4830,8 @@ const Description$1 = styled('p')(({ theme }) => ({
|
|
|
4828
4830
|
* Design Tokens Used:
|
|
4829
4831
|
* - semanticColors.surfaces.card (#FFFFFF) - Default card background
|
|
4830
4832
|
* - semanticColors.status.info.light (#f2f3ff) - Active/focused card background
|
|
4831
|
-
* - semanticColors.border.
|
|
4832
|
-
* - semanticColors.
|
|
4833
|
+
* - semanticColors.border.primary (#d1d5db) - Default border
|
|
4834
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active/focused border
|
|
4833
4835
|
* - shadows.focusWhite1 - Inner white focus ring (2px spread)
|
|
4834
4836
|
* - shadows.focusBlue2 - Outer blue focus ring (4px spread)
|
|
4835
4837
|
* - colors.grey[800] (#1F2937) - Text color
|
|
@@ -4852,10 +4854,12 @@ const StyledLargeCard = styled(MuiCard, {
|
|
|
4852
4854
|
const isActive = cardState === 'active';
|
|
4853
4855
|
const isDisabled = cardState === 'disabled';
|
|
4854
4856
|
const isFocused = cardState === 'focused';
|
|
4855
|
-
const activeBorderColor = isLight
|
|
4857
|
+
const activeBorderColor = isLight
|
|
4858
|
+
? semanticColors.buttons.primary.default
|
|
4859
|
+
: colors.digitalGreen[300];
|
|
4856
4860
|
const defaultBorderColor = isLight
|
|
4857
|
-
? semanticColors.border.
|
|
4858
|
-
: `${semanticColors.border.
|
|
4861
|
+
? semanticColors.border.primary
|
|
4862
|
+
: `${semanticColors.border.primary}80`;
|
|
4859
4863
|
return {
|
|
4860
4864
|
width: 340,
|
|
4861
4865
|
height: 162,
|
|
@@ -4871,7 +4875,7 @@ const StyledLargeCard = styled(MuiCard, {
|
|
|
4871
4875
|
overflow: 'hidden',
|
|
4872
4876
|
...(isFocused && focusRingStyles),
|
|
4873
4877
|
'&:focus-visible': {
|
|
4874
|
-
borderColor: isLight ? semanticColors.
|
|
4878
|
+
borderColor: isLight ? semanticColors.buttons.primary.default : colors.digitalGreen[300],
|
|
4875
4879
|
...focusRingStyles,
|
|
4876
4880
|
},
|
|
4877
4881
|
...(isDisabled && {
|
|
@@ -4951,8 +4955,8 @@ const ButtonsRow = styled('div')({
|
|
|
4951
4955
|
* Design Tokens Used:
|
|
4952
4956
|
* - semanticColors.surfaces.card (#ffffff) - Light theme background
|
|
4953
4957
|
* - colors.grey[800] (#1f2937) - Dark theme background
|
|
4954
|
-
* - semanticColors.border.
|
|
4955
|
-
* - semanticColors.
|
|
4958
|
+
* - semanticColors.border.primary (#d1d5db) - Default border (50% opacity on dark)
|
|
4959
|
+
* - semanticColors.buttons.primary.default (#2f42ff) - Active/focused border (light theme)
|
|
4956
4960
|
* - colors.digitalGreen[300] (#88fe9b) - Active/focused border (dark theme)
|
|
4957
4961
|
* - borderRadius.xS (4px) - Corner radius
|
|
4958
4962
|
* - shadows.focusWhite1 + shadows.focusBlue2 - Focus ring
|
|
@@ -5024,7 +5028,7 @@ NeoMenu.displayName = 'NeoMenu';
|
|
|
5024
5028
|
const StyledDialog = styled(Dialog)({
|
|
5025
5029
|
[`& .${dialogClasses.paper}`]: {
|
|
5026
5030
|
borderRadius: borderRadius.card,
|
|
5027
|
-
border: `1px solid ${semanticColors.border.
|
|
5031
|
+
border: `1px solid ${semanticColors.border.primary}`,
|
|
5028
5032
|
boxShadow: 'none',
|
|
5029
5033
|
},
|
|
5030
5034
|
[`& .${dialogClasses.container}`]: {
|
|
@@ -5571,7 +5575,7 @@ const StyledLinearProgress$1 = styled(LinearProgress, {
|
|
|
5571
5575
|
// Cancelled variant uses warning color
|
|
5572
5576
|
'&[data-variant="cancelled"]': {
|
|
5573
5577
|
[`& .${linearProgressClasses.bar}`]: {
|
|
5574
|
-
backgroundColor: semanticColors.status.warning.
|
|
5578
|
+
backgroundColor: semanticColors.status.warning.default,
|
|
5575
5579
|
},
|
|
5576
5580
|
},
|
|
5577
5581
|
}));
|
|
@@ -5636,7 +5640,7 @@ const StyledTextField = styled(TextField)(({ theme }) => ({
|
|
|
5636
5640
|
fontSize: theme.typography.pxToRem(typography.fontSize.default),
|
|
5637
5641
|
borderRadius: borderRadius.input,
|
|
5638
5642
|
backgroundColor: semanticColors.input.background,
|
|
5639
|
-
border: `1px solid ${semanticColors.border.
|
|
5643
|
+
border: `1px solid ${semanticColors.border.primary}`,
|
|
5640
5644
|
paddingTop: spacing.spacing_1,
|
|
5641
5645
|
paddingBottom: spacing.spacing_1,
|
|
5642
5646
|
paddingLeft: spacing.spacing_1_1_2,
|
|
@@ -5731,7 +5735,7 @@ NeoQuickFilter.displayName = 'NeoQuickFilter';
|
|
|
5731
5735
|
const UncheckedIcon = ({ size }) => {
|
|
5732
5736
|
const dimensions = size === 'small' ? 16 : 20;
|
|
5733
5737
|
const radius = size === 'small' ? 8 : 10;
|
|
5734
|
-
return (jsxs("svg", { width: dimensions, height: dimensions, viewBox: `0 0 ${dimensions} ${dimensions}`, fill: "none", "aria-hidden": "true", children: [jsx("title", { children: "Unchecked radio button" }), jsx("circle", { cx: dimensions / 2, cy: dimensions / 2, r: radius - 0.5, stroke: semanticColors.border.
|
|
5738
|
+
return (jsxs("svg", { width: dimensions, height: dimensions, viewBox: `0 0 ${dimensions} ${dimensions}`, fill: "none", "aria-hidden": "true", children: [jsx("title", { children: "Unchecked radio button" }), jsx("circle", { cx: dimensions / 2, cy: dimensions / 2, r: radius - 0.5, stroke: semanticColors.border.primary, strokeWidth: "1", fill: "transparent" })] }));
|
|
5735
5739
|
};
|
|
5736
5740
|
const CheckedIcon = ({ size }) => {
|
|
5737
5741
|
const dimensions = size === 'small' ? 16 : 20;
|
|
@@ -5987,19 +5991,19 @@ const StyledAlert$1 = styled(Alert, {
|
|
|
5987
5991
|
const colorMap = {
|
|
5988
5992
|
success: {
|
|
5989
5993
|
light: semanticColors.status.success.light,
|
|
5990
|
-
medium: semanticColors.status.success.
|
|
5994
|
+
medium: semanticColors.status.success.default,
|
|
5991
5995
|
},
|
|
5992
5996
|
error: {
|
|
5993
5997
|
light: semanticColors.status.error.light,
|
|
5994
|
-
medium: semanticColors.status.error.
|
|
5998
|
+
medium: semanticColors.status.error.default,
|
|
5995
5999
|
},
|
|
5996
6000
|
neutral: {
|
|
5997
6001
|
light: semanticColors.status.neutral.light,
|
|
5998
|
-
medium: semanticColors.status.neutral.
|
|
6002
|
+
medium: semanticColors.status.neutral.default,
|
|
5999
6003
|
},
|
|
6000
6004
|
info: {
|
|
6001
6005
|
light: semanticColors.status.info.light,
|
|
6002
|
-
medium: semanticColors.status.info.
|
|
6006
|
+
medium: semanticColors.status.info.default,
|
|
6003
6007
|
},
|
|
6004
6008
|
};
|
|
6005
6009
|
const severityColors = colorMap[severity];
|
|
@@ -6070,10 +6074,10 @@ const StyledAlert$1 = styled(Alert, {
|
|
|
6070
6074
|
* - Mode (Light|Dark) → variant ('outlined'|'filled')
|
|
6071
6075
|
*
|
|
6072
6076
|
* Design Tokens Used:
|
|
6073
|
-
* - status.success.light, status.success.
|
|
6074
|
-
* - status.error.light, status.error.
|
|
6075
|
-
* - status.neutral.light, status.neutral.
|
|
6076
|
-
* - status.info.light, status.info.
|
|
6077
|
+
* - status.success.light, status.success.default
|
|
6078
|
+
* - status.error.light, status.error.default
|
|
6079
|
+
* - status.neutral.light, status.neutral.default
|
|
6080
|
+
* - status.info.light, status.info.default
|
|
6077
6081
|
* - typography.tooltip, typography.bodySecondary
|
|
6078
6082
|
* - grey[800]
|
|
6079
6083
|
* - fontSize.default, fontSize.sm
|
|
@@ -6110,7 +6114,7 @@ NeoStatusBanner.displayName = 'NeoStatusBanner';
|
|
|
6110
6114
|
const NeoTabs = styled(MuiTabs)(() => ({
|
|
6111
6115
|
minHeight: spacing.spacing_5,
|
|
6112
6116
|
[`& .${tabsClasses.indicator}`]: {
|
|
6113
|
-
backgroundColor: semanticColors.
|
|
6117
|
+
backgroundColor: semanticColors.buttons.primary.default,
|
|
6114
6118
|
height: 2,
|
|
6115
6119
|
},
|
|
6116
6120
|
[`& .${tabsClasses.flexContainer}`]: {
|
|
@@ -6132,7 +6136,7 @@ const StyledTab = styled(MuiTab)(({ theme }) => ({
|
|
|
6132
6136
|
fontWeight: typography.fontWeight.semiBold,
|
|
6133
6137
|
},
|
|
6134
6138
|
[`&.${buttonBaseClasses.focusVisible}`]: {
|
|
6135
|
-
outline: `2px solid ${semanticColors.
|
|
6139
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
6136
6140
|
outlineOffset: -2,
|
|
6137
6141
|
},
|
|
6138
6142
|
[`&.${tabClasses.disabled}`]: {
|
|
@@ -6212,17 +6216,17 @@ const StyledAlert = styled(Alert, {
|
|
|
6212
6216
|
error: {
|
|
6213
6217
|
backgroundColor: semanticColors.status.error.light,
|
|
6214
6218
|
color: semanticColors.status.error.dark,
|
|
6215
|
-
border: `1px solid ${semanticColors.status.error.
|
|
6219
|
+
border: `1px solid ${semanticColors.status.error.default}`,
|
|
6216
6220
|
},
|
|
6217
6221
|
success: {
|
|
6218
6222
|
backgroundColor: semanticColors.status.success.light,
|
|
6219
6223
|
color: semanticColors.status.success.dark,
|
|
6220
|
-
border: `1px solid ${semanticColors.status.success.
|
|
6224
|
+
border: `1px solid ${semanticColors.status.success.default}`,
|
|
6221
6225
|
},
|
|
6222
6226
|
info: {
|
|
6223
6227
|
backgroundColor: semanticColors.status.info.light,
|
|
6224
6228
|
color: semanticColors.status.info.dark,
|
|
6225
|
-
border: `1px solid ${semanticColors.status.info.
|
|
6229
|
+
border: `1px solid ${semanticColors.status.info.default}`,
|
|
6226
6230
|
},
|
|
6227
6231
|
download: {
|
|
6228
6232
|
backgroundColor: semanticColors.surfaces.snackbarDarkMode,
|
|
@@ -6450,7 +6454,7 @@ const StyledSwitch = styled(Switch, {
|
|
|
6450
6454
|
// Focus visible for keyboard navigation
|
|
6451
6455
|
'&.Mui-focusVisible': {
|
|
6452
6456
|
[`& + .${switchClasses.track}`]: {
|
|
6453
|
-
outline: `2px solid ${semanticColors.
|
|
6457
|
+
outline: `2px solid ${semanticColors.border.focus}`,
|
|
6454
6458
|
outlineOffset: 2,
|
|
6455
6459
|
},
|
|
6456
6460
|
},
|
|
@@ -6791,7 +6795,7 @@ const StyledTreeView = styled(RichTreeViewPro)({
|
|
|
6791
6795
|
backgroundColor: semanticColors.surfaces.listHover,
|
|
6792
6796
|
},
|
|
6793
6797
|
[`& .${treeItemClasses.content}.Mui-focused`]: {
|
|
6794
|
-
boxShadow: `inset 0 0 0 2px ${semanticColors.
|
|
6798
|
+
boxShadow: `inset 0 0 0 2px ${semanticColors.border.focus}`,
|
|
6795
6799
|
backgroundColor: 'transparent',
|
|
6796
6800
|
},
|
|
6797
6801
|
[`& .${treeItemClasses.content}.Mui-selected`]: {
|
|
@@ -6802,7 +6806,7 @@ const StyledTreeView = styled(RichTreeViewPro)({
|
|
|
6802
6806
|
},
|
|
6803
6807
|
[`& .${treeItemClasses.content}.Mui-selected.Mui-focused`]: {
|
|
6804
6808
|
backgroundColor: semanticColors.surfaces.listHover,
|
|
6805
|
-
boxShadow: `inset 0 0 0 2px ${semanticColors.
|
|
6809
|
+
boxShadow: `inset 0 0 0 2px ${semanticColors.border.focus}`,
|
|
6806
6810
|
},
|
|
6807
6811
|
[`& .${treeItemClasses.label}`]: {
|
|
6808
6812
|
fontSize: typography.fontSize.xs,
|