@jbrowse/plugin-config 1.7.7 → 1.7.10

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.
@@ -31,19 +31,22 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
31
31
  var fontSize = '12px'; // Optimize by using system default fonts: https://css-tricks.com/snippets/css/font-stacks/
32
32
 
33
33
  var fontFamily = 'Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace';
34
- var useStyles = (0, _core.makeStyles)({
35
- callbackEditor: {
36
- fontFamily: fontFamily,
37
- fontSize: fontSize,
38
- overflowX: 'auto',
39
- marginTop: '16px',
40
- borderBottom: '1px solid rgba(0,0,0,0.42)'
41
- },
42
- syntaxHighlighter: {
43
- margin: 0,
44
- fontFamily: fontFamily,
45
- fontSize: fontSize
46
- }
34
+ var useStyles = (0, _core.makeStyles)(function (theme) {
35
+ return {
36
+ callbackEditor: {
37
+ fontFamily: fontFamily,
38
+ fontSize: fontSize,
39
+ background: theme.palette.background.default,
40
+ overflowX: 'auto',
41
+ marginTop: '16px',
42
+ border: '1px solid rgba(0,0,0,0.42)'
43
+ },
44
+ syntaxHighlighter: {
45
+ margin: 0,
46
+ fontFamily: fontFamily,
47
+ fontSize: fontSize
48
+ }
49
+ };
47
50
  }); // eslint-disable-next-line react/prop-types
48
51
 
49
52
  function CodeEditor(_ref) {
@@ -11,6 +11,8 @@ exports.useSlotEditorStyles = exports.default = void 0;
11
11
 
12
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
13
 
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
+
14
16
  var _react = _interopRequireWildcard(require("react"));
15
17
 
16
18
  var _mobxReact = require("mobx-react");
@@ -29,6 +31,8 @@ var _Add = _interopRequireDefault(require("@material-ui/icons/Add"));
29
31
 
30
32
  var _RadioButtonUnchecked = _interopRequireDefault(require("@material-ui/icons/RadioButtonUnchecked"));
31
33
 
34
+ var _StringArrayEditor = _interopRequireDefault(require("./StringArrayEditor"));
35
+
32
36
  var _CallbackEditor = _interopRequireDefault(require("./CallbackEditor"));
33
37
 
34
38
  var _ColorEditor = _interopRequireDefault(require("./ColorEditor"));
@@ -41,13 +45,27 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
41
45
 
42
46
  // icons
43
47
  // locals
48
+ // adds ability to have html in helperText. note that FormHelperTextProps is
49
+ // div because the default is p which does not like div children
50
+ var MyTextField = function MyTextField(props) {
51
+ // eslint-disable-next-line react/prop-types
52
+ var helperText = props.helperText;
53
+ return /*#__PURE__*/_react.default.createElement(_core.TextField, (0, _extends2.default)({}, props, {
54
+ helperText: /*#__PURE__*/_react.default.createElement(_ui.SanitizedHTML, {
55
+ html: helperText
56
+ }),
57
+ FormHelperTextProps: {
58
+ component: 'div'
59
+ },
60
+ fullWidth: true
61
+ }));
62
+ };
63
+
44
64
  var StringEditor = (0, _mobxReact.observer)(function (_ref) {
45
65
  var slot = _ref.slot;
46
- return /*#__PURE__*/_react.default.createElement(_core.TextField, {
47
- label: slot.name // error={filterError}
48
- ,
66
+ return /*#__PURE__*/_react.default.createElement(MyTextField, {
67
+ label: slot.name,
49
68
  helperText: slot.description,
50
- fullWidth: true,
51
69
  value: slot.value,
52
70
  onChange: function onChange(evt) {
53
71
  return slot.set(evt.target.value);
@@ -59,7 +77,6 @@ var TextEditor = (0, _mobxReact.observer)(function (_ref2) {
59
77
  return /*#__PURE__*/_react.default.createElement(_core.TextField, {
60
78
  label: slot.name,
61
79
  helperText: slot.description,
62
- fullWidth: true,
63
80
  multiline: true,
64
81
  value: slot.value,
65
82
  onChange: function onChange(evt) {
@@ -74,59 +91,6 @@ var SvgCheckbox = function SvgCheckbox() {
74
91
  }));
75
92
  };
76
93
 
77
- var StringArrayEditor = (0, _mobxReact.observer)(function (_ref3) {
78
- var slot = _ref3.slot;
79
-
80
- var _useState = (0, _react.useState)(''),
81
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
82
- value = _useState2[0],
83
- setValue = _useState2[1];
84
-
85
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, slot.name ? /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name) : null, /*#__PURE__*/_react.default.createElement(_core.List, {
86
- disablePadding: true
87
- }, slot.value.map(function (val, idx) {
88
- return /*#__PURE__*/_react.default.createElement(_core.ListItem, {
89
- key: idx,
90
- disableGutters: true
91
- }, /*#__PURE__*/_react.default.createElement(_core.TextField, {
92
- value: val,
93
- onChange: function onChange(evt) {
94
- return slot.setAtIndex(idx, evt.target.value);
95
- },
96
- InputProps: {
97
- endAdornment: /*#__PURE__*/_react.default.createElement(_core.InputAdornment, {
98
- position: "end"
99
- }, /*#__PURE__*/_react.default.createElement(_core.IconButton, {
100
- color: "secondary",
101
- onClick: function onClick() {
102
- return slot.removeAtIndex(idx);
103
- }
104
- }, /*#__PURE__*/_react.default.createElement(_Delete.default, null)))
105
- }
106
- }));
107
- }), /*#__PURE__*/_react.default.createElement(_core.ListItem, {
108
- disableGutters: true
109
- }, /*#__PURE__*/_react.default.createElement(_core.TextField, {
110
- value: value,
111
- placeholder: "add new",
112
- onChange: function onChange(event) {
113
- return setValue(event.target.value);
114
- },
115
- InputProps: {
116
- endAdornment: /*#__PURE__*/_react.default.createElement(_core.InputAdornment, {
117
- position: "end"
118
- }, /*#__PURE__*/_react.default.createElement(_core.IconButton, {
119
- onClick: function onClick() {
120
- slot.add(value);
121
- setValue('');
122
- },
123
- disabled: value === '',
124
- color: "secondary",
125
- "data-testid": "stringArrayAdd-".concat(slot.name)
126
- }, /*#__PURE__*/_react.default.createElement(_Add.default, null)))
127
- }
128
- }))), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description));
129
- });
130
94
  var useMapEditorStyles = (0, _core.makeStyles)(function (theme) {
131
95
  return {
132
96
  card: {
@@ -134,19 +98,19 @@ var useMapEditorStyles = (0, _core.makeStyles)(function (theme) {
134
98
  }
135
99
  };
136
100
  });
137
- var StringArrayMapEditor = (0, _mobxReact.observer)(function (_ref4) {
138
- var slot = _ref4.slot;
101
+ var StringArrayMapEditor = (0, _mobxReact.observer)(function (_ref3) {
102
+ var slot = _ref3.slot;
139
103
  var classes = useMapEditorStyles();
140
104
 
141
- var _useState3 = (0, _react.useState)(''),
142
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
143
- value = _useState4[0],
144
- setValue = _useState4[1];
105
+ var _useState = (0, _react.useState)(''),
106
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
107
+ value = _useState2[0],
108
+ setValue = _useState2[1];
145
109
 
146
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name), Array.from(slot.value, function (_ref5) {
147
- var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
148
- key = _ref6[0],
149
- val = _ref6[1];
110
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name), Array.from(slot.value, function (_ref4) {
111
+ var _ref5 = (0, _slicedToArray2.default)(_ref4, 2),
112
+ key = _ref5[0],
113
+ val = _ref5[1];
150
114
 
151
115
  return /*#__PURE__*/_react.default.createElement(_core.Card, {
152
116
  raised: true,
@@ -160,7 +124,7 @@ var StringArrayMapEditor = (0, _mobxReact.observer)(function (_ref4) {
160
124
  return slot.remove(key);
161
125
  }
162
126
  }, /*#__PURE__*/_react.default.createElement(_Delete.default, null))
163
- }), /*#__PURE__*/_react.default.createElement(_core.CardContent, null, /*#__PURE__*/_react.default.createElement(StringArrayEditor, {
127
+ }), /*#__PURE__*/_react.default.createElement(_core.CardContent, null, /*#__PURE__*/_react.default.createElement(_StringArrayEditor.default, {
164
128
  slot: {
165
129
  value: val,
166
130
  description: "Values associated with entry ".concat(key),
@@ -202,19 +166,19 @@ var StringArrayMapEditor = (0, _mobxReact.observer)(function (_ref4) {
202
166
  })
203
167
  })), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description));
204
168
  });
205
- var NumberMapEditor = (0, _mobxReact.observer)(function (_ref7) {
206
- var slot = _ref7.slot;
169
+ var NumberMapEditor = (0, _mobxReact.observer)(function (_ref6) {
170
+ var slot = _ref6.slot;
207
171
  var classes = useMapEditorStyles();
208
172
 
209
- var _useState5 = (0, _react.useState)(''),
210
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
211
- value = _useState6[0],
212
- setValue = _useState6[1];
173
+ var _useState3 = (0, _react.useState)(''),
174
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
175
+ value = _useState4[0],
176
+ setValue = _useState4[1];
213
177
 
214
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name), Array.from(slot.value, function (_ref8) {
215
- var _ref9 = (0, _slicedToArray2.default)(_ref8, 2),
216
- key = _ref9[0],
217
- val = _ref9[1];
178
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name), Array.from(slot.value, function (_ref7) {
179
+ var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
180
+ key = _ref8[0],
181
+ val = _ref8[1];
218
182
 
219
183
  return /*#__PURE__*/_react.default.createElement(_core.Card, {
220
184
  raised: true,
@@ -263,13 +227,13 @@ var NumberMapEditor = (0, _mobxReact.observer)(function (_ref7) {
263
227
  })
264
228
  })), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description));
265
229
  });
266
- var NumberEditor = (0, _mobxReact.observer)(function (_ref10) {
267
- var slot = _ref10.slot;
230
+ var NumberEditor = (0, _mobxReact.observer)(function (_ref9) {
231
+ var slot = _ref9.slot;
268
232
 
269
- var _useState7 = (0, _react.useState)(slot.value),
270
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
271
- val = _useState8[0],
272
- setVal = _useState8[1];
233
+ var _useState5 = (0, _react.useState)(slot.value),
234
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
235
+ val = _useState6[0],
236
+ setVal = _useState6[1];
273
237
 
274
238
  (0, _react.useEffect)(function () {
275
239
  var num = parseFloat(val, 10);
@@ -280,7 +244,7 @@ var NumberEditor = (0, _mobxReact.observer)(function (_ref10) {
280
244
  slot.reset();
281
245
  }
282
246
  }, [slot, val]);
283
- return /*#__PURE__*/_react.default.createElement(_core.TextField, {
247
+ return /*#__PURE__*/_react.default.createElement(MyTextField, {
284
248
  label: slot.name,
285
249
  helperText: slot.description,
286
250
  value: val,
@@ -290,13 +254,13 @@ var NumberEditor = (0, _mobxReact.observer)(function (_ref10) {
290
254
  }
291
255
  });
292
256
  });
293
- var IntegerEditor = (0, _mobxReact.observer)(function (_ref11) {
294
- var slot = _ref11.slot;
257
+ var IntegerEditor = (0, _mobxReact.observer)(function (_ref10) {
258
+ var slot = _ref10.slot;
295
259
 
296
- var _useState9 = (0, _react.useState)(slot.value),
297
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
298
- val = _useState10[0],
299
- setVal = _useState10[1];
260
+ var _useState7 = (0, _react.useState)(slot.value),
261
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
262
+ val = _useState8[0],
263
+ setVal = _useState8[1];
300
264
 
301
265
  (0, _react.useEffect)(function () {
302
266
  var num = parseInt(val, 10);
@@ -305,7 +269,7 @@ var IntegerEditor = (0, _mobxReact.observer)(function (_ref11) {
305
269
  slot.set(num);
306
270
  }
307
271
  }, [slot, val]);
308
- return /*#__PURE__*/_react.default.createElement(_core.TextField, {
272
+ return /*#__PURE__*/_react.default.createElement(MyTextField, {
309
273
  label: slot.name,
310
274
  helperText: slot.description,
311
275
  value: val,
@@ -315,8 +279,8 @@ var IntegerEditor = (0, _mobxReact.observer)(function (_ref11) {
315
279
  }
316
280
  });
317
281
  });
318
- var booleanEditor = (0, _mobxReact.observer)(function (_ref12) {
319
- var slot = _ref12.slot;
282
+ var BooleanEditor = (0, _mobxReact.observer)(function (_ref11) {
283
+ var slot = _ref11.slot;
320
284
  return /*#__PURE__*/_react.default.createElement(_core.FormControl, null, /*#__PURE__*/_react.default.createElement(_core.FormControlLabel, {
321
285
  label: slot.name,
322
286
  control: /*#__PURE__*/_react.default.createElement(_core.Checkbox, {
@@ -327,20 +291,18 @@ var booleanEditor = (0, _mobxReact.observer)(function (_ref12) {
327
291
  })
328
292
  }), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description));
329
293
  });
330
- var stringEnumEditor = (0, _mobxReact.observer)(function (_ref13) {
331
- var slot = _ref13.slot,
332
- slotSchema = _ref13.slotSchema;
294
+ var StringEnumEditor = (0, _mobxReact.observer)(function (_ref12) {
295
+ var slot = _ref12.slot,
296
+ slotSchema = _ref12.slotSchema;
333
297
  var p = (0, _mobxStateTree.getPropertyMembers)((0, _mstReflection.getSubType)(slotSchema));
334
298
  var choices = (0, _mstReflection.getUnionSubTypes)((0, _mstReflection.getUnionSubTypes)((0, _mstReflection.getSubType)((0, _mstReflection.getPropertyType)(p, 'value')))[1]).map(function (t) {
335
299
  return t.value;
336
300
  });
337
- return /*#__PURE__*/_react.default.createElement(_core.TextField, {
301
+ return /*#__PURE__*/_react.default.createElement(MyTextField, {
338
302
  value: slot.value,
339
303
  label: slot.name,
340
- select: true // error={filterError}
341
- ,
304
+ select: true,
342
305
  helperText: slot.description,
343
- fullWidth: true,
344
306
  onChange: function onChange(evt) {
345
307
  return slot.set(evt.target.value);
346
308
  }
@@ -351,10 +313,10 @@ var stringEnumEditor = (0, _mobxReact.observer)(function (_ref13) {
351
313
  }, str);
352
314
  }));
353
315
  });
354
- var FileSelectorWrapper = (0, _mobxReact.observer)(function (_ref14) {
316
+ var FileSelectorWrapper = (0, _mobxReact.observer)(function (_ref13) {
355
317
  var _getEnv$pluginManager;
356
318
 
357
- var slot = _ref14.slot;
319
+ var slot = _ref13.slot;
358
320
  return /*#__PURE__*/_react.default.createElement(_ui.FileSelector, {
359
321
  location: slot.value,
360
322
  setLocation: function setLocation(location) {
@@ -369,14 +331,14 @@ var valueComponents = {
369
331
  string: StringEditor,
370
332
  text: TextEditor,
371
333
  fileLocation: FileSelectorWrapper,
372
- stringArray: StringArrayEditor,
334
+ stringArray: _StringArrayEditor.default,
373
335
  stringArrayMap: StringArrayMapEditor,
374
336
  numberMap: NumberMapEditor,
375
337
  number: NumberEditor,
376
338
  integer: IntegerEditor,
377
339
  color: _ColorEditor.default,
378
- stringEnum: stringEnumEditor,
379
- boolean: booleanEditor,
340
+ stringEnum: StringEnumEditor,
341
+ boolean: BooleanEditor,
380
342
  frozen: _JsonEditor.default,
381
343
  configRelationships: _JsonEditor.default
382
344
  };
@@ -400,9 +362,9 @@ var useSlotEditorStyles = (0, _core.makeStyles)(function (theme) {
400
362
  };
401
363
  });
402
364
  exports.useSlotEditorStyles = useSlotEditorStyles;
403
- var SlotEditor = (0, _mobxReact.observer)(function (_ref15) {
404
- var slot = _ref15.slot,
405
- slotSchema = _ref15.slotSchema;
365
+ var SlotEditor = (0, _mobxReact.observer)(function (_ref14) {
366
+ var slot = _ref14.slot,
367
+ slotSchema = _ref14.slotSchema;
406
368
  var classes = useSlotEditorStyles();
407
369
  var type = slot.type;
408
370
  var ValueComponent = slot.isCallback ? _CallbackEditor.default : valueComponents[type];
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ declare const StringArrayEditor: ({ slot, }: {
3
+ slot: {
4
+ name: string;
5
+ value: string[];
6
+ setAtIndex: Function;
7
+ removeAtIndex: Function;
8
+ add: Function;
9
+ description: string;
10
+ };
11
+ }) => JSX.Element;
12
+ export default StringArrayEditor;
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _mobxReact = require("mobx-react");
17
+
18
+ var _core = require("@material-ui/core");
19
+
20
+ var _Delete = _interopRequireDefault(require("@material-ui/icons/Delete"));
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 || _typeof(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
+ // icons
27
+ var StringArrayEditor = (0, _mobxReact.observer)(function (_ref) {
28
+ var slot = _ref.slot;
29
+
30
+ var _useState = (0, _react.useState)(''),
31
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
32
+ value = _useState2[0],
33
+ setValue = _useState2[1];
34
+
35
+ var _useState3 = (0, _react.useState)(false),
36
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
37
+ addNew = _useState4[0],
38
+ setAddNew = _useState4[1];
39
+
40
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, slot.name ? /*#__PURE__*/_react.default.createElement(_core.InputLabel, null, slot.name) : null, /*#__PURE__*/_react.default.createElement(_core.List, {
41
+ disablePadding: true
42
+ }, slot.value.map(function (val, idx) {
43
+ return /*#__PURE__*/_react.default.createElement(_core.ListItem, {
44
+ key: idx,
45
+ disableGutters: true
46
+ }, /*#__PURE__*/_react.default.createElement(_core.TextField, {
47
+ value: val,
48
+ onChange: function onChange(evt) {
49
+ return slot.setAtIndex(idx, evt.target.value);
50
+ },
51
+ InputProps: {
52
+ endAdornment: /*#__PURE__*/_react.default.createElement(_core.InputAdornment, {
53
+ position: "end"
54
+ }, /*#__PURE__*/_react.default.createElement(_core.IconButton, {
55
+ color: "secondary",
56
+ onClick: function onClick() {
57
+ return slot.removeAtIndex(idx);
58
+ }
59
+ }, /*#__PURE__*/_react.default.createElement(_Delete.default, null)))
60
+ }
61
+ }));
62
+ }), addNew ? /*#__PURE__*/_react.default.createElement(_core.ListItem, {
63
+ disableGutters: true
64
+ }, /*#__PURE__*/_react.default.createElement(_core.TextField, {
65
+ value: value,
66
+ placeholder: "add new",
67
+ onChange: function onChange(event) {
68
+ return setValue(event.target.value);
69
+ },
70
+ InputProps: {
71
+ endAdornment: /*#__PURE__*/_react.default.createElement(_core.InputAdornment, {
72
+ position: "end"
73
+ }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_core.Button, {
74
+ color: "primary",
75
+ variant: "contained",
76
+ style: {
77
+ margin: 2
78
+ },
79
+ "data-testid": "stringArrayAdd-".concat(slot.name),
80
+ onClick: function onClick() {
81
+ setAddNew(false);
82
+ slot.add(value);
83
+ setValue('');
84
+ }
85
+ }, "OK"), /*#__PURE__*/_react.default.createElement(_core.Button, {
86
+ color: "primary",
87
+ variant: "contained",
88
+ style: {
89
+ margin: 2
90
+ },
91
+ onClick: function onClick() {
92
+ setAddNew(false);
93
+ setValue('');
94
+ }
95
+ }, "Cancel")))
96
+ }
97
+ })) : null, /*#__PURE__*/_react.default.createElement(_core.Button, {
98
+ color: "primary",
99
+ variant: "contained",
100
+ style: {
101
+ margin: 4
102
+ },
103
+ disabled: addNew,
104
+ onClick: function onClick() {
105
+ return setAddNew(true);
106
+ }
107
+ }, "Add item")), /*#__PURE__*/_react.default.createElement(_core.FormHelperText, null, slot.description));
108
+ });
109
+ var _default = StringArrayEditor;
110
+ exports.default = _default;
@@ -26,7 +26,7 @@ exports.configSchema = configSchema;
26
26
  var HeadingComponent = (0, _mobxReact.observer)(function (_ref) {
27
27
  var model = _ref.model;
28
28
 
29
- if (model && model.target) {
29
+ if (model !== null && model !== void 0 && model.target) {
30
30
  if (model.target.type) {
31
31
  return "".concat(model.target.type, " settings");
32
32
  }
@@ -34,7 +34,7 @@ var HeadingComponent = (0, _mobxReact.observer)(function (_ref) {
34
34
  if ((0, _mobxStateTree.isStateTreeNode)(model.target)) {
35
35
  var type = (0, _mobxStateTree.getType)(model.target);
36
36
 
37
- if (type && type.name) {
37
+ if (type !== null && type !== void 0 && type.name) {
38
38
  return "".concat(type.name.replace('ConfigurationSchema', ''), " settings");
39
39
  }
40
40
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-config",
3
- "version": "1.7.7",
3
+ "version": "1.7.10",
4
4
  "description": "JBrowse 2 config utilities",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -53,5 +53,5 @@
53
53
  "publishConfig": {
54
54
  "access": "public"
55
55
  },
56
- "gitHead": "2c26e04ae942c380bf2f5b79ef7a49cc32b7bfed"
56
+ "gitHead": "02d8c1e88e5603ea5855faed4ccb814e28071b32"
57
57
  }
@@ -12,20 +12,21 @@ const fontSize = '12px'
12
12
  const fontFamily =
13
13
  'Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace'
14
14
 
15
- const useStyles = makeStyles({
15
+ const useStyles = makeStyles(theme => ({
16
16
  callbackEditor: {
17
17
  fontFamily,
18
18
  fontSize,
19
+ background: theme.palette.background.default,
19
20
  overflowX: 'auto',
20
21
  marginTop: '16px',
21
- borderBottom: '1px solid rgba(0,0,0,0.42)',
22
+ border: '1px solid rgba(0,0,0,0.42)',
22
23
  },
23
24
  syntaxHighlighter: {
24
25
  margin: 0,
25
26
  fontFamily,
26
27
  fontSize,
27
28
  },
28
- })
29
+ }))
29
30
 
30
31
  // eslint-disable-next-line react/prop-types
31
32
  export default function CodeEditor({ contents, setContents }) {