loom-browser 0.0.1 → 0.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.
Files changed (185) hide show
  1. package/dist/loom.esm.min.js.map +1 -1
  2. package/dist/types/commandDispatcher.d.ts +22 -1
  3. package/dist/types/index.d.ts +1 -1
  4. package/dist/types/remoteProtocol.d.ts +2 -0
  5. package/package.json +8 -2
  6. package/dist/igv.d.ts +0 -667
  7. package/dist/igv.esm.js +0 -76708
  8. package/dist/igv.esm.min.js +0 -26
  9. package/dist/igv.esm.min.js.map +0 -1
  10. package/dist/igv.js +0 -76716
  11. package/dist/igv.min.js +0 -26
  12. package/dist/igv.min.js.map +0 -1
  13. package/dist/loom.d.ts +0 -667
  14. package/dist/types/agent/index.d.ts +0 -4
  15. package/dist/types/agent/stateProjection.d.ts +0 -115
  16. package/dist/types/agent/trackSelector.d.ts +0 -31
  17. package/dist/types/baseTrackCanvas.d.ts +0 -62
  18. package/dist/types/bigwig/binaryParser.d.ts +0 -25
  19. package/dist/types/bigwig/bpTree.d.ts +0 -40
  20. package/dist/types/bigwig/bwReader.d.ts +0 -69
  21. package/dist/types/bigwig/chromTree.d.ts +0 -28
  22. package/dist/types/bigwig/inflate.d.ts +0 -9
  23. package/dist/types/bigwig/rangeReader.d.ts +0 -48
  24. package/dist/types/bigwig/rpTree.d.ts +0 -27
  25. package/dist/types/dataSources/dynseqDataSource.d.ts +0 -20
  26. package/dist/types/dynseqRenderer.d.ts +0 -37
  27. package/dist/types/geneRenderer.d.ts +0 -17
  28. package/dist/types/geneThemes.d.ts +0 -11
  29. package/dist/types/geneTrackCanvas.d.ts +0 -46
  30. package/dist/types/renderTheme.d.ts +0 -72
  31. package/dist/types/renderThemePresets.d.ts +0 -16
  32. package/dist/types/rulerRenderer.d.ts +0 -14
  33. package/dist/types/rulerTrackCanvas.d.ts +0 -32
  34. package/dist/types/src/bigwig/index.d.ts +0 -66
  35. package/dist/types/src/canvasProvider.d.ts +0 -36
  36. package/dist/types/src/commandDispatcher.d.ts +0 -220
  37. package/dist/types/src/contextMenu.d.ts +0 -64
  38. package/dist/types/src/contextMenuProvider.d.ts +0 -25
  39. package/dist/types/src/data/cachedSequence.d.ts +0 -19
  40. package/dist/types/src/data/ucscApi.d.ts +0 -21
  41. package/dist/types/src/data/ucscSequence.d.ts +0 -19
  42. package/dist/types/src/dataLifecycle.d.ts +0 -16
  43. package/dist/types/src/dataSources/bigWigDataSource.d.ts +0 -24
  44. package/dist/types/src/dataSources/dataSourceCacheKey.d.ts +0 -9
  45. package/dist/types/src/dataSources/featureSourceFactory.d.ts +0 -46
  46. package/dist/types/src/dataSources/geneDataSource.d.ts +0 -16
  47. package/dist/types/src/dataSources/gtxDataSource.d.ts +0 -42
  48. package/dist/types/src/dataSources/sequenceDataSource.d.ts +0 -15
  49. package/dist/types/src/dataSources/textFeatureSource.d.ts +0 -63
  50. package/dist/types/src/decode/bed.d.ts +0 -64
  51. package/dist/types/src/decode/bedpe.d.ts +0 -36
  52. package/dist/types/src/decode/exonUtils.d.ts +0 -29
  53. package/dist/types/src/decode/gff.d.ts +0 -58
  54. package/dist/types/src/decode/interact.d.ts +0 -19
  55. package/dist/types/src/decode/ucsc.d.ts +0 -56
  56. package/dist/types/src/events.d.ts +0 -23
  57. package/dist/types/src/export/canvas2svg.d.ts +0 -166
  58. package/dist/types/src/export/index.d.ts +0 -2
  59. package/dist/types/src/featureCache.d.ts +0 -69
  60. package/dist/types/src/formats/featureParser.d.ts +0 -72
  61. package/dist/types/src/formats/formatDetection.d.ts +0 -46
  62. package/dist/types/src/genome/chromAlias.d.ts +0 -46
  63. package/dist/types/src/genome/chromSizes.d.ts +0 -53
  64. package/dist/types/src/genome/genome.d.ts +0 -51
  65. package/dist/types/src/genomeBrowser.d.ts +0 -189
  66. package/dist/types/src/gtx/fetchCoordinator.d.ts +0 -34
  67. package/dist/types/src/gtx/gtxReader.d.ts +0 -144
  68. package/dist/types/src/gtx/index.d.ts +0 -40
  69. package/dist/types/src/gtx/zstdWasm.d.ts +0 -22
  70. package/dist/types/src/headlessGenomeBrowser.d.ts +0 -450
  71. package/dist/types/src/index.d.ts +0 -123
  72. package/dist/types/src/intervalTree.d.ts +0 -56
  73. package/dist/types/src/io/binaryParser.d.ts +0 -25
  74. package/dist/types/src/io/index.d.ts +0 -7
  75. package/dist/types/src/io/rangeReader.d.ts +0 -48
  76. package/dist/types/src/locusUtils.d.ts +0 -37
  77. package/dist/types/src/pack.d.ts +0 -41
  78. package/dist/types/src/popupProvider.d.ts +0 -22
  79. package/dist/types/src/remoteProtocol.d.ts +0 -81
  80. package/dist/types/src/roi/index.d.ts +0 -3
  81. package/dist/types/src/roi/roiRenderer.d.ts +0 -24
  82. package/dist/types/src/roi/roiSet.d.ts +0 -41
  83. package/dist/types/src/sequence/sequenceUtils.d.ts +0 -44
  84. package/dist/types/src/session.d.ts +0 -55
  85. package/dist/types/src/stateProjection.d.ts +0 -115
  86. package/dist/types/src/tabix/index.d.ts +0 -48
  87. package/dist/types/src/themes/index.d.ts +0 -3
  88. package/dist/types/src/themes/renderTheme.d.ts +0 -86
  89. package/dist/types/src/themes/renderThemePresets.d.ts +0 -16
  90. package/dist/types/src/trackRegistry.d.ts +0 -81
  91. package/dist/types/src/trackSelector.d.ts +0 -31
  92. package/dist/types/src/tracks/annotation/annotationRenderer.d.ts +0 -17
  93. package/dist/types/src/tracks/annotation/annotationThemes.d.ts +0 -11
  94. package/dist/types/src/tracks/annotation/annotationTrackCanvas.d.ts +0 -58
  95. package/dist/types/src/tracks/annotation/index.d.ts +0 -4
  96. package/dist/types/src/tracks/axis/axisRenderer.d.ts +0 -19
  97. package/dist/types/src/tracks/axis/index.d.ts +0 -1
  98. package/dist/types/src/tracks/baseTrackCanvas.d.ts +0 -113
  99. package/dist/types/src/tracks/dynseq/dynseqRenderer.d.ts +0 -38
  100. package/dist/types/src/tracks/dynseq/index.d.ts +0 -1
  101. package/dist/types/src/tracks/index.d.ts +0 -7
  102. package/dist/types/src/tracks/interaction/index.d.ts +0 -4
  103. package/dist/types/src/tracks/interaction/interactionRenderer.d.ts +0 -52
  104. package/dist/types/src/tracks/interaction/interactionTrackCanvas.d.ts +0 -54
  105. package/dist/types/src/tracks/ruler/index.d.ts +0 -3
  106. package/dist/types/src/tracks/ruler/rulerRenderer.d.ts +0 -25
  107. package/dist/types/src/tracks/ruler/rulerTrackCanvas.d.ts +0 -43
  108. package/dist/types/src/tracks/sequence/index.d.ts +0 -5
  109. package/dist/types/src/tracks/sequence/sequenceRenderer.d.ts +0 -34
  110. package/dist/types/src/tracks/sequence/sequenceThemes.d.ts +0 -11
  111. package/dist/types/src/tracks/sequence/sequenceTrackCanvas.d.ts +0 -67
  112. package/dist/types/src/tracks/wig/index.d.ts +0 -5
  113. package/dist/types/src/tracks/wig/wigRenderer.d.ts +0 -15
  114. package/dist/types/src/tracks/wig/wigSummary.d.ts +0 -31
  115. package/dist/types/src/tracks/wig/wigThemes.d.ts +0 -15
  116. package/dist/types/src/tracks/wig/wigTrackCanvas.d.ts +0 -82
  117. package/dist/types/src/types.d.ts +0 -885
  118. package/dist/types/src/ui/components/LoomBrowserShell.d.ts +0 -52
  119. package/dist/types/src/ui/components/LoomChromosomeSelect.d.ts +0 -18
  120. package/dist/types/src/ui/components/LoomContextMenu.d.ts +0 -39
  121. package/dist/types/src/ui/components/LoomExportControls.d.ts +0 -13
  122. package/dist/types/src/ui/components/LoomInputDialog.d.ts +0 -27
  123. package/dist/types/src/ui/components/LoomLocusInput.d.ts +0 -18
  124. package/dist/types/src/ui/components/LoomNavbar.d.ts +0 -15
  125. package/dist/types/src/ui/components/LoomPopup.d.ts +0 -32
  126. package/dist/types/src/ui/components/LoomWindowSize.d.ts +0 -14
  127. package/dist/types/src/ui/components/LoomZoomControls.d.ts +0 -10
  128. package/dist/types/src/ui/index.d.ts +0 -21
  129. package/dist/types/src/ui/themes.d.ts +0 -14
  130. package/dist/types/src/worker/nodeWorkerProvider.d.ts +0 -28
  131. package/dist/types/src/worker/taskHandler.d.ts +0 -15
  132. package/dist/types/src/worker/webWorkerProvider.d.ts +0 -51
  133. package/dist/types/src/worker/workerScript.d.ts +0 -11
  134. package/dist/types/src/workerProvider.d.ts +0 -76
  135. package/dist/types/tabix/bgzBlockLoader.d.ts +0 -60
  136. package/dist/types/tabix/bgzf.d.ts +0 -43
  137. package/dist/types/tabix/tabixIndex.d.ts +0 -85
  138. package/dist/types/tabix/tabixReader.d.ts +0 -60
  139. package/dist/types/tabix/virtualOffset.d.ts +0 -41
  140. package/dist/types/test/src/mockCanvasProvider.d.ts +0 -67
  141. package/dist/types/test/src/testBedDecode.d.ts +0 -1
  142. package/dist/types/test/src/testCanvas2SVG.d.ts +0 -7
  143. package/dist/types/test/src/testChromAlias.d.ts +0 -1
  144. package/dist/types/test/src/testCommandDispatcher.d.ts +0 -1
  145. package/dist/types/test/src/testData.d.ts +0 -7
  146. package/dist/types/test/src/testDataLifecycle.d.ts +0 -1
  147. package/dist/types/test/src/testDataSourceCacheKey.d.ts +0 -1
  148. package/dist/types/test/src/testDataSources.d.ts +0 -5
  149. package/dist/types/test/src/testDecodeUcsc.d.ts +0 -1
  150. package/dist/types/test/src/testEvents.d.ts +0 -1
  151. package/dist/types/test/src/testFeatureCache.d.ts +0 -1
  152. package/dist/types/test/src/testFeatureParser.d.ts +0 -1
  153. package/dist/types/test/src/testFormatDetection.d.ts +0 -1
  154. package/dist/types/test/src/testGffDecode.d.ts +0 -1
  155. package/dist/types/test/src/testHeadlessBrowser.d.ts +0 -1
  156. package/dist/types/test/src/testInteractionDecoder.d.ts +0 -1
  157. package/dist/types/test/src/testIntervalTree.d.ts +0 -1
  158. package/dist/types/test/src/testLocusUtils.d.ts +0 -1
  159. package/dist/types/test/src/testPack.d.ts +0 -1
  160. package/dist/types/test/src/testROI.d.ts +0 -1
  161. package/dist/types/test/src/testRemoteProtocol.d.ts +0 -1
  162. package/dist/types/test/src/testRenderTheme.d.ts +0 -1
  163. package/dist/types/test/src/testSVGExport.d.ts +0 -5
  164. package/dist/types/test/src/testSequence.d.ts +0 -1
  165. package/dist/types/test/src/testSession.d.ts +0 -1
  166. package/dist/types/test/src/testTrackSelector.d.ts +0 -1
  167. package/dist/types/test/src/testTrackSerialize.d.ts +0 -1
  168. package/dist/types/test/src/testWigSummary.d.ts +0 -1
  169. package/dist/types/test/src/testWorkerDispatch.d.ts +0 -9
  170. package/dist/types/tracks/gene/geneRenderer.d.ts +0 -17
  171. package/dist/types/tracks/gene/geneThemes.d.ts +0 -11
  172. package/dist/types/tracks/gene/geneTrackCanvas.d.ts +0 -58
  173. package/dist/types/tracks/gene/index.d.ts +0 -4
  174. package/dist/types/ui/components/IgvBrowserShell.d.ts +0 -52
  175. package/dist/types/ui/components/IgvChromosomeSelect.d.ts +0 -18
  176. package/dist/types/ui/components/IgvExportControls.d.ts +0 -13
  177. package/dist/types/ui/components/IgvLocusInput.d.ts +0 -18
  178. package/dist/types/ui/components/IgvNavbar.d.ts +0 -15
  179. package/dist/types/ui/components/IgvWindowSize.d.ts +0 -14
  180. package/dist/types/ui/components/IgvZoomControls.d.ts +0 -10
  181. package/dist/types/wigRenderer.d.ts +0 -15
  182. package/dist/types/wigSummary.d.ts +0 -31
  183. package/dist/types/wigThemes.d.ts +0 -15
  184. package/dist/types/wigTrackCanvas.d.ts +0 -46
  185. 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 type CommandArgs = GetBrowserStateArgs | NavigateArgs | ModifyTracksArgs | QueryFeaturesArgs | AnnotateArgs | SetLayoutArgs | ExportViewArgs | ManageROIsArgs;
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
  }
@@ -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.1",
3
+ "version": "0.0.2",
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": [