Mercurial > repos > fubar > jbrowse2
view x/static/js/5640.33b8306c.chunk.js.map @ 125:49f3d3878413 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/jbrowse2 commit 5ea1f9c1eef1de76232e69aa6d34cda77d90d566
author | fubar |
---|---|
date | Sat, 05 Oct 2024 23:58:05 +0000 |
parents | |
children |
line wrap: on
line source
{"version":3,"file":"static/js/5640.33b8306c.chunk.js","mappings":"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","sources":["../../../node_modules/@mui/material/Badge/Badge.js","../../../node_modules/@mui/material/Badge/useBadge.js","../../../node_modules/@mui/material/Badge/badgeClasses.js","../../../node_modules/@mui/material/CircularProgress/CircularProgress.js","../../../node_modules/@mui/material/CircularProgress/circularProgressClasses.js","../../../node_modules/@mui/material/ClickAwayListener/ClickAwayListener.js","../../../node_modules/@mui/material/Toolbar/Toolbar.js","../../../node_modules/@mui/material/Toolbar/toolbarClasses.js","../../../node_modules/@mui/system/styled/styled.js","../../../node_modules/react-draggable/build/cjs/Draggable.js","../../../node_modules/react-draggable/build/cjs/DraggableCore.js","../../../node_modules/react-draggable/build/cjs/cjs.js","../../../node_modules/react-draggable/build/cjs/utils/domFns.js","../../../node_modules/react-draggable/build/cjs/utils/getPrefix.js","../../../node_modules/react-draggable/build/cjs/utils/log.js","../../../node_modules/react-draggable/build/cjs/utils/positionFns.js","../../../node_modules/react-draggable/build/cjs/utils/shims.js","../../../node_modules/react-draggable/node_modules/clsx/dist/clsx.m.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport usePreviousProps from '@mui/utils/usePreviousProps';\nimport composeClasses from '@mui/utils/composeClasses';\nimport useSlotProps from '@mui/utils/useSlotProps';\nimport useBadge from \"./useBadge.js\";\nimport { styled } from \"../zero-styled/index.js\";\nimport memoTheme from \"../utils/memoTheme.js\";\nimport createSimplePaletteValueFilter from \"../utils/createSimplePaletteValueFilter.js\";\nimport { useDefaultProps } from \"../DefaultPropsProvider/index.js\";\nimport capitalize from \"../utils/capitalize.js\";\nimport badgeClasses, { getBadgeUtilityClass } from \"./badgeClasses.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst RADIUS_STANDARD = 10;\nconst RADIUS_DOT = 4;\nconst useUtilityClasses = ownerState => {\n const {\n color,\n anchorOrigin,\n invisible,\n overlap,\n variant,\n classes = {}\n } = ownerState;\n const slots = {\n root: ['root'],\n badge: ['badge', variant, invisible && 'invisible', `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}`, `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}${capitalize(overlap)}`, `overlap${capitalize(overlap)}`, color !== 'default' && `color${capitalize(color)}`]\n };\n return composeClasses(slots, getBadgeUtilityClass, classes);\n};\nconst BadgeRoot = styled('span', {\n name: 'MuiBadge',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n position: 'relative',\n display: 'inline-flex',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n flexShrink: 0\n});\nconst BadgeBadge = styled('span', {\n name: 'MuiBadge',\n slot: 'Badge',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.badge, styles[ownerState.variant], styles[`anchorOrigin${capitalize(ownerState.anchorOrigin.vertical)}${capitalize(ownerState.anchorOrigin.horizontal)}${capitalize(ownerState.overlap)}`], ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`], ownerState.invisible && styles.invisible];\n }\n})(memoTheme(({\n theme\n}) => ({\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'center',\n alignContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n boxSizing: 'border-box',\n fontFamily: theme.typography.fontFamily,\n fontWeight: theme.typography.fontWeightMedium,\n fontSize: theme.typography.pxToRem(12),\n minWidth: RADIUS_STANDARD * 2,\n lineHeight: 1,\n padding: '0 6px',\n height: RADIUS_STANDARD * 2,\n borderRadius: RADIUS_STANDARD,\n zIndex: 1,\n // Render the badge on top of potential ripples.\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.enteringScreen\n }),\n variants: [...Object.entries(theme.palette).filter(createSimplePaletteValueFilter(['contrastText'])).map(([color]) => ({\n props: {\n color\n },\n style: {\n backgroundColor: (theme.vars || theme).palette[color].main,\n color: (theme.vars || theme).palette[color].contrastText\n }\n })), {\n props: {\n variant: 'dot'\n },\n style: {\n borderRadius: RADIUS_DOT,\n height: RADIUS_DOT * 2,\n minWidth: RADIUS_DOT * 2,\n padding: 0\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular',\n style: {\n top: 0,\n right: 0,\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular',\n style: {\n bottom: 0,\n right: 0,\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular',\n style: {\n top: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular',\n style: {\n bottom: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular',\n style: {\n top: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular',\n style: {\n bottom: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular',\n style: {\n top: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular',\n style: {\n bottom: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n }\n }, {\n props: {\n invisible: true\n },\n style: {\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.leavingScreen\n })\n }\n }]\n})));\nconst Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiBadge'\n });\n const {\n anchorOrigin: anchorOriginProp = {\n vertical: 'top',\n horizontal: 'right'\n },\n className,\n classes: classesProp,\n component,\n components = {},\n componentsProps = {},\n children,\n overlap: overlapProp = 'rectangular',\n color: colorProp = 'default',\n invisible: invisibleProp = false,\n max: maxProp = 99,\n badgeContent: badgeContentProp,\n slots,\n slotProps,\n showZero = false,\n variant: variantProp = 'standard',\n ...other\n } = props;\n const {\n badgeContent,\n invisible: invisibleFromHook,\n max,\n displayValue: displayValueFromHook\n } = useBadge({\n max: maxProp,\n invisible: invisibleProp,\n badgeContent: badgeContentProp,\n showZero\n });\n const prevProps = usePreviousProps({\n anchorOrigin: anchorOriginProp,\n color: colorProp,\n overlap: overlapProp,\n variant: variantProp,\n badgeContent: badgeContentProp\n });\n const invisible = invisibleFromHook || badgeContent == null && variantProp !== 'dot';\n const {\n color = colorProp,\n overlap = overlapProp,\n anchorOrigin = anchorOriginProp,\n variant = variantProp\n } = invisible ? prevProps : props;\n const displayValue = variant !== 'dot' ? displayValueFromHook : undefined;\n const ownerState = {\n ...props,\n badgeContent,\n invisible,\n max,\n displayValue,\n showZero,\n anchorOrigin,\n color,\n overlap,\n variant\n };\n const classes = useUtilityClasses(ownerState);\n\n // support both `slots` and `components` for backward compatibility\n const RootSlot = slots?.root ?? components.Root ?? BadgeRoot;\n const BadgeSlot = slots?.badge ?? components.Badge ?? BadgeBadge;\n const rootSlotProps = slotProps?.root ?? componentsProps.root;\n const badgeSlotProps = slotProps?.badge ?? componentsProps.badge;\n const rootProps = useSlotProps({\n elementType: RootSlot,\n externalSlotProps: rootSlotProps,\n externalForwardedProps: other,\n additionalProps: {\n ref,\n as: component\n },\n ownerState,\n className: clsx(rootSlotProps?.className, classes.root, className)\n });\n const badgeProps = useSlotProps({\n elementType: BadgeSlot,\n externalSlotProps: badgeSlotProps,\n ownerState,\n className: clsx(classes.badge, badgeSlotProps?.className)\n });\n return /*#__PURE__*/_jsxs(RootSlot, {\n ...rootProps,\n children: [children, /*#__PURE__*/_jsx(BadgeSlot, {\n ...badgeProps,\n children: displayValue\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Badge.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The anchor of the badge.\n * @default {\n * vertical: 'top',\n * horizontal: 'right',\n * }\n */\n anchorOrigin: PropTypes.shape({\n horizontal: PropTypes.oneOf(['left', 'right']).isRequired,\n vertical: PropTypes.oneOf(['bottom', 'top']).isRequired\n }),\n /**\n * The content rendered within the badge.\n */\n badgeContent: PropTypes.node,\n /**\n * The badge will be added relative to this node.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).\n * @default 'default'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Badge: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * If `true`, the badge is invisible.\n * @default false\n */\n invisible: PropTypes.bool,\n /**\n * Max count to show.\n * @default 99\n */\n max: PropTypes.number,\n /**\n * Wrapped shape the badge should overlap.\n * @default 'rectangular'\n */\n overlap: PropTypes.oneOf(['circular', 'rectangular']),\n /**\n * Controls whether the badge is hidden when `badgeContent` is zero.\n * @default false\n */\n showZero: PropTypes.bool,\n /**\n * The props used for each slot inside the Badge.\n * @default {}\n */\n slotProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside the Badge.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n badge: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'standard'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['dot', 'standard']), PropTypes.string])\n} : void 0;\nexport default Badge;","'use client';\n\nimport { usePreviousProps } from '@mui/utils';\n/**\n *\n * Demos:\n *\n * - [Badge](https://mui.com/base-ui/react-badge/#hook)\n *\n * API:\n *\n * - [useBadge API](https://mui.com/base-ui/react-badge/hooks-api/#use-badge)\n */\nfunction useBadge(parameters) {\n const {\n badgeContent: badgeContentProp,\n invisible: invisibleProp = false,\n max: maxProp = 99,\n showZero = false\n } = parameters;\n const prevProps = usePreviousProps({\n badgeContent: badgeContentProp,\n max: maxProp\n });\n let invisible = invisibleProp;\n if (invisibleProp === false && badgeContentProp === 0 && !showZero) {\n invisible = true;\n }\n const {\n badgeContent,\n max = maxProp\n } = invisible ? prevProps : parameters;\n const displayValue = badgeContent && Number(badgeContent) > max ? `${max}+` : badgeContent;\n return {\n badgeContent,\n invisible,\n max,\n displayValue\n };\n}\nexport default useBadge;","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getBadgeUtilityClass(slot) {\n return generateUtilityClass('MuiBadge', slot);\n}\nconst badgeClasses = generateUtilityClasses('MuiBadge', ['root', 'badge', 'dot', 'standard', 'anchorOriginTopRight', 'anchorOriginBottomRight', 'anchorOriginTopLeft', 'anchorOriginBottomLeft', 'invisible', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'overlapRectangular', 'overlapCircular',\n// TODO: v6 remove the overlap value from these class keys\n'anchorOriginTopLeftCircular', 'anchorOriginTopLeftRectangular', 'anchorOriginTopRightCircular', 'anchorOriginTopRightRectangular', 'anchorOriginBottomLeftCircular', 'anchorOriginBottomLeftRectangular', 'anchorOriginBottomRightCircular', 'anchorOriginBottomRightRectangular']);\nexport default badgeClasses;","'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport chainPropTypes from '@mui/utils/chainPropTypes';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { keyframes, css, styled } from \"../zero-styled/index.js\";\nimport memoTheme from \"../utils/memoTheme.js\";\nimport { useDefaultProps } from \"../DefaultPropsProvider/index.js\";\nimport capitalize from \"../utils/capitalize.js\";\nimport createSimplePaletteValueFilter from \"../utils/createSimplePaletteValueFilter.js\";\nimport { getCircularProgressUtilityClass } from \"./circularProgressClasses.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst SIZE = 44;\nconst circularRotateKeyframe = keyframes`\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n`;\nconst circularDashKeyframe = keyframes`\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n`;\n\n// This implementation is for supporting both Styled-components v4+ and Pigment CSS.\n// A global animation has to be created here for Styled-components v4+ (https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#12).\n// which can be done by checking typeof indeterminate1Keyframe !== 'string' (at runtime, Pigment CSS transform keyframes`` to a string).\nconst rotateAnimation = typeof circularRotateKeyframe !== 'string' ? css`\n animation: ${circularRotateKeyframe} 1.4s linear infinite;\n ` : null;\nconst dashAnimation = typeof circularDashKeyframe !== 'string' ? css`\n animation: ${circularDashKeyframe} 1.4s ease-in-out infinite;\n ` : null;\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n color,\n disableShrink\n } = ownerState;\n const slots = {\n root: ['root', variant, `color${capitalize(color)}`],\n svg: ['svg'],\n circle: ['circle', `circle${capitalize(variant)}`, disableShrink && 'circleDisableShrink']\n };\n return composeClasses(slots, getCircularProgressUtilityClass, classes);\n};\nconst CircularProgressRoot = styled('span', {\n name: 'MuiCircularProgress',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.variant], styles[`color${capitalize(ownerState.color)}`]];\n }\n})(memoTheme(({\n theme\n}) => ({\n display: 'inline-block',\n variants: [{\n props: {\n variant: 'determinate'\n },\n style: {\n transition: theme.transitions.create('transform')\n }\n }, {\n props: {\n variant: 'indeterminate'\n },\n style: rotateAnimation || {\n animation: `${circularRotateKeyframe} 1.4s linear infinite`\n }\n }, ...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color]) => ({\n props: {\n color\n },\n style: {\n color: (theme.vars || theme).palette[color].main\n }\n }))]\n})));\nconst CircularProgressSVG = styled('svg', {\n name: 'MuiCircularProgress',\n slot: 'Svg',\n overridesResolver: (props, styles) => styles.svg\n})({\n display: 'block' // Keeps the progress centered\n});\nconst CircularProgressCircle = styled('circle', {\n name: 'MuiCircularProgress',\n slot: 'Circle',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.circle, styles[`circle${capitalize(ownerState.variant)}`], ownerState.disableShrink && styles.circleDisableShrink];\n }\n})(memoTheme(({\n theme\n}) => ({\n stroke: 'currentColor',\n variants: [{\n props: {\n variant: 'determinate'\n },\n style: {\n transition: theme.transitions.create('stroke-dashoffset')\n }\n }, {\n props: {\n variant: 'indeterminate'\n },\n style: {\n // Some default value that looks fine waiting for the animation to kicks in.\n strokeDasharray: '80px, 200px',\n strokeDashoffset: 0 // Add the unit to fix a Edge 16 and below bug.\n }\n }, {\n props: ({\n ownerState\n }) => ownerState.variant === 'indeterminate' && !ownerState.disableShrink,\n style: dashAnimation || {\n // At runtime for Pigment CSS, `bufferAnimation` will be null and the generated keyframe will be used.\n animation: `${circularDashKeyframe} 1.4s ease-in-out infinite`\n }\n }]\n})));\n\n/**\n * ## ARIA\n *\n * If the progress bar is describing the loading progress of a particular region of a page,\n * you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`\n * attribute to `true` on that region until it has finished loading.\n */\nconst CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress(inProps, ref) {\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiCircularProgress'\n });\n const {\n className,\n color = 'primary',\n disableShrink = false,\n size = 40,\n style,\n thickness = 3.6,\n value = 0,\n variant = 'indeterminate',\n ...other\n } = props;\n const ownerState = {\n ...props,\n color,\n disableShrink,\n size,\n thickness,\n value,\n variant\n };\n const classes = useUtilityClasses(ownerState);\n const circleStyle = {};\n const rootStyle = {};\n const rootProps = {};\n if (variant === 'determinate') {\n const circumference = 2 * Math.PI * ((SIZE - thickness) / 2);\n circleStyle.strokeDasharray = circumference.toFixed(3);\n rootProps['aria-valuenow'] = Math.round(value);\n circleStyle.strokeDashoffset = `${((100 - value) / 100 * circumference).toFixed(3)}px`;\n rootStyle.transform = 'rotate(-90deg)';\n }\n return /*#__PURE__*/_jsx(CircularProgressRoot, {\n className: clsx(classes.root, className),\n style: {\n width: size,\n height: size,\n ...rootStyle,\n ...style\n },\n ownerState: ownerState,\n ref: ref,\n role: \"progressbar\",\n ...rootProps,\n ...other,\n children: /*#__PURE__*/_jsx(CircularProgressSVG, {\n className: classes.svg,\n ownerState: ownerState,\n viewBox: `${SIZE / 2} ${SIZE / 2} ${SIZE} ${SIZE}`,\n children: /*#__PURE__*/_jsx(CircularProgressCircle, {\n className: classes.circle,\n style: circleStyle,\n ownerState: ownerState,\n cx: SIZE,\n cy: SIZE,\n r: (SIZE - thickness) / 2,\n fill: \"none\",\n strokeWidth: thickness\n })\n })\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? CircularProgress.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['inherit', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the shrink animation is disabled.\n * This only works if variant is `indeterminate`.\n * @default false\n */\n disableShrink: chainPropTypes(PropTypes.bool, props => {\n if (props.disableShrink && props.variant && props.variant !== 'indeterminate') {\n return new Error('MUI: You have provided the `disableShrink` prop ' + 'with a variant other than `indeterminate`. This will have no effect.');\n }\n return null;\n }),\n /**\n * The size of the component.\n * If using a number, the pixel unit is assumed.\n * If using a string, you need to provide the CSS unit, for example '3rem'.\n * @default 40\n */\n size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The thickness of the circle.\n * @default 3.6\n */\n thickness: PropTypes.number,\n /**\n * The value of the progress indicator for the determinate variant.\n * Value between 0 and 100.\n * @default 0\n */\n value: PropTypes.number,\n /**\n * The variant to use.\n * Use indeterminate when there is no progress value.\n * @default 'indeterminate'\n */\n variant: PropTypes.oneOf(['determinate', 'indeterminate'])\n} : void 0;\nexport default CircularProgress;","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getCircularProgressUtilityClass(slot) {\n return generateUtilityClass('MuiCircularProgress', slot);\n}\nconst circularProgressClasses = generateUtilityClasses('MuiCircularProgress', ['root', 'determinate', 'indeterminate', 'colorPrimary', 'colorSecondary', 'svg', 'circle', 'circleDeterminate', 'circleIndeterminate', 'circleDisableShrink']);\nexport default circularProgressClasses;","'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { elementAcceptingRef, exactProp, unstable_ownerDocument as ownerDocument, unstable_useForkRef as useForkRef, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport getReactNodeRef from '@mui/utils/getReactNodeRef';\n\n// TODO: return `EventHandlerName extends `on${infer EventName}` ? Lowercase<EventName> : never` once generatePropTypes runs with TS 4.1\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction mapEventPropToEvent(eventProp) {\n return eventProp.substring(2).toLowerCase();\n}\nfunction clickedRootScrollbar(event, doc) {\n return doc.documentElement.clientWidth < event.clientX || doc.documentElement.clientHeight < event.clientY;\n}\n/**\n * Listen for click events that occur somewhere in the document, outside of the element itself.\n * For instance, if you need to hide a menu when people click anywhere else on your page.\n *\n * Demos:\n *\n * - [Click-Away Listener](https://mui.com/material-ui/react-click-away-listener/)\n * - [Menu](https://mui.com/material-ui/react-menu/)\n *\n * API:\n *\n * - [ClickAwayListener API](https://mui.com/material-ui/api/click-away-listener/)\n */\nfunction ClickAwayListener(props) {\n const {\n children,\n disableReactTree = false,\n mouseEvent = 'onClick',\n onClickAway,\n touchEvent = 'onTouchEnd'\n } = props;\n const movedRef = React.useRef(false);\n const nodeRef = React.useRef(null);\n const activatedRef = React.useRef(false);\n const syntheticEventRef = React.useRef(false);\n React.useEffect(() => {\n // Ensure that this component is not \"activated\" synchronously.\n // https://github.com/facebook/react/issues/20074\n setTimeout(() => {\n activatedRef.current = true;\n }, 0);\n return () => {\n activatedRef.current = false;\n };\n }, []);\n const handleRef = useForkRef(getReactNodeRef(children), nodeRef);\n\n // The handler doesn't take event.defaultPrevented into account:\n //\n // event.preventDefault() is meant to stop default behaviors like\n // clicking a checkbox to check it, hitting a button to submit a form,\n // and hitting left arrow to move the cursor in a text input etc.\n // Only special HTML elements have these default behaviors.\n const handleClickAway = useEventCallback(event => {\n // Given developers can stop the propagation of the synthetic event,\n // we can only be confident with a positive value.\n const insideReactTree = syntheticEventRef.current;\n syntheticEventRef.current = false;\n const doc = ownerDocument(nodeRef.current);\n\n // 1. IE11 support, which trigger the handleClickAway even after the unbind\n // 2. The child might render null.\n // 3. Behave like a blur listener.\n if (!activatedRef.current || !nodeRef.current || 'clientX' in event && clickedRootScrollbar(event, doc)) {\n return;\n }\n\n // Do not act if user performed touchmove\n if (movedRef.current) {\n movedRef.current = false;\n return;\n }\n let insideDOM;\n\n // If not enough, can use https://github.com/DieterHolvoet/event-propagation-path/blob/master/propagationPath.js\n if (event.composedPath) {\n insideDOM = event.composedPath().includes(nodeRef.current);\n } else {\n insideDOM = !doc.documentElement.contains(\n // @ts-expect-error returns `false` as intended when not dispatched from a Node\n event.target) || nodeRef.current.contains(\n // @ts-expect-error returns `false` as intended when not dispatched from a Node\n event.target);\n }\n if (!insideDOM && (disableReactTree || !insideReactTree)) {\n onClickAway(event);\n }\n });\n\n // Keep track of mouse/touch events that bubbled up through the portal.\n const createHandleSynthetic = handlerName => event => {\n syntheticEventRef.current = true;\n const childrenPropsHandler = children.props[handlerName];\n if (childrenPropsHandler) {\n childrenPropsHandler(event);\n }\n };\n const childrenProps = {\n ref: handleRef\n };\n if (touchEvent !== false) {\n childrenProps[touchEvent] = createHandleSynthetic(touchEvent);\n }\n React.useEffect(() => {\n if (touchEvent !== false) {\n const mappedTouchEvent = mapEventPropToEvent(touchEvent);\n const doc = ownerDocument(nodeRef.current);\n const handleTouchMove = () => {\n movedRef.current = true;\n };\n doc.addEventListener(mappedTouchEvent, handleClickAway);\n doc.addEventListener('touchmove', handleTouchMove);\n return () => {\n doc.removeEventListener(mappedTouchEvent, handleClickAway);\n doc.removeEventListener('touchmove', handleTouchMove);\n };\n }\n return undefined;\n }, [handleClickAway, touchEvent]);\n if (mouseEvent !== false) {\n childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);\n }\n React.useEffect(() => {\n if (mouseEvent !== false) {\n const mappedMouseEvent = mapEventPropToEvent(mouseEvent);\n const doc = ownerDocument(nodeRef.current);\n doc.addEventListener(mappedMouseEvent, handleClickAway);\n return () => {\n doc.removeEventListener(mappedMouseEvent, handleClickAway);\n };\n }\n return undefined;\n }, [handleClickAway, mouseEvent]);\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: /*#__PURE__*/React.cloneElement(children, childrenProps)\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? ClickAwayListener.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The wrapped element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * If `true`, the React tree is ignored and only the DOM tree is considered.\n * This prop changes how portaled elements are handled.\n * @default false\n */\n disableReactTree: PropTypes.bool,\n /**\n * The mouse event to listen to. You can disable the listener by providing `false`.\n * @default 'onClick'\n */\n mouseEvent: PropTypes.oneOf(['onClick', 'onMouseDown', 'onMouseUp', 'onPointerDown', 'onPointerUp', false]),\n /**\n * Callback fired when a \"click away\" event is detected.\n */\n onClickAway: PropTypes.func.isRequired,\n /**\n * The touch event to listen to. You can disable the listener by providing `false`.\n * @default 'onTouchEnd'\n */\n touchEvent: PropTypes.oneOf(['onTouchEnd', 'onTouchStart', false])\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line\n ClickAwayListener['propTypes' + ''] = exactProp(ClickAwayListener.propTypes);\n}\nexport { ClickAwayListener };","'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { styled } from \"../zero-styled/index.js\";\nimport memoTheme from \"../utils/memoTheme.js\";\nimport { useDefaultProps } from \"../DefaultPropsProvider/index.js\";\nimport { getToolbarUtilityClass } from \"./toolbarClasses.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disableGutters,\n variant\n } = ownerState;\n const slots = {\n root: ['root', !disableGutters && 'gutters', variant]\n };\n return composeClasses(slots, getToolbarUtilityClass, classes);\n};\nconst ToolbarRoot = styled('div', {\n name: 'MuiToolbar',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, !ownerState.disableGutters && styles.gutters, styles[ownerState.variant]];\n }\n})(memoTheme(({\n theme\n}) => ({\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n variants: [{\n props: ({\n ownerState\n }) => !ownerState.disableGutters,\n style: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n [theme.breakpoints.up('sm')]: {\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(3)\n }\n }\n }, {\n props: {\n variant: 'dense'\n },\n style: {\n minHeight: 48\n }\n }, {\n props: {\n variant: 'regular'\n },\n style: theme.mixins.toolbar\n }]\n})));\nconst Toolbar = /*#__PURE__*/React.forwardRef(function Toolbar(inProps, ref) {\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiToolbar'\n });\n const {\n className,\n component = 'div',\n disableGutters = false,\n variant = 'regular',\n ...other\n } = props;\n const ownerState = {\n ...props,\n component,\n disableGutters,\n variant\n };\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ToolbarRoot, {\n as: component,\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState,\n ...other\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Toolbar.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The Toolbar children, usually a mixture of `IconButton`, `Button` and `Typography`.\n * The Toolbar is a flex container, allowing flex item properties to be used to lay out the children.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, disables gutter padding.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'regular'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['dense', 'regular']), PropTypes.string])\n} : void 0;\nexport default Toolbar;","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getToolbarUtilityClass(slot) {\n return generateUtilityClass('MuiToolbar', slot);\n}\nconst toolbarClasses = generateUtilityClasses('MuiToolbar', ['root', 'gutters', 'regular', 'dense']);\nexport default toolbarClasses;","import createStyled from \"../createStyled/index.js\";\nconst styled = createStyled();\nexport default styled;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"DraggableCore\", {\n enumerable: true,\n get: function () {\n return _DraggableCore.default;\n }\n});\nexports.default = void 0;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\nvar _clsx = _interopRequireDefault(require(\"clsx\"));\nvar _domFns = require(\"./utils/domFns\");\nvar _positionFns = require(\"./utils/positionFns\");\nvar _shims = require(\"./utils/shims\");\nvar _DraggableCore = _interopRequireDefault(require(\"./DraggableCore\"));\nvar _log = _interopRequireDefault(require(\"./utils/log\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); } /*:: import type {ControlPosition, PositionOffsetControlPosition, DraggableCoreProps, DraggableCoreDefaultProps} from './DraggableCore';*/\n/*:: import type {Bounds, DraggableEventHandler} from './utils/types';*/\n/*:: import type {Element as ReactElement} from 'react';*/\n/*:: type DraggableState = {\n dragging: boolean,\n dragged: boolean,\n x: number, y: number,\n slackX: number, slackY: number,\n isElementSVG: boolean,\n prevPropsPosition: ?ControlPosition,\n};*/\n/*:: export type DraggableDefaultProps = {\n ...DraggableCoreDefaultProps,\n axis: 'both' | 'x' | 'y' | 'none',\n bounds: Bounds | string | false,\n defaultClassName: string,\n defaultClassNameDragging: string,\n defaultClassNameDragged: string,\n defaultPosition: ControlPosition,\n scale: number,\n};*/\n/*:: export type DraggableProps = {\n ...DraggableCoreProps,\n ...DraggableDefaultProps,\n positionOffset: PositionOffsetControlPosition,\n position: ControlPosition,\n};*/\n//\n// Define <Draggable>\n//\nclass Draggable extends React.Component /*:: <DraggableProps, DraggableState>*/{\n // React 16.3+\n // Arity (props, state)\n static getDerivedStateFromProps(_ref /*:: */, _ref2 /*:: */) /*: ?Partial<DraggableState>*/{\n let {\n position\n } /*: DraggableProps*/ = _ref /*: DraggableProps*/;\n let {\n prevPropsPosition\n } /*: DraggableState*/ = _ref2 /*: DraggableState*/;\n // Set x/y if a new position is provided in props that is different than the previous.\n if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {\n (0, _log.default)('Draggable: getDerivedStateFromProps %j', {\n position,\n prevPropsPosition\n });\n return {\n x: position.x,\n y: position.y,\n prevPropsPosition: {\n ...position\n }\n };\n }\n return null;\n }\n constructor(props /*: DraggableProps*/) {\n super(props);\n _defineProperty(this, \"onDragStart\", (e, coreData) => {\n (0, _log.default)('Draggable: onDragStart: %j', coreData);\n\n // Short-circuit if user's callback killed it.\n const shouldStart = this.props.onStart(e, (0, _positionFns.createDraggableData)(this, coreData));\n // Kills start event on core as well, so move handlers are never bound.\n if (shouldStart === false) return false;\n this.setState({\n dragging: true,\n dragged: true\n });\n });\n _defineProperty(this, \"onDrag\", (e, coreData) => {\n if (!this.state.dragging) return false;\n (0, _log.default)('Draggable: onDrag: %j', coreData);\n const uiData = (0, _positionFns.createDraggableData)(this, coreData);\n const newState = {\n x: uiData.x,\n y: uiData.y,\n slackX: 0,\n slackY: 0\n };\n\n // Keep within bounds.\n if (this.props.bounds) {\n // Save original x and y.\n const {\n x,\n y\n } = newState;\n\n // Add slack to the values used to calculate bound position. This will ensure that if\n // we start removing slack, the element won't react to it right away until it's been\n // completely removed.\n newState.x += this.state.slackX;\n newState.y += this.state.slackY;\n\n // Get bound position. This will ceil/floor the x and y within the boundaries.\n const [newStateX, newStateY] = (0, _positionFns.getBoundPosition)(this, newState.x, newState.y);\n newState.x = newStateX;\n newState.y = newStateY;\n\n // Recalculate slack by noting how much was shaved by the boundPosition handler.\n newState.slackX = this.state.slackX + (x - newState.x);\n newState.slackY = this.state.slackY + (y - newState.y);\n\n // Update the event we fire to reflect what really happened after bounds took effect.\n uiData.x = newState.x;\n uiData.y = newState.y;\n uiData.deltaX = newState.x - this.state.x;\n uiData.deltaY = newState.y - this.state.y;\n }\n\n // Short-circuit if user's callback killed it.\n const shouldUpdate = this.props.onDrag(e, uiData);\n if (shouldUpdate === false) return false;\n this.setState(newState);\n });\n _defineProperty(this, \"onDragStop\", (e, coreData) => {\n if (!this.state.dragging) return false;\n\n // Short-circuit if user's callback killed it.\n const shouldContinue = this.props.onStop(e, (0, _positionFns.createDraggableData)(this, coreData));\n if (shouldContinue === false) return false;\n (0, _log.default)('Draggable: onDragStop: %j', coreData);\n const newState /*: Partial<DraggableState>*/ = {\n dragging: false,\n slackX: 0,\n slackY: 0\n };\n\n // If this is a controlled component, the result of this operation will be to\n // revert back to the old position. We expect a handler on `onDragStop`, at the least.\n const controlled = Boolean(this.props.position);\n if (controlled) {\n const {\n x,\n y\n } = this.props.position;\n newState.x = x;\n newState.y = y;\n }\n this.setState(newState);\n });\n this.state = {\n // Whether or not we are currently dragging.\n dragging: false,\n // Whether or not we have been dragged before.\n dragged: false,\n // Current transform x and y.\n x: props.position ? props.position.x : props.defaultPosition.x,\n y: props.position ? props.position.y : props.defaultPosition.y,\n prevPropsPosition: {\n ...props.position\n },\n // Used for compensating for out-of-bounds drags\n slackX: 0,\n slackY: 0,\n // Can only determine if SVG after mounting\n isElementSVG: false\n };\n if (props.position && !(props.onDrag || props.onStop)) {\n // eslint-disable-next-line no-console\n console.warn('A `position` was applied to this <Draggable>, without drag handlers. This will make this ' + 'component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the ' + '`position` of this element.');\n }\n }\n componentDidMount() {\n // Check to see if the element passed is an instanceof SVGElement\n if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {\n this.setState({\n isElementSVG: true\n });\n }\n }\n componentWillUnmount() {\n this.setState({\n dragging: false\n }); // prevents invariant if unmounted while dragging\n }\n\n // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find\n // the underlying DOM node ourselves. See the README for more information.\n findDOMNode() /*: ?HTMLElement*/{\n var _this$props$nodeRef$c, _this$props;\n return (_this$props$nodeRef$c = (_this$props = this.props) === null || _this$props === void 0 || (_this$props = _this$props.nodeRef) === null || _this$props === void 0 ? void 0 : _this$props.current) !== null && _this$props$nodeRef$c !== void 0 ? _this$props$nodeRef$c : _reactDom.default.findDOMNode(this);\n }\n render() /*: ReactElement<any>*/{\n const {\n axis,\n bounds,\n children,\n defaultPosition,\n defaultClassName,\n defaultClassNameDragging,\n defaultClassNameDragged,\n position,\n positionOffset,\n scale,\n ...draggableCoreProps\n } = this.props;\n let style = {};\n let svgTransform = null;\n\n // If this is controlled, we don't want to move it - unless it's dragging.\n const controlled = Boolean(position);\n const draggable = !controlled || this.state.dragging;\n const validPosition = position || defaultPosition;\n const transformOpts = {\n // Set left if horizontal drag is enabled\n x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,\n // Set top if vertical drag is enabled\n y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y\n };\n\n // If this element was SVG, we use the `transform` attribute.\n if (this.state.isElementSVG) {\n svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);\n } else {\n // Add a CSS transform to move the element around. This allows us to move the element around\n // without worrying about whether or not it is relatively or absolutely positioned.\n // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>\n // has a clean slate.\n style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);\n }\n\n // Mark with class while dragging\n const className = (0, _clsx.default)(children.props.className || '', defaultClassName, {\n [defaultClassNameDragging]: this.state.dragging,\n [defaultClassNameDragged]: this.state.dragged\n });\n\n // Reuse the child provided\n // This makes it flexible to use whatever element is wanted (div, ul, etc)\n return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {\n onStart: this.onDragStart,\n onDrag: this.onDrag,\n onStop: this.onDragStop\n }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {\n className: className,\n style: {\n ...children.props.style,\n ...style\n },\n transform: svgTransform\n }));\n }\n}\nexports.default = Draggable;\n_defineProperty(Draggable, \"displayName\", 'Draggable');\n_defineProperty(Draggable, \"propTypes\", {\n // Accepts all props <DraggableCore> accepts.\n ..._DraggableCore.default.propTypes,\n /**\n * `axis` determines which axis the draggable can move.\n *\n * Note that all callbacks will still return data as normal. This only\n * controls flushing to the DOM.\n *\n * 'both' allows movement horizontally and vertically.\n * 'x' limits movement to horizontal axis.\n * 'y' limits movement to vertical axis.\n * 'none' limits all movement.\n *\n * Defaults to 'both'.\n */\n axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),\n /**\n * `bounds` determines the range of movement available to the element.\n * Available values are:\n *\n * 'parent' restricts movement within the Draggable's parent node.\n *\n * Alternatively, pass an object with the following properties, all of which are optional:\n *\n * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}\n *\n * All values are in px.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return (\n * <Draggable bounds={{right: 300, bottom: 300}}>\n * <div>Content</div>\n * </Draggable>\n * );\n * }\n * });\n * ```\n */\n bounds: _propTypes.default.oneOfType([_propTypes.default.shape({\n left: _propTypes.default.number,\n right: _propTypes.default.number,\n top: _propTypes.default.number,\n bottom: _propTypes.default.number\n }), _propTypes.default.string, _propTypes.default.oneOf([false])]),\n defaultClassName: _propTypes.default.string,\n defaultClassNameDragging: _propTypes.default.string,\n defaultClassNameDragged: _propTypes.default.string,\n /**\n * `defaultPosition` specifies the x and y that the dragged item should start at\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return (\n * <Draggable defaultPosition={{x: 25, y: 25}}>\n * <div>I start with transformX: 25px and transformY: 25px;</div>\n * </Draggable>\n * );\n * }\n * });\n * ```\n */\n defaultPosition: _propTypes.default.shape({\n x: _propTypes.default.number,\n y: _propTypes.default.number\n }),\n positionOffset: _propTypes.default.shape({\n x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])\n }),\n /**\n * `position`, if present, defines the current position of the element.\n *\n * This is similar to how form elements in React work - if no `position` is supplied, the component\n * is uncontrolled.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return (\n * <Draggable position={{x: 25, y: 25}}>\n * <div>I start with transformX: 25px and transformY: 25px;</div>\n * </Draggable>\n * );\n * }\n * });\n * ```\n */\n position: _propTypes.default.shape({\n x: _propTypes.default.number,\n y: _propTypes.default.number\n }),\n /**\n * These properties should be defined on the child, not here.\n */\n className: _shims.dontSetMe,\n style: _shims.dontSetMe,\n transform: _shims.dontSetMe\n});\n_defineProperty(Draggable, \"defaultProps\", {\n ..._DraggableCore.default.defaultProps,\n axis: 'both',\n bounds: false,\n defaultClassName: 'react-draggable',\n defaultClassNameDragging: 'react-draggable-dragging',\n defaultClassNameDragged: 'react-draggable-dragged',\n defaultPosition: {\n x: 0,\n y: 0\n },\n scale: 1\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\nvar _domFns = require(\"./utils/domFns\");\nvar _positionFns = require(\"./utils/positionFns\");\nvar _shims = require(\"./utils/shims\");\nvar _log = _interopRequireDefault(require(\"./utils/log\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n/*:: import type {EventHandler, MouseTouchEvent} from './utils/types';*/\n/*:: import type {Element as ReactElement} from 'react';*/\n// Simple abstraction for dragging events names.\nconst eventsFor = {\n touch: {\n start: 'touchstart',\n move: 'touchmove',\n stop: 'touchend'\n },\n mouse: {\n start: 'mousedown',\n move: 'mousemove',\n stop: 'mouseup'\n }\n};\n\n// Default to mouse events.\nlet dragEventFor = eventsFor.mouse;\n/*:: export type DraggableData = {\n node: HTMLElement,\n x: number, y: number,\n deltaX: number, deltaY: number,\n lastX: number, lastY: number,\n};*/\n/*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/\n/*:: export type ControlPosition = {x: number, y: number};*/\n/*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/\n/*:: export type DraggableCoreDefaultProps = {\n allowAnyClick: boolean,\n disabled: boolean,\n enableUserSelectHack: boolean,\n onStart: DraggableEventHandler,\n onDrag: DraggableEventHandler,\n onStop: DraggableEventHandler,\n onMouseDown: (e: MouseEvent) => void,\n scale: number,\n};*/\n/*:: export type DraggableCoreProps = {\n ...DraggableCoreDefaultProps,\n cancel: string,\n children: ReactElement<any>,\n offsetParent: HTMLElement,\n grid: [number, number],\n handle: string,\n nodeRef?: ?React.ElementRef<any>,\n};*/\n//\n// Define <DraggableCore>.\n//\n// <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can\n// work well with libraries that require more control over the element.\n//\n\nclass DraggableCore extends React.Component /*:: <DraggableCoreProps>*/{\n constructor() {\n super(...arguments);\n _defineProperty(this, \"dragging\", false);\n // Used while dragging to determine deltas.\n _defineProperty(this, \"lastX\", NaN);\n _defineProperty(this, \"lastY\", NaN);\n _defineProperty(this, \"touchIdentifier\", null);\n _defineProperty(this, \"mounted\", false);\n _defineProperty(this, \"handleDragStart\", e => {\n // Make it possible to attach event handlers on top of this one.\n this.props.onMouseDown(e);\n\n // Only accept left-clicks.\n if (!this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false;\n\n // Get nodes. Be sure to grab relative document (could be iframed)\n const thisNode = this.findDOMNode();\n if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {\n throw new Error('<DraggableCore> not mounted on DragStart!');\n }\n const {\n ownerDocument\n } = thisNode;\n\n // Short circuit if handle or cancel prop was provided and selector doesn't match.\n if (this.props.disabled || !(e.target instanceof ownerDocument.defaultView.Node) || this.props.handle && !(0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.handle, thisNode) || this.props.cancel && (0, _domFns.matchesSelectorAndParentsTo)(e.target, this.props.cancel, thisNode)) {\n return;\n }\n\n // Prevent scrolling on mobile devices, like ipad/iphone.\n // Important that this is after handle/cancel.\n if (e.type === 'touchstart') e.preventDefault();\n\n // Set touch identifier in component state if this is a touch event. This allows us to\n // distinguish between individual touches on multitouch screens by identifying which\n // touchpoint was set to this element.\n const touchIdentifier = (0, _domFns.getTouchIdentifier)(e);\n this.touchIdentifier = touchIdentifier;\n\n // Get the current drag point from the event. This is used as the offset.\n const position = (0, _positionFns.getControlPosition)(e, touchIdentifier, this);\n if (position == null) return; // not possible but satisfies flow\n const {\n x,\n y\n } = position;\n\n // Create an event object with all the data parents need to make a decision here.\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent);\n\n // Call event handler. If it returns explicit false, cancel.\n (0, _log.default)('calling', this.props.onStart);\n const shouldUpdate = this.props.onStart(e, coreEvent);\n if (shouldUpdate === false || this.mounted === false) return;\n\n // Add a style to the body to disable user-select. This prevents text from\n // being selected all over the page.\n if (this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument);\n\n // Initiate dragging. Set the current x and y as offsets\n // so we know how much we've moved during the drag. This allows us\n // to drag elements around even if they have been moved, without issue.\n this.dragging = true;\n this.lastX = x;\n this.lastY = y;\n\n // Add events to the document directly so we catch when the user's mouse/touch moves outside of\n // this element. We use different events depending on whether or not we have detected that this\n // is a touch-capable device.\n (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, this.handleDrag);\n (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, this.handleDragStop);\n });\n _defineProperty(this, \"handleDrag\", e => {\n // Get the current drag point from the event. This is used as the offset.\n const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);\n if (position == null) return;\n let {\n x,\n y\n } = position;\n\n // Snap to grid if prop has been provided\n if (Array.isArray(this.props.grid)) {\n let deltaX = x - this.lastX,\n deltaY = y - this.lastY;\n [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);\n if (!deltaX && !deltaY) return; // skip useless drag\n x = this.lastX + deltaX, y = this.lastY + deltaY;\n }\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent);\n\n // Call event handler. If it returns explicit false, trigger end.\n const shouldUpdate = this.props.onDrag(e, coreEvent);\n if (shouldUpdate === false || this.mounted === false) {\n try {\n // $FlowIgnore\n this.handleDragStop(new MouseEvent('mouseup'));\n } catch (err) {\n // Old browsers\n const event = ((document.createEvent('MouseEvents') /*: any*/) /*: MouseTouchEvent*/);\n // I see why this insanity was deprecated\n // $FlowIgnore\n event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\n this.handleDragStop(event);\n }\n return;\n }\n this.lastX = x;\n this.lastY = y;\n });\n _defineProperty(this, \"handleDragStop\", e => {\n if (!this.dragging) return;\n const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);\n if (position == null) return;\n let {\n x,\n y\n } = position;\n\n // Snap to grid if prop has been provided\n if (Array.isArray(this.props.grid)) {\n let deltaX = x - this.lastX || 0;\n let deltaY = y - this.lastY || 0;\n [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);\n x = this.lastX + deltaX, y = this.lastY + deltaY;\n }\n const coreEvent = (0, _positionFns.createCoreData)(this, x, y);\n\n // Call event handler\n const shouldContinue = this.props.onStop(e, coreEvent);\n if (shouldContinue === false || this.mounted === false) return false;\n const thisNode = this.findDOMNode();\n if (thisNode) {\n // Remove user-select hack\n if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);\n }\n (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent);\n\n // Reset the el.\n this.dragging = false;\n this.lastX = NaN;\n this.lastY = NaN;\n if (thisNode) {\n // Remove event handlers\n (0, _log.default)('DraggableCore: Removing handlers');\n (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, this.handleDrag);\n (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, this.handleDragStop);\n }\n });\n _defineProperty(this, \"onMouseDown\", e => {\n dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse\n\n return this.handleDragStart(e);\n });\n _defineProperty(this, \"onMouseUp\", e => {\n dragEventFor = eventsFor.mouse;\n return this.handleDragStop(e);\n });\n // Same as onMouseDown (start drag), but now consider this a touch device.\n _defineProperty(this, \"onTouchStart\", e => {\n // We're on a touch device now, so change the event handlers\n dragEventFor = eventsFor.touch;\n return this.handleDragStart(e);\n });\n _defineProperty(this, \"onTouchEnd\", e => {\n // We're on a touch device now, so change the event handlers\n dragEventFor = eventsFor.touch;\n return this.handleDragStop(e);\n });\n }\n componentDidMount() {\n this.mounted = true;\n // Touch handlers must be added with {passive: false} to be cancelable.\n // https://developers.google.com/web/updates/2017/01/scrolling-intervention\n const thisNode = this.findDOMNode();\n if (thisNode) {\n (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {\n passive: false\n });\n }\n }\n componentWillUnmount() {\n this.mounted = false;\n // Remove any leftover event handlers. Remove both touch and mouse handlers in case\n // some browser quirk caused a touch event to fire during a mouse move, or vice versa.\n const thisNode = this.findDOMNode();\n if (thisNode) {\n const {\n ownerDocument\n } = thisNode;\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);\n (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);\n (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {\n passive: false\n });\n if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);\n }\n }\n\n // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find\n // the underlying DOM node ourselves. See the README for more information.\n findDOMNode() /*: ?HTMLElement*/{\n var _this$props, _this$props2;\n return (_this$props = this.props) !== null && _this$props !== void 0 && _this$props.nodeRef ? (_this$props2 = this.props) === null || _this$props2 === void 0 || (_this$props2 = _this$props2.nodeRef) === null || _this$props2 === void 0 ? void 0 : _this$props2.current : _reactDom.default.findDOMNode(this);\n }\n render() /*: React.Element<any>*/{\n // Reuse the child provided\n // This makes it flexible to use whatever element is wanted (div, ul, etc)\n return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {\n // Note: mouseMove handler is attached to document so it will still function\n // when the user drags quickly and leaves the bounds of the element.\n onMouseDown: this.onMouseDown,\n onMouseUp: this.onMouseUp,\n // onTouchStart is added on `componentDidMount` so they can be added with\n // {passive: false}, which allows it to cancel. See\n // https://developers.google.com/web/updates/2017/01/scrolling-intervention\n onTouchEnd: this.onTouchEnd\n });\n }\n}\nexports.default = DraggableCore;\n_defineProperty(DraggableCore, \"displayName\", 'DraggableCore');\n_defineProperty(DraggableCore, \"propTypes\", {\n /**\n * `allowAnyClick` allows dragging using any mouse button.\n * By default, we only accept the left button.\n *\n * Defaults to `false`.\n */\n allowAnyClick: _propTypes.default.bool,\n children: _propTypes.default.node.isRequired,\n /**\n * `disabled`, if true, stops the <Draggable> from dragging. All handlers,\n * with the exception of `onMouseDown`, will not fire.\n */\n disabled: _propTypes.default.bool,\n /**\n * By default, we add 'user-select:none' attributes to the document body\n * to prevent ugly text selection during drag. If this is causing problems\n * for your app, set this to `false`.\n */\n enableUserSelectHack: _propTypes.default.bool,\n /**\n * `offsetParent`, if set, uses the passed DOM node to compute drag offsets\n * instead of using the parent node.\n */\n offsetParent: function (props /*: DraggableCoreProps*/, propName /*: $Keys<DraggableCoreProps>*/) {\n if (props[propName] && props[propName].nodeType !== 1) {\n throw new Error('Draggable\\'s offsetParent must be a DOM Node.');\n }\n },\n /**\n * `grid` specifies the x and y that dragging should snap to.\n */\n grid: _propTypes.default.arrayOf(_propTypes.default.number),\n /**\n * `handle` specifies a selector to be used as the handle that initiates drag.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return (\n * <Draggable handle=\".handle\">\n * <div>\n * <div className=\"handle\">Click me to drag</div>\n * <div>This is some other content</div>\n * </div>\n * </Draggable>\n * );\n * }\n * });\n * ```\n */\n handle: _propTypes.default.string,\n /**\n * `cancel` specifies a selector to be used to prevent drag initialization.\n *\n * Example:\n *\n * ```jsx\n * let App = React.createClass({\n * render: function () {\n * return(\n * <Draggable cancel=\".cancel\">\n * <div>\n * <div className=\"cancel\">You can't drag from here</div>\n * <div>Dragging here works fine</div>\n * </div>\n * </Draggable>\n * );\n * }\n * });\n * ```\n */\n cancel: _propTypes.default.string,\n /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.\n * Unfortunately, in order for <Draggable> to work properly, we need raw access\n * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`\n * as in this example:\n *\n * function MyComponent() {\n * const nodeRef = React.useRef(null);\n * return (\n * <Draggable nodeRef={nodeRef}>\n * <div ref={nodeRef}>Example Target</div>\n * </Draggable>\n * );\n * }\n *\n * This can be used for arbitrarily nested components, so long as the ref ends up\n * pointing to the actual child DOM node and not a custom component.\n */\n nodeRef: _propTypes.default.object,\n /**\n * Called when dragging starts.\n * If this function returns the boolean false, dragging will be canceled.\n */\n onStart: _propTypes.default.func,\n /**\n * Called while dragging.\n * If this function returns the boolean false, dragging will be canceled.\n */\n onDrag: _propTypes.default.func,\n /**\n * Called when dragging stops.\n * If this function returns the boolean false, the drag will remain active.\n */\n onStop: _propTypes.default.func,\n /**\n * A workaround option which can be passed if onMouseDown needs to be accessed,\n * since it'll always be blocked (as there is internal use of onMouseDown)\n */\n onMouseDown: _propTypes.default.func,\n /**\n * `scale`, if set, applies scaling while dragging an element\n */\n scale: _propTypes.default.number,\n /**\n * These properties should be defined on the child, not here.\n */\n className: _shims.dontSetMe,\n style: _shims.dontSetMe,\n transform: _shims.dontSetMe\n});\n_defineProperty(DraggableCore, \"defaultProps\", {\n allowAnyClick: false,\n // by default only accept left click\n disabled: false,\n enableUserSelectHack: true,\n onStart: function () {},\n onDrag: function () {},\n onStop: function () {},\n onMouseDown: function () {},\n scale: 1\n});","\"use strict\";\n\nconst {\n default: Draggable,\n DraggableCore\n} = require('./Draggable');\n\n// Previous versions of this lib exported <Draggable> as the root export. As to no-// them, or TypeScript, we export *both* as the root and as 'default'.\n// See https://github.com/mzabriskie/react-draggable/pull/254\n// and https://github.com/mzabriskie/react-draggable/issues/266\nmodule.exports = Draggable;\nmodule.exports.default = Draggable;\nmodule.exports.DraggableCore = DraggableCore;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.addClassName = addClassName;\nexports.addEvent = addEvent;\nexports.addUserSelectStyles = addUserSelectStyles;\nexports.createCSSTransform = createCSSTransform;\nexports.createSVGTransform = createSVGTransform;\nexports.getTouch = getTouch;\nexports.getTouchIdentifier = getTouchIdentifier;\nexports.getTranslation = getTranslation;\nexports.innerHeight = innerHeight;\nexports.innerWidth = innerWidth;\nexports.matchesSelector = matchesSelector;\nexports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;\nexports.offsetXYFromParent = offsetXYFromParent;\nexports.outerHeight = outerHeight;\nexports.outerWidth = outerWidth;\nexports.removeClassName = removeClassName;\nexports.removeEvent = removeEvent;\nexports.removeUserSelectStyles = removeUserSelectStyles;\nvar _shims = require(\"./shims\");\nvar _getPrefix = _interopRequireWildcard(require(\"./getPrefix\"));\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n/*:: import type {ControlPosition, PositionOffsetControlPosition, MouseTouchEvent} from './types';*/\nlet matchesSelectorFunc = '';\nfunction matchesSelector(el /*: Node*/, selector /*: string*/) /*: boolean*/{\n if (!matchesSelectorFunc) {\n matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {\n // $FlowIgnore: Doesn't think elements are indexable\n return (0, _shims.isFunction)(el[method]);\n });\n }\n\n // Might not be found entirely (not an Element?) - in that case, bail\n // $FlowIgnore: Doesn't think elements are indexable\n if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false;\n\n // $FlowIgnore: Doesn't think elements are indexable\n return el[matchesSelectorFunc](selector);\n}\n\n// Works up the tree to the draggable itself attempting to match selector.\nfunction matchesSelectorAndParentsTo(el /*: Node*/, selector /*: string*/, baseNode /*: Node*/) /*: boolean*/{\n let node = el;\n do {\n if (matchesSelector(node, selector)) return true;\n if (node === baseNode) return false;\n // $FlowIgnore[incompatible-type]\n node = node.parentNode;\n } while (node);\n return false;\n}\nfunction addEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{\n if (!el) return;\n const options = {\n capture: true,\n ...inputOptions\n };\n // $FlowIgnore[method-unbinding]\n if (el.addEventListener) {\n el.addEventListener(event, handler, options);\n } else if (el.attachEvent) {\n el.attachEvent('on' + event, handler);\n } else {\n // $FlowIgnore: Doesn't think elements are indexable\n el['on' + event] = handler;\n }\n}\nfunction removeEvent(el /*: ?Node*/, event /*: string*/, handler /*: Function*/, inputOptions /*: Object*/) /*: void*/{\n if (!el) return;\n const options = {\n capture: true,\n ...inputOptions\n };\n // $FlowIgnore[method-unbinding]\n if (el.removeEventListener) {\n el.removeEventListener(event, handler, options);\n } else if (el.detachEvent) {\n el.detachEvent('on' + event, handler);\n } else {\n // $FlowIgnore: Doesn't think elements are indexable\n el['on' + event] = null;\n }\n}\nfunction outerHeight(node /*: HTMLElement*/) /*: number*/{\n // This is deliberately excluding margin for our calculations, since we are using\n // offsetTop which is including margin. See getBoundPosition\n let height = node.clientHeight;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n height += (0, _shims.int)(computedStyle.borderTopWidth);\n height += (0, _shims.int)(computedStyle.borderBottomWidth);\n return height;\n}\nfunction outerWidth(node /*: HTMLElement*/) /*: number*/{\n // This is deliberately excluding margin for our calculations, since we are using\n // offsetLeft which is including margin. See getBoundPosition\n let width = node.clientWidth;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n width += (0, _shims.int)(computedStyle.borderLeftWidth);\n width += (0, _shims.int)(computedStyle.borderRightWidth);\n return width;\n}\nfunction innerHeight(node /*: HTMLElement*/) /*: number*/{\n let height = node.clientHeight;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n height -= (0, _shims.int)(computedStyle.paddingTop);\n height -= (0, _shims.int)(computedStyle.paddingBottom);\n return height;\n}\nfunction innerWidth(node /*: HTMLElement*/) /*: number*/{\n let width = node.clientWidth;\n const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);\n width -= (0, _shims.int)(computedStyle.paddingLeft);\n width -= (0, _shims.int)(computedStyle.paddingRight);\n return width;\n}\n/*:: interface EventWithOffset {\n clientX: number, clientY: number\n}*/\n// Get from offsetParent\nfunction offsetXYFromParent(evt /*: EventWithOffset*/, offsetParent /*: HTMLElement*/, scale /*: number*/) /*: ControlPosition*/{\n const isBody = offsetParent === offsetParent.ownerDocument.body;\n const offsetParentRect = isBody ? {\n left: 0,\n top: 0\n } : offsetParent.getBoundingClientRect();\n const x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;\n const y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;\n return {\n x,\n y\n };\n}\nfunction createCSSTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: Object*/{\n const translation = getTranslation(controlPos, positionOffset, 'px');\n return {\n [(0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default)]: translation\n };\n}\nfunction createSVGTransform(controlPos /*: ControlPosition*/, positionOffset /*: PositionOffsetControlPosition*/) /*: string*/{\n const translation = getTranslation(controlPos, positionOffset, '');\n return translation;\n}\nfunction getTranslation(_ref /*:: */, positionOffset /*: PositionOffsetControlPosition*/, unitSuffix /*: string*/) /*: string*/{\n let {\n x,\n y\n } /*: ControlPosition*/ = _ref /*: ControlPosition*/;\n let translation = \"translate(\".concat(x).concat(unitSuffix, \",\").concat(y).concat(unitSuffix, \")\");\n if (positionOffset) {\n const defaultX = \"\".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);\n const defaultY = \"\".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);\n translation = \"translate(\".concat(defaultX, \", \").concat(defaultY, \")\") + translation;\n }\n return translation;\n}\nfunction getTouch(e /*: MouseTouchEvent*/, identifier /*: number*/) /*: ?{clientX: number, clientY: number}*/{\n return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, t => identifier === t.identifier) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, t => identifier === t.identifier);\n}\nfunction getTouchIdentifier(e /*: MouseTouchEvent*/) /*: ?number*/{\n if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;\n if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;\n}\n\n// User-select Hacks:\n//\n// Useful for preventing blue highlights all over everything when dragging.\n\n// Note we're passing `document` b/c we could be iframed\nfunction addUserSelectStyles(doc /*: ?Document*/) {\n if (!doc) return;\n let styleEl = doc.getElementById('react-draggable-style-el');\n if (!styleEl) {\n styleEl = doc.createElement('style');\n styleEl.type = 'text/css';\n styleEl.id = 'react-draggable-style-el';\n styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\\n';\n styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\\n';\n doc.getElementsByTagName('head')[0].appendChild(styleEl);\n }\n if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');\n}\nfunction removeUserSelectStyles(doc /*: ?Document*/) {\n if (!doc) return;\n try {\n if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection');\n // $FlowIgnore: IE\n if (doc.selection) {\n // $FlowIgnore: IE\n doc.selection.empty();\n } else {\n // Remove selection caused by scroll, unless it's a focused input\n // (we use doc.defaultView in case we're in an iframe)\n const selection = (doc.defaultView || window).getSelection();\n if (selection && selection.type !== 'Caret') {\n selection.removeAllRanges();\n }\n }\n } catch (e) {\n // probably IE\n }\n}\nfunction addClassName(el /*: HTMLElement*/, className /*: string*/) {\n if (el.classList) {\n el.classList.add(className);\n } else {\n if (!el.className.match(new RegExp(\"(?:^|\\\\s)\".concat(className, \"(?!\\\\S)\")))) {\n el.className += \" \".concat(className);\n }\n }\n}\nfunction removeClassName(el /*: HTMLElement*/, className /*: string*/) {\n if (el.classList) {\n el.classList.remove(className);\n } else {\n el.className = el.className.replace(new RegExp(\"(?:^|\\\\s)\".concat(className, \"(?!\\\\S)\"), 'g'), '');\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.browserPrefixToKey = browserPrefixToKey;\nexports.browserPrefixToStyle = browserPrefixToStyle;\nexports.default = void 0;\nexports.getPrefix = getPrefix;\nconst prefixes = ['Moz', 'Webkit', 'O', 'ms'];\nfunction getPrefix() /*: string*/{\n var _window$document;\n let prop /*: string*/ = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';\n // Ensure we're running in an environment where there is actually a global\n // `window` obj\n if (typeof window === 'undefined') return '';\n\n // If we're in a pseudo-browser server-side environment, this access\n // path may not exist, so bail out if it doesn't.\n const style = (_window$document = window.document) === null || _window$document === void 0 || (_window$document = _window$document.documentElement) === null || _window$document === void 0 ? void 0 : _window$document.style;\n if (!style) return '';\n if (prop in style) return '';\n for (let i = 0; i < prefixes.length; i++) {\n if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];\n }\n return '';\n}\nfunction browserPrefixToKey(prop /*: string*/, prefix /*: string*/) /*: string*/{\n return prefix ? \"\".concat(prefix).concat(kebabToTitleCase(prop)) : prop;\n}\nfunction browserPrefixToStyle(prop /*: string*/, prefix /*: string*/) /*: string*/{\n return prefix ? \"-\".concat(prefix.toLowerCase(), \"-\").concat(prop) : prop;\n}\nfunction kebabToTitleCase(str /*: string*/) /*: string*/{\n let out = '';\n let shouldCapitalize = true;\n for (let i = 0; i < str.length; i++) {\n if (shouldCapitalize) {\n out += str[i].toUpperCase();\n shouldCapitalize = false;\n } else if (str[i] === '-') {\n shouldCapitalize = true;\n } else {\n out += str[i];\n }\n }\n return out;\n}\n\n// Default export is the prefix itself, like 'Moz', 'Webkit', etc\n// Note that you may have to re-test for certain things; for instance, Chrome 50\n// can handle unprefixed `transform`, but not unprefixed `user-select`\nvar _default = exports.default = (getPrefix() /*: string*/);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = log;\n/*eslint no-console:0*/\nfunction log() {\n if (undefined) console.log(...arguments);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canDragX = canDragX;\nexports.canDragY = canDragY;\nexports.createCoreData = createCoreData;\nexports.createDraggableData = createDraggableData;\nexports.getBoundPosition = getBoundPosition;\nexports.getControlPosition = getControlPosition;\nexports.snapToGrid = snapToGrid;\nvar _shims = require(\"./shims\");\nvar _domFns = require(\"./domFns\");\n/*:: import type Draggable from '../Draggable';*/\n/*:: import type {Bounds, ControlPosition, DraggableData, MouseTouchEvent} from './types';*/\n/*:: import type DraggableCore from '../DraggableCore';*/\nfunction getBoundPosition(draggable /*: Draggable*/, x /*: number*/, y /*: number*/) /*: [number, number]*/{\n // If no bounds, short-circuit and move on\n if (!draggable.props.bounds) return [x, y];\n\n // Clone new bounds\n let {\n bounds\n } = draggable.props;\n bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);\n const node = findDOMNode(draggable);\n if (typeof bounds === 'string') {\n const {\n ownerDocument\n } = node;\n const ownerWindow = ownerDocument.defaultView;\n let boundNode;\n if (bounds === 'parent') {\n boundNode = node.parentNode;\n } else {\n boundNode = ownerDocument.querySelector(bounds);\n }\n if (!(boundNode instanceof ownerWindow.HTMLElement)) {\n throw new Error('Bounds selector \"' + bounds + '\" could not find an element.');\n }\n const boundNodeEl /*: HTMLElement*/ = boundNode; // for Flow, can't seem to refine correctly\n const nodeStyle = ownerWindow.getComputedStyle(node);\n const boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl);\n // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.\n bounds = {\n left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),\n top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),\n right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),\n bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)\n };\n }\n\n // Keep x and y below right and bottom limits...\n if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);\n if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom);\n\n // But above left and top limits.\n if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);\n if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);\n return [x, y];\n}\nfunction snapToGrid(grid /*: [number, number]*/, pendingX /*: number*/, pendingY /*: number*/) /*: [number, number]*/{\n const x = Math.round(pendingX / grid[0]) * grid[0];\n const y = Math.round(pendingY / grid[1]) * grid[1];\n return [x, y];\n}\nfunction canDragX(draggable /*: Draggable*/) /*: boolean*/{\n return draggable.props.axis === 'both' || draggable.props.axis === 'x';\n}\nfunction canDragY(draggable /*: Draggable*/) /*: boolean*/{\n return draggable.props.axis === 'both' || draggable.props.axis === 'y';\n}\n\n// Get {x, y} positions from event.\nfunction getControlPosition(e /*: MouseTouchEvent*/, touchIdentifier /*: ?number*/, draggableCore /*: DraggableCore*/) /*: ?ControlPosition*/{\n const touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;\n if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch\n const node = findDOMNode(draggableCore);\n // User can provide an offsetParent if desired.\n const offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;\n return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);\n}\n\n// Create an data object exposed by <DraggableCore>'s events\nfunction createCoreData(draggable /*: DraggableCore*/, x /*: number*/, y /*: number*/) /*: DraggableData*/{\n const isStart = !(0, _shims.isNum)(draggable.lastX);\n const node = findDOMNode(draggable);\n if (isStart) {\n // If this is our first move, use the x and y as last coords.\n return {\n node,\n deltaX: 0,\n deltaY: 0,\n lastX: x,\n lastY: y,\n x,\n y\n };\n } else {\n // Otherwise calculate proper values.\n return {\n node,\n deltaX: x - draggable.lastX,\n deltaY: y - draggable.lastY,\n lastX: draggable.lastX,\n lastY: draggable.lastY,\n x,\n y\n };\n }\n}\n\n// Create an data exposed by <Draggable>'s events\nfunction createDraggableData(draggable /*: Draggable*/, coreData /*: DraggableData*/) /*: DraggableData*/{\n const scale = draggable.props.scale;\n return {\n node: coreData.node,\n x: draggable.state.x + coreData.deltaX / scale,\n y: draggable.state.y + coreData.deltaY / scale,\n deltaX: coreData.deltaX / scale,\n deltaY: coreData.deltaY / scale,\n lastX: draggable.state.x,\n lastY: draggable.state.y\n };\n}\n\n// A lot faster than stringify/parse\nfunction cloneBounds(bounds /*: Bounds*/) /*: Bounds*/{\n return {\n left: bounds.left,\n top: bounds.top,\n right: bounds.right,\n bottom: bounds.bottom\n };\n}\nfunction findDOMNode(draggable /*: Draggable | DraggableCore*/) /*: HTMLElement*/{\n const node = draggable.findDOMNode();\n if (!node) {\n throw new Error('<DraggableCore>: Unmounted during event!');\n }\n // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME\n return node;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.dontSetMe = dontSetMe;\nexports.findInArray = findInArray;\nexports.int = int;\nexports.isFunction = isFunction;\nexports.isNum = isNum;\n// @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc\nfunction findInArray(array /*: Array<any> | TouchList*/, callback /*: Function*/) /*: any*/{\n for (let i = 0, length = array.length; i < length; i++) {\n if (callback.apply(callback, [array[i], i, array])) return array[i];\n }\n}\nfunction isFunction(func /*: any*/) /*: boolean %checks*/{\n // $FlowIgnore[method-unbinding]\n return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';\n}\nfunction isNum(num /*: any*/) /*: boolean %checks*/{\n return typeof num === 'number' && !isNaN(num);\n}\nfunction int(a /*: string*/) /*: number*/{\n return parseInt(a, 10);\n}\nfunction dontSetMe(props /*: Object*/, propName /*: string*/, componentName /*: string*/) /*: ?Error*/{\n if (props[propName]) {\n return new Error(\"Invalid prop \".concat(propName, \" passed to \").concat(componentName, \" - do not set this, set it on the child.\"));\n }\n}","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f);else for(t in e)e[t]&&(n&&(n+=\" \"),n+=t);return n}export function clsx(){for(var e,t,f=0,n=\"\";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;"],"names":["BadgeRoot","styled","name","slot","overridesResolver","props","styles","root","position","display","verticalAlign","flexShrink","BadgeBadge","ownerState","badge","variant","capitalize","anchorOrigin","vertical","horizontal","overlap","color","invisible","memoTheme","theme","flexDirection","flexWrap","justifyContent","alignContent","alignItems","boxSizing","fontFamily","typography","fontWeight","fontWeightMedium","fontSize","pxToRem","minWidth","RADIUS_STANDARD","lineHeight","padding","height","borderRadius","zIndex","transition","transitions","create","easing","easeInOut","duration","enteringScreen","variants","Object","entries","palette","filter","createSimplePaletteValueFilter","map","style","backgroundColor","vars","main","contrastText","RADIUS_DOT","top","right","transform","transformOrigin","badgeClasses","bottom","left","leavingScreen","inProps","ref","anchorOriginProp","className","classes","classesProp","component","components","componentsProps","children","overlapProp","colorProp","invisibleProp","max","maxProp","badgeContent","badgeContentProp","slots","slotProps","showZero","variantProp","other","invisibleFromHook","displayValue","displayValueFromHook","parameters","prevProps","usePreviousProps","Number","undefined","composeClasses","useUtilityClasses","RootSlot","Root","BadgeSlot","Badge","rootSlotProps","badgeSlotProps","rootProps","useSlotProps","elementType","externalSlotProps","externalForwardedProps","additionalProps","as","clsx","badgeProps","getBadgeUtilityClass","circularRotateKeyframe","circularDashKeyframe","rotateAnimation","dashAnimation","CircularProgressRoot","animation","CircularProgressSVG","svg","CircularProgressCircle","circle","disableShrink","circleDisableShrink","stroke","strokeDasharray","strokeDashoffset","size","thickness","value","circleStyle","rootStyle","circumference","Math","PI","toFixed","round","width","role","viewBox","cx","cy","r","fill","strokeWidth","getCircularProgressUtilityClass","mapEventPropToEvent","eventProp","substring","toLowerCase","ClickAwayListener","disableReactTree","mouseEvent","onClickAway","touchEvent","movedRef","nodeRef","activatedRef","syntheticEventRef","setTimeout","current","handleRef","handleClickAway","event","insideReactTree","doc","documentElement","clientWidth","clientX","clientHeight","clientY","clickedRootScrollbar","insideDOM","composedPath","includes","contains","target","createHandleSynthetic","handlerName","childrenPropsHandler","childrenProps","mappedTouchEvent","handleTouchMove","addEventListener","removeEventListener","mappedMouseEvent","ToolbarRoot","disableGutters","gutters","paddingLeft","spacing","paddingRight","breakpoints","up","minHeight","mixins","toolbar","getToolbarUtilityClass","defineProperty","exports","enumerable","get","_DraggableCore","default","React","obj","nodeInterop","__esModule","cache","_getRequireWildcardCache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","_propTypes","_interopRequireDefault","_reactDom","_clsx","_domFns","_positionFns","_shims","_log","WeakMap","cacheBabelInterop","cacheNodeInterop","_extends","assign","bind","i","arguments","length","source","apply","this","_defineProperty","arg","input","prim","Symbol","toPrimitive","res","hint","TypeError","String","_toPrimitive","_toPropertyKey","configurable","writable","Draggable","Component","getDerivedStateFromProps","_ref","_ref2","prevPropsPosition","x","y","constructor","super","e","coreData","onStart","createDraggableData","setState","dragging","dragged","state","uiData","newState","slackX","slackY","bounds","newStateX","newStateY","getBoundPosition","deltaX","deltaY","onDrag","onStop","Boolean","defaultPosition","isElementSVG","console","warn","componentDidMount","window","SVGElement","findDOMNode","componentWillUnmount","_this$props$nodeRef$c","_this$props","render","axis","defaultClassName","defaultClassNameDragging","defaultClassNameDragged","positionOffset","scale","draggableCoreProps","svgTransform","draggable","validPosition","transformOpts","canDragX","canDragY","createSVGTransform","createCSSTransform","createElement","onDragStart","onDragStop","cloneElement","Children","only","propTypes","oneOf","oneOfType","shape","number","string","dontSetMe","defaultProps","eventsFor","start","move","stop","dragEventFor","DraggableCore","NaN","onMouseDown","allowAnyClick","button","thisNode","ownerDocument","body","Error","disabled","defaultView","Node","handle","matchesSelectorAndParentsTo","cancel","type","preventDefault","touchIdentifier","getTouchIdentifier","getControlPosition","coreEvent","createCoreData","mounted","enableUserSelectHack","addUserSelectStyles","lastX","lastY","addEvent","handleDrag","handleDragStop","Array","isArray","grid","snapToGrid","MouseEvent","err","document","createEvent","initMouseEvent","removeUserSelectStyles","removeEvent","handleDragStart","onTouchStart","passive","_this$props2","onMouseUp","onTouchEnd","bool","node","isRequired","offsetParent","propName","nodeType","arrayOf","object","func","module","addClassName","el","handler","inputOptions","options","capture","attachEvent","styleEl","getElementById","id","innerHTML","getElementsByTagName","appendChild","controlPos","translation","getTranslation","_getPrefix","browserPrefixToKey","getTouch","identifier","targetTouches","findInArray","t","changedTouches","innerHeight","computedStyle","getComputedStyle","int","paddingTop","paddingBottom","innerWidth","matchesSelector","selector","baseNode","parentNode","offsetXYFromParent","evt","offsetParentRect","getBoundingClientRect","scrollLeft","scrollTop","outerHeight","borderTopWidth","borderBottomWidth","outerWidth","borderLeftWidth","borderRightWidth","removeClassName","detachEvent","selection","empty","getSelection","removeAllRanges","matchesSelectorFunc","method","isFunction","unitSuffix","concat","defaultX","defaultY","classList","add","match","RegExp","remove","replace","browserPrefixToStyle","prop","prefix","getPrefix","prefixes","_window$document","str","out","shouldCapitalize","toUpperCase","kebabToTitleCase","isStart","isNum","cloneBounds","ownerWindow","boundNode","querySelector","HTMLElement","boundNodeEl","nodeStyle","boundNodeStyle","offsetLeft","marginLeft","offsetTop","marginTop","marginRight","marginBottom","min","draggableCore","touchObj","pendingX","pendingY","componentName","array","callback","a","parseInt","toString","num","isNaN","f","n"],"sourceRoot":""}