dinocollab-shared 1.1.26 → 1.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/media-right/guide-steps/index.js +1 -1
- package/dist/media-right/guide-steps/index.js.map +1 -1
- package/dist/media-right/media-widget/media-group-accordion.js +1 -1
- package/dist/media-right/media-widget/media-group-accordion.js.map +1 -1
- package/dist/types/media-right/guide-steps/index.d.ts +1 -0
- package/dist/types/media-right/guide-steps/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{slicedToArray as t,objectSpread2 as n}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as i,Fragment as
|
|
1
|
+
import{slicedToArray as t,objectSpread2 as n}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as i,Fragment as r,jsx as e}from"react/jsx-runtime";import{useState as o,useRef as l,useEffect as a}from"react";import{IconButton as c,Dialog as s,DialogTitle as u,DialogContent as m,Box as d,Stack as p,Typography as h,DialogActions as f,MobileStepper as x,Button as g}from"@mui/material";import b from"@mui/icons-material/HelpOutline";import v from"@mui/icons-material/Close";var k=function(k){var z=k.title,C=k.iconButtonProps,w=k.dialogProps,y=k.contentProps,B=k.steps,I=o(!1),S=t(I,2),j=S[0],H=S[1],P=o(0),W=t(P,2),T=W[0],X=W[1],_=l(0),A=l(null),D=function(){H(!1),X(0),_.current=0};return a(function(){A.current&&(A.current.scrollTop=0)},[T]),i(r,{children:[e(c,n(n({onClick:function(){return H(!0)},size:"small"},C),{},{children:e(b,{})})),i(s,n(n({open:j,onClose:D,maxWidth:"sm",fullWidth:!0},w),{},{children:[i(u,{py:2,sx:{position:"relative",boxShadow:"0 2px 8px -4px rgba(0,0,0,0.25)",zIndex:2,background:"#fff"},children:[z,e(c,{"aria-label":"close",onClick:D,sx:{position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",color:function(t){return t.palette.grey[500]},zIndex:1},size:"small",children:e(v,{})})]}),e(m,{ref:A,sx:{p:2,position:"relative",overflowX:"hidden",minHeight:260},children:e(d,{sx:{display:"flex",flexDirection:"row",width:"".concat(100*B.length,"%"),transform:"translateX(-".concat(T*(100/B.length),"%)"),transition:"transform 0.4s cubic-bezier(0.4, 0, 0.2, 1)"},children:B.map(function(t,r){var o;return i(p,n(n({alignItems:"start",width:"".concat(100/B.length,"%"),flexShrink:0,px:2},y),{},{children:[e("img",{src:t.img,alt:t.label,style:{maxWidth:"100%",marginInline:"auto",maxHeight:120,marginBottom:16}}),e(h,{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 e(h,{variant:0===n?"subtitle1":"body2",children:t},n)}),t.content&&e(d,{sx:{mt:1,width:"100%"},children:t.content})]}),r)})})}),i(f,{sx:{px:3,pb:2,boxShadow:"0 -2px 8px -4px rgba(0,0,0,0.25)",zIndex:2,background:"#fff"},children:[e(x,{variant:"dots",steps:B.length,position:"static",activeStep:T,sx:{background:"transparent",justifyContent:"center",mr:"auto"},nextButton:null,backButton:null}),T>0&&e(g,{onClick:function(){_.current=T,X(function(t){return t-1})},size:"small",children:"Back"}),T===B.length-1?e(g,{onClick:D,size:"small",variant:"contained",children:"Finish"}):e(g,{onClick:function(){_.current=T,X(function(t){return t+1})},size:"small",variant:"contained",children:"Next"})]})]}))]})};export{k as GuideSteps};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +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 <
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/media-right/guide-steps/index.tsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react'\r\nimport { Dialog, DialogContent, DialogActions, Button, IconButton, Box, Typography, MobileStepper, Stack, DialogTitle } 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 title?: string\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> = ({ title, 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 const contentRef = useRef<HTMLDivElement>(null)\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 useEffect(() => {\r\n if (contentRef.current) {\r\n contentRef.current.scrollTop = 0\r\n }\r\n }, [activeStep])\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 <DialogTitle\r\n py={2}\r\n sx={{\r\n position: 'relative',\r\n boxShadow: '0 2px 8px -4px rgba(0,0,0,0.25)',\r\n zIndex: 2,\r\n background: '#fff'\r\n }}\r\n >\r\n {title}\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: '50%',\r\n transform: 'translateY(-50%)',\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 </DialogTitle>\r\n <DialogContent ref={contentRef} sx={{ p: 2, position: 'relative', overflowX: 'hidden', minHeight: 260 }}>\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'}>\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\r\n sx={{\r\n px: 3,\r\n pb: 2,\r\n boxShadow: '0 -2px 8px -4px rgba(0,0,0,0.25)',\r\n zIndex: 2,\r\n background: '#fff'\r\n }}\r\n >\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","title","iconButtonProps","dialogProps","contentProps","steps","_useState","useState","_useState2","_slicedToArray","open","setOpen","_useState3","_useState4","activeStep","setActiveStep","prevStep","useRef","contentRef","handleClose","current","useEffect","scrollTop","_jsxs","_jsx","IconButton","_objectSpread","onClick","size","children","HelpOutlineIcon","Dialog","onClose","maxWidth","fullWidth","DialogTitle","py","sx","position","boxShadow","zIndex","background","right","top","transform","color","theme","palette","grey","CloseIcon","DialogContent","ref","p","overflowX","minHeight","Box","display","flexDirection","width","concat","length","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","content","mt","DialogActions","pb","MobileStepper","justifyContent","mr","nextButton","backButton","Button","prev"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
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
|
|
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 v=function(v){var S=v.group,W=v.accordionProps,b=v.onEditGroup,z=v.onDeleteGroup,E=v.onDeleteMedia,M=n(!1),y=i(M,2),P=y[0],A=y[1];return t(r,e(e({component:"div"},W),{},{sx:e({my:"0 !important"},null==W?void 0:W.sx),children:[o(m,{component:"div",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){b(e(e({},S),{},{name:i})),A(!1)},defaultValue:S.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:S.name,fontWeight:600,sx:{flex:1,minWidth:0},children:S.name}),o(s,{sx:{fontSize:"12px"},label:"".concat(S.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 z(S.id)},size:"small"})]},S.id+S.name+P)]})}),o(c,{sx:{p:0},children:o(x,{medias:S.items,onDelete:function(i){return E(S.id,i)}})})]}))};export{v 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, 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","
|
|
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 component={'div'} {...accordionProps} sx={{ my: '0 !important', ...accordionProps?.sx }}>\r\n <AccordionSummary component={'div'} 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","component","sx","my","children","_jsx","AccordionSummary","expandIcon","ExpandMoreIcon","minWidth","margin","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,EAAA,CAACC,UAAW,OAAWb,GAAc,GAAA,CAAEc,GAAEF,EAAA,CAAIG,GAAI,gBAAmBf,eAAAA,EAAgBc,IAAIE,SAAA,CAChGC,EAACC,EAAiB,CAAAL,UAAW,MAAOM,WAAYF,EAACG,MAAmBN,GAAI,CAAEO,SAAU,EAAG,iCAAkC,CAAEA,SAAU,EAAGC,OAAQ,IAAKN,SACnJN,EAACa,EAAG,CAACT,GAAI,CAAEU,QAAS,OAAQC,WAAY,SAAUC,KAAM,EAAGC,IAAK,EAAGN,SAAU,GAAGL,SAAA,CAC9EC,EAACW,GAAmBC,SAAS,UAC7BnB,EAACoB,EAAa,CAEZC,OAAQvB,EACRwB,YAAavB,EACbwB,SAnBa,SAACC,GACtBjC,EAAWW,EAAAA,KAAMb,GAAK,CAAA,EAAA,CAAEoC,KAAMD,KAC9BzB,GAAa,EACd,EAiBS2B,aAAcrC,EAAMoC,KACpBE,UAAW,CACTC,WAAY,CAAEC,UAAWC,EAAuBC,gBAChD3B,GAAI,CAAEY,KAAM,EAAGL,SAAU,EAAG,2BAA4B,CAAEqB,OAAQ,UAEpEC,OAAQ,CAAEjB,KAAM,GAAGV,SAAA,CAEnBC,EAAC2B,GAAWC,QAAQ,QAAQC,UAAOC,MAAOhD,EAAMoC,KAAMa,WAAY,IAAKlC,GAAI,CAAEY,KAAM,EAAGL,SAAU,GAC7FL,SAAAjB,EAAMoC,OAETlB,EAACgC,EAAI,CAACnC,GAAI,CAAEe,SAAU,QAAUqB,MAAK,GAAAC,OAAKpD,EAAMqD,MAAMC,OAAc,UAAEC,KAAK,UAC3ErC,EAACsC,EAAW,CAAAD,KAAK,QAAQE,QA1BX,SAACC,GACvBA,EAAEC,kBACFjD,GAAa,EACd,EAuB4DkD,MAAM,UAAS3C,SAChEC,EAAC2C,EAAQ,CAAC/B,SAAS,YAErBZ,EAAC4C,EAAa,CAAAC,SAAU,WAAF,OAAQ5D,EAAcH,EAAMgE,GAAG,EAAET,KAAK,YAlBvDvD,EAAMgE,GAAKhE,EAAMoC,KAAO3B,QAsBnCS,EAAC+C,EAAgB,CAAClD,GAAI,CAAEmD,EAAG,YACzBhD,EAACiD,GAAUC,OAAQpE,EAAMqD,MAAOU,SAAU,SAACM,GAAO,OAAKjE,EAAcJ,EAAMgE,GAAIK,EAAQ,SAI/F"}
|
|
@@ -1 +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,
|
|
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,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,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,CAwH3C,CAAA"}
|