diff x/static/js/6205.903f897d.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 diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/x/static/js/6205.903f897d.chunk.js.map	Sat Oct 05 23:58:05 2024 +0000
@@ -0,0 +1,1 @@
+{"version":3,"file":"static/js/6205.903f897d.chunk.js","mappings":"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","sources":["../../../node_modules/@mui/icons-material/esm/RotateLeft.js","../../../node_modules/@mui/icons-material/esm/RotateRight.js","../../../node_modules/@mui/icons-material/esm/LockOpen.js","../../../plugins/circular-view/src/CircularView/components/Controls.tsx","../../../plugins/circular-view/src/CircularView/components/ImportForm.tsx","../../../plugins/circular-view/src/CircularView/components/CircularView.tsx","../../../plugins/circular-view/src/CircularView/components/ExportSvgDialog.tsx","../../../plugins/circular-view/src/CircularView/components/Ruler.tsx","../../../node_modules/@mui/icons-material/esm/Lock.js","../../../node_modules/@mui/material/CircularProgress/CircularProgress.js","../../../node_modules/@mui/material/CircularProgress/circularProgressClasses.js","../../../node_modules/@mui/system/Container/createContainer.js","../../../node_modules/@mui/material/Container/Container.js","../../../node_modules/@mui/system/styled/styled.js"],"sourcesContent":["\"use client\";\n\nimport createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n  d: \"M7.11 8.53 5.7 7.11C4.8 8.27 4.24 9.61 4.07 11h2.02c.14-.87.49-1.72 1.02-2.47M6.09 13H4.07c.17 1.39.72 2.73 1.62 3.89l1.41-1.42c-.52-.75-.87-1.59-1.01-2.47m1.01 5.32c1.16.9 2.51 1.44 3.9 1.61V17.9c-.87-.15-1.71-.49-2.46-1.03zM13 4.07V1L8.45 5.55 13 10V6.09c2.84.48 5 2.94 5 5.91s-2.16 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93s-3.05-7.44-7-7.93\"\n}), 'RotateLeft');","\"use client\";\n\nimport createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n  d: \"M15.55 5.55 11 1v3.07C7.06 4.56 4 7.92 4 12s3.05 7.44 7 7.93v-2.02c-2.84-.48-5-2.94-5-5.91s2.16-5.43 5-5.91V10zM19.93 11c-.17-1.39-.72-2.73-1.62-3.89l-1.42 1.42c.54.75.88 1.6 1.02 2.47zM13 17.9v2.02c1.39-.17 2.74-.71 3.9-1.61l-1.44-1.44c-.75.54-1.59.89-2.46 1.03m3.89-2.42 1.42 1.41c.9-1.16 1.45-2.5 1.62-3.89h-2.02c-.14.87-.48 1.72-1.02 2.48\"\n}), 'RotateRight');","\"use client\";\n\nimport createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n  d: \"M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m0 12H6V10h12z\"\n}), 'LockOpen');","import React, { useState } from 'react'\nimport { observer } from 'mobx-react'\nimport { IconButton } from '@mui/material'\nimport { makeStyles } from 'tss-react/mui'\nimport JBrowseMenu from '@jbrowse/core/ui/Menu'\n\n// icons\nimport ZoomOutIcon from '@mui/icons-material/ZoomOut'\nimport ZoomInIcon from '@mui/icons-material/ZoomIn'\nimport RotateLeftIcon from '@mui/icons-material/RotateLeft'\nimport RotateRightIcon from '@mui/icons-material/RotateRight'\nimport LockOpenIcon from '@mui/icons-material/LockOpen'\nimport LockIcon from '@mui/icons-material/Lock'\nimport PhotoCamera from '@mui/icons-material/PhotoCamera'\nimport MoreVert from '@mui/icons-material/MoreVert'\nimport { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons'\n\n// locals\nimport { CircularViewModel } from '../models/model'\nimport { getSession } from '@jbrowse/core/util'\nimport ExportSvgDialog from './ExportSvgDialog'\n\nconst useStyles = makeStyles()(theme => ({\n  controls: {\n    position: 'absolute',\n    borderRight: `1px solid ${theme.palette.divider}`,\n    borderBottom: `1px solid ${theme.palette.divider}`,\n    left: 0,\n    top: 0,\n  },\n}))\n\nconst Controls = observer(function ({ model }: { model: CircularViewModel }) {\n  const { classes } = useStyles()\n  const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)\n  return (\n    <div className={classes.controls}>\n      <IconButton\n        onClick={model.zoomOutButton}\n        title={model.lockedFitToWindow ? 'unlock to zoom out' : 'zoom out'}\n        disabled={model.atMaxBpPerPx || model.lockedFitToWindow}\n      >\n        <ZoomOutIcon />\n      </IconButton>\n\n      <IconButton\n        onClick={model.zoomInButton}\n        disabled={model.atMinBpPerPx}\n        title=\"zoom in\"\n      >\n        <ZoomInIcon />\n      </IconButton>\n\n      <IconButton\n        onClick={model.rotateCounterClockwiseButton}\n        title=\"rotate counter-clockwise\"\n      >\n        <RotateLeftIcon />\n      </IconButton>\n\n      <IconButton\n        onClick={model.rotateClockwiseButton}\n        title=\"rotate clockwise\"\n      >\n        <RotateRightIcon />\n      </IconButton>\n\n      <IconButton\n        onClick={model.toggleFitToWindowLock}\n        title={\n          model.lockedFitToWindow\n            ? 'locked model to window size'\n            : 'unlocked model to zoom further'\n        }\n        disabled={model.tooSmallToLock}\n      >\n        {model.lockedFitToWindow ? <LockIcon /> : <LockOpenIcon />}\n      </IconButton>\n\n      <IconButton\n        onClick={event => {\n          setAnchorEl(event.currentTarget)\n        }}\n      >\n        <MoreVert />\n      </IconButton>\n\n      {model.hideTrackSelectorButton ? null : (\n        <IconButton\n          onClick={model.activateTrackSelector}\n          title=\"Open track selector\"\n          data-testid=\"circular_track_select\"\n        >\n          <TrackSelectorIcon />\n        </IconButton>\n      )}\n\n      {anchorEl ? (\n        <JBrowseMenu\n          anchorEl={anchorEl}\n          menuItems={[\n            {\n              label: 'Export SVG',\n              icon: PhotoCamera,\n              onClick: () => {\n                getSession(model).queueDialog(handleClose => [\n                  ExportSvgDialog,\n                  { model, handleClose },\n                ])\n              },\n            },\n          ]}\n          onMenuItemClick={(_event, callback) => {\n            callback()\n            setAnchorEl(null)\n          }}\n          open={Boolean(anchorEl)}\n          onClose={() => {\n            setAnchorEl(null)\n          }}\n        />\n      ) : null}\n    </div>\n  )\n})\n\nexport default Controls\n","import React, { useState } from 'react'\nimport { Button, Container, Grid } from '@mui/material'\nimport { makeStyles } from 'tss-react/mui'\nimport { observer } from 'mobx-react'\nimport { getSession } from '@jbrowse/core/util'\nimport { ErrorMessage, AssemblySelector } from '@jbrowse/core/ui'\nimport { CircularViewModel } from '../models/model'\n\nconst useStyles = makeStyles()(theme => ({\n  importFormContainer: {\n    padding: theme.spacing(6),\n  },\n}))\n\nconst ImportForm = observer(function ({ model }: { model: CircularViewModel }) {\n  const { classes } = useStyles()\n  const session = getSession(model)\n  const { error } = model\n  const { assemblyNames, assemblyManager } = session\n  const [selectedAsm, setSelectedAsm] = useState(assemblyNames[0]!)\n  const assembly = assemblyManager.get(selectedAsm)\n  const assemblyError = assemblyNames.length\n    ? assembly?.error\n    : 'No configured assemblies'\n  const regions = assembly?.regions || []\n  const err = assemblyError || error\n\n  return (\n    <Container className={classes.importFormContainer}>\n      {err ? (\n        <Grid container spacing={1} justifyContent=\"center\" alignItems=\"center\">\n          <Grid item>\n            <ErrorMessage error={err} />\n          </Grid>\n        </Grid>\n      ) : null}\n      <Grid container spacing={1} justifyContent=\"center\" alignItems=\"center\">\n        <Grid item>\n          <AssemblySelector\n            onChange={val => {\n              model.setError(undefined)\n              setSelectedAsm(val)\n            }}\n            session={session}\n            selected={selectedAsm}\n          />\n        </Grid>\n\n        <Grid item>\n          <Button\n            disabled={!regions.length}\n            onClick={() => {\n              model.setError(undefined)\n              model.setDisplayedRegions(regions)\n            }}\n            variant=\"contained\"\n            color=\"primary\"\n          >\n            {/* if there's an error, it's not actively loading  so just display open */}\n            {regions.length || err ? 'Open' : 'Loading...'}\n          </Button>\n        </Grid>\n      </Grid>\n    </Container>\n  )\n})\n\nexport default ImportForm\n","import React from 'react'\nimport { observer } from 'mobx-react'\nimport { ResizeHandle } from '@jbrowse/core/ui'\nimport { assembleLocString } from '@jbrowse/core/util'\nimport { makeStyles } from 'tss-react/mui'\n\n// locals\nimport Ruler from './Ruler'\nimport Controls from './Controls'\nimport ImportForm from './ImportForm'\nimport { CircularViewModel } from '../models/model'\n\nconst dragHandleHeight = 3\n\nconst useStyles = makeStyles()(theme => ({\n  root: {\n    position: 'relative',\n    marginBottom: theme.spacing(1),\n    overflow: 'hidden',\n  },\n  scroller: {\n    overflow: 'auto',\n  },\n}))\n\nconst Slices = observer(({ model }: { model: CircularViewModel }) => {\n  return (\n    <>\n      {model.staticSlices.map(slice => (\n        <Ruler\n          key={assembleLocString(\n            slice.region.elided ? slice.region.regions[0]! : slice.region,\n          )}\n          model={model}\n          slice={slice}\n        />\n      ))}\n      {model.tracks.map(track => {\n        const display = track.displays[0]\n        return (\n          <display.RenderingComponent\n            key={display.id}\n            display={display}\n            view={model}\n          />\n        )\n      })}\n    </>\n  )\n})\n\nconst CircularView = observer(({ model }: { model: CircularViewModel }) => {\n  const initialized =\n    !!model.displayedRegions.length &&\n    !!model.figureWidth &&\n    !!model.figureHeight &&\n    model.initialized\n\n  const showImportForm = !initialized && !model.disableImportForm\n  const showFigure = initialized && !showImportForm\n\n  return showImportForm || model.error ? (\n    <ImportForm model={model} />\n  ) : showFigure ? (\n    <CircularViewLoaded model={model} />\n  ) : null\n})\n\nconst CircularViewLoaded = observer(function ({\n  model,\n}: {\n  model: CircularViewModel\n}) {\n  const {\n    width,\n    height,\n    id,\n    offsetRadians,\n    centerXY,\n    figureWidth,\n    figureHeight,\n    hideVerticalResizeHandle,\n  } = model\n  const { classes } = useStyles()\n  return (\n    <div className={classes.root} style={{ width, height }} data-testid={id}>\n      <div className={classes.scroller} style={{ width, height }}>\n        <svg\n          style={{\n            transform: `rotate(${offsetRadians}rad)`,\n            transition: 'transform 0.5s',\n            transformOrigin: centerXY.map(x => `${x}px`).join(' '),\n            position: 'absolute',\n            left: 0,\n            top: 0,\n          }}\n          width={figureWidth}\n          height={figureHeight}\n        >\n          <g transform={`translate(${centerXY})`}>\n            <Slices model={model} />\n          </g>\n        </svg>\n      </div>\n      <Controls model={model} />\n      {hideVerticalResizeHandle ? null : (\n        <ResizeHandle\n          onDrag={model.resizeHeight}\n          style={{\n            height: dragHandleHeight,\n            position: 'absolute',\n            bottom: 0,\n            left: 0,\n            background: '#ccc',\n            boxSizing: 'border-box',\n            borderTop: '1px solid #fafafa',\n          }}\n        />\n      )}\n    </div>\n  )\n})\n\nexport default CircularView\n","import React, { useState } from 'react'\nimport {\n  Button,\n  Checkbox,\n  CircularProgress,\n  DialogActions,\n  DialogContent,\n  FormControlLabel,\n  MenuItem,\n  TextField,\n  TextFieldProps,\n  Typography,\n} from '@mui/material'\nimport { Dialog, ErrorMessage } from '@jbrowse/core/ui'\n\n// locals\nimport { ExportSvgOptions } from '../models/model'\nimport { getSession, useLocalStorage } from '@jbrowse/core/util'\n\nfunction LoadingMessage() {\n  return (\n    <div>\n      <CircularProgress size={20} style={{ marginRight: 20 }} />\n      <Typography display=\"inline\">Creating SVG</Typography>\n    </div>\n  )\n}\n\nfunction TextField2({ children, ...rest }: TextFieldProps) {\n  return (\n    <div>\n      <TextField {...rest}>{children}</TextField>\n    </div>\n  )\n}\nfunction useSvgLocal<T>(key: string, val: T) {\n  return useLocalStorage(`svg-${key}`, val)\n}\n\nexport default function ExportSvgDialog({\n  model,\n  handleClose,\n}: {\n  model: { exportSvg(opts: ExportSvgOptions): Promise<void> }\n  handleClose: () => void\n}) {\n  const session = getSession(model)\n  const offscreenCanvas = typeof OffscreenCanvas !== 'undefined'\n  const [rasterizeLayers, setRasterizeLayers] = useState(offscreenCanvas)\n  const [loading, setLoading] = useState(false)\n  const [error, setError] = useState<unknown>()\n  const [filename, setFilename] = useSvgLocal('file', 'jbrowse.svg')\n  const [themeName, setThemeName] = useSvgLocal(\n    'theme',\n    session.themeName || 'default',\n  )\n  return (\n    <Dialog open onClose={handleClose} title=\"Export SVG\">\n      <DialogContent>\n        {error ? (\n          <ErrorMessage error={error} />\n        ) : loading ? (\n          <LoadingMessage />\n        ) : null}\n        <TextField2\n          helperText=\"filename\"\n          value={filename}\n          onChange={event => {\n            setFilename(event.target.value)\n          }}\n        />\n\n        {session.allThemes ? (\n          <TextField2\n            select\n            label=\"Theme\"\n            value={themeName}\n            onChange={event => {\n              setThemeName(event.target.value)\n            }}\n          >\n            {Object.entries(session.allThemes()).map(([key, val]) => (\n              <MenuItem key={key} value={key}>\n                {\n                  // @ts-expect-error\n                  val.name || '(Unknown name)'\n                }\n              </MenuItem>\n            ))}\n          </TextField2>\n        ) : null}\n        {offscreenCanvas ? (\n          <FormControlLabel\n            control={\n              <Checkbox\n                checked={rasterizeLayers}\n                onChange={() => {\n                  setRasterizeLayers(val => !val)\n                }}\n              />\n            }\n            label=\"Rasterize canvas based tracks? File may be much larger if this is turned off\"\n          />\n        ) : (\n          <Typography>\n            Note: rasterizing layers not yet supported in this browser, so SVG\n            size may be large\n          </Typography>\n        )}\n      </DialogContent>\n      <DialogActions>\n        <Button\n          variant=\"contained\"\n          color=\"secondary\"\n          onClick={() => {\n            handleClose()\n          }}\n        >\n          Cancel\n        </Button>\n        <Button\n          variant=\"contained\"\n          color=\"primary\"\n          type=\"submit\"\n          onClick={async () => {\n            setLoading(true)\n            setError(undefined)\n            try {\n              await model.exportSvg({\n                rasterizeLayers,\n                filename,\n                themeName,\n              })\n              handleClose()\n            } catch (e) {\n              console.error(e)\n              setError(e)\n            } finally {\n              setLoading(false)\n            }\n          }}\n        >\n          Submit\n        </Button>\n      </DialogActions>\n    </Dialog>\n  )\n}\n","import React from 'react'\nimport { observer } from 'mobx-react'\nimport {\n  getSession,\n  polarToCartesian,\n  radToDeg,\n  assembleLocString,\n  getStrokeProps,\n  getFillProps,\n} from '@jbrowse/core/util'\nimport { makeContrasting } from '@jbrowse/core/util/color'\nimport { useTheme } from '@mui/material/styles'\nimport { makeStyles } from 'tss-react/mui'\n\n// locals\nimport {\n  Slice,\n  SliceElidedRegion,\n  SliceNonElidedRegion,\n} from '../models/slices'\nimport { CircularViewModel } from '../models/model'\n\nconst useStyles = makeStyles()({\n  rulerLabel: {\n    fontSize: '0.8rem',\n    fontWeight: 500,\n    lineHeight: 1.6,\n    letterSpacing: '0.0075em',\n  },\n})\n\nfunction sliceArcPath(\n  slice: Slice,\n  radiusPx: number,\n  startBase: number,\n  endBase: number,\n) {\n  // A rx ry x-axis-rotation large-arc-flag sweep-flag x y\n  if (slice.flipped) {\n    ;[startBase, endBase] = [endBase, startBase]\n  }\n  const startXY = slice.bpToXY(startBase, radiusPx)\n  const endXY = slice.bpToXY(endBase, radiusPx)\n  const largeArc =\n    Math.abs(endBase - startBase) / slice.bpPerRadian > Math.PI ? '1' : '0'\n  const sweepFlag = '1'\n  return [\n    'M',\n    ...startXY,\n    'A',\n    radiusPx,\n    radiusPx,\n    '0',\n    largeArc,\n    sweepFlag,\n    ...endXY,\n  ].join(' ')\n}\n\nconst ElisionRulerArc = observer(function ({\n  model,\n  slice,\n  region,\n}: {\n  model: CircularViewModel\n  slice: Slice\n  region: SliceElidedRegion\n}) {\n  const theme = useTheme()\n  const { radiusPx: modelRadiusPx } = model\n  const radiusPx = modelRadiusPx + 1\n  const { endRadians, startRadians } = slice\n  const startXY = polarToCartesian(radiusPx, startRadians)\n  const endXY = polarToCartesian(radiusPx, endRadians)\n  const widthPx = (endRadians - startRadians) * radiusPx\n  const largeArc = endRadians - startRadians > Math.PI ? '1' : '0'\n  // TODO: draw the elision\n  const centerRadians = (endRadians + startRadians) / 2\n  const regionCount = `[${Number(region.regions.length).toLocaleString()}]`\n  return (\n    <>\n      <RulerLabel\n        text={regionCount}\n        view={model}\n        maxWidthPx={widthPx}\n        radians={centerRadians}\n        radiusPx={radiusPx}\n        title={`${regionCount} more regions`}\n        color={theme.palette.text.primary}\n      />\n      <path\n        d={[\n          'M',\n          ...startXY,\n          'A',\n          radiusPx,\n          radiusPx,\n          '0',\n          largeArc,\n          '1',\n          ...endXY,\n        ].join(' ')}\n        {...getStrokeProps(theme.palette.text.secondary)}\n        strokeWidth={2}\n        strokeDasharray=\"2,2\"\n        fill=\"none\"\n      />\n    </>\n  )\n})\n\nconst RulerLabel = observer(function ({\n  view,\n  text,\n  maxWidthPx,\n  radians,\n  radiusPx,\n  title,\n  color,\n}: {\n  view: CircularViewModel\n  text: string\n  maxWidthPx: number\n  radiusPx: number\n  radians: number\n  title?: string\n  color: string\n}) {\n  const { classes } = useStyles()\n  const textXY = polarToCartesian(radiusPx + 5, radians)\n  if (!text) {\n    return null\n  }\n\n  if (text.length * 6.5 < maxWidthPx) {\n    // text is rotated parallel to the ruler arc\n    return (\n      <text\n        x={0}\n        y={0}\n        className={classes.rulerLabel}\n        textAnchor=\"middle\"\n        dominantBaseline=\"baseline\"\n        transform={`translate(${textXY}) rotate(${radToDeg(radians) + 90})`}\n        {...getFillProps(color)}\n      >\n        {text}\n        <title>{title || text}</title>\n      </text>\n    )\n  }\n  if (maxWidthPx > 4) {\n    // text is rotated perpendicular to the ruler arc\n    const overallRotation = radToDeg(radians + view.offsetRadians - Math.PI / 2)\n    if (overallRotation >= 180) {\n      return (\n        <text\n          x={0}\n          y={0}\n          className={classes.rulerLabel}\n          textAnchor=\"start\"\n          dominantBaseline=\"middle\"\n          transform={`translate(${textXY}) rotate(${radToDeg(radians)})`}\n          fill={color}\n        >\n          {text}\n          <title>{title || text}</title>\n        </text>\n      )\n    }\n    return (\n      <text\n        x={0}\n        y={0}\n        className={classes.rulerLabel}\n        textAnchor=\"end\"\n        dominantBaseline=\"middle\"\n        transform={`translate(${textXY}) rotate(${radToDeg(radians) + 180})`}\n        fill={color}\n      >\n        {text}\n        <title>{title || text}</title>\n      </text>\n    )\n  }\n\n  // if you get here there is no room for the text at all\n  return null\n})\n\nconst RegionRulerArc = observer(function ({\n  model,\n  slice,\n  region,\n}: {\n  model: CircularViewModel\n  slice: Slice\n  region: SliceNonElidedRegion\n}) {\n  const theme = useTheme()\n  const { radiusPx } = model\n  const { endRadians, startRadians } = slice\n  const centerRadians = (endRadians + startRadians) / 2\n  const widthPx = (endRadians - startRadians) * radiusPx\n  const session = getSession(model)\n  const assembly = session.assemblyManager.get(region.assemblyName)\n  let color = assembly ? assembly.getRefNameColor(region.refName) : undefined\n  if (color) {\n    try {\n      color = makeContrasting(color, theme.palette.background.paper)\n    } catch (error) {\n      color = theme.palette.text.primary\n    }\n  } else {\n    color = theme.palette.text.primary\n  }\n\n  // TODO: slice flipping\n  return (\n    <>\n      <RulerLabel\n        text={region.refName}\n        view={model}\n        maxWidthPx={widthPx}\n        radians={centerRadians}\n        radiusPx={radiusPx}\n        color={color}\n      />\n      <path\n        d={sliceArcPath(slice, radiusPx + 1, region.start, region.end)}\n        stroke={color}\n        strokeWidth={2}\n        fill=\"none\"\n      />\n    </>\n  )\n})\n\nconst Ruler = observer(function ({\n  model,\n  slice,\n}: {\n  model: CircularViewModel\n  slice: Slice\n}) {\n  return slice.region.elided ? (\n    <ElisionRulerArc\n      key={assembleLocString(slice.region.regions[0]!)}\n      model={model}\n      region={slice.region}\n      slice={slice}\n    />\n  ) : (\n    <RegionRulerArc\n      key={assembleLocString(slice.region)}\n      region={slice.region}\n      model={model}\n      slice={slice}\n    />\n  )\n})\n\nexport default Ruler\n","\"use client\";\n\nimport createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n  d: \"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1z\"\n}), 'Lock');","'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;","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nimport composeClasses from '@mui/utils/composeClasses';\nimport capitalize from '@mui/utils/capitalize';\nimport useThemePropsSystem from \"../useThemeProps/index.js\";\nimport systemStyled from \"../styled/index.js\";\nimport createTheme from \"../createTheme/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\nconst defaultCreateStyledComponent = systemStyled('div', {\n  name: 'MuiContainer',\n  slot: 'Root',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    return [styles.root, styles[`maxWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fixed && styles.fixed, ownerState.disableGutters && styles.disableGutters];\n  }\n});\nconst useThemePropsDefault = inProps => useThemePropsSystem({\n  props: inProps,\n  name: 'MuiContainer',\n  defaultTheme\n});\nconst useUtilityClasses = (ownerState, componentName) => {\n  const getContainerUtilityClass = slot => {\n    return generateUtilityClass(componentName, slot);\n  };\n  const {\n    classes,\n    fixed,\n    disableGutters,\n    maxWidth\n  } = ownerState;\n  const slots = {\n    root: ['root', maxWidth && `maxWidth${capitalize(String(maxWidth))}`, fixed && 'fixed', disableGutters && 'disableGutters']\n  };\n  return composeClasses(slots, getContainerUtilityClass, classes);\n};\nexport default function createContainer(options = {}) {\n  const {\n    // This will allow adding custom styled fn (for example for custom sx style function)\n    createStyledComponent = defaultCreateStyledComponent,\n    useThemeProps = useThemePropsDefault,\n    componentName = 'MuiContainer'\n  } = options;\n  const ContainerRoot = createStyledComponent(({\n    theme,\n    ownerState\n  }) => ({\n    width: '100%',\n    marginLeft: 'auto',\n    boxSizing: 'border-box',\n    marginRight: 'auto',\n    ...(!ownerState.disableGutters && {\n      paddingLeft: theme.spacing(2),\n      paddingRight: theme.spacing(2),\n      // @ts-ignore module augmentation fails if custom breakpoints are used\n      [theme.breakpoints.up('sm')]: {\n        paddingLeft: theme.spacing(3),\n        paddingRight: theme.spacing(3)\n      }\n    })\n  }), ({\n    theme,\n    ownerState\n  }) => ownerState.fixed && Object.keys(theme.breakpoints.values).reduce((acc, breakpointValueKey) => {\n    const breakpoint = breakpointValueKey;\n    const value = theme.breakpoints.values[breakpoint];\n    if (value !== 0) {\n      // @ts-ignore\n      acc[theme.breakpoints.up(breakpoint)] = {\n        maxWidth: `${value}${theme.breakpoints.unit}`\n      };\n    }\n    return acc;\n  }, {}), ({\n    theme,\n    ownerState\n  }) => ({\n    // @ts-ignore module augmentation fails if custom breakpoints are used\n    ...(ownerState.maxWidth === 'xs' && {\n      // @ts-ignore module augmentation fails if custom breakpoints are used\n      [theme.breakpoints.up('xs')]: {\n        // @ts-ignore module augmentation fails if custom breakpoints are used\n        maxWidth: Math.max(theme.breakpoints.values.xs, 444)\n      }\n    }),\n    ...(ownerState.maxWidth &&\n    // @ts-ignore module augmentation fails if custom breakpoints are used\n    ownerState.maxWidth !== 'xs' && {\n      // @ts-ignore module augmentation fails if custom breakpoints are used\n      [theme.breakpoints.up(ownerState.maxWidth)]: {\n        // @ts-ignore module augmentation fails if custom breakpoints are used\n        maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`\n      }\n    })\n  }));\n  const Container = /*#__PURE__*/React.forwardRef(function Container(inProps, ref) {\n    const props = useThemeProps(inProps);\n    const {\n      className,\n      component = 'div',\n      disableGutters = false,\n      fixed = false,\n      maxWidth = 'lg',\n      classes: classesProp,\n      ...other\n    } = props;\n    const ownerState = {\n      ...props,\n      component,\n      disableGutters,\n      fixed,\n      maxWidth\n    };\n\n    // @ts-ignore module augmentation fails if custom breakpoints are used\n    const classes = useUtilityClasses(ownerState, componentName);\n    return (\n      /*#__PURE__*/\n      // @ts-ignore theme is injected by the styled util\n      _jsx(ContainerRoot, {\n        as: component\n        // @ts-ignore module augmentation fails if custom breakpoints are used\n        ,\n        ownerState: ownerState,\n        className: clsx(classes.root, className),\n        ref: ref,\n        ...other\n      })\n    );\n  });\n  process.env.NODE_ENV !== \"production\" ? Container.propTypes /* remove-proptypes */ = {\n    children: PropTypes.node,\n    classes: PropTypes.object,\n    className: PropTypes.string,\n    component: PropTypes.elementType,\n    disableGutters: PropTypes.bool,\n    fixed: PropTypes.bool,\n    maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\n    sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n  } : void 0;\n  return Container;\n}","'use client';\n\nimport PropTypes from 'prop-types';\nimport { createContainer } from '@mui/system';\nimport capitalize from \"../utils/capitalize.js\";\nimport styled from \"../styles/styled.js\";\nimport useThemeProps from \"../styles/useThemeProps.js\";\nconst Container = createContainer({\n  createStyledComponent: styled('div', {\n    name: 'MuiContainer',\n    slot: 'Root',\n    overridesResolver: (props, styles) => {\n      const {\n        ownerState\n      } = props;\n      return [styles.root, styles[`maxWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fixed && styles.fixed, ownerState.disableGutters && styles.disableGutters];\n    }\n  }),\n  useThemeProps: inProps => useThemeProps({\n    props: inProps,\n    name: 'MuiContainer'\n  })\n});\nprocess.env.NODE_ENV !== \"production\" ? Container.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   * @ignore\n   */\n  children: PropTypes.node,\n  /**\n   * Override or extend the styles applied to the component.\n   */\n  classes: PropTypes.object,\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`, the left and right padding is removed.\n   * @default false\n   */\n  disableGutters: PropTypes.bool,\n  /**\n   * Set the max-width to match the min-width of the current breakpoint.\n   * This is useful if you'd prefer to design for a fixed set of sizes\n   * instead of trying to accommodate a fully fluid viewport.\n   * It's fluid by default.\n   * @default false\n   */\n  fixed: PropTypes.bool,\n  /**\n   * Determine the max-width of the container.\n   * The container width grows with the size of the screen.\n   * Set to `false` to disable `maxWidth`.\n   * @default 'lg'\n   */\n  maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\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} : void 0;\nexport default Container;","import createStyled from \"../createStyled/index.js\";\nconst styled = createStyled();\nexport default styled;"],"names":["createSvgIcon","d","useStyles","makeStyles","theme","controls","position","borderRight","palette","divider","borderBottom","left","top","observer","model","classes","anchorEl","setAnchorEl","useState","React","className","IconButton","onClick","zoomOutButton","title","lockedFitToWindow","disabled","atMaxBpPerPx","ZoomOutIcon","zoomInButton","atMinBpPerPx","ZoomInIcon","rotateCounterClockwiseButton","RotateLeftIcon","rotateClockwiseButton","RotateRightIcon","toggleFitToWindowLock","tooSmallToLock","LockIcon","LockOpenIcon","event","currentTarget","MoreVert","hideTrackSelectorButton","activateTrackSelector","TrackSelectorIcon","JBrowseMenu","menuItems","label","icon","PhotoCamera","getSession","queueDialog","handleClose","ExportSvgDialog","onMenuItemClick","_event","callback","open","Boolean","onClose","importFormContainer","padding","spacing","session","error","assemblyNames","assemblyManager","selectedAsm","setSelectedAsm","assembly","get","assemblyError","length","regions","err","Container","Grid","container","justifyContent","alignItems","item","ErrorMessage","AssemblySelector","onChange","val","setError","undefined","selected","Button","setDisplayedRegions","variant","color","root","marginBottom","overflow","scroller","Slices","staticSlices","map","slice","Ruler","key","assembleLocString","region","elided","tracks","track","display","displays","RenderingComponent","id","view","CircularView","initialized","displayedRegions","figureWidth","figureHeight","showImportForm","disableImportForm","showFigure","ImportForm","CircularViewLoaded","width","height","offsetRadians","centerXY","hideVerticalResizeHandle","style","transform","transition","transformOrigin","x","join","Controls","ResizeHandle","onDrag","resizeHeight","bottom","background","boxSizing","borderTop","LoadingMessage","CircularProgress","size","marginRight","Typography","TextField2","children","rest","TextField","useSvgLocal","useLocalStorage","offscreenCanvas","OffscreenCanvas","rasterizeLayers","setRasterizeLayers","loading","setLoading","filename","setFilename","themeName","setThemeName","Dialog","DialogContent","helperText","value","target","allThemes","select","Object","entries","MenuItem","name","FormControlLabel","control","Checkbox","checked","DialogActions","type","async","exportSvg","e","console","rulerLabel","fontSize","fontWeight","lineHeight","letterSpacing","sliceArcPath","radiusPx","startBase","endBase","flipped","startXY","bpToXY","endXY","Math","abs","bpPerRadian","PI","ElisionRulerArc","useTheme","modelRadiusPx","endRadians","startRadians","polarToCartesian","widthPx","largeArc","centerRadians","regionCount","Number","toLocaleString","RulerLabel","text","maxWidthPx","radians","primary","_extends","getStrokeProps","secondary","strokeWidth","strokeDasharray","fill","textXY","y","textAnchor","dominantBaseline","radToDeg","getFillProps","RegionRulerArc","assemblyName","getRefNameColor","refName","makeContrasting","paper","start","end","stroke","circularRotateKeyframe","circularDashKeyframe","rotateAnimation","dashAnimation","CircularProgressRoot","slot","overridesResolver","props","styles","ownerState","variants","transitions","create","animation","filter","vars","main","CircularProgressSVG","svg","CircularProgressCircle","circle","disableShrink","circleDisableShrink","strokeDashoffset","inProps","ref","thickness","other","slots","useUtilityClasses","circleStyle","rootStyle","rootProps","circumference","toFixed","round","role","viewBox","cx","cy","r","getCircularProgressUtilityClass","defaultTheme","createTheme","defaultCreateStyledComponent","capitalize","String","maxWidth","fixed","disableGutters","useThemePropsDefault","useThemeProps","options","createStyledComponent","componentName","ContainerRoot","marginLeft","paddingLeft","paddingRight","breakpoints","up","keys","values","reduce","acc","breakpointValueKey","breakpoint","unit","max","xs","component","classesProp","composeClasses","generateUtilityClass","as","clsx","createContainer"],"sourceRoot":""}
\ No newline at end of file