dinocollab-shared 1.2.13 → 1.2.15
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/cart/widget.js +1 -1
- package/dist/layout-global/app-footer.js +1 -1
- package/dist/layout-global/app-footer.js.map +1 -1
- package/dist/layout-global/index.js +1 -1
- package/dist/notification/notify-detail.js +1 -1
- package/dist/notification/notify-detail.js.map +1 -1
- package/dist/types/layout-global/app-footer.d.ts +4 -0
- package/dist/types/layout-global/app-footer.d.ts.map +1 -1
- package/dist/types/layout-global/index.d.ts +0 -1
- package/dist/types/layout-global/index.d.ts.map +1 -1
- package/dist/types/layout-global/layout-global-api.d.ts +1 -17
- package/dist/types/layout-global/layout-global-api.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/layout-global/layout-global-api.js +0 -2
- package/dist/layout-global/layout-global-api.js.map +0 -1
package/dist/cart/widget.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{inherits as r,createClass as e,classCallCheck as t,callSuper as n,defineProperty as o,objectSpread2 as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as l,jsx as a}from"react/jsx-runtime";import{Component as c,Fragment as s}from"react";import{ImageWithFallback as d}from"dinocollab-core/components";import{Badge as m,Typography as u,Divider as p,Button as h,Box as f,IconButton as v}from"@mui/material";import C from"@mui/icons-material/Remove";import g from"@mui/icons-material/ShoppingCartOutlined";import x from"@mui/icons-material/ShoppingCartCheckout";import{getTotalData as b}from"./helpers.js";import{
|
|
1
|
+
import{inherits as r,createClass as e,classCallCheck as t,callSuper as n,defineProperty as o,objectSpread2 as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as l,jsx as a}from"react/jsx-runtime";import{Component as c,Fragment as s}from"react";import{ImageWithFallback as d}from"dinocollab-core/components";import{Badge as m,Typography as u,Divider as p,Button as h,Box as f,IconButton as v}from"@mui/material";import C from"@mui/icons-material/Remove";import g from"@mui/icons-material/ShoppingCartOutlined";import x from"@mui/icons-material/ShoppingCartCheckout";import{getTotalData as b}from"./helpers.js";import{MenuStyled as y,CartContentStyled as k,cartContentClasses as P}from"./styled.js";import{IconButtonDark as T}from"../components/buttons.js";import{NoDataPanel as S}from"../components/no-data-panel.js";var N=function(){function N(r){var e;return t(this,N),e=n(this,N,[r]),o(e,"render",function(){var r;return l(s,{children:[a(T,{onClick:function(r){return e.onOpen(r.currentTarget)},children:a(m,{badgeContent:e.state.hydrated&&null!==(r=e.carts.length)&&void 0!==r?r:0,color:"error",children:a(g,{fontSize:"small"})})}),a(y,{disableScrollLock:!0,anchorEl:e.state.anchorEl,open:Boolean(e.state.anchorEl),onClose:e.onClose,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{component:"div"},children:e.renderContent()})]})}),o(e,"renderContent",function(){var r,t=b(e.carts);return l(k,{children:[l("div",{className:P.header,children:[l(u,{variant:"h6",component:"span",sx:{flex:1},children:["Your Cart (",null!==(r=t.quantity)&&void 0!==r?r:0," items)"]}),l(u,{variant:"h6",component:"span",children:["Total: $ ",t.price.toFixed(2)]})]}),a(p,{}),l("div",{className:P.items,children:[e.carts.map(function(r,t){return a(s,{children:e.renderItem(r)},"key"+t)}),e.carts.length<1&&a(S,{title:"Your cart is empty",subTitle:"Try adding some products",sx:{height:"100%",m:1}})]}),a(p,{}),a("div",{className:P.footer,children:a(h,i(i(i({},e.props.hrefCart?{component:"a",href:e.props.hrefCart}:{}),{},{color:"inherit",endIcon:a(x,{}),onClick:function(r){e.onClose(),e.props.onMoveToCartClick&&e.props.onMoveToCartClick(r)},disabled:e.carts.length<1},e.props.buttonMoveToCartProps),{},{children:"Show in cart"}))})]})}),o(e,"renderTitle",function(r){var t,n=e.props,o=n.itemTitleProps,l=n.itemTitlePropsGetter,c=l?l(r,e.onClose):null!=o?o:{};return a(u,i(i({className:P.itemTitle,noWrap:!0,variant:"subtitle1"},c),{},{children:null!==(t=r.ProductName)&&void 0!==t?t:"Unknown Product"}))}),o(e,"renderItem",function(r){var t,n,o,i;return l("div",{className:P.item,children:[a(d,{className:P.itemImg,src:null==r?void 0:r.PictureUrl,title:null==r?void 0:r.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture"}),l("div",{className:P.itemContent,children:[a(u,{className:P.itemTag,variant:"caption",sx:{color:null!==(t=r.PriceColor)&&void 0!==t?t:"#000"},children:null!==(n=r.PriceName)&&void 0!==n?n:"Unknown Price"}),e.renderTitle(r),l(f,{sx:{display:"flex",alignItems:"flex-end",gap:"2px",justifyContent:"flex-end"},children:[l(u,{variant:"subtitle1",children:["$ ",null!==(o=r.Price)&&void 0!==o?o:0]}),l(u,{variant:"body1",sx:{fontSize:"14px",mb:"3px",color:"#818181"},children:["x",null!==(i=r.Amount)&&void 0!==i?i:0," urls"]})]})]}),a(v,{size:"small",onClick:function(){var t,n;return null===(t=(n=e.props).onRemoveCart)||void 0===t?void 0:t.call(n,r)},sx:{color:"#818181"},children:a(C,{})})]})}),o(e,"onOpen",function(r){e.setState({anchorEl:r})}),o(e,"onClose",function(){e.setState({anchorEl:null})}),e.state={anchorEl:null,hydrated:!1},e}return r(N,c),e(N,[{key:"carts",get:function(){var r;return null!==(r=this.props.carts)&&void 0!==r?r:[]}},{key:"componentDidMount",value:function(){this.setState({hydrated:!0})}}])}(),j=function(r){var e=function(e){return a(N,i(i({},r),e))};return e.displayName="CartWidget",e};export{N as CartWidget,j as createCartWidget};
|
|
2
2
|
//# sourceMappingURL=widget.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{inherits as r,createClass as e,objectSpread2 as
|
|
1
|
+
import{inherits as r,createClass as e,objectSpread2 as o,classCallCheck as i,callSuper as n,defineProperty as l}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as t,jsx as a}from"react/jsx-runtime";import{Component as s}from"react";import{Container as c,Grid as p,Typography as d,Divider as m,Box as u,IconButton as h}from"@mui/material";import{AppLogo as v}from"./app-logo.js";import{TextLineBreak as f}from"./ui.units.js";import{FooterStyled as g,appFooterClasses as k,AppFooterNav as N}from"./app-footer.styled.js";import{getFooterNavConfigs as x,bgFooterUrl as b,appLogoUrl as C,footerDescription as y,appSocialConfigs as F,getCopyrightText as j}from"./configs.js";var I=function(){function I(){var r;i(this,I);for(var e=arguments.length,o=new Array(e),t=0;t<e;t++)o[t]=arguments[t];return r=n(this,I,[].concat(o)),l(r,"handleNavItemClick",function(e,o){r.props.onNavItemClick&&o&&r.props.onNavItemClick(e,o)}),r}return r(I,s),e(I,[{key:"render",value:function(){var r,e,i,n,l,s=this,I=x(this.props.baseUrl);return t(g,o(o({className:k.root},null===(r=this.props.slots)||void 0===r?void 0:r.footerElementProps),{},{children:[a("img",{src:null!==(e=this.props.backgroundUrl)&&void 0!==e?e:b,alt:"Footer Background",className:k.background,loading:"lazy"}),t(c,{maxWidth:!1,className:k.content,children:[t(p,{container:!0,children:[t(p,{item:!0,xs:12,lg:7,children:[null===(i=this.props.slots)||void 0===i||null===(i=i.left)||void 0===i?void 0:i.top,a(v,{src:null!==(n=this.props.logoUrl)&&void 0!==n?n:C,href:this.props.baseUrl.home,className:k.appLogo}),a(d,{variant:"subtitle1",className:k.description,children:a(f,{children:y})}),null===(l=this.props.slots)||void 0===l||null===(l=l.left)||void 0===l?void 0:l.bottom]}),a(p,{item:!0,xs:12,lg:5,children:a(N,{children:a(p,{container:!0,children:I.map(function(r,e){return a(p,{item:!0,xs:12,md:6,children:a("ul",{children:r.map(function(r,e){var o,i,n;return a("li",{className:k.navItem,children:a(d,{variant:"h5",className:k.navItemText,component:"a",href:null!==(o=null===(i=r.navLink)||void 0===i?void 0:i.href)&&void 0!==o?o:"/",target:null===(n=r.navLink)||void 0===n?void 0:n.target,onClick:function(e){return s.handleNavItemClick(e,r.navLink)},children:a("span",{children:r.title})})},e)})})},e)})})})})]}),t("div",{className:k.copyright,children:[a(m,{sx:{borderColor:"#1E1E1E",mt:{xs:"20px",md:"80px"}}}),a("ul",{className:k.socialList,children:F.map(function(r,e){var i=o({"--social-color-hover":r.color||"#FFFFFF"},r.sx);return a(u,{component:"li",sx:i,children:a(h,{component:"a",href:r.link,target:"_blank",rel:"noopener noreferrer",children:r.icon})},e)})}),a("div",{className:k.copyrightText,children:a(d,{variant:"subtitle1",children:j()})})]})]})]}))}}])}(),L=function(r){var e=function(e){return a(I,o(o({},r),e))};return e.displayName="AppFooter",e};export{I as AppFooter,L as createAppFooter,I as default};
|
|
2
2
|
//# sourceMappingURL=app-footer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-footer.js","sources":["../../src/layout-global/app-footer.tsx"],"sourcesContent":["import { Component, FC } from 'react'\r\nimport { Box, Container, Divider, Grid, IconButton, Typography } from '@mui/material'\r\nimport type { BoxProps, SxProps, Theme } from '@mui/material'\r\nimport { AppLogo } from './app-logo'\r\nimport { TextLineBreak } from './ui.units'\r\nimport { IAppThemeProviderProps } from './app-theme-provider'\r\nimport { appFooterClasses, AppFooterNav, FooterStyled } from './app-footer.styled'\r\nimport { getFooterNavConfigs, appSocialConfigs, footerDescription, bgFooterUrl, appLogoUrl, getCopyrightText } from './configs'\r\nimport type { IAppSiteBaseUrl } from '../types'\r\nimport type { INavLink, NavItemClickFunction } from './types'\r\n\r\nexport interface IAppFooterSlots {\r\n themeProps?: Partial<IAppThemeProviderProps>\r\n footerElementProps?: Partial<BoxProps>\r\n}\r\n\r\nexport interface IAppFooterProps {\r\n baseUrl: IAppSiteBaseUrl\r\n logoUrl?: string\r\n backgroundUrl?: string\r\n onNavItemClick?: NavItemClickFunction\r\n slots?: IAppFooterSlots\r\n}\r\n\r\nexport class AppFooter extends Component<IAppFooterProps> {\r\n render() {\r\n const footerNavConfigs = getFooterNavConfigs(this.props.baseUrl)\r\n return (\r\n <FooterStyled className={appFooterClasses.root} {...this.props.slots?.footerElementProps}>\r\n <img src={this.props.backgroundUrl ?? bgFooterUrl} alt='Footer Background' className={appFooterClasses.background} loading='lazy' />\r\n <Container maxWidth={false} className={appFooterClasses.content}>\r\n <Grid container>\r\n <Grid item xs={12} lg={7}>\r\n <AppLogo src={this.props.logoUrl ?? appLogoUrl} href={this.props.baseUrl.home} className={appFooterClasses.appLogo} />\r\n <Typography variant='subtitle1' className={appFooterClasses.description}>\r\n <TextLineBreak>{footerDescription}</TextLineBreak>\r\n </Typography>\r\n </Grid>\r\n <Grid item xs={12} lg={5}>\r\n <AppFooterNav>\r\n <Grid container>\r\n {footerNavConfigs.map((navs, index) => (\r\n <Grid key={index} item xs={12} md={6}>\r\n <ul>\r\n {navs.map((nav, navIndex) => (\r\n <li key={navIndex} className={appFooterClasses.navItem}>\r\n <Typography\r\n variant='h5'\r\n className={appFooterClasses.navItemText}\r\n component='a'\r\n href={nav.navLink?.href ?? '/'}\r\n target={nav.navLink?.target}\r\n onClick={(event) => this.handleNavItemClick(event, nav.navLink)}\r\n >\r\n <span>{nav.title}</span>\r\n </Typography>\r\n </li>\r\n ))}\r\n </ul>\r\n </Grid>\r\n ))}\r\n </Grid>\r\n </AppFooterNav>\r\n </Grid>\r\n </Grid>\r\n <div className={appFooterClasses.copyright}>\r\n <Divider sx={{ borderColor: '#1E1E1E', mt: { xs: '20px', md: '80px' } }} />\r\n <ul className={appFooterClasses.socialList}>\r\n {appSocialConfigs.map((social, index) => {\r\n const sxProps: SxProps<Theme> = { '--social-color-hover': social.color || '#FFFFFF', ...social.sx }\r\n return (\r\n <Box component='li' key={index} sx={sxProps}>\r\n <IconButton component='a' href={social.link} target='_blank' rel='noopener noreferrer'>\r\n {social.icon}\r\n </IconButton>\r\n </Box>\r\n )\r\n })}\r\n </ul>\r\n <div className={appFooterClasses.copyrightText}>\r\n <Typography variant='subtitle1'>{getCopyrightText()}</Typography>\r\n </div>\r\n </div>\r\n </Container>\r\n </FooterStyled>\r\n )\r\n }\r\n\r\n handleNavItemClick = (event: React.MouseEvent<HTMLAnchorElement, MouseEvent>, item?: INavLink) => {\r\n if (!this.props.onNavItemClick || !item) return\r\n this.props.onNavItemClick(event, item)\r\n }\r\n}\r\nexport default AppFooter\r\n\r\nexport const createAppFooter = (params: IAppFooterProps): FC<Partial<IAppFooterProps>> => {\r\n const _AppFooter: FC<Partial<IAppFooterProps>> = (props) => <AppFooter {...params} {...props} />\r\n _AppFooter.displayName = 'AppFooter'\r\n return _AppFooter\r\n}\r\n"],"names":["AppFooter","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","event","item","props","onNavItemClick","_inherits","Component","_createClass","key","value","_this$props$slots","_this$props$backgroun","_this$props$logoUrl","_this2","footerNavConfigs","getFooterNavConfigs","baseUrl","_jsxs","FooterStyled","_objectSpread","className","appFooterClasses","root","slots","footerElementProps","children","_jsx","src","backgroundUrl","bgFooterUrl","alt","background","loading","Container","maxWidth","content","Grid","container","xs","lg","AppLogo","logoUrl","appLogoUrl","href","home","appLogo","Typography","variant","description","TextLineBreak","footerDescription","AppFooterNav","map","navs","index","md","nav","navIndex","_nav$navLink$href","_nav$navLink","_nav$navLink2","navItem","navItemText","component","navLink","target","onClick","handleNavItemClick","title","copyright","Divider","sx","borderColor","mt","socialList","appSocialConfigs","social","sxProps","color","Box","IconButton","link","rel","icon","copyrightText","getCopyrightText","createAppFooter","params","_AppFooter","displayName"],"mappings":"
|
|
1
|
+
{"version":3,"file":"app-footer.js","sources":["../../src/layout-global/app-footer.tsx"],"sourcesContent":["import { Component, FC } from 'react'\r\nimport { Box, Container, Divider, Grid, IconButton, Typography } from '@mui/material'\r\nimport type { BoxProps, SxProps, Theme } from '@mui/material'\r\nimport { AppLogo } from './app-logo'\r\nimport { TextLineBreak } from './ui.units'\r\nimport { IAppThemeProviderProps } from './app-theme-provider'\r\nimport { appFooterClasses, AppFooterNav, FooterStyled } from './app-footer.styled'\r\nimport { getFooterNavConfigs, appSocialConfigs, footerDescription, bgFooterUrl, appLogoUrl, getCopyrightText } from './configs'\r\nimport type { IAppSiteBaseUrl } from '../types'\r\nimport type { INavLink, NavItemClickFunction } from './types'\r\n\r\nexport interface IAppFooterSlots {\r\n themeProps?: Partial<IAppThemeProviderProps>\r\n footerElementProps?: Partial<BoxProps>\r\n left?: {\r\n top?: React.ReactNode\r\n bottom?: React.ReactNode\r\n }\r\n}\r\n\r\nexport interface IAppFooterProps {\r\n baseUrl: IAppSiteBaseUrl\r\n logoUrl?: string\r\n backgroundUrl?: string\r\n onNavItemClick?: NavItemClickFunction\r\n slots?: IAppFooterSlots\r\n}\r\n\r\nexport class AppFooter extends Component<IAppFooterProps> {\r\n render() {\r\n const footerNavConfigs = getFooterNavConfigs(this.props.baseUrl)\r\n return (\r\n <FooterStyled className={appFooterClasses.root} {...this.props.slots?.footerElementProps}>\r\n <img src={this.props.backgroundUrl ?? bgFooterUrl} alt='Footer Background' className={appFooterClasses.background} loading='lazy' />\r\n <Container maxWidth={false} className={appFooterClasses.content}>\r\n <Grid container>\r\n <Grid item xs={12} lg={7}>\r\n {this.props.slots?.left?.top}\r\n <AppLogo src={this.props.logoUrl ?? appLogoUrl} href={this.props.baseUrl.home} className={appFooterClasses.appLogo} />\r\n <Typography variant='subtitle1' className={appFooterClasses.description}>\r\n <TextLineBreak>{footerDescription}</TextLineBreak>\r\n </Typography>\r\n {this.props.slots?.left?.bottom}\r\n </Grid>\r\n <Grid item xs={12} lg={5}>\r\n <AppFooterNav>\r\n <Grid container>\r\n {footerNavConfigs.map((navs, index) => (\r\n <Grid key={index} item xs={12} md={6}>\r\n <ul>\r\n {navs.map((nav, navIndex) => (\r\n <li key={navIndex} className={appFooterClasses.navItem}>\r\n <Typography\r\n variant='h5'\r\n className={appFooterClasses.navItemText}\r\n component='a'\r\n href={nav.navLink?.href ?? '/'}\r\n target={nav.navLink?.target}\r\n onClick={(event) => this.handleNavItemClick(event, nav.navLink)}\r\n >\r\n <span>{nav.title}</span>\r\n </Typography>\r\n </li>\r\n ))}\r\n </ul>\r\n </Grid>\r\n ))}\r\n </Grid>\r\n </AppFooterNav>\r\n </Grid>\r\n </Grid>\r\n <div className={appFooterClasses.copyright}>\r\n <Divider sx={{ borderColor: '#1E1E1E', mt: { xs: '20px', md: '80px' } }} />\r\n <ul className={appFooterClasses.socialList}>\r\n {appSocialConfigs.map((social, index) => {\r\n const sxProps: SxProps<Theme> = { '--social-color-hover': social.color || '#FFFFFF', ...social.sx }\r\n return (\r\n <Box component='li' key={index} sx={sxProps}>\r\n <IconButton component='a' href={social.link} target='_blank' rel='noopener noreferrer'>\r\n {social.icon}\r\n </IconButton>\r\n </Box>\r\n )\r\n })}\r\n </ul>\r\n <div className={appFooterClasses.copyrightText}>\r\n <Typography variant='subtitle1'>{getCopyrightText()}</Typography>\r\n </div>\r\n </div>\r\n </Container>\r\n </FooterStyled>\r\n )\r\n }\r\n\r\n handleNavItemClick = (event: React.MouseEvent<HTMLAnchorElement, MouseEvent>, item?: INavLink) => {\r\n if (!this.props.onNavItemClick || !item) return\r\n this.props.onNavItemClick(event, item)\r\n }\r\n}\r\nexport default AppFooter\r\n\r\nexport const createAppFooter = (params: IAppFooterProps): FC<Partial<IAppFooterProps>> => {\r\n const _AppFooter: FC<Partial<IAppFooterProps>> = (props) => <AppFooter {...params} {...props} />\r\n _AppFooter.displayName = 'AppFooter'\r\n return _AppFooter\r\n}\r\n"],"names":["AppFooter","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","event","item","props","onNavItemClick","_inherits","Component","_createClass","key","value","_this$props$slots","_this$props$backgroun","_this$props$slots2","_this$props$logoUrl","_this$props$slots3","_this2","footerNavConfigs","getFooterNavConfigs","baseUrl","_jsxs","FooterStyled","_objectSpread","className","appFooterClasses","root","slots","footerElementProps","children","_jsx","src","backgroundUrl","bgFooterUrl","alt","background","loading","Container","maxWidth","content","Grid","container","xs","lg","left","top","AppLogo","logoUrl","appLogoUrl","href","home","appLogo","Typography","variant","description","TextLineBreak","footerDescription","bottom","AppFooterNav","map","navs","index","md","nav","navIndex","_nav$navLink$href","_nav$navLink","_nav$navLink2","navItem","navItemText","component","navLink","target","onClick","handleNavItemClick","title","copyright","Divider","sx","borderColor","mt","socialList","appSocialConfigs","social","sxProps","color","Box","IconButton","link","rel","icon","copyrightText","getCopyrightText","createAppFooter","params","_AppFooter","displayName"],"mappings":"wqBA4BaA,IAAAA,aAAU,SAAAA,IAAA,IAAAC,EAAAC,OAAAF,GAAA,IAAA,IAAAG,EAAAC,UAAAC,OAAAC,EAAAC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAAF,EAAAE,GAAAJ,UAAAI,GAqEpB,OArEoBP,EAAAQ,EAAAC,KAAAV,EAAAW,GAAAA,OAAAL,IAAAM,EAAAX,EAAA,qBAkEA,SAACY,EAAwDC,GACvEb,EAAKc,MAAMC,gBAAmBF,GACnCb,EAAKc,MAAMC,eAAeH,EAAOC,KAClCb,CAAA,CAAA,OAAAgB,EAAAjB,EArE4BkB,GAqE5BC,EAAAnB,EAAA,CAAA,CAAAoB,IAAA,SAAAC,MApED,WAAM,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAjB,KACEkB,EAAmBC,EAAoBnB,KAAKK,MAAMe,SACxD,OACEC,EAACC,EAAYC,EAAAA,EAAA,CAACC,UAAWC,EAAiBC,MAA0B,QAAtBd,EAAMZ,KAAKK,MAAMsB,aAAK,IAAAf,OAAA,EAAhBA,EAAkBgB,oBAAkB,CAAA,EAAA,CACtFC,SAAA,CAAAC,EAAA,MAAA,CAAKC,IAA6BlB,QAA1BA,EAAEb,KAAKK,MAAM2B,qBAAanB,IAAAA,EAAAA,EAAIoB,EAAaC,IAAI,oBAAoBV,UAAWC,EAAiBU,WAAYC,QAAQ,SAC3Hf,EAACgB,EAAS,CAACC,UAAU,EAAOd,UAAWC,EAAiBc,QACtDV,SAAA,CAAAR,EAACmB,EAAK,CAAAC,WACJ,EAAAZ,SAAA,CAAAR,EAACmB,EAAK,CAAApC,MAAK,EAAAsC,GAAI,GAAIC,GAAI,EACpBd,SAAA,CAAgBf,QAAhBA,EAAAd,KAAKK,MAAMsB,aAAKb,IAAAA,GAAMA,QAANA,EAAhBA,EAAkB8B,YAAlB9B,IAAsBA,OAAtBA,EAAAA,EAAwB+B,IACzBf,EAACgB,EAAQ,CAAAf,IAAuBhB,QAApBA,EAAEf,KAAKK,MAAM0C,eAAOhC,IAAAA,EAAAA,EAAIiC,EAAYC,KAAMjD,KAAKK,MAAMe,QAAQ8B,KAAM1B,UAAWC,EAAiB0B,UAC3GrB,EAACsB,EAAU,CAACC,QAAQ,YAAY7B,UAAWC,EAAiB6B,YAC1DzB,SAAAC,EAACyB,EAAa,CAAA1B,SAAE2B,MAEDxC,QADJA,EACZhB,KAAKK,MAAMsB,iBAAKX,WAAAA,EAAhBA,EAAkB4B,YAAI,IAAA5B,OAAA,EAAtBA,EAAwByC,UAE3B3B,EAACU,EAAK,CAAApC,QAAKsC,GAAI,GAAIC,GAAI,WACrBb,EAAC4B,YACC5B,EAACU,GAAKC,WAAS,EAAAZ,SACZX,EAAiByC,IAAI,SAACC,EAAMC,GAAK,OAChC/B,EAACU,EAAI,CAAapC,MAAK,EAAAsC,GAAI,GAAIoB,GAAI,EACjCjC,SAAAC,EAAA,KAAA,CAAAD,SACG+B,EAAKD,IAAI,SAACI,EAAKC,GAAQ,IAAAC,EAAAC,EAAAC,EAAA,OACtBrC,EAAA,KAAA,CAAmBN,UAAWC,EAAiB2C,iBAC7CtC,EAACsB,EACC,CAAAC,QAAQ,KACR7B,UAAWC,EAAiB4C,YAC5BC,UAAU,IACVrB,KAAuB,QAAnBgB,EAAa,QAAbC,EAAEH,EAAIQ,eAAJL,IAAWA,OAAXA,EAAAA,EAAajB,YAAIgB,IAAAA,EAAAA,EAAI,IAC3BO,OAAmB,QAAbL,EAAEJ,EAAIQ,eAAO,IAAAJ,OAAA,EAAXA,EAAaK,OACrBC,QAAS,SAACtE,GAAK,OAAKc,EAAKyD,mBAAmBvE,EAAO4D,EAAIQ,QAAQ,EAE/D1C,SAAAC,EAAA,OAAA,CAAAD,SAAOkC,EAAIY,WATNX,EAYV,MAfMH,EAkBZ,YAKTxC,SAAKG,UAAWC,EAAiBmD,UAC/B/C,SAAA,CAAAC,EAAC+C,EAAQ,CAAAC,GAAI,CAAEC,YAAa,UAAWC,GAAI,CAAEtC,GAAI,OAAQoB,GAAI,WAC7DhC,EAAA,KAAA,CAAIN,UAAWC,EAAiBwD,WAAUpD,SACvCqD,EAAiBvB,IAAI,SAACwB,EAAQtB,GAC7B,IAAMuB,EAAO7D,EAAA,CAAqB,uBAAwB4D,EAAOE,OAAS,WAAcF,EAAOL,IAC/F,OACEhD,EAACwD,GAAIhB,UAAU,KAAiBQ,GAAIM,WAClCtD,EAACyD,GAAWjB,UAAU,IAAIrB,KAAMkC,EAAOK,KAAMhB,OAAO,SAASiB,IAAI,sBAC9D5D,SAAAsD,EAAOO,QAFa7B,EAM5B,KAEH/B,EAAK,MAAA,CAAAN,UAAWC,EAAiBkE,cAAa9D,SAC5CC,EAACsB,GAAWC,QAAQ,YAAWxB,SAAE+D,iBAM7C,IAAC,IASUC,EAAkB,SAACC,GAC9B,IAAMC,EAA2C,SAAC1F,GAAK,OAAKyB,EAACxC,EAASiC,EAAAA,EAAA,CAAA,EAAKuE,GAAYzF,GAAS,EAEhG,OADA0F,EAAWC,YAAc,YAClBD,CACT"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{AppHeader,createAppHeader}from"./app-header.js";export{appHeaderClasses}from"./app-header.styled.js";export{AppFooter,createAppFooter}from"./app-footer.js";export{appFooterClasses}from"./app-footer.styled.js";export{AppThemeProvider}from"./app-theme-provider.js";export{AppLogo}from"./app-logo.js";export{ENavKey}from"./types.js";export{ButtonAnimation}from"./animated-tabs.units.js";
|
|
1
|
+
export{AppHeader,createAppHeader}from"./app-header.js";export{appHeaderClasses}from"./app-header.styled.js";export{AppFooter,createAppFooter}from"./app-footer.js";export{appFooterClasses}from"./app-footer.styled.js";export{AppThemeProvider}from"./app-theme-provider.js";export{AppLogo}from"./app-logo.js";export{ENavKey}from"./types.js";export{ButtonAnimation}from"./animated-tabs.units.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{inherits as e,createClass as t,classCallCheck as
|
|
1
|
+
import{inherits as e,createClass as t,classCallCheck as a,callSuper as i,defineProperty as r}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as l,Fragment as n,jsxs as o}from"react/jsx-runtime";import"react-quill/dist/quill.snow.css";import{Component as s}from"react";import{styled as d,Box as c,Typography as h,Tooltip as p,IconButton as m,Divider as u,Button as f}from"@mui/material";import x from"@mui/icons-material/Close";import g from"@mui/icons-material/KeyboardArrowLeft";import C from"@mui/icons-material/KeyboardArrowRight";import{NotifyDetailStyled as v,notifyDetailClasses as y}from"./styled.js";var S=function(){function d(e){var t;return a(this,d),t=i(this,d,[e]),r(t,"renderControl",function(){return t.props.data.length<2?l(c,{}):o(R,{children:[l(m,{disabled:t.state.indexSelected<=0,onClick:t.handleClickLeft,children:l(g,{})}),o(h,{children:[t.state.indexSelected+1," / ",t.props.data.length]}),l(m,{disabled:t.state.indexSelected>=t.props.data.length-1,onClick:t.handleClickRight,children:l(C,{})})]})}),r(t,"handleClickLeft",function(){var e=t.state.indexSelected-1;e<0||t.setState({indexSelected:e})}),r(t,"handleClickRight",function(){var e=t.state.indexSelected+1;e>=t.props.data.length||t.setState({indexSelected:e})}),r(t,"handleRead",function(){var e,a,i,r,l=t.props.data[t.state.indexSelected];null===(e=(a=t.props).onRead)||void 0===e||e.call(a,l),t.handleClickRight(),t.state.indexSelected>=t.props.data.length-1&&(null===(i=(r=t.props).onClose)||void 0===i||i.call(r))}),r(t,"getData",function(){var e=t.props.data,a=t.state.indexSelected,i=e[a];return i||0===a?i:void t.setState({indexSelected:0})}),t.state={indexSelected:0},t}return e(d,s),t(d,[{key:"render",value:function(){var e=this.getData();return e?o(v,{className:y.root,children:[o("div",{className:y.header,children:[l(h,{variant:"h6",className:y.title,children:e.Title}),l(p,{title:"Close",children:l(m,{onClick:this.props.onClose,className:y.closeButton,children:l(x,{})})})]}),l(u,{flexItem:!0,variant:"middle",sx:{opacity:.3}}),l(k,{children:l("div",{className:"ql-editor",dangerouslySetInnerHTML:{__html:e.Content}})}),l(u,{flexItem:!0,variant:"middle",sx:{opacity:.3}}),o("div",{className:y.footer,children:[this.renderControl(),o("div",{className:y.footerActions,children:[!e.IsRead&&l(f,{color:"inherit",onClick:this.props.onClose,sx:{textTransform:"unset"},children:"Remind me later"}),!e.IsRead&&l(f,{color:"primary",onClick:this.handleRead,sx:{textTransform:"unset",fontWeight:600},children:"Mark as read"}),e.IsRead&&l(f,{color:"primary",onClick:this.props.onClose,sx:{textTransform:"unset"},children:"Close"})]})]})]}):l(n,{})}}])}(),k=d(c)(function(e){var t=e.theme;return{width:"100%",minHeight:"350px",maxHeight:"calc(100vh - 128px)",overflow:"auto",margin:"0 4px",padding:"0 8px",color:t.palette.grey[900],fontFamily:"var(--font-primary, 'Roboto', 'Arial', sans-serif)","--color-body":t.palette.grey[900],"& .ql-toolbar.ql-snow":{display:"none"},"& .ql-container.ql-snow":{border:"none"},"& .ql-editor":{paddingLeft:0,paddingRight:0,height:"unset"},img:{maxWidth:"90%",height:"auto",marginLeft:"auto",marginRight:"auto",display:"block"}}}),R=d(c)({display:"flex",alignItems:"center",gap:"8px"});export{S as default};
|
|
2
2
|
//# sourceMappingURL=notify-detail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notify-detail.js","sources":["../../src/notification/notify-detail.tsx"],"sourcesContent":["import 'react-quill/dist/quill.snow.css'\r\nimport { Component } from 'react'\r\nimport { Box, Button, styled, Typography, Divider, IconButton, Tooltip
|
|
1
|
+
{"version":3,"file":"notify-detail.js","sources":["../../src/notification/notify-detail.tsx"],"sourcesContent":["import 'react-quill/dist/quill.snow.css'\r\nimport { Component } from 'react'\r\nimport { Box, Button, styled, Typography, Divider, IconButton, Tooltip } from '@mui/material'\r\nimport CloseIcon from '@mui/icons-material/Close'\r\nimport KeyboardArrowLeftIcon from '@mui/icons-material/KeyboardArrowLeft'\r\nimport KeyboardArrowRightIcon from '@mui/icons-material/KeyboardArrowRight'\r\nimport { INotification } from './types'\r\nimport { notifyDetailClasses, NotifyDetailStyled } from './styled'\r\n\r\ninterface IProps {\r\n data: INotification[]\r\n onRead?: (value: INotification) => void\r\n onClose?: () => void\r\n}\r\n\r\ninterface IState {\r\n indexSelected: number\r\n}\r\n\r\nclass NotifyDetail extends Component<IProps, IState> {\r\n constructor(props: IProps) {\r\n super(props)\r\n this.state = { indexSelected: 0 }\r\n }\r\n\r\n render() {\r\n const data = this.getData()\r\n if (!data) return <></>\r\n return (\r\n <NotifyDetailStyled className={notifyDetailClasses.root}>\r\n <div className={notifyDetailClasses.header}>\r\n <Typography variant='h6' className={notifyDetailClasses.title}>\r\n {data.Title}\r\n </Typography>\r\n <Tooltip title='Close'>\r\n <IconButton onClick={this.props.onClose} className={notifyDetailClasses.closeButton}>\r\n <CloseIcon />\r\n </IconButton>\r\n </Tooltip>\r\n </div>\r\n <Divider flexItem variant='middle' sx={{ opacity: 0.3 }} />\r\n <TextEditorWrapper>\r\n <div className='ql-editor' dangerouslySetInnerHTML={{ __html: data.Content }} />\r\n </TextEditorWrapper>\r\n <Divider flexItem variant='middle' sx={{ opacity: 0.3 }} />\r\n <div className={notifyDetailClasses.footer}>\r\n {this.renderControl()}\r\n <div className={notifyDetailClasses.footerActions}>\r\n {!data.IsRead && (\r\n <Button color='inherit' onClick={this.props.onClose} sx={{ textTransform: 'unset' }}>\r\n {'Remind me later'}\r\n </Button>\r\n )}\r\n {!data.IsRead && (\r\n <Button color='primary' onClick={this.handleRead} sx={{ textTransform: 'unset', fontWeight: 600 }}>\r\n Mark as read\r\n </Button>\r\n )}\r\n {data.IsRead && (\r\n <Button color='primary' onClick={this.props.onClose} sx={{ textTransform: 'unset' }}>\r\n Close\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </NotifyDetailStyled>\r\n )\r\n }\r\n\r\n renderControl = () => {\r\n if (this.props.data.length < 2) return <Box />\r\n return (\r\n <FlexCenter>\r\n <IconButton disabled={this.state.indexSelected <= 0} onClick={this.handleClickLeft}>\r\n <KeyboardArrowLeftIcon />\r\n </IconButton>\r\n <Typography>\r\n {this.state.indexSelected + 1} / {this.props.data.length}\r\n </Typography>\r\n <IconButton disabled={this.state.indexSelected >= this.props.data.length - 1} onClick={this.handleClickRight}>\r\n <KeyboardArrowRightIcon />\r\n </IconButton>\r\n </FlexCenter>\r\n )\r\n }\r\n\r\n handleClickLeft = () => {\r\n const index = this.state.indexSelected - 1\r\n if (index < 0) return\r\n this.setState({ indexSelected: index })\r\n }\r\n\r\n handleClickRight = () => {\r\n const index = this.state.indexSelected + 1\r\n if (index >= this.props.data.length) return\r\n this.setState({ indexSelected: index })\r\n }\r\n\r\n handleRead = () => {\r\n const data = this.props.data[this.state.indexSelected]\r\n this.props.onRead?.(data)\r\n this.handleClickRight()\r\n if (this.state.indexSelected >= this.props.data.length - 1) this.props.onClose?.()\r\n }\r\n\r\n getData = () => {\r\n const { data } = this.props\r\n const { indexSelected } = this.state\r\n const item = data[indexSelected]\r\n if (!item && indexSelected !== 0) {\r\n this.setState({ indexSelected: 0 })\r\n return\r\n } else {\r\n return item\r\n }\r\n }\r\n}\r\n\r\nexport default NotifyDetail\r\n\r\nconst TextEditorWrapper = styled(Box)(({ theme }) => ({\r\n width: '100%',\r\n minHeight: '350px',\r\n maxHeight: 'calc(100vh - 128px)',\r\n overflow: 'auto',\r\n margin: '0 4px',\r\n padding: '0 8px',\r\n color: theme.palette.grey[900],\r\n fontFamily: \"var(--font-primary, 'Roboto', 'Arial', sans-serif)\",\r\n '--color-body': theme.palette.grey[900],\r\n '& .ql-toolbar.ql-snow': { display: 'none' },\r\n '& .ql-container.ql-snow': { border: 'none' },\r\n '& .ql-editor': { paddingLeft: 0, paddingRight: 0, height: 'unset' },\r\n img: { maxWidth: '90%', height: 'auto', marginLeft: 'auto', marginRight: 'auto', display: 'block' }\r\n}))\r\n\r\nconst FlexCenter = styled(Box)({ display: 'flex', alignItems: 'center', gap: '8px' })\r\n"],"names":["NotifyDetail","props","_this","_classCallCheck","_callSuper","_defineProperty","data","length","_jsx","Box","_jsxs","FlexCenter","children","IconButton","disabled","state","indexSelected","onClick","handleClickLeft","KeyboardArrowLeftIcon","Typography","handleClickRight","KeyboardArrowRightIcon","index","setState","_this$props$onRead","_this$props","_this$props$onClose","_this$props2","onRead","call","onClose","item","_inherits","Component","_createClass","key","value","this","getData","NotifyDetailStyled","className","notifyDetailClasses","root","header","variant","title","Title","Tooltip","closeButton","CloseIcon","Divider","flexItem","sx","opacity","TextEditorWrapper","dangerouslySetInnerHTML","__html","Content","footer","renderControl","footerActions","IsRead","Button","color","textTransform","handleRead","fontWeight","styled","_ref","theme","width","minHeight","maxHeight","overflow","margin","padding","palette","grey","fontFamily","display","border","paddingLeft","paddingRight","height","img","maxWidth","marginLeft","marginRight","alignItems","gap"],"mappings":"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"}
|
|
@@ -6,6 +6,10 @@ import type { INavLink, NavItemClickFunction } from './types';
|
|
|
6
6
|
export interface IAppFooterSlots {
|
|
7
7
|
themeProps?: Partial<IAppThemeProviderProps>;
|
|
8
8
|
footerElementProps?: Partial<BoxProps>;
|
|
9
|
+
left?: {
|
|
10
|
+
top?: React.ReactNode;
|
|
11
|
+
bottom?: React.ReactNode;
|
|
12
|
+
};
|
|
9
13
|
}
|
|
10
14
|
export interface IAppFooterProps {
|
|
11
15
|
baseUrl: IAppSiteBaseUrl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-footer.d.ts","sourceRoot":"","sources":["../../../src/layout-global/app-footer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAA;AAG7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAC5C,kBAAkB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"app-footer.d.ts","sourceRoot":"","sources":["../../../src/layout-global/app-footer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAA;AAG7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAC5C,kBAAkB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IACtC,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;KACzB,CAAA;CACF;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,eAAe,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,oBAAoB,CAAA;IACrC,KAAK,CAAC,EAAE,eAAe,CAAA;CACxB;AAED,qBAAa,SAAU,SAAQ,SAAS,CAAC,eAAe,CAAC;IACvD,MAAM;IAiEN,kBAAkB,UAAW,gBAAgB,CAAC,iBAAiB,EAAE,UAAU,CAAC,SAAS,QAAQ,UAG5F;CACF;AACD,eAAe,SAAS,CAAA;AAExB,eAAO,MAAM,eAAe,WAAY,eAAe,KAAG,GAAG,QAAQ,eAAe,CAAC,CAIpF,CAAA"}
|
|
@@ -9,5 +9,4 @@ export { ENavKey } from './types';
|
|
|
9
9
|
export type { IAppNav, INavLink, INavLinkOptions, NavItemClickFunction } from './types';
|
|
10
10
|
export { ButtonAnimation } from './animated-tabs.units';
|
|
11
11
|
export type { IButtonAnimationProps } from './animated-tabs.units';
|
|
12
|
-
export * from './layout-global-api';
|
|
13
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layout-global/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,cAAc,sBAAsB,CAAA;AAEpC,cAAc,YAAY,CAAA;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEvF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layout-global/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,cAAc,sBAAsB,CAAA;AAEpC,cAAc,YAAY,CAAA;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEvF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA"}
|
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { INavLink, NavItemClickFunction } from './types';
|
|
3
|
-
export type ButtonPropsGetterHook = () => {
|
|
4
|
-
buttonProps: (item: INavLink) => Partial<IButtonAnimationProps>;
|
|
5
|
-
};
|
|
6
|
-
export interface ILayoutGlobalApiProvider {
|
|
7
|
-
useButtonPropsGetter: ButtonPropsGetterHook;
|
|
8
|
-
navClicked: NavItemClickFunction;
|
|
9
|
-
}
|
|
10
|
-
export declare class LayoutGlobalApi {
|
|
11
|
-
static key_provider: string;
|
|
12
|
-
static get provider(): ILayoutGlobalApiProvider;
|
|
13
|
-
static setProvider(provider: ILayoutGlobalApiProvider): void;
|
|
14
|
-
useButtonPropsGetter: ButtonPropsGetterHook;
|
|
15
|
-
handleNavClicked: NavItemClickFunction;
|
|
16
|
-
}
|
|
17
|
-
export declare const layoutGlobalApi: LayoutGlobalApi;
|
|
1
|
+
export {};
|
|
18
2
|
//# sourceMappingURL=layout-global-api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-global-api.d.ts","sourceRoot":"","sources":["../../../src/layout-global/layout-global-api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"layout-global-api.d.ts","sourceRoot":"","sources":["../../../src/layout-global/layout-global-api.ts"],"names":[],"mappings":"AAkDA,OAAO,EAAE,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{defineProperty as e,createClass as o,classCallCheck as r}from"../_virtual/_rollupPluginBabelHelpers.js";import{createObjectSingleton as t}from"dinocollab-core/utils";var n=o(function o(){r(this,o),e(this,"useButtonPropsGetter",function(){return{buttonProps:function(){return console.log("LayoutGlobalApiProviderDefault.buttonProps called"),{}}}}),e(this,"navClicked",function(){console.log("LayoutGlobalApiProviderDefault.navClicked called")})}),l=function(){function l(){r(this,l),e(this,"useButtonPropsGetter",function(){return l.provider.useButtonPropsGetter()}),e(this,"handleNavClicked",function(e,o){l.provider.navClicked(e,o)})}return o(l,null,[{key:"provider",get:function(){var e;return null!==(e=t(l.key_provider).get())&&void 0!==e?e:new n}},{key:"setProvider",value:function(e){t(l.key_provider).set(null!=e?e:new n)}}])}();e(l,"key_provider","__layout_global_key_provider__");var i=new l;export{l as LayoutGlobalApi,i as layoutGlobalApi};
|
|
2
|
-
//# sourceMappingURL=layout-global-api.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout-global-api.js","sources":["../../src/layout-global/layout-global-api.ts"],"sourcesContent":["import { createObjectSingleton } from 'dinocollab-core/utils'\r\nimport { IButtonAnimationProps } from './animated-tabs.units'\r\nimport { INavLink, NavItemClickFunction } from './types'\r\n\r\nexport type ButtonPropsGetterHook = () => { buttonProps: (item: INavLink) => Partial<IButtonAnimationProps> }\r\n\r\nexport interface ILayoutGlobalApiProvider {\r\n useButtonPropsGetter: ButtonPropsGetterHook\r\n navClicked: NavItemClickFunction\r\n}\r\n\r\nclass LayoutGlobalApiProviderDefault implements ILayoutGlobalApiProvider {\r\n useButtonPropsGetter = () => {\r\n return {\r\n buttonProps: () => {\r\n // no default props\r\n console.log('LayoutGlobalApiProviderDefault.buttonProps called')\r\n return {}\r\n }\r\n }\r\n }\r\n navClicked = () => {\r\n // no default action\r\n console.log('LayoutGlobalApiProviderDefault.navClicked called')\r\n }\r\n}\r\n\r\nexport class LayoutGlobalApi {\r\n static key_provider = '__layout_global_key_provider__'\r\n\r\n static get provider(): ILayoutGlobalApiProvider {\r\n const ObjectProvider = createObjectSingleton<ILayoutGlobalApiProvider>(LayoutGlobalApi.key_provider)\r\n return ObjectProvider.get() ?? new LayoutGlobalApiProviderDefault()\r\n }\r\n\r\n static setProvider(provider: ILayoutGlobalApiProvider) {\r\n const ObjectProvider = createObjectSingleton<ILayoutGlobalApiProvider>(LayoutGlobalApi.key_provider)\r\n ObjectProvider.set(provider ?? new LayoutGlobalApiProviderDefault())\r\n }\r\n\r\n useButtonPropsGetter: ButtonPropsGetterHook = () => {\r\n return LayoutGlobalApi.provider.useButtonPropsGetter()\r\n }\r\n\r\n handleNavClicked: NavItemClickFunction = (e, i) => {\r\n LayoutGlobalApi.provider.navClicked(e, i)\r\n }\r\n}\r\n\r\nexport const layoutGlobalApi = new LayoutGlobalApi()\r\n"],"names":["LayoutGlobalApiProviderDefault","_createClass","_classCallCheck","_defineProperty","buttonProps","console","log","LayoutGlobalApi","provider","useButtonPropsGetter","this","e","i","navClicked","key","get","_ObjectProvider$get","createObjectSingleton","key_provider","value","set","layoutGlobalApi"],"mappings":"6KAA6D,IAWvDA,EAA8BC,EAAA,SAAAD,IAAAE,OAAAF,GAAAG,8BACX,WACrB,MAAO,CACLC,YAAa,WAGX,OADAC,QAAQC,IAAI,qDACL,CAAE,CACX,KAEHH,oBACY,WAEXE,QAAQC,IAAI,qDACb,GAGUC,EAAe,WAAA,SAAAA,IAAAL,OAAAK,GAAAJ,8BAaoB,WAC5C,OAAOI,EAAgBC,SAASC,yBACjCN,EAEwCO,KAAA,mBAAA,SAACC,EAAGC,GAC3CL,EAAgBC,SAASK,WAAWF,EAAGC,IACxC,CAAA,OAAAX,EAAAM,EAAA,KAAA,CAAA,CAAAO,IAAA,WAAAC,IAhBD,WAAmB,IAAAC,EAEjB,OAA2BA,QAA3BA,EADuBC,EAAgDV,EAAgBW,cACjEH,iBAAKC,EAAAA,EAAI,IAAIhB,CACrC,GAAC,CAAAc,IAAA,cAAAK,MAED,SAAmBX,GACMS,EAAgDV,EAAgBW,cACxEE,IAAIZ,QAAAA,EAAY,IAAIR,EACrC,IAAC,CAXyB,KAAfO,EAAe,eACJ,sCAqBXc,EAAkB,IAAId"}
|