@flipdish/portal-library 2.1.4 → 3.0.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.
- package/dist/components/Form/FormItemLayout/index.cjs.js +1 -1
- package/dist/components/Form/FormItemLayout/index.cjs.js.map +1 -1
- package/dist/components/Form/FormItemLayout/index.js +1 -1
- package/dist/components/Form/FormItemLayout/index.js.map +1 -1
- package/dist/components/GenericTable/index.cjs.js +17 -17
- package/dist/components/GenericTable/index.cjs.js.map +1 -1
- package/dist/components/GenericTable/index.d.ts +3 -3
- package/dist/components/GenericTable/index.js +17 -17
- package/dist/components/GenericTable/index.js.map +1 -1
- package/dist/components/GenericTableTitle/index.cjs.js +1 -1
- package/dist/components/GenericTableTitle/index.cjs.js.map +1 -1
- package/dist/components/GenericTableTitle/index.d.ts +4 -5
- package/dist/components/GenericTableTitle/index.js +1 -1
- package/dist/components/GenericTableTitle/index.js.map +1 -1
- package/dist/components/ListItemLinkButton/index.cjs.js +1 -1
- package/dist/components/ListItemLinkButton/index.cjs.js.map +1 -1
- package/dist/components/ListItemLinkButton/index.d.ts +1 -1
- package/dist/components/ListItemLinkButton/index.js +1 -1
- package/dist/components/ListItemLinkButton/index.js.map +1 -1
- package/dist/components/PageLayout/FullWidthContainer.cjs.js +1 -1
- package/dist/components/PageLayout/FullWidthContainer.cjs.js.map +1 -1
- package/dist/components/PageLayout/FullWidthContainer.d.ts +2 -2
- package/dist/components/PageLayout/FullWidthContainer.js +1 -1
- package/dist/components/PageLayout/FullWidthContainer.js.map +1 -1
- package/dist/components/PageLayout/GlobalSpacingStyles.cjs.js +1 -1
- package/dist/components/PageLayout/GlobalSpacingStyles.cjs.js.map +1 -1
- package/dist/components/PageLayout/GlobalSpacingStyles.js +1 -1
- package/dist/components/PageLayout/GlobalSpacingStyles.js.map +1 -1
- package/dist/components/PageLayout/index.cjs.js +1 -1
- package/dist/components/PageLayout/index.cjs.js.map +1 -1
- package/dist/components/PageLayout/index.d.ts +4 -4
- package/dist/components/PageLayout/index.js +1 -1
- package/dist/components/PageLayout/index.js.map +1 -1
- package/dist/components/PortalMock/index.cjs.js +22 -22
- package/dist/components/PortalMock/index.cjs.js.map +1 -1
- package/dist/components/PortalMock/index.d.ts +2 -2
- package/dist/components/PortalMock/index.js +22 -22
- package/dist/components/PortalMock/index.js.map +1 -1
- package/dist/components/atoms/Typography/index.cjs.js +2 -0
- package/dist/components/atoms/Typography/index.cjs.js.map +1 -0
- package/dist/components/atoms/Typography/index.d.ts +2 -0
- package/dist/components/atoms/Typography/index.js +2 -0
- package/dist/components/atoms/Typography/index.js.map +1 -0
- package/dist/themes/flipdishPublicTheme.cjs.js +1 -1
- package/dist/themes/flipdishPublicTheme.cjs.js.map +1 -1
- package/dist/themes/flipdishPublicTheme.d.ts +3 -3
- package/dist/themes/flipdishPublicTheme.js +1 -1
- package/dist/themes/flipdishPublicTheme.js.map +1 -1
- package/dist/themes/tokens/breakpoints/breakpoints.cjs.js +2 -0
- package/dist/themes/tokens/breakpoints/breakpoints.cjs.js.map +1 -0
- package/dist/themes/tokens/breakpoints/breakpoints.d.ts +20 -0
- package/dist/themes/tokens/breakpoints/breakpoints.js +2 -0
- package/dist/themes/tokens/breakpoints/breakpoints.js.map +1 -0
- package/dist/themes/tokens/radius/radius.cjs.js +2 -0
- package/dist/themes/tokens/radius/radius.cjs.js.map +1 -0
- package/dist/themes/tokens/radius/radius.d.ts +17 -0
- package/dist/themes/tokens/radius/radius.js +2 -0
- package/dist/themes/tokens/radius/radius.js.map +1 -0
- package/dist/themes/tokens/spacing/spacing.cjs.js +2 -0
- package/dist/themes/tokens/spacing/spacing.cjs.js.map +1 -0
- package/dist/themes/tokens/spacing/spacing.d.ts +23 -0
- package/dist/themes/tokens/spacing/spacing.js +2 -0
- package/dist/themes/tokens/spacing/spacing.js.map +1 -0
- package/dist/themes/tokens/typography/font-family.cjs.js +2 -0
- package/dist/themes/tokens/typography/font-family.cjs.js.map +1 -0
- package/dist/themes/tokens/typography/font-family.d.ts +14 -0
- package/dist/themes/tokens/typography/font-family.js +2 -0
- package/dist/themes/tokens/typography/font-family.js.map +1 -0
- package/dist/themes/tokens/typography/font-size.cjs.js +2 -0
- package/dist/themes/tokens/typography/font-size.cjs.js.map +1 -0
- package/dist/themes/tokens/typography/font-size.d.ts +28 -0
- package/dist/themes/tokens/typography/font-size.js +2 -0
- package/dist/themes/tokens/typography/font-size.js.map +1 -0
- package/dist/themes/tokens/typography/letter-spacing.cjs.js +2 -0
- package/dist/themes/tokens/typography/letter-spacing.cjs.js.map +1 -0
- package/dist/themes/tokens/typography/letter-spacing.d.ts +28 -0
- package/dist/themes/tokens/typography/letter-spacing.js +2 -0
- package/dist/themes/tokens/typography/letter-spacing.js.map +1 -0
- package/dist/themes/tokens/typography/line-height.cjs.js +2 -0
- package/dist/themes/tokens/typography/line-height.cjs.js.map +1 -0
- package/dist/themes/tokens/typography/line-height.d.ts +28 -0
- package/dist/themes/tokens/typography/line-height.js +2 -0
- package/dist/themes/tokens/typography/line-height.js.map +1 -0
- package/dist/themes/tokens/typography/variant-mapping.cjs.js +2 -0
- package/dist/themes/tokens/typography/variant-mapping.cjs.js.map +1 -0
- package/dist/themes/tokens/typography/variant-mapping.d.ts +32 -0
- package/dist/themes/tokens/typography/variant-mapping.js +2 -0
- package/dist/themes/tokens/typography/variant-mapping.js.map +1 -0
- package/dist/themes/typography.cjs.js +1 -1
- package/dist/themes/typography.cjs.js.map +1 -1
- package/dist/themes/typography.d.ts +3 -1
- package/dist/themes/typography.js +1 -1
- package/dist/themes/typography.js.map +1 -1
- package/package.json +7 -7
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as i}from"react/jsx-runtime";import"react";import{useTheme as a,styled as n}from"@mui/material/styles";const r=({children:r,className:t="",fullWidth:
|
|
1
|
+
import{jsx as i}from"react/jsx-runtime";import"react";import{useTheme as a,styled as n}from"@mui/material/styles";const r=({children:r,className:t="",fullWidth:e,fullSize:m,noTopSpace:s})=>{const o=a(),p=n("div")((()=>({...e&&{marginLeft:-20,marginRight:-20},...m&&{[o.breakpoints.up("mobile")]:{marginLeft:o.spacing(-3),marginRight:o.spacing(-3)}},...s&&{marginTop:`${o.spacing(-3)} !important`,[o.breakpoints.only("base")]:{marginTop:`${o.spacing(-2)} !important`}},[o.breakpoints.only("mobile")]:{marginLeft:o.spacing(-3),marginRight:o.spacing(-3)},[o.breakpoints.only("base")]:{marginLeft:o.spacing(-2),marginRight:o.spacing(-2)}})));return i(p,{className:t,children:r})};export{r as default};
|
|
2
2
|
//# sourceMappingURL=FullWidthContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FullWidthContainer.js","sources":["../../../src/components/PageLayout/FullWidthContainer.tsx"],"sourcesContent":["import { type ReactNode } from 'react';\nimport { styled,
|
|
1
|
+
{"version":3,"file":"FullWidthContainer.js","sources":["../../../src/components/PageLayout/FullWidthContainer.tsx"],"sourcesContent":["import { type ReactNode } from 'react';\n\nimport { styled, type Theme, useTheme } from '@mui/material/styles';\n\ninterface Props {\n className?: string;\n children: ReactNode;\n fullWidth?: boolean;\n fullSize?: boolean;\n noTopSpace?: boolean;\n}\n\nconst FullWidthContainer = ({ children, className = '', fullWidth, fullSize, noTopSpace }: Props) => {\n const theme = useTheme<Theme>();\n\n const FullWidthDiv = styled('div')(() => ({\n // Base styles\n ...(fullWidth && {\n marginLeft: -20,\n marginRight: -20,\n }),\n ...(fullSize && {\n [theme.breakpoints.up('mobile')]: {\n marginLeft: theme.spacing(-3),\n marginRight: theme.spacing(-3),\n },\n }),\n ...(noTopSpace && {\n marginTop: `${theme.spacing(-3)} !important`,\n [theme.breakpoints.only('base')]: {\n marginTop: `${theme.spacing(-2)} !important`,\n },\n }),\n [theme.breakpoints.only('mobile')]: {\n marginLeft: theme.spacing(-3),\n marginRight: theme.spacing(-3),\n },\n [theme.breakpoints.only('base')]: {\n marginLeft: theme.spacing(-2),\n marginRight: theme.spacing(-2),\n },\n }));\n\n return <FullWidthDiv className={className}>{children}</FullWidthDiv>;\n};\n\nexport default FullWidthContainer;\n"],"names":["FullWidthContainer","children","className","fullWidth","fullSize","noTopSpace","theme","useTheme","FullWidthDiv","styled","marginLeft","marginRight","breakpoints","up","spacing","marginTop","only","_jsx"],"mappings":"kHAYA,MAAMA,EAAqB,EAAGC,WAAUC,YAAY,GAAIC,YAAWC,WAAUC,iBAC3E,MAAMC,EAAQC,IAERC,EAAeC,EAAO,MAAPA,EAAc,KAAO,IAEpCN,GAAa,CACfO,YAAe,GACfC,aAAgB,OAEdP,GAAY,CACd,CAACE,EAAMM,YAAYC,GAAG,WAAY,CAChCH,WAAYJ,EAAMQ,YAClBH,YAAaL,EAAMQ,iBAGnBT,GAAc,CAChBU,UAAW,GAAGT,EAAMQ,SAAU,gBAC9B,CAACR,EAAMM,YAAYI,KAAK,SAAU,CAChCD,UAAW,GAAGT,EAAMQ,SAAU,kBAGlC,CAACR,EAAMM,YAAYI,KAAK,WAAY,CAClCN,WAAYJ,EAAMQ,YAClBH,YAAaL,EAAMQ,aAErB,CAACR,EAAMM,YAAYI,KAAK,SAAU,CAChCN,WAAYJ,EAAMQ,YAClBH,YAAaL,EAAMQ,iBAIvB,OAAOG,EAACT,EAAa,CAAAN,UAAWA,EAASD,SAAGA,GAAwB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var i=require("react/jsx-runtime"),t=require("@mui/material/GlobalStyles"),
|
|
1
|
+
"use strict";var i=require("react/jsx-runtime"),t=require("@mui/material/GlobalStyles"),a=require("@mui/material/styles/useTheme"),n=require("./index.cjs.js");module.exports=()=>{const p=a();return i.jsx(t,{styles:{[`.${n.HORIZONTAL_SPACE_CLASSNAME}`]:{paddingLeft:`${p.spacing(3)} !important`,paddingRight:`${p.spacing(3)} !important`,[p.breakpoints.only("base")]:{paddingLeft:`${p.spacing(2)} !important`,paddingRight:`${p.spacing(2)} !important`}},[`.${n.LEFT_HORIZONTAL_SPACE_CLASSNAME}`]:{paddingLeft:`${p.spacing(3)} !important`,[p.breakpoints.only("base")]:{paddingLeft:`${p.spacing(2)} !important`}},[`.${n.RIGHT_HORIZONTAL_SPACE_CLASSNAME}`]:{paddingRight:`${p.spacing(3)} !important`,[p.breakpoints.only("base")]:{paddingRight:`${p.spacing(2)} !important`}},[`.${n.VERTICAL_SPACE_CLASSNAME}`]:{paddingTop:`${p.spacing(3)} !important`,paddingBottom:`${p.spacing(3)} !important`,[p.breakpoints.only("base")]:{paddingTop:`${p.spacing(2)} !important`,paddingBottom:`${p.spacing(2)} !important`}}}})};
|
|
2
2
|
//# sourceMappingURL=GlobalSpacingStyles.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalSpacingStyles.cjs.js","sources":["../../../src/components/PageLayout/GlobalSpacingStyles.tsx"],"sourcesContent":["import GlobalStyles from '@mui/material/GlobalStyles';\nimport useTheme from '@mui/material/styles/useTheme';\nimport {
|
|
1
|
+
{"version":3,"file":"GlobalSpacingStyles.cjs.js","sources":["../../../src/components/PageLayout/GlobalSpacingStyles.tsx"],"sourcesContent":["import GlobalStyles from '@mui/material/GlobalStyles';\nimport useTheme from '@mui/material/styles/useTheme';\n\nimport {\n HORIZONTAL_SPACE_CLASSNAME,\n LEFT_HORIZONTAL_SPACE_CLASSNAME,\n RIGHT_HORIZONTAL_SPACE_CLASSNAME,\n VERTICAL_SPACE_CLASSNAME,\n} from '.';\n\nconst GlobalSpacingStyles = () => {\n const theme = useTheme();\n\n return (\n <GlobalStyles\n styles={{\n [`.${HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingLeft: `${theme.spacing(3)} !important`,\n paddingRight: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingLeft: `${theme.spacing(2)} !important`,\n paddingRight: `${theme.spacing(2)} !important`,\n },\n },\n [`.${LEFT_HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingLeft: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingLeft: `${theme.spacing(2)} !important`,\n },\n },\n [`.${RIGHT_HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingRight: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingRight: `${theme.spacing(2)} !important`,\n },\n },\n [`.${VERTICAL_SPACE_CLASSNAME}`]: {\n paddingTop: `${theme.spacing(3)} !important`,\n paddingBottom: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingTop: `${theme.spacing(2)} !important`,\n paddingBottom: `${theme.spacing(2)} !important`,\n },\n },\n }}\n />\n );\n};\n\nexport default GlobalSpacingStyles;\n"],"names":["theme","useTheme","_jsx","jsx","GlobalStyles","styles","HORIZONTAL_SPACE_CLASSNAME","paddingLeft","spacing","paddingRight","breakpoints","only","LEFT_HORIZONTAL_SPACE_CLASSNAME","RIGHT_HORIZONTAL_SPACE_CLASSNAME","VERTICAL_SPACE_CLASSNAME","paddingTop","paddingBottom"],"mappings":"8KAU4B,KAC1B,MAAMA,EAAQC,IAEd,OACEC,EAAAC,IAACC,EAAY,CACXC,OAAQ,CACN,CAAC,IAAIC,EAA0BA,8BAAK,CAClCC,YAAa,GAAGP,EAAMQ,QAAQ,gBAC9BC,aAAc,GAAGT,EAAMQ,QAAQ,gBAC/B,CAACR,EAAMU,YAAYC,KAAK,SAAU,CAChCJ,YAAa,GAAGP,EAAMQ,QAAQ,gBAC9BC,aAAc,GAAGT,EAAMQ,QAAQ,kBAGnC,CAAC,IAAII,EAA+BA,mCAAK,CACvCL,YAAa,GAAGP,EAAMQ,QAAQ,gBAC9B,CAACR,EAAMU,YAAYC,KAAK,SAAU,CAChCJ,YAAa,GAAGP,EAAMQ,QAAQ,kBAGlC,CAAC,IAAIK,EAAgCA,oCAAK,CACxCJ,aAAc,GAAGT,EAAMQ,QAAQ,gBAC/B,CAACR,EAAMU,YAAYC,KAAK,SAAU,CAChCF,aAAc,GAAGT,EAAMQ,QAAQ,kBAGnC,CAAC,IAAIM,EAAwBA,4BAAK,CAChCC,WAAY,GAAGf,EAAMQ,QAAQ,gBAC7BQ,cAAe,GAAGhB,EAAMQ,QAAQ,gBAChC,CAACR,EAAMU,YAAYC,KAAK,SAAU,CAChCI,WAAY,GAAGf,EAAMQ,QAAQ,gBAC7BQ,cAAe,GAAGhB,EAAMQ,QAAQ,oBAItC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import i from"@mui/material/GlobalStyles";import
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import i from"@mui/material/GlobalStyles";import a from"@mui/material/styles/useTheme";import{VERTICAL_SPACE_CLASSNAME as n,RIGHT_HORIZONTAL_SPACE_CLASSNAME as p,LEFT_HORIZONTAL_SPACE_CLASSNAME as o,HORIZONTAL_SPACE_CLASSNAME as r}from"./index.js";const s=()=>{const s=a();return t(i,{styles:{[`.${r}`]:{paddingLeft:`${s.spacing(3)} !important`,paddingRight:`${s.spacing(3)} !important`,[s.breakpoints.only("base")]:{paddingLeft:`${s.spacing(2)} !important`,paddingRight:`${s.spacing(2)} !important`}},[`.${o}`]:{paddingLeft:`${s.spacing(3)} !important`,[s.breakpoints.only("base")]:{paddingLeft:`${s.spacing(2)} !important`}},[`.${p}`]:{paddingRight:`${s.spacing(3)} !important`,[s.breakpoints.only("base")]:{paddingRight:`${s.spacing(2)} !important`}},[`.${n}`]:{paddingTop:`${s.spacing(3)} !important`,paddingBottom:`${s.spacing(3)} !important`,[s.breakpoints.only("base")]:{paddingTop:`${s.spacing(2)} !important`,paddingBottom:`${s.spacing(2)} !important`}}}})};export{s as default};
|
|
2
2
|
//# sourceMappingURL=GlobalSpacingStyles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalSpacingStyles.js","sources":["../../../src/components/PageLayout/GlobalSpacingStyles.tsx"],"sourcesContent":["import GlobalStyles from '@mui/material/GlobalStyles';\nimport useTheme from '@mui/material/styles/useTheme';\nimport {
|
|
1
|
+
{"version":3,"file":"GlobalSpacingStyles.js","sources":["../../../src/components/PageLayout/GlobalSpacingStyles.tsx"],"sourcesContent":["import GlobalStyles from '@mui/material/GlobalStyles';\nimport useTheme from '@mui/material/styles/useTheme';\n\nimport {\n HORIZONTAL_SPACE_CLASSNAME,\n LEFT_HORIZONTAL_SPACE_CLASSNAME,\n RIGHT_HORIZONTAL_SPACE_CLASSNAME,\n VERTICAL_SPACE_CLASSNAME,\n} from '.';\n\nconst GlobalSpacingStyles = () => {\n const theme = useTheme();\n\n return (\n <GlobalStyles\n styles={{\n [`.${HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingLeft: `${theme.spacing(3)} !important`,\n paddingRight: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingLeft: `${theme.spacing(2)} !important`,\n paddingRight: `${theme.spacing(2)} !important`,\n },\n },\n [`.${LEFT_HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingLeft: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingLeft: `${theme.spacing(2)} !important`,\n },\n },\n [`.${RIGHT_HORIZONTAL_SPACE_CLASSNAME}`]: {\n paddingRight: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingRight: `${theme.spacing(2)} !important`,\n },\n },\n [`.${VERTICAL_SPACE_CLASSNAME}`]: {\n paddingTop: `${theme.spacing(3)} !important`,\n paddingBottom: `${theme.spacing(3)} !important`,\n [theme.breakpoints.only('base')]: {\n paddingTop: `${theme.spacing(2)} !important`,\n paddingBottom: `${theme.spacing(2)} !important`,\n },\n },\n }}\n />\n );\n};\n\nexport default GlobalSpacingStyles;\n"],"names":["GlobalSpacingStyles","theme","useTheme","_jsx","GlobalStyles","styles","HORIZONTAL_SPACE_CLASSNAME","paddingLeft","spacing","paddingRight","breakpoints","only","LEFT_HORIZONTAL_SPACE_CLASSNAME","RIGHT_HORIZONTAL_SPACE_CLASSNAME","VERTICAL_SPACE_CLASSNAME","paddingTop","paddingBottom"],"mappings":"gSAUM,MAAAA,EAAsB,KAC1B,MAAMC,EAAQC,IAEd,OACEC,EAACC,EAAY,CACXC,OAAQ,CACN,CAAC,IAAIC,KAA+B,CAClCC,YAAa,GAAGN,EAAMO,QAAQ,gBAC9BC,aAAc,GAAGR,EAAMO,QAAQ,gBAC/B,CAACP,EAAMS,YAAYC,KAAK,SAAU,CAChCJ,YAAa,GAAGN,EAAMO,QAAQ,gBAC9BC,aAAc,GAAGR,EAAMO,QAAQ,kBAGnC,CAAC,IAAII,KAAoC,CACvCL,YAAa,GAAGN,EAAMO,QAAQ,gBAC9B,CAACP,EAAMS,YAAYC,KAAK,SAAU,CAChCJ,YAAa,GAAGN,EAAMO,QAAQ,kBAGlC,CAAC,IAAIK,KAAqC,CACxCJ,aAAc,GAAGR,EAAMO,QAAQ,gBAC/B,CAACP,EAAMS,YAAYC,KAAK,SAAU,CAChCF,aAAc,GAAGR,EAAMO,QAAQ,kBAGnC,CAAC,IAAIM,KAA6B,CAChCC,WAAY,GAAGd,EAAMO,QAAQ,gBAC7BQ,cAAe,GAAGf,EAAMO,QAAQ,gBAChC,CAACP,EAAMS,YAAYC,KAAK,SAAU,CAChCI,WAAY,GAAGd,EAAMO,QAAQ,gBAC7BQ,cAAe,GAAGf,EAAMO,QAAQ,oBAItC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),i=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),i=require("@mui/material/Box"),n=require("@mui/material/Button"),a=require("@mui/material/Divider"),r=require("@mui/material/Grid"),s=require("@mui/material/IconButton"),o=require("@mui/material/styles"),d=require("@mui/material/Typography"),l=require("@mui/material/useMediaQuery"),c=require("../../icons/Add/index.cjs.js"),p=require("../../icons/ArrowLeft02/index.cjs.js"),m=require("../../utilities/renderUtilities.cjs.js"),h=require("../../utilities/validation.cjs.js"),g=require("../FDErrorBoundary/index.cjs.js"),u=require("../Spacer/index.cjs.js"),x=require("./DocumentTitle.cjs.js"),j=require("./FullWidthContainer.cjs.js");const b=1112,f=o.styled("div")((({theme:e,fluid:t})=>({maxWidth:t?"none":b,[e.breakpoints.down("laptop")]:{maxWidth:"none"},padding:e.spacing(2,4),position:"relative",minHeight:"100vh"}))),v=o.styled(r)((({theme:e})=>({[e.breakpoints.down("laptop")]:{width:"100%",paddingTop:e.spacing(2)}}))),y=o.styled(r)((({theme:e})=>({flexWrap:"nowrap",alignItems:"flex-start",paddingTop:e.spacing(3),paddingBottom:e.spacing(3),[e.breakpoints.down("laptop")]:{paddingTop:e.spacing(2),paddingBottom:e.spacing(3)}}))),k=o.styled(r)((({theme:e})=>({paddingTop:e.spacing(2)}))),A=o.styled(r)((()=>({flexGrow:1}))),T=o.styled("div")((({theme:e})=>({maxWidth:b,paddingBottom:e.spacing(3),[e.breakpoints.down("laptop")]:{paddingBottom:e.spacing(2),paddingLeft:e.spacing(2),paddingRight:e.spacing(2)}}))),B=o.styled(c)((({theme:e})=>({marginRight:e.spacing(1)}))),C=o.styled(s,{shouldForwardProp:e=>"hasTitleComponent"!==e})((({theme:e,hasTitleComponent:t})=>({margin:t?e.spacing(-.75,2,-1.5,-1.5):e.spacing(-1.5,2,-1.5,-1.5),[e.breakpoints.only("tablet")]:{marginLeft:e.spacing(-2)},[e.breakpoints.only("base")]:{marginLeft:e.spacing(-2)}}))),L=o.styled("div")((({theme:e})=>({maxWidth:b,marginLeft:e.spacing(6),marginRight:e.spacing(4),paddingBottom:e.spacing(2),[e.breakpoints.only("tablet")]:{marginLeft:12,marginRight:e.spacing(3)},[e.breakpoints.only("mobile")]:{marginLeft:e.spacing(3),marginRight:e.spacing(3),maxWidth:"none"},[e.breakpoints.only("base")]:{marginLeft:e.spacing(2),marginRight:e.spacing(2),maxWidth:"none"}}))),q=o.styled(r)((()=>({display:"flex",flexGrow:1,justifyContent:"flex-end"}))),W=o.styled(d)((()=>({lineHeight:"26px"}))),w=o.styled(d)((()=>({fontWeight:"bold"}))),S=o.styled(a)((({theme:e})=>({marginBottom:e.spacing(4)}))),_=({title:t})=>e.jsx(w,{component:"h2",variant:"h5",children:t}),E=o.styled("div")((({useAlternateBackground:e,theme:t})=>({backgroundColor:e?t.palette.semantic.background["background-alternate"]:t.palette.semantic.background["background-base"],width:"100%",height:"100%"})));exports.HORIZONTAL_SPACE_CLASSNAME="horizontal-content-space",exports.LEFT_HORIZONTAL_SPACE_CLASSNAME="left-horizontal-content-space",exports.PageTitle=_,exports.RIGHT_HORIZONTAL_SPACE_CLASSNAME="right-horizontal-content-space",exports.VERTICAL_SPACE_CLASSNAME="vertical-content-space",exports.default=a=>{const{actionBtnTitle:s,caption:d,children:c,contextButtons:b,documentTitle:w,fluid:I=!1,fullWidth:P,header:R,hideHeader:z,actionButtonLink:F,openLinkInNewTab:H=!1,pageHeader:N,showActionButton:M,showAddIcon:O,title:D,titleComponent:G,toPrevious:V,toParent:Z,strictToParent:$,navigate:U,hideDivider:Q=!1,customActionButtons:J,useAlternateBackground:K=!1,titleComponentAfter:X,errorBoundarySomethingWentWrongText:Y}=a,ee=o.useTheme(),te=l(ee.breakpoints.down("tablet")),ie=m.getMicroFrontendAttribute("data-portal-base-url")||"/",ne=F?.startsWith("https://"),ae=ne?F:void 0!==F?h.joinUrlPaths(ie,F):"";return e.jsx(E,{useAlternateBackground:K,children:e.jsxs(f,{fluid:I,children:[w&&e.jsx(x,{children:w}),N||null,e.jsxs(L,{children:[N&&e.jsx(u,{size:16,variant:"vertical"}),!z&&e.jsxs(e.Fragment,{children:[e.jsxs(y,{container:!0,alignItems:"center",direction:"column",children:[e.jsx(r,{container:!0,item:!0,alignContent:"space-between",direction:"row",children:e.jsx(q,{item:!0,children:b?.map((i=>e.jsx("div",{children:i},`context-button-${t.isValidElement(i)?i.props?.["data-testid"]||i.props?.children:"fallback"}`)))})}),e.jsxs(k,{container:!0,item:!0,children:[(Z||V)&&e.jsx(i,{children:e.jsx(C,{"aria-label":"Back",component:"button","data-testid":"back_button",hasTitleComponent:!!G,onClick:()=>{V?U(-1):Z&&$||Z&&history.length<3?U(Z):U(-1)},children:e.jsx(p,{})})}),e.jsxs(A,{item:!0,children:[G?e.jsx(G,{}):e.jsxs(i,{alignItems:"center",display:"flex",gap:2,children:[e.jsx(_,{title:D}),X]}),d&&e.jsx(W,{component:"h3",variant:"caption",children:d})]}),M&&e.jsxs(e.Fragment,{children:[te&&e.jsx(u,{size:56,variant:"vertical"}),e.jsx(v,{item:!0,children:e.jsxs(n,{"data-testid":`Action-button-${s}`,fullWidth:!0,href:H||ne?ae:"",rel:H?"noopener noreferrer":void 0,target:H?"_blank":void 0,variant:"contained",onClick:H||ne?()=>{}:()=>U(F),children:[O&&e.jsx(B,{size:"sm"}),s]})})]}),J?.map((i=>e.jsxs("div",{children:[te&&e.jsx(u,{size:56,variant:"vertical"}),!te&&e.jsx(u,{size:16,variant:"vertical"}),e.jsx(v,{item:!0,children:i})]},`custom-action-button-${t.isValidElement(i)?i.props?.["data-testid"]||i.props?.children:"fallback"}`)))]})]}),!Q&&e.jsx(S,{})]}),e.jsxs(j,{fullWidth:P,children:[R?e.jsx(T,{children:R}):null,e.jsx(g,{identifier:w,somethingWentWrongText:Y,children:e.jsx(e.Fragment,{children:c})})]})]})]})})},exports.maxWidth=b;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../src/components/PageLayout/index.tsx"],"sourcesContent":["import React, { type ComponentType, type ReactNode } from 'react';\n\nimport Add from '../../icons/Add';\nimport ArrowLeft02 from '../../icons/ArrowLeft02';\nimport Grid from '@mui/material/Grid';\nimport IconButton from '@mui/material/IconButton';\nimport { styled, useTheme } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nimport DocumentTitle from './DocumentTitle';\nimport FullWidthContainer from './FullWidthContainer';\nimport FDErrorBoundary from '../FDErrorBoundary';\nimport Button from '@mui/material/Button';\nimport { getMicroFrontendAttribute } from '../../utilities/renderUtilities';\nimport { joinUrlPaths } from '../../utilities/validation';\nimport Spacer from '../Spacer';\nimport Box from '@mui/material/Box';\nimport Divider from '@mui/material/Divider';\n\nexport const HORIZONTAL_SPACE_CLASSNAME = 'horizontal-content-space';\nexport const LEFT_HORIZONTAL_SPACE_CLASSNAME = 'left-horizontal-content-space';\nexport const RIGHT_HORIZONTAL_SPACE_CLASSNAME = 'right-horizontal-content-space';\nexport const VERTICAL_SPACE_CLASSNAME = 'vertical-content-space';\nexport const maxWidth = 1112;\nconst historyMinLength = 3;\n\nconst StyledWrapper = styled('div')<{ fluid: boolean }>(({ theme, fluid }) => ({\n maxWidth: fluid ? 'none' : maxWidth,\n [theme.breakpoints.down('md')]: {\n maxWidth: 'none',\n },\n padding: theme.spacing(2, 4),\n position: 'relative',\n minHeight: '100vh',\n}));\n\nconst StyledActionButtonGrid = styled(Grid)(({ theme }) => ({\n [theme.breakpoints.down('sm')]: {\n width: '100%',\n paddingTop: theme.spacing(2),\n },\n}));\n\nconst StyledHeader = styled(Grid)(({ theme }) => ({\n flexWrap: 'nowrap',\n alignItems: 'flex-start',\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('md')]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(3),\n },\n}));\n\nconst StyledTitleContainer = styled(Grid)(({ theme }) => ({\n paddingTop: theme.spacing(2),\n}));\n\nconst StyledTitleSection = styled(Grid)(() => ({\n flexGrow: 1,\n}));\n\nconst StyledTopSection = styled('div')(({ theme }) => ({\n maxWidth,\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('md')]: {\n paddingBottom: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n}));\n\nconst StyledAdd = styled(Add)(({ theme }) => ({\n marginRight: theme.spacing(1),\n}));\n\nconst StyledBackButton = styled(IconButton, {\n shouldForwardProp: (prop) => prop !== 'hasTitleComponent',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n})<{ hasTitleComponent: boolean; component: any }>(({ theme, hasTitleComponent }) => ({\n margin: hasTitleComponent ? theme.spacing(-0.75, 2, -1.5, -1.5) : theme.spacing(-1.5, 2, -1.5, -1.5),\n\n [theme.breakpoints.only('sm')]: {\n marginLeft: theme.spacing(-2),\n },\n\n [theme.breakpoints.only('xs')]: {\n marginLeft: theme.spacing(-2),\n },\n}));\n\nconst StyledInnerWrapper = styled('div')(({ theme }) => ({\n maxWidth,\n marginLeft: theme.spacing(6),\n marginRight: theme.spacing(4),\n paddingBottom: theme.spacing(2),\n\n [theme.breakpoints.only('md')]: {\n marginLeft: 12,\n marginRight: theme.spacing(3),\n },\n\n [theme.breakpoints.only('sm')]: {\n marginLeft: theme.spacing(3),\n marginRight: theme.spacing(3),\n maxWidth: 'none',\n },\n\n [theme.breakpoints.only('xs')]: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n maxWidth: 'none',\n },\n}));\n\nconst StyledHeaderContainer = styled(Grid)(() => ({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n}));\nconst StyledCaption = styled(Typography)<{ component: string }>(() => ({\n lineHeight: '26px',\n}));\n\nconst StyledPageTitle = styled(Typography)<{ component: string }>(() => ({\n fontWeight: 'bold',\n}));\n\nconst StyledPageDivider = styled(Divider)(({ theme }) => ({\n marginBottom: theme.spacing(4),\n}));\n\nexport const PageTitle = ({ title }: { title: string | ReactNode }) => (\n <StyledPageTitle variant=\"h5\" component=\"h2\">\n {title}\n </StyledPageTitle>\n);\n\nconst StyledPageContainer = styled('div')<{ useAlternateBackground: boolean }>(({ useAlternateBackground, theme }) => ({\n backgroundColor: useAlternateBackground\n ? theme.palette.semantic.background['background-alternate']\n : theme.palette.semantic.background['background-base'],\n width: '100%',\n height: '100%',\n}));\n\nexport type Props = {\n actionBtnTitle?: string;\n caption?: ReactNode;\n children: ReactNode;\n contextButtons?: ReactNode[];\n documentTitle: string;\n fluid?: boolean;\n fullWidth?: boolean;\n header?: ReactNode;\n hideHeader?: boolean;\n actionButtonLink?: string;\n pageHeader?: ReactNode;\n showActionButton?: boolean;\n showAddIcon?: boolean;\n title: ReactNode;\n titleComponent?: ComponentType<React.PropsWithChildren<unknown>>;\n titleComponentAfter?: ReactNode;\n toPrevious?: boolean;\n toParent?: string;\n strictToParent?: boolean;\n openLinkInNewTab?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n navigate: (to: any) => void;\n hideDivider?: boolean;\n customActionButtons?: ReactNode[];\n useAlternateBackground?: boolean;\n errorBoundarySomethingWentWrongText: string;\n};\n\nconst PageLayout = (props: Props) => {\n const {\n actionBtnTitle,\n caption,\n children,\n contextButtons,\n documentTitle,\n fluid = false,\n fullWidth,\n header,\n hideHeader,\n actionButtonLink,\n openLinkInNewTab = false,\n pageHeader,\n showActionButton,\n showAddIcon,\n title,\n titleComponent: TitleComponent,\n toPrevious,\n toParent,\n strictToParent,\n navigate,\n hideDivider = false,\n customActionButtons,\n useAlternateBackground = false,\n titleComponentAfter,\n errorBoundarySomethingWentWrongText,\n } = props;\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('md'));\n\n const baseUrl = getMicroFrontendAttribute('data-portal-base-url') || '/';\n const actionButtonWithHttps = actionButtonLink?.startsWith('https://');\n const getActionButtonLink = () => {\n if (actionButtonWithHttps) {\n return actionButtonLink;\n }\n if (actionButtonLink !== undefined) {\n return joinUrlPaths(baseUrl, actionButtonLink);\n }\n return '';\n };\n const actionButtonLinkFinal = getActionButtonLink();\n\n return (\n <StyledPageContainer useAlternateBackground={useAlternateBackground}>\n <StyledWrapper fluid={fluid}>\n {documentTitle && <DocumentTitle>{documentTitle}</DocumentTitle>}\n\n {pageHeader || null}\n <StyledInnerWrapper>\n {pageHeader && <Spacer size={16} variant=\"vertical\" />}\n {!hideHeader && (\n <>\n <StyledHeader container alignItems=\"center\" direction=\"column\">\n <Grid item container direction=\"row\" alignContent=\"space-between\">\n <StyledHeaderContainer item>\n {contextButtons?.map((button) => (\n <div\n key={`context-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {button}\n </div>\n ))}\n </StyledHeaderContainer>\n </Grid>\n <StyledTitleContainer item container>\n {(toParent || toPrevious) && (\n <Box>\n <StyledBackButton\n aria-label=\"Back\"\n data-testid=\"back_button\"\n hasTitleComponent={!!TitleComponent}\n component={'button'}\n onClick={() => {\n if (toPrevious) {\n navigate(-1);\n } else if (toParent && strictToParent) {\n navigate(toParent);\n } else if (toParent && history.length < historyMinLength) {\n navigate(toParent);\n } else {\n navigate(-1);\n }\n }}\n >\n <ArrowLeft02 />\n </StyledBackButton>\n </Box>\n )}\n\n <StyledTitleSection item>\n {TitleComponent ? (\n <TitleComponent />\n ) : (\n <Box display=\"flex\" alignItems=\"center\" gap={2}>\n <PageTitle title={title} />\n {titleComponentAfter}\n </Box>\n )}\n {caption && (\n <StyledCaption variant=\"caption\" component=\"h3\">\n {caption}\n </StyledCaption>\n )}\n </StyledTitleSection>\n\n {showActionButton && (\n <>\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n <StyledActionButtonGrid item>\n <Button\n variant=\"contained\"\n fullWidth={true}\n data-testid={`Action-button-${actionBtnTitle}`}\n href={openLinkInNewTab || actionButtonWithHttps ? actionButtonLinkFinal : ''}\n target={openLinkInNewTab ? '_blank' : undefined}\n rel={openLinkInNewTab ? 'noopener noreferrer' : undefined}\n onClick={\n !openLinkInNewTab && !actionButtonWithHttps ? () => navigate(actionButtonLink) : () => {}\n }\n >\n {showAddIcon && <StyledAdd size=\"sm\" />}\n {actionBtnTitle}\n </Button>\n </StyledActionButtonGrid>\n </>\n )}\n {customActionButtons?.map((button) => (\n <div\n key={`custom-action-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n {!isMobile && <Spacer size={16} variant=\"vertical\" />}\n <StyledActionButtonGrid item>{button}</StyledActionButtonGrid>\n </div>\n ))}\n </StyledTitleContainer>\n </StyledHeader>\n {!hideDivider && <StyledPageDivider />}\n </>\n )}\n <FullWidthContainer fullWidth={fullWidth}>\n {header ? <StyledTopSection>{header}</StyledTopSection> : null}\n <FDErrorBoundary identifier={documentTitle} somethingWentWrongText={errorBoundarySomethingWentWrongText}>\n <>{children}</>\n </FDErrorBoundary>\n </FullWidthContainer>\n </StyledInnerWrapper>\n </StyledWrapper>\n </StyledPageContainer>\n );\n};\n\nexport default PageLayout;\n"],"names":["maxWidth","StyledWrapper","styled","theme","fluid","breakpoints","down","padding","spacing","position","minHeight","StyledActionButtonGrid","Grid","width","paddingTop","StyledHeader","flexWrap","alignItems","paddingBottom","StyledTitleContainer","StyledTitleSection","flexGrow","StyledTopSection","paddingLeft","paddingRight","StyledAdd","Add","marginRight","StyledBackButton","IconButton","shouldForwardProp","prop","hasTitleComponent","margin","only","marginLeft","StyledInnerWrapper","StyledHeaderContainer","display","justifyContent","StyledCaption","Typography","lineHeight","StyledPageTitle","fontWeight","StyledPageDivider","Divider","marginBottom","PageTitle","title","_jsx","variant","component","children","StyledPageContainer","useAlternateBackground","backgroundColor","palette","semantic","background","height","props","actionBtnTitle","caption","contextButtons","documentTitle","fullWidth","header","hideHeader","actionButtonLink","openLinkInNewTab","pageHeader","showActionButton","showAddIcon","titleComponent","TitleComponent","toPrevious","toParent","strictToParent","navigate","hideDivider","customActionButtons","titleComponentAfter","errorBoundarySomethingWentWrongText","useTheme","isMobile","useMediaQuery","baseUrl","getMicroFrontendAttribute","actionButtonWithHttps","startsWith","actionButtonLinkFinal","undefined","joinUrlPaths","jsx","_jsxs","DocumentTitle","Spacer","size","_Fragment","jsxs","container","direction","item","alignContent","map","button","React","isValidElement","Box","onClick","history","length","ArrowLeft02","gap","Fragment","Button","href","target","rel","FullWidthContainer","FDErrorBoundary","identifier","somethingWentWrongText"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../src/components/PageLayout/index.tsx"],"sourcesContent":["import React, { type ComponentType, type ReactNode } from 'react';\n\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Divider from '@mui/material/Divider';\nimport Grid from '@mui/material/Grid';\nimport IconButton from '@mui/material/IconButton';\nimport { styled, useTheme } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nimport Add from '../../icons/Add';\nimport ArrowLeft02 from '../../icons/ArrowLeft02';\nimport { getMicroFrontendAttribute } from '../../utilities/renderUtilities';\nimport { joinUrlPaths } from '../../utilities/validation';\nimport FDErrorBoundary from '../FDErrorBoundary';\nimport Spacer from '../Spacer';\nimport DocumentTitle from './DocumentTitle';\nimport FullWidthContainer from './FullWidthContainer';\n\nexport const HORIZONTAL_SPACE_CLASSNAME = 'horizontal-content-space';\nexport const LEFT_HORIZONTAL_SPACE_CLASSNAME = 'left-horizontal-content-space';\nexport const RIGHT_HORIZONTAL_SPACE_CLASSNAME = 'right-horizontal-content-space';\nexport const VERTICAL_SPACE_CLASSNAME = 'vertical-content-space';\nexport const maxWidth = 1112;\nconst historyMinLength = 3;\n\nconst StyledWrapper = styled('div')<{ fluid: boolean }>(({ theme, fluid }) => ({\n maxWidth: fluid ? 'none' : maxWidth,\n [theme.breakpoints.down('laptop')]: {\n maxWidth: 'none',\n },\n padding: theme.spacing(2, 4),\n position: 'relative',\n minHeight: '100vh',\n}));\n\nconst StyledActionButtonGrid = styled(Grid)(({ theme }) => ({\n [theme.breakpoints.down('laptop')]: {\n width: '100%',\n paddingTop: theme.spacing(2),\n },\n}));\n\nconst StyledHeader = styled(Grid)(({ theme }) => ({\n flexWrap: 'nowrap',\n alignItems: 'flex-start',\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('laptop')]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(3),\n },\n}));\n\nconst StyledTitleContainer = styled(Grid)(({ theme }) => ({\n paddingTop: theme.spacing(2),\n}));\n\nconst StyledTitleSection = styled(Grid)(() => ({\n flexGrow: 1,\n}));\n\nconst StyledTopSection = styled('div')(({ theme }) => ({\n maxWidth,\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('laptop')]: {\n paddingBottom: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n}));\n\nconst StyledAdd = styled(Add)(({ theme }) => ({\n marginRight: theme.spacing(1),\n}));\n\nconst StyledBackButton = styled(IconButton, {\n shouldForwardProp: (prop) => prop !== 'hasTitleComponent',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n})<{ hasTitleComponent: boolean; component: any }>(({ theme, hasTitleComponent }) => ({\n margin: hasTitleComponent ? theme.spacing(-0.75, 2, -1.5, -1.5) : theme.spacing(-1.5, 2, -1.5, -1.5),\n\n [theme.breakpoints.only('tablet')]: {\n marginLeft: theme.spacing(-2),\n },\n\n [theme.breakpoints.only('base')]: {\n marginLeft: theme.spacing(-2),\n },\n}));\n\nconst StyledInnerWrapper = styled('div')(({ theme }) => ({\n maxWidth,\n marginLeft: theme.spacing(6),\n marginRight: theme.spacing(4),\n paddingBottom: theme.spacing(2),\n\n [theme.breakpoints.only('tablet')]: {\n marginLeft: 12,\n marginRight: theme.spacing(3),\n },\n\n [theme.breakpoints.only('mobile')]: {\n marginLeft: theme.spacing(3),\n marginRight: theme.spacing(3),\n maxWidth: 'none',\n },\n\n [theme.breakpoints.only('base')]: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n maxWidth: 'none',\n },\n}));\n\nconst StyledHeaderContainer = styled(Grid)(() => ({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n}));\nconst StyledCaption = styled(Typography)<{ component: string }>(() => ({\n lineHeight: '26px',\n}));\n\nconst StyledPageTitle = styled(Typography)<{ component: string }>(() => ({\n fontWeight: 'bold',\n}));\n\nconst StyledPageDivider = styled(Divider)(({ theme }) => ({\n marginBottom: theme.spacing(4),\n}));\n\nexport const PageTitle = ({ title }: { title: ReactNode | string }) => (\n <StyledPageTitle component=\"h2\" variant=\"h5\">\n {title}\n </StyledPageTitle>\n);\n\nconst StyledPageContainer = styled('div')<{ useAlternateBackground: boolean }>(\n ({ useAlternateBackground, theme }) => ({\n backgroundColor: useAlternateBackground\n ? theme.palette.semantic.background['background-alternate']\n : theme.palette.semantic.background['background-base'],\n width: '100%',\n height: '100%',\n }),\n);\n\nexport interface Props {\n actionBtnTitle?: string;\n caption?: ReactNode;\n children: ReactNode;\n contextButtons?: ReactNode[];\n documentTitle: string;\n fluid?: boolean;\n fullWidth?: boolean;\n header?: ReactNode;\n hideHeader?: boolean;\n actionButtonLink?: string;\n pageHeader?: ReactNode;\n showActionButton?: boolean;\n showAddIcon?: boolean;\n title: ReactNode;\n titleComponent?: ComponentType<React.PropsWithChildren<unknown>>;\n titleComponentAfter?: ReactNode;\n toPrevious?: boolean;\n toParent?: string;\n strictToParent?: boolean;\n openLinkInNewTab?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n navigate: (to: any) => void;\n hideDivider?: boolean;\n customActionButtons?: ReactNode[];\n useAlternateBackground?: boolean;\n errorBoundarySomethingWentWrongText: string;\n}\n\nconst PageLayout = (props: Props): JSX.Element => {\n const {\n actionBtnTitle,\n caption,\n children,\n contextButtons,\n documentTitle,\n fluid = false,\n fullWidth,\n header,\n hideHeader,\n actionButtonLink,\n openLinkInNewTab = false,\n pageHeader,\n showActionButton,\n showAddIcon,\n title,\n titleComponent: TitleComponent,\n toPrevious,\n toParent,\n strictToParent,\n navigate,\n hideDivider = false,\n customActionButtons,\n useAlternateBackground = false,\n titleComponentAfter,\n errorBoundarySomethingWentWrongText,\n } = props;\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('tablet'));\n\n const baseUrl = getMicroFrontendAttribute('data-portal-base-url') || '/';\n const actionButtonWithHttps = actionButtonLink?.startsWith('https://');\n const getActionButtonLink = () => {\n if (actionButtonWithHttps) {\n return actionButtonLink;\n }\n if (actionButtonLink !== undefined) {\n return joinUrlPaths(baseUrl, actionButtonLink);\n }\n return '';\n };\n const actionButtonLinkFinal = getActionButtonLink();\n\n return (\n <StyledPageContainer useAlternateBackground={useAlternateBackground}>\n <StyledWrapper fluid={fluid}>\n {documentTitle && <DocumentTitle>{documentTitle}</DocumentTitle>}\n\n {pageHeader || null}\n <StyledInnerWrapper>\n {pageHeader && <Spacer size={16} variant=\"vertical\" />}\n {!hideHeader && (\n <>\n <StyledHeader container alignItems=\"center\" direction=\"column\">\n <Grid container item alignContent=\"space-between\" direction=\"row\">\n <StyledHeaderContainer item>\n {contextButtons?.map((button) => (\n <div\n key={`context-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {button}\n </div>\n ))}\n </StyledHeaderContainer>\n </Grid>\n <StyledTitleContainer container item>\n {(toParent || toPrevious) && (\n <Box>\n <StyledBackButton\n aria-label=\"Back\"\n component={'button'}\n data-testid=\"back_button\"\n hasTitleComponent={!!TitleComponent}\n onClick={() => {\n if (toPrevious) {\n navigate(-1);\n } else if (toParent && strictToParent) {\n navigate(toParent);\n } else if (toParent && history.length < historyMinLength) {\n navigate(toParent);\n } else {\n navigate(-1);\n }\n }}\n >\n <ArrowLeft02 />\n </StyledBackButton>\n </Box>\n )}\n\n <StyledTitleSection item>\n {TitleComponent ? (\n <TitleComponent />\n ) : (\n <Box alignItems=\"center\" display=\"flex\" gap={2}>\n <PageTitle title={title} />\n {titleComponentAfter}\n </Box>\n )}\n {caption && (\n <StyledCaption component=\"h3\" variant=\"caption\">\n {caption}\n </StyledCaption>\n )}\n </StyledTitleSection>\n\n {showActionButton && (\n <>\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n <StyledActionButtonGrid item>\n <Button\n data-testid={`Action-button-${actionBtnTitle}`}\n fullWidth={true}\n href={openLinkInNewTab || actionButtonWithHttps ? actionButtonLinkFinal : ''}\n rel={openLinkInNewTab ? 'noopener noreferrer' : undefined}\n target={openLinkInNewTab ? '_blank' : undefined}\n variant=\"contained\"\n onClick={\n !openLinkInNewTab && !actionButtonWithHttps\n ? () => navigate(actionButtonLink)\n : () => {}\n }\n >\n {showAddIcon && <StyledAdd size=\"sm\" />}\n {actionBtnTitle}\n </Button>\n </StyledActionButtonGrid>\n </>\n )}\n {customActionButtons?.map((button) => (\n <div\n key={`custom-action-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n {!isMobile && <Spacer size={16} variant=\"vertical\" />}\n <StyledActionButtonGrid item>{button}</StyledActionButtonGrid>\n </div>\n ))}\n </StyledTitleContainer>\n </StyledHeader>\n {!hideDivider && <StyledPageDivider />}\n </>\n )}\n <FullWidthContainer fullWidth={fullWidth}>\n {header ? <StyledTopSection>{header}</StyledTopSection> : null}\n <FDErrorBoundary\n identifier={documentTitle}\n somethingWentWrongText={errorBoundarySomethingWentWrongText}\n >\n {/* eslint-disable-next-line react/jsx-no-useless-fragment */}\n <>{children}</>\n </FDErrorBoundary>\n </FullWidthContainer>\n </StyledInnerWrapper>\n </StyledWrapper>\n </StyledPageContainer>\n );\n};\n\nexport default PageLayout;\n"],"names":["maxWidth","StyledWrapper","styled","theme","fluid","breakpoints","down","padding","spacing","position","minHeight","StyledActionButtonGrid","Grid","width","paddingTop","StyledHeader","flexWrap","alignItems","paddingBottom","StyledTitleContainer","StyledTitleSection","flexGrow","StyledTopSection","paddingLeft","paddingRight","StyledAdd","Add","marginRight","StyledBackButton","IconButton","shouldForwardProp","prop","hasTitleComponent","margin","only","marginLeft","StyledInnerWrapper","StyledHeaderContainer","display","justifyContent","StyledCaption","Typography","lineHeight","StyledPageTitle","fontWeight","StyledPageDivider","Divider","marginBottom","PageTitle","title","_jsx","component","variant","children","StyledPageContainer","useAlternateBackground","backgroundColor","palette","semantic","background","height","props","actionBtnTitle","caption","contextButtons","documentTitle","fullWidth","header","hideHeader","actionButtonLink","openLinkInNewTab","pageHeader","showActionButton","showAddIcon","titleComponent","TitleComponent","toPrevious","toParent","strictToParent","navigate","hideDivider","customActionButtons","titleComponentAfter","errorBoundarySomethingWentWrongText","useTheme","isMobile","useMediaQuery","baseUrl","getMicroFrontendAttribute","actionButtonWithHttps","startsWith","actionButtonLinkFinal","undefined","joinUrlPaths","jsx","_jsxs","DocumentTitle","Spacer","size","_Fragment","jsxs","container","direction","item","alignContent","map","button","React","isValidElement","Box","onClick","history","length","ArrowLeft02","gap","Button","href","rel","target","FullWidthContainer","FDErrorBoundary","identifier","somethingWentWrongText"],"mappings":"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"}
|
|
@@ -7,9 +7,9 @@ declare const RIGHT_HORIZONTAL_SPACE_CLASSNAME = "right-horizontal-content-space
|
|
|
7
7
|
declare const VERTICAL_SPACE_CLASSNAME = "vertical-content-space";
|
|
8
8
|
declare const maxWidth = 1112;
|
|
9
9
|
declare const PageTitle: ({ title }: {
|
|
10
|
-
title:
|
|
10
|
+
title: ReactNode | string;
|
|
11
11
|
}) => react_jsx_runtime.JSX.Element;
|
|
12
|
-
|
|
12
|
+
interface Props {
|
|
13
13
|
actionBtnTitle?: string;
|
|
14
14
|
caption?: ReactNode;
|
|
15
15
|
children: ReactNode;
|
|
@@ -35,8 +35,8 @@ type Props = {
|
|
|
35
35
|
customActionButtons?: ReactNode[];
|
|
36
36
|
useAlternateBackground?: boolean;
|
|
37
37
|
errorBoundarySomethingWentWrongText: string;
|
|
38
|
-
}
|
|
39
|
-
declare const PageLayout: (props: Props) =>
|
|
38
|
+
}
|
|
39
|
+
declare const PageLayout: (props: Props) => JSX.Element;
|
|
40
40
|
|
|
41
41
|
export { HORIZONTAL_SPACE_CLASSNAME, LEFT_HORIZONTAL_SPACE_CLASSNAME, PageTitle, RIGHT_HORIZONTAL_SPACE_CLASSNAME, VERTICAL_SPACE_CLASSNAME, PageLayout as default, maxWidth };
|
|
42
42
|
export type { Props };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as t,jsxs as i,Fragment as
|
|
1
|
+
import{jsx as t,jsxs as i,Fragment as e}from"react/jsx-runtime";import n from"react";import a from"@mui/material/Box";import o from"@mui/material/Button";import r from"@mui/material/Divider";import d from"@mui/material/Grid";import l from"@mui/material/IconButton";import{styled as m,useTheme as p}from"@mui/material/styles";import c from"@mui/material/Typography";import s from"@mui/material/useMediaQuery";import h from"../../icons/Add/index.js";import g from"../../icons/ArrowLeft02/index.js";import{getMicroFrontendAttribute as u}from"../../utilities/renderUtilities.js";import{joinUrlPaths as f}from"../../utilities/validation.js";import b from"../FDErrorBoundary/index.js";import v from"../Spacer/index.js";import k from"./DocumentTitle.js";import x from"./FullWidthContainer.js";const B="horizontal-content-space",w="left-horizontal-content-space",W="right-horizontal-content-space",y="vertical-content-space",T=1112,C=m("div")((({theme:t,fluid:i})=>({maxWidth:i?"none":T,[t.breakpoints.down("laptop")]:{maxWidth:"none"},padding:t.spacing(2,4),position:"relative",minHeight:"100vh"}))),j=m(d)((({theme:t})=>({[t.breakpoints.down("laptop")]:{width:"100%",paddingTop:t.spacing(2)}}))),A=m(d)((({theme:t})=>({flexWrap:"nowrap",alignItems:"flex-start",paddingTop:t.spacing(3),paddingBottom:t.spacing(3),[t.breakpoints.down("laptop")]:{paddingTop:t.spacing(2),paddingBottom:t.spacing(3)}}))),L=m(d)((({theme:t})=>({paddingTop:t.spacing(2)}))),z=m(d)((()=>({flexGrow:1}))),I=m("div")((({theme:t})=>({maxWidth:T,paddingBottom:t.spacing(3),[t.breakpoints.down("laptop")]:{paddingBottom:t.spacing(2),paddingLeft:t.spacing(2),paddingRight:t.spacing(2)}}))),R=m(h)((({theme:t})=>({marginRight:t.spacing(1)}))),D=m(l,{shouldForwardProp:t=>"hasTitleComponent"!==t})((({theme:t,hasTitleComponent:i})=>({margin:i?t.spacing(-.75,2,-1.5,-1.5):t.spacing(-1.5,2,-1.5,-1.5),[t.breakpoints.only("tablet")]:{marginLeft:t.spacing(-2)},[t.breakpoints.only("base")]:{marginLeft:t.spacing(-2)}}))),H=m("div")((({theme:t})=>({maxWidth:T,marginLeft:t.spacing(6),marginRight:t.spacing(4),paddingBottom:t.spacing(2),[t.breakpoints.only("tablet")]:{marginLeft:12,marginRight:t.spacing(3)},[t.breakpoints.only("mobile")]:{marginLeft:t.spacing(3),marginRight:t.spacing(3),maxWidth:"none"},[t.breakpoints.only("base")]:{marginLeft:t.spacing(2),marginRight:t.spacing(2),maxWidth:"none"}}))),P=m(d)((()=>({display:"flex",flexGrow:1,justifyContent:"flex-end"}))),E=m(c)((()=>({lineHeight:"26px"}))),F=m(c)((()=>({fontWeight:"bold"}))),G=m(r)((({theme:t})=>({marginBottom:t.spacing(4)}))),$=({title:i})=>t(F,{component:"h2",variant:"h5",children:i}),S=m("div")((({useAlternateBackground:t,theme:i})=>({backgroundColor:t?i.palette.semantic.background["background-alternate"]:i.palette.semantic.background["background-base"],width:"100%",height:"100%"}))),V=r=>{const{actionBtnTitle:l,caption:m,children:c,contextButtons:h,documentTitle:B,fluid:w=!1,fullWidth:W,header:y,hideHeader:T,actionButtonLink:F,openLinkInNewTab:V=!1,pageHeader:_,showActionButton:M,showAddIcon:N,title:Q,titleComponent:U,toPrevious:q,toParent:J,strictToParent:K,navigate:O,hideDivider:X=!1,customActionButtons:Y,useAlternateBackground:Z=!1,titleComponentAfter:tt,errorBoundarySomethingWentWrongText:it}=r,et=p(),nt=s(et.breakpoints.down("tablet")),at=u("data-portal-base-url")||"/",ot=F?.startsWith("https://"),rt=ot?F:void 0!==F?f(at,F):"";return t(S,{useAlternateBackground:Z,children:i(C,{fluid:w,children:[B&&t(k,{children:B}),_||null,i(H,{children:[_&&t(v,{size:16,variant:"vertical"}),!T&&i(e,{children:[i(A,{container:!0,alignItems:"center",direction:"column",children:[t(d,{container:!0,item:!0,alignContent:"space-between",direction:"row",children:t(P,{item:!0,children:h?.map((i=>t("div",{children:i},`context-button-${n.isValidElement(i)?i.props?.["data-testid"]||i.props?.children:"fallback"}`)))})}),i(L,{container:!0,item:!0,children:[(J||q)&&t(a,{children:t(D,{"aria-label":"Back",component:"button","data-testid":"back_button",hasTitleComponent:!!U,onClick:()=>{q?O(-1):J&&K||J&&history.length<3?O(J):O(-1)},children:t(g,{})})}),i(z,{item:!0,children:[U?t(U,{}):i(a,{alignItems:"center",display:"flex",gap:2,children:[t($,{title:Q}),tt]}),m&&t(E,{component:"h3",variant:"caption",children:m})]}),M&&i(e,{children:[nt&&t(v,{size:56,variant:"vertical"}),t(j,{item:!0,children:i(o,{"data-testid":`Action-button-${l}`,fullWidth:!0,href:V||ot?rt:"",rel:V?"noopener noreferrer":void 0,target:V?"_blank":void 0,variant:"contained",onClick:V||ot?()=>{}:()=>O(F),children:[N&&t(R,{size:"sm"}),l]})})]}),Y?.map((e=>i("div",{children:[nt&&t(v,{size:56,variant:"vertical"}),!nt&&t(v,{size:16,variant:"vertical"}),t(j,{item:!0,children:e})]},`custom-action-button-${n.isValidElement(e)?e.props?.["data-testid"]||e.props?.children:"fallback"}`)))]})]}),!X&&t(G,{})]}),i(x,{fullWidth:W,children:[y?t(I,{children:y}):null,t(b,{identifier:B,somethingWentWrongText:it,children:t(e,{children:c})})]})]})]})})};export{B as HORIZONTAL_SPACE_CLASSNAME,w as LEFT_HORIZONTAL_SPACE_CLASSNAME,$ as PageTitle,W as RIGHT_HORIZONTAL_SPACE_CLASSNAME,y as VERTICAL_SPACE_CLASSNAME,V as default,T as maxWidth};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/PageLayout/index.tsx"],"sourcesContent":["import React, { type ComponentType, type ReactNode } from 'react';\n\nimport Add from '../../icons/Add';\nimport ArrowLeft02 from '../../icons/ArrowLeft02';\nimport Grid from '@mui/material/Grid';\nimport IconButton from '@mui/material/IconButton';\nimport { styled, useTheme } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nimport DocumentTitle from './DocumentTitle';\nimport FullWidthContainer from './FullWidthContainer';\nimport FDErrorBoundary from '../FDErrorBoundary';\nimport Button from '@mui/material/Button';\nimport { getMicroFrontendAttribute } from '../../utilities/renderUtilities';\nimport { joinUrlPaths } from '../../utilities/validation';\nimport Spacer from '../Spacer';\nimport Box from '@mui/material/Box';\nimport Divider from '@mui/material/Divider';\n\nexport const HORIZONTAL_SPACE_CLASSNAME = 'horizontal-content-space';\nexport const LEFT_HORIZONTAL_SPACE_CLASSNAME = 'left-horizontal-content-space';\nexport const RIGHT_HORIZONTAL_SPACE_CLASSNAME = 'right-horizontal-content-space';\nexport const VERTICAL_SPACE_CLASSNAME = 'vertical-content-space';\nexport const maxWidth = 1112;\nconst historyMinLength = 3;\n\nconst StyledWrapper = styled('div')<{ fluid: boolean }>(({ theme, fluid }) => ({\n maxWidth: fluid ? 'none' : maxWidth,\n [theme.breakpoints.down('md')]: {\n maxWidth: 'none',\n },\n padding: theme.spacing(2, 4),\n position: 'relative',\n minHeight: '100vh',\n}));\n\nconst StyledActionButtonGrid = styled(Grid)(({ theme }) => ({\n [theme.breakpoints.down('sm')]: {\n width: '100%',\n paddingTop: theme.spacing(2),\n },\n}));\n\nconst StyledHeader = styled(Grid)(({ theme }) => ({\n flexWrap: 'nowrap',\n alignItems: 'flex-start',\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('md')]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(3),\n },\n}));\n\nconst StyledTitleContainer = styled(Grid)(({ theme }) => ({\n paddingTop: theme.spacing(2),\n}));\n\nconst StyledTitleSection = styled(Grid)(() => ({\n flexGrow: 1,\n}));\n\nconst StyledTopSection = styled('div')(({ theme }) => ({\n maxWidth,\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('md')]: {\n paddingBottom: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n}));\n\nconst StyledAdd = styled(Add)(({ theme }) => ({\n marginRight: theme.spacing(1),\n}));\n\nconst StyledBackButton = styled(IconButton, {\n shouldForwardProp: (prop) => prop !== 'hasTitleComponent',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n})<{ hasTitleComponent: boolean; component: any }>(({ theme, hasTitleComponent }) => ({\n margin: hasTitleComponent ? theme.spacing(-0.75, 2, -1.5, -1.5) : theme.spacing(-1.5, 2, -1.5, -1.5),\n\n [theme.breakpoints.only('sm')]: {\n marginLeft: theme.spacing(-2),\n },\n\n [theme.breakpoints.only('xs')]: {\n marginLeft: theme.spacing(-2),\n },\n}));\n\nconst StyledInnerWrapper = styled('div')(({ theme }) => ({\n maxWidth,\n marginLeft: theme.spacing(6),\n marginRight: theme.spacing(4),\n paddingBottom: theme.spacing(2),\n\n [theme.breakpoints.only('md')]: {\n marginLeft: 12,\n marginRight: theme.spacing(3),\n },\n\n [theme.breakpoints.only('sm')]: {\n marginLeft: theme.spacing(3),\n marginRight: theme.spacing(3),\n maxWidth: 'none',\n },\n\n [theme.breakpoints.only('xs')]: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n maxWidth: 'none',\n },\n}));\n\nconst StyledHeaderContainer = styled(Grid)(() => ({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n}));\nconst StyledCaption = styled(Typography)<{ component: string }>(() => ({\n lineHeight: '26px',\n}));\n\nconst StyledPageTitle = styled(Typography)<{ component: string }>(() => ({\n fontWeight: 'bold',\n}));\n\nconst StyledPageDivider = styled(Divider)(({ theme }) => ({\n marginBottom: theme.spacing(4),\n}));\n\nexport const PageTitle = ({ title }: { title: string | ReactNode }) => (\n <StyledPageTitle variant=\"h5\" component=\"h2\">\n {title}\n </StyledPageTitle>\n);\n\nconst StyledPageContainer = styled('div')<{ useAlternateBackground: boolean }>(({ useAlternateBackground, theme }) => ({\n backgroundColor: useAlternateBackground\n ? theme.palette.semantic.background['background-alternate']\n : theme.palette.semantic.background['background-base'],\n width: '100%',\n height: '100%',\n}));\n\nexport type Props = {\n actionBtnTitle?: string;\n caption?: ReactNode;\n children: ReactNode;\n contextButtons?: ReactNode[];\n documentTitle: string;\n fluid?: boolean;\n fullWidth?: boolean;\n header?: ReactNode;\n hideHeader?: boolean;\n actionButtonLink?: string;\n pageHeader?: ReactNode;\n showActionButton?: boolean;\n showAddIcon?: boolean;\n title: ReactNode;\n titleComponent?: ComponentType<React.PropsWithChildren<unknown>>;\n titleComponentAfter?: ReactNode;\n toPrevious?: boolean;\n toParent?: string;\n strictToParent?: boolean;\n openLinkInNewTab?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n navigate: (to: any) => void;\n hideDivider?: boolean;\n customActionButtons?: ReactNode[];\n useAlternateBackground?: boolean;\n errorBoundarySomethingWentWrongText: string;\n};\n\nconst PageLayout = (props: Props) => {\n const {\n actionBtnTitle,\n caption,\n children,\n contextButtons,\n documentTitle,\n fluid = false,\n fullWidth,\n header,\n hideHeader,\n actionButtonLink,\n openLinkInNewTab = false,\n pageHeader,\n showActionButton,\n showAddIcon,\n title,\n titleComponent: TitleComponent,\n toPrevious,\n toParent,\n strictToParent,\n navigate,\n hideDivider = false,\n customActionButtons,\n useAlternateBackground = false,\n titleComponentAfter,\n errorBoundarySomethingWentWrongText,\n } = props;\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('md'));\n\n const baseUrl = getMicroFrontendAttribute('data-portal-base-url') || '/';\n const actionButtonWithHttps = actionButtonLink?.startsWith('https://');\n const getActionButtonLink = () => {\n if (actionButtonWithHttps) {\n return actionButtonLink;\n }\n if (actionButtonLink !== undefined) {\n return joinUrlPaths(baseUrl, actionButtonLink);\n }\n return '';\n };\n const actionButtonLinkFinal = getActionButtonLink();\n\n return (\n <StyledPageContainer useAlternateBackground={useAlternateBackground}>\n <StyledWrapper fluid={fluid}>\n {documentTitle && <DocumentTitle>{documentTitle}</DocumentTitle>}\n\n {pageHeader || null}\n <StyledInnerWrapper>\n {pageHeader && <Spacer size={16} variant=\"vertical\" />}\n {!hideHeader && (\n <>\n <StyledHeader container alignItems=\"center\" direction=\"column\">\n <Grid item container direction=\"row\" alignContent=\"space-between\">\n <StyledHeaderContainer item>\n {contextButtons?.map((button) => (\n <div\n key={`context-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {button}\n </div>\n ))}\n </StyledHeaderContainer>\n </Grid>\n <StyledTitleContainer item container>\n {(toParent || toPrevious) && (\n <Box>\n <StyledBackButton\n aria-label=\"Back\"\n data-testid=\"back_button\"\n hasTitleComponent={!!TitleComponent}\n component={'button'}\n onClick={() => {\n if (toPrevious) {\n navigate(-1);\n } else if (toParent && strictToParent) {\n navigate(toParent);\n } else if (toParent && history.length < historyMinLength) {\n navigate(toParent);\n } else {\n navigate(-1);\n }\n }}\n >\n <ArrowLeft02 />\n </StyledBackButton>\n </Box>\n )}\n\n <StyledTitleSection item>\n {TitleComponent ? (\n <TitleComponent />\n ) : (\n <Box display=\"flex\" alignItems=\"center\" gap={2}>\n <PageTitle title={title} />\n {titleComponentAfter}\n </Box>\n )}\n {caption && (\n <StyledCaption variant=\"caption\" component=\"h3\">\n {caption}\n </StyledCaption>\n )}\n </StyledTitleSection>\n\n {showActionButton && (\n <>\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n <StyledActionButtonGrid item>\n <Button\n variant=\"contained\"\n fullWidth={true}\n data-testid={`Action-button-${actionBtnTitle}`}\n href={openLinkInNewTab || actionButtonWithHttps ? actionButtonLinkFinal : ''}\n target={openLinkInNewTab ? '_blank' : undefined}\n rel={openLinkInNewTab ? 'noopener noreferrer' : undefined}\n onClick={\n !openLinkInNewTab && !actionButtonWithHttps ? () => navigate(actionButtonLink) : () => {}\n }\n >\n {showAddIcon && <StyledAdd size=\"sm\" />}\n {actionBtnTitle}\n </Button>\n </StyledActionButtonGrid>\n </>\n )}\n {customActionButtons?.map((button) => (\n <div\n key={`custom-action-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n {!isMobile && <Spacer size={16} variant=\"vertical\" />}\n <StyledActionButtonGrid item>{button}</StyledActionButtonGrid>\n </div>\n ))}\n </StyledTitleContainer>\n </StyledHeader>\n {!hideDivider && <StyledPageDivider />}\n </>\n )}\n <FullWidthContainer fullWidth={fullWidth}>\n {header ? <StyledTopSection>{header}</StyledTopSection> : null}\n <FDErrorBoundary identifier={documentTitle} somethingWentWrongText={errorBoundarySomethingWentWrongText}>\n <>{children}</>\n </FDErrorBoundary>\n </FullWidthContainer>\n </StyledInnerWrapper>\n </StyledWrapper>\n </StyledPageContainer>\n );\n};\n\nexport default PageLayout;\n"],"names":["HORIZONTAL_SPACE_CLASSNAME","LEFT_HORIZONTAL_SPACE_CLASSNAME","RIGHT_HORIZONTAL_SPACE_CLASSNAME","VERTICAL_SPACE_CLASSNAME","maxWidth","StyledWrapper","styled","theme","fluid","breakpoints","down","padding","spacing","position","minHeight","StyledActionButtonGrid","Grid","width","paddingTop","StyledHeader","flexWrap","alignItems","paddingBottom","StyledTitleContainer","StyledTitleSection","flexGrow","StyledTopSection","paddingLeft","paddingRight","StyledAdd","Add","marginRight","StyledBackButton","IconButton","shouldForwardProp","prop","hasTitleComponent","margin","only","marginLeft","StyledInnerWrapper","StyledHeaderContainer","display","justifyContent","StyledCaption","Typography","lineHeight","StyledPageTitle","fontWeight","StyledPageDivider","Divider","marginBottom","PageTitle","title","_jsx","variant","component","children","StyledPageContainer","useAlternateBackground","backgroundColor","palette","semantic","background","height","PageLayout","props","actionBtnTitle","caption","contextButtons","documentTitle","fullWidth","header","hideHeader","actionButtonLink","openLinkInNewTab","pageHeader","showActionButton","showAddIcon","titleComponent","TitleComponent","toPrevious","toParent","strictToParent","navigate","hideDivider","customActionButtons","titleComponentAfter","errorBoundarySomethingWentWrongText","useTheme","isMobile","useMediaQuery","baseUrl","getMicroFrontendAttribute","actionButtonWithHttps","startsWith","actionButtonLinkFinal","undefined","joinUrlPaths","_jsxs","DocumentTitle","Spacer","size","_Fragment","container","direction","item","alignContent","map","button","React","isValidElement","Box","onClick","history","length","ArrowLeft02","gap","Button","href","target","rel","FullWidthContainer","FDErrorBoundary","identifier","somethingWentWrongText"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/PageLayout/index.tsx"],"sourcesContent":["import React, { type ComponentType, type ReactNode } from 'react';\n\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Divider from '@mui/material/Divider';\nimport Grid from '@mui/material/Grid';\nimport IconButton from '@mui/material/IconButton';\nimport { styled, useTheme } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nimport Add from '../../icons/Add';\nimport ArrowLeft02 from '../../icons/ArrowLeft02';\nimport { getMicroFrontendAttribute } from '../../utilities/renderUtilities';\nimport { joinUrlPaths } from '../../utilities/validation';\nimport FDErrorBoundary from '../FDErrorBoundary';\nimport Spacer from '../Spacer';\nimport DocumentTitle from './DocumentTitle';\nimport FullWidthContainer from './FullWidthContainer';\n\nexport const HORIZONTAL_SPACE_CLASSNAME = 'horizontal-content-space';\nexport const LEFT_HORIZONTAL_SPACE_CLASSNAME = 'left-horizontal-content-space';\nexport const RIGHT_HORIZONTAL_SPACE_CLASSNAME = 'right-horizontal-content-space';\nexport const VERTICAL_SPACE_CLASSNAME = 'vertical-content-space';\nexport const maxWidth = 1112;\nconst historyMinLength = 3;\n\nconst StyledWrapper = styled('div')<{ fluid: boolean }>(({ theme, fluid }) => ({\n maxWidth: fluid ? 'none' : maxWidth,\n [theme.breakpoints.down('laptop')]: {\n maxWidth: 'none',\n },\n padding: theme.spacing(2, 4),\n position: 'relative',\n minHeight: '100vh',\n}));\n\nconst StyledActionButtonGrid = styled(Grid)(({ theme }) => ({\n [theme.breakpoints.down('laptop')]: {\n width: '100%',\n paddingTop: theme.spacing(2),\n },\n}));\n\nconst StyledHeader = styled(Grid)(({ theme }) => ({\n flexWrap: 'nowrap',\n alignItems: 'flex-start',\n paddingTop: theme.spacing(3),\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('laptop')]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(3),\n },\n}));\n\nconst StyledTitleContainer = styled(Grid)(({ theme }) => ({\n paddingTop: theme.spacing(2),\n}));\n\nconst StyledTitleSection = styled(Grid)(() => ({\n flexGrow: 1,\n}));\n\nconst StyledTopSection = styled('div')(({ theme }) => ({\n maxWidth,\n paddingBottom: theme.spacing(3),\n\n [theme.breakpoints.down('laptop')]: {\n paddingBottom: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n}));\n\nconst StyledAdd = styled(Add)(({ theme }) => ({\n marginRight: theme.spacing(1),\n}));\n\nconst StyledBackButton = styled(IconButton, {\n shouldForwardProp: (prop) => prop !== 'hasTitleComponent',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n})<{ hasTitleComponent: boolean; component: any }>(({ theme, hasTitleComponent }) => ({\n margin: hasTitleComponent ? theme.spacing(-0.75, 2, -1.5, -1.5) : theme.spacing(-1.5, 2, -1.5, -1.5),\n\n [theme.breakpoints.only('tablet')]: {\n marginLeft: theme.spacing(-2),\n },\n\n [theme.breakpoints.only('base')]: {\n marginLeft: theme.spacing(-2),\n },\n}));\n\nconst StyledInnerWrapper = styled('div')(({ theme }) => ({\n maxWidth,\n marginLeft: theme.spacing(6),\n marginRight: theme.spacing(4),\n paddingBottom: theme.spacing(2),\n\n [theme.breakpoints.only('tablet')]: {\n marginLeft: 12,\n marginRight: theme.spacing(3),\n },\n\n [theme.breakpoints.only('mobile')]: {\n marginLeft: theme.spacing(3),\n marginRight: theme.spacing(3),\n maxWidth: 'none',\n },\n\n [theme.breakpoints.only('base')]: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n maxWidth: 'none',\n },\n}));\n\nconst StyledHeaderContainer = styled(Grid)(() => ({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n}));\nconst StyledCaption = styled(Typography)<{ component: string }>(() => ({\n lineHeight: '26px',\n}));\n\nconst StyledPageTitle = styled(Typography)<{ component: string }>(() => ({\n fontWeight: 'bold',\n}));\n\nconst StyledPageDivider = styled(Divider)(({ theme }) => ({\n marginBottom: theme.spacing(4),\n}));\n\nexport const PageTitle = ({ title }: { title: ReactNode | string }) => (\n <StyledPageTitle component=\"h2\" variant=\"h5\">\n {title}\n </StyledPageTitle>\n);\n\nconst StyledPageContainer = styled('div')<{ useAlternateBackground: boolean }>(\n ({ useAlternateBackground, theme }) => ({\n backgroundColor: useAlternateBackground\n ? theme.palette.semantic.background['background-alternate']\n : theme.palette.semantic.background['background-base'],\n width: '100%',\n height: '100%',\n }),\n);\n\nexport interface Props {\n actionBtnTitle?: string;\n caption?: ReactNode;\n children: ReactNode;\n contextButtons?: ReactNode[];\n documentTitle: string;\n fluid?: boolean;\n fullWidth?: boolean;\n header?: ReactNode;\n hideHeader?: boolean;\n actionButtonLink?: string;\n pageHeader?: ReactNode;\n showActionButton?: boolean;\n showAddIcon?: boolean;\n title: ReactNode;\n titleComponent?: ComponentType<React.PropsWithChildren<unknown>>;\n titleComponentAfter?: ReactNode;\n toPrevious?: boolean;\n toParent?: string;\n strictToParent?: boolean;\n openLinkInNewTab?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n navigate: (to: any) => void;\n hideDivider?: boolean;\n customActionButtons?: ReactNode[];\n useAlternateBackground?: boolean;\n errorBoundarySomethingWentWrongText: string;\n}\n\nconst PageLayout = (props: Props): JSX.Element => {\n const {\n actionBtnTitle,\n caption,\n children,\n contextButtons,\n documentTitle,\n fluid = false,\n fullWidth,\n header,\n hideHeader,\n actionButtonLink,\n openLinkInNewTab = false,\n pageHeader,\n showActionButton,\n showAddIcon,\n title,\n titleComponent: TitleComponent,\n toPrevious,\n toParent,\n strictToParent,\n navigate,\n hideDivider = false,\n customActionButtons,\n useAlternateBackground = false,\n titleComponentAfter,\n errorBoundarySomethingWentWrongText,\n } = props;\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('tablet'));\n\n const baseUrl = getMicroFrontendAttribute('data-portal-base-url') || '/';\n const actionButtonWithHttps = actionButtonLink?.startsWith('https://');\n const getActionButtonLink = () => {\n if (actionButtonWithHttps) {\n return actionButtonLink;\n }\n if (actionButtonLink !== undefined) {\n return joinUrlPaths(baseUrl, actionButtonLink);\n }\n return '';\n };\n const actionButtonLinkFinal = getActionButtonLink();\n\n return (\n <StyledPageContainer useAlternateBackground={useAlternateBackground}>\n <StyledWrapper fluid={fluid}>\n {documentTitle && <DocumentTitle>{documentTitle}</DocumentTitle>}\n\n {pageHeader || null}\n <StyledInnerWrapper>\n {pageHeader && <Spacer size={16} variant=\"vertical\" />}\n {!hideHeader && (\n <>\n <StyledHeader container alignItems=\"center\" direction=\"column\">\n <Grid container item alignContent=\"space-between\" direction=\"row\">\n <StyledHeaderContainer item>\n {contextButtons?.map((button) => (\n <div\n key={`context-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {button}\n </div>\n ))}\n </StyledHeaderContainer>\n </Grid>\n <StyledTitleContainer container item>\n {(toParent || toPrevious) && (\n <Box>\n <StyledBackButton\n aria-label=\"Back\"\n component={'button'}\n data-testid=\"back_button\"\n hasTitleComponent={!!TitleComponent}\n onClick={() => {\n if (toPrevious) {\n navigate(-1);\n } else if (toParent && strictToParent) {\n navigate(toParent);\n } else if (toParent && history.length < historyMinLength) {\n navigate(toParent);\n } else {\n navigate(-1);\n }\n }}\n >\n <ArrowLeft02 />\n </StyledBackButton>\n </Box>\n )}\n\n <StyledTitleSection item>\n {TitleComponent ? (\n <TitleComponent />\n ) : (\n <Box alignItems=\"center\" display=\"flex\" gap={2}>\n <PageTitle title={title} />\n {titleComponentAfter}\n </Box>\n )}\n {caption && (\n <StyledCaption component=\"h3\" variant=\"caption\">\n {caption}\n </StyledCaption>\n )}\n </StyledTitleSection>\n\n {showActionButton && (\n <>\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n <StyledActionButtonGrid item>\n <Button\n data-testid={`Action-button-${actionBtnTitle}`}\n fullWidth={true}\n href={openLinkInNewTab || actionButtonWithHttps ? actionButtonLinkFinal : ''}\n rel={openLinkInNewTab ? 'noopener noreferrer' : undefined}\n target={openLinkInNewTab ? '_blank' : undefined}\n variant=\"contained\"\n onClick={\n !openLinkInNewTab && !actionButtonWithHttps\n ? () => navigate(actionButtonLink)\n : () => {}\n }\n >\n {showAddIcon && <StyledAdd size=\"sm\" />}\n {actionBtnTitle}\n </Button>\n </StyledActionButtonGrid>\n </>\n )}\n {customActionButtons?.map((button) => (\n <div\n key={`custom-action-button-${React.isValidElement(button) ? button.props?.['data-testid'] || button.props?.children : 'fallback'}`}\n >\n {isMobile && <Spacer size={56} variant=\"vertical\" />}\n {!isMobile && <Spacer size={16} variant=\"vertical\" />}\n <StyledActionButtonGrid item>{button}</StyledActionButtonGrid>\n </div>\n ))}\n </StyledTitleContainer>\n </StyledHeader>\n {!hideDivider && <StyledPageDivider />}\n </>\n )}\n <FullWidthContainer fullWidth={fullWidth}>\n {header ? <StyledTopSection>{header}</StyledTopSection> : null}\n <FDErrorBoundary\n identifier={documentTitle}\n somethingWentWrongText={errorBoundarySomethingWentWrongText}\n >\n {/* eslint-disable-next-line react/jsx-no-useless-fragment */}\n <>{children}</>\n </FDErrorBoundary>\n </FullWidthContainer>\n </StyledInnerWrapper>\n </StyledWrapper>\n </StyledPageContainer>\n );\n};\n\nexport default PageLayout;\n"],"names":["HORIZONTAL_SPACE_CLASSNAME","LEFT_HORIZONTAL_SPACE_CLASSNAME","RIGHT_HORIZONTAL_SPACE_CLASSNAME","VERTICAL_SPACE_CLASSNAME","maxWidth","StyledWrapper","styled","theme","fluid","breakpoints","down","padding","spacing","position","minHeight","StyledActionButtonGrid","Grid","width","paddingTop","StyledHeader","flexWrap","alignItems","paddingBottom","StyledTitleContainer","StyledTitleSection","flexGrow","StyledTopSection","paddingLeft","paddingRight","StyledAdd","Add","marginRight","StyledBackButton","IconButton","shouldForwardProp","prop","hasTitleComponent","margin","only","marginLeft","StyledInnerWrapper","StyledHeaderContainer","display","justifyContent","StyledCaption","Typography","lineHeight","StyledPageTitle","fontWeight","StyledPageDivider","Divider","marginBottom","PageTitle","title","_jsx","component","variant","children","StyledPageContainer","useAlternateBackground","backgroundColor","palette","semantic","background","height","PageLayout","props","actionBtnTitle","caption","contextButtons","documentTitle","fullWidth","header","hideHeader","actionButtonLink","openLinkInNewTab","pageHeader","showActionButton","showAddIcon","titleComponent","TitleComponent","toPrevious","toParent","strictToParent","navigate","hideDivider","customActionButtons","titleComponentAfter","errorBoundarySomethingWentWrongText","useTheme","isMobile","useMediaQuery","baseUrl","getMicroFrontendAttribute","actionButtonWithHttps","startsWith","actionButtonLinkFinal","undefined","joinUrlPaths","_jsxs","DocumentTitle","Spacer","size","_Fragment","container","direction","item","alignContent","map","button","React","isValidElement","Box","onClick","history","length","ArrowLeft02","gap","Button","href","rel","target","FullWidthContainer","FDErrorBoundary","identifier","somethingWentWrongText"],"mappings":"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"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),t=require("@mui/material/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
`,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
`,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
`,x=
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
`,u=
|
|
21
|
-
|
|
22
|
-
`;module.exports=({children:t,loadedFromPortal:
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("@mui/material/AppBar"),r=require("@mui/material/Box"),a=require("@mui/material/CssBaseline"),i=require("@mui/material/Drawer"),l=require("@mui/material/styles"),n=require("@mui/material/Typography");const s=198,o=l.styled("div")((({theme:e})=>({display:"flex",justifyContent:"center",alignItems:"center",backgroundColor:e.palette.semantic.background["background-sunken"],height:"65px",color:e.palette.semantic.text["text-weak"],borderBottom:`2px solid ${e.palette.semantic.stroke["stroke-weak"]}`}))),d=l.styled("div")((({theme:e})=>({display:"flex",justifyContent:"center",alignItems:"center",backgroundColor:e.palette.semantic.background["background-sunken"],height:"100%",color:e.palette.semantic.text["text-weak"]}))),p=l.styled(t)`
|
|
2
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"calc(100% - 198px)":"100%"};
|
|
3
|
+
margin-left: ${({theme:e})=>e.breakpoints.up("tablet")?"198px":"0"};
|
|
4
|
+
box-shadow: none;
|
|
5
|
+
`,c=l.styled(i)`
|
|
6
|
+
display: ${({theme:e})=>e.breakpoints.up("tablet")?"block":"none"};
|
|
7
|
+
& .MuiDrawer-paper {
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
width: ${s}px;
|
|
10
|
+
border-color: ${({theme:e})=>e.palette.semantic.stroke["stroke-weak"]};
|
|
11
|
+
border-width: 2px;
|
|
12
|
+
}
|
|
13
|
+
`,m=l.styled(r)`
|
|
14
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"198px":"0"};
|
|
15
|
+
flex-shrink: ${({theme:e})=>e.breakpoints.up("tablet")?"0":"1"};
|
|
16
|
+
`,x=l.styled(r)`
|
|
17
|
+
flex-grow: 1;
|
|
18
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"calc(100% - 198px)":"100%"};
|
|
19
|
+
margin-top: 65px;
|
|
20
|
+
`,u=l.styled(n)`
|
|
21
|
+
font-weight: bold;
|
|
22
|
+
`;module.exports=({children:t,loadedFromPortal:i})=>{if(i)return e.jsx(e.Fragment,{children:t});const l=e.jsx(d,{children:e.jsx(u,{children:"Sidebar"})});return e.jsxs(r,{sx:{display:"flex"},children:[e.jsx(a,{}),e.jsx(p,{position:"fixed",children:e.jsx(o,{children:e.jsx(u,{children:"Header"})})}),e.jsx(m,{"aria-label":"mailbox folders",as:"nav",children:e.jsx(c,{open:!0,variant:"permanent",children:l})}),e.jsx(x,{as:"main",children:t})]})};
|
|
23
23
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../src/components/PortalMock/index.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../src/components/PortalMock/index.tsx"],"sourcesContent":["import AppBar from '@mui/material/AppBar';\nimport Box from '@mui/material/Box';\nimport CssBaseline from '@mui/material/CssBaseline';\nimport Drawer from '@mui/material/Drawer';\nimport { styled } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\n\nconst drawerWidth = 198;\n\nconst StyledHeader = styled('div')(({ theme }) => ({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: theme.palette.semantic.background['background-sunken'],\n height: '65px',\n color: theme.palette.semantic.text['text-weak'],\n borderBottom: `2px solid ${theme.palette.semantic.stroke['stroke-weak']}`,\n}));\n\nconst StyledSidebar = styled('div')(({ theme }) => ({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: theme.palette.semantic.background['background-sunken'],\n height: '100%',\n color: theme.palette.semantic.text['text-weak'],\n}));\n\nconst StyledAppBar = styled(AppBar)`\n width: ${({ theme }) => (theme.breakpoints.up('tablet') ? `calc(100% - ${drawerWidth}px)` : '100%')};\n margin-left: ${({ theme }) => (theme.breakpoints.up('tablet') ? `${drawerWidth}px` : '0')};\n box-shadow: none;\n`;\n\nconst StyledDrawer = styled(Drawer)`\n display: ${({ theme }) => (theme.breakpoints.up('tablet') ? 'block' : 'none')};\n & .MuiDrawer-paper {\n box-sizing: border-box;\n width: ${drawerWidth}px;\n border-color: ${({ theme }) => theme.palette.semantic.stroke['stroke-weak']};\n border-width: 2px;\n }\n`;\n\nconst StyledNavBox = styled(Box)`\n width: ${({ theme }) => (theme.breakpoints.up('tablet') ? `${drawerWidth}px` : '0')};\n flex-shrink: ${({ theme }) => (theme.breakpoints.up('tablet') ? '0' : '1')};\n`;\n\nconst StyledMainBox = styled(Box)`\n flex-grow: 1;\n width: ${({ theme }) => (theme.breakpoints.up('tablet') ? `calc(100% - ${drawerWidth}px)` : '100%')};\n margin-top: 65px;\n`;\n\nconst StyledBoldTypography = styled(Typography)`\n font-weight: bold;\n`;\n\ninterface Props {\n loadedFromPortal: boolean;\n children: React.ReactNode;\n}\n\nconst PortalMock = ({ children, loadedFromPortal }: Props) => {\n if (loadedFromPortal) {\n /* eslint-disable-next-line react/jsx-no-useless-fragment */\n return <>{children}</>;\n }\n\n const drawer = (\n <StyledSidebar>\n <StyledBoldTypography>Sidebar</StyledBoldTypography>\n </StyledSidebar>\n );\n\n return (\n <Box sx={{ display: 'flex' }}>\n <CssBaseline />\n <StyledAppBar position=\"fixed\">\n <StyledHeader>\n <StyledBoldTypography>Header</StyledBoldTypography>\n </StyledHeader>\n </StyledAppBar>\n <StyledNavBox aria-label=\"mailbox folders\" as=\"nav\">\n <StyledDrawer open variant=\"permanent\">\n {drawer}\n </StyledDrawer>\n </StyledNavBox>\n <StyledMainBox as=\"main\">{children}</StyledMainBox>\n </Box>\n );\n};\n\nexport default PortalMock;\n"],"names":["drawerWidth","StyledHeader","styled","theme","display","justifyContent","alignItems","backgroundColor","palette","semantic","background","height","color","text","borderBottom","stroke","StyledSidebar","StyledAppBar","AppBar","breakpoints","up","StyledDrawer","Drawer","StyledNavBox","Box","StyledMainBox","StyledBoldTypography","Typography","children","loadedFromPortal","_jsx","jsx","_Fragment","Fragment","drawer","_jsxs","jsxs","sx","CssBaseline","position","as","open","variant"],"mappings":"kQAOA,MAAMA,EAAc,IAEdC,EAAeC,EAAAA,OAAO,MAAPA,EAAc,EAAGC,YAAa,CACjDC,QAAS,OACTC,eAAgB,SAChBC,WAAY,SACZC,gBAAiBJ,EAAMK,QAAQC,SAASC,WAAW,qBACnDC,OAAQ,OACRC,MAAOT,EAAMK,QAAQC,SAASI,KAAK,aACnCC,aAAc,aAAaX,EAAMK,QAAQC,SAASM,OAAO,qBAGrDC,EAAgBd,EAAAA,OAAO,MAAPA,EAAc,EAAGC,YAAa,CAClDC,QAAS,OACTC,eAAgB,SAChBC,WAAY,SACZC,gBAAiBJ,EAAMK,QAAQC,SAASC,WAAW,qBACnDC,OAAQ,OACRC,MAAOT,EAAMK,QAAQC,SAASI,KAAK,iBAG/BI,EAAef,EAAAA,OAAOgB,EAAO;WACxB,EAAGf,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,qBAAkC;iBAC7E,EAAGjB,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,QAAqB;;EAIjFC,EAAenB,EAAAA,OAAOoB,EAAO;aACtB,EAAGnB,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,QAAU;;;aAG3DpB;oBACO,EAAGG,WAAYA,EAAMK,QAAQC,SAASM,OAAO;;;EAK3DQ,EAAerB,EAAAA,OAAOsB,EAAI;WACrB,EAAGrB,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,QAAqB;iBAChE,EAAGjB,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,IAAM;EAGlEK,EAAgBvB,EAAAA,OAAOsB,EAAI;;WAEtB,EAAGrB,WAAaA,EAAMgB,YAAYC,GAAG,UAAY,qBAAkC;;EAIxFM,EAAuBxB,EAAAA,OAAOyB,EAAW;;iBAS5B,EAAGC,WAAUC,uBAC9B,GAAIA,EAEF,OAAOC,EAAAC,IAAAC,EAAAC,SAAA,CAAAL,SAAGA,IAGZ,MAAMM,EACJJ,EAAAA,IAACd,EACC,CAAAY,SAAAE,EAAAA,IAACJ,EAAoB,CAAAE,SAAA,cAIzB,OACEO,EAAAC,KAACZ,EAAG,CAACa,GAAI,CAAEjC,QAAS,QAAQwB,SAAA,CAC1BE,MAACQ,EAAW,CAAA,GACZR,EAAAC,IAACd,EAAY,CAACsB,SAAS,QAAOX,SAC5BE,EAAAA,IAAC7B,EACC,CAAA2B,SAAAE,EAAAA,IAACJ,EAAoB,CAAAE,SAAA,eAGzBE,EAACC,IAAAR,EAAwB,CAAA,aAAA,kBAAkBiB,GAAG,MAC5CZ,SAAAE,EAAAA,IAACT,EAAY,CAACoB,MAAI,EAACC,QAAQ,YACxBd,SAAAM,MAGLJ,EAAAA,IAACL,EAAc,CAAAe,GAAG,OAAQZ,SAAAA,MACtB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
interface Props {
|
|
4
4
|
loadedFromPortal: boolean;
|
|
5
5
|
children: React.ReactNode;
|
|
6
|
-
}
|
|
6
|
+
}
|
|
7
7
|
declare const PortalMock: ({ children, loadedFromPortal }: Props) => react_jsx_runtime.JSX.Element;
|
|
8
8
|
|
|
9
9
|
export { PortalMock as default };
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
`,h=
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
`,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
`,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
`,
|
|
21
|
-
|
|
22
|
-
`,k=({children:
|
|
1
|
+
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import a from"@mui/material/AppBar";import i from"@mui/material/Box";import o from"@mui/material/CssBaseline";import n from"@mui/material/Drawer";import{styled as l}from"@mui/material/styles";import m from"@mui/material/Typography";const p=198,s=l("div")((({theme:e})=>({display:"flex",justifyContent:"center",alignItems:"center",backgroundColor:e.palette.semantic.background["background-sunken"],height:"65px",color:e.palette.semantic.text["text-weak"],borderBottom:`2px solid ${e.palette.semantic.stroke["stroke-weak"]}`}))),d=l("div")((({theme:e})=>({display:"flex",justifyContent:"center",alignItems:"center",backgroundColor:e.palette.semantic.background["background-sunken"],height:"100%",color:e.palette.semantic.text["text-weak"]}))),c=l(a)`
|
|
2
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"calc(100% - 198px)":"100%"};
|
|
3
|
+
margin-left: ${({theme:e})=>e.breakpoints.up("tablet")?"198px":"0"};
|
|
4
|
+
box-shadow: none;
|
|
5
|
+
`,h=l(n)`
|
|
6
|
+
display: ${({theme:e})=>e.breakpoints.up("tablet")?"block":"none"};
|
|
7
|
+
& .MuiDrawer-paper {
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
width: ${p}px;
|
|
10
|
+
border-color: ${({theme:e})=>e.palette.semantic.stroke["stroke-weak"]};
|
|
11
|
+
border-width: 2px;
|
|
12
|
+
}
|
|
13
|
+
`,b=l(i)`
|
|
14
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"198px":"0"};
|
|
15
|
+
flex-shrink: ${({theme:e})=>e.breakpoints.up("tablet")?"0":"1"};
|
|
16
|
+
`,u=l(i)`
|
|
17
|
+
flex-grow: 1;
|
|
18
|
+
width: ${({theme:e})=>e.breakpoints.up("tablet")?"calc(100% - 198px)":"100%"};
|
|
19
|
+
margin-top: 65px;
|
|
20
|
+
`,x=l(m)`
|
|
21
|
+
font-weight: bold;
|
|
22
|
+
`,k=({children:a,loadedFromPortal:n})=>{if(n)return e(t,{children:a});const l=e(d,{children:e(x,{children:"Sidebar"})});return r(i,{sx:{display:"flex"},children:[e(o,{}),e(c,{position:"fixed",children:e(s,{children:e(x,{children:"Header"})})}),e(b,{"aria-label":"mailbox folders",as:"nav",children:e(h,{open:!0,variant:"permanent",children:l})}),e(u,{as:"main",children:a})]})};export{k as default};
|
|
23
23
|
//# sourceMappingURL=index.js.map
|