@jupyterlab/settingeditor 4.0.0-alpha.1 → 4.0.0-alpha.12
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/lib/SettingsFormEditor.d.ts +119 -0
- package/lib/SettingsFormEditor.js +269 -0
- package/lib/SettingsFormEditor.js.map +1 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/inspector.js +23 -29
- package/lib/inspector.js.map +1 -1
- package/lib/{settingeditor.d.ts → jsonsettingeditor.d.ts} +5 -6
- package/lib/{settingeditor.js → jsonsettingeditor.js} +25 -43
- package/lib/jsonsettingeditor.js.map +1 -0
- package/lib/plugineditor.d.ts +3 -3
- package/lib/plugineditor.js +2 -6
- package/lib/plugineditor.js.map +1 -1
- package/lib/pluginlist.d.ts +58 -22
- package/lib/pluginlist.js +246 -109
- package/lib/pluginlist.js.map +1 -1
- package/lib/raweditor.d.ts +1 -5
- package/lib/raweditor.js +1 -14
- package/lib/raweditor.js.map +1 -1
- package/lib/settingseditor.d.ts +81 -0
- package/lib/settingseditor.js +121 -0
- package/lib/settingseditor.js.map +1 -0
- package/lib/settingspanel.d.ts +54 -0
- package/lib/settingspanel.js +90 -0
- package/lib/settingspanel.js.map +1 -0
- package/lib/tokens.d.ts +12 -2
- package/lib/tokens.js +4 -1
- package/lib/tokens.js.map +1 -1
- package/package.json +21 -17
- package/style/base.css +407 -85
- package/style/index.css +1 -0
- package/style/index.js +1 -0
- package/lib/settingeditor.js.map +0 -1
- package/lib/splitpanel.d.ts +0 -13
- package/lib/splitpanel.js +0 -26
- package/lib/splitpanel.js.map +0 -1
|
@@ -3,14 +3,12 @@
|
|
|
3
3
|
| Distributed under the terms of the Modified BSD License.
|
|
4
4
|
|----------------------------------------------------------------------------*/
|
|
5
5
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
6
|
-
import { jupyterIcon } from '@jupyterlab/ui-components';
|
|
6
|
+
import { jupyterIcon, ReactWidget } from '@jupyterlab/ui-components';
|
|
7
7
|
import { JSONExt } from '@lumino/coreutils';
|
|
8
|
-
import {
|
|
8
|
+
import { SplitPanel } from '@lumino/widgets';
|
|
9
9
|
import * as React from 'react';
|
|
10
|
-
import * as ReactDOM from 'react-dom';
|
|
11
10
|
import { PluginEditor } from './plugineditor';
|
|
12
11
|
import { PluginList } from './pluginlist';
|
|
13
|
-
import { SplitPanel } from './splitpanel';
|
|
14
12
|
/**
|
|
15
13
|
* The ratio panes in the setting editor.
|
|
16
14
|
*/
|
|
@@ -25,28 +23,32 @@ const DEFAULT_LAYOUT = {
|
|
|
25
23
|
/**
|
|
26
24
|
* An interface for modifying and saving application settings.
|
|
27
25
|
*/
|
|
28
|
-
export class
|
|
26
|
+
export class JsonSettingEditor extends SplitPanel {
|
|
29
27
|
/**
|
|
30
28
|
* Create a new setting editor.
|
|
31
29
|
*/
|
|
32
30
|
constructor(options) {
|
|
33
|
-
super(
|
|
31
|
+
super({
|
|
32
|
+
orientation: 'horizontal',
|
|
33
|
+
renderer: SplitPanel.defaultRenderer,
|
|
34
|
+
spacing: 1
|
|
35
|
+
});
|
|
34
36
|
this._fetching = null;
|
|
35
37
|
this._saving = false;
|
|
36
38
|
this._state = JSONExt.deepCopy(DEFAULT_LAYOUT);
|
|
37
39
|
this.translator = options.translator || nullTranslator;
|
|
40
|
+
const trans = this.translator.load('jupyterlab');
|
|
38
41
|
this.addClass('jp-SettingEditor');
|
|
39
42
|
this.key = options.key;
|
|
40
43
|
this.state = options.state;
|
|
41
44
|
const { commands, editorFactory, rendermime } = options;
|
|
42
|
-
const layout = (this.layout = new PanelLayout());
|
|
43
45
|
const registry = (this.registry = options.registry);
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
const instructions = (this._instructions = ReactWidget.create(React.createElement(React.Fragment, null,
|
|
47
|
+
React.createElement("h2", null,
|
|
48
|
+
React.createElement(jupyterIcon.react, { className: "jp-SettingEditorInstructions-icon", tag: "span", elementPosition: "center", height: "auto", width: "60px" }),
|
|
49
|
+
React.createElement("span", { className: "jp-SettingEditorInstructions-title" }, trans.__('Settings'))),
|
|
50
|
+
React.createElement("span", { className: "jp-SettingEditorInstructions-text" }, trans.__('Select a plugin from the list to view and edit its preferences.')))));
|
|
51
|
+
instructions.addClass('jp-SettingEditorInstructions');
|
|
50
52
|
const editor = (this._editor = new PluginEditor({
|
|
51
53
|
commands,
|
|
52
54
|
editorFactory,
|
|
@@ -61,21 +63,17 @@ export class SettingEditor extends Widget {
|
|
|
61
63
|
translator: this.translator
|
|
62
64
|
}));
|
|
63
65
|
const when = options.when;
|
|
64
|
-
instructions.addClass('jp-SettingEditorInstructions');
|
|
65
|
-
Private.populateInstructionsNode(instructions.node, this.translator);
|
|
66
66
|
if (when) {
|
|
67
67
|
this._when = Array.isArray(when) ? Promise.all(when) : when;
|
|
68
68
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
panel.addWidget(list);
|
|
72
|
-
panel.addWidget(instructions);
|
|
69
|
+
this.addWidget(list);
|
|
70
|
+
this.addWidget(instructions);
|
|
73
71
|
SplitPanel.setStretch(list, 0);
|
|
74
72
|
SplitPanel.setStretch(instructions, 1);
|
|
75
73
|
SplitPanel.setStretch(editor, 1);
|
|
76
74
|
editor.stateChanged.connect(this._onStateChanged, this);
|
|
77
75
|
list.changed.connect(this._onStateChanged, this);
|
|
78
|
-
|
|
76
|
+
this.handleMoved.connect(this._onStateChanged, this);
|
|
79
77
|
}
|
|
80
78
|
/**
|
|
81
79
|
* Whether the raw editor revert functionality is enabled.
|
|
@@ -118,7 +116,6 @@ export class SettingEditor extends Widget {
|
|
|
118
116
|
this._editor.dispose();
|
|
119
117
|
this._instructions.dispose();
|
|
120
118
|
this._list.dispose();
|
|
121
|
-
this._panel.dispose();
|
|
122
119
|
}
|
|
123
120
|
/**
|
|
124
121
|
* Revert raw editor back to original settings.
|
|
@@ -137,15 +134,15 @@ export class SettingEditor extends Widget {
|
|
|
137
134
|
*/
|
|
138
135
|
onAfterAttach(msg) {
|
|
139
136
|
super.onAfterAttach(msg);
|
|
140
|
-
this.
|
|
137
|
+
this.hide();
|
|
141
138
|
this._fetchState()
|
|
142
139
|
.then(() => {
|
|
143
|
-
this.
|
|
140
|
+
this.show();
|
|
144
141
|
this._setState();
|
|
145
142
|
})
|
|
146
143
|
.catch(reason => {
|
|
147
144
|
console.error('Fetching setting editor state failed', reason);
|
|
148
|
-
this.
|
|
145
|
+
this.show();
|
|
149
146
|
this._setState();
|
|
150
147
|
});
|
|
151
148
|
}
|
|
@@ -184,7 +181,7 @@ export class SettingEditor extends Widget {
|
|
|
184
181
|
* Handle root level layout state changes.
|
|
185
182
|
*/
|
|
186
183
|
async _onStateChanged() {
|
|
187
|
-
this._state.sizes = this.
|
|
184
|
+
this._state.sizes = this.relativeSizes();
|
|
188
185
|
this._state.container = this._editor.state;
|
|
189
186
|
this._state.container.plugin = this._list.selection;
|
|
190
187
|
try {
|
|
@@ -216,13 +213,12 @@ export class SettingEditor extends Widget {
|
|
|
216
213
|
*/
|
|
217
214
|
_setLayout() {
|
|
218
215
|
const editor = this._editor;
|
|
219
|
-
const panel = this._panel;
|
|
220
216
|
const state = this._state;
|
|
221
217
|
editor.state = state.container;
|
|
222
218
|
// Allow the message queue (which includes fit requests that might disrupt
|
|
223
219
|
// setting relative sizes) to clear before setting sizes.
|
|
224
220
|
requestAnimationFrame(() => {
|
|
225
|
-
|
|
221
|
+
this.setRelativeSizes(state.sizes);
|
|
226
222
|
});
|
|
227
223
|
}
|
|
228
224
|
/**
|
|
@@ -231,7 +227,6 @@ export class SettingEditor extends Widget {
|
|
|
231
227
|
_setState() {
|
|
232
228
|
const editor = this._editor;
|
|
233
229
|
const list = this._list;
|
|
234
|
-
const panel = this._panel;
|
|
235
230
|
const { container } = this._state;
|
|
236
231
|
if (!container.plugin) {
|
|
237
232
|
editor.settings = null;
|
|
@@ -251,7 +246,7 @@ export class SettingEditor extends Widget {
|
|
|
251
246
|
instructions.parent = null;
|
|
252
247
|
}
|
|
253
248
|
if (!editor.isAttached) {
|
|
254
|
-
|
|
249
|
+
this.addWidget(editor);
|
|
255
250
|
}
|
|
256
251
|
editor.settings = settings;
|
|
257
252
|
list.selection = container.plugin;
|
|
@@ -270,19 +265,6 @@ export class SettingEditor extends Widget {
|
|
|
270
265
|
*/
|
|
271
266
|
var Private;
|
|
272
267
|
(function (Private) {
|
|
273
|
-
/**
|
|
274
|
-
* Populate the instructions text node.
|
|
275
|
-
*/
|
|
276
|
-
function populateInstructionsNode(node, translator) {
|
|
277
|
-
translator = translator || nullTranslator;
|
|
278
|
-
const trans = translator.load('jupyterlab');
|
|
279
|
-
ReactDOM.render(React.createElement(React.Fragment, null,
|
|
280
|
-
React.createElement("h2", null,
|
|
281
|
-
React.createElement(jupyterIcon.react, { className: "jp-SettingEditorInstructions-icon", tag: "span", elementPosition: "center", height: "auto", width: "60px" }),
|
|
282
|
-
React.createElement("span", { className: "jp-SettingEditorInstructions-title" }, "Settings")),
|
|
283
|
-
React.createElement("span", { className: "jp-SettingEditorInstructions-text" }, trans.__('Select a plugin from the list to view and edit its preferences.'))), node);
|
|
284
|
-
}
|
|
285
|
-
Private.populateInstructionsNode = populateInstructionsNode;
|
|
286
268
|
/**
|
|
287
269
|
* Return a normalized restored layout state that defaults to the presets.
|
|
288
270
|
*/
|
|
@@ -320,4 +302,4 @@ var Private;
|
|
|
320
302
|
return Array.isArray(value) && value.every(x => typeof x === 'number');
|
|
321
303
|
}
|
|
322
304
|
})(Private || (Private = {}));
|
|
323
|
-
//# sourceMappingURL=
|
|
305
|
+
//# sourceMappingURL=jsonsettingeditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonsettingeditor.js","sourceRoot":"","sources":["../src/jsonsettingeditor.tsx"],"names":[],"mappings":"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"}
|
package/lib/plugineditor.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { Message } from '@lumino/messaging';
|
|
|
7
7
|
import { ISignal } from '@lumino/signaling';
|
|
8
8
|
import { Widget } from '@lumino/widgets';
|
|
9
9
|
import { RawEditor } from './raweditor';
|
|
10
|
-
import {
|
|
10
|
+
import { JsonSettingEditor } from './jsonsettingeditor';
|
|
11
11
|
/**
|
|
12
12
|
* An individual plugin settings editor.
|
|
13
13
|
*/
|
|
@@ -34,8 +34,8 @@ export declare class PluginEditor extends Widget {
|
|
|
34
34
|
/**
|
|
35
35
|
* The plugin editor layout state.
|
|
36
36
|
*/
|
|
37
|
-
get state():
|
|
38
|
-
set state(state:
|
|
37
|
+
get state(): JsonSettingEditor.IPluginLayout;
|
|
38
|
+
set state(state: JsonSettingEditor.IPluginLayout);
|
|
39
39
|
/**
|
|
40
40
|
* A signal that emits when editor layout state changes and needs to be saved.
|
|
41
41
|
*/
|
package/lib/plugineditor.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
| Copyright (c) Jupyter Development Team.
|
|
3
3
|
| Distributed under the terms of the Modified BSD License.
|
|
4
4
|
|----------------------------------------------------------------------------*/
|
|
5
|
-
import { Dialog, showDialog } from '@jupyterlab/apputils';
|
|
5
|
+
import { Dialog, showDialog, showErrorMessage } from '@jupyterlab/apputils';
|
|
6
6
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
7
7
|
import { JSONExt } from '@lumino/coreutils';
|
|
8
8
|
import { Signal } from '@lumino/signaling';
|
|
@@ -155,11 +155,7 @@ var Private;
|
|
|
155
155
|
translator = translator || nullTranslator;
|
|
156
156
|
const trans = translator.load('jupyterlab');
|
|
157
157
|
console.error(`Saving setting editor value failed: ${reason.message}`);
|
|
158
|
-
void
|
|
159
|
-
title: trans.__('Your changes were not saved.'),
|
|
160
|
-
body: reason.message,
|
|
161
|
-
buttons: [Dialog.okButton({ label: trans.__('Ok') })]
|
|
162
|
-
});
|
|
158
|
+
void showErrorMessage(trans.__('Your changes were not saved.'), reason);
|
|
163
159
|
}
|
|
164
160
|
Private.onSaveError = onSaveError;
|
|
165
161
|
})(Private || (Private = {}));
|
package/lib/plugineditor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugineditor.js","sourceRoot":"","sources":["../src/plugineditor.ts"],"names":[],"mappings":"AAAA;;;+EAG+E;AAE/E,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugineditor.js","sourceRoot":"","sources":["../src/plugineditor.ts"],"names":[],"mappings":"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"}
|
package/lib/pluginlist.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import { ReactWidget } from '@jupyterlab/apputils';
|
|
1
2
|
import { ISettingRegistry } from '@jupyterlab/settingregistry';
|
|
2
3
|
import { ITranslator } from '@jupyterlab/translation';
|
|
4
|
+
import { IScore } from '@jupyterlab/ui-components';
|
|
3
5
|
import { Message } from '@lumino/messaging';
|
|
4
6
|
import { ISignal } from '@lumino/signaling';
|
|
5
|
-
import { Widget } from '@lumino/widgets';
|
|
6
7
|
/**
|
|
7
8
|
* A list of plugins with editable settings.
|
|
8
9
|
*/
|
|
9
|
-
export declare class PluginList extends
|
|
10
|
+
export declare class PluginList extends ReactWidget {
|
|
10
11
|
/**
|
|
11
12
|
* Create a new plugin list.
|
|
12
13
|
*/
|
|
@@ -23,30 +24,18 @@ export declare class PluginList extends Widget {
|
|
|
23
24
|
* The selection value of the plugin list.
|
|
24
25
|
*/
|
|
25
26
|
get scrollTop(): number | undefined;
|
|
27
|
+
get hasErrors(): boolean;
|
|
28
|
+
get filter(): (item: ISettingRegistry.IPlugin) => string[] | null;
|
|
26
29
|
/**
|
|
27
30
|
* The selection value of the plugin list.
|
|
28
31
|
*/
|
|
29
32
|
get selection(): string;
|
|
30
33
|
set selection(selection: string);
|
|
31
34
|
/**
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* @param event - The DOM event sent to the widget.
|
|
35
|
-
*
|
|
36
|
-
* #### Notes
|
|
37
|
-
* This method implements the DOM `EventListener` interface and is
|
|
38
|
-
* called in response to events on the plugin list's node. It should
|
|
39
|
-
* not be called directly by user code.
|
|
35
|
+
* Signal that fires when search filter is updated so that settings panel can filter results.
|
|
40
36
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
* Handle `'after-attach'` messages.
|
|
44
|
-
*/
|
|
45
|
-
protected onAfterAttach(msg: Message): void;
|
|
46
|
-
/**
|
|
47
|
-
* Handle `before-detach` messages for the widget.
|
|
48
|
-
*/
|
|
49
|
-
protected onBeforeDetach(msg: Message): void;
|
|
37
|
+
get updateFilterSignal(): ISignal<this, (plugin: ISettingRegistry.IPlugin) => string[] | null>;
|
|
38
|
+
get handleSelectSignal(): ISignal<this, string>;
|
|
50
39
|
/**
|
|
51
40
|
* Handle `'update-request'` messages.
|
|
52
41
|
*/
|
|
@@ -57,9 +46,44 @@ export declare class PluginList extends Widget {
|
|
|
57
46
|
* @param event - The DOM event sent to the widget
|
|
58
47
|
*/
|
|
59
48
|
private _evtMousedown;
|
|
49
|
+
/**
|
|
50
|
+
* Check the plugin for a rendering hint's value.
|
|
51
|
+
*
|
|
52
|
+
* #### Notes
|
|
53
|
+
* The order of priority for overridden hints is as follows, from most
|
|
54
|
+
* important to least:
|
|
55
|
+
* 1. Data set by the end user in a settings file.
|
|
56
|
+
* 2. Data set by the plugin author as a schema default.
|
|
57
|
+
* 3. Data set by the plugin author as a top-level key of the schema.
|
|
58
|
+
*/
|
|
59
|
+
getHint(key: string, registry: ISettingRegistry, plugin: ISettingRegistry.IPlugin): string;
|
|
60
|
+
/**
|
|
61
|
+
* Function to recursively filter properties that match search results.
|
|
62
|
+
* @param filter - Function to filter based on search results
|
|
63
|
+
* @param props - Schema properties being filtered
|
|
64
|
+
* @param definitions - Definitions to use for filling in references in properties
|
|
65
|
+
* @param ref - Reference to a definition
|
|
66
|
+
* @returns - String array of properties that match the search results.
|
|
67
|
+
*/
|
|
68
|
+
getFilterString(filter: (item: string) => Partial<IScore> | null, props: ISettingRegistry.IProperty, definitions?: any, ref?: string): string[];
|
|
69
|
+
/**
|
|
70
|
+
* Updates the filter when the search bar value changes.
|
|
71
|
+
* @param filter Filter function passed by search bar based on search value.
|
|
72
|
+
*/
|
|
73
|
+
setFilter(filter: (item: string) => Partial<IScore> | null, query?: string): void;
|
|
74
|
+
setError(id: string, error: boolean): void;
|
|
75
|
+
mapPlugins(plugin: ISettingRegistry.IPlugin): JSX.Element;
|
|
76
|
+
render(): JSX.Element;
|
|
60
77
|
protected translator: ITranslator;
|
|
61
78
|
private _changed;
|
|
62
|
-
private
|
|
79
|
+
private _errors;
|
|
80
|
+
private _filter;
|
|
81
|
+
private _query;
|
|
82
|
+
private _handleSelectSignal;
|
|
83
|
+
private _updateFilterSignal;
|
|
84
|
+
private _allPlugins;
|
|
85
|
+
private _settings;
|
|
86
|
+
private _confirm?;
|
|
63
87
|
private _scrollTop;
|
|
64
88
|
private _selection;
|
|
65
89
|
}
|
|
@@ -74,19 +98,31 @@ export declare namespace PluginList {
|
|
|
74
98
|
/**
|
|
75
99
|
* A function that allows for asynchronously confirming a selection.
|
|
76
100
|
*
|
|
77
|
-
* ####
|
|
101
|
+
* #### Notes
|
|
78
102
|
* If the promise returned by the function resolves, then the selection will
|
|
79
103
|
* succeed and emit an event. If the promise rejects, the selection is not
|
|
80
104
|
* made.
|
|
81
105
|
*/
|
|
82
|
-
confirm:
|
|
106
|
+
confirm?: (id: string) => Promise<void>;
|
|
83
107
|
/**
|
|
84
108
|
* The setting registry for the plugin list.
|
|
85
109
|
*/
|
|
86
110
|
registry: ISettingRegistry;
|
|
111
|
+
/**
|
|
112
|
+
* List of plugins to skip
|
|
113
|
+
*/
|
|
114
|
+
toSkip?: string[];
|
|
87
115
|
/**
|
|
88
116
|
* The setting registry for the plugin list.
|
|
89
117
|
*/
|
|
90
118
|
translator?: ITranslator;
|
|
119
|
+
/**
|
|
120
|
+
* An optional initial query so the plugin list can filter on start.
|
|
121
|
+
*/
|
|
122
|
+
query?: string;
|
|
91
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Sort a list of plugins by title and ID.
|
|
126
|
+
*/
|
|
127
|
+
function sortPlugins(registry: ISettingRegistry): ISettingRegistry.IPlugin[];
|
|
92
128
|
}
|