@moderneinc/neo-styled-components 4.0.0-next.557dc6 → 4.0.0-next.572686

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.
@@ -1,6 +1,6 @@
1
1
  import { GridFilterPanel as MuiGridFilterPanel } from '@mui/x-data-grid';
2
2
  import type React from 'react';
3
- import { NeoDropdown } from '../Dropdown/Dropdown';
3
+ import { NeoSelect } from '../Select/Select';
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 { NeoDropdown as NeoDataGridSelect };
53
+ export { NeoSelect 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;
@@ -12,11 +12,11 @@ export interface NeoDividerProps extends DividerProps {
12
12
  * @example
13
13
  * ```tsx
14
14
  * // In a menu
15
- * <NeoDropdownMenu>
16
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
15
+ * <NeoMenu>
16
+ * <NeoMenuItem>Settings</NeoMenuItem>
17
17
  * <NeoDivider />
18
- * <NeoDropdownMenuItem>Sign out</NeoDropdownMenuItem>
19
- * </NeoDropdownMenu>
18
+ * <NeoMenuItem>Sign out</NeoMenuItem>
19
+ * </NeoMenu>
20
20
  *
21
21
  * // In a card
22
22
  * <Card>
@@ -1,12 +1,12 @@
1
1
  import { type MenuProps } from '@mui/material/Menu';
2
- export interface NeoDropdownMenuProps extends MenuProps {
2
+ export interface NeoMenuProps extends MenuProps {
3
3
  /**
4
- * Menu content (typically NeoDropdownMenuItem components)
4
+ * Menu content (typically NeoMenuItem components)
5
5
  */
6
6
  children?: React.ReactNode;
7
7
  }
8
8
  /**
9
- * NeoDropdownMenu - Dropdown menu component based on MUI Menu
9
+ * NeoMenu - Menu component based on MUI Menu
10
10
  *
11
11
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=11141-4980
12
12
  *
@@ -16,17 +16,17 @@ export interface NeoDropdownMenuProps extends MenuProps {
16
16
  * const open = Boolean(anchorEl);
17
17
  *
18
18
  * <Button onClick={(e) => setAnchorEl(e.currentTarget)}>Open Menu</Button>
19
- * <NeoDropdownMenu
19
+ * <NeoMenu
20
20
  * open={open}
21
21
  * anchorEl={anchorEl}
22
22
  * onClose={() => setAnchorEl(null)}
23
23
  * >
24
- * <NeoDropdownMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoDropdownMenuItem>
25
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
26
- * </NeoDropdownMenu>
24
+ * <NeoMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoMenuItem>
25
+ * <NeoMenuItem>Settings</NeoMenuItem>
26
+ * </NeoMenu>
27
27
  * ```
28
28
  */
29
- export declare const NeoDropdownMenu: {
30
- ({ children, ...props }: NeoDropdownMenuProps): import("react/jsx-runtime").JSX.Element;
29
+ export declare const NeoMenu: {
30
+ ({ children, ...props }: NeoMenuProps): import("react/jsx-runtime").JSX.Element;
31
31
  displayName: string;
32
32
  };
@@ -1,6 +1,6 @@
1
1
  import { type MenuItemProps } from '@mui/material/MenuItem';
2
2
  import type { ReactNode } from 'react';
3
- export interface NeoDropdownMenuItemProps extends MenuItemProps {
3
+ export interface NeoMenuItemProps extends MenuItemProps {
4
4
  /**
5
5
  * Optional icon to display on the left side
6
6
  * Note: Cannot be directly mapped from Figma (ReactNode)
@@ -25,26 +25,26 @@ export interface NeoDropdownMenuItemProps extends MenuItemProps {
25
25
  children?: ReactNode;
26
26
  }
27
27
  /**
28
- * NeoDropdownMenuItem - Dropdown menu item component based on MUI MenuItem
28
+ * NeoMenuItem - Menu item component based on MUI MenuItem
29
29
  *
30
30
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4159-8584
31
31
  *
32
32
  * @example
33
33
  * ```tsx
34
34
  * // With icon and shortcut
35
- * <NeoDropdownMenuItem icon={<UserIcon />} shortcut="⌘+P">
35
+ * <NeoMenuItem icon={<UserIcon />} shortcut="⌘+P">
36
36
  * View profile
37
- * </NeoDropdownMenuItem>
37
+ * </NeoMenuItem>
38
38
  *
39
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>
40
+ * <NeoMenuItem secondaryText="@phoenix">Phoenix Baker</NeoMenuItem>
41
+ * <NeoMenuItem secondaryText="@olivia">Olivia Rhye</NeoMenuItem>
42
42
  *
43
43
  * // Disabled state
44
- * <NeoDropdownMenuItem disabled>Disabled item</NeoDropdownMenuItem>
44
+ * <NeoMenuItem disabled>Disabled item</NeoMenuItem>
45
45
  * ```
46
46
  */
47
- export declare const NeoDropdownMenuItem: {
48
- ({ icon, shortcut, secondaryText, children, ...props }: NeoDropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare const NeoMenuItem: {
48
+ ({ icon, shortcut, secondaryText, children, ...props }: NeoMenuItemProps): import("react/jsx-runtime").JSX.Element;
49
49
  displayName: string;
50
50
  };
@@ -0,0 +1,24 @@
1
+ import { type SelectProps as MuiSelectProps } from '@mui/material/Select';
2
+ import { NeoMenuItem } from '../MenuItem/MenuItem';
3
+ export type NeoSelectProps = MuiSelectProps;
4
+ /**
5
+ * NeoSelect - 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 NeoMenu/NeoMenuItem for the dropdown list.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * import { NeoSelect, NeoSelectOption } from '@moderneinc/neo-styled-components'
13
+ *
14
+ * <NeoSelect value={value} onChange={handleChange}>
15
+ * <NeoSelectOption value="option1">Option 1</NeoSelectOption>
16
+ * <NeoSelectOption value="option2">Option 2</NeoSelectOption>
17
+ * </NeoSelect>
18
+ * ```
19
+ */
20
+ export declare const NeoSelect: {
21
+ (props: NeoSelectProps): import("react/jsx-runtime").JSX.Element;
22
+ displayName: string;
23
+ };
24
+ export { NeoMenuItem as NeoSelectOption };
package/dist/index.d.ts CHANGED
@@ -1099,7 +1099,7 @@ declare namespace NeoDataGridFiltersButton {
1099
1099
  var displayName: string;
1100
1100
  }
1101
1101
 
1102
- interface NeoDropdownMenuItemProps extends MenuItemProps {
1102
+ interface NeoMenuItemProps extends MenuItemProps {
1103
1103
  /**
1104
1104
  * Optional icon to display on the left side
1105
1105
  * Note: Cannot be directly mapped from Figma (ReactNode)
@@ -1124,49 +1124,49 @@ interface NeoDropdownMenuItemProps extends MenuItemProps {
1124
1124
  children?: ReactNode;
1125
1125
  }
1126
1126
  /**
1127
- * NeoDropdownMenuItem - Dropdown menu item component based on MUI MenuItem
1127
+ * NeoMenuItem - Menu item component based on MUI MenuItem
1128
1128
  *
1129
1129
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4159-8584
1130
1130
  *
1131
1131
  * @example
1132
1132
  * ```tsx
1133
1133
  * // With icon and shortcut
1134
- * <NeoDropdownMenuItem icon={<UserIcon />} shortcut="⌘+P">
1134
+ * <NeoMenuItem icon={<UserIcon />} shortcut="⌘+P">
1135
1135
  * View profile
1136
- * </NeoDropdownMenuItem>
1136
+ * </NeoMenuItem>
1137
1137
  *
1138
1138
  * // With secondary text (user list pattern from Figma node 4305:41844)
1139
- * <NeoDropdownMenuItem secondaryText="@phoenix">Phoenix Baker</NeoDropdownMenuItem>
1140
- * <NeoDropdownMenuItem secondaryText="@olivia">Olivia Rhye</NeoDropdownMenuItem>
1139
+ * <NeoMenuItem secondaryText="@phoenix">Phoenix Baker</NeoMenuItem>
1140
+ * <NeoMenuItem secondaryText="@olivia">Olivia Rhye</NeoMenuItem>
1141
1141
  *
1142
1142
  * // Disabled state
1143
- * <NeoDropdownMenuItem disabled>Disabled item</NeoDropdownMenuItem>
1143
+ * <NeoMenuItem disabled>Disabled item</NeoMenuItem>
1144
1144
  * ```
1145
1145
  */
1146
- declare const NeoDropdownMenuItem: {
1147
- ({ icon, shortcut, secondaryText, children, ...props }: NeoDropdownMenuItemProps): react_jsx_runtime.JSX.Element;
1146
+ declare const NeoMenuItem: {
1147
+ ({ icon, shortcut, secondaryText, children, ...props }: NeoMenuItemProps): react_jsx_runtime.JSX.Element;
1148
1148
  displayName: string;
1149
1149
  };
1150
1150
 
1151
- type NeoDropdownProps = SelectProps;
1151
+ type NeoSelectProps = SelectProps;
1152
1152
  /**
1153
- * NeoDropdown - Dropdown select component with Neo design system styling
1153
+ * NeoSelect - Select component with Neo design system styling
1154
1154
  *
1155
1155
  * A styled version of MUI's Select that uses Neo design tokens, Lucide ChevronDown icon,
1156
- * and NeoDropdownMenu/NeoDropdownMenuItem for the dropdown list.
1156
+ * and NeoMenu/NeoMenuItem for the dropdown list.
1157
1157
  *
1158
1158
  * @example
1159
1159
  * ```tsx
1160
- * import { NeoDropdown, NeoDropdownOption } from '@moderneinc/neo-styled-components'
1160
+ * import { NeoSelect, NeoSelectOption } from '@moderneinc/neo-styled-components'
1161
1161
  *
1162
- * <NeoDropdown value={value} onChange={handleChange}>
1163
- * <NeoDropdownOption value="option1">Option 1</NeoDropdownOption>
1164
- * <NeoDropdownOption value="option2">Option 2</NeoDropdownOption>
1165
- * </NeoDropdown>
1162
+ * <NeoSelect value={value} onChange={handleChange}>
1163
+ * <NeoSelectOption value="option1">Option 1</NeoSelectOption>
1164
+ * <NeoSelectOption value="option2">Option 2</NeoSelectOption>
1165
+ * </NeoSelect>
1166
1166
  * ```
1167
1167
  */
1168
- declare const NeoDropdown: {
1169
- (props: NeoDropdownProps): react_jsx_runtime.JSX.Element;
1168
+ declare const NeoSelect: {
1169
+ (props: NeoSelectProps): react_jsx_runtime.JSX.Element;
1170
1170
  displayName: string;
1171
1171
  };
1172
1172
 
@@ -1267,11 +1267,11 @@ interface NeoDividerProps extends DividerProps {
1267
1267
  * @example
1268
1268
  * ```tsx
1269
1269
  * // In a menu
1270
- * <NeoDropdownMenu>
1271
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
1270
+ * <NeoMenu>
1271
+ * <NeoMenuItem>Settings</NeoMenuItem>
1272
1272
  * <NeoDivider />
1273
- * <NeoDropdownMenuItem>Sign out</NeoDropdownMenuItem>
1274
- * </NeoDropdownMenu>
1273
+ * <NeoMenuItem>Sign out</NeoMenuItem>
1274
+ * </NeoMenu>
1275
1275
  *
1276
1276
  * // In a card
1277
1277
  * <Card>
@@ -1537,14 +1537,14 @@ declare const NeoLoadingSpinner: {
1537
1537
  displayName: string;
1538
1538
  };
1539
1539
 
1540
- interface NeoDropdownMenuProps extends MenuProps {
1540
+ interface NeoMenuProps extends MenuProps {
1541
1541
  /**
1542
- * Menu content (typically NeoDropdownMenuItem components)
1542
+ * Menu content (typically NeoMenuItem components)
1543
1543
  */
1544
1544
  children?: React.ReactNode;
1545
1545
  }
1546
1546
  /**
1547
- * NeoDropdownMenu - Dropdown menu component based on MUI Menu
1547
+ * NeoMenu - Menu component based on MUI Menu
1548
1548
  *
1549
1549
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=11141-4980
1550
1550
  *
@@ -1554,18 +1554,18 @@ interface NeoDropdownMenuProps extends MenuProps {
1554
1554
  * const open = Boolean(anchorEl);
1555
1555
  *
1556
1556
  * <Button onClick={(e) => setAnchorEl(e.currentTarget)}>Open Menu</Button>
1557
- * <NeoDropdownMenu
1557
+ * <NeoMenu
1558
1558
  * open={open}
1559
1559
  * anchorEl={anchorEl}
1560
1560
  * onClose={() => setAnchorEl(null)}
1561
1561
  * >
1562
- * <NeoDropdownMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoDropdownMenuItem>
1563
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
1564
- * </NeoDropdownMenu>
1562
+ * <NeoMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoMenuItem>
1563
+ * <NeoMenuItem>Settings</NeoMenuItem>
1564
+ * </NeoMenu>
1565
1565
  * ```
1566
1566
  */
1567
- declare const NeoDropdownMenu: {
1568
- ({ children, ...props }: NeoDropdownMenuProps): react_jsx_runtime.JSX.Element;
1567
+ declare const NeoMenu: {
1568
+ ({ children, ...props }: NeoMenuProps): react_jsx_runtime.JSX.Element;
1569
1569
  displayName: string;
1570
1570
  };
1571
1571
 
@@ -2929,5 +2929,5 @@ declare module '@mui/x-data-grid-pro' {
2929
2929
 
2930
2930
  declare const version: string
2931
2931
 
2932
- export { ActivityScene, CIRCLE_RADIUS, NeoActivityHeader, NeoActivityIndicatorCell, NeoAlert, NeoAvatar, NeoBadge, NeoBanner, NeoBreadcrumbLink, NeoBreadcrumbs, NeoButton, NeoButtonTab, NeoButtonTabGroup, NeoCard, NeoCheckbox, NeoCodeSnippet, NeoDataGrid, NeoDataGridCellContent, NeoDataGridColumnsButton, NeoDataGridColumnsPanel, NeoDataGridFilterPanel, NeoDataGridFilterPanelAddIcon, NeoDataGridFilterPanelDeleteIcon, NeoDataGridFilterPanelRemoveAllIcon, NeoDataGridFiltersButton, NeoDataGridHeaderLabel, NeoDropdown as NeoDataGridSelect, NeoDatePicker, NeoDivider, NeoDot, NeoDropdown, NeoDropdownMenu, NeoDropdownMenuItem, NeoDropdownMenuItem as NeoDropdownOption, NeoFilterChip, NeoFooter, NeoGeneralAvatar, NeoIconButton, NeoInfiniteScrollGrid, NeoInputField, NeoListItem, NeoListItemButton, NeoLoadingSpinner, NeoMarketplaceCard, NeoMarketplaceLargeCard, NeoDropdownMenu as NeoMenu, NeoDropdownMenuItem as NeoMenuItem, NeoModal, NeoModalContent, NeoModalFooter, NeoModalHeader, NeoMultiBadgesCell, NeoNavigationAvatar, NeoNavigationItem, NeoPageContent, NeoPaginatedGrid, NeoProgressbar, NeoQuickFilter, NeoRadio, NeoSearchChip, NeoDropdown as NeoSelect, NeoDropdownMenuItem as NeoSelectOption, NeoSkeleton, NeoStatusBadgeCell, NeoTab, NeoTabs, NeoTag, NeoToast, NeoToastButton, NeoToggle, NeoToolbar, NeoTooltip, NeoTreeItem, NeoTreeView, StyledToggleButton as NeoTypologyButton, NeoTypologyControl, NeoUserAvatarCell, SortedAscendingIcon, SortedDescendingIcon, UnsortedIcon, getDataGridHeaderStyles, version };
2933
- export type { ActivityColor, ActivityEvent, ActivityHeaderSize, BreadcrumbItem, DataGridSize, NeoActivityHeaderProps, NeoActivityIndicatorCellProps, NeoAlertProps, NeoAvatarProps, NeoBadgeProps, NeoBannerProps, NeoBreadcrumbLinkProps, NeoBreadcrumbsProps, NeoButtonProps, NeoButtonTabGroupProps, NeoButtonTabProps, NeoCardLargeProps, NeoCardProps, NeoCardSize, NeoCardSmallProps, NeoCheckboxProps, NeoCodeSnippetProps, NeoDataGridCellContentProps, NeoDataGridHeaderLabelProps, NeoDataGridProps, NeoDatePickerProps, NeoDividerProps, NeoDotProps, NeoDropdownMenuItemProps, NeoDropdownMenuProps, NeoDropdownProps, NeoFilterChipProps, NeoFooterProps, NeoGeneralAvatarProps, NeoIconButtonProps, NeoInfiniteScrollGridProps, NeoInputFieldProps, NeoListItemButtonProps, NeoListItemProps, NeoLoadingSpinnerProps, NeoMarketplaceCardProps, NeoMarketplaceLargeCardProps, NeoDropdownMenuItemProps as NeoMenuItemProps, NeoDropdownMenuProps as NeoMenuProps, NeoModalContentProps, NeoModalFooterProps, NeoModalHeaderProps, NeoModalProps, NeoMultiBadgesCellProps, NeoNavigationAvatarProps, NeoNavigationItemProps, NeoPageContentProps, NeoPaginatedGridProps, NeoProgressbarProps, NeoQuickFilterProps, NeoRadioProps, NeoSearchChipProps, NeoDropdownProps as NeoSelectProps, NeoSkeletonProps, NeoStatusBadgeCellProps, NeoTabProps, NeoTagProps, NeoToastProps, NeoToggleProps, NeoToolbarProps, NeoTooltipProps, NeoTreeItemData, NeoTreeItemProps, NeoTreeViewProps, NeoTypologyControlProps, NeoUserAvatarCellProps };
2932
+ export { ActivityScene, CIRCLE_RADIUS, NeoActivityHeader, NeoActivityIndicatorCell, NeoAlert, NeoAvatar, NeoBadge, NeoBanner, NeoBreadcrumbLink, NeoBreadcrumbs, NeoButton, NeoButtonTab, NeoButtonTabGroup, NeoCard, NeoCheckbox, NeoCodeSnippet, NeoDataGrid, NeoDataGridCellContent, NeoDataGridColumnsButton, NeoDataGridColumnsPanel, NeoDataGridFilterPanel, NeoDataGridFilterPanelAddIcon, NeoDataGridFilterPanelDeleteIcon, NeoDataGridFilterPanelRemoveAllIcon, NeoDataGridFiltersButton, NeoDataGridHeaderLabel, NeoSelect as NeoDataGridSelect, NeoDatePicker, NeoDivider, NeoDot, NeoSelect as NeoDropdown, NeoMenu as NeoDropdownMenu, NeoMenuItem as NeoDropdownMenuItem, NeoMenuItem as NeoDropdownOption, NeoFilterChip, NeoFooter, NeoGeneralAvatar, NeoIconButton, NeoInfiniteScrollGrid, NeoInputField, NeoListItem, NeoListItemButton, NeoLoadingSpinner, NeoMarketplaceCard, NeoMarketplaceLargeCard, NeoMenu, NeoMenuItem, NeoModal, NeoModalContent, NeoModalFooter, NeoModalHeader, NeoMultiBadgesCell, NeoNavigationAvatar, NeoNavigationItem, NeoPageContent, NeoPaginatedGrid, NeoProgressbar, NeoQuickFilter, NeoRadio, NeoSearchChip, NeoSelect, NeoMenuItem as NeoSelectOption, NeoSkeleton, NeoStatusBadgeCell, NeoTab, NeoTabs, NeoTag, NeoToast, NeoToastButton, NeoToggle, NeoToolbar, NeoTooltip, NeoTreeItem, NeoTreeView, StyledToggleButton as NeoTypologyButton, NeoTypologyControl, NeoUserAvatarCell, SortedAscendingIcon, SortedDescendingIcon, UnsortedIcon, getDataGridHeaderStyles, version };
2933
+ export type { ActivityColor, ActivityEvent, ActivityHeaderSize, BreadcrumbItem, DataGridSize, NeoActivityHeaderProps, NeoActivityIndicatorCellProps, NeoAlertProps, NeoAvatarProps, NeoBadgeProps, NeoBannerProps, NeoBreadcrumbLinkProps, NeoBreadcrumbsProps, NeoButtonProps, NeoButtonTabGroupProps, NeoButtonTabProps, NeoCardLargeProps, NeoCardProps, NeoCardSize, NeoCardSmallProps, NeoCheckboxProps, NeoCodeSnippetProps, NeoDataGridCellContentProps, NeoDataGridHeaderLabelProps, NeoDataGridProps, NeoDatePickerProps, NeoDividerProps, NeoDotProps, NeoMenuItemProps as NeoDropdownMenuItemProps, NeoMenuProps as NeoDropdownMenuProps, NeoSelectProps as NeoDropdownProps, NeoFilterChipProps, NeoFooterProps, NeoGeneralAvatarProps, NeoIconButtonProps, NeoInfiniteScrollGridProps, NeoInputFieldProps, NeoListItemButtonProps, NeoListItemProps, NeoLoadingSpinnerProps, NeoMarketplaceCardProps, NeoMarketplaceLargeCardProps, NeoMenuItemProps, NeoMenuProps, NeoModalContentProps, NeoModalFooterProps, NeoModalHeaderProps, NeoModalProps, NeoMultiBadgesCellProps, NeoNavigationAvatarProps, NeoNavigationItemProps, NeoPageContentProps, NeoPaginatedGridProps, NeoProgressbarProps, NeoQuickFilterProps, NeoRadioProps, NeoSearchChipProps, NeoSelectProps, NeoSkeletonProps, NeoStatusBadgeCellProps, NeoTabProps, NeoTagProps, NeoToastProps, NeoToggleProps, NeoToolbarProps, NeoTooltipProps, NeoTreeItemData, NeoTreeItemProps, NeoTreeViewProps, NeoTypologyControlProps, NeoUserAvatarCellProps };
package/dist/index.esm.js CHANGED
@@ -40,14 +40,14 @@ import Badge, { badgeClasses } from '@mui/material/Badge';
40
40
  import LinearProgress, { linearProgressClasses } from '@mui/material/LinearProgress';
41
41
  import Paper, { paperClasses } from '@mui/material/Paper';
42
42
  import Stack from '@mui/material/Stack';
43
- import { listClasses } from '@mui/material/List';
44
- import Menu from '@mui/material/Menu';
45
43
  import FormControl from '@mui/material/FormControl';
46
44
  import FormHelperText, { formHelperTextClasses } from '@mui/material/FormHelperText';
47
45
  import ListItemButton, { listItemButtonClasses } from '@mui/material/ListItemButton';
48
46
  import ListItemIcon, { listItemIconClasses } from '@mui/material/ListItemIcon';
49
47
  import ListItemText, { listItemTextClasses } from '@mui/material/ListItemText';
50
48
  import Typography from '@mui/material/Typography';
49
+ import { listClasses } from '@mui/material/List';
50
+ import Menu from '@mui/material/Menu';
51
51
  import Dialog, { dialogClasses } from '@mui/material/Dialog';
52
52
  import DialogActions, { dialogActionsClasses } from '@mui/material/DialogActions';
53
53
  import DialogContent, { dialogContentClasses } from '@mui/material/DialogContent';
@@ -2331,32 +2331,32 @@ const Shortcut = styled('span')(({ theme }) => ({
2331
2331
  backgroundColor: semanticColors.surfaces.white,
2332
2332
  }));
2333
2333
  /**
2334
- * NeoDropdownMenuItem - Dropdown menu item component based on MUI MenuItem
2334
+ * NeoMenuItem - Menu item component based on MUI MenuItem
2335
2335
  *
2336
2336
  * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=4159-8584
2337
2337
  *
2338
2338
  * @example
2339
2339
  * ```tsx
2340
2340
  * // With icon and shortcut
2341
- * <NeoDropdownMenuItem icon={<UserIcon />} shortcut="⌘+P">
2341
+ * <NeoMenuItem icon={<UserIcon />} shortcut="⌘+P">
2342
2342
  * View profile
2343
- * </NeoDropdownMenuItem>
2343
+ * </NeoMenuItem>
2344
2344
  *
2345
2345
  * // With secondary text (user list pattern from Figma node 4305:41844)
2346
- * <NeoDropdownMenuItem secondaryText="@phoenix">Phoenix Baker</NeoDropdownMenuItem>
2347
- * <NeoDropdownMenuItem secondaryText="@olivia">Olivia Rhye</NeoDropdownMenuItem>
2346
+ * <NeoMenuItem secondaryText="@phoenix">Phoenix Baker</NeoMenuItem>
2347
+ * <NeoMenuItem secondaryText="@olivia">Olivia Rhye</NeoMenuItem>
2348
2348
  *
2349
2349
  * // Disabled state
2350
- * <NeoDropdownMenuItem disabled>Disabled item</NeoDropdownMenuItem>
2350
+ * <NeoMenuItem disabled>Disabled item</NeoMenuItem>
2351
2351
  * ```
2352
2352
  */
2353
- const NeoDropdownMenuItem = ({ icon, shortcut, secondaryText, children, ...props }) => {
2353
+ const NeoMenuItem = ({ icon, shortcut, secondaryText, children, ...props }) => {
2354
2354
  return (jsx(StyledMenuItem, { ...props, children: jsxs(MenuItemContent, { children: [icon && jsx(IconWrapper$1, { children: icon }), jsxs(LabelContainer$3, { children: [jsx(Label$3, { children: children }), secondaryText && jsx(SecondaryLabel, { children: secondaryText })] }), shortcut && jsx(Shortcut, { children: shortcut })] }) }));
2355
2355
  };
2356
- NeoDropdownMenuItem.displayName = 'NeoDropdownMenuItem';
2356
+ NeoMenuItem.displayName = 'NeoMenuItem';
2357
2357
 
2358
2358
  /**
2359
- * Custom chevron icon for dropdown
2359
+ * Custom chevron icon for select
2360
2360
  * Must accept props from MUI Select to work correctly
2361
2361
  */
2362
2362
  const ChevronDownIcon = (props) => (jsx(ChevronDown, { ...props, size: spacing.spacing_2_1_2, color: semanticColors.typography.input.default, style: { ...props.style } }));
@@ -2396,22 +2396,22 @@ const StyledSelect = styled(MuiSelect)({
2396
2396
  },
2397
2397
  });
2398
2398
  /**
2399
- * NeoDropdown - Dropdown select component with Neo design system styling
2399
+ * NeoSelect - Select component with Neo design system styling
2400
2400
  *
2401
2401
  * A styled version of MUI's Select that uses Neo design tokens, Lucide ChevronDown icon,
2402
- * and NeoDropdownMenu/NeoDropdownMenuItem for the dropdown list.
2402
+ * and NeoMenu/NeoMenuItem for the dropdown list.
2403
2403
  *
2404
2404
  * @example
2405
2405
  * ```tsx
2406
- * import { NeoDropdown, NeoDropdownOption } from '@moderneinc/neo-styled-components'
2406
+ * import { NeoSelect, NeoSelectOption } from '@moderneinc/neo-styled-components'
2407
2407
  *
2408
- * <NeoDropdown value={value} onChange={handleChange}>
2409
- * <NeoDropdownOption value="option1">Option 1</NeoDropdownOption>
2410
- * <NeoDropdownOption value="option2">Option 2</NeoDropdownOption>
2411
- * </NeoDropdown>
2408
+ * <NeoSelect value={value} onChange={handleChange}>
2409
+ * <NeoSelectOption value="option1">Option 1</NeoSelectOption>
2410
+ * <NeoSelectOption value="option2">Option 2</NeoSelectOption>
2411
+ * </NeoSelect>
2412
2412
  * ```
2413
2413
  */
2414
- const NeoDropdown = (props) => {
2414
+ const NeoSelect = (props) => {
2415
2415
  return (jsx(StyledSelect, { ...props, IconComponent: ChevronDownIcon, variant: "standard", MenuProps: {
2416
2416
  ...props.MenuProps,
2417
2417
  PaperProps: {
@@ -2426,7 +2426,7 @@ const NeoDropdown = (props) => {
2426
2426
  },
2427
2427
  } }));
2428
2428
  };
2429
- NeoDropdown.displayName = 'NeoDropdown';
2429
+ NeoSelect.displayName = 'NeoSelect';
2430
2430
 
2431
2431
  /**
2432
2432
  * Icon components for DataGrid filter panel slots
@@ -3847,11 +3847,11 @@ const StyledDivider = styled(Divider)(({ theme }) => ({
3847
3847
  * @example
3848
3848
  * ```tsx
3849
3849
  * // In a menu
3850
- * <NeoDropdownMenu>
3851
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
3850
+ * <NeoMenu>
3851
+ * <NeoMenuItem>Settings</NeoMenuItem>
3852
3852
  * <NeoDivider />
3853
- * <NeoDropdownMenuItem>Sign out</NeoDropdownMenuItem>
3854
- * </NeoDropdownMenu>
3853
+ * <NeoMenuItem>Sign out</NeoMenuItem>
3854
+ * </NeoMenu>
3855
3855
  *
3856
3856
  * // In a card
3857
3857
  * <Card>
@@ -4000,47 +4000,6 @@ const NeoDownloadToast = ({ title, fileName, progress, showClose = true, showPau
4000
4000
  };
4001
4001
  NeoDownloadToast.displayName = 'NeoDownloadToast';
4002
4002
 
4003
- const StyledMenu = styled(Menu)(({ theme }) => ({
4004
- [`& .${paperClasses.root}`]: {
4005
- backgroundColor: semanticColors.surfaces.white,
4006
- borderRadius: borderRadius.s,
4007
- border: `1px solid ${semanticColors.border.primary}`,
4008
- boxShadow: `${shadows.dropdown.x}px ${shadows.dropdown.y}px ${shadows.dropdown.blur}px ${shadows.dropdown.spread}px ${shadows.dropdown.shadow}`,
4009
- minWidth: 200,
4010
- marginTop: theme.spacing(1),
4011
- paddingTop: theme.spacing(1),
4012
- paddingBottom: theme.spacing(1),
4013
- },
4014
- [`& .${listClasses.root}`]: {
4015
- padding: 0,
4016
- },
4017
- }));
4018
- /**
4019
- * NeoDropdownMenu - Dropdown menu component based on MUI Menu
4020
- *
4021
- * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=11141-4980
4022
- *
4023
- * @example
4024
- * ```tsx
4025
- * const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);
4026
- * const open = Boolean(anchorEl);
4027
- *
4028
- * <Button onClick={(e) => setAnchorEl(e.currentTarget)}>Open Menu</Button>
4029
- * <NeoDropdownMenu
4030
- * open={open}
4031
- * anchorEl={anchorEl}
4032
- * onClose={() => setAnchorEl(null)}
4033
- * >
4034
- * <NeoDropdownMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoDropdownMenuItem>
4035
- * <NeoDropdownMenuItem>Settings</NeoDropdownMenuItem>
4036
- * </NeoDropdownMenu>
4037
- * ```
4038
- */
4039
- const NeoDropdownMenu = ({ children, ...props }) => {
4040
- return jsx(StyledMenu, { ...props, children: children });
4041
- };
4042
- NeoDropdownMenu.displayName = 'NeoDropdownMenu';
4043
-
4044
4003
  const filterChipOnlyProps = ['selected', 'expanded', 'selectedLabel', 'count', 'onClear'];
4045
4004
  const StyledChip = styled(Chip, {
4046
4005
  shouldForwardProp: prop => !filterChipOnlyProps.includes(prop),
@@ -5143,6 +5102,47 @@ const NeoMarketplaceLargeCard = (props) => {
5143
5102
  };
5144
5103
  NeoMarketplaceLargeCard.displayName = 'NeoMarketplaceLargeCard';
5145
5104
 
5105
+ const StyledMenu = styled(Menu)(({ theme }) => ({
5106
+ [`& .${paperClasses.root}`]: {
5107
+ backgroundColor: semanticColors.surfaces.white,
5108
+ borderRadius: borderRadius.s,
5109
+ border: `1px solid ${semanticColors.border.primary}`,
5110
+ boxShadow: `${shadows.dropdown.x}px ${shadows.dropdown.y}px ${shadows.dropdown.blur}px ${shadows.dropdown.spread}px ${shadows.dropdown.shadow}`,
5111
+ minWidth: 200,
5112
+ marginTop: theme.spacing(1),
5113
+ paddingTop: theme.spacing(1),
5114
+ paddingBottom: theme.spacing(1),
5115
+ },
5116
+ [`& .${listClasses.root}`]: {
5117
+ padding: 0,
5118
+ },
5119
+ }));
5120
+ /**
5121
+ * NeoMenu - Menu component based on MUI Menu
5122
+ *
5123
+ * @figma https://www.figma.com/design/fQTkGSFbYyE7LiHuQJsENC/Neo---Moderne-Design-system---2025?node-id=11141-4980
5124
+ *
5125
+ * @example
5126
+ * ```tsx
5127
+ * const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);
5128
+ * const open = Boolean(anchorEl);
5129
+ *
5130
+ * <Button onClick={(e) => setAnchorEl(e.currentTarget)}>Open Menu</Button>
5131
+ * <NeoMenu
5132
+ * open={open}
5133
+ * anchorEl={anchorEl}
5134
+ * onClose={() => setAnchorEl(null)}
5135
+ * >
5136
+ * <NeoMenuItem icon={<Icon />} shortcut="⌘+P">View profile</NeoMenuItem>
5137
+ * <NeoMenuItem>Settings</NeoMenuItem>
5138
+ * </NeoMenu>
5139
+ * ```
5140
+ */
5141
+ const NeoMenu = ({ children, ...props }) => {
5142
+ return jsx(StyledMenu, { ...props, children: children });
5143
+ };
5144
+ NeoMenu.displayName = 'NeoMenu';
5145
+
5146
5146
  // ============================================================================
5147
5147
  // NeoModal - Main Dialog Container
5148
5148
  // ============================================================================
@@ -6878,5 +6878,5 @@ NeoTypologyControl.displayName = 'NeoTypologyControl';
6878
6878
 
6879
6879
  const version = '0.0.0-development';
6880
6880
 
6881
- export { ActivityScene, CIRCLE_RADIUS, NeoActivityHeader, NeoActivityIndicatorCell, NeoAlert, NeoAvatar, NeoBadge, NeoBanner, NeoBreadcrumbLink, NeoBreadcrumbs, NeoButton, NeoButtonTab, NeoButtonTabGroup, NeoCard, NeoCheckbox, NeoCodeSnippet, NeoDataGrid, NeoDataGridCellContent, NeoDataGridColumnsButton, NeoDataGridColumnsPanel, NeoDataGridFilterPanel, NeoDataGridFilterPanelAddIcon, NeoDataGridFilterPanelDeleteIcon, NeoDataGridFilterPanelRemoveAllIcon, NeoDataGridFiltersButton, NeoDataGridHeaderLabel, NeoDropdown as NeoDataGridSelect, NeoDatePicker, NeoDivider, NeoDot, NeoDownloadToast, NeoDropdown, NeoDropdownMenu, NeoDropdownMenuItem, NeoDropdownMenuItem as NeoDropdownOption, NeoFilterChip, NeoFooter, NeoGeneralAvatar, NeoIconButton, NeoIconWrapper, NeoInfiniteScrollGrid, NeoInputField, NeoListItem, NeoListItemButton, NeoLoadingSpinner, NeoMarketplaceCard, NeoMarketplaceLargeCard, NeoDropdownMenu as NeoMenu, NeoDropdownMenuItem as NeoMenuItem, NeoModal, NeoModalContent, NeoModalFooter, NeoModalHeader, NeoMultiBadgesCell, NeoNavigationAvatar, NeoNavigationItem, NeoPageContent, NeoPaginatedGrid, NeoProgressbar, NeoQuickFilter, NeoRadio, NeoSearchChip, NeoDropdown as NeoSelect, NeoDropdownMenuItem as NeoSelectOption, NeoSkeleton, NeoStatusBadgeCell, NeoTab, NeoTabs, NeoTag, NeoToast, NeoToastButton, NeoToggle, NeoToolbar, NeoTooltip, NeoTreeItem, NeoTreeView, StyledToggleButton as NeoTypologyButton, NeoTypologyControl, NeoUserAvatarCell, SortedAscendingIcon, SortedDescendingIcon, UnsortedIcon, getDataGridHeaderStyles, neoRowHeights, version };
6881
+ export { ActivityScene, CIRCLE_RADIUS, NeoActivityHeader, NeoActivityIndicatorCell, NeoAlert, NeoAvatar, NeoBadge, NeoBanner, NeoBreadcrumbLink, NeoBreadcrumbs, NeoButton, NeoButtonTab, NeoButtonTabGroup, NeoCard, NeoCheckbox, NeoCodeSnippet, NeoDataGrid, NeoDataGridCellContent, NeoDataGridColumnsButton, NeoDataGridColumnsPanel, NeoDataGridFilterPanel, NeoDataGridFilterPanelAddIcon, NeoDataGridFilterPanelDeleteIcon, NeoDataGridFilterPanelRemoveAllIcon, NeoDataGridFiltersButton, NeoDataGridHeaderLabel, NeoSelect as NeoDataGridSelect, NeoDatePicker, NeoDivider, NeoDot, NeoDownloadToast, NeoSelect as NeoDropdown, NeoMenu as NeoDropdownMenu, NeoMenuItem as NeoDropdownMenuItem, NeoMenuItem as NeoDropdownOption, NeoFilterChip, NeoFooter, NeoGeneralAvatar, NeoIconButton, NeoIconWrapper, NeoInfiniteScrollGrid, NeoInputField, NeoListItem, NeoListItemButton, NeoLoadingSpinner, NeoMarketplaceCard, NeoMarketplaceLargeCard, NeoMenu, NeoMenuItem, NeoModal, NeoModalContent, NeoModalFooter, NeoModalHeader, NeoMultiBadgesCell, NeoNavigationAvatar, NeoNavigationItem, NeoPageContent, NeoPaginatedGrid, NeoProgressbar, NeoQuickFilter, NeoRadio, NeoSearchChip, NeoSelect, NeoMenuItem as NeoSelectOption, NeoSkeleton, NeoStatusBadgeCell, NeoTab, NeoTabs, NeoTag, NeoToast, NeoToastButton, NeoToggle, NeoToolbar, NeoTooltip, NeoTreeItem, NeoTreeView, StyledToggleButton as NeoTypologyButton, NeoTypologyControl, NeoUserAvatarCell, SortedAscendingIcon, SortedDescendingIcon, UnsortedIcon, getDataGridHeaderStyles, neoRowHeights, version };
6882
6882
  //# sourceMappingURL=index.esm.js.map