@jbrowse/bandage-core 9.9.2 → 9.10.0

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 (52) hide show
  1. package/README.md +3 -0
  2. package/dist/bubbles/superbubbles.js +2 -2
  3. package/dist/chunks/{chunk-IZ3W5IU2.js → chunk-2FLBFVMO.js} +33 -33
  4. package/dist/chunks/{chunk-BQ33OOLC.js → chunk-2VTM3DHG.js} +1 -1
  5. package/dist/chunks/{chunk-F4BKWWLS.js → chunk-4IYP43W6.js} +4 -4
  6. package/dist/chunks/{chunk-RK3MF4FD.js → chunk-BDWQQK33.js} +1 -1
  7. package/dist/chunks/{chunk-HOZI3FBG.js → chunk-CXKZYLYS.js} +1 -1
  8. package/dist/chunks/{chunk-MECWJY2R.js → chunk-DMH4NL2M.js} +4 -4
  9. package/dist/chunks/{chunk-P6O4RSOQ.js → chunk-FJZ2TB46.js} +5 -5
  10. package/dist/chunks/{chunk-IJRNMO4D.js → chunk-FUUJ76KD.js} +1 -1
  11. package/dist/chunks/{chunk-FPTI3WAV.js → chunk-HRAU4VTB.js} +12 -7
  12. package/dist/chunks/{chunk-YGN4KL7W.js → chunk-IZI7KIVX.js} +1 -1
  13. package/dist/chunks/{chunk-YS7VA5SI.js → chunk-K5NYTPLC.js} +1 -1
  14. package/dist/chunks/{chunk-F5BYHLIN.js → chunk-KYY5363X.js} +1 -1
  15. package/dist/chunks/{chunk-WVBYR6Y7.js → chunk-LZWSZRUY.js} +1 -1
  16. package/dist/chunks/{chunk-EE37PVQY.js → chunk-MVMP6AGI.js} +1 -1
  17. package/dist/chunks/chunk-NGODVSCA.js +292 -0
  18. package/dist/chunks/chunk-OPPVSPEF.js +57 -0
  19. package/dist/chunks/{chunk-ZBLKAWSD.js → chunk-PT37VS5B.js} +1 -1
  20. package/dist/chunks/{chunk-YAN2ZPNV.js → chunk-Q6UIUY6X.js} +1 -1
  21. package/dist/chunks/{chunk-KJEMKHVB.js → chunk-TFAFIRZB.js} +1 -1
  22. package/dist/cli/figure.js +41 -40
  23. package/dist/cli/fold.js +4 -3
  24. package/dist/figure.js +25 -24
  25. package/dist/figureData.js +62 -0
  26. package/dist/figureSettings.js +5 -4
  27. package/dist/index.js +150 -143
  28. package/dist/layout/forceCache.js +5 -4
  29. package/dist/layout/smoothChains.js +6 -0
  30. package/dist/layout/tubeMapLayout.js +4 -4
  31. package/dist/layout/walkRowDraw.js +9 -9
  32. package/dist/layout/walkStrip.js +10 -10
  33. package/dist/layoutModes.js +7 -7
  34. package/dist/pathColors.js +3 -3
  35. package/dist/pipeline.js +4 -3
  36. package/dist/referenceRampCss.js +7 -7
  37. package/dist/referenceStrip.js +7 -7
  38. package/dist/renderer/GeometryBuilder.js +6 -6
  39. package/dist/tubeMap/bundle.js +5 -5
  40. package/dist/tubeMap/coarsen.js +4 -4
  41. package/dist/tubeMap/nodeColors.js +7 -7
  42. package/dist/types/figureData.d.ts +146 -0
  43. package/dist/types/index.d.ts +2 -0
  44. package/dist/types/layout/smoothChains.d.ts +2 -0
  45. package/dist/types/version.d.ts +1 -1
  46. package/dist/version.js +1 -1
  47. package/dist/viewport.js +5 -4
  48. package/dist/walkEncoding.js +7 -7
  49. package/dist/walkHighlight.js +8 -8
  50. package/package.json +1 -1
  51. package/dist/chunks/{chunk-ROQGMTFB.js → chunk-5GZEPPEW.js} +5 -5
  52. package/dist/chunks/{chunk-EDASNMLY.js → chunk-XZ2BLAA6.js} +3 -3
@@ -11,16 +11,16 @@ import {
11
11
  endTangent,
12
12
  getNodeColor,
13
13
  hslToRgb
14
- } from "../chunks/chunk-F4BKWWLS.js";
14
+ } from "../chunks/chunk-4IYP43W6.js";
15
15
  import "../chunks/chunk-G2FD7S3C.js";
16
- import "../chunks/chunk-EDASNMLY.js";
17
- import "../chunks/chunk-PBENCR5L.js";
18
16
  import "../chunks/chunk-WFB5TXRA.js";
19
- import "../chunks/chunk-3ZZSX5HN.js";
20
- import "../chunks/chunk-AB35TJST.js";
21
- import "../chunks/chunk-ES2N6V56.js";
17
+ import "../chunks/chunk-XZ2BLAA6.js";
18
+ import "../chunks/chunk-PBENCR5L.js";
22
19
  import "../chunks/chunk-IGJCTPFB.js";
20
+ import "../chunks/chunk-ES2N6V56.js";
23
21
  import "../chunks/chunk-BPLIXMH7.js";
22
+ import "../chunks/chunk-3ZZSX5HN.js";
23
+ import "../chunks/chunk-AB35TJST.js";
24
24
  import "../chunks/chunk-TAMCZHLW.js";
25
25
  import "../chunks/chunk-N6FECAXP.js";
26
26
  import "../chunks/chunk-2CVHXFK7.js";
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  bundleRoutes
3
- } from "../chunks/chunk-WVBYR6Y7.js";
4
- import "../chunks/chunk-HOZI3FBG.js";
3
+ } from "../chunks/chunk-LZWSZRUY.js";
4
+ import "../chunks/chunk-CXKZYLYS.js";
5
5
  import "../chunks/chunk-CWFNEKST.js";
6
6
  import "../chunks/chunk-C44YRP5F.js";
7
- import "../chunks/chunk-EDASNMLY.js";
8
- import "../chunks/chunk-3ZZSX5HN.js";
9
- import "../chunks/chunk-AB35TJST.js";
7
+ import "../chunks/chunk-XZ2BLAA6.js";
10
8
  import "../chunks/chunk-IGJCTPFB.js";
11
9
  import "../chunks/chunk-BPLIXMH7.js";
10
+ import "../chunks/chunk-3ZZSX5HN.js";
11
+ import "../chunks/chunk-AB35TJST.js";
12
12
  import "../chunks/chunk-TAMCZHLW.js";
13
13
  import "../chunks/chunk-N6FECAXP.js";
14
14
  import "../chunks/chunk-2CVHXFK7.js";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  pathSteps
3
- } from "../chunks/chunk-HOZI3FBG.js";
3
+ } from "../chunks/chunk-CXKZYLYS.js";
4
4
  import "../chunks/chunk-CWFNEKST.js";
5
5
  import "../chunks/chunk-C44YRP5F.js";
6
- import "../chunks/chunk-EDASNMLY.js";
7
- import "../chunks/chunk-3ZZSX5HN.js";
8
- import "../chunks/chunk-AB35TJST.js";
6
+ import "../chunks/chunk-XZ2BLAA6.js";
9
7
  import {
10
8
  pathOrigin
11
9
  } from "../chunks/chunk-IGJCTPFB.js";
12
10
  import "../chunks/chunk-BPLIXMH7.js";
11
+ import "../chunks/chunk-3ZZSX5HN.js";
12
+ import "../chunks/chunk-AB35TJST.js";
13
13
  import "../chunks/chunk-TAMCZHLW.js";
14
14
  import "../chunks/chunk-N6FECAXP.js";
15
15
  import "../chunks/chunk-2CVHXFK7.js";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  tubeMapNodeColors
3
- } from "../chunks/chunk-KJEMKHVB.js";
4
- import "../chunks/chunk-F4BKWWLS.js";
3
+ } from "../chunks/chunk-TFAFIRZB.js";
4
+ import "../chunks/chunk-4IYP43W6.js";
5
5
  import "../chunks/chunk-G2FD7S3C.js";
6
- import "../chunks/chunk-EDASNMLY.js";
7
- import "../chunks/chunk-PBENCR5L.js";
8
6
  import "../chunks/chunk-WFB5TXRA.js";
9
- import "../chunks/chunk-3ZZSX5HN.js";
10
- import "../chunks/chunk-AB35TJST.js";
11
- import "../chunks/chunk-ES2N6V56.js";
7
+ import "../chunks/chunk-XZ2BLAA6.js";
8
+ import "../chunks/chunk-PBENCR5L.js";
12
9
  import "../chunks/chunk-IGJCTPFB.js";
10
+ import "../chunks/chunk-ES2N6V56.js";
13
11
  import "../chunks/chunk-BPLIXMH7.js";
12
+ import "../chunks/chunk-3ZZSX5HN.js";
13
+ import "../chunks/chunk-AB35TJST.js";
14
14
  import "../chunks/chunk-TAMCZHLW.js";
15
15
  import "../chunks/chunk-N6FECAXP.js";
16
16
  import "../chunks/chunk-2CVHXFK7.js";
@@ -0,0 +1,146 @@
1
+ import type { BubbleSpread } from './bubbleSpreads.js';
2
+ import type { ColorScheme } from './colorSchemes.js';
3
+ import type { FacetInput } from './facetGrid.js';
4
+ import type { LayoutEngineKind } from './layoutEngines.js';
5
+ import type { LayoutModeValue } from './layoutModes.js';
6
+ import type { NodeWidth } from './nodeWidths.js';
7
+ import type { Graph, LayoutResult } from './types.js';
8
+ import type { WalkLayer } from './walkEncoding.js';
9
+ export interface FigureDataOptions {
10
+ width?: number;
11
+ height?: number;
12
+ walks?: WalkLayer[];
13
+ facet?: FacetInput;
14
+ colorScheme?: ColorScheme;
15
+ nodeWidth?: NodeWidth;
16
+ showDeletionEdges?: boolean;
17
+ linearLayout?: boolean;
18
+ contigThickness?: number;
19
+ connectorThickness?: number;
20
+ region?: {
21
+ refName: string;
22
+ start: number;
23
+ end: number;
24
+ };
25
+ referenceName?: string;
26
+ colorDomain?: {
27
+ start: number;
28
+ end: number;
29
+ };
30
+ fitToDrawing?: boolean;
31
+ }
32
+ type Columns<T> = {
33
+ [K in keyof T]: T[K][];
34
+ };
35
+ interface NodeRow {
36
+ panel: string;
37
+ node: string;
38
+ stroke: number;
39
+ x: number;
40
+ y: number;
41
+ color: string;
42
+ alpha: number;
43
+ width: number;
44
+ }
45
+ interface EdgeRow {
46
+ panel: string;
47
+ edge: number;
48
+ curve: number;
49
+ x0: number;
50
+ y0: number;
51
+ cx0: number;
52
+ cy0: number;
53
+ cx1: number;
54
+ cy1: number;
55
+ x1: number;
56
+ y1: number;
57
+ color: string;
58
+ alpha: number;
59
+ width: number;
60
+ deletion: boolean;
61
+ }
62
+ interface ArrowRow {
63
+ panel: string;
64
+ edge: number;
65
+ x: number;
66
+ y: number;
67
+ angle: number;
68
+ length: number;
69
+ halfWidth: number;
70
+ color: string;
71
+ alpha: number;
72
+ }
73
+ export declare function figureData(graph: Graph, layout: LayoutResult, o?: FigureDataOptions): {
74
+ meta: {
75
+ generator: string;
76
+ width: number;
77
+ scaleX: number;
78
+ scaleY: number;
79
+ pixelRows: boolean;
80
+ referenceAxis: boolean;
81
+ colorScheme: import("./colorSchemes.js").ResolvedColorScheme;
82
+ referenceName: string | null;
83
+ };
84
+ panels: {
85
+ panel: string[];
86
+ key: string[];
87
+ range: string[];
88
+ };
89
+ nodes: Columns<NodeRow>;
90
+ edges: Columns<EdgeRow>;
91
+ arrows: Columns<ArrowRow>;
92
+ nodeInfo: {
93
+ node: string[];
94
+ name: string[];
95
+ length: number[];
96
+ depth: number[];
97
+ backbone: boolean[];
98
+ };
99
+ rowLabels: {
100
+ label: string[];
101
+ y: number[];
102
+ };
103
+ };
104
+ export interface GfaFigureSpec extends Omit<FigureDataOptions, 'region' | 'walks'> {
105
+ region?: string;
106
+ walks?: (string | WalkLayer)[];
107
+ layout?: LayoutModeValue;
108
+ referencePath?: string;
109
+ quality?: number;
110
+ bubbleSpread?: BubbleSpread;
111
+ engine?: LayoutEngineKind;
112
+ spacing?: number;
113
+ componentSeparation?: number;
114
+ }
115
+ export declare function gfaFigureData(text: string, name: string, spec?: GfaFigureSpec): Promise<{
116
+ meta: {
117
+ generator: string;
118
+ width: number;
119
+ scaleX: number;
120
+ scaleY: number;
121
+ pixelRows: boolean;
122
+ referenceAxis: boolean;
123
+ colorScheme: import("./colorSchemes.js").ResolvedColorScheme;
124
+ referenceName: string | null;
125
+ };
126
+ panels: {
127
+ panel: string[];
128
+ key: string[];
129
+ range: string[];
130
+ };
131
+ nodes: Columns<NodeRow>;
132
+ edges: Columns<EdgeRow>;
133
+ arrows: Columns<ArrowRow>;
134
+ nodeInfo: {
135
+ node: string[];
136
+ name: string[];
137
+ length: number[];
138
+ depth: number[];
139
+ backbone: boolean[];
140
+ };
141
+ rowLabels: {
142
+ label: string[];
143
+ y: number[];
144
+ };
145
+ }>;
146
+ export {};
@@ -50,6 +50,8 @@ export type { DeletionDrawing, DeletionEdge } from './deletionEdges.js';
50
50
  export { facetLifts, walkHighlight, walkLift } from './walkHighlight.js';
51
51
  export { rangeText, walkKey, walkPosition } from './walkKey.js';
52
52
  export { figureSvg } from './figure.js';
53
+ export { figureData, gfaFigureData } from './figureData.js';
54
+ export type { FigureDataOptions, GfaFigureSpec } from './figureData.js';
53
55
  export { genesFromBed, genesFromGff3Lines, genesFromText, mergeOverlappingByName, } from './genes/geneFiles.js';
54
56
  export { HPRC_GBZ, cutGbzRegion, openGbz, parseRegion } from './gbzCut.js';
55
57
  export type { GbzSource } from './gbzCut.js';
@@ -0,0 +1,2 @@
1
+ import type { NodeSegment } from '../types.js';
2
+ export declare function smoothChain(line: NodeSegment[]): NodeSegment[];
@@ -1 +1 @@
1
- export declare const version = "9.9.2";
1
+ export declare const version = "9.10.0";
package/dist/version.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  version
3
- } from "./chunks/chunk-BQ33OOLC.js";
3
+ } from "./chunks/chunk-2VTM3DHG.js";
4
4
  export {
5
5
  version
6
6
  };
package/dist/viewport.js CHANGED
@@ -5,18 +5,19 @@ import {
5
5
  screenToLayout,
6
6
  viewportOf,
7
7
  zoomAbout
8
- } from "./chunks/chunk-ZBLKAWSD.js";
9
- import "./chunks/chunk-FPTI3WAV.js";
10
- import "./chunks/chunk-PUG7LXDF.js";
8
+ } from "./chunks/chunk-PT37VS5B.js";
9
+ import "./chunks/chunk-HRAU4VTB.js";
11
10
  import "./chunks/chunk-IGVV37VI.js";
11
+ import "./chunks/chunk-OPPVSPEF.js";
12
+ import "./chunks/chunk-PUG7LXDF.js";
12
13
  import "./chunks/chunk-J7YKQ5YW.js";
13
14
  import "./chunks/chunk-G45YY72K.js";
14
15
  import "./chunks/chunk-OA7RIMZ2.js";
15
16
  import "./chunks/chunk-QYBZZI5H.js";
16
17
  import "./chunks/chunk-CDLPYR5O.js";
17
18
  import "./chunks/chunk-JVLURPFW.js";
18
- import "./chunks/chunk-ES2N6V56.js";
19
19
  import "./chunks/chunk-IGJCTPFB.js";
20
+ import "./chunks/chunk-ES2N6V56.js";
20
21
  import "./chunks/chunk-BPLIXMH7.js";
21
22
  import "./chunks/chunk-TAMCZHLW.js";
22
23
  import "./chunks/chunk-UVBGRJQX.js";
@@ -9,17 +9,17 @@ import {
9
9
  schemeColor,
10
10
  schemeCss,
11
11
  schemeRgb
12
- } from "./chunks/chunk-F5BYHLIN.js";
13
- import "./chunks/chunk-F4BKWWLS.js";
12
+ } from "./chunks/chunk-KYY5363X.js";
13
+ import "./chunks/chunk-4IYP43W6.js";
14
14
  import "./chunks/chunk-G2FD7S3C.js";
15
- import "./chunks/chunk-EDASNMLY.js";
16
- import "./chunks/chunk-PBENCR5L.js";
17
15
  import "./chunks/chunk-WFB5TXRA.js";
18
- import "./chunks/chunk-3ZZSX5HN.js";
19
- import "./chunks/chunk-AB35TJST.js";
20
- import "./chunks/chunk-ES2N6V56.js";
16
+ import "./chunks/chunk-XZ2BLAA6.js";
17
+ import "./chunks/chunk-PBENCR5L.js";
21
18
  import "./chunks/chunk-IGJCTPFB.js";
19
+ import "./chunks/chunk-ES2N6V56.js";
22
20
  import "./chunks/chunk-BPLIXMH7.js";
21
+ import "./chunks/chunk-3ZZSX5HN.js";
22
+ import "./chunks/chunk-AB35TJST.js";
23
23
  import "./chunks/chunk-TAMCZHLW.js";
24
24
  import "./chunks/chunk-N6FECAXP.js";
25
25
  import "./chunks/chunk-2CVHXFK7.js";
@@ -2,18 +2,18 @@ import {
2
2
  facetLifts,
3
3
  walkHighlight,
4
4
  walkLift
5
- } from "./chunks/chunk-EE37PVQY.js";
6
- import "./chunks/chunk-F5BYHLIN.js";
7
- import "./chunks/chunk-F4BKWWLS.js";
5
+ } from "./chunks/chunk-MVMP6AGI.js";
6
+ import "./chunks/chunk-KYY5363X.js";
7
+ import "./chunks/chunk-4IYP43W6.js";
8
8
  import "./chunks/chunk-G2FD7S3C.js";
9
- import "./chunks/chunk-EDASNMLY.js";
10
- import "./chunks/chunk-PBENCR5L.js";
11
9
  import "./chunks/chunk-WFB5TXRA.js";
12
- import "./chunks/chunk-3ZZSX5HN.js";
13
- import "./chunks/chunk-AB35TJST.js";
14
- import "./chunks/chunk-ES2N6V56.js";
10
+ import "./chunks/chunk-XZ2BLAA6.js";
11
+ import "./chunks/chunk-PBENCR5L.js";
15
12
  import "./chunks/chunk-IGJCTPFB.js";
13
+ import "./chunks/chunk-ES2N6V56.js";
16
14
  import "./chunks/chunk-BPLIXMH7.js";
15
+ import "./chunks/chunk-3ZZSX5HN.js";
16
+ import "./chunks/chunk-AB35TJST.js";
17
17
  import "./chunks/chunk-TAMCZHLW.js";
18
18
  import "./chunks/chunk-N6FECAXP.js";
19
19
  import "./chunks/chunk-2CVHXFK7.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/bandage-core",
3
- "version": "9.9.2",
3
+ "version": "9.10.0",
4
4
  "description": "Pangenome graph layout and drawing with no host: GFA in, the Bandage force-directed engine and reference-anchored layouts, a Canvas2D renderer, hit testing and labels out",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "repository": {
@@ -1,3 +1,8 @@
1
+ import {
2
+ bubblesFromGraph,
3
+ walkIndexOf,
4
+ walkRoutes
5
+ } from "./chunk-CLOP7UVD.js";
1
6
  import {
2
7
  bubbleSubgraph
3
8
  } from "./chunk-A6PSWTLX.js";
@@ -7,11 +12,6 @@ import {
7
12
  import {
8
13
  bubbleSegmentIds
9
14
  } from "./chunk-XKWD2RY3.js";
10
- import {
11
- bubblesFromGraph,
12
- walkIndexOf,
13
- walkRoutes
14
- } from "./chunk-CLOP7UVD.js";
15
15
  import {
16
16
  SATURATED_PATH_COUNT
17
17
  } from "./chunk-FX4RDMDN.js";
@@ -1,12 +1,12 @@
1
- import {
2
- groupDigits
3
- } from "./chunk-3ZZSX5HN.js";
4
1
  import {
5
2
  pathOrigin
6
3
  } from "./chunk-IGJCTPFB.js";
7
4
  import {
8
5
  isGenericSample
9
6
  } from "./chunk-BPLIXMH7.js";
7
+ import {
8
+ groupDigits
9
+ } from "./chunk-3ZZSX5HN.js";
10
10
 
11
11
  // src/pathColors.ts
12
12
  function nameHue(name) {