@webiny/app-admin-rmwc 5.24.0 → 5.25.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/index.js.map +1 -0
  2. package/modules/Brand/index.js.map +1 -0
  3. package/modules/Dashboard/Welcome.js +3 -2
  4. package/modules/Dashboard/Welcome.js.map +1 -0
  5. package/modules/Dashboard/index.js.map +1 -0
  6. package/modules/Layout.d.ts +2 -2
  7. package/modules/Layout.js +4 -0
  8. package/modules/Layout.js.map +1 -0
  9. package/modules/Navigation/Hamburger.js.map +1 -0
  10. package/modules/Navigation/Styled.d.ts +2 -2
  11. package/modules/Navigation/Styled.js.map +1 -0
  12. package/modules/Navigation/index.d.ts +4 -0
  13. package/modules/Navigation/index.js +17 -6
  14. package/modules/Navigation/index.js.map +1 -0
  15. package/modules/Navigation/renderers/MenuElementRenderer.js +5 -1
  16. package/modules/Navigation/renderers/MenuElementRenderer.js.map +1 -0
  17. package/modules/Navigation/renderers/MenuGroupRenderer.js +12 -4
  18. package/modules/Navigation/renderers/MenuGroupRenderer.js.map +1 -0
  19. package/modules/Navigation/renderers/MenuLinkRenderer.js +6 -2
  20. package/modules/Navigation/renderers/MenuLinkRenderer.js.map +1 -0
  21. package/modules/Navigation/renderers/MenuSectionItemRenderer.js +12 -2
  22. package/modules/Navigation/renderers/MenuSectionItemRenderer.js.map +1 -0
  23. package/modules/Navigation/renderers/MenuSectionRenderer.js +5 -1
  24. package/modules/Navigation/renderers/MenuSectionRenderer.js.map +1 -0
  25. package/modules/NotFound/index.js.map +1 -0
  26. package/modules/Overlays/Dialog.js.map +1 -0
  27. package/modules/Overlays/Snackbar.js.map +1 -0
  28. package/modules/Overlays/index.js +4 -0
  29. package/modules/Overlays/index.js.map +1 -0
  30. package/modules/Search/index.js.map +1 -0
  31. package/modules/UserMenu/index.js.map +1 -0
  32. package/package.json +13 -12
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Fragment","Layout","Navigation","Brand","Search","UserMenu","Overlays","NotFound","Dashboard","RMWC"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,MAAT;AACA,SAASC,UAAT;AACA,SAASC,KAAT;AACA,SAASC,MAAT;AACA,SAASC,QAAT;AACA,SAASC,QAAT;AACA,SAASC,QAAT;AACA,SAASC,SAAT;AAEA,OAAO,IAAMC,IAAc,GAAG,SAAjBA,IAAiB,GAAM;AAChC,sBACI,oBAAC,QAAD,qBACI,oBAAC,MAAD,OADJ,eAEI,oBAAC,SAAD,OAFJ,eAGI,oBAAC,QAAD,OAHJ,eAII,oBAAC,KAAD,OAJJ,eAKI,oBAAC,UAAD,OALJ,eAMI,oBAAC,MAAD,OANJ,eAOI,oBAAC,QAAD,OAPJ,eAQI,oBAAC,QAAD,OARJ,CADJ;AAYH,CAbM","sourcesContent":["import React, { Fragment } from \"react\";\n\nimport { Layout } from \"./modules/Layout\";\nimport { Navigation } from \"./modules/Navigation\";\nimport { Brand } from \"./modules/Brand\";\nimport { Search } from \"~/modules/Search\";\nimport { UserMenu } from \"~/modules/UserMenu\";\nimport { Overlays } from \"./modules/Overlays\";\nimport { NotFound } from \"./modules/NotFound\";\nimport { Dashboard } from \"./modules/Dashboard\";\n\nexport const RMWC: React.FC = () => {\n return (\n <Fragment>\n <Layout />\n <Dashboard />\n <NotFound />\n <Brand />\n <Navigation />\n <Search />\n <UserMenu />\n <Overlays />\n </Fragment>\n );\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Fragment","useCallback","Compose","BrandRenderer","useTags","Logo","AddLogo","Link","ReactComponent","LogoIcon","useNavigation","BrandImpl","location","setVisible","onClick","WebinyLogo","isLoginScreen","isAppBar","color","width","height","paddingLeft","Brand"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,WAA1B,QAA6C,OAA7C;AACA,SACIC,OADJ,EAEIC,aAFJ,EAIIC,OAJJ,EAKIC,IALJ,EAMIC,OANJ,QAOO,mBAPP;AAQA,SAASC,IAAT,QAAqB,uBAArB;AACA,SAASC,cAAc,IAAIC,QAA3B;AACA,SAASC,aAAT;;AAEA,IAAMC,SAA+B,GAAG,SAAlCA,SAAkC,GAAM;AAC1C,SAAO,SAASR,aAAT,GAAyB;AAC5B,mBAAqBC,OAAO,EAA5B;AAAA,QAAQQ,QAAR,YAAQA,QAAR;;AACA,yBAAuBF,aAAa,EAApC;AAAA,QAAQG,UAAR,kBAAQA,UAAR;;AAEA,QAAMC,OAAO,GAAGb,WAAW,CAAC,YAAM;AAC9BW,MAAAA,QAAQ,KAAK,YAAb,GAA4BC,UAAU,CAAC,KAAD,CAAtC,GAAgD,IAAhD;AACH,KAF0B,EAExB,EAFwB,CAA3B;AAIA,wBACI,oBAAC,IAAD;AAAM,MAAA,EAAE,EAAE,GAAV;AAAe,MAAA,OAAO,EAAEC;AAAxB,oBACI,oBAAC,IAAD,OADJ,CADJ;AAKH,GAbD;AAcH,CAfD;;AAiBA,IAAMC,UAAoB,GAAG,SAAvBA,UAAuB,GAAM;AAC/B,kBAAqBX,OAAO,EAA5B;AAAA,MAAQQ,QAAR,aAAQA,QAAR;;AACA,MAAMI,aAAa,GAAGJ,QAAQ,KAAK,aAAnC;AACA,MAAMK,QAAQ,GAAGL,QAAQ,KAAK,QAA9B;AAEA,MAAMM,KAAK,GAAGD,QAAQ,GAAG,OAAH,GAAa,0BAAnC;AAEA,sBACI,oBAAC,QAAD;AACI,IAAA,KAAK,EAAE;AACHE,MAAAA,KAAK,EAAEH,aAAa,GAAG,GAAH,GAAS,GAD1B;AAEHI,MAAAA,MAAM,EAAEJ,aAAa,GAAG,MAAH,GAAY,EAF9B;AAGHK,MAAAA,WAAW,EAAEL,aAAa,GAAG,CAAH,GAAO,EAH9B;AAIHE,MAAAA,KAAK,EAALA;AAJG;AADX,IADJ;AAUH,CAjBD;;AAmBA,OAAO,IAAMI,KAAe,GAAG,SAAlBA,KAAkB,GAAM;AACjC,sBACI,oBAAC,QAAD,qBACI,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEnB,aAApB;AAAmC,IAAA,IAAI,EAAEQ;AAAzC,IADJ,eAEI,oBAAC,OAAD;AAAS,IAAA,IAAI,eAAE,oBAAC,UAAD;AAAf,IAFJ,CADJ;AAMH,CAPM","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\n const onClick = useCallback(() => {\n location === \"navigation\" ? setVisible(false) : null;\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\n const color = isAppBar ? \"white\" : \"var(--mdc-theme-primary)\";\n\n return (\n <LogoIcon\n style={{\n width: isLoginScreen ? 125 : 100,\n height: isLoginScreen ? \"auto\" : 30,\n paddingLeft: isLoginScreen ? 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"]}
@@ -93,7 +93,8 @@ var WelcomeScreenWidgetsWrapper = /*#__PURE__*/styled("div", {
93
93
 
94
94
  var Welcome = function Welcome() {
95
95
  var _useSecurity = useSecurity(),
96
- identity = _useSecurity.identity;
96
+ identity = _useSecurity.identity,
97
+ getPermission = _useSecurity.getPermission;
97
98
 
98
99
  if (!identity) {
99
100
  return null;
@@ -101,7 +102,7 @@ var Welcome = function Welcome() {
101
102
 
102
103
  var widgets = plugins.byType("admin-welcome-screen-widget").filter(function (pl) {
103
104
  if (pl.permission) {
104
- return identity.getPermission(pl.permission);
105
+ return getPermission(pl.permission);
105
106
  }
106
107
 
107
108
  return true;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Welcome.tsx"],"names":["React","css","styled","Link","SimpleForm","SimpleFormHeader","SimpleFormContent","SimpleFormFooter","useSecurity","plugins","Typography","Cell","Grid","Elevation","ReactComponent","YouTubeIcon","GithubIcon","SlackIcon","TwitterIcon","TextbookIcon","LaptopIcon","linkStyle","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","Widget","marginLeft","marginRight","WelcomeScreenWidgetsWrapper","justifyContent","flexDirection","Welcome","identity","getPermission","widgets","byType","filter","pl","permission","canSeeAnyWidget","length","displayName","map","name","widget","title","description","cta","visibility"],"mappings":"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","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 textAlign: \"center\"\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 marginLeft: \"1.5rem\",\n marginRight: \"1.5rem\",\n marginBottom: \"2rem\"\n});\n\nconst WelcomeScreenWidgetsWrapper = styled(\"div\")({\n display: \"flex\",\n justifyContent: \"center\",\n \"@media (max-width: 479px)\": {\n flexDirection: \"column\"\n }\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} style={{ padding: 10 }}>\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://docs.webiny.com/\"\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/WebinyPlatform\"\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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","CenteredView","Compose","DashboardRenderer","DashboardRendererSpec","Welcome","DashboardRendererHOC","Dashboard"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SACIC,YADJ,EAEIC,OAFJ,EAGIC,iBAAiB,IAAIC,qBAHzB,QAIO,mBAJP;AAKA,OAAOC,OAAP;;AAEA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,GAAgB;AACzC,SAAO,SAASH,iBAAT,GAA6B;AAChC,wBACI,oBAAC,YAAD;AAAc,MAAA,QAAQ,EAAE;AAAxB,oBACI,oBAAC,OAAD,OADJ,CADJ;AAKH,GAND;AAOH,CARD;;AAUA,OAAO,IAAMI,SAAmB,GAAG,SAAtBA,SAAsB,GAAM;AACrC,sBAAO,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEH,qBAApB;AAA2C,IAAA,IAAI,EAAEE;AAAjD,IAAP;AACH,CAFM","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"]}
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare const Layout: () => JSX.Element;
1
+ import React from "react";
2
+ export declare const Layout: React.FC;
package/modules/Layout.js CHANGED
@@ -38,6 +38,10 @@ var RMWCLayout = function RMWCLayout() {
38
38
  };
39
39
 
40
40
  export var Layout = function Layout() {
41
+ /**
42
+ * TODO @ts-refactor @pavel
43
+ */
44
+ // @ts-ignore
41
45
  return /*#__PURE__*/React.createElement(Compose, {
42
46
  component: LayoutRenderer,
43
47
  with: RMWCLayout
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Layout.tsx"],"names":["React","Fragment","Helmet","Compose","LayoutRenderer","Brand","Search","LocaleSelector","UserMenu","Navigation","Tags","TopAppBarPrimary","TopAppBarSection","RMWCLayout","title","children","location","width","paddingTop","Layout"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,OAAOC,MAAP,MAAmB,cAAnB;AACA,SACIC,OADJ,EAEIC,cAFJ,EAIIC,KAJJ,EAKIC,MALJ,EAMIC,cANJ,EAOIC,QAPJ,EAQIC,UARJ,EASIC,IATJ,QAUO,mBAVP;AAWA,SAASC,gBAAT,EAA2BC,gBAA3B,QAAmD,sBAAnD;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,GAA6B;AAC5C,SAAO,SAASA,UAAT,OAAyC;AAAA,QAAnBC,KAAmB,QAAnBA,KAAmB;AAAA,QAAZC,QAAY,QAAZA,QAAY;AAC5C,wBACI,oBAAC,QAAD,QACKD,KAAK,gBAAG,oBAAC,MAAD;AAAQ,MAAA,KAAK,EAAEA;AAAf,MAAH,GAA8B,IADxC,eAEI,oBAAC,IAAD;AAAM,MAAA,IAAI,EAAE;AAAEE,QAAAA,QAAQ,EAAE;AAAZ;AAAZ,oBACI,oBAAC,gBAAD;AAAkB,MAAA,KAAK;AAAvB,oBACI,oBAAC,gBAAD;AAAkB,MAAA,KAAK,EAAE;AAAEC,QAAAA,KAAK,EAAE;AAAT,OAAzB;AAA2C,MAAA,UAAU;AAArD,oBACI,oBAAC,KAAD,OADJ,CADJ,eAII,oBAAC,gBAAD;AAAkB,MAAA,KAAK,EAAE;AAAEA,QAAAA,KAAK,EAAE;AAAT;AAAzB,oBACI,oBAAC,MAAD,OADJ,CAJJ,eAOI,oBAAC,gBAAD;AAAkB,MAAA,KAAK,EAAE;AAAEA,QAAAA,KAAK,EAAE;AAAT,OAAzB;AAA2C,MAAA,QAAQ;AAAnD,oBACI,oBAAC,cAAD,OADJ,eAEI,oBAAC,QAAD,OAFJ,CAPJ,CADJ,CAFJ,eAgBI;AAAK,MAAA,KAAK,EAAE;AAAEC,QAAAA,UAAU,EAAE;AAAd;AAAZ,OAAiCH,QAAjC,CAhBJ,eAiBI,oBAAC,UAAD,OAjBJ,CADJ;AAqBH,GAtBD;AAuBH,CAxBD;;AA0BA,OAAO,IAAMI,MAAgB,GAAG,SAAnBA,MAAmB,GAAM;AAClC;AACJ;AACA;AACI;AACA,sBAAO,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEf,cAApB;AAAoC,IAAA,IAAI,EAAES;AAA1C,IAAP;AACH,CANM","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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Hamburger.tsx"],"names":["React","IconButton","ReactComponent","MenuIcon","useNavigation","useTags","Hamburger","location","visible","setVisible","color","undefined"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,QAA2B,mBAA3B;AACA,SAASC,cAAc,IAAIC,QAA3B;AACA,SAASC,aAAT;AACA,SAASC,OAAT,QAAwB,mBAAxB;;AAEA,IAAMC,SAAmB,GAAG,SAAtBA,SAAsB,GAAM;AAC9B,iBAAqBD,OAAO,EAA5B;AAAA,MAAQE,QAAR,YAAQA,QAAR;;AACA,uBAAgCH,aAAa,EAA7C;AAAA,MAAQI,OAAR,kBAAQA,OAAR;AAAA,MAAiBC,UAAjB,kBAAiBA,UAAjB;;AAEA,sBACI,oBAAC,UAAD;AACI,IAAA,IAAI,eAAE,oBAAC,QAAD;AAAU,MAAA,KAAK,EAAE;AAAEC,QAAAA,KAAK,EAAEH,QAAQ,KAAK,YAAb,GAA4BI,SAA5B,GAAwC;AAAjD;AAAjB,MADV;AAEI,IAAA,OAAO,EAAE;AAAA,aAAMF,UAAU,CAAC,CAACD,OAAF,CAAhB;AAAA,KAFb;AAGI,mBAAaD,QAAQ,KAAK,YAAb,GAA4BI,SAA5B,GAAwC;AAHzD,IADJ;AAOH,CAXD;;AAaA,eAAeL,SAAf","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 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"]}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- export declare const MenuHeader: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "hidden" | "dir" | "slot" | "style" | "title" | "color" | "translate" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
2
+ export declare const MenuHeader: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
3
3
  export declare const navHeader: string;
4
4
  export declare const navContent: string;
5
5
  export declare const logoStyle: string;
6
- export declare const MenuFooter: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "hidden" | "dir" | "slot" | "style" | "title" | "color" | "translate" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
6
+ export declare const MenuFooter: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement>, keyof import("react").HTMLAttributes<HTMLDivElement>>, object>;
7
7
  export declare const subFooter: string;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Styled.ts"],"names":["styled","css","MenuHeader","display","alignItems","padding","backgroundColor","borderBottom","navHeader","minHeight","navContent","logoStyle","paddingLeft","color","MenuFooter","borderTop","a","textDecoration","subFooter","margin"],"mappings":"AAAA,OAAOA,MAAP,MAAmB,iBAAnB;AACA,SAASC,GAAT,QAAoB,SAApB;AAEA,OAAO,IAAMC,UAAU,gBAAGF,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACpCG,EAAAA,OAAO,EAAE,MAD2B;AAEpCC,EAAAA,UAAU,EAAE,QAFwB;AAGpCC,EAAAA,OAAO,EAAE,CAH2B;AAIpCC,EAAAA,eAAe,EAAE,0BAJmB;AAKpCC,EAAAA,YAAY,EAAE;AALsB,CAAjB,CAAhB;AAQP,OAAO,IAAMC,SAAS,gBAAGP,GAAG,CAAC;AACzBI,EAAAA,OAAO,EAAE,CADgB;AAEzB,0BAAwB;AACpBA,IAAAA,OAAO,EAAE,cADW;AAEpBI,IAAAA,SAAS,EAAE;AAFS;AAFC,CAAD,qBAArB;AAQP,OAAO,IAAMC,UAAU,gBAAGT,GAAG,CAAC;AAC1BI,EAAAA,OAAO,EAAE;AADiB,CAAD,sBAAtB;AAIP,OAAO,IAAMM,SAAS,gBAAGV,GAAG,CAAC;AACzB,8BAA4B;AACxBW,IAAAA,WAAW,EAAE,EADW;AAExB,oBAAgB;AACZC,MAAAA,KAAK,EAAE;AADK;AAFQ;AADH,CAAD,qBAArB;AASP,OAAO,IAAMC,UAAU,gBAAGd,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACpCe,EAAAA,SAAS,EAAE,0CADyB;AAEpCC,EAAAA,CAAC,EAAE;AACCH,IAAAA,KAAK,EAAE,kCADR;AAECI,IAAAA,cAAc,EAAE;AAFjB;AAFiC,CAAjB,CAAhB;AAQP,OAAO,IAAMC,SAAS,gBAAGjB,GAAG,CAAC;AACzB,iCAA+B;AAC3Bc,IAAAA,SAAS,EAAE,0CADgB;AAE3BV,IAAAA,OAAO,EAAE,WAFkB;AAG3Bc,IAAAA,MAAM,EAAE;AAHmB;AADN,CAAD,qBAArB","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"]}
@@ -6,5 +6,9 @@ interface NavigationContext {
6
6
  declare const NavigationContext: React.Context<NavigationContext>;
7
7
  export declare function useNavigation(): NavigationContext;
8
8
  export declare const NavigationImpl: () => React.FC;
9
+ /**
10
+ * TODO @ts-refactor @pavel
11
+ * Remove all any and see what happens.
12
+ */
9
13
  export declare const Navigation: React.FC;
10
14
  export {};
@@ -12,7 +12,12 @@ import { MenuElementRenderer } from "./renderers/MenuElementRenderer";
12
12
  import { List, ListItem } from "@webiny/ui/List";
13
13
  import { MenuFooter, subFooter, MenuHeader, navHeader, navContent } from "./Styled";
14
14
  import { config as appConfig } from "@webiny/app/config";
15
- var NavigationContext = /*#__PURE__*/React.createContext(null);
15
+ var NavigationContext = /*#__PURE__*/React.createContext({
16
+ visible: false,
17
+ setVisible: function setVisible() {
18
+ return void 0;
19
+ }
20
+ });
16
21
  NavigationContext.displayName = "NavigationContext";
17
22
  export function useNavigation() {
18
23
  return useContext(NavigationContext);
@@ -22,7 +27,8 @@ var BrandImpl = function BrandImpl(Brand) {
22
27
  return function BrandWithHamburger() {
23
28
  return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Hamburger, null), /*#__PURE__*/React.createElement(Brand, null));
24
29
  };
25
- };
30
+ }; // TODO @ts-refactor
31
+
26
32
 
27
33
  var NavigationProvider = function NavigationProvider(Component) {
28
34
  // TODO @ts-refactor
@@ -58,12 +64,12 @@ export var NavigationImpl = function NavigationImpl() {
58
64
  }, []);
59
65
  var mainMenu = useMemo(function () {
60
66
  return menuItems.filter(function (m) {
61
- return !m.tags.includes("footer");
67
+ return !(m.tags || []).includes("footer");
62
68
  });
63
69
  }, [menuItems]);
64
70
  var footerMenu = useMemo(function () {
65
71
  return menuItems.filter(function (m) {
66
- return m.tags.includes("footer");
72
+ return (m.tags || []).includes("footer");
67
73
  });
68
74
  }, [menuItems]);
69
75
  var wbyVersion = appConfig.getKey("WEBINY_VERSION", process.env.REACT_APP_WEBINY_VERSION);
@@ -90,7 +96,7 @@ export var NavigationImpl = function NavigationImpl() {
90
96
 
91
97
  var menuSorter = function menuSorter(a, b) {
92
98
  if (a.pin === b.pin) {
93
- return a.label.localeCompare(b.label);
99
+ return (a.label || "").localeCompare(b.label || "");
94
100
  }
95
101
 
96
102
  if (a.pin) {
@@ -101,7 +107,7 @@ var menuSorter = function menuSorter(a, b) {
101
107
  return b.pin === "first" ? 1 : -1;
102
108
  }
103
109
 
104
- return a.label.localeCompare(b.label);
110
+ return (a.label || "").localeCompare(b.label || "");
105
111
  };
106
112
 
107
113
  var SortedMenuItems = function SortedMenuItems(MenuItems) {
@@ -112,6 +118,11 @@ var SortedMenuItems = function SortedMenuItems(MenuItems) {
112
118
  });
113
119
  };
114
120
  };
121
+ /**
122
+ * TODO @ts-refactor @pavel
123
+ * Remove all any and see what happens.
124
+ */
125
+
115
126
 
116
127
  export var Navigation = function Navigation() {
117
128
  return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Provider, {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Fragment","useCallback","useContext","useMemo","useState","Drawer","DrawerContent","DrawerHeader","Compose","Provider","NavigationRenderer","NavigationSpec","MenuItems","MenuItemRenderer","Brand","BrandSpec","useNavigation","useAdminNavigation","Hamburger","MenuGroupRenderer","MenuSectionItemRenderer","MenuSectionRenderer","MenuLinkRenderer","MenuElementRenderer","List","ListItem","MenuFooter","subFooter","MenuHeader","navHeader","navContent","config","appConfig","NavigationContext","createContext","visible","setVisible","displayName","BrandImpl","BrandWithHamburger","NavigationProvider","Component","props","context","NavigationImpl","Navigation","menuItems","hideDrawer","mainMenu","filter","m","tags","includes","footerMenu","wbyVersion","getKey","process","env","REACT_APP_WEBINY_VERSION","menuSorter","a","b","pin","label","localeCompare","SortedMenuItems","sort"],"mappings":"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","sourcesContent":["import React, { Fragment, useCallback, useContext, useMemo, useState } from \"react\";\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\";\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// TODO @ts-refactor\nconst NavigationProvider = (Component: React.FC<any>): React.FC => {\n // TODO @ts-refactor\n return function NavigationProvider(props: any) {\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 <Drawer 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 Webiny v{wbyVersion}\n </ListItem>\n </List>\n </MenuFooter>\n </Drawer>\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/**\n * TODO @ts-refactor @pavel\n * Remove all any and see what happens.\n */\nexport const Navigation: React.FC = () => {\n return (\n <Fragment>\n <Provider hoc={NavigationProvider} />\n <Compose component={NavigationSpec} with={NavigationImpl} />\n <Compose component={MenuItems as any} with={SortedMenuItems as any} />\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"]}
@@ -5,6 +5,10 @@ export var MenuElementRenderer = function MenuElementRenderer(PrevMenuItem) {
5
5
  var _useMenuItem = useMenuItem(),
6
6
  menuItem = _useMenuItem.menuItem;
7
7
 
8
- return menuItem.element || /*#__PURE__*/React.createElement(PrevMenuItem, null);
8
+ if (!menuItem || !menuItem.element) {
9
+ return /*#__PURE__*/React.createElement(PrevMenuItem, null);
10
+ }
11
+
12
+ return menuItem.element;
9
13
  };
10
14
  };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MenuElementRenderer.tsx"],"names":["React","useMenuItem","MenuElementRenderer","PrevMenuItem","MenuComponent","menuItem","element"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,WAAT,QAA4B,mBAA5B;AAEA,OAAO,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,YAAD,EAAsC;AACrE,SAAO,SAASC,aAAT,GAAyB;AAC5B,uBAAqBH,WAAW,EAAhC;AAAA,QAAQI,QAAR,gBAAQA,QAAR;;AACA,QAAI,CAACA,QAAD,IAAa,CAACA,QAAQ,CAACC,OAA3B,EAAoC;AAChC,0BAAO,oBAAC,YAAD,OAAP;AACH;;AAED,WAAOD,QAAQ,CAACC,OAAhB;AACH,GAPD;AAQH,CATM","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"]}
@@ -59,6 +59,10 @@ function storeState(state) {
59
59
  }
60
60
 
61
61
  function getState(id) {
62
+ if (!id) {
63
+ return false;
64
+ }
65
+
62
66
  var state = loadState();
63
67
  return state.includes(id);
64
68
  }
@@ -72,9 +76,9 @@ export var MenuGroupRenderer = function MenuGroupRenderer(PrevMenuItem) {
72
76
  menuItem = _useMenuItem.menuItem,
73
77
  depth = _useMenuItem.depth;
74
78
 
75
- var shouldRender = depth === 0 && menuItem.children;
79
+ var shouldRender = depth === 0 && menuItem && menuItem.children;
76
80
 
77
- var _useState = useState(getState(menuItem.name)),
81
+ var _useState = useState(getState(menuItem ? menuItem.name : null)),
78
82
  _useState2 = _slicedToArray(_useState, 2),
79
83
  isExpanded = _useState2[0],
80
84
  setExpanded = _useState2[1];
@@ -83,6 +87,10 @@ export var MenuGroupRenderer = function MenuGroupRenderer(PrevMenuItem) {
83
87
  return setVisible(false);
84
88
  }, []);
85
89
  var toggleElement = useCallback(function () {
90
+ if (!menuItem) {
91
+ return;
92
+ }
93
+
86
94
  var state = loadState();
87
95
 
88
96
  if (isExpanded && state.includes(menuItem.name)) {
@@ -101,13 +109,13 @@ export var MenuGroupRenderer = function MenuGroupRenderer(PrevMenuItem) {
101
109
  return /*#__PURE__*/React.createElement(PrevMenuItem, null);
102
110
  }
103
111
 
104
- if (!menuItem.children.length) {
112
+ if (!menuItem || !menuItem.children.length) {
105
113
  return null;
106
114
  }
107
115
 
108
116
  var withLink = function withLink(content) {
109
117
  return /*#__PURE__*/React.createElement(Link, {
110
- to: menuItem.path,
118
+ to: menuItem.path || "",
111
119
  "data-testid": menuItem.testId,
112
120
  onClick: menuItem.onClick || hideMenu
113
121
  }, content);
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MenuGroupRenderer.tsx"],"names":["React","Fragment","useCallback","useState","default","localStorage","css","Transition","classNames","Link","useMenuItem","MenuItems","List","ListItem","ListItemGraphic","ListItemMeta","IconButton","useNavigation","ReactComponent","UpIcon","DownIcon","defaultStyle","transform","opacity","transitionProperty","transitionTimingFunction","transitionDuration","willChange","transitionStyles","entering","entered","menuTitle","borderBottom","padding","margin","height","width","fontWeight","boxSizing","menuTitleActive","backgroundColor","LOCAL_STORAGE_KEY","loadState","get","split","filter","Boolean","storeState","state","set","join","getState","id","includes","MenuGroupRenderer","PrevMenuItem","MenuGroup","setVisible","menuItem","depth","shouldRender","children","name","isExpanded","setExpanded","hideMenu","toggleElement","splice","indexOf","push","length","withLink","content","path","testId","onClick","item","icon","label"],"mappings":"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","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"]}
@@ -23,15 +23,19 @@ export var MenuLinkRenderer = function MenuLinkRenderer(PrevMenuItem) {
23
23
  var hideMenu = useCallback(function () {
24
24
  return setVisible(false);
25
25
  }, []);
26
- var shouldRender = depth === 0 && menuItem.tags.includes("footer");
26
+ var shouldRender = depth === 0 && (menuItem ? menuItem.tags || [] : []).includes("footer");
27
27
 
28
28
  if (!shouldRender) {
29
29
  return /*#__PURE__*/React.createElement(PrevMenuItem, null);
30
+ } else if (!menuItem) {
31
+ // TODO @ts-refactor check if to return component or null @pavel
32
+ console.log("MenuLinkRenderer returning PrevMenuItem because missing menuItem variable.");
33
+ return /*#__PURE__*/React.createElement(PrevMenuItem, null);
30
34
  }
31
35
 
32
36
  var withLink = function withLink(content) {
33
37
  return /*#__PURE__*/React.createElement(Link, {
34
- to: menuItem.path,
38
+ to: menuItem.path || "",
35
39
  target: menuItem.target,
36
40
  "data-testid": menuItem.testId,
37
41
  onClick: menuItem.onClick || hideMenu
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MenuLinkRenderer.tsx"],"names":["React","useCallback","css","Link","ListItem","ListItemGraphic","useMenuItem","Icon","useNavigation","listItemStyle","cursor","backgroundColor","MenuLinkRenderer","PrevMenuItem","MenuLink","setVisible","menuItem","depth","hideMenu","shouldRender","tags","includes","console","log","withLink","content","path","target","testId","onClick","item","icon","label"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,WAAhB,QAAmC,OAAnC;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,SAASC,IAAT,QAAqB,sBAArB;AACA,SAASC,QAAT,EAAmBC,eAAnB,QAA0C,iBAA1C;AACA,SAASC,WAAT,QAA4B,mBAA5B;AACA,SAASC,IAAT,QAAqB,iBAArB;AACA,SAASC,aAAT;AAEA,IAAMC,aAAa,gBAAGP,GAAG,CAAC;AACtB,qCAAmC;AAC/BQ,IAAAA,MAAM,EAAE,SADuB;AAE/BC,IAAAA,eAAe,EAAE;AAFc;AADb,CAAD,yBAAzB;AAOA,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,YAAD,EAAsC;AAClE,SAAO,SAASC,QAAT,GAAoB;AACvB,yBAAuBN,aAAa,EAApC;AAAA,QAAQO,UAAR,kBAAQA,UAAR;;AACA,uBAA4BT,WAAW,EAAvC;AAAA,QAAQU,QAAR,gBAAQA,QAAR;AAAA,QAAkBC,KAAlB,gBAAkBA,KAAlB;;AAEA,QAAMC,QAAQ,GAAGjB,WAAW,CAAC;AAAA,aAAMc,UAAU,CAAC,KAAD,CAAhB;AAAA,KAAD,EAA0B,EAA1B,CAA5B;AACA,QAAMI,YAAY,GACdF,KAAK,KAAK,CAAV,IAAe,CAACD,QAAQ,GAAGA,QAAQ,CAACI,IAAT,IAAiB,EAApB,GAAyB,EAAlC,EAAsCC,QAAtC,CAA+C,QAA/C,CADnB;;AAGA,QAAI,CAACF,YAAL,EAAmB;AACf,0BAAO,oBAAC,YAAD,OAAP;AACH,KAFD,MAEO,IAAI,CAACH,QAAL,EAAe;AAClB;AACAM,MAAAA,OAAO,CAACC,GAAR,CACI,4EADJ;AAGA,0BAAO,oBAAC,YAAD,OAAP;AACH;;AAED,QAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAkD;AAC/D,0BACI,oBAAC,IAAD;AACI,QAAA,EAAE,EAAET,QAAQ,CAACU,IAAT,IAAiB,EADzB;AAEI,QAAA,MAAM,EAAEV,QAAQ,CAACW,MAFrB;AAGI,uBAAaX,QAAQ,CAACY,MAH1B;AAII,QAAA,OAAO,EAAEZ,QAAQ,CAACa,OAAT,IAAoBX;AAJjC,SAMKO,OANL,CADJ;AAUH,KAXD;;AAaA,QAAMK,IAAI,gBACN,oBAAC,QAAD;AACI,qBAAad,QAAQ,CAACY,MAD1B;AAEI,MAAA,MAAM,EAAE,KAFZ;AAGI,MAAA,SAAS,EAAEnB,aAHf;AAII,MAAA,OAAO,EAAEO,QAAQ,CAACa,OAAT,IAAoBX;AAJjC,OAMKF,QAAQ,CAACe,IAAT,gBACG,oBAAC,eAAD,qBACI,oBAAC,IAAD;AAAM,MAAA,IAAI,EAAEf,QAAQ,CAACe;AAArB,MADJ,CADH,GAIG,IAVR,EAWKf,QAAQ,CAACgB,KAXd,CADJ;AAgBA,WAAOhB,QAAQ,CAACU,IAAT,GAAgBF,QAAQ,CAACM,IAAD,CAAxB,GAAiCA,IAAxC;AACH,GAhDD;AAiDH,CAlDM","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 \".mdc-list &.mdc-list-item:hover\": {\n cursor: \"pointer\",\n backgroundColor: \"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"]}
@@ -41,10 +41,14 @@ export var MenuSectionItemRenderer = function MenuSectionItemRenderer(PrevMenuIt
41
41
  var hideMenu = useCallback(function () {
42
42
  return setVisible(false);
43
43
  }, []);
44
- var shouldRender = depth > 0 && Boolean(menuItem.path);
44
+ var shouldRender = depth > 0 && Boolean(menuItem ? menuItem.path : false);
45
45
 
46
46
  if (!shouldRender) {
47
47
  return /*#__PURE__*/React.createElement(PrevMenuItem, null);
48
+ } else if (!menuItem) {
49
+ // TODO @ts-refactor check if to return component or null @pavel
50
+ console.log("MenuSectionItemRenderer returning PrevMenuItem because no menuItem variable.");
51
+ return /*#__PURE__*/React.createElement(PrevMenuItem, null);
48
52
  }
49
53
 
50
54
  return /*#__PURE__*/React.createElement(List, {
@@ -57,7 +61,13 @@ export var MenuSectionItemRenderer = function MenuSectionItemRenderer(PrevMenuIt
57
61
  to: menuItem.path,
58
62
  onClick: menuItem.onClick || hideMenu
59
63
  }, menuItem.label) : /*#__PURE__*/React.createElement("span", {
60
- onClick: menuItem.onClick || null,
64
+ onClick: function onClick() {
65
+ if (!menuItem.onClick) {
66
+ return;
67
+ }
68
+
69
+ menuItem.onClick();
70
+ },
61
71
  className: linkStyle
62
72
  }, menuItem.label)));
63
73
  };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MenuSectionItemRenderer.tsx"],"names":["React","useCallback","css","Link","List","ListItem","useNavigation","useMenuItem","linkStyle","color","textDecoration","display","alignItems","width","height","outline","paddingLeft","submenuItems","margin","padding","submenuList","MenuSectionItemRenderer","PrevMenuItem","MenuSectionItem","setVisible","menuItem","depth","hideMenu","shouldRender","Boolean","path","console","log","testId","onClick","label"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,WAAhB,QAAmC,OAAnC;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,SAASC,IAAT,QAAqB,sBAArB;AACA,SAASC,IAAT,EAAeC,QAAf,QAA+B,iBAA/B;AACA,SAASC,aAAT;AACA,SAASC,WAAT,QAA4B,mBAA5B;AAEA,IAAMC,SAAS,gBAAGN,GAAG,CAAC;AAClBO,EAAAA,KAAK,EAAE,6CADW;AAElBC,EAAAA,cAAc,EAAE,MAFE;AAGlBC,EAAAA,OAAO,EAAE,MAHS;AAIlBC,EAAAA,UAAU,EAAE,QAJM;AAKlBC,EAAAA,KAAK,EAAE,MALW;AAMlBC,EAAAA,MAAM,EAAE,MANU;AAOlBC,EAAAA,OAAO,EAAE,MAPS;AAQlBC,EAAAA,WAAW,EAAE,EARK;AASlB,aAAW;AACPN,IAAAA,cAAc,EAAE;AADT;AATO,CAAD,qBAArB;AAcA,IAAMO,YAAY,gBAAGf,GAAG,CAAC;AACrB,iCAA+B;AAC3Bc,IAAAA,WAAW,EAAE,CADc;AAE3BE,IAAAA,MAAM,EAAE,CAFmB;AAG3BC,IAAAA,OAAO,EAAE;AAHkB;AADV,CAAD,wBAAxB;AAQA,IAAMC,WAAW,gBAAGlB,GAAG,CAAC;AACpB,gBAAc;AACViB,IAAAA,OAAO,EAAE;AADC;AADM,CAAD,uBAAvB;AAMA,OAAO,IAAME,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,YAAD,EAAsC;AACzE,SAAO,SAASC,eAAT,GAA2B;AAC9B,yBAAuBjB,aAAa,EAApC;AAAA,QAAQkB,UAAR,kBAAQA,UAAR;;AACA,uBAA4BjB,WAAW,EAAvC;AAAA,QAAQkB,QAAR,gBAAQA,QAAR;AAAA,QAAkBC,KAAlB,gBAAkBA,KAAlB;;AAEA,QAAMC,QAAQ,GAAG1B,WAAW,CAAC;AAAA,aAAMuB,UAAU,CAAC,KAAD,CAAhB;AAAA,KAAD,EAA0B,EAA1B,CAA5B;AACA,QAAMI,YAAY,GAAGF,KAAK,GAAG,CAAR,IAAaG,OAAO,CAACJ,QAAQ,GAAGA,QAAQ,CAACK,IAAZ,GAAmB,KAA5B,CAAzC;;AAEA,QAAI,CAACF,YAAL,EAAmB;AACf,0BAAO,oBAAC,YAAD,OAAP;AACH,KAFD,MAEO,IAAI,CAACH,QAAL,EAAe;AAClB;AACAM,MAAAA,OAAO,CAACC,GAAR,CACI,8EADJ;AAGA,0BAAO,oBAAC,YAAD,OAAP;AACH;;AAED,wBACI,oBAAC,IAAD;AAAM,MAAA,SAAS,EAAEZ;AAAjB,oBACI,oBAAC,QAAD;AAAU,MAAA,SAAS,EAAEH,YAArB;AAAmC,qBAAaQ,QAAQ,CAACQ;AAAzD,OACKR,QAAQ,CAACK,IAAT,gBACG,oBAAC,IAAD;AACI,MAAA,SAAS,EAAEtB,SADf;AAEI,MAAA,EAAE,EAAEiB,QAAQ,CAACK,IAFjB;AAGI,MAAA,OAAO,EAAEL,QAAQ,CAACS,OAAT,IAAoBP;AAHjC,OAKKF,QAAQ,CAACU,KALd,CADH,gBASG;AACI,MAAA,OAAO,EAAE,mBAAM;AACX,YAAI,CAACV,QAAQ,CAACS,OAAd,EAAuB;AACnB;AACH;;AACDT,QAAAA,QAAQ,CAACS,OAAT;AACH,OANL;AAOI,MAAA,SAAS,EAAE1B;AAPf,OASKiB,QAAQ,CAACU,KATd,CAVR,CADJ,CADJ;AA2BH,GA5CD;AA6CH,CA9CM","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 \"&: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"]}
@@ -18,10 +18,14 @@ export var MenuSectionRenderer = function MenuSectionRenderer(PrevMenuItem) {
18
18
  menuItem = _useMenuItem.menuItem,
19
19
  depth = _useMenuItem.depth;
20
20
 
21
- var shouldRender = depth === 1 && menuItem.children.length > 0;
21
+ var shouldRender = depth === 1 && menuItem && menuItem.children.length > 0;
22
22
 
23
23
  if (!shouldRender) {
24
24
  return /*#__PURE__*/React.createElement(PrevMenuItem, null);
25
+ } else if (!menuItem) {
26
+ // TODO @ts-refactor check if to return component or null @pavel
27
+ console.log("MenuSectionRenderer returning PrevMenuItem because no menuItem variable.");
28
+ return /*#__PURE__*/React.createElement(PrevMenuItem, null);
25
29
  }
26
30
 
27
31
  if (!menuItem.children.length) {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MenuSectionRenderer.tsx"],"names":["React","Fragment","css","Typography","MenuItems","useMenuItem","menuSectionTitle","marginLeft","display","alignItems","color","iconWrapper","marginRight","MenuSectionRenderer","PrevMenuItem","MenuSection","menuItem","depth","shouldRender","children","length","console","log","icon","label"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,SAASC,UAAT,QAA2B,uBAA3B;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,mBAAvC;AAEA,IAAMC,gBAAgB,gBAAGJ,GAAG,CAAC;AACzBK,EAAAA,UAAU,EAAE,EADa;AAEzBC,EAAAA,OAAO,EAAE,MAFgB;AAGzBC,EAAAA,UAAU,EAAE,QAHa;AAIzBC,EAAAA,KAAK,EAAE;AAJkB,CAAD,4BAA5B;AAOA,IAAMC,WAAW,gBAAGT,GAAG,CAAC;AACpBU,EAAAA,WAAW,EAAE,CADO;AAEpBF,EAAAA,KAAK,EAAE;AAFa,CAAD,uBAAvB;AAKA,OAAO,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,YAAD,EAAsC;AACrE,SAAO,SAASC,WAAT,GAAuB;AAC1B,uBAA4BV,WAAW,EAAvC;AAAA,QAAQW,QAAR,gBAAQA,QAAR;AAAA,QAAkBC,KAAlB,gBAAkBA,KAAlB;;AAEA,QAAMC,YAAY,GAAGD,KAAK,KAAK,CAAV,IAAeD,QAAf,IAA2BA,QAAQ,CAACG,QAAT,CAAkBC,MAAlB,GAA2B,CAA3E;;AAEA,QAAI,CAACF,YAAL,EAAmB;AACf,0BAAO,oBAAC,YAAD,OAAP;AACH,KAFD,MAEO,IAAI,CAACF,QAAL,EAAe;AAClB;AACAK,MAAAA,OAAO,CAACC,GAAR,CAAY,0EAAZ;AACA,0BAAO,oBAAC,YAAD,OAAP;AACH;;AAED,QAAI,CAACN,QAAQ,CAACG,QAAT,CAAkBC,MAAvB,EAA+B;AAC3B,aAAO,IAAP;AACH;;AAED,wBACI,oBAAC,QAAD,qBACI;AAAK,MAAA,SAAS,EAAEd;AAAhB,oBACI;AAAK,MAAA,SAAS,EAAEK;AAAhB,OAA8BK,QAAQ,CAACO,IAAvC,CADJ,eAEI,oBAAC,UAAD;AAAY,MAAA,GAAG,EAAC;AAAhB,OAA4BP,QAAQ,CAACQ,KAArC,CAFJ,CADJ,eAKI,oBAAC,SAAD;AAAW,MAAA,SAAS,EAAER,QAAQ,CAACG;AAA/B,MALJ,CADJ;AASH,GA1BD;AA2BH,CA5BM","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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","css","styled","Link","Typography","Compose","NotFound","NotFoundSpec","authErrorImg","ContentWrapper","display","paddingTop","textAlign","margin","styles","authErrorImgStyle","width","paddingBottom","bodyStyle","color","linkStyle","textDecoration","NotFoundHOC"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AACA,SAASC,IAAT,QAAqB,sBAArB;AACA,SAASC,UAAT,QAA2B,uBAA3B;AACA,SAASC,OAAT,EAAkBC,QAAQ,IAAIC,YAA9B,QAAkD,mBAAlD;AACA,OAAOC,YAAP;AAEA,IAAMC,cAAc,gBAAGP,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACjCQ,EAAAA,OAAO,EAAE,OADwB;AAEjCC,EAAAA,UAAU,EAAE,KAFqB;AAGjCC,EAAAA,SAAS,EAAE,QAHsB;AAIjCC,EAAAA,MAAM,EAAE;AAJyB,CAAjB,CAApB;AAOA,IAAMC,MAAM,GAAG;AACXC,EAAAA,iBAAiB,eAAEd,GAAG,CAAC;AACnBe,IAAAA,KAAK,EAAE,OADY;AAEnBC,IAAAA,aAAa,EAAE;AAFI,GAAD,6BADX;AAKXC,EAAAA,SAAS,eAAEjB,GAAG,CAAC;AACXkB,IAAAA,KAAK,EAAE,6CADI;AAEXT,IAAAA,OAAO,EAAE;AAFE,GAAD,qBALH;AASXU,EAAAA,SAAS,eAAEnB,GAAG,CAAC;AACXoB,IAAAA,cAAc,EAAE,MADL;AAEX,eAAW;AACPA,MAAAA,cAAc,EAAE;AADT;AAFA,GAAD;AATH,CAAf;;AAiBA,IAAMC,WAAW,GAAG,SAAdA,WAAc,GAAgB;AAChC,SAAO,SAAShB,QAAT,GAAoB;AACvB,wBACI,oBAAC,cAAD,qBACI;AAAK,MAAA,SAAS,EAAEQ,MAAM,CAACC,iBAAvB;AAA0C,MAAA,GAAG,EAAEP,YAA/C;AAA6D,MAAA,GAAG,EAAC;AAAjE,MADJ,eAGI,oBAAC,UAAD;AAAY,MAAA,GAAG,EAAE,OAAjB;AAA0B,MAAA,SAAS,EAAEM,MAAM,CAACI;AAA5C,2EAHJ,eAOI,oBAAC,UAAD;AAAY,MAAA,GAAG,EAAE,OAAjB;AAA0B,MAAA,SAAS,EAAEJ,MAAM,CAACI;AAA5C,gEAPJ,eAWI,oBAAC,IAAD;AAAM,MAAA,EAAE,EAAC,GAAT;AAAa,MAAA,SAAS,EAAEJ,MAAM,CAACM;AAA/B,uBAXJ,CADJ;AAiBH,GAlBD;AAmBH,CApBD;;AAsBA,OAAO,IAAMd,QAAkB,GAAG,SAArBA,QAAqB,GAAM;AACpC,sBAAO,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEC,YAApB;AAAkC,IAAA,IAAI,EAAEe;AAAxC,IAAP;AACH,CAFM","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&apos;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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Dialog.tsx"],"names":["React","useCallback","useUi","Dialog","DialogAccept","DialogTitle","DialogActions","DialogContent","DialogContainer","ui","message","dataTestId","title","actions","cancel","accept","label","style","hideDialog","setState","dialog","onClick"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,WAAhB,QAAmC,OAAnC;AAEA,SAASC,KAAT,QAAsB,yBAAtB;AACA,SAASC,MAAT,EAAiBC,YAAjB,EAA+BC,WAA/B,EAA4CC,aAA5C,EAA2DC,aAA3D,QAAgF,mBAAhF;AAEA,OAAO,IAAMC,eAAyB,GAAG,SAA5BA,eAA4B,GAAM;AAC3C,MAAMC,EAAE,GAAGP,KAAK,EAAhB;;AACA,MAAMQ,OAAwB,GAAG,KAAID,EAAJ,EAAQ,gBAAR,CAAjC;;AACA,cAKI,KAAIA,EAAJ,EAAQ,gBAAR,EAA0B,EAA1B,CALJ;AAAA,MACIE,UADJ,SACIA,UADJ;AAAA,MAEIC,KAFJ,SAEIA,KAFJ;AAAA,4BAGIC,OAHJ;AAAA,MAGIA,OAHJ,8BAGc;AAAEC,IAAAA,MAAM,EAAE,IAAV;AAAgBC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,KAAK,EAAE;AAAT;AAAxB,GAHd;AAAA,MAIIC,KAJJ,SAIIA,KAJJ;;AAOA,MAAMC,UAAU,GAAGjB,WAAW,CAAC,YAAM;AACjCQ,IAAAA,EAAE,CAACU,QAAH,CAAY,UAAAV,EAAE;AAAA,6CAAUA,EAAV;AAAcW,QAAAA,MAAM,EAAE;AAAtB;AAAA,KAAd;AACH,GAF6B,EAE3B,CAACX,EAAD,CAF2B,CAA9B;AAIA,sBACI,oBAAC,MAAD;AAAQ,IAAA,IAAI,EAAE,CAAC,CAACC,OAAhB;AAAyB,IAAA,OAAO,EAAEQ,UAAlC;AAA8C,mBAAaP,UAA3D;AAAuE,IAAA,KAAK,EAAEM;AAA9E,KACKL,KAAK,iBAAI,oBAAC,WAAD,QAAcA,KAAd,CADd,eAEI,oBAAC,aAAD,QAAgBF,OAAhB,CAFJ,eAGI,oBAAC,aAAD,QACKG,OAAO,CAACC,MAAR,iBACG,oBAAC,YAAD;AAAc,IAAA,OAAO,EAAED,OAAO,CAACC,MAAR,CAAeO;AAAtC,KACKR,OAAO,CAACC,MAAR,CAAeE,KADpB,CAFR,EAMKH,OAAO,CAACE,MAAR,iBACG,oBAAC,YAAD;AAAc,IAAA,OAAO,EAAEF,OAAO,CAACE,MAAR,CAAeM;AAAtC,KACKR,OAAO,CAACE,MAAR,CAAeC,KADpB,CAPR,CAHJ,CADJ;AAkBH,CAhCM","sourcesContent":["import React, { useCallback } from \"react\";\nimport { get } from \"lodash\";\nimport { useUi } from \"@webiny/app/hooks/useUi\";\nimport { Dialog, DialogAccept, DialogTitle, DialogActions, DialogContent } from \"@webiny/ui/Dialog\";\n\nexport const DialogContainer: React.FC = () => {\n const ui = useUi();\n const message: React.ReactNode = get(ui, \"dialog.message\");\n const {\n dataTestId,\n title,\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 return (\n <Dialog open={!!message} onClose={hideDialog} data-testid={dataTestId} style={style}>\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 <DialogAccept onClick={actions.accept.onClick}>\n {actions.accept.label}\n </DialogAccept>\n )}\n </DialogActions>\n </Dialog>\n );\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Snackbar.tsx"],"names":["React","useCallback","Snackbar","useUi","SnackbarMain","ui","message","options","hideSnackbar","setState","snackbar"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,WAAhB,QAAmC,OAAnC;AACA,SAASC,QAAT,QAAyB,qBAAzB;AAEA,SAASC,KAAT,QAAsB,yBAAtB;;AAEA,IAAMC,YAAsB,GAAG,SAAzBA,YAAyB,GAAM;AACjC,MAAMC,EAAE,GAAGF,KAAK,EAAhB;;AACA,MAAMG,OAAwB,GAAG,KAAID,EAAJ,EAAQ,kBAAR,CAAjC;;AACA,MAAME,OAA4B,GAAG,KAAIF,EAAJ,EAAQ,kBAAR,EAA4B,EAA5B,CAArC;;AAEA,MAAMG,YAAY,GAAGP,WAAW,CAAC,YAAY;AACzCI,IAAAA,EAAE,CAACI,QAAH,CAAY,UAAAJ,EAAE;AAAA,6CAAUA,EAAV;AAAcK,QAAAA,QAAQ,EAAE;AAAxB;AAAA,KAAd;AACH,GAF+B,EAE7B,CAACL,EAAD,CAF6B,CAAhC;AAIA,sBAAO,oBAAC,QAAD;AAAU,IAAA,IAAI,EAAE,CAAC,CAACC,OAAlB;AAA2B,IAAA,OAAO,EAAEE,YAApC;AAAkD,IAAA,OAAO,EAAEF;AAA3D,KAAwEC,OAAxE,EAAP;AACH,CAVD;;AAYA,eAAeH,YAAf","sourcesContent":["import React, { useCallback } from \"react\";\nimport { Snackbar } from \"@webiny/ui/Snackbar\";\nimport { get } from \"lodash\";\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"]}
@@ -21,6 +21,10 @@ var OverlaysHOC = function OverlaysHOC(Component) {
21
21
  };
22
22
 
23
23
  export var Overlays = function Overlays() {
24
+ /**
25
+ * TODO @ts-refactor @pavel
26
+ */
27
+ // @ts-ignore
24
28
  return /*#__PURE__*/React.createElement(Provider, {
25
29
  hoc: OverlaysHOC
26
30
  });
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Provider","Snackbar","DialogContainer","OverlaysHOC","Component","Overlays","children","zIndex","position"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,OAAOC,QAAP;AACA,SAASC,eAAT;AAEA;AACA;AACA;AACA;AACA;;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAAmC;AACnD,SAAO,SAASC,QAAT,OAAgC;AAAA,QAAZC,QAAY,QAAZA,QAAY;AACnC,wBACI,oBAAC,SAAD,QACKA,QADL,eAEI;AAAK,MAAA,KAAK,EAAE;AAAEC,QAAAA,MAAM,EAAE,EAAV;AAAcC,QAAAA,QAAQ,EAAE;AAAxB;AAAZ,oBACI,oBAAC,QAAD,OADJ,CAFJ,eAKI,oBAAC,eAAD,OALJ,CADJ;AASH,GAVD;AAWH,CAZD;;AAcA,OAAO,IAAMH,QAAkB,GAAG,SAArBA,QAAqB,GAAM;AACpC;AACJ;AACA;AACI;AACA,sBAAO,oBAAC,QAAD;AAAU,IAAA,GAAG,EAAEF;AAAf,IAAP;AACH,CANM","sourcesContent":["import React from \"react\";\nimport { Provider } from \"@webiny/app-admin/\";\nimport Snackbar from \"./Snackbar\";\nimport { DialogContainer } from \"./Dialog\";\n\n/**\n * Dialogs 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 <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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Compose","SearchRenderer","SearchSpec","SearchBar","Search"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,OAAT,EAAkBC,cAAc,IAAIC,UAApC,QAAsD,mBAAtD,C,CAEA;AACA;;AACA,OAAOC,SAAP,MAAsB,kDAAtB;;AAEA,IAAMF,cAAc,GAAG,SAAjBA,cAAiB,GAAgB;AACnC,SAAO,SAASG,MAAT,GAAkB;AACrB,wBAAO,oBAAC,SAAD,OAAP;AACH,GAFD;AAGH,CAJD;;AAMA,OAAO,IAAMA,MAAgB,GAAG,SAAnBA,MAAmB,GAAM;AAClC,sBAAO,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEF,UAApB;AAAgC,IAAA,IAAI,EAAED;AAAtC,IAAP;AACH,CAFM","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"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["React","Fragment","css","Compose","UserMenuHandle","UserMenuHandleRenderer","UserMenuHandleRendererSpec","UserMenuRenderer","UserMenuRendererSpec","UserMenuItems","UserMenuItemRenderer","UserMenuItemRendererSpec","useUserMenuItem","useUserMenu","Menu","List","ListItem","ListItemGraphic","Icon","Link","useSecurity","Avatar","Image","TopAppBarActionItem","UserMenuRendererImpl","UserMenu","security","menuItems","identity","UserMenuHandleRendererImpl","profile","firstName","lastName","avatar","gravatar","fullName","src","props","width","linkStyles","textDecoration","UserMenuItemRendererImpl","label","path","icon","onClick","element"],"mappings":"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","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 \"react-router-dom\";\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"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/app-admin-rmwc",
3
- "version": "5.24.0",
3
+ "version": "5.25.0-beta.0",
4
4
  "main": "index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -9,15 +9,16 @@
9
9
  "author": "Webiny Ltd.",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
- "@babel/runtime": "7.16.7",
12
+ "@babel/runtime": "7.17.2",
13
13
  "@emotion/styled": "10.3.0",
14
14
  "@types/react": "16.14.2",
15
- "@webiny/app": "5.24.0",
16
- "@webiny/app-admin": "5.24.0",
17
- "@webiny/app-security": "5.24.0",
18
- "@webiny/plugins": "5.24.0",
19
- "@webiny/react-router": "5.24.0",
20
- "@webiny/ui": "5.24.0",
15
+ "@webiny/app": "5.25.0-beta.0",
16
+ "@webiny/app-admin": "5.25.0-beta.0",
17
+ "@webiny/app-plugin-admin-welcome-screen": "5.25.0-beta.0",
18
+ "@webiny/app-security": "5.25.0-beta.0",
19
+ "@webiny/plugins": "5.25.0-beta.0",
20
+ "@webiny/react-router": "5.25.0-beta.0",
21
+ "@webiny/ui": "5.25.0-beta.0",
21
22
  "classnames": "2.3.1",
22
23
  "emotion": "10.0.27",
23
24
  "lodash": "4.17.21",
@@ -35,13 +36,13 @@
35
36
  "@babel/preset-react": "^7.0.0",
36
37
  "@babel/preset-typescript": "^7.8.3",
37
38
  "@types/react-helmet": "^6.1.5",
38
- "@webiny/cli": "^5.24.0",
39
- "@webiny/project-utils": "^5.24.0",
39
+ "@webiny/cli": "^5.25.0-beta.0",
40
+ "@webiny/project-utils": "^5.25.0-beta.0",
40
41
  "babel-plugin-emotion": "^9.2.8",
41
42
  "babel-plugin-named-asset-import": "^1.0.0-next.3e165448",
42
43
  "rimraf": "^3.0.2",
43
44
  "ttypescript": "^1.5.12",
44
- "typescript": "^4.1.3"
45
+ "typescript": "4.5.5"
45
46
  },
46
47
  "publishConfig": {
47
48
  "access": "public",
@@ -56,5 +57,5 @@
56
57
  "removeViewBox": false
57
58
  }
58
59
  },
59
- "gitHead": "be0cbfcaa9247c658c44179af7943cc5d6d71bc7"
60
+ "gitHead": "2d3e7833575e88fde77d84e5490e746933a5ec28"
60
61
  }