loom-browser 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/loom.esm.js +27 -21
- package/dist/loom.esm.min.js +1 -1
- package/dist/loom.esm.min.js.map +1 -1
- package/dist/loom.js +27 -21
- package/dist/loom.min.js +1 -1
- package/dist/loom.min.js.map +1 -1
- package/dist/types/commandDispatcher.d.ts +22 -1
- package/dist/types/gtx/zstdWasm.d.ts +4 -1
- package/dist/types/gtx/zstdWasmInlined.d.ts +6 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/remoteProtocol.d.ts +2 -0
- package/package.json +8 -2
- package/dist/igv.d.ts +0 -667
- package/dist/igv.esm.js +0 -76708
- package/dist/igv.esm.min.js +0 -26
- package/dist/igv.esm.min.js.map +0 -1
- package/dist/igv.js +0 -76716
- package/dist/igv.min.js +0 -26
- package/dist/igv.min.js.map +0 -1
- package/dist/loom.d.ts +0 -667
- package/dist/types/agent/index.d.ts +0 -4
- package/dist/types/agent/stateProjection.d.ts +0 -115
- package/dist/types/agent/trackSelector.d.ts +0 -31
- package/dist/types/baseTrackCanvas.d.ts +0 -62
- package/dist/types/bigwig/binaryParser.d.ts +0 -25
- package/dist/types/bigwig/bpTree.d.ts +0 -40
- package/dist/types/bigwig/bwReader.d.ts +0 -69
- package/dist/types/bigwig/chromTree.d.ts +0 -28
- package/dist/types/bigwig/inflate.d.ts +0 -9
- package/dist/types/bigwig/rangeReader.d.ts +0 -48
- package/dist/types/bigwig/rpTree.d.ts +0 -27
- package/dist/types/dataSources/dynseqDataSource.d.ts +0 -20
- package/dist/types/dynseqRenderer.d.ts +0 -37
- package/dist/types/geneRenderer.d.ts +0 -17
- package/dist/types/geneThemes.d.ts +0 -11
- package/dist/types/geneTrackCanvas.d.ts +0 -46
- package/dist/types/renderTheme.d.ts +0 -72
- package/dist/types/renderThemePresets.d.ts +0 -16
- package/dist/types/rulerRenderer.d.ts +0 -14
- package/dist/types/rulerTrackCanvas.d.ts +0 -32
- package/dist/types/src/bigwig/index.d.ts +0 -66
- package/dist/types/src/canvasProvider.d.ts +0 -36
- package/dist/types/src/commandDispatcher.d.ts +0 -220
- package/dist/types/src/contextMenu.d.ts +0 -64
- package/dist/types/src/contextMenuProvider.d.ts +0 -25
- package/dist/types/src/data/cachedSequence.d.ts +0 -19
- package/dist/types/src/data/ucscApi.d.ts +0 -21
- package/dist/types/src/data/ucscSequence.d.ts +0 -19
- package/dist/types/src/dataLifecycle.d.ts +0 -16
- package/dist/types/src/dataSources/bigWigDataSource.d.ts +0 -24
- package/dist/types/src/dataSources/dataSourceCacheKey.d.ts +0 -9
- package/dist/types/src/dataSources/featureSourceFactory.d.ts +0 -46
- package/dist/types/src/dataSources/geneDataSource.d.ts +0 -16
- package/dist/types/src/dataSources/gtxDataSource.d.ts +0 -42
- package/dist/types/src/dataSources/sequenceDataSource.d.ts +0 -15
- package/dist/types/src/dataSources/textFeatureSource.d.ts +0 -63
- package/dist/types/src/decode/bed.d.ts +0 -64
- package/dist/types/src/decode/bedpe.d.ts +0 -36
- package/dist/types/src/decode/exonUtils.d.ts +0 -29
- package/dist/types/src/decode/gff.d.ts +0 -58
- package/dist/types/src/decode/interact.d.ts +0 -19
- package/dist/types/src/decode/ucsc.d.ts +0 -56
- package/dist/types/src/events.d.ts +0 -23
- package/dist/types/src/export/canvas2svg.d.ts +0 -166
- package/dist/types/src/export/index.d.ts +0 -2
- package/dist/types/src/featureCache.d.ts +0 -69
- package/dist/types/src/formats/featureParser.d.ts +0 -72
- package/dist/types/src/formats/formatDetection.d.ts +0 -46
- package/dist/types/src/genome/chromAlias.d.ts +0 -46
- package/dist/types/src/genome/chromSizes.d.ts +0 -53
- package/dist/types/src/genome/genome.d.ts +0 -51
- package/dist/types/src/genomeBrowser.d.ts +0 -189
- package/dist/types/src/gtx/fetchCoordinator.d.ts +0 -34
- package/dist/types/src/gtx/gtxReader.d.ts +0 -144
- package/dist/types/src/gtx/index.d.ts +0 -40
- package/dist/types/src/gtx/zstdWasm.d.ts +0 -22
- package/dist/types/src/headlessGenomeBrowser.d.ts +0 -450
- package/dist/types/src/index.d.ts +0 -123
- package/dist/types/src/intervalTree.d.ts +0 -56
- package/dist/types/src/io/binaryParser.d.ts +0 -25
- package/dist/types/src/io/index.d.ts +0 -7
- package/dist/types/src/io/rangeReader.d.ts +0 -48
- package/dist/types/src/locusUtils.d.ts +0 -37
- package/dist/types/src/pack.d.ts +0 -41
- package/dist/types/src/popupProvider.d.ts +0 -22
- package/dist/types/src/remoteProtocol.d.ts +0 -81
- package/dist/types/src/roi/index.d.ts +0 -3
- package/dist/types/src/roi/roiRenderer.d.ts +0 -24
- package/dist/types/src/roi/roiSet.d.ts +0 -41
- package/dist/types/src/sequence/sequenceUtils.d.ts +0 -44
- package/dist/types/src/session.d.ts +0 -55
- package/dist/types/src/stateProjection.d.ts +0 -115
- package/dist/types/src/tabix/index.d.ts +0 -48
- package/dist/types/src/themes/index.d.ts +0 -3
- package/dist/types/src/themes/renderTheme.d.ts +0 -86
- package/dist/types/src/themes/renderThemePresets.d.ts +0 -16
- package/dist/types/src/trackRegistry.d.ts +0 -81
- package/dist/types/src/trackSelector.d.ts +0 -31
- package/dist/types/src/tracks/annotation/annotationRenderer.d.ts +0 -17
- package/dist/types/src/tracks/annotation/annotationThemes.d.ts +0 -11
- package/dist/types/src/tracks/annotation/annotationTrackCanvas.d.ts +0 -58
- package/dist/types/src/tracks/annotation/index.d.ts +0 -4
- package/dist/types/src/tracks/axis/axisRenderer.d.ts +0 -19
- package/dist/types/src/tracks/axis/index.d.ts +0 -1
- package/dist/types/src/tracks/baseTrackCanvas.d.ts +0 -113
- package/dist/types/src/tracks/dynseq/dynseqRenderer.d.ts +0 -38
- package/dist/types/src/tracks/dynseq/index.d.ts +0 -1
- package/dist/types/src/tracks/index.d.ts +0 -7
- package/dist/types/src/tracks/interaction/index.d.ts +0 -4
- package/dist/types/src/tracks/interaction/interactionRenderer.d.ts +0 -52
- package/dist/types/src/tracks/interaction/interactionTrackCanvas.d.ts +0 -54
- package/dist/types/src/tracks/ruler/index.d.ts +0 -3
- package/dist/types/src/tracks/ruler/rulerRenderer.d.ts +0 -25
- package/dist/types/src/tracks/ruler/rulerTrackCanvas.d.ts +0 -43
- package/dist/types/src/tracks/sequence/index.d.ts +0 -5
- package/dist/types/src/tracks/sequence/sequenceRenderer.d.ts +0 -34
- package/dist/types/src/tracks/sequence/sequenceThemes.d.ts +0 -11
- package/dist/types/src/tracks/sequence/sequenceTrackCanvas.d.ts +0 -67
- package/dist/types/src/tracks/wig/index.d.ts +0 -5
- package/dist/types/src/tracks/wig/wigRenderer.d.ts +0 -15
- package/dist/types/src/tracks/wig/wigSummary.d.ts +0 -31
- package/dist/types/src/tracks/wig/wigThemes.d.ts +0 -15
- package/dist/types/src/tracks/wig/wigTrackCanvas.d.ts +0 -82
- package/dist/types/src/types.d.ts +0 -885
- package/dist/types/src/ui/components/LoomBrowserShell.d.ts +0 -52
- package/dist/types/src/ui/components/LoomChromosomeSelect.d.ts +0 -18
- package/dist/types/src/ui/components/LoomContextMenu.d.ts +0 -39
- package/dist/types/src/ui/components/LoomExportControls.d.ts +0 -13
- package/dist/types/src/ui/components/LoomInputDialog.d.ts +0 -27
- package/dist/types/src/ui/components/LoomLocusInput.d.ts +0 -18
- package/dist/types/src/ui/components/LoomNavbar.d.ts +0 -15
- package/dist/types/src/ui/components/LoomPopup.d.ts +0 -32
- package/dist/types/src/ui/components/LoomWindowSize.d.ts +0 -14
- package/dist/types/src/ui/components/LoomZoomControls.d.ts +0 -10
- package/dist/types/src/ui/index.d.ts +0 -21
- package/dist/types/src/ui/themes.d.ts +0 -14
- package/dist/types/src/worker/nodeWorkerProvider.d.ts +0 -28
- package/dist/types/src/worker/taskHandler.d.ts +0 -15
- package/dist/types/src/worker/webWorkerProvider.d.ts +0 -51
- package/dist/types/src/worker/workerScript.d.ts +0 -11
- package/dist/types/src/workerProvider.d.ts +0 -76
- package/dist/types/tabix/bgzBlockLoader.d.ts +0 -60
- package/dist/types/tabix/bgzf.d.ts +0 -43
- package/dist/types/tabix/tabixIndex.d.ts +0 -85
- package/dist/types/tabix/tabixReader.d.ts +0 -60
- package/dist/types/tabix/virtualOffset.d.ts +0 -41
- package/dist/types/test/src/mockCanvasProvider.d.ts +0 -67
- package/dist/types/test/src/testBedDecode.d.ts +0 -1
- package/dist/types/test/src/testCanvas2SVG.d.ts +0 -7
- package/dist/types/test/src/testChromAlias.d.ts +0 -1
- package/dist/types/test/src/testCommandDispatcher.d.ts +0 -1
- package/dist/types/test/src/testData.d.ts +0 -7
- package/dist/types/test/src/testDataLifecycle.d.ts +0 -1
- package/dist/types/test/src/testDataSourceCacheKey.d.ts +0 -1
- package/dist/types/test/src/testDataSources.d.ts +0 -5
- package/dist/types/test/src/testDecodeUcsc.d.ts +0 -1
- package/dist/types/test/src/testEvents.d.ts +0 -1
- package/dist/types/test/src/testFeatureCache.d.ts +0 -1
- package/dist/types/test/src/testFeatureParser.d.ts +0 -1
- package/dist/types/test/src/testFormatDetection.d.ts +0 -1
- package/dist/types/test/src/testGffDecode.d.ts +0 -1
- package/dist/types/test/src/testHeadlessBrowser.d.ts +0 -1
- package/dist/types/test/src/testInteractionDecoder.d.ts +0 -1
- package/dist/types/test/src/testIntervalTree.d.ts +0 -1
- package/dist/types/test/src/testLocusUtils.d.ts +0 -1
- package/dist/types/test/src/testPack.d.ts +0 -1
- package/dist/types/test/src/testROI.d.ts +0 -1
- package/dist/types/test/src/testRemoteProtocol.d.ts +0 -1
- package/dist/types/test/src/testRenderTheme.d.ts +0 -1
- package/dist/types/test/src/testSVGExport.d.ts +0 -5
- package/dist/types/test/src/testSequence.d.ts +0 -1
- package/dist/types/test/src/testSession.d.ts +0 -1
- package/dist/types/test/src/testTrackSelector.d.ts +0 -1
- package/dist/types/test/src/testTrackSerialize.d.ts +0 -1
- package/dist/types/test/src/testWigSummary.d.ts +0 -1
- package/dist/types/test/src/testWorkerDispatch.d.ts +0 -9
- package/dist/types/tracks/gene/geneRenderer.d.ts +0 -17
- package/dist/types/tracks/gene/geneThemes.d.ts +0 -11
- package/dist/types/tracks/gene/geneTrackCanvas.d.ts +0 -58
- package/dist/types/tracks/gene/index.d.ts +0 -4
- package/dist/types/ui/components/IgvBrowserShell.d.ts +0 -52
- package/dist/types/ui/components/IgvChromosomeSelect.d.ts +0 -18
- package/dist/types/ui/components/IgvExportControls.d.ts +0 -13
- package/dist/types/ui/components/IgvLocusInput.d.ts +0 -18
- package/dist/types/ui/components/IgvNavbar.d.ts +0 -15
- package/dist/types/ui/components/IgvWindowSize.d.ts +0 -14
- package/dist/types/ui/components/IgvZoomControls.d.ts +0 -10
- package/dist/types/wigRenderer.d.ts +0 -15
- package/dist/types/wigSummary.d.ts +0 -31
- package/dist/types/wigThemes.d.ts +0 -15
- package/dist/types/wigTrackCanvas.d.ts +0 -46
- package/dist/types/worker/decodeWig.d.ts +0 -20
|
@@ -115,7 +115,12 @@ export type ROIAction = {
|
|
|
115
115
|
} | {
|
|
116
116
|
action: 'get_visible';
|
|
117
117
|
};
|
|
118
|
-
export
|
|
118
|
+
export interface SubscribeEventsArgs {
|
|
119
|
+
command: 'subscribe_events';
|
|
120
|
+
/** Event names to subscribe to. Use `['*']` for all events, `[]` for none. */
|
|
121
|
+
events: string[];
|
|
122
|
+
}
|
|
123
|
+
export type CommandArgs = GetBrowserStateArgs | NavigateArgs | ModifyTracksArgs | QueryFeaturesArgs | AnnotateArgs | SetLayoutArgs | ExportViewArgs | ManageROIsArgs | SubscribeEventsArgs;
|
|
119
124
|
export interface ModifyTrackActionResult {
|
|
120
125
|
action: string;
|
|
121
126
|
success: boolean;
|
|
@@ -162,6 +167,9 @@ export type ManageROIsResult = {
|
|
|
162
167
|
action: 'get_visible';
|
|
163
168
|
rois: ROI[];
|
|
164
169
|
};
|
|
170
|
+
export interface SubscribeEventsResult {
|
|
171
|
+
subscribed: string[];
|
|
172
|
+
}
|
|
165
173
|
export interface CommandResultMap {
|
|
166
174
|
get_browser_state: ProjectedState;
|
|
167
175
|
navigate: boolean;
|
|
@@ -171,18 +179,30 @@ export interface CommandResultMap {
|
|
|
171
179
|
set_layout: SetLayoutResult;
|
|
172
180
|
export_view: string | SessionConfig;
|
|
173
181
|
manage_rois: ManageROIsResult;
|
|
182
|
+
subscribe_events: SubscribeEventsResult;
|
|
174
183
|
}
|
|
175
184
|
export interface CommandDispatcherOptions {
|
|
176
185
|
/** Whether the browser supports PNG export (true for DOM GenomeBrowser). */
|
|
177
186
|
supportsPNG?: boolean;
|
|
178
187
|
/** Custom PNG exporter — called when format is 'png'. Allows GenomeBrowser to inject toPNG(). */
|
|
179
188
|
exportPNG?: () => Promise<string>;
|
|
189
|
+
/** Callback when agent subscribes to events. Used by RemoteConnection to filter forwarding. */
|
|
190
|
+
onSubscribeEvents?: (events: string[]) => void;
|
|
180
191
|
}
|
|
181
192
|
export declare class CommandDispatcher {
|
|
182
193
|
private browser;
|
|
183
194
|
private options;
|
|
184
195
|
constructor(browser: HeadlessGenomeBrowser, options?: CommandDispatcherOptions);
|
|
185
196
|
/** Dispatch a command to the appropriate handler. */
|
|
197
|
+
dispatch(args: GetBrowserStateArgs): Promise<ProjectedState>;
|
|
198
|
+
dispatch(args: NavigateArgs): Promise<boolean>;
|
|
199
|
+
dispatch(args: ModifyTracksArgs): Promise<ModifyTracksResult>;
|
|
200
|
+
dispatch(args: QueryFeaturesArgs): Promise<QueryFeaturesResult>;
|
|
201
|
+
dispatch(args: AnnotateArgs): Promise<never>;
|
|
202
|
+
dispatch(args: SetLayoutArgs): Promise<SetLayoutResult>;
|
|
203
|
+
dispatch(args: ExportViewArgs): Promise<string | SessionConfig>;
|
|
204
|
+
dispatch(args: ManageROIsArgs): Promise<ManageROIsResult>;
|
|
205
|
+
dispatch(args: SubscribeEventsArgs): Promise<SubscribeEventsResult>;
|
|
186
206
|
dispatch(args: CommandArgs): Promise<CommandResultMap[CommandArgs['command']]>;
|
|
187
207
|
private handleGetState;
|
|
188
208
|
private handleNavigate;
|
|
@@ -196,4 +216,5 @@ export declare class CommandDispatcher {
|
|
|
196
216
|
private layoutMatchKey;
|
|
197
217
|
private handleExportView;
|
|
198
218
|
private handleManageROIs;
|
|
219
|
+
private handleSubscribeEvents;
|
|
199
220
|
}
|
|
@@ -4,11 +4,14 @@
|
|
|
4
4
|
* Directly instantiates the zstd WASM binary (from @bokuweb/zstd-wasm, MIT license)
|
|
5
5
|
* without the Emscripten glue code that breaks webpack bundling.
|
|
6
6
|
*
|
|
7
|
+
* The WASM binary is base64-inlined to avoid bundler issues with
|
|
8
|
+
* `new URL('./zstd.wasm', import.meta.url)` (e.g. Turbopack).
|
|
9
|
+
*
|
|
7
10
|
* Only exposes decompression with dictionary — the minimum needed for GTX.
|
|
8
11
|
*/
|
|
9
12
|
/**
|
|
10
13
|
* Initialize the zstd WASM module. Idempotent — safe to call multiple times.
|
|
11
|
-
*
|
|
14
|
+
* Instantiates from the base64-inlined binary.
|
|
12
15
|
*/
|
|
13
16
|
export declare function initZstd(): Promise<void>;
|
|
14
17
|
/** Create a decompression context. Returns an opaque handle. */
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base64-inlined zstd WASM binary (from @bokuweb/zstd-wasm, MIT license).
|
|
3
|
+
* Eliminates the need for bundlers to handle `new URL('./zstd.wasm', import.meta.url)`.
|
|
4
|
+
*/
|
|
5
|
+
/** Decode the base64 string to bytes (cached after first call). */
|
|
6
|
+
export declare function getZstdWasmBytes(): Uint8Array;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -118,6 +118,6 @@ export type { ZoomLevel, TrackSummary, ProjectedState, StateDiff, TrackChangeDif
|
|
|
118
118
|
export { matchesSelector, selectTracks } from './trackSelector';
|
|
119
119
|
export type { TrackSelector } from './trackSelector';
|
|
120
120
|
export { CommandDispatcher, CommandError, toTrackSelector } from './commandDispatcher';
|
|
121
|
-
export type { CommandArgs, CommandResultMap, CommandErrorCode, CommandDispatcherOptions, WireTrackSelector, ModifyTrackAction, ROIAction, GetBrowserStateArgs, NavigateArgs, ModifyTracksArgs, QueryFeaturesArgs, AnnotateArgs, SetLayoutArgs, ExportViewArgs, ManageROIsArgs, ModifyTracksResult, ModifyTrackActionResult, QueryFeaturesResult, SetLayoutResult, ManageROIsResult, } from './commandDispatcher';
|
|
121
|
+
export type { CommandArgs, CommandResultMap, CommandErrorCode, CommandDispatcherOptions, WireTrackSelector, ModifyTrackAction, ROIAction, GetBrowserStateArgs, NavigateArgs, ModifyTracksArgs, QueryFeaturesArgs, AnnotateArgs, SetLayoutArgs, ExportViewArgs, ManageROIsArgs, SubscribeEventsArgs, ModifyTracksResult, ModifyTrackActionResult, QueryFeaturesResult, SetLayoutResult, ManageROIsResult, SubscribeEventsResult, } from './commandDispatcher';
|
|
122
122
|
export { RemoteConnection, READY_STATE_OPEN } from './remoteProtocol';
|
|
123
123
|
export type { RemoteSocket, RequestMessage, ResponseMessage, ErrorMessage, EventMessage, OutboundMessage, } from './remoteProtocol';
|
|
@@ -58,6 +58,8 @@ export declare class RemoteConnection {
|
|
|
58
58
|
private messageHandler;
|
|
59
59
|
private closeHandler;
|
|
60
60
|
private detached;
|
|
61
|
+
/** null = no subscription (default, no events forwarded). Set with subscribe_events command. */
|
|
62
|
+
private subscribedEvents;
|
|
61
63
|
constructor(browser: HeadlessGenomeBrowser, socket: RemoteSocket, options?: CommandDispatcherOptions);
|
|
62
64
|
/** Disconnect: unsubscribe all event listeners and stop forwarding. */
|
|
63
65
|
detach(): void;
|
package/package.json
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "loom-browser",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"main": "dist/loom.esm.js",
|
|
5
|
-
"browser": "dist/loom.js",
|
|
6
5
|
"module": "dist/loom.esm.js",
|
|
7
6
|
"types": "dist/types/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/types/index.d.ts",
|
|
10
|
+
"import": "./dist/loom.esm.js",
|
|
11
|
+
"require": "./dist/loom.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
8
14
|
"type": "module",
|
|
9
15
|
"description": "A modular, headless-first genomic visualization engine built in TypeScript",
|
|
10
16
|
"files": [
|