@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
@@ -1,176 +1,129 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _react = _interopRequireDefault(require("react"));
17
-
18
- var _configuration = require("@jbrowse/core/configuration");
19
-
20
- var _core = require("@material-ui/core");
21
-
22
- var _mobxReact = require("mobx-react");
23
-
24
- var _mobxStateTree = require("mobx-state-tree");
25
-
26
- var _pluralize = require("pluralize");
27
-
28
- var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"));
29
-
30
- var _SlotEditor = _interopRequireDefault(require("./SlotEditor"));
31
-
32
- var _TypeSelector = _interopRequireDefault(require("./TypeSelector"));
33
-
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
+ if (ar || !(i in from)) {
32
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
+ ar[i] = from[i];
34
+ }
35
+ }
36
+ return to.concat(ar || Array.prototype.slice.call(from));
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var react_1 = __importDefault(require("react"));
43
+ var configuration_1 = require("@jbrowse/core/configuration");
44
+ var material_1 = require("@mui/material");
45
+ var mui_1 = require("tss-react/mui");
46
+ var mobx_react_1 = require("mobx-react");
47
+ var mobx_state_tree_1 = require("mobx-state-tree");
48
+ var pluralize_1 = require("pluralize");
34
49
  // icons
50
+ var ExpandMore_1 = __importDefault(require("@mui/icons-material/ExpandMore"));
35
51
  // locals
36
- var useStyles = (0, _core.makeStyles)(function (theme) {
37
- return {
52
+ var SlotEditor_1 = __importDefault(require("./SlotEditor"));
53
+ var TypeSelector_1 = __importDefault(require("./TypeSelector"));
54
+ var useStyles = (0, mui_1.makeStyles)()(function (theme) { return ({
38
55
  expandIcon: {
39
- color: '#fff'
56
+ color: '#fff',
40
57
  },
41
58
  root: {
42
- padding: theme.spacing(1, 3, 1, 1)
59
+ padding: theme.spacing(1, 3, 1, 1),
43
60
  },
44
61
  expansionPanelDetails: {
45
- display: 'block',
46
- padding: theme.spacing(1)
62
+ display: 'block',
63
+ padding: theme.spacing(1),
47
64
  },
48
65
  accordion: {
49
- border: "1px solid ".concat(theme.palette.text.primary)
50
- }
51
- };
52
- });
53
- var Member = (0, _mobxReact.observer)(function (props) {
54
- var classes = useStyles();
55
- var slotName = props.slotName,
56
- slotSchema = props.slotSchema,
57
- schema = props.schema,
58
- _props$slot = props.slot,
59
- slot = _props$slot === void 0 ? schema[slotName] : _props$slot,
60
- _props$path = props.path,
61
- path = _props$path === void 0 ? [] : _props$path;
62
- var typeSelector;
63
-
64
- if ((0, _configuration.isConfigurationSchemaType)(slotSchema)) {
65
- if (slot.length) {
66
- return slot.map(function (subslot, slotIndex) {
67
- var key = "".concat((0, _pluralize.singular)(slotName), " ").concat(slotIndex + 1);
68
- return /*#__PURE__*/_react.default.createElement(Member, (0, _extends2.default)({}, props, {
69
- key: key,
70
- slot: subslot,
71
- slotName: key
72
- }));
73
- });
74
- } // if this is an explicitly typed schema, make a type-selecting dropdown
75
- // that can be used to change its type
76
-
77
-
78
- var typeNameChoices = (0, _configuration.getTypeNamesFromExplicitlyTypedUnion)(slotSchema);
79
-
80
- if (typeNameChoices.length) {
81
- typeSelector = /*#__PURE__*/_react.default.createElement(_TypeSelector.default, {
82
- typeNameChoices: typeNameChoices,
83
- slotName: slotName,
84
- slot: slot,
85
- onChange: function onChange(evt) {
86
- if (evt.target.value !== slot.type) {
87
- schema.setSubschema(slotName, {
88
- type: evt.target.value
66
+ border: "1px solid ".concat(theme.palette.text.primary),
67
+ },
68
+ }); });
69
+ var Member = (0, mobx_react_1.observer)(function (props) {
70
+ var classes = useStyles().classes;
71
+ var slotName = props.slotName, slotSchema = props.slotSchema, schema = props.schema, _a = props.slot, slot = _a === void 0 ? schema[slotName] : _a, _b = props.path, path = _b === void 0 ? [] : _b;
72
+ var typeSelector;
73
+ if ((0, configuration_1.isConfigurationSchemaType)(slotSchema)) {
74
+ if (slot.length) {
75
+ return slot.map(function (subslot, slotIndex) {
76
+ var key = "".concat((0, pluralize_1.singular)(slotName), " ").concat(slotIndex + 1);
77
+ return react_1.default.createElement(Member, __assign({}, props, { key: key, slot: subslot, slotName: key }));
89
78
  });
90
- }
91
79
  }
92
- });
80
+ // if this is an explicitly typed schema, make a type-selecting dropdown
81
+ // that can be used to change its type
82
+ var typeNameChoices = (0, configuration_1.getTypeNamesFromExplicitlyTypedUnion)(slotSchema);
83
+ if (typeNameChoices.length) {
84
+ typeSelector = (react_1.default.createElement(TypeSelector_1.default, { typeNameChoices: typeNameChoices, slotName: slotName, slot: slot, onChange: function (evt) {
85
+ if (evt.target.value !== slot.type) {
86
+ schema.setSubschema(slotName, { type: evt.target.value });
87
+ }
88
+ } }));
89
+ }
90
+ return (react_1.default.createElement(material_1.Accordion, { defaultExpanded: true, className: classes.accordion },
91
+ react_1.default.createElement(material_1.AccordionSummary, { expandIcon: react_1.default.createElement(ExpandMore_1.default, { className: classes.expandIcon }) },
92
+ react_1.default.createElement(material_1.Typography, null, __spreadArray(__spreadArray([], __read(path), false), [slotName], false).join('🡒'))),
93
+ react_1.default.createElement(material_1.AccordionDetails, { className: classes.expansionPanelDetails },
94
+ typeSelector,
95
+ react_1.default.createElement(material_1.FormGroup, null,
96
+ react_1.default.createElement(Schema, { schema: slot, path: __spreadArray(__spreadArray([], __read(path), false), [slotName], false) })))));
93
97
  }
94
-
95
- return /*#__PURE__*/_react.default.createElement(_core.Accordion, {
96
- defaultExpanded: true,
97
- className: classes.accordion,
98
- TransitionProps: {
99
- unmountOnExit: true,
100
- timeout: 150
101
- }
102
- }, /*#__PURE__*/_react.default.createElement(_core.AccordionSummary, {
103
- expandIcon: /*#__PURE__*/_react.default.createElement(_ExpandMore.default, {
104
- className: classes.expandIcon
105
- })
106
- }, /*#__PURE__*/_react.default.createElement(_core.Typography, null, [].concat((0, _toConsumableArray2.default)(path), [slotName]).join('🡒'))), /*#__PURE__*/_react.default.createElement(_core.AccordionDetails, {
107
- className: classes.expansionPanelDetails
108
- }, typeSelector, /*#__PURE__*/_react.default.createElement(_core.FormGroup, null, /*#__PURE__*/_react.default.createElement(Schema, {
109
- schema: slot,
110
- path: [].concat((0, _toConsumableArray2.default)(path), [slotName])
111
- }))));
112
- }
113
-
114
- if ((0, _configuration.isConfigurationSlotType)(slotSchema)) {
115
- // this is a regular config slot
116
- return /*#__PURE__*/_react.default.createElement(_SlotEditor.default, {
117
- key: slotName,
118
- slot: slot,
119
- slotSchema: slotSchema
120
- });
121
- }
122
-
123
- return null;
98
+ if ((0, configuration_1.isConfigurationSlotType)(slotSchema)) {
99
+ // this is a regular config slot
100
+ return react_1.default.createElement(SlotEditor_1.default, { key: slotName, slot: slot, slotSchema: slotSchema });
101
+ }
102
+ return null;
124
103
  });
125
- var Schema = (0, _mobxReact.observer)(function (_ref) {
126
- var schema = _ref.schema,
127
- _ref$path = _ref.path,
128
- path = _ref$path === void 0 ? [] : _ref$path;
129
- var properties = (0, _mobxStateTree.getMembers)(schema).properties;
130
- return Object.entries(properties).map(function (_ref2) {
131
- var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
132
- slotName = _ref3[0],
133
- slotSchema = _ref3[1];
134
-
135
- return /*#__PURE__*/_react.default.createElement(Member, {
136
- key: slotName,
137
- slotName: slotName,
138
- slotSchema: slotSchema,
139
- path: path,
140
- schema: schema
141
- });
142
- });
104
+ var Schema = (0, mobx_react_1.observer)(function (_a) {
105
+ var schema = _a.schema, _b = _a.path, path = _b === void 0 ? [] : _b;
106
+ var properties = (0, mobx_state_tree_1.getMembers)(schema).properties;
107
+ return (react_1.default.createElement(react_1.default.Fragment, null, Object.entries(properties).map(function (_a) {
108
+ var _b = __read(_a, 2), slotName = _b[0], slotSchema = _b[1];
109
+ return (react_1.default.createElement(Member, { key: slotName, slotName: slotName, slotSchema: slotSchema, path: path, schema: schema }));
110
+ })));
143
111
  });
144
- var ConfigurationEditor = (0, _mobxReact.observer)(function (_ref4) {
145
- var model = _ref4.model;
146
- var classes = useStyles(); // key forces a re-render, otherwise the same field can end up being used
147
- // for different tracks since only the backing model changes for example
148
- // see pr #804
149
-
150
- var key = model.target && (0, _configuration.readConfObject)(model.target, 'trackId');
151
- var name = model.target && (0, _configuration.readConfObject)(model.target, 'name');
152
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.Accordion, {
153
- key: key,
154
- defaultExpanded: true,
155
- className: classes.accordion,
156
- TransitionProps: {
157
- unmountOnExit: true,
158
- timeout: 150
159
- }
160
- }, /*#__PURE__*/_react.default.createElement(_core.AccordionSummary, {
161
- expandIcon: /*#__PURE__*/_react.default.createElement(_ExpandMore.default, {
162
- className: classes.expandIcon
163
- })
164
- }, /*#__PURE__*/_react.default.createElement(_core.Typography, null, name ? name : 'Configuration')), /*#__PURE__*/_react.default.createElement(_core.AccordionDetails, {
165
- className: classes.expansionPanelDetails,
166
- "data-testid": "configEditor"
167
- }, !model.target ? 'no target set' : /*#__PURE__*/_react.default.createElement(Schema, {
168
- schema: model.target
169
- }))), /*#__PURE__*/_react.default.createElement("div", {
170
- style: {
171
- height: 300
172
- }
173
- }));
112
+ var ConfigurationEditor = (0, mobx_react_1.observer)(function (_a) {
113
+ var model = _a.model;
114
+ var classes = useStyles().classes;
115
+ // key forces a re-render, otherwise the same field can end up being used
116
+ // for different tracks since only the backing model changes for example
117
+ // see pr #804
118
+ var target = model.target;
119
+ var key = target && (0, configuration_1.readConfObject)(target, 'trackId');
120
+ var name = target && (0, configuration_1.readConfObject)(target, 'name');
121
+ return (react_1.default.createElement(react_1.default.Fragment, null,
122
+ react_1.default.createElement(material_1.Accordion, { key: key, defaultExpanded: true, className: classes.accordion },
123
+ react_1.default.createElement(material_1.AccordionSummary, { expandIcon: react_1.default.createElement(ExpandMore_1.default, { className: classes.expandIcon }) },
124
+ react_1.default.createElement(material_1.Typography, null, name !== null && name !== void 0 ? name : 'Configuration')),
125
+ react_1.default.createElement(material_1.AccordionDetails, { className: classes.expansionPanelDetails, "data-testid": "configEditor" }, !target ? 'no target set' : react_1.default.createElement(Schema, { schema: target }))),
126
+ react_1.default.createElement("div", { style: { height: 300 } })));
174
127
  });
175
- var _default = ConfigurationEditor;
176
- exports.default = _default;
128
+ exports.default = ConfigurationEditor;
129
+ //# sourceMappingURL=ConfigurationEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigurationEditor.js","sourceRoot":"","sources":["../../../src/ConfigurationEditorWidget/components/ConfigurationEditor.tsx"],"names":[],"mappings":"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"}
@@ -1,82 +1,81 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
-
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
- var _react = _interopRequireWildcard(require("react"));
15
-
16
- var _util = require("@jbrowse/core/util");
17
-
18
- var _core = require("@material-ui/core");
19
-
20
- var _mobxReact = require("mobx-react");
21
-
22
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
-
24
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || (0, _typeof2.default)(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
-
26
- var useStyles = (0, _core.makeStyles)({
27
- error: {
28
- color: 'red',
29
- fontSize: '0.8em'
30
- }
31
- });
32
- var CodeEditor = /*#__PURE__*/(0, _react.lazy)(function () {
33
- return Promise.resolve().then(function () {
34
- return _interopRequireWildcard(require('./CodeEditor'));
35
- });
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
36
17
  });
37
-
38
- function JsonEditor(_ref) {
39
- var slot = _ref.slot;
40
- var classes = useStyles();
41
-
42
- var _useState = (0, _react.useState)(JSON.stringify(slot.value, null, ' ')),
43
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
44
- contents = _useState2[0],
45
- setContents = _useState2[1];
46
-
47
- var _useState3 = (0, _react.useState)(),
48
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
49
- error = _useState4[0],
50
- setError = _useState4[1];
51
-
52
- var debouncedJson = (0, _util.useDebounce)(contents, 400);
53
- (0, _react.useEffect)(function () {
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __read = (this && this.__read) || function (o, n) {
26
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
27
+ if (!m) return o;
28
+ var i = m.call(o), r, ar = [], e;
54
29
  try {
55
- slot.set(JSON.parse(debouncedJson));
56
- setError(undefined);
57
- } catch (e) {
58
- setError(e.message);
30
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
59
31
  }
60
- }, [debouncedJson, slot]);
61
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, error ? /*#__PURE__*/_react.default.createElement("p", {
62
- className: classes.error
63
- }, error) : null, /*#__PURE__*/_react.default.createElement(_core.FormControl, {
64
- error: error
65
- }, /*#__PURE__*/_react.default.createElement(_core.InputLabel, {
66
- shrink: true,
67
- htmlFor: "callback-editor"
68
- }, slot.name), /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
69
- fallback: /*#__PURE__*/_react.default.createElement("div", null)
70
- }, /*#__PURE__*/_react.default.createElement(CodeEditor, {
71
- contents: contents,
72
- setContents: setContents
73
- })), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description)));
32
+ catch (error) { e = { error: error }; }
33
+ finally {
34
+ try {
35
+ if (r && !r.done && (m = i["return"])) m.call(i);
36
+ }
37
+ finally { if (e) throw e.error; }
38
+ }
39
+ return ar;
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var react_1 = __importStar(require("react"));
43
+ var util_1 = require("@jbrowse/core/util");
44
+ var material_1 = require("@mui/material");
45
+ var mui_1 = require("tss-react/mui");
46
+ var mobx_react_1 = require("mobx-react");
47
+ var useStyles = (0, mui_1.makeStyles)()({
48
+ error: {
49
+ color: 'red',
50
+ fontSize: '0.8em',
51
+ },
52
+ });
53
+ var CodeEditor = (0, react_1.lazy)(function () { return Promise.resolve().then(function () { return __importStar(require('./CodeEditor')); }); });
54
+ function JsonEditor(_a) {
55
+ var slot = _a.slot;
56
+ var classes = useStyles().classes;
57
+ var _b = __read((0, react_1.useState)(JSON.stringify(slot.value, null, ' ')), 2), contents = _b[0], setContents = _b[1];
58
+ var _c = __read((0, react_1.useState)(), 2), error = _c[0], setError = _c[1];
59
+ var debouncedJson = (0, util_1.useDebounce)(contents, 400);
60
+ (0, react_1.useEffect)(function () {
61
+ try {
62
+ slot.set(JSON.parse(debouncedJson));
63
+ setError(undefined);
64
+ }
65
+ catch (e) {
66
+ setError(e.message);
67
+ }
68
+ }, [debouncedJson, slot]);
69
+ return (react_1.default.createElement(react_1.default.Fragment, null,
70
+ error ? react_1.default.createElement("p", { className: classes.error }, error) : null,
71
+ react_1.default.createElement(material_1.FormControl, { error: error },
72
+ react_1.default.createElement(material_1.InputLabel, { shrink: true, htmlFor: "callback-editor" }, slot.name),
73
+ react_1.default.createElement(react_1.default.Suspense, { fallback: react_1.default.createElement("div", null) },
74
+ react_1.default.createElement(CodeEditor, { contents: contents, setContents: setContents })),
75
+ react_1.default.createElement(material_1.FormHelperText, null, slot.description))));
74
76
  }
75
-
76
77
  JsonEditor.propTypes = {
77
- slot: _mobxReact.PropTypes.objectOrObservableObject.isRequired
78
+ slot: mobx_react_1.PropTypes.objectOrObservableObject.isRequired,
78
79
  };
79
-
80
- var _default = (0, _mobxReact.observer)(JsonEditor);
81
-
82
- exports.default = _default;
80
+ exports.default = (0, mobx_react_1.observer)(JsonEditor);
81
+ //# sourceMappingURL=JsonEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonEditor.js","sourceRoot":"","sources":["../../../src/ConfigurationEditorWidget/components/JsonEditor.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAwD;AACxD,2CAAgD;AAChD,0CAAuE;AACvE,qCAA0C;AAC1C,yCAAgD;AAChD,IAAM,SAAS,GAAG,IAAA,gBAAU,GAAE,CAAC;IAC7B,KAAK,EAAE;QACL,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;KAClB;CACF,CAAC,CAAA;AAEF,IAAM,UAAU,GAAG,IAAA,YAAI,EAAC,cAAM,wEAAO,cAAc,QAArB,CAAsB,CAAC,CAAA;AAErD,SAAS,UAAU,CAAC,EAAQ;QAAN,IAAI,UAAA;IAChB,IAAA,OAAO,GAAK,SAAS,EAAE,QAAhB,CAAgB;IACzB,IAAA,KAAA,OAA0B,IAAA,gBAAQ,EACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CACvC,IAAA,EAFM,QAAQ,QAAA,EAAE,WAAW,QAE3B,CAAA;IACK,IAAA,KAAA,OAAoB,IAAA,gBAAQ,GAAE,IAAA,EAA7B,KAAK,QAAA,EAAE,QAAQ,QAAc,CAAA;IACpC,IAAM,aAAa,GAAG,IAAA,kBAAW,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAEhD,IAAA,iBAAS,EAAC;QACR,IAAI;YACF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAA;YACnC,QAAQ,CAAC,SAAS,CAAC,CAAA;SACpB;QAAC,OAAO,CAAC,EAAE;YACV,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;SACpB;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAA;IAEzB,OAAO,CACL;QACG,KAAK,CAAC,CAAC,CAAC,qCAAG,SAAS,EAAE,OAAO,CAAC,KAAK,IAAG,KAAK,CAAK,CAAC,CAAC,CAAC,IAAI;QACxD,8BAAC,sBAAW,IAAC,KAAK,EAAE,KAAK;YACvB,8BAAC,qBAAU,IAAC,MAAM,QAAC,OAAO,EAAC,iBAAiB,IACzC,IAAI,CAAC,IAAI,CACC;YACb,8BAAC,eAAK,CAAC,QAAQ,IAAC,QAAQ,EAAE,0CAAO;gBAC/B,8BAAC,UAAU,IAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,GAAI,CAC7C;YACjB,8BAAC,yBAAc,QAAE,IAAI,CAAC,WAAW,CAAkB,CACvC,CACb,CACJ,CAAA;AACH,CAAC;AAED,UAAU,CAAC,SAAS,GAAG;IACrB,IAAI,EAAE,sBAAS,CAAC,wBAAwB,CAAC,UAAU;CACpD,CAAA;AAED,kBAAe,IAAA,qBAAQ,EAAC,UAAU,CAAC,CAAA"}
@@ -1,4 +1,14 @@
1
- export const useSlotEditorStyles: (props?: any) => import("@material-ui/styles").ClassNameMap<"paper" | "paperContent" | "slotModeSwitch">;
1
+ export const useSlotEditorStyles: (params: void, styleOverrides?: {
2
+ props: {
3
+ classes?: Record<string, string> | undefined;
4
+ } & Record<string, unknown>;
5
+ ownerState?: Record<string, unknown> | undefined;
6
+ } | undefined) => {
7
+ classes: Record<"paper" | "paperContent" | "slotModeSwitch", string>;
8
+ theme: import("@mui/material").Theme;
9
+ css: import("tss-react/types").Css;
10
+ cx: import("tss-react/types").Cx;
11
+ };
2
12
  export default SlotEditor;
3
13
  declare function SlotEditor({ slot, slotSchema }: {
4
14
  slot: any;