@jupyterlab/apputils-extension 4.0.0-beta.0 → 4.0.0-beta.1

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.js CHANGED
@@ -24,6 +24,7 @@ import { kernelStatus, runningSessionsStatus } from './statusbarplugin';
24
24
  import { themesPaletteMenuPlugin, themesPlugin } from './themesplugins';
25
25
  import { toolbarRegistry } from './toolbarregistryplugin';
26
26
  import { workspacesPlugin } from './workspacesplugin';
27
+ import { displayShortcuts } from './shortcuts';
27
28
  /**
28
29
  * The interval in milliseconds before recover options appear during splash.
29
30
  */
@@ -40,6 +41,7 @@ var CommandIDs;
40
41
  CommandIDs.runFirstEnabled = 'apputils:run-first-enabled';
41
42
  CommandIDs.runAllEnabled = 'apputils:run-all-enabled';
42
43
  CommandIDs.toggleHeader = 'apputils:toggle-header';
44
+ CommandIDs.displayShortcuts = 'apputils:display-shortcuts';
43
45
  })(CommandIDs || (CommandIDs = {}));
44
46
  /**
45
47
  * The default command palette extension.
@@ -455,8 +457,9 @@ const sessionDialogs = {
455
457
  const utilityCommands = {
456
458
  id: '@jupyterlab/apputils-extension:utilityCommands',
457
459
  requires: [ITranslator],
460
+ optional: [ICommandPalette],
458
461
  autoStart: true,
459
- activate: (app, translator) => {
462
+ activate: (app, translator, palette) => {
460
463
  const trans = translator.load('jupyterlab');
461
464
  const { commands } = app;
462
465
  commands.addCommand(CommandIDs.runFirstEnabled, {
@@ -497,6 +500,24 @@ const utilityCommands = {
497
500
  }
498
501
  }
499
502
  });
503
+ commands.addCommand(CommandIDs.displayShortcuts, {
504
+ label: trans.__('Show Keyboard Shortcuts'),
505
+ caption: trans.__('Show relevant keyboard shortcuts for the current active widget'),
506
+ execute: args => {
507
+ var _a, _b, _c, _d;
508
+ const included = (_a = app.shell.currentWidget) === null || _a === void 0 ? void 0 : _a.node.contains(document.activeElement);
509
+ if (!included) {
510
+ const currentNode = (_c = (_b = app.shell.currentWidget) === null || _b === void 0 ? void 0 : _b.content.node) !== null && _c !== void 0 ? _c : (_d = app.shell.currentWidget) === null || _d === void 0 ? void 0 : _d.node;
511
+ currentNode === null || currentNode === void 0 ? void 0 : currentNode.focus();
512
+ }
513
+ const options = { commands, trans };
514
+ return displayShortcuts(options);
515
+ }
516
+ });
517
+ if (palette) {
518
+ const category = trans.__('Help');
519
+ palette.addItem({ command: CommandIDs.displayShortcuts, category });
520
+ }
500
521
  }
501
522
  };
502
523
  /**
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,10 @@ export declare class SettingConnector extends DataConnector<ISettingRegistry.IPl
16
16
  * The REST API requests are throttled at one request per plugin per 100ms.
17
17
  */
18
18
  fetch(id: string): Promise<ISettingRegistry.IPlugin | undefined>;
19
- list(query?: 'active' | 'all'): Promise<{
19
+ list(query: 'ids'): Promise<{
20
+ ids: string[];
21
+ }>;
22
+ list(query: 'active' | 'all'): Promise<{
20
23
  ids: string[];
21
24
  values: ISettingRegistry.IPlugin[];
22
25
  }>;
@@ -33,10 +33,13 @@ export class SettingConnector extends DataConnector {
33
33
  }
34
34
  async list(query = 'all') {
35
35
  const { isDeferred, isDisabled } = PageConfig.Extension;
36
- const { ids, values } = await this._connector.list();
36
+ const { ids, values } = await this._connector.list(query === 'ids' ? 'ids' : undefined);
37
37
  if (query === 'all') {
38
38
  return { ids, values };
39
39
  }
40
+ if (query === 'ids') {
41
+ return { ids };
42
+ }
40
43
  return {
41
44
  ids: ids.filter(id => !isDeferred(id) && !isDisabled(id)),
42
45
  values: values.filter(({ id }) => !isDeferred(id) && !isDisabled(id))
@@ -1 +1 @@
1
- {"version":3,"file":"settingconnector.js","sourceRoot":"","sources":["../src/settingconnector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,aAGrC;IACC,YAAY,SAA2D;QACrE,KAAK,EAAE,CAAC;QAwCF,gBAAW,GAAiC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAvCtE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,EAAU;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE;YACvB,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;SACtE;QACD,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,IAAI,CACR,QAA0B,KAAK;QAE/B,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QACxD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAErD,IAAI,KAAK,KAAK,KAAK,EAAE;YACnB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;SACxB;QAED,OAAO;YACL,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SACtE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAU,EAAE,GAAW;QAChC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;CAIF"}
1
+ {"version":3,"file":"settingconnector.js","sourceRoot":"","sources":["../src/settingconnector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,aAGrC;IACC,YAAY,SAA2D;QACrE,KAAK,EAAE,CAAC;QAkDF,gBAAW,GAAiC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAjDtE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,EAAU;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE;YACvB,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;SACtE;QACD,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAMD,KAAK,CAAC,IAAI,CACR,QAAkC,KAAK;QAEvC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QACxD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAChD,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACpC,CAAC;QAEF,IAAI,KAAK,KAAK,KAAK,EAAE;YACnB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;SACxB;QAED,IAAI,KAAK,KAAK,KAAK,EAAE;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC;SAChB;QAED,OAAO;YACL,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SACtE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAU,EAAE,GAAW;QAChC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;CAIF"}
@@ -28,8 +28,8 @@ export const settingsPlugin = {
28
28
  // because otherwise, its settings will never become available in the
29
29
  // setting registry.
30
30
  void app.restored.then(async () => {
31
- const plugins = await connector.list('all');
32
- plugins.ids.forEach(async (id, index) => {
31
+ const plugins = await connector.list('ids');
32
+ plugins.ids.forEach(async (id) => {
33
33
  if (!app.hasPlugin(id) || isDisabled(id) || id in registry.plugins) {
34
34
  return;
35
35
  }
@@ -38,9 +38,10 @@ export const settingsPlugin = {
38
38
  }
39
39
  catch (error) {
40
40
  console.warn(`Settings failed to load for (${id})`, error);
41
- if (plugins.values[index].schema['jupyter.lab.transform']) {
42
- console.warn(`This may happen if {autoStart: false} in (${id}) ` +
43
- `or if it is one of the deferredExtensions in page config.`);
41
+ if (!app.isPluginActivated(id)) {
42
+ console.warn(`If 'jupyter.lab.transform=true' in the plugin schema, this ` +
43
+ `may happen if {autoStart: false} in (${id}) or if it is ` +
44
+ `one of the deferredExtensions in page config.`);
44
45
  }
45
46
  }
46
47
  });
@@ -1 +1 @@
1
- {"version":3,"file":"settingsplugin.js","sourceRoot":"","sources":["../src/settingsplugin.ts"],"names":[],"mappings":"AAAA;;;+EAG+E;AAM/E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4C;IACrE,EAAE,EAAE,yCAAyC;IAC7C,QAAQ,EAAE,KAAK,EAAE,GAAoB,EAA6B,EAAE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEpE,iEAAiE;QACjE,0EAA0E;QAC1E,qFAAqF;QACrF,0EAA0E;QAC1E,yFAAyF;QACzF,uFAAuF;QACvF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;YACnC,SAAS;YACT,OAAO,EAAE,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9D,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CACxB;SACF,CAAC,CAAC;QAEH,qEAAqE;QACrE,yEAAyE;QACzE,qEAAqE;QACrE,oBAAoB;QACpB,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE;oBAClE,OAAO;iBACR;gBAED,IAAI;oBACF,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzB;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC3D,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE;wBACzD,OAAO,CAAC,IAAI,CACV,6CAA6C,EAAE,IAAI;4BACjD,2DAA2D,CAC9D,CAAC;qBACH;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,gBAAgB;CAC3B,CAAC"}
1
+ {"version":3,"file":"settingsplugin.js","sourceRoot":"","sources":["../src/settingsplugin.ts"],"names":[],"mappings":"AAAA;;;+EAG+E;AAM/E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA4C;IACrE,EAAE,EAAE,yCAAyC;IAC7C,QAAQ,EAAE,KAAK,EAAE,GAAoB,EAA6B,EAAE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEpE,iEAAiE;QACjE,0EAA0E;QAC1E,qFAAqF;QACrF,0EAA0E;QAC1E,yFAAyF;QACzF,uFAAuF;QACvF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;YACnC,SAAS;YACT,OAAO,EAAE,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9D,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CACxB;SACF,CAAC,CAAC;QAEH,qEAAqE;QACrE,yEAAyE;QACzE,qEAAqE;QACrE,oBAAoB;QACpB,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;gBAC7B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE;oBAClE,OAAO;iBACR;gBAED,IAAI;oBACF,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzB;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC3D,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE;wBAC9B,OAAO,CAAC,IAAI,CACV,6DAA6D;4BAC3D,wCAAwC,EAAE,gBAAgB;4BAC1D,+CAA+C,CAClD,CAAC;qBACH;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,gBAAgB;CAC3B,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { CommandRegistry } from '@lumino/commands';
2
+ import { Dialog } from '@jupyterlab/apputils';
3
+ import { TranslationBundle } from '@jupyterlab/translation';
4
+ /**
5
+ * Display shortcuts options
6
+ */
7
+ export interface IOptions {
8
+ /**
9
+ * Application commands registry
10
+ */
11
+ commands: CommandRegistry;
12
+ /**
13
+ * Translation object
14
+ */
15
+ trans: TranslationBundle;
16
+ /**
17
+ * Element on which to display the keyboard shortcuts help
18
+ */
19
+ activeElement?: Element;
20
+ }
21
+ export declare function displayShortcuts(options: IOptions): Promise<Dialog.IResult<unknown>>;
@@ -0,0 +1,137 @@
1
+ /*
2
+ * Copyright (c) Jupyter Development Team.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+ import { CommandRegistry } from '@lumino/commands';
6
+ import { Selector } from '@lumino/domutils';
7
+ import * as React from 'react';
8
+ import { Dialog, showDialog } from '@jupyterlab/apputils';
9
+ /**
10
+ * The class name for each row of ContextShortcutTable
11
+ */
12
+ const SHORTCUT_TABLE_ROW_CLASS = 'jp-ContextualShortcut-TableRow';
13
+ /**
14
+ * The class name for the last row of ContextShortcutTable
15
+ */
16
+ const SHORTCUT_TABLE_LAST_ROW_CLASS = 'jp-ContextualShortcut-TableLastRow';
17
+ /**
18
+ * The class name for each item of ContextShortcutTable
19
+ */
20
+ const SHORTCUT_TABLE_ITEM_CLASS = 'jp-ContextualShortcut-TableItem';
21
+ /**
22
+ * The class name for each button-like symbol representing a key used in a shortcut in the ContextShortcutTable
23
+ */
24
+ const SHORTCUT_KEY_CLASS = 'jp-ContextualShortcut-Key';
25
+ export function displayShortcuts(options) {
26
+ const { commands, trans, activeElement } = options;
27
+ const elt = activeElement !== null && activeElement !== void 0 ? activeElement : document.activeElement;
28
+ /**
29
+ * Find the distance from the target node to the first matching node.
30
+ *
31
+ * Based on Lumino private function commands.Private.targetDistance
32
+ * This traverses the DOM path from `elt` to the root
33
+ * computes the distance from `elt` to the first node which matches
34
+ * the CSS selector. If no match is found, `-1` is returned.
35
+ *
36
+ * It also stops traversal if the `data-lm-suppress-shortcuts` or
37
+ * `data-p-suppress-shortcuts` attributes are found.
38
+ */
39
+ function formatKeys(keys) {
40
+ const topContainer = [];
41
+ for (const key of keys) {
42
+ const container = [];
43
+ for (const ch of key.split(' ')) {
44
+ container.push(React.createElement("span", { className: SHORTCUT_KEY_CLASS },
45
+ React.createElement("kbd", null, ch)), React.createElement(React.Fragment, null, " + "));
46
+ }
47
+ /*topContainer.push(<span>{container.slice(0, -1)}</span>, <>,</>);*/
48
+ topContainer.push(React.createElement("span", null, container.slice(0, -1)), React.createElement(React.Fragment, null, " + "));
49
+ }
50
+ return React.createElement("span", null, topContainer.slice(0, -1));
51
+ }
52
+ function capitalizeString(str) {
53
+ const capitalizedStr = str.charAt(0).toUpperCase() + str.slice(1);
54
+ return capitalizedStr;
55
+ }
56
+ function formatLabel(b) {
57
+ const label = commands.label(b.command);
58
+ const commandID = b.command.split(':')[1];
59
+ const automaticLabel = commandID.split('-');
60
+ let capitalizedLabel = '';
61
+ for (let i = 0; i < automaticLabel.length; i++) {
62
+ const str = capitalizeString(automaticLabel[i]);
63
+ capitalizedLabel = capitalizedLabel + ' ' + str;
64
+ }
65
+ if (label.length > 0) {
66
+ return label;
67
+ }
68
+ else {
69
+ return capitalizedLabel;
70
+ }
71
+ }
72
+ function matchDistance(selector, elt) {
73
+ let targ = elt;
74
+ for (let dist = 0; targ !== null && targ !== targ.parentElement; targ = targ.parentElement, ++dist) {
75
+ if (targ.hasAttribute('data-lm-suppress-shortcuts')) {
76
+ return -1;
77
+ }
78
+ if (targ.matches(selector)) {
79
+ return dist;
80
+ }
81
+ }
82
+ return -1;
83
+ }
84
+ // Find active keybindings for target element
85
+ const activeBindings = new Map();
86
+ for (let i = 0; i < commands.keyBindings.length; i++) {
87
+ const kb = commands.keyBindings[i];
88
+ let distance = matchDistance(kb.selector, elt);
89
+ if (distance < 0) {
90
+ continue;
91
+ }
92
+ let formatted = CommandRegistry.formatKeystroke(kb.keys);
93
+ if (activeBindings.has(formatted)) {
94
+ let oldBinding = activeBindings.get(formatted);
95
+ // if the existing binding takes precedence, ignore this binding by continuing
96
+ if (oldBinding[0] < distance ||
97
+ (oldBinding[0] === distance &&
98
+ Selector.calculateSpecificity(oldBinding[1].selector) >
99
+ Selector.calculateSpecificity(kb.selector))) {
100
+ continue;
101
+ }
102
+ }
103
+ activeBindings.set(formatted, [distance, kb]);
104
+ }
105
+ // Group shortcuts by distance
106
+ let maxDistance = -1;
107
+ const groupedBindings = new Map();
108
+ for (let [distance, binding] of activeBindings.values()) {
109
+ maxDistance = Math.max(distance, maxDistance);
110
+ if (!groupedBindings.has(distance)) {
111
+ groupedBindings.set(distance, []);
112
+ }
113
+ groupedBindings.get(distance).push(binding);
114
+ }
115
+ // Display shortcuts by group
116
+ const bindingTable = [];
117
+ for (let d = 0; d <= maxDistance; d++) {
118
+ if (groupedBindings.has(d)) {
119
+ bindingTable.push(groupedBindings.get(d).map(b => (React.createElement("tr", { className: SHORTCUT_TABLE_ROW_CLASS, key: b.command },
120
+ React.createElement("td", { className: SHORTCUT_TABLE_ITEM_CLASS }, formatLabel(b)),
121
+ React.createElement("td", { className: SHORTCUT_TABLE_ITEM_CLASS }, formatKeys([...b.keys]))))));
122
+ bindingTable.push(React.createElement("tr", { className: SHORTCUT_TABLE_LAST_ROW_CLASS }));
123
+ }
124
+ }
125
+ const body = (React.createElement("table", null,
126
+ React.createElement("tbody", null, bindingTable)));
127
+ return showDialog({
128
+ title: trans.__('Keyboard Shortcuts'),
129
+ body,
130
+ buttons: [
131
+ Dialog.cancelButton({
132
+ label: trans.__('Close')
133
+ })
134
+ ]
135
+ });
136
+ }
137
+ //# sourceMappingURL=shortcuts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../src/shortcuts.tsx"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { PageConfig, URLExt } from '@jupyterlab/coreutils';
8
8
  import { IMainMenu } from '@jupyterlab/mainmenu';
9
9
  import { ISettingRegistry } from '@jupyterlab/settingregistry';
10
10
  import { ITranslator } from '@jupyterlab/translation';
11
+ import scrollbarStyleText from '../style/scrollbar.raw.css';
11
12
  var CommandIDs;
12
13
  (function (CommandIDs) {
13
14
  CommandIDs.changeTheme = 'apputils:change-theme';
@@ -16,6 +17,12 @@ var CommandIDs;
16
17
  CommandIDs.incrFontSize = 'apputils:incr-font-size';
17
18
  CommandIDs.decrFontSize = 'apputils:decr-font-size';
18
19
  })(CommandIDs || (CommandIDs = {}));
20
+ function createStyleSheet(text) {
21
+ const style = document.createElement('style');
22
+ style.setAttribute('type', 'text/css');
23
+ style.appendChild(document.createTextNode(text));
24
+ return style;
25
+ }
19
26
  /**
20
27
  * The default theme manager provider.
21
28
  */
@@ -36,6 +43,7 @@ export const themesPlugin = {
36
43
  splash: splash !== null && splash !== void 0 ? splash : undefined,
37
44
  url
38
45
  });
46
+ let scrollbarsStyleElement = null;
39
47
  // Keep a synchronously set reference to the current theme,
40
48
  // since the asynchronous setting of the theme in `changeTheme`
41
49
  // can lead to an incorrect toggle on the currently used theme.
@@ -48,6 +56,19 @@ export const themesPlugin = {
48
56
  if (document.body.dataset.jpThemeScrollbars !==
49
57
  String(manager.themeScrollbars(currentTheme))) {
50
58
  document.body.dataset.jpThemeScrollbars = String(manager.themeScrollbars(currentTheme));
59
+ if (manager.themeScrollbars(currentTheme)) {
60
+ if (!scrollbarsStyleElement) {
61
+ scrollbarsStyleElement = createStyleSheet(scrollbarStyleText);
62
+ }
63
+ if (!scrollbarsStyleElement.parentElement) {
64
+ document.body.appendChild(scrollbarsStyleElement);
65
+ }
66
+ }
67
+ else {
68
+ if (scrollbarsStyleElement && scrollbarsStyleElement.parentElement) {
69
+ scrollbarsStyleElement.parentElement.removeChild(scrollbarsStyleElement);
70
+ }
71
+ }
51
72
  }
52
73
  commands.notifyCommandChanged(CommandIDs.changeTheme);
53
74
  });
@@ -1 +1 @@
1
- {"version":3,"file":"themesplugins.js","sourceRoot":"","sources":["../src/themesplugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"themesplugins.js","sourceRoot":"","sources":["../src/themesplugins.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jupyterlab/apputils-extension",
3
- "version": "4.0.0-beta.0",
3
+ "version": "4.0.0-beta.1",
4
4
  "description": "JupyterLab - Application Utilities Extension",
5
5
  "homepage": "https://github.com/jupyterlab/jupyterlab",
6
6
  "bugs": {
@@ -38,25 +38,26 @@
38
38
  "watch": "tsc -b --watch"
39
39
  },
40
40
  "dependencies": {
41
- "@jupyterlab/application": "^4.0.0-beta.0",
42
- "@jupyterlab/apputils": "^4.0.0-beta.0",
43
- "@jupyterlab/coreutils": "^6.0.0-beta.0",
44
- "@jupyterlab/docregistry": "^4.0.0-beta.0",
45
- "@jupyterlab/filebrowser": "^4.0.0-beta.0",
46
- "@jupyterlab/mainmenu": "^4.0.0-beta.0",
47
- "@jupyterlab/rendermime-interfaces": "^3.8.0-beta.0",
48
- "@jupyterlab/services": "^7.0.0-beta.0",
49
- "@jupyterlab/settingregistry": "^4.0.0-beta.0",
50
- "@jupyterlab/statedb": "^4.0.0-beta.0",
51
- "@jupyterlab/statusbar": "^4.0.0-beta.0",
52
- "@jupyterlab/translation": "^4.0.0-beta.0",
53
- "@jupyterlab/ui-components": "^4.0.0-beta.0",
41
+ "@jupyterlab/application": "^4.0.0-beta.1",
42
+ "@jupyterlab/apputils": "^4.0.0-beta.1",
43
+ "@jupyterlab/coreutils": "^6.0.0-beta.1",
44
+ "@jupyterlab/docregistry": "^4.0.0-beta.1",
45
+ "@jupyterlab/filebrowser": "^4.0.0-beta.1",
46
+ "@jupyterlab/mainmenu": "^4.0.0-beta.1",
47
+ "@jupyterlab/rendermime-interfaces": "^3.8.0-beta.1",
48
+ "@jupyterlab/services": "^7.0.0-beta.1",
49
+ "@jupyterlab/settingregistry": "^4.0.0-beta.1",
50
+ "@jupyterlab/statedb": "^4.0.0-beta.1",
51
+ "@jupyterlab/statusbar": "^4.0.0-beta.1",
52
+ "@jupyterlab/translation": "^4.0.0-beta.1",
53
+ "@jupyterlab/ui-components": "^4.0.0-beta.1",
54
54
  "@lumino/algorithm": "^2.0.0",
55
- "@lumino/commands": "^2.0.0",
55
+ "@lumino/commands": "^2.0.1",
56
56
  "@lumino/coreutils": "^2.0.0",
57
57
  "@lumino/disposable": "^2.0.0",
58
+ "@lumino/domutils": "^2.0.0",
58
59
  "@lumino/polling": "^2.0.0",
59
- "@lumino/widgets": "^2.0.0",
60
+ "@lumino/widgets": "^2.0.1",
60
61
  "react": "^18.2.0",
61
62
  "react-dom": "^18.2.0",
62
63
  "react-toastify": "^9.0.8"
@@ -0,0 +1,35 @@
1
+ {
2
+ "title": "Shortcuts Help",
3
+ "description": "Shortcut help settings.",
4
+ "jupyter.lab.menus": {
5
+ "main": [
6
+ {
7
+ "id": "jp-mainmenu-help",
8
+ "items": [
9
+ {
10
+ "type": "separator",
11
+ "rank": 0.1
12
+ },
13
+ {
14
+ "command": "apputils:display-shortcuts",
15
+ "rank": 0.1
16
+ },
17
+ {
18
+ "type": "separator",
19
+ "rank": 0.1
20
+ }
21
+ ]
22
+ }
23
+ ]
24
+ },
25
+ "jupyter.lab.shortcuts": [
26
+ {
27
+ "command": "apputils:display-shortcuts",
28
+ "keys": ["Accel Shift H"],
29
+ "selector": "body"
30
+ }
31
+ ],
32
+ "properties": {},
33
+ "type": "object",
34
+ "additionalProperties": false
35
+ }
package/src/index.ts CHANGED
@@ -43,6 +43,7 @@ import { themesPaletteMenuPlugin, themesPlugin } from './themesplugins';
43
43
  import { toolbarRegistry } from './toolbarregistryplugin';
44
44
  import { workspacesPlugin } from './workspacesplugin';
45
45
  import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
46
+ import { displayShortcuts } from './shortcuts';
46
47
 
47
48
  /**
48
49
  * The interval in milliseconds before recover options appear during splash.
@@ -66,6 +67,8 @@ namespace CommandIDs {
66
67
  export const runAllEnabled = 'apputils:run-all-enabled';
67
68
 
68
69
  export const toggleHeader = 'apputils:toggle-header';
70
+
71
+ export const displayShortcuts = 'apputils:display-shortcuts';
69
72
  }
70
73
 
71
74
  /**
@@ -570,8 +573,13 @@ const sessionDialogs: JupyterFrontEndPlugin<ISessionContextDialogs> = {
570
573
  const utilityCommands: JupyterFrontEndPlugin<void> = {
571
574
  id: '@jupyterlab/apputils-extension:utilityCommands',
572
575
  requires: [ITranslator],
576
+ optional: [ICommandPalette],
573
577
  autoStart: true,
574
- activate: (app: JupyterFrontEnd, translator: ITranslator) => {
578
+ activate: (
579
+ app: JupyterFrontEnd,
580
+ translator: ITranslator,
581
+ palette: ICommandPalette | null
582
+ ) => {
575
583
  const trans = translator.load('jupyterlab');
576
584
  const { commands } = app;
577
585
  commands.addCommand(CommandIDs.runFirstEnabled, {
@@ -612,6 +620,32 @@ const utilityCommands: JupyterFrontEndPlugin<void> = {
612
620
  }
613
621
  }
614
622
  });
623
+
624
+ commands.addCommand(CommandIDs.displayShortcuts, {
625
+ label: trans.__('Show Keyboard Shortcuts'),
626
+ caption: trans.__(
627
+ 'Show relevant keyboard shortcuts for the current active widget'
628
+ ),
629
+ execute: args => {
630
+ const included = app.shell.currentWidget?.node.contains(
631
+ document.activeElement
632
+ );
633
+
634
+ if (!included) {
635
+ const currentNode =
636
+ (app.shell.currentWidget as MainAreaWidget)?.content.node ??
637
+ app.shell.currentWidget?.node;
638
+ currentNode?.focus();
639
+ }
640
+ const options = { commands, trans };
641
+ return displayShortcuts(options);
642
+ }
643
+ });
644
+
645
+ if (palette) {
646
+ const category: string = trans.__('Help');
647
+ palette.addItem({ command: CommandIDs.displayShortcuts, category });
648
+ }
615
649
  }
616
650
  };
617
651
 
@@ -38,16 +38,26 @@ export class SettingConnector extends DataConnector<
38
38
  return throttlers[id].invoke();
39
39
  }
40
40
 
41
+ async list(query: 'ids'): Promise<{ ids: string[] }>;
41
42
  async list(
42
- query: 'active' | 'all' = 'all'
43
- ): Promise<{ ids: string[]; values: ISettingRegistry.IPlugin[] }> {
43
+ query: 'active' | 'all'
44
+ ): Promise<{ ids: string[]; values: ISettingRegistry.IPlugin[] }>;
45
+ async list(
46
+ query: 'active' | 'all' | 'ids' = 'all'
47
+ ): Promise<{ ids: string[]; values?: ISettingRegistry.IPlugin[] }> {
44
48
  const { isDeferred, isDisabled } = PageConfig.Extension;
45
- const { ids, values } = await this._connector.list();
49
+ const { ids, values } = await this._connector.list(
50
+ query === 'ids' ? 'ids' : undefined
51
+ );
46
52
 
47
53
  if (query === 'all') {
48
54
  return { ids, values };
49
55
  }
50
56
 
57
+ if (query === 'ids') {
58
+ return { ids };
59
+ }
60
+
51
61
  return {
52
62
  ids: ids.filter(id => !isDeferred(id) && !isDisabled(id)),
53
63
  values: values.filter(({ id }) => !isDeferred(id) && !isDisabled(id))
@@ -38,8 +38,8 @@ export const settingsPlugin: JupyterFrontEndPlugin<ISettingRegistry> = {
38
38
  // because otherwise, its settings will never become available in the
39
39
  // setting registry.
40
40
  void app.restored.then(async () => {
41
- const plugins = await connector.list('all');
42
- plugins.ids.forEach(async (id, index) => {
41
+ const plugins = await connector.list('ids');
42
+ plugins.ids.forEach(async id => {
43
43
  if (!app.hasPlugin(id) || isDisabled(id) || id in registry.plugins) {
44
44
  return;
45
45
  }
@@ -48,10 +48,11 @@ export const settingsPlugin: JupyterFrontEndPlugin<ISettingRegistry> = {
48
48
  await registry.load(id);
49
49
  } catch (error) {
50
50
  console.warn(`Settings failed to load for (${id})`, error);
51
- if (plugins.values[index].schema['jupyter.lab.transform']) {
51
+ if (!app.isPluginActivated(id)) {
52
52
  console.warn(
53
- `This may happen if {autoStart: false} in (${id}) ` +
54
- `or if it is one of the deferredExtensions in page config.`
53
+ `If 'jupyter.lab.transform=true' in the plugin schema, this ` +
54
+ `may happen if {autoStart: false} in (${id}) or if it is ` +
55
+ `one of the deferredExtensions in page config.`
55
56
  );
56
57
  }
57
58
  }
@@ -0,0 +1,191 @@
1
+ /*
2
+ * Copyright (c) Jupyter Development Team.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+
6
+ import { CommandRegistry } from '@lumino/commands';
7
+ import { Selector } from '@lumino/domutils';
8
+ import * as React from 'react';
9
+ import { Dialog, showDialog } from '@jupyterlab/apputils';
10
+ import { TranslationBundle } from '@jupyterlab/translation';
11
+
12
+ /**
13
+ * The class name for each row of ContextShortcutTable
14
+ */
15
+ const SHORTCUT_TABLE_ROW_CLASS = 'jp-ContextualShortcut-TableRow';
16
+ /**
17
+ * The class name for the last row of ContextShortcutTable
18
+ */
19
+ const SHORTCUT_TABLE_LAST_ROW_CLASS = 'jp-ContextualShortcut-TableLastRow';
20
+ /**
21
+ * The class name for each item of ContextShortcutTable
22
+ */
23
+ const SHORTCUT_TABLE_ITEM_CLASS = 'jp-ContextualShortcut-TableItem';
24
+ /**
25
+ * The class name for each button-like symbol representing a key used in a shortcut in the ContextShortcutTable
26
+ */
27
+ const SHORTCUT_KEY_CLASS = 'jp-ContextualShortcut-Key';
28
+
29
+ /**
30
+ * Display shortcuts options
31
+ */
32
+ export interface IOptions {
33
+ /**
34
+ * Application commands registry
35
+ */
36
+ commands: CommandRegistry;
37
+ /**
38
+ * Translation object
39
+ */
40
+ trans: TranslationBundle;
41
+ /**
42
+ * Element on which to display the keyboard shortcuts help
43
+ */
44
+ activeElement?: Element;
45
+ }
46
+
47
+ export function displayShortcuts(options: IOptions) {
48
+ const { commands, trans, activeElement } = options;
49
+ const elt = activeElement ?? document.activeElement;
50
+
51
+ /**
52
+ * Find the distance from the target node to the first matching node.
53
+ *
54
+ * Based on Lumino private function commands.Private.targetDistance
55
+ * This traverses the DOM path from `elt` to the root
56
+ * computes the distance from `elt` to the first node which matches
57
+ * the CSS selector. If no match is found, `-1` is returned.
58
+ *
59
+ * It also stops traversal if the `data-lm-suppress-shortcuts` or
60
+ * `data-p-suppress-shortcuts` attributes are found.
61
+ */
62
+
63
+ function formatKeys(keys: string[]): JSX.Element {
64
+ const topContainer: JSX.Element[] = [];
65
+ for (const key of keys) {
66
+ const container: JSX.Element[] = [];
67
+ for (const ch of key.split(' ')) {
68
+ container.push(
69
+ <span className={SHORTCUT_KEY_CLASS}>
70
+ <kbd>{ch}</kbd>
71
+ </span>,
72
+ <> + </>
73
+ );
74
+ }
75
+ /*topContainer.push(<span>{container.slice(0, -1)}</span>, <>,</>);*/
76
+ topContainer.push(<span>{container.slice(0, -1)}</span>, <> + </>);
77
+ }
78
+ return <span>{topContainer.slice(0, -1)}</span>;
79
+ }
80
+
81
+ function capitalizeString(str: string) {
82
+ const capitalizedStr = str.charAt(0).toUpperCase() + str.slice(1);
83
+ return capitalizedStr;
84
+ }
85
+
86
+ function formatLabel(b: CommandRegistry.IKeyBinding) {
87
+ const label = commands.label(b.command);
88
+ const commandID = b.command.split(':')[1];
89
+ const automaticLabel = commandID.split('-');
90
+ let capitalizedLabel = '';
91
+ for (let i = 0; i < automaticLabel.length; i++) {
92
+ const str = capitalizeString(automaticLabel[i]);
93
+ capitalizedLabel = capitalizedLabel + ' ' + str;
94
+ }
95
+
96
+ if (label.length > 0) {
97
+ return label;
98
+ } else {
99
+ return capitalizedLabel;
100
+ }
101
+ }
102
+
103
+ function matchDistance(selector: string, elt: Element | null): number {
104
+ let targ = elt;
105
+ for (
106
+ let dist = 0;
107
+ targ !== null && targ !== targ.parentElement;
108
+ targ = targ.parentElement, ++dist
109
+ ) {
110
+ if (targ.hasAttribute('data-lm-suppress-shortcuts')) {
111
+ return -1;
112
+ }
113
+ if (targ.matches(selector)) {
114
+ return dist;
115
+ }
116
+ }
117
+ return -1;
118
+ }
119
+
120
+ // Find active keybindings for target element
121
+ const activeBindings = new Map<
122
+ string,
123
+ [number, CommandRegistry.IKeyBinding]
124
+ >();
125
+ for (let i = 0; i < commands.keyBindings.length; i++) {
126
+ const kb = commands.keyBindings[i];
127
+ let distance = matchDistance(kb.selector, elt);
128
+ if (distance < 0) {
129
+ continue;
130
+ }
131
+ let formatted = CommandRegistry.formatKeystroke(kb.keys);
132
+ if (activeBindings.has(formatted)) {
133
+ let oldBinding = activeBindings.get(formatted)!;
134
+ // if the existing binding takes precedence, ignore this binding by continuing
135
+ if (
136
+ oldBinding[0] < distance ||
137
+ (oldBinding[0] === distance &&
138
+ Selector.calculateSpecificity(oldBinding[1].selector) >
139
+ Selector.calculateSpecificity(kb.selector))
140
+ ) {
141
+ continue;
142
+ }
143
+ }
144
+ activeBindings.set(formatted, [distance, kb]);
145
+ }
146
+
147
+ // Group shortcuts by distance
148
+ let maxDistance = -1;
149
+ const groupedBindings = new Map<number, CommandRegistry.IKeyBinding[]>();
150
+ for (let [distance, binding] of activeBindings.values()) {
151
+ maxDistance = Math.max(distance, maxDistance);
152
+ if (!groupedBindings.has(distance)) {
153
+ groupedBindings.set(distance, []);
154
+ }
155
+ groupedBindings.get(distance)!.push(binding);
156
+ }
157
+
158
+ // Display shortcuts by group
159
+ const bindingTable: any = [];
160
+ for (let d = 0; d <= maxDistance; d++) {
161
+ if (groupedBindings.has(d)) {
162
+ bindingTable.push(
163
+ groupedBindings.get(d)!.map(b => (
164
+ <tr className={SHORTCUT_TABLE_ROW_CLASS} key={b.command}>
165
+ <td className={SHORTCUT_TABLE_ITEM_CLASS}>{formatLabel(b)}</td>
166
+ <td className={SHORTCUT_TABLE_ITEM_CLASS}>
167
+ {formatKeys([...b.keys])}
168
+ </td>
169
+ </tr>
170
+ ))
171
+ );
172
+ bindingTable.push(<tr className={SHORTCUT_TABLE_LAST_ROW_CLASS}></tr>);
173
+ }
174
+ }
175
+
176
+ const body = (
177
+ <table>
178
+ <tbody>{bindingTable}</tbody>
179
+ </table>
180
+ );
181
+
182
+ return showDialog({
183
+ title: trans.__('Keyboard Shortcuts'),
184
+ body,
185
+ buttons: [
186
+ Dialog.cancelButton({
187
+ label: trans.__('Close')
188
+ })
189
+ ]
190
+ });
191
+ }
@@ -18,6 +18,8 @@ import { IMainMenu } from '@jupyterlab/mainmenu';
18
18
  import { ISettingRegistry } from '@jupyterlab/settingregistry';
19
19
  import { ITranslator } from '@jupyterlab/translation';
20
20
 
21
+ import scrollbarStyleText from '../style/scrollbar.raw.css';
22
+
21
23
  namespace CommandIDs {
22
24
  export const changeTheme = 'apputils:change-theme';
23
25
 
@@ -30,6 +32,13 @@ namespace CommandIDs {
30
32
  export const decrFontSize = 'apputils:decr-font-size';
31
33
  }
32
34
 
35
+ function createStyleSheet(text: string): HTMLStyleElement {
36
+ const style = document.createElement('style');
37
+ style.setAttribute('type', 'text/css');
38
+ style.appendChild(document.createTextNode(text));
39
+ return style;
40
+ }
41
+
33
42
  /**
34
43
  * The default theme manager provider.
35
44
  */
@@ -56,6 +65,7 @@ export const themesPlugin: JupyterFrontEndPlugin<IThemeManager> = {
56
65
  splash: splash ?? undefined,
57
66
  url
58
67
  });
68
+ let scrollbarsStyleElement: HTMLStyleElement | null = null;
59
69
 
60
70
  // Keep a synchronously set reference to the current theme,
61
71
  // since the asynchronous setting of the theme in `changeTheme`
@@ -76,6 +86,20 @@ export const themesPlugin: JupyterFrontEndPlugin<IThemeManager> = {
76
86
  document.body.dataset.jpThemeScrollbars = String(
77
87
  manager.themeScrollbars(currentTheme)
78
88
  );
89
+ if (manager.themeScrollbars(currentTheme)) {
90
+ if (!scrollbarsStyleElement) {
91
+ scrollbarsStyleElement = createStyleSheet(scrollbarStyleText);
92
+ }
93
+ if (!scrollbarsStyleElement.parentElement) {
94
+ document.body.appendChild(scrollbarsStyleElement);
95
+ }
96
+ } else {
97
+ if (scrollbarsStyleElement && scrollbarsStyleElement.parentElement) {
98
+ scrollbarsStyleElement.parentElement.removeChild(
99
+ scrollbarsStyleElement
100
+ );
101
+ }
102
+ }
79
103
  }
80
104
 
81
105
  commands.notifyCommandChanged(CommandIDs.changeTheme);
@@ -0,0 +1,9 @@
1
+ /*
2
+ * Copyright (c) Jupyter Development Team.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+
6
+ declare module '*.raw.css' {
7
+ const script: string;
8
+ export default script;
9
+ }
package/style/base.css CHANGED
@@ -6,3 +6,4 @@
6
6
 
7
7
  @import './notification.css';
8
8
  @import './splash.css';
9
+ @import './contextualhelp.css';
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright (c) Jupyter Development Team.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+
6
+ :root {
7
+ --jp-private-shortcuts-key-padding-horizontal: 0.47em;
8
+ --jp-private-shortcuts-key-padding-vertical: 0.28em;
9
+ --jp-private-shortcuts-label-padding-horizontal: 0.47em;
10
+ }
11
+
12
+ .jp-ContextualShortcut-TableRow {
13
+ font-size: var(--jp-ui-font-size1);
14
+ font-family: var(--jp-ui-font-family);
15
+ }
16
+
17
+ .jp-ContextualShortcut-TableItem {
18
+ margin-left: auto;
19
+ margin-right: auto;
20
+ color: var(--jp-inverse-layout-color0);
21
+ font-size: var(--jp-ui-font-size1);
22
+ line-height: 2em;
23
+ padding-right: var(--jp-private-shortcuts-label-padding-horizontal);
24
+ }
25
+
26
+ .jp-ContextualShortcut-TableLastRow {
27
+ height: 2em;
28
+ }
29
+
30
+ .jp-ContextualShortcut-Key {
31
+ font-family: var(--jp-code-font-family);
32
+ border-width: var(--jp-border-width);
33
+ border-radius: var(--jp-border-radius);
34
+ border-style: solid;
35
+ border-color: var(--jp-border-color1);
36
+ color: var(--jp-ui-font-color1);
37
+ background: var(--jp-layout-color1);
38
+ padding-left: var(--jp-private-shortcuts-key-padding-horizontal);
39
+ padding-right: var(--jp-private-shortcuts-key-padding-horizontal);
40
+ padding-top: var(--jp-private-shortcuts-key-padding-vertical);
41
+ padding-bottom: var(--jp-private-shortcuts-key-padding-vertical);
42
+ }
@@ -0,0 +1,64 @@
1
+ /*
2
+ * Copyright (c) Jupyter Development Team.
3
+ * Distributed under the terms of the Modified BSD License.
4
+ */
5
+
6
+ /*
7
+ * Webkit scrollbar styling.
8
+ * Separate file which is dynamically loaded based on user/theme settings.
9
+ */
10
+
11
+ /* use standard opaque scrollbars for most nodes */
12
+
13
+ ::-webkit-scrollbar,
14
+ ::-webkit-scrollbar-corner {
15
+ background: var(--jp-scrollbar-background-color);
16
+ }
17
+
18
+ ::-webkit-scrollbar-thumb {
19
+ background: rgb(var(--jp-scrollbar-thumb-color));
20
+ border: var(--jp-scrollbar-thumb-margin) solid transparent;
21
+ background-clip: content-box;
22
+ border-radius: var(--jp-scrollbar-thumb-radius);
23
+ }
24
+
25
+ ::-webkit-scrollbar-track:horizontal {
26
+ border-left: var(--jp-scrollbar-endpad) solid
27
+ var(--jp-scrollbar-background-color);
28
+ border-right: var(--jp-scrollbar-endpad) solid
29
+ var(--jp-scrollbar-background-color);
30
+ }
31
+
32
+ ::-webkit-scrollbar-track:vertical {
33
+ border-top: var(--jp-scrollbar-endpad) solid
34
+ var(--jp-scrollbar-background-color);
35
+ border-bottom: var(--jp-scrollbar-endpad) solid
36
+ var(--jp-scrollbar-background-color);
37
+ }
38
+
39
+ /* for code nodes, use a transparent style of scrollbar */
40
+
41
+ .CodeMirror-hscrollbar::-webkit-scrollbar,
42
+ .CodeMirror-vscrollbar::-webkit-scrollbar,
43
+ .CodeMirror-hscrollbar::-webkit-scrollbar-corner,
44
+ .CodeMirror-vscrollbar::-webkit-scrollbar-corner {
45
+ background-color: transparent;
46
+ }
47
+
48
+ .CodeMirror-hscrollbar::-webkit-scrollbar-thumb,
49
+ .CodeMirror-vscrollbar::-webkit-scrollbar-thumb {
50
+ background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
51
+ border: var(--jp-scrollbar-thumb-margin) solid transparent;
52
+ background-clip: content-box;
53
+ border-radius: var(--jp-scrollbar-thumb-radius);
54
+ }
55
+
56
+ .CodeMirror-hscrollbar::-webkit-scrollbar-track:horizontal {
57
+ border-left: var(--jp-scrollbar-endpad) solid transparent;
58
+ border-right: var(--jp-scrollbar-endpad) solid transparent;
59
+ }
60
+
61
+ .CodeMirror-vscrollbar::-webkit-scrollbar-track:vertical {
62
+ border-top: var(--jp-scrollbar-endpad) solid transparent;
63
+ border-bottom: var(--jp-scrollbar-endpad) solid transparent;
64
+ }