@cmdcolin/jbrowse-plugin-hubs 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # jbrowse-plugin-hubs
2
+
3
+ For automatically adding connections to jb2hubs
@@ -0,0 +1,8 @@
1
+ import Plugin from '@jbrowse/core/Plugin';
2
+ import PluginManager from '@jbrowse/core/PluginManager';
3
+ export default class HubsViewerPlugin extends Plugin {
4
+ name: string;
5
+ version: any;
6
+ install(pluginManager: PluginManager): void;
7
+ configure(pluginManager: PluginManager): void;
8
+ }
package/dist/index.js ADDED
@@ -0,0 +1,28 @@
1
+ import Plugin from '@jbrowse/core/Plugin';
2
+ import { version } from '../package.json';
3
+ export default class HubsViewerPlugin extends Plugin {
4
+ name = 'HubsViewerPlugin';
5
+ version = version;
6
+ install(pluginManager) {
7
+ pluginManager.addToExtensionPoint('Core-handleUnrecognizedAssembly', (_defaultResult, args) => {
8
+ const session = args.session;
9
+ const assemblyName = args.assemblyName;
10
+ const jb2asm = `jb2hub-${assemblyName}`;
11
+ if (assemblyName &&
12
+ !session.connections.find((f) => f.connectionId === jb2asm)) {
13
+ console.log('getUnrecognizedAssembly', { assemblyName });
14
+ const conf = {
15
+ type: 'JB2TrackHubConnection',
16
+ uri: `https://jbrowse.org/ucsc/${assemblyName}/config.json`,
17
+ name: `conn_${assemblyName}`,
18
+ assemblyNames: [assemblyName],
19
+ connectionId: jb2asm,
20
+ };
21
+ session.addConnectionConf(conf);
22
+ session.makeConnection(conf);
23
+ }
24
+ });
25
+ }
26
+ configure(pluginManager) { }
27
+ }
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAGzC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,MAAM;IAClD,IAAI,GAAG,kBAAkB,CAAA;IACzB,OAAO,GAAG,OAAO,CAAA;IAEjB,OAAO,CAAC,aAA4B;QAClC,aAAa,CAAC,mBAAmB,CAC/B,iCAAiC,EACjC,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAc,CAAA;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAsB,CAAA;YAChD,MAAM,MAAM,GAAG,UAAU,YAAY,EAAE,CAAA;YACvC,IACE,YAAY;gBACZ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CACvB,CAAC,CAA2B,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,MAAM,CAC3D,EACD,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;gBACxD,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,uBAAuB;oBAC7B,GAAG,EAAE,4BAA4B,YAAY,cAAc;oBAC3D,IAAI,EAAE,QAAQ,YAAY,EAAE;oBAC5B,aAAa,EAAE,CAAC,YAAY,CAAC;oBAC7B,YAAY,EAAE,MAAM;iBACrB,CAAA;gBACD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;gBAC/B,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC,CACF,CAAA;IACH,CAAC;IAED,SAAS,CAAC,aAA4B,IAAG,CAAC;CAC3C"}
@@ -0,0 +1,2 @@
1
+ "use strict";var JBrowsePluginHubs=(()=>{var g=Object.create;var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var w=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),x=(n,e)=>{for(var s in e)a(n,s,{get:e[s],enumerable:!0})},d=(n,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of y(e))!h.call(n,i)&&i!==s&&a(n,i,{get:()=>e[i],enumerable:!(r=f(e,i))||r.enumerable});return n};var v=(n,e,s)=>(s=n!=null?g(j(n)):{},d(e||!n||!n.__esModule?a(s,"default",{value:n,enumerable:!0}):s,n)),k=n=>d(a({},"__esModule",{value:!0}),n);var p=w((N,m)=>{m.exports=JBrowseExports["@jbrowse/core/Plugin"]});var P={};x(P,{default:()=>l});var b=v(p());var u="1.0.2";var l=class extends b.default{name="HubsViewerPlugin";version=u;install(e){e.addToExtensionPoint("Core-handleUnrecognizedAssembly",(s,r)=>{let i=r.session,t=r.assemblyName,c=`jb2hub-${t}`;if(t&&!i.connections.find(o=>o.connectionId===c)){console.log("getUnrecognizedAssembly",{assemblyName:t});let o={type:"JB2TrackHubConnection",uri:`https://jbrowse.org/ucsc/${t}/config.json`,name:`conn_${t}`,assemblyNames:[t],connectionId:c};i.addConnectionConf(o),i.makeConnection(o)}})}configure(e){}};return k(P);})();
2
+ //# sourceMappingURL=jbrowse-plugin-hubs.umd.production.min.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["global-externals:@jbrowse/core/Plugin", "../src/index.ts", "../package.json"],
4
+ "sourcesContent": ["module.exports = JBrowseExports[\"@jbrowse/core/Plugin\"];", "import Plugin from '@jbrowse/core/Plugin'\nimport PluginManager from '@jbrowse/core/PluginManager'\n\nimport { version } from '../package.json'\n\nexport default class HubsViewerPlugin extends Plugin {\n name = 'HubsViewerPlugin'\n version = version\n\n install(pluginManager: PluginManager) {\n pluginManager.addToExtensionPoint(\n 'Core-handleUnrecognizedAssembly',\n (_defaultResult, args) => {\n const session = args.session as any\n const assemblyName = args.assemblyName as string\n const jb2asm = `jb2hub-${assemblyName}`\n if (\n assemblyName &&\n !session.connections.find(\n (f: { connectionId: string }) => f.connectionId === jb2asm,\n )\n ) {\n console.log('getUnrecognizedAssembly', { assemblyName })\n const conf = {\n type: 'JB2TrackHubConnection',\n uri: `https://jbrowse.org/ucsc/${assemblyName}/config.json`,\n name: `conn_${assemblyName}`,\n assemblyNames: [assemblyName],\n connectionId: jb2asm,\n }\n session.addConnectionConf(conf)\n session.makeConnection(conf)\n }\n },\n )\n }\n\n configure(pluginManager: PluginManager) {}\n}\n", "{\n \"version\": \"1.0.2\",\n \"license\": \"MIT\",\n \"name\": \"@cmdcolin/jbrowse-plugin-hubs\",\n \"keywords\": [\n \"jbrowse\",\n \"jbrowse2\"\n ],\n \"main\": \"dist/index.js\",\n \"module\": \"dist/index.esm.js\",\n \"typings\": \"dist/index.d.ts\",\n \"files\": [\n \"dist\",\n \"src\"\n ],\n \"scripts\": {\n \"clean\": \"rimraf dist\",\n \"start\": \"node esbuild.mjs\",\n \"test\": \"vitest\",\n \"format\": \"prettier --write .\",\n \"prebuild\": \"npm run clean\",\n \"build\": \"tsc && NODE_ENV=production node esbuild.mjs\",\n \"lint\": \"eslint --report-unused-disable-directives --max-warnings 0\",\n \"prepack\": \"npm run build\",\n \"postversion\": \"git push --follow-tags\"\n },\n \"devDependencies\": {\n \"@babel/core\": \"^7.16.5\",\n \"@babel/preset-react\": \"^7.10.4\",\n \"@emotion/react\": \"^11.10.4\",\n \"@fal-works/esbuild-plugin-global-externals\": \"^2.1.2\",\n \"@jbrowse/core\": \"^3.0.1\",\n \"@jbrowse/plugin-data-management\": \"^3.0.1\",\n \"@jbrowse/plugin-linear-genome-view\": \"^3.0.1\",\n \"@mui/material\": \"^7.0.1\",\n \"@mui/system\": \"^7.0.1\",\n \"@mui/x-data-grid\": \"^8.2.0\",\n \"@types/d3-array\": \"^3.2.1\",\n \"@types/d3-hierarchy\": \"^3.1.7\",\n \"@types/node\": \"^22.15.16\",\n \"@types/react\": \"^19.0.1\",\n \"chalk\": \"^5.3.0\",\n \"esbuild\": \"^0.25.0\",\n \"eslint\": \"^9.17.0\",\n \"eslint-plugin-import\": \"^2.31.0\",\n \"eslint-plugin-react\": \"^7.20.3\",\n \"eslint-plugin-react-hooks\": \"^5.1.0\",\n \"eslint-plugin-unicorn\": \"^60.0.0\",\n \"mobx\": \"^6.0.0\",\n \"mobx-react\": \"^9.0.1\",\n \"mobx-state-tree\": \"^5.4.1\",\n \"prettier\": \"^3.4.2\",\n \"pretty-bytes\": \"^7.0.0\",\n \"react\": \"^19.0.0\",\n \"react-dom\": \"^19.0.0\",\n \"rimraf\": \"^6.0.1\",\n \"rxjs\": \"^7.8.1\",\n \"serve\": \"^14.2.0\",\n \"tss-react\": \"^4.9.18\",\n \"typescript\": \"^5.1.6\",\n \"typescript-eslint\": \"^8.18.0\",\n \"vitest\": \"^3.2.1\"\n },\n \"dependencies\": {\n \"@gmod/bgzf-filehandle\": \"^4.0.0\",\n \"abortable-promise-cache\": \"^1.5.0\",\n \"buffer\": \"^6.0.3\",\n \"d3-array\": \"^3.2.4\",\n \"d3-hierarchy\": \"^3.1.2\",\n \"fast-deep-equal\": \"^3.1.3\",\n \"generic-filehandle2\": \"^2.0.1\",\n \"long\": \"^5.2.3\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n }\n}\n"],
5
+ "mappings": "gpBAAA,IAAAA,EAAAC,EAAA,CAAAC,EAAAC,IAAA,CAAAA,EAAO,QAAU,eAAe,sBAAsB,ICAtD,IAAAC,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,IAAAC,EAAmB,OCCjB,IAAAC,EAAW,QDIb,IAAqBC,EAArB,cAA8C,EAAAC,OAAO,CACnD,KAAO,mBACP,QAAUC,EAEV,QAAQC,EAA8B,CACpCA,EAAc,oBACZ,kCACA,CAACC,EAAgBC,IAAS,CACxB,IAAMC,EAAUD,EAAK,QACfE,EAAeF,EAAK,aACpBG,EAAS,UAAUD,CAAY,GACrC,GACEA,GACA,CAACD,EAAQ,YAAY,KAClBG,GAAgCA,EAAE,eAAiBD,CACtD,EACA,CACA,QAAQ,IAAI,0BAA2B,CAAE,aAAAD,CAAa,CAAC,EACvD,IAAMG,EAAO,CACX,KAAM,wBACN,IAAK,4BAA4BH,CAAY,eAC7C,KAAM,QAAQA,CAAY,GAC1B,cAAe,CAACA,CAAY,EAC5B,aAAcC,CAChB,EACAF,EAAQ,kBAAkBI,CAAI,EAC9BJ,EAAQ,eAAeI,CAAI,CAC7B,CACF,CACF,CACF,CAEA,UAAUP,EAA8B,CAAC,CAC3C",
6
+ "names": ["require_Plugin", "__commonJSMin", "exports", "module", "index_exports", "__export", "HubsViewerPlugin", "import_Plugin", "version", "HubsViewerPlugin", "Plugin", "version", "pluginManager", "_defaultResult", "args", "session", "assemblyName", "jb2asm", "f", "conf"]
7
+ }
package/dist/util.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare function textfetch(url: string, arg?: RequestInit): Promise<string>;
package/dist/util.js ADDED
@@ -0,0 +1,8 @@
1
+ export async function textfetch(url, arg) {
2
+ const res = await fetch(url, arg);
3
+ if (!res.ok) {
4
+ throw new Error(`HTTP ${res.status} from ${url}`);
5
+ }
6
+ return res.text();
7
+ }
8
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW,EAAE,GAAiB;IAC5D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACjC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC,CAAA;IACnD,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAA;AACnB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,77 @@
1
+ {
2
+ "version": "1.0.2",
3
+ "license": "MIT",
4
+ "name": "@cmdcolin/jbrowse-plugin-hubs",
5
+ "keywords": [
6
+ "jbrowse",
7
+ "jbrowse2"
8
+ ],
9
+ "main": "dist/index.js",
10
+ "module": "dist/index.esm.js",
11
+ "typings": "dist/index.d.ts",
12
+ "files": [
13
+ "dist",
14
+ "src"
15
+ ],
16
+ "scripts": {
17
+ "clean": "rimraf dist",
18
+ "start": "node esbuild.mjs",
19
+ "test": "vitest",
20
+ "format": "prettier --write .",
21
+ "prebuild": "npm run clean",
22
+ "build": "tsc && NODE_ENV=production node esbuild.mjs",
23
+ "lint": "eslint --report-unused-disable-directives --max-warnings 0",
24
+ "prepack": "npm run build",
25
+ "postversion": "git push --follow-tags"
26
+ },
27
+ "devDependencies": {
28
+ "@babel/core": "^7.16.5",
29
+ "@babel/preset-react": "^7.10.4",
30
+ "@emotion/react": "^11.10.4",
31
+ "@fal-works/esbuild-plugin-global-externals": "^2.1.2",
32
+ "@jbrowse/core": "^3.0.1",
33
+ "@jbrowse/plugin-data-management": "^3.0.1",
34
+ "@jbrowse/plugin-linear-genome-view": "^3.0.1",
35
+ "@mui/material": "^7.0.1",
36
+ "@mui/system": "^7.0.1",
37
+ "@mui/x-data-grid": "^8.2.0",
38
+ "@types/d3-array": "^3.2.1",
39
+ "@types/d3-hierarchy": "^3.1.7",
40
+ "@types/node": "^22.15.16",
41
+ "@types/react": "^19.0.1",
42
+ "chalk": "^5.3.0",
43
+ "esbuild": "^0.25.0",
44
+ "eslint": "^9.17.0",
45
+ "eslint-plugin-import": "^2.31.0",
46
+ "eslint-plugin-react": "^7.20.3",
47
+ "eslint-plugin-react-hooks": "^5.1.0",
48
+ "eslint-plugin-unicorn": "^60.0.0",
49
+ "mobx": "^6.0.0",
50
+ "mobx-react": "^9.0.1",
51
+ "mobx-state-tree": "^5.4.1",
52
+ "prettier": "^3.4.2",
53
+ "pretty-bytes": "^7.0.0",
54
+ "react": "^19.0.0",
55
+ "react-dom": "^19.0.0",
56
+ "rimraf": "^6.0.1",
57
+ "rxjs": "^7.8.1",
58
+ "serve": "^14.2.0",
59
+ "tss-react": "^4.9.18",
60
+ "typescript": "^5.1.6",
61
+ "typescript-eslint": "^8.18.0",
62
+ "vitest": "^3.2.1"
63
+ },
64
+ "dependencies": {
65
+ "@gmod/bgzf-filehandle": "^4.0.0",
66
+ "abortable-promise-cache": "^1.5.0",
67
+ "buffer": "^6.0.3",
68
+ "d3-array": "^3.2.4",
69
+ "d3-hierarchy": "^3.1.2",
70
+ "fast-deep-equal": "^3.1.3",
71
+ "generic-filehandle2": "^2.0.1",
72
+ "long": "^5.2.3"
73
+ },
74
+ "publishConfig": {
75
+ "access": "public"
76
+ }
77
+ }
@@ -0,0 +1 @@
1
+ declare module '*.json'
package/src/index.ts ADDED
@@ -0,0 +1,39 @@
1
+ import Plugin from '@jbrowse/core/Plugin'
2
+ import PluginManager from '@jbrowse/core/PluginManager'
3
+
4
+ import { version } from '../package.json'
5
+
6
+ export default class HubsViewerPlugin extends Plugin {
7
+ name = 'HubsViewerPlugin'
8
+ version = version
9
+
10
+ install(pluginManager: PluginManager) {
11
+ pluginManager.addToExtensionPoint(
12
+ 'Core-handleUnrecognizedAssembly',
13
+ (_defaultResult, args) => {
14
+ const session = args.session as any
15
+ const assemblyName = args.assemblyName as string
16
+ const jb2asm = `jb2hub-${assemblyName}`
17
+ if (
18
+ assemblyName &&
19
+ !session.connections.find(
20
+ (f: { connectionId: string }) => f.connectionId === jb2asm,
21
+ )
22
+ ) {
23
+ console.log('getUnrecognizedAssembly', { assemblyName })
24
+ const conf = {
25
+ type: 'JB2TrackHubConnection',
26
+ uri: `https://jbrowse.org/ucsc/${assemblyName}/config.json`,
27
+ name: `conn_${assemblyName}`,
28
+ assemblyNames: [assemblyName],
29
+ connectionId: jb2asm,
30
+ }
31
+ session.addConnectionConf(conf)
32
+ session.makeConnection(conf)
33
+ }
34
+ },
35
+ )
36
+ }
37
+
38
+ configure(pluginManager: PluginManager) {}
39
+ }
package/src/util.ts ADDED
@@ -0,0 +1,7 @@
1
+ export async function textfetch(url: string, arg?: RequestInit) {
2
+ const res = await fetch(url, arg)
3
+ if (!res.ok) {
4
+ throw new Error(`HTTP ${res.status} from ${url}`)
5
+ }
6
+ return res.text()
7
+ }