dinocollab-shared 1.1.13 → 1.1.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.
@@ -1,2 +1,2 @@
1
- import{objectSpread2 as o}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as i}from"react/jsx-runtime";import{useMemo as n}from"react";import{Typography as r}from"@mui/material";import t from"@mui/icons-material/Logout";import e from"@mui/icons-material/Login";import l from"@mui/icons-material/ManageAccounts";import{AppButtonOrange as a,AppIconButtonOrange as m}from"../layout-global/ui.units.js";import{Profile as u}from"./profile.js";import f from"../components/responsive-display.js";var s=function(s){var c,p,g=s.isAuthenticated,d=s.profile;if(s.isLoading)return null;if(!g)return i(f,{xs:i(m,o(o(o({onClick:s.onLoginClick},s.hrefLogin?{component:"a",href:null!==(c=s.hrefLogin)&&void 0!==c?c:"/"}:{}),s.buttonLoginProps),{},{children:i(e,{fontSize:"small"})})),md:i(a,o(o(o({className:"animate-bounce",startIcon:i(e,{fontSize:"small"}),onClick:s.onLoginClick},s.hrefLogin?{component:"a",href:null!==(p=s.hrefLogin)&&void 0!==p?p:"/"}:{}),s.buttonLoginProps),{},{children:i(r,{variant:"h6",children:"Login"})}))});var h=n(function(){var o;return s.menu&&0!==s.menu.length?null!==(o=s.menu)&&void 0!==o?o:[]:[{title:"Manage Profile",icon:i(l,{fontSize:"small"})},{title:"Logout",icon:i(t,{fontSize:"small"})}]},[s.menu]);return i(u,{profile:d,menuConfigs:h})},c=function(n){var r=function(r){return i(s,o(o({},n),r))};return r.displayName="AuthWidget",r};export{s as AuthWidget,c as createAuthWidget,s as default};
1
+ import{objectSpread2 as o}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as n}from"react/jsx-runtime";import{useMemo as i}from"react";import{Typography as r}from"@mui/material";import t from"@mui/icons-material/Logout";import e from"@mui/icons-material/Login";import l from"@mui/icons-material/ManageAccounts";import{ButtonOrange as m,IconButtonOrange as a}from"../components/buttons.js";import{Profile as u}from"./profile.js";import f from"../components/responsive-display.js";var s=function(s){var c,p,g,d=s.isAuthenticated,h=s.profile;if(s.isLoading)return null;if(!d)return n(f,{xs:n(a,o(o(o({onClick:s.onLoginClick},s.hrefLogin?{component:"a",href:null!==(c=s.hrefLogin)&&void 0!==c?c:"/"}:{}),s.buttonLoginProps),{},{children:n(e,{fontSize:"small"})})),md:n(m,o(o(o({className:"animate-bounce",startIcon:n(e,{fontSize:"small"}),onClick:s.onLoginClick},s.hrefLogin?{component:"a",href:null!==(p=s.hrefLogin)&&void 0!==p?p:"/"}:{}),s.buttonLoginProps),{},{children:n(r,{variant:"h6",sx:{fontSize:"".concat(.9*(null!==(g=s.fontSizeScale)&&void 0!==g?g:1),"rem")},children:"Login"})}))});var L=i(function(){var o;return s.menu&&0!==s.menu.length?null!==(o=s.menu)&&void 0!==o?o:[]:[{title:"Manage Profile",icon:n(l,{fontSize:"small"})},{title:"Logout",icon:n(t,{fontSize:"small"})}]},[s.menu]);return n(u,{profile:h,menuConfigs:L})},c=function(i){var r=function(r){return n(s,o(o({},i),r))};return r.displayName="AuthWidget",r};export{s as AuthWidget,c as createAuthWidget,s as default};
2
2
  //# sourceMappingURL=widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widget.js","sources":["../../src/auth/widget.tsx"],"sourcesContent":["import { FC, useMemo } from 'react'\r\nimport { ButtonProps, Typography } from '@mui/material'\r\nimport Logout from '@mui/icons-material/Logout'\r\nimport LoginIcon from '@mui/icons-material/Login'\r\nimport ManageAccountsIcon from '@mui/icons-material/ManageAccounts'\r\nimport { AppButtonOrange, AppIconButtonOrange } from '../layout-global/ui.units'\r\nimport type { IAppSiteBaseUrl } from '../types'\r\nimport type { IAuthState, IIMenuConfigs } from './types'\r\nimport Profile from './profile'\r\nimport ResponsiveDisplay from '../components/responsive-display'\r\n\r\nexport interface ICreateAuthBase {\r\n baseUrl: IAppSiteBaseUrl\r\n // login\r\n hrefLogin?: string\r\n onLoginClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLDivElement, MouseEvent>) => void\r\n buttonLoginProps?: ButtonProps & { [key: string]: any }\r\n // menu\r\n menu?: IIMenuConfigs\r\n}\r\n\r\nexport interface IAuthWidgetProps extends IAuthState, ICreateAuthBase {}\r\n\r\nexport const AuthWidget: FC<IAuthWidgetProps> = (props) => {\r\n const { isAuthenticated, profile, isLoading } = props\r\n if (isLoading) return null\r\n\r\n if (!isAuthenticated) {\r\n return (\r\n <ResponsiveDisplay\r\n xs={\r\n <AppIconButtonOrange\r\n onClick={props.onLoginClick as any}\r\n {...(props.hrefLogin ? { component: 'a', href: props.hrefLogin ?? '/' } : {})}\r\n {...props.buttonLoginProps}\r\n >\r\n <LoginIcon fontSize='small' />\r\n </AppIconButtonOrange>\r\n }\r\n md={\r\n <AppButtonOrange\r\n className='animate-bounce'\r\n startIcon={<LoginIcon fontSize='small' />}\r\n onClick={props.onLoginClick as any}\r\n {...(props.hrefLogin ? { component: 'a', href: props.hrefLogin ?? '/' } : {})}\r\n {...props.buttonLoginProps}\r\n >\r\n <Typography variant='h6'>Login</Typography>\r\n </AppButtonOrange>\r\n }\r\n />\r\n )\r\n }\r\n\r\n const menuConfigs = useMemo(() => {\r\n if (!props.menu || props.menu.length === 0) {\r\n return [\r\n { title: 'Manage Profile', icon: <ManageAccountsIcon fontSize='small' /> },\r\n { title: 'Logout', icon: <Logout fontSize='small' /> }\r\n ]\r\n }\r\n return props.menu ?? []\r\n }, [props.menu])\r\n\r\n // If the user is authenticated, display the AuthWidget with user details\r\n return <Profile profile={profile} menuConfigs={menuConfigs} />\r\n}\r\nexport default AuthWidget\r\n\r\nexport const createAuthWidget = (params: ICreateAuthBase) => {\r\n const _AuthWidget: FC<Omit<IAuthWidgetProps, 'baseUrl'>> = (props) => <AuthWidget {...params} {...props} />\r\n _AuthWidget.displayName = 'AuthWidget'\r\n return _AuthWidget\r\n}\r\n"],"names":["AuthWidget","props","_props$hrefLogin","_props$hrefLogin2","isAuthenticated","profile","isLoading","_jsx","ResponsiveDisplay","xs","AppIconButtonOrange","_objectSpread","onClick","onLoginClick","hrefLogin","component","href","buttonLoginProps","children","LoginIcon","fontSize","md","AppButtonOrange","className","startIcon","Typography","variant","menuConfigs","useMemo","_props$menu","menu","length","title","icon","ManageAccountsIcon","Logout","Profile","createAuthWidget","params","_AuthWidget","displayName"],"mappings":"ufAuBaA,EAAmC,SAACC,GAC/C,IAGsBC,EAAAC,EAHdC,EAAwCH,EAAxCG,gBAAiBC,EAAuBJ,EAAvBI,QACzB,GADgDJ,EAAdK,UACnB,OAAO,KAEtB,IAAKF,EACH,OACEG,EAACC,EACC,CAAAC,GACEF,EAACG,EAAmBC,EAAAA,EAAAA,EAAA,CAClBC,QAASX,EAAMY,cACVZ,EAAMa,UAAY,CAAEC,UAAW,IAAKC,KAAqBd,QAAjBA,EAAED,EAAMa,iBAASZ,IAAAA,EAAAA,EAAI,KAAQ,CAAE,GACxED,EAAMgB,kBAAgB,CAAA,EAAA,CAAAC,SAE1BX,EAACY,EAAU,CAAAC,SAAS,aAGxBC,GACEd,EAACe,EAAeX,EAAAA,EAAAA,EAAA,CACdY,UAAU,iBACVC,UAAWjB,EAACY,EAAS,CAACC,SAAS,UAC/BR,QAASX,EAAMY,cACVZ,EAAMa,UAAY,CAAEC,UAAW,IAAKC,KAAqBb,QAAjBA,EAAEF,EAAMa,iBAASX,IAAAA,EAAAA,EAAI,KAAQ,CAAE,GACxEF,EAAMgB,kBAAgB,CAAA,EAAA,CAAAC,SAE1BX,EAACkB,EAAW,CAAAC,QAAQ,KAAuBR,SAAA,eAOrD,IAAMS,EAAcC,EAAQ,WAAK,IAAAC,EAC/B,OAAK5B,EAAM6B,MAA8B,IAAtB7B,EAAM6B,KAAKC,eAM9BF,EAAO5B,EAAM6B,YAAI,IAAAD,EAAAA,EAAI,GALZ,CACL,CAAEG,MAAO,iBAAkBC,KAAM1B,EAAC2B,EAAmB,CAAAd,SAAS,WAC9D,CAAEY,MAAO,SAAUC,KAAM1B,EAAC4B,EAAO,CAAAf,SAAS,WAIhD,EAAG,CAACnB,EAAM6B,OAGV,OAAOvB,EAAC6B,EAAO,CAAC/B,QAASA,EAASsB,YAAaA,GACjD,EAGaU,EAAmB,SAACC,GAC/B,IAAMC,EAAqD,SAACtC,GAAK,OAAKM,EAACP,EAAUW,EAAAA,EAAA,CAAA,EAAK2B,GAAYrC,GAAS,EAE3G,OADAsC,EAAYC,YAAc,aACnBD,CACT"}
1
+ {"version":3,"file":"widget.js","sources":["../../src/auth/widget.tsx"],"sourcesContent":["import { FC, useMemo } from 'react'\r\nimport { ButtonProps, Typography } from '@mui/material'\r\nimport Logout from '@mui/icons-material/Logout'\r\nimport LoginIcon from '@mui/icons-material/Login'\r\nimport ManageAccountsIcon from '@mui/icons-material/ManageAccounts'\r\nimport { ButtonOrange, IconButtonOrange } from '../components/buttons'\r\nimport type { IAppSiteBaseUrl } from '../types'\r\nimport type { IAuthState, IIMenuConfigs } from './types'\r\nimport Profile from './profile'\r\nimport ResponsiveDisplay from '../components/responsive-display'\r\n\r\nexport interface IAuthBaseProps {\r\n baseUrl: IAppSiteBaseUrl\r\n fontSizeScale?: number\r\n // login\r\n hrefLogin?: string\r\n onLoginClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLDivElement, MouseEvent>) => void\r\n buttonLoginProps?: ButtonProps & { [key: string]: any }\r\n // menu\r\n menu?: IIMenuConfigs\r\n}\r\n\r\nexport interface IAuthWidgetProps extends IAuthState, IAuthBaseProps {}\r\n\r\nexport const AuthWidget: FC<IAuthWidgetProps> = (props) => {\r\n const { isAuthenticated, profile, isLoading } = props\r\n if (isLoading) return null\r\n\r\n if (!isAuthenticated) {\r\n return (\r\n <ResponsiveDisplay\r\n xs={\r\n <IconButtonOrange\r\n onClick={props.onLoginClick as any}\r\n {...(props.hrefLogin ? { component: 'a', href: props.hrefLogin ?? '/' } : {})}\r\n {...props.buttonLoginProps}\r\n >\r\n <LoginIcon fontSize='small' />\r\n </IconButtonOrange>\r\n }\r\n md={\r\n <ButtonOrange\r\n className='animate-bounce'\r\n startIcon={<LoginIcon fontSize='small' />}\r\n onClick={props.onLoginClick as any}\r\n {...(props.hrefLogin ? { component: 'a', href: props.hrefLogin ?? '/' } : {})}\r\n {...props.buttonLoginProps}\r\n >\r\n <Typography variant='h6' sx={{ fontSize: `${(props.fontSizeScale ?? 1) * 0.9}rem` }}>\r\n Login\r\n </Typography>\r\n </ButtonOrange>\r\n }\r\n />\r\n )\r\n }\r\n\r\n const menuConfigs = useMemo(() => {\r\n if (!props.menu || props.menu.length === 0) {\r\n return [\r\n { title: 'Manage Profile', icon: <ManageAccountsIcon fontSize='small' /> },\r\n { title: 'Logout', icon: <Logout fontSize='small' /> }\r\n ]\r\n }\r\n return props.menu ?? []\r\n }, [props.menu])\r\n\r\n // If the user is authenticated, display the AuthWidget with user details\r\n return <Profile profile={profile} menuConfigs={menuConfigs} />\r\n}\r\nexport default AuthWidget\r\n\r\nexport const createAuthWidget = (params: IAuthBaseProps) => {\r\n const _AuthWidget: FC<Omit<IAuthWidgetProps, 'baseUrl'>> = (props) => <AuthWidget {...params} {...props} />\r\n _AuthWidget.displayName = 'AuthWidget'\r\n return _AuthWidget\r\n}\r\n"],"names":["AuthWidget","props","_props$hrefLogin","_props$hrefLogin2","_props$fontSizeScale","isAuthenticated","profile","isLoading","_jsx","ResponsiveDisplay","xs","IconButtonOrange","_objectSpread","onClick","onLoginClick","hrefLogin","component","href","buttonLoginProps","children","LoginIcon","fontSize","md","ButtonOrange","className","startIcon","Typography","variant","sx","concat","fontSizeScale","menuConfigs","useMemo","_props$menu","menu","length","title","icon","ManageAccountsIcon","Logout","Profile","createAuthWidget","params","_AuthWidget","displayName"],"mappings":"6eAwBaA,EAAmC,SAACC,GAC/C,IAGsBC,EAAAC,EAAAC,EAHdC,EAAwCJ,EAAxCI,gBAAiBC,EAAuBL,EAAvBK,QACzB,GADgDL,EAAdM,UACnB,OAAO,KAEtB,IAAKF,EACH,OACEG,EAACC,EAAiB,CAChBC,GACEF,EAACG,EAAgBC,EAAAA,EAAAA,EAAA,CACfC,QAASZ,EAAMa,cACVb,EAAMc,UAAY,CAAEC,UAAW,IAAKC,KAAqBf,QAAjBA,EAAED,EAAMc,iBAASb,IAAAA,EAAAA,EAAI,KAAQ,CAAE,GACxED,EAAMiB,kBAAgB,CAAA,EAAA,CAAAC,SAE1BX,EAACY,GAAUC,SAAS,aAGxBC,GACEd,EAACe,EAAYX,EAAAA,EAAAA,EAAA,CACXY,UAAU,iBACVC,UAAWjB,EAACY,EAAS,CAACC,SAAS,UAC/BR,QAASZ,EAAMa,cACVb,EAAMc,UAAY,CAAEC,UAAW,IAAKC,KAAqBd,QAAjBA,EAAEF,EAAMc,iBAASZ,IAAAA,EAAAA,EAAI,KAAQ,CAAE,GACxEF,EAAMiB,kBAAgB,CAAA,EAAA,CAAAC,SAE1BX,EAACkB,EAAU,CAACC,QAAQ,KAAKC,GAAI,CAAEP,YAAQQ,OAAkC,IAAT,QAApBzB,EAACH,EAAM6B,qBAAa1B,IAAAA,EAAAA,EAAI,GAAQ,QAAOe,SAAA,eAS7F,IAAMY,EAAcC,EAAQ,WAAK,IAAAC,EAC/B,OAAKhC,EAAMiC,MAA8B,IAAtBjC,EAAMiC,KAAKC,eAM9BF,EAAOhC,EAAMiC,YAAI,IAAAD,EAAAA,EAAI,GALZ,CACL,CAAEG,MAAO,iBAAkBC,KAAM7B,EAAC8B,EAAmB,CAAAjB,SAAS,WAC9D,CAAEe,MAAO,SAAUC,KAAM7B,EAAC+B,EAAO,CAAAlB,SAAS,WAIhD,EAAG,CAACpB,EAAMiC,OAGV,OAAO1B,EAACgC,EAAO,CAAClC,QAASA,EAASyB,YAAaA,GACjD,EAGaU,EAAmB,SAACC,GAC/B,IAAMC,EAAqD,SAAC1C,GAAK,OAAKO,EAACR,EAAUY,EAAAA,EAAA,CAAA,EAAK8B,GAAYzC,GAAS,EAE3G,OADA0C,EAAYC,YAAc,aACnBD,CACT"}
@@ -1,2 +1,2 @@
1
- import{inherits as r,createClass as e,objectSpread2 as t,classCallCheck as n,callSuper as o,defineProperty as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as l,jsxs 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 u,Typography as m,Divider as p,Button as h,Box as v,IconButton as f}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{DarkIconButton as y}from"../components/buttons.js";import{NoDataPanel as k}from"../components/no-data-panel.js";import{MenuStyled as P,CartContentStyled as T,cartContentClasses as N}from"./styled.js";var S=function(){function S(r){var e;return n(this,S),e=o(this,S,[r]),i(e,"render",function(){var r;return a(s,{children:[l(y,{onClick:function(r){return e.onOpen(r.currentTarget)},children:l(u,{badgeContent:e.state.hydrated&&null!==(r=e.carts.length)&&void 0!==r?r:0,color:"error",children:l(g,{})})}),l(P,{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()})]})}),i(e,"renderContent",function(){var r,n=b(e.carts);return a(T,{children:[a("div",{className:N.header,children:[a(m,{variant:"h6",component:"span",sx:{flex:1},children:["Your Cart (",null!==(r=n.quantity)&&void 0!==r?r:0," items)"]}),a(m,{variant:"h6",component:"span",children:["Total: $ ",n.price.toFixed(2)]})]}),l(p,{}),a("div",{className:N.items,children:[e.carts.map(function(r,t){return l(s,{children:e.renderItem(r)},"key"+t)}),e.carts.length<1&&l(k,{title:"Your cart is empty",subTitle:"Try adding some products",sx:{height:"100%"}})]}),l(p,{}),l("div",{className:N.footer,children:l(h,t(t(t({},e.props.hrefCart?{component:"a",href:e.props.hrefCart}:{}),{},{color:"inherit",endIcon:l(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"}))})]})}),i(e,"renderTitle",function(r){var n,o=e.props,i=o.itemTitleProps,a=o.itemTitlePropsGetter,c=a?a(r,e.onClose):null!=i?i:{};return l(m,t(t({className:N.itemTitle,noWrap:!0,variant:"subtitle1"},c),{},{children:null!==(n=r.ProductName)&&void 0!==n?n:"Unknown Product"}))}),i(e,"renderItem",function(r){var t,n,o,i;return a("div",{className:N.item,children:[l(d,{className:N.itemImg,src:null==r?void 0:r.PictureUrl,title:null==r?void 0:r.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture"}),a("div",{className:N.itemContent,children:[l(m,{className:N.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),a(v,{sx:{display:"flex",alignItems:"flex-end",gap:"2px",justifyContent:"flex-end"},children:[a(m,{variant:"subtitle1",children:["$ ",null!==(o=r.Price)&&void 0!==o?o:0]}),a(m,{variant:"body1",sx:{fontSize:"14px",mb:"3px",color:"#818181"},children:["x",null!==(i=r.Amount)&&void 0!==i?i:0," urls"]})]})]}),l(f,{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:l(C,{})})]})}),i(e,"onOpen",function(r){e.setState({anchorEl:r})}),i(e,"onClose",function(){e.setState({anchorEl:null})}),e.state={anchorEl:null,hydrated:!1},e}return r(S,c),e(S,[{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 l(S,t(t({},r),e))};return e.displayName="CartWidget",e};export{S as CartWidget,j as createCartWidget};
1
+ import{inherits as r,createClass as e,objectSpread2 as t,classCallCheck as n,callSuper as o,defineProperty as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as l,jsxs 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 u,Typography as m,Divider as p,Button as h,Box as v,IconButton as f}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{IconButtonDark as y}from"../components/buttons.js";import{NoDataPanel as k}from"../components/no-data-panel.js";import{MenuStyled as P,CartContentStyled as T,cartContentClasses as N}from"./styled.js";var S=function(){function S(r){var e;return n(this,S),e=o(this,S,[r]),i(e,"render",function(){var r;return a(s,{children:[l(y,{onClick:function(r){return e.onOpen(r.currentTarget)},children:l(u,{badgeContent:e.state.hydrated&&null!==(r=e.carts.length)&&void 0!==r?r:0,color:"error",children:l(g,{})})}),l(P,{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()})]})}),i(e,"renderContent",function(){var r,n=b(e.carts);return a(T,{children:[a("div",{className:N.header,children:[a(m,{variant:"h6",component:"span",sx:{flex:1},children:["Your Cart (",null!==(r=n.quantity)&&void 0!==r?r:0," items)"]}),a(m,{variant:"h6",component:"span",children:["Total: $ ",n.price.toFixed(2)]})]}),l(p,{}),a("div",{className:N.items,children:[e.carts.map(function(r,t){return l(s,{children:e.renderItem(r)},"key"+t)}),e.carts.length<1&&l(k,{title:"Your cart is empty",subTitle:"Try adding some products",sx:{height:"100%"}})]}),l(p,{}),l("div",{className:N.footer,children:l(h,t(t(t({},e.props.hrefCart?{component:"a",href:e.props.hrefCart}:{}),{},{color:"inherit",endIcon:l(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"}))})]})}),i(e,"renderTitle",function(r){var n,o=e.props,i=o.itemTitleProps,a=o.itemTitlePropsGetter,c=a?a(r,e.onClose):null!=i?i:{};return l(m,t(t({className:N.itemTitle,noWrap:!0,variant:"subtitle1"},c),{},{children:null!==(n=r.ProductName)&&void 0!==n?n:"Unknown Product"}))}),i(e,"renderItem",function(r){var t,n,o,i;return a("div",{className:N.item,children:[l(d,{className:N.itemImg,src:null==r?void 0:r.PictureUrl,title:null==r?void 0:r.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture"}),a("div",{className:N.itemContent,children:[l(m,{className:N.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),a(v,{sx:{display:"flex",alignItems:"flex-end",gap:"2px",justifyContent:"flex-end"},children:[a(m,{variant:"subtitle1",children:["$ ",null!==(o=r.Price)&&void 0!==o?o:0]}),a(m,{variant:"body1",sx:{fontSize:"14px",mb:"3px",color:"#818181"},children:["x",null!==(i=r.Amount)&&void 0!==i?i:0," urls"]})]})]}),l(f,{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:l(C,{})})]})}),i(e,"onOpen",function(r){e.setState({anchorEl:r})}),i(e,"onClose",function(){e.setState({anchorEl:null})}),e.state={anchorEl:null,hydrated:!1},e}return r(S,c),e(S,[{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 l(S,t(t({},r),e))};return e.displayName="CartWidget",e};export{S as CartWidget,j as createCartWidget};
2
2
  //# sourceMappingURL=widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widget.js","sources":["../../src/cart/widget.tsx"],"sourcesContent":["import { Component, Fragment } from 'react'\r\nimport { ImageWithFallback } from 'dinocollab-core/components'\r\nimport { Badge, Box, Button, ButtonProps, Divider, IconButton, Typography } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport type { TypographyProps } from '@mui/material'\r\nimport RemoveIcon from '@mui/icons-material/Remove'\r\nimport ShoppingCartOutlinedIcon from '@mui/icons-material/ShoppingCartOutlined'\r\nimport ShoppingCartCheckoutIcon from '@mui/icons-material/ShoppingCartCheckout'\r\nimport { ICartItem } from './types'\r\nimport { getTotalData } from './helpers'\r\nimport { IAppSiteBaseUrl } from '../types'\r\nimport { DarkIconButton, NoDataPanel } from '../components'\r\nimport { cartContentClasses, CartContentStyled, MenuStyled } from './styled'\r\n\r\ntype ITypographyProps = TypographyProps & { [key: string]: any }\r\n\r\ninterface ICartWidgetProps {\r\n baseUrl: IAppSiteBaseUrl\r\n carts?: ICartItem[]\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n storageKey?: string\r\n onRemoveCart?: (item: ICartItem) => void\r\n onMoveToCartClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLButtonElement, MouseEvent>) => void\r\n itemTitleProps?: ITypographyProps\r\n itemTitlePropsGetter?: (item: ICartItem, close?: () => void) => ITypographyProps\r\n}\r\n\r\ninterface ICartWidgetState {\r\n anchorEl: HTMLElement | null\r\n hydrated: boolean\r\n}\r\n\r\nexport class CartWidget extends Component<ICartWidgetProps, ICartWidgetState> {\r\n constructor(props: ICartWidgetProps) {\r\n super(props)\r\n this.state = { anchorEl: null, hydrated: false }\r\n }\r\n\r\n get carts() {\r\n return this.props.carts ?? []\r\n }\r\n\r\n componentDidMount() {\r\n // When mounted on the client, set hydrated = true\r\n this.setState({ hydrated: true })\r\n }\r\n\r\n render = () => (\r\n <Fragment>\r\n <DarkIconButton onClick={(e) => this.onOpen(e.currentTarget)}>\r\n <Badge badgeContent={this.state.hydrated ? this.carts.length ?? 0 : 0} color='error'>\r\n <ShoppingCartOutlinedIcon />\r\n </Badge>\r\n </DarkIconButton>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={this.onClose}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {this.renderContent()}\r\n </MenuStyled>\r\n </Fragment>\r\n )\r\n\r\n renderContent = () => {\r\n const totalData = getTotalData(this.carts)\r\n return (\r\n <CartContentStyled>\r\n <div className={cartContentClasses.header}>\r\n <Typography variant='h6' component='span' sx={{ flex: 1 }}>\r\n Your Cart ({totalData.quantity ?? 0} items)\r\n </Typography>\r\n <Typography variant='h6' component='span'>\r\n Total: $ {totalData.price.toFixed(2)}\r\n </Typography>\r\n </div>\r\n <Divider />\r\n <div className={cartContentClasses.items}>\r\n {this.carts.map((x, i) => (\r\n <Fragment key={'key' + i}>{this.renderItem(x)}</Fragment>\r\n ))}\r\n {this.carts.length < 1 && <NoDataPanel title='Your cart is empty' subTitle='Try adding some products' sx={{ height: '100%' }} />}\r\n </div>\r\n <Divider />\r\n <div className={cartContentClasses.footer}>\r\n <Button\r\n {...(this.props.hrefCart ? { component: 'a', href: this.props.hrefCart } : {})}\r\n color='inherit'\r\n endIcon={<ShoppingCartCheckoutIcon />}\r\n onClick={(event) => {\r\n this.onClose()\r\n if (this.props.onMoveToCartClick) {\r\n this.props.onMoveToCartClick(event as React.MouseEvent<HTMLAnchorElement | HTMLButtonElement, MouseEvent>)\r\n }\r\n }}\r\n disabled={this.carts.length < 1}\r\n {...this.props.buttonMoveToCartProps}\r\n >\r\n Show in cart\r\n </Button>\r\n </div>\r\n </CartContentStyled>\r\n )\r\n }\r\n\r\n renderTitle = (item: ICartItem) => {\r\n const { itemTitleProps, itemTitlePropsGetter } = this.props\r\n const currentProps: ITypographyProps = itemTitlePropsGetter ? itemTitlePropsGetter(item, this.onClose) : itemTitleProps ?? {}\r\n return (\r\n <Typography className={cartContentClasses.itemTitle} noWrap variant='subtitle1' {...currentProps}>\r\n {item.ProductName ?? 'Unknown Product'}\r\n </Typography>\r\n )\r\n }\r\n\r\n renderItem = (item: ICartItem) => (\r\n <div className={cartContentClasses.item}>\r\n <ImageWithFallback\r\n className={cartContentClasses.itemImg}\r\n src={item?.PictureUrl}\r\n title={item?.PictureUrl}\r\n fallbackSrc='images/default-video.webp'\r\n alt='product-picture'\r\n />\r\n <div className={cartContentClasses.itemContent}>\r\n <Typography className={cartContentClasses.itemTag} variant='caption' sx={{ color: item.PriceColor ?? '#000' }}>\r\n {item.PriceName ?? 'Unknown Price'}\r\n </Typography>\r\n {this.renderTitle(item)}\r\n <Box sx={{ display: 'flex', alignItems: 'flex-end', gap: '2px', justifyContent: 'flex-end' }}>\r\n <Typography variant='subtitle1'>$ {item.Price ?? 0}</Typography>\r\n <Typography variant='body1' sx={{ fontSize: '14px', mb: '3px', color: '#818181' }}>\r\n x{item.Amount ?? 0} urls\r\n </Typography>\r\n </Box>\r\n </div>\r\n <IconButton size='small' onClick={() => this.props.onRemoveCart?.(item)} sx={{ color: '#818181' }}>\r\n <RemoveIcon />\r\n </IconButton>\r\n </div>\r\n )\r\n\r\n onOpen = (target: HTMLElement) => {\r\n this.setState({ anchorEl: target })\r\n }\r\n\r\n onClose = () => {\r\n this.setState({ anchorEl: null })\r\n }\r\n}\r\n\r\nexport const createCartWidget = (params: ICartWidgetProps) => {\r\n const _CartWidget: FC<Partial<ICartWidgetProps>> = (props) => <CartWidget {...params} {...props} />\r\n _CartWidget.displayName = 'CartWidget'\r\n return _CartWidget\r\n}\r\n"],"names":["CartWidget","props","_this","_classCallCheck","_callSuper","_defineProperty","_this$carts$length","_jsxs","Fragment","children","_jsx","DarkIconButton","onClick","e","onOpen","currentTarget","Badge","badgeContent","state","hydrated","carts","length","color","ShoppingCartOutlinedIcon","MenuStyled","disableScrollLock","anchorEl","open","Boolean","onClose","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","renderContent","_totalData$quantity","totalData","getTotalData","CartContentStyled","className","cartContentClasses","header","Typography","variant","sx","flex","quantity","price","toFixed","Divider","items","map","x","i","renderItem","NoDataPanel","title","subTitle","height","footer","Button","_objectSpread","hrefCart","href","endIcon","ShoppingCartCheckoutIcon","event","onMoveToCartClick","disabled","buttonMoveToCartProps","item","_item$ProductName","_this$props","itemTitleProps","itemTitlePropsGetter","currentProps","itemTitle","noWrap","ProductName","_item$PriceColor","_item$PriceName","_item$Price","_item$Amount","ImageWithFallback","itemImg","src","PictureUrl","fallbackSrc","alt","itemContent","itemTag","PriceColor","PriceName","renderTitle","Box","display","alignItems","gap","justifyContent","Price","fontSize","mb","Amount","IconButton","size","_this$props$onRemoveC","_this$props2","onRemoveCart","call","RemoveIcon","target","setState","_inherits","Component","_createClass","key","get","_this$props$carts","this","value","createCartWidget","params","_CartWidget","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"widget.js","sources":["../../src/cart/widget.tsx"],"sourcesContent":["import { Component, Fragment } from 'react'\r\nimport { ImageWithFallback } from 'dinocollab-core/components'\r\nimport { Badge, Box, Button, ButtonProps, Divider, IconButton, Typography } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport type { TypographyProps } from '@mui/material'\r\nimport RemoveIcon from '@mui/icons-material/Remove'\r\nimport ShoppingCartOutlinedIcon from '@mui/icons-material/ShoppingCartOutlined'\r\nimport ShoppingCartCheckoutIcon from '@mui/icons-material/ShoppingCartCheckout'\r\nimport { ICartItem } from './types'\r\nimport { getTotalData } from './helpers'\r\nimport { IAppSiteBaseUrl } from '../types'\r\nimport { IconButtonDark, NoDataPanel } from '../components'\r\nimport { cartContentClasses, CartContentStyled, MenuStyled } from './styled'\r\n\r\ntype ITypographyProps = TypographyProps & { [key: string]: any }\r\n\r\ninterface ICartWidgetProps {\r\n baseUrl: IAppSiteBaseUrl\r\n carts?: ICartItem[]\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n storageKey?: string\r\n onRemoveCart?: (item: ICartItem) => void\r\n onMoveToCartClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLButtonElement, MouseEvent>) => void\r\n itemTitleProps?: ITypographyProps\r\n itemTitlePropsGetter?: (item: ICartItem, close?: () => void) => ITypographyProps\r\n}\r\n\r\ninterface ICartWidgetState {\r\n anchorEl: HTMLElement | null\r\n hydrated: boolean\r\n}\r\n\r\nexport class CartWidget extends Component<ICartWidgetProps, ICartWidgetState> {\r\n constructor(props: ICartWidgetProps) {\r\n super(props)\r\n this.state = { anchorEl: null, hydrated: false }\r\n }\r\n\r\n get carts() {\r\n return this.props.carts ?? []\r\n }\r\n\r\n componentDidMount() {\r\n // When mounted on the client, set hydrated = true\r\n this.setState({ hydrated: true })\r\n }\r\n\r\n render = () => (\r\n <Fragment>\r\n <IconButtonDark onClick={(e) => this.onOpen(e.currentTarget)}>\r\n <Badge badgeContent={this.state.hydrated ? this.carts.length ?? 0 : 0} color='error'>\r\n <ShoppingCartOutlinedIcon />\r\n </Badge>\r\n </IconButtonDark>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={this.onClose}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {this.renderContent()}\r\n </MenuStyled>\r\n </Fragment>\r\n )\r\n\r\n renderContent = () => {\r\n const totalData = getTotalData(this.carts)\r\n return (\r\n <CartContentStyled>\r\n <div className={cartContentClasses.header}>\r\n <Typography variant='h6' component='span' sx={{ flex: 1 }}>\r\n Your Cart ({totalData.quantity ?? 0} items)\r\n </Typography>\r\n <Typography variant='h6' component='span'>\r\n Total: $ {totalData.price.toFixed(2)}\r\n </Typography>\r\n </div>\r\n <Divider />\r\n <div className={cartContentClasses.items}>\r\n {this.carts.map((x, i) => (\r\n <Fragment key={'key' + i}>{this.renderItem(x)}</Fragment>\r\n ))}\r\n {this.carts.length < 1 && <NoDataPanel title='Your cart is empty' subTitle='Try adding some products' sx={{ height: '100%' }} />}\r\n </div>\r\n <Divider />\r\n <div className={cartContentClasses.footer}>\r\n <Button\r\n {...(this.props.hrefCart ? { component: 'a', href: this.props.hrefCart } : {})}\r\n color='inherit'\r\n endIcon={<ShoppingCartCheckoutIcon />}\r\n onClick={(event) => {\r\n this.onClose()\r\n if (this.props.onMoveToCartClick) {\r\n this.props.onMoveToCartClick(event as React.MouseEvent<HTMLAnchorElement | HTMLButtonElement, MouseEvent>)\r\n }\r\n }}\r\n disabled={this.carts.length < 1}\r\n {...this.props.buttonMoveToCartProps}\r\n >\r\n Show in cart\r\n </Button>\r\n </div>\r\n </CartContentStyled>\r\n )\r\n }\r\n\r\n renderTitle = (item: ICartItem) => {\r\n const { itemTitleProps, itemTitlePropsGetter } = this.props\r\n const currentProps: ITypographyProps = itemTitlePropsGetter ? itemTitlePropsGetter(item, this.onClose) : itemTitleProps ?? {}\r\n return (\r\n <Typography className={cartContentClasses.itemTitle} noWrap variant='subtitle1' {...currentProps}>\r\n {item.ProductName ?? 'Unknown Product'}\r\n </Typography>\r\n )\r\n }\r\n\r\n renderItem = (item: ICartItem) => (\r\n <div className={cartContentClasses.item}>\r\n <ImageWithFallback\r\n className={cartContentClasses.itemImg}\r\n src={item?.PictureUrl}\r\n title={item?.PictureUrl}\r\n fallbackSrc='images/default-video.webp'\r\n alt='product-picture'\r\n />\r\n <div className={cartContentClasses.itemContent}>\r\n <Typography className={cartContentClasses.itemTag} variant='caption' sx={{ color: item.PriceColor ?? '#000' }}>\r\n {item.PriceName ?? 'Unknown Price'}\r\n </Typography>\r\n {this.renderTitle(item)}\r\n <Box sx={{ display: 'flex', alignItems: 'flex-end', gap: '2px', justifyContent: 'flex-end' }}>\r\n <Typography variant='subtitle1'>$ {item.Price ?? 0}</Typography>\r\n <Typography variant='body1' sx={{ fontSize: '14px', mb: '3px', color: '#818181' }}>\r\n x{item.Amount ?? 0} urls\r\n </Typography>\r\n </Box>\r\n </div>\r\n <IconButton size='small' onClick={() => this.props.onRemoveCart?.(item)} sx={{ color: '#818181' }}>\r\n <RemoveIcon />\r\n </IconButton>\r\n </div>\r\n )\r\n\r\n onOpen = (target: HTMLElement) => {\r\n this.setState({ anchorEl: target })\r\n }\r\n\r\n onClose = () => {\r\n this.setState({ anchorEl: null })\r\n }\r\n}\r\n\r\nexport const createCartWidget = (params: ICartWidgetProps) => {\r\n const _CartWidget: FC<Partial<ICartWidgetProps>> = (props) => <CartWidget {...params} {...props} />\r\n _CartWidget.displayName = 'CartWidget'\r\n return _CartWidget\r\n}\r\n"],"names":["CartWidget","props","_this","_classCallCheck","_callSuper","_defineProperty","_this$carts$length","_jsxs","Fragment","children","_jsx","IconButtonDark","onClick","e","onOpen","currentTarget","Badge","badgeContent","state","hydrated","carts","length","color","ShoppingCartOutlinedIcon","MenuStyled","disableScrollLock","anchorEl","open","Boolean","onClose","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","renderContent","_totalData$quantity","totalData","getTotalData","CartContentStyled","className","cartContentClasses","header","Typography","variant","sx","flex","quantity","price","toFixed","Divider","items","map","x","i","renderItem","NoDataPanel","title","subTitle","height","footer","Button","_objectSpread","hrefCart","href","endIcon","ShoppingCartCheckoutIcon","event","onMoveToCartClick","disabled","buttonMoveToCartProps","item","_item$ProductName","_this$props","itemTitleProps","itemTitlePropsGetter","currentProps","itemTitle","noWrap","ProductName","_item$PriceColor","_item$PriceName","_item$Price","_item$Amount","ImageWithFallback","itemImg","src","PictureUrl","fallbackSrc","alt","itemContent","itemTag","PriceColor","PriceName","renderTitle","Box","display","alignItems","gap","justifyContent","Price","fontSize","mb","Amount","IconButton","size","_this$props$onRemoveC","_this$props2","onRemoveCart","call","RemoveIcon","target","setState","_inherits","Component","_createClass","key","get","_this$props$carts","this","value","createCartWidget","params","_CartWidget","displayName"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{styled as o,IconButton as r}from"@mui/material";var e=o(r)(function(o){var r=o.theme;return{color:r.palette.common.white,borderRadius:"8px",padding:"8px","&:hover":{backgroundColor:"rgba(255, 255, 255, 0.08)",color:r.palette.common.white},"&:focus":{backgroundColor:"rgba(255, 255, 255, 0.12)"},"& .MuiSvgIcon-root":{fontSize:"1.25rem"}}});export{e as DarkIconButton};
1
+ import{styled as o,Button as a,IconButton as r}from"@mui/material";var e=o(a)({color:"#fff",padding:"6px 16px",borderRadius:"6px",border:"none",minWidth:"120px",height:"36px",boxShadow:"0 2px 8px rgba(27, 25, 24, 0.2)",background:"linear-gradient(45deg, #d32f2f 0%, #f9a925 70%, #d32f2f 100%)",backgroundSize:"200% auto",transition:"background-position 0.5s ease, box-shadow 0.3s ease, color 0.25s ease","&, .MuiTypography-root":{lineHeight:1,fontWeight:500,textTransform:"unset"},"&:hover":{backgroundPosition:"100% 0",boxShadow:"0 4px 16px rgba(252, 228, 19, 0.23)"},"@keyframes gentleBounceY":{"0%, 5%":{transform:"translateY(0)"},"20%":{transform:"translateY(-3px)"},"30%":{transform:"translateY(-2px)"},"40%":{transform:"translateY(-3px)"},"50%":{transform:"translateY(-2px)"},"75%, 100%":{transform:"translateY(0)"}},"&:not(:hover).animate-bounce":{animation:"gentleBounceY 3s cubic-bezier(0.4, 0.8, 0.4, 1) infinite"}}),n=o(r)({color:"#fff",border:"none",boxShadow:"0 2px 8px rgba(27, 25, 24, 0.2)",background:"linear-gradient(45deg, #d32f2f 0%, #fbc02d 70%, #d32f2f 100%)",backgroundSize:"165% auto",transition:"background-position 0.5s ease, box-shadow 0.3s ease","&:hover":{backgroundPosition:"100% 0",boxShadow:"0 4px 16px rgba(252, 228, 19, 0.23)"}});n.displayName="IconButtonOrange";var t=o(r)(function(o){var a=o.theme;return{color:a.palette.common.white,borderRadius:"8px",padding:"8px","&:hover":{backgroundColor:"rgba(255, 255, 255, 0.08)",color:a.palette.common.white},"&:focus":{backgroundColor:"rgba(255, 255, 255, 0.12)"}}});export{e as ButtonOrange,t as IconButtonDark,n as IconButtonOrange};
2
2
  //# sourceMappingURL=buttons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.js","sources":["../../src/components/buttons.tsx"],"sourcesContent":["import { IconButton, styled } from '@mui/material'\r\nimport type { IconButtonProps, Theme } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\n\r\n// Custom IconButton for dark background\r\nexport const DarkIconButton: ComponentType<IconButtonProps> = styled(IconButton)(({ theme }: { theme: Theme }) => ({\r\n color: theme.palette.common.white,\r\n borderRadius: '8px',\r\n padding: '8px',\r\n '&:hover': {\r\n backgroundColor: 'rgba(255, 255, 255, 0.08)',\r\n color: theme.palette.common.white\r\n },\r\n '&:focus': {\r\n backgroundColor: 'rgba(255, 255, 255, 0.12)'\r\n },\r\n '& .MuiSvgIcon-root': {\r\n fontSize: '1.25rem'\r\n }\r\n}))\r\n"],"names":["DarkIconButton","styled","IconButton","_ref","theme","color","palette","common","white","borderRadius","padding","backgroundColor","fontSize"],"mappings":"uDAKO,IAAMA,EAAiDC,EAAOC,EAAPD,CAAmB,SAAAE,GAAA,IAAGC,EAAKD,EAALC,MAAK,MAA0B,CACjHC,MAAOD,EAAME,QAAQC,OAAOC,MAC5BC,aAAc,MACdC,QAAS,MACT,UAAW,CACTC,gBAAiB,4BACjBN,MAAOD,EAAME,QAAQC,OAAOC,OAE9B,UAAW,CACTG,gBAAiB,6BAEnB,qBAAsB,CACpBC,SAAU,WAEb"}
1
+ {"version":3,"file":"buttons.js","sources":["../../src/components/buttons.tsx"],"sourcesContent":["import { Button, IconButton, styled } from '@mui/material'\r\nimport type { ButtonProps, IconButtonProps, Theme } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\n\r\nexport const ButtonOrange: ComponentType<ButtonProps & { [key: string]: any }> = styled(Button)({\r\n color: '#fff',\r\n padding: '6px 16px',\r\n borderRadius: '6px',\r\n border: 'none',\r\n minWidth: '120px',\r\n height: '36px',\r\n boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n background: 'linear-gradient(45deg, #d32f2f 0%, #f9a925 70%, #d32f2f 100%)',\r\n backgroundSize: '200% auto',\r\n transition: 'background-position 0.5s ease, box-shadow 0.3s ease, color 0.25s ease',\r\n '&, .MuiTypography-root': {\r\n lineHeight: 1,\r\n fontWeight: 500,\r\n textTransform: 'unset'\r\n },\r\n '&:hover': {\r\n backgroundPosition: '100% 0',\r\n boxShadow: '0 4px 16px rgba(252, 228, 19, 0.23)'\r\n },\r\n '@keyframes gentleBounceY': {\r\n '0%, 5%': { transform: 'translateY(0)' },\r\n '20%': { transform: 'translateY(-3px)' },\r\n '30%': { transform: 'translateY(-2px)' },\r\n '40%': { transform: 'translateY(-3px)' },\r\n '50%': { transform: 'translateY(-2px)' },\r\n '75%, 100%': { transform: 'translateY(0)' }\r\n },\r\n '&:not(:hover).animate-bounce': {\r\n animation: 'gentleBounceY 3s cubic-bezier(0.4, 0.8, 0.4, 1) infinite'\r\n }\r\n})\r\n\r\nexport const IconButtonOrange: ComponentType<IconButtonProps & { [key: string]: any }> = styled(IconButton)({\r\n color: '#fff',\r\n border: 'none',\r\n boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n background: 'linear-gradient(45deg, #d32f2f 0%, #fbc02d 70%, #d32f2f 100%)',\r\n backgroundSize: '165% auto',\r\n transition: 'background-position 0.5s ease, box-shadow 0.3s ease',\r\n '&:hover': {\r\n backgroundPosition: '100% 0',\r\n boxShadow: '0 4px 16px rgba(252, 228, 19, 0.23)'\r\n }\r\n})\r\nIconButtonOrange.displayName = 'IconButtonOrange'\r\n\r\n// export const IconButtonSquareDark: ComponentType<IconButtonProps & { [key: string]: any }> = styled(IconButton)(({ theme }) => ({\r\n// color: '#fff',\r\n// border: 'none',\r\n// boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n// background: 'linear-gradient(45deg, #333 0%, #555 70%, #333 100%)',\r\n// backgroundSize: '165% auto',\r\n// transition: 'background-position 0.5s ease, box-shadow 0.3s ease',\r\n// '&:hover': {\r\n// backgroundPosition: '100% 0',\r\n// boxShadow: '0 4px 16px rgba(85, 85, 85, 0.23)'\r\n// }\r\n// }))\r\n// IconButtonSquareDark.displayName = 'IconButtonCirDark'\r\n\r\n// Custom IconButton for dark background\r\nexport const IconButtonDark: ComponentType<IconButtonProps> = styled(IconButton)(({ theme }: { theme: Theme }) => ({\r\n color: theme.palette.common.white,\r\n borderRadius: '8px',\r\n padding: '8px',\r\n '&:hover': {\r\n backgroundColor: 'rgba(255, 255, 255, 0.08)',\r\n color: theme.palette.common.white\r\n },\r\n '&:focus': {\r\n backgroundColor: 'rgba(255, 255, 255, 0.12)'\r\n }\r\n}))\r\n"],"names":["ButtonOrange","styled","Button","color","padding","borderRadius","border","minWidth","height","boxShadow","background","backgroundSize","transition","lineHeight","fontWeight","textTransform","backgroundPosition","transform","animation","IconButtonOrange","IconButton","displayName","IconButtonDark","_ref","theme","palette","common","white","backgroundColor"],"mappings":"uEAIaA,EAAoEC,EAAOC,EAAPD,CAAe,CAC9FE,MAAO,OACPC,QAAS,WACTC,aAAc,MACdC,OAAQ,OACRC,SAAU,QACVC,OAAQ,OACRC,UAAW,kCACXC,WAAY,gEACZC,eAAgB,YAChBC,WAAY,wEACZ,yBAA0B,CACxBC,WAAY,EACZC,WAAY,IACZC,cAAe,SAEjB,UAAW,CACTC,mBAAoB,SACpBP,UAAW,uCAEb,2BAA4B,CAC1B,SAAU,CAAEQ,UAAW,iBACvB,MAAO,CAAEA,UAAW,oBACpB,MAAO,CAAEA,UAAW,oBACpB,MAAO,CAAEA,UAAW,oBACpB,MAAO,CAAEA,UAAW,oBACpB,YAAa,CAAEA,UAAW,kBAE5B,+BAAgC,CAC9BC,UAAW,8DAIFC,EAA4ElB,EAAOmB,EAAPnB,CAAmB,CAC1GE,MAAO,OACPG,OAAQ,OACRG,UAAW,kCACXC,WAAY,gEACZC,eAAgB,YAChBC,WAAY,sDACZ,UAAW,CACTI,mBAAoB,SACpBP,UAAW,yCAGfU,EAAiBE,YAAc,mBAiBxB,IAAMC,EAAiDrB,EAAOmB,EAAPnB,CAAmB,SAAAsB,GAAA,IAAGC,EAAKD,EAALC,MAAK,MAA0B,CACjHrB,MAAOqB,EAAMC,QAAQC,OAAOC,MAC5BtB,aAAc,MACdD,QAAS,MACT,UAAW,CACTwB,gBAAiB,4BACjBzB,MAAOqB,EAAMC,QAAQC,OAAOC,OAE9B,UAAW,CACTC,gBAAiB,6BAEpB"}
@@ -1,2 +1,2 @@
1
- export{DarkIconButton}from"./buttons.js";export{NoDataPanel}from"./no-data-panel.js";
1
+ export{ButtonOrange,IconButtonDark,IconButtonOrange}from"./buttons.js";export{NoDataPanel}from"./no-data-panel.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{objectWithoutProperties as e,objectSpread2 as o,defineProperty as t}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as r}from"react/jsx-runtime";import{styled as a,Drawer as n,paperClasses as i,typographyClasses as l}from"@mui/material";import c from"@mui/icons-material/Menu";import{AppIconButtonDark as m}from"./ui.units.js";var p=["children"],s={root:"MobileMenu-root",logoArea:"MobileMenu-logoArea",tab:"MobileMenu-tab",title:"MobileMenu-tabTitle",nav:"MobileMenu-nav",navItem:"MobileMenu-navItem",divider:"MobileMenu-divider",socialList:"MobileMenu-socialList"},u=function(e,o){return"".concat("",".").concat(s[e]).concat("")},d=a(function(t){t.children;var a=e(t,p);return r(m,o(o({size:"small"},a),{},{children:r(c,{})}))})(function(e){var o=e.theme;return t({flex:0,borderRadius:"6px",border:"1px solid rgba(255, 255, 255, 0.3)"},o.breakpoints.up("md"),{display:"none"})});d.displayName="IconButtonStyled";var g=a(n)(function(e){var o=e.theme;return t(t(t(t(t(t(t(t({"*":{margin:0,padding:0,boxSizing:"border-box"}},"& .".concat(i.root),{width:"calc(100vw - 90px)",backgroundColor:"#1b1b1b",color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),padding:0,textAlign:"center"}),u("logoArea"),{minHeight:"var(--header-height, 114px)",alignItems:"center",justifyContent:"center"}),u("tab"),t({justifyContent:"center"},"& .".concat(l.root),{color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),textTransform:"uppercase",textDecoration:"none","&:hover":{color:o.palette.primary.main}})),u("title"),{fontWeight:600,color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[50],")"),marginBottom:o.spacing(2)}),u("navItem"),t({fontWeight:600,color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),lineHeight:1.5,textTransform:"uppercase",padding:"8px 0"},"& .".concat(l.root),{color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),textDecoration:"none","&:hover":{color:o.palette.primary.main}})),u("nav"),{paddingBottom:o.spacing(2)}),u("divider"),{borderBottom:"1px solid rgba(255, 255, 255, 0.3)",marginTop:o.spacing(2),marginBottom:o.spacing(2)}),u("socialList"),{justifyContent:"center",paddingBottom:o.spacing(4),listStyle:"none","& li":{margin:o.spacing(0,1),"& a":{color:"var(--color-social, ".concat(o.palette.grey[200],")"),"&:hover":{color:o.palette.primary.main}}}})});g.displayName="DrawerStyled";export{g as DrawerStyled,d as IconButtonStyled,s as mobileMenuClasses};
1
+ import{objectWithoutProperties as e,objectSpread2 as o,defineProperty as t}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as r}from"react/jsx-runtime";import{styled as n,Drawer as a,paperClasses as i,typographyClasses as l}from"@mui/material";import c from"@mui/icons-material/Menu";import{IconButtonDark as m}from"../components/buttons.js";var p=["children"],s={root:"MobileMenu-root",logoArea:"MobileMenu-logoArea",tab:"MobileMenu-tab",title:"MobileMenu-tabTitle",nav:"MobileMenu-nav",navItem:"MobileMenu-navItem",divider:"MobileMenu-divider",socialList:"MobileMenu-socialList"},u=function(e,o){return"".concat("",".").concat(s[e]).concat("")},d=n(function(t){t.children;var n=e(t,p);return r(m,o(o({size:"small"},n),{},{children:r(c,{})}))})(function(e){var o=e.theme;return t({flex:0,borderRadius:"6px",border:"1px solid rgba(255, 255, 255, 0.3)"},o.breakpoints.up("md"),{display:"none"})});d.displayName="IconButtonStyled";var g=n(a)(function(e){var o=e.theme;return t(t(t(t(t(t(t(t({"*":{margin:0,padding:0,boxSizing:"border-box"}},"& .".concat(i.root),{width:"calc(100vw - 90px)",backgroundColor:"#1b1b1b",color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),padding:0,textAlign:"center"}),u("logoArea"),{minHeight:"var(--header-height, 114px)",alignItems:"center",justifyContent:"center"}),u("tab"),t({justifyContent:"center"},"& .".concat(l.root),{color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),textTransform:"uppercase",textDecoration:"none","&:hover":{color:o.palette.primary.main}})),u("title"),{fontWeight:600,color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[50],")"),marginBottom:o.spacing(2)}),u("navItem"),t({fontWeight:600,color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),lineHeight:1.5,textTransform:"uppercase",padding:"8px 0"},"& .".concat(l.root),{color:"var(--color-text-mobile-menu, ".concat(o.palette.grey[200],")"),textDecoration:"none","&:hover":{color:o.palette.primary.main}})),u("nav"),{paddingBottom:o.spacing(2)}),u("divider"),{borderBottom:"1px solid rgba(255, 255, 255, 0.3)",marginTop:o.spacing(2),marginBottom:o.spacing(2)}),u("socialList"),{justifyContent:"center",paddingBottom:o.spacing(4),listStyle:"none","& li":{margin:o.spacing(0,1),"& a":{color:"var(--color-social, ".concat(o.palette.grey[200],")"),"&:hover":{color:o.palette.primary.main}}}})});g.displayName="DrawerStyled";export{g as DrawerStyled,d as IconButtonStyled,s as mobileMenuClasses};
2
2
  //# sourceMappingURL=mobile-menu.styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mobile-menu.styled.js","sources":["../../src/layout-global/mobile-menu.styled.tsx"],"sourcesContent":["import { Drawer, paperClasses, styled, typographyClasses } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { DrawerProps, IconButtonProps, Theme } from '@mui/material'\r\nimport MenuIcon from '@mui/icons-material/Menu'\r\nimport { AppIconButtonDark } from './ui.units'\r\n\r\nexport const mobileMenuClasses = {\r\n root: 'MobileMenu-root',\r\n logoArea: 'MobileMenu-logoArea',\r\n tab: 'MobileMenu-tab',\r\n title: 'MobileMenu-tabTitle',\r\n nav: 'MobileMenu-nav',\r\n navItem: 'MobileMenu-navItem',\r\n divider: 'MobileMenu-divider',\r\n socialList: 'MobileMenu-socialList'\r\n}\r\n\r\nconst getClasses = (key: keyof typeof mobileMenuClasses, options?: { prefix?: string; suffix?: string }) => {\r\n return `${options?.prefix || ''}.${mobileMenuClasses[key]}${options?.suffix || ''}`\r\n}\r\n\r\nexport const IconButtonStyled: ComponentType<IconButtonProps> = styled(({ children, ...props }: IconButtonProps) => (\r\n <AppIconButtonDark size='small' {...props}>\r\n <MenuIcon />\r\n </AppIconButtonDark>\r\n))(({ theme }: { theme: Theme }) => ({\r\n flex: 0,\r\n borderRadius: '6px',\r\n border: '1px solid rgba(255, 255, 255, 0.3)',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none'\r\n }\r\n}))\r\nIconButtonStyled.displayName = 'IconButtonStyled'\r\n\r\nexport const DrawerStyled: ComponentType<DrawerProps> = styled(Drawer)(({ theme }: { theme: Theme }) => ({\r\n '*': {\r\n margin: 0,\r\n padding: 0,\r\n boxSizing: 'border-box'\r\n },\r\n [`& .${paperClasses.root}`]: {\r\n width: 'calc(100vw - 90px)',\r\n backgroundColor: '#1b1b1b',\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n padding: 0,\r\n textAlign: 'center'\r\n },\r\n [getClasses('logoArea')]: {\r\n minHeight: 'var(--header-height, 114px)',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [getClasses('tab')]: {\r\n justifyContent: 'center',\r\n [`& .${typographyClasses.root}`]: {\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n textTransform: 'uppercase',\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n },\r\n [getClasses('title')]: {\r\n fontWeight: 600,\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[50]})`,\r\n marginBottom: theme.spacing(2)\r\n },\r\n [getClasses('navItem')]: {\r\n fontWeight: 600,\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n lineHeight: 1.5,\r\n textTransform: 'uppercase',\r\n padding: '8px 0',\r\n [`& .${typographyClasses.root}`]: {\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n },\r\n [getClasses('nav')]: {\r\n paddingBottom: theme.spacing(2)\r\n },\r\n [getClasses('divider')]: {\r\n borderBottom: '1px solid rgba(255, 255, 255, 0.3)',\r\n marginTop: theme.spacing(2),\r\n marginBottom: theme.spacing(2)\r\n },\r\n [getClasses('socialList')]: {\r\n justifyContent: 'center',\r\n paddingBottom: theme.spacing(4),\r\n listStyle: 'none',\r\n '& li': {\r\n margin: theme.spacing(0, 1),\r\n '& a': {\r\n color: `var(--color-social, ${theme.palette.grey[200]})`,\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n }\r\n }\r\n}))\r\nDrawerStyled.displayName = 'DrawerStyled'\r\n"],"names":["mobileMenuClasses","root","logoArea","tab","title","nav","navItem","divider","socialList","getClasses","key","options","concat","IconButtonStyled","styled","_ref","children","props","_objectWithoutProperties","_excluded","_jsx","AppIconButtonDark","_objectSpread","size","MenuIcon","_ref2","theme","_defineProperty","flex","borderRadius","border","breakpoints","up","display","displayName","DrawerStyled","Drawer","_ref4","margin","padding","boxSizing","paperClasses","width","backgroundColor","color","palette","grey","textAlign","minHeight","alignItems","justifyContent","typographyClasses","textTransform","textDecoration","primary","main","fontWeight","marginBottom","spacing","lineHeight","paddingBottom","borderBottom","marginTop","listStyle"],"mappings":"2WAMaA,EAAoB,CAC/BC,KAAM,kBACNC,SAAU,sBACVC,IAAK,iBACLC,MAAO,sBACPC,IAAK,iBACLC,QAAS,qBACTC,QAAS,qBACTC,WAAY,yBAGRC,EAAa,SAACC,EAAqCC,GACvD,MAAA,GAAAC,OAA6B,QAAEA,OAAIZ,EAAkBU,IAAIE,OAAsB,GACjF,EAEaC,EAAmDC,EAAO,SAAAC,GAAWA,EAARC,SAAaC,IAAAA,EAAKC,EAAAH,EAAAI,GAAA,OAC1FC,EAACC,EAAiBC,EAAAA,EAAA,CAACC,KAAK,SAAYN,GAAK,GAAA,UACvCG,EAACI,QACiB,EAH0CV,CAI7D,SAAAW,GAAA,IAAGC,EAAKD,EAALC,MAAK,OAAAC,EAAA,CACTC,KAAM,EACNC,aAAc,MACdC,OAAQ,sCACPJ,EAAMK,YAAYC,GAAG,MAAQ,CAC5BC,QAAS,QACV,GAEHpB,EAAiBqB,YAAc,mBAExB,IAAMC,EAA2CrB,EAAOsB,EAAPtB,CAAe,SAAAuB,GAAA,IAAGX,EAAKW,EAALX,MAAK,OAAAC,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAA,CAC7E,IAAK,CACHW,OAAQ,EACRC,QAAS,EACTC,UAAW,eACZ,MAAA5B,OACM6B,EAAaxC,MAAS,CAC3ByC,MAAO,qBACPC,gBAAiB,UACjBC,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEP,QAAS,EACTQ,UAAW,WAEZtC,EAAW,YAAc,CACxBuC,UAAW,8BACXC,WAAY,SACZC,eAAgB,WAEjBzC,EAAW,OAAMkB,EAAA,CAChBuB,eAAgB,UAAQ,MAAAtC,OACjBuC,EAAkBlD,MAAS,CAChC2C,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEM,cAAe,YACfC,eAAgB,OAChB,UAAW,CACTT,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIlC9C,EAAW,SAAW,CACrB+C,WAAY,IACZZ,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,IAAM,KACjEW,aAAc/B,EAAMgC,QAAQ,KAE7BjD,EAAW,WAAUkB,EAAA,CACpB6B,WAAY,IACZZ,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEa,WAAY,IACZP,cAAe,YACfb,QAAS,SAAO,MAAA3B,OACTuC,EAAkBlD,MAAS,CAChC2C,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEO,eAAgB,OAChB,UAAW,CACTT,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIlC9C,EAAW,OAAS,CACnBmD,cAAelC,EAAMgC,QAAQ,KAE9BjD,EAAW,WAAa,CACvBoD,aAAc,qCACdC,UAAWpC,EAAMgC,QAAQ,GACzBD,aAAc/B,EAAMgC,QAAQ,KAE7BjD,EAAW,cAAgB,CAC1ByC,eAAgB,SAChBU,cAAelC,EAAMgC,QAAQ,GAC7BK,UAAW,OACX,OAAQ,CACNzB,OAAQZ,EAAMgC,QAAQ,EAAG,GACzB,MAAO,CACLd,MAAK,uBAAAhC,OAAyBc,EAAMmB,QAAQC,KAAK,KAAO,KACxD,UAAW,CACTF,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIpC,GAEHpB,EAAaD,YAAc"}
1
+ {"version":3,"file":"mobile-menu.styled.js","sources":["../../src/layout-global/mobile-menu.styled.tsx"],"sourcesContent":["import { Drawer, paperClasses, styled, typographyClasses } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { DrawerProps, IconButtonProps, Theme } from '@mui/material'\r\nimport MenuIcon from '@mui/icons-material/Menu'\r\nimport { IconButtonDark } from '../components/buttons'\r\n\r\nexport const mobileMenuClasses = {\r\n root: 'MobileMenu-root',\r\n logoArea: 'MobileMenu-logoArea',\r\n tab: 'MobileMenu-tab',\r\n title: 'MobileMenu-tabTitle',\r\n nav: 'MobileMenu-nav',\r\n navItem: 'MobileMenu-navItem',\r\n divider: 'MobileMenu-divider',\r\n socialList: 'MobileMenu-socialList'\r\n}\r\n\r\nconst getClasses = (key: keyof typeof mobileMenuClasses, options?: { prefix?: string; suffix?: string }) => {\r\n return `${options?.prefix || ''}.${mobileMenuClasses[key]}${options?.suffix || ''}`\r\n}\r\n\r\nexport const IconButtonStyled: ComponentType<IconButtonProps> = styled(({ children, ...props }: IconButtonProps) => (\r\n <IconButtonDark size='small' {...props}>\r\n <MenuIcon />\r\n </IconButtonDark>\r\n))(({ theme }: { theme: Theme }) => ({\r\n flex: 0,\r\n borderRadius: '6px',\r\n border: '1px solid rgba(255, 255, 255, 0.3)',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none'\r\n }\r\n}))\r\nIconButtonStyled.displayName = 'IconButtonStyled'\r\n\r\nexport const DrawerStyled: ComponentType<DrawerProps> = styled(Drawer)(({ theme }: { theme: Theme }) => ({\r\n '*': {\r\n margin: 0,\r\n padding: 0,\r\n boxSizing: 'border-box'\r\n },\r\n [`& .${paperClasses.root}`]: {\r\n width: 'calc(100vw - 90px)',\r\n backgroundColor: '#1b1b1b',\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n padding: 0,\r\n textAlign: 'center'\r\n },\r\n [getClasses('logoArea')]: {\r\n minHeight: 'var(--header-height, 114px)',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [getClasses('tab')]: {\r\n justifyContent: 'center',\r\n [`& .${typographyClasses.root}`]: {\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n textTransform: 'uppercase',\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n },\r\n [getClasses('title')]: {\r\n fontWeight: 600,\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[50]})`,\r\n marginBottom: theme.spacing(2)\r\n },\r\n [getClasses('navItem')]: {\r\n fontWeight: 600,\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n lineHeight: 1.5,\r\n textTransform: 'uppercase',\r\n padding: '8px 0',\r\n [`& .${typographyClasses.root}`]: {\r\n color: `var(--color-text-mobile-menu, ${theme.palette.grey[200]})`,\r\n textDecoration: 'none',\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n },\r\n [getClasses('nav')]: {\r\n paddingBottom: theme.spacing(2)\r\n },\r\n [getClasses('divider')]: {\r\n borderBottom: '1px solid rgba(255, 255, 255, 0.3)',\r\n marginTop: theme.spacing(2),\r\n marginBottom: theme.spacing(2)\r\n },\r\n [getClasses('socialList')]: {\r\n justifyContent: 'center',\r\n paddingBottom: theme.spacing(4),\r\n listStyle: 'none',\r\n '& li': {\r\n margin: theme.spacing(0, 1),\r\n '& a': {\r\n color: `var(--color-social, ${theme.palette.grey[200]})`,\r\n '&:hover': {\r\n color: theme.palette.primary.main\r\n }\r\n }\r\n }\r\n }\r\n}))\r\nDrawerStyled.displayName = 'DrawerStyled'\r\n"],"names":["mobileMenuClasses","root","logoArea","tab","title","nav","navItem","divider","socialList","getClasses","key","options","concat","IconButtonStyled","styled","_ref","children","props","_objectWithoutProperties","_excluded","_jsx","IconButtonDark","_objectSpread","size","MenuIcon","_ref2","theme","_defineProperty","flex","borderRadius","border","breakpoints","up","display","displayName","DrawerStyled","Drawer","_ref4","margin","padding","boxSizing","paperClasses","width","backgroundColor","color","palette","grey","textAlign","minHeight","alignItems","justifyContent","typographyClasses","textTransform","textDecoration","primary","main","fontWeight","marginBottom","spacing","lineHeight","paddingBottom","borderBottom","marginTop","listStyle"],"mappings":"mXAMaA,EAAoB,CAC/BC,KAAM,kBACNC,SAAU,sBACVC,IAAK,iBACLC,MAAO,sBACPC,IAAK,iBACLC,QAAS,qBACTC,QAAS,qBACTC,WAAY,yBAGRC,EAAa,SAACC,EAAqCC,GACvD,MAAA,GAAAC,OAA6B,QAAEA,OAAIZ,EAAkBU,IAAIE,OAAsB,GACjF,EAEaC,EAAmDC,EAAO,SAAAC,GAAWA,EAARC,SAAaC,IAAAA,EAAKC,EAAAH,EAAAI,GAAA,OAC1FC,EAACC,EAAcC,EAAAA,EAAA,CAACC,KAAK,SAAYN,GAAK,GAAA,UACpCG,EAACI,QACc,EAH6CV,CAI7D,SAAAW,GAAA,IAAGC,EAAKD,EAALC,MAAK,OAAAC,EAAA,CACTC,KAAM,EACNC,aAAc,MACdC,OAAQ,sCACPJ,EAAMK,YAAYC,GAAG,MAAQ,CAC5BC,QAAS,QACV,GAEHpB,EAAiBqB,YAAc,mBAExB,IAAMC,EAA2CrB,EAAOsB,EAAPtB,CAAe,SAAAuB,GAAA,IAAGX,EAAKW,EAALX,MAAK,OAAAC,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAA,CAC7E,IAAK,CACHW,OAAQ,EACRC,QAAS,EACTC,UAAW,eACZ,MAAA5B,OACM6B,EAAaxC,MAAS,CAC3ByC,MAAO,qBACPC,gBAAiB,UACjBC,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEP,QAAS,EACTQ,UAAW,WAEZtC,EAAW,YAAc,CACxBuC,UAAW,8BACXC,WAAY,SACZC,eAAgB,WAEjBzC,EAAW,OAAMkB,EAAA,CAChBuB,eAAgB,UAAQ,MAAAtC,OACjBuC,EAAkBlD,MAAS,CAChC2C,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEM,cAAe,YACfC,eAAgB,OAChB,UAAW,CACTT,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIlC9C,EAAW,SAAW,CACrB+C,WAAY,IACZZ,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,IAAM,KACjEW,aAAc/B,EAAMgC,QAAQ,KAE7BjD,EAAW,WAAUkB,EAAA,CACpB6B,WAAY,IACZZ,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEa,WAAY,IACZP,cAAe,YACfb,QAAS,SAAO,MAAA3B,OACTuC,EAAkBlD,MAAS,CAChC2C,MAAK,iCAAAhC,OAAmCc,EAAMmB,QAAQC,KAAK,KAAO,KAClEO,eAAgB,OAChB,UAAW,CACTT,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIlC9C,EAAW,OAAS,CACnBmD,cAAelC,EAAMgC,QAAQ,KAE9BjD,EAAW,WAAa,CACvBoD,aAAc,qCACdC,UAAWpC,EAAMgC,QAAQ,GACzBD,aAAc/B,EAAMgC,QAAQ,KAE7BjD,EAAW,cAAgB,CAC1ByC,eAAgB,SAChBU,cAAelC,EAAMgC,QAAQ,GAC7BK,UAAW,OACX,OAAQ,CACNzB,OAAQZ,EAAMgC,QAAQ,EAAG,GACzB,MAAO,CACLd,MAAK,uBAAAhC,OAAyBc,EAAMmB,QAAQC,KAAK,KAAO,KACxD,UAAW,CACTF,MAAOlB,EAAMmB,QAAQS,QAAQC,SAIpC,GAEHpB,EAAaD,YAAc"}
@@ -1,2 +1,2 @@
1
- import{jsx as o,jsxs as a}from"react/jsx-runtime";import{Fragment as r}from"react";import{styled as n,Button as e,IconButton as t}from"@mui/material";var i=function(n){var e,t=null===(e=n.children)||void 0===e?void 0:e.split("\n").filter(function(o){return!!o});return o(r,{children:null==t?void 0:t.map(function(n,e){return a(r,{children:[n,e<t.length-1&&o("br",{})]},e)})})},s=n(e)({color:"#fff",padding:"6px 16px",borderRadius:"6px",border:"none",minWidth:"120px",height:"36px",boxShadow:"0 2px 8px rgba(27, 25, 24, 0.2)",background:"linear-gradient(45deg, #d32f2f 0%, #f9a925 70%, #d32f2f 100%)",backgroundSize:"200% auto",transition:"background-position 0.5s ease, box-shadow 0.3s ease, color 0.25s ease","&, .MuiTypography-root":{fontSize:"0.9rem",lineHeight:1,fontWeight:500,textTransform:"unset"},"&:hover":{backgroundPosition:"100% 0",boxShadow:"0 4px 16px rgba(252, 228, 19, 0.23)"},"&:not(:hover).animate-bounce":{animation:"gentleBounceY 3s cubic-bezier(0.4, 0.8, 0.4, 1) infinite"},"@keyframes gentleBounceY":{"0%":{transform:"translateY(0) scale(1)"},"5%":{transform:"translateY(0) scale(1)"},"20%":{transform:"translateY(-3px) scale(1.02)"},"30%":{transform:"translateY(-2px) scale(1.01)"},"40%":{transform:"translateY(-3px) scale(1.02)"},"50%":{transform:"translateY(-2px) scale(1.01)"},"75%":{transform:"translateY(0) scale(1)"},"100%":{transform:"translateY(0) scale(1)"}}}),d=n(t)({color:"#fff",border:"none",boxShadow:"0 2px 8px rgba(27, 25, 24, 0.2)",background:"linear-gradient(45deg, #d32f2f 0%, #fbc02d 70%, #d32f2f 100%)",backgroundSize:"165% auto",transition:"background-position 0.5s ease, box-shadow 0.3s ease","&:hover":{backgroundPosition:"100% 0",boxShadow:"0 4px 16px rgba(252, 228, 19, 0.23)"}});d.displayName="AppIconButtonOrange";var c=n(t)({color:"#fff",border:"none",boxShadow:"0 2px 8px rgba(27, 25, 24, 0.2)",background:"linear-gradient(45deg, #333 0%, #555 70%, #333 100%)",backgroundSize:"165% auto",transition:"background-position 0.5s ease, box-shadow 0.3s ease","&:hover":{backgroundPosition:"100% 0",boxShadow:"0 4px 16px rgba(85, 85, 85, 0.23)"}});c.displayName="AppIconButtonDark";export{s as AppButtonOrange,c as AppIconButtonDark,d as AppIconButtonOrange,i as TextLineBreak};
1
+ import{jsx as r,jsxs as n}from"react/jsx-runtime";import{Fragment as t}from"react";var i=function(i){var e,o=null===(e=i.children)||void 0===e?void 0:e.split("\n").filter(function(r){return!!r});return r(t,{children:null==o?void 0:o.map(function(i,e){return n(t,{children:[i,e<o.length-1&&r("br",{})]},e)})})};export{i as TextLineBreak};
2
2
  //# sourceMappingURL=ui.units.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.units.js","sources":["../../src/layout-global/ui.units.tsx"],"sourcesContent":["import { ComponentType, FC, Fragment } from 'react'\r\nimport { Button, IconButton, styled } from '@mui/material'\r\nimport { type IconButtonProps, type ButtonProps } from '@mui/material'\r\n\r\nexport const TextLineBreak: FC<{ children?: string }> = (props) => {\r\n const texts = props.children?.split('\\n').filter((x) => !!x)\r\n return (\r\n <Fragment>\r\n {texts?.map((x, i) => (\r\n <Fragment key={i}>\r\n {x}\r\n {i < texts.length - 1 && <br />}\r\n </Fragment>\r\n ))}\r\n </Fragment>\r\n )\r\n}\r\n\r\nexport const AppButtonOrange: ComponentType<ButtonProps & { [key: string]: any }> = styled(Button)({\r\n color: '#fff',\r\n padding: '6px 16px',\r\n borderRadius: '6px',\r\n border: 'none',\r\n minWidth: '120px',\r\n height: '36px',\r\n boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n background: 'linear-gradient(45deg, #d32f2f 0%, #f9a925 70%, #d32f2f 100%)',\r\n backgroundSize: '200% auto',\r\n transition: 'background-position 0.5s ease, box-shadow 0.3s ease, color 0.25s ease',\r\n '&, .MuiTypography-root': {\r\n fontSize: '0.9rem',\r\n lineHeight: 1,\r\n fontWeight: 500,\r\n textTransform: 'unset'\r\n },\r\n '&:hover': {\r\n backgroundPosition: '100% 0',\r\n boxShadow: '0 4px 16px rgba(252, 228, 19, 0.23)'\r\n },\r\n '&:not(:hover).animate-bounce': {\r\n animation: 'gentleBounceY 3s cubic-bezier(0.4, 0.8, 0.4, 1) infinite'\r\n },\r\n '@keyframes gentleBounceY': {\r\n '0%': { transform: 'translateY(0) scale(1)' },\r\n '5%': { transform: 'translateY(0) scale(1)' },\r\n '20%': { transform: 'translateY(-3px) scale(1.02)' },\r\n '30%': { transform: 'translateY(-2px) scale(1.01)' },\r\n '40%': { transform: 'translateY(-3px) scale(1.02)' },\r\n '50%': { transform: 'translateY(-2px) scale(1.01)' },\r\n '75%': { transform: 'translateY(0) scale(1)' },\r\n '100%': { transform: 'translateY(0) scale(1)' }\r\n }\r\n})\r\n\r\nexport const AppIconButtonOrange: ComponentType<IconButtonProps & { [key: string]: any }> = styled(IconButton)({\r\n color: '#fff',\r\n border: 'none',\r\n boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n background: 'linear-gradient(45deg, #d32f2f 0%, #fbc02d 70%, #d32f2f 100%)',\r\n backgroundSize: '165% auto',\r\n transition: 'background-position 0.5s ease, box-shadow 0.3s ease',\r\n '&:hover': {\r\n backgroundPosition: '100% 0',\r\n boxShadow: '0 4px 16px rgba(252, 228, 19, 0.23)'\r\n }\r\n})\r\nAppIconButtonOrange.displayName = 'AppIconButtonOrange'\r\n\r\nexport const AppIconButtonDark: ComponentType<IconButtonProps & { [key: string]: any }> = styled(IconButton)({\r\n color: '#fff',\r\n border: 'none',\r\n boxShadow: '0 2px 8px rgba(27, 25, 24, 0.2)',\r\n background: 'linear-gradient(45deg, #333 0%, #555 70%, #333 100%)',\r\n backgroundSize: '165% auto',\r\n transition: 'background-position 0.5s ease, box-shadow 0.3s ease',\r\n '&:hover': {\r\n backgroundPosition: '100% 0',\r\n boxShadow: '0 4px 16px rgba(85, 85, 85, 0.23)'\r\n }\r\n})\r\nAppIconButtonDark.displayName = 'AppIconButtonDark'\r\n"],"names":["TextLineBreak","props","_props$children","texts","children","split","filter","x","_jsx","Fragment","map","i","_jsxs","length","AppButtonOrange","styled","Button","color","padding","borderRadius","border","minWidth","height","boxShadow","background","backgroundSize","transition","fontSize","lineHeight","fontWeight","textTransform","backgroundPosition","animation","transform","AppIconButtonOrange","IconButton","displayName","AppIconButtonDark"],"mappings":"0JAIaA,EAA2C,SAACC,GAAS,IAAAC,EAC1DC,UAAKD,EAAGD,EAAMG,gBAAQ,IAAAF,OAAA,EAAdA,EAAgBG,MAAM,MAAMC,OAAO,SAACC,GAAC,QAAOA,IAC1D,OACEC,EAACC,EACE,CAAAL,SAAAD,aAAAA,EAAAA,EAAOO,IAAI,SAACH,EAAGI,GAAC,OACfC,EAACH,EACE,CAAAL,SAAA,CAAAG,EACAI,EAAIR,EAAMU,OAAS,GAAKL,EAAA,KAAA,MAFZG,EAIhB,IAGP,EAEaG,EAAuEC,EAAOC,EAAPD,CAAe,CACjGE,MAAO,OACPC,QAAS,WACTC,aAAc,MACdC,OAAQ,OACRC,SAAU,QACVC,OAAQ,OACRC,UAAW,kCACXC,WAAY,gEACZC,eAAgB,YAChBC,WAAY,wEACZ,yBAA0B,CACxBC,SAAU,SACVC,WAAY,EACZC,WAAY,IACZC,cAAe,SAEjB,UAAW,CACTC,mBAAoB,SACpBR,UAAW,uCAEb,+BAAgC,CAC9BS,UAAW,4DAEb,2BAA4B,CAC1B,KAAM,CAAEC,UAAW,0BACnB,KAAM,CAAEA,UAAW,0BACnB,MAAO,CAAEA,UAAW,gCACpB,MAAO,CAAEA,UAAW,gCACpB,MAAO,CAAEA,UAAW,gCACpB,MAAO,CAAEA,UAAW,gCACpB,MAAO,CAAEA,UAAW,0BACpB,OAAQ,CAAEA,UAAW,6BAIZC,EAA+EnB,EAAOoB,EAAPpB,CAAmB,CAC7GE,MAAO,OACPG,OAAQ,OACRG,UAAW,kCACXC,WAAY,gEACZC,eAAgB,YAChBC,WAAY,sDACZ,UAAW,CACTK,mBAAoB,SACpBR,UAAW,yCAGfW,EAAoBE,YAAc,0BAErBC,EAA6EtB,EAAOoB,EAAPpB,CAAmB,CAC3GE,MAAO,OACPG,OAAQ,OACRG,UAAW,kCACXC,WAAY,uDACZC,eAAgB,YAChBC,WAAY,sDACZ,UAAW,CACTK,mBAAoB,SACpBR,UAAW,uCAGfc,EAAkBD,YAAc"}
1
+ {"version":3,"file":"ui.units.js","sources":["../../src/layout-global/ui.units.tsx"],"sourcesContent":["import { FC, Fragment } from 'react'\r\n\r\nexport const TextLineBreak: FC<{ children?: string }> = (props) => {\r\n const texts = props.children?.split('\\n').filter((x) => !!x)\r\n return (\r\n <Fragment>\r\n {texts?.map((x, i) => (\r\n <Fragment key={i}>\r\n {x}\r\n {i < texts.length - 1 && <br />}\r\n </Fragment>\r\n ))}\r\n </Fragment>\r\n )\r\n}\r\n"],"names":["TextLineBreak","props","_props$children","texts","children","split","filter","x","_jsx","Fragment","map","i","_jsxs","length"],"mappings":"uFAEaA,EAA2C,SAACC,GAAS,IAAAC,EAC1DC,UAAKD,EAAGD,EAAMG,gBAAQ,IAAAF,OAAA,EAAdA,EAAgBG,MAAM,MAAMC,OAAO,SAACC,GAAC,QAAOA,IAC1D,OACEC,EAACC,EACE,CAAAL,SAAAD,aAAAA,EAAAA,EAAOO,IAAI,SAACH,EAAGI,GAAC,OACfC,EAACH,EACE,CAAAL,SAAA,CAAAG,EACAI,EAAIR,EAAMU,OAAS,GAAKL,EAAA,KAAA,MAFZG,EAIhB,IAGP"}
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sources":["../../src/media-right/hook.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\r\nimport { getEventStore, MfeCartStore } from './cart-store'\r\nimport { IMediaRightChannel, IMediaRightGroup, IMediaRightItem } from './types'\r\n\r\nexport interface IMediaRightStoreOptions {\r\n localStorageKey?: string\r\n}\r\n\r\nexport function useMediaRightStore(params?: IMediaRightStoreOptions) {\r\n const storeRef = useRef<MfeCartStore>()\r\n if (!storeRef.current) {\r\n storeRef.current = new MfeCartStore({ localStorageKey: params?.localStorageKey })\r\n }\r\n const store = storeRef.current\r\n const [groups, setGroups] = useState<Record<string, IMediaRightGroup>>(store.getState())\r\n\r\n useEffect(() => {\r\n const event = getEventStore()\r\n if (!groups || Object.keys(groups).length < 1) {\r\n event?.emit('requestState', {})\r\n }\r\n\r\n const unsubscribe = event?.subscribe('stateChange', ({ groups }) => {\r\n setGroups(groups)\r\n })\r\n\r\n return () => {\r\n if (unsubscribe) unsubscribe()\r\n store.destroy()\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [])\r\n\r\n useEffect(() => {\r\n const reloadState = () => {\r\n const state = store.getState()\r\n setGroups(state)\r\n }\r\n const handleStorage = (e: StorageEvent) => {\r\n if (e.key === params?.localStorageKey) {\r\n reloadState()\r\n }\r\n }\r\n window.addEventListener('storage', handleStorage)\r\n return () => {\r\n window.removeEventListener('storage', handleStorage)\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [params?.localStorageKey])\r\n\r\n return { groups: Object.values(groups), groupsMap: groups }\r\n}\r\n\r\nexport function useMediaRightActions<T extends IMediaRightItem = IMediaRightItem>(params?: IMediaRightStoreOptions) {\r\n const storeRef = useRef<MfeCartStore>()\r\n if (!storeRef.current) {\r\n storeRef.current = new MfeCartStore({ localStorageKey: params?.localStorageKey })\r\n }\r\n const store = storeRef.current\r\n\r\n const addGroup = (group: Omit<IMediaRightGroup, 'createdAt' | 'items' | 'channels'>) => {\r\n store.addGroup(group)\r\n }\r\n\r\n const updateGroup = (groupId: string, updates: Partial<Pick<IMediaRightGroup, 'name'>>) => {\r\n store.updateGroup(groupId, updates)\r\n }\r\n\r\n const removeGroup = (groupId: string) => {\r\n store.removeGroup(groupId)\r\n }\r\n\r\n const addItem = (item: T) => {\r\n store.addItem(item)\r\n }\r\n\r\n const updateItem = (groupId: string, productId: string, updates: Partial<T>) => {\r\n store.updateItem(groupId, productId, updates)\r\n }\r\n\r\n const removeItem = (groupId: string, productId: string) => {\r\n store.removeItem(groupId, productId)\r\n }\r\n\r\n const clearCart = () => {\r\n store.clear()\r\n }\r\n\r\n const addChannel = (groupId: string, channel: IMediaRightChannel) => {\r\n store.addChannel(groupId, channel)\r\n }\r\n\r\n const updateChannel = (groupId: string, channelIndex: number, updates: Partial<IMediaRightChannel>) => {\r\n store.updateChannel(groupId, channelIndex, updates)\r\n }\r\n\r\n const removeChannel = (groupId: string, channelIndex: number) => {\r\n store.removeChannel(groupId, channelIndex)\r\n }\r\n\r\n const clearChannels = (groupId: string) => {\r\n store.clearChannels(groupId)\r\n }\r\n\r\n return {\r\n addGroup,\r\n updateGroup,\r\n removeGroup,\r\n addItem,\r\n updateItem,\r\n removeItem,\r\n addChannel,\r\n updateChannel,\r\n removeChannel,\r\n clearChannels,\r\n clearCart\r\n }\r\n}\r\n"],"names":["useMediaRightStore","params","storeRef","useRef","current","MfeCartStore","localStorageKey","store","_useState","useState","getState","_useState2","_slicedToArray","groups","setGroups","useEffect","event","getEventStore","Object","keys","length","emit","unsubscribe","subscribe","_ref","destroy","handleStorage","e","state","key","window","addEventListener","removeEventListener","values","groupsMap","useMediaRightActions","addGroup","group","updateGroup","groupId","updates","removeGroup","addItem","item","updateItem","productId","removeItem","addChannel","channel","updateChannel","channelIndex","removeChannel","clearChannels","clearCart","clear"],"mappings":"uMAQM,SAAUA,EAAmBC,GACjC,IAAMC,EAAWC,IACZD,EAASE,UACZF,EAASE,QAAU,IAAIC,EAAa,CAAEC,gBAAiBL,aAAM,EAANA,EAAQK,mBAEjE,IAAMC,EAAQL,EAASE,QACvBI,EAA4BC,EAA2CF,EAAMG,YAAWC,EAAAC,EAAAJ,EAAA,GAAjFK,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAoCxB,OAlCAI,EAAU,WACR,IAAMC,EAAQC,MACTJ,GAAUK,OAAOC,KAAKN,GAAQO,OAAS,KAC1CJ,SAAAA,EAAOK,KAAK,eAAgB,KAG9B,IAAMC,EAAcN,aAAAA,EAAAA,EAAOO,UAAU,cAAe,SAAAC,GAAe,IAAZX,EAAMW,EAANX,OACrDC,EAAUD,EACZ,GAEA,OAAO,WACDS,GAAaA,IACjBf,EAAMkB,SACP,CAEF,EAAE,IAEHV,EAAU,WACR,IAIMW,EAAgB,SAACC,GAJH,IACZC,EAIFD,EAAEE,OAAQ5B,aAAAA,EAAAA,EAAQK,mBAJhBsB,EAAQrB,EAAMG,WACpBI,EAAUc,GAMX,EAED,OADAE,OAAOC,iBAAiB,UAAWL,GAC5B,WACLI,OAAOE,oBAAoB,UAAWN,EACvC,GAEA,CAACzB,eAAAA,EAAQK,kBAEL,CAAEO,OAAQK,OAAOe,OAAOpB,GAASqB,UAAWrB,EACrD,CAEM,SAAUsB,EAAkElC,GAChF,IAAMC,EAAWC,IACZD,EAASE,UACZF,EAASE,QAAU,IAAIC,EAAa,CAAEC,gBAAiBL,aAAM,EAANA,EAAQK,mBAEjE,IAAMC,EAAQL,EAASE,QA8CvB,MAAO,CACLgC,SA7Ce,SAACC,GAChB9B,EAAM6B,SAASC,EAChB,EA4CCC,YA1CkB,SAACC,EAAiBC,GACpCjC,EAAM+B,YAAYC,EAASC,EAC5B,EAyCCC,YAvCkB,SAACF,GACnBhC,EAAMkC,YAAYF,EACnB,EAsCCG,QApCc,SAACC,GACfpC,EAAMmC,QAAQC,EACf,EAmCCC,WAjCiB,SAACL,EAAiBM,EAAmBL,GACtDjC,EAAMqC,WAAWL,EAASM,EAAWL,EACtC,EAgCCM,WA9BiB,SAACP,EAAiBM,GACnCtC,EAAMuC,WAAWP,EAASM,EAC3B,EA6BCE,WAvBiB,SAACR,EAAiBS,GACnCzC,EAAMwC,WAAWR,EAASS,EAC3B,EAsBCC,cApBoB,SAACV,EAAiBW,EAAsBV,GAC5DjC,EAAM0C,cAAcV,EAASW,EAAcV,EAC5C,EAmBCW,cAjBoB,SAACZ,EAAiBW,GACtC3C,EAAM4C,cAAcZ,EAASW,EAC9B,EAgBCE,cAdoB,SAACb,GACrBhC,EAAM6C,cAAcb,EACrB,EAaCc,UA/BgB,WAChB9C,EAAM+C,OACP,EA+BH"}
1
+ {"version":3,"file":"hook.js","sources":["../../src/media-right/hook.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\r\nimport { getEventStore, MfeCartStore } from './cart-store'\r\nimport { IMediaRightChannel, IMediaRightGroup, IMediaRightItem } from './types'\r\n\r\nexport interface IMediaRightStoreOptions {\r\n localStorageKey?: string\r\n}\r\n\r\nexport function useMediaRightStore<O = any>(params?: IMediaRightStoreOptions) {\r\n const storeRef = useRef<MfeCartStore>()\r\n if (!storeRef.current) {\r\n storeRef.current = new MfeCartStore({ localStorageKey: params?.localStorageKey })\r\n }\r\n const store = storeRef.current\r\n const [groups, setGroups] = useState<Record<string, IMediaRightGroup<O>>>(store.getState())\r\n\r\n useEffect(() => {\r\n const event = getEventStore()\r\n if (!groups || Object.keys(groups).length < 1) {\r\n event?.emit('requestState', {})\r\n }\r\n\r\n const unsubscribe = event?.subscribe('stateChange', ({ groups }) => {\r\n setGroups(groups)\r\n })\r\n\r\n return () => {\r\n if (unsubscribe) unsubscribe()\r\n store.destroy()\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [])\r\n\r\n useEffect(() => {\r\n const reloadState = () => {\r\n const state = store.getState()\r\n setGroups(state)\r\n }\r\n const handleStorage = (e: StorageEvent) => {\r\n if (e.key === params?.localStorageKey) {\r\n reloadState()\r\n }\r\n }\r\n window.addEventListener('storage', handleStorage)\r\n return () => {\r\n window.removeEventListener('storage', handleStorage)\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [params?.localStorageKey])\r\n\r\n return { groups: Object.values(groups), groupsMap: groups }\r\n}\r\n\r\nexport function useMediaRightActions<O = any>(params?: IMediaRightStoreOptions) {\r\n const storeRef = useRef<MfeCartStore>()\r\n if (!storeRef.current) {\r\n storeRef.current = new MfeCartStore({ localStorageKey: params?.localStorageKey })\r\n }\r\n const store = storeRef.current\r\n\r\n const addGroup = (group: Omit<IMediaRightGroup<O>, 'createdAt' | 'items' | 'channels'>) => {\r\n store.addGroup(group)\r\n }\r\n\r\n const updateGroup = (groupId: string, updates: Partial<Pick<IMediaRightGroup<O>, 'name'>>) => {\r\n store.updateGroup(groupId, updates)\r\n }\r\n\r\n const removeGroup = (groupId: string) => {\r\n store.removeGroup(groupId)\r\n }\r\n\r\n const addItem = (item: IMediaRightItem<O>) => {\r\n store.addItem(item)\r\n }\r\n\r\n const updateItem = (groupId: string, productId: string, updates: Partial<IMediaRightItem<O>>) => {\r\n store.updateItem(groupId, productId, updates)\r\n }\r\n\r\n const removeItem = (groupId: string, productId: string) => {\r\n store.removeItem(groupId, productId)\r\n }\r\n\r\n const clearCart = () => {\r\n store.clear()\r\n }\r\n\r\n const addChannel = (groupId: string, channel: IMediaRightChannel) => {\r\n store.addChannel(groupId, channel)\r\n }\r\n\r\n const updateChannel = (groupId: string, channelIndex: number, updates: Partial<IMediaRightChannel>) => {\r\n store.updateChannel(groupId, channelIndex, updates)\r\n }\r\n\r\n const removeChannel = (groupId: string, channelIndex: number) => {\r\n store.removeChannel(groupId, channelIndex)\r\n }\r\n\r\n const clearChannels = (groupId: string) => {\r\n store.clearChannels(groupId)\r\n }\r\n\r\n return {\r\n addGroup,\r\n updateGroup,\r\n removeGroup,\r\n addItem,\r\n updateItem,\r\n removeItem,\r\n addChannel,\r\n updateChannel,\r\n removeChannel,\r\n clearChannels,\r\n clearCart\r\n }\r\n}\r\n"],"names":["useMediaRightStore","params","storeRef","useRef","current","MfeCartStore","localStorageKey","store","_useState","useState","getState","_useState2","_slicedToArray","groups","setGroups","useEffect","event","getEventStore","Object","keys","length","emit","unsubscribe","subscribe","_ref","destroy","handleStorage","e","state","key","window","addEventListener","removeEventListener","values","groupsMap","useMediaRightActions","addGroup","group","updateGroup","groupId","updates","removeGroup","addItem","item","updateItem","productId","removeItem","addChannel","channel","updateChannel","channelIndex","removeChannel","clearChannels","clearCart","clear"],"mappings":"uMAQM,SAAUA,EAA4BC,GAC1C,IAAMC,EAAWC,IACZD,EAASE,UACZF,EAASE,QAAU,IAAIC,EAAa,CAAEC,gBAAiBL,aAAM,EAANA,EAAQK,mBAEjE,IAAMC,EAAQL,EAASE,QACvBI,EAA4BC,EAA8CF,EAAMG,YAAWC,EAAAC,EAAAJ,EAAA,GAApFK,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAoCxB,OAlCAI,EAAU,WACR,IAAMC,EAAQC,MACTJ,GAAUK,OAAOC,KAAKN,GAAQO,OAAS,KAC1CJ,SAAAA,EAAOK,KAAK,eAAgB,KAG9B,IAAMC,EAAcN,aAAAA,EAAAA,EAAOO,UAAU,cAAe,SAAAC,GAAe,IAAZX,EAAMW,EAANX,OACrDC,EAAUD,EACZ,GAEA,OAAO,WACDS,GAAaA,IACjBf,EAAMkB,SACP,CAEF,EAAE,IAEHV,EAAU,WACR,IAIMW,EAAgB,SAACC,GAJH,IACZC,EAIFD,EAAEE,OAAQ5B,aAAAA,EAAAA,EAAQK,mBAJhBsB,EAAQrB,EAAMG,WACpBI,EAAUc,GAMX,EAED,OADAE,OAAOC,iBAAiB,UAAWL,GAC5B,WACLI,OAAOE,oBAAoB,UAAWN,EACvC,GAEA,CAACzB,eAAAA,EAAQK,kBAEL,CAAEO,OAAQK,OAAOe,OAAOpB,GAASqB,UAAWrB,EACrD,CAEM,SAAUsB,EAA8BlC,GAC5C,IAAMC,EAAWC,IACZD,EAASE,UACZF,EAASE,QAAU,IAAIC,EAAa,CAAEC,gBAAiBL,aAAM,EAANA,EAAQK,mBAEjE,IAAMC,EAAQL,EAASE,QA8CvB,MAAO,CACLgC,SA7Ce,SAACC,GAChB9B,EAAM6B,SAASC,EAChB,EA4CCC,YA1CkB,SAACC,EAAiBC,GACpCjC,EAAM+B,YAAYC,EAASC,EAC5B,EAyCCC,YAvCkB,SAACF,GACnBhC,EAAMkC,YAAYF,EACnB,EAsCCG,QApCc,SAACC,GACfpC,EAAMmC,QAAQC,EACf,EAmCCC,WAjCiB,SAACL,EAAiBM,EAAmBL,GACtDjC,EAAMqC,WAAWL,EAASM,EAAWL,EACtC,EAgCCM,WA9BiB,SAACP,EAAiBM,GACnCtC,EAAMuC,WAAWP,EAASM,EAC3B,EA6BCE,WAvBiB,SAACR,EAAiBS,GACnCzC,EAAMwC,WAAWR,EAASS,EAC3B,EAsBCC,cApBoB,SAACV,EAAiBW,EAAsBV,GAC5DjC,EAAM0C,cAAcV,EAASW,EAAcV,EAC5C,EAmBCW,cAjBoB,SAACZ,EAAiBW,GACtC3C,EAAM4C,cAAcZ,EAASW,EAC9B,EAgBCE,cAdoB,SAACb,GACrBhC,EAAM6C,cAAcb,EACrB,EAaCc,UA/BgB,WAChB9C,EAAM+C,OACP,EA+BH"}
@@ -1,2 +1,2 @@
1
- import{slicedToArray as o,objectSpread2 as r}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as e,jsx as n}from"react/jsx-runtime";import{useState as i,Fragment as t}from"react";import{Badge as l,Box as a,Typography as c,Stack as u,Button as p}from"@mui/material";import m from"@mui/icons-material/DriveFileMoveOutlined";import d from"@mui/icons-material/FolderSpecialOutlined";import{EmptyState as s}from"./units.js";import{MenuStyled as f}from"./styled.js";import{DarkIconButton as h}from"../../components/buttons.js";import{MediaGroupAccordion as g}from"./media-group-accordion.js";import{useMediaRightStore as v,useMediaRightActions as x}from"../hook.js";var j=function(j){var y,b=j.localStorageKey,k=j.hrefCart,C=j.buttonMoveToCartProps,S=v({localStorageKey:b}).groups,M=x({localStorageKey:b}),P=i(null),G=o(P,2),D=G[0],O=G[1],z=function(o){M.updateGroup(o.id,o)},I=function(o){M.removeGroup(o)},K=function(o,r){M.removeItem(o,r)};return e(t,{children:[n(h,{onClick:function(o){return O(o.currentTarget)},children:n(l,{badgeContent:S.length||0,color:"error",children:n(d,{})})}),n(f,{disableScrollLock:!0,anchorEl:D,open:Boolean(D),onClose:function(){return O(null)},anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{component:"div"},children:e(a,{children:[n(a,{sx:{display:"flex",alignItems:"center",padding:"12px 16px"},children:e(c,{variant:"h6",component:"span",sx:{flex:1},children:["Your Media Rights Package (",null!==(y=S.length)&&void 0!==y?y:0," Package",S.length>1?"s":"",")"]})}),0===S.length?n(s,{}):S.map(function(o){return n(g,{group:o,onEditGroup:z,onDeleteGroup:I,onDeleteMedia:K},o.id)}),n(u,{justifyContent:"end",flexDirection:"row",padding:"6px 12px",children:n(p,r(r(r({},k?{component:"a",href:k}:{}),{},{color:"inherit",size:"small",endIcon:n(m,{}),onClick:function(){O(null)},disabled:S.length<1},C),{},{children:"Show Package"}))})]})})]})},y=function(o){var e=function(e){return n(j,r(r({},o),e))};return e.displayName="MediaGroupWidget",e};export{j as MediaGroupWidget,y as createMediaGroupWidget};
1
+ import{slicedToArray as o,objectSpread2 as r}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as e,jsx as n}from"react/jsx-runtime";import{useState as i,Fragment as t}from"react";import{Badge as l,Box as a,Typography as c,Stack as u,Button as p}from"@mui/material";import m from"@mui/icons-material/DriveFileMoveOutlined";import d from"@mui/icons-material/FolderSpecialOutlined";import{EmptyState as s}from"./units.js";import{MenuStyled as f}from"./styled.js";import{IconButtonDark as h}from"../../components/buttons.js";import{MediaGroupAccordion as g}from"./media-group-accordion.js";import{useMediaRightStore as v,useMediaRightActions as x}from"../hook.js";var j=function(j){var y,b=j.localStorageKey,k=j.hrefCart,C=j.buttonMoveToCartProps,S=v({localStorageKey:b}).groups,M=x({localStorageKey:b}),P=i(null),G=o(P,2),D=G[0],O=G[1],z=function(o){M.updateGroup(o.id,o)},I=function(o){M.removeGroup(o)},K=function(o,r){M.removeItem(o,r)};return e(t,{children:[n(h,{onClick:function(o){return O(o.currentTarget)},children:n(l,{badgeContent:S.length||0,color:"error",children:n(d,{})})}),n(f,{disableScrollLock:!0,anchorEl:D,open:Boolean(D),onClose:function(){return O(null)},anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{component:"div"},children:e(a,{children:[n(a,{sx:{display:"flex",alignItems:"center",padding:"12px 16px"},children:e(c,{variant:"h6",component:"span",sx:{flex:1},children:["Your Media Rights Package (",null!==(y=S.length)&&void 0!==y?y:0," Package",S.length>1?"s":"",")"]})}),0===S.length?n(s,{}):S.map(function(o){return n(g,{group:o,onEditGroup:z,onDeleteGroup:I,onDeleteMedia:K},o.id)}),n(u,{justifyContent:"end",flexDirection:"row",padding:"6px 12px",children:n(p,r(r(r({},k?{component:"a",href:k}:{}),{},{color:"inherit",size:"small",endIcon:n(m,{}),onClick:function(){O(null)},disabled:S.length<1},C),{},{children:"Show Package"}))})]})})]})},y=function(o){var e=function(e){return n(j,r(r({},o),e))};return e.displayName="MediaGroupWidget",e};export{j as MediaGroupWidget,y as createMediaGroupWidget};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/media-right/media-widget/index.tsx"],"sourcesContent":["import { Fragment, useState } from 'react'\r\nimport { Badge, Box, Button, ButtonProps, Stack, Typography } from '@mui/material'\r\nimport DriveFileMoveOutlinedIcon from '@mui/icons-material/DriveFileMoveOutlined'\r\nimport FolderSpecialOutlinedIcon from '@mui/icons-material/FolderSpecialOutlined'\r\nimport { EmptyState } from './units'\r\nimport { MenuStyled } from './styled'\r\nimport { IMediaRightGroup } from '../types'\r\nimport { DarkIconButton } from '../../components/buttons'\r\nimport { MediaGroupAccordion } from './media-group-accordion'\r\nimport { useMediaRightStore, useMediaRightActions } from '../hook'\r\n\r\nexport interface IMediaGroupWidgetProps {\r\n localStorageKey?: string\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n}\r\n\r\nexport const MediaGroupWidget: React.FC<IMediaGroupWidgetProps> = ({ localStorageKey, hrefCart, buttonMoveToCartProps }) => {\r\n const { groups } = useMediaRightStore({ localStorageKey })\r\n const actions = useMediaRightActions({ localStorageKey })\r\n\r\n const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)\r\n\r\n // const handleSaveNewGroup = (groupName: string) => {\r\n // actions.addGroup({\r\n // name: groupName,\r\n // id: generateGroupId()\r\n // })\r\n // }\r\n\r\n const handleEditGroup = (group: IMediaRightGroup) => {\r\n actions.updateGroup(group.id, group)\r\n }\r\n\r\n const handleDeleteGroup = (groupId: string) => {\r\n actions.removeGroup(groupId)\r\n }\r\n\r\n const handleDeleteMedia = (groupId: string, productId: string) => {\r\n actions.removeItem(groupId, productId)\r\n }\r\n\r\n const renderContent = () => {\r\n return (\r\n <Box>\r\n <Box sx={{ display: 'flex', alignItems: 'center', padding: '12px 16px' }}>\r\n <Typography variant='h6' component='span' sx={{ flex: 1 }}>\r\n Your Media Rights Package ({groups.length ?? 0} Package{groups.length > 1 ? 's' : ''})\r\n </Typography>\r\n </Box>\r\n {/* <Divider /> */}\r\n {/* <NewGroupArea onSaveGroup={handleSaveNewGroup} /> */}\r\n {groups.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n groups.map((group) => (\r\n <MediaGroupAccordion\r\n key={group.id}\r\n group={group}\r\n onEditGroup={handleEditGroup}\r\n onDeleteGroup={handleDeleteGroup}\r\n onDeleteMedia={handleDeleteMedia}\r\n />\r\n ))\r\n )}\r\n {/* <Divider /> */}\r\n <Stack justifyContent={'end'} flexDirection={'row'} padding={'6px 12px'}>\r\n <Button\r\n {...(hrefCart ? { component: 'a', href: hrefCart } : {})}\r\n color='inherit'\r\n size='small'\r\n endIcon={<DriveFileMoveOutlinedIcon />}\r\n onClick={() => {\r\n setAnchorEl(null)\r\n }}\r\n disabled={groups.length < 1}\r\n {...buttonMoveToCartProps}\r\n >\r\n Show Package\r\n </Button>\r\n </Stack>\r\n </Box>\r\n )\r\n }\r\n\r\n return (\r\n <Fragment>\r\n <DarkIconButton onClick={(e) => setAnchorEl(e.currentTarget)}>\r\n <Badge badgeContent={groups.length || 0} color='error'>\r\n <FolderSpecialOutlinedIcon />\r\n </Badge>\r\n </DarkIconButton>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={anchorEl}\r\n open={Boolean(anchorEl)}\r\n onClose={() => setAnchorEl(null)}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {renderContent()}\r\n </MenuStyled>\r\n </Fragment>\r\n )\r\n}\r\n\r\nexport const createMediaGroupWidget = (params: IMediaGroupWidgetProps) => {\r\n const _MediaGroupWidget: React.FC<Partial<IMediaGroupWidgetProps>> = (props) => <MediaGroupWidget {...params} {...props} />\r\n _MediaGroupWidget.displayName = 'MediaGroupWidget'\r\n return _MediaGroupWidget\r\n}\r\n"],"names":["MediaGroupWidget","_ref","_groups$length","localStorageKey","hrefCart","buttonMoveToCartProps","groups","useMediaRightStore","actions","useMediaRightActions","_useState","useState","_useState2","_slicedToArray","anchorEl","setAnchorEl","handleEditGroup","group","updateGroup","id","handleDeleteGroup","groupId","removeGroup","handleDeleteMedia","productId","removeItem","_jsxs","Fragment","children","_jsx","DarkIconButton","onClick","e","currentTarget","Badge","badgeContent","length","color","FolderSpecialOutlinedIcon","MenuStyled","disableScrollLock","open","Boolean","onClose","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","Box","sx","display","alignItems","padding","Typography","variant","flex","EmptyState","map","MediaGroupAccordion","onEditGroup","onDeleteGroup","onDeleteMedia","Stack","justifyContent","flexDirection","Button","_objectSpread","href","size","endIcon","DriveFileMoveOutlinedIcon","disabled","createMediaGroupWidget","params","_MediaGroupWidget","props","displayName"],"mappings":"qqBAiBaA,EAAqD,SAArCC,GAA8F,IAyB9FC,EAzBwCC,EAAeF,EAAfE,gBAAiBC,EAAQH,EAARG,SAAUC,EAAqBJ,EAArBI,sBACtFC,EAAWC,EAAmB,CAAEJ,gBAAAA,IAAhCG,OACFE,EAAUC,EAAqB,CAAEN,gBAAAA,IAEvCO,EAAgCC,EAA6B,MAAKC,EAAAC,EAAAH,EAAA,GAA3DI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAStBI,EAAkB,SAACC,GACvBT,EAAQU,YAAYD,EAAME,GAAIF,EAC/B,EAEKG,EAAoB,SAACC,GACzBb,EAAQc,YAAYD,EACrB,EAEKE,EAAoB,SAACF,EAAiBG,GAC1ChB,EAAQiB,WAAWJ,EAASG,EAC7B,EA6CD,OACEE,EAACC,EAAQ,CAAAC,SAAA,CACPC,EAACC,EAAc,CAACC,QAAS,SAACC,GAAC,OAAKjB,EAAYiB,EAAEC,cAAc,EAAAL,SAC1DC,EAACK,EAAM,CAAAC,aAAc7B,EAAO8B,QAAU,EAAGC,MAAM,QAAOT,SACpDC,EAACS,UAGLT,EAACU,EAAU,CACTC,mBACA,EAAA1B,SAAUA,EACV2B,KAAMC,QAAQ5B,GACd6B,QAAS,WAAF,OAAQ5B,EAAY,KAAK,EAChC6B,aAAc,CAAEC,SAAU,MAAOC,WAAY,SAC7CC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,SAChDE,cAAe,CAAEC,UAAW,OAAOrB,SAvDrCF,EAACwB,aACCrB,EAACqB,GAAIC,GAAI,CAAEC,QAAS,OAAQC,WAAY,SAAUC,QAAS,sBACzD5B,EAAC6B,GAAWC,QAAQ,KAAKP,UAAU,OAAOE,GAAI,CAAEM,KAAM,GAAG7B,SAAA,CAAA,8BACd,QADc1B,EAC3BI,EAAO8B,cAAM,IAAAlC,EAAAA,EAAI,aAAWI,EAAO8B,OAAS,EAAI,IAAM,YAKnE,IAAlB9B,EAAO8B,OACNP,EAAC6B,EAAa,CAAA,GAEdpD,EAAOqD,IAAI,SAAC1C,GAAK,OACfY,EAAC+B,EAAmB,CAElB3C,MAAOA,EACP4C,YAAa7C,EACb8C,cAAe1C,EACf2C,cAAexC,GAJVN,EAAME,GAKX,GAINU,EAACmC,EAAK,CAACC,eAAgB,MAAOC,cAAe,MAAOZ,QAAS,oBAC3DzB,EAACsC,EAAMC,EAAAA,EAAAA,EACAhE,CAAAA,EAAAA,EAAW,CAAE6C,UAAW,IAAKoB,KAAMjE,GAAa,CAAA,GAAE,GAAA,CACvDiC,MAAM,UACNiC,KAAK,QACLC,QAAS1C,EAAC2C,EAAyB,IACnCzC,QAAS,WACPhB,EAAY,KACb,EACD0D,SAAUnE,EAAO8B,OAAS,GACtB/B,GAAqB,GAAA,CAAAuB,SAAA,2BA6BrC,EAEa8C,EAAyB,SAACC,GACrC,IAAMC,EAA+D,SAACC,GAAK,OAAKhD,EAAC7B,EAAgBoE,EAAAA,EAAA,CAAA,EAAKO,GAAYE,GAAS,EAE3H,OADAD,EAAkBE,YAAc,mBACzBF,CACT"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/media-right/media-widget/index.tsx"],"sourcesContent":["import { Fragment, useState } from 'react'\r\nimport { Badge, Box, Button, ButtonProps, Stack, Typography } from '@mui/material'\r\nimport DriveFileMoveOutlinedIcon from '@mui/icons-material/DriveFileMoveOutlined'\r\nimport FolderSpecialOutlinedIcon from '@mui/icons-material/FolderSpecialOutlined'\r\nimport { EmptyState } from './units'\r\nimport { MenuStyled } from './styled'\r\nimport { IMediaRightGroup } from '../types'\r\nimport { IconButtonDark } from '../../components/buttons'\r\nimport { MediaGroupAccordion } from './media-group-accordion'\r\nimport { useMediaRightStore, useMediaRightActions } from '../hook'\r\n\r\nexport interface IMediaGroupWidgetProps {\r\n localStorageKey?: string\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n}\r\n\r\nexport const MediaGroupWidget: React.FC<IMediaGroupWidgetProps> = ({ localStorageKey, hrefCart, buttonMoveToCartProps }) => {\r\n const { groups } = useMediaRightStore({ localStorageKey })\r\n const actions = useMediaRightActions({ localStorageKey })\r\n\r\n const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)\r\n\r\n // const handleSaveNewGroup = (groupName: string) => {\r\n // actions.addGroup({\r\n // name: groupName,\r\n // id: generateGroupId()\r\n // })\r\n // }\r\n\r\n const handleEditGroup = (group: IMediaRightGroup) => {\r\n actions.updateGroup(group.id, group)\r\n }\r\n\r\n const handleDeleteGroup = (groupId: string) => {\r\n actions.removeGroup(groupId)\r\n }\r\n\r\n const handleDeleteMedia = (groupId: string, productId: string) => {\r\n actions.removeItem(groupId, productId)\r\n }\r\n\r\n const renderContent = () => {\r\n return (\r\n <Box>\r\n <Box sx={{ display: 'flex', alignItems: 'center', padding: '12px 16px' }}>\r\n <Typography variant='h6' component='span' sx={{ flex: 1 }}>\r\n Your Media Rights Package ({groups.length ?? 0} Package{groups.length > 1 ? 's' : ''})\r\n </Typography>\r\n </Box>\r\n {/* <Divider /> */}\r\n {/* <NewGroupArea onSaveGroup={handleSaveNewGroup} /> */}\r\n {groups.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n groups.map((group) => (\r\n <MediaGroupAccordion\r\n key={group.id}\r\n group={group}\r\n onEditGroup={handleEditGroup}\r\n onDeleteGroup={handleDeleteGroup}\r\n onDeleteMedia={handleDeleteMedia}\r\n />\r\n ))\r\n )}\r\n {/* <Divider /> */}\r\n <Stack justifyContent={'end'} flexDirection={'row'} padding={'6px 12px'}>\r\n <Button\r\n {...(hrefCart ? { component: 'a', href: hrefCart } : {})}\r\n color='inherit'\r\n size='small'\r\n endIcon={<DriveFileMoveOutlinedIcon />}\r\n onClick={() => {\r\n setAnchorEl(null)\r\n }}\r\n disabled={groups.length < 1}\r\n {...buttonMoveToCartProps}\r\n >\r\n Show Package\r\n </Button>\r\n </Stack>\r\n </Box>\r\n )\r\n }\r\n\r\n return (\r\n <Fragment>\r\n <IconButtonDark onClick={(e) => setAnchorEl(e.currentTarget)}>\r\n <Badge badgeContent={groups.length || 0} color='error'>\r\n <FolderSpecialOutlinedIcon />\r\n </Badge>\r\n </IconButtonDark>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={anchorEl}\r\n open={Boolean(anchorEl)}\r\n onClose={() => setAnchorEl(null)}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {renderContent()}\r\n </MenuStyled>\r\n </Fragment>\r\n )\r\n}\r\n\r\nexport const createMediaGroupWidget = (params: IMediaGroupWidgetProps) => {\r\n const _MediaGroupWidget: React.FC<Partial<IMediaGroupWidgetProps>> = (props) => <MediaGroupWidget {...params} {...props} />\r\n _MediaGroupWidget.displayName = 'MediaGroupWidget'\r\n return _MediaGroupWidget\r\n}\r\n"],"names":["MediaGroupWidget","_ref","_groups$length","localStorageKey","hrefCart","buttonMoveToCartProps","groups","useMediaRightStore","actions","useMediaRightActions","_useState","useState","_useState2","_slicedToArray","anchorEl","setAnchorEl","handleEditGroup","group","updateGroup","id","handleDeleteGroup","groupId","removeGroup","handleDeleteMedia","productId","removeItem","_jsxs","Fragment","children","_jsx","IconButtonDark","onClick","e","currentTarget","Badge","badgeContent","length","color","FolderSpecialOutlinedIcon","MenuStyled","disableScrollLock","open","Boolean","onClose","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","Box","sx","display","alignItems","padding","Typography","variant","flex","EmptyState","map","MediaGroupAccordion","onEditGroup","onDeleteGroup","onDeleteMedia","Stack","justifyContent","flexDirection","Button","_objectSpread","href","size","endIcon","DriveFileMoveOutlinedIcon","disabled","createMediaGroupWidget","params","_MediaGroupWidget","props","displayName"],"mappings":"qqBAiBaA,EAAqD,SAArCC,GAA8F,IAyB9FC,EAzBwCC,EAAeF,EAAfE,gBAAiBC,EAAQH,EAARG,SAAUC,EAAqBJ,EAArBI,sBACtFC,EAAWC,EAAmB,CAAEJ,gBAAAA,IAAhCG,OACFE,EAAUC,EAAqB,CAAEN,gBAAAA,IAEvCO,EAAgCC,EAA6B,MAAKC,EAAAC,EAAAH,EAAA,GAA3DI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAStBI,EAAkB,SAACC,GACvBT,EAAQU,YAAYD,EAAME,GAAIF,EAC/B,EAEKG,EAAoB,SAACC,GACzBb,EAAQc,YAAYD,EACrB,EAEKE,EAAoB,SAACF,EAAiBG,GAC1ChB,EAAQiB,WAAWJ,EAASG,EAC7B,EA6CD,OACEE,EAACC,EAAQ,CAAAC,SAAA,CACPC,EAACC,EAAc,CAACC,QAAS,SAACC,GAAC,OAAKjB,EAAYiB,EAAEC,cAAc,EAAAL,SAC1DC,EAACK,EAAM,CAAAC,aAAc7B,EAAO8B,QAAU,EAAGC,MAAM,QAAOT,SACpDC,EAACS,UAGLT,EAACU,EAAU,CACTC,mBACA,EAAA1B,SAAUA,EACV2B,KAAMC,QAAQ5B,GACd6B,QAAS,WAAF,OAAQ5B,EAAY,KAAK,EAChC6B,aAAc,CAAEC,SAAU,MAAOC,WAAY,SAC7CC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,SAChDE,cAAe,CAAEC,UAAW,OAAOrB,SAvDrCF,EAACwB,aACCrB,EAACqB,GAAIC,GAAI,CAAEC,QAAS,OAAQC,WAAY,SAAUC,QAAS,sBACzD5B,EAAC6B,GAAWC,QAAQ,KAAKP,UAAU,OAAOE,GAAI,CAAEM,KAAM,GAAG7B,SAAA,CAAA,8BACd,QADc1B,EAC3BI,EAAO8B,cAAM,IAAAlC,EAAAA,EAAI,aAAWI,EAAO8B,OAAS,EAAI,IAAM,YAKnE,IAAlB9B,EAAO8B,OACNP,EAAC6B,EAAa,CAAA,GAEdpD,EAAOqD,IAAI,SAAC1C,GAAK,OACfY,EAAC+B,EAAmB,CAElB3C,MAAOA,EACP4C,YAAa7C,EACb8C,cAAe1C,EACf2C,cAAexC,GAJVN,EAAME,GAKX,GAINU,EAACmC,EAAK,CAACC,eAAgB,MAAOC,cAAe,MAAOZ,QAAS,oBAC3DzB,EAACsC,EAAMC,EAAAA,EAAAA,EACAhE,CAAAA,EAAAA,EAAW,CAAE6C,UAAW,IAAKoB,KAAMjE,GAAa,CAAA,GAAE,GAAA,CACvDiC,MAAM,UACNiC,KAAK,QACLC,QAAS1C,EAAC2C,EAAyB,IACnCzC,QAAS,WACPhB,EAAY,KACb,EACD0D,SAAUnE,EAAO8B,OAAS,GACtB/B,GAAqB,GAAA,CAAAuB,SAAA,2BA6BrC,EAEa8C,EAAyB,SAACC,GACrC,IAAMC,EAA+D,SAACC,GAAK,OAAKhD,EAAC7B,EAAgBoE,EAAAA,EAAA,CAAA,EAAKO,GAAYE,GAAS,EAE3H,OADAD,EAAkBE,YAAc,mBACzBF,CACT"}
@@ -1,2 +1,2 @@
1
- import{slicedToArray as t,inherits as n,createClass as o,asyncToGenerator as r,objectSpread2 as e,classCallCheck as a,callSuper as i,defineProperty as l,regenerator as c}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as s,jsxs as u,Fragment as d}from"react/jsx-runtime";import{Badge as f}from"@mui/material";import{useState as p,useEffect as h,Component as m}from"react";import{GlobalModal as v,mapGlobalModalContext as C}from"dinocollab-core/api-context";import g from"@mui/icons-material/NotificationsNone";import{MenuStyled as y}from"./styled.js";import{DarkIconButton as k}from"../components/buttons.js";import{useFetchData as b}from"./hook.js";import j from"./notify-list.js";import x from"./notify-detail.js";var E=function(){function t(n){var o;return a(this,t),o=i(this,t,[n]),l(o,"onClickHandler",function(t){var n;o.onClose(),null===(n=o.globalModalContext)||void 0===n||n.show({backdropActivated:!0,renderContent:function(){var n;return s(x,{data:[t],onRead:o.onReadHandler,onClose:null===(n=o.globalModalContext)||void 0===n?void 0:n.close})}})}),l(o,"onOpen",function(t){o.setState({anchorEl:t})}),l(o,"onClose",function(){o.setState({anchorEl:null})}),l(o,"onReadHandler",function(t){var n;null===(n=o.globalModalContext)||void 0===n||n.close();try{var r,e;null===(r=(e=o.props).onReaded)||void 0===r||r.call(e,t.Id)}catch(t){console.error("Error updating read state:",t)}}),o.state={anchorEl:null,hydrated:!1},o}return n(t,m),o(t,[{key:"notifications",get:function(){var t;return null!==(t=this.props.data)&&void 0!==t?t:[]}},{key:"newFeatureCount",get:function(){return this.notifications.filter(function(t){return!t.IsRead}).length}},{key:"componentDidMount",value:function(){this.setState({hydrated:!0})}},{key:"render",value:function(){var t=this;return u(d,{children:[s(k,{onClick:function(n){return t.onOpen(n.currentTarget)},children:s(f,{badgeContent:this.state.hydrated?this.newFeatureCount:0,color:"error",children:s(g,{})})}),s(y,{disableScrollLock:!0,anchorEl:this.state.anchorEl,open:Boolean(this.state.anchorEl),onClose:this.onClose,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{component:"div"},children:C(function(n){return t.globalModalContext=n,s(j,{data:t.props.data,onClick:t.onClickHandler})})})]})}}])}(),R=function(n){var o=b(n.featData),a=p([]),i=t(a,2),l=i[0],u=i[1];h(function(){o.data&&u(o.data)},[o.data]);var d=function(){var t=r(c().m(function t(o,r){var a;return c().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,null===(a=n.readed)||void 0===a?void 0:a.call(n,o,r);case 1:u(function(t){return t.map(function(t){return t.Id===o?e(e({},t),{},{IsRead:!0}):t})});case 2:return t.a(2)}},t)}));return function(n,o){return t.apply(this,arguments)}}();return s(v,{children:s(E,{data:l,loading:o.loading,onReaded:d})})},M=function(t){var n=function(n){return s(R,e(e({},t),n))};return n.displayName="NotificationWidget",n};export{R as NotificationWidget,M as createNotificationWidget,R as default};
1
+ import{slicedToArray as t,inherits as n,createClass as o,asyncToGenerator as r,objectSpread2 as e,classCallCheck as a,callSuper as i,defineProperty as l,regenerator as c}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as s,jsxs as u,Fragment as d}from"react/jsx-runtime";import{Badge as f}from"@mui/material";import{useState as p,useEffect as h,Component as m}from"react";import{GlobalModal as v,mapGlobalModalContext as C}from"dinocollab-core/api-context";import g from"@mui/icons-material/NotificationsNone";import{MenuStyled as y}from"./styled.js";import{IconButtonDark as k}from"../components/buttons.js";import{useFetchData as b}from"./hook.js";import j from"./notify-list.js";import x from"./notify-detail.js";var E=function(){function t(n){var o;return a(this,t),o=i(this,t,[n]),l(o,"onClickHandler",function(t){var n;o.onClose(),null===(n=o.globalModalContext)||void 0===n||n.show({backdropActivated:!0,renderContent:function(){var n;return s(x,{data:[t],onRead:o.onReadHandler,onClose:null===(n=o.globalModalContext)||void 0===n?void 0:n.close})}})}),l(o,"onOpen",function(t){o.setState({anchorEl:t})}),l(o,"onClose",function(){o.setState({anchorEl:null})}),l(o,"onReadHandler",function(t){var n;null===(n=o.globalModalContext)||void 0===n||n.close();try{var r,e;null===(r=(e=o.props).onReaded)||void 0===r||r.call(e,t.Id)}catch(t){console.error("Error updating read state:",t)}}),o.state={anchorEl:null,hydrated:!1},o}return n(t,m),o(t,[{key:"notifications",get:function(){var t;return null!==(t=this.props.data)&&void 0!==t?t:[]}},{key:"newFeatureCount",get:function(){return this.notifications.filter(function(t){return!t.IsRead}).length}},{key:"componentDidMount",value:function(){this.setState({hydrated:!0})}},{key:"render",value:function(){var t=this;return u(d,{children:[s(k,{onClick:function(n){return t.onOpen(n.currentTarget)},children:s(f,{badgeContent:this.state.hydrated?this.newFeatureCount:0,color:"error",children:s(g,{})})}),s(y,{disableScrollLock:!0,anchorEl:this.state.anchorEl,open:Boolean(this.state.anchorEl),onClose:this.onClose,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{component:"div"},children:C(function(n){return t.globalModalContext=n,s(j,{data:t.props.data,onClick:t.onClickHandler})})})]})}}])}(),R=function(n){var o=b(n.featData),a=p([]),i=t(a,2),l=i[0],u=i[1];h(function(){o.data&&u(o.data)},[o.data]);var d=function(){var t=r(c().m(function t(o,r){var a;return c().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,null===(a=n.readed)||void 0===a?void 0:a.call(n,o,r);case 1:u(function(t){return t.map(function(t){return t.Id===o?e(e({},t),{},{IsRead:!0}):t})});case 2:return t.a(2)}},t)}));return function(n,o){return t.apply(this,arguments)}}();return s(v,{children:s(E,{data:l,loading:o.loading,onReaded:d})})},M=function(t){var n=function(n){return s(R,e(e({},t),n))};return n.displayName="NotificationWidget",n};export{R as NotificationWidget,M as createNotificationWidget,R as default};
2
2
  //# sourceMappingURL=widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widget.js","sources":["../../src/notification/widget.tsx"],"sourcesContent":["import { Badge } from '@mui/material'\r\nimport { Component, FC, useEffect, useState } from 'react'\r\nimport { GlobalModal, IGlobalModalContext, mapGlobalModalContext } from 'dinocollab-core/api-context'\r\nimport NotificationsNoneIcon from '@mui/icons-material/NotificationsNone'\r\nimport { MenuStyled } from './styled'\r\nimport { DarkIconButton } from '../components/buttons'\r\nimport { FetcherFunction, useFetchData } from './hook'\r\nimport { INotification, ReadedFunction } from './types'\r\nimport NotifyList from './notify-list'\r\nimport NotifyDetail from './notify-detail'\r\n\r\ninterface INotificationProps {\r\n loading?: boolean\r\n data: INotification[]\r\n onReaded?: ReadedFunction\r\n}\r\n\r\ninterface INotificationState {\r\n anchorEl: HTMLElement | null\r\n hydrated: boolean\r\n}\r\nclass NotificationContent extends Component<INotificationProps, INotificationState> {\r\n globalModalContext?: IGlobalModalContext\r\n constructor(props: INotificationProps) {\r\n super(props)\r\n this.state = { anchorEl: null, hydrated: false }\r\n }\r\n\r\n get notifications() {\r\n return this.props.data ?? []\r\n }\r\n\r\n get newFeatureCount() {\r\n return this.notifications.filter((n) => !n.IsRead).length\r\n }\r\n\r\n componentDidMount() {\r\n // When mounted on the client, set hydrated = true\r\n this.setState({ hydrated: true })\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n <DarkIconButton onClick={(e) => this.onOpen(e.currentTarget)}>\r\n <Badge badgeContent={this.state.hydrated ? this.newFeatureCount : 0} color='error'>\r\n <NotificationsNoneIcon />\r\n </Badge>\r\n </DarkIconButton>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={this.onClose}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {mapGlobalModalContext((context: IGlobalModalContext) => {\r\n this.globalModalContext = context\r\n return <NotifyList data={this.props.data} onClick={this.onClickHandler} />\r\n })}\r\n </MenuStyled>\r\n </>\r\n )\r\n }\r\n\r\n onClickHandler = (value: INotification) => {\r\n this.onClose()\r\n this.globalModalContext?.show({\r\n backdropActivated: true,\r\n renderContent: () => <NotifyDetail data={[value]} onRead={this.onReadHandler} onClose={this.globalModalContext?.close} />\r\n })\r\n }\r\n\r\n onOpen = (target: HTMLElement) => {\r\n this.setState({ anchorEl: target })\r\n }\r\n\r\n onClose = () => {\r\n this.setState({ anchorEl: null })\r\n }\r\n\r\n onReadHandler = (value: INotification) => {\r\n this.globalModalContext?.close()\r\n // NotifyLocalStorage.setSingle(value.Id)\r\n try {\r\n // Call the callback to update the read state in the parent component\r\n this.props.onReaded?.(value.Id)\r\n } catch (error) {\r\n console.error('Error updating read state:', error)\r\n }\r\n }\r\n}\r\n\r\nexport interface INotificationWidgetProps {\r\n featData: FetcherFunction<INotification[]>\r\n readed?: ReadedFunction\r\n}\r\n\r\nexport const NotificationWidget: FC<INotificationWidgetProps> = (props) => {\r\n const intitialData = useFetchData<INotification[]>(props.featData)\r\n const [data, setData] = useState<INotification[]>([])\r\n\r\n // When initialData changes, update the local state\r\n useEffect(() => {\r\n if (intitialData.data) setData(intitialData.data)\r\n }, [intitialData.data])\r\n\r\n // Function to update read notifications\r\n const handleRead: ReadedFunction = async (id: string, signal?: AbortSignal) => {\r\n await props.readed?.(id, signal)\r\n setData((prev) => prev.map((n) => (n.Id === id ? { ...n, IsRead: true } : n)))\r\n }\r\n\r\n return (\r\n <GlobalModal>\r\n <NotificationContent data={data} loading={intitialData.loading} onReaded={handleRead} />\r\n </GlobalModal>\r\n )\r\n}\r\nexport default NotificationWidget\r\n\r\nexport const createNotificationWidget = (params: INotificationWidgetProps) => {\r\n const _NotificationWidget: FC<Partial<INotificationWidgetProps>> = (props) => <NotificationWidget {...params} {...props} />\r\n _NotificationWidget.displayName = 'NotificationWidget'\r\n return _NotificationWidget\r\n}\r\n"],"names":["NotificationContent","props","_this","_classCallCheck","_callSuper","_defineProperty","value","_this$globalModalCont","onClose","globalModalContext","show","backdropActivated","renderContent","_this$globalModalCont2","_jsx","NotifyDetail","data","onRead","onReadHandler","close","target","setState","anchorEl","_this$globalModalCont3","_this$props$onReaded","_this$props","onReaded","call","Id","error","console","state","hydrated","_inherits","Component","_createClass","key","get","_this$props$data","this","notifications","filter","n","IsRead","length","_this2","_jsxs","_Fragment","children","DarkIconButton","onClick","e","onOpen","currentTarget","Badge","badgeContent","newFeatureCount","color","NotificationsNoneIcon","MenuStyled","disableScrollLock","open","Boolean","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","mapGlobalModalContext","context","NotifyList","onClickHandler","NotificationWidget","intitialData","useFetchData","featData","_useState","useState","_useState2","_slicedToArray","setData","useEffect","handleRead","_ref","_asyncToGenerator","_regenerator","m","_callee","id","signal","_props$readed","w","_context","readed","prev","map","_objectSpread","a","_x","_x2","apply","arguments","GlobalModal","loading","createNotificationWidget","params","_NotificationWidget","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"widget.js","sources":["../../src/notification/widget.tsx"],"sourcesContent":["import { Badge } from '@mui/material'\r\nimport { Component, FC, useEffect, useState } from 'react'\r\nimport { GlobalModal, IGlobalModalContext, mapGlobalModalContext } from 'dinocollab-core/api-context'\r\nimport NotificationsNoneIcon from '@mui/icons-material/NotificationsNone'\r\nimport { MenuStyled } from './styled'\r\nimport { IconButtonDark } from '../components/buttons'\r\nimport { FetcherFunction, useFetchData } from './hook'\r\nimport { INotification, ReadedFunction } from './types'\r\nimport NotifyList from './notify-list'\r\nimport NotifyDetail from './notify-detail'\r\n\r\ninterface INotificationProps {\r\n loading?: boolean\r\n data: INotification[]\r\n onReaded?: ReadedFunction\r\n}\r\n\r\ninterface INotificationState {\r\n anchorEl: HTMLElement | null\r\n hydrated: boolean\r\n}\r\nclass NotificationContent extends Component<INotificationProps, INotificationState> {\r\n globalModalContext?: IGlobalModalContext\r\n constructor(props: INotificationProps) {\r\n super(props)\r\n this.state = { anchorEl: null, hydrated: false }\r\n }\r\n\r\n get notifications() {\r\n return this.props.data ?? []\r\n }\r\n\r\n get newFeatureCount() {\r\n return this.notifications.filter((n) => !n.IsRead).length\r\n }\r\n\r\n componentDidMount() {\r\n // When mounted on the client, set hydrated = true\r\n this.setState({ hydrated: true })\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n <IconButtonDark onClick={(e) => this.onOpen(e.currentTarget)}>\r\n <Badge badgeContent={this.state.hydrated ? this.newFeatureCount : 0} color='error'>\r\n <NotificationsNoneIcon />\r\n </Badge>\r\n </IconButtonDark>\r\n <MenuStyled\r\n disableScrollLock\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={this.onClose}\r\n anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n MenuListProps={{ component: 'div' }}\r\n >\r\n {mapGlobalModalContext((context: IGlobalModalContext) => {\r\n this.globalModalContext = context\r\n return <NotifyList data={this.props.data} onClick={this.onClickHandler} />\r\n })}\r\n </MenuStyled>\r\n </>\r\n )\r\n }\r\n\r\n onClickHandler = (value: INotification) => {\r\n this.onClose()\r\n this.globalModalContext?.show({\r\n backdropActivated: true,\r\n renderContent: () => <NotifyDetail data={[value]} onRead={this.onReadHandler} onClose={this.globalModalContext?.close} />\r\n })\r\n }\r\n\r\n onOpen = (target: HTMLElement) => {\r\n this.setState({ anchorEl: target })\r\n }\r\n\r\n onClose = () => {\r\n this.setState({ anchorEl: null })\r\n }\r\n\r\n onReadHandler = (value: INotification) => {\r\n this.globalModalContext?.close()\r\n // NotifyLocalStorage.setSingle(value.Id)\r\n try {\r\n // Call the callback to update the read state in the parent component\r\n this.props.onReaded?.(value.Id)\r\n } catch (error) {\r\n console.error('Error updating read state:', error)\r\n }\r\n }\r\n}\r\n\r\nexport interface INotificationWidgetProps {\r\n featData: FetcherFunction<INotification[]>\r\n readed?: ReadedFunction\r\n}\r\n\r\nexport const NotificationWidget: FC<INotificationWidgetProps> = (props) => {\r\n const intitialData = useFetchData<INotification[]>(props.featData)\r\n const [data, setData] = useState<INotification[]>([])\r\n\r\n // When initialData changes, update the local state\r\n useEffect(() => {\r\n if (intitialData.data) setData(intitialData.data)\r\n }, [intitialData.data])\r\n\r\n // Function to update read notifications\r\n const handleRead: ReadedFunction = async (id: string, signal?: AbortSignal) => {\r\n await props.readed?.(id, signal)\r\n setData((prev) => prev.map((n) => (n.Id === id ? { ...n, IsRead: true } : n)))\r\n }\r\n\r\n return (\r\n <GlobalModal>\r\n <NotificationContent data={data} loading={intitialData.loading} onReaded={handleRead} />\r\n </GlobalModal>\r\n )\r\n}\r\nexport default NotificationWidget\r\n\r\nexport const createNotificationWidget = (params: INotificationWidgetProps) => {\r\n const _NotificationWidget: FC<Partial<INotificationWidgetProps>> = (props) => <NotificationWidget {...params} {...props} />\r\n _NotificationWidget.displayName = 'NotificationWidget'\r\n return _NotificationWidget\r\n}\r\n"],"names":["NotificationContent","props","_this","_classCallCheck","_callSuper","_defineProperty","value","_this$globalModalCont","onClose","globalModalContext","show","backdropActivated","renderContent","_this$globalModalCont2","_jsx","NotifyDetail","data","onRead","onReadHandler","close","target","setState","anchorEl","_this$globalModalCont3","_this$props$onReaded","_this$props","onReaded","call","Id","error","console","state","hydrated","_inherits","Component","_createClass","key","get","_this$props$data","this","notifications","filter","n","IsRead","length","_this2","_jsxs","_Fragment","children","IconButtonDark","onClick","e","onOpen","currentTarget","Badge","badgeContent","newFeatureCount","color","NotificationsNoneIcon","MenuStyled","disableScrollLock","open","Boolean","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","mapGlobalModalContext","context","NotifyList","onClickHandler","NotificationWidget","intitialData","useFetchData","featData","_useState","useState","_useState2","_slicedToArray","setData","useEffect","handleRead","_ref","_asyncToGenerator","_regenerator","m","_callee","id","signal","_props$readed","w","_context","readed","prev","map","_objectSpread","a","_x","_x2","apply","arguments","GlobalModal","loading","createNotificationWidget","params","_NotificationWidget","displayName"],"mappings":"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"}
@@ -2,8 +2,9 @@ import { FC } from 'react';
2
2
  import { ButtonProps } from '@mui/material';
3
3
  import type { IAppSiteBaseUrl } from '../types';
4
4
  import type { IAuthState, IIMenuConfigs } from './types';
5
- export interface ICreateAuthBase {
5
+ export interface IAuthBaseProps {
6
6
  baseUrl: IAppSiteBaseUrl;
7
+ fontSizeScale?: number;
7
8
  hrefLogin?: string;
8
9
  onLoginClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLDivElement, MouseEvent>) => void;
9
10
  buttonLoginProps?: ButtonProps & {
@@ -11,9 +12,9 @@ export interface ICreateAuthBase {
11
12
  };
12
13
  menu?: IIMenuConfigs;
13
14
  }
14
- export interface IAuthWidgetProps extends IAuthState, ICreateAuthBase {
15
+ export interface IAuthWidgetProps extends IAuthState, IAuthBaseProps {
15
16
  }
16
17
  export declare const AuthWidget: FC<IAuthWidgetProps>;
17
18
  export default AuthWidget;
18
- export declare const createAuthWidget: (params: ICreateAuthBase) => FC<Omit<IAuthWidgetProps, "baseUrl">>;
19
+ export declare const createAuthWidget: (params: IAuthBaseProps) => FC<Omit<IAuthWidgetProps, "baseUrl">>;
19
20
  //# sourceMappingURL=widget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../../src/auth/widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,WAAW,EAAc,MAAM,eAAe,CAAA;AAKvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAIxD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,eAAe,CAAA;IAExB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,GAAG,cAAc,EAAE,UAAU,CAAC,KAAK,IAAI,CAAA;IAC5F,gBAAgB,CAAC,EAAE,WAAW,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAEvD,IAAI,CAAC,EAAE,aAAa,CAAA;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU,EAAE,eAAe;CAAG;AAExE,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,gBAAgB,CA2C3C,CAAA;AACD,eAAe,UAAU,CAAA;AAEzB,eAAO,MAAM,gBAAgB,WAAY,eAAe,0CAIvD,CAAA"}
1
+ {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../../src/auth/widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,WAAW,EAAc,MAAM,eAAe,CAAA;AAKvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAIxD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,eAAe,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,GAAG,cAAc,EAAE,UAAU,CAAC,KAAK,IAAI,CAAA;IAC5F,gBAAgB,CAAC,EAAE,WAAW,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAEvD,IAAI,CAAC,EAAE,aAAa,CAAA;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU,EAAE,cAAc;CAAG;AAEvE,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,gBAAgB,CA6C3C,CAAA;AACD,eAAe,UAAU,CAAA;AAEzB,eAAO,MAAM,gBAAgB,WAAY,cAAc,0CAItD,CAAA"}
@@ -1,4 +1,10 @@
1
- import type { IconButtonProps } from '@mui/material';
1
+ import type { ButtonProps, IconButtonProps } from '@mui/material';
2
2
  import type { ComponentType } from 'react';
3
- export declare const DarkIconButton: ComponentType<IconButtonProps>;
3
+ export declare const ButtonOrange: ComponentType<ButtonProps & {
4
+ [key: string]: any;
5
+ }>;
6
+ export declare const IconButtonOrange: ComponentType<IconButtonProps & {
7
+ [key: string]: any;
8
+ }>;
9
+ export declare const IconButtonDark: ComponentType<IconButtonProps>;
4
10
  //# sourceMappingURL=buttons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../../src/components/buttons.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAS,MAAM,eAAe,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAG1C,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,eAAe,CAcvD,CAAA"}
1
+ {"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../../src/components/buttons.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAS,MAAM,eAAe,CAAA;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CA+B3E,CAAA;AAEF,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAAC,eAAe,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAWnF,CAAA;AAkBF,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,eAAe,CAWvD,CAAA"}
@@ -1,15 +1,5 @@
1
- import { ComponentType, FC } from 'react';
2
- import { type IconButtonProps, type ButtonProps } from '@mui/material';
1
+ import { FC } from 'react';
3
2
  export declare const TextLineBreak: FC<{
4
3
  children?: string;
5
4
  }>;
6
- export declare const AppButtonOrange: ComponentType<ButtonProps & {
7
- [key: string]: any;
8
- }>;
9
- export declare const AppIconButtonOrange: ComponentType<IconButtonProps & {
10
- [key: string]: any;
11
- }>;
12
- export declare const AppIconButtonDark: ComponentType<IconButtonProps & {
13
- [key: string]: any;
14
- }>;
15
5
  //# sourceMappingURL=ui.units.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui.units.d.ts","sourceRoot":"","sources":["../../../src/layout-global/ui.units.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAEnD,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAEtE,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAYnD,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAkC9E,CAAA;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,eAAe,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAWtF,CAAA;AAGF,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,eAAe,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAWpF,CAAA"}
1
+ {"version":3,"file":"ui.units.d.ts","sourceRoot":"","sources":["../../../src/layout-global/ui.units.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAEpC,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAYnD,CAAA"}
@@ -2,16 +2,16 @@ import { IMediaRightChannel, IMediaRightGroup, IMediaRightItem } from './types';
2
2
  export interface IMediaRightStoreOptions {
3
3
  localStorageKey?: string;
4
4
  }
5
- export declare function useMediaRightStore(params?: IMediaRightStoreOptions): {
6
- groups: IMediaRightGroup[];
7
- groupsMap: Record<string, IMediaRightGroup>;
5
+ export declare function useMediaRightStore<O = any>(params?: IMediaRightStoreOptions): {
6
+ groups: IMediaRightGroup<O>[];
7
+ groupsMap: Record<string, IMediaRightGroup<O>>;
8
8
  };
9
- export declare function useMediaRightActions<T extends IMediaRightItem = IMediaRightItem>(params?: IMediaRightStoreOptions): {
10
- addGroup: (group: Omit<IMediaRightGroup, 'createdAt' | 'items' | 'channels'>) => void;
11
- updateGroup: (groupId: string, updates: Partial<Pick<IMediaRightGroup, 'name'>>) => void;
9
+ export declare function useMediaRightActions<O = any>(params?: IMediaRightStoreOptions): {
10
+ addGroup: (group: Omit<IMediaRightGroup<O>, 'createdAt' | 'items' | 'channels'>) => void;
11
+ updateGroup: (groupId: string, updates: Partial<Pick<IMediaRightGroup<O>, 'name'>>) => void;
12
12
  removeGroup: (groupId: string) => void;
13
- addItem: (item: T) => void;
14
- updateItem: (groupId: string, productId: string, updates: Partial<T>) => void;
13
+ addItem: (item: IMediaRightItem<O>) => void;
14
+ updateItem: (groupId: string, productId: string, updates: Partial<IMediaRightItem<O>>) => void;
15
15
  removeItem: (groupId: string, productId: string) => void;
16
16
  addChannel: (groupId: string, channel: IMediaRightChannel) => void;
17
17
  updateChannel: (groupId: string, channelIndex: number, updates: Partial<IMediaRightChannel>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../../src/media-right/hook.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE/E,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,uBAAuB;;;EA2ClE;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAAE,MAAM,CAAC,EAAE,uBAAuB;sBAOvF,KAAK,gBAAgB,EAAE,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;2BAIrD,MAAM,WAAW,QAAQ,KAAK,gBAAgB,EAAE,MAAM,CAAC,CAAC;2BAIxD,MAAM;oBAIb,CAAC;0BAIK,MAAM,aAAa,MAAM,WAAW,QAAQ,CAAC,CAAC;0BAI9C,MAAM,aAAa,MAAM;0BAQzB,MAAM,WAAW,kBAAkB;6BAIhC,MAAM,gBAAgB,MAAM,WAAW,QAAQ,kBAAkB,CAAC;6BAIlE,MAAM,gBAAgB,MAAM;6BAI5B,MAAM;;EAiBvC"}
1
+ {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../../src/media-right/hook.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE/E,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,uBAAuB;;;EA2C3E;AAED,wBAAgB,oBAAoB,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,uBAAuB;sBAOnD,KAAK,iBAAiB,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;2BAIxD,MAAM,WAAW,QAAQ,KAAK,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;2BAI3D,MAAM;oBAIb,gBAAgB,CAAC,CAAC;0BAIZ,MAAM,aAAa,MAAM,WAAW,QAAQ,gBAAgB,CAAC,CAAC,CAAC;0BAI/D,MAAM,aAAa,MAAM;0BAQzB,MAAM,WAAW,kBAAkB;6BAIhC,MAAM,gBAAgB,MAAM,WAAW,QAAQ,kBAAkB,CAAC;6BAIlE,MAAM,gBAAgB,MAAM;6BAI5B,MAAM;;EAiBvC"}
@@ -14,7 +14,7 @@ export interface IMediaRightChannel {
14
14
  /**
15
15
  * Cart group structure
16
16
  */
17
- export interface IMediaRightGroup {
17
+ export interface IMediaRightGroup<O = any> {
18
18
  /** Unique identifier for the group */
19
19
  id: string;
20
20
  /** Group name */
@@ -22,7 +22,7 @@ export interface IMediaRightGroup {
22
22
  /** Creation timestamp */
23
23
  createdAt: number;
24
24
  /** Items in this group */
25
- items: IMediaRightItem[];
25
+ items: IMediaRightItem<O>[];
26
26
  /** Channels associated with this group */
27
27
  channels: IMediaRightChannel[];
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/media-right/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,0BAA0B;IAC1B,KAAK,EAAE,eAAe,EAAE,CAAA;IACxB,0CAA0C;IAC1C,QAAQ,EAAE,kBAAkB,EAAE,CAAA;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACtC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAA;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,iDAAiD;IAEjD,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,CAAA;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/media-right/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,0BAA0B;IAC1B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IAC3B,0CAA0C;IAC1C,QAAQ,EAAE,kBAAkB,EAAE,CAAA;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACtC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAA;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,iDAAiD;IAEjD,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,CAAA;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinocollab-shared",
3
- "version": "1.1.13",
3
+ "version": "1.1.15",
4
4
  "description": "DinoCollab shared utilities and components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",