@xyo-network/react-appbar 4.1.9 → 4.1.10

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.
Files changed (102) hide show
  1. package/dist/browser/components/AppBar/Application.d.ts +3 -3
  2. package/dist/browser/components/AppBar/Application.d.ts.map +1 -1
  3. package/dist/browser/components/CollapsibleDrawer/CollapseToggle.d.ts.map +1 -1
  4. package/dist/browser/components/CollapsibleDrawer/CollapsibleDrawer.d.ts.map +1 -1
  5. package/dist/browser/components/CollapsibleDrawer/storyExampleMenuData.d.ts +1 -1
  6. package/dist/browser/components/CollapsibleDrawer/storyExampleMenuData.d.ts.map +1 -1
  7. package/dist/browser/components/Toolbar/Context/ContextToolbar.d.ts +5 -6
  8. package/dist/browser/components/Toolbar/Context/ContextToolbar.d.ts.map +1 -1
  9. package/dist/browser/components/Toolbar/Context/LogoLinkEx.d.ts +1 -0
  10. package/dist/browser/components/Toolbar/Context/LogoLinkEx.d.ts.map +1 -1
  11. package/dist/browser/components/Toolbar/System/SystemToolbar.d.ts +3 -4
  12. package/dist/browser/components/Toolbar/System/SystemToolbar.d.ts.map +1 -1
  13. package/dist/browser/components/index.d.ts +0 -1
  14. package/dist/browser/components/index.d.ts.map +1 -1
  15. package/dist/browser/index.d.ts +0 -1
  16. package/dist/browser/index.d.ts.map +1 -1
  17. package/dist/browser/index.mjs +70 -349
  18. package/dist/browser/index.mjs.map +1 -1
  19. package/package.json +9 -10
  20. package/src/components/AppBar/Application.stories.tsx +11 -11
  21. package/src/components/AppBar/Application.tsx +8 -8
  22. package/src/components/CollapsibleDrawer/CollapseDrawer.stories.tsx +2 -2
  23. package/src/components/CollapsibleDrawer/CollapseToggle.tsx +1 -2
  24. package/src/components/CollapsibleDrawer/CollapsibleDrawer.tsx +1 -2
  25. package/src/components/CollapsibleDrawer/storyExampleMenuData.tsx +1 -2
  26. package/src/components/Toolbar/Context/ContextToolbar.stories.tsx +6 -6
  27. package/src/components/Toolbar/Context/ContextToolbar.tsx +8 -8
  28. package/src/components/Toolbar/Context/LogoLinkEx.tsx +4 -3
  29. package/src/components/Toolbar/System/SystemToolbar.stories.tsx +8 -9
  30. package/src/components/Toolbar/System/SystemToolbar.tsx +8 -19
  31. package/src/components/index.ts +0 -1
  32. package/src/index.ts +0 -1
  33. package/dist/browser/components/SiteMenu/Menu.d.ts +0 -9
  34. package/dist/browser/components/SiteMenu/Menu.d.ts.map +0 -1
  35. package/dist/browser/components/SiteMenu/MenuListItem/MenuListItemContainer.d.ts +0 -11
  36. package/dist/browser/components/SiteMenu/MenuListItem/MenuListItemContainer.d.ts.map +0 -1
  37. package/dist/browser/components/SiteMenu/MenuListItem/index.d.ts +0 -2
  38. package/dist/browser/components/SiteMenu/MenuListItem/index.d.ts.map +0 -1
  39. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.d.ts +0 -7
  40. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.d.ts.map +0 -1
  41. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.d.ts +0 -8
  42. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.d.ts.map +0 -1
  43. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.d.ts +0 -7
  44. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.d.ts.map +0 -1
  45. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/index.d.ts +0 -4
  46. package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/index.d.ts.map +0 -1
  47. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.d.ts +0 -11
  48. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.d.ts.map +0 -1
  49. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.d.ts +0 -9
  50. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.d.ts.map +0 -1
  51. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/index.d.ts +0 -3
  52. package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/index.d.ts.map +0 -1
  53. package/dist/browser/components/SiteMenu/MenuSection.d.ts +0 -11
  54. package/dist/browser/components/SiteMenu/MenuSection.d.ts.map +0 -1
  55. package/dist/browser/components/SiteMenu/hooks/index.d.ts +0 -2
  56. package/dist/browser/components/SiteMenu/hooks/index.d.ts.map +0 -1
  57. package/dist/browser/components/SiteMenu/hooks/useMenuItemsShared.d.ts +0 -7
  58. package/dist/browser/components/SiteMenu/hooks/useMenuItemsShared.d.ts.map +0 -1
  59. package/dist/browser/components/SiteMenu/index.d.ts +0 -6
  60. package/dist/browser/components/SiteMenu/index.d.ts.map +0 -1
  61. package/dist/browser/components/SiteMenu/lib/MenuListItemBase.d.ts +0 -5
  62. package/dist/browser/components/SiteMenu/lib/MenuListItemBase.d.ts.map +0 -1
  63. package/dist/browser/components/SiteMenu/lib/NavListItemProps.d.ts +0 -12
  64. package/dist/browser/components/SiteMenu/lib/NavListItemProps.d.ts.map +0 -1
  65. package/dist/browser/components/SiteMenu/lib/index.d.ts +0 -3
  66. package/dist/browser/components/SiteMenu/lib/index.d.ts.map +0 -1
  67. package/dist/browser/contexts/Collapsible/State.d.ts +0 -9
  68. package/dist/browser/contexts/Collapsible/State.d.ts.map +0 -1
  69. package/dist/browser/contexts/Collapsible/context.d.ts +0 -3
  70. package/dist/browser/contexts/Collapsible/context.d.ts.map +0 -1
  71. package/dist/browser/contexts/Collapsible/index.d.ts +0 -4
  72. package/dist/browser/contexts/Collapsible/index.d.ts.map +0 -1
  73. package/dist/browser/contexts/Collapsible/provider.d.ts +0 -8
  74. package/dist/browser/contexts/Collapsible/provider.d.ts.map +0 -1
  75. package/dist/browser/contexts/Collapsible/use.d.ts +0 -2
  76. package/dist/browser/contexts/Collapsible/use.d.ts.map +0 -1
  77. package/dist/browser/contexts/index.d.ts +0 -2
  78. package/dist/browser/contexts/index.d.ts.map +0 -1
  79. package/src/components/SiteMenu/Menu.tsx +0 -53
  80. package/src/components/SiteMenu/MenuListItem/MenuListItemContainer.stories.tsx +0 -54
  81. package/src/components/SiteMenu/MenuListItem/MenuListItemContainer.tsx +0 -87
  82. package/src/components/SiteMenu/MenuListItem/index.ts +0 -1
  83. package/src/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.tsx +0 -23
  84. package/src/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.tsx +0 -16
  85. package/src/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.tsx +0 -31
  86. package/src/components/SiteMenu/MenuListItem/list-item-components/index.ts +0 -3
  87. package/src/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.tsx +0 -22
  88. package/src/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.tsx +0 -27
  89. package/src/components/SiteMenu/MenuListItem/sub-nav/index.ts +0 -2
  90. package/src/components/SiteMenu/MenuSection.tsx +0 -30
  91. package/src/components/SiteMenu/hooks/index.ts +0 -1
  92. package/src/components/SiteMenu/hooks/useMenuItemsShared.tsx +0 -29
  93. package/src/components/SiteMenu/index.ts +0 -5
  94. package/src/components/SiteMenu/lib/MenuListItemBase.tsx +0 -4
  95. package/src/components/SiteMenu/lib/NavListItemProps.ts +0 -12
  96. package/src/components/SiteMenu/lib/index.ts +0 -2
  97. package/src/contexts/Collapsible/State.ts +0 -9
  98. package/src/contexts/Collapsible/context.ts +0 -5
  99. package/src/contexts/Collapsible/index.ts +0 -3
  100. package/src/contexts/Collapsible/provider.tsx +0 -26
  101. package/src/contexts/Collapsible/use.ts +0 -5
  102. package/src/contexts/index.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/AppBar/Application.tsx","../../src/components/Toolbar/Context/ContextToolbar.tsx","../../src/components/Toolbar/Context/LogoLinkEx.tsx","../../src/components/Toolbar/Context/Logo.tsx","../../src/components/Toolbar/System/SystemToolbar.tsx","../../src/components/SiteMenu/hooks/useMenuItemsShared.tsx","../../src/contexts/Collapsible/provider.tsx","../../src/contexts/Collapsible/context.ts","../../src/contexts/Collapsible/use.ts","../../src/components/SiteMenu/Menu.tsx","../../src/components/SiteMenu/MenuListItem/MenuListItemContainer.tsx","../../src/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.tsx","../../src/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.tsx","../../src/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.tsx","../../src/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.tsx","../../src/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.tsx","../../src/components/SiteMenu/MenuSection.tsx","../../src/components/CollapsibleDrawer/CollapseToggle.tsx","../../src/components/CollapsibleDrawer/CollapsibleDrawer.tsx","../../src/components/MobileSystemControls/SystemControls.tsx","../../src/components/MobileSystemControls/SystemControlsRoot.tsx","../../src/components/MobileSystemControls/SystemControlsType.ts","../../src/components/MobileSystemControls/SystemControlsUnstyled.tsx","../../src/components/MobileSystemControls/controls/SystemControl.tsx","../../src/components/SearchBar/SearchBar.tsx"],"sourcesContent":["import type { ToolbarProps } from '@mui/material'\nimport type { AppBarExProps } from '@xylabs/react-appbar'\nimport { AppBarEx } from '@xylabs/react-appbar'\nimport type { ReactElement } from 'react'\nimport React from 'react'\n\nimport { ContextToolbar, SystemToolbar } from '../Toolbar/index.ts'\n\nexport interface ApplicationAppBarProps extends AppBarExProps {\n contextToolbar?: ReactElement<ToolbarProps>\n responsive?: boolean\n systemToolbar?: ReactElement<ToolbarProps>\n}\n\nexport const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({\n systemToolbar, contextToolbar, responsive = true, ...props\n}) => {\n return (\n <AppBarEx\n systemToolbar={systemToolbar ?? <SystemToolbar />}\n contextToolbar={contextToolbar ?? <ContextToolbar />}\n position=\"sticky\"\n responsive={responsive}\n {...props}\n />\n )\n}\n","import type { ToolbarProps } from '@mui/material'\nimport { Toolbar } from '@mui/material'\nimport React from 'react'\nimport type { To } from 'react-router-dom'\n\nimport { LogoLinkEx } from './LogoLinkEx.tsx'\n\nexport interface ContextToolbarProps extends ToolbarProps {\n logoTo?: To\n version?: boolean\n}\n\nexport const ContextToolbar: React.FC<ContextToolbarProps> = ({\n logoTo = '/', version = false, ...props\n}) => {\n return (\n <Toolbar {...props}>\n <LogoLinkEx version={version} to={logoTo} />\n </Toolbar>\n )\n}\n","import { Typography, useTheme } from '@mui/material'\nimport { assertEx } from '@xylabs/assert'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { LinkExProps } from '@xylabs/react-link'\nimport { LinkEx } from '@xylabs/react-link'\nimport React from 'react'\n\nimport { Logo } from './Logo.tsx'\n\nexport type LogoLinkExProps = LinkExProps & {\n version?: boolean | string\n}\n\nexport const LogoLinkEx: React.FC<LogoLinkExProps> = ({\n to = '/', href, version = false, ...props\n}) => {\n const theme = useTheme()\n assertEx(href === undefined, 'href is not supported')\n return (\n <LinkEx to={to} {...props}>\n <FlexRow paddingX=\"4px\">\n <Logo height=\"40\" width=\"43\" />\n {version\n ? (\n <Typography\n position=\"absolute\"\n borderRadius={1}\n right={6}\n color={theme.palette.getContrastText(theme.palette.text.primary)}\n bottom={0}\n bgcolor={theme.palette.text.primary}\n paddingX=\"2px\"\n lineHeight={1}\n variant=\"caption\"\n border={`1px ${theme.palette.getContrastText(theme.palette.primary.main)} solid`}\n >\n {typeof version === 'string' ? version : '2.1'}\n </Typography>\n )\n : null}\n </FlexRow>\n </LinkEx>\n )\n}\n","import { useTheme } from '@mui/material'\nimport React from 'react'\n\nexport const Logo: React.FC<React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>> = (props) => {\n const theme = useTheme()\n const logoUrl\n = theme.palette.mode === 'dark'\n ? 'https://cdn.xy.company/img/brand/XYO/XYO_icon_white.svg'\n : 'https://cdn.xy.company/img/brand/XYO/XYO_icon_white.svg'\n return <img src={logoUrl} {...props} />\n}\n","import type { ToolbarProps } from '@mui/material'\nimport { Paper, Toolbar } from '@mui/material'\nimport { DarkModeIconButton } from '@xylabs/react-app-settings'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { NetworkSelectExProps } from '@xyo-network/react-network'\nimport { NetworkSelectEx } from '@xyo-network/react-network'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport type { SiteMenuProps } from '../../SiteMenu/index.ts'\nimport { SiteMenu } from '../../SiteMenu/index.ts'\n\nexport interface SystemToolbarProps extends ToolbarProps {\n darkModeButton?: boolean\n developerMode?: boolean\n hideNetworkSelect?: boolean\n menuItems?: ReactNode\n networkSelectProps?: NetworkSelectExProps\n onMenuToggle?: SiteMenuProps['onMenuToggle']\n precedingChildren?: ReactNode\n}\n\nexport const SystemToolbar: React.FC<SystemToolbarProps> = ({\n children,\n darkModeButton = false,\n hideNetworkSelect,\n menuItems,\n networkSelectProps,\n onMenuToggle,\n precedingChildren,\n ...props\n}) => {\n return (\n <Toolbar {...props}>\n {precedingChildren}\n {hideNetworkSelect\n ? null\n : (\n <FlexRow marginX={0.5}>\n <Paper variant=\"elevation\">\n <NetworkSelectEx fullWidth {...networkSelectProps} />\n </Paper>\n </FlexRow>\n )}\n {children}\n {darkModeButton\n ? <DarkModeIconButton color=\"inherit\" />\n : null}\n {menuItems\n ? <SiteMenu onMenuToggle={onMenuToggle}>{menuItems}</SiteMenu>\n : null}\n </Toolbar>\n )\n}\n","import { useMemo } from 'react'\n\nimport { useCollapsible } from '../../../contexts/index.ts'\nimport type { MenuListItemProps } from '../MenuListItem/index.ts'\n\nexport type DefaultSiteMenuListItemProps = Pick<MenuListItemProps, 'collapseEnd' | 'dense' | 'iconOnly' | 'sx'>\n\nexport const useMenuItemsShared = () => {\n const {\n collapse, collapseEnd, setCollapse, setCollapseEnd,\n } = useCollapsible()\n\n const onMenuItemToggle = (open?: boolean) => {\n setCollapse?.(previous => (open ? false : previous))\n setCollapseEnd?.(previous => (open ? false : previous))\n }\n\n const defaultSiteMenuListItemProps: DefaultSiteMenuListItemProps = useMemo(\n () => ({\n collapseEnd,\n dense: true,\n iconOnly: collapse,\n sx: { px: '8px' },\n }),\n [collapse, collapseEnd],\n )\n\n return { defaultSiteMenuListItemProps, onMenuItemToggle }\n}\n","import type { PropsWithChildren } from 'react'\nimport React, { useState } from 'react'\n\nimport { CollapsibleContext } from './context.ts'\n\nexport interface CollapsibleProviderProps extends PropsWithChildren {\n defaultCollapse?: boolean\n defaultCollapseEnd?: boolean\n}\n\nexport const CollapsibleProvider: React.FC<CollapsibleProviderProps> = ({\n defaultCollapse = false, defaultCollapseEnd = false, children,\n}) => {\n const [collapse, setCollapse] = useState(() => defaultCollapse)\n const [collapseEnd, setCollapseEnd] = useState(() => defaultCollapseEnd)\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <CollapsibleContext.Provider value={{\n collapse, collapseEnd, provided: true, setCollapse, setCollapseEnd,\n }}\n >\n {children}\n </CollapsibleContext.Provider>\n )\n}\n","import { createContextEx } from '@xyo-network/react-shared'\n\nimport type { CollapsibleState } from './State.ts'\n\nexport const CollapsibleContext = createContextEx<CollapsibleState>()\n","import { useContextEx } from '@xyo-network/react-shared'\n\nimport { CollapsibleContext } from './context.ts'\n\nexport const useCollapsible = () => useContextEx(CollapsibleContext, 'Collapsible', false)\n","import { Menu as MenuIcon, Settings as SettingsIcon } from '@mui/icons-material'\nimport {\n IconButton, List, SwipeableDrawer,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useEffect, useState } from 'react'\n\nimport { MenuListItemContainer } from './MenuListItem/index.ts'\n\nexport interface SiteMenuProps extends FlexBoxProps {\n hideSettingsMenuItem?: boolean\n onMenuToggle?: (state?: boolean) => void\n side?: 'left' | 'right' | 'top' | 'bottom'\n}\n\nexport const SiteMenu: React.FC<SiteMenuProps> = ({\n children, onMenuToggle, side = 'right', ...props\n}) => {\n const [open, setOpen] = useState(false)\n\n useEffect(() => {\n onMenuToggle?.(open)\n }, [onMenuToggle, open])\n\n return (\n <FlexRow alignItems=\"stretch\" {...props}>\n <IconButton\n size=\"small\"\n color=\"inherit\"\n onClick={() => {\n setOpen(!open)\n }}\n >\n <MenuIcon fontSize=\"large\" />\n </IconButton>\n <SwipeableDrawer\n anchor={side}\n open={open}\n onClick={() => setOpen(false)}\n onKeyDown={() => setOpen(false)}\n onClose={() => setOpen(false)}\n onOpen={() => setOpen(true)}\n >\n {children ?? (\n <List>\n <MenuListItemContainer primary=\"Settings\" icon={<SettingsIcon />} to=\"/settings\" />\n </List>\n )}\n </SwipeableDrawer>\n </FlexRow>\n )\n}\n","import type { ListItemProps } from '@mui/material'\nimport { ListItemText, useTheme } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { LinkEx } from '@xylabs/react-link'\nimport React, { useState } from 'react'\n\nimport { useCollapsible } from '../../../contexts/index.ts'\nimport type { MenuListItemBase, NavListItemProps } from '../lib/index.ts'\nimport {\n ListItemTooltip, MenuIcon, MenuListItem,\n} from './list-item-components/index.ts'\nimport { SubNavListItemsCollapse, SubNavToggleIconButton } from './sub-nav/index.ts'\n\nexport interface MenuListItemProps extends NavListItemProps, MenuListItemBase, ListItemProps {\n iconMenuTextSpacing?: string\n iconOnly?: boolean\n subNavListItems?: NavListItemProps[]\n subNavOpen?: boolean\n}\n\nexport const MenuListItemContainer: React.FC<MenuListItemProps> = ({\n style,\n icon,\n iconMenuTextSpacing,\n iconOnly,\n onButtonClick,\n primary,\n subNavListItems,\n sx,\n tooltip,\n to,\n ...props\n}) => {\n const { dense } = props\n const theme = useTheme()\n const { collapse } = useCollapsible()\n const [openSubNav, setOpenSubNav] = useState(false)\n const [hovered, setHovered] = useState(false)\n const resolvedIconMenuTextSpacing = iconMenuTextSpacing ?? theme.spacing(1)\n\n return (\n <>\n <MenuListItem\n disableGutters\n iconOnly={iconOnly}\n onClick={onButtonClick}\n dense={dense}\n sx={{ justifyContent: 'space-between', ...sx }}\n style={{ whiteSpace: 'nowrap', ...style }}\n {...props}\n >\n <LinkEx\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n color=\"inherit\"\n to={to}\n sx={{\n '& :hover': {\n cursor: 'pointer',\n textDecoration: 'underline',\n },\n }}\n >\n <FlexRow>\n <MenuIcon icon={icon} paddingRight={resolvedIconMenuTextSpacing} color={hovered ? 'secondary' : 'inherit'} />\n <ListItemText primary={primary} />\n </FlexRow>\n </LinkEx>\n <FlexRow style={{ marginLeft: theme.spacing(1) }}>\n {subNavListItems\n ? <SubNavToggleIconButton setOpenSubNav={setOpenSubNav} openSubNav={openSubNav} />\n : null}\n {tooltip\n ? <ListItemTooltip title={tooltip} />\n : null}\n </FlexRow>\n </MenuListItem>\n {subNavListItems\n ? (\n <SubNavListItemsCollapse openSubNav={openSubNav} collapse={collapse}>\n {subNavListItems?.map((item, index) => <MenuListItemContainer dense={dense} sx={{ pl: theme.spacing(1) }} key={index} {...item} />)}\n </SubNavListItemsCollapse>\n )\n : null}\n </>\n )\n}\n","import type { TooltipProps } from '@mui/material'\nimport { Tooltip } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { VscInfo } from 'react-icons/vsc'\n\nexport interface ListItemTooltipProps extends Omit<TooltipProps, 'children'> {\n title: string\n}\n\nexport const ListItemTooltip: React.FC<ListItemTooltipProps> = ({ title, ...props }) => {\n return (\n <Tooltip title={title} placement=\"right\" {...props}>\n {/* Needs div so it can work, the hovering doesn't work with a FlexCol */}\n <div>\n <FlexCol justifyContent=\"center\">\n <VscInfo color=\"grey\" />\n </FlexCol>\n </div>\n </Tooltip>\n )\n}\n","import type { TypographyProps } from '@mui/material'\nimport { Typography } from '@mui/material'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nexport interface MenuIconProps extends TypographyProps {\n icon?: ReactNode\n}\n\nexport const MenuIcon: React.FC<MenuIconProps> = ({ icon, ...props }) => {\n return (\n <Typography display=\"flex\" {...props}>\n {icon}\n </Typography>\n )\n}\n","import type { ListItemProps } from '@mui/material'\nimport { ListItem } from '@mui/material'\nimport React from 'react'\n\nimport type { MenuListItemBase } from '../../lib/index.ts'\n\nexport interface ListItemExProps extends MenuListItemBase, ListItemProps {}\n\nexport const MenuListItem: React.FC<ListItemExProps> = ({\n iconOnly, collapseEnd, sx, children, dense, ...props\n}) => {\n const listItemSx = iconOnly\n ? {\n borderRadius: '50%', display: 'inline-flex', flexGrow: 0, width: 'auto',\n }\n : { width: '100%' }\n // wait till collapseEnds to remove the spacing between items\n const spacingSx = collapseEnd ? { columnGap: 0 } : { columnGap: 1.5 }\n // adjusts to the paddingY value which does NOT scale along the theme.spacing\n const paddingSx = dense ? { px: '8px' } : { px: '12px' }\n return (\n <ListItem\n sx={{\n ...listItemSx, ...spacingSx, ...paddingSx, ...sx,\n }}\n {...props}\n >\n {children}\n </ListItem>\n )\n}\n","import type { CollapseProps } from '@mui/material'\nimport { Collapse, List } from '@mui/material'\nimport type { PropsWithChildren } from 'react'\nimport React from 'react'\n\nimport type { NavListItemProps } from '../../lib/index.ts'\n\nexport interface SubNavListItemsCollapseProps extends PropsWithChildren, CollapseProps {\n collapse?: boolean\n openSubNav?: boolean\n subNavListItems?: NavListItemProps[]\n}\n\nexport const SubNavListItemsCollapse: React.FC<SubNavListItemsCollapseProps> = ({\n collapse, openSubNav, children, ...props\n}) => {\n return (\n <Collapse in={collapse == true ? false : openSubNav} {...props}>\n <List>{children}</List>\n </Collapse>\n )\n}\n","import type { IconButtonProps } from '@mui/material'\nimport { IconButton, useTheme } from '@mui/material'\nimport type {\n Dispatch, SetStateAction, SyntheticEvent,\n} from 'react'\nimport React from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { VscChevronDown } from 'react-icons/vsc'\nexport interface SubNavToggleIconButtonProps extends IconButtonProps {\n openSubNav?: boolean\n setOpenSubNav?: Dispatch<SetStateAction<boolean>>\n}\n\nexport const SubNavToggleIconButton: React.FC<SubNavToggleIconButtonProps> = ({ setOpenSubNav, openSubNav }) => {\n const theme = useTheme()\n return (\n <IconButton\n onClick={(event: SyntheticEvent) => {\n event.stopPropagation()\n setOpenSubNav?.(!openSubNav)\n }}\n sx={{ marginRight: theme.spacing(0.5) }}\n >\n <VscChevronDown fontSize=\"16px\" />\n </IconButton>\n )\n}\n","import { Collapse, ListSubheader } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { MenuListItemProps } from './MenuListItem/index.ts'\nimport { MenuListItemContainer } from './MenuListItem/index.ts'\n\nexport interface MenuSectionProps extends FlexBoxProps {\n iconMenuTextSpacing?: string\n listItems: MenuListItemProps[]\n showTitle?: boolean\n title: string\n}\n\nexport const MenuSection: React.FC<MenuSectionProps> = ({\n iconMenuTextSpacing, listItems, showTitle = true, title, ...props\n}) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Collapse in={showTitle} timeout={700}>\n <ListSubheader>{title}</ListSubheader>\n </Collapse>\n\n {listItems.map((item, index) => (\n <MenuListItemContainer key={index} iconMenuTextSpacing={iconMenuTextSpacing} {...item}></MenuListItemContainer>\n ))}\n </FlexCol>\n )\n}\n","import { Icon, useTheme } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { VscArrowSmallLeft, VscArrowSmallRight } from 'react-icons/vsc'\n\nimport { useCollapsible } from '../../contexts/index.ts'\n\nexport const CollapseToggleFlex: React.FC<FlexBoxProps> = (props) => {\n const {\n collapse, setCollapse, setCollapseEnd,\n } = useCollapsible()\n const [hover, setHover] = useState(false)\n const theme = useTheme()\n\n const handleCollapseToggle = () => {\n setCollapse?.(!collapse)\n setCollapseEnd?.(previous => (previous ? false : previous))\n }\n\n return (\n <FlexRow mt={2} py={2} justifyContent={collapse ? 'start' : 'center'} {...props}>\n <Icon\n onClick={handleCollapseToggle}\n onMouseEnter={() => setHover(true)}\n onMouseLeave={() => setHover(false)}\n fontSize=\"large\"\n sx={{ color: hover ? theme.palette.secondary.main : 'inherit', cursor: 'pointer' }}\n >\n {collapse\n ? <VscArrowSmallRight />\n : <VscArrowSmallLeft />}\n </Icon>\n </FlexRow>\n )\n}\n","import type { CollapseProps } from '@mui/material'\nimport {\n Collapse, styled, useTheme,\n} from '@mui/material'\nimport type { PropsWithChildren } from 'react'\nimport React from 'react'\n\nimport { useCollapsible } from '../../contexts/index.ts'\n\nexport const CollapsibleDrawer: React.FC<PropsWithChildren<CollapseProps>> = ({\n children, sx, ...props\n}) => {\n const { collapse, setCollapseEnd } = useCollapsible()\n const theme = useTheme()\n\n const collapsedSize = props.collapsedSize ?? theme.spacing(5)\n\n return (\n <CollapsibleFlexInner\n in={!collapse}\n orientation=\"horizontal\"\n collapsedSize={collapsedSize}\n onExited={() => setCollapseEnd?.(true)}\n sx={{\n alignItems: 'start',\n display: 'flex',\n height: '100%',\n ...sx,\n }}\n {...props}\n >\n {children}\n </CollapsibleFlexInner>\n )\n}\n\nconst CollapsibleFlexInner = styled(Collapse)(() => ({\n '& .MuiCollapse-wrapperInner': {\n display: 'flex',\n flexDirection: 'column',\n },\n}))\n","import { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { SystemControlsRoot } from './SystemControlsRoot.tsx'\nimport type { SystemControlsUnstyledProps } from './SystemControlsUnstyled.tsx'\n\nconst SystemControls: React.FC<SystemControlsUnstyledProps> = (props) => {\n return (\n <FlexCol>\n <SystemControlsRoot {...props} />\n </FlexCol>\n )\n}\n\nexport { SystemControls }\n","import { styled } from '@mui/material'\n\nimport { SystemControlsType } from './SystemControlsType.ts'\nimport type { SystemControlsUnstyledProps } from './SystemControlsUnstyled.tsx'\nimport { SystemControlsUnstyled } from './SystemControlsUnstyled.tsx'\n\nconst SystemControlsRoot = styled(SystemControlsUnstyled, { name: 'SystemControls', slot: 'Root' })<SystemControlsUnstyledProps>(({ theme }) => ({\n // shared defaults\n ['&']: {\n '.toggle': { backgroundColor: theme.palette.primary.main },\n 'alignItems': 'start',\n 'zIndex': 1,\n },\n // WindowShade System Controls styles\n [`&.system-controls-type-${SystemControlsType.WindowShade}`]: {\n '.control': {\n borderRadius: '0 0 5px 5px',\n flexDirection: 'row',\n flexGrow: 1,\n justifyContent: 'space-around',\n padding: `${theme.spacing(2)} ${theme.spacing(2.5)}`,\n },\n '.controls': {\n alignItems: 'stretch',\n flexDirection: 'column',\n flexGrow: 1,\n },\n '.toggle': {\n borderRadius: '0 0 5px 5px',\n padding: `${theme.spacing(0.5)} ${theme.spacing(1)}`,\n },\n 'flexDirection': 'row',\n 'position': 'absolute',\n 'top': 0,\n 'width': '100%',\n },\n // Left System Control styles\n [`&.system-controls-type-${SystemControlsType.Left}`]: {\n '.control': {\n alignItems: 'start',\n flexDirection: 'column',\n padding: `${theme.spacing(2)} ${theme.spacing(2.5)}`,\n },\n '.control-wrap': { marginBottom: `${theme.spacing(2)}` },\n '.toggle': {\n borderRadius: '0 5px 5px 0',\n padding: `${theme.spacing(1)} ${theme.spacing(0.5)}`,\n writingMode: 'vertical-rl',\n },\n 'flexDirection': 'column',\n 'left': 0,\n 'position': 'fixed',\n 'top': '30vh',\n 'width': 'auto',\n },\n}))\n\nexport { SystemControlsRoot }\n","export enum SystemControlsType {\n Left = 'Left',\n Right = 'Right',\n WindowShade = 'WindowShade',\n}\n","import type { Theme } from '@mui/material'\nimport { Paper, useMediaQuery } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { NetworkSelectEx } from '@xyo-network/react-network'\nimport React from 'react'\n\nimport { SystemControl } from './controls/index.ts'\nimport { SystemControlsType } from './SystemControlsType.ts'\n\ninterface SystemControlsUnstyledProps extends FlexBoxProps {\n systemControlsType?: SystemControlsType\n visible?: boolean\n}\n\nconst SystemControlsUnstyled: React.FC<SystemControlsUnstyledProps> = ({\n visible,\n systemControlsType = SystemControlsType.WindowShade,\n ...props\n}) => {\n const isSmall = useMediaQuery<Theme>(theme => theme.breakpoints.down('sm'))\n\n return visible || isSmall\n ? (\n <FlexCol {...props} className={`${props.className} system-controls-type-${systemControlsType}`}>\n <SystemControl\n systemControlsType={systemControlsType}\n controlElement={(\n <>\n <FlexRow className=\"control-wrap\">\n <Paper variant=\"elevation\" elevation={0}>\n <NetworkSelectEx responsive={false} className=\"network-ex\" />\n </Paper>\n </FlexRow>\n </>\n )}\n />\n </FlexCol>\n )\n : <FlexCol />\n}\n\nexport type { SystemControlsUnstyledProps }\nexport { SystemControlsUnstyled }\n","import type { CollapseProps } from '@mui/material'\nimport { Collapse } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport type { PropsWithChildren } from 'react'\nimport React, { useState } from 'react'\n\nimport { SystemControlsType } from '../SystemControlsType.ts'\n\ninterface SystemControlProps extends FlexBoxProps {\n controlElement: React.ReactNode\n systemControlsType?: SystemControlsType\n}\n\nconst SystemControl: React.FC<PropsWithChildren<SystemControlProps>> = ({\n children,\n controlElement,\n systemControlsType = SystemControlsType.WindowShade,\n ...props\n}) => {\n const [toggleControls, setToggleControls] = useState(false)\n\n let orientation: CollapseProps['orientation'] = 'vertical'\n\n switch (systemControlsType) {\n case SystemControlsType.Left: {\n orientation = 'horizontal'\n break\n }\n }\n\n return (\n <FlexRow className=\"controls\" {...props}>\n <Collapse in={toggleControls} orientation={orientation} timeout={500}>\n <FlexRow bgcolor=\"primary.main\" className=\"control\">\n {controlElement}\n </FlexRow>\n </Collapse>\n <FlexCol style={{ cursor: 'pointer' }} onClick={() => setToggleControls(!toggleControls)}>\n {children}\n </FlexCol>\n </FlexRow>\n )\n}\n\nexport { SystemControl }\n","import { Search as SearchIcon } from '@mui/icons-material'\nimport { Paper, TextField } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n\nexport interface SearchBarProps extends FlexBoxProps {\n onSearch?: (term?: string) => void\n}\n\nexport const SearchBar: React.FC<SearchBarProps> = ({\n defaultValue, onSearch, ...props\n}) => {\n const [term, setTerm] = useState<string>()\n\n return (\n <FlexRow alignItems=\"stretch\" {...props}>\n <Paper\n variant=\"elevation\"\n elevation={0}\n style={{\n display: 'flex', overflow: 'hidden', width: '100%',\n }}\n >\n <TextField\n variant=\"outlined\"\n size=\"small\"\n defaultValue={defaultValue}\n fullWidth\n onChange={event => setTerm(event.target.value)}\n onKeyDown={(event) => {\n if (event.key === 'Enter') onSearch?.(term)\n }}\n slotProps={{\n input: {\n color: 'secondary',\n style: {\n borderBottomRightRadius: 0, borderTopRightRadius: 0, borderWidth: 0,\n },\n },\n }}\n />\n <ButtonEx\n variant=\"contained\"\n style={{ borderRadius: 0, borderTopLeftRadius: 0 }}\n color=\"secondary\"\n onClick={() => onSearch?.(term)}\n >\n <SearchIcon />\n </ButtonEx>\n </Paper>\n </FlexRow>\n )\n}\n"],"mappings":"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","names":["AppBarEx","React","Toolbar","React","Typography","useTheme","assertEx","FlexRow","LinkEx","React","useTheme","React","Logo","props","theme","useTheme","logoUrl","palette","mode","img","src","LogoLinkEx","to","href","version","props","theme","useTheme","assertEx","undefined","React","LinkEx","FlexRow","paddingX","Logo","height","width","Typography","position","borderRadius","right","color","palette","getContrastText","text","primary","bottom","bgcolor","lineHeight","variant","border","main","ContextToolbar","logoTo","version","props","React","Toolbar","LogoLinkEx","to","Paper","Toolbar","DarkModeIconButton","FlexRow","NetworkSelectEx","React","useMemo","React","useState","createContextEx","CollapsibleContext","CollapsibleProvider","defaultCollapse","defaultCollapseEnd","children","collapse","setCollapse","useState","collapseEnd","setCollapseEnd","React","CollapsibleContext","Provider","value","provided","useContextEx","useCollapsible","useContextEx","CollapsibleContext","useMenuItemsShared","collapse","collapseEnd","setCollapse","setCollapseEnd","useCollapsible","onMenuItemToggle","open","previous","defaultSiteMenuListItemProps","useMemo","dense","iconOnly","sx","px","Menu","MenuIcon","Settings","SettingsIcon","IconButton","List","SwipeableDrawer","FlexRow","React","useEffect","useState","ListItemText","useTheme","FlexRow","LinkEx","React","useState","Tooltip","FlexCol","React","VscInfo","ListItemTooltip","title","props","React","Tooltip","placement","div","FlexCol","justifyContent","VscInfo","color","Typography","React","MenuIcon","icon","props","React","Typography","display","ListItem","React","MenuListItem","iconOnly","collapseEnd","sx","children","dense","props","listItemSx","borderRadius","display","flexGrow","width","spacingSx","columnGap","paddingSx","px","React","ListItem","Collapse","List","React","SubNavListItemsCollapse","collapse","openSubNav","children","props","React","Collapse","in","List","IconButton","useTheme","React","VscChevronDown","SubNavToggleIconButton","setOpenSubNav","openSubNav","theme","useTheme","React","IconButton","onClick","event","stopPropagation","sx","marginRight","spacing","VscChevronDown","fontSize","MenuListItemContainer","style","icon","iconMenuTextSpacing","iconOnly","onButtonClick","primary","subNavListItems","sx","tooltip","to","props","dense","theme","useTheme","collapse","useCollapsible","openSubNav","setOpenSubNav","useState","hovered","setHovered","resolvedIconMenuTextSpacing","spacing","React","MenuListItem","disableGutters","onClick","justifyContent","whiteSpace","LinkEx","onMouseEnter","onMouseLeave","color","cursor","textDecoration","FlexRow","MenuIcon","paddingRight","ListItemText","marginLeft","SubNavToggleIconButton","ListItemTooltip","title","SubNavListItemsCollapse","map","item","index","pl","key","SiteMenu","children","onMenuToggle","side","props","open","setOpen","useState","useEffect","React","FlexRow","alignItems","IconButton","size","color","onClick","MenuIcon","fontSize","SwipeableDrawer","anchor","onKeyDown","onClose","onOpen","List","MenuListItemContainer","primary","icon","SettingsIcon","to","Collapse","ListSubheader","FlexCol","React","MenuSection","iconMenuTextSpacing","listItems","showTitle","title","props","React","FlexCol","alignItems","Collapse","in","timeout","ListSubheader","map","item","index","MenuListItemContainer","key","SystemToolbar","children","darkModeButton","hideNetworkSelect","menuItems","networkSelectProps","onMenuToggle","precedingChildren","props","React","Toolbar","FlexRow","marginX","Paper","variant","NetworkSelectEx","fullWidth","DarkModeIconButton","color","SiteMenu","ApplicationAppBar","systemToolbar","contextToolbar","responsive","props","React","AppBarEx","SystemToolbar","ContextToolbar","position","Icon","useTheme","FlexRow","React","useState","VscArrowSmallLeft","VscArrowSmallRight","CollapseToggleFlex","props","collapse","setCollapse","setCollapseEnd","useCollapsible","hover","setHover","useState","theme","useTheme","handleCollapseToggle","previous","React","FlexRow","mt","py","justifyContent","Icon","onClick","onMouseEnter","onMouseLeave","fontSize","sx","color","palette","secondary","main","cursor","VscArrowSmallRight","VscArrowSmallLeft","Collapse","styled","useTheme","React","CollapsibleDrawer","children","sx","props","collapse","setCollapseEnd","useCollapsible","theme","useTheme","collapsedSize","spacing","React","CollapsibleFlexInner","in","orientation","onExited","alignItems","display","height","styled","Collapse","flexDirection","FlexCol","React","styled","SystemControlsType","Paper","useMediaQuery","FlexCol","FlexRow","NetworkSelectEx","React","Collapse","FlexCol","FlexRow","React","useState","SystemControl","children","controlElement","systemControlsType","SystemControlsType","WindowShade","props","toggleControls","setToggleControls","useState","orientation","Left","React","FlexRow","className","Collapse","in","timeout","bgcolor","FlexCol","style","cursor","onClick","SystemControlsUnstyled","visible","systemControlsType","SystemControlsType","WindowShade","props","isSmall","useMediaQuery","theme","breakpoints","down","React","FlexCol","className","SystemControl","controlElement","FlexRow","Paper","variant","elevation","NetworkSelectEx","responsive","SystemControlsRoot","styled","SystemControlsUnstyled","name","slot","theme","backgroundColor","palette","primary","main","SystemControlsType","WindowShade","borderRadius","flexDirection","flexGrow","justifyContent","padding","spacing","alignItems","Left","marginBottom","writingMode","SystemControls","props","React","FlexCol","SystemControlsRoot","Search","SearchIcon","Paper","TextField","ButtonEx","FlexRow","React","useState","SearchBar","defaultValue","onSearch","props","term","setTerm","useState","React","FlexRow","alignItems","Paper","variant","elevation","style","display","overflow","width","TextField","size","fullWidth","onChange","event","target","value","onKeyDown","key","slotProps","input","color","borderBottomRightRadius","borderTopRightRadius","borderWidth","ButtonEx","borderRadius","borderTopLeftRadius","onClick","SearchIcon"]}
1
+ {"version":3,"sources":["../../src/components/AppBar/Application.tsx","../../src/components/Toolbar/Context/ContextToolbar.tsx","../../src/components/Toolbar/Context/LogoLinkEx.tsx","../../src/components/Toolbar/Context/Logo.tsx","../../src/components/Toolbar/System/SystemToolbar.tsx","../../src/components/CollapsibleDrawer/CollapseToggle.tsx","../../src/components/CollapsibleDrawer/CollapsibleDrawer.tsx","../../src/components/MobileSystemControls/SystemControls.tsx","../../src/components/MobileSystemControls/SystemControlsRoot.tsx","../../src/components/MobileSystemControls/SystemControlsType.ts","../../src/components/MobileSystemControls/SystemControlsUnstyled.tsx","../../src/components/MobileSystemControls/controls/SystemControl.tsx","../../src/components/SearchBar/SearchBar.tsx"],"sourcesContent":["import type { ToolbarProps } from '@mui/material'\nimport type { ApplicationAppBarProps } from '@xylabs/react-appbar'\nimport { ApplicationAppBar } from '@xylabs/react-appbar'\nimport type { ReactElement } from 'react'\nimport React from 'react'\n\nimport { XyoContextToolbar, XyoSystemToolbar } from '../Toolbar/index.ts'\n\nexport interface XyoApplicationAppBarProps extends ApplicationAppBarProps {\n contextToolbar?: ReactElement<ToolbarProps>\n responsive?: boolean\n systemToolbar?: ReactElement<ToolbarProps>\n}\n\nexport const XyoApplicationAppBar: React.FC<XyoApplicationAppBarProps> = ({\n systemToolbar, contextToolbar, responsive = true, ...props\n}) => {\n return (\n <ApplicationAppBar\n systemToolbar={systemToolbar ?? <XyoSystemToolbar />}\n contextToolbar={contextToolbar ?? <XyoContextToolbar />}\n position=\"sticky\"\n responsive={responsive}\n {...props}\n />\n )\n}\n","import { Toolbar } from '@mui/material'\nimport type { ContextToolbarProps } from '@xylabs/react-appbar'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport { LogoLinkEx } from './LogoLinkEx.tsx'\n\nexport interface XyoContextToolbarProps extends ContextToolbarProps {\n logo?: ReactNode\n}\n\nexport const XyoContextToolbar: React.FC<XyoContextToolbarProps> = ({\n children, logo, logoTo = '/', version = false, ...props\n}) => {\n return (\n <Toolbar {...props}>\n <LogoLinkEx logo={logo} version={version} to={logoTo} />\n {children}\n </Toolbar>\n )\n}\n","import { Typography, useTheme } from '@mui/material'\nimport { assertEx } from '@xylabs/assert'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { LinkExProps } from '@xylabs/react-link'\nimport { LinkEx } from '@xylabs/react-link'\nimport React from 'react'\n\nimport { Logo } from './Logo.tsx'\n\nexport type LogoLinkExProps = LinkExProps & {\n logo?: React.ReactNode\n version?: boolean | string\n}\n\nexport const LogoLinkEx: React.FC<LogoLinkExProps> = ({\n logo, to = '/', href, version = false, ...props\n}) => {\n const theme = useTheme()\n assertEx(href === undefined, () => 'href is not supported')\n return (\n <LinkEx to={to} {...props}>\n <FlexRow paddingX=\"4px\">\n {logo ?? <Logo height=\"40\" width=\"43\" />}\n {version\n ? (\n <Typography\n position=\"absolute\"\n borderRadius={1}\n right={6}\n color={theme.palette.getContrastText(theme.palette.text.primary)}\n bottom={0}\n bgcolor={theme.palette.text.primary}\n paddingX=\"2px\"\n lineHeight={1}\n variant=\"caption\"\n border={`1px ${theme.palette.getContrastText(theme.palette.primary.main)} solid`}\n >\n {typeof version === 'string' ? version : '2.1'}\n </Typography>\n )\n : null}\n </FlexRow>\n </LinkEx>\n )\n}\n","import { useTheme } from '@mui/material'\nimport React from 'react'\n\nexport const Logo: React.FC<React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>> = (props) => {\n const theme = useTheme()\n const logoUrl\n = theme.palette.mode === 'dark'\n ? 'https://cdn.xy.company/img/brand/XYO/XYO_icon_white.svg'\n : 'https://cdn.xy.company/img/brand/XYO/XYO_icon_white.svg'\n return <img src={logoUrl} {...props} />\n}\n","import { Paper } from '@mui/material'\nimport {\n type SiteMenuProps, SystemToolbar, type SystemToolbarProps,\n} from '@xylabs/react-appbar'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { NetworkSelectExProps } from '@xyo-network/react-network'\nimport { NetworkSelectEx } from '@xyo-network/react-network'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nexport interface XyoSystemToolbarProps extends SystemToolbarProps {\n darkModeButton?: boolean\n developerMode?: boolean\n hideNetworkSelect?: boolean\n menuItems?: ReactNode\n networkSelectProps?: NetworkSelectExProps\n onMenuToggle?: SiteMenuProps['onMenuToggle']\n precedingChildren?: ReactNode\n}\n\nexport const XyoSystemToolbar: React.FC<XyoSystemToolbarProps> = ({\n children,\n hideNetworkSelect,\n networkSelectProps,\n precedingChildren,\n ...props\n}) => {\n return (\n <SystemToolbar {...props}>\n {precedingChildren}\n {hideNetworkSelect\n ? null\n : (\n <FlexRow marginX={0.5}>\n <Paper variant=\"elevation\">\n <NetworkSelectEx fullWidth {...networkSelectProps} />\n </Paper>\n </FlexRow>\n )}\n {children}\n </SystemToolbar>\n )\n}\n","import { Icon, useTheme } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { useCollapsible } from '@xylabs/react-shared'\nimport React, { useState } from 'react'\n// eslint-disable-next-line import-x/no-internal-modules\nimport { VscArrowSmallLeft, VscArrowSmallRight } from 'react-icons/vsc'\n\nexport const CollapseToggleFlex: React.FC<FlexBoxProps> = (props) => {\n const {\n collapse, setCollapse, setCollapseEnd,\n } = useCollapsible()\n const [hover, setHover] = useState(false)\n const theme = useTheme()\n\n const handleCollapseToggle = () => {\n setCollapse?.(!collapse)\n setCollapseEnd?.(previous => (previous ? false : previous))\n }\n\n return (\n <FlexRow mt={2} py={2} justifyContent={collapse ? 'start' : 'center'} {...props}>\n <Icon\n onClick={handleCollapseToggle}\n onMouseEnter={() => setHover(true)}\n onMouseLeave={() => setHover(false)}\n fontSize=\"large\"\n sx={{ color: hover ? theme.palette.secondary.main : 'inherit', cursor: 'pointer' }}\n >\n {collapse\n ? <VscArrowSmallRight />\n : <VscArrowSmallLeft />}\n </Icon>\n </FlexRow>\n )\n}\n","import type { CollapseProps } from '@mui/material'\nimport {\n Collapse, styled, useTheme,\n} from '@mui/material'\nimport { useCollapsible } from '@xylabs/react-shared'\nimport type { PropsWithChildren } from 'react'\nimport React from 'react'\n\nexport const CollapsibleDrawer: React.FC<PropsWithChildren<CollapseProps>> = ({\n children, sx, ...props\n}) => {\n const { collapse, setCollapseEnd } = useCollapsible()\n const theme = useTheme()\n\n const collapsedSize = props.collapsedSize ?? theme.spacing(5)\n\n return (\n <CollapsibleFlexInner\n in={!collapse}\n orientation=\"horizontal\"\n collapsedSize={collapsedSize}\n onExited={() => setCollapseEnd?.(true)}\n sx={{\n alignItems: 'start',\n display: 'flex',\n height: '100%',\n ...sx,\n }}\n {...props}\n >\n {children}\n </CollapsibleFlexInner>\n )\n}\n\nconst CollapsibleFlexInner = styled(Collapse)(() => ({\n '& .MuiCollapse-wrapperInner': {\n display: 'flex',\n flexDirection: 'column',\n },\n}))\n","import { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { SystemControlsRoot } from './SystemControlsRoot.tsx'\nimport type { SystemControlsUnstyledProps } from './SystemControlsUnstyled.tsx'\n\nconst SystemControls: React.FC<SystemControlsUnstyledProps> = (props) => {\n return (\n <FlexCol>\n <SystemControlsRoot {...props} />\n </FlexCol>\n )\n}\n\nexport { SystemControls }\n","import { styled } from '@mui/material'\n\nimport { SystemControlsType } from './SystemControlsType.ts'\nimport type { SystemControlsUnstyledProps } from './SystemControlsUnstyled.tsx'\nimport { SystemControlsUnstyled } from './SystemControlsUnstyled.tsx'\n\nconst SystemControlsRoot = styled(SystemControlsUnstyled, { name: 'SystemControls', slot: 'Root' })<SystemControlsUnstyledProps>(({ theme }) => ({\n // shared defaults\n ['&']: {\n '.toggle': { backgroundColor: theme.palette.primary.main },\n 'alignItems': 'start',\n 'zIndex': 1,\n },\n // WindowShade System Controls styles\n [`&.system-controls-type-${SystemControlsType.WindowShade}`]: {\n '.control': {\n borderRadius: '0 0 5px 5px',\n flexDirection: 'row',\n flexGrow: 1,\n justifyContent: 'space-around',\n padding: `${theme.spacing(2)} ${theme.spacing(2.5)}`,\n },\n '.controls': {\n alignItems: 'stretch',\n flexDirection: 'column',\n flexGrow: 1,\n },\n '.toggle': {\n borderRadius: '0 0 5px 5px',\n padding: `${theme.spacing(0.5)} ${theme.spacing(1)}`,\n },\n 'flexDirection': 'row',\n 'position': 'absolute',\n 'top': 0,\n 'width': '100%',\n },\n // Left System Control styles\n [`&.system-controls-type-${SystemControlsType.Left}`]: {\n '.control': {\n alignItems: 'start',\n flexDirection: 'column',\n padding: `${theme.spacing(2)} ${theme.spacing(2.5)}`,\n },\n '.control-wrap': { marginBottom: `${theme.spacing(2)}` },\n '.toggle': {\n borderRadius: '0 5px 5px 0',\n padding: `${theme.spacing(1)} ${theme.spacing(0.5)}`,\n writingMode: 'vertical-rl',\n },\n 'flexDirection': 'column',\n 'left': 0,\n 'position': 'fixed',\n 'top': '30vh',\n 'width': 'auto',\n },\n}))\n\nexport { SystemControlsRoot }\n","export enum SystemControlsType {\n Left = 'Left',\n Right = 'Right',\n WindowShade = 'WindowShade',\n}\n","import type { Theme } from '@mui/material'\nimport { Paper, useMediaQuery } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { NetworkSelectEx } from '@xyo-network/react-network'\nimport React from 'react'\n\nimport { SystemControl } from './controls/index.ts'\nimport { SystemControlsType } from './SystemControlsType.ts'\n\ninterface SystemControlsUnstyledProps extends FlexBoxProps {\n systemControlsType?: SystemControlsType\n visible?: boolean\n}\n\nconst SystemControlsUnstyled: React.FC<SystemControlsUnstyledProps> = ({\n visible,\n systemControlsType = SystemControlsType.WindowShade,\n ...props\n}) => {\n const isSmall = useMediaQuery<Theme>(theme => theme.breakpoints.down('sm'))\n\n return visible || isSmall\n ? (\n <FlexCol {...props} className={`${props.className} system-controls-type-${systemControlsType}`}>\n <SystemControl\n systemControlsType={systemControlsType}\n controlElement={(\n <>\n <FlexRow className=\"control-wrap\">\n <Paper variant=\"elevation\" elevation={0}>\n <NetworkSelectEx responsive={false} className=\"network-ex\" />\n </Paper>\n </FlexRow>\n </>\n )}\n />\n </FlexCol>\n )\n : <FlexCol />\n}\n\nexport type { SystemControlsUnstyledProps }\nexport { SystemControlsUnstyled }\n","import type { CollapseProps } from '@mui/material'\nimport { Collapse } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport type { PropsWithChildren } from 'react'\nimport React, { useState } from 'react'\n\nimport { SystemControlsType } from '../SystemControlsType.ts'\n\ninterface SystemControlProps extends FlexBoxProps {\n controlElement: React.ReactNode\n systemControlsType?: SystemControlsType\n}\n\nconst SystemControl: React.FC<PropsWithChildren<SystemControlProps>> = ({\n children,\n controlElement,\n systemControlsType = SystemControlsType.WindowShade,\n ...props\n}) => {\n const [toggleControls, setToggleControls] = useState(false)\n\n let orientation: CollapseProps['orientation'] = 'vertical'\n\n switch (systemControlsType) {\n case SystemControlsType.Left: {\n orientation = 'horizontal'\n break\n }\n }\n\n return (\n <FlexRow className=\"controls\" {...props}>\n <Collapse in={toggleControls} orientation={orientation} timeout={500}>\n <FlexRow bgcolor=\"primary.main\" className=\"control\">\n {controlElement}\n </FlexRow>\n </Collapse>\n <FlexCol style={{ cursor: 'pointer' }} onClick={() => setToggleControls(!toggleControls)}>\n {children}\n </FlexCol>\n </FlexRow>\n )\n}\n\nexport { SystemControl }\n","import { Search as SearchIcon } from '@mui/icons-material'\nimport { Paper, TextField } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n\nexport interface SearchBarProps extends FlexBoxProps {\n onSearch?: (term?: string) => void\n}\n\nexport const SearchBar: React.FC<SearchBarProps> = ({\n defaultValue, onSearch, ...props\n}) => {\n const [term, setTerm] = useState<string>()\n\n return (\n <FlexRow alignItems=\"stretch\" {...props}>\n <Paper\n variant=\"elevation\"\n elevation={0}\n style={{\n display: 'flex', overflow: 'hidden', width: '100%',\n }}\n >\n <TextField\n variant=\"outlined\"\n size=\"small\"\n defaultValue={defaultValue}\n fullWidth\n onChange={event => setTerm(event.target.value)}\n onKeyDown={(event) => {\n if (event.key === 'Enter') onSearch?.(term)\n }}\n slotProps={{\n input: {\n color: 'secondary',\n style: {\n borderBottomRightRadius: 0, borderTopRightRadius: 0, borderWidth: 0,\n },\n },\n }}\n />\n <ButtonEx\n variant=\"contained\"\n style={{ borderRadius: 0, borderTopLeftRadius: 0 }}\n color=\"secondary\"\n onClick={() => onSearch?.(term)}\n >\n <SearchIcon />\n </ButtonEx>\n </Paper>\n </FlexRow>\n )\n}\n"],"mappings":"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","names":["ApplicationAppBar","React","Toolbar","React","Typography","useTheme","assertEx","FlexRow","LinkEx","React","useTheme","React","Logo","props","theme","useTheme","logoUrl","palette","mode","img","src","LogoLinkEx","logo","to","href","version","props","theme","useTheme","assertEx","undefined","React","LinkEx","FlexRow","paddingX","Logo","height","width","Typography","position","borderRadius","right","color","palette","getContrastText","text","primary","bottom","bgcolor","lineHeight","variant","border","main","XyoContextToolbar","children","logo","logoTo","version","props","React","Toolbar","LogoLinkEx","to","Paper","SystemToolbar","FlexRow","NetworkSelectEx","React","XyoSystemToolbar","children","hideNetworkSelect","networkSelectProps","precedingChildren","props","React","SystemToolbar","FlexRow","marginX","Paper","variant","NetworkSelectEx","fullWidth","XyoApplicationAppBar","systemToolbar","contextToolbar","responsive","props","React","ApplicationAppBar","XyoSystemToolbar","XyoContextToolbar","position","Icon","useTheme","FlexRow","useCollapsible","React","useState","VscArrowSmallLeft","VscArrowSmallRight","CollapseToggleFlex","props","collapse","setCollapse","setCollapseEnd","useCollapsible","hover","setHover","useState","theme","useTheme","handleCollapseToggle","previous","React","FlexRow","mt","py","justifyContent","Icon","onClick","onMouseEnter","onMouseLeave","fontSize","sx","color","palette","secondary","main","cursor","VscArrowSmallRight","VscArrowSmallLeft","Collapse","styled","useTheme","useCollapsible","React","CollapsibleDrawer","children","sx","props","collapse","setCollapseEnd","useCollapsible","theme","useTheme","collapsedSize","spacing","React","CollapsibleFlexInner","in","orientation","onExited","alignItems","display","height","styled","Collapse","flexDirection","FlexCol","React","styled","SystemControlsType","Paper","useMediaQuery","FlexCol","FlexRow","NetworkSelectEx","React","Collapse","FlexCol","FlexRow","React","useState","SystemControl","children","controlElement","systemControlsType","SystemControlsType","WindowShade","props","toggleControls","setToggleControls","useState","orientation","Left","React","FlexRow","className","Collapse","in","timeout","bgcolor","FlexCol","style","cursor","onClick","SystemControlsUnstyled","visible","systemControlsType","SystemControlsType","WindowShade","props","isSmall","useMediaQuery","theme","breakpoints","down","React","FlexCol","className","SystemControl","controlElement","FlexRow","Paper","variant","elevation","NetworkSelectEx","responsive","SystemControlsRoot","styled","SystemControlsUnstyled","name","slot","theme","backgroundColor","palette","primary","main","SystemControlsType","WindowShade","borderRadius","flexDirection","flexGrow","justifyContent","padding","spacing","alignItems","Left","marginBottom","writingMode","SystemControls","props","React","FlexCol","SystemControlsRoot","Search","SearchIcon","Paper","TextField","ButtonEx","FlexRow","React","useState","SearchBar","defaultValue","onSearch","props","term","setTerm","useState","React","FlexRow","alignItems","Paper","variant","elevation","style","display","overflow","width","TextField","size","fullWidth","onChange","event","target","value","onKeyDown","key","slotProps","input","color","borderBottomRightRadius","borderTopRightRadius","borderWidth","ButtonEx","borderRadius","borderTopLeftRadius","onClick","SearchIcon"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-appbar",
3
- "version": "4.1.9",
3
+ "version": "4.1.10",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -44,13 +44,12 @@
44
44
  },
45
45
  "dependencies": {
46
46
  "@xylabs/assert": "^4.3.3",
47
- "@xylabs/react-app-settings": "^5.2.7",
48
- "@xylabs/react-appbar": "^5.2.7",
49
- "@xylabs/react-button": "^5.2.7",
50
- "@xylabs/react-flexbox": "^5.2.7",
51
- "@xylabs/react-link": "^5.2.7",
52
- "@xyo-network/react-network": "^4.1.9",
53
- "@xyo-network/react-shared": "^4.1.9",
47
+ "@xylabs/react-appbar": "^5.2.9",
48
+ "@xylabs/react-button": "^5.2.9",
49
+ "@xylabs/react-flexbox": "^5.2.9",
50
+ "@xylabs/react-link": "^5.2.9",
51
+ "@xylabs/react-shared": "^5.2.9",
52
+ "@xyo-network/react-network": "^4.1.10",
54
53
  "react-icons": "^5.3.0",
55
54
  "react-router-dom": "^6.27.0"
56
55
  },
@@ -61,8 +60,8 @@
61
60
  "@storybook/react": "^8.3.6",
62
61
  "@xylabs/ts-scripts-yarn3": "^4.2.3",
63
62
  "@xylabs/tsconfig-react": "^4.2.3",
64
- "@xyo-network/react-storybook": "^4.1.9",
65
- "@xyo-network/react-wallet": "^4.1.9",
63
+ "@xyo-network/react-storybook": "^4.1.10",
64
+ "@xyo-network/react-wallet": "^4.1.10",
66
65
  "react": "^18.3.1",
67
66
  "react-dom": "^18.3.1",
68
67
  "storybook": "^8.3.6",
@@ -1,5 +1,6 @@
1
1
  import { List, Paper } from '@mui/material'
2
2
  import type { Meta, StoryFn } from '@storybook/react'
3
+ import { MenuListItemContainer } from '@xylabs/react-appbar'
3
4
  import { FlexGrowCol } from '@xylabs/react-flexbox'
4
5
  import { NetworkMemoryProvider } from '@xyo-network/react-network'
5
6
  import { DefaultSeedPhrase } from '@xyo-network/react-storybook'
@@ -10,26 +11,25 @@ import React from 'react'
10
11
  import { BrowserRouter } from 'react-router-dom'
11
12
 
12
13
  import { SearchBar } from '../SearchBar/index.ts'
13
- import { MenuListItemContainer } from '../SiteMenu/index.ts'
14
- import { SystemToolbar } from '../Toolbar/index.ts'
15
- import { ApplicationAppBar } from './Application.tsx'
14
+ import { XyoSystemToolbar } from '../Toolbar/index.ts'
15
+ import { XyoApplicationAppBar } from './Application.tsx'
16
16
 
17
17
  const StorybookEntry = {
18
18
  argTypes: {},
19
- component: ApplicationAppBar,
19
+ component: XyoApplicationAppBar,
20
20
  parameters: { docs: { page: null } },
21
21
  title: 'appbar/AppBar/Application',
22
- } as Meta<typeof ApplicationAppBar>
22
+ } as Meta<typeof XyoApplicationAppBar>
23
23
 
24
- const Template: StoryFn<typeof ApplicationAppBar> = (args) => {
24
+ const Template: StoryFn<typeof XyoApplicationAppBar> = (args) => {
25
25
  const [wallet] = useWallet({ mnemonic: DefaultSeedPhrase })
26
26
  return (
27
27
  <WalletProvider rootWallet={wallet}>
28
28
  <BrowserRouter>
29
29
  <NetworkMemoryProvider>
30
- <ApplicationAppBar
30
+ <XyoApplicationAppBar
31
31
  systemToolbar={(
32
- <SystemToolbar
32
+ <XyoSystemToolbar
33
33
  menuItems={(
34
34
  <List>
35
35
  <MenuListItemContainer primary="Hello" />
@@ -39,7 +39,7 @@ const Template: StoryFn<typeof ApplicationAppBar> = (args) => {
39
39
  )}
40
40
  {...args}
41
41
  >
42
- </ApplicationAppBar>
42
+ </XyoApplicationAppBar>
43
43
  </NetworkMemoryProvider>
44
44
  </BrowserRouter>
45
45
  </WalletProvider>
@@ -54,7 +54,7 @@ WithSearchBar.args = {
54
54
  children: <SearchBar flexGrow={1} onSearch={term => alert(term)} />,
55
55
  color: 'primary',
56
56
  systemToolbar: (
57
- <SystemToolbar
57
+ <XyoSystemToolbar
58
58
  darkModeButton
59
59
  menuItems={(
60
60
  <List>
@@ -75,7 +75,7 @@ WithWalletSelectBar.args = {
75
75
  </FlexGrowCol>
76
76
  ),
77
77
  color: 'primary',
78
- systemToolbar: <SystemToolbar darkModeButton />,
78
+ systemToolbar: <XyoSystemToolbar darkModeButton />,
79
79
  }
80
80
 
81
81
  export {
@@ -1,24 +1,24 @@
1
1
  import type { ToolbarProps } from '@mui/material'
2
- import type { AppBarExProps } from '@xylabs/react-appbar'
3
- import { AppBarEx } from '@xylabs/react-appbar'
2
+ import type { ApplicationAppBarProps } from '@xylabs/react-appbar'
3
+ import { ApplicationAppBar } from '@xylabs/react-appbar'
4
4
  import type { ReactElement } from 'react'
5
5
  import React from 'react'
6
6
 
7
- import { ContextToolbar, SystemToolbar } from '../Toolbar/index.ts'
7
+ import { XyoContextToolbar, XyoSystemToolbar } from '../Toolbar/index.ts'
8
8
 
9
- export interface ApplicationAppBarProps extends AppBarExProps {
9
+ export interface XyoApplicationAppBarProps extends ApplicationAppBarProps {
10
10
  contextToolbar?: ReactElement<ToolbarProps>
11
11
  responsive?: boolean
12
12
  systemToolbar?: ReactElement<ToolbarProps>
13
13
  }
14
14
 
15
- export const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({
15
+ export const XyoApplicationAppBar: React.FC<XyoApplicationAppBarProps> = ({
16
16
  systemToolbar, contextToolbar, responsive = true, ...props
17
17
  }) => {
18
18
  return (
19
- <AppBarEx
20
- systemToolbar={systemToolbar ?? <SystemToolbar />}
21
- contextToolbar={contextToolbar ?? <ContextToolbar />}
19
+ <ApplicationAppBar
20
+ systemToolbar={systemToolbar ?? <XyoSystemToolbar />}
21
+ contextToolbar={contextToolbar ?? <XyoContextToolbar />}
22
22
  position="sticky"
23
23
  responsive={responsive}
24
24
  {...props}
@@ -2,13 +2,13 @@ import { Divider, useTheme } from '@mui/material'
2
2
  import type {
3
3
  Decorator, Meta, StoryFn,
4
4
  } from '@storybook/react'
5
+ import { MenuSection } from '@xylabs/react-appbar'
5
6
  import {
6
7
  FlexCol, FlexGrowCol, FlexRow,
7
8
  } from '@xylabs/react-flexbox'
9
+ import { CollapsibleProvider, useCollapsible } from '@xylabs/react-shared'
8
10
  import React from 'react'
9
11
 
10
- import { CollapsibleProvider, useCollapsible } from '../../contexts/index.ts'
11
- import { MenuSection } from '../SiteMenu/index.ts'
12
12
  import { CollapseToggleFlex } from './CollapseToggle.tsx'
13
13
  import { CollapsibleDrawer } from './CollapsibleDrawer.tsx'
14
14
  import { menuDataBottom, menuDataTop } from './storyExampleMenuData.tsx'
@@ -1,12 +1,11 @@
1
1
  import { Icon, useTheme } from '@mui/material'
2
2
  import type { FlexBoxProps } from '@xylabs/react-flexbox'
3
3
  import { FlexRow } from '@xylabs/react-flexbox'
4
+ import { useCollapsible } from '@xylabs/react-shared'
4
5
  import React, { useState } from 'react'
5
6
  // eslint-disable-next-line import-x/no-internal-modules
6
7
  import { VscArrowSmallLeft, VscArrowSmallRight } from 'react-icons/vsc'
7
8
 
8
- import { useCollapsible } from '../../contexts/index.ts'
9
-
10
9
  export const CollapseToggleFlex: React.FC<FlexBoxProps> = (props) => {
11
10
  const {
12
11
  collapse, setCollapse, setCollapseEnd,
@@ -2,11 +2,10 @@ import type { CollapseProps } from '@mui/material'
2
2
  import {
3
3
  Collapse, styled, useTheme,
4
4
  } from '@mui/material'
5
+ import { useCollapsible } from '@xylabs/react-shared'
5
6
  import type { PropsWithChildren } from 'react'
6
7
  import React from 'react'
7
8
 
8
- import { useCollapsible } from '../../contexts/index.ts'
9
-
10
9
  export const CollapsibleDrawer: React.FC<PropsWithChildren<CollapseProps>> = ({
11
10
  children, sx, ...props
12
11
  }) => {
@@ -1,3 +1,4 @@
1
+ import type { MenuListItemProps } from '@xylabs/react-appbar'
1
2
  import React from 'react'
2
3
  import {
3
4
  VscAccount,
@@ -15,8 +16,6 @@ import {
15
16
  // eslint-disable-next-line import-x/no-internal-modules
16
17
  } from 'react-icons/vsc'
17
18
 
18
- import type { MenuListItemProps } from '../SiteMenu/index.ts'
19
-
20
19
  export const menuDataTop: MenuListItemProps[] = [
21
20
  {
22
21
  icon: <VscGlobe fontSize="body1" />,
@@ -2,18 +2,18 @@ import type { Meta, StoryFn } from '@storybook/react'
2
2
  import React from 'react'
3
3
  import { BrowserRouter } from 'react-router-dom'
4
4
 
5
- import { ContextToolbar } from './ContextToolbar.tsx'
5
+ import { XyoContextToolbar } from './ContextToolbar.tsx'
6
6
 
7
7
  const StorybookEntry = {
8
8
  argTypes: {},
9
- component: ContextToolbar,
9
+ component: XyoContextToolbar,
10
10
  parameters: { docs: { page: null } },
11
- title: 'appbar/Toolbar/Context',
12
- } as Meta<typeof ContextToolbar>
11
+ title: 'appbar/Toolbar/XyoContextToolbar',
12
+ } as Meta<typeof XyoContextToolbar>
13
13
 
14
- const Template: StoryFn<typeof ContextToolbar> = args => (
14
+ const Template: StoryFn<typeof XyoContextToolbar> = args => (
15
15
  <BrowserRouter>
16
- <ContextToolbar {...args}></ContextToolbar>
16
+ <XyoContextToolbar {...args}></XyoContextToolbar>
17
17
  </BrowserRouter>
18
18
  )
19
19
 
@@ -1,21 +1,21 @@
1
- import type { ToolbarProps } from '@mui/material'
2
1
  import { Toolbar } from '@mui/material'
2
+ import type { ContextToolbarProps } from '@xylabs/react-appbar'
3
+ import type { ReactNode } from 'react'
3
4
  import React from 'react'
4
- import type { To } from 'react-router-dom'
5
5
 
6
6
  import { LogoLinkEx } from './LogoLinkEx.tsx'
7
7
 
8
- export interface ContextToolbarProps extends ToolbarProps {
9
- logoTo?: To
10
- version?: boolean
8
+ export interface XyoContextToolbarProps extends ContextToolbarProps {
9
+ logo?: ReactNode
11
10
  }
12
11
 
13
- export const ContextToolbar: React.FC<ContextToolbarProps> = ({
14
- logoTo = '/', version = false, ...props
12
+ export const XyoContextToolbar: React.FC<XyoContextToolbarProps> = ({
13
+ children, logo, logoTo = '/', version = false, ...props
15
14
  }) => {
16
15
  return (
17
16
  <Toolbar {...props}>
18
- <LogoLinkEx version={version} to={logoTo} />
17
+ <LogoLinkEx logo={logo} version={version} to={logoTo} />
18
+ {children}
19
19
  </Toolbar>
20
20
  )
21
21
  }
@@ -8,18 +8,19 @@ import React from 'react'
8
8
  import { Logo } from './Logo.tsx'
9
9
 
10
10
  export type LogoLinkExProps = LinkExProps & {
11
+ logo?: React.ReactNode
11
12
  version?: boolean | string
12
13
  }
13
14
 
14
15
  export const LogoLinkEx: React.FC<LogoLinkExProps> = ({
15
- to = '/', href, version = false, ...props
16
+ logo, to = '/', href, version = false, ...props
16
17
  }) => {
17
18
  const theme = useTheme()
18
- assertEx(href === undefined, 'href is not supported')
19
+ assertEx(href === undefined, () => 'href is not supported')
19
20
  return (
20
21
  <LinkEx to={to} {...props}>
21
22
  <FlexRow paddingX="4px">
22
- <Logo height="40" width="43" />
23
+ {logo ?? <Logo height="40" width="43" />}
23
24
  {version
24
25
  ? (
25
26
  <Typography
@@ -1,13 +1,12 @@
1
- import { List } from '@mui/material'
1
+ import { List, Typography } from '@mui/material'
2
2
  import type { Meta, StoryFn } from '@storybook/react'
3
+ import { MenuListItemContainer } from '@xylabs/react-appbar'
3
4
  import { NetworkMemoryProvider } from '@xyo-network/react-network'
4
- import { TypographyEx } from '@xyo-network/react-shared'
5
5
  import type { SyntheticEvent } from 'react'
6
6
  import React from 'react'
7
7
  import { BrowserRouter } from 'react-router-dom'
8
8
 
9
- import { MenuListItemContainer } from '../../SiteMenu/index.ts'
10
- import { SystemToolbar } from './SystemToolbar.tsx'
9
+ import { XyoSystemToolbar } from './SystemToolbar.tsx'
11
10
 
12
11
  const DefaultMenu = (
13
12
  <List>
@@ -22,15 +21,15 @@ const DefaultMenu = (
22
21
  )
23
22
 
24
23
  const StorybookEntry: Meta = {
25
- component: SystemToolbar,
24
+ component: XyoSystemToolbar,
26
25
  parameters: { docs: { page: null } },
27
26
  title: 'appbar/Toolbar/System',
28
27
  }
29
28
 
30
- const Template: StoryFn<typeof SystemToolbar> = args => (
29
+ const Template: StoryFn<typeof XyoSystemToolbar> = args => (
31
30
  <BrowserRouter>
32
31
  <NetworkMemoryProvider>
33
- <SystemToolbar {...args} />
32
+ <XyoSystemToolbar {...args} />
34
33
  </NetworkMemoryProvider>
35
34
  </BrowserRouter>
36
35
  )
@@ -41,9 +40,9 @@ Default.args = {}
41
40
  const PrecedingChildren = Template.bind({})
42
41
  PrecedingChildren.args = {
43
42
  precedingChildren: (
44
- <TypographyEx variant="body1" mx={0.5}>
43
+ <Typography variant="body1" mx={0.5}>
45
44
  Preceding Child Component
46
- </TypographyEx>
45
+ </Typography>
47
46
  ),
48
47
  }
49
48
 
@@ -1,16 +1,14 @@
1
- import type { ToolbarProps } from '@mui/material'
2
- import { Paper, Toolbar } from '@mui/material'
3
- import { DarkModeIconButton } from '@xylabs/react-app-settings'
1
+ import { Paper } from '@mui/material'
2
+ import {
3
+ type SiteMenuProps, SystemToolbar, type SystemToolbarProps,
4
+ } from '@xylabs/react-appbar'
4
5
  import { FlexRow } from '@xylabs/react-flexbox'
5
6
  import type { NetworkSelectExProps } from '@xyo-network/react-network'
6
7
  import { NetworkSelectEx } from '@xyo-network/react-network'
7
8
  import type { ReactNode } from 'react'
8
9
  import React from 'react'
9
10
 
10
- import type { SiteMenuProps } from '../../SiteMenu/index.ts'
11
- import { SiteMenu } from '../../SiteMenu/index.ts'
12
-
13
- export interface SystemToolbarProps extends ToolbarProps {
11
+ export interface XyoSystemToolbarProps extends SystemToolbarProps {
14
12
  darkModeButton?: boolean
15
13
  developerMode?: boolean
16
14
  hideNetworkSelect?: boolean
@@ -20,18 +18,15 @@ export interface SystemToolbarProps extends ToolbarProps {
20
18
  precedingChildren?: ReactNode
21
19
  }
22
20
 
23
- export const SystemToolbar: React.FC<SystemToolbarProps> = ({
21
+ export const XyoSystemToolbar: React.FC<XyoSystemToolbarProps> = ({
24
22
  children,
25
- darkModeButton = false,
26
23
  hideNetworkSelect,
27
- menuItems,
28
24
  networkSelectProps,
29
- onMenuToggle,
30
25
  precedingChildren,
31
26
  ...props
32
27
  }) => {
33
28
  return (
34
- <Toolbar {...props}>
29
+ <SystemToolbar {...props}>
35
30
  {precedingChildren}
36
31
  {hideNetworkSelect
37
32
  ? null
@@ -43,12 +38,6 @@ export const SystemToolbar: React.FC<SystemToolbarProps> = ({
43
38
  </FlexRow>
44
39
  )}
45
40
  {children}
46
- {darkModeButton
47
- ? <DarkModeIconButton color="inherit" />
48
- : null}
49
- {menuItems
50
- ? <SiteMenu onMenuToggle={onMenuToggle}>{menuItems}</SiteMenu>
51
- : null}
52
- </Toolbar>
41
+ </SystemToolbar>
53
42
  )
54
43
  }
@@ -2,5 +2,4 @@ export * from './AppBar/index.ts'
2
2
  export * from './CollapsibleDrawer/index.ts'
3
3
  export * from './MobileSystemControls/index.ts'
4
4
  export * from './SearchBar/index.ts'
5
- export * from './SiteMenu/index.ts'
6
5
  export * from './Toolbar/index.ts'
package/src/index.ts CHANGED
@@ -1,2 +1 @@
1
1
  export * from './components/index.ts'
2
- export * from './contexts/index.ts'
@@ -1,9 +0,0 @@
1
- import type { FlexBoxProps } from '@xylabs/react-flexbox';
2
- import React from 'react';
3
- export interface SiteMenuProps extends FlexBoxProps {
4
- hideSettingsMenuItem?: boolean;
5
- onMenuToggle?: (state?: boolean) => void;
6
- side?: 'left' | 'right' | 'top' | 'bottom';
7
- }
8
- export declare const SiteMenu: React.FC<SiteMenuProps>;
9
- //# sourceMappingURL=Menu.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../../src/components/SiteMenu/Menu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAA8B,MAAM,OAAO,CAAA;AAIlD,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IACxC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;CAC3C;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAoC5C,CAAA"}
@@ -1,11 +0,0 @@
1
- import type { ListItemProps } from '@mui/material';
2
- import React from 'react';
3
- import type { MenuListItemBase, NavListItemProps } from '../lib/index.ts';
4
- export interface MenuListItemProps extends NavListItemProps, MenuListItemBase, ListItemProps {
5
- iconMenuTextSpacing?: string;
6
- iconOnly?: boolean;
7
- subNavListItems?: NavListItemProps[];
8
- subNavOpen?: boolean;
9
- }
10
- export declare const MenuListItemContainer: React.FC<MenuListItemProps>;
11
- //# sourceMappingURL=MenuListItemContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MenuListItemContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/SiteMenu/MenuListItem/MenuListItemContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAIlD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAMzE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB,EAAE,gBAAgB,EAAE,aAAa;IAC1F,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,CAAC,EAAE,gBAAgB,EAAE,CAAA;IACpC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkE7D,CAAA"}