@jbrowse/plugin-sequence 2.1.0 → 2.1.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 (137) hide show
  1. package/dist/BgzipFastaAdapter/BgzipFastaAdapter.js +16 -34
  2. package/dist/BgzipFastaAdapter/BgzipFastaAdapter.js.map +1 -1
  3. package/dist/BgzipFastaAdapter/configSchema.js +1 -1
  4. package/dist/BgzipFastaAdapter/configSchema.js.map +1 -1
  5. package/dist/BgzipFastaAdapter/index.d.ts +3 -1
  6. package/dist/BgzipFastaAdapter/index.js +38 -3
  7. package/dist/BgzipFastaAdapter/index.js.map +1 -1
  8. package/dist/ChromSizesAdapter/ChromSizesAdapter.js +34 -130
  9. package/dist/ChromSizesAdapter/ChromSizesAdapter.js.map +1 -1
  10. package/dist/ChromSizesAdapter/configSchema.js +1 -1
  11. package/dist/ChromSizesAdapter/configSchema.js.map +1 -1
  12. package/dist/ChromSizesAdapter/index.d.ts +3 -1
  13. package/dist/ChromSizesAdapter/index.js +38 -3
  14. package/dist/ChromSizesAdapter/index.js.map +1 -1
  15. package/dist/DivSequenceRenderer/components/DivSequenceRendering.js +51 -89
  16. package/dist/DivSequenceRenderer/components/DivSequenceRendering.js.map +1 -1
  17. package/dist/DivSequenceRenderer/configSchema.js +1 -1
  18. package/dist/DivSequenceRenderer/configSchema.js.map +1 -1
  19. package/dist/DivSequenceRenderer/index.d.ts +3 -2
  20. package/dist/DivSequenceRenderer/index.js +25 -5
  21. package/dist/DivSequenceRenderer/index.js.map +1 -1
  22. package/dist/GCContentAdapter/GCContentAdapter.d.ts +1 -7
  23. package/dist/GCContentAdapter/GCContentAdapter.js +75 -180
  24. package/dist/GCContentAdapter/GCContentAdapter.js.map +1 -1
  25. package/dist/GCContentAdapter/configSchema.js +3 -3
  26. package/dist/GCContentAdapter/configSchema.js.map +1 -1
  27. package/dist/GCContentAdapter/index.d.ts +1 -4
  28. package/dist/GCContentAdapter/index.js +15 -7
  29. package/dist/GCContentAdapter/index.js.map +1 -1
  30. package/dist/IndexedFastaAdapter/IndexedFastaAdapter.js +77 -171
  31. package/dist/IndexedFastaAdapter/IndexedFastaAdapter.js.map +1 -1
  32. package/dist/IndexedFastaAdapter/configSchema.js +1 -1
  33. package/dist/IndexedFastaAdapter/configSchema.js.map +1 -1
  34. package/dist/IndexedFastaAdapter/index.d.ts +3 -1
  35. package/dist/IndexedFastaAdapter/index.js +38 -3
  36. package/dist/IndexedFastaAdapter/index.js.map +1 -1
  37. package/dist/LinearReferenceSequenceDisplay/configSchema.js +6 -3
  38. package/dist/LinearReferenceSequenceDisplay/configSchema.js.map +1 -1
  39. package/dist/LinearReferenceSequenceDisplay/index.d.ts +3 -2
  40. package/dist/LinearReferenceSequenceDisplay/index.js +16 -5
  41. package/dist/LinearReferenceSequenceDisplay/index.js.map +1 -1
  42. package/dist/LinearReferenceSequenceDisplay/model.d.ts +1 -1
  43. package/dist/LinearReferenceSequenceDisplay/model.js +29 -33
  44. package/dist/LinearReferenceSequenceDisplay/model.js.map +1 -1
  45. package/dist/{referenceSeqTrackConfig.d.ts → ReferenceSequenceTrack/configSchema.d.ts} +0 -0
  46. package/dist/{referenceSeqTrackConfig.js → ReferenceSequenceTrack/configSchema.js} +19 -30
  47. package/dist/ReferenceSequenceTrack/configSchema.js.map +1 -0
  48. package/dist/ReferenceSequenceTrack/index.d.ts +3 -0
  49. package/dist/ReferenceSequenceTrack/index.js +19 -0
  50. package/dist/ReferenceSequenceTrack/index.js.map +1 -0
  51. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.d.ts +8 -0
  52. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.js +84 -0
  53. package/dist/SequenceSearchAdapter/SequenceSearchAdapter.js.map +1 -0
  54. package/dist/SequenceSearchAdapter/configSchema.d.ts +2 -0
  55. package/dist/SequenceSearchAdapter/configSchema.js +28 -0
  56. package/dist/SequenceSearchAdapter/configSchema.js.map +1 -0
  57. package/dist/SequenceSearchAdapter/index.d.ts +3 -0
  58. package/dist/SequenceSearchAdapter/index.js +44 -0
  59. package/dist/SequenceSearchAdapter/index.js.map +1 -0
  60. package/dist/TwoBitAdapter/TwoBitAdapter.js +66 -174
  61. package/dist/TwoBitAdapter/TwoBitAdapter.js.map +1 -1
  62. package/dist/TwoBitAdapter/configSchema.js +1 -1
  63. package/dist/TwoBitAdapter/configSchema.js.map +1 -1
  64. package/dist/TwoBitAdapter/index.d.ts +3 -1
  65. package/dist/TwoBitAdapter/index.js +38 -3
  66. package/dist/TwoBitAdapter/index.js.map +1 -1
  67. package/dist/createExtensionPoints.d.ts +3 -0
  68. package/dist/createExtensionPoints.js +86 -0
  69. package/dist/createExtensionPoints.js.map +1 -0
  70. package/dist/index.js +27 -261
  71. package/dist/index.js.map +1 -1
  72. package/esm/BgzipFastaAdapter/index.d.ts +3 -1
  73. package/esm/BgzipFastaAdapter/index.js +15 -1
  74. package/esm/BgzipFastaAdapter/index.js.map +1 -1
  75. package/esm/ChromSizesAdapter/index.d.ts +3 -1
  76. package/esm/ChromSizesAdapter/index.js +15 -1
  77. package/esm/ChromSizesAdapter/index.js.map +1 -1
  78. package/esm/DivSequenceRenderer/index.d.ts +3 -2
  79. package/esm/DivSequenceRenderer/index.js +25 -2
  80. package/esm/DivSequenceRenderer/index.js.map +1 -1
  81. package/esm/GCContentAdapter/GCContentAdapter.d.ts +1 -7
  82. package/esm/GCContentAdapter/GCContentAdapter.js +7 -18
  83. package/esm/GCContentAdapter/GCContentAdapter.js.map +1 -1
  84. package/esm/GCContentAdapter/index.d.ts +1 -4
  85. package/esm/GCContentAdapter/index.js +11 -3
  86. package/esm/GCContentAdapter/index.js.map +1 -1
  87. package/esm/IndexedFastaAdapter/index.d.ts +3 -1
  88. package/esm/IndexedFastaAdapter/index.js +15 -1
  89. package/esm/IndexedFastaAdapter/index.js.map +1 -1
  90. package/esm/LinearReferenceSequenceDisplay/configSchema.js +1 -1
  91. package/esm/LinearReferenceSequenceDisplay/configSchema.js.map +1 -1
  92. package/esm/LinearReferenceSequenceDisplay/index.d.ts +3 -2
  93. package/esm/LinearReferenceSequenceDisplay/index.js +16 -2
  94. package/esm/LinearReferenceSequenceDisplay/index.js.map +1 -1
  95. package/esm/LinearReferenceSequenceDisplay/model.d.ts +1 -1
  96. package/esm/{referenceSeqTrackConfig.d.ts → ReferenceSequenceTrack/configSchema.d.ts} +0 -0
  97. package/esm/{referenceSeqTrackConfig.js → ReferenceSequenceTrack/configSchema.js} +1 -1
  98. package/esm/ReferenceSequenceTrack/configSchema.js.map +1 -0
  99. package/esm/ReferenceSequenceTrack/index.d.ts +3 -0
  100. package/esm/ReferenceSequenceTrack/index.js +14 -0
  101. package/esm/ReferenceSequenceTrack/index.js.map +1 -0
  102. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.d.ts +8 -0
  103. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.js +81 -0
  104. package/esm/SequenceSearchAdapter/SequenceSearchAdapter.js.map +1 -0
  105. package/esm/SequenceSearchAdapter/configSchema.d.ts +2 -0
  106. package/esm/SequenceSearchAdapter/configSchema.js +26 -0
  107. package/esm/SequenceSearchAdapter/configSchema.js.map +1 -0
  108. package/esm/SequenceSearchAdapter/index.d.ts +3 -0
  109. package/esm/SequenceSearchAdapter/index.js +16 -0
  110. package/esm/SequenceSearchAdapter/index.js.map +1 -0
  111. package/esm/TwoBitAdapter/index.d.ts +3 -1
  112. package/esm/TwoBitAdapter/index.js +15 -1
  113. package/esm/TwoBitAdapter/index.js.map +1 -1
  114. package/esm/createExtensionPoints.d.ts +3 -0
  115. package/esm/createExtensionPoints.js +84 -0
  116. package/esm/createExtensionPoints.js.map +1 -0
  117. package/esm/index.js +19 -186
  118. package/esm/index.js.map +1 -1
  119. package/package.json +2 -3
  120. package/src/BgzipFastaAdapter/index.ts +22 -1
  121. package/src/ChromSizesAdapter/index.ts +22 -1
  122. package/src/DivSequenceRenderer/index.ts +31 -2
  123. package/src/GCContentAdapter/GCContentAdapter.ts +15 -25
  124. package/src/GCContentAdapter/index.ts +17 -4
  125. package/src/IndexedFastaAdapter/index.ts +22 -1
  126. package/src/LinearReferenceSequenceDisplay/configSchema.ts +1 -1
  127. package/src/LinearReferenceSequenceDisplay/index.ts +19 -2
  128. package/src/{referenceSeqTrackConfig.ts → ReferenceSequenceTrack/configSchema.ts} +0 -0
  129. package/src/ReferenceSequenceTrack/index.ts +21 -0
  130. package/src/SequenceSearchAdapter/SequenceSearchAdapter.ts +103 -0
  131. package/src/SequenceSearchAdapter/configSchema.ts +31 -0
  132. package/src/SequenceSearchAdapter/index.ts +22 -0
  133. package/src/TwoBitAdapter/index.ts +21 -1
  134. package/src/createExtensionPoints.ts +122 -0
  135. package/src/index.ts +20 -268
  136. package/dist/referenceSeqTrackConfig.js.map +0 -1
  137. package/esm/referenceSeqTrackConfig.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager'
2
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType'
3
+
4
+ import configSchema from './configSchema'
5
+
6
+ export default (pluginManager: PluginManager) => {
7
+ pluginManager.addAdapterType(
8
+ () =>
9
+ new AdapterType({
10
+ name: 'SequenceSearchAdapter',
11
+ adapterMetadata: {
12
+ category: null,
13
+ hiddenFromGUI: true,
14
+ displayName: null,
15
+ description: null,
16
+ },
17
+ configSchema,
18
+ getAdapterClass: () =>
19
+ import('./SequenceSearchAdapter').then(r => r.default),
20
+ }),
21
+ )
22
+ }
@@ -1 +1,21 @@
1
- export { default as configSchema } from './configSchema'
1
+ import PluginManager from '@jbrowse/core/PluginManager'
2
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType'
3
+
4
+ import configSchema from './configSchema'
5
+
6
+ export default (pluginManager: PluginManager) => {
7
+ pluginManager.addAdapterType(
8
+ () =>
9
+ new AdapterType({
10
+ name: 'TwoBitAdapter',
11
+ configSchema,
12
+ adapterMetadata: {
13
+ category: null,
14
+ hiddenFromGUI: true,
15
+ displayName: null,
16
+ description: null,
17
+ },
18
+ getAdapterClass: () => import('./TwoBitAdapter').then(r => r.default),
19
+ }),
20
+ )
21
+ }
@@ -0,0 +1,122 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager'
2
+ import { FileLocation } from '@jbrowse/core/util/types'
3
+ import {
4
+ makeIndex,
5
+ getFileName,
6
+ AdapterGuesser,
7
+ TrackTypeGuesser,
8
+ } from '@jbrowse/core/util/tracks'
9
+
10
+ export default (pluginManager: PluginManager) => {
11
+ pluginManager.addToExtensionPoint(
12
+ 'Core-guessAdapterForLocation',
13
+ (adapterGuesser: AdapterGuesser) => {
14
+ return (
15
+ file: FileLocation,
16
+ index?: FileLocation,
17
+ adapterHint?: string,
18
+ ) => {
19
+ const regexGuess = /\.2bit$/i
20
+ const adapterName = 'TwoBitAdapter'
21
+ const fileName = getFileName(file)
22
+ const obj = {
23
+ type: adapterName,
24
+ twoBitLocation: file,
25
+ }
26
+ if (regexGuess.test(fileName) && !adapterHint) {
27
+ return obj
28
+ } else if (adapterHint === adapterName) {
29
+ return obj
30
+ }
31
+ return adapterGuesser(file, index, adapterHint)
32
+ }
33
+ },
34
+ )
35
+ pluginManager.addToExtensionPoint(
36
+ 'Core-guessTrackTypeForLocation',
37
+ (trackTypeGuesser: TrackTypeGuesser) => {
38
+ return (adapterName: string) => {
39
+ if (adapterName === 'TwoBitAdapter') {
40
+ return 'ReferenceSequenceTrack'
41
+ }
42
+ return trackTypeGuesser(adapterName)
43
+ }
44
+ },
45
+ )
46
+
47
+ pluginManager.addToExtensionPoint(
48
+ 'Core-guessAdapterForLocation',
49
+ (adapterGuesser: AdapterGuesser) => {
50
+ return (
51
+ file: FileLocation,
52
+ index?: FileLocation,
53
+ adapterHint?: string,
54
+ ) => {
55
+ const regexGuess = /\.(fa|fasta|fas|fna|mfa)$/i
56
+ const adapterName = 'IndexedFastaAdapter'
57
+ const fileName = getFileName(file)
58
+ const obj = {
59
+ type: adapterName,
60
+ fastaLocation: file,
61
+ faiLocation: index || makeIndex(file, '.fai'),
62
+ }
63
+
64
+ if (regexGuess.test(fileName) && !adapterHint) {
65
+ return obj
66
+ } else if (adapterHint === adapterName) {
67
+ return obj
68
+ }
69
+ return adapterGuesser(file, index, adapterHint)
70
+ }
71
+ },
72
+ )
73
+ pluginManager.addToExtensionPoint(
74
+ 'Core-guessTrackTypeForLocation',
75
+ (trackTypeGuesser: TrackTypeGuesser) => {
76
+ return (adapterName: string) => {
77
+ if (adapterName === 'IndexedFastaAdapter') {
78
+ return 'ReferenceSequenceTrack'
79
+ }
80
+ return trackTypeGuesser(adapterName)
81
+ }
82
+ },
83
+ )
84
+
85
+ pluginManager.addToExtensionPoint(
86
+ 'Core-guessAdapterForLocation',
87
+ (adapterGuesser: AdapterGuesser) => {
88
+ return (
89
+ file: FileLocation,
90
+ index?: FileLocation,
91
+ adapterHint?: string,
92
+ ) => {
93
+ const regexGuess = /\.(fa|fasta|fas|fna|mfa)\.b?gz$/i
94
+ const adapterName = 'BgzipFastaAdapter'
95
+ const fileName = getFileName(file)
96
+ const obj = {
97
+ type: adapterName,
98
+ faiLocation: makeIndex(file, '.fai'),
99
+ gziLocation: makeIndex(file, '.gzi'),
100
+ }
101
+
102
+ if (regexGuess.test(fileName) && !adapterHint) {
103
+ return obj
104
+ } else if (adapterHint === adapterName) {
105
+ return obj
106
+ }
107
+ return adapterGuesser(file, index, adapterHint)
108
+ }
109
+ },
110
+ )
111
+ pluginManager.addToExtensionPoint(
112
+ 'Core-guessTrackTypeForLocation',
113
+ (trackTypeGuesser: TrackTypeGuesser) => {
114
+ return (adapterName: string) => {
115
+ if (adapterName === 'BgzipFastaAdapter') {
116
+ return 'ReferenceSequenceTrack'
117
+ }
118
+ return trackTypeGuesser(adapterName)
119
+ }
120
+ },
121
+ )
122
+ }
package/src/index.ts CHANGED
@@ -1,278 +1,30 @@
1
- import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType'
2
- import { Region, FileLocation } from '@jbrowse/core/util/types'
3
- import { createBaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models'
4
- import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType'
5
- import TrackType from '@jbrowse/core/pluggableElementTypes/TrackType'
6
1
  import Plugin from '@jbrowse/core/Plugin'
7
2
  import PluginManager from '@jbrowse/core/PluginManager'
8
- import { BaseLinearDisplayComponent } from '@jbrowse/plugin-linear-genome-view'
9
- import {
10
- makeIndex,
11
- AdapterGuesser,
12
- getFileName,
13
- TrackTypeGuesser,
14
- } from '@jbrowse/core/util/tracks'
15
- import { configSchema as bgzipFastaAdapterConfigSchema } from './BgzipFastaAdapter'
16
- import { configSchema as chromSizesAdapterConfigSchema } from './ChromSizesAdapter'
17
- import {
18
- configSchema as divSequenceRendererConfigSchema,
19
- ReactComponent as DivSequenceRendererReactComponent,
20
- } from './DivSequenceRenderer'
21
- import { configSchema as indexedFastaAdapterConfigSchema } from './IndexedFastaAdapter'
22
- import {
23
- configSchema as linearReferenceSequenceDisplayConfigSchema,
24
- modelFactory as linearReferenceSequenceDisplayModelFactory,
25
- } from './LinearReferenceSequenceDisplay'
26
- import { configSchema as twoBitAdapterConfigSchema } from './TwoBitAdapter'
27
- import GCContentAdapterF from './GCContentAdapter'
28
- import { createReferenceSeqTrackConfig } from './referenceSeqTrackConfig'
29
-
30
- /* adjust in both directions */
31
- class DivSequenceRenderer extends FeatureRendererType {
32
- supportsSVG = true
33
3
 
34
- getExpandedRegion(region: Region) {
35
- return {
36
- ...region,
37
- start: Math.max(region.start - 3, 0),
38
- end: region.end + 3,
39
- }
40
- }
41
- }
4
+ import TwoBitAdapterF from './TwoBitAdapter'
5
+ import DivSequenceRendererF from './DivSequenceRenderer'
6
+ import BgzipFastaAdapterF from './BgzipFastaAdapter'
7
+ import ChromSizesAdapterF from './ChromSizesAdapter'
8
+ import IndexedFastaAdapterF from './IndexedFastaAdapter'
9
+ import GCContentAdapterF from './GCContentAdapter'
10
+ import SequenceSearchAdapterF from './SequenceSearchAdapter'
11
+ import ReferenceSequenceTrackF from './ReferenceSequenceTrack'
12
+ import LinearReferenceSequenceDisplayF from './LinearReferenceSequenceDisplay'
13
+ import createExtensionPoints from './createExtensionPoints'
42
14
 
43
15
  export default class SequencePlugin extends Plugin {
44
16
  name = 'SequencePlugin'
45
17
 
46
18
  install(pluginManager: PluginManager) {
47
- pluginManager.addAdapterType(
48
- () =>
49
- new AdapterType({
50
- name: 'TwoBitAdapter',
51
- configSchema: twoBitAdapterConfigSchema,
52
- adapterMetadata: {
53
- category: null,
54
- hiddenFromGUI: true,
55
- displayName: null,
56
- description: null,
57
- },
58
- getAdapterClass: () =>
59
- import('./TwoBitAdapter/TwoBitAdapter').then(r => r.default),
60
- }),
61
- )
62
- pluginManager.addToExtensionPoint(
63
- 'Core-guessAdapterForLocation',
64
- (adapterGuesser: AdapterGuesser) => {
65
- return (
66
- file: FileLocation,
67
- index?: FileLocation,
68
- adapterHint?: string,
69
- ) => {
70
- const regexGuess = /\.2bit$/i
71
- const adapterName = 'TwoBitAdapter'
72
- const fileName = getFileName(file)
73
- const obj = {
74
- type: adapterName,
75
- twoBitLocation: file,
76
- }
77
- if (regexGuess.test(fileName) && !adapterHint) {
78
- return obj
79
- } else if (adapterHint === adapterName) {
80
- return obj
81
- }
82
- return adapterGuesser(file, index, adapterHint)
83
- }
84
- },
85
- )
86
- pluginManager.addToExtensionPoint(
87
- 'Core-guessTrackTypeForLocation',
88
- (trackTypeGuesser: TrackTypeGuesser) => {
89
- return (adapterName: string) => {
90
- if (adapterName === 'TwoBitAdapter') {
91
- return 'ReferenceSequenceTrack'
92
- }
93
- return trackTypeGuesser(adapterName)
94
- }
95
- },
96
- )
97
-
98
- pluginManager.addAdapterType(
99
- () =>
100
- new AdapterType({
101
- name: 'ChromSizesAdapter',
102
- configSchema: chromSizesAdapterConfigSchema,
103
- adapterMetadata: {
104
- category: null,
105
- hiddenFromGUI: true,
106
- displayName: null,
107
- description: null,
108
- },
109
- getAdapterClass: () =>
110
- import('./ChromSizesAdapter/ChromSizesAdapter').then(
111
- r => r.default,
112
- ),
113
- }),
114
- )
115
-
116
- pluginManager.addAdapterType(
117
- () =>
118
- new AdapterType({
119
- name: 'IndexedFastaAdapter',
120
- configSchema: indexedFastaAdapterConfigSchema,
121
- adapterMetadata: {
122
- category: null,
123
- hiddenFromGUI: true,
124
- displayName: null,
125
- description: null,
126
- },
127
- getAdapterClass: () =>
128
- import('./IndexedFastaAdapter/IndexedFastaAdapter').then(
129
- r => r.default,
130
- ),
131
- }),
132
- )
133
- pluginManager.addToExtensionPoint(
134
- 'Core-guessAdapterForLocation',
135
- (adapterGuesser: AdapterGuesser) => {
136
- return (
137
- file: FileLocation,
138
- index?: FileLocation,
139
- adapterHint?: string,
140
- ) => {
141
- const regexGuess = /\.(fa|fasta|fas|fna|mfa)$/i
142
- const adapterName = 'IndexedFastaAdapter'
143
- const fileName = getFileName(file)
144
- const obj = {
145
- type: adapterName,
146
- fastaLocation: file,
147
- faiLocation: index || makeIndex(file, '.fai'),
148
- }
149
-
150
- if (regexGuess.test(fileName) && !adapterHint) {
151
- return obj
152
- } else if (adapterHint === adapterName) {
153
- return obj
154
- }
155
- return adapterGuesser(file, index, adapterHint)
156
- }
157
- },
158
- )
159
- pluginManager.addToExtensionPoint(
160
- 'Core-guessTrackTypeForLocation',
161
- (trackTypeGuesser: TrackTypeGuesser) => {
162
- return (adapterName: string) => {
163
- if (adapterName === 'IndexedFastaAdapter') {
164
- return 'ReferenceSequenceTrack'
165
- }
166
- return trackTypeGuesser(adapterName)
167
- }
168
- },
169
- )
170
-
171
- pluginManager.addAdapterType(
172
- () =>
173
- new AdapterType({
174
- name: 'BgzipFastaAdapter',
175
- configSchema: bgzipFastaAdapterConfigSchema,
176
- adapterMetadata: {
177
- category: null,
178
- hiddenFromGUI: true,
179
- displayName: null,
180
- description: null,
181
- },
182
- getAdapterClass: () =>
183
- import('./BgzipFastaAdapter/BgzipFastaAdapter').then(
184
- r => r.default,
185
- ),
186
- }),
187
- )
188
-
189
- pluginManager.addToExtensionPoint(
190
- 'Core-guessAdapterForLocation',
191
- (adapterGuesser: AdapterGuesser) => {
192
- return (
193
- file: FileLocation,
194
- index?: FileLocation,
195
- adapterHint?: string,
196
- ) => {
197
- const regexGuess = /\.(fa|fasta|fas|fna|mfa)\.b?gz$/i
198
- const adapterName = 'BgzipFastaAdapter'
199
- const fileName = getFileName(file)
200
- const obj = {
201
- type: adapterName,
202
- faiLocation: makeIndex(file, '.fai'),
203
- gziLocation: makeIndex(file, '.gzi'),
204
- }
205
-
206
- if (regexGuess.test(fileName) && !adapterHint) {
207
- return obj
208
- } else if (adapterHint === adapterName) {
209
- return obj
210
- }
211
- return adapterGuesser(file, index, adapterHint)
212
- }
213
- },
214
- )
215
- pluginManager.addToExtensionPoint(
216
- 'Core-guessTrackTypeForLocation',
217
- (trackTypeGuesser: TrackTypeGuesser) => {
218
- return (adapterName: string) => {
219
- if (adapterName === 'BgzipFastaAdapter') {
220
- return 'ReferenceSequenceTrack'
221
- }
222
- return trackTypeGuesser(adapterName)
223
- }
224
- },
225
- )
226
-
227
- pluginManager.addAdapterType(
228
- () =>
229
- new AdapterType({
230
- name: 'GCContentAdapter',
231
- adapterMetadata: {
232
- category: null,
233
- hiddenFromGUI: true,
234
- displayName: null,
235
- description: null,
236
- },
237
- ...pluginManager.load(GCContentAdapterF),
238
- }),
239
- )
240
- pluginManager.addTrackType(() => {
241
- const configSchema = createReferenceSeqTrackConfig(pluginManager)
242
-
243
- return new TrackType({
244
- name: 'ReferenceSequenceTrack',
245
- configSchema,
246
- stateModel: createBaseTrackModel(
247
- pluginManager,
248
- 'ReferenceSequenceTrack',
249
- configSchema,
250
- ),
251
- })
252
- })
253
-
254
- pluginManager.addDisplayType(() => {
255
- const stateModel = linearReferenceSequenceDisplayModelFactory(
256
- linearReferenceSequenceDisplayConfigSchema,
257
- )
258
- return {
259
- name: 'LinearReferenceSequenceDisplay',
260
- configSchema: linearReferenceSequenceDisplayConfigSchema,
261
- stateModel,
262
- trackType: 'ReferenceSequenceTrack',
263
- viewType: 'LinearGenomeView',
264
- ReactComponent: BaseLinearDisplayComponent,
265
- }
266
- })
267
-
268
- pluginManager.addRendererType(
269
- () =>
270
- new DivSequenceRenderer({
271
- name: 'DivSequenceRenderer',
272
- ReactComponent: DivSequenceRendererReactComponent,
273
- configSchema: divSequenceRendererConfigSchema,
274
- pluginManager,
275
- }),
276
- )
19
+ DivSequenceRendererF(pluginManager)
20
+ TwoBitAdapterF(pluginManager)
21
+ BgzipFastaAdapterF(pluginManager)
22
+ ChromSizesAdapterF(pluginManager)
23
+ IndexedFastaAdapterF(pluginManager)
24
+ GCContentAdapterF(pluginManager)
25
+ SequenceSearchAdapterF(pluginManager)
26
+ ReferenceSequenceTrackF(pluginManager)
27
+ LinearReferenceSequenceDisplayF(pluginManager)
28
+ createExtensionPoints(pluginManager)
277
29
  }
278
30
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"referenceSeqTrackConfig.js","sourceRoot":"","sources":["../src/referenceSeqTrackConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,mDAAuC;AACvC,6DAAiE;AAGjE;;;;EAIE;AACF,SAAgB,6BAA6B,CAAC,aAA4B;IACxE,OAAO,IAAA,mCAAmB,EACxB,wBAAwB,EACxB;QACE,OAAO,EAAE,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC;QAC3D,QAAQ,EAAE,uBAAK,CAAC,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qBAAqB;YAClC,YAAY,EAAE,EAAE;SACjB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kCAAkC;YAC/C,YAAY,EAAE,EAAE;SACjB;KACF,EACD;QACE,kBAAkB,EAAE,UAAA,CAAC;YACnB,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C,IAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YACtB,IAAA,KAAkB,IAAI,SAAT,EAAb,QAAQ,mBAAG,EAAE,KAAA,CAAS;YAC9B,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,EAAE;gBACpC,oEAAoE;gBACpE,oEAAoE;gBACpE,WAAW;gBACX,QAAQ,CAAC,OAAO,CAAC,UAAC,CAAM,IAAK,OAAA,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAA7B,CAA6B,CAAC,CAAA;gBAC3D,IAAM,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACvD,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,UAAA,WAAW;oBACxC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;wBACvC,QAAQ,CAAC,IAAI,CAAC;4BACZ,SAAS,EAAE,UAAG,IAAI,CAAC,OAAO,cAAI,WAAW,CAAC,IAAI,CAAE;4BAChD,IAAI,EAAE,WAAW,CAAC,IAAI;yBACvB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;aACH;YACD,6BAAY,IAAI,KAAE,QAAQ,UAAA,IAAE;QAC9B,CAAC;QACD,kBAAkB,EAAE,SAAS;QAC7B,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,UAAC,IAAS,IAAK,OAAA,CAAC;YACvB,cAAc,EAAd,UAAe,WAAgD;gBACrD,IAAA,IAAI,GAAK,WAAW,KAAhB,CAAgB;gBAC5B,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,+BAAwB,IAAI,CAAE,CAAC,CAAA;iBAChD;gBACD,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChC,UAAC,CAAM,IAAK,OAAA,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS,EAA1C,CAA0C,CACvD,CAAA;gBACD,IAAI,OAAO,EAAE;oBACX,OAAO,OAAO,CAAA;iBACf;gBACD,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YAClC,CAAC;SACF,CAAC,EAfsB,CAetB;KACH,CACF,CAAA;AACH,CAAC;AA3DD,sEA2DC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"referenceSeqTrackConfig.js","sourceRoot":"","sources":["../src/referenceSeqTrackConfig.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAGjE;;;;EAIE;AACF,MAAM,UAAU,6BAA6B,CAAC,aAA4B;IACxE,OAAO,mBAAmB,CACxB,wBAAwB,EACxB;QACE,OAAO,EAAE,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC;QAC3D,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qBAAqB;YAClC,YAAY,EAAE,EAAE;SACjB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kCAAkC;YAC/C,YAAY,EAAE,EAAE;SACjB;KACF,EACD;QACE,kBAAkB,EAAE,CAAC,CAAC,EAAE;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YAC9B,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,IAAI,CAAA;YAC9B,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,EAAE;gBACpC,oEAAoE;gBACpE,oEAAoE;gBACpE,WAAW;gBACX,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC3D,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACvD,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;wBACvC,QAAQ,CAAC,IAAI,CAAC;4BACZ,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE;4BAChD,IAAI,EAAE,WAAW,CAAC,IAAI;yBACvB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;aACH;YACD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAA;QAC9B,CAAC;QACD,kBAAkB,EAAE,SAAS;QAC7B,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;YACvB,cAAc,CAAC,WAAgD;gBAC7D,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;gBAC5B,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAA;iBAChD;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS,CACvD,CAAA;gBACD,IAAI,OAAO,EAAE;oBACX,OAAO,OAAO,CAAA;iBACf;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YAClC,CAAC;SACF,CAAC;KACH,CACF,CAAA;AACH,CAAC"}