@jbrowse/plugin-linear-genome-view 1.7.9 → 2.0.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 (272) hide show
  1. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +1 -5
  2. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +118 -226
  3. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js.map +1 -0
  4. package/dist/BaseLinearDisplay/components/Block.js +53 -74
  5. package/dist/BaseLinearDisplay/components/Block.js.map +1 -0
  6. package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +11 -1
  7. package/dist/BaseLinearDisplay/components/LinearBlocks.js +64 -103
  8. package/dist/BaseLinearDisplay/components/LinearBlocks.js.map +1 -0
  9. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +145 -175
  10. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js.map +1 -0
  11. package/dist/BaseLinearDisplay/components/Tooltip.d.ts +8 -0
  12. package/dist/BaseLinearDisplay/components/Tooltip.js +118 -0
  13. package/dist/BaseLinearDisplay/components/Tooltip.js.map +1 -0
  14. package/dist/BaseLinearDisplay/index.js +13 -40
  15. package/dist/BaseLinearDisplay/index.js.map +1 -0
  16. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +20 -15
  17. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +605 -683
  18. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +1 -0
  19. package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js +15 -22
  20. package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js.map +1 -0
  21. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +7 -8
  22. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +266 -312
  23. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +1 -0
  24. package/dist/LinearBareDisplay/configSchema.js +11 -17
  25. package/dist/LinearBareDisplay/configSchema.js.map +1 -0
  26. package/dist/LinearBareDisplay/index.js +7 -20
  27. package/dist/LinearBareDisplay/index.js.map +1 -0
  28. package/dist/LinearBareDisplay/model.d.ts +16 -14
  29. package/dist/LinearBareDisplay/model.js +36 -42
  30. package/dist/LinearBareDisplay/model.js.map +1 -0
  31. package/dist/LinearBasicDisplay/components/SetMaxHeight.d.ts +1 -1
  32. package/dist/LinearBasicDisplay/components/SetMaxHeight.js +76 -85
  33. package/dist/LinearBasicDisplay/components/SetMaxHeight.js.map +1 -0
  34. package/dist/LinearBasicDisplay/configSchema.js +15 -23
  35. package/dist/LinearBasicDisplay/configSchema.js.map +1 -0
  36. package/dist/LinearBasicDisplay/index.js +10 -22
  37. package/dist/LinearBasicDisplay/index.js.map +1 -0
  38. package/dist/LinearBasicDisplay/model.d.ts +20 -15
  39. package/dist/LinearBasicDisplay/model.js +180 -159
  40. package/dist/LinearBasicDisplay/model.js.map +1 -0
  41. package/dist/LinearGenomeView/components/CenterLine.d.ts +2 -8
  42. package/dist/LinearGenomeView/components/CenterLine.js +60 -74
  43. package/dist/LinearGenomeView/components/CenterLine.js.map +1 -0
  44. package/dist/LinearGenomeView/components/ExportSvgDialog.js +141 -141
  45. package/dist/LinearGenomeView/components/ExportSvgDialog.js.map +1 -0
  46. package/dist/LinearGenomeView/components/Header.js +70 -123
  47. package/dist/LinearGenomeView/components/Header.js.map +1 -0
  48. package/dist/LinearGenomeView/components/HelpDialog.d.ts +0 -1
  49. package/dist/LinearGenomeView/components/HelpDialog.js +62 -45
  50. package/dist/LinearGenomeView/components/HelpDialog.js.map +1 -0
  51. package/dist/LinearGenomeView/components/ImportForm.js +223 -320
  52. package/dist/LinearGenomeView/components/ImportForm.js.map +1 -0
  53. package/dist/LinearGenomeView/components/LinearGenomeView.js +64 -120
  54. package/dist/LinearGenomeView/components/LinearGenomeView.js.map +1 -0
  55. package/dist/LinearGenomeView/components/LinearGenomeViewSvg.js +198 -337
  56. package/dist/LinearGenomeView/components/LinearGenomeViewSvg.js.map +1 -0
  57. package/dist/LinearGenomeView/components/MiniControls.js +64 -78
  58. package/dist/LinearGenomeView/components/MiniControls.js.map +1 -0
  59. package/dist/LinearGenomeView/components/OverviewRubberBand.js +226 -293
  60. package/dist/LinearGenomeView/components/OverviewRubberBand.js.map +1 -0
  61. package/dist/LinearGenomeView/components/OverviewScaleBar.d.ts +24 -8
  62. package/dist/LinearGenomeView/components/OverviewScaleBar.js +277 -365
  63. package/dist/LinearGenomeView/components/OverviewScaleBar.js.map +1 -0
  64. package/dist/LinearGenomeView/components/RefNameAutocomplete.d.ts +1 -1
  65. package/dist/LinearGenomeView/components/RefNameAutocomplete.js +237 -324
  66. package/dist/LinearGenomeView/components/RefNameAutocomplete.js.map +1 -0
  67. package/dist/LinearGenomeView/components/RubberBand.js +229 -296
  68. package/dist/LinearGenomeView/components/RubberBand.js.map +1 -0
  69. package/dist/LinearGenomeView/components/Ruler.js +45 -90
  70. package/dist/LinearGenomeView/components/Ruler.js.map +1 -0
  71. package/dist/LinearGenomeView/components/ScaleBar.d.ts +8 -399
  72. package/dist/LinearGenomeView/components/ScaleBar.js +121 -167
  73. package/dist/LinearGenomeView/components/ScaleBar.js.map +1 -0
  74. package/dist/LinearGenomeView/components/SearchBox.js +158 -205
  75. package/dist/LinearGenomeView/components/SearchBox.js.map +1 -0
  76. package/dist/LinearGenomeView/components/SearchResultsDialog.d.ts +0 -1
  77. package/dist/LinearGenomeView/components/SearchResultsDialog.js +105 -150
  78. package/dist/LinearGenomeView/components/SearchResultsDialog.js.map +1 -0
  79. package/dist/LinearGenomeView/components/SequenceDialog.js +219 -272
  80. package/dist/LinearGenomeView/components/SequenceDialog.js.map +1 -0
  81. package/dist/LinearGenomeView/components/TrackContainer.js +116 -156
  82. package/dist/LinearGenomeView/components/TrackContainer.js.map +1 -0
  83. package/dist/LinearGenomeView/components/TrackLabel.d.ts +6 -42
  84. package/dist/LinearGenomeView/components/TrackLabel.js +115 -150
  85. package/dist/LinearGenomeView/components/TrackLabel.js.map +1 -0
  86. package/dist/LinearGenomeView/components/TracksContainer.d.ts +1 -1
  87. package/dist/LinearGenomeView/components/TracksContainer.js +172 -199
  88. package/dist/LinearGenomeView/components/TracksContainer.js.map +1 -0
  89. package/dist/LinearGenomeView/components/VerticalGuides.d.ts +2 -3
  90. package/dist/LinearGenomeView/components/VerticalGuides.js +66 -104
  91. package/dist/LinearGenomeView/components/VerticalGuides.js.map +1 -0
  92. package/dist/LinearGenomeView/components/ZoomControls.js +72 -87
  93. package/dist/LinearGenomeView/components/ZoomControls.js.map +1 -0
  94. package/dist/LinearGenomeView/components/util.d.ts +12 -0
  95. package/dist/LinearGenomeView/components/util.js +95 -13
  96. package/dist/LinearGenomeView/components/util.js.map +1 -0
  97. package/dist/LinearGenomeView/index.d.ts +6 -11
  98. package/dist/LinearGenomeView/index.js +1163 -1387
  99. package/dist/LinearGenomeView/index.js.map +1 -0
  100. package/dist/LinearGenomeView/util.js +76 -83
  101. package/dist/LinearGenomeView/util.js.map +1 -0
  102. package/dist/index.d.ts +101 -51
  103. package/dist/index.js +225 -284
  104. package/dist/index.js.map +1 -0
  105. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +9 -0
  106. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +68 -0
  107. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js.map +1 -0
  108. package/esm/BaseLinearDisplay/components/Block.d.ts +15 -0
  109. package/esm/BaseLinearDisplay/components/Block.js +46 -0
  110. package/esm/BaseLinearDisplay/components/Block.js.map +1 -0
  111. package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +22 -0
  112. package/esm/BaseLinearDisplay/components/LinearBlocks.js +62 -0
  113. package/esm/BaseLinearDisplay/components/LinearBlocks.js.map +1 -0
  114. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +4 -0
  115. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +113 -0
  116. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js.map +1 -0
  117. package/esm/BaseLinearDisplay/components/Tooltip.d.ts +8 -0
  118. package/esm/BaseLinearDisplay/components/Tooltip.js +64 -0
  119. package/esm/BaseLinearDisplay/components/Tooltip.js.map +1 -0
  120. package/esm/BaseLinearDisplay/index.d.ts +5 -0
  121. package/esm/BaseLinearDisplay/index.js +4 -0
  122. package/esm/BaseLinearDisplay/index.js.map +1 -0
  123. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +232 -0
  124. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +541 -0
  125. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +1 -0
  126. package/esm/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.d.ts +1 -0
  127. package/esm/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js +14 -0
  128. package/esm/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js.map +1 -0
  129. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +96 -0
  130. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +225 -0
  131. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +1 -0
  132. package/esm/LinearBareDisplay/configSchema.d.ts +2 -0
  133. package/esm/LinearBareDisplay/configSchema.js +9 -0
  134. package/esm/LinearBareDisplay/configSchema.js.map +1 -0
  135. package/esm/LinearBareDisplay/index.d.ts +2 -0
  136. package/esm/LinearBareDisplay/index.js +3 -0
  137. package/esm/LinearBareDisplay/index.js.map +1 -0
  138. package/esm/LinearBareDisplay/model.d.ts +194 -0
  139. package/esm/LinearBareDisplay/model.js +28 -0
  140. package/esm/LinearBareDisplay/model.js.map +1 -0
  141. package/esm/LinearBasicDisplay/components/SetMaxHeight.d.ts +10 -0
  142. package/esm/LinearBasicDisplay/components/SetMaxHeight.js +40 -0
  143. package/esm/LinearBasicDisplay/components/SetMaxHeight.js.map +1 -0
  144. package/esm/LinearBasicDisplay/configSchema.d.ts +2 -0
  145. package/esm/LinearBasicDisplay/configSchema.js +14 -0
  146. package/esm/LinearBasicDisplay/configSchema.js.map +1 -0
  147. package/esm/LinearBasicDisplay/index.d.ts +2 -0
  148. package/esm/LinearBasicDisplay/index.js +3 -0
  149. package/esm/LinearBasicDisplay/index.js.map +1 -0
  150. package/esm/LinearBasicDisplay/model.d.ts +218 -0
  151. package/esm/LinearBasicDisplay/model.js +127 -0
  152. package/esm/LinearBasicDisplay/model.js.map +1 -0
  153. package/esm/LinearGenomeView/components/CenterLine.d.ts +8 -0
  154. package/esm/LinearGenomeView/components/CenterLine.js +40 -0
  155. package/esm/LinearGenomeView/components/CenterLine.js.map +1 -0
  156. package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +6 -0
  157. package/esm/LinearGenomeView/components/ExportSvgDialog.js +52 -0
  158. package/esm/LinearGenomeView/components/ExportSvgDialog.js.map +1 -0
  159. package/esm/LinearGenomeView/components/Header.d.ts +7 -0
  160. package/esm/LinearGenomeView/components/Header.js +81 -0
  161. package/esm/LinearGenomeView/components/Header.js.map +1 -0
  162. package/esm/LinearGenomeView/components/HelpDialog.d.ts +4 -0
  163. package/esm/LinearGenomeView/components/HelpDialog.js +58 -0
  164. package/esm/LinearGenomeView/components/HelpDialog.js.map +1 -0
  165. package/esm/LinearGenomeView/components/ImportForm.d.ts +7 -0
  166. package/esm/LinearGenomeView/components/ImportForm.js +141 -0
  167. package/esm/LinearGenomeView/components/ImportForm.js.map +1 -0
  168. package/esm/LinearGenomeView/components/LinearGenomeView.d.ts +7 -0
  169. package/esm/LinearGenomeView/components/LinearGenomeView.js +67 -0
  170. package/esm/LinearGenomeView/components/LinearGenomeView.js.map +1 -0
  171. package/esm/LinearGenomeView/components/LinearGenomeViewSvg.d.ts +4 -0
  172. package/esm/LinearGenomeView/components/LinearGenomeViewSvg.js +132 -0
  173. package/esm/LinearGenomeView/components/LinearGenomeViewSvg.js.map +1 -0
  174. package/esm/LinearGenomeView/components/MiniControls.d.ts +6 -0
  175. package/esm/LinearGenomeView/components/MiniControls.js +25 -0
  176. package/esm/LinearGenomeView/components/MiniControls.js.map +1 -0
  177. package/esm/LinearGenomeView/components/OverviewRubberBand.d.ts +22 -0
  178. package/esm/LinearGenomeView/components/OverviewRubberBand.js +194 -0
  179. package/esm/LinearGenomeView/components/OverviewRubberBand.js.map +1 -0
  180. package/esm/LinearGenomeView/components/OverviewScaleBar.d.ts +148 -0
  181. package/esm/LinearGenomeView/components/OverviewScaleBar.js +287 -0
  182. package/esm/LinearGenomeView/components/OverviewScaleBar.js.map +1 -0
  183. package/esm/LinearGenomeView/components/RefNameAutocomplete.d.ts +22 -0
  184. package/esm/LinearGenomeView/components/RefNameAutocomplete.js +136 -0
  185. package/esm/LinearGenomeView/components/RefNameAutocomplete.js.map +1 -0
  186. package/esm/LinearGenomeView/components/RubberBand.d.ts +9 -0
  187. package/esm/LinearGenomeView/components/RubberBand.js +198 -0
  188. package/esm/LinearGenomeView/components/RubberBand.js.map +1 -0
  189. package/esm/LinearGenomeView/components/Ruler.d.ts +27 -0
  190. package/esm/LinearGenomeView/components/Ruler.js +50 -0
  191. package/esm/LinearGenomeView/components/Ruler.js.map +1 -0
  192. package/esm/LinearGenomeView/components/ScaleBar.d.ts +10 -0
  193. package/esm/LinearGenomeView/components/ScaleBar.js +112 -0
  194. package/esm/LinearGenomeView/components/ScaleBar.js.map +1 -0
  195. package/esm/LinearGenomeView/components/SearchBox.d.ts +8 -0
  196. package/esm/LinearGenomeView/components/SearchBox.js +94 -0
  197. package/esm/LinearGenomeView/components/SearchBox.js.map +1 -0
  198. package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +7 -0
  199. package/esm/LinearGenomeView/components/SearchResultsDialog.js +107 -0
  200. package/esm/LinearGenomeView/components/SearchResultsDialog.js.map +1 -0
  201. package/esm/LinearGenomeView/components/SequenceDialog.d.ts +8 -0
  202. package/esm/LinearGenomeView/components/SequenceDialog.js +147 -0
  203. package/esm/LinearGenomeView/components/SequenceDialog.js.map +1 -0
  204. package/esm/LinearGenomeView/components/TrackContainer.d.ts +9 -0
  205. package/esm/LinearGenomeView/components/TrackContainer.js +109 -0
  206. package/esm/LinearGenomeView/components/TrackContainer.js.map +1 -0
  207. package/esm/LinearGenomeView/components/TrackLabel.d.ts +8 -0
  208. package/esm/LinearGenomeView/components/TrackLabel.js +89 -0
  209. package/esm/LinearGenomeView/components/TrackLabel.js.map +1 -0
  210. package/esm/LinearGenomeView/components/TracksContainer.d.ts +10 -0
  211. package/esm/LinearGenomeView/components/TracksContainer.js +142 -0
  212. package/esm/LinearGenomeView/components/TracksContainer.js.map +1 -0
  213. package/esm/LinearGenomeView/components/VerticalGuides.d.ts +8 -0
  214. package/esm/LinearGenomeView/components/VerticalGuides.js +71 -0
  215. package/esm/LinearGenomeView/components/VerticalGuides.js.map +1 -0
  216. package/esm/LinearGenomeView/components/ZoomControls.d.ts +7 -0
  217. package/esm/LinearGenomeView/components/ZoomControls.js +32 -0
  218. package/esm/LinearGenomeView/components/ZoomControls.js.map +1 -0
  219. package/esm/LinearGenomeView/components/util.d.ts +14 -0
  220. package/esm/LinearGenomeView/components/util.js +17 -0
  221. package/esm/LinearGenomeView/components/util.js.map +1 -0
  222. package/esm/LinearGenomeView/index.d.ts +288 -0
  223. package/esm/LinearGenomeView/index.js +1124 -0
  224. package/esm/LinearGenomeView/index.js.map +1 -0
  225. package/esm/LinearGenomeView/util.d.ts +14 -0
  226. package/esm/LinearGenomeView/util.js +62 -0
  227. package/esm/LinearGenomeView/util.js.map +1 -0
  228. package/esm/index.d.ts +615 -0
  229. package/esm/index.js +127 -0
  230. package/esm/index.js.map +1 -0
  231. package/package.json +21 -13
  232. package/src/BaseLinearDisplay/components/BaseLinearDisplay.tsx +6 -90
  233. package/src/BaseLinearDisplay/components/Block.tsx +5 -5
  234. package/src/BaseLinearDisplay/components/LinearBlocks.tsx +4 -4
  235. package/src/BaseLinearDisplay/components/ServerSideRenderedBlockContent.tsx +7 -8
  236. package/src/BaseLinearDisplay/components/Tooltip.tsx +107 -0
  237. package/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx +16 -8
  238. package/src/BaseLinearDisplay/models/serverSideRenderedBlock.ts +1 -1
  239. package/src/LinearBasicDisplay/components/SetMaxHeight.tsx +10 -7
  240. package/src/LinearBasicDisplay/model.ts +21 -15
  241. package/src/LinearGenomeView/components/CenterLine.tsx +6 -11
  242. package/src/LinearGenomeView/components/ExportSvgDialog.tsx +5 -5
  243. package/src/LinearGenomeView/components/Header.tsx +12 -16
  244. package/src/LinearGenomeView/components/HelpDialog.tsx +10 -9
  245. package/src/LinearGenomeView/components/ImportForm.tsx +24 -37
  246. package/src/LinearGenomeView/components/LinearGenomeView.test.js +18 -8
  247. package/src/LinearGenomeView/components/LinearGenomeView.tsx +20 -13
  248. package/src/LinearGenomeView/components/MiniControls.tsx +29 -40
  249. package/src/LinearGenomeView/components/OverviewRubberBand.tsx +6 -10
  250. package/src/LinearGenomeView/components/OverviewScaleBar.tsx +103 -93
  251. package/src/LinearGenomeView/components/RefNameAutocomplete.tsx +13 -44
  252. package/src/LinearGenomeView/components/RubberBand.tsx +12 -17
  253. package/src/LinearGenomeView/components/Ruler.tsx +5 -11
  254. package/src/LinearGenomeView/components/ScaleBar.tsx +27 -34
  255. package/src/LinearGenomeView/components/SearchBox.tsx +22 -32
  256. package/src/LinearGenomeView/components/SearchResultsDialog.tsx +7 -7
  257. package/src/LinearGenomeView/components/SequenceDialog.tsx +9 -9
  258. package/src/LinearGenomeView/components/TrackContainer.tsx +12 -12
  259. package/src/LinearGenomeView/components/TrackLabel.tsx +37 -50
  260. package/src/LinearGenomeView/components/TracksContainer.tsx +8 -13
  261. package/src/LinearGenomeView/components/VerticalGuides.tsx +9 -11
  262. package/src/LinearGenomeView/components/ZoomControls.tsx +12 -13
  263. package/src/LinearGenomeView/components/__snapshots__/LinearGenomeView.test.js.snap +504 -568
  264. package/src/LinearGenomeView/components/util.ts +43 -0
  265. package/src/LinearGenomeView/index.test.ts +21 -5
  266. package/src/LinearGenomeView/index.tsx +101 -88
  267. package/src/index.ts +36 -31
  268. package/dist/LinearBareDisplay/index.test.js +0 -33
  269. package/dist/LinearGenomeView/components/LinearGenomeView.test.js +0 -234
  270. package/dist/LinearGenomeView/components/ScaleBar.test.js +0 -180
  271. package/dist/LinearGenomeView/index.test.js +0 -1170
  272. package/dist/LinearGenomeView/util.test.js +0 -78
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/LinearGenomeView/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Given a scale ( bp/px ) and minimum distances (px) between major and minor
3
+ * gridlines, return an object like `{ majorPitch: bp, minorPitch: bp }` giving
4
+ * the gridline pitches to use.
5
+ */
6
+ export declare function chooseGridPitch(scale: number, minMajorPitchPx: number, minMinorPitchPx: number): {
7
+ majorPitch: number;
8
+ minorPitch: number;
9
+ };
10
+ export declare function makeTicks(start: number, end: number, bpPerPx: number, emitMajor?: boolean, emitMinor?: boolean): {
11
+ type: string;
12
+ base: number;
13
+ index: number;
14
+ }[];
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Given a scale ( bp/px ) and minimum distances (px) between major and minor
3
+ * gridlines, return an object like `{ majorPitch: bp, minorPitch: bp }` giving
4
+ * the gridline pitches to use.
5
+ */
6
+ export function chooseGridPitch(scale, minMajorPitchPx, minMinorPitchPx) {
7
+ scale = Math.abs(scale);
8
+ const minMajorPitchBp = minMajorPitchPx * scale;
9
+ const majorMagnitude = parseInt(Number(minMajorPitchBp).toExponential().split(/e/i)[1], 10);
10
+ let majorPitch = 10 ** majorMagnitude;
11
+ while (majorPitch < minMajorPitchBp) {
12
+ majorPitch *= 2;
13
+ if (majorPitch >= minMajorPitchBp) {
14
+ break;
15
+ }
16
+ majorPitch *= 2.5;
17
+ }
18
+ majorPitch = Math.max(majorPitch, 5);
19
+ const majorPitchPx = majorPitch / scale;
20
+ let minorPitch = 0;
21
+ if (!(majorPitch % 10) && majorPitchPx / 10 >= minMinorPitchPx) {
22
+ minorPitch = majorPitch / 10;
23
+ }
24
+ else if (!(majorPitch % 5) && majorPitchPx / 5 >= minMinorPitchPx) {
25
+ minorPitch = majorPitch / 5;
26
+ }
27
+ else if (!(majorPitch % 2) && majorPitchPx / 2 >= minMinorPitchPx) {
28
+ minorPitch = majorPitch / 2;
29
+ }
30
+ return { majorPitch, minorPitch };
31
+ }
32
+ export function makeTicks(start, end, bpPerPx, emitMajor = true, emitMinor = true) {
33
+ const gridPitch = chooseGridPitch(bpPerPx, 60, 15);
34
+ let minBase = start;
35
+ let maxBase = end;
36
+ if (minBase === null || maxBase === null) {
37
+ return [];
38
+ }
39
+ if (bpPerPx < 0) {
40
+ ;
41
+ [minBase, maxBase] = [maxBase, minBase];
42
+ }
43
+ // add 20px additional on the right and left to allow us to draw the ends
44
+ // of labels that lie a little outside our region
45
+ minBase -= Math.abs(20 * bpPerPx) - 1;
46
+ maxBase += Math.abs(20 * bpPerPx) + 1;
47
+ const iterPitch = gridPitch.minorPitch || gridPitch.majorPitch;
48
+ let index = 0;
49
+ const ticks = [];
50
+ for (let base = Math.ceil(minBase / iterPitch) * iterPitch; base < maxBase; base += iterPitch) {
51
+ if (emitMinor && base % (gridPitch.majorPitch * 2)) {
52
+ ticks.push({ type: 'minor', base: base - 1, index });
53
+ index += 1;
54
+ }
55
+ else if (emitMajor && !(base % (gridPitch.majorPitch * 2))) {
56
+ ticks.push({ type: 'major', base: base - 1, index });
57
+ index += 1;
58
+ }
59
+ }
60
+ return ticks;
61
+ }
62
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/LinearGenomeView/util.ts"],"names":[],"mappings":"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"}