@jbrowse/plugin-config 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 (132) hide show
  1. package/dist/ConfigurationEditorWidget/components/CallbackEditor.d.ts +10 -7
  2. package/dist/ConfigurationEditorWidget/components/CallbackEditor.js +108 -115
  3. package/dist/ConfigurationEditorWidget/components/CallbackEditor.js.map +1 -0
  4. package/dist/ConfigurationEditorWidget/components/CodeEditor.d.ts +4 -3
  5. package/dist/ConfigurationEditorWidget/components/CodeEditor.js +78 -73
  6. package/dist/ConfigurationEditorWidget/components/CodeEditor.js.map +1 -0
  7. package/dist/ConfigurationEditorWidget/components/ColorEditor.d.ts +9 -33
  8. package/dist/ConfigurationEditorWidget/components/ColorEditor.js +82 -116
  9. package/dist/ConfigurationEditorWidget/components/ColorEditor.js.map +1 -0
  10. package/dist/ConfigurationEditorWidget/components/ColorPicker.d.ts +0 -7
  11. package/dist/ConfigurationEditorWidget/components/ColorPicker.js +64 -67
  12. package/dist/ConfigurationEditorWidget/components/ColorPicker.js.map +1 -0
  13. package/dist/ConfigurationEditorWidget/components/ConfigurationEditor.d.ts +7 -3
  14. package/dist/ConfigurationEditorWidget/components/ConfigurationEditor.js +113 -160
  15. package/dist/ConfigurationEditorWidget/components/ConfigurationEditor.js.map +1 -0
  16. package/dist/ConfigurationEditorWidget/components/JsonEditor.js +74 -75
  17. package/dist/ConfigurationEditorWidget/components/JsonEditor.js.map +1 -0
  18. package/dist/ConfigurationEditorWidget/components/SlotEditor.d.ts +11 -1
  19. package/dist/ConfigurationEditorWidget/components/SlotEditor.js +228 -423
  20. package/dist/ConfigurationEditorWidget/components/SlotEditor.js.map +1 -0
  21. package/dist/ConfigurationEditorWidget/components/StringArrayEditor.d.ts +12 -0
  22. package/dist/ConfigurationEditorWidget/components/StringArrayEditor.js +81 -0
  23. package/dist/ConfigurationEditorWidget/components/StringArrayEditor.js.map +1 -0
  24. package/dist/ConfigurationEditorWidget/components/TypeSelector.d.ts +8 -6
  25. package/dist/ConfigurationEditorWidget/components/TypeSelector.js +16 -46
  26. package/dist/ConfigurationEditorWidget/components/TypeSelector.js.map +1 -0
  27. package/dist/ConfigurationEditorWidget/index.js +25 -42
  28. package/dist/ConfigurationEditorWidget/index.js.map +1 -0
  29. package/dist/ConfigurationEditorWidget/model.js +18 -26
  30. package/dist/ConfigurationEditorWidget/model.js.map +1 -0
  31. package/dist/FromConfigAdapter/FromConfigAdapter.js +172 -204
  32. package/dist/FromConfigAdapter/FromConfigAdapter.js.map +1 -0
  33. package/dist/FromConfigAdapter/FromConfigRegionsAdapter.js +151 -142
  34. package/dist/FromConfigAdapter/FromConfigRegionsAdapter.js.map +1 -0
  35. package/dist/FromConfigAdapter/FromConfigSequenceAdapter.js +182 -181
  36. package/dist/FromConfigAdapter/FromConfigSequenceAdapter.js.map +1 -0
  37. package/dist/FromConfigAdapter/configSchema.js +33 -49
  38. package/dist/FromConfigAdapter/configSchema.js.map +1 -0
  39. package/dist/FromConfigAdapter/index.js +16 -50
  40. package/dist/FromConfigAdapter/index.js.map +1 -0
  41. package/dist/RefNameAliasAdapter/RefNameAliasAdapter.js +111 -123
  42. package/dist/RefNameAliasAdapter/RefNameAliasAdapter.js.map +1 -0
  43. package/dist/RefNameAliasAdapter/configSchema.js +16 -25
  44. package/dist/RefNameAliasAdapter/configSchema.js.map +1 -0
  45. package/dist/RefNameAliasAdapter/index.js +10 -22
  46. package/dist/RefNameAliasAdapter/index.js.map +1 -0
  47. package/dist/index.d.ts +9 -3
  48. package/dist/index.js +129 -144
  49. package/dist/index.js.map +1 -0
  50. package/esm/ConfigurationEditorWidget/components/CallbackEditor.d.ts +12 -0
  51. package/esm/ConfigurationEditorWidget/components/CallbackEditor.js +71 -0
  52. package/esm/ConfigurationEditorWidget/components/CallbackEditor.js.map +1 -0
  53. package/esm/ConfigurationEditorWidget/components/CodeEditor.d.ts +5 -0
  54. package/esm/ConfigurationEditorWidget/components/CodeEditor.js +42 -0
  55. package/esm/ConfigurationEditorWidget/components/CodeEditor.js.map +1 -0
  56. package/esm/ConfigurationEditorWidget/components/ColorEditor.d.ts +20 -0
  57. package/esm/ConfigurationEditorWidget/components/ColorEditor.js +37 -0
  58. package/esm/ConfigurationEditorWidget/components/ColorEditor.js.map +1 -0
  59. package/esm/ConfigurationEditorWidget/components/ColorPicker.d.ts +7 -0
  60. package/esm/ConfigurationEditorWidget/components/ColorPicker.js +26 -0
  61. package/esm/ConfigurationEditorWidget/components/ColorPicker.js.map +1 -0
  62. package/esm/ConfigurationEditorWidget/components/ConfigurationEditor.d.ts +8 -0
  63. package/esm/ConfigurationEditorWidget/components/ConfigurationEditor.js +83 -0
  64. package/esm/ConfigurationEditorWidget/components/ConfigurationEditor.js.map +1 -0
  65. package/esm/ConfigurationEditorWidget/components/JsonEditor.d.ts +9 -0
  66. package/esm/ConfigurationEditorWidget/components/JsonEditor.js +39 -0
  67. package/esm/ConfigurationEditorWidget/components/JsonEditor.js.map +1 -0
  68. package/esm/ConfigurationEditorWidget/components/SlotEditor.d.ts +16 -0
  69. package/esm/ConfigurationEditorWidget/components/SlotEditor.js +176 -0
  70. package/esm/ConfigurationEditorWidget/components/SlotEditor.js.map +1 -0
  71. package/esm/ConfigurationEditorWidget/components/StringArrayEditor.d.ts +12 -0
  72. package/esm/ConfigurationEditorWidget/components/StringArrayEditor.js +36 -0
  73. package/esm/ConfigurationEditorWidget/components/StringArrayEditor.js.map +1 -0
  74. package/esm/ConfigurationEditorWidget/components/TypeSelector.d.ts +9 -0
  75. package/esm/ConfigurationEditorWidget/components/TypeSelector.js +12 -0
  76. package/esm/ConfigurationEditorWidget/components/TypeSelector.js.map +1 -0
  77. package/esm/ConfigurationEditorWidget/index.d.ts +3 -0
  78. package/esm/ConfigurationEditorWidget/index.js +20 -0
  79. package/esm/ConfigurationEditorWidget/index.js.map +1 -0
  80. package/esm/ConfigurationEditorWidget/model.d.ts +8 -0
  81. package/esm/ConfigurationEditorWidget/model.js +16 -0
  82. package/esm/ConfigurationEditorWidget/model.js.map +1 -0
  83. package/esm/FromConfigAdapter/FromConfigAdapter.d.ts +24 -0
  84. package/esm/FromConfigAdapter/FromConfigAdapter.js +63 -0
  85. package/esm/FromConfigAdapter/FromConfigAdapter.js.map +1 -0
  86. package/esm/FromConfigAdapter/FromConfigRegionsAdapter.d.ts +23 -0
  87. package/esm/FromConfigAdapter/FromConfigRegionsAdapter.js +50 -0
  88. package/esm/FromConfigAdapter/FromConfigRegionsAdapter.js.map +1 -0
  89. package/esm/FromConfigAdapter/FromConfigSequenceAdapter.d.ts +25 -0
  90. package/esm/FromConfigAdapter/FromConfigSequenceAdapter.js +73 -0
  91. package/esm/FromConfigAdapter/FromConfigSequenceAdapter.js.map +1 -0
  92. package/esm/FromConfigAdapter/configSchema.d.ts +3 -0
  93. package/esm/FromConfigAdapter/configSchema.js +32 -0
  94. package/esm/FromConfigAdapter/configSchema.js.map +1 -0
  95. package/esm/FromConfigAdapter/index.d.ts +4 -0
  96. package/esm/FromConfigAdapter/index.js +5 -0
  97. package/esm/FromConfigAdapter/index.js.map +1 -0
  98. package/esm/RefNameAliasAdapter/RefNameAliasAdapter.d.ts +8 -0
  99. package/esm/RefNameAliasAdapter/RefNameAliasAdapter.js +24 -0
  100. package/esm/RefNameAliasAdapter/RefNameAliasAdapter.js.map +1 -0
  101. package/esm/RefNameAliasAdapter/configSchema.d.ts +2 -0
  102. package/esm/RefNameAliasAdapter/configSchema.js +15 -0
  103. package/esm/RefNameAliasAdapter/configSchema.js.map +1 -0
  104. package/esm/RefNameAliasAdapter/index.d.ts +2 -0
  105. package/esm/RefNameAliasAdapter/index.js +3 -0
  106. package/esm/RefNameAliasAdapter/index.js.map +1 -0
  107. package/esm/index.d.ts +18 -0
  108. package/esm/index.js +72 -0
  109. package/esm/index.js.map +1 -0
  110. package/package.json +20 -13
  111. package/src/ConfigurationEditorWidget/components/{CallbackEditor.js → CallbackEditor.tsx} +36 -21
  112. package/src/ConfigurationEditorWidget/components/CodeEditor.tsx +59 -0
  113. package/src/ConfigurationEditorWidget/components/ColorEditor.tsx +8 -33
  114. package/src/ConfigurationEditorWidget/components/ColorPicker.tsx +4 -13
  115. package/src/ConfigurationEditorWidget/components/ConfigurationEditor.tsx +169 -0
  116. package/src/ConfigurationEditorWidget/components/JsonEditor.js +4 -8
  117. package/src/ConfigurationEditorWidget/components/SlotEditor.js +11 -69
  118. package/src/ConfigurationEditorWidget/components/StringArrayEditor.tsx +115 -0
  119. package/src/ConfigurationEditorWidget/components/{TypeSelector.js → TypeSelector.tsx} +15 -7
  120. package/src/ConfigurationEditorWidget/components/__snapshots__/ConfigurationEditor.test.js.snap +883 -691
  121. package/src/ConfigurationEditorWidget/index.js +2 -2
  122. package/src/RefNameAliasAdapter/RefNameAliasAdapter.ts +1 -1
  123. package/src/index.ts +20 -14
  124. package/dist/ConfigurationEditorWidget/components/ColorEditor.test.js +0 -31
  125. package/dist/ConfigurationEditorWidget/components/ConfigurationEditor.test.js +0 -121
  126. package/dist/FromConfigAdapter/FromConfigAdapter.test.js +0 -100
  127. package/dist/FromConfigAdapter/FromConfigRegionsAdapter.test.js +0 -200
  128. package/dist/FromConfigAdapter/FromConfigSequenceAdapter.test.js +0 -110
  129. package/dist/RefNameAliasAdapter/RefNameAliasAdapter.test.js +0 -41
  130. package/dist/index.test.js +0 -41
  131. package/src/ConfigurationEditorWidget/components/CodeEditor.js +0 -60
  132. package/src/ConfigurationEditorWidget/components/ConfigurationEditor.js +0 -154
@@ -5,13 +5,13 @@ import { ConfigurationSchema } from '@jbrowse/core/configuration'
5
5
  export { default as stateModelFactory } from './model'
6
6
  export const configSchema = ConfigurationSchema('ConfigurationEditorWidget', {})
7
7
  export const HeadingComponent = observer(({ model }) => {
8
- if (model && model.target) {
8
+ if (model?.target) {
9
9
  if (model.target.type) {
10
10
  return `${model.target.type} settings`
11
11
  }
12
12
  if (isStateTreeNode(model.target)) {
13
13
  const type = getType(model.target)
14
- if (type && type.name) {
14
+ if (type?.name) {
15
15
  return `${type.name.replace('ConfigurationSchema', '')} settings`
16
16
  }
17
17
  }
@@ -23,7 +23,7 @@ export default class RefNameAliasAdapter
23
23
  .map(row => {
24
24
  const aliases = row.split('\t')
25
25
  const [refName] = aliases.splice(refColumn, 1)
26
- return { refName, aliases }
26
+ return { refName, aliases: aliases.filter(f => !!f.trim()) }
27
27
  })
28
28
  }
29
29
 
package/src/index.ts CHANGED
@@ -9,19 +9,13 @@ import {
9
9
  stateModelFactory as ConfigurationEditorStateModelFactory,
10
10
  } from './ConfigurationEditorWidget'
11
11
  import {
12
- AdapterClass as FromConfigAdapterClass,
13
- RegionsAdapterClass as FromConfigRegionsAdapterClass,
14
- SequenceAdapterClass as FromConfigSequenceAdapterClass,
15
12
  configSchema as fromConfigAdapterConfigSchema,
16
13
  regionsConfigSchema as fromConfigRegionsAdapterConfigSchema,
17
14
  sequenceConfigSchema as fromConfigSequenceAdapterConfigSchema,
18
15
  } from './FromConfigAdapter'
19
- import {
20
- AdapterClass as RefNameAliasAdapterClass,
21
- configSchema as refNameAliasAdapterConfigSchema,
22
- } from './RefNameAliasAdapter'
16
+ import { configSchema as refNameAliasAdapterConfigSchema } from './RefNameAliasAdapter'
23
17
 
24
- const ConfigurationEditorComponent = lazy(
18
+ const LazyConfigurationEditorComponent = lazy(
25
19
  () => import('./ConfigurationEditorWidget/components/ConfigurationEditor'),
26
20
  )
27
21
 
@@ -34,7 +28,10 @@ export default class extends Plugin {
34
28
  new AdapterType({
35
29
  name: 'FromConfigAdapter',
36
30
  configSchema: fromConfigAdapterConfigSchema,
37
- AdapterClass: FromConfigAdapterClass,
31
+ getAdapterClass: () =>
32
+ import('./FromConfigAdapter/FromConfigAdapter').then(
33
+ r => r.default,
34
+ ),
38
35
  adapterMetadata: {
39
36
  category: null,
40
37
  hiddenFromGUI: true,
@@ -48,7 +45,10 @@ export default class extends Plugin {
48
45
  new AdapterType({
49
46
  name: 'FromConfigRegionsAdapter',
50
47
  configSchema: fromConfigRegionsAdapterConfigSchema,
51
- AdapterClass: FromConfigRegionsAdapterClass,
48
+ getAdapterClass: () =>
49
+ import('./FromConfigAdapter/FromConfigRegionsAdapter').then(
50
+ r => r.default,
51
+ ),
52
52
  adapterMetadata: {
53
53
  category: null,
54
54
  hiddenFromGUI: true,
@@ -62,7 +62,10 @@ export default class extends Plugin {
62
62
  new AdapterType({
63
63
  name: 'FromConfigSequenceAdapter',
64
64
  configSchema: fromConfigSequenceAdapterConfigSchema,
65
- AdapterClass: FromConfigSequenceAdapterClass,
65
+ getAdapterClass: () =>
66
+ import('./FromConfigAdapter/FromConfigSequenceAdapter').then(
67
+ r => r.default,
68
+ ),
66
69
  adapterMetadata: {
67
70
  category: null,
68
71
  hiddenFromGUI: true,
@@ -76,7 +79,10 @@ export default class extends Plugin {
76
79
  new AdapterType({
77
80
  name: 'RefNameAliasAdapter',
78
81
  configSchema: refNameAliasAdapterConfigSchema,
79
- AdapterClass: RefNameAliasAdapterClass,
82
+ getAdapterClass: () =>
83
+ import('./RefNameAliasAdapter/RefNameAliasAdapter').then(
84
+ r => r.default,
85
+ ),
80
86
  adapterMetadata: {
81
87
  category: null,
82
88
  hiddenFromGUI: true,
@@ -92,7 +98,7 @@ export default class extends Plugin {
92
98
  HeadingComponent: ConfigurationEditorHeadingComponent,
93
99
  configSchema: ConfigurationEditorConfigSchema,
94
100
  stateModel: ConfigurationEditorStateModelFactory(pluginManager),
95
- ReactComponent: ConfigurationEditorComponent,
101
+ ReactComponent: LazyConfigurationEditorComponent,
96
102
  })
97
103
  })
98
104
  }
@@ -100,4 +106,4 @@ export default class extends Plugin {
100
106
 
101
107
  export { default as JsonEditor } from './ConfigurationEditorWidget/components/JsonEditor'
102
108
 
103
- export { ConfigurationEditorComponent as ConfigurationEditor }
109
+ export { LazyConfigurationEditorComponent as ConfigurationEditor }
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _react2 = require("@testing-library/react");
8
-
9
- var _ColorEditor = require("./ColorEditor");
10
-
11
- describe('ColorPicker widget', function () {
12
- it('can change value via the text field', function () {
13
- var myfn = jest.fn();
14
-
15
- var _render = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_ColorEditor.ColorSlot, {
16
- value: "green",
17
- onChange: myfn
18
- })),
19
- getByDisplayValue = _render.getByDisplayValue;
20
-
21
- var ret = getByDisplayValue('green');
22
-
23
- _react2.fireEvent.change(ret, {
24
- target: {
25
- value: 'red'
26
- }
27
- });
28
-
29
- expect(myfn).toHaveBeenCalledWith('red');
30
- });
31
- });
@@ -1,121 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _react2 = require("@testing-library/react");
8
-
9
- var _configuration = require("@jbrowse/core/configuration");
10
-
11
- var _PluginManager = _interopRequireDefault(require("@jbrowse/core/PluginManager"));
12
-
13
- var _pluginAlignments = _interopRequireDefault(require("@jbrowse/plugin-alignments"));
14
-
15
- var _pluginSvg = _interopRequireDefault(require("@jbrowse/plugin-svg"));
16
-
17
- var _pluginLinearGenomeView = require("@jbrowse/plugin-linear-genome-view");
18
-
19
- var _ConfigurationEditor = _interopRequireDefault(require("./ConfigurationEditor"));
20
-
21
- describe('ConfigurationEditor widget', function () {
22
- it('renders with just the required model elements', function () {
23
- var TestSchema = (0, _configuration.ConfigurationSchema)('TestThing', {
24
- foo: {
25
- type: 'string',
26
- defaultValue: 'bar'
27
- }
28
- });
29
-
30
- var _render = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_ConfigurationEditor.default, {
31
- model: {
32
- target: TestSchema.create()
33
- }
34
- })),
35
- container = _render.container;
36
-
37
- expect(container.firstChild).toMatchSnapshot();
38
- });
39
- it('renders all the different types of built-in slots', function () {
40
- var TestSchema = (0, _configuration.ConfigurationSchema)('TestThing', {
41
- stringTest: {
42
- name: 'stringTest',
43
- description: 'stringTest',
44
- type: 'string',
45
- defaultValue: 'string1'
46
- },
47
- fileLocationTest: {
48
- name: 'fileLocationTest',
49
- description: 'fileLocationTest',
50
- type: 'fileLocation',
51
- defaultValue: {
52
- uri: '/path/to/my.file',
53
- locationType: 'UriLocation'
54
- }
55
- },
56
- stringArrayTest: {
57
- name: 'stringArrayTest',
58
- description: 'stringArrayTest',
59
- type: 'stringArray',
60
- defaultValue: ['string1', 'string2']
61
- },
62
- stringArrayMapTest: {
63
- name: 'stringArrayMapTest',
64
- description: 'stringArrayMapTest',
65
- type: 'stringArrayMap',
66
- defaultValue: {
67
- key1: ['string1', 'string2']
68
- }
69
- },
70
- numberTest: {
71
- name: 'numberTest',
72
- description: 'numberTest',
73
- type: 'number',
74
- defaultValue: 88.5
75
- },
76
- integerTest: {
77
- name: 'integerTest',
78
- description: 'integerTest',
79
- type: 'integer',
80
- defaultValue: 42
81
- },
82
- colorTest: {
83
- name: 'colorTest',
84
- description: 'colorTest',
85
- type: 'color',
86
- defaultValue: '#396494'
87
- },
88
- booleanTest: {
89
- name: 'booleanTest',
90
- description: 'booleanTest',
91
- type: 'boolean',
92
- defaultValue: true
93
- }
94
- });
95
-
96
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_ConfigurationEditor.default, {
97
- model: {
98
- target: TestSchema.create()
99
- }
100
- })),
101
- container = _render2.container;
102
-
103
- expect(container.firstChild).toMatchSnapshot();
104
- });
105
- it('renders with defaults of the PileupTrack schema', function () {
106
- console.warn = jest.fn();
107
- var pluginManager = new _PluginManager.default([new _pluginAlignments.default(), new _pluginSvg.default()]);
108
- pluginManager.createPluggableElements();
109
- pluginManager.configure();
110
- var PileupDisplaySchema = (0, _pluginLinearGenomeView.linearBasicDisplayConfigSchemaFactory)(pluginManager);
111
-
112
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_ConfigurationEditor.default, {
113
- model: {
114
- target: PileupDisplaySchema.create()
115
- }
116
- })),
117
- container = _render3.container;
118
-
119
- expect(container.firstChild).toMatchSnapshot();
120
- });
121
- });
@@ -1,100 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
-
7
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
-
9
- var _operators = require("rxjs/operators");
10
-
11
- var _FromConfigAdapter = _interopRequireDefault(require("./FromConfigAdapter"));
12
-
13
- var _configSchema = require("./configSchema");
14
-
15
- test('adapter can fetch features', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
16
- var features, adapter, result, featuresArray;
17
- return _regenerator.default.wrap(function _callee$(_context) {
18
- while (1) {
19
- switch (_context.prev = _context.next) {
20
- case 0:
21
- features = [{
22
- uniqueId: 'one',
23
- refName: 'ctgA',
24
- start: 20,
25
- end: 40
26
- }, {
27
- uniqueId: 'two',
28
- refName: 'ctgB',
29
- start: 50,
30
- end: 60
31
- }];
32
- adapter = new _FromConfigAdapter.default(_configSchema.configSchema.create({
33
- features: features
34
- }));
35
- result = adapter.getFeatures({
36
- refName: 'ctgA',
37
- start: 0,
38
- end: 20000
39
- });
40
- _context.next = 5;
41
- return result.pipe((0, _operators.toArray)()).toPromise();
42
-
43
- case 5:
44
- featuresArray = _context.sent;
45
- expect(featuresArray.length).toBe(1);
46
- expect(featuresArray[0].toJSON()).toEqual(features[0]);
47
-
48
- case 8:
49
- case "end":
50
- return _context.stop();
51
- }
52
- }
53
- }, _callee);
54
- })));
55
- test('adapter can fetch features with subfeatures', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
56
- var features, adapter, result, featuresArray;
57
- return _regenerator.default.wrap(function _callee2$(_context2) {
58
- while (1) {
59
- switch (_context2.prev = _context2.next) {
60
- case 0:
61
- features = [{
62
- refName: 'ctgA',
63
- uniqueId: 'feat1',
64
- start: 200,
65
- end: 750,
66
- name: 'Feature1',
67
- subfeatures: [{
68
- uniqueId: 'feat2',
69
- start: 225,
70
- end: 300,
71
- name: 'Feature2'
72
- }, {
73
- uniqueId: 'feat3',
74
- start: 400,
75
- end: 600,
76
- name: 'Feature3'
77
- }]
78
- }];
79
- adapter = new _FromConfigAdapter.default(_configSchema.configSchema.create({
80
- features: features
81
- }));
82
- result = adapter.getFeatures({
83
- refName: 'ctgA',
84
- start: 0,
85
- end: 20000
86
- });
87
- _context2.next = 5;
88
- return result.pipe((0, _operators.toArray)()).toPromise();
89
-
90
- case 5:
91
- featuresArray = _context2.sent;
92
- expect(featuresArray.length).toBe(1);
93
-
94
- case 7:
95
- case "end":
96
- return _context2.stop();
97
- }
98
- }
99
- }, _callee2);
100
- })));
@@ -1,200 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
-
7
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
-
9
- var _FromConfigRegionsAdapter = _interopRequireDefault(require("./FromConfigRegionsAdapter"));
10
-
11
- var _configSchema = require("./configSchema");
12
-
13
- test('adapter can fetch regions 1', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
14
- var features, adapter, result;
15
- return _regenerator.default.wrap(function _callee$(_context) {
16
- while (1) {
17
- switch (_context.prev = _context.next) {
18
- case 0:
19
- features = [{
20
- uniqueId: 'one',
21
- refName: 'ctgA',
22
- start: 250,
23
- end: 400
24
- }, {
25
- uniqueId: 'two',
26
- refName: 'ctgA',
27
- start: 150,
28
- end: 300
29
- }, {
30
- uniqueId: 'three',
31
- refName: 'ctgB',
32
- start: 50,
33
- end: 60
34
- }];
35
- adapter = new _FromConfigRegionsAdapter.default(_configSchema.regionsConfigSchema.create({
36
- features: features
37
- }));
38
- _context.next = 4;
39
- return adapter.getRegions();
40
-
41
- case 4:
42
- result = _context.sent;
43
- expect(result).toEqual([{
44
- refName: 'ctgA',
45
- start: 150,
46
- end: 400
47
- }, {
48
- refName: 'ctgB',
49
- start: 50,
50
- end: 60
51
- }]);
52
-
53
- case 6:
54
- case "end":
55
- return _context.stop();
56
- }
57
- }
58
- }, _callee);
59
- })));
60
- test('adapter can fetch regions 2', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
61
- var features, adapter, result;
62
- return _regenerator.default.wrap(function _callee2$(_context2) {
63
- while (1) {
64
- switch (_context2.prev = _context2.next) {
65
- case 0:
66
- features = [{
67
- uniqueId: 'three',
68
- refName: 'ctgB',
69
- start: 50,
70
- end: 60
71
- }, {
72
- uniqueId: 'two',
73
- refName: 'ctgA',
74
- start: 150,
75
- end: 300
76
- }, {
77
- uniqueId: 'one',
78
- refName: 'ctgA',
79
- start: 250,
80
- end: 400
81
- }];
82
- adapter = new _FromConfigRegionsAdapter.default(_configSchema.regionsConfigSchema.create({
83
- features: features
84
- }));
85
- _context2.next = 4;
86
- return adapter.getRegions();
87
-
88
- case 4:
89
- result = _context2.sent;
90
- expect(result).toEqual([{
91
- refName: 'ctgA',
92
- start: 150,
93
- end: 400
94
- }, {
95
- refName: 'ctgB',
96
- start: 50,
97
- end: 60
98
- }]);
99
-
100
- case 6:
101
- case "end":
102
- return _context2.stop();
103
- }
104
- }
105
- }, _callee2);
106
- })));
107
- test('adapter can fetch regions 3', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
108
- var features, adapter, result;
109
- return _regenerator.default.wrap(function _callee3$(_context3) {
110
- while (1) {
111
- switch (_context3.prev = _context3.next) {
112
- case 0:
113
- features = [{
114
- uniqueId: 'two',
115
- refName: 'ctgA',
116
- start: 150,
117
- end: 300
118
- }, {
119
- uniqueId: 'one',
120
- refName: 'ctgA',
121
- start: 250,
122
- end: 400
123
- }, {
124
- uniqueId: 'three',
125
- refName: 'ctgB',
126
- start: 50,
127
- end: 60
128
- }];
129
- adapter = new _FromConfigRegionsAdapter.default(_configSchema.regionsConfigSchema.create({
130
- features: features
131
- }));
132
- _context3.next = 4;
133
- return adapter.getRegions();
134
-
135
- case 4:
136
- result = _context3.sent;
137
- expect(result).toEqual([{
138
- refName: 'ctgA',
139
- start: 150,
140
- end: 400
141
- }, {
142
- refName: 'ctgB',
143
- start: 50,
144
- end: 60
145
- }]);
146
-
147
- case 6:
148
- case "end":
149
- return _context3.stop();
150
- }
151
- }
152
- }, _callee3);
153
- })));
154
- test('adapter can fetch regions 4', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
155
- var features, adapter, result;
156
- return _regenerator.default.wrap(function _callee4$(_context4) {
157
- while (1) {
158
- switch (_context4.prev = _context4.next) {
159
- case 0:
160
- features = [{
161
- uniqueId: 'two',
162
- refName: 'ctgA',
163
- start: 150,
164
- end: 300
165
- }, {
166
- uniqueId: 'onePrime',
167
- refName: 'ctgA',
168
- start: 300,
169
- end: 400
170
- }, {
171
- uniqueId: 'three',
172
- refName: 'ctgB',
173
- start: 50,
174
- end: 60
175
- }];
176
- adapter = new _FromConfigRegionsAdapter.default(_configSchema.regionsConfigSchema.create({
177
- features: features
178
- }));
179
- _context4.next = 4;
180
- return adapter.getRegions();
181
-
182
- case 4:
183
- result = _context4.sent;
184
- expect(result).toEqual([{
185
- refName: 'ctgA',
186
- start: 150,
187
- end: 400
188
- }, {
189
- refName: 'ctgB',
190
- start: 50,
191
- end: 60
192
- }]);
193
-
194
- case 6:
195
- case "end":
196
- return _context4.stop();
197
- }
198
- }
199
- }, _callee4);
200
- })));
@@ -1,110 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
-
7
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
-
9
- var _operators = require("rxjs/operators");
10
-
11
- var _FromConfigSequenceAdapter = _interopRequireDefault(require("./FromConfigSequenceAdapter"));
12
-
13
- var _configSchema = require("./configSchema");
14
-
15
- test('adapter can fetch sequences when there is just one feature representing whole refseq', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
16
- var features, adapter, result, featuresArray, result2, featuresArray2;
17
- return _regenerator.default.wrap(function _callee$(_context) {
18
- while (1) {
19
- switch (_context.prev = _context.next) {
20
- case 0:
21
- features = [{
22
- uniqueId: 'one',
23
- refName: 'ctgA',
24
- start: 0,
25
- end: 150,
26
- seq: 'ccaaaccgtcaattaaccggtatcttctcggaaacggcggttctctcctagatagcgatctgtggtctcaccatgcaatttaaacaggtgagtaaagattgctacaaatacgagactagctgtcaccagatgctgttcatctgttggctc'
27
- }];
28
- adapter = new _FromConfigSequenceAdapter.default(_configSchema.sequenceConfigSchema.create({
29
- features: features
30
- }));
31
- result = adapter.getFeatures({
32
- refName: 'ctgA',
33
- start: 0,
34
- end: 50
35
- });
36
- _context.next = 5;
37
- return result.pipe((0, _operators.toArray)()).toPromise();
38
-
39
- case 5:
40
- featuresArray = _context.sent;
41
- expect(featuresArray.length).toBe(1);
42
- expect(featuresArray[0].get('seq')).toBe(features[0].seq.slice(0, 50));
43
- result2 = adapter.getFeatures({
44
- refName: 'ctgA',
45
- start: 100,
46
- end: 150
47
- });
48
- _context.next = 11;
49
- return result2.pipe((0, _operators.toArray)()).toPromise();
50
-
51
- case 11:
52
- featuresArray2 = _context.sent;
53
- expect(featuresArray2.length).toBe(1);
54
- expect(featuresArray2[0].get('seq')).toBe(features[0].seq.slice(100, 150));
55
-
56
- case 14:
57
- case "end":
58
- return _context.stop();
59
- }
60
- }
61
- }, _callee);
62
- })));
63
- test("adapter can fetch sequences when the config's sequence doesn't start at 0", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
64
- var features, adapter, result, featuresArray, result2, featuresArray2;
65
- return _regenerator.default.wrap(function _callee2$(_context2) {
66
- while (1) {
67
- switch (_context2.prev = _context2.next) {
68
- case 0:
69
- features = [{
70
- uniqueId: 'one',
71
- refName: 'ctgA',
72
- start: 5000,
73
- end: 5150,
74
- seq: 'ccaaaccgtcaattaaccggtatcttctcggaaacggcggttctctcctagatagcgatctgtggtctcaccatgcaatttaaacaggtgagtaaagattgctacaaatacgagactagctgtcaccagatgctgttcatctgttggctc'
75
- }];
76
- adapter = new _FromConfigSequenceAdapter.default(_configSchema.sequenceConfigSchema.create({
77
- features: features
78
- }));
79
- result = adapter.getFeatures({
80
- refName: 'ctgA',
81
- start: 4950,
82
- end: 5050
83
- });
84
- _context2.next = 5;
85
- return result.pipe((0, _operators.toArray)()).toPromise();
86
-
87
- case 5:
88
- featuresArray = _context2.sent;
89
- expect(featuresArray.length).toBe(1);
90
- expect(featuresArray[0].get('seq')).toBe(features[0].seq.slice(0, 50));
91
- result2 = adapter.getFeatures({
92
- refName: 'ctgA',
93
- start: 5050,
94
- end: 5150
95
- });
96
- _context2.next = 11;
97
- return result2.pipe((0, _operators.toArray)()).toPromise();
98
-
99
- case 11:
100
- featuresArray2 = _context2.sent;
101
- expect(featuresArray2.length).toBe(1);
102
- expect(featuresArray2[0].get('seq')).toBe(features[0].seq.slice(50, 150));
103
-
104
- case 14:
105
- case "end":
106
- return _context2.stop();
107
- }
108
- }
109
- }, _callee2);
110
- })));