dinocollab-shared 1.2.18 → 1.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cart/styled.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{defineProperty as t}from"../_virtual/_rollupPluginBabelHelpers.js";import{styled as e,Menu as o,Box as r,alpha as i}from"@mui/material";var a=e(o)(function(t){var e=t.theme;return{"--color-bg":"dark"===e.palette.mode?"#323234":e.palette.background.paper,"--color-text":e.palette.text.primary,marginTop:"45px",".MuiPaper-root":{position:"relative",overflow:"visible",display:"flex",flexDirection:"column",backgroundColor:"var(--color-bg, #000000)",borderRadius:e.shape.borderRadius,minWidth:"280px",maxWidth:"550px",boxShadow:"0 1px 1px rgba(0, 0, 0, 0.05), 0 2px 2px rgba(0, 0, 0, 0.2), 0 4px 4px rgba(0, 0, 0, 0.15), 0 8px 8px rgba(0, 0, 0, 0.05)",animation:"fadeInDown 0.3s ease-out",marginTop:"8px",color:"var(--color-text, #000000)","@keyframes fadeInDown":{"0%":{opacity:0,transform:"translateY(-10px)"},"100%":{opacity:1,transform:"translateY(0)"}},"&::before":{content:'""',position:"absolute",backgroundColor:"var(--color-bg, #ffffff)",width:"10px",height:"10px",top:"-4px",right:e.spacing(1),transform:"translateX(-50%) rotate(45deg)",zIndex:0}},".MuiBackdrop-root":{backgroundColor:"transparent"},".MuiList-root":{padding:0,height:"100%",overflowY:"auto","&::-webkit-scrollbar":{width:"
|
|
1
|
+
import{defineProperty as t}from"../_virtual/_rollupPluginBabelHelpers.js";import{styled as e,Menu as o,Box as r,alpha as i}from"@mui/material";var a=e(o)(function(t){var e=t.theme;return{"--color-bg":"dark"===e.palette.mode?"#323234":e.palette.background.paper,"--color-text":e.palette.text.primary,marginTop:"45px",".MuiPaper-root":{position:"relative",overflow:"visible",display:"flex",flexDirection:"column",backgroundColor:"var(--color-bg, #000000)",borderRadius:e.shape.borderRadius,minWidth:"280px",maxWidth:"550px",boxShadow:"0 1px 1px rgba(0, 0, 0, 0.05), 0 2px 2px rgba(0, 0, 0, 0.2), 0 4px 4px rgba(0, 0, 0, 0.15), 0 8px 8px rgba(0, 0, 0, 0.05)",animation:"fadeInDown 0.3s ease-out",marginTop:"8px",color:"var(--color-text, #000000)","@keyframes fadeInDown":{"0%":{opacity:0,transform:"translateY(-10px)"},"100%":{opacity:1,transform:"translateY(0)"}},"&::before":{content:'""',position:"absolute",backgroundColor:"var(--color-bg, #ffffff)",width:"10px",height:"10px",top:"-4px",right:e.spacing(1),transform:"translateX(-50%) rotate(45deg)",zIndex:0}},".MuiBackdrop-root":{backgroundColor:"transparent"},".MuiList-root":{padding:0,height:"100%",overflowY:"auto","&::-webkit-scrollbar":{width:"8px",height:"8px",background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"#e0e0e0",borderRadius:"8px"},"&::-webkit-scrollbar-thumb:hover":{background:"#bdbdbd"},"&":{scrollbarWidth:"thin",scrollbarColor:"#e0e0e0 transparent"}}}}),n={root:"CartContent-root",header:"CartContent-header",footer:"CartContent-footer",items:"CartContent-items",item:"CartContent-item",itemContent:"CartContent-itemContent",itemImg:"CartContent-itemImg",itemTitle:"CartContent-itemTitle",itemPrice:"CartContent-itemPrice",itemTag:"CartContent-itemTag"},p=function(t,e){return"".concat((null==e?void 0:e.prefix)||"",".").concat(n[t]).concat((null==e?void 0:e.suffix)||"")},l=e(r)(function(e){var o=e.theme;return t(t(t(t(t(t(t(t(t(t({"--height-item":"80px"},p("root",{prefix:"&"}),{height:"100%",flex:"1",display:"flex",flexDirection:"column",minHeight:0}),p("header"),{padding:"12px 16px",display:"flex",justifyContent:"space-between",alignItems:"center",gap:o.spacing(5),position:"sticky",top:0,background:"var(--color-bg, #323234)",zIndex:2,boxShadow:"0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)"}),p("footer"),{padding:"6px 12px",display:"flex",justifyContent:"flex-end",position:"sticky",bottom:0,background:"var(--color-bg, #323234)",zIndex:1,boxShadow:"0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)"}),p("items"),{overflowY:"auto",minHeight:0,"&::-webkit-scrollbar":{width:"8px",height:"8px",background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"#e0e0e0",borderRadius:"8px"},"&::-webkit-scrollbar-thumb:hover":{background:"#bdbdbd"},"&":{scrollbarWidth:"thin",scrollbarColor:"#e0e0e0 transparent"}}),p("item"),{display:"flex",alignItems:"center",padding:"8px 12px",transition:"0.3s",height:"var(--height-item)","& a":{textDecoration:"none"},"&:hover":{background:o.palette.action.hover},"&:hover a":{textDecoration:"underline"}}),p("itemImg"),{width:"60px",height:"60px",borderRadius:"6px",objectFit:"cover",marginRight:"12px",flex:"0 0 auto",backgroundColor:i(o.palette.grey[400],.2)}),p("itemContent"),{flex:1,display:"flex",alignItems:"center",minWidth:0,position:"relative",marginRight:o.spacing(1.5)}),p("itemTitle"),{color:"var(--color-text, #fff)",fontWeight:600,flex:1,width:"100%",marginRight:o.spacing(1),padding:o.spacing(2,0),minWidth:0,maxWidth:"300px"}),p("itemTitle",{prefix:"a"}),{textDecoration:"none","&:hover":{textDecoration:"underline"}}),p("itemTag"),{position:"absolute",top:0,left:0,fontWeight:600})});export{l as CartContentStyled,a as MenuStyled,n as cartContentClasses};
|
|
2
2
|
//# sourceMappingURL=styled.js.map
|
package/dist/cart/styled.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","sources":["../../src/cart/styled.tsx"],"sourcesContent":["import { alpha, Box, Menu, styled } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { BoxProps, MenuProps } from '@mui/material'\r\n\r\nexport const MenuStyled: ComponentType<MenuProps> = styled(Menu)(({ theme }) => ({\r\n '--color-bg': theme.palette.mode === 'dark' ? '#323234' : theme.palette.background.paper,\r\n '--color-text': theme.palette.text.primary,\r\n\r\n marginTop: '45px',\r\n '.MuiPaper-root': {\r\n position: 'relative',\r\n overflow: 'visible',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n backgroundColor: 'var(--color-bg, #000000)',\r\n borderRadius: theme.shape.borderRadius,\r\n minWidth: '280px',\r\n maxWidth: '550px',\r\n boxShadow: `0 1px 1px rgba(0, 0, 0, 0.05), 0 2px 2px rgba(0, 0, 0, 0.2), 0 4px 4px rgba(0, 0, 0, 0.15), 0 8px 8px rgba(0, 0, 0, 0.05)`,\r\n animation: 'fadeInDown 0.3s ease-out',\r\n marginTop: '8px',\r\n color: 'var(--color-text, #000000)',\r\n\r\n '@keyframes fadeInDown': {\r\n '0%': { opacity: 0, transform: 'translateY(-10px)' },\r\n '100%': { opacity: 1, transform: 'translateY(0)' }\r\n },\r\n\r\n '&::before': {\r\n content: '\"\"',\r\n position: 'absolute',\r\n backgroundColor: 'var(--color-bg, #ffffff)',\r\n width: '10px',\r\n height: '10px',\r\n top: '-4px',\r\n right: theme.spacing(1),\r\n transform: 'translateX(-50%) rotate(45deg)',\r\n zIndex: 0\r\n }\r\n },\r\n '.MuiBackdrop-root': { backgroundColor: 'transparent' },\r\n '.MuiList-root': {\r\n padding: 0,\r\n height: '100%',\r\n overflowY: 'auto',\r\n '&::-webkit-scrollbar': { width: '
|
|
1
|
+
{"version":3,"file":"styled.js","sources":["../../src/cart/styled.tsx"],"sourcesContent":["import { alpha, Box, Menu, styled } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { BoxProps, MenuProps } from '@mui/material'\r\nimport { minHeight } from '@mui/system'\r\n\r\nexport const MenuStyled: ComponentType<MenuProps> = styled(Menu)(({ theme }) => ({\r\n '--color-bg': theme.palette.mode === 'dark' ? '#323234' : theme.palette.background.paper,\r\n '--color-text': theme.palette.text.primary,\r\n\r\n marginTop: '45px',\r\n '.MuiPaper-root': {\r\n position: 'relative',\r\n overflow: 'visible',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n backgroundColor: 'var(--color-bg, #000000)',\r\n borderRadius: theme.shape.borderRadius,\r\n minWidth: '280px',\r\n maxWidth: '550px',\r\n boxShadow: `0 1px 1px rgba(0, 0, 0, 0.05), 0 2px 2px rgba(0, 0, 0, 0.2), 0 4px 4px rgba(0, 0, 0, 0.15), 0 8px 8px rgba(0, 0, 0, 0.05)`,\r\n animation: 'fadeInDown 0.3s ease-out',\r\n marginTop: '8px',\r\n color: 'var(--color-text, #000000)',\r\n\r\n '@keyframes fadeInDown': {\r\n '0%': { opacity: 0, transform: 'translateY(-10px)' },\r\n '100%': { opacity: 1, transform: 'translateY(0)' }\r\n },\r\n\r\n '&::before': {\r\n content: '\"\"',\r\n position: 'absolute',\r\n backgroundColor: 'var(--color-bg, #ffffff)',\r\n width: '10px',\r\n height: '10px',\r\n top: '-4px',\r\n right: theme.spacing(1),\r\n transform: 'translateX(-50%) rotate(45deg)',\r\n zIndex: 0\r\n }\r\n },\r\n '.MuiBackdrop-root': { backgroundColor: 'transparent' },\r\n '.MuiList-root': {\r\n padding: 0,\r\n height: '100%',\r\n overflowY: 'auto',\r\n '&::-webkit-scrollbar': { width: '8px', height: '8px', background: 'transparent' },\r\n '&::-webkit-scrollbar-thumb': { background: '#e0e0e0', borderRadius: '8px' },\r\n '&::-webkit-scrollbar-thumb:hover': { background: '#bdbdbd' },\r\n '&': { scrollbarWidth: 'thin', scrollbarColor: '#e0e0e0 transparent' }\r\n }\r\n}))\r\n\r\nexport const cartContentClasses = {\r\n root: 'CartContent-root',\r\n header: 'CartContent-header',\r\n footer: 'CartContent-footer',\r\n items: 'CartContent-items',\r\n item: 'CartContent-item',\r\n itemContent: 'CartContent-itemContent',\r\n itemImg: 'CartContent-itemImg',\r\n itemTitle: 'CartContent-itemTitle',\r\n itemPrice: 'CartContent-itemPrice',\r\n itemTag: 'CartContent-itemTag'\r\n}\r\n\r\nconst getCartContentClasses = (key: keyof typeof cartContentClasses, options?: { prefix?: string; suffix?: string }) => {\r\n return `${options?.prefix || ''}.${cartContentClasses[key]}${options?.suffix || ''}`\r\n}\r\n\r\nexport const CartContentStyled: ComponentType<BoxProps> = styled(Box)(({ theme }) => ({\r\n '--height-item': '80px',\r\n [getCartContentClasses('root', { prefix: '&' })]: {\r\n height: '100%',\r\n flex: '1',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n minHeight: 0\r\n },\r\n [getCartContentClasses('header')]: {\r\n padding: '12px 16px',\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n gap: theme.spacing(5),\r\n position: 'sticky',\r\n top: 0,\r\n background: 'var(--color-bg, #323234)',\r\n zIndex: 2,\r\n boxShadow: '0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)'\r\n },\r\n [getCartContentClasses('footer')]: {\r\n padding: '6px 12px',\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n position: 'sticky',\r\n bottom: 0,\r\n background: 'var(--color-bg, #323234)',\r\n zIndex: 1,\r\n boxShadow: '0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)'\r\n },\r\n [getCartContentClasses('items')]: {\r\n overflowY: 'auto',\r\n minHeight: 0,\r\n '&::-webkit-scrollbar': { width: '8px', height: '8px', background: 'transparent' },\r\n '&::-webkit-scrollbar-thumb': { background: '#e0e0e0', borderRadius: '8px' },\r\n '&::-webkit-scrollbar-thumb:hover': { background: '#bdbdbd' },\r\n '&': { scrollbarWidth: 'thin', scrollbarColor: '#e0e0e0 transparent' }\r\n },\r\n [getCartContentClasses('item')]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: '8px 12px',\r\n transition: '0.3s',\r\n height: 'var(--height-item)',\r\n '& a': { textDecoration: 'none' },\r\n '&:hover': { background: theme.palette.action.hover },\r\n '&:hover a': { textDecoration: 'underline' }\r\n },\r\n [getCartContentClasses('itemImg')]: {\r\n width: '60px',\r\n height: '60px',\r\n borderRadius: '6px',\r\n objectFit: 'cover',\r\n marginRight: '12px',\r\n flex: '0 0 auto',\r\n backgroundColor: alpha(theme.palette.grey[400], 0.2)\r\n },\r\n [getCartContentClasses('itemContent')]: {\r\n flex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n minWidth: 0,\r\n position: 'relative',\r\n marginRight: theme.spacing(1.5)\r\n },\r\n [getCartContentClasses('itemTitle')]: {\r\n color: 'var(--color-text, #fff)',\r\n fontWeight: 600,\r\n flex: 1,\r\n width: '100%',\r\n marginRight: theme.spacing(1),\r\n padding: theme.spacing(2, 0),\r\n minWidth: 0,\r\n maxWidth: '300px'\r\n },\r\n [getCartContentClasses('itemTitle', { prefix: 'a' })]: {\r\n textDecoration: 'none',\r\n '&:hover': { textDecoration: 'underline' }\r\n },\r\n [getCartContentClasses('itemTag')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n fontWeight: 600\r\n }\r\n}))\r\n"],"names":["MenuStyled","styled","Menu","_ref","theme","palette","mode","background","paper","text","primary","marginTop","position","overflow","display","flexDirection","backgroundColor","borderRadius","shape","minWidth","maxWidth","boxShadow","animation","color","opacity","transform","content","width","height","top","right","spacing","zIndex","padding","overflowY","scrollbarWidth","scrollbarColor","cartContentClasses","root","header","footer","items","item","itemContent","itemImg","itemTitle","itemPrice","itemTag","getCartContentClasses","key","options","concat","prefix","suffix","CartContentStyled","Box","_ref2","_defineProperty","flex","minHeight","justifyContent","alignItems","gap","bottom","transition","textDecoration","action","hover","objectFit","marginRight","alpha","grey","fontWeight","left"],"mappings":"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"}
|
package/dist/cart/widget.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{inherits as r,createClass as e,classCallCheck as t,callSuper as n,defineProperty as o,objectSpread2 as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as l,jsx as a}from"react/jsx-runtime";import{Component as c,Fragment as s}from"react";import{ImageWithFallback as d}from"dinocollab-core/components";import{Badge as p,Typography as u,Divider as m,Button as h,Box as
|
|
1
|
+
import{inherits as r,createClass as e,classCallCheck as t,callSuper as n,defineProperty as o,objectSpread2 as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as l,jsx as a}from"react/jsx-runtime";import{Component as c,Fragment as s}from"react";import{ImageWithFallback as d}from"dinocollab-core/components";import{Badge as p,Typography as u,Divider as m,Button as h,Box as f}from"@mui/material";import v from"@mui/icons-material/ShoppingCartOutlined";import C from"@mui/icons-material/ShoppingCartCheckout";import{getTotalData as g}from"./helpers.js";import{MenuStyled as x,CartContentStyled as y,cartContentClasses as b}from"./styled.js";import{IconButtonDark as P,IconButtonConfirm as k}from"../components/buttons.js";import{NoDataPanel as T}from"../components/no-data-panel.js";var N=function(){function N(r){var e;return t(this,N),e=n(this,N,[r]),o(e,"render",function(){var r;return l(s,{children:[a(P,{onClick:function(r){return e.onOpen(r.currentTarget)},children:a(p,{badgeContent:e.state.hydrated&&null!==(r=e.carts.length)&&void 0!==r?r:0,color:"error",children:a(v,{fontSize:"small"})})}),a(x,{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",sx:{display:"flex",flexDirection:"column"}},children:e.renderContent()})]})}),o(e,"renderContent",function(){var r,t=g(e.carts);return l(y,{className:b.root,children:[l("div",{className:b.header,children:[l(u,{variant:"h6",component:"span",sx:{flex:1},children:["Your Cart (",null!==(r=t.quantity)&&void 0!==r?r:0," items)"]}),l(u,{variant:"h6",component:"span",children:["Total: $ ",t.price.toFixed(2)]})]}),a(m,{}),l("div",{className:b.items,children:[e.carts.map(function(r,t){return a(s,{children:e.renderItem(r)},"key"+t)}),e.carts.length<1&&a(T,{title:"Your cart is empty",subTitle:"Try adding some products",sx:{height:"100%",m:1}})]}),a(m,{}),a("div",{className:b.footer,children:a(h,i(i(i({},e.props.hrefCart?{component:"a",href:e.props.hrefCart}:{}),{},{color:"inherit",endIcon:a(C,{}),onClick:function(r){e.onClose(),e.props.onMoveToCartClick&&e.props.onMoveToCartClick(r)},disabled:e.carts.length<1},e.props.buttonMoveToCartProps),{},{children:"Show in cart"}))})]})}),o(e,"renderTitle",function(r){var t,n=e.props,o=n.itemTitleProps,l=n.itemTitlePropsGetter,c=l?l(r,e.onClose):null!=o?o:{},s=null!==(t=r.ProductName)&&void 0!==t?t:"Unknown Product";return a(u,i(i({className:b.itemTitle,noWrap:!0,variant:"subtitle1",title:s},c),{},{children:s}))}),o(e,"renderItem",function(r){var t,n,o,i;return l("div",{className:b.item,children:[a(d,{className:b.itemImg,src:null==r?void 0:r.PictureUrl,title:null==r?void 0:r.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture"}),l("div",{className:b.itemContent,children:[a(u,{className:b.itemTag,variant:"caption",sx:{color:null!==(t=r.PriceColor)&&void 0!==t?t:"#000"},children:null!==(n=r.PriceName)&&void 0!==n?n:"Unknown Price"}),e.renderTitle(r),l(f,{sx:{display:"flex",alignItems:"flex-end",gap:"2px",justifyContent:"flex-end"},children:[l(u,{variant:"subtitle1",children:["$ ",null!==(o=r.Price)&&void 0!==o?o:0]}),l(u,{variant:"body1",sx:{fontSize:"14px",mb:"3px",color:"#818181"},children:["x",null!==(i=r.Amount)&&void 0!==i?i:0," urls"]})]})]}),a(k,{onAccept:function(){var t,n;return null===(t=(n=e.props).onRemoveCart)||void 0===t?void 0:t.call(n,r)},slots:{removeProps:{sx:{color:"#818181"}}}})]})}),o(e,"onOpen",function(r){e.setState({anchorEl:r})}),o(e,"onClose",function(){e.setState({anchorEl:null})}),e.state={anchorEl:null,hydrated:!1},e}return r(N,c),e(N,[{key:"carts",get:function(){var r;return null!==(r=this.props.carts)&&void 0!==r?r:[]}},{key:"componentDidMount",value:function(){this.setState({hydrated:!0})}}])}(),S=function(r){var e=function(e){return a(N,i(i({},r),e))};return e.displayName="CartWidget",e};export{N as CartWidget,S as createCartWidget};
|
|
2
2
|
//# sourceMappingURL=widget.js.map
|
package/dist/cart/widget.js.map
CHANGED
|
@@ -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 { IconButtonConfirm, 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 fontSize='small' />\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%', m: 1 }} />}\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 const name = item.ProductName ?? 'Unknown Product'\r\n return (\r\n <Typography className={cartContentClasses.itemTitle} noWrap variant='subtitle1' title={name} {...currentProps}>\r\n {name}\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 <IconButtonConfirm onAccept={() => this.props.onRemoveCart?.(item)} slots={{ removeProps: { sx: { color: '#818181' } } }} />\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","fontSize","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","m","footer","Button","_objectSpread","hrefCart","href","endIcon","ShoppingCartCheckoutIcon","event","onMoveToCartClick","disabled","buttonMoveToCartProps","item","_item$ProductName","_this$props","itemTitleProps","itemTitlePropsGetter","currentProps","name","ProductName","itemTitle","noWrap","_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","mb","Amount","IconButtonConfirm","onAccept","_this$props$onRemoveC","_this$props2","onRemoveCart","call","slots","removeProps","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, Typography } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport type { TypographyProps } from '@mui/material'\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 { cartContentClasses, CartContentStyled, MenuStyled } from './styled'\r\nimport { IconButtonConfirm, IconButtonDark, NoDataPanel } from '../components'\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 fontSize='small' />\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', sx: { display: 'flex', flexDirection: 'column' } }}\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 className={cartContentClasses.root}>\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%', m: 1 }} />}\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 const name = item.ProductName ?? 'Unknown Product'\r\n return (\r\n <Typography className={cartContentClasses.itemTitle} noWrap variant='subtitle1' title={name} {...currentProps}>\r\n {name}\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 <IconButtonConfirm onAccept={() => this.props.onRemoveCart?.(item)} slots={{ removeProps: { sx: { color: '#818181' } } }} />\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","fontSize","MenuStyled","disableScrollLock","anchorEl","open","Boolean","onClose","anchorOrigin","vertical","horizontal","transformOrigin","MenuListProps","component","sx","display","flexDirection","renderContent","_totalData$quantity","totalData","getTotalData","CartContentStyled","className","cartContentClasses","root","header","Typography","variant","flex","quantity","price","toFixed","Divider","items","map","x","i","renderItem","NoDataPanel","title","subTitle","height","m","footer","Button","_objectSpread","hrefCart","href","endIcon","ShoppingCartCheckoutIcon","event","onMoveToCartClick","disabled","buttonMoveToCartProps","item","_item$ProductName","_this$props","itemTitleProps","itemTitlePropsGetter","currentProps","name","ProductName","itemTitle","noWrap","_item$PriceColor","_item$PriceName","_item$Price","_item$Amount","ImageWithFallback","itemImg","src","PictureUrl","fallbackSrc","alt","itemContent","itemTag","PriceColor","PriceName","renderTitle","Box","alignItems","gap","justifyContent","Price","mb","Amount","IconButtonConfirm","onAccept","_this$props$onRemoveC","_this$props2","onRemoveCart","call","slots","removeProps","target","setState","_inherits","Component","_createClass","key","get","_this$props$carts","this","value","createCartWidget","params","_CartWidget","displayName"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/cart/styled.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/cart/styled.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAGxD,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CA8C7C,CAAA;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;CAW9B,CAAA;AAMD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,QAAQ,CAsFnD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../../src/cart/widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAsB,WAAW,
|
|
1
|
+
{"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../../src/cart/widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAE3C,OAAO,EAAsB,WAAW,EAAuB,MAAM,eAAe,CAAA;AACpF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAGpD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAI1C,KAAK,gBAAgB,GAAG,eAAe,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAA;AAEhE,UAAU,gBAAgB;IACxB,OAAO,EAAE,eAAe,CAAA;IACxB,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,CAAC,EAAE,WAAW,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACxC,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,GAAG,iBAAiB,EAAE,UAAU,CAAC,KAAK,IAAI,CAAA;IACpG,cAAc,CAAC,EAAE,gBAAgB,CAAA;IACjC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,gBAAgB,CAAA;CACjF;AAED,UAAU,gBAAgB;IACxB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,qBAAa,UAAW,SAAQ,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;gBAC/D,KAAK,EAAE,gBAAgB;IAKnC,IAAI,KAAK,qBAER;IAED,iBAAiB;IAKjB,MAAM,gDAmBL;IAED,aAAa,gDAuCZ;IAED,WAAW,SAAU,SAAS,6CAS7B;IAED,UAAU,SAAU,SAAS,6CA0B5B;IAED,MAAM,WAAY,WAAW,UAE5B;IAED,OAAO,aAEN;CACF;AAED,eAAO,MAAM,gBAAgB,WAAY,gBAAgB,kCAIxD,CAAA"}
|