Mercurial > repos > fubar > jbrowse2
view x/static/js/965.8524fdac.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/965.8524fdac.chunk.js","mappings":"8SAce,SAASA,GAAc,OACpCC,IAIA,MAAOC,EAAOC,IAAYC,EAAAA,EAAAA,aACnBC,EAAMC,IAAWF,EAAAA,EAAAA,YAClBG,GAAUC,EAAAA,EAAAA,YAAWP,IACrB,WAAEQ,GAAeF,GAEvBG,EAAAA,EAAAA,YAAU,KAEP,WACC,IACE,MAAMC,GAAgBC,EAAAA,EAAAA,gBAAeX,EAAQ,WACvCY,QAAeJ,EAAWK,KAAKb,EAAOc,QAAS,cAAe,CAClEJ,kBAEFL,EAAQO,EACV,CAAE,MAAOG,GACPC,QAAQf,MAAMc,GACdb,EAASa,EACX,CACD,EAXA,EAWG,GACH,CAACf,EAAQQ,IAEZ,MAAMS,EACY,iBAATb,EACH,CACEc,OAAQ,QAAQd,EACbe,WAAW,IAAK,QAChBA,WAAW,IAAK,iBAErBf,GAAQ,CAAC,EAEf,OACEgB,EAAAA,cAACC,EAAAA,SAAQ,CAACC,MAAM,aACbrB,EACCmB,EAAAA,cAACG,EAAAA,aAAY,CAACtB,MAAOA,SACVuB,IAATpB,EACFgB,EAAAA,cAACK,EAAAA,gBAAe,CAACC,QAAQ,sBAEzBN,EAAAA,cAACO,EAAAA,WAAU,CAACC,WAAYX,IAIhC,C,eC/CA,MAEMY,GAAYC,EAAAA,EAAAA,KAAAA,EAAaC,IAAS,CACtCC,UAAW,CACTC,SAAU,KAEZC,SAAU,CACRC,UAAW,IACXC,SAAU,OACVC,SAAU,EACVC,WAAYP,EAAMQ,QAAQD,WAAWE,aAuGzC,GAnG0BC,EAAAA,EAAAA,WAAS,UAAU,OAC3CzC,EAAM,QACN0C,IAKA,MAAM,QAAEC,GAAYd,KACb5B,EAAOC,IAAYC,EAAAA,EAAAA,aACnB+B,EAAUU,IAAezC,EAAAA,EAAAA,aACzB0C,EAAQC,IAAa3C,EAAAA,EAAAA,WAAS,IAC/B,WAAEK,IAAeD,EAAAA,EAAAA,YAAWP,IAElCS,EAAAA,EAAAA,YAAU,KAEP,WACC,IACE,MAAMsC,QAAYC,QAAQC,IACxB,IAAI,IAAIC,KAAIC,EAAAA,EAAAA,sBAAqBnD,KAAU+C,KAAIK,UAC7C,MAAM1C,GAAgBC,EAAAA,EAAAA,gBAAeX,EAAQ,WAC7C,MAAO,CACLqD,QACO7C,EAAWK,KAAKb,EAAOc,QAAS,kBAAmB,CACxDJ,gBAEA4C,QAAS,CACP,CACED,mBAIP,KAGLT,EAAYW,OAAOC,YAAYT,GACjC,CAAE,MAAOhC,GACPC,QAAQf,MAAMc,GACdb,EAASa,EACX,CACD,EAxBA,EAwBG,GACH,CAACf,EAAQQ,IAEZ,MAAMiD,EAAQvB,EAAWqB,OAAOG,QAAQxB,GAAY,GAC9CtB,EAAS6C,EACZE,SAAQ,EAAEN,EAAcnB,KAChB,CACL,OAAOmB,WACJnB,EAAS0B,MAAM,EA7DJ,KA8Dd1B,EAAS2B,OA9DK,IA+DV,8CAA8CR,sDAC9C,MAGPS,QAAOC,KAAOA,IACdC,KAAK,MAER,OACE5C,EAAAA,cAAC6C,EAAAA,OAAM,CACLC,MAAI,EACJ5C,MAAM,yCACNoB,QAASA,EACTyB,SAAS,MAET/C,EAAAA,cAACgD,EAAAA,EAAa,CAACC,UAAW1B,EAAQX,WAC/B/B,EACCmB,EAAAA,cAACG,EAAAA,aAAY,CAACtB,MAAOA,SACNuB,IAAbU,EACFd,EAAAA,cAACK,EAAAA,gBAAe,CAACC,QAAQ,qBAEzBN,EAAAA,cAAAA,EAAAA,SAAA,KACEA,EAAAA,cAACkD,EAAAA,EAAM,CACLC,QAAQ,YACRC,QAASA,KACPC,IACEhB,EACGE,SAAQ,EAAEN,EAAcnB,KAAc,CACrC,OAAOmB,WACJnB,KAEJ4B,QAAOC,KAAOA,IACdC,KAAK,OAEVlB,GAAU,GACV4B,YAAW,KACT5B,GAAU,EAAM,GACf,IAAK,GAGTD,EAAS,uBAAyB,kBAGrCzB,EAAAA,cAAA,OAAKiD,UAAW1B,EAAQT,UAAWtB,KAM/C,ICzGMiB,GAAYC,EAAAA,EAAAA,KAAAA,CAAa,CAC7B6C,QAAS,CACP1C,SAAU,KAEZ2C,OAAQ,CACNC,MAAO,WAIX,SAASC,EAAWC,EAA8BC,GAChD,IAAK,MAAMC,KAAQF,EACbE,IAASD,SACJD,EAAIE,GACmB,iBAAdF,EAAIE,IACpBH,EAAWC,EAAIE,GAAkCD,GAGrD,OAAOD,CACT,CAEA,MAwFA,GAxF4BtC,EAAAA,EAAAA,WAAS,UAAU,OAC7CzC,IAIA,MAAO6C,EAAQC,IAAa3C,EAAAA,EAAAA,WAAS,GAC/B+E,GAAOvE,EAAAA,EAAAA,gBAAeX,GACtBM,GAAUC,EAAAA,EAAAA,YAAWP,IACrB,QAAE2C,GAAYd,KACbsD,EAAcC,IAAmBjF,EAAAA,EAAAA,WAAS,GAE3CkF,GACJC,EAAAA,EAAAA,SAAQhF,EAAS,CAAC,cAAe,eACjCK,EAAAA,EAAAA,gBAAeX,EAAQ,CAAC,cAAe,cAEnC,cAAEuF,IAAkBC,EAAAA,EAAAA,QAAOlF,GAE3BmF,EAAcF,EAAcG,uBAChC,sBACA,CACE1F,OAAQ,IACHkF,MACAI,EAAAA,EAAAA,SAAQhF,EAAS,CAAC,cAAe,UAAW,CAAEN,OAAQkF,QACtDvE,EAAAA,EAAAA,gBAAeX,EAAQ,CAAC,cAAe,UAAW,CAAEA,OAAQkF,MAGnE,CAAE5E,UAASN,WAGP2F,EAAaJ,EAAcG,uBAC/B,uBACA,KACA,CAAEpF,UAASN,WAGb,OACEoB,EAAAA,cAAA,OAAKiD,UAAW1B,EAAQgC,SACtBvD,EAAAA,cAACC,EAAAA,SAAQ,CAACC,MAAM,iBACZ+D,EAyBE,KAxBFjE,EAAAA,cAAA,QAAMiD,UAAW1B,EAAQiC,QACvBxD,EAAAA,cAACkD,EAAAA,EAAM,CACLC,QAAQ,YACRqB,MAAM,YACNpB,QAASA,KACPY,GAAgB,EAAK,GAExB,kBAGDhE,EAAAA,cAACkD,EAAAA,EAAM,CACLC,QAAQ,YACRC,QAASA,KACP,MAAMqB,EAAOf,EAAWgB,IAAMZ,GAAO,WACrCT,IAAKsB,KAAKC,UAAUH,EAAM,KAAM,IAChC/C,GAAU,GACV4B,YAAW,KACT5B,GAAU,EAAM,GACf,IAAK,GAGTD,EAAS,uBAAyB,gBAIzCzB,EAAAA,cAACO,EAAAA,WAAU,CACTC,WAAY6D,EACZQ,KAAM,CAAC,WAAY,UAAW,WAAY,eAC1CZ,SAAUA,KAGbM,EACCvE,EAAAA,cAACC,EAAAA,SAAQ,CAACC,MAAOqE,EAAWO,MAC1B9E,EAAAA,cAACuE,EAAWQ,UAAS,CAACnG,OAAQA,KAE9B,KACJoB,EAAAA,cAACrB,EAAa,CAACC,OAAQA,IACtBmF,EACC/D,EAAAA,cAACgF,EAAiB,CAChBpG,OAAQA,EACR0C,QAASA,KACP0C,GAAgB,EAAM,IAGxB,KAGV,ICtHO,SAASiB,GAAY,OAC1BrG,EAAM,YACNsG,IAKA,MAAMhG,GAAUC,EAAAA,EAAAA,YAAWP,GACrBuG,GAAYC,EAAAA,EAAAA,cAAaxG,EAAQM,IACjC,cAAEiF,IAAkBC,EAAAA,EAAAA,QAAOlF,GAE3BmG,EAAiBlB,EAAcG,uBACnC,oBACAgB,EACA,CAAEpG,UAASN,WAGb,OACEoB,EAAAA,cAAC6C,EAAAA,EAAM,CAACC,MAAI,EAACxB,QAAS4D,EAAahF,MAAOiF,EAAWpC,SAAS,MAC5D/C,EAAAA,cAACqF,EAAc,CAACzG,OAAQA,IAG9B,C","sources":["../../../packages/product-core/src/ui/FileInfoPanel.tsx","../../../packages/product-core/src/ui/RefNameInfoDialog.tsx","../../../packages/product-core/src/ui/AboutDialogContents.tsx","../../../packages/product-core/src/ui/AboutDialog.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react'\nimport {\n readConfObject,\n AnyConfigurationModel,\n} from '@jbrowse/core/configuration'\nimport { getSession } from '@jbrowse/core/util'\nimport {\n BaseCard,\n Attributes,\n} from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail'\nimport { ErrorMessage, LoadingEllipses } from '@jbrowse/core/ui'\n\ntype FileInfo = Record<string, unknown> | string\n\nexport default function FileInfoPanel({\n config,\n}: {\n config: AnyConfigurationModel\n}) {\n const [error, setError] = useState<unknown>()\n const [info, setInfo] = useState<FileInfo>()\n const session = getSession(config)\n const { rpcManager } = session\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n ;(async () => {\n try {\n const adapterConfig = readConfObject(config, 'adapter')\n const result = await rpcManager.call(config.trackId, 'CoreGetInfo', {\n adapterConfig,\n })\n setInfo(result as FileInfo)\n } catch (e) {\n console.error(e)\n setError(e)\n }\n })()\n }, [config, rpcManager])\n\n const details =\n typeof info === 'string'\n ? {\n header: `<pre>${info\n .replaceAll('<', '<')\n .replaceAll('>', '>')}</pre>`,\n }\n : info || {}\n\n return (\n <BaseCard title=\"File info\">\n {error ? (\n <ErrorMessage error={error} />\n ) : info === undefined ? (\n <LoadingEllipses message=\"Loading file data\" />\n ) : (\n <Attributes attributes={details} />\n )}\n </BaseCard>\n )\n}\n","import React, { useState, useEffect } from 'react'\nimport { Button, DialogContent } from '@mui/material'\nimport {\n readConfObject,\n AnyConfigurationModel,\n} from '@jbrowse/core/configuration'\nimport { Dialog, ErrorMessage, LoadingEllipses } from '@jbrowse/core/ui'\nimport { getSession } from '@jbrowse/core/util'\nimport { getConfAssemblyNames } from '@jbrowse/core/util/tracks'\nimport { observer } from 'mobx-react'\nimport { makeStyles } from 'tss-react/mui'\nimport copy from 'copy-to-clipboard'\n\nconst MAX_REF_NAMES = 10_000\n\nconst useStyles = makeStyles()(theme => ({\n container: {\n minWidth: 800,\n },\n refNames: {\n maxHeight: 300,\n overflow: 'auto',\n flexGrow: 1,\n background: theme.palette.background.default,\n },\n}))\n\nconst RefNameInfoDialog = observer(function ({\n config,\n onClose,\n}: {\n config: AnyConfigurationModel\n onClose: () => void\n}) {\n const { classes } = useStyles()\n const [error, setError] = useState<unknown>()\n const [refNames, setRefNames] = useState<Record<string, string[]>>()\n const [copied, setCopied] = useState(false)\n const { rpcManager } = getSession(config)\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n ;(async () => {\n try {\n const map = await Promise.all(\n [...new Set(getConfAssemblyNames(config))].map(async assemblyName => {\n const adapterConfig = readConfObject(config, 'adapter')\n return [\n assemblyName,\n (await rpcManager.call(config.trackId, 'CoreGetRefNames', {\n adapterConfig,\n // hack for synteny adapters\n regions: [\n {\n assemblyName,\n },\n ],\n })) as string[],\n ] as const\n }),\n )\n setRefNames(Object.fromEntries(map))\n } catch (e) {\n console.error(e)\n setError(e)\n }\n })()\n }, [config, rpcManager])\n\n const names = refNames ? Object.entries(refNames) : []\n const result = names\n .flatMap(([assemblyName, refNames]) => {\n return [\n `--- ${assemblyName} ---`,\n ...refNames.slice(0, MAX_REF_NAMES),\n refNames.length > MAX_REF_NAMES\n ? `\\nToo many refNames to show in browser for ${assemblyName}, use \"Copy ref names\" button to copy to clipboard`\n : '',\n ]\n })\n .filter(f => !!f)\n .join('\\n')\n\n return (\n <Dialog\n open\n title=\"Reference sequence names used in track\"\n onClose={onClose}\n maxWidth=\"xl\"\n >\n <DialogContent className={classes.container}>\n {error ? (\n <ErrorMessage error={error} />\n ) : refNames === undefined ? (\n <LoadingEllipses message=\"Loading refNames\" />\n ) : (\n <>\n <Button\n variant=\"contained\"\n onClick={() => {\n copy(\n names\n .flatMap(([assemblyName, refNames]) => [\n `--- ${assemblyName} ---`,\n ...refNames,\n ])\n .filter(f => !!f)\n .join('\\n'),\n )\n setCopied(true)\n setTimeout(() => {\n setCopied(false)\n }, 1000)\n }}\n >\n {copied ? 'Copied to clipboard!' : 'Copy ref names'}\n </Button>\n\n <pre className={classes.refNames}>{result}</pre>\n </>\n )}\n </DialogContent>\n </Dialog>\n )\n})\n\nexport default RefNameInfoDialog\n","import React, { useState } from 'react'\nimport { observer } from 'mobx-react'\nimport clone from 'clone'\nimport copy from 'copy-to-clipboard'\nimport { Button } from '@mui/material'\nimport { makeStyles } from 'tss-react/mui'\nimport {\n getConf,\n readConfObject,\n AnyConfigurationModel,\n} from '@jbrowse/core/configuration'\nimport { getSession, getEnv } from '@jbrowse/core/util'\nimport {\n BaseCard,\n Attributes,\n} from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail'\nimport FileInfoPanel from './FileInfoPanel'\nimport RefNameInfoDialog from './RefNameInfoDialog'\n\nconst useStyles = makeStyles()({\n content: {\n minWidth: 800,\n },\n button: {\n float: 'right',\n },\n})\n\nfunction removeAttr(obj: Record<string, unknown>, attr: string) {\n for (const prop in obj) {\n if (prop === attr) {\n delete obj[prop]\n } else if (typeof obj[prop] === 'object') {\n removeAttr(obj[prop] as Record<string, unknown>, attr)\n }\n }\n return obj\n}\n\nconst AboutDialogContents = observer(function ({\n config,\n}: {\n config: AnyConfigurationModel\n}) {\n const [copied, setCopied] = useState(false)\n const conf = readConfObject(config)\n const session = getSession(config)\n const { classes } = useStyles()\n const [showRefNames, setShowRefNames] = useState(false)\n\n const hideUris =\n getConf(session, ['formatAbout', 'hideUris']) ||\n readConfObject(config, ['formatAbout', 'hideUris'])\n\n const { pluginManager } = getEnv(session)\n\n const confPostExt = pluginManager.evaluateExtensionPoint(\n 'Core-customizeAbout',\n {\n config: {\n ...conf,\n ...getConf(session, ['formatAbout', 'config'], { config: conf }),\n ...readConfObject(config, ['formatAbout', 'config'], { config: conf }),\n },\n },\n { session, config },\n ) as Record<string, unknown>\n\n const ExtraPanel = pluginManager.evaluateExtensionPoint(\n 'Core-extraAboutPanel',\n null,\n { session, config },\n ) as { name: string; Component: React.FC<any> } | null\n\n return (\n <div className={classes.content}>\n <BaseCard title=\"Configuration\">\n {!hideUris ? (\n <span className={classes.button}>\n <Button\n variant=\"contained\"\n color=\"secondary\"\n onClick={() => {\n setShowRefNames(true)\n }}\n >\n Show ref names\n </Button>\n <Button\n variant=\"contained\"\n onClick={() => {\n const snap = removeAttr(clone(conf), 'baseUri')\n copy(JSON.stringify(snap, null, 2))\n setCopied(true)\n setTimeout(() => {\n setCopied(false)\n }, 1000)\n }}\n >\n {copied ? 'Copied to clipboard!' : 'Copy config'}\n </Button>\n </span>\n ) : null}\n <Attributes\n attributes={confPostExt}\n omit={['displays', 'baseUri', 'refNames', 'formatAbout']}\n hideUris={hideUris}\n />\n </BaseCard>\n {ExtraPanel ? (\n <BaseCard title={ExtraPanel.name}>\n <ExtraPanel.Component config={config} />\n </BaseCard>\n ) : null}\n <FileInfoPanel config={config} />\n {showRefNames ? (\n <RefNameInfoDialog\n config={config}\n onClose={() => {\n setShowRefNames(false)\n }}\n />\n ) : null}\n </div>\n )\n})\n\nexport default AboutDialogContents\n","import React from 'react'\nimport { AnyConfigurationModel } from '@jbrowse/core/configuration'\nimport Dialog from '@jbrowse/core/ui/Dialog'\nimport { getSession, getEnv } from '@jbrowse/core/util'\nimport { getTrackName } from '@jbrowse/core/util/tracks'\nimport AboutContents from './AboutDialogContents'\n\nexport function AboutDialog({\n config,\n handleClose,\n}: {\n config: AnyConfigurationModel\n handleClose: () => void\n}) {\n const session = getSession(config)\n const trackName = getTrackName(config, session)\n const { pluginManager } = getEnv(session)\n\n const AboutComponent = pluginManager.evaluateExtensionPoint(\n 'Core-replaceAbout',\n AboutContents,\n { session, config },\n ) as React.FC<any>\n\n return (\n <Dialog open onClose={handleClose} title={trackName} maxWidth=\"xl\">\n <AboutComponent config={config} />\n </Dialog>\n )\n}\n"],"names":["FileInfoPanel","config","error","setError","useState","info","setInfo","session","getSession","rpcManager","useEffect","adapterConfig","readConfObject","result","call","trackId","e","console","details","header","replaceAll","React","BaseCard","title","ErrorMessage","undefined","LoadingEllipses","message","Attributes","attributes","useStyles","makeStyles","theme","container","minWidth","refNames","maxHeight","overflow","flexGrow","background","palette","default","observer","onClose","classes","setRefNames","copied","setCopied","map","Promise","all","Set","getConfAssemblyNames","async","assemblyName","regions","Object","fromEntries","names","entries","flatMap","slice","length","filter","f","join","Dialog","open","maxWidth","DialogContent","className","Button","variant","onClick","copy","setTimeout","content","button","float","removeAttr","obj","attr","prop","conf","showRefNames","setShowRefNames","hideUris","getConf","pluginManager","getEnv","confPostExt","evaluateExtensionPoint","ExtraPanel","color","snap","clone","JSON","stringify","omit","name","Component","RefNameInfoDialog","AboutDialog","handleClose","trackName","getTrackName","AboutComponent","AboutContents"],"sourceRoot":""}