@xyo-network/react-appbar 3.0.2 → 3.0.3
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/browser/components/AppBar/Application.d.ts +11 -0
- package/dist/browser/components/AppBar/Application.d.ts.map +1 -0
- package/dist/browser/components/AppBar/index.d.ts +2 -0
- package/dist/browser/components/AppBar/index.d.ts.map +1 -0
- package/dist/browser/components/CollapsibleDrawer/CollapseToggle.d.ts +4 -0
- package/dist/browser/components/CollapsibleDrawer/CollapseToggle.d.ts.map +1 -0
- package/dist/browser/components/CollapsibleDrawer/CollapsibleDrawer.d.ts +5 -0
- package/dist/browser/components/CollapsibleDrawer/CollapsibleDrawer.d.ts.map +1 -0
- package/dist/browser/components/CollapsibleDrawer/index.d.ts +3 -0
- package/dist/browser/components/CollapsibleDrawer/index.d.ts.map +1 -0
- package/dist/browser/components/CollapsibleDrawer/storyExampleMenuData.d.ts +4 -0
- package/dist/browser/components/CollapsibleDrawer/storyExampleMenuData.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/SystemControls.d.ts +5 -0
- package/dist/browser/components/MobileSystemControls/SystemControls.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsRoot.d.ts +4 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsRoot.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsType.d.ts +6 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsType.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsUnstyled.d.ts +11 -0
- package/dist/browser/components/MobileSystemControls/SystemControlsUnstyled.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/controls/SystemControl.d.ts +11 -0
- package/dist/browser/components/MobileSystemControls/controls/SystemControl.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/controls/SystemControlText.d.ts +8 -0
- package/dist/browser/components/MobileSystemControls/controls/SystemControlText.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/controls/index.d.ts +3 -0
- package/dist/browser/components/MobileSystemControls/controls/index.d.ts.map +1 -0
- package/dist/browser/components/MobileSystemControls/index.d.ts +4 -0
- package/dist/browser/components/MobileSystemControls/index.d.ts.map +1 -0
- package/dist/browser/components/SearchBar/SearchBar.d.ts +7 -0
- package/dist/browser/components/SearchBar/SearchBar.d.ts.map +1 -0
- package/dist/browser/components/SearchBar/index.d.ts +2 -0
- package/dist/browser/components/SearchBar/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/Menu.d.ts +9 -0
- package/dist/browser/components/SiteMenu/Menu.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/MenuListItemContainer.d.ts +11 -0
- package/dist/browser/components/SiteMenu/MenuListItem/MenuListItemContainer.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/index.d.ts +2 -0
- package/dist/browser/components/SiteMenu/MenuListItem/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.d.ts +7 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/ListItemTooltip.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.d.ts +8 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuIcon.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.d.ts +7 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/index.d.ts +4 -0
- package/dist/browser/components/SiteMenu/MenuListItem/list-item-components/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.d.ts +11 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.d.ts +9 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/index.d.ts +3 -0
- package/dist/browser/components/SiteMenu/MenuListItem/sub-nav/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/MenuSection.d.ts +11 -0
- package/dist/browser/components/SiteMenu/MenuSection.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/hooks/index.d.ts +2 -0
- package/dist/browser/components/SiteMenu/hooks/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/hooks/useMenuItemsShared.d.ts +7 -0
- package/dist/browser/components/SiteMenu/hooks/useMenuItemsShared.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/index.d.ts +6 -0
- package/dist/browser/components/SiteMenu/index.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/lib/MenuListItemBase.d.ts +5 -0
- package/dist/browser/components/SiteMenu/lib/MenuListItemBase.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/lib/NavListItemProps.d.ts +12 -0
- package/dist/browser/components/SiteMenu/lib/NavListItemProps.d.ts.map +1 -0
- package/dist/browser/components/SiteMenu/lib/index.d.ts +3 -0
- package/dist/browser/components/SiteMenu/lib/index.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/Context/ContextToolbar.d.ts +9 -0
- package/dist/browser/components/Toolbar/Context/ContextToolbar.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/Context/Logo.d.ts +3 -0
- package/dist/browser/components/Toolbar/Context/Logo.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/Context/LogoLinkEx.d.ts +7 -0
- package/dist/browser/components/Toolbar/Context/LogoLinkEx.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/Context/index.d.ts +2 -0
- package/dist/browser/components/Toolbar/Context/index.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/System/SystemToolbar.d.ts +16 -0
- package/dist/browser/components/Toolbar/System/SystemToolbar.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/System/index.d.ts +2 -0
- package/dist/browser/components/Toolbar/System/index.d.ts.map +1 -0
- package/dist/browser/components/Toolbar/index.d.ts +3 -0
- package/dist/browser/components/Toolbar/index.d.ts.map +1 -0
- package/dist/browser/components/index.d.ts +7 -0
- package/dist/browser/components/index.d.ts.map +1 -0
- package/dist/browser/contexts/Collapsible/State.d.ts +9 -0
- package/dist/browser/contexts/Collapsible/State.d.ts.map +1 -0
- package/dist/browser/contexts/Collapsible/context.d.ts +3 -0
- package/dist/browser/contexts/Collapsible/context.d.ts.map +1 -0
- package/dist/browser/contexts/Collapsible/index.d.ts +4 -0
- package/dist/browser/contexts/Collapsible/index.d.ts.map +1 -0
- package/dist/browser/contexts/Collapsible/provider.d.ts +8 -0
- package/dist/browser/contexts/Collapsible/provider.d.ts.map +1 -0
- package/dist/browser/contexts/Collapsible/use.d.ts +2 -0
- package/dist/browser/contexts/Collapsible/use.d.ts.map +1 -0
- package/dist/browser/contexts/index.d.ts +2 -0
- package/dist/browser/contexts/index.d.ts.map +1 -0
- package/dist/browser/index.d.ts +3 -116
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.mjs +5 -15
- package/dist/browser/index.mjs.map +1 -1
- package/package.json +53 -47
- package/src/components/AppBar/Application.stories.tsx +7 -7
- package/src/components/AppBar/Application.tsx +3 -1
- package/src/components/CollapsibleDrawer/CollapseDrawer.stories.tsx +8 -10
- package/src/components/CollapsibleDrawer/CollapseToggle.tsx +3 -1
- package/src/components/CollapsibleDrawer/CollapsibleDrawer.tsx +6 -2
- package/src/components/CollapsibleDrawer/storyExampleMenuData.tsx +9 -3
- package/src/components/MobileSystemControls/SystemControls.stories.tsx +1 -5
- package/src/components/MobileSystemControls/SystemControlsRoot.tsx +2 -6
- package/src/components/SearchBar/SearchBar.tsx +22 -4
- package/src/components/SiteMenu/Menu.tsx +6 -2
- package/src/components/SiteMenu/MenuListItem/MenuListItemContainer.stories.tsx +4 -6
- package/src/components/SiteMenu/MenuListItem/MenuListItemContainer.tsx +3 -1
- package/src/components/SiteMenu/MenuListItem/list-item-components/MenuListItem.tsx +14 -3
- package/src/components/SiteMenu/MenuListItem/sub-nav/SubNavListItemCollapse.tsx +3 -1
- package/src/components/SiteMenu/MenuListItem/sub-nav/SubNavToggleIconButton.tsx +3 -1
- package/src/components/SiteMenu/MenuSection.tsx +3 -1
- package/src/components/SiteMenu/hooks/useMenuItemsShared.tsx +4 -4
- package/src/components/Toolbar/Context/ContextToolbar.stories.tsx +1 -5
- package/src/components/Toolbar/Context/ContextToolbar.tsx +3 -1
- package/src/components/Toolbar/Context/LogoLinkEx.tsx +3 -1
- package/src/components/Toolbar/System/SystemToolbar.stories.tsx +4 -6
- package/src/contexts/Collapsible/provider.tsx +10 -13
- package/xy.config.ts +1 -3
package/dist/browser/index.d.ts
CHANGED
@@ -1,116 +1,3 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
import { FlexBoxProps } from '@xylabs/react-flexbox';
|
5
|
-
import { WithChildren } from '@xylabs/react-shared';
|
6
|
-
import { To } from 'react-router-dom';
|
7
|
-
import { NetworkSelectExProps } from '@xyo-network/react-network';
|
8
|
-
import * as _xyo_network_react_shared from '@xyo-network/react-shared';
|
9
|
-
import { ContextExState } from '@xyo-network/react-shared';
|
10
|
-
|
11
|
-
interface ApplicationAppBarProps extends AppBarExProps {
|
12
|
-
contextToolbar?: ReactElement<ToolbarProps>;
|
13
|
-
responsive?: boolean;
|
14
|
-
systemToolbar?: ReactElement<ToolbarProps>;
|
15
|
-
}
|
16
|
-
declare const ApplicationAppBar: React.FC<ApplicationAppBarProps>;
|
17
|
-
|
18
|
-
declare const CollapseToggleFlex: React.FC<FlexBoxProps>;
|
19
|
-
|
20
|
-
declare const CollapsibleDrawer: React.FC<WithChildren<CollapseProps>>;
|
21
|
-
|
22
|
-
declare enum SystemControlsType {
|
23
|
-
Left = "Left",
|
24
|
-
Right = "Right",
|
25
|
-
WindowShade = "WindowShade"
|
26
|
-
}
|
27
|
-
|
28
|
-
interface SystemControlsUnstyledProps extends FlexBoxProps {
|
29
|
-
systemControlsType?: SystemControlsType;
|
30
|
-
visible?: boolean;
|
31
|
-
}
|
32
|
-
declare const SystemControlsUnstyled: React.FC<SystemControlsUnstyledProps>;
|
33
|
-
|
34
|
-
declare const SystemControls: React.FC<SystemControlsUnstyledProps>;
|
35
|
-
|
36
|
-
interface SearchBarProps extends FlexBoxProps {
|
37
|
-
onSearch?: (term?: string) => void;
|
38
|
-
}
|
39
|
-
declare const SearchBar: React.FC<SearchBarProps>;
|
40
|
-
|
41
|
-
interface MenuListItemBase {
|
42
|
-
collapseEnd?: boolean;
|
43
|
-
iconOnly?: boolean;
|
44
|
-
}
|
45
|
-
|
46
|
-
interface NavListItemProps {
|
47
|
-
href?: string;
|
48
|
-
icon?: ReactNode;
|
49
|
-
onButtonClick?: ListItemProps['onClick'];
|
50
|
-
primary: ListItemTextProps['primary'];
|
51
|
-
to?: To;
|
52
|
-
tooltip?: string;
|
53
|
-
}
|
54
|
-
|
55
|
-
interface MenuListItemProps extends NavListItemProps, MenuListItemBase, ListItemProps {
|
56
|
-
iconMenuTextSpacing?: string;
|
57
|
-
iconOnly?: boolean;
|
58
|
-
subNavListItems?: NavListItemProps[];
|
59
|
-
subNavOpen?: boolean;
|
60
|
-
}
|
61
|
-
declare const MenuListItemContainer: React.FC<MenuListItemProps>;
|
62
|
-
|
63
|
-
type DefaultSiteMenuListItemProps = Pick<MenuListItemProps, 'collapseEnd' | 'dense' | 'iconOnly' | 'sx'>;
|
64
|
-
declare const useMenuItemsShared: () => {
|
65
|
-
defaultSiteMenuListItemProps: DefaultSiteMenuListItemProps;
|
66
|
-
onMenuItemToggle: (open?: boolean) => void;
|
67
|
-
};
|
68
|
-
|
69
|
-
interface SiteMenuProps extends FlexBoxProps {
|
70
|
-
hideSettingsMenuItem?: boolean;
|
71
|
-
onMenuToggle?: (state?: boolean) => void;
|
72
|
-
side?: 'left' | 'right' | 'top' | 'bottom';
|
73
|
-
}
|
74
|
-
declare const SiteMenu: React.FC<SiteMenuProps>;
|
75
|
-
|
76
|
-
interface MenuSectionProps extends FlexBoxProps {
|
77
|
-
iconMenuTextSpacing?: string;
|
78
|
-
listItems: MenuListItemProps[];
|
79
|
-
showTitle?: boolean;
|
80
|
-
title: string;
|
81
|
-
}
|
82
|
-
declare const MenuSection: React.FC<MenuSectionProps>;
|
83
|
-
|
84
|
-
interface ContextToolbarProps extends ToolbarProps {
|
85
|
-
logoTo?: To;
|
86
|
-
version?: boolean;
|
87
|
-
}
|
88
|
-
declare const ContextToolbar: React.FC<ContextToolbarProps>;
|
89
|
-
|
90
|
-
interface SystemToolbarProps extends ToolbarProps {
|
91
|
-
darkModeButton?: boolean;
|
92
|
-
developerMode?: boolean;
|
93
|
-
hideNetworkSelect?: boolean;
|
94
|
-
menuItems?: ReactNode;
|
95
|
-
networkSelectProps?: NetworkSelectExProps;
|
96
|
-
onMenuToggle?: SiteMenuProps['onMenuToggle'];
|
97
|
-
precedingChildren?: ReactNode;
|
98
|
-
}
|
99
|
-
declare const SystemToolbar: React.FC<SystemToolbarProps>;
|
100
|
-
|
101
|
-
interface CollapsibleProviderProps extends WithChildren {
|
102
|
-
defaultCollapse?: boolean;
|
103
|
-
defaultCollapseEnd?: boolean;
|
104
|
-
}
|
105
|
-
declare const CollapsibleProvider: React.FC<CollapsibleProviderProps>;
|
106
|
-
|
107
|
-
interface CollapsibleState extends ContextExState {
|
108
|
-
collapse?: boolean;
|
109
|
-
collapseEnd?: boolean;
|
110
|
-
setCollapse?: Dispatch<SetStateAction<boolean>>;
|
111
|
-
setCollapseEnd?: Dispatch<SetStateAction<boolean>>;
|
112
|
-
}
|
113
|
-
|
114
|
-
declare const useCollapsible: () => Omit<CollapsibleState & _xyo_network_react_shared.ContextExState, "provided">;
|
115
|
-
|
116
|
-
export { ApplicationAppBar, type ApplicationAppBarProps, CollapseToggleFlex, CollapsibleDrawer, CollapsibleProvider, type CollapsibleProviderProps, type CollapsibleState, ContextToolbar, type ContextToolbarProps, type DefaultSiteMenuListItemProps, type MenuListItemBase, MenuListItemContainer, type MenuListItemProps, MenuSection, type MenuSectionProps, type NavListItemProps, SearchBar, type SearchBarProps, SiteMenu, type SiteMenuProps, SystemControls, SystemControlsType, SystemControlsUnstyled, type SystemControlsUnstyledProps, SystemToolbar, type SystemToolbarProps, useCollapsible, useMenuItemsShared };
|
1
|
+
export * from './components/index.ts';
|
2
|
+
export * from './contexts/index.ts';
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA"}
|
package/dist/browser/index.mjs
CHANGED
@@ -71,7 +71,7 @@ import React13 from "react";
|
|
71
71
|
import { useMemo } from "react";
|
72
72
|
|
73
73
|
// src/contexts/Collapsible/provider.tsx
|
74
|
-
import React4, {
|
74
|
+
import React4, { useState } from "react";
|
75
75
|
|
76
76
|
// src/contexts/Collapsible/context.ts
|
77
77
|
import { createContextEx } from "@xyo-network/react-shared";
|
@@ -79,18 +79,8 @@ var CollapsibleContext = createContextEx();
|
|
79
79
|
|
80
80
|
// src/contexts/Collapsible/provider.tsx
|
81
81
|
var CollapsibleProvider = /* @__PURE__ */ __name(({ defaultCollapse = false, defaultCollapseEnd = false, children }) => {
|
82
|
-
const [collapse, setCollapse] = useState(defaultCollapse);
|
83
|
-
const [collapseEnd, setCollapseEnd] = useState(defaultCollapseEnd);
|
84
|
-
useEffect(() => {
|
85
|
-
setCollapse(defaultCollapse);
|
86
|
-
}, [
|
87
|
-
defaultCollapse
|
88
|
-
]);
|
89
|
-
useEffect(() => {
|
90
|
-
setCollapseEnd(defaultCollapseEnd);
|
91
|
-
}, [
|
92
|
-
defaultCollapseEnd
|
93
|
-
]);
|
82
|
+
const [collapse, setCollapse] = useState(() => defaultCollapse);
|
83
|
+
const [collapseEnd, setCollapseEnd] = useState(() => defaultCollapseEnd);
|
94
84
|
return (
|
95
85
|
// eslint-disable-next-line @eslint-react/no-unstable-context-value
|
96
86
|
/* @__PURE__ */ React4.createElement(CollapsibleContext.Provider, {
|
@@ -137,7 +127,7 @@ var useMenuItemsShared = /* @__PURE__ */ __name(() => {
|
|
137
127
|
import { Menu as MenuIcon2, Settings as SettingsIcon } from "@mui/icons-material";
|
138
128
|
import { IconButton as IconButton2, List as List2, SwipeableDrawer } from "@mui/material";
|
139
129
|
import { FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
|
140
|
-
import React11, { useEffect
|
130
|
+
import React11, { useEffect, useState as useState3 } from "react";
|
141
131
|
|
142
132
|
// src/components/SiteMenu/MenuListItem/MenuListItemContainer.tsx
|
143
133
|
import { ListItemText, useTheme as useTheme4 } from "@mui/material";
|
@@ -298,7 +288,7 @@ var MenuListItemContainer = /* @__PURE__ */ __name(({ style, icon, iconMenuTextS
|
|
298
288
|
// src/components/SiteMenu/Menu.tsx
|
299
289
|
var SiteMenu = /* @__PURE__ */ __name(({ children, onMenuToggle, side = "right", ...props }) => {
|
300
290
|
const [open, setOpen] = useState3(false);
|
301
|
-
|
291
|
+
useEffect(() => {
|
302
292
|
onMenuToggle?.(open);
|
303
293
|
}, [
|
304
294
|
onMenuToggle,
|
@@ -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> = ({ systemToolbar, contextToolbar, responsive = true, ...props }) => {\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> = ({ logoTo = '/', version = false, ...props }) => {\n return (\n <Toolbar {...props}>\n <LogoLinkEx version={version} to={logoTo} />\n </Toolbar>\n )\n}\n","import { Typography, useTheme } from '@mui/material'\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 interface LogoLinkExProps extends LinkExProps {\n version?: boolean | string\n}\n\nexport const LogoLinkEx: React.FC<LogoLinkExProps> = ({ to = '/', version = false, ...props }) => {\n const theme = useTheme()\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 { FlexRow } from '@xylabs/react-flexbox'\nimport { DarkModeIconButton } from '@xyo-network/react-app-settings'\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 { collapse, collapseEnd, setCollapse, setCollapseEnd } = 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: {\n px: '8px',\n },\n }),\n [collapse, collapseEnd],\n )\n\n return { defaultSiteMenuListItemProps, onMenuItemToggle }\n}\n","import type { WithChildren } from '@xylabs/react-shared'\nimport React, { useEffect, useState } from 'react'\n\nimport { CollapsibleContext } from './context.ts'\n\nexport interface CollapsibleProviderProps extends WithChildren {\n defaultCollapse?: boolean\n defaultCollapseEnd?: boolean\n}\n\nexport const CollapsibleProvider: React.FC<CollapsibleProviderProps> = ({ defaultCollapse = false, defaultCollapseEnd = false, children }) => {\n const [collapse, setCollapse] = useState(defaultCollapse)\n const [collapseEnd, setCollapseEnd] = useState(defaultCollapseEnd)\n\n useEffect(() => {\n setCollapse(defaultCollapse)\n }, [defaultCollapse])\n\n useEffect(() => {\n setCollapseEnd(defaultCollapseEnd)\n }, [defaultCollapseEnd])\n\n return (\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n <CollapsibleContext.Provider value={{ collapse, collapseEnd, provided: true, setCollapse, setCollapseEnd }}>\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 { IconButton, List, SwipeableDrawer } 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> = ({ children, onMenuToggle, side = 'right', ...props }) => {\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 { ListItemTooltip, MenuIcon, MenuListItem } 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> = ({ iconOnly, collapseEnd, sx, children, dense, ...props }) => {\n const listItemSx = iconOnly ? { borderRadius: '50%', display: 'inline-flex', flexGrow: 0, width: 'auto' } : { 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 sx={{ ...listItemSx, ...spacingSx, ...paddingSx, ...sx }} {...props}>\n {children}\n </ListItem>\n )\n}\n","import type { CollapseProps } from '@mui/material'\nimport { Collapse, List } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport type { NavListItemProps } from '../../lib/index.ts'\n\nexport interface SubNavListItemsCollapseProps extends WithChildren, CollapseProps {\n collapse?: boolean\n openSubNav?: boolean\n subNavListItems?: NavListItemProps[]\n}\n\nexport const SubNavListItemsCollapse: React.FC<SubNavListItemsCollapseProps> = ({ collapse, openSubNav, children, ...props }) => {\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 { Dispatch, SetStateAction, SyntheticEvent } 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> = ({ iconMenuTextSpacing, listItems, showTitle = true, title, ...props }) => {\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 { collapse, setCollapse, setCollapseEnd } = 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 { Collapse, styled, useTheme } from '@mui/material'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useCollapsible } from '../../contexts/index.ts'\n\nexport const CollapsibleDrawer: React.FC<WithChildren<CollapseProps>> = ({ children, sx, ...props }) => {\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': {\n backgroundColor: theme.palette.primary.main,\n },\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': {\n marginBottom: `${theme.spacing(2)}`,\n },\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 { WithChildren } from '@xylabs/react-shared'\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<WithChildren<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> = ({ defaultValue, onSearch, ...props }) => {\n const [term, setTerm] = useState<string>()\n\n return (\n <FlexRow alignItems=\"stretch\" {...props}>\n <Paper variant=\"elevation\" elevation={0} style={{ display: 'flex', overflow: 'hidden', width: '100%' }}>\n <TextField\n InputProps={{ color: 'secondary', style: { borderBottomRightRadius: 0, borderTopRightRadius: 0, borderWidth: 0 } }}\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 />\n <ButtonEx variant=\"contained\" style={{ borderRadius: 0, borderTopLeftRadius: 0 }} color=\"secondary\" onClick={() => onSearch?.(term)}>\n <SearchIcon />\n </ButtonEx>\n </Paper>\n </FlexRow>\n )\n}\n"],"mappings":"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","names":["AppBarEx","React","Toolbar","React","Typography","useTheme","FlexRow","LinkEx","React","useTheme","React","Logo","props","theme","useTheme","logoUrl","palette","mode","img","src","LogoLinkEx","to","version","props","theme","useTheme","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","FlexRow","DarkModeIconButton","NetworkSelectEx","React","useMemo","React","useEffect","useState","createContextEx","CollapsibleContext","CollapsibleProvider","defaultCollapse","defaultCollapseEnd","children","collapse","setCollapse","useState","collapseEnd","setCollapseEnd","useEffect","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","InputProps","color","borderBottomRightRadius","borderTopRightRadius","borderWidth","size","fullWidth","onChange","event","target","value","onKeyDown","key","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/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 { 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 interface LogoLinkExProps extends LinkExProps {\n version?: boolean | string\n}\n\nexport const LogoLinkEx: React.FC<LogoLinkExProps> = ({\n to = '/', version = false, ...props\n}) => {\n const theme = useTheme()\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 { FlexRow } from '@xylabs/react-flexbox'\nimport { DarkModeIconButton } from '@xyo-network/react-app-settings'\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 { WithChildren } from '@xylabs/react-shared'\nimport React, { useState } from 'react'\n\nimport { CollapsibleContext } from './context.ts'\n\nexport interface CollapsibleProviderProps extends WithChildren {\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 { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport type { NavListItemProps } from '../../lib/index.ts'\n\nexport interface SubNavListItemsCollapseProps extends WithChildren, 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 { WithChildren } from '@xylabs/react-shared'\nimport React from 'react'\n\nimport { useCollapsible } from '../../contexts/index.ts'\n\nexport const CollapsibleDrawer: React.FC<WithChildren<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 { WithChildren } from '@xylabs/react-shared'\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<WithChildren<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 InputProps={{\n color: 'secondary',\n style: {\n borderBottomRightRadius: 0, borderTopRightRadius: 0, borderWidth: 0,\n },\n }}\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 />\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","FlexRow","LinkEx","React","useTheme","React","Logo","props","theme","useTheme","logoUrl","palette","mode","img","src","LogoLinkEx","to","version","props","theme","useTheme","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","FlexRow","DarkModeIconButton","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","InputProps","color","borderBottomRightRadius","borderTopRightRadius","borderWidth","size","fullWidth","onChange","event","target","value","onKeyDown","key","ButtonEx","borderRadius","borderTopLeftRadius","onClick","SearchIcon"]}
|
package/package.json
CHANGED
@@ -1,13 +1,46 @@
|
|
1
1
|
{
|
2
2
|
"name": "@xyo-network/react-appbar",
|
3
|
+
"version": "3.0.3",
|
4
|
+
"description": "Common React library for all XYO projects that use React",
|
5
|
+
"keywords": [
|
6
|
+
"xyo",
|
7
|
+
"utility",
|
8
|
+
"typescript",
|
9
|
+
"react"
|
10
|
+
],
|
11
|
+
"homepage": "https://xyo.network",
|
12
|
+
"bugs": {
|
13
|
+
"url": "git+https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues",
|
14
|
+
"email": "support@xyo.network"
|
15
|
+
},
|
16
|
+
"repository": {
|
17
|
+
"type": "git",
|
18
|
+
"url": "git+https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
|
19
|
+
},
|
20
|
+
"license": "LGPL-3.0-only",
|
3
21
|
"author": {
|
4
|
-
"email": "support@xyo.network",
|
5
22
|
"name": "XYO Development Team",
|
23
|
+
"email": "support@xyo.network",
|
6
24
|
"url": "https://xyo.network"
|
7
25
|
},
|
8
|
-
"
|
9
|
-
|
10
|
-
|
26
|
+
"sideEffects": false,
|
27
|
+
"type": "module",
|
28
|
+
"exports": {
|
29
|
+
".": {
|
30
|
+
"import": {
|
31
|
+
"types": "./dist/browser/index.d.ts",
|
32
|
+
"default": "./dist/browser/index.mjs"
|
33
|
+
},
|
34
|
+
"types": "./dist/browser/index.d.ts",
|
35
|
+
"default": "./dist/browser/index.mjs"
|
36
|
+
},
|
37
|
+
"./package.json": "./package.json"
|
38
|
+
},
|
39
|
+
"module": "dist/browser/index.mjs",
|
40
|
+
"types": "dist/browser/index.d.ts",
|
41
|
+
"scripts": {
|
42
|
+
"license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\"",
|
43
|
+
"lint-pkg": "npmPkgJsonLint ."
|
11
44
|
},
|
12
45
|
"dependencies": {
|
13
46
|
"@xylabs/react-appbar": "^4.0.3",
|
@@ -15,17 +48,24 @@
|
|
15
48
|
"@xylabs/react-flexbox": "^4.0.3",
|
16
49
|
"@xylabs/react-link": "^4.0.3",
|
17
50
|
"@xylabs/react-shared": "^4.0.3",
|
18
|
-
"@xyo-network/react-app-settings": "^3.0.
|
19
|
-
"@xyo-network/react-network": "^3.0.
|
20
|
-
"@xyo-network/react-shared": "^3.0.
|
51
|
+
"@xyo-network/react-app-settings": "^3.0.3",
|
52
|
+
"@xyo-network/react-network": "^3.0.3",
|
53
|
+
"@xyo-network/react-shared": "^3.0.3",
|
54
|
+
"react-icons": "^5.3.0",
|
21
55
|
"react-router-dom": "^6.26.1"
|
22
56
|
},
|
23
57
|
"devDependencies": {
|
58
|
+
"@mui/icons-material": "^5.16.7",
|
59
|
+
"@mui/material": "^5.16.7",
|
60
|
+
"@mui/styles": "^5.16.7",
|
24
61
|
"@storybook/react": "^8.2.9",
|
25
|
-
"@xylabs/ts-scripts-yarn3": "^4.0.
|
26
|
-
"@xylabs/tsconfig-react": "^4.0.
|
27
|
-
"@xyo-network/react-storybook": "^3.0.
|
28
|
-
"@xyo-network/react-wallet": "^3.0.
|
62
|
+
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
63
|
+
"@xylabs/tsconfig-react": "^4.0.7",
|
64
|
+
"@xyo-network/react-storybook": "^3.0.3",
|
65
|
+
"@xyo-network/react-wallet": "^3.0.3",
|
66
|
+
"react": "^18.3.1",
|
67
|
+
"react-dom": "^18.3.1",
|
68
|
+
"storybook": "^8.2.9",
|
29
69
|
"typescript": "^5.5.4"
|
30
70
|
},
|
31
71
|
"peerDependencies": {
|
@@ -33,44 +73,10 @@
|
|
33
73
|
"@mui/material": "^5",
|
34
74
|
"@mui/styles": "^5",
|
35
75
|
"react": "^18.2.0",
|
36
|
-
"react-dom": "^18.2.0"
|
37
|
-
"react-icons": "^4.4.0"
|
38
|
-
},
|
39
|
-
"description": "Common React library for all XYO projects that use React",
|
40
|
-
"docs": "dist/docs.json",
|
41
|
-
"exports": {
|
42
|
-
".": {
|
43
|
-
"import": {
|
44
|
-
"types": "./dist/browser/index.d.ts",
|
45
|
-
"default": "./dist/browser/index.mjs"
|
46
|
-
},
|
47
|
-
"types": "./dist/browser/index.d.ts",
|
48
|
-
"default": "./dist/browser/index.mjs"
|
49
|
-
},
|
50
|
-
"./package.json": "./package.json"
|
76
|
+
"react-dom": "^18.2.0"
|
51
77
|
},
|
52
|
-
"module": "dist/browser/index.mjs",
|
53
|
-
"homepage": "https://xyo.network",
|
54
|
-
"keywords": [
|
55
|
-
"xyo",
|
56
|
-
"utility",
|
57
|
-
"typescript",
|
58
|
-
"react"
|
59
|
-
],
|
60
|
-
"license": "LGPL-3.0-only",
|
61
78
|
"publishConfig": {
|
62
79
|
"access": "public"
|
63
80
|
},
|
64
|
-
"
|
65
|
-
"type": "git",
|
66
|
-
"url": "git+https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
|
67
|
-
},
|
68
|
-
"scripts": {
|
69
|
-
"lint-pkg": "npmPkgJsonLint .",
|
70
|
-
"license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
|
71
|
-
},
|
72
|
-
"sideEffects": false,
|
73
|
-
"types": "dist/browser/index.d.ts",
|
74
|
-
"version": "3.0.2",
|
75
|
-
"type": "module"
|
81
|
+
"docs": "dist/docs.json"
|
76
82
|
}
|
@@ -3,7 +3,9 @@ import type { Meta, StoryFn } from '@storybook/react'
|
|
3
3
|
import { FlexGrowCol } from '@xylabs/react-flexbox'
|
4
4
|
import { NetworkMemoryProvider } from '@xyo-network/react-network'
|
5
5
|
import { DefaultSeedPhrase } from '@xyo-network/react-storybook'
|
6
|
-
import {
|
6
|
+
import {
|
7
|
+
useWallet, WalletAccountSelect, WalletProvider,
|
8
|
+
} from '@xyo-network/react-wallet'
|
7
9
|
import React from 'react'
|
8
10
|
import { BrowserRouter } from 'react-router-dom'
|
9
11
|
|
@@ -15,11 +17,7 @@ import { ApplicationAppBar } from './Application.tsx'
|
|
15
17
|
const StorybookEntry = {
|
16
18
|
argTypes: {},
|
17
19
|
component: ApplicationAppBar,
|
18
|
-
parameters: {
|
19
|
-
docs: {
|
20
|
-
page: null,
|
21
|
-
},
|
22
|
-
},
|
20
|
+
parameters: { docs: { page: null } },
|
23
21
|
title: 'appbar/AppBar/Application',
|
24
22
|
} as Meta<typeof ApplicationAppBar>
|
25
23
|
|
@@ -80,6 +78,8 @@ WithWalletSelectBar.args = {
|
|
80
78
|
systemToolbar: <SystemToolbar darkModeButton />,
|
81
79
|
}
|
82
80
|
|
83
|
-
export {
|
81
|
+
export {
|
82
|
+
Default, WithSearchBar, WithWalletSelectBar,
|
83
|
+
}
|
84
84
|
|
85
85
|
export default StorybookEntry
|
@@ -12,7 +12,9 @@ export interface ApplicationAppBarProps extends AppBarExProps {
|
|
12
12
|
systemToolbar?: ReactElement<ToolbarProps>
|
13
13
|
}
|
14
14
|
|
15
|
-
export const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({
|
15
|
+
export const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({
|
16
|
+
systemToolbar, contextToolbar, responsive = true, ...props
|
17
|
+
}) => {
|
16
18
|
return (
|
17
19
|
<AppBarEx
|
18
20
|
systemToolbar={systemToolbar ?? <SystemToolbar />}
|
@@ -1,6 +1,10 @@
|
|
1
1
|
import { Divider, useTheme } from '@mui/material'
|
2
|
-
import type {
|
3
|
-
|
2
|
+
import type {
|
3
|
+
Decorator, Meta, StoryFn,
|
4
|
+
} from '@storybook/react'
|
5
|
+
import {
|
6
|
+
FlexCol, FlexGrowCol, FlexRow,
|
7
|
+
} from '@xylabs/react-flexbox'
|
4
8
|
import React from 'react'
|
5
9
|
|
6
10
|
import { CollapsibleProvider, useCollapsible } from '../../contexts/index.ts'
|
@@ -21,11 +25,7 @@ const StorybookEntry = {
|
|
21
25
|
argTypes: {},
|
22
26
|
component: CollapsibleDrawer,
|
23
27
|
decorators: [CollapseProviderDecorator],
|
24
|
-
parameters: {
|
25
|
-
docs: {
|
26
|
-
page: null,
|
27
|
-
},
|
28
|
-
},
|
28
|
+
parameters: { docs: { page: null } },
|
29
29
|
title: 'appbar/CollapseDrawer',
|
30
30
|
} as Meta<typeof CollapsibleDrawer>
|
31
31
|
|
@@ -48,9 +48,7 @@ const Template: StoryFn<typeof CollapsibleDrawer> = (args) => {
|
|
48
48
|
}
|
49
49
|
|
50
50
|
const Default = Template.bind({})
|
51
|
-
Default.args = {
|
52
|
-
collapsedSize: '40px',
|
53
|
-
}
|
51
|
+
Default.args = { collapsedSize: '40px' }
|
54
52
|
|
55
53
|
export { Default }
|
56
54
|
|