@jupyterlab/settingeditor 4.0.0-alpha.4 → 4.0.0-alpha.5

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.
package/style/base.css CHANGED
@@ -10,20 +10,25 @@
10
10
  --jp-private-settingeditor-row-height: 16px;
11
11
  --jp-private-settingeditor-toolbar-height: 28px;
12
12
  --jp-private-settingeditor-type-width: 75px;
13
+ --jp-private-settingeditor-modifier-indent: 5px;
13
14
  }
14
15
 
15
- #setting-editor {
16
+ .jp-SettingsPanel,
17
+ #json-setting-editor {
16
18
  min-width: 360px;
17
19
  min-height: 240px;
18
20
  background-color: var(--jp-layout-color0);
19
21
  margin-top: -1px;
20
22
  outline: none;
23
+ color: var(--jp-content-font-color1) !important;
24
+
21
25
  /* This is needed so that all font sizing of children done in ems is
22
26
  * relative to this base size */
23
27
  font-size: var(--jp-ui-font-size1);
24
28
  }
25
29
 
26
- #setting-editor > .lm-Widget {
30
+ #setting-editor > .lm-Widget,
31
+ #json-setting-editor > .lm-Widget {
27
32
  position: absolute;
28
33
  top: 0;
29
34
  bottom: 0;
@@ -31,22 +36,23 @@
31
36
  right: 0;
32
37
  }
33
38
 
34
- #setting-editor .lm-SplitPanel-handle {
39
+ #setting-editor .lm-SplitPanel-handle,
40
+ #json-setting-editor .lm-SplitPanel-handle {
35
41
  background-color: var(--jp-border-color2);
36
42
  }
37
43
 
38
- #setting-editor .jp-SettingEditorInstructions {
44
+ #json-setting-editor .jp-SettingEditorInstructions {
39
45
  text-align: center;
40
46
  }
41
47
 
42
- #setting-editor .jp-SettingEditorInstructions-icon {
48
+ #json-setting-editor .jp-SettingEditorInstructions-icon {
43
49
  display: inline-block;
44
50
  height: 78px;
45
51
  margin: 2px 5px 2px 8px;
46
52
  width: 60px;
47
53
  }
48
54
 
49
- #setting-editor .jp-SettingEditorInstructions-title {
55
+ #json-setting-editor .jp-SettingEditorInstructions-title {
50
56
  color: var(--jp-ui-font-color0);
51
57
  font-size: 32px;
52
58
  font-weight: 200;
@@ -54,88 +60,136 @@
54
60
  vertical-align: top;
55
61
  }
56
62
 
57
- #setting-editor .jp-SettingEditorInstructions-text {
63
+ #json-setting-editor .jp-SettingEditorInstructions-text {
58
64
  color: var(--jp-ui-font-color0);
59
65
  font-size: var(--jp-ui-font-size2);
60
66
  }
61
67
 
62
- #setting-editor .jp-PluginList {
68
+ .jp-PluginList {
63
69
  min-width: 175px;
64
70
  max-width: 275px;
71
+ background-color: var(--jp-layout-color2);
72
+ }
73
+
74
+ .jp-PluginList-wrapper {
75
+ overflow-y: auto;
76
+ height: 100%;
65
77
  }
66
78
 
67
- #setting-editor .jp-PluginList ul {
68
- background-color: var(--jp-layout-color1);
79
+ .jp-PluginList ul {
69
80
  color: var(--jp-ui-font-color1);
70
81
  font-size: var(--jp-ui-font-size1);
71
82
  list-style-type: none;
72
83
  margin: 0;
73
84
  padding: 0;
74
85
  overflow-y: auto;
75
- position: absolute;
86
+ position: relative;
76
87
  top: 0;
77
88
  bottom: 0;
78
89
  left: 0;
79
90
  right: 0;
80
91
  }
81
92
 
82
- #setting-editor .jp-PluginList li {
93
+ .jp-PluginList .jp-SettingsHeader {
83
94
  display: flex;
84
- flex-direction: row;
85
- border: 1px solid transparent;
86
- overflow: hidden;
87
- padding: 4px 0 4px 4px;
88
- text-overflow: ellipsis;
95
+ flex-basis: 100%;
96
+ }
97
+
98
+ .jp-PluginList .jp-SettingsHeader button {
99
+ color: var(--jp-private-notebook-selected-color);
89
100
  white-space: nowrap;
90
101
  }
91
102
 
92
- #setting-editor .jp-PluginList li:hover {
93
- background-color: var(--jp-layout-color2);
94
- border: 1px solid var(--jp-border-color2);
103
+ .jp-PluginList .jp-PluginList-header {
104
+ flex: 0 0 auto;
105
+ font-weight: 600;
106
+ text-transform: uppercase;
107
+ letter-spacing: 1px;
108
+ font-size: var(--jp-ui-font-size0);
109
+ padding: 8px 8px 8px 12px;
110
+ margin: 10px;
111
+ border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
112
+ border-top: var(--jp-border-width) solid var(--jp-border-color2);
113
+ color: var(--jp-content-font-color1);
95
114
  }
96
115
 
97
- #setting-editor .jp-PluginList li.jp-mod-selected {
116
+ .jp-PluginList .jp-SelectedIndicator {
117
+ width: 3px;
98
118
  background-color: var(--jp-brand-color1);
99
- color: white;
100
- border: 1px solid var(--jp-brand-color1);
119
+ height: var(--jp-cell-collapser-min-height);
101
120
  }
102
121
 
103
- #setting-editor
104
- ul.jp-PluginList
105
- li.jp-mod-selected
106
- span.jp-PluginList-icon.jp-FileIcon {
122
+ .jp-PluginList .jp-ErrorPlugin .jp-SelectedIndicator {
123
+ background-color: var(--jp-error-color0);
124
+ }
125
+
126
+ .jp-PluginList button.jp-mod-selected.jp-ErrorPlugin span {
127
+ color: var(--jp-error-color0);
128
+ }
129
+
130
+ .jp-PluginList button:not(.jp-mod-selected) {
131
+ margin-left: 3px;
132
+ }
133
+
134
+ .jp-PluginList button.jp-mod-selected span {
135
+ font-weight: var(--jp-content-heading-font-weight);
136
+ color: var(--jp-brand-color1);
137
+ }
138
+
139
+ .jp-PluginList button span {
140
+ color: var(--jp-content-font-color1);
141
+ line-height: var(--jp-cell-collapser-min-height);
142
+ }
143
+
144
+ .jp-FormComponent li span {
145
+ overflow: hidden;
146
+ }
147
+
148
+ .jp-SettingEditor-header {
149
+ font-size: var(--jp-content-font-size4);
150
+ font-weight: var(--jp-content-heading-font-weight);
151
+ color: var(--jp-ui-font-color0);
152
+ padding: 20px 0 10px 20px;
153
+ border-bottom: 1px solid var(--jp-border-color2);
154
+ position: sticky;
155
+ top: 0;
156
+ z-index: 999;
157
+ background-color: var(--jp-layout-color0);
158
+ }
159
+
160
+ .jp-PluginList-Searcher {
161
+ margin: 5px;
162
+ }
163
+
164
+ ul.jp-PluginList li.jp-mod-selected span.jp-PluginList-icon.jp-FileIcon {
107
165
  background-image: var(--jp-icon-file-selected);
108
166
  }
109
167
 
110
- #setting-editor .jp-PluginList-icon {
111
- display: inline-block;
168
+ .jp-PluginList-icon {
169
+ display: flex;
112
170
  height: 20px;
113
171
  width: 20px;
114
172
  margin-right: 3px;
115
173
  position: relative;
116
174
  }
117
175
 
118
- #setting-editor .jp-SettingsRawEditor .jp-Toolbar {
176
+ .jp-SettingsRawEditor .jp-Toolbar {
119
177
  color: var(--jp-ui-font-color0);
120
178
  font-size: var(--jp-ui-font-size1);
121
179
  height: var(--jp-private-settingeditor-toolbar-height);
122
180
  max-height: var(--jp-private-settingeditor-toolbar-height);
123
181
  }
124
182
 
125
- #setting-editor
126
- .jp-SettingsRawEditor
127
- .jp-Toolbar
128
- .jp-ToolbarButtonComponent-label {
183
+ .jp-SettingsRawEditor .jp-Toolbar .jp-ToolbarButtonComponent-label {
129
184
  display: none;
130
185
  }
131
186
 
132
- #setting-editor .jp-SettingsRawEditor .jp-Toolbar-item {
187
+ .jp-SettingsRawEditor .jp-Toolbar-item {
133
188
  margin-top: 1px;
134
189
  align-items: center;
135
190
  }
136
191
 
137
192
  .jp-ToolbarButtonComponent-label
138
- #setting-editor
139
193
  .jp-SettingsRawEditor.jp-mod-error
140
194
  .jp-Toolbar-item.jp-BugIcon::after {
141
195
  color: red;
@@ -148,96 +202,320 @@
148
202
  left: 6px;
149
203
  }
150
204
 
151
- #setting-editor .jp-SettingsRawEditor .jp-Inspector {
205
+ .jp-SettingsRawEditor .jp-Inspector {
152
206
  border-top: 2px solid var(--jp-layout-color2);
153
207
  min-height: var(--jp-private-settingeditor-debug-height);
154
208
  max-height: var(--jp-private-settingeditor-debug-height);
155
209
  }
156
210
 
157
- #setting-editor
158
- .jp-SettingsRawEditor
159
- .jp-Inspector.jp-SettingsDebug
160
- .jp-RenderedHTMLCommon {
211
+ .jp-SettingsRawEditor .jp-Inspector.jp-SettingsDebug .jp-RenderedHTMLCommon {
161
212
  padding: 2px 5px 2px 0;
162
213
  width: 100%;
163
214
  }
164
215
 
165
- #setting-editor
166
- .jp-SettingsRawEditor
167
- .jp-Inspector.jp-SettingsDebug
168
- .jp-RenderedHTMLCommon
169
- p {
216
+ .jp-SettingsRawEditor .jp-Inspector.jp-SettingsDebug .jp-RenderedHTMLCommon p {
170
217
  text-align: right;
171
218
  }
172
219
 
173
- #setting-editor .jp-SettingsTableEditor {
174
- border: 1px solid var(--jp-brand-color1);
175
- margin: 0;
220
+ .jp-SettingsPanel fieldset input,
221
+ .jp-SettingsPanel fieldset select,
222
+ .jp-SettingsPanel fieldset textarea {
223
+ font-size: var(--jp-content-font-size2);
224
+ border-color: var(--jp-input-border-color);
225
+ border-style: solid;
226
+ border-radius: 5px;
227
+ border-width: 1px;
228
+ padding: 6px 8px;
229
+ background: none;
230
+ color: var(--jp-content-font-color0);
231
+ height: inherit;
232
+ }
233
+
234
+ .jp-SettingsPanel fieldset input[type='checkbox'] {
235
+ position: relative;
236
+ top: 2px;
237
+ margin-left: 0;
238
+ }
239
+
240
+ /** copy of `input.jp-mod-styled:focus` style */
241
+ .jp-SettingsPanel fieldset input:focus {
242
+ border: var(--jp-border-width) solid var(--md-blue-500);
243
+ box-shadow: inset 0 0 4px var(--md-blue-300);
244
+ }
245
+
246
+ .jp-SettingsPanel .checkbox label {
247
+ cursor: pointer;
248
+ }
249
+
250
+ .jp-SettingsPanel .checkbox .field-description {
251
+ /* Disable default description field for checkbox:
252
+ because other widgets do not have description fields,
253
+ we add descriptions to each widget on the field level.
254
+ */
255
+ display: none;
256
+ }
257
+
258
+ .jp-SettingsPanel button[type='submit'] {
259
+ display: none;
260
+ }
261
+
262
+ .jp-SettingsPanel .form-group {
263
+ display: flex;
264
+ padding: 4px 8px 4px var(--jp-private-settingeditor-modifier-indent);
265
+ margin-top: 5px;
266
+ }
267
+
268
+ .jp-SettingsPanel .jp-objectFieldWrapper .form-group {
269
+ padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
270
+ margin-top: 2px;
271
+ }
272
+
273
+ .jp-ArrayOperations {
274
+ margin-left: 8px;
275
+ }
276
+
277
+ .jp-SettingsPanel .jp-FormGroup-content {
278
+ display: flex;
279
+ align-items: center;
280
+ flex-wrap: wrap;
281
+ }
282
+
283
+ .jp-SettingsPanel .jp-FormGroup-contentItem {
284
+ margin-left: 7px;
285
+ }
286
+
287
+ .jp-SettingsPanel .jp-FormGroup-description {
288
+ flex-basis: 100%;
289
+ padding: 4px 7px;
290
+ }
291
+
292
+ .jp-SettingsPanel #root__description {
293
+ display: none;
294
+ }
295
+
296
+ .jp-SettingsPanel fieldset {
297
+ border: none;
176
298
  padding: 0;
177
299
  }
178
300
 
179
- #setting-editor .jp-SettingsTableEditor legend {
301
+ .jp-SettingsPanel fieldset:not(:first-child) {
302
+ margin-left: 7px;
303
+ }
304
+
305
+ .jp-SettingsPanel .jp-SaveSettingsBanner {
306
+ position: absolute;
307
+ bottom: 0;
308
+ padding: 20px;
309
+ width: 100%;
310
+ background: var(--jp-border-color3);
311
+ }
312
+
313
+ .jp-SettingsPanel .jp-SaveSettingsBanner button {
314
+ box-shadow: none;
315
+ outline: none;
316
+ border: none;
180
317
  color: var(--jp-brand-color1);
181
- font-size: 70%;
182
- font-weight: bold;
183
- margin-left: 15px;
184
- height: var(--jp-private-settingeditor-legend-height);
318
+ font-size: var(--jp-ui-font-size1);
319
+ cursor: pointer;
320
+ }
321
+
322
+ .jp-SettingsPanel .jp-SaveSettingsBanner button:hover {
323
+ color: var(--jp-brand-color0);
324
+ }
325
+
326
+ .jp-SettingsPanel .form-group.small-field:hover {
327
+ background: var(--jp-border-color3);
328
+ }
329
+
330
+ .jp-SettingsPanel button.jp-mod-styled {
331
+ cursor: pointer;
185
332
  }
186
333
 
187
- #setting-editor .jp-SettingsTableEditor-wrapper {
334
+ .jp-SettingsPanel button.jp-mod-styled:disabled {
335
+ cursor: not-allowed;
336
+ opacity: 0.5;
337
+ }
338
+
339
+ .jp-SettingsPanel .array-item button {
340
+ margin: 2px;
341
+ }
342
+
343
+ .jp-openJSONSettingsEditor {
188
344
  position: absolute;
189
- top: var(--jp-private-settingeditor-legend-height);
190
345
  bottom: 0;
191
- overflow-y: auto;
346
+ left: 0;
347
+ }
348
+
349
+ .jp-openJSONSettingsEditor button {
350
+ border: 1px solid var(--jp-border-color1);
351
+ color: var(--jp-ui-font-color0);
352
+ padding: 5px;
353
+ margin: 5px;
354
+ cursor: pointer;
355
+ background-color: var(--jp-border-color2);
356
+ display: flex;
357
+ align-items: center;
192
358
  }
193
359
 
194
- #setting-editor .jp-SettingsTableEditor table {
195
- table-layout: fixed;
360
+ .jp-openJSONSettingsEditor button > div {
361
+ display: flex;
362
+ }
363
+
364
+ .jp-openJSONSettingsEditor svg#icon {
365
+ height: 1.5em;
366
+ }
367
+
368
+ .jp-SettingsPanel .array-item {
369
+ border: 1px solid var(--jp-border-color2);
370
+ border-radius: 4px;
371
+ margin: 4px;
372
+ }
373
+
374
+ .jp-SettingsPanel .field-array-of-string .array-item {
375
+ /* Display `jp-ArrayOperations` buttons side-by-side with content except
376
+ for small screens where flex-wrap will place them one below the other.
377
+ */
378
+ display: flex;
379
+ align-items: center;
380
+ flex-wrap: wrap;
381
+ }
382
+
383
+ .jp-SettingsPanel .jp-root > fieldset > legend {
384
+ display: none;
385
+ }
386
+
387
+ .jp-SettingsPanel .jp-root > fieldset > p {
388
+ display: none;
389
+ }
390
+
391
+ .jp-SettingsPanel .jp-SettingsHeader h2 {
392
+ font-size: var(--jp-content-font-size3);
393
+ color: var(--jp-ui-font-color0);
394
+ font-weight: 300;
395
+ margin: 1em;
396
+ }
397
+
398
+ .jp-SettingsPanel .jp-SettingsHeader-description {
399
+ font-size: var(--jp-content-font-size2);
196
400
  color: var(--jp-ui-font-color1);
197
- font-size: var(--jp-ui-font-size1);
198
- padding: 2px;
199
- width: calc(100% - 4px);
200
- overflow: hidden;
401
+ font-weight: 200;
402
+ margin: 1em;
403
+ line-height: var(--jp-content-font-size3);
201
404
  }
202
405
 
203
- #setting-editor .jp-SettingsTableEditor tr {
204
- color: var(--jp-ui-font-color2);
205
- height: var(--jp-private-settingeditor-row-height);
206
- overflow: hidden;
406
+ .jp-SettingsPanel legend {
407
+ font-size: var(--jp-content-font-size2);
408
+ color: var(--jp-ui-font-color0);
409
+ flex-basis: 100%;
410
+ padding: 4px 0;
411
+ font-weight: var(--jp-content-header-font-weight);
412
+ border-bottom: 1px solid var(--jp-border-color2);
207
413
  }
208
414
 
209
- #setting-editor .jp-SettingsTableEditor th {
210
- background-color: var(--jp-layout-color3);
211
- border: 1px solid transparent;
212
- font-weight: bold;
213
- height: var(--jp-private-settingeditor-row-height);
415
+ .jp-SettingsPanel .field-description {
416
+ padding: 4px 0;
417
+ white-space: pre-wrap;
214
418
  }
215
419
 
216
- #setting-editor .jp-SettingsTableEditor td {
217
- border: 1px solid transparent;
218
- height: var(--jp-private-settingeditor-row-height);
420
+ .jp-SettingsPanel .jp-SettingsTitle {
421
+ display: flex;
422
+ align-items: center;
423
+ padding-left: 1em;
219
424
  }
220
425
 
221
- #setting-editor .jp-SettingsTableEditor th.jp-SettingsTableEditor-key {
222
- width: var(--jp-private-settingeditor-key-width);
426
+ .jp-SettingsPanel .jp-SettingsTitle-caret {
427
+ width: 2em;
428
+ flex-shrink: 0;
223
429
  }
224
430
 
225
- #setting-editor .jp-SettingsTableEditor th.jp-SettingsTableEditor-type {
226
- width: var(--jp-private-settingeditor-type-width);
431
+ .jp-SettingsForm {
432
+ position: relative;
227
433
  }
228
434
 
229
- #setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-key {
435
+ .jp-SettingsPanel .jp-SettingsHeader {
436
+ display: flex;
437
+ flex: auto;
438
+ justify-content: space-between;
439
+ cursor: pointer;
440
+ border: 1px solid var(--jp-border-color2);
441
+ }
442
+
443
+ .jp-PluginList .jp-FilterBox {
444
+ margin: 8px 12px 0;
445
+ }
446
+
447
+ .jp-PluginList-entry {
448
+ display: flex;
449
+ flex-direction: row;
450
+ border: 1px solid transparent;
451
+ background: transparent;
230
452
  overflow: hidden;
231
- white-space: nowrap;
453
+ padding: 4px 0 4px 4px;
232
454
  text-overflow: ellipsis;
455
+ white-space: nowrap;
456
+ width: -webkit-fill-available;
233
457
  }
234
458
 
235
- #setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-value {
236
- overflow: hidden;
459
+ .jp-SettingsPanel .jp-SettingsHeader-Name {
460
+ text-transform: inherit;
461
+ font-size: var(--jp-content-font-size3);
462
+ }
463
+
464
+ .jp-SettingsPanel .jp-modifiedIndicator {
465
+ width: 5px;
466
+ background-color: var(--jp-brand-color2);
467
+ margin-top: 0;
468
+ margin-left: calc(var(--jp-private-settingeditor-modifier-indent) * -1);
469
+ flex-shrink: 0;
470
+ }
471
+
472
+ .jp-SettingsPanel .jp-FormGroup-fieldLabel {
473
+ font-size: var(--jp-content-font-size1);
474
+ font-weight: normal;
475
+ min-width: 120px;
476
+ }
477
+
478
+ .jp-SettingsPanel .jp-modifiedIndicator.jp-errorIndicator {
479
+ background-color: var(--jp-error-color0);
480
+ }
481
+
482
+ .jp-SettingsPanel .validationErrors {
483
+ color: var(--jp-error-color0);
484
+ }
485
+
486
+ .jp-SettingsPanel .panel.errors {
487
+ display: none;
488
+ }
489
+
490
+ .jp-SettingsPanel .jp-SettingsEditor {
491
+ padding: 20px;
492
+ }
493
+
494
+ .jp-SettingsPanel .jp-SettingEditor-Switch .jp-switch {
495
+ position: absolute;
496
+ bottom: 0;
497
+ z-index: 999;
498
+ background-color: var(--jp-border-color3);
499
+ border: 1px solid var(--jp-border-color1);
500
+ }
501
+
502
+ .jp-SettingsPanel {
503
+ overflow-y: auto;
504
+ height: 100%;
505
+ }
506
+
507
+ .jp-SettingsForm button.jp-RestoreButton {
237
508
  white-space: nowrap;
238
- text-overflow: ellipsis;
509
+ background: none;
510
+ border: none;
511
+ outline: none;
512
+ box-shadow: none;
513
+ font-size: var(--jp-content-font-size2);
514
+ color: var(--jp-brand-color1);
515
+ cursor: pointer;
516
+ margin-right: 5px;
239
517
  }
240
518
 
241
- #setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-type {
242
- text-align: right;
519
+ .jp-PluginEditor {
520
+ overflow: auto;
243
521
  }
package/style/index.css CHANGED
@@ -9,6 +9,7 @@
9
9
  @import url('~@jupyterlab/apputils/style/index.css');
10
10
  @import url('~@jupyterlab/codeeditor/style/index.css');
11
11
  @import url('~@jupyterlab/rendermime/style/index.css');
12
+ @import url('~@jupyterlab/application/style/index.css');
12
13
  @import url('~@jupyterlab/inspector/style/index.css');
13
14
 
14
15
  @import url('./base.css');
package/style/index.js CHANGED
@@ -9,6 +9,7 @@ import '@jupyterlab/ui-components/style/index.js';
9
9
  import '@jupyterlab/apputils/style/index.js';
10
10
  import '@jupyterlab/codeeditor/style/index.js';
11
11
  import '@jupyterlab/rendermime/style/index.js';
12
+ import '@jupyterlab/application/style/index.js';
12
13
  import '@jupyterlab/inspector/style/index.js';
13
14
 
14
15
  import './base.css';
@@ -1 +0,0 @@
1
- {"version":3,"file":"settingeditor.js","sourceRoot":"","sources":["../src/settingeditor.tsx"],"names":[],"mappings":"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"}