dinocollab-shared 1.1.25 → 1.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/cart/styled.js +1 -1
  2. package/dist/cart/styled.js.map +1 -1
  3. package/dist/media-right/group-selector/index.js +1 -1
  4. package/dist/media-right/group-selector/index.js.map +1 -1
  5. package/dist/media-right/group-selector/units.js +1 -1
  6. package/dist/media-right/group-selector/units.js.map +1 -1
  7. package/dist/media-right/guide-steps/index.js +2 -0
  8. package/dist/media-right/guide-steps/index.js.map +1 -0
  9. package/dist/media-right/index.js +1 -1
  10. package/dist/media-right/media-widget/index.js +1 -1
  11. package/dist/media-right/media-widget/index.js.map +1 -1
  12. package/dist/media-right/media-widget/item-title-props-context.js +2 -0
  13. package/dist/media-right/media-widget/item-title-props-context.js.map +1 -0
  14. package/dist/media-right/media-widget/media-group-accordion.js +1 -1
  15. package/dist/media-right/media-widget/media-group-accordion.js.map +1 -1
  16. package/dist/media-right/media-widget/media-list.js +1 -1
  17. package/dist/media-right/media-widget/media-list.js.map +1 -1
  18. package/dist/media-right/media-widget/styled.js +1 -1
  19. package/dist/media-right/media-widget/styled.js.map +1 -1
  20. package/dist/types/cart/styled.d.ts.map +1 -1
  21. package/dist/types/media-right/group-selector/index.d.ts +4 -1
  22. package/dist/types/media-right/group-selector/index.d.ts.map +1 -1
  23. package/dist/types/media-right/guide-steps/index.d.ts +16 -0
  24. package/dist/types/media-right/guide-steps/index.d.ts.map +1 -0
  25. package/dist/types/media-right/index.d.ts +2 -0
  26. package/dist/types/media-right/index.d.ts.map +1 -1
  27. package/dist/types/media-right/media-widget/index.d.ts +2 -1
  28. package/dist/types/media-right/media-widget/index.d.ts.map +1 -1
  29. package/dist/types/media-right/media-widget/item-title-props-context.d.ts +15 -0
  30. package/dist/types/media-right/media-widget/item-title-props-context.d.ts.map +1 -0
  31. package/dist/types/media-right/media-widget/media-group-accordion.d.ts +3 -1
  32. package/dist/types/media-right/media-widget/media-group-accordion.d.ts.map +1 -1
  33. package/dist/types/media-right/media-widget/media-list.d.ts +1 -1
  34. package/dist/types/media-right/media-widget/media-list.d.ts.map +1 -1
  35. package/dist/types/media-right/media-widget/styled.d.ts.map +1 -1
  36. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- import{defineProperty as t}from"../_virtual/_rollupPluginBabelHelpers.js";import{styled as e,Menu as o,Box as i,alpha as r}from"@mui/material";var a=e(o)(function(t){var e=t.theme;return{"--color-bg":"#ffffff","--color-text":e.palette.common.black,marginTop:"45px",".MuiPaper-root":{overflow:"visible",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)",display:"flex","@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}}}),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(i)(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%"}),p("header"),{padding:"12px 16px",display:"flex",justifyContent:"space-between",alignItems:"center",gap:o.spacing(5)}),p("footer"),{padding:"6px 12px",display:"flex",justifyContent:"flex-end",position:"relative"}),p("items"),{padding:"8px",overflowY:"auto",height:"100%"}),p("item"),{display:"flex",alignItems:"center",padding:"0 9px",transition:"0.3s",height:"var(--height-item)","& a":{textDecoration:"none"},"&:hover":{background:"#fafafa"},"&:hover a":{textDecoration:"underline"}}),p("itemImg"),{width:"60px",height:"60px",borderRadius:"6px",objectFit:"cover",marginRight:"12px",flex:"0 0 auto",backgroundColor:r(o.palette.grey[400],.2)}),p("itemContent"),{flex:1,display:"flex",alignItems:"center",minWidth:0,position:"relative"}),p("itemTitle"),{color:"var(--color-body, #000)",fontWeight:600,flex:1,width:"100%",margin:"0 12px",padding:"15px 0",minWidth:0,maxWidth:"300px"}),p("itemTitle",{prefix:"a"}),{textDecoration:"none","&:hover":{textDecoration:"underline"}}),p("itemTag"),{position:"absolute",top:0,left:"12px",fontWeight:600})});export{l as CartContentStyled,a as MenuStyled,n as cartContentClasses};
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":"#ffffff","--color-text":e.palette.common.black,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:"6px",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%"}),p("header"),{padding:"12px 16px",display:"flex",justifyContent:"space-between",alignItems:"center",gap:o.spacing(5),position:"sticky",top:0,background:"#fff",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:"#fff",zIndex:1,boxShadow:"0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)"}),p("items"),{padding:"8px",overflowY:"auto",height:"100%"}),p("item"),{display:"flex",alignItems:"center",padding:"0 9px",transition:"0.3s",height:"var(--height-item)","& a":{textDecoration:"none"},"&:hover":{background:"#fafafa"},"&: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"}),p("itemTitle"),{color:"var(--color-body, #000)",fontWeight:600,flex:1,width:"100%",margin:"0 12px",padding:"15px 0",minWidth:0,maxWidth:"300px"}),p("itemTitle",{prefix:"a"}),{textDecoration:"none","&:hover":{textDecoration:"underline"}}),p("itemTag"),{position:"absolute",top:0,left:"12px",fontWeight:600})});export{l as CartContentStyled,a as MenuStyled,n as cartContentClasses};
2
2
  //# sourceMappingURL=styled.js.map
@@ -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 // dark mode\r\n // '--color-bg': '#323234',\r\n // \"--color-text\": theme.palette.common.white,\r\n\r\n // light mode\r\n '--color-bg': '#ffffff',\r\n '--color-text': theme.palette.common.black,\r\n\r\n marginTop: '45px',\r\n '.MuiPaper-root': {\r\n overflow: 'visible',\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 display: 'flex',\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': { padding: 0 }\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 },\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 },\r\n [getCartContentClasses('footer')]: {\r\n padding: '6px 12px',\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n position: 'relative'\r\n },\r\n [getCartContentClasses('items')]: {\r\n padding: '8px',\r\n overflowY: 'auto',\r\n height: '100%'\r\n },\r\n [getCartContentClasses('item')]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: '0 9px',\r\n transition: '0.3s',\r\n height: 'var(--height-item)',\r\n '& a': {\r\n textDecoration: 'none'\r\n },\r\n '&:hover': {\r\n background: '#fafafa'\r\n },\r\n '&:hover a': {\r\n textDecoration: 'underline'\r\n }\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 },\r\n [getCartContentClasses('itemTitle')]: {\r\n color: 'var(--color-body, #000)',\r\n fontWeight: 600,\r\n flex: 1,\r\n width: '100%',\r\n margin: '0 12px',\r\n padding: '15px 0',\r\n minWidth: 0,\r\n maxWidth: '300px'\r\n },\r\n [getCartContentClasses('itemTitle', { prefix: 'a' })]: {\r\n textDecoration: 'none',\r\n '&:hover': {\r\n textDecoration: 'underline'\r\n }\r\n },\r\n [getCartContentClasses('itemTag')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: '12px',\r\n fontWeight: 600\r\n }\r\n}))\r\n"],"names":["MenuStyled","styled","Menu","_ref","theme","palette","common","black","marginTop","overflow","backgroundColor","borderRadius","shape","minWidth","maxWidth","boxShadow","animation","color","display","opacity","transform","content","position","width","height","top","right","spacing","zIndex","padding","cartContentClasses","root","header","footer","items","item","itemContent","itemImg","itemTitle","itemPrice","itemTag","getCartContentClasses","key","options","concat","prefix","suffix","CartContentStyled","Box","_ref2","_defineProperty","justifyContent","alignItems","gap","overflowY","transition","textDecoration","background","objectFit","marginRight","flex","alpha","grey","fontWeight","margin","left"],"mappings":"+IAIO,IAAMA,EAAuCC,EAAOC,EAAPD,CAAa,SAAAE,GAAA,IAAGC,EAAKD,EAALC,MAAK,MAAQ,CAM/E,aAAc,UACd,eAAgBA,EAAMC,QAAQC,OAAOC,MAErCC,UAAW,OACX,iBAAkB,CAChBC,SAAU,UACVC,gBAAiB,2BACjBC,aAAcP,EAAMQ,MAAMD,aAC1BE,SAAU,QACVC,SAAU,QACVC,UAAsI,4HACtIC,UAAW,2BACXR,UAAW,MACXS,MAAO,6BACPC,QAAS,OAET,wBAAyB,CACvB,KAAM,CAAEC,QAAS,EAAGC,UAAW,qBAC/B,OAAQ,CAAED,QAAS,EAAGC,UAAW,kBAGnC,YAAa,CACXC,QAAS,KACTC,SAAU,WACVZ,gBAAiB,2BACjBa,MAAO,OACPC,OAAQ,OACRC,IAAK,OACLC,MAAOtB,EAAMuB,QAAQ,GACrBP,UAAW,iCACXQ,OAAQ,IAGZ,oBAAqB,CAAElB,gBAAiB,eACxC,gBAAiB,CAAEmB,QAAS,GAC7B,GAEYC,EAAqB,CAChCC,KAAM,mBACNC,OAAQ,qBACRC,OAAQ,qBACRC,MAAO,oBACPC,KAAM,mBACNC,YAAa,0BACbC,QAAS,sBACTC,UAAW,wBACXC,UAAW,wBACXC,QAAS,uBAGLC,EAAwB,SAACC,EAAsCC,GACnE,MAAA,GAAAC,QAAUD,aAAAA,EAAAA,EAASE,SAAU,QAAED,OAAId,EAAmBY,IAAIE,QAAGD,aAAAA,EAAAA,EAASG,SAAU,GAClF,EAEaC,EAA6C9C,EAAO+C,EAAP/C,CAAY,SAAAgD,GAAA,IAAG7C,EAAK6C,EAAL7C,MAAK,OAAA8C,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAA,CAC5E,gBAAiB,QAChBT,EAAsB,OAAQ,CAAEI,OAAQ,MAAS,CAChDrB,OAAQ,SAETiB,EAAsB,UAAY,CACjCZ,QAAS,YACTX,QAAS,OACTiC,eAAgB,gBAChBC,WAAY,SACZC,IAAKjD,EAAMuB,QAAQ,KAEpBc,EAAsB,UAAY,CACjCZ,QAAS,WACTX,QAAS,OACTiC,eAAgB,WAChB7B,SAAU,aAEXmB,EAAsB,SAAW,CAChCZ,QAAS,MACTyB,UAAW,OACX9B,OAAQ,SAETiB,EAAsB,QAAU,CAC/BvB,QAAS,OACTkC,WAAY,SACZvB,QAAS,QACT0B,WAAY,OACZ/B,OAAQ,qBACR,MAAO,CACLgC,eAAgB,QAElB,UAAW,CACTC,WAAY,WAEd,YAAa,CACXD,eAAgB,eAGnBf,EAAsB,WAAa,CAClClB,MAAO,OACPC,OAAQ,OACRb,aAAc,MACd+C,UAAW,QACXC,YAAa,OACbC,KAAM,WACNlD,gBAAiBmD,EAAMzD,EAAMC,QAAQyD,KAAK,KAAM,MAEjDrB,EAAsB,eAAiB,CACtCmB,KAAM,EACN1C,QAAS,OACTkC,WAAY,SACZvC,SAAU,EACVS,SAAU,aAEXmB,EAAsB,aAAe,CACpCxB,MAAO,0BACP8C,WAAY,IACZH,KAAM,EACNrC,MAAO,OACPyC,OAAQ,SACRnC,QAAS,SACThB,SAAU,EACVC,SAAU,UAEX2B,EAAsB,YAAa,CAAEI,OAAQ,MAAS,CACrDW,eAAgB,OAChB,UAAW,CACTA,eAAgB,eAGnBf,EAAsB,WAAa,CAClCnB,SAAU,WACVG,IAAK,EACLwC,KAAM,OACNF,WAAY,KACb"}
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 // dark mode\r\n // '--color-bg': '#323234',\r\n // \"--color-text\": theme.palette.common.white,\r\n\r\n // light mode\r\n '--color-bg': '#ffffff',\r\n '--color-text': theme.palette.common.black,\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': {\r\n width: '6px',\r\n background: 'transparent'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#e0e0e0',\r\n borderRadius: '8px'\r\n },\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#bdbdbd'\r\n },\r\n '&': {\r\n scrollbarWidth: 'thin',\r\n scrollbarColor: '#e0e0e0 transparent'\r\n }\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 },\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: '#fff',\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: '#fff',\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 padding: '8px',\r\n overflowY: 'auto',\r\n height: '100%'\r\n },\r\n [getCartContentClasses('item')]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: '0 9px',\r\n transition: '0.3s',\r\n height: 'var(--height-item)',\r\n '& a': {\r\n textDecoration: 'none'\r\n },\r\n '&:hover': {\r\n background: '#fafafa'\r\n },\r\n '&:hover a': {\r\n textDecoration: 'underline'\r\n }\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 },\r\n [getCartContentClasses('itemTitle')]: {\r\n color: 'var(--color-body, #000)',\r\n fontWeight: 600,\r\n flex: 1,\r\n width: '100%',\r\n margin: '0 12px',\r\n padding: '15px 0',\r\n minWidth: 0,\r\n maxWidth: '300px'\r\n },\r\n [getCartContentClasses('itemTitle', { prefix: 'a' })]: {\r\n textDecoration: 'none',\r\n '&:hover': {\r\n textDecoration: 'underline'\r\n }\r\n },\r\n [getCartContentClasses('itemTag')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: '12px',\r\n fontWeight: 600\r\n }\r\n}))\r\n"],"names":["MenuStyled","styled","Menu","_ref","theme","palette","common","black","marginTop","position","overflow","display","flexDirection","backgroundColor","borderRadius","shape","minWidth","maxWidth","boxShadow","animation","color","opacity","transform","content","width","height","top","right","spacing","zIndex","padding","overflowY","background","scrollbarWidth","scrollbarColor","cartContentClasses","root","header","footer","items","item","itemContent","itemImg","itemTitle","itemPrice","itemTag","getCartContentClasses","key","options","concat","prefix","suffix","CartContentStyled","Box","_ref2","_defineProperty","justifyContent","alignItems","gap","bottom","transition","textDecoration","objectFit","marginRight","flex","alpha","grey","fontWeight","margin","left"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{slicedToArray as o,objectSpread2 as e}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as n,jsx as r}from"react/jsx-runtime";import{useState as t}from"react";import{createRoot as i}from"react-dom/client";import{Dialog as l,Box as m,DialogContent as a,Typography as d,DialogActions as u,Button as c}from"@mui/material";import{CollectionsList as p}from"./units.js";import{ModalHeader as s}from"./modal-header.js";import{canAddGroup as f,generateGroupId as h}from"../helpers.js";import{NewCollectionButton as v,NewCollectionInput as C}from"../unit.control.js";var b=function(e){var i=e.open,h=e.onClose,b=e.onConfirm,g=e.groups,x=e.cartItem,j=t(null),I=o(j,2),y=I[0],k=I[1],S=t(!1),G=o(S,2),W=G[0],A=G[1],M=t(""),P=o(M,2),_=P[0],B=P[1],D=function(){k(null),A(!1),B(""),h()};return n(l,{open:i,onClose:D,maxWidth:"xs",fullWidth:!0,disableScrollLock:!0,keepMounted:!1,scroll:"paper",children:[r(s,{cartItem:x,onClose:D}),n(m,{component:"form",onSubmit:function(o){o.preventDefault(),W&&_.trim()?b(null,_.trim()):b(y||null)},children:[n(a,{children:[r(d,{variant:"subtitle1",sx:{mb:1,fontWeight:600},children:"Your Media Rights Package"}),f(g)&&(W?r(C,{value:_,onChange:B}):r(v,{onClick:function(){k(null),A(!0)}})),r(p,{groups:g,selectedGroupId:y,onGroupSelect:function(o){k(o),A(!1)}})]}),n(u,{sx:{px:3,pb:3},children:[r(c,{onClick:D,variant:"outlined",type:"button",children:"Cancel"}),r(c,{type:"submit",variant:"contained",disabled:W?!_.trim():!y,sx:{minWidth:100},children:W?"Create & Add":y?"Add":"Save"})]})]})]})},g=function(o){var n=o.cartItem,t=o.groups,l=o.addGroup,m=o.addItem,a=document.createElement("div");document.body.appendChild(a);var d=i(a);d.render(r(b,{open:!0,onClose:function(){d.unmount(),document.body.removeChild(a)},onConfirm:function(o,r){if(n){var t=o;!o&&r&&(t=h(),l({id:t,name:r,channels:[]}));var i=e(e({},n),{},{GroupId:t||""});t&&m(i),d.unmount(),document.body.removeChild(a)}},groups:t,cartItem:n}))};export{b as GroupSelectorModal,g as showGroupSelectorModal};
1
+ import{slicedToArray as o,objectSpread2 as e}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as r,jsx as t}from"react/jsx-runtime";import{useState as n}from"react";import{createRoot as i}from"react-dom/client";import{Dialog as l,Box as m,DialogContent as u,Typography as d,DialogActions as a,Button as p}from"@mui/material";import{CollectionsList as c}from"./units.js";import{ModalHeader as s}from"./modal-header.js";import{canAddGroup as f,generateGroupId as h}from"../helpers.js";import{NewCollectionButton as v,NewCollectionInput as C}from"../unit.control.js";import{GuideSteps as b}from"../guide-steps/index.js";var g=function(i){var h=i.open,g=i.onClose,x=i.onConfirm,j=i.groups,S=i.guideStepsProps,y=i.cartItem,I=n(null),P=o(I,2),k=P[0],G=P[1],W=n(!1),A=o(W,2),B=A[0],M=A[1],_=n(""),D=o(_,2),E=D[0],H=D[1],L=function(){G(null),M(!1),H(""),g()};return r(l,{open:h,onClose:L,maxWidth:"xs",fullWidth:!0,disableScrollLock:!0,keepMounted:!1,scroll:"paper",children:[t(s,{cartItem:y,onClose:L}),r(m,{component:"form",onSubmit:function(o){o.preventDefault(),B&&E.trim()?x(null,E.trim()):x(k||null)},children:[r(u,{children:[t(d,{variant:"subtitle1",sx:{mb:1,fontWeight:600},children:"Your Media Rights Package"}),f(j)&&(B?t(C,{value:E,onChange:H}):t(v,{onClick:function(){G(null),M(!0)}})),t(c,{groups:j,selectedGroupId:k,onGroupSelect:function(o){G(o),M(!1)}})]}),r(a,{sx:{px:3,pb:3},children:[S&&t(b,e({iconButtonProps:{color:"primary",sx:{mr:"auto"}}},S)),t(p,{onClick:L,variant:"outlined",type:"button",children:"Cancel"}),t(p,{type:"submit",variant:"contained",disabled:B?!E.trim():!k,sx:{minWidth:100},children:B?"Create & Add":k?"Add":"Save"})]})]})]})},x=function(o){var r=o.cartItem,n=o.groups,l=o.guideStepsProps,m=o.addGroup,u=o.addItem,d=document.createElement("div");document.body.appendChild(d);var a=i(d);a.render(t(g,{open:!0,onClose:function(){a.unmount(),document.body.removeChild(d)},onConfirm:function(o,t){if(r){var n=o;!o&&t&&(n=h(),m({id:n,name:t,channels:[]}));var i=e(e({},r),{},{GroupId:n||""});n&&u(i),a.unmount(),document.body.removeChild(d)}},guideStepsProps:l,groups:n,cartItem:r}))};export{g as GroupSelectorModal,x as showGroupSelectorModal};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/media-right/group-selector/index.tsx"],"sourcesContent":["import { useState } from 'react'\r\nimport type { FC, FormEvent } from 'react'\r\nimport { createRoot } from 'react-dom/client'\r\nimport { Dialog, DialogContent, DialogActions, Button, Typography, Box } from '@mui/material'\r\nimport type { IMediaRightGroup, IMediaRightItem } from '../types'\r\nimport { CollectionsList } from './units'\r\nimport { ModalHeader } from './modal-header'\r\nimport { canAddGroup, generateGroupId } from '../helpers'\r\nimport { NewCollectionButton, NewCollectionInput } from '../unit.control'\r\n\r\nexport interface IGroupSelectorModalProps {\r\n open: boolean\r\n onClose: () => void\r\n onConfirm: (groupId: string | null, newName?: string) => void\r\n groups: IMediaRightGroup[]\r\n cartItem: IMediaRightItem | null\r\n}\r\n\r\nexport const GroupSelectorModal: FC<IGroupSelectorModalProps> = ({ open, onClose, onConfirm, groups, cartItem }) => {\r\n const [selectedGroupId, setSelectedGroupId] = useState<string | null>(null)\r\n const [showNewGroupInput, setShowNewGroupInput] = useState(false)\r\n const [newName, setNewName] = useState<string>('')\r\n\r\n const handleSubmit = (e: FormEvent) => {\r\n e.preventDefault()\r\n\r\n if (showNewGroupInput && newName.trim()) {\r\n // Create new group\r\n onConfirm(null, newName.trim())\r\n } else if (selectedGroupId) {\r\n // Add to selected group\r\n onConfirm(selectedGroupId)\r\n } else {\r\n // Add to cart without group\r\n onConfirm(null)\r\n }\r\n }\r\n\r\n const handleClose = () => {\r\n setSelectedGroupId(null)\r\n setShowNewGroupInput(false)\r\n setNewName('')\r\n onClose()\r\n }\r\n\r\n const handleNewGroupClick = () => {\r\n setSelectedGroupId(null)\r\n setShowNewGroupInput(true)\r\n }\r\n\r\n const handleGroupSelect = (groupId: string) => {\r\n setSelectedGroupId(groupId)\r\n setShowNewGroupInput(false)\r\n }\r\n\r\n const isConfirmDisabled = () => {\r\n if (showNewGroupInput) return !newName.trim()\r\n return !selectedGroupId\r\n }\r\n\r\n return (\r\n <Dialog open={open} onClose={handleClose} maxWidth='xs' fullWidth disableScrollLock={true} keepMounted={false} scroll='paper'>\r\n <ModalHeader cartItem={cartItem} onClose={handleClose} />\r\n\r\n <Box component='form' onSubmit={handleSubmit}>\r\n <DialogContent>\r\n <Typography variant='subtitle1' sx={{ mb: 1, fontWeight: 600 }}>\r\n Your Media Rights Package\r\n </Typography>\r\n {canAddGroup(groups) && (\r\n !showNewGroupInput\r\n ? <NewCollectionButton onClick={handleNewGroupClick} />\r\n : <NewCollectionInput value={newName} onChange={setNewName} />\r\n )}\r\n <CollectionsList groups={groups} selectedGroupId={selectedGroupId} onGroupSelect={handleGroupSelect} />\r\n </DialogContent>\r\n\r\n <DialogActions sx={{ px: 3, pb: 3 }}>\r\n <Button onClick={handleClose} variant='outlined' type='button'>\r\n Cancel\r\n </Button>\r\n <Button type='submit' variant='contained' disabled={isConfirmDisabled()} sx={{ minWidth: 100 }}>\r\n {showNewGroupInput ? 'Create & Add' : selectedGroupId ? 'Add' : 'Save'}\r\n </Button>\r\n </DialogActions>\r\n </Box>\r\n </Dialog>\r\n )\r\n}\r\n\r\nexport interface IShowGroupSelectorModalProps {\r\n cartItem: IMediaRightItem | null\r\n groups: IMediaRightGroup[]\r\n addGroup: (group: Omit<IMediaRightGroup, 'createdAt' | 'items'>) => void\r\n addItem: (item: IMediaRightItem) => void\r\n}\r\n\r\nexport const showGroupSelectorModal = ({ cartItem, groups, addGroup, addItem }: IShowGroupSelectorModalProps) => {\r\n const modalContainer = document.createElement('div')\r\n document.body.appendChild(modalContainer)\r\n const root = createRoot(modalContainer)\r\n\r\n const handleModalConfirmInModal = (groupId: string | null, newGroupName?: string) => {\r\n if (!cartItem) return\r\n let finalGroupId = groupId\r\n // Create new group if needed\r\n if (!groupId && newGroupName) {\r\n finalGroupId = generateGroupId()\r\n addGroup({\r\n id: finalGroupId,\r\n name: newGroupName,\r\n channels: []\r\n })\r\n }\r\n const cartItemWithGroup: IMediaRightItem = {\r\n ...cartItem,\r\n GroupId: finalGroupId || ''\r\n }\r\n if (finalGroupId) {\r\n addItem(cartItemWithGroup)\r\n }\r\n root.unmount()\r\n document.body.removeChild(modalContainer)\r\n }\r\n root.render(\r\n <GroupSelectorModal\r\n open={true}\r\n onClose={() => {\r\n root.unmount()\r\n document.body.removeChild(modalContainer)\r\n }}\r\n onConfirm={handleModalConfirmInModal}\r\n groups={groups}\r\n cartItem={cartItem}\r\n />\r\n )\r\n}\r\n"],"names":["GroupSelectorModal","_ref","open","onClose","onConfirm","groups","cartItem","_useState","useState","_useState2","_slicedToArray","selectedGroupId","setSelectedGroupId","_useState3","_useState4","showNewGroupInput","setShowNewGroupInput","_useState5","_useState6","newName","setNewName","handleClose","_jsxs","Dialog","maxWidth","fullWidth","disableScrollLock","keepMounted","scroll","children","_jsx","ModalHeader","Box","component","onSubmit","e","preventDefault","trim","DialogContent","Typography","variant","sx","mb","fontWeight","canAddGroup","NewCollectionInput","value","onChange","NewCollectionButton","onClick","CollectionsList","onGroupSelect","groupId","DialogActions","px","pb","Button","type","disabled","minWidth","showGroupSelectorModal","_ref2","addGroup","addItem","modalContainer","document","createElement","body","appendChild","root","createRoot","render","unmount","removeChild","newGroupName","finalGroupId","generateGroupId","id","name","channels","cartItemWithGroup","_objectSpread","GroupId"],"mappings":"qkBAkBaA,EAAmD,SAAjCC,GAAoF,IAAhDC,EAAID,EAAJC,KAAMC,EAAOF,EAAPE,QAASC,EAASH,EAATG,UAAWC,EAAMJ,EAANI,OAAQC,EAAQL,EAARK,SACnGC,EAA8CC,EAAwB,MAAKC,EAAAC,EAAAH,EAAA,GAApEI,EAAeF,EAAA,GAAEG,EAAkBH,EAAA,GAC1CI,EAAkDL,GAAS,GAAMM,EAAAJ,EAAAG,EAAA,GAA1DE,EAAiBD,EAAA,GAAEE,EAAoBF,EAAA,GAC9CG,EAA8BT,EAAiB,IAAGU,EAAAR,EAAAO,EAAA,GAA3CE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAiBpBG,EAAc,WAClBT,EAAmB,MACnBI,GAAqB,GACrBI,EAAW,IACXjB,GACD,EAiBD,OACEmB,EAACC,EAAO,CAAArB,KAAMA,EAAMC,QAASkB,EAAaG,SAAS,KAAKC,WAAU,EAAAC,mBAAmB,EAAMC,aAAa,EAAOC,OAAO,QAAOC,SAAA,CAC3HC,EAACC,GAAYzB,SAAUA,EAAUH,QAASkB,IAE1CC,EAACU,EAAI,CAAAC,UAAU,OAAOC,SAzCL,SAACC,GACpBA,EAAEC,iBAEErB,GAAqBI,EAAQkB,OAE/BjC,EAAU,KAAMe,EAAQkB,QAGxBjC,EAFSO,GAKC,KAEb,EA6BKkB,SAAA,CAAAP,EAACgB,EACC,CAAAT,SAAA,CAAAC,EAACS,EAAW,CAAAC,QAAQ,YAAYC,GAAI,CAAEC,GAAI,EAAGC,WAAY,KAE5Cd,SAAA,8BACZe,EAAYvC,KACVU,EAEGe,EAACe,EAAmB,CAAAC,MAAO3B,EAAS4B,SAAU3B,IAD9CU,EAACkB,GAAoBC,QA1BP,WAC1BrC,EAAmB,MACnBI,GAAqB,EACtB,KA0BOc,EAACoB,EAAe,CAAC7C,OAAQA,EAAQM,gBAAiBA,EAAiBwC,cAxBjD,SAACC,GACzBxC,EAAmBwC,GACnBpC,GAAqB,EACtB,OAwBKM,EAAC+B,GAAcZ,GAAI,CAAEa,GAAI,EAAGC,GAAI,GAC9B1B,SAAA,CAAAC,EAAC0B,EAAO,CAAAP,QAAS5B,EAAamB,QAAQ,WAAWiB,KAAK,SAAQ5B,SAAA,WAG9DC,EAAC0B,EAAO,CAAAC,KAAK,SAASjB,QAAQ,YAAYkB,SAzB5C3C,GAA2BI,EAAQkB,QAC/B1B,EAwBuE8B,GAAI,CAAEkB,SAAU,KACtF9B,SAAAd,EAAoB,eAAiBJ,EAAkB,MAAQ,iBAM5E,EASaiD,EAAyB,SAAHC,GAA6E,IAAvEvD,EAAQuD,EAARvD,SAAUD,EAAMwD,EAANxD,OAAQyD,EAAQD,EAARC,SAAUC,EAAOF,EAAPE,QAC7DC,EAAiBC,SAASC,cAAc,OAC9CD,SAASE,KAAKC,YAAYJ,GAC1B,IAAMK,EAAOC,EAAWN,GAwBxBK,EAAKE,OACHzC,EAAC9B,EAAkB,CACjBE,MAAM,EACNC,QAAS,WACPkE,EAAKG,UACLP,SAASE,KAAKM,YAAYT,EAC3B,EACD5D,UA7B8B,SAACgD,EAAwBsB,GACzD,GAAKpE,EAAL,CACA,IAAIqE,EAAevB,GAEdA,GAAWsB,IACdC,EAAeC,IACfd,EAAS,CACPe,GAAIF,EACJG,KAAMJ,EACNK,SAAU,MAGd,IAAMC,EAAiBC,EAAAA,KAClB3E,GAAQ,GAAA,CACX4E,QAASP,GAAgB,KAEvBA,GACFZ,EAAQiB,GAEVX,EAAKG,UACLP,SAASE,KAAKM,YAAYT,EAnBX,CAoBhB,EASG3D,OAAQA,EACRC,SAAUA,IAGhB"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/media-right/group-selector/index.tsx"],"sourcesContent":["import { useState } from 'react'\r\nimport type { FC, FormEvent } from 'react'\r\nimport { createRoot } from 'react-dom/client'\r\nimport { Dialog, DialogContent, DialogActions, Button, Typography, Box } from '@mui/material'\r\nimport type { IMediaRightGroup, IMediaRightItem } from '../types'\r\nimport { CollectionsList } from './units'\r\nimport { ModalHeader } from './modal-header'\r\nimport { canAddGroup, generateGroupId } from '../helpers'\r\nimport { NewCollectionButton, NewCollectionInput } from '../unit.control'\r\nimport { GuideSteps } from '../guide-steps'\r\nimport type { IGuideStepsProps } from '../guide-steps'\r\n\r\nexport interface IGroupSelectorModalProps {\r\n open: boolean\r\n guideStepsProps?: IGuideStepsProps\r\n onClose: () => void\r\n onConfirm: (groupId: string | null, newName?: string) => void\r\n groups: IMediaRightGroup[]\r\n cartItem: IMediaRightItem | null\r\n}\r\n\r\nexport const GroupSelectorModal: FC<IGroupSelectorModalProps> = ({ open, onClose, onConfirm, groups, guideStepsProps, cartItem }) => {\r\n const [selectedGroupId, setSelectedGroupId] = useState<string | null>(null)\r\n const [showNewGroupInput, setShowNewGroupInput] = useState(false)\r\n const [newName, setNewName] = useState<string>('')\r\n\r\n const handleSubmit = (e: FormEvent) => {\r\n e.preventDefault()\r\n\r\n if (showNewGroupInput && newName.trim()) {\r\n // Create new group\r\n onConfirm(null, newName.trim())\r\n } else if (selectedGroupId) {\r\n // Add to selected group\r\n onConfirm(selectedGroupId)\r\n } else {\r\n // Add to cart without group\r\n onConfirm(null)\r\n }\r\n }\r\n\r\n const handleClose = () => {\r\n setSelectedGroupId(null)\r\n setShowNewGroupInput(false)\r\n setNewName('')\r\n onClose()\r\n }\r\n\r\n const handleNewGroupClick = () => {\r\n setSelectedGroupId(null)\r\n setShowNewGroupInput(true)\r\n }\r\n\r\n const handleGroupSelect = (groupId: string) => {\r\n setSelectedGroupId(groupId)\r\n setShowNewGroupInput(false)\r\n }\r\n\r\n const isConfirmDisabled = () => {\r\n if (showNewGroupInput) return !newName.trim()\r\n return !selectedGroupId\r\n }\r\n\r\n return (\r\n <Dialog open={open} onClose={handleClose} maxWidth='xs' fullWidth disableScrollLock={true} keepMounted={false} scroll='paper'>\r\n <ModalHeader cartItem={cartItem} onClose={handleClose} />\r\n <Box component='form' onSubmit={handleSubmit}>\r\n <DialogContent>\r\n <Typography variant='subtitle1' sx={{ mb: 1, fontWeight: 600 }}>\r\n Your Media Rights Package\r\n </Typography>\r\n {canAddGroup(groups) &&\r\n (!showNewGroupInput ? (\r\n <NewCollectionButton onClick={handleNewGroupClick} />\r\n ) : (\r\n <NewCollectionInput value={newName} onChange={setNewName} />\r\n ))}\r\n <CollectionsList groups={groups} selectedGroupId={selectedGroupId} onGroupSelect={handleGroupSelect} />\r\n </DialogContent>\r\n\r\n <DialogActions sx={{ px: 3, pb: 3 }}>\r\n {guideStepsProps && <GuideSteps iconButtonProps={{ color: 'primary', sx: { mr: 'auto' } }} {...guideStepsProps} />}\r\n <Button onClick={handleClose} variant='outlined' type='button'>\r\n Cancel\r\n </Button>\r\n <Button type='submit' variant='contained' disabled={isConfirmDisabled()} sx={{ minWidth: 100 }}>\r\n {showNewGroupInput ? 'Create & Add' : selectedGroupId ? 'Add' : 'Save'}\r\n </Button>\r\n </DialogActions>\r\n </Box>\r\n </Dialog>\r\n )\r\n}\r\n\r\nexport interface IShowGroupSelectorModalProps {\r\n cartItem: IMediaRightItem | null\r\n groups: IMediaRightGroup[]\r\n guideStepsProps?: IGuideStepsProps\r\n addGroup: (group: Omit<IMediaRightGroup, 'createdAt' | 'items'>) => void\r\n addItem: (item: IMediaRightItem) => void\r\n}\r\n\r\nexport const showGroupSelectorModal = ({ cartItem, groups, guideStepsProps, addGroup, addItem }: IShowGroupSelectorModalProps) => {\r\n const modalContainer = document.createElement('div')\r\n document.body.appendChild(modalContainer)\r\n const root = createRoot(modalContainer)\r\n\r\n const handleModalConfirmInModal = (groupId: string | null, newGroupName?: string) => {\r\n if (!cartItem) return\r\n let finalGroupId = groupId\r\n // Create new group if needed\r\n if (!groupId && newGroupName) {\r\n finalGroupId = generateGroupId()\r\n addGroup({\r\n id: finalGroupId,\r\n name: newGroupName,\r\n channels: []\r\n })\r\n }\r\n const cartItemWithGroup: IMediaRightItem = {\r\n ...cartItem,\r\n GroupId: finalGroupId || ''\r\n }\r\n if (finalGroupId) {\r\n addItem(cartItemWithGroup)\r\n }\r\n root.unmount()\r\n document.body.removeChild(modalContainer)\r\n }\r\n root.render(\r\n <GroupSelectorModal\r\n open={true}\r\n onClose={() => {\r\n root.unmount()\r\n document.body.removeChild(modalContainer)\r\n }}\r\n onConfirm={handleModalConfirmInModal}\r\n guideStepsProps={guideStepsProps}\r\n groups={groups}\r\n cartItem={cartItem}\r\n />\r\n )\r\n}\r\n"],"names":["GroupSelectorModal","_ref","open","onClose","onConfirm","groups","guideStepsProps","cartItem","_useState","useState","_useState2","_slicedToArray","selectedGroupId","setSelectedGroupId","_useState3","_useState4","showNewGroupInput","setShowNewGroupInput","_useState5","_useState6","newName","setNewName","handleClose","_jsxs","Dialog","maxWidth","fullWidth","disableScrollLock","keepMounted","scroll","children","_jsx","ModalHeader","Box","component","onSubmit","e","preventDefault","trim","DialogContent","Typography","variant","sx","mb","fontWeight","canAddGroup","NewCollectionInput","value","onChange","NewCollectionButton","onClick","CollectionsList","onGroupSelect","groupId","DialogActions","px","pb","GuideSteps","_objectSpread","iconButtonProps","color","mr","Button","type","disabled","minWidth","showGroupSelectorModal","_ref2","addGroup","addItem","modalContainer","document","createElement","body","appendChild","root","createRoot","render","unmount","removeChild","newGroupName","finalGroupId","generateGroupId","id","name","channels","cartItemWithGroup","GroupId"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{jsxs as e,jsx as r}from"react/jsx-runtime";import{Box as t,Typography as i,List as o,ListItem as n,ListItemButton as a,Checkbox as l,Stack as c,Chip as d}from"@mui/material";import s from"@mui/icons-material/FolderOutlined";var m=function(t){var o=t.group,m=t.isSelected,u=t.onSelect;return r(n,{disablePadding:!0,children:e(a,{selected:m,onClick:function(){return u(o.id)},sx:{gap:1,borderRadius:1,"&.Mui-selected":{bgcolor:"primary.50","&:hover":{bgcolor:"primary.100"}}},children:[r(l,{checked:m,size:"small"}),r(s,{fontSize:"small"}),e(c,{direction:"row",gap:1,sx:{minWidth:0,flexGrow:1,alignItems:"center",justifyContent:"space-between"},children:[r(i,{variant:"body1",noWrap:!0,children:o.name}),r(d,{label:"".concat(o.items.length," items"),size:"small"})]})]})})},u=function(n){var a=n.groups,l=n.selectedGroupId,c=n.onGroupSelect;return 0===a.length?e(t,{sx:{textAlign:"center",py:2,color:"text.secondary"},children:[r(s,{sx:{fontSize:48,mb:1,opacity:.5}}),r(i,{variant:"body2",children:"No Media Rights Packages yet. Create your first package!"})]}):r(o,{sx:{maxHeight:300,overflow:"auto"},children:a.map(function(e){return r(m,{group:e,isSelected:l===e.id,onSelect:c},e.id)})})};export{u as CollectionsList};
1
+ import{jsxs as e,jsx as r}from"react/jsx-runtime";import{Box as t,Typography as i,List as o,ListItem as n,ListItemButton as a,Checkbox as l,Stack as c,Chip as d}from"@mui/material";import s from"@mui/icons-material/FolderOutlined";var m=function(t){var o=t.group,m=t.isSelected,u=t.onSelect;return r(n,{disablePadding:!0,children:e(a,{selected:m,onClick:function(){return u(o.id)},sx:{gap:1,borderRadius:1,"&.Mui-selected":{bgcolor:"primary.50","&:hover":{bgcolor:"primary.100"}}},children:[r(l,{checked:m,size:"small"}),r(s,{fontSize:"small"}),e(c,{direction:"row",gap:1,sx:{minWidth:0,flexGrow:1,alignItems:"center",justifyContent:"space-between"},children:[r(i,{variant:"body2",noWrap:!0,children:o.name}),r(d,{label:"".concat(o.items.length," items"),size:"small"})]})]})})},u=function(n){var a=n.groups,l=n.selectedGroupId,c=n.onGroupSelect;return 0===a.length?e(t,{sx:{textAlign:"center",py:2,color:"text.secondary"},children:[r(s,{sx:{fontSize:48,mb:1,opacity:.5}}),r(i,{variant:"body2",children:"No Media Rights Packages yet. Create your first package!"})]}):r(o,{sx:{maxHeight:300,overflow:"auto"},children:a.map(function(e){return r(m,{group:e,isSelected:l===e.id,onSelect:c},e.id)})})};export{u as CollectionsList};
2
2
  //# sourceMappingURL=units.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"units.js","sources":["../../../src/media-right/group-selector/units.tsx"],"sourcesContent":["import type { FC } from 'react'\r\nimport { List, Box, Typography, ListItem, ListItemButton, Checkbox, Stack, Chip } from '@mui/material'\r\nimport FolderOutlinedIcon from '@mui/icons-material/FolderOutlined'\r\nimport type { IMediaRightGroup } from '../types'\r\n\r\nexport interface CollectionItemProps {\r\n group: IMediaRightGroup\r\n isSelected: boolean\r\n onSelect: (groupId: string) => void\r\n}\r\n\r\nconst CollectionItem: FC<CollectionItemProps> = ({ group, isSelected, onSelect }) => {\r\n return (\r\n <ListItem disablePadding>\r\n <ListItemButton\r\n selected={isSelected}\r\n onClick={() => onSelect(group.id)}\r\n sx={{\r\n gap: 1,\r\n borderRadius: 1,\r\n '&.Mui-selected': {\r\n bgcolor: 'primary.50',\r\n '&:hover': {\r\n bgcolor: 'primary.100'\r\n }\r\n }\r\n }}\r\n >\r\n <Checkbox checked={isSelected} size='small' />\r\n <FolderOutlinedIcon fontSize='small' />\r\n <Stack direction='row' gap={1} sx={{ minWidth: 0, flexGrow: 1, alignItems: 'center', justifyContent: 'space-between' }}>\r\n <Typography variant='body1' noWrap>\r\n {group.name}\r\n </Typography>\r\n <Chip label={`${group.items.length} items`} size='small' />\r\n </Stack>\r\n </ListItemButton>\r\n </ListItem>\r\n )\r\n}\r\n\r\nexport interface CollectionsListProps {\r\n groups: IMediaRightGroup[]\r\n selectedGroupId: string | null\r\n onGroupSelect: (groupId: string) => void\r\n}\r\n\r\nexport const CollectionsList: FC<CollectionsListProps> = ({ groups, selectedGroupId, onGroupSelect }) => {\r\n if (groups.length === 0) {\r\n return (\r\n <Box sx={{ textAlign: 'center', py: 2, color: 'text.secondary' }}>\r\n <FolderOutlinedIcon sx={{ fontSize: 48, mb: 1, opacity: 0.5 }} />\r\n <Typography variant='body2'>No Media Rights Packages yet. Create your first package!</Typography>\r\n </Box>\r\n )\r\n }\r\n\r\n return (\r\n <List sx={{ maxHeight: 300, overflow: 'auto' }}>\r\n {groups.map((group) => (\r\n <CollectionItem key={group.id} group={group} isSelected={selectedGroupId === group.id} onSelect={onGroupSelect} />\r\n ))}\r\n </List>\r\n )\r\n}\r\n"],"names":["CollectionItem","_ref","group","isSelected","onSelect","_jsx","ListItem","disablePadding","children","_jsxs","ListItemButton","selected","onClick","id","sx","gap","borderRadius","bgcolor","Checkbox","checked","size","FolderOutlinedIcon","fontSize","Stack","direction","minWidth","flexGrow","alignItems","justifyContent","Typography","variant","noWrap","name","Chip","label","concat","items","length","CollectionsList","_ref2","groups","selectedGroupId","onGroupSelect","Box","textAlign","py","color","mb","opacity","List","maxHeight","overflow","map"],"mappings":"uOAWA,IAAMA,EAA0C,SAA5BC,GAAgE,IAAjCC,EAAKD,EAALC,MAAOC,EAAUF,EAAVE,WAAYC,EAAQH,EAARG,SACpE,OACEC,EAACC,EAAS,CAAAC,gBACR,EAAAC,SAAAC,EAACC,EAAc,CACbC,SAAUR,EACVS,QAAS,WAAF,OAAQR,EAASF,EAAMW,GAAG,EACjCC,GAAI,CACFC,IAAK,EACLC,aAAc,EACd,iBAAkB,CAChBC,QAAS,aACT,UAAW,CACTA,QAAS,iBAGdT,SAAA,CAEDH,EAACa,EAAQ,CAACC,QAAShB,EAAYiB,KAAK,UACpCf,EAACgB,GAAmBC,SAAS,UAC7Bb,EAACc,GAAMC,UAAU,MAAMT,IAAK,EAAGD,GAAI,CAAEW,SAAU,EAAGC,SAAU,EAAGC,WAAY,SAAUC,eAAgB,iBAAiBpB,SAAA,CACpHH,EAACwB,EAAU,CAACC,QAAQ,QAAQC,mBACzB7B,EAAM8B,OAET3B,EAAC4B,GAAKC,MAAK,GAAAC,OAAKjC,EAAMkC,MAAMC,OAAc,UAAEjB,KAAK,iBAK3D,EAQakB,EAA4C,SAA7BC,GAA4E,IAA5CC,EAAMD,EAANC,OAAQC,EAAeF,EAAfE,gBAAiBC,EAAaH,EAAbG,cACnF,OAAsB,IAAlBF,EAAOH,OAEP5B,EAACkC,EAAG,CAAC7B,GAAI,CAAE8B,UAAW,SAAUC,GAAI,EAAGC,MAAO,kBAAkBtC,SAAA,CAC9DH,EAACgB,EAAmB,CAAAP,GAAI,CAAEQ,SAAU,GAAIyB,GAAI,EAAGC,QAAS,MACxD3C,EAACwB,EAAW,CAAAC,QAAQ,QAAOtB,SAAA,gEAM/BH,EAAC4C,EAAK,CAAAnC,GAAI,CAAEoC,UAAW,IAAKC,SAAU,QACnC3C,SAAAgC,EAAOY,IAAI,SAAClD,GAAK,OAChBG,EAACL,EAAc,CAAgBE,MAAOA,EAAOC,WAAYsC,IAAoBvC,EAAMW,GAAIT,SAAUsC,GAA5ExC,EAAMW,GAC5B,IAGP"}
1
+ {"version":3,"file":"units.js","sources":["../../../src/media-right/group-selector/units.tsx"],"sourcesContent":["import type { FC } from 'react'\r\nimport { List, Box, Typography, ListItem, ListItemButton, Checkbox, Stack, Chip } from '@mui/material'\r\nimport FolderOutlinedIcon from '@mui/icons-material/FolderOutlined'\r\nimport type { IMediaRightGroup } from '../types'\r\n\r\nexport interface CollectionItemProps {\r\n group: IMediaRightGroup\r\n isSelected: boolean\r\n onSelect: (groupId: string) => void\r\n}\r\n\r\nconst CollectionItem: FC<CollectionItemProps> = ({ group, isSelected, onSelect }) => {\r\n return (\r\n <ListItem disablePadding>\r\n <ListItemButton\r\n selected={isSelected}\r\n onClick={() => onSelect(group.id)}\r\n sx={{\r\n gap: 1,\r\n borderRadius: 1,\r\n '&.Mui-selected': {\r\n bgcolor: 'primary.50',\r\n '&:hover': {\r\n bgcolor: 'primary.100'\r\n }\r\n }\r\n }}\r\n >\r\n <Checkbox checked={isSelected} size='small' />\r\n <FolderOutlinedIcon fontSize='small' />\r\n <Stack direction='row' gap={1} sx={{ minWidth: 0, flexGrow: 1, alignItems: 'center', justifyContent: 'space-between' }}>\r\n <Typography variant='body2' noWrap>\r\n {group.name}\r\n </Typography>\r\n <Chip label={`${group.items.length} items`} size='small' />\r\n </Stack>\r\n </ListItemButton>\r\n </ListItem>\r\n )\r\n}\r\n\r\nexport interface CollectionsListProps {\r\n groups: IMediaRightGroup[]\r\n selectedGroupId: string | null\r\n onGroupSelect: (groupId: string) => void\r\n}\r\n\r\nexport const CollectionsList: FC<CollectionsListProps> = ({ groups, selectedGroupId, onGroupSelect }) => {\r\n if (groups.length === 0) {\r\n return (\r\n <Box sx={{ textAlign: 'center', py: 2, color: 'text.secondary' }}>\r\n <FolderOutlinedIcon sx={{ fontSize: 48, mb: 1, opacity: 0.5 }} />\r\n <Typography variant='body2'>No Media Rights Packages yet. Create your first package!</Typography>\r\n </Box>\r\n )\r\n }\r\n\r\n return (\r\n <List sx={{ maxHeight: 300, overflow: 'auto' }}>\r\n {groups.map((group) => (\r\n <CollectionItem key={group.id} group={group} isSelected={selectedGroupId === group.id} onSelect={onGroupSelect} />\r\n ))}\r\n </List>\r\n )\r\n}\r\n"],"names":["CollectionItem","_ref","group","isSelected","onSelect","_jsx","ListItem","disablePadding","children","_jsxs","ListItemButton","selected","onClick","id","sx","gap","borderRadius","bgcolor","Checkbox","checked","size","FolderOutlinedIcon","fontSize","Stack","direction","minWidth","flexGrow","alignItems","justifyContent","Typography","variant","noWrap","name","Chip","label","concat","items","length","CollectionsList","_ref2","groups","selectedGroupId","onGroupSelect","Box","textAlign","py","color","mb","opacity","List","maxHeight","overflow","map"],"mappings":"uOAWA,IAAMA,EAA0C,SAA5BC,GAAgE,IAAjCC,EAAKD,EAALC,MAAOC,EAAUF,EAAVE,WAAYC,EAAQH,EAARG,SACpE,OACEC,EAACC,EAAS,CAAAC,gBACR,EAAAC,SAAAC,EAACC,EAAc,CACbC,SAAUR,EACVS,QAAS,WAAF,OAAQR,EAASF,EAAMW,GAAG,EACjCC,GAAI,CACFC,IAAK,EACLC,aAAc,EACd,iBAAkB,CAChBC,QAAS,aACT,UAAW,CACTA,QAAS,iBAGdT,SAAA,CAEDH,EAACa,EAAQ,CAACC,QAAShB,EAAYiB,KAAK,UACpCf,EAACgB,GAAmBC,SAAS,UAC7Bb,EAACc,GAAMC,UAAU,MAAMT,IAAK,EAAGD,GAAI,CAAEW,SAAU,EAAGC,SAAU,EAAGC,WAAY,SAAUC,eAAgB,iBAAiBpB,SAAA,CACpHH,EAACwB,EAAU,CAACC,QAAQ,QAAQC,mBACzB7B,EAAM8B,OAET3B,EAAC4B,GAAKC,MAAK,GAAAC,OAAKjC,EAAMkC,MAAMC,OAAc,UAAEjB,KAAK,iBAK3D,EAQakB,EAA4C,SAA7BC,GAA4E,IAA5CC,EAAMD,EAANC,OAAQC,EAAeF,EAAfE,gBAAiBC,EAAaH,EAAbG,cACnF,OAAsB,IAAlBF,EAAOH,OAEP5B,EAACkC,EAAG,CAAC7B,GAAI,CAAE8B,UAAW,SAAUC,GAAI,EAAGC,MAAO,kBAAkBtC,SAAA,CAC9DH,EAACgB,EAAmB,CAAAP,GAAI,CAAEQ,SAAU,GAAIyB,GAAI,EAAGC,QAAS,MACxD3C,EAACwB,EAAW,CAAAC,QAAQ,QAAOtB,SAAA,gEAM/BH,EAAC4C,EAAK,CAAAnC,GAAI,CAAEoC,UAAW,IAAKC,SAAU,QACnC3C,SAAAgC,EAAOY,IAAI,SAAClD,GAAK,OAChBG,EAACL,EAAc,CAAgBE,MAAOA,EAAOC,WAAYsC,IAAoBvC,EAAMW,GAAIT,SAAUsC,GAA5ExC,EAAMW,GAC5B,IAGP"}
@@ -0,0 +1,2 @@
1
+ import{slicedToArray as t,objectSpread2 as n}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as i,Fragment as e,jsx as r}from"react/jsx-runtime";import{useState as o,useRef as l}from"react";import{IconButton as a,Dialog as c,DialogContent as s,Box as m,Stack as u,Typography as d,DialogActions as p,MobileStepper as h,Button as f}from"@mui/material";import x from"@mui/icons-material/HelpOutline";import g from"@mui/icons-material/Close";var b=function(b){var v=b.iconButtonProps,k=b.dialogProps,C=b.contentProps,z=b.steps,B=o(!1),y=t(B,2),w=y[0],j=y[1],H=o(0),P=t(H,2),W=P[0],I=P[1],S=l(0),X=function(){j(!1),I(0),S.current=0};return i(e,{children:[r(a,n(n({onClick:function(){return j(!0)},size:"small"},v),{},{children:r(x,{})})),i(c,n(n({open:w,onClose:X,maxWidth:"sm",fullWidth:!0},k),{},{children:[i(s,{sx:{p:2,pt:"39px",position:"relative",overflowX:"hidden",minHeight:260},children:[r(a,{"aria-label":"close",onClick:X,sx:{position:"absolute",right:8,top:8,color:function(t){return t.palette.grey[500]},zIndex:1},size:"small",children:r(g,{})}),r(m,{sx:{display:"flex",flexDirection:"row",width:"".concat(100*z.length,"%"),transform:"translateX(-".concat(W*(100/z.length),"%)"),transition:"transform 0.4s cubic-bezier(0.4, 0, 0.2, 1)"},children:z.map(function(t,e){var o;return i(u,n(n({alignItems:"start",width:"".concat(100/z.length,"%"),flexShrink:0,px:2},C),{},{children:[r("img",{src:t.img,alt:t.label,style:{maxWidth:"100%",marginInline:"auto",maxHeight:120,marginBottom:16}}),r(d,{variant:"h6",fontWeight:600,gutterBottom:!0,children:t.label}),null===(o=t.text)||void 0===o?void 0:o.split("\n").map(function(t,n){return r(d,{variant:0===n?"subtitle1":"body2",sx:{mb:0===n?1:0},children:t},n)}),t.content&&r(m,{sx:{mt:1,width:"100%"},children:t.content})]}),e)})})]}),i(p,{sx:{px:3,pb:3},children:[r(h,{variant:"dots",steps:z.length,position:"static",activeStep:W,sx:{background:"transparent",justifyContent:"center",mr:"auto"},nextButton:null,backButton:null}),W>0&&r(f,{onClick:function(){S.current=W,I(function(t){return t-1})},size:"small",children:"Back"}),W===z.length-1?r(f,{onClick:X,size:"small",variant:"contained",children:"Finish"}):r(f,{onClick:function(){S.current=W,I(function(t){return t+1})},size:"small",variant:"contained",children:"Next"})]})]}))]})};export{b as GuideSteps};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/media-right/guide-steps/index.tsx"],"sourcesContent":["import { useState, useRef } from 'react'\r\nimport { Dialog, DialogContent, DialogActions, Button, IconButton, Box, Typography, MobileStepper, Stack } from '@mui/material'\r\nimport HelpOutlineIcon from '@mui/icons-material/HelpOutline'\r\nimport CloseIcon from '@mui/icons-material/Close'\r\nimport type { FC } from 'react'\r\nimport type { DialogProps, IconButtonProps, StackProps } from '@mui/material'\r\n\r\nexport interface IGuideStep {\r\n label: string\r\n img: string\r\n text?: string\r\n content?: React.ReactNode\r\n}\r\n\r\nexport interface IGuideStepsProps {\r\n iconButtonProps?: IconButtonProps\r\n dialogProps?: DialogProps\r\n contentProps?: StackProps\r\n steps: IGuideStep[]\r\n}\r\n\r\nexport const GuideSteps: FC<IGuideStepsProps> = ({ iconButtonProps, dialogProps, contentProps, steps }) => {\r\n const [open, setOpen] = useState(false)\r\n const [activeStep, setActiveStep] = useState(0)\r\n const prevStep = useRef(0)\r\n\r\n const handleOpen = () => setOpen(true)\r\n const handleClose = () => {\r\n setOpen(false)\r\n setActiveStep(0)\r\n prevStep.current = 0\r\n }\r\n const handleNext = () => {\r\n prevStep.current = activeStep\r\n setActiveStep((prev) => prev + 1)\r\n }\r\n const handleBack = () => {\r\n prevStep.current = activeStep\r\n setActiveStep((prev) => prev - 1)\r\n }\r\n\r\n return (\r\n <>\r\n <IconButton onClick={handleOpen} size='small' {...iconButtonProps}>\r\n <HelpOutlineIcon />\r\n </IconButton>\r\n <Dialog open={open} onClose={handleClose} maxWidth='sm' fullWidth {...dialogProps}>\r\n <DialogContent sx={{ p: 2, pt: '39px', position: 'relative', overflowX: 'hidden', minHeight: 260 }}>\r\n <IconButton\r\n aria-label='close'\r\n onClick={handleClose}\r\n sx={{\r\n position: 'absolute',\r\n right: 8,\r\n top: 8,\r\n color: (theme) => theme.palette.grey[500],\r\n zIndex: 1\r\n }}\r\n size='small'\r\n >\r\n <CloseIcon />\r\n </IconButton>\r\n <Box\r\n sx={{\r\n display: 'flex',\r\n flexDirection: 'row',\r\n width: `${steps.length * 100}%`,\r\n transform: `translateX(-${activeStep * (100 / steps.length)}%)`,\r\n transition: 'transform 0.4s cubic-bezier(0.4, 0, 0.2, 1)'\r\n }}\r\n >\r\n {steps.map((step, idx) => (\r\n <Stack key={idx} alignItems='start' width={`${100 / steps.length}%`} flexShrink={0} px={2} {...contentProps}>\r\n <img src={step.img} alt={step.label} style={{ maxWidth: '100%', marginInline: 'auto', maxHeight: 120, marginBottom: 16 }} />\r\n <Typography variant='h6' fontWeight={600} gutterBottom>\r\n {step.label}\r\n </Typography>\r\n {step.text?.split('\\n').map((line, lineIdx) => (\r\n <Typography key={lineIdx} variant={lineIdx === 0 ? 'subtitle1' : 'body2'} sx={{ mb: lineIdx === 0 ? 1 : 0 }}>\r\n {line}\r\n </Typography>\r\n ))}\r\n {step.content && <Box sx={{ mt: 1, width: '100%' }}>{step.content}</Box>}\r\n </Stack>\r\n ))}\r\n </Box>\r\n </DialogContent>\r\n <DialogActions sx={{ px: 3, pb: 3 }}>\r\n <MobileStepper\r\n variant='dots'\r\n steps={steps.length}\r\n position='static'\r\n activeStep={activeStep}\r\n sx={{ background: 'transparent', justifyContent: 'center', mr: 'auto' }}\r\n nextButton={null}\r\n backButton={null}\r\n />\r\n {activeStep > 0 && (\r\n <Button onClick={handleBack} size='small'>\r\n Back\r\n </Button>\r\n )}\r\n {activeStep === steps.length - 1 ? (\r\n <Button onClick={handleClose} size='small' variant='contained'>\r\n Finish\r\n </Button>\r\n ) : (\r\n <Button onClick={handleNext} size='small' variant='contained'>\r\n Next\r\n </Button>\r\n )}\r\n </DialogActions>\r\n </Dialog>\r\n </>\r\n )\r\n}\r\n"],"names":["GuideSteps","_ref","iconButtonProps","dialogProps","contentProps","steps","_useState","useState","_useState2","_slicedToArray","open","setOpen","_useState3","_useState4","activeStep","setActiveStep","prevStep","useRef","handleClose","current","_jsxs","_Fragment","children","_jsx","IconButton","_objectSpread","onClick","size","HelpOutlineIcon","Dialog","onClose","maxWidth","fullWidth","DialogContent","sx","p","pt","position","overflowX","minHeight","right","top","color","theme","palette","grey","zIndex","CloseIcon","Box","display","flexDirection","width","concat","length","transform","transition","map","step","idx","_step$text","Stack","alignItems","flexShrink","px","src","img","alt","label","style","marginInline","maxHeight","marginBottom","Typography","variant","fontWeight","gutterBottom","text","split","line","lineIdx","mb","content","mt","DialogActions","pb","MobileStepper","background","justifyContent","mr","nextButton","backButton","Button","prev"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export{mediaRightStoreOptions}from"./configs.js";export{EChannelType}from"./types.js";export{MediaGroupWidget,createMediaGroupWidget}from"./media-widget/index.js";export{GroupSelectorModal,showGroupSelectorModal}from"./group-selector/index.js";export{useMediaRightActions,useMediaRightStore}from"./hook.js";export{areDuplicatedLink,canAddGroup,canAddItemToGroup,convertStringToLinks,generateGroupId}from"./helpers.js";
1
+ export{mediaRightStoreOptions}from"./configs.js";export{EChannelType}from"./types.js";export{GuideSteps}from"./guide-steps/index.js";export{MediaGroupWidget,createMediaGroupWidget}from"./media-widget/index.js";export{GroupSelectorModal,showGroupSelectorModal}from"./group-selector/index.js";export{useMediaRightActions,useMediaRightStore}from"./hook.js";export{areDuplicatedLink,canAddGroup,canAddItemToGroup,convertStringToLinks,generateGroupId}from"./helpers.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -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 p,Button as u}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 j}from"../hook.js";import{NewGroupArea as x}from"./new-group-area.js";import{canAddGroup as k,generateGroupId as y}from"../helpers.js";var C=function(C){var S,b=C.localStorageKey,G=C.hrefCart,M=C.buttonMoveToCartProps,P=C.onDetailClick,D=v({localStorageKey:b}).groups,O=j({localStorageKey:b}),w=i(null),z=o(w,2),I=z[0],K=z[1],T=function(o){O.addGroup({name:o,id:y()})},B=function(o){O.updateGroup(o.id,o)},E=function(o){O.removeGroup(o)},F=function(o,r){O.removeItem(o,r)};return e(t,{children:[n(h,{onClick:function(o){return K(o.currentTarget)},children:n(l,{badgeContent:D.length||0,color:"error",children:n(d,{})})}),n(f,{disableScrollLock:!0,anchorEl:I,open:Boolean(I),onClose:function(){return K(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!==(S=D.length)&&void 0!==S?S:0," Package",D.length>1?"s":"",")"]})}),k(D)&&n(x,{onSaveGroup:T}),0===D.length?n(s,{}):D.map(function(o){return n(g,{group:o,onEditGroup:B,onDeleteGroup:E,onDeleteMedia:F},o.id)}),n(p,{justifyContent:"end",flexDirection:"row",padding:"6px 12px",children:n(u,r(r(r({},G?{component:"a",href:G}:{}),{},{color:"inherit",size:"small",endIcon:n(m,{}),onClick:function(o){K(null),P&&P(o)},disabled:D.length<1},M),{},{children:"Show Package"}))})]})})]})},S=function(o){var e=function(e){return n(C,r(r({},o),e))};return e.displayName="MediaGroupWidget",e};export{C as MediaGroupWidget,S as createMediaGroupWidget};
1
+ import{slicedToArray as o,objectSpread2 as r}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as e,jsx as t,Fragment as n}from"react/jsx-runtime";import{useState as i,Fragment as a}from"react";import{Badge as l,Stack as p,Typography as c,Button as u}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 g}from"./styled.js";import{IconButtonDark as f}from"../../components/buttons.js";import{MediaGroupAccordion as h}from"./media-group-accordion.js";import{useMediaRightStore as x,useMediaRightActions as b}from"../hook.js";import{NewGroupArea as v}from"./new-group-area.js";import{canAddGroup as j,generateGroupId as k}from"../helpers.js";import{ItemTitlePropsContext as P}from"./item-title-props-context.js";var C=function(C){var S,y=C.localStorageKey,G=C.hrefCart,T=C.buttonMoveToCartProps,w=C.onDetailClick,z=x({localStorageKey:y}).groups,D=b({localStorageKey:y}),I=i(null),M=o(I,2),O=M[0],F=M[1],K=i(!1),B=o(K,2),E=B[0],_=B[1],A=function(o){D.addGroup({name:o,id:k()})},H=function(o){D.updateGroup(o.id,o)},L=function(o){D.removeGroup(o)},N=function(o,r){D.removeItem(o,r)};return e(a,{children:[t(f,{onClick:function(o){return F(o.currentTarget)},children:t(l,{badgeContent:z.length||0,color:"error",children:t(d,{})})}),t(g,{disableScrollLock:!0,anchorEl:O,open:Boolean(O),onClose:function(){return F(null)},anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:t(P.Provider,{value:{itemTitleProps:C.itemTitleProps,itemTitlePropsGetter:C.itemTitlePropsGetter,onClose:function(){return F(null)}},children:e(n,{children:[e(p,{alignItems:"start",spacing:1,sx:{padding:"12px 16px",position:"sticky",top:0,bgcolor:"background.paper",zIndex:2,boxShadow:"0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)"},children:[e(c,{variant:"h6",component:"span",sx:{flex:1},children:["Your Media Rights Package (",null!==(S=z.length)&&void 0!==S?S:0," Package",z.length>1?"s":"",")"]}),j(z)&&t(v,{onSaveGroup:A})]}),0===z.length?t(s,{}):z.map(function(o){return t(h,{group:o,onEditGroup:H,onDeleteGroup:L,onDeleteMedia:N,accordionProps:{expanded:E===o.id,onChange:function(r,e){return _(!!e&&o.id)}}},o.id)}),t(p,{justifyContent:"end",flexDirection:"row",padding:"6px 12px",sx:{position:"sticky",bottom:0,bgcolor:"background.paper",zIndex:1,boxShadow:"0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)"},children:t(u,r(r(r({},G?{component:"a",href:G}:{}),{},{color:"inherit",size:"small",endIcon:t(m,{}),onClick:function(o){F(null),w&&w(o)},disabled:z.length<1},T),{},{children:"Show Package"}))})]})})})]})},S=function(o){var e=function(e){return t(C,r(r({},o),e))};return e.displayName="MediaGroupWidget",e};export{C as MediaGroupWidget,S 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 { IconButtonDark } from '../../components/buttons'\r\nimport { MediaGroupAccordion } from './media-group-accordion'\r\nimport { useMediaRightStore, useMediaRightActions } from '../hook'\r\nimport { NewGroupArea } from './new-group-area'\r\nimport { canAddGroup, generateGroupId } from '../helpers'\r\n\r\nexport interface IMediaGroupWidgetProps {\r\n localStorageKey?: string\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n onDetailClick?: ButtonProps['onClick']\r\n}\r\n\r\nexport const MediaGroupWidget: React.FC<IMediaGroupWidgetProps> = (props) => {\r\n const { localStorageKey, hrefCart, buttonMoveToCartProps, onDetailClick } = props\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 {canAddGroup(groups) && <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={(e) => {\r\n setAnchorEl(null)\r\n if (onDetailClick) onDetailClick(e)\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","props","_groups$length","localStorageKey","hrefCart","buttonMoveToCartProps","onDetailClick","groups","useMediaRightStore","actions","useMediaRightActions","_useState","useState","_useState2","_slicedToArray","anchorEl","setAnchorEl","handleSaveNewGroup","groupName","addGroup","name","id","generateGroupId","handleEditGroup","group","updateGroup","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","canAddGroup","NewGroupArea","onSaveGroup","EmptyState","map","MediaGroupAccordion","onEditGroup","onDeleteGroup","onDeleteMedia","Stack","justifyContent","flexDirection","Button","_objectSpread","href","size","endIcon","DriveFileMoveOutlinedIcon","disabled","createMediaGroupWidget","params","_MediaGroupWidget","displayName"],"mappings":"yxBAoBaA,EAAqD,SAACC,GACjE,IAyB2BC,EAzBnBC,EAAoEF,EAApEE,gBAAiBC,EAAmDH,EAAnDG,SAAUC,EAAyCJ,EAAzCI,sBAAuBC,EAAkBL,EAAlBK,cAClDC,EAAWC,EAAmB,CAAEL,gBAAAA,IAAhCI,OACFE,EAAUC,EAAqB,CAAEP,gBAAAA,IAEvCQ,EAAgCC,EAA6B,MAAKC,EAAAC,EAAAH,EAAA,GAA3DI,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAEtBI,EAAqB,SAACC,GAC1BT,EAAQU,SAAS,CACfC,KAAMF,EACNG,GAAIC,KAEP,EAEKC,EAAkB,SAACC,GACvBf,EAAQgB,YAAYD,EAAMH,GAAIG,EAC/B,EAEKE,EAAoB,SAACC,GACzBlB,EAAQmB,YAAYD,EACrB,EAEKE,EAAoB,SAACF,EAAiBG,GAC1CrB,EAAQsB,WAAWJ,EAASG,EAC7B,EA8CD,OACEE,EAACC,EAAQ,CAAAC,SAAA,CACPC,EAACC,EAAc,CAACC,QAAS,SAACC,GAAC,OAAKtB,EAAYsB,EAAEC,cAAc,EAAAL,SAC1DC,EAACK,EAAM,CAAAC,aAAclC,EAAOmC,QAAU,EAAGC,MAAM,QAAOT,SACpDC,EAACS,UAGLT,EAACU,EAAU,CACTC,mBACA,EAAA/B,SAAUA,EACVgC,KAAMC,QAAQjC,GACdkC,QAAS,WAAF,OAAQjC,EAAY,KAAK,EAChCkC,aAAc,CAAEC,SAAU,MAAOC,WAAY,SAC7CC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,SAChDE,cAAe,CAAEC,UAAW,OAAOrB,SAxDrCF,EAACwB,EAAG,CAAAtB,SAAA,CACFC,EAACqB,EAAG,CAACC,GAAI,CAAEC,QAAS,OAAQC,WAAY,SAAUC,QAAS,sBACzD5B,EAAC6B,GAAWC,QAAQ,KAAKP,UAAU,OAAOE,GAAI,CAAEM,KAAM,GACxB7B,SAAA,CAAA,8BAAa,QAAbhC,EAAAK,EAAOmC,cAAM,IAAAxC,EAAAA,EAAI,EAAW,WAAAK,EAAOmC,OAAS,EAAI,IAAM,YAIrFsB,EAAYzD,IAAW4B,EAAC8B,EAAa,CAAAC,YAAajD,IAChC,IAAlBV,EAAOmC,OACNP,EAACgC,MAED5D,EAAO6D,IAAI,SAAC5C,GAAK,OACfW,EAACkC,GAEC7C,MAAOA,EACP8C,YAAa/C,EACbgD,cAAe7C,EACf8C,cAAe3C,GAJVL,EAAMH,GAKX,GAINc,EAACsC,GAAMC,eAAgB,MAAOC,cAAe,MAAOf,QAAS,oBAC3DzB,EAACyC,EAAMC,EAAAA,EAAAA,EACAzE,CAAAA,EAAAA,EAAW,CAAEmD,UAAW,IAAKuB,KAAM1E,GAAa,CAAA,GAAE,GAAA,CACvDuC,MAAM,UACNoC,KAAK,QACLC,QAAS7C,EAAC8C,MACV5C,QAAS,SAACC,GACRtB,EAAY,MACRV,GAAeA,EAAcgC,EAClC,EACD4C,SAAU3E,EAAOmC,OAAS,GACtBrC,GAAqB,GAAA,CAAA6B,SAAA,2BA6BrC,EAEaiD,EAAyB,SAACC,GACrC,IAAMC,EAA+D,SAACpF,GAAK,OAAKkC,EAACnC,EAAgB6E,EAAAA,EAAA,CAAA,EAAKO,GAAYnF,GAAS,EAE3H,OADAoF,EAAkBC,YAAc,mBACzBD,CACT"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/media-right/media-widget/index.tsx"],"sourcesContent":["import { Fragment, useState } from 'react'\r\nimport { Badge, 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 { IconButtonDark } from '../../components/buttons'\r\nimport { MediaGroupAccordion } from './media-group-accordion'\r\nimport { useMediaRightStore, useMediaRightActions } from '../hook'\r\nimport { NewGroupArea } from './new-group-area'\r\nimport { canAddGroup, generateGroupId } from '../helpers'\r\nimport { ItemTitlePropsContext } from './item-title-props-context'\r\nimport type { ITitlePropsContextValue } from './item-title-props-context'\r\nimport type { IMediaRightGroup } from '../types'\r\n\r\nexport interface IMediaGroupWidgetProps extends ITitlePropsContextValue {\r\n localStorageKey?: string\r\n hrefCart?: string\r\n buttonMoveToCartProps?: ButtonProps & { [key: string]: any }\r\n onDetailClick?: ButtonProps['onClick']\r\n}\r\n\r\nexport const MediaGroupWidget: React.FC<IMediaGroupWidgetProps> = (props) => {\r\n const { localStorageKey, hrefCart, buttonMoveToCartProps, onDetailClick } = props\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 const [expandedGroupId, setExpandedGroupId] = useState<string | false>(false)\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 <>\r\n <Stack\r\n alignItems={'start'}\r\n spacing={1}\r\n sx={{\r\n padding: '12px 16px',\r\n position: 'sticky',\r\n top: 0,\r\n bgcolor: 'background.paper',\r\n zIndex: 2,\r\n boxShadow: '0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)'\r\n }}\r\n >\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 {canAddGroup(groups) && <NewGroupArea onSaveGroup={handleSaveNewGroup} />}\r\n </Stack>\r\n {/* <Divider /> */}\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 accordionProps={{\r\n expanded: expandedGroupId === group.id,\r\n onChange: (_, isExpanded) => setExpandedGroupId(isExpanded ? group.id : false)\r\n }}\r\n />\r\n ))\r\n )}\r\n {/* <Divider /> */}\r\n <Stack\r\n justifyContent={'end'}\r\n flexDirection={'row'}\r\n padding={'6px 12px'}\r\n sx={{ position: 'sticky', bottom: 0, bgcolor: 'background.paper', zIndex: 1, boxShadow: '0px 0.5px 5px 0px rgba(0, 0, 0, 0.15)' }}\r\n >\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={(e) => {\r\n setAnchorEl(null)\r\n if (onDetailClick) onDetailClick(e)\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 </>\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 >\r\n <ItemTitlePropsContext.Provider\r\n value={{\r\n itemTitleProps: props.itemTitleProps,\r\n itemTitlePropsGetter: props.itemTitlePropsGetter,\r\n onClose: () => setAnchorEl(null)\r\n }}\r\n >\r\n {renderContent()}\r\n </ItemTitlePropsContext.Provider>\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","props","_groups$length","localStorageKey","hrefCart","buttonMoveToCartProps","onDetailClick","groups","useMediaRightStore","actions","useMediaRightActions","_useState","useState","_useState2","_slicedToArray","anchorEl","setAnchorEl","_useState3","_useState4","expandedGroupId","setExpandedGroupId","handleSaveNewGroup","groupName","addGroup","name","id","generateGroupId","handleEditGroup","group","updateGroup","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","ItemTitlePropsContext","Provider","value","itemTitleProps","itemTitlePropsGetter","_Fragment","Stack","alignItems","spacing","sx","padding","position","top","bgcolor","zIndex","boxShadow","Typography","variant","component","flex","canAddGroup","NewGroupArea","onSaveGroup","EmptyState","map","MediaGroupAccordion","onEditGroup","onDeleteGroup","onDeleteMedia","accordionProps","expanded","onChange","_","isExpanded","justifyContent","flexDirection","bottom","Button","_objectSpread","href","size","endIcon","DriveFileMoveOutlinedIcon","disabled","createMediaGroupWidget","params","_MediaGroupWidget","displayName"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{createContext as r,useContext as o}from"react";var t=r(void 0),e=function(){return o(t)};export{t as ItemTitlePropsContext,e as useItemTitleProps};
2
+ //# sourceMappingURL=item-title-props-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-title-props-context.js","sources":["../../../src/media-right/media-widget/item-title-props-context.tsx"],"sourcesContent":["import { createContext, useContext } from 'react'\r\nimport type { IMediaRightItem } from '../types'\r\nimport type { TypographyProps } from '@mui/material'\r\n\r\nexport type ITypographyProps = TypographyProps & { [key: string]: any }\r\n\r\nexport type GetItemTitleProps = (item: IMediaRightItem) => ITypographyProps\r\n\r\nexport interface ITitlePropsContextValue {\r\n itemTitleProps?: ITypographyProps\r\n itemTitlePropsGetter?: (item: IMediaRightItem) => ITypographyProps\r\n onClose?: () => void\r\n}\r\n\r\nexport const ItemTitlePropsContext = createContext<ITitlePropsContextValue | undefined>(undefined)\r\n\r\nexport const useItemTitleProps = () => useContext(ItemTitlePropsContext)"],"names":["ItemTitlePropsContext","createContext","undefined","useItemTitleProps","useContext"],"mappings":"0DAcaA,EAAwBC,OAAmDC,GAE3EC,EAAoB,WAAH,OAASC,EAAWJ,EAAsB"}
@@ -1,2 +1,2 @@
1
- import{slicedToArray as i,objectSpread2 as e}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as t,jsx as n}from"react/jsx-runtime";import{useState as o}from"react";import{Accordion as r,AccordionSummary as m,Box as l,Typography as a,Chip as s,IconButton as d,AccordionDetails as p}from"@mui/material";import c from"@mui/icons-material/Edit";import u from"@mui/icons-material/ExpandMore";import f from"@mui/icons-material/FolderOutlined";import{MediaList as x}from"./media-list.js";import{DeleteButton as h}from"./button.delete.js";import{InlineEditing as g}from"./inline-editing.js";import{mediaRightStoreOptions as j}from"../configs.js";var S=function(S){var W=S.group,b=S.onEditGroup,z=S.onDeleteGroup,E=S.onDeleteMedia,M=o(!1),y=i(M,2),v=y[0],A=y[1];return t(r,{sx:{my:"0 !important"},children:[n(m,{expandIcon:n(u,{}),sx:{minWidth:0,"& .MuiAccordionSummary-content":{minWidth:0,margin:0}},children:t(l,{sx:{display:"flex",alignItems:"center",flex:1,gap:1,minWidth:0},children:[n(f,{fontSize:"small"}),t(g,{isEdit:v,setShowEdit:A,onSubmit:function(i){b(e(e({},W),{},{name:i})),A(!1)},defaultValue:W.name,textField:{inputProps:{maxLength:j.MAX_NAME_GROUP},sx:{flex:1,minWidth:0,"& .MuiOutlinedInput-root":{height:"32px"}}},sxForm:{flex:1},children:[n(a,{variant:"body2",noWrap:!0,fontWeight:600,sx:{flex:1,minWidth:0},children:W.name}),n(s,{sx:{fontSize:"12px"},label:"".concat(W.items.length," items"),size:"small"}),n(d,{size:"small",onClick:function(i){i.stopPropagation(),A(!0)},color:"success",children:n(c,{fontSize:"small"})}),n(h,{onDelete:function(){return z(W.id)},size:"small"})]},W.id+W.name+v)]})}),n(p,{sx:{p:0},children:n(x,{medias:W.items,onDelete:function(i){return E(W.id,i)}})})]})};export{S as MediaGroupAccordion};
1
+ import{slicedToArray as i,objectSpread2 as e}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as t,jsx as o}from"react/jsx-runtime";import{useState as n}from"react";import{Accordion as r,AccordionSummary as m,Box as l,Typography as a,Chip as s,IconButton as d,AccordionDetails as c}from"@mui/material";import p from"@mui/icons-material/Edit";import u from"@mui/icons-material/ExpandMore";import f from"@mui/icons-material/FolderOutlined";import{MediaList as x}from"./media-list.js";import{DeleteButton as h}from"./button.delete.js";import{InlineEditing as g}from"./inline-editing.js";import{mediaRightStoreOptions as j}from"../configs.js";var S=function(S){var W=S.group,b=S.accordionProps,z=S.onEditGroup,E=S.onDeleteGroup,M=S.onDeleteMedia,v=n(!1),y=i(v,2),P=y[0],A=y[1];return t(r,e(e({},b),{},{sx:e({my:"0 !important"},null==b?void 0:b.sx),children:[o(m,{expandIcon:o(u,{}),sx:{minWidth:0,"& .MuiAccordionSummary-content":{minWidth:0,margin:0}},children:t(l,{sx:{display:"flex",alignItems:"center",flex:1,gap:1,minWidth:0},children:[o(f,{fontSize:"small"}),t(g,{isEdit:P,setShowEdit:A,onSubmit:function(i){z(e(e({},W),{},{name:i})),A(!1)},defaultValue:W.name,textField:{inputProps:{maxLength:j.MAX_NAME_GROUP},sx:{flex:1,minWidth:0,"& .MuiOutlinedInput-root":{height:"32px"}}},sxForm:{flex:1},children:[o(a,{variant:"body2",noWrap:!0,title:W.name,fontWeight:600,sx:{flex:1,minWidth:0},children:W.name}),o(s,{sx:{fontSize:"12px"},label:"".concat(W.items.length," items"),size:"small"}),o(d,{size:"small",onClick:function(i){i.stopPropagation(),A(!0)},color:"success",children:o(p,{fontSize:"small"})}),o(h,{onDelete:function(){return E(W.id)},size:"small"})]},W.id+W.name+P)]})}),o(c,{sx:{p:0},children:o(x,{medias:W.items,onDelete:function(i){return M(W.id,i)}})})]}))};export{S as MediaGroupAccordion};
2
2
  //# sourceMappingURL=media-group-accordion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-group-accordion.js","sources":["../../../src/media-right/media-widget/media-group-accordion.tsx"],"sourcesContent":["import { useState } from 'react'\r\nimport { Accordion, AccordionSummary, AccordionDetails, Box, Typography, Chip, IconButton } from '@mui/material'\r\nimport type { FC, MouseEvent } from 'react'\r\nimport EditIcon from '@mui/icons-material/Edit'\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore'\r\nimport FolderOutlinedIcon from '@mui/icons-material/FolderOutlined'\r\nimport { MediaList } from './media-list'\r\nimport { IMediaRightGroup } from '../types'\r\nimport { DeleteButton } from './button.delete'\r\nimport { InlineEditing } from './inline-editing'\r\nimport { mediaRightStoreOptions } from '../configs'\r\nimport { fontSize } from '@mui/system'\r\n\r\nexport interface IMediaGroupAccordionProps {\r\n group: IMediaRightGroup\r\n onEditGroup: (group: IMediaRightGroup) => void\r\n onDeleteGroup: (groupId: string) => void\r\n onDeleteMedia: (groupId: string, mediaId: string) => void\r\n}\r\n\r\nexport const MediaGroupAccordion: FC<IMediaGroupAccordionProps> = ({ group, onEditGroup, onDeleteGroup, onDeleteMedia }) => {\r\n const [isEditing, setIsEditing] = useState(false)\r\n\r\n const handleSaveEdit = (value: string) => {\r\n onEditGroup({ ...group, name: value })\r\n setIsEditing(false)\r\n }\r\n\r\n const handleEditClick = (e: MouseEvent) => {\r\n e.stopPropagation()\r\n setIsEditing(true)\r\n }\r\n\r\n return (\r\n <Accordion sx={{ my: '0 !important' }}>\r\n <AccordionSummary expandIcon={<ExpandMoreIcon />} sx={{ minWidth: 0, '& .MuiAccordionSummary-content': { minWidth: 0, margin: 0 } }}>\r\n <Box sx={{ display: 'flex', alignItems: 'center', flex: 1, gap: 1, minWidth: 0 }}>\r\n <FolderOutlinedIcon fontSize='small' />\r\n <InlineEditing\r\n key={group.id + group.name + isEditing}\r\n isEdit={isEditing}\r\n setShowEdit={setIsEditing}\r\n onSubmit={handleSaveEdit}\r\n defaultValue={group.name}\r\n textField={{\r\n inputProps: { maxLength: mediaRightStoreOptions.MAX_NAME_GROUP },\r\n sx: { flex: 1, minWidth: 0, '& .MuiOutlinedInput-root': { height: '32px' } }\r\n }}\r\n sxForm={{ flex: 1 }}\r\n >\r\n <Typography variant='body2' noWrap fontWeight={600} sx={{ flex: 1, minWidth: 0 }}>\r\n {group.name}\r\n </Typography>\r\n <Chip sx={{fontSize: '12px'}} label={`${group.items.length} items`} size='small' />\r\n <IconButton size='small' onClick={handleEditClick} color=\"success\">\r\n <EditIcon fontSize='small' />\r\n </IconButton>\r\n <DeleteButton onDelete={() => onDeleteGroup(group.id)} size='small' />\r\n </InlineEditing>\r\n </Box>\r\n </AccordionSummary>\r\n <AccordionDetails sx={{ p: 0 }}>\r\n <MediaList medias={group.items} onDelete={(mediaId) => onDeleteMedia(group.id, mediaId)} />\r\n </AccordionDetails>\r\n </Accordion>\r\n )\r\n}\r\n"],"names":["MediaGroupAccordion","_ref","group","onEditGroup","onDeleteGroup","onDeleteMedia","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_jsxs","Accordion","sx","my","children","_jsx","AccordionSummary","expandIcon","ExpandMoreIcon","minWidth","margin","Box","display","alignItems","flex","gap","FolderOutlinedIcon","fontSize","InlineEditing","isEdit","setShowEdit","onSubmit","value","_objectSpread","name","defaultValue","textField","inputProps","maxLength","mediaRightStoreOptions","MAX_NAME_GROUP","height","sxForm","Typography","variant","noWrap","fontWeight","Chip","label","concat","items","length","size","IconButton","onClick","e","stopPropagation","color","EditIcon","DeleteButton","onDelete","id","AccordionDetails","p","MediaList","medias","mediaId"],"mappings":"gpBAoBaA,EAAqD,SAAlCC,GAA2F,IAAtDC,EAAKD,EAALC,MAAOC,EAAWF,EAAXE,YAAaC,EAAaH,EAAbG,cAAeC,EAAaJ,EAAbI,cACtGC,EAAkCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAY9B,OACEI,EAACC,EAAS,CAACC,GAAI,CAAEC,GAAI,gBACnBC,SAAA,CAAAC,EAACC,EAAiB,CAAAC,WAAYF,EAACG,EAAiB,IAAEN,GAAI,CAAEO,SAAU,EAAG,iCAAkC,CAAEA,SAAU,EAAGC,OAAQ,IAC5HN,SAAAJ,EAACW,EAAI,CAAAT,GAAI,CAAEU,QAAS,OAAQC,WAAY,SAAUC,KAAM,EAAGC,IAAK,EAAGN,SAAU,aAC3EJ,EAACW,EAAmB,CAAAC,SAAS,UAC7BjB,EAACkB,EAEC,CAAAC,OAAQrB,EACRsB,YAAarB,EACbsB,SAnBa,SAACC,GACtB/B,EAAWgC,EAAAA,KAAMjC,GAAK,CAAA,EAAA,CAAEkC,KAAMF,KAC9BvB,GAAa,EACd,EAiBS0B,aAAcnC,EAAMkC,KACpBE,UAAW,CACTC,WAAY,CAAEC,UAAWC,EAAuBC,gBAChD5B,GAAI,CAAEY,KAAM,EAAGL,SAAU,EAAG,2BAA4B,CAAEsB,OAAQ,UAEpEC,OAAQ,CAAElB,KAAM,GAAGV,SAAA,CAEnBC,EAAC4B,GAAWC,QAAQ,QAAQC,QAAO,EAAAC,WAAY,IAAKlC,GAAI,CAAEY,KAAM,EAAGL,SAAU,GAAGL,SAC7Ed,EAAMkC,OAETnB,EAACgC,EAAI,CAACnC,GAAI,CAACe,SAAU,QAASqB,MAAK,GAAAC,OAAKjD,EAAMkD,MAAMC,OAAc,UAAEC,KAAK,UACzErC,EAACsC,GAAWD,KAAK,QAAQE,QA1BX,SAACC,GACvBA,EAAEC,kBACF/C,GAAa,EACd,EAuB4DgD,MAAM,UACvD3C,SAAAC,EAAC2C,EAAQ,CAAC/B,SAAS,YAErBZ,EAAC4C,EAAa,CAAAC,SAAU,WAAF,OAAQ1D,EAAcF,EAAM6D,GAAG,EAAET,KAAK,YAlBvDpD,EAAM6D,GAAK7D,EAAMkC,KAAO1B,QAsBnCO,EAAC+C,GAAiBlD,GAAI,CAAEmD,EAAG,GACzBjD,SAAAC,EAACiD,EAAU,CAAAC,OAAQjE,EAAMkD,MAAOU,SAAU,SAACM,GAAO,OAAK/D,EAAcH,EAAM6D,GAAIK,EAAQ,QAI/F"}
1
+ {"version":3,"file":"media-group-accordion.js","sources":["../../../src/media-right/media-widget/media-group-accordion.tsx"],"sourcesContent":["import { useState } from 'react'\r\nimport { Accordion, AccordionSummary, AccordionDetails, Box, Typography, Chip, IconButton, AccordionProps } from '@mui/material'\r\nimport type { FC, MouseEvent } from 'react'\r\nimport type { IMediaRightGroup } from '../types'\r\nimport EditIcon from '@mui/icons-material/Edit'\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore'\r\nimport FolderOutlinedIcon from '@mui/icons-material/FolderOutlined'\r\nimport { MediaList } from './media-list'\r\nimport { DeleteButton } from './button.delete'\r\nimport { InlineEditing } from './inline-editing'\r\nimport { mediaRightStoreOptions } from '../configs'\r\n\r\nexport interface IMediaGroupAccordionProps {\r\n group: IMediaRightGroup\r\n accordionProps?: Partial<AccordionProps>\r\n onEditGroup: (group: IMediaRightGroup) => void\r\n onDeleteGroup: (groupId: string) => void\r\n onDeleteMedia: (groupId: string, mediaId: string) => void\r\n}\r\n\r\nexport const MediaGroupAccordion: FC<IMediaGroupAccordionProps> = ({ group, accordionProps, onEditGroup, onDeleteGroup, onDeleteMedia }) => {\r\n const [isEditing, setIsEditing] = useState(false)\r\n\r\n const handleSaveEdit = (value: string) => {\r\n onEditGroup({ ...group, name: value })\r\n setIsEditing(false)\r\n }\r\n\r\n const handleEditClick = (e: MouseEvent) => {\r\n e.stopPropagation()\r\n setIsEditing(true)\r\n }\r\n\r\n return (\r\n <Accordion {...accordionProps} sx={{ my: '0 !important', ...accordionProps?.sx }}>\r\n <AccordionSummary expandIcon={<ExpandMoreIcon />} sx={{ minWidth: 0, '& .MuiAccordionSummary-content': { minWidth: 0, margin: 0 } }}>\r\n <Box sx={{ display: 'flex', alignItems: 'center', flex: 1, gap: 1, minWidth: 0 }}>\r\n <FolderOutlinedIcon fontSize='small' />\r\n <InlineEditing\r\n key={group.id + group.name + isEditing}\r\n isEdit={isEditing}\r\n setShowEdit={setIsEditing}\r\n onSubmit={handleSaveEdit}\r\n defaultValue={group.name}\r\n textField={{\r\n inputProps: { maxLength: mediaRightStoreOptions.MAX_NAME_GROUP },\r\n sx: { flex: 1, minWidth: 0, '& .MuiOutlinedInput-root': { height: '32px' } }\r\n }}\r\n sxForm={{ flex: 1 }}\r\n >\r\n <Typography variant='body2' noWrap title={group.name} fontWeight={600} sx={{ flex: 1, minWidth: 0 }}>\r\n {group.name}\r\n </Typography>\r\n <Chip sx={{ fontSize: '12px' }} label={`${group.items.length} items`} size='small' />\r\n <IconButton size='small' onClick={handleEditClick} color='success'>\r\n <EditIcon fontSize='small' />\r\n </IconButton>\r\n <DeleteButton onDelete={() => onDeleteGroup(group.id)} size='small' />\r\n </InlineEditing>\r\n </Box>\r\n </AccordionSummary>\r\n <AccordionDetails sx={{ p: 0 }}>\r\n <MediaList medias={group.items} onDelete={(mediaId) => onDeleteMedia(group.id, mediaId)} />\r\n </AccordionDetails>\r\n </Accordion>\r\n )\r\n}\r\n"],"names":["MediaGroupAccordion","_ref","group","accordionProps","onEditGroup","onDeleteGroup","onDeleteMedia","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_jsxs","Accordion","_objectSpread","sx","my","_jsx","AccordionSummary","expandIcon","ExpandMoreIcon","minWidth","margin","children","Box","display","alignItems","flex","gap","FolderOutlinedIcon","fontSize","InlineEditing","isEdit","setShowEdit","onSubmit","value","name","defaultValue","textField","inputProps","maxLength","mediaRightStoreOptions","MAX_NAME_GROUP","height","sxForm","Typography","variant","noWrap","title","fontWeight","Chip","label","concat","items","length","size","IconButton","onClick","e","stopPropagation","color","EditIcon","DeleteButton","onDelete","id","AccordionDetails","p","MediaList","medias","mediaId"],"mappings":"gpBAoBaA,EAAqD,SAAlCC,GAA2G,IAAtEC,EAAKD,EAALC,MAAOC,EAAcF,EAAdE,eAAgBC,EAAWH,EAAXG,YAAaC,EAAaJ,EAAbI,cAAeC,EAAaL,EAAbK,cACtHC,EAAkCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAY9B,OACEI,EAACC,EAASC,EAAAA,KAAKZ,GAAc,GAAA,CAAEa,GAAED,EAAA,CAAIE,GAAI,gBAAmBd,eAAAA,EAAgBa,cAC1EE,EAACC,EAAiB,CAAAC,WAAYF,EAACG,EAAiB,IAAEL,GAAI,CAAEM,SAAU,EAAG,iCAAkC,CAAEA,SAAU,EAAGC,OAAQ,IAAKC,SACjIX,EAACY,EAAI,CAAAT,GAAI,CAAEU,QAAS,OAAQC,WAAY,SAAUC,KAAM,EAAGC,IAAK,EAAGP,SAAU,GAAGE,SAAA,CAC9EN,EAACY,EAAmB,CAAAC,SAAS,UAC7BlB,EAACmB,EAAa,CAEZC,OAAQtB,EACRuB,YAAatB,EACbuB,SAnBa,SAACC,GACtBhC,EAAWW,EAAAA,KAAMb,GAAK,CAAA,EAAA,CAAEmC,KAAMD,KAC9BxB,GAAa,EACd,EAiBS0B,aAAcpC,EAAMmC,KACpBE,UAAW,CACTC,WAAY,CAAEC,UAAWC,EAAuBC,gBAChD3B,GAAI,CAAEY,KAAM,EAAGN,SAAU,EAAG,2BAA4B,CAAEsB,OAAQ,UAEpEC,OAAQ,CAAEjB,KAAM,GAAGJ,SAAA,CAEnBN,EAAC4B,GAAWC,QAAQ,QAAQC,UAAOC,MAAO/C,EAAMmC,KAAMa,WAAY,IAAKlC,GAAI,CAAEY,KAAM,EAAGN,SAAU,GAC7FE,SAAAtB,EAAMmC,OAETnB,EAACiC,EAAI,CAACnC,GAAI,CAAEe,SAAU,QAAUqB,MAAK,GAAAC,OAAKnD,EAAMoD,MAAMC,OAAc,UAAEC,KAAK,UAC3EtC,EAACuC,EAAW,CAAAD,KAAK,QAAQE,QA1BX,SAACC,GACvBA,EAAEC,kBACFhD,GAAa,EACd,EAuB4DiD,MAAM,UAASrC,SAChEN,EAAC4C,EAAQ,CAAC/B,SAAS,YAErBb,EAAC6C,EAAa,CAAAC,SAAU,WAAF,OAAQ3D,EAAcH,EAAM+D,GAAG,EAAET,KAAK,YAlBvDtD,EAAM+D,GAAK/D,EAAMmC,KAAO1B,QAsBnCO,EAACgD,EAAgB,CAAClD,GAAI,CAAEmD,EAAG,YACzBjD,EAACkD,GAAUC,OAAQnE,EAAMoD,MAAOU,SAAU,SAACM,GAAO,OAAKhE,EAAcJ,EAAM+D,GAAIK,EAAQ,SAI/F"}
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{ImageWithFallback as r}from"dinocollab-core/components";import{Typography as i,List as o,ListItem as n,ListItemSecondaryAction as l}from"@mui/material";import{DeleteButton as a}from"./button.delete.js";var c=function(c){var d=c.medias,u=c.onDelete;return 0===d.length?e(i,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",py:2},children:"No media in this package yet"}):e(o,{children:d.map(function(o){return t(n,{sx:{gap:1,alignItems:"center"},children:[e(r,{src:null==o?void 0:o.PictureUrl,title:null==o?void 0:o.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture",style:{width:"50px",height:"50px",borderRadius:3,objectFit:"cover",flex:"0 0 auto"}}),e(i,{noWrap:!0,variant:"subtitle1",fontWeight:500,sx:{flexGrow:1},children:o.ProductName}),e(l,{children:e(a,{onDelete:function(){return u(o.ProductId)},size:"small"})})]},o.MediaId)})})};export{c as MediaList};
1
+ import{objectSpread2 as e}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsx as t,jsxs as r}from"react/jsx-runtime";import{ImageWithFallback as o}from"dinocollab-core/components";import{useItemTitleProps as i}from"./item-title-props-context.js";import{Typography as l,List as n,ListItem as a}from"@mui/material";import{DeleteButton as c}from"./button.delete.js";var m=function(m){var u=m.medias,d=m.onDelete,p=i()||{},s=p.itemTitleProps,f=p.itemTitlePropsGetter,x=p.onClose;return 0===u.length?t(l,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",py:2},children:"No media in this package yet"}):t(n,{children:u.map(function(i){return r(a,{sx:{gap:1,alignItems:"center"},children:[t(o,{src:null==i?void 0:i.PictureUrl,title:null==i?void 0:i.PictureUrl,fallbackSrc:"images/default-video.webp",alt:"product-picture",style:{width:"50px",height:"50px",borderRadius:3,objectFit:"cover",flex:"0 0 auto"}}),t(l,e(e({noWrap:!0,variant:"subtitle1",fontWeight:500,sx:{flexGrow:1},title:i.ProductName},f?f(i):null!=s?s:{}),{},{onClick:x,children:i.ProductName})),t(c,{onDelete:function(){return d(i.ProductId)},size:"small"})]},i.MediaId)})})};export{m as MediaList};
2
2
  //# sourceMappingURL=media-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-list.js","sources":["../../../src/media-right/media-widget/media-list.tsx"],"sourcesContent":["import { ImageWithFallback } from 'dinocollab-core/components'\r\nimport { List, ListItem, ListItemSecondaryAction, Typography } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport { IMediaRightItem } from '../types'\r\nimport { DeleteButton } from './button.delete'\r\n\r\nexport interface IMediaListProps {\r\n medias: IMediaRightItem[]\r\n onDelete: (mediaId: string) => void\r\n}\r\n\r\nexport const MediaList: FC<IMediaListProps> = ({ medias, onDelete }) => {\r\n if (medias.length === 0) {\r\n return (\r\n <Typography variant='body2' color='text.secondary' sx={{ textAlign: 'center', py: 2 }}>\r\n No media in this package yet\r\n </Typography>\r\n )\r\n }\r\n\r\n return (\r\n <List>\r\n {medias.map((media) => (\r\n <ListItem key={media.MediaId} sx={{ gap: 1, alignItems: 'center' }}>\r\n <ImageWithFallback\r\n src={media?.PictureUrl}\r\n title={media?.PictureUrl}\r\n fallbackSrc='images/default-video.webp'\r\n alt='product-picture'\r\n style={{\r\n width: '50px',\r\n height: '50px',\r\n borderRadius: 3,\r\n objectFit: 'cover',\r\n flex: '0 0 auto'\r\n }}\r\n />\r\n <Typography noWrap variant='subtitle1' fontWeight={500} sx={{ flexGrow: 1 }}>\r\n {media.ProductName}\r\n </Typography>\r\n <ListItemSecondaryAction>\r\n <DeleteButton onDelete={() => onDelete(media.ProductId)} size='small' />\r\n </ListItemSecondaryAction>\r\n </ListItem>\r\n ))}\r\n </List>\r\n )\r\n}\r\n"],"names":["MediaList","_ref","medias","onDelete","length","_jsx","Typography","variant","color","sx","textAlign","py","children","List","map","media","_jsxs","ListItem","gap","alignItems","ImageWithFallback","src","PictureUrl","title","fallbackSrc","alt","style","width","height","borderRadius","objectFit","flex","noWrap","fontWeight","flexGrow","ProductName","ListItemSecondaryAction","DeleteButton","ProductId","size","MediaId"],"mappings":"uQAWaA,EAAiC,SAAxBC,GAAiD,IAAtBC,EAAMD,EAANC,OAAQC,EAAQF,EAARE,SACvD,OAAsB,IAAlBD,EAAOE,OAEPC,EAACC,EAAW,CAAAC,QAAQ,QAAQC,MAAM,iBAAiBC,GAAI,CAAEC,UAAW,SAAUC,GAAI,GAErEC,SAAA,iCAKfP,EAACQ,EACE,CAAAD,SAAAV,EAAOY,IAAI,SAACC,GAAK,OAChBC,EAACC,EAAQ,CAAqBR,GAAI,CAAES,IAAK,EAAGC,WAAY,UAAUP,SAAA,CAChEP,EAACe,EACC,CAAAC,IAAKN,aAAAA,EAAAA,EAAOO,WACZC,MAAOR,aAAAA,EAAAA,EAAOO,WACdE,YAAY,4BACZC,IAAI,kBACJC,MAAO,CACLC,MAAO,OACPC,OAAQ,OACRC,aAAc,EACdC,UAAW,QACXC,KAAM,cAGV1B,EAACC,EAAW,CAAA0B,QAAO,EAAAzB,QAAQ,YAAY0B,WAAY,IAAKxB,GAAI,CAAEyB,SAAU,GACrEtB,SAAAG,EAAMoB,cAET9B,EAAC+B,EACC,CAAAxB,SAAAP,EAACgC,EAAY,CAAClC,SAAU,WAAF,OAAQA,EAASY,EAAMuB,UAAU,EAAEC,KAAK,cAlBnDxB,EAAMyB,QAqBtB,IAGP"}
1
+ {"version":3,"file":"media-list.js","sources":["../../../src/media-right/media-widget/media-list.tsx"],"sourcesContent":["import { ImageWithFallback } from 'dinocollab-core/components'\r\nimport { useItemTitleProps } from './item-title-props-context'\r\nimport { List, ListItem, Typography } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport type { IMediaRightItem } from '../types'\r\nimport { DeleteButton } from './button.delete'\r\n\r\nexport interface IMediaListProps {\r\n medias: IMediaRightItem[]\r\n onDelete: (mediaId: string) => void\r\n}\r\n\r\nexport const MediaList: FC<IMediaListProps> = ({ medias, onDelete }) => {\r\n const { itemTitleProps, itemTitlePropsGetter, onClose } = useItemTitleProps() || {}\r\n\r\n if (medias.length === 0) {\r\n return (\r\n <Typography variant='body2' color='text.secondary' sx={{ textAlign: 'center', py: 2 }}>\r\n No media in this package yet\r\n </Typography>\r\n )\r\n }\r\n\r\n return (\r\n <List>\r\n {medias.map((media) => (\r\n <ListItem key={media.MediaId} sx={{ gap: 1, alignItems: 'center' }}>\r\n <ImageWithFallback\r\n src={media?.PictureUrl}\r\n title={media?.PictureUrl}\r\n fallbackSrc='images/default-video.webp'\r\n alt='product-picture'\r\n style={{\r\n width: '50px',\r\n height: '50px',\r\n borderRadius: 3,\r\n objectFit: 'cover',\r\n flex: '0 0 auto'\r\n }}\r\n />\r\n <Typography\r\n noWrap\r\n variant='subtitle1'\r\n fontWeight={500}\r\n sx={{ flexGrow: 1 }}\r\n title={media.ProductName}\r\n {...(itemTitlePropsGetter ? itemTitlePropsGetter(media) : itemTitleProps ?? {})}\r\n onClick={onClose}\r\n >\r\n {media.ProductName}\r\n </Typography>\r\n <DeleteButton onDelete={() => onDelete(media.ProductId)} size='small' />\r\n </ListItem>\r\n ))}\r\n </List>\r\n )\r\n}\r\n"],"names":["MediaList","_ref","medias","onDelete","_ref2","useItemTitleProps","itemTitleProps","itemTitlePropsGetter","onClose","length","_jsx","Typography","variant","color","sx","textAlign","py","children","List","map","media","_jsxs","ListItem","gap","alignItems","ImageWithFallback","src","PictureUrl","title","fallbackSrc","alt","style","width","height","borderRadius","objectFit","flex","_objectSpread","noWrap","fontWeight","flexGrow","ProductName","onClick","DeleteButton","ProductId","size","MediaId"],"mappings":"wXAYaA,EAAiC,SAAxBC,GAAiD,IAAtBC,EAAMD,EAANC,OAAQC,EAAQF,EAARE,SACvDC,EAA0DC,KAAuB,CAAE,EAA3EC,EAAcF,EAAdE,eAAgBC,EAAoBH,EAApBG,qBAAsBC,EAAOJ,EAAPI,QAE9C,OAAsB,IAAlBN,EAAOO,OAEPC,EAACC,EAAW,CAAAC,QAAQ,QAAQC,MAAM,iBAAiBC,GAAI,CAAEC,UAAW,SAAUC,GAAI,GAErEC,SAAA,iCAKfP,EAACQ,EACE,CAAAD,SAAAf,EAAOiB,IAAI,SAACC,GAAK,OAChBC,EAACC,EAAQ,CAAqBR,GAAI,CAAES,IAAK,EAAGC,WAAY,UAAUP,SAAA,CAChEP,EAACe,EACC,CAAAC,IAAKN,aAAAA,EAAAA,EAAOO,WACZC,MAAOR,aAAAA,EAAAA,EAAOO,WACdE,YAAY,4BACZC,IAAI,kBACJC,MAAO,CACLC,MAAO,OACPC,OAAQ,OACRC,aAAc,EACdC,UAAW,QACXC,KAAM,cAGV1B,EAACC,EAAU0B,EAAAA,EAAA,CACTC,UACA1B,QAAQ,YACR2B,WAAY,IACZzB,GAAI,CAAE0B,SAAU,GAChBZ,MAAOR,EAAMqB,aACRlC,EAAuBA,EAAqBa,GAASd,QAAAA,EAAkB,CAAE,GAAA,CAAA,EAAA,CAC9EoC,QAASlC,WAERY,EAAMqB,eAET/B,EAACiC,GAAaxC,SAAU,WAAF,OAAQA,EAASiB,EAAMwB,UAAU,EAAEC,KAAK,YAzBjDzB,EAAM0B,QA2BtB,IAGP"}
@@ -1,2 +1,2 @@
1
- import{styled as o,Menu as r}from"@mui/material";var a=o(r)(function(o){var r=o.theme;return{"--color-bg":"#ffffff","--color-text":r.palette.common.black,marginTop:"45px",">.MuiPaper-root":{overflow:"visible",backgroundColor:"var(--color-bg, #000000)",borderRadius:r.shape.borderRadius,minWidth:"280px",width:"90vw",maxWidth:"450px",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)","&::before":{content:'""',position:"absolute",backgroundColor:"var(--color-bg, #ffffff)",width:"10px",height:"10px",top:"-4px",right:r.spacing(1),transform:"translateX(-50%) rotate(45deg)",zIndex:0},"@keyframes fadeInDown":{"0%":{opacity:0,transform:"translateY(-10px)"},"100%":{opacity:1,transform:"translateY(0)"}}},".MuiBackdrop-root":{backgroundColor:"transparent"},".MuiList-root":{padding:0}}});export{a as MenuStyled};
1
+ import{styled as r,Menu as o}from"@mui/material";var a=r(o)(function(r){var o=r.theme;return{"--color-bg":"#ffffff","--color-text":o.palette.common.black,marginTop:"45px",">.MuiPaper-root":{position:"relative",overflow:"visible",display:"flex",flexDirection:"column",backgroundColor:"var(--color-bg, #000000)",borderRadius:o.shape.borderRadius,minWidth:"280px",width:"90vw",maxWidth:"450px",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)","&::before":{content:'""',position:"absolute",backgroundColor:"var(--color-bg, #ffffff)",width:"10px",height:"10px",top:"-4px",right:o.spacing(1),transform:"translateX(-50%) rotate(45deg)",zIndex:0},"@keyframes fadeInDown":{"0%":{opacity:0,transform:"translateY(-10px)"},"100%":{opacity:1,transform:"translateY(0)"}}},".MuiBackdrop-root":{backgroundColor:"transparent"},".MuiList-root":{padding:0,height:"100%",overflowY:"auto","&::-webkit-scrollbar":{width:"6px",background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"#e0e0e0",borderRadius:"8px"},"&::-webkit-scrollbar-thumb:hover":{background:"#bdbdbd"},"&":{scrollbarWidth:"thin",scrollbarColor:"#e0e0e0 transparent"}}}});export{a as MenuStyled};
2
2
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../src/media-right/media-widget/styled.tsx"],"sourcesContent":["import { Menu, styled } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { MenuProps } from '@mui/material'\r\n\r\nexport const MenuStyled: ComponentType<MenuProps> = styled(Menu)(({ theme }) => ({\r\n '--color-bg': '#ffffff',\r\n '--color-text': theme.palette.common.black,\r\n\r\n marginTop: '45px',\r\n '>.MuiPaper-root': {\r\n overflow: 'visible',\r\n backgroundColor: 'var(--color-bg, #000000)',\r\n borderRadius: theme.shape.borderRadius,\r\n minWidth: '280px',\r\n width: '90vw',\r\n maxWidth: '450px',\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 '&::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 '@keyframes fadeInDown': {\r\n '0%': { opacity: 0, transform: 'translateY(-10px)' },\r\n '100%': { opacity: 1, transform: 'translateY(0)' }\r\n }\r\n },\r\n '.MuiBackdrop-root': { backgroundColor: 'transparent' },\r\n '.MuiList-root': { padding: 0 }\r\n}))\r\n"],"names":["MenuStyled","styled","Menu","_ref","theme","palette","common","black","marginTop","overflow","backgroundColor","borderRadius","shape","minWidth","width","maxWidth","boxShadow","animation","color","content","position","height","top","right","spacing","transform","zIndex","opacity","padding"],"mappings":"iDAIO,IAAMA,EAAuCC,EAAOC,EAAPD,CAAa,SAAAE,GAAA,IAAGC,EAAKD,EAALC,MAAK,MAAQ,CAC/E,aAAc,UACd,eAAgBA,EAAMC,QAAQC,OAAOC,MAErCC,UAAW,OACX,kBAAmB,CACjBC,SAAU,UACVC,gBAAiB,2BACjBC,aAAcP,EAAMQ,MAAMD,aAC1BE,SAAU,QACVC,MAAO,OACPC,SAAU,QACVC,UAAsI,4HACtIC,UAAW,2BACXT,UAAW,MACXU,MAAO,6BACP,YAAa,CACXC,QAAS,KACTC,SAAU,WACVV,gBAAiB,2BACjBI,MAAO,OACPO,OAAQ,OACRC,IAAK,OACLC,MAAOnB,EAAMoB,QAAQ,GACrBC,UAAW,iCACXC,OAAQ,GAEV,wBAAyB,CACvB,KAAM,CAAEC,QAAS,EAAGF,UAAW,qBAC/B,OAAQ,CAAEE,QAAS,EAAGF,UAAW,mBAGrC,oBAAqB,CAAEf,gBAAiB,eACxC,gBAAiB,CAAEkB,QAAS,GAC7B"}
1
+ {"version":3,"file":"styled.js","sources":["../../../src/media-right/media-widget/styled.tsx"],"sourcesContent":["import { Menu, styled } from '@mui/material'\r\nimport type { ComponentType } from 'react'\r\nimport type { MenuProps } from '@mui/material'\r\n\r\nexport const MenuStyled: ComponentType<MenuProps> = styled(Menu)(({ theme }) => ({\r\n '--color-bg': '#ffffff',\r\n '--color-text': theme.palette.common.black,\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 width: '90vw',\r\n maxWidth: '450px',\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 '&::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 '@keyframes fadeInDown': {\r\n '0%': { opacity: 0, transform: 'translateY(-10px)' },\r\n '100%': { opacity: 1, transform: 'translateY(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': {\r\n width: '6px',\r\n background: 'transparent'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#e0e0e0',\r\n borderRadius: '8px'\r\n },\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#bdbdbd'\r\n },\r\n '&': {\r\n scrollbarWidth: 'thin',\r\n scrollbarColor: '#e0e0e0 transparent'\r\n }\r\n }\r\n}))\r\n"],"names":["MenuStyled","styled","Menu","_ref","theme","palette","common","black","marginTop","position","overflow","display","flexDirection","backgroundColor","borderRadius","shape","minWidth","width","maxWidth","boxShadow","animation","color","content","height","top","right","spacing","transform","zIndex","opacity","padding","overflowY","background","scrollbarWidth","scrollbarColor"],"mappings":"iDAIO,IAAMA,EAAuCC,EAAOC,EAAPD,CAAa,SAAAE,GAAA,IAAGC,EAAKD,EAALC,MAAK,MAAQ,CAC/E,aAAc,UACd,eAAgBA,EAAMC,QAAQC,OAAOC,MAErCC,UAAW,OACX,kBAAmB,CACjBC,SAAU,WACVC,SAAU,UACVC,QAAS,OACTC,cAAe,SACfC,gBAAiB,2BACjBC,aAAcV,EAAMW,MAAMD,aAC1BE,SAAU,QACVC,MAAO,OACPC,SAAU,QACVC,UAAsI,4HACtIC,UAAW,2BACXZ,UAAW,MACXa,MAAO,6BAEP,YAAa,CACXC,QAAS,KACTb,SAAU,WACVI,gBAAiB,2BACjBI,MAAO,OACPM,OAAQ,OACRC,IAAK,OACLC,MAAOrB,EAAMsB,QAAQ,GACrBC,UAAW,iCACXC,OAAQ,GAGV,wBAAyB,CACvB,KAAM,CAAEC,QAAS,EAAGF,UAAW,qBAC/B,OAAQ,CAAEE,QAAS,EAAGF,UAAW,mBAGrC,oBAAqB,CAAEd,gBAAiB,eACxC,gBAAiB,CACfiB,QAAS,EACTP,OAAQ,OACRQ,UAAW,OACX,uBAAwB,CACtBd,MAAO,MACPe,WAAY,eAEd,6BAA8B,CAC5BA,WAAY,UACZlB,aAAc,OAEhB,mCAAoC,CAClCkB,WAAY,WAEd,IAAK,CACHC,eAAgB,OAChBC,eAAgB,wBAGrB"}
@@ -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;AAExD,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CAyC7C,CAAA;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;CAW9B,CAAA;AAMD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,QAAQ,CA6EnD,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;AAExD,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CA8D7C,CAAA;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;CAW9B,CAAA;AAMD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,QAAQ,CAsFnD,CAAA"}
@@ -1,7 +1,9 @@
1
1
  import type { FC } from 'react';
2
2
  import type { IMediaRightGroup, IMediaRightItem } from '../types';
3
+ import type { IGuideStepsProps } from '../guide-steps';
3
4
  export interface IGroupSelectorModalProps {
4
5
  open: boolean;
6
+ guideStepsProps?: IGuideStepsProps;
5
7
  onClose: () => void;
6
8
  onConfirm: (groupId: string | null, newName?: string) => void;
7
9
  groups: IMediaRightGroup[];
@@ -11,8 +13,9 @@ export declare const GroupSelectorModal: FC<IGroupSelectorModalProps>;
11
13
  export interface IShowGroupSelectorModalProps {
12
14
  cartItem: IMediaRightItem | null;
13
15
  groups: IMediaRightGroup[];
16
+ guideStepsProps?: IGuideStepsProps;
14
17
  addGroup: (group: Omit<IMediaRightGroup, 'createdAt' | 'items'>) => void;
15
18
  addItem: (item: IMediaRightItem) => void;
16
19
  }
17
- export declare const showGroupSelectorModal: ({ cartItem, groups, addGroup, addItem }: IShowGroupSelectorModalProps) => void;
20
+ export declare const showGroupSelectorModal: ({ cartItem, groups, guideStepsProps, addGroup, addItem }: IShowGroupSelectorModalProps) => void;
18
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/media-right/group-selector/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAa,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAMjE,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7D,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;CACjC;AAED,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,wBAAwB,CAsE3D,CAAA;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,IAAI,CAAA;IACxE,OAAO,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;CACzC;AAED,eAAO,MAAM,sBAAsB,4CAA6C,4BAA4B,SAuC3G,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/media-right/group-selector/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAa,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAMjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,eAAe,CAAC,EAAE,gBAAgB,CAAA;IAClC,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7D,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;CACjC;AAED,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,wBAAwB,CAuE3D,CAAA;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,eAAe,CAAC,EAAE,gBAAgB,CAAA;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,IAAI,CAAA;IACxE,OAAO,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;CACzC;AAED,eAAO,MAAM,sBAAsB,6DAA8D,4BAA4B,SAwC5H,CAAA"}
@@ -0,0 +1,16 @@
1
+ import type { FC } from 'react';
2
+ import type { DialogProps, IconButtonProps, StackProps } from '@mui/material';
3
+ export interface IGuideStep {
4
+ label: string;
5
+ img: string;
6
+ text?: string;
7
+ content?: React.ReactNode;
8
+ }
9
+ export interface IGuideStepsProps {
10
+ iconButtonProps?: IconButtonProps;
11
+ dialogProps?: DialogProps;
12
+ contentProps?: StackProps;
13
+ steps: IGuideStep[];
14
+ }
15
+ export declare const GuideSteps: FC<IGuideStepsProps>;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/media-right/guide-steps/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE7E,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,gBAAgB,CA8F3C,CAAA"}
@@ -1,6 +1,8 @@
1
1
  export * from './configs';
2
2
  export * from './types';
3
+ export * from './guide-steps';
3
4
  export * from './media-widget';
5
+ export type { ITypographyProps } from './media-widget/item-title-props-context';
4
6
  export * from './group-selector';
5
7
  export * from './hook';
6
8
  export * from './helpers';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/media-right/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AAEzB,cAAc,SAAS,CAAA;AAEvB,cAAc,gBAAgB,CAAA;AAE9B,cAAc,kBAAkB,CAAA;AAEhC,cAAc,QAAQ,CAAA;AAEtB,cAAc,WAAW,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/media-right/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AAEzB,cAAc,SAAS,CAAA;AAEvB,cAAc,eAAe,CAAA;AAE7B,cAAc,gBAAgB,CAAA;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE/E,cAAc,kBAAkB,CAAA;AAEhC,cAAc,QAAQ,CAAA;AAEtB,cAAc,WAAW,CAAA"}
@@ -1,6 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { ButtonProps } from '@mui/material';
3
- export interface IMediaGroupWidgetProps {
3
+ import type { ITitlePropsContextValue } from './item-title-props-context';
4
+ export interface IMediaGroupWidgetProps extends ITitlePropsContextValue {
4
5
  localStorageKey?: string;
5
6
  hrefCart?: string;
6
7
  buttonMoveToCartProps?: ButtonProps & {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAsB,WAAW,EAAqB,MAAM,eAAe,CAAA;AAYlF,MAAM,WAAW,sBAAsB;IACrC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,CAAC,EAAE,WAAW,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC5D,aAAa,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;CACvC;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA0F7D,CAAA;AAED,eAAO,MAAM,sBAAsB,WAAY,sBAAsB,wDAIpE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAiB,WAAW,EAAqB,MAAM,eAAe,CAAA;AAW7E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AAGzE,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,CAAC,EAAE,WAAW,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC5D,aAAa,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;CACvC;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAsH7D,CAAA;AAED,eAAO,MAAM,sBAAsB,WAAY,sBAAsB,wDAIpE,CAAA"}
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import type { IMediaRightItem } from '../types';
3
+ import type { TypographyProps } from '@mui/material';
4
+ export type ITypographyProps = TypographyProps & {
5
+ [key: string]: any;
6
+ };
7
+ export type GetItemTitleProps = (item: IMediaRightItem) => ITypographyProps;
8
+ export interface ITitlePropsContextValue {
9
+ itemTitleProps?: ITypographyProps;
10
+ itemTitlePropsGetter?: (item: IMediaRightItem) => ITypographyProps;
11
+ onClose?: () => void;
12
+ }
13
+ export declare const ItemTitlePropsContext: import("react").Context<ITitlePropsContextValue | undefined>;
14
+ export declare const useItemTitleProps: () => ITitlePropsContextValue | undefined;
15
+ //# sourceMappingURL=item-title-props-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-title-props-context.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/item-title-props-context.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAA;AAEvE,MAAM,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,eAAe,KAAK,gBAAgB,CAAA;AAE3E,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,EAAE,gBAAgB,CAAA;IACjC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,gBAAgB,CAAA;IAClE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,eAAO,MAAM,qBAAqB,8DAAgE,CAAA;AAElG,eAAO,MAAM,iBAAiB,2CAA0C,CAAA"}
@@ -1,7 +1,9 @@
1
+ import { AccordionProps } from '@mui/material';
1
2
  import type { FC } from 'react';
2
- import { IMediaRightGroup } from '../types';
3
+ import type { IMediaRightGroup } from '../types';
3
4
  export interface IMediaGroupAccordionProps {
4
5
  group: IMediaRightGroup;
6
+ accordionProps?: Partial<AccordionProps>;
5
7
  onEditGroup: (group: IMediaRightGroup) => void;
6
8
  onDeleteGroup: (groupId: string) => void;
7
9
  onDeleteMedia: (groupId: string, mediaId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"media-group-accordion.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/media-group-accordion.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,OAAO,CAAA;AAK3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAM3C,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,gBAAgB,CAAA;IACvB,WAAW,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC9C,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1D;AAED,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,yBAAyB,CA8C7D,CAAA"}
1
+ {"version":3,"file":"media-group-accordion.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/media-group-accordion.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoF,cAAc,EAAE,MAAM,eAAe,CAAA;AAChI,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,OAAO,CAAA;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAShD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,gBAAgB,CAAA;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IACxC,WAAW,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC9C,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1D;AAED,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,yBAAyB,CA8C7D,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { FC } from 'react';
2
- import { IMediaRightItem } from '../types';
2
+ import type { IMediaRightItem } from '../types';
3
3
  export interface IMediaListProps {
4
4
  medias: IMediaRightItem[];
5
5
  onDelete: (mediaId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"media-list.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/media-list.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG1C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,eAAe,CAoCzC,CAAA"}
1
+ {"version":3,"file":"media-list.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/media-list.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG/C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAED,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,eAAe,CA4CzC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/styled.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CAkC7C,CAAA"}
1
+ {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/media-right/media-widget/styled.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CA0D7C,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinocollab-shared",
3
- "version": "1.1.25",
3
+ "version": "1.1.26",
4
4
  "description": "DinoCollab shared utilities and components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",