@moderneinc/design-system-components 7.5.0-next.3525ba → 7.5.0-next.44ef69

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.
@@ -21,7 +21,7 @@ export interface ModBadgeProps extends Omit<ChipProps, 'variant' | 'size'> {
21
21
  variant?: BadgeVariant;
22
22
  /**
23
23
  * Corner treatment. `square` = borderRadius.xS, `rounded` = borderRadius.full.
24
- * Deliberately defaults to `square` even though the design's Shape default differs —
24
+ * Deliberately defaults to `square` even though Figma's Shape default differs —
25
25
  * this keeps existing consumers rendering unchanged. Don't "fix" it.
26
26
  * @default "square"
27
27
  */
@@ -2,6 +2,8 @@ import { type LinkProps } from '@mui/material/Link';
2
2
  import type { ElementType, ReactNode } from 'react';
3
3
  /**
4
4
  * ModBreadcrumbs - Navigation breadcrumb component
5
+ *
6
+ * @see https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4563-122872
5
7
  */
6
8
  export interface ModBreadcrumbsProps {
7
9
  /** Breadcrumb items as Link elements */
@@ -22,7 +22,7 @@ export interface ModCheckboxWithTextProps extends Omit<ModCheckboxProps, 'size'>
22
22
  /**
23
23
  * ModCheckboxWithText - Checkbox with label and supporting text
24
24
  *
25
- * Thin wrapper around ModCheckbox that maps the "Checkbox with text"
25
+ * Thin wrapper around ModCheckbox that maps the Figma "Checkbox with text"
26
26
  * component to the existing ModCheckbox with label + helperText.
27
27
  */
28
28
  export declare const ModCheckboxWithText: {
@@ -44,7 +44,7 @@ export declare const ModDataGridCellContent: {
44
44
  displayName: string;
45
45
  };
46
46
  /**
47
- * Row height configuration for DataGrid size variants
47
+ * Row height configuration for DataGrid size variants (from Figma specs)
48
48
  * - compact: 42px
49
49
  * - standard: 48px
50
50
  * - comfortable: 56px
@@ -1,6 +1,6 @@
1
1
  import type { GridColumnsPanelProps } from '@mui/x-data-grid-pro';
2
2
  /**
3
- * ModDataGridColumnsPanel - Custom columns panel for ModDataGrid
3
+ * ModDataGridColumnsPanel - Custom columns panel for ModDataGrid matching Figma design
4
4
  *
5
5
  * A styled columns panel that integrates with MUI DataGrid's column visibility system.
6
6
  * Features:
@@ -1,6 +1,6 @@
1
1
  import { type SvgIconProps } from '@mui/material/SvgIcon';
2
2
  /**
3
- * Filled status icons — sourced from the published design library components
3
+ * Filled status icons — sourced from the published Figma library components
4
4
  * Filled_Success / Filled_Queued / Filled_Info / Filled_Warning / Filled_Error /
5
5
  * Filled_Neutral / Filled_Canceled.
6
6
  *
@@ -46,7 +46,7 @@ export interface ModListItemButtonProps extends ListItemButtonProps {
46
46
  * </ModListItemButton>
47
47
  * ```
48
48
  *
49
- * Design Tokens Used (hex values omitted — they are generated and drift):
49
+ * Design Tokens Used (hex values omitted — they are generated from Figma and drift):
50
50
  * - semanticColors.buttons.primary.default - Active border
51
51
  * - semanticColors.border.primary - Default/disabled border
52
52
  * - semanticColors.icons.default - Active icon color
@@ -14,7 +14,7 @@ export interface ModLoadingSpinnerProps {
14
14
  * ModLoadingSpinner - Animated loading spinner component
15
15
  *
16
16
  * A circular loading spinner with a partial arc that rotates continuously.
17
- * Based on the design system button loading icon.
17
+ * Based on the Figma design system button loading icon.
18
18
  *
19
19
  * @example
20
20
  * <ModLoadingSpinner />
@@ -3,19 +3,19 @@ import type { ComponentPropsWithoutRef, ElementType, ReactNode } from 'react';
3
3
  type ModMenuItemOwnProps = {
4
4
  /**
5
5
  * Optional icon to display on the left side
6
- * Note: Not expressible as a design-tool property (ReactNode)
6
+ * Note: Cannot be directly mapped from Figma (ReactNode)
7
7
  */
8
8
  icon?: ReactNode;
9
9
  /**
10
10
  * Optional keyboard shortcut to display on the right side
11
11
  * @example "⌘+P" or "Ctrl+K"
12
- * Note: Not expressible as a design-tool property (ReactNode/string)
12
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
13
13
  */
14
14
  shortcut?: string;
15
15
  /**
16
16
  * Optional secondary text to display next to the primary label
17
17
  * @example "@username" or supporting text
18
- * Note: Not expressible as a design-tool property (ReactNode/string)
18
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
19
19
  */
20
20
  secondaryText?: string;
21
21
  /**
@@ -66,7 +66,7 @@ export type ModMenuItemProps<C extends ElementType = typeof MenuItem> = ModMenuI
66
66
  * View profile
67
67
  * </ModMenuItem>
68
68
  *
69
- * // With secondary text (user list pattern)
69
+ * // With secondary text (user list pattern from Figma node 4305:41844)
70
70
  * <ModMenuItem secondaryText="@phoenix">Phoenix Baker</ModMenuItem>
71
71
  * <ModMenuItem secondaryText="@olivia">Olivia Rhye</ModMenuItem>
72
72
  *
@@ -18,7 +18,7 @@ export interface ModQuickFilterProps {
18
18
  * ModQuickFilter - Quick search/filter input component for data grids
19
19
  *
20
20
  * Uses MUI X DataGrid's QuickFilterControl with Moderne design system styling.
21
- * Search icon, clear button, and spacing from the design tokens.
21
+ * Styled to match the Figma design with search icon, clear button, and proper spacing.
22
22
  *
23
23
  * **Note:** This component must be used within a DataGrid context (inside a DataGrid component's toolbar).
24
24
  *
package/dist/Tag/Tag.d.ts CHANGED
@@ -32,7 +32,7 @@ export type ModTagOwnProps = {
32
32
  intent?: 'default' | 'error' | 'warning' | 'success' | 'info' | 'violet' | 'beta';
33
33
  /**
34
34
  * Corner treatment. `square` = borderRadius.xS, `rounded` = borderRadius.full.
35
- * Deliberately defaults to `square` even though the design's Shape default differs —
35
+ * Deliberately defaults to `square` even though Figma's Shape default differs —
36
36
  * this keeps existing consumers rendering unchanged. Don't "fix" it.
37
37
  * @default "square"
38
38
  */
@@ -3,7 +3,7 @@ import Button from '@mui/material/Button';
3
3
  import type { ReactNode } from 'react';
4
4
  type Intent = 'neutral' | 'info' | 'success' | 'error' | 'warning';
5
5
  /**
6
- * @deprecated The design no longer has Filled/Outlined styles. Retained for API
6
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Retained for API
7
7
  * compatibility only; all toasts render the single tinted style.
8
8
  */
9
9
  type ToastType = 'outlined' | 'filled';
@@ -14,7 +14,7 @@ export interface ModToastProps extends Omit<AlertProps, 'variant' | 'severity' |
14
14
  */
15
15
  intent?: Intent;
16
16
  /**
17
- * @deprecated The design no longer has Filled/Outlined styles. Ignored; all
17
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Ignored; all
18
18
  * toasts render the single tinted style.
19
19
  */
20
20
  type?: ToastType;
@@ -56,7 +56,7 @@ export declare const ModToastButton: {
56
56
  primary?: boolean;
57
57
  intent?: Intent;
58
58
  /**
59
- * @deprecated The design no longer has Filled/Outlined styles. Ignored.
59
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Ignored.
60
60
  */
61
61
  type?: ToastType;
62
62
  children: ReactNode;
package/dist/index.d.ts CHANGED
@@ -43,7 +43,7 @@ import { TreeItemProps } from '@mui/x-tree-view/TreeItem';
43
43
  import { RichTreeViewProProps } from '@mui/x-tree-view-pro/RichTreeViewPro';
44
44
 
45
45
  /**
46
- * ModDataGridColumnsPanel - Custom columns panel for ModDataGrid
46
+ * ModDataGridColumnsPanel - Custom columns panel for ModDataGrid matching Figma design
47
47
  *
48
48
  * A styled columns panel that integrates with MUI DataGrid's column visibility system.
49
49
  * Features:
@@ -382,7 +382,7 @@ interface ModBadgeProps extends Omit<ChipProps, 'variant' | 'size'> {
382
382
  variant?: BadgeVariant;
383
383
  /**
384
384
  * Corner treatment. `square` = borderRadius.xS, `rounded` = borderRadius.full.
385
- * Deliberately defaults to `square` even though the design's Shape default differs —
385
+ * Deliberately defaults to `square` even though Figma's Shape default differs —
386
386
  * this keeps existing consumers rendering unchanged. Don't "fix" it.
387
387
  * @default "square"
388
388
  */
@@ -451,6 +451,8 @@ declare const ModBanner: {
451
451
 
452
452
  /**
453
453
  * ModBreadcrumbs - Navigation breadcrumb component
454
+ *
455
+ * @see https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4563-122872
454
456
  */
455
457
  interface ModBreadcrumbsProps {
456
458
  /** Breadcrumb items as Link elements */
@@ -792,7 +794,7 @@ interface ModCheckboxWithTextProps extends Omit<ModCheckboxProps, 'size'> {
792
794
  /**
793
795
  * ModCheckboxWithText - Checkbox with label and supporting text
794
796
  *
795
- * Thin wrapper around ModCheckbox that maps the "Checkbox with text"
797
+ * Thin wrapper around ModCheckbox that maps the Figma "Checkbox with text"
796
798
  * component to the existing ModCheckbox with label + helperText.
797
799
  */
798
800
  declare const ModCheckboxWithText: {
@@ -940,7 +942,7 @@ declare const ModDataGridCellContent: {
940
942
  displayName: string;
941
943
  };
942
944
  /**
943
- * Row height configuration for DataGrid size variants
945
+ * Row height configuration for DataGrid size variants (from Figma specs)
944
946
  * - compact: 42px
945
947
  * - standard: 48px
946
948
  * - comfortable: 56px
@@ -1341,7 +1343,7 @@ declare const ModDownloadToast: {
1341
1343
  };
1342
1344
 
1343
1345
  /**
1344
- * Filled status icons — sourced from the published design library components
1346
+ * Filled status icons — sourced from the published Figma library components
1345
1347
  * Filled_Success / Filled_Queued / Filled_Info / Filled_Warning / Filled_Error /
1346
1348
  * Filled_Neutral / Filled_Canceled.
1347
1349
  *
@@ -1725,7 +1727,7 @@ interface ModListItemButtonProps extends ListItemButtonProps {
1725
1727
  * </ModListItemButton>
1726
1728
  * ```
1727
1729
  *
1728
- * Design Tokens Used (hex values omitted — they are generated and drift):
1730
+ * Design Tokens Used (hex values omitted — they are generated from Figma and drift):
1729
1731
  * - semanticColors.buttons.primary.default - Active border
1730
1732
  * - semanticColors.border.primary - Default/disabled border
1731
1733
  * - semanticColors.icons.default - Active icon color
@@ -1757,7 +1759,7 @@ interface ModLoadingSpinnerProps {
1757
1759
  * ModLoadingSpinner - Animated loading spinner component
1758
1760
  *
1759
1761
  * A circular loading spinner with a partial arc that rotates continuously.
1760
- * Based on the design system button loading icon.
1762
+ * Based on the Figma design system button loading icon.
1761
1763
  *
1762
1764
  * @example
1763
1765
  * <ModLoadingSpinner />
@@ -1803,19 +1805,19 @@ declare const ModMenu: {
1803
1805
  type ModMenuItemOwnProps = {
1804
1806
  /**
1805
1807
  * Optional icon to display on the left side
1806
- * Note: Not expressible as a design-tool property (ReactNode)
1808
+ * Note: Cannot be directly mapped from Figma (ReactNode)
1807
1809
  */
1808
1810
  icon?: ReactNode;
1809
1811
  /**
1810
1812
  * Optional keyboard shortcut to display on the right side
1811
1813
  * @example "⌘+P" or "Ctrl+K"
1812
- * Note: Not expressible as a design-tool property (ReactNode/string)
1814
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
1813
1815
  */
1814
1816
  shortcut?: string;
1815
1817
  /**
1816
1818
  * Optional secondary text to display next to the primary label
1817
1819
  * @example "@username" or supporting text
1818
- * Note: Not expressible as a design-tool property (ReactNode/string)
1820
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
1819
1821
  */
1820
1822
  secondaryText?: string;
1821
1823
  /**
@@ -1866,7 +1868,7 @@ type ModMenuItemProps<C extends ElementType = typeof MenuItem> = ModMenuItemOwnP
1866
1868
  * View profile
1867
1869
  * </ModMenuItem>
1868
1870
  *
1869
- * // With secondary text (user list pattern)
1871
+ * // With secondary text (user list pattern from Figma node 4305:41844)
1870
1872
  * <ModMenuItem secondaryText="@phoenix">Phoenix Baker</ModMenuItem>
1871
1873
  * <ModMenuItem secondaryText="@olivia">Olivia Rhye</ModMenuItem>
1872
1874
  *
@@ -2155,7 +2157,7 @@ type ModTagOwnProps = {
2155
2157
  intent?: 'default' | 'error' | 'warning' | 'success' | 'info' | 'violet' | 'beta';
2156
2158
  /**
2157
2159
  * Corner treatment. `square` = borderRadius.xS, `rounded` = borderRadius.full.
2158
- * Deliberately defaults to `square` even though the design's Shape default differs —
2160
+ * Deliberately defaults to `square` even though Figma's Shape default differs —
2159
2161
  * this keeps existing consumers rendering unchanged. Don't "fix" it.
2160
2162
  * @default "square"
2161
2163
  */
@@ -2458,7 +2460,7 @@ interface ModQuickFilterProps {
2458
2460
  * ModQuickFilter - Quick search/filter input component for data grids
2459
2461
  *
2460
2462
  * Uses MUI X DataGrid's QuickFilterControl with Moderne design system styling.
2461
- * Search icon, clear button, and spacing from the design tokens.
2463
+ * Styled to match the Figma design with search icon, clear button, and proper spacing.
2462
2464
  *
2463
2465
  * **Note:** This component must be used within a DataGrid context (inside a DataGrid component's toolbar).
2464
2466
  *
@@ -2857,7 +2859,7 @@ declare const ModTab: {
2857
2859
 
2858
2860
  type Intent = 'neutral' | 'info' | 'success' | 'error' | 'warning';
2859
2861
  /**
2860
- * @deprecated The design no longer has Filled/Outlined styles. Retained for API
2862
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Retained for API
2861
2863
  * compatibility only; all toasts render the single tinted style.
2862
2864
  */
2863
2865
  type ToastType = 'outlined' | 'filled';
@@ -2868,7 +2870,7 @@ interface ModToastProps extends Omit<AlertProps, 'variant' | 'severity' | 'color
2868
2870
  */
2869
2871
  intent?: Intent;
2870
2872
  /**
2871
- * @deprecated The design no longer has Filled/Outlined styles. Ignored; all
2873
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Ignored; all
2872
2874
  * toasts render the single tinted style.
2873
2875
  */
2874
2876
  type?: ToastType;
@@ -2910,7 +2912,7 @@ declare const ModToastButton: {
2910
2912
  primary?: boolean;
2911
2913
  intent?: Intent;
2912
2914
  /**
2913
- * @deprecated The design no longer has Filled/Outlined styles. Ignored.
2915
+ * @deprecated The Figma design no longer has Filled/Outlined styles. Ignored.
2914
2916
  */
2915
2917
  type?: ToastType;
2916
2918
  children: ReactNode;
package/dist/index.esm.js CHANGED
@@ -126,7 +126,7 @@ const StyledChip$3 = styled(Chip, {
126
126
  borderRadius: badgeShape === 'rounded' ? borderRadius.full : borderRadius.xS,
127
127
  fontSize: theme.typography.pxToRem(typography.fontSize.xs),
128
128
  lineHeight: 1,
129
- // Labels track at 0. Digit legibility comes from tabular figures
129
+ // Figma tracks labels at 0. Digit legibility comes from tabular figures
130
130
  // instead, which leaves word labels alone (moderne-ui#8686).
131
131
  fontVariantNumeric: 'tabular-nums',
132
132
  fontWeight: typography.fontWeight.medium,
@@ -172,7 +172,7 @@ const djb2Hash = (str) => {
172
172
  /**
173
173
  * Deterministically derives an avatar color index (1-7) from a string seed,
174
174
  * selecting one of the avatar.initials semantic token triplets
175
- * (text/background/border).
175
+ * (text/background/border) defined in Figma.
176
176
  */
177
177
  const avatarIndexFromSeed = (seed) => seed ? ((djb2Hash(seed) % 7) + 1) : undefined;
178
178
 
@@ -284,7 +284,7 @@ const ModDataGridCellContent = ({ children, ...props }) => {
284
284
  };
285
285
  ModDataGridCellContent.displayName = 'ModDataGridCellContent';
286
286
  /**
287
- * Row height configuration for DataGrid size variants
287
+ * Row height configuration for DataGrid size variants (from Figma specs)
288
288
  * - compact: 42px
289
289
  * - standard: 48px
290
290
  * - comfortable: 56px
@@ -330,7 +330,7 @@ const ACTIVITY_COLORS$1 = {
330
330
  */
331
331
  const HeaderContainer = styled(Box)(({ size }) => {
332
332
  // Use shared row heights from DataGridCell to ensure consistency
333
- // Sizes: compact (42px), standard (48px), comfortable (56px)
333
+ // Figma specs: compact (42px), standard (48px), comfortable (56px)
334
334
  return {
335
335
  width: '34px',
336
336
  height: `${modRowHeights[size]}px`,
@@ -962,7 +962,7 @@ const ModButtonTab = ({ children, ...props }) => {
962
962
  ModButtonTab.displayName = 'ModButtonTab';
963
963
 
964
964
  /**
965
- * Styled toggle button group that implements the "Button tab group" design.
965
+ * Styled toggle button group that implements the Figma "Button tab group" design.
966
966
  *
967
967
  * Built on MUI ToggleButtonGroup which provides:
968
968
  * - Selection state management (value/onChange/exclusive)
@@ -1306,7 +1306,7 @@ const HelperText$2 = styled('span')(({ theme, size = 'medium' }) => ({
1306
1306
  color: semanticColors.color.text.secondary,
1307
1307
  }));
1308
1308
  // xs focus-ring radius — no matching design token (box corner comes from the icon)
1309
- const XS_FOCUS_RING_RADIUS = 1;
1309
+ const FIGMA_XS_BORDER_RADIUS = 1;
1310
1310
  const StyledCheckbox = styled(Checkbox, {
1311
1311
  shouldForwardProp: prop => prop !== 'size',
1312
1312
  })(({ size = 'medium' }) => {
@@ -1314,7 +1314,7 @@ const StyledCheckbox = styled(Checkbox, {
1314
1314
  const sizeConfig = {
1315
1315
  xs: {
1316
1316
  size: 12,
1317
- borderRadius: XS_FOCUS_RING_RADIUS,
1317
+ borderRadius: FIGMA_XS_BORDER_RADIUS,
1318
1318
  },
1319
1319
  small: {
1320
1320
  size: 16,
@@ -1422,7 +1422,7 @@ ModCheckbox.displayName = 'ModCheckbox';
1422
1422
  /**
1423
1423
  * ModCheckboxWithText - Checkbox with label and supporting text
1424
1424
  *
1425
- * Thin wrapper around ModCheckbox that maps the "Checkbox with text"
1425
+ * Thin wrapper around ModCheckbox that maps the Figma "Checkbox with text"
1426
1426
  * component to the existing ModCheckbox with label + helperText.
1427
1427
  */
1428
1428
  const ModCheckboxWithText = ({ size = 'small', ...props }) => {
@@ -1547,7 +1547,7 @@ const panelSurfaceStyles = {
1547
1547
  };
1548
1548
  const getDataGridHeaderStyles = () => {
1549
1549
  return {
1550
- // Header cell container styles: bg, border, padding
1550
+ // Header cell container styles - from Figma: bg, border, padding
1551
1551
  [`& .${gridClasses.columnHeader}`]: {
1552
1552
  backgroundColor: semanticColors.color.surface.dataGrid.header,
1553
1553
  borderBottom: `1px solid ${semanticColors.color.border.primary}`,
@@ -1578,7 +1578,7 @@ const getDataGridHeaderStyles = () => {
1578
1578
  [`& .${gridClasses.columnHeader}:hover .${gridClasses.columnHeaderTitle}`]: {
1579
1579
  color: semanticColors.color.text.primary,
1580
1580
  },
1581
- // Style the checkbox in header to match design system (16x16)
1581
+ // Style the checkbox in header to match design system (16x16 from Figma)
1582
1582
  [`& .${gridClasses.columnHeaderCheckbox}`]: {
1583
1583
  padding: 0,
1584
1584
  [`& .${checkboxClasses.root}`]: {
@@ -1695,7 +1695,7 @@ const ColumnItemContainer = styled(Box)(({ theme }) => ({
1695
1695
  paddingLeft: spacing.spacing_3_4,
1696
1696
  paddingRight: spacing.spacing_3_4,
1697
1697
  }));
1698
- // Border radius for menu items — no matching design token
1698
+ // Figma-exact border radius for menu items — no matching design token
1699
1699
  const MENU_ITEM_BORDER_RADIUS = 6;
1700
1700
  const MenuItemContent$1 = styled('div')(() => ({
1701
1701
  display: 'flex',
@@ -1881,7 +1881,7 @@ const Shortcut = styled('span')(({ theme }) => ({
1881
1881
  * View profile
1882
1882
  * </ModMenuItem>
1883
1883
  *
1884
- * // With secondary text (user list pattern)
1884
+ * // With secondary text (user list pattern from Figma node 4305:41844)
1885
1885
  * <ModMenuItem secondaryText="@phoenix">Phoenix Baker</ModMenuItem>
1886
1886
  * <ModMenuItem secondaryText="@olivia">Olivia Rhye</ModMenuItem>
1887
1887
  *
@@ -2121,7 +2121,7 @@ const StyledGridFilterPanel = styled(GridFilterPanel)({
2121
2121
  '& legend': {
2122
2122
  display: 'none',
2123
2123
  },
2124
- // Buttons - design system styling
2124
+ // Buttons - design system styling (matching Figma 4594-163847)
2125
2125
  // Add filter button (first button)
2126
2126
  [`& .${gridClasses.panelFooter} .${buttonClasses.root}:first-child`]: {
2127
2127
  textTransform: 'none',
@@ -2625,7 +2625,7 @@ const StyledIconOnlyButton = styled(ModButtonBase)(({ size = 'medium' }) => {
2625
2625
  },
2626
2626
  };
2627
2627
  });
2628
- // Nav variant - standalone styled MUI IconButton (no design-system counterpart)
2628
+ // Nav variant - standalone styled MUI IconButton (not backed by Figma)
2629
2629
  const navOnlyProps = ['size', 'variant', 'active'];
2630
2630
  const StyledNavButton = styled(IconButton, {
2631
2631
  shouldForwardProp: prop => !navOnlyProps.includes(prop),
@@ -2826,7 +2826,7 @@ const StyledDateRangePicker = styled(DateRangePicker)(({ theme }) => ({
2826
2826
  const ClearIcon = () => jsx(X, { size: 20, color: semanticColors.color.icon.placeholder });
2827
2827
  // Custom calendar icon component
2828
2828
  const CalendarIcon = () => jsx(CalendarDays, { size: 20, color: semanticColors.color.icon.placeholder });
2829
- // Shortcut styles matching the list item design (no borders, plain text)
2829
+ // Shortcut styles to match Figma list item design (no borders, plain text)
2830
2830
  const shortcutChipStyles = {
2831
2831
  // Container (MuiList) styles
2832
2832
  paddingY: `${spacing.spacing_1_1_2}px`,
@@ -3258,7 +3258,7 @@ const SpinnerWrapper = styled('div')({
3258
3258
  * ModLoadingSpinner - Animated loading spinner component
3259
3259
  *
3260
3260
  * A circular loading spinner with a partial arc that rotates continuously.
3261
- * Based on the design system button loading icon.
3261
+ * Based on the Figma design system button loading icon.
3262
3262
  *
3263
3263
  * @example
3264
3264
  * <ModLoadingSpinner />
@@ -3723,7 +3723,7 @@ const StyledFormHelperText = styled(FormHelperText, {
3723
3723
  return {
3724
3724
  marginLeft: 0,
3725
3725
  marginRight: 0,
3726
- // Helper text is 14px
3726
+ // Figma specifies 14px for helper text
3727
3727
  fontSize: theme.typography.pxToRem(typography.fontSize.sm),
3728
3728
  color: semanticColors.color.text.inputHelper,
3729
3729
  [`&.${formHelperTextClasses.error}`]: {
@@ -3840,7 +3840,7 @@ const StyledListItemButton$1 = styled(ListItemButton, {
3840
3840
  borderRadius: spacing.spacing_3_4, // 6px
3841
3841
  backgroundColor: semanticColors.input.bg,
3842
3842
  gap: config.gap,
3843
- // Icon is always centered vertically
3843
+ // Icon is always centered vertically per Figma design
3844
3844
  alignItems: 'center',
3845
3845
  transition: theme.transitions.create(['background-color'], {
3846
3846
  duration: theme.transitions.duration.short,
@@ -3856,7 +3856,7 @@ const StyledListItemButton$1 = styled(ListItemButton, {
3856
3856
  }),
3857
3857
  },
3858
3858
  // Primary text styling
3859
- // Font weight varies by size:
3859
+ // Font weight varies by size per Figma:
3860
3860
  // - Default: small/medium use 400, large/xlarge/xxlarge use 500
3861
3861
  // - Link: xxlarge uses 600, others use their default weight
3862
3862
  '& .list-item-primary': {
@@ -3914,7 +3914,7 @@ const StyledListItemButton$1 = styled(ListItemButton, {
3914
3914
  backgroundColor: semanticColors.input.bg,
3915
3915
  },
3916
3916
  // Selected/Active state
3917
- // Font weights by size:
3917
+ // Font weights per Figma:
3918
3918
  // - Primary: small/medium/xxlarge use 500, large/xlarge use 600
3919
3919
  // - Secondary: large/xlarge use 500, xxlarge uses 400
3920
3920
  [`&.${listItemButtonClasses.selected}`]: {
@@ -4136,7 +4136,7 @@ function cardVariantStyles(theme) {
4136
4136
  * </ModListItemButton>
4137
4137
  * ```
4138
4138
  *
4139
- * Design Tokens Used (hex values omitted — they are generated and drift):
4139
+ * Design Tokens Used (hex values omitted — they are generated from Figma and drift):
4140
4140
  * - semanticColors.buttons.primary.default - Active border
4141
4141
  * - semanticColors.border.primary - Default/disabled border
4142
4142
  * - semanticColors.icons.default - Active icon color
@@ -4700,7 +4700,7 @@ const variantConfig = {
4700
4700
  color: semanticColors.color.text.primary,
4701
4701
  },
4702
4702
  brand: {
4703
- // snackbarBrand is one of the few tokens fixed across both modes, so
4703
+ // snackbarBrand is one of the few tokens Figma fixes across both modes, so
4704
4704
  // its foreground must be fixed too. typography.tooltip.default flips
4705
4705
  // (#ffffff -> #232342), which would put dark navy on dark blue in dark mode.
4706
4706
  backgroundColor: semanticColors.color.surface.snackbarBrand,
@@ -4719,7 +4719,7 @@ const StyledTooltip = styled(({ className, ...props }) => jsx(Tooltip, { ...prop
4719
4719
  const variantStyles = variantConfig[variant];
4720
4720
  return {
4721
4721
  // Style the tooltip content. Padding/line-height/radius are uniform
4722
- // regardless of whether a description is present — the design defines a
4722
+ // regardless of whether a description is present — Figma defines a
4723
4723
  // single tooltip treatment (title + optional content), not two.
4724
4724
  [`& .${tooltipClasses.tooltip}`]: {
4725
4725
  backgroundColor: variantStyles.backgroundColor,
@@ -5119,7 +5119,7 @@ const StyledTextField = styled(TextField)(({ theme }) => ({
5119
5119
  * ModQuickFilter - Quick search/filter input component for data grids
5120
5120
  *
5121
5121
  * Uses MUI X DataGrid's QuickFilterControl with Moderne design system styling.
5122
- * Search icon, clear button, and spacing from the design tokens.
5122
+ * Styled to match the Figma design with search icon, clear button, and proper spacing.
5123
5123
  *
5124
5124
  * **Note:** This component must be used within a DataGrid context (inside a DataGrid component's toolbar).
5125
5125
  *
@@ -5150,7 +5150,7 @@ const ModQuickFilter = ({ placeholder = 'Search...', onKeyDown, autoFocus = fals
5150
5150
  };
5151
5151
  ModQuickFilter.displayName = 'ModQuickFilter';
5152
5152
 
5153
- // Custom radio icons
5153
+ // Custom radio icons to match Figma design
5154
5154
  const UncheckedIcon = ({ size, disabled }) => {
5155
5155
  const dimensions = size === 'small' ? 16 : 20;
5156
5156
  const radius = size === 'small' ? 8 : 10;
@@ -6260,7 +6260,7 @@ const StyledToolbar = styled(Toolbar)(({ theme }) => ({
6260
6260
  backgroundColor: semanticColors.color.surface.raised,
6261
6261
  minHeight: 'auto',
6262
6262
  justifyContent: 'space-between',
6263
- // Apply padding directly (16px horizontal, 12px vertical)
6263
+ // Apply padding directly to match Figma design (16px horizontal, 12px vertical)
6264
6264
  paddingTop: spacing.spacing_1_1_2, // 12px
6265
6265
  paddingBottom: spacing.spacing_1_1_2, // 12px
6266
6266
  paddingLeft: spacing.spacing_2, // 16px
@@ -6444,7 +6444,7 @@ const StyledTreeView = styled(RichTreeViewPro)({
6444
6444
  },
6445
6445
  });
6446
6446
 
6447
- // Border radius for toggle buttons — no matching design token
6447
+ // Figma-exact border radius for toggle buttons — no matching design token
6448
6448
  const TOGGLE_BUTTON_BORDER_RADIUS = 14;
6449
6449
  const StyledToggleButtonGroup = styled(MuiToggleButtonGroup)(({ theme }) => ({
6450
6450
  backgroundColor: semanticColors.color.surface.raised,