@jupyterlab/codemirror 4.2.0-alpha.2 → 4.2.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/commands.d.ts CHANGED
@@ -21,10 +21,27 @@ export declare namespace StateCommands {
21
21
  }): boolean;
22
22
  /**
23
23
  * Prevent insertion of new line when running cell with Ctrl/Command + Enter
24
+ * @deprecated
24
25
  */
25
26
  function preventNewLineOnRun(target: {
26
27
  dom: HTMLElement;
27
28
  }): boolean;
29
+ /**
30
+ * Insert a new line or run a cell with Ctrl/Command + Enter
31
+ */
32
+ function insertBlankLineOnRun(target: {
33
+ dom: HTMLElement;
34
+ state: EditorState;
35
+ dispatch: (transaction: Transaction) => void;
36
+ }): boolean;
37
+ /**
38
+ * Simplify selection but do not prevent default to allow switching to command mode.
39
+ */
40
+ function simplifySelectionAndMaybeSwitchToCommandMode(target: {
41
+ dom: HTMLElement;
42
+ state: EditorState;
43
+ dispatch: (transaction: Transaction) => void;
44
+ }): boolean;
28
45
  /**
29
46
  * Prevent dedenting when launching inspection request (a.k.a tooltip).
30
47
  *
package/lib/commands.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 { indentLess, indentMore, insertNewlineAndIndent, insertTab } from '@codemirror/commands';
5
+ import { indentLess, indentMore, insertBlankLine, insertNewlineAndIndent, insertTab, simplifySelection } from '@codemirror/commands';
6
6
  import { COMPLETER_ACTIVE_CLASS, COMPLETER_ENABLED_CLASS } from '@jupyterlab/codeeditor';
7
7
  /**
8
8
  * Selector for a widget that can run code.
@@ -12,6 +12,10 @@ const CODE_RUNNER_SELECTOR = '[data-jp-code-runner]';
12
12
  * Selector for a widget that can open a tooltip.
13
13
  */
14
14
  const TOOLTIP_OPENER_SELECTOR = '.jp-CodeMirrorEditor:not(.jp-mod-has-primary-selection):not(.jp-mod-in-leading-whitespace):not(.jp-mod-completer-active)';
15
+ /**
16
+ * Selector for an active cell in edit mode.
17
+ */
18
+ const ACTIVE_CELL_IN_EDIT_MODE_SELECTOR = '.jp-mod-editMode .jp-Cell.jp-mod-active';
15
19
  /**
16
20
  * CodeMirror commands namespace
17
21
  */
@@ -56,6 +60,7 @@ export var StateCommands;
56
60
  StateCommands.completerOrInsertNewLine = completerOrInsertNewLine;
57
61
  /**
58
62
  * Prevent insertion of new line when running cell with Ctrl/Command + Enter
63
+ * @deprecated
59
64
  */
60
65
  function preventNewLineOnRun(target) {
61
66
  if (target.dom.closest(CODE_RUNNER_SELECTOR)) {
@@ -64,6 +69,35 @@ export var StateCommands;
64
69
  return false;
65
70
  }
66
71
  StateCommands.preventNewLineOnRun = preventNewLineOnRun;
72
+ /**
73
+ * Insert a new line or run a cell with Ctrl/Command + Enter
74
+ */
75
+ function insertBlankLineOnRun(target) {
76
+ if (target.dom.closest(CODE_RUNNER_SELECTOR)) {
77
+ // do not prevent default to allow `run` action to be handled by lumino
78
+ return false;
79
+ }
80
+ else {
81
+ const arg = { state: target.state, dispatch: target.dispatch };
82
+ return insertBlankLine(arg);
83
+ }
84
+ }
85
+ StateCommands.insertBlankLineOnRun = insertBlankLineOnRun;
86
+ /**
87
+ * Simplify selection but do not prevent default to allow switching to command mode.
88
+ */
89
+ function simplifySelectionAndMaybeSwitchToCommandMode(target) {
90
+ const arg = { state: target.state, dispatch: target.dispatch };
91
+ const preventDefault = simplifySelection(arg);
92
+ if (target.dom.closest(ACTIVE_CELL_IN_EDIT_MODE_SELECTOR)) {
93
+ // do not prevent default to allow switching to command mode
94
+ return false;
95
+ }
96
+ else {
97
+ return preventDefault;
98
+ }
99
+ }
100
+ StateCommands.simplifySelectionAndMaybeSwitchToCommandMode = simplifySelectionAndMaybeSwitchToCommandMode;
67
101
  /**
68
102
  * Prevent dedenting when launching inspection request (a.k.a tooltip).
69
103
  *
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,SAAS,EACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAEhC;;GAEG;AACH,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAErD;;GAEG;AACH,MAAM,uBAAuB,GAC3B,0HAA0H,CAAC;AAE7H;;GAEG;AACH,MAAM,KAAW,aAAa,CAwE7B;AAxED,WAAiB,aAAa;IAC5B;;OAEG;IACH,SAAgB,qBAAqB,CAAC,MAIrC;;QACC,IAAI,MAAA,MAAM,CAAC,GAAG,CAAC,aAAa,0CAAE,SAAS,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE;YACzE,OAAO,KAAK,CAAC;SACd;QAED,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,IAAI,IAAI,EAAE,EAAE;YACd,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClE,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;SACxB;aAAM;YACL,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;SACvB;IACH,CAAC;IAtBe,mCAAqB,wBAsBpC,CAAA;IAED;;OAEG;IACH,SAAgB,wBAAwB,CAAC,MAIxC;;QACC,IAAI,MAAA,MAAM,CAAC,GAAG,CAAC,aAAa,0CAAE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE;YACxE,iFAAiF;YACjF,OAAO,IAAI,CAAC;SACb;QAED,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC/D,OAAO,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAZe,sCAAwB,2BAYvC,CAAA;IAED;;OAEG;IACH,SAAgB,mBAAmB,CAAC,MAA4B;QAC9D,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IALe,iCAAmB,sBAKlC,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,2BAA2B,CAAC,MAI3C;QACC,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IATe,yCAA2B,8BAS1C,CAAA;AACH,CAAC,EAxEgB,aAAa,KAAb,aAAa,QAwE7B"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
package/lib/extension.js CHANGED
@@ -10,7 +10,7 @@ import { JSONExt } from '@lumino/coreutils';
10
10
  import { Signal } from '@lumino/signaling';
11
11
  import { StateCommands } from './commands';
12
12
  import { customTheme, rulers } from './extensions';
13
- import { closeSearchPanel, findNext, findPrevious, openSearchPanel, selectNextOccurrence, selectSelectionMatches } from '@codemirror/search';
13
+ import { closeSearchPanel, findNext, findPrevious, openSearchPanel, selectSelectionMatches } from '@codemirror/search';
14
14
  /**
15
15
  * The class name added to read only editor widgets.
16
16
  */
@@ -525,13 +525,36 @@ export class EditorExtensionRegistry {
525
525
  default: [
526
526
  {
527
527
  key: 'Mod-Enter',
528
- run: StateCommands.preventNewLineOnRun
528
+ run: StateCommands.insertBlankLineOnRun
529
529
  },
530
530
  {
531
531
  key: 'Enter',
532
532
  run: StateCommands.completerOrInsertNewLine
533
533
  },
534
- ...defaultKeymap,
534
+ {
535
+ key: 'Escape',
536
+ run: StateCommands.simplifySelectionAndMaybeSwitchToCommandMode
537
+ },
538
+ ...defaultKeymap.filter(binding => {
539
+ // - Disable the default Mod-Enter handler as it always prevents default,
540
+ // preventing us from running cells with Ctrl + Enter. Instead we provide
541
+ // our own handler (insertBlankLineOnRun) which does not prevent default
542
+ // when used in code runner editors.
543
+ // - Disable the default Shift-Mod-k handler because users prefer Ctrl+D
544
+ // for deleting lines, and because it prevents opening Table of Contents
545
+ // with Ctrl+Shift+K.
546
+ // - Disable shortcuts for toggling comments ("Mod-/" and "Alt-A")
547
+ // as these as handled by lumino command
548
+ // - Disable Escape handler because it prevents default and we
549
+ // want to run a cell action (switch to command mode) on Esc
550
+ return ![
551
+ 'Mod-Enter',
552
+ 'Shift-Mod-k',
553
+ 'Mod-/',
554
+ 'Alt-A',
555
+ 'Escape'
556
+ ].includes(binding.key);
557
+ }),
535
558
  {
536
559
  key: 'Tab',
537
560
  run: StateCommands.indentMoreOrInsertTab,
@@ -615,8 +638,7 @@ export class EditorExtensionRegistry {
615
638
  key: 'Mod-Shift-l',
616
639
  run: selectSelectionMatches,
617
640
  preventDefault: true
618
- },
619
- { key: 'Mod-d', run: selectNextOccurrence, preventDefault: true }
641
+ }
620
642
  ]))
621
643
  }),
622
644
  Object.freeze({
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,eAAe,EACf,UAAU,EACV,aAAa,EACb,UAAU,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,WAAW,EAEX,IAAI,EACJ,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EAEnB,MAAM,EACN,WAAW,EACX,oBAAoB,EACpB,aAAa,EACb,QAAQ,EACT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAsB,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAW,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAe,MAAM,EAAE,MAAM,cAAc,CAAC;AAQhE,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAyB1C;;;;;GAKG;AACH,MAAM,OAAO,iBAAiB;IAG5B,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,iBAAiB,KACQ,EAAE;QAuQrB,mBAAc,GAAG,IAAI,MAAM,CAA4B,IAAI,CAAC,CAAC;QAE7D,cAAS,GAAG,IAAI,MAAM,CAAa,IAAI,CAAC,CAAC;QACzC,gBAAW,GAAG,KAAK,CAAC;QACpB,gBAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QA1QtC,IAAI,CAAC,WAAW,GAAG,iBAAiB,aAAjB,iBAAiB,cAAjB,iBAAiB,GAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QAE5B,IAAI,CAAC,uBAAuB,GAAG,IAAI,GAAG,CACpC,iBAAiB,CAClB,CAAC;QAEF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CACpD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAC9B,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CACxB,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAC7C,GAAG,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CACpC,CACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,OAAO;SACR;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACtB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc;;QACtB,OAAO,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc;QACtB,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC/C,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,MAAc,EAAE,KAAc;QACtC,6DAA6D;QAC7D,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE;YAClC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;SAC/C;IACH,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,OAA4B;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC3B,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACvE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,aAAa,CAAC,MAAM,CAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACrD,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBACjC,OAAO,GAAG,CAAC;gBACb,CAAC,EAAE,EAAE,CAAC,CACP,CAAC;aACH;SACF;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,UAAU,CAAC,OAA4B;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YAE9B,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,OAAO,CAAC,MAAM,CAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;;gBAC/C,GAAG,CAAC,GAAG,CAAC,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACtD,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAAE,CAAC,CACP,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAAI,IAAgB,EAAE,GAAW,EAAE,KAAQ;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAI,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAEzD,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,QAAQ,CAAC;gBACZ,OAAO,EAAE,CAAC,MAAM,CAAC;aAClB,CAAC,CAAC;SACJ;IACH,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CACnB,IAAgB,EAChB,aAAkC;QAElC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;aACvC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aAC5B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEnE,IAAI,CAAC,QAAQ,CAAC;YACZ,OAAO,EAAE,OAAO,CAAC,MAAM,CACrB,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,IAAI,CACA;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,IAAgB,EAAE,SAAoB;QACpD,IAAI,CAAC,QAAQ,CAAC;YACZ,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC;SAChD,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,oBAAoB;QAClB,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE/D,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;aACrC,GAAG,CAAC,GAAG,CAAC,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAA,EAAA,CAAC;aAC9C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAgB,CAAC;QACrC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,EAAE;gBACX,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC/B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;aAC1C;SACF;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACO,GAAG,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACO,GAAG,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAES,SAAS,CACjB,KAAkB,EAClB,GAAW,EACX,KAAQ;;QAER,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAC,KAAK,CAAC,mCAAI,IAAI,CAAC;IAC7C,CAAC;IAEO,kBAAkB,CACxB,SAA8B,EAC9B,SAA8B;QAE9B,MAAM,OAAO,GAAG,IAAI,KAAK,EAAU,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,KAAK,EAAU,CAAC;QACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YACpD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;gBAC5B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACnB;SACF;QACD,uBAAuB;QACvB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1E,OAAO,OAAO,CAAC;IACjB,CAAC;CASF;AAED;;GAEG;AACH,MAAM,OAAO,uBAAuB;IAApC;QAiGY,yBAAoB,GAAG,IAAI,GAAG,EAGrC,CAAC;QACM,wBAAmB,GAAwB,EAAE,CAAC;QAE9C,mBAAc,GAAwB,EAAE,CAAC;QACzC,aAAQ,GAAG,IAAI,GAAG,EAAqB,CAAC;QACxC,wBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,uBAAkB,GAAwB,EAAE,CAAC;IACvD,CAAC;IA1GC;;;;;OAKG;IACH,IAAI,iBAAiB;QACnB,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,iBAAiB,CAAC,CAAsB;QAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE;YAClD,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;YAC5B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACnC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;aAChD;SACF;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,oBAAoB;QACtB,uDAAuD;QACvD,8DAA8D;QAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAI,OAAmC;;QACjD,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,CAAC,IAAI,yBAAyB,CAAC,CAAC;SAC3E;QAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,OAAO,OAAO,CAAC,OAAO,IAAI,WAAW,EAAE;YACzC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;SACrD;QACD,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;gBACvC,OAAO,EAAE,MAAA,OAAO,CAAC,OAAO,mCAAI,IAAI;gBAChC,GAAG,OAAO,CAAC,MAAM;aAClB,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC/B,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;SAClD;IACH,CAAC;IAED;;;;OAIG;IACH,SAAS,CACP,OAKC;QAED,MAAM,aAAa,GAAG,IAAI,KAAK,EAAyC,CAAC;QACzE,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE;YAChE,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,SAAS,EAAE;gBACb,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;aACtC;SACF;QAED,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC;YACpC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,iBAAiB,EAAE,aAAa;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;CAWF;AAED;;GAEG;AACH,WAAiB,uBAAuB;IACtC;;OAEG;IACH,MAAM,qBAAqB;QACzB;;;;WAIG;QACH,YAAY,OAAgC;YAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC1B,CAAC;QAED;;;;;WAKG;QACH,QAAQ,CAAC,KAAQ;YACf,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACpD,CAAC;QAED;;;;;WAKG;QACH,WAAW,CAAC,KAAQ;YAClB,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CACH,CAAC;QACtB,CAAC;KAIF;IAED;;OAEG;IACH,MAAM,kBAAkB;QACtB;;;;WAIG;QACH,YAAY,SAAoB;YAC9B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC9B,CAAC;QAED;;;;WAIG;QACH,QAAQ;YACN,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QAED;;;;WAIG;QACH,WAAW;YACT,kBAAkB;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;KAGF;IAED;;;;;OAKG;IACH,SAAgB,2BAA2B,CACzC,OAAgC;QAEhC,OAAO,IAAI,qBAAqB,CAAI,OAAO,CAAC,CAAC;IAC/C,CAAC;IAJe,mDAA2B,8BAI1C,CAAA;IAED;;;;;;;OAOG;IACH,SAAgB,0BAA0B,CACxC,MAAiB,EACjB,QAAmB,EAAE;QAErB,OAAO,IAAI,qBAAqB,CAAU,KAAK,CAAC,EAAE,CAChD,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CACvB,CAAC;IACJ,CAAC;IAPe,kDAA0B,6BAOzC,CAAA;IAED;;;;;OAKG;IACH,SAAgB,wBAAwB,CACtC,SAAoB;QAEpB,OAAO,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAJe,gDAAwB,2BAIvC,CAAA;IAED;;;;OAIG;IACH,SAAgB,oBAAoB,CAClC,UAGI,EAAE;QAEN,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACvC,MAAM,KAAK,GAAG,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,cAAc,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,MAAM,UAAU,GAAmC;YACjD,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,aAAa,EAAE,CAAC;gBAC1D,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC;iBACzC;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,UAAU,EAAE,CAAC;gBACvD,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC;iBAChC;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAC,CAAC,KAAa,EAAE,EAAE,CAC5C,aAAa,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAC1C;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAC;oBACvC,WAAW,EAAE,KAAK,CAAC,EAAE,CACnB,4IAA4I,CAC7I;iBACF;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,mBAAmB,EAAE,CAAC;gBAChE,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAAC;iBAC7C;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,qBAAqB,EAAE,CAAC;gBAClE,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAAC;iBAChD;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CAAC,2BAA2B,EAAE,CAAC;gBAC3D,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iCAAiC,CAAC;iBACnD;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,mBAAmB,EAAE,CAAC;gBAChE,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAAC;iBAC1C;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,GAAG;gBACZ,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAS,CAAC,KAAa,EAAE,EAAE,CACpD,KAAK,IAAI,KAAK;oBACZ,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC;oBACrB,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CACnD;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC;oBACnC,WAAW,EAAE,KAAK,CAAC,EAAE,CACnB,gFAAgF,CACjF;oBACD,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;iBAClC;aACF,CAAC;YACF,6BAA6B;YAC7B,0DAA0D;YAC1D,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP;wBACE,GAAG,EAAE,WAAW;wBAChB,GAAG,EAAE,aAAa,CAAC,oBAAoB;qBACxC;oBACD;wBACE,GAAG,EAAE,OAAO;wBACZ,GAAG,EAAE,aAAa,CAAC,wBAAwB;qBAC5C;oBACD;wBACE,GAAG,EAAE,QAAQ;wBACb,GAAG,EAAE,aAAa,CAAC,4CAA4C;qBAChE;oBACD,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;wBAChC,yEAAyE;wBACzE,2EAA2E;wBAC3E,0EAA0E;wBAC1E,sCAAsC;wBACtC,wEAAwE;wBACxE,0EAA0E;wBAC1E,uBAAuB;wBACvB,kEAAkE;wBAClE,0CAA0C;wBAC1C,8DAA8D;wBAC9D,8DAA8D;wBAC9D,OAAO,CAAC;4BACN,WAAW;4BACX,aAAa;4BACb,OAAO;4BACP,OAAO;4BACP,QAAQ;yBACT,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAa,CAAC,CAAC;oBACpC,CAAC,CAAC;oBACF;wBACE,GAAG,EAAE,KAAK;wBACV,GAAG,EAAE,aAAa,CAAC,qBAAqB;wBACxC,KAAK,EAAE,aAAa,CAAC,2BAA2B;qBACjD;iBACF;gBACD,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAe,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;aACvE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,WAAW,EAAE,CAAC;gBACxD,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC;iBAChC;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,UAAU,CAAC,YAAY,CAAC;gBAClE,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC;iBAC7B;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CAAC;oBACzB,eAAe,EAAE;oBACjB,qEAAqE;oBACrE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC;iBAC1C,CAAC;gBACJ,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC;iBAClC;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CAAC;oBACzB,oBAAoB,EAAE;oBACtB,eAAe,EAAE;iBAClB,CAAC;gBACJ,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC;oBACxC,WAAW,EAAE,KAAK,CAAC,EAAE,CACnB,wPAAwP,CACzP;iBACF;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC;oBAC9C,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC;oBAC9B,KAAK;wBACH,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;wBAC5D,CAAC,CAAC,EAAE;iBACP,CAAC;aACL,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAC,CAAC,KAAe,EAAE,EAAE,CAC9C,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CACtC;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC;oBACzB,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,CAAC;qBACX;iBACF;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CACxB,MAAM,CAAC,EAAE,CAAC;oBACR;wBACE,GAAG,EAAE,aAAa;wBAClB,GAAG,EAAE,sBAAsB;wBAC3B,cAAc,EAAE,IAAI;qBACrB;iBACF,CAAC,CACH;aACJ,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,iEAAiE;gBACjE,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CACxB,MAAM,CAAC,EAAE,CAAC;oBACR;wBACE,GAAG,EAAE,OAAO;wBACZ,GAAG,EAAE,eAAe;wBACpB,KAAK,EAAE,qBAAqB;qBAC7B;oBACD;wBACE,GAAG,EAAE,IAAI;wBACT,GAAG,EAAE,QAAQ;wBACb,KAAK,EAAE,YAAY;wBACnB,KAAK,EAAE,qBAAqB;wBAC5B,cAAc,EAAE,IAAI;qBACrB;oBACD;wBACE,GAAG,EAAE,OAAO;wBACZ,GAAG,EAAE,QAAQ;wBACb,KAAK,EAAE,YAAY;wBACnB,KAAK,EAAE,qBAAqB;wBAC5B,cAAc,EAAE,IAAI;qBACrB;oBACD;wBACE,GAAG,EAAE,QAAQ;wBACb,GAAG,EAAE,gBAAgB;wBACrB,KAAK,EAAE,qBAAqB;qBAC7B;iBACF,CAAC,CACH;aACJ,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,CAAC,OAAyC,EAAE,EAAE,CACrD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,aAAa,EAAE,CAAC;aACtE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,aAAa,EAAE,CAAC;gBAC1D,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC;iBACrC;aACF,CAAC;YACF;;;;;;;;;;;;;eAaG;YACH,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,cAAc;gBACpB,sEAAsE;gBACtE,oEAAoE;gBACpE,wEAAwE;gBACxE,sEAAsE;gBACtE,gEAAgE;gBAChE,oEAAoE;gBACpE,mEAAmE;gBACnE,uEAAuE;gBACvE,mCAAmC;gBACnC,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,0BAA0B,CACxB,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBAC9B,QAAQ,EAAE,GAAG;iBACd,CAAC,EACF,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBAC9B,QAAQ,EAAE,IAAI;iBACf,CAAC,CACH;aACJ,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAC,CAAC,KAAa,EAAE,EAAE,CAC5C,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAC9B;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC;iBAC5B;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,GAAG,EAAE;gBACZ,gEAAgE;gBAChE,8DAA8D;gBAC9D,uCAAuC;gBACvC,wBAAwB,CACtB,QAAQ,CAAC;oBACP,QAAQ,EAAE,UAAU;oBACpB,MAAM,EAAE,QAAQ,CAAC,IAAI;iBACtB,CAAC,CACH;aACJ,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAC,CAAC,KAAc,EAAE,EAAE,CAC7C,WAAW,CAAC,uBAAuB,CAAC,EAAE,CAAC,KAAK,CAAC,CAC9C;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAAC;iBACvC;aACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAc,MAAM,CAAC,EAAE,CAChD,WAAW,CAAC,MAAM,CAAC,CACpB;gBACH,OAAO,EAAE;oBACP,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,IAAI;iBACjB;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAC;oBACvC,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,UAAU,EAAE;4BACV,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;4BACxB,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;yBAC/B;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;4BACxB,OAAO,EAAE,CAAC;4BACV,OAAO,EAAE,GAAG;4BACZ,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC;yBAC7B;wBACD,UAAU,EAAE;4BACV,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;4BACxB,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;yBAC/B;qBACF;oBACD,oBAAoB,EAAE,KAAK;iBAC5B;aACF,CAAC;SACH,CAAC;QAEF,IAAI,MAAM,EAAE;YACV,UAAU,CAAC,IAAI,CACb,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAS,KAAK,CAAC,EAAE,CAC1C,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CACvB;gBACH,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC;oBACxB,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC;iBAC1C;aACF,CAAC,CACH,CAAC;SACH;QAED,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,IAAI,CACb,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,aAAa;gBACnB,0FAA0F;gBAC1F,OAAO,EAAE;oBACP,mBAAmB;oBACnB,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC;oBAClD,uBAAuB;oBACvB,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC;oBAClD,uBAAuB;oBACvB,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC;oBACxC,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC;oBAC5C,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC;oBAClB,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;oBACtC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC;oBAC1B,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC;oBAClC,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;oBACtC,qBAAqB;oBACrB,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC;oBACpC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC;oBAClB,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;oBACtB,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC;oBAC5B,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;oBACtB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC;oBAC9B,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC;oBACpB,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC;oBACpC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC;oBAC5B,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;oBACtC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC;oBACxB,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC;oBAC1C,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC;oBACpD,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAAC;oBAChE,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC;oBAC9B,2BAA2B;oBAC3B,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;oBACpC,mBAAmB;oBACnB,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC;oBACpC,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC;iBAC7C;gBACD,OAAO,EAAE,GAAG,EAAE,CACZ,2BAA2B,CAAyB,KAAK,CAAC,EAAE,CAC1D,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAC9B;aACJ,CAAC,CACH,CAAC;SACH;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAxce,4CAAoB,uBAwcnC,CAAA;AACH,CAAC,EAnkBgB,uBAAuB,KAAvB,uBAAuB,QAmkBvC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jupyterlab/codemirror",
3
- "version": "4.2.0-alpha.2",
3
+ "version": "4.2.0-beta.1",
4
4
  "description": "JupyterLab - CodeMirror Editor Provider",
5
5
  "homepage": "https://github.com/jupyterlab/jupyterlab",
6
6
  "bugs": {
@@ -59,11 +59,11 @@
59
59
  "@codemirror/state": "^6.4.1",
60
60
  "@codemirror/view": "^6.26.0",
61
61
  "@jupyter/ydoc": "^2.0.1",
62
- "@jupyterlab/codeeditor": "^4.2.0-alpha.2",
63
- "@jupyterlab/coreutils": "^6.2.0-alpha.2",
64
- "@jupyterlab/documentsearch": "^4.2.0-alpha.2",
65
- "@jupyterlab/nbformat": "^4.2.0-alpha.2",
66
- "@jupyterlab/translation": "^4.2.0-alpha.2",
62
+ "@jupyterlab/codeeditor": "^4.2.0-beta.1",
63
+ "@jupyterlab/coreutils": "^6.2.0-beta.1",
64
+ "@jupyterlab/documentsearch": "^4.2.0-beta.1",
65
+ "@jupyterlab/nbformat": "^4.2.0-beta.1",
66
+ "@jupyterlab/translation": "^4.2.0-beta.1",
67
67
  "@lezer/common": "^1.2.1",
68
68
  "@lezer/generator": "^1.7.0",
69
69
  "@lezer/highlight": "^1.2.0",
@@ -74,7 +74,7 @@
74
74
  "yjs": "^13.5.40"
75
75
  },
76
76
  "devDependencies": {
77
- "@jupyterlab/testing": "^4.2.0-alpha.2",
77
+ "@jupyterlab/testing": "^4.2.0-beta.1",
78
78
  "@lezer/generator": "^1.7.0",
79
79
  "@lezer/lr": "^1.4.0",
80
80
  "@types/jest": "^29.2.0",
package/src/commands.ts CHANGED
@@ -6,8 +6,10 @@
6
6
  import {
7
7
  indentLess,
8
8
  indentMore,
9
+ insertBlankLine,
9
10
  insertNewlineAndIndent,
10
- insertTab
11
+ insertTab,
12
+ simplifySelection
11
13
  } from '@codemirror/commands';
12
14
  import { EditorState, Transaction } from '@codemirror/state';
13
15
  import {
@@ -26,6 +28,12 @@ const CODE_RUNNER_SELECTOR = '[data-jp-code-runner]';
26
28
  const TOOLTIP_OPENER_SELECTOR =
27
29
  '.jp-CodeMirrorEditor:not(.jp-mod-has-primary-selection):not(.jp-mod-in-leading-whitespace):not(.jp-mod-completer-active)';
28
30
 
31
+ /**
32
+ * Selector for an active cell in edit mode.
33
+ */
34
+ const ACTIVE_CELL_IN_EDIT_MODE_SELECTOR =
35
+ '.jp-mod-editMode .jp-Cell.jp-mod-active';
36
+
29
37
  /**
30
38
  * CodeMirror commands namespace
31
39
  */
@@ -76,6 +84,7 @@ export namespace StateCommands {
76
84
 
77
85
  /**
78
86
  * Prevent insertion of new line when running cell with Ctrl/Command + Enter
87
+ * @deprecated
79
88
  */
80
89
  export function preventNewLineOnRun(target: { dom: HTMLElement }): boolean {
81
90
  if (target.dom.closest(CODE_RUNNER_SELECTOR)) {
@@ -84,6 +93,41 @@ export namespace StateCommands {
84
93
  return false;
85
94
  }
86
95
 
96
+ /**
97
+ * Insert a new line or run a cell with Ctrl/Command + Enter
98
+ */
99
+ export function insertBlankLineOnRun(target: {
100
+ dom: HTMLElement;
101
+ state: EditorState;
102
+ dispatch: (transaction: Transaction) => void;
103
+ }): boolean {
104
+ if (target.dom.closest(CODE_RUNNER_SELECTOR)) {
105
+ // do not prevent default to allow `run` action to be handled by lumino
106
+ return false;
107
+ } else {
108
+ const arg = { state: target.state, dispatch: target.dispatch };
109
+ return insertBlankLine(arg);
110
+ }
111
+ }
112
+
113
+ /**
114
+ * Simplify selection but do not prevent default to allow switching to command mode.
115
+ */
116
+ export function simplifySelectionAndMaybeSwitchToCommandMode(target: {
117
+ dom: HTMLElement;
118
+ state: EditorState;
119
+ dispatch: (transaction: Transaction) => void;
120
+ }): boolean {
121
+ const arg = { state: target.state, dispatch: target.dispatch };
122
+ const preventDefault = simplifySelection(arg);
123
+ if (target.dom.closest(ACTIVE_CELL_IN_EDIT_MODE_SELECTOR)) {
124
+ // do not prevent default to allow switching to command mode
125
+ return false;
126
+ } else {
127
+ return preventDefault;
128
+ }
129
+ }
130
+
87
131
  /**
88
132
  * Prevent dedenting when launching inspection request (a.k.a tooltip).
89
133
  *
package/src/extension.ts CHANGED
@@ -49,7 +49,6 @@ import {
49
49
  findNext,
50
50
  findPrevious,
51
51
  openSearchPanel,
52
- selectNextOccurrence,
53
52
  selectSelectionMatches
54
53
  } from '@codemirror/search';
55
54
 
@@ -705,13 +704,36 @@ export namespace EditorExtensionRegistry {
705
704
  default: [
706
705
  {
707
706
  key: 'Mod-Enter',
708
- run: StateCommands.preventNewLineOnRun
707
+ run: StateCommands.insertBlankLineOnRun
709
708
  },
710
709
  {
711
710
  key: 'Enter',
712
711
  run: StateCommands.completerOrInsertNewLine
713
712
  },
714
- ...defaultKeymap,
713
+ {
714
+ key: 'Escape',
715
+ run: StateCommands.simplifySelectionAndMaybeSwitchToCommandMode
716
+ },
717
+ ...defaultKeymap.filter(binding => {
718
+ // - Disable the default Mod-Enter handler as it always prevents default,
719
+ // preventing us from running cells with Ctrl + Enter. Instead we provide
720
+ // our own handler (insertBlankLineOnRun) which does not prevent default
721
+ // when used in code runner editors.
722
+ // - Disable the default Shift-Mod-k handler because users prefer Ctrl+D
723
+ // for deleting lines, and because it prevents opening Table of Contents
724
+ // with Ctrl+Shift+K.
725
+ // - Disable shortcuts for toggling comments ("Mod-/" and "Alt-A")
726
+ // as these as handled by lumino command
727
+ // - Disable Escape handler because it prevents default and we
728
+ // want to run a cell action (switch to command mode) on Esc
729
+ return ![
730
+ 'Mod-Enter',
731
+ 'Shift-Mod-k',
732
+ 'Mod-/',
733
+ 'Alt-A',
734
+ 'Escape'
735
+ ].includes(binding.key as string);
736
+ }),
715
737
  {
716
738
  key: 'Tab',
717
739
  run: StateCommands.indentMoreOrInsertTab,
@@ -806,8 +828,7 @@ export namespace EditorExtensionRegistry {
806
828
  key: 'Mod-Shift-l',
807
829
  run: selectSelectionMatches,
808
830
  preventDefault: true
809
- },
810
- { key: 'Mod-d', run: selectNextOccurrence, preventDefault: true }
831
+ }
811
832
  ])
812
833
  )
813
834
  }),
package/style/base.css CHANGED
@@ -14,6 +14,11 @@
14
14
  /* Changed to auto to autogrow */
15
15
  }
16
16
 
17
+ /* Suppress automatic focus indicator outline */
18
+ .cm-editor.cm-focused {
19
+ outline: unset;
20
+ }
21
+
17
22
  .cm-editor pre {
18
23
  padding: 0 var(--jp-code-padding);
19
24
  }