@xyo-network/react-appbar 2.25.68 → 2.25.69
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.
- package/dist/cjs/WebAppNavigationType.d.ts +1 -0
- package/dist/cjs/WebAppNavigationType.js +3 -0
- package/dist/cjs/WebAppNavigationType.js.map +1 -0
- package/dist/cjs/components/AppBar/Application.js +2 -2
- package/dist/cjs/components/AppBar/Application.js.map +1 -1
- package/dist/cjs/components/DarkModeIconButton.d.ts +3 -0
- package/dist/cjs/components/DarkModeIconButton.js +17 -0
- package/dist/cjs/components/DarkModeIconButton.js.map +1 -0
- package/dist/cjs/components/Toolbar/System/SystemToolbar.d.ts +1 -2
- package/dist/cjs/components/Toolbar/System/SystemToolbar.js +3 -3
- package/dist/cjs/components/Toolbar/System/SystemToolbar.js.map +1 -1
- package/dist/esm/WebAppNavigationType.d.ts +1 -0
- package/dist/esm/WebAppNavigationType.js +2 -0
- package/dist/esm/WebAppNavigationType.js.map +1 -0
- package/dist/esm/components/AppBar/Application.d.ts +1 -2
- package/dist/esm/components/AppBar/Application.js +2 -4
- package/dist/esm/components/AppBar/Application.js.map +1 -1
- package/dist/esm/components/DarkModeIconButton.d.ts +3 -0
- package/dist/esm/components/DarkModeIconButton.js +12 -0
- package/dist/esm/components/DarkModeIconButton.js.map +1 -0
- package/dist/esm/components/Toolbar/System/SystemToolbar.d.ts +2 -1
- package/dist/esm/components/Toolbar/System/SystemToolbar.js +3 -2
- package/dist/esm/components/Toolbar/System/SystemToolbar.js.map +1 -1
- package/package.json +8 -8
- package/src/components/AppBar/Application.stories.tsx +23 -5
- package/src/components/AppBar/Application.tsx +4 -28
- package/src/components/Toolbar/System/SystemToolbar.stories.tsx +9 -1
- package/src/components/Toolbar/System/SystemToolbar.tsx +6 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type WebAppNavigationType = 'menu' | 'sidebar';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebAppNavigationType.js","sourceRoot":"","sources":["../../src/WebAppNavigationType.ts"],"names":[],"mappings":""}
|
|
@@ -6,8 +6,8 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_common_1 = require("@xylabs/react-common");
|
|
7
7
|
const Toolbar_1 = require("../Toolbar");
|
|
8
8
|
const ApplicationAppBar = (_a) => {
|
|
9
|
-
var { systemToolbar
|
|
10
|
-
return (0, jsx_runtime_1.jsx)(react_common_1.AppBarEx, Object.assign({ systemToolbar: systemToolbar, contextToolbar: contextToolbar, position: "sticky", responsive: responsive }, props));
|
|
9
|
+
var { systemToolbar, contextToolbar, responsive = true } = _a, props = tslib_1.__rest(_a, ["systemToolbar", "contextToolbar", "responsive"]);
|
|
10
|
+
return (0, jsx_runtime_1.jsx)(react_common_1.AppBarEx, Object.assign({ systemToolbar: systemToolbar !== null && systemToolbar !== void 0 ? systemToolbar : (0, jsx_runtime_1.jsx)(Toolbar_1.SystemToolbar, {}), contextToolbar: contextToolbar !== null && contextToolbar !== void 0 ? contextToolbar : (0, jsx_runtime_1.jsx)(Toolbar_1.ContextToolbar, {}), position: "sticky", responsive: responsive }, props));
|
|
11
11
|
};
|
|
12
12
|
exports.ApplicationAppBar = ApplicationAppBar;
|
|
13
13
|
//# sourceMappingURL=Application.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../../src/components/AppBar/Application.tsx"],"names":[],"mappings":";;;;;AACA,uDAA8D;AAG9D,wCAA0D;AAQnD,MAAM,iBAAiB,GAAqC,CAAC,
|
|
1
|
+
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../../src/components/AppBar/Application.tsx"],"names":[],"mappings":";;;;;AACA,uDAA8D;AAG9D,wCAA0D;AAQnD,MAAM,iBAAiB,GAAqC,CAAC,EAA8D,EAAE,EAAE;QAAlE,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,GAAG,IAAI,OAAY,EAAP,KAAK,sBAA5D,iDAA8D,CAAF;IAC9H,OAAO,uBAAC,uBAAQ,kBAAC,aAAa,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,uBAAC,uBAAa,KAAG,EAAE,cAAc,EAAE,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,uBAAC,wBAAc,KAAG,EAAE,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAE,UAAU,IAAM,KAAK,EAAI,CAAA;AACnL,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DarkModeIconButton = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const DarkModeRounded_1 = tslib_1.__importDefault(require("@mui/icons-material/DarkModeRounded"));
|
|
7
|
+
const LightModeRounded_1 = tslib_1.__importDefault(require("@mui/icons-material/LightModeRounded"));
|
|
8
|
+
const material_1 = require("@mui/material");
|
|
9
|
+
const DarkModeIconButton = (props) => {
|
|
10
|
+
const { darkMode, enableDarkMode } = useAppSettings();
|
|
11
|
+
const handleDarkModeChange = () => {
|
|
12
|
+
enableDarkMode === null || enableDarkMode === void 0 ? void 0 : enableDarkMode(!darkMode);
|
|
13
|
+
};
|
|
14
|
+
return ((0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ onClick: handleDarkModeChange }, props, { children: darkMode ? (0, jsx_runtime_1.jsx)(DarkModeRounded_1.default, {}) : (0, jsx_runtime_1.jsx)(LightModeRounded_1.default, {}) })));
|
|
15
|
+
};
|
|
16
|
+
exports.DarkModeIconButton = DarkModeIconButton;
|
|
17
|
+
//# sourceMappingURL=DarkModeIconButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DarkModeIconButton.js","sourceRoot":"","sources":["../../../src/components/DarkModeIconButton.tsx"],"names":[],"mappings":";;;;;AAAA,kGAAqE;AACrE,oGAAuE;AACvE,4CAA2D;AAEpD,MAAM,kBAAkB,GAA8B,CAAC,KAAK,EAAE,EAAE;IACrE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAAA;IAErD,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAG,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC,CAAA;IAED,OAAO,CACL,uBAAC,qBAAU,kBAAC,OAAO,EAAE,oBAAoB,IAAM,KAAK,cACjD,QAAQ,CAAC,CAAC,CAAC,uBAAC,yBAAmB,KAAG,CAAC,CAAC,CAAC,uBAAC,0BAAoB,KAAG,IACnD,CACd,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,kBAAkB,sBAY9B"}
|
|
@@ -7,9 +7,8 @@ export interface SystemToolbarProps extends ToolbarProps {
|
|
|
7
7
|
archiveSelectProps?: SelectExProps<string>;
|
|
8
8
|
hideNetworkSelect?: boolean;
|
|
9
9
|
hideArchiveSelect?: boolean;
|
|
10
|
-
menu?: ReactNode;
|
|
11
10
|
darkModeButton?: boolean;
|
|
12
11
|
authButton?: boolean;
|
|
13
|
-
|
|
12
|
+
menuItems?: ReactNode;
|
|
14
13
|
}
|
|
15
14
|
export declare const SystemToolbar: React.FC<SystemToolbarProps>;
|
|
@@ -5,14 +5,14 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_flexbox_1 = require("@xylabs/react-flexbox");
|
|
8
|
+
const react_app_settings_1 = require("@xyo-network/react-app-settings");
|
|
8
9
|
const react_archive_1 = require("@xyo-network/react-archive");
|
|
9
10
|
const react_auth_1 = require("@xyo-network/react-auth");
|
|
10
11
|
const react_network_1 = require("@xyo-network/react-network");
|
|
11
|
-
const react_shared_1 = require("@xyo-network/react-shared");
|
|
12
12
|
const SiteMenu_1 = require("../../SiteMenu");
|
|
13
13
|
const SystemToolbar = (_a) => {
|
|
14
|
-
var { children, networkSelectProps, archiveSelectProps, hideNetworkSelect, hideArchiveSelect,
|
|
15
|
-
return ((0, jsx_runtime_1.jsxs)(material_1.Toolbar, Object.assign({}, props, { children: [hideNetworkSelect ? null : ((0, jsx_runtime_1.jsx)(react_flexbox_1.FlexRow, Object.assign({ marginX: 0.5, maxWidth: 120 }, { children: (0, jsx_runtime_1.jsx)(material_1.Paper, Object.assign({ variant: "elevation" }, { children: (0, jsx_runtime_1.jsx)(react_network_1.NetworkSelectEx, Object.assign({ fullWidth: true }, networkSelectProps)) })) }))), hideArchiveSelect ? null : ((0, jsx_runtime_1.jsx)(react_flexbox_1.FlexRow, Object.assign({ marginX: 0.5, maxWidth: 120 }, { children: (0, jsx_runtime_1.jsx)(material_1.Paper, Object.assign({ variant: "elevation" }, { children: (0, jsx_runtime_1.jsx)(react_archive_1.ArchiveSelectEx, Object.assign({ fullWidth: true }, archiveSelectProps)) })) }))), children, authButton ? (0, jsx_runtime_1.jsx)(react_auth_1.AuthStatusIconButton, { color: "inherit" }) : null, darkModeButton ? (0, jsx_runtime_1.jsx)(
|
|
14
|
+
var { children, networkSelectProps, archiveSelectProps, hideNetworkSelect, hideArchiveSelect, darkModeButton = false, authButton = false, menuItems } = _a, props = tslib_1.__rest(_a, ["children", "networkSelectProps", "archiveSelectProps", "hideNetworkSelect", "hideArchiveSelect", "darkModeButton", "authButton", "menuItems"]);
|
|
15
|
+
return ((0, jsx_runtime_1.jsxs)(material_1.Toolbar, Object.assign({}, props, { children: [hideNetworkSelect ? null : ((0, jsx_runtime_1.jsx)(react_flexbox_1.FlexRow, Object.assign({ marginX: 0.5, maxWidth: 120 }, { children: (0, jsx_runtime_1.jsx)(material_1.Paper, Object.assign({ variant: "elevation" }, { children: (0, jsx_runtime_1.jsx)(react_network_1.NetworkSelectEx, Object.assign({ fullWidth: true }, networkSelectProps)) })) }))), hideArchiveSelect ? null : ((0, jsx_runtime_1.jsx)(react_flexbox_1.FlexRow, Object.assign({ marginX: 0.5, maxWidth: 120 }, { children: (0, jsx_runtime_1.jsx)(material_1.Paper, Object.assign({ variant: "elevation" }, { children: (0, jsx_runtime_1.jsx)(react_archive_1.ArchiveSelectEx, Object.assign({ fullWidth: true }, archiveSelectProps)) })) }))), children, authButton ? (0, jsx_runtime_1.jsx)(react_auth_1.AuthStatusIconButton, { color: "inherit" }) : null, darkModeButton ? (0, jsx_runtime_1.jsx)(react_app_settings_1.DarkModeIconButton, { color: "inherit" }) : null, menuItems ? (0, jsx_runtime_1.jsx)(SiteMenu_1.SiteMenu, { children: menuItems }) : null] })));
|
|
16
16
|
};
|
|
17
17
|
exports.SystemToolbar = SystemToolbar;
|
|
18
18
|
//# sourceMappingURL=SystemToolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemToolbar.js","sourceRoot":"","sources":["../../../../../src/components/Toolbar/System/SystemToolbar.tsx"],"names":[],"mappings":";;;;;AAAA,4CAA4D;AAE5D,yDAA+C;AAC/C,8DAA4D;AAC5D,wDAA8D;AAC9D,8DAAkF;
|
|
1
|
+
{"version":3,"file":"SystemToolbar.js","sourceRoot":"","sources":["../../../../../src/components/Toolbar/System/SystemToolbar.tsx"],"names":[],"mappings":";;;;;AAAA,4CAA4D;AAE5D,yDAA+C;AAC/C,wEAAoE;AACpE,8DAA4D;AAC5D,wDAA8D;AAC9D,8DAAkF;AAGlF,6CAAyC;AAYlC,MAAM,aAAa,GAAiC,CAAC,EAU3D,EAAE,EAAE;QAVuD,EAC1D,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,GAAG,KAAK,EACtB,UAAU,GAAG,KAAK,EAClB,SAAS,OAEV,EADI,KAAK,sBATkD,+IAU3D,CADS;IAER,OAAO,CACL,wBAAC,kBAAO,oBAAK,KAAK,eACf,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1B,uBAAC,uBAAO,kBAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,gBAClC,uBAAC,gBAAK,kBAAC,OAAO,EAAC,WAAW,gBACxB,uBAAC,+BAAe,kBAAC,SAAS,UAAK,kBAAkB,EAAI,IAC/C,IACA,CACX,EACA,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1B,uBAAC,uBAAO,kBAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,gBAClC,uBAAC,gBAAK,kBAAC,OAAO,EAAC,WAAW,gBACxB,uBAAC,+BAAe,kBAAC,SAAS,UAAK,kBAAkB,EAAI,IAC/C,IACA,CACX,EACA,QAAQ,EACR,UAAU,CAAC,CAAC,CAAC,uBAAC,iCAAoB,IAAC,KAAK,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAC5D,cAAc,CAAC,CAAC,CAAC,uBAAC,uCAAkB,IAAC,KAAK,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAC9D,SAAS,CAAC,CAAC,CAAC,uBAAC,mBAAQ,cAAE,SAAS,GAAY,CAAC,CAAC,CAAC,IAAI,KAC5C,CACX,CAAA;AACH,CAAC,CAAA;AAjCY,QAAA,aAAa,iBAiCzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type WebAppNavigationType = 'menu' | 'sidebar';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebAppNavigationType.js","sourceRoot":"","sources":["../../src/WebAppNavigationType.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { ToolbarProps } from '@mui/material';
|
|
2
2
|
import { AppBarExProps } from '@xylabs/react-common';
|
|
3
|
-
import { ReactElement
|
|
3
|
+
import { ReactElement } from 'react';
|
|
4
4
|
export interface ApplicationAppBarProps extends AppBarExProps {
|
|
5
5
|
contextToolbar?: ReactElement<ToolbarProps>;
|
|
6
6
|
systemToolbar?: ReactElement<ToolbarProps>;
|
|
7
7
|
responsive?: boolean;
|
|
8
|
-
menuItems?: ReactNode;
|
|
9
8
|
}
|
|
10
9
|
export declare const ApplicationAppBar: React.FC<ApplicationAppBarProps>;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Toolbar } from '@mui/material';
|
|
3
2
|
import { AppBarEx } from '@xylabs/react-common';
|
|
4
|
-
import { SiteMenu } from '../SiteMenu';
|
|
5
3
|
import { ContextToolbar, SystemToolbar } from '../Toolbar';
|
|
6
|
-
export const ApplicationAppBar = ({
|
|
7
|
-
return
|
|
4
|
+
export const ApplicationAppBar = ({ systemToolbar, contextToolbar, responsive = true, ...props }) => {
|
|
5
|
+
return _jsx(AppBarEx, { systemToolbar: systemToolbar ?? _jsx(SystemToolbar, {}), contextToolbar: contextToolbar ?? _jsx(ContextToolbar, {}), position: "sticky", responsive: responsive, ...props });
|
|
8
6
|
};
|
|
9
7
|
//# sourceMappingURL=Application.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../../src/components/AppBar/Application.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../../../src/components/AppBar/Application.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAiB,MAAM,sBAAsB,CAAA;AAG9D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAQ1D,MAAM,CAAC,MAAM,iBAAiB,GAAqC,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACpI,OAAO,KAAC,QAAQ,IAAC,aAAa,EAAE,aAAa,IAAI,KAAC,aAAa,KAAG,EAAE,cAAc,EAAE,cAAc,IAAI,KAAC,cAAc,KAAG,EAAE,QAAQ,EAAC,QAAQ,EAAC,UAAU,EAAE,UAAU,KAAM,KAAK,GAAI,CAAA;AACnL,CAAC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import DarkModeRoundedIcon from '@mui/icons-material/DarkModeRounded';
|
|
3
|
+
import LightModeRoundedIcon from '@mui/icons-material/LightModeRounded';
|
|
4
|
+
import { IconButton } from '@mui/material';
|
|
5
|
+
export const DarkModeIconButton = (props) => {
|
|
6
|
+
const { darkMode, enableDarkMode } = useAppSettings();
|
|
7
|
+
const handleDarkModeChange = () => {
|
|
8
|
+
enableDarkMode?.(!darkMode);
|
|
9
|
+
};
|
|
10
|
+
return (_jsx(IconButton, { onClick: handleDarkModeChange, ...props, children: darkMode ? _jsx(DarkModeRoundedIcon, {}) : _jsx(LightModeRoundedIcon, {}) }));
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=DarkModeIconButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DarkModeIconButton.js","sourceRoot":"","sources":["../../../src/components/DarkModeIconButton.tsx"],"names":[],"mappings":";AAAA,OAAO,mBAAmB,MAAM,qCAAqC,CAAA;AACrE,OAAO,oBAAoB,MAAM,sCAAsC,CAAA;AACvE,OAAO,EAAE,UAAU,EAAmB,MAAM,eAAe,CAAA;AAE3D,MAAM,CAAC,MAAM,kBAAkB,GAA8B,CAAC,KAAK,EAAE,EAAE;IACrE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAAA;IAErD,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC,CAAA;IAED,OAAO,CACL,KAAC,UAAU,IAAC,OAAO,EAAE,oBAAoB,KAAM,KAAK,YACjD,QAAQ,CAAC,CAAC,CAAC,KAAC,mBAAmB,KAAG,CAAC,CAAC,CAAC,KAAC,oBAAoB,KAAG,GACnD,CACd,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { ToolbarProps } from '@mui/material';
|
|
3
2
|
import { SelectExProps } from '@xylabs/react-common';
|
|
4
3
|
import { NetworkSelectExProps } from '@xyo-network/react-network';
|
|
4
|
+
import { ReactNode } from 'react';
|
|
5
5
|
export interface SystemToolbarProps extends ToolbarProps {
|
|
6
6
|
networkSelectProps?: NetworkSelectExProps;
|
|
7
7
|
archiveSelectProps?: SelectExProps<string>;
|
|
@@ -9,5 +9,6 @@ export interface SystemToolbarProps extends ToolbarProps {
|
|
|
9
9
|
hideArchiveSelect?: boolean;
|
|
10
10
|
darkModeButton?: boolean;
|
|
11
11
|
authButton?: boolean;
|
|
12
|
+
menuItems?: ReactNode;
|
|
12
13
|
}
|
|
13
14
|
export declare const SystemToolbar: React.FC<SystemToolbarProps>;
|
|
@@ -5,7 +5,8 @@ import { DarkModeIconButton } from '@xyo-network/react-app-settings';
|
|
|
5
5
|
import { ArchiveSelectEx } from '@xyo-network/react-archive';
|
|
6
6
|
import { AuthStatusIconButton } from '@xyo-network/react-auth';
|
|
7
7
|
import { NetworkSelectEx } from '@xyo-network/react-network';
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
import { SiteMenu } from '../../SiteMenu';
|
|
9
|
+
export const SystemToolbar = ({ children, networkSelectProps, archiveSelectProps, hideNetworkSelect, hideArchiveSelect, darkModeButton = false, authButton = false, menuItems, ...props }) => {
|
|
10
|
+
return (_jsxs(Toolbar, { ...props, children: [hideNetworkSelect ? null : (_jsx(FlexRow, { marginX: 0.5, maxWidth: 120, children: _jsx(Paper, { variant: "elevation", children: _jsx(NetworkSelectEx, { fullWidth: true, ...networkSelectProps }) }) })), hideArchiveSelect ? null : (_jsx(FlexRow, { marginX: 0.5, maxWidth: 120, children: _jsx(Paper, { variant: "elevation", children: _jsx(ArchiveSelectEx, { fullWidth: true, ...archiveSelectProps }) }) })), children, authButton ? _jsx(AuthStatusIconButton, { color: "inherit" }) : null, darkModeButton ? _jsx(DarkModeIconButton, { color: "inherit" }) : null, menuItems ? _jsx(SiteMenu, { children: menuItems }) : null] }));
|
|
10
11
|
};
|
|
11
12
|
//# sourceMappingURL=SystemToolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemToolbar.js","sourceRoot":"","sources":["../../../../../src/components/Toolbar/System/SystemToolbar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAgB,MAAM,eAAe,CAAA;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAwB,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"SystemToolbar.js","sourceRoot":"","sources":["../../../../../src/components/Toolbar/System/SystemToolbar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAgB,MAAM,eAAe,CAAA;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAwB,MAAM,4BAA4B,CAAA;AAGlF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAYzC,MAAM,CAAC,MAAM,aAAa,GAAiC,CAAC,EAC1D,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,GAAG,KAAK,EACtB,UAAU,GAAG,KAAK,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,EAAE;IACH,OAAO,CACL,MAAC,OAAO,OAAK,KAAK,aACf,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,YAClC,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,YACxB,KAAC,eAAe,IAAC,SAAS,WAAK,kBAAkB,GAAI,GAC/C,GACA,CACX,EACA,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,YAClC,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,YACxB,KAAC,eAAe,IAAC,SAAS,WAAK,kBAAkB,GAAI,GAC/C,GACA,CACX,EACA,QAAQ,EACR,UAAU,CAAC,CAAC,CAAC,KAAC,oBAAoB,IAAC,KAAK,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAC5D,cAAc,CAAC,CAAC,CAAC,KAAC,kBAAkB,IAAC,KAAK,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAC9D,SAAS,CAAC,CAAC,CAAC,KAAC,QAAQ,cAAE,SAAS,GAAY,CAAC,CAAC,CAAC,IAAI,IAC5C,CACX,CAAA;AACH,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
"@xylabs/react-flexbox": "^2.14.4",
|
|
20
20
|
"@xylabs/react-shared": "^2.14.4",
|
|
21
21
|
"@xyo-network/core": "^2.20.45",
|
|
22
|
-
"@xyo-network/react-app-settings": "^2.25.
|
|
23
|
-
"@xyo-network/react-archive": "^2.25.
|
|
24
|
-
"@xyo-network/react-archivist-api": "^2.25.
|
|
25
|
-
"@xyo-network/react-auth": "^2.25.
|
|
26
|
-
"@xyo-network/react-network": "^2.25.
|
|
27
|
-
"@xyo-network/react-shared": "^2.25.
|
|
28
|
-
"@xyo-network/react-wallet": "^2.25.
|
|
22
|
+
"@xyo-network/react-app-settings": "^2.25.68",
|
|
23
|
+
"@xyo-network/react-archive": "^2.25.69",
|
|
24
|
+
"@xyo-network/react-archivist-api": "^2.25.69",
|
|
25
|
+
"@xyo-network/react-auth": "^2.25.69",
|
|
26
|
+
"@xyo-network/react-network": "^2.25.69",
|
|
27
|
+
"@xyo-network/react-shared": "^2.25.69",
|
|
28
|
+
"@xyo-network/react-wallet": "^2.25.69",
|
|
29
29
|
"react": "^18.2.0",
|
|
30
30
|
"react-dom": "^18.2.0",
|
|
31
31
|
"react-router-dom": "^6.3.0",
|
|
@@ -87,6 +87,6 @@
|
|
|
87
87
|
},
|
|
88
88
|
"sideEffects": false,
|
|
89
89
|
"types": "dist/esm/index.d.ts",
|
|
90
|
-
"version": "2.25.
|
|
90
|
+
"version": "2.25.69",
|
|
91
91
|
"packageManager": "yarn@3.1.1"
|
|
92
92
|
}
|
|
@@ -33,10 +33,14 @@ const Template: ComponentStory<typeof ApplicationAppBar> = (args) => (
|
|
|
33
33
|
<ArchivesProvider>
|
|
34
34
|
<ArchiveProvider>
|
|
35
35
|
<ApplicationAppBar
|
|
36
|
-
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
systemToolbar={
|
|
37
|
+
<SystemToolbar
|
|
38
|
+
menuItems={
|
|
39
|
+
<List>
|
|
40
|
+
<SiteMenuListItem primary="Hello" />
|
|
41
|
+
</List>
|
|
42
|
+
}
|
|
43
|
+
/>
|
|
40
44
|
}
|
|
41
45
|
{...args}
|
|
42
46
|
></ApplicationAppBar>
|
|
@@ -52,7 +56,21 @@ const Default = Template.bind({})
|
|
|
52
56
|
Default.args = {}
|
|
53
57
|
|
|
54
58
|
const WithSearchBar = Template.bind({})
|
|
55
|
-
WithSearchBar.args = {
|
|
59
|
+
WithSearchBar.args = {
|
|
60
|
+
children: <SearchBar flexGrow={1} onSearch={(term) => alert(term)} />,
|
|
61
|
+
color: 'primary',
|
|
62
|
+
systemToolbar: (
|
|
63
|
+
<SystemToolbar
|
|
64
|
+
darkModeButton
|
|
65
|
+
authButton
|
|
66
|
+
menuItems={
|
|
67
|
+
<List>
|
|
68
|
+
<SiteMenuListItem primary="Hello" />
|
|
69
|
+
</List>
|
|
70
|
+
}
|
|
71
|
+
/>
|
|
72
|
+
),
|
|
73
|
+
}
|
|
56
74
|
|
|
57
75
|
const WithWalletSelectBar = Template.bind({})
|
|
58
76
|
WithWalletSelectBar.args = {
|
|
@@ -1,39 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ToolbarProps } from '@mui/material'
|
|
2
2
|
import { AppBarEx, AppBarExProps } from '@xylabs/react-common'
|
|
3
|
-
import { ReactElement
|
|
3
|
+
import { ReactElement } from 'react'
|
|
4
4
|
|
|
5
|
-
import { SiteMenu } from '../SiteMenu'
|
|
6
5
|
import { ContextToolbar, SystemToolbar } from '../Toolbar'
|
|
7
6
|
|
|
8
7
|
export interface ApplicationAppBarProps extends AppBarExProps {
|
|
9
8
|
contextToolbar?: ReactElement<ToolbarProps>
|
|
10
9
|
systemToolbar?: ReactElement<ToolbarProps>
|
|
11
10
|
responsive?: boolean
|
|
12
|
-
menuItems?: ReactNode
|
|
13
11
|
}
|
|
14
12
|
|
|
15
|
-
export const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({
|
|
16
|
-
|
|
17
|
-
menu,
|
|
18
|
-
systemToolbar = <SystemToolbar />,
|
|
19
|
-
contextToolbar = <ContextToolbar />,
|
|
20
|
-
responsive = true,
|
|
21
|
-
...props
|
|
22
|
-
}) => {
|
|
23
|
-
return (
|
|
24
|
-
<AppBarEx
|
|
25
|
-
systemToolbar={systemToolbar}
|
|
26
|
-
contextToolbar={contextToolbar}
|
|
27
|
-
menu={
|
|
28
|
-
menu ?? menuItems ? (
|
|
29
|
-
<Toolbar>
|
|
30
|
-
<SiteMenu>{menuItems}</SiteMenu>
|
|
31
|
-
</Toolbar>
|
|
32
|
-
) : undefined
|
|
33
|
-
}
|
|
34
|
-
position="sticky"
|
|
35
|
-
responsive={responsive}
|
|
36
|
-
{...props}
|
|
37
|
-
/>
|
|
38
|
-
)
|
|
13
|
+
export const ApplicationAppBar: React.FC<ApplicationAppBarProps> = ({ systemToolbar, contextToolbar, responsive = true, ...props }) => {
|
|
14
|
+
return <AppBarEx systemToolbar={systemToolbar ?? <SystemToolbar />} contextToolbar={contextToolbar ?? <ContextToolbar />} position="sticky" responsive={responsive} {...props} />
|
|
39
15
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/* eslint-disable import/no-internal-modules */
|
|
2
|
+
import { List } from '@mui/material'
|
|
2
3
|
import { ComponentMeta, ComponentStory } from '@storybook/react'
|
|
3
4
|
import { BrowserRouter } from 'react-router-dom'
|
|
4
5
|
|
|
@@ -7,6 +8,7 @@ import { ArchiveProvider, ArchivesProvider } from '../../../../../archive/src'
|
|
|
7
8
|
import { ArchivistApiProvider } from '../../../../../archivist-api/src'
|
|
8
9
|
import { AuthProvider, AuthState } from '../../../../../auth/src'
|
|
9
10
|
import { NetworkMemoryProvider } from '../../../../../network/src'
|
|
11
|
+
import { SiteMenuListItem } from '../../SiteMenu'
|
|
10
12
|
import { SystemToolbar } from './SystemToolbar'
|
|
11
13
|
|
|
12
14
|
const StorybookEntry = {
|
|
@@ -41,7 +43,13 @@ const TemplateWithAuthContext: ComponentStory<WrappedAuthComponent> = ({ authSta
|
|
|
41
43
|
<BrowserRouter>
|
|
42
44
|
<NetworkMemoryProvider>
|
|
43
45
|
<ArchiveProvider>
|
|
44
|
-
<SystemToolbar
|
|
46
|
+
<SystemToolbar
|
|
47
|
+
menuItems={
|
|
48
|
+
<List>
|
|
49
|
+
<SiteMenuListItem primary="Hello" />
|
|
50
|
+
</List>
|
|
51
|
+
}
|
|
52
|
+
/>
|
|
45
53
|
</ArchiveProvider>
|
|
46
54
|
</NetworkMemoryProvider>
|
|
47
55
|
</BrowserRouter>
|
|
@@ -5,6 +5,9 @@ import { DarkModeIconButton } from '@xyo-network/react-app-settings'
|
|
|
5
5
|
import { ArchiveSelectEx } from '@xyo-network/react-archive'
|
|
6
6
|
import { AuthStatusIconButton } from '@xyo-network/react-auth'
|
|
7
7
|
import { NetworkSelectEx, NetworkSelectExProps } from '@xyo-network/react-network'
|
|
8
|
+
import { ReactNode } from 'react'
|
|
9
|
+
|
|
10
|
+
import { SiteMenu } from '../../SiteMenu'
|
|
8
11
|
|
|
9
12
|
export interface SystemToolbarProps extends ToolbarProps {
|
|
10
13
|
networkSelectProps?: NetworkSelectExProps
|
|
@@ -13,6 +16,7 @@ export interface SystemToolbarProps extends ToolbarProps {
|
|
|
13
16
|
hideArchiveSelect?: boolean
|
|
14
17
|
darkModeButton?: boolean
|
|
15
18
|
authButton?: boolean
|
|
19
|
+
menuItems?: ReactNode
|
|
16
20
|
}
|
|
17
21
|
|
|
18
22
|
export const SystemToolbar: React.FC<SystemToolbarProps> = ({
|
|
@@ -23,6 +27,7 @@ export const SystemToolbar: React.FC<SystemToolbarProps> = ({
|
|
|
23
27
|
hideArchiveSelect,
|
|
24
28
|
darkModeButton = false,
|
|
25
29
|
authButton = false,
|
|
30
|
+
menuItems,
|
|
26
31
|
...props
|
|
27
32
|
}) => {
|
|
28
33
|
return (
|
|
@@ -44,6 +49,7 @@ export const SystemToolbar: React.FC<SystemToolbarProps> = ({
|
|
|
44
49
|
{children}
|
|
45
50
|
{authButton ? <AuthStatusIconButton color="inherit" /> : null}
|
|
46
51
|
{darkModeButton ? <DarkModeIconButton color="inherit" /> : null}
|
|
52
|
+
{menuItems ? <SiteMenu>{menuItems}</SiteMenu> : null}
|
|
47
53
|
</Toolbar>
|
|
48
54
|
)
|
|
49
55
|
}
|