@jupyterlab/services-extension 0.8.3 → 4.4.0-alpha.2

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/index.d.ts CHANGED
@@ -1,7 +1,13 @@
1
- import { IServiceManager } from '@jupyterlab/services';
2
- import { JupyterLabPlugin } from '@jupyterlab/application';
3
1
  /**
4
- * The default services provider.
2
+ * @packageDocumentation
3
+ * @module services-extension
5
4
  */
6
- declare const plugin: JupyterLabPlugin<IServiceManager>;
7
- export default plugin;
5
+ import { IConnectionStatus } from '@jupyterlab/application';
6
+ import { Contents, Event, Kernel, KernelSpec, NbConvert, ServerConnection, ServiceManager, ServiceManagerPlugin, Session, Setting, Terminal, User, Workspace } from '@jupyterlab/services';
7
+ import type { IPlugin } from '@lumino/coreutils';
8
+ /**
9
+ * The default JupyterLab application status provider.
10
+ */
11
+ export declare const connectionStatus: IPlugin<null, IConnectionStatus>;
12
+ declare const _default: (ServiceManagerPlugin<Contents.IManager> | ServiceManagerPlugin<Contents.IDrive> | ServiceManagerPlugin<Event.IManager> | ServiceManagerPlugin<Kernel.IManager> | ServiceManagerPlugin<KernelSpec.IManager> | ServiceManagerPlugin<NbConvert.IManager> | ServiceManagerPlugin<Session.IManager> | ServiceManagerPlugin<Setting.IManager> | ServiceManagerPlugin<Terminal.IManager> | ServiceManagerPlugin<User.IManager> | ServiceManagerPlugin<Workspace.IManager> | ServiceManagerPlugin<ServerConnection.ISettings> | ServiceManagerPlugin<ServiceManager.IManager>)[];
13
+ export default _default;
package/lib/index.js CHANGED
@@ -1,17 +1,242 @@
1
- "use strict";
2
- // Copyright (c) Jupyter Development Team.
3
- // Distributed under the terms of the Modified BSD License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- var services_1 = require("@jupyterlab/services");
1
+ /* -----------------------------------------------------------------------------
2
+ | Copyright (c) Jupyter Development Team.
3
+ | Distributed under the terms of the Modified BSD License.
4
+ |----------------------------------------------------------------------------*/
6
5
  /**
7
- * The default services provider.
6
+ * @packageDocumentation
7
+ * @module services-extension
8
8
  */
9
- var plugin = {
10
- id: 'jupyter.services.services',
11
- provides: services_1.IServiceManager,
12
- activate: function () { return new services_1.ServiceManager(); }
9
+ import { ConnectionStatus, IConnectionStatus } from '@jupyterlab/application';
10
+ import { ContentsManager, Drive, EventManager, IContentsManager, IDefaultDrive, IEventManager, IKernelManager, IKernelSpecManager, INbConvertManager, IServerSettings, IServiceManager, ISessionManager, ISettingManager, ITerminalManager, IUserManager, IWorkspaceManager, KernelManager, KernelSpecManager, NbConvertManager, ServerConnection, ServiceManager, SessionManager, SettingManager, TerminalManager, UserManager, WorkspaceManager } from '@jupyterlab/services';
11
+ /**
12
+ * The default JupyterLab application status provider.
13
+ */
14
+ export const connectionStatus = {
15
+ id: '@jupyterlab/services-extension:connection-status',
16
+ autoStart: true,
17
+ provides: IConnectionStatus,
18
+ description: 'Provides the application connection status.',
19
+ activate: () => {
20
+ return new ConnectionStatus();
21
+ }
22
+ };
23
+ /**
24
+ * The default contents manager plugin.
25
+ */
26
+ const contentsManagerPlugin = {
27
+ id: '@jupyterlab/services-extension:contents-manager',
28
+ description: 'The default contents manager plugin.',
29
+ autoStart: true,
30
+ provides: IContentsManager,
31
+ requires: [IDefaultDrive, IServerSettings],
32
+ activate: (_, defaultDrive, serverSettings) => {
33
+ return new ContentsManager({
34
+ defaultDrive,
35
+ serverSettings
36
+ });
37
+ }
38
+ };
39
+ /**
40
+ * The default drive plugin.
41
+ */
42
+ const defaultDrivePlugin = {
43
+ id: '@jupyterlab/services-extension:default-drive',
44
+ description: 'The default drive for the contents manager.',
45
+ autoStart: true,
46
+ provides: IDefaultDrive,
47
+ optional: [IServerSettings],
48
+ activate: (_, serverSettings) => {
49
+ console.log('Using the default drive plugin');
50
+ return new Drive({ serverSettings: serverSettings !== null && serverSettings !== void 0 ? serverSettings : undefined });
51
+ }
52
+ };
53
+ /**
54
+ * The event manager plugin.
55
+ */
56
+ const eventManagerPlugin = {
57
+ id: '@jupyterlab/services-extension:event-manager',
58
+ description: 'The event manager plugin.',
59
+ autoStart: true,
60
+ provides: IEventManager,
61
+ optional: [IServerSettings],
62
+ activate: (_, serverSettings) => {
63
+ return new EventManager({ serverSettings });
64
+ }
65
+ };
66
+ /**
67
+ * The kernel manager plugin.
68
+ */
69
+ const kernelManagerPlugin = {
70
+ id: '@jupyterlab/services-extension:kernel-manager',
71
+ description: 'The kernel manager plugin.',
72
+ autoStart: true,
73
+ provides: IKernelManager,
74
+ optional: [IServerSettings],
75
+ activate: (_, serverSettings) => {
76
+ return new KernelManager({ serverSettings });
77
+ }
78
+ };
79
+ /**
80
+ * The kernel spec manager plugin.
81
+ */
82
+ const kernelSpecManagerPlugin = {
83
+ id: '@jupyterlab/services-extension:kernel-spec-manager',
84
+ description: 'The kernel spec manager plugin.',
85
+ autoStart: true,
86
+ provides: IKernelSpecManager,
87
+ optional: [IServerSettings],
88
+ activate: (_, serverSettings) => {
89
+ return new KernelSpecManager({ serverSettings });
90
+ }
91
+ };
92
+ /**
93
+ * The nbconvert manager plugin.
94
+ */
95
+ const nbConvertManagerPlugin = {
96
+ id: '@jupyterlab/services-extension:nbconvert-manager',
97
+ description: 'The nbconvert manager plugin.',
98
+ autoStart: true,
99
+ provides: INbConvertManager,
100
+ optional: [IServerSettings],
101
+ activate: (_, serverSettings) => {
102
+ return new NbConvertManager({ serverSettings });
103
+ }
13
104
  };
14
105
  /**
15
- * Export the plugin as default.
106
+ * The session manager plugin.
16
107
  */
17
- exports.default = plugin;
108
+ const sessionManagerPlugin = {
109
+ id: '@jupyterlab/services-extension:session-manager',
110
+ description: 'The session manager plugin.',
111
+ autoStart: true,
112
+ provides: ISessionManager,
113
+ requires: [IKernelManager],
114
+ optional: [IServerSettings],
115
+ activate: (_, kernelManager, serverSettings) => {
116
+ return new SessionManager({ kernelManager, serverSettings });
117
+ }
118
+ };
119
+ /**
120
+ * The setting manager plugin.
121
+ */
122
+ const settingManagerPlugin = {
123
+ id: '@jupyterlab/services-extension:setting-manager',
124
+ description: 'The setting manager plugin.',
125
+ autoStart: true,
126
+ provides: ISettingManager,
127
+ optional: [IServerSettings],
128
+ activate: (_, serverSettings) => {
129
+ return new SettingManager({ serverSettings });
130
+ }
131
+ };
132
+ /**
133
+ * The terminal manager plugin.
134
+ */
135
+ const terminalManagerPlugin = {
136
+ id: '@jupyterlab/services-extension:terminal-manager',
137
+ description: 'The terminal manager plugin.',
138
+ autoStart: true,
139
+ provides: ITerminalManager,
140
+ optional: [IServerSettings],
141
+ activate: (_, serverSettings) => {
142
+ return new TerminalManager({ serverSettings });
143
+ }
144
+ };
145
+ /**
146
+ * The user manager plugin.
147
+ */
148
+ const userManagerPlugin = {
149
+ id: '@jupyterlab/services-extension:user-manager',
150
+ description: 'The user manager plugin.',
151
+ autoStart: true,
152
+ provides: IUserManager,
153
+ optional: [IServerSettings],
154
+ activate: (_, serverSettings) => {
155
+ return new UserManager({ serverSettings });
156
+ }
157
+ };
158
+ /**
159
+ * The workspace manager plugin.
160
+ */
161
+ const workspaceManagerPlugin = {
162
+ id: '@jupyterlab/services-extension:workspace-manager',
163
+ description: 'The workspace manager plugin.',
164
+ autoStart: true,
165
+ provides: IWorkspaceManager,
166
+ optional: [IServerSettings],
167
+ activate: (_, serverSettings) => {
168
+ return new WorkspaceManager({ serverSettings });
169
+ }
170
+ };
171
+ /**
172
+ * The default server settings plugin.
173
+ */
174
+ const serverSettingsPlugin = {
175
+ id: '@jupyterlab/services-extension:server-settings',
176
+ description: 'The default server settings plugin.',
177
+ autoStart: true,
178
+ provides: IServerSettings,
179
+ activate: (_) => {
180
+ return ServerConnection.makeSettings();
181
+ }
182
+ };
183
+ /**
184
+ * Instantiate a new service manager.
185
+ */
186
+ const serviceManagerPlugin = {
187
+ id: '@jupyterlab/services-extension:service-manager',
188
+ description: 'The default service manager plugin.',
189
+ autoStart: true,
190
+ provides: IServiceManager,
191
+ // Builder is not exposed as a plugin since it is now deprecated.
192
+ optional: [
193
+ IConnectionStatus,
194
+ IContentsManager,
195
+ IDefaultDrive,
196
+ IServerSettings,
197
+ IEventManager,
198
+ IKernelManager,
199
+ IKernelSpecManager,
200
+ INbConvertManager,
201
+ ISessionManager,
202
+ ISettingManager,
203
+ ITerminalManager,
204
+ IUserManager,
205
+ IWorkspaceManager
206
+ ],
207
+ activate: (_, connectionStatus, contents, defaultDrive, serverSettings, events, kernels, kernelspecs, nbconvert, sessions, settings, terminals, user, workspaces) => {
208
+ return new ServiceManager({
209
+ standby: () => {
210
+ return !(connectionStatus === null || connectionStatus === void 0 ? void 0 : connectionStatus.isConnected) || 'when-hidden';
211
+ },
212
+ contents,
213
+ defaultDrive,
214
+ serverSettings,
215
+ events,
216
+ kernels,
217
+ kernelspecs,
218
+ nbconvert,
219
+ sessions,
220
+ settings,
221
+ terminals,
222
+ user,
223
+ workspaces
224
+ });
225
+ }
226
+ };
227
+ export default [
228
+ contentsManagerPlugin,
229
+ defaultDrivePlugin,
230
+ eventManagerPlugin,
231
+ kernelManagerPlugin,
232
+ kernelSpecManagerPlugin,
233
+ nbConvertManagerPlugin,
234
+ sessionManagerPlugin,
235
+ settingManagerPlugin,
236
+ serverSettingsPlugin,
237
+ serviceManagerPlugin,
238
+ terminalManagerPlugin,
239
+ userManagerPlugin,
240
+ workspaceManagerPlugin
241
+ ];
242
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,40 +1,59 @@
1
1
  {
2
2
  "name": "@jupyterlab/services-extension",
3
- "version": "0.8.3",
3
+ "version": "4.4.0-alpha.2",
4
4
  "description": "JupyterLab - Services Extension",
5
+ "homepage": "https://github.com/jupyterlab/jupyterlab",
6
+ "bugs": {
7
+ "url": "https://github.com/jupyterlab/jupyterlab/issues"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/jupyterlab/jupyterlab.git"
12
+ },
13
+ "license": "BSD-3-Clause",
14
+ "author": "Project Jupyter",
15
+ "sideEffects": [
16
+ "style/**/*"
17
+ ],
5
18
  "main": "lib/index.js",
6
19
  "types": "lib/index.d.ts",
7
- "files": [
8
- "lib/*.d.ts",
9
- "lib/*.js"
10
- ],
20
+ "style": "style/index.css",
11
21
  "directories": {
12
22
  "lib": "lib/"
13
23
  },
24
+ "files": [
25
+ "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
26
+ "schema/*.json",
27
+ "style/**/*.{css,eot,gif,html,jpg,json,png,svg,woff2,ttf}",
28
+ "src/**/*.{ts,tsx}",
29
+ "style/index.js"
30
+ ],
31
+ "scripts": {
32
+ "build": "tsc -b",
33
+ "build:test": "tsc --build tsconfig.test.json",
34
+ "clean": "rimraf lib tsconfig.tsbuildinfo",
35
+ "test": "jest",
36
+ "test:cov": "jest --collect-coverage",
37
+ "test:debug": "node --inspect-brk ../../node_modules/.bin/jest --runInBand",
38
+ "test:debug:watch": "node --inspect-brk ../../node_modules/.bin/jest --runInBand --watch",
39
+ "watch": "tsc -b --watch"
40
+ },
14
41
  "dependencies": {
15
- "@jupyterlab/application": "^0.8.3",
16
- "@jupyterlab/services": "^0.47.1"
42
+ "@jupyterlab/application": "^4.4.0-alpha.2",
43
+ "@jupyterlab/services": "^7.4.0-alpha.2",
44
+ "@lumino/coreutils": "^2.2.0"
17
45
  },
18
46
  "devDependencies": {
19
- "rimraf": "^2.5.2",
20
- "typescript": "~2.4.1"
47
+ "@jupyterlab/testing": "^4.4.0-alpha.2",
48
+ "@types/jest": "^29.2.0",
49
+ "rimraf": "~5.0.5",
50
+ "typescript": "~5.1.6"
21
51
  },
22
- "scripts": {
23
- "build": "tsc",
24
- "clean": "rimraf lib",
25
- "watch": "tsc -w"
52
+ "publishConfig": {
53
+ "access": "public"
26
54
  },
27
55
  "jupyterlab": {
28
56
  "extension": true
29
57
  },
30
- "repository": {
31
- "type": "git",
32
- "url": "https://github.com/jupyterlab/jupyterlab.git"
33
- },
34
- "author": "Project Jupyter",
35
- "license": "BSD-3-Clause",
36
- "bugs": {
37
- "url": "https://github.com/jupyterlab/jupyterlab/issues"
38
- },
39
- "homepage": "https://github.com/jupyterlab/jupyterlab"
58
+ "styleModule": "style/index.js"
40
59
  }
package/src/index.ts ADDED
@@ -0,0 +1,348 @@
1
+ /* -----------------------------------------------------------------------------
2
+ | Copyright (c) Jupyter Development Team.
3
+ | Distributed under the terms of the Modified BSD License.
4
+ |----------------------------------------------------------------------------*/
5
+ /**
6
+ * @packageDocumentation
7
+ * @module services-extension
8
+ */
9
+
10
+ import { ConnectionStatus, IConnectionStatus } from '@jupyterlab/application';
11
+
12
+ import {
13
+ Contents,
14
+ ContentsManager,
15
+ Drive,
16
+ Event,
17
+ EventManager,
18
+ IContentsManager,
19
+ IDefaultDrive,
20
+ IEventManager,
21
+ IKernelManager,
22
+ IKernelSpecManager,
23
+ INbConvertManager,
24
+ IServerSettings,
25
+ IServiceManager,
26
+ ISessionManager,
27
+ ISettingManager,
28
+ ITerminalManager,
29
+ IUserManager,
30
+ IWorkspaceManager,
31
+ Kernel,
32
+ KernelManager,
33
+ KernelSpec,
34
+ KernelSpecManager,
35
+ NbConvert,
36
+ NbConvertManager,
37
+ ServerConnection,
38
+ ServiceManager,
39
+ ServiceManagerPlugin,
40
+ Session,
41
+ SessionManager,
42
+ Setting,
43
+ SettingManager,
44
+ Terminal,
45
+ TerminalManager,
46
+ User,
47
+ UserManager,
48
+ Workspace,
49
+ WorkspaceManager
50
+ } from '@jupyterlab/services';
51
+
52
+ import type { IPlugin } from '@lumino/coreutils';
53
+
54
+ /**
55
+ * The default JupyterLab application status provider.
56
+ */
57
+ export const connectionStatus: IPlugin<null, IConnectionStatus> = {
58
+ id: '@jupyterlab/services-extension:connection-status',
59
+ autoStart: true,
60
+ provides: IConnectionStatus,
61
+ description: 'Provides the application connection status.',
62
+ activate: () => {
63
+ return new ConnectionStatus();
64
+ }
65
+ };
66
+
67
+ /**
68
+ * The default contents manager plugin.
69
+ */
70
+ const contentsManagerPlugin: ServiceManagerPlugin<Contents.IManager> = {
71
+ id: '@jupyterlab/services-extension:contents-manager',
72
+ description: 'The default contents manager plugin.',
73
+ autoStart: true,
74
+ provides: IContentsManager,
75
+ requires: [IDefaultDrive, IServerSettings],
76
+ activate: (
77
+ _: null,
78
+ defaultDrive: Contents.IDrive,
79
+ serverSettings: ServerConnection.ISettings
80
+ ): Contents.IManager => {
81
+ return new ContentsManager({
82
+ defaultDrive,
83
+ serverSettings
84
+ });
85
+ }
86
+ };
87
+
88
+ /**
89
+ * The default drive plugin.
90
+ */
91
+ const defaultDrivePlugin: ServiceManagerPlugin<Contents.IDrive> = {
92
+ id: '@jupyterlab/services-extension:default-drive',
93
+ description: 'The default drive for the contents manager.',
94
+ autoStart: true,
95
+ provides: IDefaultDrive,
96
+ optional: [IServerSettings],
97
+ activate: (
98
+ _: null,
99
+ serverSettings: ServerConnection.ISettings | null
100
+ ): Contents.IDrive => {
101
+ console.log('Using the default drive plugin');
102
+ return new Drive({ serverSettings: serverSettings ?? undefined });
103
+ }
104
+ };
105
+
106
+ /**
107
+ * The event manager plugin.
108
+ */
109
+ const eventManagerPlugin: ServiceManagerPlugin<Event.IManager> = {
110
+ id: '@jupyterlab/services-extension:event-manager',
111
+ description: 'The event manager plugin.',
112
+ autoStart: true,
113
+ provides: IEventManager,
114
+ optional: [IServerSettings],
115
+ activate: (
116
+ _: null,
117
+ serverSettings: ServerConnection.ISettings | undefined
118
+ ): Event.IManager => {
119
+ return new EventManager({ serverSettings });
120
+ }
121
+ };
122
+
123
+ /**
124
+ * The kernel manager plugin.
125
+ */
126
+ const kernelManagerPlugin: ServiceManagerPlugin<Kernel.IManager> = {
127
+ id: '@jupyterlab/services-extension:kernel-manager',
128
+ description: 'The kernel manager plugin.',
129
+ autoStart: true,
130
+ provides: IKernelManager,
131
+ optional: [IServerSettings],
132
+ activate: (
133
+ _: null,
134
+ serverSettings: ServerConnection.ISettings | undefined
135
+ ): Kernel.IManager => {
136
+ return new KernelManager({ serverSettings });
137
+ }
138
+ };
139
+
140
+ /**
141
+ * The kernel spec manager plugin.
142
+ */
143
+ const kernelSpecManagerPlugin: ServiceManagerPlugin<KernelSpec.IManager> = {
144
+ id: '@jupyterlab/services-extension:kernel-spec-manager',
145
+ description: 'The kernel spec manager plugin.',
146
+ autoStart: true,
147
+ provides: IKernelSpecManager,
148
+ optional: [IServerSettings],
149
+ activate: (
150
+ _: null,
151
+ serverSettings: ServerConnection.ISettings | undefined
152
+ ): KernelSpec.IManager => {
153
+ return new KernelSpecManager({ serverSettings });
154
+ }
155
+ };
156
+
157
+ /**
158
+ * The nbconvert manager plugin.
159
+ */
160
+ const nbConvertManagerPlugin: ServiceManagerPlugin<NbConvert.IManager> = {
161
+ id: '@jupyterlab/services-extension:nbconvert-manager',
162
+ description: 'The nbconvert manager plugin.',
163
+ autoStart: true,
164
+ provides: INbConvertManager,
165
+ optional: [IServerSettings],
166
+ activate: (
167
+ _: null,
168
+ serverSettings: ServerConnection.ISettings | undefined
169
+ ): NbConvert.IManager => {
170
+ return new NbConvertManager({ serverSettings });
171
+ }
172
+ };
173
+
174
+ /**
175
+ * The session manager plugin.
176
+ */
177
+ const sessionManagerPlugin: ServiceManagerPlugin<Session.IManager> = {
178
+ id: '@jupyterlab/services-extension:session-manager',
179
+ description: 'The session manager plugin.',
180
+ autoStart: true,
181
+ provides: ISessionManager,
182
+ requires: [IKernelManager],
183
+ optional: [IServerSettings],
184
+ activate: (
185
+ _: null,
186
+ kernelManager: Kernel.IManager,
187
+ serverSettings: ServerConnection.ISettings | undefined
188
+ ): Session.IManager => {
189
+ return new SessionManager({ kernelManager, serverSettings });
190
+ }
191
+ };
192
+
193
+ /**
194
+ * The setting manager plugin.
195
+ */
196
+ const settingManagerPlugin: ServiceManagerPlugin<Setting.IManager> = {
197
+ id: '@jupyterlab/services-extension:setting-manager',
198
+ description: 'The setting manager plugin.',
199
+ autoStart: true,
200
+ provides: ISettingManager,
201
+ optional: [IServerSettings],
202
+ activate: (
203
+ _: null,
204
+ serverSettings: ServerConnection.ISettings | undefined
205
+ ): Setting.IManager => {
206
+ return new SettingManager({ serverSettings });
207
+ }
208
+ };
209
+
210
+ /**
211
+ * The terminal manager plugin.
212
+ */
213
+ const terminalManagerPlugin: ServiceManagerPlugin<Terminal.IManager> = {
214
+ id: '@jupyterlab/services-extension:terminal-manager',
215
+ description: 'The terminal manager plugin.',
216
+ autoStart: true,
217
+ provides: ITerminalManager,
218
+ optional: [IServerSettings],
219
+ activate: (
220
+ _: null,
221
+ serverSettings: ServerConnection.ISettings | undefined
222
+ ): Terminal.IManager => {
223
+ return new TerminalManager({ serverSettings });
224
+ }
225
+ };
226
+
227
+ /**
228
+ * The user manager plugin.
229
+ */
230
+ const userManagerPlugin: ServiceManagerPlugin<User.IManager> = {
231
+ id: '@jupyterlab/services-extension:user-manager',
232
+ description: 'The user manager plugin.',
233
+ autoStart: true,
234
+ provides: IUserManager,
235
+ optional: [IServerSettings],
236
+ activate: (
237
+ _: null,
238
+ serverSettings: ServerConnection.ISettings | undefined
239
+ ): User.IManager => {
240
+ return new UserManager({ serverSettings });
241
+ }
242
+ };
243
+
244
+ /**
245
+ * The workspace manager plugin.
246
+ */
247
+ const workspaceManagerPlugin: ServiceManagerPlugin<Workspace.IManager> = {
248
+ id: '@jupyterlab/services-extension:workspace-manager',
249
+ description: 'The workspace manager plugin.',
250
+ autoStart: true,
251
+ provides: IWorkspaceManager,
252
+ optional: [IServerSettings],
253
+ activate: (
254
+ _: null,
255
+ serverSettings: ServerConnection.ISettings | undefined
256
+ ): Workspace.IManager => {
257
+ return new WorkspaceManager({ serverSettings });
258
+ }
259
+ };
260
+
261
+ /**
262
+ * The default server settings plugin.
263
+ */
264
+ const serverSettingsPlugin: ServiceManagerPlugin<ServerConnection.ISettings> = {
265
+ id: '@jupyterlab/services-extension:server-settings',
266
+ description: 'The default server settings plugin.',
267
+ autoStart: true,
268
+ provides: IServerSettings,
269
+ activate: (_: null): ServerConnection.ISettings => {
270
+ return ServerConnection.makeSettings();
271
+ }
272
+ };
273
+
274
+ /**
275
+ * Instantiate a new service manager.
276
+ */
277
+ const serviceManagerPlugin: ServiceManagerPlugin<ServiceManager.IManager> = {
278
+ id: '@jupyterlab/services-extension:service-manager',
279
+ description: 'The default service manager plugin.',
280
+ autoStart: true,
281
+ provides: IServiceManager,
282
+ // Builder is not exposed as a plugin since it is now deprecated.
283
+ optional: [
284
+ IConnectionStatus,
285
+ IContentsManager,
286
+ IDefaultDrive,
287
+ IServerSettings,
288
+ IEventManager,
289
+ IKernelManager,
290
+ IKernelSpecManager,
291
+ INbConvertManager,
292
+ ISessionManager,
293
+ ISettingManager,
294
+ ITerminalManager,
295
+ IUserManager,
296
+ IWorkspaceManager
297
+ ],
298
+ activate: (
299
+ _: null,
300
+ connectionStatus: IConnectionStatus | undefined,
301
+ contents: Contents.IManager | undefined,
302
+ defaultDrive: Contents.IDrive | undefined,
303
+ serverSettings: ServerConnection.ISettings | undefined,
304
+ events: Event.IManager | undefined,
305
+ kernels: Kernel.IManager | undefined,
306
+ kernelspecs: KernelSpec.IManager | undefined,
307
+ nbconvert: NbConvert.IManager | undefined,
308
+ sessions: Session.IManager | undefined,
309
+ settings: Setting.IManager | undefined,
310
+ terminals: Terminal.IManager | undefined,
311
+ user: User.IManager | undefined,
312
+ workspaces: Workspace.IManager | undefined
313
+ ): ServiceManager.IManager => {
314
+ return new ServiceManager({
315
+ standby: () => {
316
+ return !connectionStatus?.isConnected || 'when-hidden';
317
+ },
318
+ contents,
319
+ defaultDrive,
320
+ serverSettings,
321
+ events,
322
+ kernels,
323
+ kernelspecs,
324
+ nbconvert,
325
+ sessions,
326
+ settings,
327
+ terminals,
328
+ user,
329
+ workspaces
330
+ });
331
+ }
332
+ };
333
+
334
+ export default [
335
+ contentsManagerPlugin,
336
+ defaultDrivePlugin,
337
+ eventManagerPlugin,
338
+ kernelManagerPlugin,
339
+ kernelSpecManagerPlugin,
340
+ nbConvertManagerPlugin,
341
+ sessionManagerPlugin,
342
+ settingManagerPlugin,
343
+ serverSettingsPlugin,
344
+ serviceManagerPlugin,
345
+ terminalManagerPlugin,
346
+ userManagerPlugin,
347
+ workspaceManagerPlugin
348
+ ];
@@ -0,0 +1,7 @@
1
+ /*-----------------------------------------------------------------------------
2
+ | Copyright (c) Jupyter Development Team.
3
+ | Distributed under the terms of the Modified BSD License.
4
+ |----------------------------------------------------------------------------*/
5
+
6
+ /* This file was auto-generated by ensurePackage() in @jupyterlab/buildutils */
7
+ @import url('~@jupyterlab/application/style/index.css');
package/style/index.js ADDED
@@ -0,0 +1,7 @@
1
+ /*-----------------------------------------------------------------------------
2
+ | Copyright (c) Jupyter Development Team.
3
+ | Distributed under the terms of the Modified BSD License.
4
+ |----------------------------------------------------------------------------*/
5
+
6
+ /* This file was auto-generated by ensurePackage() in @jupyterlab/buildutils */
7
+ import '@jupyterlab/application/style/index.js';