@moderneinc/neo-styled-components 2.7.0 → 2.8.0

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.
@@ -16,7 +16,7 @@ export interface NeoAvatarProps extends Omit<AvatarProps, 'variant'> {
16
16
  /**
17
17
  * NeoAvatar - User avatar component based on MUI Avatar
18
18
  *
19
- * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4214-58134
19
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=9600-185
20
20
  *
21
21
  * Figma Props Mapping:
22
22
  * - Figma Type "Initials" → variant="initials", size="small" (20px)
@@ -2,41 +2,36 @@ import { type AlertProps } from '@mui/material/Alert';
2
2
  import type { ReactNode } from 'react';
3
3
  export interface NeoBannerProps extends Omit<AlertProps, 'variant' | 'severity' | 'color'> {
4
4
  /**
5
- * The intent/color variant of the banner
6
- * @default "info"
5
+ * The visual style variant of the banner
6
+ * @default "light"
7
7
  *
8
- * @figma Intention (Info|Success|Error|Warning|Neutral)
8
+ * @figmaPropMapping color (Dark|Light|Success|Error|Warning) → variant
9
9
  */
10
- variant?: 'info' | 'success' | 'error' | 'warning' | 'neutral' | 'dark' | 'light';
11
- /**
12
- * The visual type: outlined (light bg) or filled (solid bg)
13
- * Only applies to intent variants. Legacy variants (dark, light) ignore this prop.
14
- * @default "outlined"
15
- *
16
- * @figma Type (Outlined|Filled)
17
- */
18
- type?: 'outlined' | 'filled';
10
+ variant?: 'dark' | 'light' | 'success' | 'error' | 'warning';
19
11
  /**
20
12
  * The message text to display
13
+ *
14
+ * @figmaPropMapping {Message} → message
21
15
  */
22
16
  message: string;
23
17
  /**
24
18
  * Horizontal alignment of the message content
25
19
  * @default "left"
26
20
  *
27
- * @figma Message Position (Left|Center)
21
+ * @figmaPropMapping messagePosition (Left|Center) → messagePosition
28
22
  */
29
23
  messagePosition?: 'left' | 'center';
30
24
  /**
31
- * Optional link text to display after the message.
32
- * In Figma, "Show Link" is a boolean toggle; when enabled, this string is rendered.
25
+ * Optional link text to display after the message
26
+ *
27
+ * @figmaPropMapping link (boolean) → linkText (string)
33
28
  */
34
29
  linkText?: string;
35
30
  /**
36
31
  * Whether to show the close button
37
32
  * @default true
38
33
  *
39
- * @figma Dismissible (boolean)
34
+ * @figmaPropMapping closeIcon → showClose
40
35
  */
41
36
  showClose?: boolean;
42
37
  /**
@@ -59,13 +54,13 @@ export interface NeoBannerProps extends Omit<AlertProps, 'variant' | 'severity'
59
54
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4170-2158
60
55
  *
61
56
  * Figma Props Mapping:
62
- * - Intention (Info|Success|Error|Warning|Neutral) → variant (info|success|error|warning|neutral)
63
- * - Type (Outlined|Filled) → type ('outlined'|'filled')
64
- * - Message Position (Left|Center) → messagePosition ('left'|'center')
65
- * - Dismissible (boolean) → showClose (boolean)
66
- * - Show Link (boolean) linkText presence (string when shown)
57
+ * - color (Dark|Light|Success|Error|Warning) → variant (dark|light|success|error|warning)
58
+ * - messagePosition (Left|Center) → messagePosition ("left"|"center")
59
+ * - closeIcon (boolean) → showClose (boolean)
60
+ * - link (boolean) → linkText (string)
61
+ * - {Message}message (string)
67
62
  */
68
63
  export declare const NeoBanner: {
69
- ({ variant, type, message, messagePosition, linkText, showClose, icon, onClose, onLinkClick, ...props }: NeoBannerProps): import("react/jsx-runtime").JSX.Element;
64
+ ({ variant, message, messagePosition, linkText, showClose, icon, onClose, onLinkClick, ...props }: NeoBannerProps): import("react/jsx-runtime").JSX.Element;
70
65
  displayName: string;
71
66
  };
@@ -20,7 +20,7 @@ export interface NeoCodeSnippetProps extends Omit<ButtonBaseProps, 'children'> {
20
20
  * The size of the code snippet
21
21
  * @default "small"
22
22
  *
23
- * @figma Content (Single|Multi|Inline)
23
+ * @figma Size (Single line|multiline|inline)
24
24
  */
25
25
  size?: CodeSnippetSize;
26
26
  /**
@@ -38,9 +38,9 @@ export interface NeoCodeSnippetProps extends Omit<ButtonBaseProps, 'children'> {
38
38
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4187-30353
39
39
  *
40
40
  * Figma Props Mapping:
41
- * - Theme (Dark|Light) → variant (outlined|filled)
42
- * - Content (Single|Multi|Inline) → size (small|large|inline)
43
- * - Show icon (boolean) → endIcon (ReactNode, unmappable)
41
+ * - Color (Light|Dark) → variant (outlined|filled)
42
+ * - size (Single line|multiline|inline) → size prop + auto-detected multiline
43
+ * - Copy button → endIcon (ReactNode)
44
44
  * - Text content → children prop
45
45
  */
46
46
  export declare const NeoCodeSnippet: {
@@ -1,6 +1,6 @@
1
1
  import { GridFilterPanel as MuiGridFilterPanel } from '@mui/x-data-grid';
2
2
  import type React from 'react';
3
- import { NeoSelect } from '../Select/Select';
3
+ import { NeoDropdown } from '../Dropdown/Dropdown';
4
4
  export type { GridFilterItem as FilterItem, GridFilterOperator as FilterOperator, } from '@mui/x-data-grid';
5
5
  /**
6
6
  * Icon components for DataGrid filter panel slots
@@ -50,7 +50,7 @@ export declare const NeoDataGridFilterPanelRemoveAllIcon: {
50
50
  * />
51
51
  * ```
52
52
  */
53
- export { NeoSelect as NeoDataGridSelect };
53
+ export { NeoDropdown as NeoDataGridSelect };
54
54
  export declare const NeoDataGridFilterPanel: {
55
55
  (props: React.ComponentProps<typeof MuiGridFilterPanel>): import("react/jsx-runtime").JSX.Element;
56
56
  displayName: string;
@@ -7,16 +7,16 @@ export interface NeoDividerProps extends DividerProps {
7
7
  * Generic divider component that can be used in menus, lists, cards, or any layout
8
8
  * that needs visual separation between content sections.
9
9
  *
10
- * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4159-8649
10
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4633-39807
11
11
  *
12
12
  * @example
13
13
  * ```tsx
14
14
  * // In a menu
15
- * <NeoMenu>
16
- * <NeoMenuItem>Settings</NeoMenuItem>
15
+ * <NeoDropdownMenu>
16
+ * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
17
17
  * <NeoDivider />
18
- * <NeoMenuItem>Sign out</NeoMenuItem>
19
- * </NeoMenu>
18
+ * <NeoDropdownMenuItem>Sign out</NeoDropdownMenuItem>
19
+ * </NeoDropdownMenu>
20
20
  *
21
21
  * // In a card
22
22
  * <Card>
@@ -0,0 +1,24 @@
1
+ import { type SelectProps as MuiSelectProps } from '@mui/material/Select';
2
+ import { NeoDropdownMenuItem } from '../DropdownMenuItem/DropdownMenuItem';
3
+ export type NeoDropdownProps = MuiSelectProps;
4
+ /**
5
+ * NeoDropdown - Dropdown select component with Neo design system styling
6
+ *
7
+ * A styled version of MUI's Select that uses Neo design tokens, Lucide ChevronDown icon,
8
+ * and NeoDropdownMenu/NeoDropdownMenuItem for the dropdown list.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * import { NeoDropdown, NeoDropdownOption } from '@moderneinc/neo-styled-components'
13
+ *
14
+ * <NeoDropdown value={value} onChange={handleChange}>
15
+ * <NeoDropdownOption value="option1">Option 1</NeoDropdownOption>
16
+ * <NeoDropdownOption value="option2">Option 2</NeoDropdownOption>
17
+ * </NeoDropdown>
18
+ * ```
19
+ */
20
+ export declare const NeoDropdown: {
21
+ (props: NeoDropdownProps): import("react/jsx-runtime").JSX.Element;
22
+ displayName: string;
23
+ };
24
+ export { NeoDropdownMenuItem as NeoDropdownOption };
@@ -0,0 +1,32 @@
1
+ import { type MenuProps } from '@mui/material/Menu';
2
+ export interface NeoDropdownMenuProps extends MenuProps {
3
+ /**
4
+ * Menu content (typically NeoDropdownMenuItem components)
5
+ */
6
+ children?: React.ReactNode;
7
+ }
8
+ /**
9
+ * NeoDropdownMenu - Dropdown menu component based on MUI Menu
10
+ *
11
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=11141-4980
12
+ *
13
+ * @example
14
+ * ```tsx
15
+ * const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);
16
+ * const open = Boolean(anchorEl);
17
+ *
18
+ * <Button onClick={(e) => setAnchorEl(e.currentTarget)}>Open Menu</Button>
19
+ * <NeoDropdownMenu
20
+ * open={open}
21
+ * anchorEl={anchorEl}
22
+ * onClose={() => setAnchorEl(null)}
23
+ * >
24
+ * <NeoDropdownMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoDropdownMenuItem>
25
+ * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
26
+ * </NeoDropdownMenu>
27
+ * ```
28
+ */
29
+ export declare const NeoDropdownMenu: {
30
+ ({ children, ...props }: NeoDropdownMenuProps): import("react/jsx-runtime").JSX.Element;
31
+ displayName: string;
32
+ };
@@ -0,0 +1,50 @@
1
+ import { type MenuItemProps } from '@mui/material/MenuItem';
2
+ import type { ReactNode } from 'react';
3
+ export interface NeoDropdownMenuItemProps extends MenuItemProps {
4
+ /**
5
+ * Optional icon to display on the left side
6
+ * Note: Cannot be directly mapped from Figma (ReactNode)
7
+ */
8
+ icon?: ReactNode;
9
+ /**
10
+ * Optional keyboard shortcut to display on the right side
11
+ * @example "⌘+P" or "Ctrl+K"
12
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
13
+ */
14
+ shortcut?: string;
15
+ /**
16
+ * Optional secondary text to display next to the primary label
17
+ * @example "@username" or supporting text
18
+ * Note: Cannot be directly mapped from Figma (ReactNode/string)
19
+ */
20
+ secondaryText?: string;
21
+ /**
22
+ * Menu item content (text label)
23
+ * @figma children mapped from Figma layer content
24
+ */
25
+ children?: ReactNode;
26
+ }
27
+ /**
28
+ * NeoDropdownMenuItem - Dropdown menu item component based on MUI MenuItem
29
+ *
30
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4159-8584
31
+ *
32
+ * @example
33
+ * ```tsx
34
+ * // With icon and shortcut
35
+ * <NeoDropdownMenuItem icon={<UserIcon />} shortcut="⌘+P">
36
+ * View profile
37
+ * </NeoDropdownMenuItem>
38
+ *
39
+ * // With secondary text (user list pattern from Figma node 4305:41844)
40
+ * <NeoDropdownMenuItem secondaryText="@phoenix">Phoenix Baker</NeoDropdownMenuItem>
41
+ * <NeoDropdownMenuItem secondaryText="@olivia">Olivia Rhye</NeoDropdownMenuItem>
42
+ *
43
+ * // Disabled state
44
+ * <NeoDropdownMenuItem disabled>Disabled item</NeoDropdownMenuItem>
45
+ * ```
46
+ */
47
+ export declare const NeoDropdownMenuItem: {
48
+ ({ icon, shortcut, secondaryText, children, ...props }: NeoDropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
49
+ displayName: string;
50
+ };
@@ -14,15 +14,15 @@ export interface NeoIconButtonProps extends Omit<IconButtonProps, 'color' | 'siz
14
14
  *
15
15
  * Simple, neutral icon button with transparent background and icon color states.
16
16
  *
17
- * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4086-7590
17
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC?node-id=11126-21344
18
18
  *
19
19
  * Figma Props Mapping:
20
- * - Hierarchy=Icon → Single default style (no variant prop)
21
20
  * - Size (Small|Medium) → size prop
22
21
  * - State=Disabled → disabled prop
23
22
  * - State=Hover → CSS :hover
24
- * - State=Pressed → CSS :active
25
- * - State=Focused → CSS :focus-visible
23
+ * - State=Active → CSS :active
24
+ * - State=Focus → CSS :focus-visible
25
+ * - State=Loading → not yet implemented
26
26
  */
27
27
  export declare const NeoIconButton: {
28
28
  ({ size, ...props }: NeoIconButtonProps): import("react/jsx-runtime").JSX.Element;
@@ -7,15 +7,13 @@ export interface NeoStatusBannerProps extends Omit<AlertProps, 'severity' | 'var
7
7
  /**
8
8
  * The severity level of the status banner
9
9
  * @default "success"
10
- *
11
- * @figma Intent (Success|Error|Info|Offline|Warning)
10
+ * @figma Intent
12
11
  */
13
- severity?: 'success' | 'error' | 'neutral' | 'info' | 'warning';
12
+ severity?: 'success' | 'error' | 'neutral' | 'info';
14
13
  /**
15
14
  * The visual variant style
16
15
  * @default "outlined"
17
- *
18
- * @figma Type (Outlined|Filled)
16
+ * @figma Theme
19
17
  */
20
18
  variant?: 'outlined' | 'filled';
21
19
  /**
@@ -30,21 +28,20 @@ export interface NeoStatusBannerProps extends Omit<AlertProps, 'severity' | 'var
30
28
  /**
31
29
  * NeoStatusBanner - Status banner component for displaying system status messages
32
30
  *
33
- * Displays status information with different severity levels (success, error, info, neutral, warning)
34
- * and visual modes (outlined for light backgrounds, filled for emphasis).
31
+ * Displays status information with different severity levels (success, error, info, neutral) and
32
+ * visual modes (outlined for light backgrounds, filled for emphasis).
35
33
  *
36
34
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4921-3427
37
35
  *
38
36
  * Figma Props Mapping:
39
- * - Intent (Success|Error|Info|Offline|Warning) → severity ('success'|'error'|'info'|'neutral'|'warning')
40
- * - Type (Outlined|Filled) → variant ('outlined'|'filled')
37
+ * - Status (Success|Error|Info|Offline) → severity ('success'|'error'|'info'|'neutral')
38
+ * - Mode (Light|Dark) → variant ('outlined'|'filled')
41
39
  *
42
40
  * Design Tokens Used:
43
41
  * - status.success.light, status.success.default
44
42
  * - status.error.light, status.error.default
45
43
  * - status.neutral.light, status.neutral.default
46
44
  * - status.info.light, status.info.default
47
- * - status.warning.light, status.warning.default
48
45
  * - typography.tooltip, typography.bodySecondary
49
46
  * - grey[800]
50
47
  * - fontSize.default, fontSize.sm
@@ -22,13 +22,13 @@ export interface NeoTabProps extends Omit<TabProps, 'label'> {
22
22
  * Optional count to display in a tag next to the label
23
23
  * @default undefined
24
24
  *
25
- * @figma Show tag (boolean)
25
+ * @figma Tag with number (999)
26
26
  */
27
27
  count?: number | string;
28
28
  /**
29
29
  * Tab value identifier
30
30
  *
31
- * @figma Selected (True|False) — controlled by parent NeoTabs
31
+ * @figma Used for Current=True/False state
32
32
  */
33
33
  value: string | number;
34
34
  }
@@ -38,9 +38,11 @@ export interface NeoTabProps extends Omit<TabProps, 'label'> {
38
38
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=3368-26152
39
39
  *
40
40
  * Figma Props Mapping:
41
- * - Selected (True|False) → Controlled by parent NeoTabs value
42
- * - State (Default|Hover|Focus|Disabled)CSS states + disabled prop
43
- * - Show tag (boolean) count prop (renders NeoTag)
41
+ * - Current=True/False → Controlled by parent NeoTabs value
42
+ * - State=Default → default styling
43
+ * - State=HoverCSS :hover
44
+ * - State=Focus → CSS :focus-visible
45
+ * - Tag count → count prop (renders NeoTag)
44
46
  * - Text label → label prop
45
47
  */
46
48
  export declare const NeoTab: {
package/dist/Tag/Tag.d.ts CHANGED
@@ -15,19 +15,19 @@ declare module '@mui/material/Chip' {
15
15
  export interface NeoTagProps extends Omit<ChipProps, 'variant' | 'size'> {
16
16
  /**
17
17
  * The size of the tag
18
- * @figma Size (Small|Medium|Large)
18
+ * @figma m (sm|md|lg)
19
19
  * @default "small"
20
20
  */
21
21
  size?: 'small' | 'medium' | 'large';
22
22
  /**
23
23
  * The variant style of the tag
24
- * @figma Type (Outline|Filled)
24
+ * @figma type (light|dark)
25
25
  * @default "outlined"
26
26
  */
27
27
  variant?: 'outlined' | 'filled';
28
28
  /**
29
- * The color/intent of the tag
30
- * @figma Intent (Neutral|Error|Warning|Success|Info|Violet|Beta)
29
+ * The color/state of the tag
30
+ * @figma state (Neutral|Error|Warning|Success|Info|Violet|Beta)
31
31
  * @default "default"
32
32
  */
33
33
  color?: 'default' | 'error' | 'warning' | 'success' | 'info' | 'violet' | 'beta';
@@ -38,9 +38,9 @@ export interface NeoTagProps extends Omit<ChipProps, 'variant' | 'size'> {
38
38
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4120-34533
39
39
  *
40
40
  * Figma Props Mapping:
41
- * - Size (Small|Medium|Large) → size (small|medium|large)
42
- * - Type (Outline|Filled) → variant (outlined|filled)
43
- * - Intent (Neutral|Error|Warning|Success|Info|Violet|Beta) → color (default|error|warning|success|info|violet|beta)
41
+ * - m (sm|md|lg) → size (small|medium|large)
42
+ * - type (light|dark) → variant (outlined|filled)
43
+ * - state (Neutral|Error|Warning|Success|Info|Violet|Beta) → color (default|error|warning|success|info|violet|beta)
44
44
  * - Label text → label prop
45
45
  */
46
46
  export declare const NeoTag: {
@@ -3,17 +3,10 @@ import Button from '@mui/material/Button';
3
3
  import type { ReactNode } from 'react';
4
4
  export interface NeoToastProps extends Omit<AlertProps, 'variant' | 'severity' | 'color'> {
5
5
  /**
6
- * The intent/color variant of the toast
6
+ * The visual style variant of the toast
7
7
  * @default "default"
8
8
  */
9
- variant?: 'default' | 'error' | 'success' | 'info' | 'warning' | 'dark' | 'brand' | 'download';
10
- /**
11
- * The visual type: outlined (light bg + border) or filled (solid bg)
12
- * Only applies to intent variants (default, error, success, info, warning).
13
- * Legacy variants (dark, brand, download) ignore this prop.
14
- * @default "outlined"
15
- */
16
- type?: 'filled' | 'outlined';
9
+ variant?: 'default' | 'dark' | 'brand' | 'error' | 'success' | 'info' | 'download';
17
10
  /**
18
11
  * The title/header text
19
12
  */
@@ -51,26 +44,25 @@ export interface NeoToastProps extends Omit<AlertProps, 'variant' | 'severity' |
51
44
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4122-37223
52
45
  *
53
46
  * Figma Props Mapping:
54
- * - Intent (Neutral|Error|Success|Info|Warning) → variant (default|error|success|info|warning)
55
- * - Type (Outlined|Filled) type ('outlined'|'filled')
56
- * - Show header title (string)
57
- * - Show supporting text message (string)
58
- * - Show close icon showClose (boolean)
59
- * - Show actionsactions (ReactNode)
47
+ * - type (Light mode|Dark mode|Brand color|Error|Success|Info|Download) → variant (default|dark|brand|error|success|info|download)
48
+ * - headertitle (string)
49
+ * - supportingTextmessage (string)
50
+ * - xCloseButtonshowClose (boolean)
51
+ * - actionsactions (ReactNode)
52
+ * - Progress barprogress (number 0-100)
60
53
  */
61
54
  export declare const NeoToast: {
62
- ({ variant, type, title, message, showClose, actions, progress, fileName, onClose, ...props }: NeoToastProps): import("react/jsx-runtime").JSX.Element;
55
+ ({ variant, title, message, showClose, actions, progress, fileName, onClose, ...props }: NeoToastProps): import("react/jsx-runtime").JSX.Element;
63
56
  displayName: string;
64
57
  };
65
58
  /**
66
59
  * Helper component for creating toast action buttons with proper styling
67
60
  */
68
61
  export declare const NeoToastButton: {
69
- ({ primary, variant, type, children, ...props }: {
62
+ ({ primary, variant, children, ...props }: {
70
63
  primary?: boolean;
71
64
  variant?: NeoToastProps["variant"];
72
- type?: NeoToastProps["type"];
73
65
  children: ReactNode;
74
- } & Omit<React.ComponentProps<typeof Button>, "variant" | "type">): import("react/jsx-runtime").JSX.Element;
66
+ } & Omit<React.ComponentProps<typeof Button>, "variant">): import("react/jsx-runtime").JSX.Element;
75
67
  displayName: string;
76
68
  };
@@ -10,7 +10,7 @@ export interface NeoTooltipProps extends Omit<TooltipProps, 'title' | 'variant'>
10
10
  /**
11
11
  * The visual style variant
12
12
  * @default "light"
13
- * @figma Theme (Light mode|Dark mode|Brand color)
13
+ * @figma Type
14
14
  */
15
15
  variant?: TooltipVariant;
16
16
  /**
@@ -22,7 +22,7 @@ export interface NeoTooltipProps extends Omit<TooltipProps, 'title' | 'variant'>
22
22
  * Optional supporting description text
23
23
  * When provided, shows a larger tooltip with title (semibold) + description (medium)
24
24
  * @default undefined
25
- * @figma Show description (boolean)
25
+ * @figma Supporting text
26
26
  */
27
27
  description?: string;
28
28
  }
@@ -35,10 +35,10 @@ export interface NeoTooltipProps extends Omit<TooltipProps, 'title' | 'variant'>
35
35
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4091-26557&t=Bo58EpFmg6ILJtmv-11
36
36
  *
37
37
  * Figma Props Mapping:
38
- * - Theme (Light mode|Dark mode|Brand color) → variant ('light'|'dark'|'brand')
39
- * - Placement (None|Bottom left|...|Top center) → arrow (boolean) + placement
40
- * - Show description (boolean) → description (string|undefined)
41
- * - Text → title (string, literal content)
38
+ * - Type (Light mode|Dark mode|Brand color) → variant ('light'|'dark'|'brand')
39
+ * - Arrow → arrow (boolean) + placement (top/bottom/left/right/etc)
40
+ * - Supporting text (True|False) → description (string|undefined)
41
+ * - text → title (string, literal content)
42
42
  *
43
43
  * Design Tokens Used:
44
44
  * - Light: surfaces.tooltip (#4b5563), typography.tooltip (#ffffff)