@webiny/app-admin-rmwc 5.36.2 → 5.37.0-beta.1
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/index.js +3 -2
- package/index.js.map +1 -1
- package/modules/Brand/index.js.map +1 -1
- package/modules/Dashboard/Welcome.js.map +1 -1
- package/modules/Dashboard/index.js.map +1 -1
- package/modules/Layout.js.map +1 -1
- package/modules/Navigation/Hamburger.js.map +1 -1
- package/modules/Navigation/Styled.js.map +1 -1
- package/modules/Navigation/index.js.map +1 -1
- package/modules/Navigation/renderers/MenuElementRenderer.js.map +1 -1
- package/modules/Navigation/renderers/MenuGroupRenderer.js.map +1 -1
- package/modules/Navigation/renderers/MenuLinkRenderer.js.map +1 -1
- package/modules/Navigation/renderers/MenuSectionItemRenderer.js.map +1 -1
- package/modules/Navigation/renderers/MenuSectionRenderer.js.map +1 -1
- package/modules/NotFound/index.js.map +1 -1
- package/modules/Overlays/Dialog.js +59 -14
- package/modules/Overlays/Dialog.js.map +1 -1
- package/modules/Overlays/OmniSearch/Dialog.d.ts +7 -0
- package/modules/Overlays/OmniSearch/Dialog.js +13 -0
- package/modules/Overlays/OmniSearch/Dialog.js.map +1 -0
- package/modules/Overlays/OmniSearch.d.ts +2 -0
- package/modules/Overlays/OmniSearch.js +248 -0
- package/modules/Overlays/OmniSearch.js.map +1 -0
- package/modules/Overlays/Snackbar.js +3 -3
- package/modules/Overlays/Snackbar.js.map +1 -1
- package/modules/Overlays/index.js +3 -1
- package/modules/Overlays/index.js.map +1 -1
- package/modules/Search/index.js +0 -1
- package/modules/Search/index.js.map +1 -1
- package/modules/UserMenu/index.js.map +1 -1
- package/package.json +20 -17
package/index.js
CHANGED
|
@@ -11,11 +11,12 @@ var _provider = require("@rmwc/provider");
|
|
|
11
11
|
var _Layout = require("./modules/Layout");
|
|
12
12
|
var _Navigation = require("./modules/Navigation");
|
|
13
13
|
var _Brand = require("./modules/Brand");
|
|
14
|
-
var _Search = require("./modules/Search");
|
|
15
14
|
var _UserMenu = require("./modules/UserMenu");
|
|
16
15
|
var _Overlays = require("./modules/Overlays");
|
|
17
16
|
var _NotFound = require("./modules/NotFound");
|
|
18
17
|
var _Dashboard = require("./modules/Dashboard");
|
|
18
|
+
// import { Search } from "~/modules/Search"; Removed in 5.37.0, it will be refactored later
|
|
19
|
+
|
|
19
20
|
var RMWCProviderPlugin = (0, _appAdmin.createProviderPlugin)(function (Component) {
|
|
20
21
|
return function RMWCThemeProvider(_ref) {
|
|
21
22
|
var children = _ref.children;
|
|
@@ -25,6 +26,6 @@ var RMWCProviderPlugin = (0, _appAdmin.createProviderPlugin)(function (Component
|
|
|
25
26
|
};
|
|
26
27
|
});
|
|
27
28
|
var RMWC = function RMWC() {
|
|
28
|
-
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(RMWCProviderPlugin, null), /*#__PURE__*/_react.default.createElement(_Layout.Layout, null), /*#__PURE__*/_react.default.createElement(_Dashboard.Dashboard, null), /*#__PURE__*/_react.default.createElement(_NotFound.NotFound, null), /*#__PURE__*/_react.default.createElement(_Brand.Brand, null), /*#__PURE__*/_react.default.createElement(_Navigation.Navigation, null), /*#__PURE__*/_react.default.createElement(
|
|
29
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(RMWCProviderPlugin, null), /*#__PURE__*/_react.default.createElement(_Layout.Layout, null), /*#__PURE__*/_react.default.createElement(_Dashboard.Dashboard, null), /*#__PURE__*/_react.default.createElement(_NotFound.NotFound, null), /*#__PURE__*/_react.default.createElement(_Brand.Brand, null), /*#__PURE__*/_react.default.createElement(_Navigation.Navigation, null), /*#__PURE__*/_react.default.createElement(_UserMenu.UserMenu, null), /*#__PURE__*/_react.default.createElement(_Overlays.Overlays, null));
|
|
29
30
|
};
|
|
30
31
|
exports.RMWC = RMWC;
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RMWCProviderPlugin","createProviderPlugin","Component","RMWCThemeProvider","children","RMWC"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { createProviderPlugin } from \"@webiny/app-admin\";\nimport { RMWCProvider } from \"@rmwc/provider\";\n\nimport { Layout } from \"./modules/Layout\";\nimport { Navigation } from \"./modules/Navigation\";\nimport { Brand } from \"./modules/Brand\";\
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_appAdmin","_provider","_Layout","_Navigation","_Brand","_UserMenu","_Overlays","_NotFound","_Dashboard","RMWCProviderPlugin","createProviderPlugin","Component","RMWCThemeProvider","_ref","children","default","createElement","RMWCProvider","ripple","RMWC","Fragment","Layout","Dashboard","NotFound","Brand","Navigation","UserMenu","Overlays","exports"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { createProviderPlugin } from \"@webiny/app-admin\";\nimport { RMWCProvider } from \"@rmwc/provider\";\n\nimport { Layout } from \"./modules/Layout\";\nimport { Navigation } from \"./modules/Navigation\";\nimport { Brand } from \"./modules/Brand\";\n// import { Search } from \"~/modules/Search\"; Removed in 5.37.0, it will be refactored later\nimport { UserMenu } from \"~/modules/UserMenu\";\nimport { Overlays } from \"./modules/Overlays\";\nimport { NotFound } from \"./modules/NotFound\";\nimport { Dashboard } from \"./modules/Dashboard\";\n\nconst RMWCProviderPlugin = createProviderPlugin(Component => {\n return function RMWCThemeProvider({ children }) {\n return (\n <RMWCProvider ripple={false}>\n <Component>{children}</Component>\n </RMWCProvider>\n );\n };\n});\n\nexport const RMWC: React.FC = () => {\n return (\n <Fragment>\n <RMWCProviderPlugin />\n <Layout />\n <Dashboard />\n <NotFound />\n <Brand />\n <Navigation />\n {/*<Search />*/}\n <UserMenu />\n <Overlays />\n </Fragment>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAJA;;AAMA,IAAMU,kBAAkB,GAAG,IAAAC,8BAAoB,EAAC,UAAAC,SAAS,EAAI;EACzD,OAAO,SAASC,iBAAiBA,CAAAC,IAAA,EAAe;IAAA,IAAZC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACxC,oBACIjB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACf,SAAA,CAAAgB,YAAY;MAACC,MAAM,EAAE;IAAM,gBACxBrB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACL,SAAS,QAAEG,QAAoB,CACtB,CAAC;EAEvB,CAAC;AACL,CAAC,CAAC;AAEK,IAAMK,IAAc,GAAG,SAAjBA,IAAcA,CAAA,EAAS;EAChC,oBACItB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACnB,MAAA,CAAAuB,QAAQ,qBACLvB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACP,kBAAkB,MAAE,CAAC,eACtBZ,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACd,OAAA,CAAAmB,MAAM,MAAE,CAAC,eACVxB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACR,UAAA,CAAAc,SAAS,MAAE,CAAC,eACbzB,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACT,SAAA,CAAAgB,QAAQ,MAAE,CAAC,eACZ1B,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACZ,MAAA,CAAAoB,KAAK,MAAE,CAAC,eACT3B,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACb,WAAA,CAAAsB,UAAU,MAAE,CAAC,eAEd5B,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACX,SAAA,CAAAqB,QAAQ,MAAE,CAAC,eACZ7B,MAAA,CAAAkB,OAAA,CAAAC,aAAA,CAACV,SAAA,CAAAqB,QAAQ,MAAE,CACL,CAAC;AAEnB,CAAC;AAACC,OAAA,CAAAT,IAAA,GAAAA,IAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BrandImpl","BrandRenderer","useTags","location","useNavigation","setVisible","inApp","includes","String","onClick","useCallback","WebinyLogo","isLoginScreen","isAppBar","isInstaller","color","width","height","paddingLeft","Brand"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment, useCallback } from \"react\";\nimport {\n Compose,\n BrandRenderer,\n HigherOrderComponent,\n useTags,\n Logo,\n AddLogo\n} from \"@webiny/app-admin\";\nimport { Link } from \"@webiny/react-router/\";\nimport { ReactComponent as LogoIcon } from \"./webiny-logo.svg\";\nimport { useNavigation } from \"../Navigation\";\n\nconst BrandImpl: HigherOrderComponent = () => {\n return function BrandRenderer() {\n const { location } = useTags();\n const { setVisible } = useNavigation();\n const inApp = [\"appBar\", \"navigation\"].includes(String(location));\n\n const onClick = useCallback(() => {\n location === \"navigation\" ? setVisible(false) : null;\n }, []);\n\n if (!inApp) {\n return <Logo />;\n }\n\n return (\n <Link to={\"/\"} onClick={onClick}>\n <Logo />\n </Link>\n );\n };\n};\n\nconst WebinyLogo: React.FC = () => {\n const { location } = useTags();\n const isLoginScreen = location === \"loginScreen\";\n const isAppBar = location === \"appBar\";\n const isInstaller = location === \"installer\";\n const inApp = !isInstaller && !isLoginScreen;\n\n const color = isAppBar ? \"white\" : \"var(--mdc-theme-primary)\";\n\n return (\n <LogoIcon\n style={{\n width: !inApp ? 125 : 100,\n height: !inApp ? \"auto\" : 30,\n paddingLeft: !inApp ? 0 : 20,\n color\n }}\n />\n );\n};\n\nexport const Brand: React.FC = () => {\n return (\n <Fragment>\n <Compose component={BrandRenderer} with={BrandImpl} />\n <AddLogo logo={<WebinyLogo />} />\n </Fragment>\n );\n};\n"],"mappings":";;;;;;;AAAA;AACA;AAQA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_appAdmin","_reactRouter","_webinyLogo","_Navigation","BrandImpl","BrandRenderer","_useTags","useTags","location","_useNavigation","useNavigation","setVisible","inApp","includes","String","onClick","useCallback","default","createElement","Logo","Link","to","WebinyLogo","_useTags2","isLoginScreen","isAppBar","isInstaller","color","ReactComponent","style","width","height","paddingLeft","Brand","Fragment","Compose","component","with","AddLogo","logo","exports"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment, useCallback } from \"react\";\nimport {\n Compose,\n BrandRenderer,\n HigherOrderComponent,\n useTags,\n Logo,\n AddLogo\n} from \"@webiny/app-admin\";\nimport { Link } from \"@webiny/react-router/\";\nimport { ReactComponent as LogoIcon } from \"./webiny-logo.svg\";\nimport { useNavigation } from \"../Navigation\";\n\nconst BrandImpl: HigherOrderComponent = () => {\n return function BrandRenderer() {\n const { location } = useTags();\n const { setVisible } = useNavigation();\n const inApp = [\"appBar\", \"navigation\"].includes(String(location));\n\n const onClick = useCallback(() => {\n location === \"navigation\" ? setVisible(false) : null;\n }, []);\n\n if (!inApp) {\n return <Logo />;\n }\n\n return (\n <Link to={\"/\"} onClick={onClick}>\n <Logo />\n </Link>\n );\n };\n};\n\nconst WebinyLogo: React.FC = () => {\n const { location } = useTags();\n const isLoginScreen = location === \"loginScreen\";\n const isAppBar = location === \"appBar\";\n const isInstaller = location === \"installer\";\n const inApp = !isInstaller && !isLoginScreen;\n\n const color = isAppBar ? \"white\" : \"var(--mdc-theme-primary)\";\n\n return (\n <LogoIcon\n style={{\n width: !inApp ? 125 : 100,\n height: !inApp ? \"auto\" : 30,\n paddingLeft: !inApp ? 0 : 20,\n color\n }}\n />\n );\n};\n\nexport const Brand: React.FC = () => {\n return (\n <Fragment>\n <Compose component={BrandRenderer} with={BrandImpl} />\n <AddLogo logo={<WebinyLogo />} />\n </Fragment>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAQA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAEA,IAAMK,SAA+B,GAAG,SAAlCA,SAA+BA,CAAA,EAAS;EAC1C,OAAO,SAASC,aAAaA,CAAA,EAAG;IAC5B,IAAAC,QAAA,GAAqB,IAAAC,iBAAO,EAAC,CAAC;MAAtBC,QAAQ,GAAAF,QAAA,CAARE,QAAQ;IAChB,IAAAC,cAAA,GAAuB,IAAAC,yBAAa,EAAC,CAAC;MAA9BC,UAAU,GAAAF,cAAA,CAAVE,UAAU;IAClB,IAAMC,KAAK,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAACC,QAAQ,CAACC,MAAM,CAACN,QAAQ,CAAC,CAAC;IAEjE,IAAMO,OAAO,GAAG,IAAAC,kBAAW,EAAC,YAAM;MAC9BR,QAAQ,KAAK,YAAY,GAAGG,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI;IACxD,CAAC,EAAE,EAAE,CAAC;IAEN,IAAI,CAACC,KAAK,EAAE;MACR,oBAAOf,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,SAAA,CAAAmB,IAAI,MAAE,CAAC;IACnB;IAEA,oBACItB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACjB,YAAA,CAAAmB,IAAI;MAACC,EAAE,EAAE,GAAI;MAACN,OAAO,EAAEA;IAAQ,gBAC5BlB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,SAAA,CAAAmB,IAAI,MAAE,CACL,CAAC;EAEf,CAAC;AACL,CAAC;AAED,IAAMG,UAAoB,GAAG,SAAvBA,UAAoBA,CAAA,EAAS;EAC/B,IAAAC,SAAA,GAAqB,IAAAhB,iBAAO,EAAC,CAAC;IAAtBC,QAAQ,GAAAe,SAAA,CAARf,QAAQ;EAChB,IAAMgB,aAAa,GAAGhB,QAAQ,KAAK,aAAa;EAChD,IAAMiB,QAAQ,GAAGjB,QAAQ,KAAK,QAAQ;EACtC,IAAMkB,WAAW,GAAGlB,QAAQ,KAAK,WAAW;EAC5C,IAAMI,KAAK,GAAG,CAACc,WAAW,IAAI,CAACF,aAAa;EAE5C,IAAMG,KAAK,GAAGF,QAAQ,GAAG,OAAO,GAAG,0BAA0B;EAE7D,oBACI5B,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAChB,WAAA,CAAA0B,cAAQ;IACLC,KAAK,EAAE;MACHC,KAAK,EAAE,CAAClB,KAAK,GAAG,GAAG,GAAG,GAAG;MACzBmB,MAAM,EAAE,CAACnB,KAAK,GAAG,MAAM,GAAG,EAAE;MAC5BoB,WAAW,EAAE,CAACpB,KAAK,GAAG,CAAC,GAAG,EAAE;MAC5Be,KAAK,EAALA;IACJ;EAAE,CACL,CAAC;AAEV,CAAC;AAEM,IAAMM,KAAe,GAAG,SAAlBA,KAAeA,CAAA,EAAS;EACjC,oBACIpC,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACrB,MAAA,CAAAqC,QAAQ,qBACLrC,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,SAAA,CAAAmC,OAAO;IAACC,SAAS,EAAE/B,uBAAc;IAACgC,IAAI,EAAEjC;EAAU,CAAE,CAAC,eACtDP,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,SAAA,CAAAsC,OAAO;IAACC,IAAI,eAAE1C,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACI,UAAU,MAAE;EAAE,CAAE,CAC1B,CAAC;AAEnB,CAAC;AAACkB,OAAA,CAAAP,KAAA,GAAAA,KAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["linkStyle","css","textDecoration","color","imageStyle","width","height","marginBottom","communityStyle","textAlign","widgetTitleStyle","fontWeight","paddingTop","paddingBottom","widgetDescriptionStyle","paddingLeft","paddingRight","iconTextStyle","pFormContentStyle","pGetStartedStyle","footerContainerStyle","display","padding","widgetButtonStyle","footerTextStyle","backgroundColor","margin","footerLinkTextStyle","ContentTheme","styled","Widget","WelcomeScreenWidgetsWrapper","elevation","Welcome","useSecurity","identity","getPermission","widgets","plugins","byType","filter","pl","permission","canSeeAnyWidget","length","displayName","map","name","widget","title","description","cta","marginLeft","visibility"],"sources":["Welcome.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Link } from \"@webiny/react-router\";\nimport {\n SimpleForm,\n SimpleFormHeader,\n SimpleFormContent,\n SimpleFormFooter\n} from \"@webiny/app-admin/components/SimpleForm\";\nimport { useSecurity } from \"@webiny/app-security/hooks/useSecurity\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\n// Icons\nimport { ReactComponent as YouTubeIcon } from \"./icons/youtube.svg\";\nimport { ReactComponent as GithubIcon } from \"./icons/github.svg\";\nimport { ReactComponent as SlackIcon } from \"./icons/slack.svg\";\nimport { ReactComponent as TwitterIcon } from \"./icons/twitter.svg\";\nimport { ReactComponent as TextbookIcon } from \"./icons/textbook.svg\";\nimport { ReactComponent as LaptopIcon } from \"./icons/laptop.svg\";\nimport { AdminWelcomeScreenWidgetPlugin } from \"@webiny/app-plugin-admin-welcome-screen/types\";\n\nconst linkStyle = css({\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"none\"\n },\n color: \"var(--mdc-theme-text-primary-on-background)\"\n});\n\nconst imageStyle = css({\n width: \"30px\",\n height: \"30px\",\n marginBottom: \"5px\"\n});\n\nconst communityStyle = css({\n textAlign: \"left\"\n});\n\nconst widgetTitleStyle = css({\n fontWeight: 600,\n paddingTop: \"1rem\",\n paddingBottom: \"1rem\",\n textAlign: \"center\"\n});\n\nconst widgetDescriptionStyle = css({\n textAlign: \"center\",\n paddingLeft: \"20px\",\n paddingRight: \"20px\"\n});\n\nconst iconTextStyle = css({\n textAlign: \"center\"\n});\n\nconst pFormContentStyle = css({\n fontWeight: 600\n});\n\nconst pGetStartedStyle = css({\n paddingLeft: \"1.5rem\",\n paddingTop: \"1.5rem\"\n});\n\nconst footerContainerStyle = css({\n display: \"flex\",\n padding: \"1rem\"\n});\n\nconst widgetButtonStyle = css`\n text-align: center;\n margin-top: auto;\n`;\n\nconst footerTextStyle = css({\n backgroundColor: \"var(--mdc-theme-on-background)\",\n margin: \"1rem\"\n});\n\nconst footerLinkTextStyle = css({\n fontWeight: 600,\n paddingLeft: \"1rem\"\n});\n\nconst ContentTheme = styled(\"div\")({\n color: \"var(--mdc-theme-text-primary-on-background)\"\n});\n\nconst Widget = styled.div`\n margin-left: 1.5rem;\n margin-right: 1.5rem;\n margin-bottom: 2rem;\n flex: 1 1 21%;\n max-width: 25%;\n min-height: 250px;\n`;\n\nconst WelcomeScreenWidgetsWrapper = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n @media (max-width: 479px) {\n flex-direction: column;\n }\n`;\n\nconst elevation = css`\n padding: 10px;\n height: calc(100% - 20px);\n display: flex;\n flex-direction: column;\n`;\n\nconst Welcome: React.FC = () => {\n const { identity, getPermission } = useSecurity();\n\n if (!identity) {\n return null;\n }\n\n const widgets = plugins\n .byType<AdminWelcomeScreenWidgetPlugin>(\"admin-welcome-screen-widget\")\n .filter(pl => {\n if (pl.permission) {\n return getPermission(pl.permission);\n }\n return true;\n });\n\n const canSeeAnyWidget = widgets.length > 0;\n\n return (\n <SimpleForm>\n <SimpleFormHeader title={`Hi ${identity.displayName}!`} />\n <SimpleFormContent>\n <ContentTheme>\n <Cell span={12}>\n <Typography use={\"headline6\"}>\n {canSeeAnyWidget && (\n <p className={pGetStartedStyle}>\n To get started - pick one of the actions below:\n </p>\n )}\n {!canSeeAnyWidget && (\n <p className={pGetStartedStyle}>\n Please contact the administrator for permissions to access\n Webiny apps.\n </p>\n )}\n <br />\n </Typography>\n </Cell>\n <WelcomeScreenWidgetsWrapper>\n {widgets.map(pl => {\n return (\n <Widget key={pl.name} data-testid={pl.name}>\n <Elevation z={2} className={elevation}>\n <Typography use={\"headline6\"}>\n <p className={widgetTitleStyle}>{pl.widget.title}</p>\n </Typography>\n <Typography use={\"body1\"}>\n <p className={widgetDescriptionStyle}>\n {pl.widget.description}\n </p>\n </Typography>\n <div className={widgetButtonStyle}>{pl.widget.cta}</div>\n </Elevation>\n </Widget>\n );\n })}\n </WelcomeScreenWidgetsWrapper>\n </ContentTheme>\n </SimpleFormContent>\n <SimpleFormFooter>\n <Grid>\n <Cell span={8}>\n <Typography use={\"headline6\"} className={communityStyle}>\n <p className={pFormContentStyle}>Learn more about Webiny:</p>\n </Typography>\n </Cell>\n <Cell span={4} style={{ marginLeft: \"1rem\" }}>\n <Typography use={\"headline6\"} className={communityStyle}>\n <p className={pFormContentStyle}>Join our community:</p>\n </Typography>\n </Cell>\n <Cell span={8}>\n <Typography use={\"body1\"} className={communityStyle}>\n <p>\n Explore the Webiny documentation, learn about the architecture and\n check out code examples and guides:\n </p>\n </Typography>\n </Cell>\n <Cell span={4} style={{ marginLeft: \"1rem\" }}>\n <Typography use={\"body1\"} className={communityStyle}>\n <p>Get to know Webiny team members, discuss new ideas and get help:</p>\n </Typography>\n </Cell>\n <Cell\n span={4}\n className={footerTextStyle}\n style={{ margin: \"1rem 1rem 1rem 0rem\" }}\n >\n <Link\n to=\"https://www.webiny.com/docs\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <Typography use={\"headline5\"}>\n <div className={footerContainerStyle}>\n <TextbookIcon className={imageStyle} />\n <p className={footerLinkTextStyle}>Documentation</p>\n </div>\n </Typography>\n </Link>\n </Cell>\n <Cell\n span={4}\n className={footerTextStyle}\n style={{ margin: \"1rem 1rem 1rem 9px\", visibility: \"hidden\" }}\n >\n <Link\n to=\"https://github.com/webiny/webiny-examples\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <Typography use={\"headline5\"}>\n <span className={footerContainerStyle}>\n <LaptopIcon className={imageStyle} />\n <p className={footerLinkTextStyle}>Code examples</p>\n </span>\n </Typography>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://github.com/webiny/webiny-js\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <GithubIcon className={imageStyle} />\n <p>Github</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://www.webiny.com/slack/\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <SlackIcon className={imageStyle} />\n <p>Slack</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://youtube.com/webiny\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <YouTubeIcon className={imageStyle} />\n <p>YouTube</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://twitter.com/WebinyCMS\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <TwitterIcon className={imageStyle} />\n <p>Twitter</p>\n </Link>\n </Cell>\n </Grid>\n </SimpleFormFooter>\n </SimpleForm>\n );\n};\n\nexport default Welcome;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAMA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AANA;;AASA,IAAMA,SAAS,gBAAG,IAAAC,YAAG,EAAC;EAClBC,cAAc,EAAE,MAAM;EACtB,SAAS,EAAE;IACPA,cAAc,EAAE;EACpB,CAAC;EACDC,KAAK,EAAE;AACX,CAAC,qBAAC;AAEF,IAAMC,UAAU,gBAAG,IAAAH,YAAG,EAAC;EACnBI,KAAK,EAAE,MAAM;EACbC,MAAM,EAAE,MAAM;EACdC,YAAY,EAAE;AAClB,CAAC,sBAAC;AAEF,IAAMC,cAAc,gBAAG,IAAAP,YAAG,EAAC;EACvBQ,SAAS,EAAE;AACf,CAAC,0BAAC;AAEF,IAAMC,gBAAgB,gBAAG,IAAAT,YAAG,EAAC;EACzBU,UAAU,EAAE,GAAG;EACfC,UAAU,EAAE,MAAM;EAClBC,aAAa,EAAE,MAAM;EACrBJ,SAAS,EAAE;AACf,CAAC,4BAAC;AAEF,IAAMK,sBAAsB,gBAAG,IAAAb,YAAG,EAAC;EAC/BQ,SAAS,EAAE,QAAQ;EACnBM,WAAW,EAAE,MAAM;EACnBC,YAAY,EAAE;AAClB,CAAC,kCAAC;AAEF,IAAMC,aAAa,gBAAG,IAAAhB,YAAG,EAAC;EACtBQ,SAAS,EAAE;AACf,CAAC,yBAAC;AAEF,IAAMS,iBAAiB,gBAAG,IAAAjB,YAAG,EAAC;EAC1BU,UAAU,EAAE;AAChB,CAAC,6BAAC;AAEF,IAAMQ,gBAAgB,gBAAG,IAAAlB,YAAG,EAAC;EACzBc,WAAW,EAAE,QAAQ;EACrBH,UAAU,EAAE;AAChB,CAAC,4BAAC;AAEF,IAAMQ,oBAAoB,gBAAG,IAAAnB,YAAG,EAAC;EAC7BoB,OAAO,EAAE,MAAM;EACfC,OAAO,EAAE;AACb,CAAC,gCAAC;AAEF,IAAMC,iBAAiB,oBAAGtB,YAAG,+DAG5B;AAED,IAAMuB,eAAe,gBAAG,IAAAvB,YAAG,EAAC;EACxBwB,eAAe,EAAE,gCAAgC;EACjDC,MAAM,EAAE;AACZ,CAAC,2BAAC;AAEF,IAAMC,mBAAmB,gBAAG,IAAA1B,YAAG,EAAC;EAC5BU,UAAU,EAAE,GAAG;EACfI,WAAW,EAAE;AACjB,CAAC,+BAAC;AAEF,IAAMa,YAAY,oBAAGC,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EAC/B1B,KAAK,EAAE;AACX,CAAC,CAAC;AAEF,IAAM2B,MAAM,oBAAGD,eAAM;EAAA;EAAA;AAAA,4GAOpB;AAED,IAAME,2BAA2B,oBAAGF,eAAM;EAAA;EAAA;AAAA,yGAOzC;AAED,IAAMG,SAAS,oBAAG/B,YAAG,8FAKpB;AAED,IAAMgC,OAAiB,GAAG,SAApBA,OAAiB,GAAS;EAC5B,mBAAoC,IAAAC,yBAAW,GAAE;IAAzCC,QAAQ,gBAARA,QAAQ;IAAEC,aAAa,gBAAbA,aAAa;EAE/B,IAAI,CAACD,QAAQ,EAAE;IACX,OAAO,IAAI;EACf;EAEA,IAAME,OAAO,GAAGC,gBAAO,CAClBC,MAAM,CAAiC,6BAA6B,CAAC,CACrEC,MAAM,CAAC,UAAAC,EAAE,EAAI;IACV,IAAIA,EAAE,CAACC,UAAU,EAAE;MACf,OAAON,aAAa,CAACK,EAAE,CAACC,UAAU,CAAC;IACvC;IACA,OAAO,IAAI;EACf,CAAC,CAAC;EAEN,IAAMC,eAAe,GAAGN,OAAO,CAACO,MAAM,GAAG,CAAC;EAE1C,oBACI,6BAAC,sBAAU,qBACP,6BAAC,4BAAgB;IAAC,KAAK,eAAQT,QAAQ,CAACU,WAAW;EAAI,EAAG,eAC1D,6BAAC,6BAAiB,qBACd,6BAAC,YAAY,qBACT,6BAAC,UAAI;IAAC,IAAI,EAAE;EAAG,gBACX,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAY,GACxBF,eAAe,iBACZ;IAAG,SAAS,EAAExB;EAAiB,GAAC,iDAEhC,CACH,EACA,CAACwB,eAAe,iBACb;IAAG,SAAS,EAAExB;EAAiB,GAAC,yEAGhC,CACH,eACD,wCAAM,CACG,CACV,eACP,6BAAC,2BAA2B,QACvBkB,OAAO,CAACS,GAAG,CAAC,UAAAL,EAAE,EAAI;IACf,oBACI,6BAAC,MAAM;MAAC,GAAG,EAAEA,EAAE,CAACM,IAAK;MAAC,eAAaN,EAAE,CAACM;IAAK,gBACvC,6BAAC,oBAAS;MAAC,CAAC,EAAE,CAAE;MAAC,SAAS,EAAEf;IAAU,gBAClC,6BAAC,sBAAU;MAAC,GAAG,EAAE;IAAY,gBACzB;MAAG,SAAS,EAAEtB;IAAiB,GAAE+B,EAAE,CAACO,MAAM,CAACC,KAAK,CAAK,CAC5C,eACb,6BAAC,sBAAU;MAAC,GAAG,EAAE;IAAQ,gBACrB;MAAG,SAAS,EAAEnC;IAAuB,GAChC2B,EAAE,CAACO,MAAM,CAACE,WAAW,CACtB,CACK,eACb;MAAK,SAAS,EAAE3B;IAAkB,GAAEkB,EAAE,CAACO,MAAM,CAACG,GAAG,CAAO,CAChD,CACP;EAEjB,CAAC,CAAC,CACwB,CACnB,CACC,eACpB,6BAAC,4BAAgB,qBACb,6BAAC,UAAI,qBACD,6BAAC,UAAI;IAAC,IAAI,EAAE;EAAE,gBACV,6BAAC,sBAAU;IAAC,GAAG,EAAE,WAAY;IAAC,SAAS,EAAE3C;EAAe,gBACpD;IAAG,SAAS,EAAEU;EAAkB,GAAC,0BAAwB,CAAI,CACpD,CACV,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,KAAK,EAAE;MAAEkC,UAAU,EAAE;IAAO;EAAE,gBACzC,6BAAC,sBAAU;IAAC,GAAG,EAAE,WAAY;IAAC,SAAS,EAAE5C;EAAe,gBACpD;IAAG,SAAS,EAAEU;EAAkB,GAAC,qBAAmB,CAAI,CAC/C,CACV,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE;EAAE,gBACV,6BAAC,sBAAU;IAAC,GAAG,EAAE,OAAQ;IAAC,SAAS,EAAEV;EAAe,gBAChD,wCAAG,wGAGH,CAAI,CACK,CACV,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,KAAK,EAAE;MAAE4C,UAAU,EAAE;IAAO;EAAE,gBACzC,6BAAC,sBAAU;IAAC,GAAG,EAAE,OAAQ;IAAC,SAAS,EAAE5C;EAAe,gBAChD,wCAAG,kEAAgE,CAAI,CAC9D,CACV,eACP,6BAAC,UAAI;IACD,IAAI,EAAE,CAAE;IACR,SAAS,EAAEgB,eAAgB;IAC3B,KAAK,EAAE;MAAEE,MAAM,EAAE;IAAsB;EAAE,gBAEzC,6BAAC,iBAAI;IACD,EAAE,EAAC,6BAA6B;IAChC,SAAS,EAAE1B,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAY,gBACzB;IAAK,SAAS,EAAEoB;EAAqB,gBACjC,6BAAC,wBAAY;IAAC,SAAS,EAAEhB;EAAW,EAAG,eACvC;IAAG,SAAS,EAAEuB;EAAoB,GAAC,eAAa,CAAI,CAClD,CACG,CACV,CACJ,eACP,6BAAC,UAAI;IACD,IAAI,EAAE,CAAE;IACR,SAAS,EAAEH,eAAgB;IAC3B,KAAK,EAAE;MAAEE,MAAM,EAAE,oBAAoB;MAAE2B,UAAU,EAAE;IAAS;EAAE,gBAE9D,6BAAC,iBAAI;IACD,EAAE,EAAC,2CAA2C;IAC9C,SAAS,EAAErD,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,sBAAU;IAAC,GAAG,EAAE;EAAY,gBACzB;IAAM,SAAS,EAAEoB;EAAqB,gBAClC,6BAAC,sBAAU;IAAC,SAAS,EAAEhB;EAAW,EAAG,eACrC;IAAG,SAAS,EAAEuB;EAAoB,GAAC,eAAa,CAAI,CACjD,CACE,CACV,CACJ,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,SAAS,EAAEV,aAAc;IAAC,KAAK,EAAC;EAAQ,gBACnD,6BAAC,iBAAI;IACD,EAAE,EAAC,qCAAqC;IACxC,SAAS,EAAEjB,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,sBAAU;IAAC,SAAS,EAAEI;EAAW,EAAG,eACrC,wCAAG,QAAM,CAAI,CACV,CACJ,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,SAAS,EAAEa,aAAc;IAAC,KAAK,EAAC;EAAQ,gBACnD,6BAAC,iBAAI;IACD,EAAE,EAAC,+BAA+B;IAClC,SAAS,EAAEjB,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,qBAAS;IAAC,SAAS,EAAEI;EAAW,EAAG,eACpC,wCAAG,OAAK,CAAI,CACT,CACJ,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,SAAS,EAAEa,aAAc;IAAC,KAAK,EAAC;EAAQ,gBACnD,6BAAC,iBAAI;IACD,EAAE,EAAC,4BAA4B;IAC/B,SAAS,EAAEjB,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,uBAAW;IAAC,SAAS,EAAEI;EAAW,EAAG,eACtC,wCAAG,SAAO,CAAI,CACX,CACJ,eACP,6BAAC,UAAI;IAAC,IAAI,EAAE,CAAE;IAAC,SAAS,EAAEa,aAAc;IAAC,KAAK,EAAC;EAAQ,gBACnD,6BAAC,iBAAI;IACD,EAAE,EAAC,+BAA+B;IAClC,SAAS,EAAEjB,SAAU;IACrB,MAAM,EAAE,QAAS;IACjB,GAAG,EAAE;EAAsB,gBAE3B,6BAAC,uBAAW;IAAC,SAAS,EAAEI;EAAW,EAAG,eACtC,wCAAG,SAAO,CAAI,CACX,CACJ,CACJ,CACQ,CACV;AAErB,CAAC;AAAC,eAEa6B,OAAO;AAAA"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_emotion","_styled","_reactRouter","_SimpleForm","_useSecurity2","_plugins","_Typography","_Grid","_Elevation","_youtube","_github","_slack","_twitter","_textbook","_laptop","linkStyle","css","textDecoration","color","imageStyle","width","height","marginBottom","communityStyle","textAlign","widgetTitleStyle","fontWeight","paddingTop","paddingBottom","widgetDescriptionStyle","paddingLeft","paddingRight","iconTextStyle","pFormContentStyle","pGetStartedStyle","footerContainerStyle","display","padding","widgetButtonStyle","footerTextStyle","backgroundColor","margin","footerLinkTextStyle","ContentTheme","styled","target","label","Widget","WelcomeScreenWidgetsWrapper","elevation","Welcome","_useSecurity","useSecurity","identity","getPermission","widgets","plugins","byType","filter","pl","permission","canSeeAnyWidget","length","default","createElement","SimpleForm","SimpleFormHeader","title","concat","displayName","SimpleFormContent","Cell","span","Typography","use","className","map","key","name","Elevation","z","widget","description","cta","SimpleFormFooter","Grid","style","marginLeft","Link","to","rel","ReactComponent","visibility","align","_default","exports"],"sources":["Welcome.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Link } from \"@webiny/react-router\";\nimport {\n SimpleForm,\n SimpleFormHeader,\n SimpleFormContent,\n SimpleFormFooter\n} from \"@webiny/app-admin/components/SimpleForm\";\nimport { useSecurity } from \"@webiny/app-security/hooks/useSecurity\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\n// Icons\nimport { ReactComponent as YouTubeIcon } from \"./icons/youtube.svg\";\nimport { ReactComponent as GithubIcon } from \"./icons/github.svg\";\nimport { ReactComponent as SlackIcon } from \"./icons/slack.svg\";\nimport { ReactComponent as TwitterIcon } from \"./icons/twitter.svg\";\nimport { ReactComponent as TextbookIcon } from \"./icons/textbook.svg\";\nimport { ReactComponent as LaptopIcon } from \"./icons/laptop.svg\";\nimport { AdminWelcomeScreenWidgetPlugin } from \"@webiny/app-plugin-admin-welcome-screen/types\";\n\nconst linkStyle = css({\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"none\"\n },\n color: \"var(--mdc-theme-text-primary-on-background)\"\n});\n\nconst imageStyle = css({\n width: \"30px\",\n height: \"30px\",\n marginBottom: \"5px\"\n});\n\nconst communityStyle = css({\n textAlign: \"left\"\n});\n\nconst widgetTitleStyle = css({\n fontWeight: 600,\n paddingTop: \"1rem\",\n paddingBottom: \"1rem\",\n textAlign: \"center\"\n});\n\nconst widgetDescriptionStyle = css({\n textAlign: \"center\",\n paddingLeft: \"20px\",\n paddingRight: \"20px\"\n});\n\nconst iconTextStyle = css({\n textAlign: \"center\"\n});\n\nconst pFormContentStyle = css({\n fontWeight: 600\n});\n\nconst pGetStartedStyle = css({\n paddingLeft: \"1.5rem\",\n paddingTop: \"1.5rem\"\n});\n\nconst footerContainerStyle = css({\n display: \"flex\",\n padding: \"1rem\"\n});\n\nconst widgetButtonStyle = css`\n text-align: center;\n margin-top: auto;\n`;\n\nconst footerTextStyle = css({\n backgroundColor: \"var(--mdc-theme-on-background)\",\n margin: \"1rem\"\n});\n\nconst footerLinkTextStyle = css({\n fontWeight: 600,\n paddingLeft: \"1rem\"\n});\n\nconst ContentTheme = styled(\"div\")({\n color: \"var(--mdc-theme-text-primary-on-background)\"\n});\n\nconst Widget = styled.div`\n margin-left: 1.5rem;\n margin-right: 1.5rem;\n margin-bottom: 2rem;\n flex: 1 1 21%;\n max-width: 25%;\n min-height: 250px;\n`;\n\nconst WelcomeScreenWidgetsWrapper = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n @media (max-width: 479px) {\n flex-direction: column;\n }\n`;\n\nconst elevation = css`\n padding: 10px;\n height: calc(100% - 20px);\n display: flex;\n flex-direction: column;\n`;\n\nconst Welcome: React.FC = () => {\n const { identity, getPermission } = useSecurity();\n\n if (!identity) {\n return null;\n }\n\n const widgets = plugins\n .byType<AdminWelcomeScreenWidgetPlugin>(\"admin-welcome-screen-widget\")\n .filter(pl => {\n if (pl.permission) {\n return getPermission(pl.permission);\n }\n return true;\n });\n\n const canSeeAnyWidget = widgets.length > 0;\n\n return (\n <SimpleForm>\n <SimpleFormHeader title={`Hi ${identity.displayName}!`} />\n <SimpleFormContent>\n <ContentTheme>\n <Cell span={12}>\n <Typography use={\"headline6\"}>\n {canSeeAnyWidget && (\n <p className={pGetStartedStyle}>\n To get started - pick one of the actions below:\n </p>\n )}\n {!canSeeAnyWidget && (\n <p className={pGetStartedStyle}>\n Please contact the administrator for permissions to access\n Webiny apps.\n </p>\n )}\n <br />\n </Typography>\n </Cell>\n <WelcomeScreenWidgetsWrapper>\n {widgets.map(pl => {\n return (\n <Widget key={pl.name} data-testid={pl.name}>\n <Elevation z={2} className={elevation}>\n <Typography use={\"headline6\"}>\n <p className={widgetTitleStyle}>{pl.widget.title}</p>\n </Typography>\n <Typography use={\"body1\"}>\n <p className={widgetDescriptionStyle}>\n {pl.widget.description}\n </p>\n </Typography>\n <div className={widgetButtonStyle}>{pl.widget.cta}</div>\n </Elevation>\n </Widget>\n );\n })}\n </WelcomeScreenWidgetsWrapper>\n </ContentTheme>\n </SimpleFormContent>\n <SimpleFormFooter>\n <Grid>\n <Cell span={8}>\n <Typography use={\"headline6\"} className={communityStyle}>\n <p className={pFormContentStyle}>Learn more about Webiny:</p>\n </Typography>\n </Cell>\n <Cell span={4} style={{ marginLeft: \"1rem\" }}>\n <Typography use={\"headline6\"} className={communityStyle}>\n <p className={pFormContentStyle}>Join our community:</p>\n </Typography>\n </Cell>\n <Cell span={8}>\n <Typography use={\"body1\"} className={communityStyle}>\n <p>\n Explore the Webiny documentation, learn about the architecture and\n check out code examples and guides:\n </p>\n </Typography>\n </Cell>\n <Cell span={4} style={{ marginLeft: \"1rem\" }}>\n <Typography use={\"body1\"} className={communityStyle}>\n <p>Get to know Webiny team members, discuss new ideas and get help:</p>\n </Typography>\n </Cell>\n <Cell\n span={4}\n className={footerTextStyle}\n style={{ margin: \"1rem 1rem 1rem 0rem\" }}\n >\n <Link\n to=\"https://www.webiny.com/docs\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <Typography use={\"headline5\"}>\n <div className={footerContainerStyle}>\n <TextbookIcon className={imageStyle} />\n <p className={footerLinkTextStyle}>Documentation</p>\n </div>\n </Typography>\n </Link>\n </Cell>\n <Cell\n span={4}\n className={footerTextStyle}\n style={{ margin: \"1rem 1rem 1rem 9px\", visibility: \"hidden\" }}\n >\n <Link\n to=\"https://github.com/webiny/webiny-examples\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <Typography use={\"headline5\"}>\n <span className={footerContainerStyle}>\n <LaptopIcon className={imageStyle} />\n <p className={footerLinkTextStyle}>Code examples</p>\n </span>\n </Typography>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://github.com/webiny/webiny-js\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <GithubIcon className={imageStyle} />\n <p>Github</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://www.webiny.com/slack/\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <SlackIcon className={imageStyle} />\n <p>Slack</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://youtube.com/webiny\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <YouTubeIcon className={imageStyle} />\n <p>YouTube</p>\n </Link>\n </Cell>\n <Cell span={1} className={iconTextStyle} align=\"middle\">\n <Link\n to=\"https://twitter.com/WebinyCMS\"\n className={linkStyle}\n target={\"_blank\"}\n rel={\"noopener noreferrer\"}\n >\n <TwitterIcon className={imageStyle} />\n <p>Twitter</p>\n </Link>\n </Cell>\n </Grid>\n </SimpleFormFooter>\n </SimpleForm>\n );\n};\n\nexport default Welcome;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DashboardRendererHOC","DashboardRenderer","Dashboard","DashboardRendererSpec"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n CenteredView,\n Compose,\n DashboardRenderer as DashboardRendererSpec\n} from \"@webiny/app-admin\";\nimport Welcome from \"./Welcome\";\n\nconst DashboardRendererHOC = (): React.FC => {\n return function DashboardRenderer() {\n return (\n <CenteredView maxWidth={1300}>\n <Welcome />\n </CenteredView>\n );\n };\n};\n\nexport const Dashboard: React.FC = () => {\n return <Compose component={DashboardRendererSpec} with={DashboardRendererHOC} />;\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AAKA;AAEA,
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_appAdmin","_Welcome","_interopRequireDefault","DashboardRendererHOC","DashboardRenderer","createElement","CenteredView","maxWidth","default","Dashboard","Compose","component","DashboardRendererSpec","with","exports"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n CenteredView,\n Compose,\n DashboardRenderer as DashboardRendererSpec\n} from \"@webiny/app-admin\";\nimport Welcome from \"./Welcome\";\n\nconst DashboardRendererHOC = (): React.FC => {\n return function DashboardRenderer() {\n return (\n <CenteredView maxWidth={1300}>\n <Welcome />\n </CenteredView>\n );\n };\n};\n\nexport const Dashboard: React.FC = () => {\n return <Compose component={DashboardRendererSpec} with={DashboardRendererHOC} />;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAMI,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA,EAAmB;EACzC,OAAO,SAASC,iBAAiBA,CAAA,EAAG;IAChC,oBACIP,KAAA,CAAAQ,aAAA,CAACL,SAAA,CAAAM,YAAY;MAACC,QAAQ,EAAE;IAAK,gBACzBV,KAAA,CAAAQ,aAAA,CAACJ,QAAA,CAAAO,OAAO,MAAE,CACA,CAAC;EAEvB,CAAC;AACL,CAAC;AAEM,IAAMC,SAAmB,GAAG,SAAtBA,SAAmBA,CAAA,EAAS;EACrC,oBAAOZ,KAAA,CAAAQ,aAAA,CAACL,SAAA,CAAAU,OAAO;IAACC,SAAS,EAAEC,2BAAsB;IAACC,IAAI,EAAEV;EAAqB,CAAE,CAAC;AACpF,CAAC;AAACW,OAAA,CAAAL,SAAA,GAAAA,SAAA"}
|
package/modules/Layout.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RMWCLayout","title","children","location","width","paddingTop","Layout","LayoutRenderer"],"sources":["Layout.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport Helmet from \"react-helmet\";\nimport {\n Compose,\n LayoutRenderer,\n LayoutProps,\n Brand,\n Search,\n LocaleSelector,\n UserMenu,\n Navigation,\n Tags\n} from \"@webiny/app-admin\";\nimport { TopAppBarPrimary, TopAppBarSection } from \"@webiny/ui/TopAppBar\";\n\nconst RMWCLayout = (): React.FC<LayoutProps> => {\n return function RMWCLayout({ title, children }) {\n return (\n <Fragment>\n {title ? <Helmet title={title} /> : null}\n <Tags tags={{ location: \"appBar\" }}>\n <TopAppBarPrimary fixed>\n <TopAppBarSection style={{ width: \"25%\" }} alignStart>\n <Brand />\n </TopAppBarSection>\n <TopAppBarSection style={{ width: \"50%\" }}>\n <Search />\n </TopAppBarSection>\n <TopAppBarSection style={{ width: \"25%\" }} alignEnd>\n <LocaleSelector />\n <UserMenu />\n </TopAppBarSection>\n </TopAppBarPrimary>\n </Tags>\n <div style={{ paddingTop: 67 }}>{children}</div>\n <Navigation />\n </Fragment>\n );\n };\n};\n\nexport const Layout: React.FC = () => {\n /**\n * TODO @ts-refactor @pavel\n */\n // @ts-ignore\n return <Compose component={LayoutRenderer} with={RMWCLayout} />;\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAWA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactHelmet","_interopRequireDefault","_appAdmin","_TopAppBar","RMWCLayout","_ref","title","children","default","createElement","Fragment","Tags","tags","location","TopAppBarPrimary","fixed","TopAppBarSection","style","width","alignStart","Brand","Search","alignEnd","LocaleSelector","UserMenu","paddingTop","Navigation","Layout","Compose","component","LayoutRenderer","with","exports"],"sources":["Layout.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport Helmet from \"react-helmet\";\nimport {\n Compose,\n LayoutRenderer,\n LayoutProps,\n Brand,\n Search,\n LocaleSelector,\n UserMenu,\n Navigation,\n Tags\n} from \"@webiny/app-admin\";\nimport { TopAppBarPrimary, TopAppBarSection } from \"@webiny/ui/TopAppBar\";\n\nconst RMWCLayout = (): React.FC<LayoutProps> => {\n return function RMWCLayout({ title, children }) {\n return (\n <Fragment>\n {title ? <Helmet title={title} /> : null}\n <Tags tags={{ location: \"appBar\" }}>\n <TopAppBarPrimary fixed>\n <TopAppBarSection style={{ width: \"25%\" }} alignStart>\n <Brand />\n </TopAppBarSection>\n <TopAppBarSection style={{ width: \"50%\" }}>\n <Search />\n </TopAppBarSection>\n <TopAppBarSection style={{ width: \"25%\" }} alignEnd>\n <LocaleSelector />\n <UserMenu />\n </TopAppBarSection>\n </TopAppBarPrimary>\n </Tags>\n <div style={{ paddingTop: 67 }}>{children}</div>\n <Navigation />\n </Fragment>\n );\n };\n};\n\nexport const Layout: React.FC = () => {\n /**\n * TODO @ts-refactor @pavel\n */\n // @ts-ignore\n return <Compose component={LayoutRenderer} with={RMWCLayout} />;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAWA,IAAAI,UAAA,GAAAJ,OAAA;AAEA,IAAMK,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAgC;EAC5C,OAAO,SAASA,UAAUA,CAAAC,IAAA,EAAsB;IAAA,IAAnBC,KAAK,GAAAD,IAAA,CAALC,KAAK;MAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACxC,oBACIV,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACZ,MAAA,CAAAa,QAAQ,QACJJ,KAAK,gBAAGT,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACT,YAAA,CAAAQ,OAAM;MAACF,KAAK,EAAEA;IAAM,CAAE,CAAC,GAAG,IAAI,eACxCT,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAS,IAAI;MAACC,IAAI,EAAE;QAAEC,QAAQ,EAAE;MAAS;IAAE,gBAC/BhB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACN,UAAA,CAAAW,gBAAgB;MAACC,KAAK;IAAA,gBACnBlB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACN,UAAA,CAAAa,gBAAgB;MAACC,KAAK,EAAE;QAAEC,KAAK,EAAE;MAAM,CAAE;MAACC,UAAU;IAAA,gBACjDtB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAkB,KAAK,MAAE,CACM,CAAC,eACnBvB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACN,UAAA,CAAAa,gBAAgB;MAACC,KAAK,EAAE;QAAEC,KAAK,EAAE;MAAM;IAAE,gBACtCrB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAmB,MAAM,MAAE,CACK,CAAC,eACnBxB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACN,UAAA,CAAAa,gBAAgB;MAACC,KAAK,EAAE;QAAEC,KAAK,EAAE;MAAM,CAAE;MAACI,QAAQ;IAAA,gBAC/CzB,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAqB,cAAc,MAAE,CAAC,eAClB1B,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAsB,QAAQ,MAAE,CACG,CACJ,CAChB,CAAC,eACP3B,MAAA,CAAAW,OAAA,CAAAC,aAAA;MAAKQ,KAAK,EAAE;QAAEQ,UAAU,EAAE;MAAG;IAAE,GAAElB,QAAc,CAAC,eAChDV,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAAwB,UAAU,MAAE,CACP,CAAC;EAEnB,CAAC;AACL,CAAC;AAEM,IAAMC,MAAgB,GAAG,SAAnBA,MAAgBA,CAAA,EAAS;EAClC;AACJ;AACA;EACI;EACA,oBAAO9B,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,SAAA,CAAA0B,OAAO;IAACC,SAAS,EAAEC,wBAAe;IAACC,IAAI,EAAE3B;EAAW,CAAE,CAAC;AACnE,CAAC;AAAC4B,OAAA,CAAAL,MAAA,GAAAA,MAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Hamburger","useTags","location","useNavigation","visible","setVisible","color","undefined"],"sources":["Hamburger.tsx"],"sourcesContent":["import React from \"react\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { ReactComponent as MenuIcon } from \"./icons/hamburger.svg\";\nimport { useNavigation } from \"./index\";\nimport { useTags } from \"@webiny/app-admin\";\n\nconst Hamburger: React.FC = () => {\n const { location } = useTags();\n const { visible, setVisible } = useNavigation();\n\n if (location === \"installer\") {\n return null;\n }\n\n return (\n <IconButton\n icon={<MenuIcon style={{ color: location === \"navigation\" ? undefined : \"white\" }} />}\n onClick={() => setVisible(!visible)}\n data-testid={location === \"navigation\" ? undefined : \"apps-menu\"}\n />\n );\n};\n\nexport default Hamburger;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_Button","_hamburger","_index","_appAdmin","Hamburger","_useTags","useTags","location","_useNavigation","useNavigation","visible","setVisible","default","createElement","IconButton","icon","ReactComponent","style","color","undefined","onClick","_default","exports"],"sources":["Hamburger.tsx"],"sourcesContent":["import React from \"react\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { ReactComponent as MenuIcon } from \"./icons/hamburger.svg\";\nimport { useNavigation } from \"./index\";\nimport { useTags } from \"@webiny/app-admin\";\n\nconst Hamburger: React.FC = () => {\n const { location } = useTags();\n const { visible, setVisible } = useNavigation();\n\n if (location === \"installer\") {\n return null;\n }\n\n return (\n <IconButton\n icon={<MenuIcon style={{ color: location === \"navigation\" ? undefined : \"white\" }} />}\n onClick={() => setVisible(!visible)}\n data-testid={location === \"navigation\" ? undefined : \"apps-menu\"}\n />\n );\n};\n\nexport default Hamburger;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAEA,IAAMK,SAAmB,GAAG,SAAtBA,SAAmBA,CAAA,EAAS;EAC9B,IAAAC,QAAA,GAAqB,IAAAC,iBAAO,EAAC,CAAC;IAAtBC,QAAQ,GAAAF,QAAA,CAARE,QAAQ;EAChB,IAAAC,cAAA,GAAgC,IAAAC,oBAAa,EAAC,CAAC;IAAvCC,OAAO,GAAAF,cAAA,CAAPE,OAAO;IAAEC,UAAU,GAAAH,cAAA,CAAVG,UAAU;EAE3B,IAAIJ,QAAQ,KAAK,WAAW,EAAE;IAC1B,OAAO,IAAI;EACf;EAEA,oBACIV,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACb,OAAA,CAAAc,UAAU;IACPC,IAAI,eAAElB,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACZ,UAAA,CAAAe,cAAQ;MAACC,KAAK,EAAE;QAAEC,KAAK,EAAEX,QAAQ,KAAK,YAAY,GAAGY,SAAS,GAAG;MAAQ;IAAE,CAAE,CAAE;IACtFC,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAMT,UAAU,CAAC,CAACD,OAAO,CAAC;IAAA,CAAC;IACpC,eAAaH,QAAQ,KAAK,YAAY,GAAGY,SAAS,GAAG;EAAY,CACpE,CAAC;AAEV,CAAC;AAAC,IAAAE,QAAA,GAEajB,SAAS;AAAAkB,OAAA,CAAAV,OAAA,GAAAS,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MenuHeader","styled","display","alignItems","padding","backgroundColor","borderBottom","navHeader","css","minHeight","navContent","logoStyle","paddingLeft","color","MenuFooter","borderTop","a","textDecoration","subFooter","margin"],"sources":["Styled.ts"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { css } from \"emotion\";\n\nexport const MenuHeader = styled(\"div\")({\n display: \"flex\",\n alignItems: \"center\",\n padding: 5,\n backgroundColor: \"var(--mdc-theme-surface)\",\n borderBottom: \"1px solid var(--mdc-theme-on-background)\"\n});\n\nexport const navHeader = css({\n padding: 0,\n \"&.mdc-drawer__header\": {\n padding: \"0 !important\",\n minHeight: 0\n }\n});\n\nexport const navContent = css({\n padding: \"0 !important\"\n});\n\nexport const logoStyle = css({\n \"&.mdc-top-app-bar__title\": {\n paddingLeft: 15,\n \".webiny-logo\": {\n color: \"var(--mdc-theme-primary)\"\n }\n }\n});\n\nexport const MenuFooter = styled(\"div\")({\n borderTop: \"1px solid var(--mdc-theme-on-background)\",\n a: {\n color: \"var(--mdc-theme-text-on-primary)\",\n textDecoration: \"none\"\n }\n});\n\nexport const subFooter = css({\n \".mdc-drawer &.mdc-list-item\": {\n borderTop: \"1px solid var(--mdc-theme-on-background)\",\n padding: \"10px 16px\",\n margin: 0\n }\n});\n"],"mappings":";;;;;;;AAAA;AACA;AAEO,
|
|
1
|
+
{"version":3,"names":["_styled","_interopRequireDefault","require","_emotion","MenuHeader","styled","target","label","display","alignItems","padding","backgroundColor","borderBottom","exports","navHeader","css","minHeight","navContent","logoStyle","paddingLeft","color","MenuFooter","borderTop","a","textDecoration","subFooter","margin"],"sources":["Styled.ts"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { css } from \"emotion\";\n\nexport const MenuHeader = styled(\"div\")({\n display: \"flex\",\n alignItems: \"center\",\n padding: 5,\n backgroundColor: \"var(--mdc-theme-surface)\",\n borderBottom: \"1px solid var(--mdc-theme-on-background)\"\n});\n\nexport const navHeader = css({\n padding: 0,\n \"&.mdc-drawer__header\": {\n padding: \"0 !important\",\n minHeight: 0\n }\n});\n\nexport const navContent = css({\n padding: \"0 !important\"\n});\n\nexport const logoStyle = css({\n \"&.mdc-top-app-bar__title\": {\n paddingLeft: 15,\n \".webiny-logo\": {\n color: \"var(--mdc-theme-primary)\"\n }\n }\n});\n\nexport const MenuFooter = styled(\"div\")({\n borderTop: \"1px solid var(--mdc-theme-on-background)\",\n a: {\n color: \"var(--mdc-theme-text-on-primary)\",\n textDecoration: \"none\"\n }\n});\n\nexport const subFooter = css({\n \".mdc-drawer &.mdc-list-item\": {\n borderTop: \"1px solid var(--mdc-theme-on-background)\",\n padding: \"10px 16px\",\n margin: 0\n }\n});\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,IAAME,UAAU,oBAAGC,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACpCC,OAAO,EAAE,MAAM;EACfC,UAAU,EAAE,QAAQ;EACpBC,OAAO,EAAE,CAAC;EACVC,eAAe,EAAE,0BAA0B;EAC3CC,YAAY,EAAE;AAClB,CAAC,CAAC;AAACC,OAAA,CAAAT,UAAA,GAAAA,UAAA;AAEI,IAAMU,SAAS,gBAAG,IAAAC,YAAG,EAAC;EACzBL,OAAO,EAAE,CAAC;EACV,sBAAsB,EAAE;IACpBA,OAAO,EAAE,cAAc;IACvBM,SAAS,EAAE;EACf;AACJ,CAAC,qBAAC;AAACH,OAAA,CAAAC,SAAA,GAAAA,SAAA;AAEI,IAAMG,UAAU,gBAAG,IAAAF,YAAG,EAAC;EAC1BL,OAAO,EAAE;AACb,CAAC,sBAAC;AAACG,OAAA,CAAAI,UAAA,GAAAA,UAAA;AAEI,IAAMC,SAAS,gBAAG,IAAAH,YAAG,EAAC;EACzB,0BAA0B,EAAE;IACxBI,WAAW,EAAE,EAAE;IACf,cAAc,EAAE;MACZC,KAAK,EAAE;IACX;EACJ;AACJ,CAAC,qBAAC;AAACP,OAAA,CAAAK,SAAA,GAAAA,SAAA;AAEI,IAAMG,UAAU,oBAAGhB,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACpCe,SAAS,EAAE,0CAA0C;EACrDC,CAAC,EAAE;IACCH,KAAK,EAAE,kCAAkC;IACzCI,cAAc,EAAE;EACpB;AACJ,CAAC,CAAC;AAACX,OAAA,CAAAQ,UAAA,GAAAA,UAAA;AAEI,IAAMI,SAAS,gBAAG,IAAAV,YAAG,EAAC;EACzB,6BAA6B,EAAE;IAC3BO,SAAS,EAAE,0CAA0C;IACrDZ,OAAO,EAAE,WAAW;IACpBgB,MAAM,EAAE;EACZ;AACJ,CAAC,qBAAC;AAACb,OAAA,CAAAY,SAAA,GAAAA,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AutoWidthDrawer","styled","Drawer","NavigationContext","React","createContext","visible","setVisible","displayName","useNavigation","useContext","BrandImpl","Brand","BrandWithHamburger","NavigationProvider","Component","props","useState","context","useMemo","NavigationImpl","Navigation","useAdminNavigation","menuItems","hideDrawer","useCallback","mainMenu","filter","m","tags","includes","footerMenu","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","navHeader","navContent","subFooter","menuSorter","a","b","pin","label","localeCompare","SortedMenuItems","MenuItems","sort","NavigationSpec","BrandSpec","MenuItemRenderer","MenuGroupRenderer","MenuSectionItemRenderer","MenuSectionRenderer","MenuLinkRenderer","MenuElementRenderer"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useContext, useMemo, useState } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Drawer, DrawerContent, DrawerHeader } from \"@webiny/ui/Drawer\";\nimport {\n Compose,\n Provider,\n NavigationRenderer as NavigationSpec,\n MenuItems,\n MenuItemRenderer,\n Brand as BrandSpec,\n useNavigation as useAdminNavigation,\n MenuData,\n MenuItemsProps,\n HigherOrderComponent\n} from \"@webiny/app-admin\";\nimport Hamburger from \"./Hamburger\";\nimport { MenuGroupRenderer } from \"./renderers/MenuGroupRenderer\";\nimport { MenuSectionItemRenderer } from \"./renderers/MenuSectionItemRenderer\";\nimport { MenuSectionRenderer } from \"./renderers/MenuSectionRenderer\";\nimport { MenuLinkRenderer } from \"./renderers/MenuLinkRenderer\";\nimport { MenuElementRenderer } from \"./renderers/MenuElementRenderer\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { MenuFooter, subFooter, MenuHeader, navHeader, navContent } from \"./Styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst AutoWidthDrawer = styled(Drawer)`\n width: auto;\n`;\n\ninterface NavigationContext {\n visible: boolean;\n setVisible(visible: boolean): void;\n}\n\nconst NavigationContext = React.createContext<NavigationContext>({\n visible: false,\n setVisible: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation(): NavigationContext {\n return useContext(NavigationContext);\n}\n\nconst BrandImpl: HigherOrderComponent = Brand => {\n return function BrandWithHamburger() {\n return (\n <Fragment>\n <Hamburger />\n <Brand />\n </Fragment>\n );\n };\n};\n\nconst NavigationProvider = (Component: React.FC): React.FC => {\n return function NavigationProvider(props) {\n const [visible, setVisible] = useState(false);\n\n const context = useMemo(() => ({ visible, setVisible }), [visible]);\n\n return (\n <NavigationContext.Provider value={context}>\n <Component {...props} />\n </NavigationContext.Provider>\n );\n };\n};\n\nexport const NavigationImpl = (): React.FC => {\n return function Navigation() {\n const { menuItems } = useAdminNavigation();\n const { visible, setVisible } = useNavigation();\n\n const hideDrawer = useCallback(() => {\n setVisible(false);\n }, []);\n\n const mainMenu = useMemo(\n () => menuItems.filter(m => !(m.tags || []).includes(\"footer\")),\n [menuItems]\n );\n\n const footerMenu = useMemo(\n () => menuItems.filter(m => (m.tags || []).includes(\"footer\")),\n [menuItems]\n );\n\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n\n return (\n <AutoWidthDrawer modal open={visible} onClose={hideDrawer}>\n <DrawerHeader className={navHeader}>\n <MenuHeader>\n <BrandSpec />\n </MenuHeader>\n </DrawerHeader>\n <DrawerContent className={navContent}>\n <MenuItems menuItems={mainMenu} />\n </DrawerContent>\n <MenuFooter>\n <List nonInteractive>\n <MenuItems menuItems={footerMenu} />\n <ListItem ripple={false} className={subFooter}>\n <Typography use={\"body2\"}>Webiny v{wbyVersion}</Typography>\n </ListItem>\n </List>\n </MenuFooter>\n </AutoWidthDrawer>\n );\n };\n};\n\nconst menuSorter = (a: MenuData, b: MenuData): number => {\n if (a.pin === b.pin) {\n return (a.label || \"\").localeCompare(b.label || \"\");\n }\n\n if (a.pin) {\n return a.pin === \"first\" ? -1 : 1;\n }\n\n if (b.pin) {\n return b.pin === \"first\" ? 1 : -1;\n }\n\n return (a.label || \"\").localeCompare(b.label || \"\");\n};\n\nconst SortedMenuItems: HigherOrderComponent<MenuItemsProps> = MenuItems => {\n return function SortedMenuItems({ menuItems }) {\n return <MenuItems menuItems={[...menuItems].sort(menuSorter)} />;\n };\n};\n\nexport const Navigation: React.FC = () => {\n return (\n <Fragment>\n <Provider hoc={NavigationProvider} />\n <Compose component={NavigationSpec} with={NavigationImpl} />\n <Compose component={MenuItems} with={SortedMenuItems} />\n <Compose component={BrandSpec} with={BrandImpl} />\n <Compose\n component={MenuItemRenderer}\n with={[\n MenuGroupRenderer,\n MenuSectionItemRenderer,\n MenuSectionRenderer,\n MenuLinkRenderer,\n MenuElementRenderer\n ]}\n />\n </Fragment>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_styled","_interopRequireDefault","_Drawer","_appAdmin","_Hamburger","_MenuGroupRenderer","_MenuSectionItemRenderer","_MenuSectionRenderer","_MenuLinkRenderer","_MenuElementRenderer","_List","_Styled","_config","_Typography","AutoWidthDrawer","styled","Drawer","label","target","NavigationContext","React","createContext","visible","setVisible","displayName","useNavigation","useContext","BrandImpl","Brand","BrandWithHamburger","default","createElement","Fragment","NavigationProvider","Component","props","_useState","useState","_useState2","_slicedToArray2","context","useMemo","Provider","value","NavigationImpl","Navigation","_useAdminNavigation","useAdminNavigation","menuItems","_useNavigation","hideDrawer","useCallback","mainMenu","filter","m","tags","includes","footerMenu","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","modal","open","onClose","DrawerHeader","className","navHeader","MenuHeader","DrawerContent","navContent","MenuItems","MenuFooter","List","nonInteractive","ListItem","ripple","subFooter","Typography","use","exports","menuSorter","a","b","pin","localeCompare","SortedMenuItems","_ref","_toConsumableArray2","sort","hoc","Compose","component","NavigationSpec","with","BrandSpec","MenuItemRenderer","MenuGroupRenderer","MenuSectionItemRenderer","MenuSectionRenderer","MenuLinkRenderer","MenuElementRenderer"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useContext, useMemo, useState } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Drawer, DrawerContent, DrawerHeader } from \"@webiny/ui/Drawer\";\nimport {\n Compose,\n Provider,\n NavigationRenderer as NavigationSpec,\n MenuItems,\n MenuItemRenderer,\n Brand as BrandSpec,\n useNavigation as useAdminNavigation,\n MenuData,\n MenuItemsProps,\n HigherOrderComponent\n} from \"@webiny/app-admin\";\nimport Hamburger from \"./Hamburger\";\nimport { MenuGroupRenderer } from \"./renderers/MenuGroupRenderer\";\nimport { MenuSectionItemRenderer } from \"./renderers/MenuSectionItemRenderer\";\nimport { MenuSectionRenderer } from \"./renderers/MenuSectionRenderer\";\nimport { MenuLinkRenderer } from \"./renderers/MenuLinkRenderer\";\nimport { MenuElementRenderer } from \"./renderers/MenuElementRenderer\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { MenuFooter, subFooter, MenuHeader, navHeader, navContent } from \"./Styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst AutoWidthDrawer = styled(Drawer)`\n width: auto;\n`;\n\ninterface NavigationContext {\n visible: boolean;\n setVisible(visible: boolean): void;\n}\n\nconst NavigationContext = React.createContext<NavigationContext>({\n visible: false,\n setVisible: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation(): NavigationContext {\n return useContext(NavigationContext);\n}\n\nconst BrandImpl: HigherOrderComponent = Brand => {\n return function BrandWithHamburger() {\n return (\n <Fragment>\n <Hamburger />\n <Brand />\n </Fragment>\n );\n };\n};\n\nconst NavigationProvider = (Component: React.FC): React.FC => {\n return function NavigationProvider(props) {\n const [visible, setVisible] = useState(false);\n\n const context = useMemo(() => ({ visible, setVisible }), [visible]);\n\n return (\n <NavigationContext.Provider value={context}>\n <Component {...props} />\n </NavigationContext.Provider>\n );\n };\n};\n\nexport const NavigationImpl = (): React.FC => {\n return function Navigation() {\n const { menuItems } = useAdminNavigation();\n const { visible, setVisible } = useNavigation();\n\n const hideDrawer = useCallback(() => {\n setVisible(false);\n }, []);\n\n const mainMenu = useMemo(\n () => menuItems.filter(m => !(m.tags || []).includes(\"footer\")),\n [menuItems]\n );\n\n const footerMenu = useMemo(\n () => menuItems.filter(m => (m.tags || []).includes(\"footer\")),\n [menuItems]\n );\n\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n\n return (\n <AutoWidthDrawer modal open={visible} onClose={hideDrawer}>\n <DrawerHeader className={navHeader}>\n <MenuHeader>\n <BrandSpec />\n </MenuHeader>\n </DrawerHeader>\n <DrawerContent className={navContent}>\n <MenuItems menuItems={mainMenu} />\n </DrawerContent>\n <MenuFooter>\n <List nonInteractive>\n <MenuItems menuItems={footerMenu} />\n <ListItem ripple={false} className={subFooter}>\n <Typography use={\"body2\"}>Webiny v{wbyVersion}</Typography>\n </ListItem>\n </List>\n </MenuFooter>\n </AutoWidthDrawer>\n );\n };\n};\n\nconst menuSorter = (a: MenuData, b: MenuData): number => {\n if (a.pin === b.pin) {\n return (a.label || \"\").localeCompare(b.label || \"\");\n }\n\n if (a.pin) {\n return a.pin === \"first\" ? -1 : 1;\n }\n\n if (b.pin) {\n return b.pin === \"first\" ? 1 : -1;\n }\n\n return (a.label || \"\").localeCompare(b.label || \"\");\n};\n\nconst SortedMenuItems: HigherOrderComponent<MenuItemsProps> = MenuItems => {\n return function SortedMenuItems({ menuItems }) {\n return <MenuItems menuItems={[...menuItems].sort(menuSorter)} />;\n };\n};\n\nexport const Navigation: React.FC = () => {\n return (\n <Fragment>\n <Provider hoc={NavigationProvider} />\n <Compose component={NavigationSpec} with={NavigationImpl} />\n <Compose component={MenuItems} with={SortedMenuItems} />\n <Compose component={BrandSpec} with={BrandImpl} />\n <Compose\n component={MenuItemRenderer}\n with={[\n MenuGroupRenderer,\n MenuSectionItemRenderer,\n MenuSectionRenderer,\n MenuLinkRenderer,\n MenuElementRenderer\n ]}\n />\n </Fragment>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAYA,IAAAK,UAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;AACA,IAAAO,wBAAA,GAAAP,OAAA;AACA,IAAAQ,oBAAA,GAAAR,OAAA;AACA,IAAAS,iBAAA,GAAAT,OAAA;AACA,IAAAU,oBAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AAEA,IAAMe,eAAe,oBAAGC,eAAM,EAACC,cAAM;EAAAC,KAAA;EAAAC,MAAA;AAAA,iBAEpC;AAOD,IAAMC,iBAAiB,gBAAGC,cAAK,CAACC,aAAa,CAAoB;EAC7DC,OAAO,EAAE,KAAK;EACdC,UAAU,EAAE,SAAAA,WAAA,EAAM;IACd,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFJ,iBAAiB,CAACK,WAAW,GAAG,mBAAmB;AAE5C,SAASC,aAAaA,CAAA,EAAsB;EAC/C,OAAO,IAAAC,iBAAU,EAACP,iBAAiB,CAAC;AACxC;AAEA,IAAMQ,SAA+B,GAAG,SAAlCA,SAA+BA,CAAGC,KAAK,EAAI;EAC7C,OAAO,SAASC,kBAAkBA,CAAA,EAAG;IACjC,oBACIhC,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAClC,MAAA,CAAAmC,QAAQ,qBACLnC,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC3B,UAAA,CAAA0B,OAAS,MAAE,CAAC,eACbjC,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACH,KAAK,MAAE,CACF,CAAC;EAEnB,CAAC;AACL,CAAC;AAED,IAAMK,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,SAAmB,EAAe;EAC1D,OAAO,SAASD,kBAAkBA,CAACE,KAAK,EAAE;IACtC,IAAAC,SAAA,GAA8B,IAAAC,eAAQ,EAAC,KAAK,CAAC;MAAAC,UAAA,OAAAC,eAAA,CAAAT,OAAA,EAAAM,SAAA;MAAtCd,OAAO,GAAAgB,UAAA;MAAEf,UAAU,GAAAe,UAAA;IAE1B,IAAME,OAAO,GAAG,IAAAC,cAAO,EAAC;MAAA,OAAO;QAAEnB,OAAO,EAAPA,OAAO;QAAEC,UAAU,EAAVA;MAAW,CAAC;IAAA,CAAC,EAAE,CAACD,OAAO,CAAC,CAAC;IAEnE,oBACIzB,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACZ,iBAAiB,CAACuB,QAAQ;MAACC,KAAK,EAAEH;IAAQ,gBACvC3C,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACG,SAAS,EAAKC,KAAQ,CACC,CAAC;EAErC,CAAC;AACL,CAAC;AAEM,IAAMS,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAmB;EAC1C,OAAO,SAASC,UAAUA,CAAA,EAAG;IACzB,IAAAC,mBAAA,GAAsB,IAAAC,uBAAkB,EAAC,CAAC;MAAlCC,SAAS,GAAAF,mBAAA,CAATE,SAAS;IACjB,IAAAC,cAAA,GAAgCxB,aAAa,CAAC,CAAC;MAAvCH,OAAO,GAAA2B,cAAA,CAAP3B,OAAO;MAAEC,UAAU,GAAA0B,cAAA,CAAV1B,UAAU;IAE3B,IAAM2B,UAAU,GAAG,IAAAC,kBAAW,EAAC,YAAM;MACjC5B,UAAU,CAAC,KAAK,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC;IAEN,IAAM6B,QAAQ,GAAG,IAAAX,cAAO,EACpB;MAAA,OAAMO,SAAS,CAACK,MAAM,CAAC,UAAAC,CAAC;QAAA,OAAI,CAAC,CAACA,CAAC,CAACC,IAAI,IAAI,EAAE,EAAEC,QAAQ,CAAC,QAAQ,CAAC;MAAA,EAAC;IAAA,GAC/D,CAACR,SAAS,CACd,CAAC;IAED,IAAMS,UAAU,GAAG,IAAAhB,cAAO,EACtB;MAAA,OAAMO,SAAS,CAACK,MAAM,CAAC,UAAAC,CAAC;QAAA,OAAI,CAACA,CAAC,CAACC,IAAI,IAAI,EAAE,EAAEC,QAAQ,CAAC,QAAQ,CAAC;MAAA,EAAC;IAAA,GAC9D,CAACR,SAAS,CACd,CAAC;IAED,IAAMU,UAAU,GAAGC,cAAS,CAACC,MAAM,CAAC,gBAAgB,EAAEC,OAAO,CAACC,GAAG,CAACC,wBAAwB,CAAC;IAE3F,oBACIlE,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACjB,eAAe;MAACkD,KAAK;MAACC,IAAI,EAAE3C,OAAQ;MAAC4C,OAAO,EAAEhB;IAAW,gBACtDrD,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC7B,OAAA,CAAAiE,YAAY;MAACC,SAAS,EAAEC;IAAU,gBAC/BxE,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACpB,OAAA,CAAA2D,UAAU,qBACPzE,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAAyB,KAAS,MAAE,CACJ,CACF,CAAC,eACf/B,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC7B,OAAA,CAAAqE,aAAa;MAACH,SAAS,EAAEI;IAAW,gBACjC3E,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAAsE,SAAS;MAACzB,SAAS,EAAEI;IAAS,CAAE,CACtB,CAAC,eAChBvD,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACpB,OAAA,CAAA+D,UAAU,qBACP7E,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACrB,KAAA,CAAAiE,IAAI;MAACC,cAAc;IAAA,gBAChB/E,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAAsE,SAAS;MAACzB,SAAS,EAAES;IAAW,CAAE,CAAC,eACpC5D,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAACrB,KAAA,CAAAmE,QAAQ;MAACC,MAAM,EAAE,KAAM;MAACV,SAAS,EAAEW;IAAU,gBAC1ClF,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAClB,WAAA,CAAAmE,UAAU;MAACC,GAAG,EAAE;IAAQ,GAAC,UAAQ,EAACvB,UAAuB,CACpD,CACR,CACE,CACC,CAAC;EAE1B,CAAC;AACL,CAAC;AAACwB,OAAA,CAAAtC,cAAA,GAAAA,cAAA;AAEF,IAAMuC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,CAAW,EAAEC,CAAW,EAAa;EACrD,IAAID,CAAC,CAACE,GAAG,KAAKD,CAAC,CAACC,GAAG,EAAE;IACjB,OAAO,CAACF,CAAC,CAACnE,KAAK,IAAI,EAAE,EAAEsE,aAAa,CAACF,CAAC,CAACpE,KAAK,IAAI,EAAE,CAAC;EACvD;EAEA,IAAImE,CAAC,CAACE,GAAG,EAAE;IACP,OAAOF,CAAC,CAACE,GAAG,KAAK,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC;EACrC;EAEA,IAAID,CAAC,CAACC,GAAG,EAAE;IACP,OAAOD,CAAC,CAACC,GAAG,KAAK,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;EACrC;EAEA,OAAO,CAACF,CAAC,CAACnE,KAAK,IAAI,EAAE,EAAEsE,aAAa,CAACF,CAAC,CAACpE,KAAK,IAAI,EAAE,CAAC;AACvD,CAAC;AAED,IAAMuE,eAAqD,GAAG,SAAxDA,eAAqDA,CAAGf,SAAS,EAAI;EACvE,OAAO,SAASe,eAAeA,CAAAC,IAAA,EAAgB;IAAA,IAAbzC,SAAS,GAAAyC,IAAA,CAATzC,SAAS;IACvC,oBAAOnD,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC0C,SAAS;MAACzB,SAAS,EAAE,IAAA0C,mBAAA,CAAA5D,OAAA,EAAIkB,SAAS,EAAE2C,IAAI,CAACR,UAAU;IAAE,CAAE,CAAC;EACpE,CAAC;AACL,CAAC;AAEM,IAAMtC,UAAoB,GAAG,SAAvBA,UAAoBA,CAAA,EAAS;EACtC,oBACIhD,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAClC,MAAA,CAAAmC,QAAQ,qBACLnC,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAAuC,QAAQ;IAACkD,GAAG,EAAE3D;EAAmB,CAAE,CAAC,eACrCpC,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAA0F,OAAO;IAACC,SAAS,EAAEC,4BAAe;IAACC,IAAI,EAAEpD;EAAe,CAAE,CAAC,eAC5D/C,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAA0F,OAAO;IAACC,SAAS,EAAErB,mBAAU;IAACuB,IAAI,EAAER;EAAgB,CAAE,CAAC,eACxD3F,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAA0F,OAAO;IAACC,SAAS,EAAEG,eAAU;IAACD,IAAI,EAAErE;EAAU,CAAE,CAAC,eAClD9B,MAAA,CAAAiC,OAAA,CAAAC,aAAA,CAAC5B,SAAA,CAAA0F,OAAO;IACJC,SAAS,EAAEI,0BAAiB;IAC5BF,IAAI,EAAE,CACFG,oCAAiB,EACjBC,gDAAuB,EACvBC,wCAAmB,EACnBC,kCAAgB,EAChBC,wCAAmB;EACrB,CACL,CACK,CAAC;AAEnB,CAAC;AAACrB,OAAA,CAAArC,UAAA,GAAAA,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MenuElementRenderer","PrevMenuItem","MenuComponent","useMenuItem","menuItem","element"],"sources":["MenuElementRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { useMenuItem } from \"@webiny/app-admin\";\n\nexport const MenuElementRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuComponent() {\n const { menuItem } = useMenuItem();\n if (!menuItem || !menuItem.element) {\n return <PrevMenuItem />;\n }\n\n return menuItem.element;\n };\n};\n"],"mappings":";;;;;;;AAAA;AACA;AAEO,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_appAdmin","MenuElementRenderer","PrevMenuItem","MenuComponent","_useMenuItem","useMenuItem","menuItem","element","default","createElement","exports"],"sources":["MenuElementRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { useMenuItem } from \"@webiny/app-admin\";\n\nexport const MenuElementRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuComponent() {\n const { menuItem } = useMenuItem();\n if (!menuItem || !menuItem.element) {\n return <PrevMenuItem />;\n }\n\n return menuItem.element;\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEO,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,YAAsB,EAAe;EACrE,OAAO,SAASC,aAAaA,CAAA,EAAG;IAC5B,IAAAC,YAAA,GAAqB,IAAAC,qBAAW,EAAC,CAAC;MAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;IAChB,IAAI,CAACA,QAAQ,IAAI,CAACA,QAAQ,CAACC,OAAO,EAAE;MAChC,oBAAOV,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACP,YAAY,MAAE,CAAC;IAC3B;IAEA,OAAOI,QAAQ,CAACC,OAAO;EAC3B,CAAC;AACL,CAAC;AAACG,OAAA,CAAAT,mBAAA,GAAAA,mBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyle","transform","opacity","transitionProperty","transitionTimingFunction","transitionDuration","willChange","transitionStyles","entering","entered","menuTitle","css","borderBottom","padding","margin","height","width","fontWeight","boxSizing","menuTitleActive","backgroundColor","LOCAL_STORAGE_KEY","loadState","localStorage","get","split","filter","Boolean","storeState","state","set","join","getState","id","includes","MenuGroupRenderer","PrevMenuItem","MenuGroup","useNavigation","setVisible","useMenuItem","menuItem","depth","shouldRender","children","useState","name","isExpanded","setExpanded","hideMenu","useCallback","toggleElement","splice","indexOf","push","length","withLink","content","path","testId","onClick","item","classNames","icon","label"],"sources":["MenuGroupRenderer.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { css } from \"emotion\";\nimport { Transition } from \"react-transition-group\";\nimport classNames from \"classnames\";\nimport { Link } from \"@webiny/react-router\";\nimport { useMenuItem, MenuItems } from \"@webiny/app-admin\";\nimport { List, ListItem, ListItemGraphic, ListItemMeta } from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { useNavigation } from \"../index\";\nimport { ReactComponent as UpIcon } from \"../icons/round-keyboard_arrow_up-24px.svg\";\nimport { ReactComponent as DownIcon } from \"../icons/round-keyboard_arrow_down-24px.svg\";\n\nconst defaultStyle = {\n transform: \"translateY(-20px)\",\n opacity: 0,\n transitionProperty: \"transform, opacity\",\n transitionTimingFunction: \"cubic-bezier(0, 0, .2, 1)\",\n transitionDuration: \"100ms\",\n willChange: \"opacity, transform\"\n};\n\nconst transitionStyles: Record<string, any> = {\n entering: {\n transform: \"translateY(-20px)\",\n opacity: 0\n },\n entered: {\n transform: \"translateY(0px)\",\n opacity: 1\n }\n};\n\nconst menuTitle = css({\n \".mdc-drawer &.mdc-list\": {\n borderBottom: \"1px solid var(--mdc-theme-on-background)\",\n padding: 0,\n \".mdc-list-item\": {\n margin: 0,\n padding: \"0 15px\",\n height: \"48px\",\n width: \"100%\",\n fontWeight: 600,\n boxSizing: \"border-box\"\n }\n }\n});\n\nconst menuTitleActive = css({\n backgroundColor: \"var(--mdc-theme-background)\"\n});\n\nconst LOCAL_STORAGE_KEY = \"webiny_navigation_groups\";\n\nfunction loadState(): string[] {\n return (localStorage.get(LOCAL_STORAGE_KEY) || \"\").split(\",\").filter(Boolean);\n}\n\nfunction storeState(state: string[]) {\n localStorage.set(LOCAL_STORAGE_KEY, state.join(\",\"));\n}\n\nfunction getState(id: string | null): boolean {\n if (!id) {\n return false;\n }\n const state = loadState();\n return state.includes(id);\n}\n\nexport const MenuGroupRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuGroup() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n const shouldRender = depth === 0 && menuItem && menuItem.children;\n const [isExpanded, setExpanded] = useState<boolean>(\n getState(menuItem ? menuItem.name : null)\n );\n\n const hideMenu = useCallback(() => setVisible(false), []);\n\n const toggleElement = useCallback(() => {\n if (!menuItem) {\n return;\n }\n const state = loadState();\n if (isExpanded && state.includes(menuItem.name)) {\n state.splice(state.indexOf(menuItem.name), 1);\n }\n\n if (!isExpanded && !state.includes(menuItem.name)) {\n state.push(menuItem.name);\n }\n\n setExpanded(!isExpanded);\n storeState(state);\n }, [isExpanded, setExpanded]);\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n }\n\n if (!menuItem || !menuItem.children.length) {\n return null;\n }\n\n const withLink = (content: React.ReactNode): React.ReactElement => {\n return (\n <Link\n to={menuItem.path || \"\"}\n data-testid={menuItem.testId}\n onClick={menuItem.onClick || hideMenu}\n >\n {content}\n </Link>\n );\n };\n\n const item = (\n <List className={classNames(menuTitle, { [menuTitleActive]: isExpanded })}>\n <ListItem data-testid={menuItem.testId} onClick={toggleElement}>\n {menuItem.icon && (\n <ListItemGraphic>\n <IconButton icon={menuItem.icon} />\n </ListItemGraphic>\n )}\n\n {menuItem.label}\n\n {menuItem.children.length ? (\n <ListItemMeta>\n <IconButton icon={isExpanded ? <UpIcon /> : <DownIcon />} />\n </ListItemMeta>\n ) : null}\n </ListItem>\n </List>\n );\n\n return (\n <Fragment>\n {menuItem.path ? withLink(item) : item}\n {menuItem.children ? (\n <Transition in={isExpanded} timeout={100} appear unmountOnExit>\n {state => (\n <div style={{ ...defaultStyle, ...transitionStyles[state] }}>\n <MenuItems menuItems={menuItem.children} />\n </div>\n )}\n </Transition>\n ) : null}\n </Fragment>\n );\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_store","_interopRequireDefault","_emotion","_reactTransitionGroup","_classnames","_reactRouter","_appAdmin","_List","_Button","_index","_roundKeyboard_arrow_up24px","_roundKeyboard_arrow_down24px","defaultStyle","transform","opacity","transitionProperty","transitionTimingFunction","transitionDuration","willChange","transitionStyles","entering","entered","menuTitle","css","borderBottom","padding","margin","height","width","fontWeight","boxSizing","menuTitleActive","backgroundColor","LOCAL_STORAGE_KEY","loadState","localStorage","get","split","filter","Boolean","storeState","state","set","join","getState","id","includes","MenuGroupRenderer","PrevMenuItem","MenuGroup","_useNavigation","useNavigation","setVisible","_useMenuItem","useMenuItem","menuItem","depth","shouldRender","children","_useState","useState","name","_useState2","_slicedToArray2","default","isExpanded","setExpanded","hideMenu","useCallback","toggleElement","splice","indexOf","push","createElement","length","withLink","content","Link","to","path","testId","onClick","item","List","className","classNames","_defineProperty2","ListItem","icon","ListItemGraphic","IconButton","label","ListItemMeta","ReactComponent","Fragment","Transition","in","timeout","appear","unmountOnExit","style","_objectSpread2","MenuItems","menuItems","exports"],"sources":["MenuGroupRenderer.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { css } from \"emotion\";\nimport { Transition } from \"react-transition-group\";\nimport classNames from \"classnames\";\nimport { Link } from \"@webiny/react-router\";\nimport { useMenuItem, MenuItems } from \"@webiny/app-admin\";\nimport { List, ListItem, ListItemGraphic, ListItemMeta } from \"@webiny/ui/List\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { useNavigation } from \"../index\";\nimport { ReactComponent as UpIcon } from \"../icons/round-keyboard_arrow_up-24px.svg\";\nimport { ReactComponent as DownIcon } from \"../icons/round-keyboard_arrow_down-24px.svg\";\n\nconst defaultStyle = {\n transform: \"translateY(-20px)\",\n opacity: 0,\n transitionProperty: \"transform, opacity\",\n transitionTimingFunction: \"cubic-bezier(0, 0, .2, 1)\",\n transitionDuration: \"100ms\",\n willChange: \"opacity, transform\"\n};\n\nconst transitionStyles: Record<string, any> = {\n entering: {\n transform: \"translateY(-20px)\",\n opacity: 0\n },\n entered: {\n transform: \"translateY(0px)\",\n opacity: 1\n }\n};\n\nconst menuTitle = css({\n \".mdc-drawer &.mdc-list\": {\n borderBottom: \"1px solid var(--mdc-theme-on-background)\",\n padding: 0,\n \".mdc-list-item\": {\n margin: 0,\n padding: \"0 15px\",\n height: \"48px\",\n width: \"100%\",\n fontWeight: 600,\n boxSizing: \"border-box\"\n }\n }\n});\n\nconst menuTitleActive = css({\n backgroundColor: \"var(--mdc-theme-background)\"\n});\n\nconst LOCAL_STORAGE_KEY = \"webiny_navigation_groups\";\n\nfunction loadState(): string[] {\n return (localStorage.get(LOCAL_STORAGE_KEY) || \"\").split(\",\").filter(Boolean);\n}\n\nfunction storeState(state: string[]) {\n localStorage.set(LOCAL_STORAGE_KEY, state.join(\",\"));\n}\n\nfunction getState(id: string | null): boolean {\n if (!id) {\n return false;\n }\n const state = loadState();\n return state.includes(id);\n}\n\nexport const MenuGroupRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuGroup() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n const shouldRender = depth === 0 && menuItem && menuItem.children;\n const [isExpanded, setExpanded] = useState<boolean>(\n getState(menuItem ? menuItem.name : null)\n );\n\n const hideMenu = useCallback(() => setVisible(false), []);\n\n const toggleElement = useCallback(() => {\n if (!menuItem) {\n return;\n }\n const state = loadState();\n if (isExpanded && state.includes(menuItem.name)) {\n state.splice(state.indexOf(menuItem.name), 1);\n }\n\n if (!isExpanded && !state.includes(menuItem.name)) {\n state.push(menuItem.name);\n }\n\n setExpanded(!isExpanded);\n storeState(state);\n }, [isExpanded, setExpanded]);\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n }\n\n if (!menuItem || !menuItem.children.length) {\n return null;\n }\n\n const withLink = (content: React.ReactNode): React.ReactElement => {\n return (\n <Link\n to={menuItem.path || \"\"}\n data-testid={menuItem.testId}\n onClick={menuItem.onClick || hideMenu}\n >\n {content}\n </Link>\n );\n };\n\n const item = (\n <List className={classNames(menuTitle, { [menuTitleActive]: isExpanded })}>\n <ListItem data-testid={menuItem.testId} onClick={toggleElement}>\n {menuItem.icon && (\n <ListItemGraphic>\n <IconButton icon={menuItem.icon} />\n </ListItemGraphic>\n )}\n\n {menuItem.label}\n\n {menuItem.children.length ? (\n <ListItemMeta>\n <IconButton icon={isExpanded ? <UpIcon /> : <DownIcon />} />\n </ListItemMeta>\n ) : null}\n </ListItem>\n </List>\n );\n\n return (\n <Fragment>\n {menuItem.path ? withLink(item) : item}\n {menuItem.children ? (\n <Transition in={isExpanded} timeout={100} appear unmountOnExit>\n {state => (\n <div style={{ ...defaultStyle, ...transitionStyles[state] }}>\n <MenuItems menuItems={menuItem.children} />\n </div>\n )}\n </Transition>\n ) : null}\n </Fragment>\n );\n };\n};\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,2BAAA,GAAAX,OAAA;AACA,IAAAY,6BAAA,GAAAZ,OAAA;AAEA,IAAMa,YAAY,GAAG;EACjBC,SAAS,EAAE,mBAAmB;EAC9BC,OAAO,EAAE,CAAC;EACVC,kBAAkB,EAAE,oBAAoB;EACxCC,wBAAwB,EAAE,2BAA2B;EACrDC,kBAAkB,EAAE,OAAO;EAC3BC,UAAU,EAAE;AAChB,CAAC;AAED,IAAMC,gBAAqC,GAAG;EAC1CC,QAAQ,EAAE;IACNP,SAAS,EAAE,mBAAmB;IAC9BC,OAAO,EAAE;EACb,CAAC;EACDO,OAAO,EAAE;IACLR,SAAS,EAAE,iBAAiB;IAC5BC,OAAO,EAAE;EACb;AACJ,CAAC;AAED,IAAMQ,SAAS,gBAAG,IAAAC,YAAG,EAAC;EAClB,wBAAwB,EAAE;IACtBC,YAAY,EAAE,0CAA0C;IACxDC,OAAO,EAAE,CAAC;IACV,gBAAgB,EAAE;MACdC,MAAM,EAAE,CAAC;MACTD,OAAO,EAAE,QAAQ;MACjBE,MAAM,EAAE,MAAM;MACdC,KAAK,EAAE,MAAM;MACbC,UAAU,EAAE,GAAG;MACfC,SAAS,EAAE;IACf;EACJ;AACJ,CAAC,qBAAC;AAEF,IAAMC,eAAe,gBAAG,IAAAR,YAAG,EAAC;EACxBS,eAAe,EAAE;AACrB,CAAC,2BAAC;AAEF,IAAMC,iBAAiB,GAAG,0BAA0B;AAEpD,SAASC,SAASA,CAAA,EAAa;EAC3B,OAAO,CAACC,cAAY,CAACC,GAAG,CAACH,iBAAiB,CAAC,IAAI,EAAE,EAAEI,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;AACjF;AAEA,SAASC,UAAUA,CAACC,KAAe,EAAE;EACjCN,cAAY,CAACO,GAAG,CAACT,iBAAiB,EAAEQ,KAAK,CAACE,IAAI,CAAC,GAAG,CAAC,CAAC;AACxD;AAEA,SAASC,QAAQA,CAACC,EAAiB,EAAW;EAC1C,IAAI,CAACA,EAAE,EAAE;IACL,OAAO,KAAK;EAChB;EACA,IAAMJ,KAAK,GAAGP,SAAS,CAAC,CAAC;EACzB,OAAOO,KAAK,CAACK,QAAQ,CAACD,EAAE,CAAC;AAC7B;AAEO,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,YAAsB,EAAe;EACnE,OAAO,SAASC,SAASA,CAAA,EAAG;IACxB,IAAAC,cAAA,GAAuB,IAAAC,oBAAa,EAAC,CAAC;MAA9BC,UAAU,GAAAF,cAAA,CAAVE,UAAU;IAClB,IAAAC,YAAA,GAA4B,IAAAC,qBAAW,EAAC,CAAC;MAAjCC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;MAAEC,KAAK,GAAAH,YAAA,CAALG,KAAK;IACvB,IAAMC,YAAY,GAAGD,KAAK,KAAK,CAAC,IAAID,QAAQ,IAAIA,QAAQ,CAACG,QAAQ;IACjE,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EACtChB,QAAQ,CAACW,QAAQ,GAAGA,QAAQ,CAACM,IAAI,GAAG,IAAI,CAC5C,CAAC;MAAAC,UAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAL,SAAA;MAFMM,UAAU,GAAAH,UAAA;MAAEI,WAAW,GAAAJ,UAAA;IAI9B,IAAMK,QAAQ,GAAG,IAAAC,kBAAW,EAAC;MAAA,OAAMhB,UAAU,CAAC,KAAK,CAAC;IAAA,GAAE,EAAE,CAAC;IAEzD,IAAMiB,aAAa,GAAG,IAAAD,kBAAW,EAAC,YAAM;MACpC,IAAI,CAACb,QAAQ,EAAE;QACX;MACJ;MACA,IAAMd,KAAK,GAAGP,SAAS,CAAC,CAAC;MACzB,IAAI+B,UAAU,IAAIxB,KAAK,CAACK,QAAQ,CAACS,QAAQ,CAACM,IAAI,CAAC,EAAE;QAC7CpB,KAAK,CAAC6B,MAAM,CAAC7B,KAAK,CAAC8B,OAAO,CAAChB,QAAQ,CAACM,IAAI,CAAC,EAAE,CAAC,CAAC;MACjD;MAEA,IAAI,CAACI,UAAU,IAAI,CAACxB,KAAK,CAACK,QAAQ,CAACS,QAAQ,CAACM,IAAI,CAAC,EAAE;QAC/CpB,KAAK,CAAC+B,IAAI,CAACjB,QAAQ,CAACM,IAAI,CAAC;MAC7B;MAEAK,WAAW,CAAC,CAACD,UAAU,CAAC;MACxBzB,UAAU,CAACC,KAAK,CAAC;IACrB,CAAC,EAAE,CAACwB,UAAU,EAAEC,WAAW,CAAC,CAAC;IAE7B,IAAI,CAACT,YAAY,EAAE;MACf,oBAAO5D,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACzB,YAAY,MAAE,CAAC;IAC3B;IAEA,IAAI,CAACO,QAAQ,IAAI,CAACA,QAAQ,CAACG,QAAQ,CAACgB,MAAM,EAAE;MACxC,OAAO,IAAI;IACf;IAEA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,OAAwB,EAAyB;MAC/D,oBACI/E,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACpE,YAAA,CAAAwE,IAAI;QACDC,EAAE,EAAEvB,QAAQ,CAACwB,IAAI,IAAI,EAAG;QACxB,eAAaxB,QAAQ,CAACyB,MAAO;QAC7BC,OAAO,EAAE1B,QAAQ,CAAC0B,OAAO,IAAId;MAAS,GAErCS,OACC,CAAC;IAEf,CAAC;IAED,IAAMM,IAAI,gBACNrF,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAClE,KAAA,CAAA4E,IAAI;MAACC,SAAS,EAAE,IAAAC,mBAAU,EAAC/D,SAAS,MAAAgE,gBAAA,CAAAtB,OAAA,MAAKjC,eAAe,EAAGkC,UAAU,CAAE;IAAE,gBACtEpE,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAClE,KAAA,CAAAgF,QAAQ;MAAC,eAAahC,QAAQ,CAACyB,MAAO;MAACC,OAAO,EAAEZ;IAAc,GAC1Dd,QAAQ,CAACiC,IAAI,iBACV3F,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAClE,KAAA,CAAAkF,eAAe,qBACZ5F,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACjE,OAAA,CAAAkF,UAAU;MAACF,IAAI,EAAEjC,QAAQ,CAACiC;IAAK,CAAE,CACrB,CACpB,EAEAjC,QAAQ,CAACoC,KAAK,EAEdpC,QAAQ,CAACG,QAAQ,CAACgB,MAAM,gBACrB7E,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAClE,KAAA,CAAAqF,YAAY,qBACT/F,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACjE,OAAA,CAAAkF,UAAU;MAACF,IAAI,EAAEvB,UAAU,gBAAGpE,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAC/D,2BAAA,CAAAmF,cAAM,MAAE,CAAC,gBAAGhG,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAC9D,6BAAA,CAAAkF,cAAQ,MAAE;IAAE,CAAE,CACjD,CAAC,GACf,IACE,CACR,CACT;IAED,oBACIhG,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAAC5E,MAAA,CAAAiG,QAAQ,QACJvC,QAAQ,CAACwB,IAAI,GAAGJ,QAAQ,CAACO,IAAI,CAAC,GAAGA,IAAI,EACrC3B,QAAQ,CAACG,QAAQ,gBACd7D,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACtE,qBAAA,CAAA4F,UAAU;MAACC,EAAE,EAAE/B,UAAW;MAACgC,OAAO,EAAE,GAAI;MAACC,MAAM;MAACC,aAAa;IAAA,GACzD,UAAA1D,KAAK;MAAA,oBACF5C,MAAA,CAAAmE,OAAA,CAAAS,aAAA;QAAK2B,KAAK,MAAAC,cAAA,CAAArC,OAAA,MAAAqC,cAAA,CAAArC,OAAA,MAAOpD,YAAY,GAAKO,gBAAgB,CAACsB,KAAK,CAAC;MAAG,gBACxD5C,MAAA,CAAAmE,OAAA,CAAAS,aAAA,CAACnE,SAAA,CAAAgG,SAAS;QAACC,SAAS,EAAEhD,QAAQ,CAACG;MAAS,CAAE,CACzC,CAAC;IAAA,CAEF,CAAC,GACb,IACE,CAAC;EAEnB,CAAC;AACL,CAAC;AAAC8C,OAAA,CAAAzD,iBAAA,GAAAA,iBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["listItemStyle","css","MenuLinkRenderer","PrevMenuItem","MenuLink","useNavigation","setVisible","useMenuItem","menuItem","depth","hideMenu","useCallback","shouldRender","tags","includes","console","log","withLink","content","path","target","testId","onClick","item","icon","label"],"sources":["MenuLinkRenderer.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { css } from \"emotion\";\nimport { Link } from \"@webiny/react-router\";\nimport { ListItem, ListItemGraphic } from \"@webiny/ui/List\";\nimport { useMenuItem } from \"@webiny/app-admin\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { useNavigation } from \"../index\";\n\nconst listItemStyle = css`\n font-weight: 400 !important;\n\n .mdc-list &.mdc-list-item:hover {\n cursor: pointer;\n background-color: var(--mdc-theme-background);\n }\n`;\n\nexport const MenuLinkRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuLink() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n\n const hideMenu = useCallback(() => setVisible(false), []);\n const shouldRender =\n depth === 0 && (menuItem ? menuItem.tags || [] : []).includes(\"footer\");\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\n \"MenuLinkRenderer returning PrevMenuItem because missing menuItem variable.\"\n );\n return <PrevMenuItem />;\n }\n\n const withLink = (content: React.ReactNode): React.ReactElement => {\n return (\n <Link\n to={menuItem.path || \"\"}\n target={menuItem.target}\n data-testid={menuItem.testId}\n onClick={menuItem.onClick || hideMenu}\n >\n {content}\n </Link>\n );\n };\n\n const item = (\n <ListItem\n data-testid={menuItem.testId}\n ripple={false}\n className={listItemStyle}\n onClick={menuItem.onClick || hideMenu}\n >\n {menuItem.icon ? (\n <ListItemGraphic>\n <Icon icon={menuItem.icon} />\n </ListItemGraphic>\n ) : null}\n {menuItem.label}\n </ListItem>\n );\n\n return menuItem.path ? withLink(item) : item;\n };\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_reactRouter","_List","_appAdmin","_Icon","_index","listItemStyle","css","MenuLinkRenderer","PrevMenuItem","MenuLink","_useNavigation","useNavigation","setVisible","_useMenuItem","useMenuItem","menuItem","depth","hideMenu","useCallback","shouldRender","tags","includes","default","createElement","console","log","withLink","content","Link","to","path","target","testId","onClick","item","ListItem","ripple","className","icon","ListItemGraphic","Icon","label","exports"],"sources":["MenuLinkRenderer.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { css } from \"emotion\";\nimport { Link } from \"@webiny/react-router\";\nimport { ListItem, ListItemGraphic } from \"@webiny/ui/List\";\nimport { useMenuItem } from \"@webiny/app-admin\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { useNavigation } from \"../index\";\n\nconst listItemStyle = css`\n font-weight: 400 !important;\n\n .mdc-list &.mdc-list-item:hover {\n cursor: pointer;\n background-color: var(--mdc-theme-background);\n }\n`;\n\nexport const MenuLinkRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuLink() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n\n const hideMenu = useCallback(() => setVisible(false), []);\n const shouldRender =\n depth === 0 && (menuItem ? menuItem.tags || [] : []).includes(\"footer\");\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\n \"MenuLinkRenderer returning PrevMenuItem because missing menuItem variable.\"\n );\n return <PrevMenuItem />;\n }\n\n const withLink = (content: React.ReactNode): React.ReactElement => {\n return (\n <Link\n to={menuItem.path || \"\"}\n target={menuItem.target}\n data-testid={menuItem.testId}\n onClick={menuItem.onClick || hideMenu}\n >\n {content}\n </Link>\n );\n };\n\n const item = (\n <ListItem\n data-testid={menuItem.testId}\n ripple={false}\n className={listItemStyle}\n onClick={menuItem.onClick || hideMenu}\n >\n {menuItem.icon ? (\n <ListItemGraphic>\n <Icon icon={menuItem.icon} />\n </ListItemGraphic>\n ) : null}\n {menuItem.label}\n </ListItem>\n );\n\n return menuItem.path ? withLink(item) : item;\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAEA,IAAMO,aAAa,oBAAGC,YAAG,iJAOxB;AAEM,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,YAAsB,EAAe;EAClE,OAAO,SAASC,QAAQA,CAAA,EAAG;IACvB,IAAAC,cAAA,GAAuB,IAAAC,oBAAa,EAAC,CAAC;MAA9BC,UAAU,GAAAF,cAAA,CAAVE,UAAU;IAClB,IAAAC,YAAA,GAA4B,IAAAC,qBAAW,EAAC,CAAC;MAAjCC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;MAAEC,KAAK,GAAAH,YAAA,CAALG,KAAK;IAEvB,IAAMC,QAAQ,GAAG,IAAAC,kBAAW,EAAC;MAAA,OAAMN,UAAU,CAAC,KAAK,CAAC;IAAA,GAAE,EAAE,CAAC;IACzD,IAAMO,YAAY,GACdH,KAAK,KAAK,CAAC,IAAI,CAACD,QAAQ,GAAGA,QAAQ,CAACK,IAAI,IAAI,EAAE,GAAG,EAAE,EAAEC,QAAQ,CAAC,QAAQ,CAAC;IAE3E,IAAI,CAACF,YAAY,EAAE;MACf,oBAAOvB,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACf,YAAY,MAAE,CAAC;IAC3B,CAAC,MAAM,IAAI,CAACO,QAAQ,EAAE;MAClB;MACAS,OAAO,CAACC,GAAG,CACP,4EACJ,CAAC;MACD,oBAAO7B,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACf,YAAY,MAAE,CAAC;IAC3B;IAEA,IAAMkB,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,OAAwB,EAAyB;MAC/D,oBACI/B,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACvB,YAAA,CAAA4B,IAAI;QACDC,EAAE,EAAEd,QAAQ,CAACe,IAAI,IAAI,EAAG;QACxBC,MAAM,EAAEhB,QAAQ,CAACgB,MAAO;QACxB,eAAahB,QAAQ,CAACiB,MAAO;QAC7BC,OAAO,EAAElB,QAAQ,CAACkB,OAAO,IAAIhB;MAAS,GAErCU,OACC,CAAC;IAEf,CAAC;IAED,IAAMO,IAAI,gBACNtC,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACtB,KAAA,CAAAkC,QAAQ;MACL,eAAapB,QAAQ,CAACiB,MAAO;MAC7BI,MAAM,EAAE,KAAM;MACdC,SAAS,EAAEhC,aAAc;MACzB4B,OAAO,EAAElB,QAAQ,CAACkB,OAAO,IAAIhB;IAAS,GAErCF,QAAQ,CAACuB,IAAI,gBACV1C,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACtB,KAAA,CAAAsC,eAAe,qBACZ3C,MAAA,CAAA0B,OAAA,CAAAC,aAAA,CAACpB,KAAA,CAAAqC,IAAI;MAACF,IAAI,EAAEvB,QAAQ,CAACuB;IAAK,CAAE,CACf,CAAC,GAClB,IAAI,EACPvB,QAAQ,CAAC0B,KACJ,CACb;IAED,OAAO1B,QAAQ,CAACe,IAAI,GAAGJ,QAAQ,CAACQ,IAAI,CAAC,GAAGA,IAAI;EAChD,CAAC;AACL,CAAC;AAACQ,OAAA,CAAAnC,gBAAA,GAAAA,gBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["linkStyle","css","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","fontWeight","submenuItems","margin","padding","submenuList","MenuSectionItemRenderer","PrevMenuItem","MenuSectionItem","useNavigation","setVisible","useMenuItem","menuItem","depth","hideMenu","useCallback","shouldRender","Boolean","path","console","log","testId","onClick","label"],"sources":["MenuSectionItemRenderer.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { css } from \"emotion\";\nimport { Link } from \"@webiny/react-router\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { useNavigation } from \"../index\";\nimport { useMenuItem } from \"@webiny/app-admin\";\n\nconst linkStyle = css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n textDecoration: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n outline: \"none\",\n paddingLeft: 72,\n fontWeight: 400,\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst submenuItems = css({\n \".mdc-drawer &.mdc-list-item\": {\n paddingLeft: 0,\n margin: 0,\n padding: 0\n }\n});\n\nconst submenuList = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\nexport const MenuSectionItemRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuSectionItem() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n\n const hideMenu = useCallback(() => setVisible(false), []);\n const shouldRender = depth > 0 && Boolean(menuItem ? menuItem.path : false);\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\n \"MenuSectionItemRenderer returning PrevMenuItem because no menuItem variable.\"\n );\n return <PrevMenuItem />;\n }\n\n return (\n <List className={submenuList}>\n <ListItem className={submenuItems} data-testid={menuItem.testId}>\n {menuItem.path ? (\n <Link\n className={linkStyle}\n to={menuItem.path}\n onClick={menuItem.onClick || hideMenu}\n >\n {menuItem.label}\n </Link>\n ) : (\n <span\n onClick={() => {\n if (!menuItem.onClick) {\n return;\n }\n menuItem.onClick();\n }}\n className={linkStyle}\n >\n {menuItem.label}\n </span>\n )}\n </ListItem>\n </List>\n );\n };\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_reactRouter","_List","_index","_appAdmin","linkStyle","css","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","fontWeight","submenuItems","margin","padding","submenuList","MenuSectionItemRenderer","PrevMenuItem","MenuSectionItem","_useNavigation","useNavigation","setVisible","_useMenuItem","useMenuItem","menuItem","depth","hideMenu","useCallback","shouldRender","Boolean","path","default","createElement","console","log","List","className","ListItem","testId","Link","to","onClick","label","exports"],"sources":["MenuSectionItemRenderer.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { css } from \"emotion\";\nimport { Link } from \"@webiny/react-router\";\nimport { List, ListItem } from \"@webiny/ui/List\";\nimport { useNavigation } from \"../index\";\nimport { useMenuItem } from \"@webiny/app-admin\";\n\nconst linkStyle = css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n textDecoration: \"none\",\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n height: \"100%\",\n outline: \"none\",\n paddingLeft: 72,\n fontWeight: 400,\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst submenuItems = css({\n \".mdc-drawer &.mdc-list-item\": {\n paddingLeft: 0,\n margin: 0,\n padding: 0\n }\n});\n\nconst submenuList = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\nexport const MenuSectionItemRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuSectionItem() {\n const { setVisible } = useNavigation();\n const { menuItem, depth } = useMenuItem();\n\n const hideMenu = useCallback(() => setVisible(false), []);\n const shouldRender = depth > 0 && Boolean(menuItem ? menuItem.path : false);\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\n \"MenuSectionItemRenderer returning PrevMenuItem because no menuItem variable.\"\n );\n return <PrevMenuItem />;\n }\n\n return (\n <List className={submenuList}>\n <ListItem className={submenuItems} data-testid={menuItem.testId}>\n {menuItem.path ? (\n <Link\n className={linkStyle}\n to={menuItem.path}\n onClick={menuItem.onClick || hideMenu}\n >\n {menuItem.label}\n </Link>\n ) : (\n <span\n onClick={() => {\n if (!menuItem.onClick) {\n return;\n }\n menuItem.onClick();\n }}\n className={linkStyle}\n >\n {menuItem.label}\n </span>\n )}\n </ListItem>\n </List>\n );\n };\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["menuSectionTitle","css","marginLeft","display","alignItems","color","iconWrapper","marginRight","MenuSectionRenderer","PrevMenuItem","MenuSection","useMenuItem","menuItem","depth","shouldRender","children","length","console","log","icon","label"],"sources":["MenuSectionRenderer.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { css } from \"emotion\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { MenuItems, useMenuItem } from \"@webiny/app-admin\";\n\nconst menuSectionTitle = css({\n marginLeft: 20,\n display: \"flex\",\n alignItems: \"center\",\n color: \"var(--mdc-theme-on-surface)\"\n});\n\nconst iconWrapper = css({\n marginRight: 5,\n color: \"var(--mdc-theme-on-surface)\"\n});\n\nexport const MenuSectionRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuSection() {\n const { menuItem, depth } = useMenuItem();\n\n const shouldRender = depth === 1 && menuItem && menuItem.children.length > 0;\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\"MenuSectionRenderer returning PrevMenuItem because no menuItem variable.\");\n return <PrevMenuItem />;\n }\n\n if (!menuItem.children.length) {\n return null;\n }\n\n return (\n <Fragment>\n <div className={menuSectionTitle}>\n <div className={iconWrapper}>{menuItem.icon}</div>\n <Typography use=\"overline\">{menuItem.label}</Typography>\n </div>\n <MenuItems menuItems={menuItem.children} />\n </Fragment>\n );\n };\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_Typography","_appAdmin","menuSectionTitle","css","marginLeft","display","alignItems","color","iconWrapper","marginRight","MenuSectionRenderer","PrevMenuItem","MenuSection","_useMenuItem","useMenuItem","menuItem","depth","shouldRender","children","length","default","createElement","console","log","Fragment","className","icon","Typography","use","label","MenuItems","menuItems","exports"],"sources":["MenuSectionRenderer.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { css } from \"emotion\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { MenuItems, useMenuItem } from \"@webiny/app-admin\";\n\nconst menuSectionTitle = css({\n marginLeft: 20,\n display: \"flex\",\n alignItems: \"center\",\n color: \"var(--mdc-theme-on-surface)\"\n});\n\nconst iconWrapper = css({\n marginRight: 5,\n color: \"var(--mdc-theme-on-surface)\"\n});\n\nexport const MenuSectionRenderer = (PrevMenuItem: React.FC): React.FC => {\n return function MenuSection() {\n const { menuItem, depth } = useMenuItem();\n\n const shouldRender = depth === 1 && menuItem && menuItem.children.length > 0;\n\n if (!shouldRender) {\n return <PrevMenuItem />;\n } else if (!menuItem) {\n // TODO @ts-refactor check if to return component or null @pavel\n console.log(\"MenuSectionRenderer returning PrevMenuItem because no menuItem variable.\");\n return <PrevMenuItem />;\n }\n\n if (!menuItem.children.length) {\n return null;\n }\n\n return (\n <Fragment>\n <div className={menuSectionTitle}>\n <div className={iconWrapper}>{menuItem.icon}</div>\n <Typography use=\"overline\">{menuItem.label}</Typography>\n </div>\n <MenuItems menuItems={menuItem.children} />\n </Fragment>\n );\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAEA,IAAMI,gBAAgB,gBAAG,IAAAC,YAAG,EAAC;EACzBC,UAAU,EAAE,EAAE;EACdC,OAAO,EAAE,MAAM;EACfC,UAAU,EAAE,QAAQ;EACpBC,KAAK,EAAE;AACX,CAAC,4BAAC;AAEF,IAAMC,WAAW,gBAAG,IAAAL,YAAG,EAAC;EACpBM,WAAW,EAAE,CAAC;EACdF,KAAK,EAAE;AACX,CAAC,uBAAC;AAEK,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,YAAsB,EAAe;EACrE,OAAO,SAASC,WAAWA,CAAA,EAAG;IAC1B,IAAAC,YAAA,GAA4B,IAAAC,qBAAW,EAAC,CAAC;MAAjCC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;MAAEC,KAAK,GAAAH,YAAA,CAALG,KAAK;IAEvB,IAAMC,YAAY,GAAGD,KAAK,KAAK,CAAC,IAAID,QAAQ,IAAIA,QAAQ,CAACG,QAAQ,CAACC,MAAM,GAAG,CAAC;IAE5E,IAAI,CAACF,YAAY,EAAE;MACf,oBAAOrB,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACV,YAAY,MAAE,CAAC;IAC3B,CAAC,MAAM,IAAI,CAACI,QAAQ,EAAE;MAClB;MACAO,OAAO,CAACC,GAAG,CAAC,0EAA0E,CAAC;MACvF,oBAAO3B,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACV,YAAY,MAAE,CAAC;IAC3B;IAEA,IAAI,CAACI,QAAQ,CAACG,QAAQ,CAACC,MAAM,EAAE;MAC3B,OAAO,IAAI;IACf;IAEA,oBACIvB,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACzB,MAAA,CAAA4B,QAAQ,qBACL5B,MAAA,CAAAwB,OAAA,CAAAC,aAAA;MAAKI,SAAS,EAAEvB;IAAiB,gBAC7BN,MAAA,CAAAwB,OAAA,CAAAC,aAAA;MAAKI,SAAS,EAAEjB;IAAY,GAAEO,QAAQ,CAACW,IAAU,CAAC,eAClD9B,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACrB,WAAA,CAAA2B,UAAU;MAACC,GAAG,EAAC;IAAU,GAAEb,QAAQ,CAACc,KAAkB,CACtD,CAAC,eACNjC,MAAA,CAAAwB,OAAA,CAAAC,aAAA,CAACpB,SAAA,CAAA6B,SAAS;MAACC,SAAS,EAAEhB,QAAQ,CAACG;IAAS,CAAE,CACpC,CAAC;EAEnB,CAAC;AACL,CAAC;AAACc,OAAA,CAAAtB,mBAAA,GAAAA,mBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ContentWrapper","styled","display","paddingTop","textAlign","margin","styles","authErrorImgStyle","css","width","paddingBottom","bodyStyle","color","linkStyle","textDecoration","NotFoundHOC","NotFound","authErrorImg","NotFoundSpec"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Link } from \"@webiny/react-router\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Compose, NotFound as NotFoundSpec } from \"@webiny/app-admin\";\nimport authErrorImg from \"./SecureRouteError.svg\";\n\nconst ContentWrapper = styled(\"div\")({\n display: \"block\",\n paddingTop: \"15%\",\n textAlign: \"center\",\n margin: \"auto\"\n});\n\nconst styles = {\n authErrorImgStyle: css({\n width: \"192px\",\n paddingBottom: \"24px\"\n }),\n bodyStyle: css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n display: \"block\"\n }),\n linkStyle: css({\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"none\"\n }\n })\n};\n\nconst NotFoundHOC = (): React.FC => {\n return function NotFound() {\n return (\n <ContentWrapper>\n <img className={styles.authErrorImgStyle} src={authErrorImg} alt=\"Not Accessible\" />\n\n <Typography use={\"body1\"} className={styles.bodyStyle}>\n The route is either missing, or you're not authorized to view it.\n </Typography>\n\n <Typography use={\"body1\"} className={styles.bodyStyle}>\n Please contact your administrator to report the issue.\n </Typography>\n\n <Link to=\"/\" className={styles.linkStyle}>\n Take me back.\n </Link>\n </ContentWrapper>\n );\n };\n};\n\nexport const NotFound: React.FC = () => {\n return <Compose component={NotFoundSpec} with={NotFoundHOC} />;\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_emotion","_styled","_interopRequireDefault","_reactRouter","_Typography","_appAdmin","_SecureRouteError","ContentWrapper","styled","target","label","display","paddingTop","textAlign","margin","styles","authErrorImgStyle","css","width","paddingBottom","bodyStyle","color","linkStyle","textDecoration","NotFoundHOC","NotFound","createElement","className","src","authErrorImg","alt","Typography","use","Link","to","Compose","component","NotFoundSpec","with","exports"],"sources":["index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { css } from \"emotion\";\nimport styled from \"@emotion/styled\";\nimport { Link } from \"@webiny/react-router\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Compose, NotFound as NotFoundSpec } from \"@webiny/app-admin\";\nimport authErrorImg from \"./SecureRouteError.svg\";\n\nconst ContentWrapper = styled(\"div\")({\n display: \"block\",\n paddingTop: \"15%\",\n textAlign: \"center\",\n margin: \"auto\"\n});\n\nconst styles = {\n authErrorImgStyle: css({\n width: \"192px\",\n paddingBottom: \"24px\"\n }),\n bodyStyle: css({\n color: \"var(--mdc-theme-text-primary-on-background)\",\n display: \"block\"\n }),\n linkStyle: css({\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"none\"\n }\n })\n};\n\nconst NotFoundHOC = (): React.FC => {\n return function NotFound() {\n return (\n <ContentWrapper>\n <img className={styles.authErrorImgStyle} src={authErrorImg} alt=\"Not Accessible\" />\n\n <Typography use={\"body1\"} className={styles.bodyStyle}>\n The route is either missing, or you're not authorized to view it.\n </Typography>\n\n <Typography use={\"body1\"} className={styles.bodyStyle}>\n Please contact your administrator to report the issue.\n </Typography>\n\n <Link to=\"/\" className={styles.linkStyle}>\n Take me back.\n </Link>\n </ContentWrapper>\n );\n };\n};\n\nexport const NotFound: React.FC = () => {\n return <Compose component={NotFoundSpec} with={NotFoundHOC} />;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,iBAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAEA,IAAMQ,cAAc,oBAAGC,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EACjCC,OAAO,EAAE,OAAO;EAChBC,UAAU,EAAE,KAAK;EACjBC,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;AACZ,CAAC,CAAC;AAEF,IAAMC,MAAM,GAAG;EACXC,iBAAiB,eAAE,IAAAC,YAAG,EAAC;IACnBC,KAAK,EAAE,OAAO;IACdC,aAAa,EAAE;EACnB,CAAC,6BAAC;EACFC,SAAS,eAAE,IAAAH,YAAG,EAAC;IACXI,KAAK,EAAE,6CAA6C;IACpDV,OAAO,EAAE;EACb,CAAC,qBAAC;EACFW,SAAS,eAAE,IAAAL,YAAG,EAAC;IACXM,cAAc,EAAE,MAAM;IACtB,SAAS,EAAE;MACPA,cAAc,EAAE;IACpB;EACJ,CAAC;AACL,CAAC;AAED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAmB;EAChC,OAAO,SAASC,QAAQA,CAAA,EAAG;IACvB,oBACI5B,KAAA,CAAA6B,aAAA,CAACnB,cAAc,qBACXV,KAAA,CAAA6B,aAAA;MAAKC,SAAS,EAAEZ,MAAM,CAACC,iBAAkB;MAACY,GAAG,EAAEC,yBAAa;MAACC,GAAG,EAAC;IAAgB,CAAE,CAAC,eAEpFjC,KAAA,CAAA6B,aAAA,CAACtB,WAAA,CAAA2B,UAAU;MAACC,GAAG,EAAE,OAAQ;MAACL,SAAS,EAAEZ,MAAM,CAACK;IAAU,GAAC,mEAE3C,CAAC,eAEbvB,KAAA,CAAA6B,aAAA,CAACtB,WAAA,CAAA2B,UAAU;MAACC,GAAG,EAAE,OAAQ;MAACL,SAAS,EAAEZ,MAAM,CAACK;IAAU,GAAC,wDAE3C,CAAC,eAEbvB,KAAA,CAAA6B,aAAA,CAACvB,YAAA,CAAA8B,IAAI;MAACC,EAAE,EAAC,GAAG;MAACP,SAAS,EAAEZ,MAAM,CAACO;IAAU,GAAC,eAEpC,CACM,CAAC;EAEzB,CAAC;AACL,CAAC;AAEM,IAAMG,QAAkB,GAAG,SAArBA,QAAkBA,CAAA,EAAS;EACpC,oBAAO5B,KAAA,CAAA6B,aAAA,CAACrB,SAAA,CAAA8B,OAAO;IAACC,SAAS,EAAEC,kBAAa;IAACC,IAAI,EAAEd;EAAY,CAAE,CAAC;AAClE,CAAC;AAACe,OAAA,CAAAd,QAAA,GAAAA,QAAA"}
|
|
@@ -6,26 +6,35 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.DialogContainer = void 0;
|
|
9
|
+
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
9
11
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
-
var
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
|
+
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
12
15
|
var _useUi = require("@webiny/app/hooks/useUi");
|
|
13
16
|
var _Dialog = require("@webiny/ui/Dialog");
|
|
14
17
|
var _Button = require("@webiny/ui/Button");
|
|
15
18
|
var DialogContainer = function DialogContainer() {
|
|
19
|
+
var _ui$dialog;
|
|
16
20
|
var ui = (0, _useUi.useUi)();
|
|
17
|
-
var
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
var _useState = (0, _react.useState)(false),
|
|
22
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
23
|
+
isLoading = _useState2[0],
|
|
24
|
+
setIsLoading = _useState2[1];
|
|
25
|
+
var message = (0, _get2.default)(ui, "dialog.message");
|
|
26
|
+
var _get = (0, _get2.default)(ui, "dialog.options", {}),
|
|
27
|
+
dataTestId = _get.dataTestId,
|
|
28
|
+
title = _get.title,
|
|
29
|
+
loading = _get.loading,
|
|
30
|
+
_get$actions = _get.actions,
|
|
31
|
+
actions = _get$actions === void 0 ? {
|
|
23
32
|
cancel: null,
|
|
24
33
|
accept: {
|
|
25
34
|
label: "OK"
|
|
26
35
|
}
|
|
27
|
-
} :
|
|
28
|
-
style =
|
|
36
|
+
} : _get$actions,
|
|
37
|
+
style = _get.style;
|
|
29
38
|
var hideDialog = (0, _react.useCallback)(function () {
|
|
30
39
|
ui.setState(function (ui) {
|
|
31
40
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ui), {}, {
|
|
@@ -33,19 +42,55 @@ var DialogContainer = function DialogContainer() {
|
|
|
33
42
|
});
|
|
34
43
|
});
|
|
35
44
|
}, [ui]);
|
|
45
|
+
/**
|
|
46
|
+
* We need this part because message can change while the dialog is opened and in loading state.
|
|
47
|
+
*/
|
|
48
|
+
(0, _react.useEffect)(function () {
|
|
49
|
+
setIsLoading(false);
|
|
50
|
+
}, [ui === null || ui === void 0 ? void 0 : (_ui$dialog = ui.dialog) === null || _ui$dialog === void 0 ? void 0 : _ui$dialog.message]);
|
|
51
|
+
var handleConfirm = /*#__PURE__*/function () {
|
|
52
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
|
|
53
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
54
|
+
while (1) switch (_context.prev = _context.next) {
|
|
55
|
+
case 0:
|
|
56
|
+
if (actions.accept.onClick) {
|
|
57
|
+
_context.next = 4;
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Should not happen as users should define "accept.onClick" function, but just in case lets show the information.
|
|
62
|
+
* Possible to happen in development process.
|
|
63
|
+
*/
|
|
64
|
+
console.info("There is no actions.accept.onClick callback defined.");
|
|
65
|
+
hideDialog();
|
|
66
|
+
return _context.abrupt("return");
|
|
67
|
+
case 4:
|
|
68
|
+
setIsLoading(true);
|
|
69
|
+
_context.next = 7;
|
|
70
|
+
return actions.accept.onClick();
|
|
71
|
+
case 7:
|
|
72
|
+
setIsLoading(false);
|
|
73
|
+
hideDialog();
|
|
74
|
+
case 9:
|
|
75
|
+
case "end":
|
|
76
|
+
return _context.stop();
|
|
77
|
+
}
|
|
78
|
+
}, _callee);
|
|
79
|
+
}));
|
|
80
|
+
return function handleConfirm() {
|
|
81
|
+
return _ref.apply(this, arguments);
|
|
82
|
+
};
|
|
83
|
+
}();
|
|
36
84
|
return /*#__PURE__*/_react.default.createElement(_Dialog.Dialog, {
|
|
37
85
|
open: !!message,
|
|
38
86
|
onClose: hideDialog,
|
|
39
87
|
"data-testid": dataTestId,
|
|
40
88
|
style: style
|
|
41
|
-
}, title && /*#__PURE__*/_react.default.createElement(_Dialog.DialogTitle, null, title), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContent, null, message), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, actions.cancel && /*#__PURE__*/_react.default.createElement(_Dialog.DialogAccept, {
|
|
89
|
+
}, isLoading ? loading : null, title && /*#__PURE__*/_react.default.createElement(_Dialog.DialogTitle, null, title), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContent, null, message), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, actions.cancel && /*#__PURE__*/_react.default.createElement(_Dialog.DialogAccept, {
|
|
42
90
|
onClick: actions.cancel.onClick
|
|
43
91
|
}, actions.cancel.label), actions.accept && /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
|
|
44
92
|
"data-testid": "confirmationdialog-confirm-action",
|
|
45
|
-
onClick:
|
|
46
|
-
actions.accept.onClick();
|
|
47
|
-
hideDialog();
|
|
48
|
-
}
|
|
93
|
+
onClick: handleConfirm
|
|
49
94
|
}, actions.accept.label)));
|
|
50
95
|
};
|
|
51
96
|
exports.DialogContainer = DialogContainer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DialogContainer","ui","useUi","message","dataTestId","title","actions","cancel","accept","label","style","hideDialog","useCallback","setState","dialog","onClick"],"sources":["Dialog.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_get2","_interopRequireDefault","_useUi","_Dialog","_Button","DialogContainer","_ui$dialog","ui","useUi","_useState","useState","_useState2","_slicedToArray2","default","isLoading","setIsLoading","message","get","_get","dataTestId","title","loading","_get$actions","actions","cancel","accept","label","style","hideDialog","useCallback","setState","_objectSpread2","dialog","useEffect","handleConfirm","_ref","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","onClick","console","info","abrupt","stop","apply","arguments","createElement","Dialog","open","onClose","DialogTitle","DialogContent","DialogActions","DialogAccept","ButtonPrimary","exports"],"sources":["Dialog.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useUi } from \"@webiny/app/hooks/useUi\";\nimport { Dialog, DialogAccept, DialogActions, DialogContent, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\n\nexport const DialogContainer: React.FC = () => {\n const ui = useUi();\n const [isLoading, setIsLoading] = useState(false);\n const message: React.ReactNode = get(ui, \"dialog.message\");\n const {\n dataTestId,\n title,\n loading,\n actions = { cancel: null, accept: { label: \"OK\" } },\n style\n } = get(ui, \"dialog.options\", {});\n\n const hideDialog = useCallback(() => {\n ui.setState(ui => ({ ...ui, dialog: null }));\n }, [ui]);\n /**\n * We need this part because message can change while the dialog is opened and in loading state.\n */\n useEffect(() => {\n setIsLoading(false);\n }, [ui?.dialog?.message]);\n\n const handleConfirm = async () => {\n if (!actions.accept.onClick) {\n /**\n * Should not happen as users should define \"accept.onClick\" function, but just in case lets show the information.\n * Possible to happen in development process.\n */\n console.info(\"There is no actions.accept.onClick callback defined.\");\n hideDialog();\n return;\n }\n setIsLoading(true);\n await actions.accept.onClick();\n setIsLoading(false);\n hideDialog();\n };\n\n return (\n <Dialog open={!!message} onClose={hideDialog} data-testid={dataTestId} style={style}>\n {isLoading ? loading : null}\n {title && <DialogTitle>{title}</DialogTitle>}\n <DialogContent>{message}</DialogContent>\n <DialogActions>\n {actions.cancel && (\n <DialogAccept onClick={actions.cancel.onClick}>\n {actions.cancel.label}\n </DialogAccept>\n )}\n {actions.accept && (\n <ButtonPrimary\n data-testid={\"confirmationdialog-confirm-action\"}\n onClick={handleConfirm}\n >\n {actions.accept.label}\n </ButtonPrimary>\n )}\n </DialogActions>\n </Dialog>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
/// <reference types="react" />
|
|
3
|
+
/// <reference types="web" />
|
|
4
|
+
export declare const Dialog: import("@emotion/styled").StyledComponent<{
|
|
5
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
6
|
+
as?: import("react").ElementType<any> | undefined;
|
|
7
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.Dialog = void 0;
|
|
8
|
+
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
9
|
+
var Dialog = /*#__PURE__*/(0, _styled.default)("div", {
|
|
10
|
+
label: "Dialog",
|
|
11
|
+
target: "eruevcs0"
|
|
12
|
+
})("background-color:rgba(0,0,0,0.32);height:100%;width:100%;position:fixed;z-index:2312321;top:0;.dialog{position:fixed;top:350px;left:50%;transform:translate(-50%,-50%);background-color:white;width:700px;height:500px;z-index:auto;box-shadow:0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12);> ul{overflow-y:scroll;height:444px;margin-bottom:10px;> li{.section-title{bottom-bottom:1px solid var(--mdc-theme-on-background);padding:10px 15px 5px 15px;}ul{li{padding:10px 15px;cursor:pointer;&.focused{background-color:var(--mdc-theme-background);}.section-item-title{margin-bottom:3px;color:var(--mdc-theme-primary);}.section-item-description{color:var(--mdc-theme-text-primary-on-background);}}}}}}");
|
|
13
|
+
exports.Dialog = Dialog;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_styled","_interopRequireDefault","require","Dialog","styled","label","target","exports"],"sources":["Dialog.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\n\nexport const Dialog = styled.div`\n background-color: rgba(0, 0, 0, 0.32);\n height: 100%;\n width: 100%;\n position: fixed;\n z-index: 2312321;\n top: 0;\n\n .dialog {\n position: fixed;\n top: 350px;\n left: 50%;\n /* bring your own prefixes */\n transform: translate(-50%, -50%);\n background-color: white;\n width: 700px;\n height: 500px;\n z-index: auto;\n box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14),\n 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n\n > ul {\n overflow-y: scroll;\n height: 444px;\n margin-bottom: 10px;\n\n > li {\n .section-title {\n bottom-bottom: 1px solid var(--mdc-theme-on-background);\n padding: 10px 15px 5px 15px;\n }\n\n ul {\n li {\n padding: 10px 15px;\n cursor: pointer;\n\n &.focused {\n background-color: var(--mdc-theme-background);\n }\n\n .section-item-title {\n margin-bottom: 3px;\n color: var(--mdc-theme-primary);\n }\n\n .section-item-description {\n color: var(--mdc-theme-text-primary-on-background);\n }\n }\n }\n }\n }\n }\n`;\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,IAAMC,MAAM,oBAAGC,eAAM;EAAAC,KAAA;EAAAC,MAAA;AAAA,kvBAsD3B;AAACC,OAAA,CAAAJ,MAAA,GAAAA,MAAA"}
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.OmniSearch = void 0;
|
|
9
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _appAdmin = require("@webiny/app-admin");
|
|
14
|
+
var _reactRouter = require("@webiny/react-router");
|
|
15
|
+
var _utils = require("@webiny/app/utils");
|
|
16
|
+
var _search = require("@material-design-icons/svg/outlined/search.svg");
|
|
17
|
+
var _reactHotkeyz = require("react-hotkeyz");
|
|
18
|
+
var _Input = require("@webiny/ui/Input");
|
|
19
|
+
var _Typography = require("@webiny/ui/Typography");
|
|
20
|
+
var _Dialog = require("./OmniSearch/Dialog");
|
|
21
|
+
// @ts-ignore Library doesn't have types.
|
|
22
|
+
|
|
23
|
+
var getIndexedItemsList = function getIndexedItemsList(items) {
|
|
24
|
+
var lastUsedItemIndex = 0;
|
|
25
|
+
return items.map(function (itemsSection) {
|
|
26
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, itemsSection), {}, {
|
|
27
|
+
items: itemsSection.items.map(function (item) {
|
|
28
|
+
var index = lastUsedItemIndex++;
|
|
29
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
|
|
30
|
+
index: index
|
|
31
|
+
});
|
|
32
|
+
})
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
var getItemFromIndexedItemsList = function getItemFromIndexedItemsList(itemsSections, index) {
|
|
37
|
+
if (index < 0) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
for (var i = 0; i < itemsSections.length; i++) {
|
|
41
|
+
var itemsSection = itemsSections[i];
|
|
42
|
+
for (var j = 0; j < itemsSection.items.length; j++) {
|
|
43
|
+
var item = itemsSection.items[j];
|
|
44
|
+
if (item.index === index) {
|
|
45
|
+
return item;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
};
|
|
51
|
+
var OmniSearch = function OmniSearch() {
|
|
52
|
+
var _useState = (0, _react.useState)(false),
|
|
53
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
54
|
+
omniSearchVisible = _useState2[0],
|
|
55
|
+
setShowOmniSearch = _useState2[1];
|
|
56
|
+
var _useState3 = (0, _react.useState)(),
|
|
57
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
58
|
+
itemRender = _useState4[0],
|
|
59
|
+
setItemRender = _useState4[1];
|
|
60
|
+
var _useState5 = (0, _react.useState)(""),
|
|
61
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
62
|
+
filter = _useState6[0],
|
|
63
|
+
setFilter = _useState6[1];
|
|
64
|
+
var _useState7 = (0, _react.useState)(0),
|
|
65
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
66
|
+
focusedItemIndex = _useState8[0],
|
|
67
|
+
focusItemAtIndex = _useState8[1];
|
|
68
|
+
var _useNavigation = (0, _appAdmin.useNavigation)(),
|
|
69
|
+
menuItems = _useNavigation.menuItems;
|
|
70
|
+
var _useSnackbar = (0, _appAdmin.useSnackbar)(),
|
|
71
|
+
showSnackbar = _useSnackbar.showSnackbar;
|
|
72
|
+
var navigate = (0, _reactRouter.useNavigate)();
|
|
73
|
+
var showOmniSearch = (0, _react.useCallback)(function () {
|
|
74
|
+
setShowOmniSearch(true);
|
|
75
|
+
}, []);
|
|
76
|
+
var hideOmniSearch = (0, _react.useCallback)(function () {
|
|
77
|
+
setShowOmniSearch(false);
|
|
78
|
+
setItemRender(undefined);
|
|
79
|
+
setFilter("");
|
|
80
|
+
}, []);
|
|
81
|
+
var onFilter = (0, _react.useCallback)(function (searchString) {
|
|
82
|
+
setFilter(searchString);
|
|
83
|
+
focusItemAtIndex(0);
|
|
84
|
+
}, []);
|
|
85
|
+
var selectItem = (0, _react.useCallback)(function (item) {
|
|
86
|
+
if (item.link) {
|
|
87
|
+
navigate(item.link);
|
|
88
|
+
hideOmniSearch();
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
if (item.callback) {
|
|
92
|
+
item.callback();
|
|
93
|
+
hideOmniSearch();
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
if (item.render) {
|
|
97
|
+
setFilter("");
|
|
98
|
+
setItemRender(function () {
|
|
99
|
+
return item.render;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
}, []);
|
|
103
|
+
|
|
104
|
+
// TODO: should be pulled from registered plugins.
|
|
105
|
+
var fullItemsList = (0, _react.useMemo)(function () {
|
|
106
|
+
return [{
|
|
107
|
+
id: "apps",
|
|
108
|
+
title: "Apps",
|
|
109
|
+
items: (0, _toConsumableArray2.default)(menuItems.map(function (level1Item) {
|
|
110
|
+
return (0, _toConsumableArray2.default)(level1Item.children.map(function (level2Item) {
|
|
111
|
+
return (0, _toConsumableArray2.default)(level2Item.children.map(function (child) {
|
|
112
|
+
var description = [level1Item.label, level2Item.label].join(" / ");
|
|
113
|
+
return {
|
|
114
|
+
id: description + child.label,
|
|
115
|
+
title: child.label,
|
|
116
|
+
description: description,
|
|
117
|
+
link: child.path
|
|
118
|
+
};
|
|
119
|
+
}));
|
|
120
|
+
})).flat();
|
|
121
|
+
}).flat())
|
|
122
|
+
}, {
|
|
123
|
+
id: "other",
|
|
124
|
+
title: "Other",
|
|
125
|
+
items: [{
|
|
126
|
+
id: "back",
|
|
127
|
+
title: "← Back",
|
|
128
|
+
description: "Navigates to the previous page.",
|
|
129
|
+
callback: function callback() {
|
|
130
|
+
navigate(-1);
|
|
131
|
+
}
|
|
132
|
+
}]
|
|
133
|
+
}, (0, _utils.getTenantId)() && {
|
|
134
|
+
id: "development",
|
|
135
|
+
title: "Development",
|
|
136
|
+
items: [{
|
|
137
|
+
id: "copy-tenant-id",
|
|
138
|
+
title: "Copy current tenant ID",
|
|
139
|
+
description: "Copies current tenant ID into clipboard.",
|
|
140
|
+
callback: function callback() {
|
|
141
|
+
navigator.clipboard.writeText((0, _utils.getTenantId)());
|
|
142
|
+
showSnackbar("Tenant ID copied to clipboard.");
|
|
143
|
+
}
|
|
144
|
+
}]
|
|
145
|
+
}].filter(Boolean);
|
|
146
|
+
}, [menuItems]);
|
|
147
|
+
var filteredIndexedItemsList = (0, _react.useMemo)(function () {
|
|
148
|
+
if (!filter) {
|
|
149
|
+
return getIndexedItemsList(fullItemsList);
|
|
150
|
+
}
|
|
151
|
+
var filteredItems1stPass = fullItemsList.map(function (itemsSection) {
|
|
152
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, itemsSection), {}, {
|
|
153
|
+
items: itemsSection.items.filter(function (item) {
|
|
154
|
+
var _item$title;
|
|
155
|
+
return (_item$title = item.title) === null || _item$title === void 0 ? void 0 : _item$title.toLowerCase().includes(filter.toLowerCase());
|
|
156
|
+
})
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
var filteredItems2ndPass = filteredItems1stPass.filter(function (itemsSection) {
|
|
160
|
+
return itemsSection.items.length > 0;
|
|
161
|
+
});
|
|
162
|
+
return getIndexedItemsList(filteredItems2ndPass);
|
|
163
|
+
}, [fullItemsList, filter]);
|
|
164
|
+
var selectFocusedItem = (0, _react.useCallback)(function () {
|
|
165
|
+
var focusedItem = getItemFromIndexedItemsList(filteredIndexedItemsList, focusedItemIndex);
|
|
166
|
+
if (focusedItem) {
|
|
167
|
+
selectItem(focusedItem);
|
|
168
|
+
}
|
|
169
|
+
}, [filteredIndexedItemsList, focusedItemIndex]);
|
|
170
|
+
var focusNextItem = (0, _react.useCallback)(function () {
|
|
171
|
+
var nextIndex = focusedItemIndex + 1;
|
|
172
|
+
var itemToFocus = getItemFromIndexedItemsList(filteredIndexedItemsList, nextIndex);
|
|
173
|
+
if (itemToFocus) {
|
|
174
|
+
focusItemAtIndex(itemToFocus.index);
|
|
175
|
+
}
|
|
176
|
+
}, [filteredIndexedItemsList, focusedItemIndex]);
|
|
177
|
+
var focusPrevItem = (0, _react.useCallback)(function () {
|
|
178
|
+
var prevIndex = focusedItemIndex - 1;
|
|
179
|
+
var itemToFocus = getItemFromIndexedItemsList(filteredIndexedItemsList, prevIndex);
|
|
180
|
+
if (itemToFocus) {
|
|
181
|
+
focusItemAtIndex(itemToFocus.index);
|
|
182
|
+
}
|
|
183
|
+
}, [filteredIndexedItemsList, focusedItemIndex]);
|
|
184
|
+
(0, _reactHotkeyz.useHotkeys)({
|
|
185
|
+
zIndex: 1000,
|
|
186
|
+
keys: {
|
|
187
|
+
"mod+k": showOmniSearch,
|
|
188
|
+
esc: hideOmniSearch
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
(0, _reactHotkeyz.useHotkeys)({
|
|
192
|
+
zIndex: 1000,
|
|
193
|
+
keys: {
|
|
194
|
+
enter: selectFocusedItem,
|
|
195
|
+
arrowUp: focusPrevItem,
|
|
196
|
+
arrowDown: focusNextItem
|
|
197
|
+
},
|
|
198
|
+
disabled: !omniSearchVisible
|
|
199
|
+
});
|
|
200
|
+
if (!omniSearchVisible) {
|
|
201
|
+
return null;
|
|
202
|
+
}
|
|
203
|
+
var renderedResults = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Nothing to show.");
|
|
204
|
+
if (itemRender) {
|
|
205
|
+
renderedResults = itemRender();
|
|
206
|
+
} else if (filteredIndexedItemsList.length > 0) {
|
|
207
|
+
renderedResults = /*#__PURE__*/_react.default.createElement("ul", null, filteredIndexedItemsList.map(function (itemsSection) {
|
|
208
|
+
return /*#__PURE__*/_react.default.createElement("li", {
|
|
209
|
+
key: itemsSection.id
|
|
210
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
211
|
+
className: "section-title"
|
|
212
|
+
}, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
213
|
+
use: "overline"
|
|
214
|
+
}, itemsSection.title)), /*#__PURE__*/_react.default.createElement("div", {
|
|
215
|
+
className: "section-items"
|
|
216
|
+
}, /*#__PURE__*/_react.default.createElement("ul", null, itemsSection.items.map(function (item) {
|
|
217
|
+
var isFocused = item.index === focusedItemIndex;
|
|
218
|
+
return /*#__PURE__*/_react.default.createElement("li", {
|
|
219
|
+
className: isFocused ? "focused" : "",
|
|
220
|
+
key: item.id,
|
|
221
|
+
onClick: function onClick() {
|
|
222
|
+
return selectFocusedItem();
|
|
223
|
+
},
|
|
224
|
+
onMouseEnter: function onMouseEnter() {
|
|
225
|
+
return focusItemAtIndex(item.index);
|
|
226
|
+
}
|
|
227
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
228
|
+
className: "section-item-title"
|
|
229
|
+
}, item.title), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
230
|
+
use: "caption",
|
|
231
|
+
className: "section-item-description"
|
|
232
|
+
}, item.description));
|
|
233
|
+
}))));
|
|
234
|
+
}));
|
|
235
|
+
}
|
|
236
|
+
return /*#__PURE__*/_react.default.createElement(_Dialog.Dialog, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
237
|
+
className: "dialog"
|
|
238
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
239
|
+
className: "search-input"
|
|
240
|
+
}, /*#__PURE__*/_react.default.createElement(_Input.Input, {
|
|
241
|
+
icon: /*#__PURE__*/_react.default.createElement(_search.ReactComponent, null),
|
|
242
|
+
placeholder: "Search...",
|
|
243
|
+
autoFocus: true,
|
|
244
|
+
value: filter,
|
|
245
|
+
onChange: onFilter
|
|
246
|
+
})), renderedResults));
|
|
247
|
+
};
|
|
248
|
+
exports.OmniSearch = OmniSearch;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_appAdmin","_reactRouter","_utils","_search","_reactHotkeyz","_Input","_Typography","_Dialog","getIndexedItemsList","items","lastUsedItemIndex","map","itemsSection","_objectSpread2","default","item","index","getItemFromIndexedItemsList","itemsSections","i","length","j","OmniSearch","_useState","useState","_useState2","_slicedToArray2","omniSearchVisible","setShowOmniSearch","_useState3","_useState4","itemRender","setItemRender","_useState5","_useState6","filter","setFilter","_useState7","_useState8","focusedItemIndex","focusItemAtIndex","_useNavigation","useNavigation","menuItems","_useSnackbar","useSnackbar","showSnackbar","navigate","useNavigate","showOmniSearch","useCallback","hideOmniSearch","undefined","onFilter","searchString","selectItem","link","callback","render","fullItemsList","useMemo","id","title","_toConsumableArray2","level1Item","children","level2Item","child","description","label","join","path","flat","getTenantId","navigator","clipboard","writeText","Boolean","filteredIndexedItemsList","filteredItems1stPass","_item$title","toLowerCase","includes","filteredItems2ndPass","selectFocusedItem","focusedItem","focusNextItem","nextIndex","itemToFocus","focusPrevItem","prevIndex","useHotkeys","zIndex","keys","esc","enter","arrowUp","arrowDown","disabled","renderedResults","createElement","Fragment","key","className","Typography","use","isFocused","onClick","onMouseEnter","Dialog","Input","icon","ReactComponent","placeholder","autoFocus","value","onChange","exports"],"sources":["OmniSearch.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport { useNavigation } from \"@webiny/app-admin\";\nimport { useNavigate } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { getTenantId } from \"@webiny/app/utils\";\nimport { ReactComponent as SearchIcon } from \"@material-design-icons/svg/outlined/search.svg\";\n\n// @ts-ignore Library doesn't have types.\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nimport { Dialog } from \"./OmniSearch/Dialog\";\n\ninterface Item {\n id: string;\n title: string;\n description: string;\n link?: string;\n callback?: () => void | Promise<void>;\n render?: () => React.ReactElement;\n}\n\ninterface ItemsSection {\n id: string;\n title: string;\n items: Item[];\n}\n\ninterface IndexedItem extends Item {\n index: number;\n}\n\ninterface IndexedItemsSection extends Omit<ItemsSection, \"items\"> {\n id: string;\n title: string;\n items: IndexedItem[];\n}\n\nconst getIndexedItemsList = (items: ItemsSection[]): IndexedItemsSection[] => {\n let lastUsedItemIndex = 0;\n return items.map(itemsSection => {\n return {\n ...itemsSection,\n items: itemsSection.items.map(item => {\n const index = lastUsedItemIndex++;\n return {\n ...item,\n index\n };\n })\n };\n });\n};\n\nconst getItemFromIndexedItemsList = (\n itemsSections: IndexedItemsSection[],\n index: number\n): IndexedItem | null => {\n if (index < 0) {\n return null;\n }\n\n for (let i = 0; i < itemsSections.length; i++) {\n const itemsSection = itemsSections[i];\n for (let j = 0; j < itemsSection.items.length; j++) {\n const item = itemsSection.items[j];\n if (item.index === index) {\n return item;\n }\n }\n }\n\n return null;\n};\n\nexport const OmniSearch = () => {\n const [omniSearchVisible, setShowOmniSearch] = useState(false);\n const [itemRender, setItemRender] = useState<() => React.ReactElement>();\n const [filter, setFilter] = useState(\"\");\n const [focusedItemIndex, focusItemAtIndex] = useState(0);\n const { menuItems } = useNavigation();\n const { showSnackbar } = useSnackbar();\n const navigate = useNavigate();\n const showOmniSearch = useCallback(() => {\n setShowOmniSearch(true);\n }, []);\n\n const hideOmniSearch = useCallback(() => {\n setShowOmniSearch(false);\n setItemRender(undefined);\n setFilter(\"\");\n }, []);\n\n const onFilter = useCallback(searchString => {\n setFilter(searchString);\n focusItemAtIndex(0);\n }, []);\n\n const selectItem = useCallback((item: Item) => {\n if (item.link) {\n navigate(item.link);\n hideOmniSearch();\n return;\n }\n\n if (item.callback) {\n item.callback();\n hideOmniSearch();\n return;\n }\n\n if (item.render) {\n setFilter(\"\");\n setItemRender(() => item.render);\n }\n }, []);\n\n // TODO: should be pulled from registered plugins.\n const fullItemsList = useMemo<ItemsSection[]>(() => {\n return [\n {\n id: \"apps\",\n title: \"Apps\",\n items: [\n ...menuItems\n .map(level1Item => {\n return [\n ...level1Item.children.map(level2Item => {\n return [\n ...level2Item.children.map(child => {\n const description = [\n level1Item.label,\n level2Item.label\n ].join(\" / \");\n\n return {\n id: description + child.label,\n title: child.label!,\n description,\n link: child.path\n };\n })\n ];\n })\n ].flat();\n })\n .flat()\n ]\n },\n {\n id: \"other\",\n title: \"Other\",\n items: [\n {\n id: \"back\",\n title: \"← Back\",\n description: \"Navigates to the previous page.\",\n callback: () => {\n navigate(-1);\n }\n }\n ]\n },\n getTenantId() && {\n id: \"development\",\n title: \"Development\",\n items: [\n {\n id: \"copy-tenant-id\",\n title: \"Copy current tenant ID\",\n description: \"Copies current tenant ID into clipboard.\",\n callback: () => {\n navigator.clipboard.writeText(getTenantId()!);\n showSnackbar(\"Tenant ID copied to clipboard.\");\n }\n }\n ]\n }\n ].filter(Boolean) as ItemsSection[];\n }, [menuItems]);\n\n const filteredIndexedItemsList = useMemo(() => {\n if (!filter) {\n return getIndexedItemsList(fullItemsList);\n }\n\n const filteredItems1stPass = fullItemsList.map(itemsSection => {\n return {\n ...itemsSection,\n items: itemsSection.items.filter(item => {\n return item.title?.toLowerCase().includes(filter.toLowerCase());\n })\n };\n });\n\n const filteredItems2ndPass = filteredItems1stPass.filter(\n itemsSection => itemsSection.items.length > 0\n );\n\n return getIndexedItemsList(filteredItems2ndPass);\n }, [fullItemsList, filter]);\n\n const selectFocusedItem = useCallback(() => {\n const focusedItem = getItemFromIndexedItemsList(filteredIndexedItemsList, focusedItemIndex);\n if (focusedItem) {\n selectItem(focusedItem);\n }\n }, [filteredIndexedItemsList, focusedItemIndex]);\n\n const focusNextItem = useCallback(() => {\n const nextIndex = focusedItemIndex + 1;\n const itemToFocus = getItemFromIndexedItemsList(filteredIndexedItemsList, nextIndex);\n if (itemToFocus) {\n focusItemAtIndex(itemToFocus.index);\n }\n }, [filteredIndexedItemsList, focusedItemIndex]);\n\n const focusPrevItem = useCallback(() => {\n const prevIndex = focusedItemIndex - 1;\n const itemToFocus = getItemFromIndexedItemsList(filteredIndexedItemsList, prevIndex);\n if (itemToFocus) {\n focusItemAtIndex(itemToFocus.index);\n }\n }, [filteredIndexedItemsList, focusedItemIndex]);\n\n useHotkeys({\n zIndex: 1000,\n keys: {\n \"mod+k\": showOmniSearch,\n esc: hideOmniSearch\n }\n });\n\n useHotkeys({\n zIndex: 1000,\n keys: {\n enter: selectFocusedItem,\n arrowUp: focusPrevItem,\n arrowDown: focusNextItem\n },\n disabled: !omniSearchVisible\n });\n\n if (!omniSearchVisible) {\n return null;\n }\n\n let renderedResults = <>Nothing to show.</>;\n if (itemRender) {\n renderedResults = itemRender();\n } else if (filteredIndexedItemsList.length > 0) {\n renderedResults = (\n <ul>\n {filteredIndexedItemsList.map(itemsSection => (\n <li key={itemsSection.id}>\n <div className={\"section-title\"}>\n <Typography use={\"overline\"}>{itemsSection.title}</Typography>\n </div>\n <div className={\"section-items\"}>\n <ul>\n {itemsSection.items.map(item => {\n const isFocused = item.index === focusedItemIndex;\n return (\n <li\n className={isFocused ? \"focused\" : \"\"}\n key={item.id}\n onClick={() => selectFocusedItem()}\n onMouseEnter={() => focusItemAtIndex(item.index)}\n >\n <div className={\"section-item-title\"}>{item.title}</div>\n <Typography\n use={\"caption\"}\n className={\"section-item-description\"}\n >\n {item.description}\n </Typography>\n </li>\n );\n })}\n </ul>\n </div>\n </li>\n ))}\n </ul>\n );\n }\n\n return (\n <Dialog>\n <div className={\"dialog\"}>\n <div className={\"search-input\"}>\n <Input\n icon={<SearchIcon />}\n placeholder={\"Search...\"}\n autoFocus\n value={filter}\n onChange={onFilter}\n />\n </div>\n {renderedResults}\n </div>\n </Dialog>\n );\n};\n"],"mappings":"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"}
|
|
@@ -7,14 +7,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
-
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
11
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
11
|
var _Snackbar = require("@webiny/ui/Snackbar");
|
|
12
|
+
var _get = _interopRequireDefault(require("lodash/get"));
|
|
13
13
|
var _useUi = require("@webiny/app/hooks/useUi");
|
|
14
14
|
var SnackbarMain = function SnackbarMain() {
|
|
15
15
|
var ui = (0, _useUi.useUi)();
|
|
16
|
-
var message = (0,
|
|
17
|
-
var options = (0,
|
|
16
|
+
var message = (0, _get.default)(ui, "snackbar.message");
|
|
17
|
+
var options = (0, _get.default)(ui, "snackbar.options", {});
|
|
18
18
|
var hideSnackbar = (0, _react.useCallback)(function () {
|
|
19
19
|
ui.setState(function (ui) {
|
|
20
20
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ui), {}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SnackbarMain","ui","useUi","message","options","hideSnackbar","useCallback","setState","snackbar"],"sources":["Snackbar.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { Snackbar } from \"@webiny/ui/Snackbar\";\nimport
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_Snackbar","_get","_interopRequireDefault","_useUi","SnackbarMain","ui","useUi","message","get","options","hideSnackbar","useCallback","setState","_objectSpread2","default","snackbar","createElement","Snackbar","Object","assign","open","onClose","_default","exports"],"sources":["Snackbar.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { Snackbar } from \"@webiny/ui/Snackbar\";\nimport get from \"lodash/get\";\nimport { useUi } from \"@webiny/app/hooks/useUi\";\n\nconst SnackbarMain: React.FC = () => {\n const ui = useUi();\n const message: React.ReactNode = get(ui, \"snackbar.message\");\n const options: Record<string, any> = get(ui, \"snackbar.options\", {});\n\n const hideSnackbar = useCallback((): void => {\n ui.setState(ui => ({ ...ui, snackbar: null }));\n }, [ui]);\n\n return <Snackbar open={!!message} onClose={hideSnackbar} message={message} {...options} />;\n};\n\nexport default SnackbarMain;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAEA,IAAMK,YAAsB,GAAG,SAAzBA,YAAsBA,CAAA,EAAS;EACjC,IAAMC,EAAE,GAAG,IAAAC,YAAK,EAAC,CAAC;EAClB,IAAMC,OAAwB,GAAG,IAAAC,YAAG,EAACH,EAAE,EAAE,kBAAkB,CAAC;EAC5D,IAAMI,OAA4B,GAAG,IAAAD,YAAG,EAACH,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;EAEpE,IAAMK,YAAY,GAAG,IAAAC,kBAAW,EAAC,YAAY;IACzCN,EAAE,CAACO,QAAQ,CAAC,UAAAP,EAAE;MAAA,WAAAQ,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MAAUT,EAAE;QAAEU,QAAQ,EAAE;MAAI;IAAA,CAAG,CAAC;EAClD,CAAC,EAAE,CAACV,EAAE,CAAC,CAAC;EAER,oBAAOR,MAAA,CAAAiB,OAAA,CAAAE,aAAA,CAAChB,SAAA,CAAAiB,QAAQ,EAAAC,MAAA,CAAAC,MAAA;IAACC,IAAI,EAAE,CAAC,CAACb,OAAQ;IAACc,OAAO,EAAEX,YAAa;IAACH,OAAO,EAAEA;EAAQ,GAAKE,OAAO,CAAG,CAAC;AAC9F,CAAC;AAAC,IAAAa,QAAA,GAEalB,YAAY;AAAAmB,OAAA,CAAAT,OAAA,GAAAQ,QAAA"}
|
|
@@ -10,6 +10,8 @@ var _appAdmin = require("@webiny/app-admin/");
|
|
|
10
10
|
var _Snackbar = _interopRequireDefault(require("./Snackbar"));
|
|
11
11
|
var _Dialog = require("./Dialog");
|
|
12
12
|
var _base = require("@rmwc/base");
|
|
13
|
+
var _featureFlags = require("@webiny/feature-flags");
|
|
14
|
+
var _OmniSearch = require("./OmniSearch");
|
|
13
15
|
/**
|
|
14
16
|
* Dialogs, Menus and Snackbars require a container to be rendered, and we want to place it outside of
|
|
15
17
|
* any other views that are constructed by developers. We need these 2 containers to always be
|
|
@@ -23,7 +25,7 @@ var OverlaysHOC = function OverlaysHOC(Component) {
|
|
|
23
25
|
zIndex: 30,
|
|
24
26
|
position: "absolute"
|
|
25
27
|
}
|
|
26
|
-
}, /*#__PURE__*/_react.default.createElement(_Snackbar.default, null)), /*#__PURE__*/_react.default.createElement(_base.Portal, null), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContainer, null));
|
|
28
|
+
}, /*#__PURE__*/_react.default.createElement(_Snackbar.default, null)), /*#__PURE__*/_react.default.createElement(_base.Portal, null), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContainer, null), _featureFlags.featureFlags.experimentalAdminOmniSearch && /*#__PURE__*/_react.default.createElement(_OmniSearch.OmniSearch, null));
|
|
27
29
|
};
|
|
28
30
|
};
|
|
29
31
|
var Overlays = function Overlays() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OverlaysHOC","Component","Overlays","children","zIndex","position"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { Provider } from \"@webiny/app-admin/\";\nimport Snackbar from \"./Snackbar\";\nimport { DialogContainer } from \"./Dialog\";\nimport { Portal } from \"@rmwc/base\";\n\n/**\n * Dialogs, Menus and Snackbars require a container to be rendered, and we want to place it outside of\n * any other views that are constructed by developers. We need these 2 containers to always be\n * present, even if there is no <Layout> mounted.\n */\nconst OverlaysHOC = (Component: React.FC): React.FC => {\n return function Overlays({ children }) {\n return (\n <Component>\n {children}\n <div style={{ zIndex: 30, position: \"absolute\" }}>\n <Snackbar />\n </div>\n <Portal />\n <DialogContainer />\n </Component>\n );\n };\n};\n\nexport const Overlays: React.FC = () => {\n /**\n * TODO @ts-refactor @pavel\n */\n // @ts-ignore\n return <Provider hoc={OverlaysHOC} />;\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_appAdmin","_Snackbar","_Dialog","_base","_featureFlags","_OmniSearch","OverlaysHOC","Component","Overlays","_ref","children","default","createElement","style","zIndex","position","Portal","DialogContainer","featureFlags","experimentalAdminOmniSearch","OmniSearch","Provider","hoc","exports"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { Provider } from \"@webiny/app-admin/\";\nimport Snackbar from \"./Snackbar\";\nimport { DialogContainer } from \"./Dialog\";\nimport { Portal } from \"@rmwc/base\";\nimport { featureFlags } from \"@webiny/feature-flags\";\nimport { OmniSearch } from \"./OmniSearch\";\n\n/**\n * Dialogs, Menus and Snackbars require a container to be rendered, and we want to place it outside of\n * any other views that are constructed by developers. We need these 2 containers to always be\n * present, even if there is no <Layout> mounted.\n */\nconst OverlaysHOC = (Component: React.FC): React.FC => {\n return function Overlays({ children }) {\n return (\n <Component>\n {children}\n <div style={{ zIndex: 30, position: \"absolute\" }}>\n <Snackbar />\n </div>\n <Portal />\n <DialogContainer />\n {featureFlags.experimentalAdminOmniSearch && <OmniSearch />}\n </Component>\n );\n };\n};\n\nexport const Overlays: React.FC = () => {\n /**\n * TODO @ts-refactor @pavel\n */\n // @ts-ignore\n return <Provider hoc={OverlaysHOC} />;\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA,IAAMO,WAAW,GAAG,SAAdA,WAAWA,CAAIC,SAAmB,EAAe;EACnD,OAAO,SAASC,QAAQA,CAAAC,IAAA,EAAe;IAAA,IAAZC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAC/B,oBACIb,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACL,SAAS,QACLG,QAAQ,eACTb,MAAA,CAAAc,OAAA,CAAAC,aAAA;MAAKC,KAAK,EAAE;QAAEC,MAAM,EAAE,EAAE;QAAEC,QAAQ,EAAE;MAAW;IAAE,gBAC7ClB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACX,SAAA,CAAAU,OAAQ,MAAE,CACV,CAAC,eACNd,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACT,KAAA,CAAAa,MAAM,MAAE,CAAC,eACVnB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACV,OAAA,CAAAe,eAAe,MAAE,CAAC,EAClBC,0BAAY,CAACC,2BAA2B,iBAAItB,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACP,WAAA,CAAAe,UAAU,MAAE,CACnD,CAAC;EAEpB,CAAC;AACL,CAAC;AAEM,IAAMZ,QAAkB,GAAG,SAArBA,QAAkBA,CAAA,EAAS;EACpC;AACJ;AACA;EACI;EACA,oBAAOX,MAAA,CAAAc,OAAA,CAAAC,aAAA,CAACZ,SAAA,CAAAqB,QAAQ;IAACC,GAAG,EAAEhB;EAAY,CAAE,CAAC;AACzC,CAAC;AAACiB,OAAA,CAAAf,QAAA,GAAAA,QAAA"}
|
package/modules/Search/index.js
CHANGED
|
@@ -10,7 +10,6 @@ var _appAdmin = require("@webiny/app-admin");
|
|
|
10
10
|
var _SearchBar = _interopRequireDefault(require("@webiny/app-admin/plugins/globalSearch/SearchBar"));
|
|
11
11
|
// For the time being, import the existing component.
|
|
12
12
|
// TODO: implement a new SearchBar component
|
|
13
|
-
|
|
14
13
|
var SearchRenderer = function SearchRenderer() {
|
|
15
14
|
return function Search() {
|
|
16
15
|
return /*#__PURE__*/_react.default.createElement(_SearchBar.default, null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SearchRenderer","Search","SearchSpec"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { Compose, SearchRenderer as SearchSpec } from \"@webiny/app-admin\";\n\n// For the time being, import the existing component.\n// TODO: implement a new SearchBar component\nimport SearchBar from \"@webiny/app-admin/plugins/globalSearch/SearchBar\";\n\nconst SearchRenderer = (): React.FC => {\n return function Search() {\n return <SearchBar />;\n };\n};\n\nexport const Search: React.FC = () => {\n return <Compose component={SearchSpec} with={SearchRenderer} />;\n};\n"],"mappings":";;;;;;;AAAA;AACA;AAIA;AAFA;AACA
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_appAdmin","_SearchBar","SearchRenderer","Search","default","createElement","Compose","component","SearchSpec","with","exports"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { Compose, SearchRenderer as SearchSpec } from \"@webiny/app-admin\";\n\n// For the time being, import the existing component.\n// TODO: implement a new SearchBar component\nimport SearchBar from \"@webiny/app-admin/plugins/globalSearch/SearchBar\";\n\nconst SearchRenderer = (): React.FC => {\n return function Search() {\n return <SearchBar />;\n };\n};\n\nexport const Search: React.FC = () => {\n return <Compose component={SearchSpec} with={SearchRenderer} />;\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAIA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAFA;AACA;AAGA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAmB;EACnC,OAAO,SAASC,MAAMA,CAAA,EAAG;IACrB,oBAAON,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACJ,UAAA,CAAAG,OAAS,MAAE,CAAC;EACxB,CAAC;AACL,CAAC;AAEM,IAAMD,MAAgB,GAAG,SAAnBA,MAAgBA,CAAA,EAAS;EAClC,oBAAON,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACL,SAAA,CAAAM,OAAO;IAACC,SAAS,EAAEC,wBAAW;IAACC,IAAI,EAAEP;EAAe,CAAE,CAAC;AACnE,CAAC;AAACQ,OAAA,CAAAP,MAAA,GAAAA,MAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["UserMenuRendererImpl","UserMenu","security","useSecurity","useUserMenu","menuItems","identity","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_emotion","_appAdmin","_Menu","_List","_Icon","_reactRouter","_appSecurity","_Avatar","_components","_TopAppBar","UserMenuRendererImpl","UserMenu","security","useSecurity","_useUserMenu","useUserMenu","menuItems","identity","default","createElement","Menu","anchor","handle","TopAppBarActionItem","icon","UserMenuHandle","List","UserMenuItems","UserMenuHandleRendererImpl","_useSecurity","_ref","profile","firstName","lastName","avatar","gravatar","fullName","concat","Avatar","src","alt","fallbackText","renderImage","props","Image","Object","assign","transform","width","linkStyles","css","textDecoration","UserMenuItemRendererImpl","UserMenuItemRenderer","_useUserMenuItem","useUserMenuItem","label","path","onClick","element","Link","to","className","ListItem","ListItemGraphic","Icon","Fragment","Compose","component","UserMenuHandleRendererSpec","with","UserMenuRendererSpec","UserMenuItemRendererSpec","exports"],"sources":["index.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport { css } from \"emotion\";\nimport {\n Compose,\n UserMenuHandle,\n UserMenuHandleRenderer as UserMenuHandleRendererSpec,\n UserMenuRenderer as UserMenuRendererSpec,\n UserMenuItems,\n UserMenuItemRenderer as UserMenuItemRendererSpec,\n useUserMenuItem,\n useUserMenu\n} from \"@webiny/app-admin\";\nimport { Menu } from \"@webiny/ui/Menu\";\nimport { List, ListItem, ListItemGraphic } from \"@webiny/ui/List\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { Link } from \"@webiny/react-router\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { Avatar } from \"@webiny/ui/Avatar\";\nimport { Image } from \"@webiny/app/components\";\nimport { TopAppBarActionItem } from \"@webiny/ui/TopAppBar\";\n\nconst UserMenuRendererImpl = (): React.FC => {\n return function UserMenu() {\n const security = useSecurity();\n const { menuItems } = useUserMenu();\n\n if (!security || !security.identity) {\n return null;\n }\n\n return (\n <Menu anchor={\"topEnd\"} handle={<TopAppBarActionItem icon={<UserMenuHandle />} />}>\n <List data-testid=\"logged-in-user-menu-list\">\n <UserMenuItems menuItems={menuItems} />\n </List>\n </Menu>\n );\n };\n};\n\nconst UserMenuHandleRendererImpl = (): React.FC => {\n return function UserMenuHandle() {\n const { identity } = useSecurity();\n\n if (!identity) {\n return null;\n }\n\n const { firstName, lastName, avatar, gravatar } = identity.profile || {};\n const fullName = `${firstName} ${lastName}`;\n\n return (\n <Avatar\n data-testid=\"logged-in-user-menu-avatar\"\n src={avatar ? avatar.src : gravatar}\n alt={fullName}\n fallbackText={fullName}\n renderImage={props => <Image {...props} transform={{ width: 100 }} />}\n />\n );\n };\n};\n\nconst linkStyles = css({\n \"&:hover\": {\n textDecoration: \"none\"\n }\n});\n\nconst UserMenuItemRendererImpl = (): React.FC => {\n return function UserMenuItemRenderer() {\n const { label, path, icon, onClick, element } = useUserMenuItem();\n\n if (element) {\n return element;\n }\n\n if (path) {\n return (\n <Link to={path} className={linkStyles}>\n <ListItem>\n <ListItemGraphic>{icon ? <Icon icon={icon} /> : null}</ListItemGraphic>\n {label}\n </ListItem>\n </Link>\n );\n }\n\n return (\n <ListItem onClick={onClick}>\n <ListItemGraphic>{icon ? <Icon icon={icon} /> : null}</ListItemGraphic>\n {label}\n </ListItem>\n );\n };\n};\n\nexport const UserMenu: React.FC = () => {\n return (\n <Fragment>\n <Compose component={UserMenuHandleRendererSpec} with={UserMenuHandleRendererImpl} />\n <Compose component={UserMenuRendererSpec} with={UserMenuRendererImpl} />\n <Compose component={UserMenuItemRendererSpec} with={UserMenuItemRendererImpl} />\n </Fragment>\n );\n};\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/app-admin-rmwc",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.37.0-beta.1",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -9,36 +9,39 @@
|
|
|
9
9
|
"author": "Webiny Ltd.",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@babel/runtime": "7.
|
|
12
|
+
"@babel/runtime": "7.22.6",
|
|
13
13
|
"@emotion/styled": "11.10.6",
|
|
14
|
+
"@material-design-icons/svg": "0.12.1",
|
|
14
15
|
"@rmwc/base": "7.0.3",
|
|
15
16
|
"@rmwc/provider": "7.0.3",
|
|
16
17
|
"@types/react": "17.0.39",
|
|
17
|
-
"@webiny/app": "5.
|
|
18
|
-
"@webiny/app-admin": "5.
|
|
19
|
-
"@webiny/app-plugin-admin-welcome-screen": "5.
|
|
20
|
-
"@webiny/app-security": "5.
|
|
21
|
-
"@webiny/
|
|
22
|
-
"@webiny/
|
|
23
|
-
"@webiny/
|
|
18
|
+
"@webiny/app": "5.37.0-beta.1",
|
|
19
|
+
"@webiny/app-admin": "5.37.0-beta.1",
|
|
20
|
+
"@webiny/app-plugin-admin-welcome-screen": "5.37.0-beta.1",
|
|
21
|
+
"@webiny/app-security": "5.37.0-beta.1",
|
|
22
|
+
"@webiny/feature-flags": "5.37.0-beta.1",
|
|
23
|
+
"@webiny/plugins": "5.37.0-beta.1",
|
|
24
|
+
"@webiny/react-router": "5.37.0-beta.1",
|
|
25
|
+
"@webiny/ui": "5.37.0-beta.1",
|
|
24
26
|
"classnames": "2.3.2",
|
|
25
27
|
"emotion": "10.0.27",
|
|
26
28
|
"lodash": "4.17.21",
|
|
27
29
|
"react": "17.0.2",
|
|
28
30
|
"react-dom": "17.0.2",
|
|
29
31
|
"react-helmet": "6.1.0",
|
|
32
|
+
"react-hotkeyz": "1.0.4",
|
|
30
33
|
"react-transition-group": "4.4.5",
|
|
31
34
|
"store": "2.0.12"
|
|
32
35
|
},
|
|
33
36
|
"devDependencies": {
|
|
34
|
-
"@babel/cli": "7.
|
|
35
|
-
"@babel/core": "7.
|
|
36
|
-
"@babel/preset-env": "7.
|
|
37
|
-
"@babel/preset-react": "7.
|
|
38
|
-
"@babel/preset-typescript": "7.
|
|
37
|
+
"@babel/cli": "7.22.6",
|
|
38
|
+
"@babel/core": "7.22.8",
|
|
39
|
+
"@babel/preset-env": "7.22.7",
|
|
40
|
+
"@babel/preset-react": "7.22.5",
|
|
41
|
+
"@babel/preset-typescript": "7.22.5",
|
|
39
42
|
"@types/react-helmet": "6.1.6",
|
|
40
|
-
"@webiny/cli": "5.
|
|
41
|
-
"@webiny/project-utils": "5.
|
|
43
|
+
"@webiny/cli": "5.37.0-beta.1",
|
|
44
|
+
"@webiny/project-utils": "5.37.0-beta.1",
|
|
42
45
|
"babel-plugin-emotion": "9.2.11",
|
|
43
46
|
"babel-plugin-named-asset-import": "1.0.0-next.fb6e6f70",
|
|
44
47
|
"rimraf": "3.0.2",
|
|
@@ -58,5 +61,5 @@
|
|
|
58
61
|
"removeViewBox": false
|
|
59
62
|
}
|
|
60
63
|
},
|
|
61
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "176c29425477d1daaca1b7da79bacc79a1d35f6e"
|
|
62
65
|
}
|