@jupyterlab/notebook 3.3.0-alpha.9 → 4.0.0-alpha.4

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/actions.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as nbformat from '@jupyterlab/nbformat';
4
4
  import { KernelMessage } from '@jupyterlab/services';
5
5
  import { ITranslator } from '@jupyterlab/translation';
6
6
  import { ISignal } from '@lumino/signaling';
7
- import { Notebook } from './widget';
7
+ import { Notebook, StaticNotebook } from './widget';
8
8
  export declare class KernelError extends Error {
9
9
  /**
10
10
  * Exception name
@@ -289,6 +289,38 @@ export declare namespace NotebookActions {
289
289
  * The existing selection will be cleared.
290
290
  */
291
291
  function selectBelow(notebook: Notebook): void;
292
+ /** Insert new heading of same level above active cell.
293
+ *
294
+ * @param notebook - The target notebook widget
295
+ */
296
+ function insertSameLevelHeadingAbove(notebook: Notebook): void;
297
+ /** Insert new heading of same level at end of current section.
298
+ *
299
+ * @param notebook - The target notebook widget
300
+ */
301
+ function insertSameLevelHeadingBelow(notebook: Notebook): void;
302
+ /**
303
+ * Select the heading above the active cell or, if already at heading, collapse it.
304
+ *
305
+ * @param notebook - The target notebook widget.
306
+ *
307
+ * #### Notes
308
+ * The widget mode will be preserved.
309
+ * This is a no-op if the active cell is the topmost heading in collapsed state
310
+ * The existing selection will be cleared.
311
+ */
312
+ function selectHeadingAboveOrCollapseHeading(notebook: Notebook): void;
313
+ /**
314
+ * Select the heading below the active cell or, if already at heading, expand it.
315
+ *
316
+ * @param notebook - The target notebook widget.
317
+ *
318
+ * #### Notes
319
+ * The widget mode will be preserved.
320
+ * This is a no-op if the active cell is the last heading in expanded state
321
+ * The existing selection will be cleared.
322
+ */
323
+ function selectHeadingBelowOrExpandHeading(notebook: Notebook): void;
292
324
  /**
293
325
  * Extend the selection to the cell above.
294
326
  *
@@ -443,6 +475,18 @@ export declare namespace NotebookActions {
443
475
  * @param notebook - The target notebook widget.
444
476
  */
445
477
  function hideAllOutputs(notebook: Notebook): void;
478
+ /**
479
+ * Render side-by-side.
480
+ *
481
+ * @param notebook - The target notebook widget.
482
+ */
483
+ function renderSideBySide(notebook: Notebook): void;
484
+ /**
485
+ * Render not side-by-side.
486
+ *
487
+ * @param notebook - The target notebook widget.
488
+ */
489
+ function renderDefault(notebook: Notebook): void;
446
490
  /**
447
491
  * Show the output on all code cells.
448
492
  *
@@ -490,7 +534,7 @@ export declare namespace NotebookActions {
490
534
  *
491
535
  * @param notebook - The target notebook widget.
492
536
  */
493
- function collapseAll(notebook: Notebook): any;
537
+ function collapseAllHeadings(notebook: Notebook): any;
494
538
  /**
495
539
  * Un-collapse all cells in given notebook.
496
540
  *
@@ -519,7 +563,7 @@ export declare namespace NotebookActions {
519
563
  * @param collapsing - Whether to collapse or expand the cell
520
564
  * @param notebook - The target notebook widget.
521
565
  */
522
- function setHeadingCollapse(cell: Cell, collapsing: boolean, notebook: Notebook): number;
566
+ function setHeadingCollapse(cell: Cell, collapsing: boolean, notebook: StaticNotebook): number;
523
567
  /**
524
568
  * Toggles the collapse state of the active cell of the given notebook
525
569
  * and ** all of its "child" cells ** if the cell is a heading.
package/lib/actions.js CHANGED
@@ -682,6 +682,100 @@ export class NotebookActions {
682
682
  Private.handleState(notebook, state, true);
683
683
  }
684
684
  NotebookActions.selectBelow = selectBelow;
685
+ /** Insert new heading of same level above active cell.
686
+ *
687
+ * @param notebook - The target notebook widget
688
+ */
689
+ function insertSameLevelHeadingAbove(notebook) {
690
+ if (!notebook.model || !notebook.activeCell) {
691
+ return;
692
+ }
693
+ let headingLevel = Private.Headings.determineHeadingLevel(notebook.activeCell, notebook);
694
+ if (headingLevel == -1) {
695
+ Private.Headings.insertHeadingAboveCellIndex(0, 1, notebook);
696
+ }
697
+ else {
698
+ Private.Headings.insertHeadingAboveCellIndex(notebook.activeCellIndex, headingLevel, notebook);
699
+ }
700
+ }
701
+ NotebookActions.insertSameLevelHeadingAbove = insertSameLevelHeadingAbove;
702
+ /** Insert new heading of same level at end of current section.
703
+ *
704
+ * @param notebook - The target notebook widget
705
+ */
706
+ function insertSameLevelHeadingBelow(notebook) {
707
+ if (!notebook.model || !notebook.activeCell) {
708
+ return;
709
+ }
710
+ let headingLevel = Private.Headings.determineHeadingLevel(notebook.activeCell, notebook);
711
+ headingLevel = headingLevel > -1 ? headingLevel : 1;
712
+ let cellIdxOfHeadingBelow = Private.Headings.findLowerEqualLevelHeadingBelow(notebook.activeCell, notebook, true);
713
+ Private.Headings.insertHeadingAboveCellIndex(cellIdxOfHeadingBelow == -1
714
+ ? notebook.model.cells.length
715
+ : cellIdxOfHeadingBelow, headingLevel, notebook);
716
+ }
717
+ NotebookActions.insertSameLevelHeadingBelow = insertSameLevelHeadingBelow;
718
+ /**
719
+ * Select the heading above the active cell or, if already at heading, collapse it.
720
+ *
721
+ * @param notebook - The target notebook widget.
722
+ *
723
+ * #### Notes
724
+ * The widget mode will be preserved.
725
+ * This is a no-op if the active cell is the topmost heading in collapsed state
726
+ * The existing selection will be cleared.
727
+ */
728
+ function selectHeadingAboveOrCollapseHeading(notebook) {
729
+ if (!notebook.model || !notebook.activeCell) {
730
+ return;
731
+ }
732
+ const state = Private.getState(notebook);
733
+ let hInfoActiveCell = getHeadingInfo(notebook.activeCell);
734
+ // either collapse or find the right heading to jump to
735
+ if (hInfoActiveCell.isHeading && !hInfoActiveCell.collapsed) {
736
+ setHeadingCollapse(notebook.activeCell, true, notebook);
737
+ }
738
+ else {
739
+ let targetHeadingCellIdx = Private.Headings.findLowerEqualLevelParentHeadingAbove(notebook.activeCell, notebook, true);
740
+ if (targetHeadingCellIdx > -1) {
741
+ notebook.activeCellIndex = targetHeadingCellIdx;
742
+ }
743
+ }
744
+ // clear selection and handle state
745
+ notebook.deselectAll();
746
+ Private.handleState(notebook, state, true);
747
+ }
748
+ NotebookActions.selectHeadingAboveOrCollapseHeading = selectHeadingAboveOrCollapseHeading;
749
+ /**
750
+ * Select the heading below the active cell or, if already at heading, expand it.
751
+ *
752
+ * @param notebook - The target notebook widget.
753
+ *
754
+ * #### Notes
755
+ * The widget mode will be preserved.
756
+ * This is a no-op if the active cell is the last heading in expanded state
757
+ * The existing selection will be cleared.
758
+ */
759
+ function selectHeadingBelowOrExpandHeading(notebook) {
760
+ if (!notebook.model || !notebook.activeCell) {
761
+ return;
762
+ }
763
+ const state = Private.getState(notebook);
764
+ let hInfo = getHeadingInfo(notebook.activeCell);
765
+ if (hInfo.isHeading && hInfo.collapsed) {
766
+ setHeadingCollapse(notebook.activeCell, false, notebook);
767
+ }
768
+ else {
769
+ let targetHeadingCellIdx = Private.Headings.findHeadingBelow(notebook.activeCell, notebook, true // return index of heading cell
770
+ );
771
+ if (targetHeadingCellIdx > -1) {
772
+ notebook.activeCellIndex = targetHeadingCellIdx;
773
+ }
774
+ }
775
+ notebook.deselectAll();
776
+ Private.handleState(notebook, state, true);
777
+ }
778
+ NotebookActions.selectHeadingBelowOrExpandHeading = selectHeadingBelowOrExpandHeading;
685
779
  /**
686
780
  * Extend the selection to the cell above.
687
781
  *
@@ -820,7 +914,17 @@ export class NotebookActions {
820
914
  const newCells = values.map(cell => {
821
915
  switch (cell.cell_type) {
822
916
  case 'code':
823
- return model.contentFactory.createCodeCell({ cell });
917
+ if (notebook.lastClipboardInteraction === 'cut' &&
918
+ typeof cell.id === 'string') {
919
+ let cellId = cell.id;
920
+ return model.contentFactory.createCodeCell({
921
+ id: cellId,
922
+ cell: cell
923
+ });
924
+ }
925
+ else {
926
+ return model.contentFactory.createCodeCell({ cell });
927
+ }
824
928
  case 'markdown':
825
929
  return model.contentFactory.createMarkdownCell({ cell });
826
930
  default:
@@ -866,6 +970,7 @@ export class NotebookActions {
866
970
  cells.endCompoundOperation();
867
971
  notebook.activeCellIndex += newCells.length;
868
972
  notebook.deselectAll();
973
+ notebook.lastClipboardInteraction = 'paste';
869
974
  Private.handleState(notebook, state);
870
975
  }
871
976
  NotebookActions.paste = paste;
@@ -1106,6 +1211,24 @@ export class NotebookActions {
1106
1211
  Private.handleState(notebook, state, true);
1107
1212
  }
1108
1213
  NotebookActions.hideAllOutputs = hideAllOutputs;
1214
+ /**
1215
+ * Render side-by-side.
1216
+ *
1217
+ * @param notebook - The target notebook widget.
1218
+ */
1219
+ function renderSideBySide(notebook) {
1220
+ notebook.renderingLayout = 'side-by-side';
1221
+ }
1222
+ NotebookActions.renderSideBySide = renderSideBySide;
1223
+ /**
1224
+ * Render not side-by-side.
1225
+ *
1226
+ * @param notebook - The target notebook widget.
1227
+ */
1228
+ function renderDefault(notebook) {
1229
+ notebook.renderingLayout = 'default';
1230
+ }
1231
+ NotebookActions.renderDefault = renderDefault;
1109
1232
  /**
1110
1233
  * Show the output on all code cells.
1111
1234
  *
@@ -1230,7 +1353,7 @@ export class NotebookActions {
1230
1353
  *
1231
1354
  * @param notebook - The target notebook widget.
1232
1355
  */
1233
- function collapseAll(notebook) {
1356
+ function collapseAllHeadings(notebook) {
1234
1357
  for (const cell of notebook.widgets) {
1235
1358
  if (NotebookActions.getHeadingInfo(cell).isHeading) {
1236
1359
  NotebookActions.setHeadingCollapse(cell, true, notebook);
@@ -1238,7 +1361,7 @@ export class NotebookActions {
1238
1361
  }
1239
1362
  }
1240
1363
  }
1241
- NotebookActions.collapseAll = collapseAll;
1364
+ NotebookActions.collapseAllHeadings = collapseAllHeadings;
1242
1365
  /**
1243
1366
  * Un-collapse all cells in given notebook.
1244
1367
  *
@@ -1760,6 +1883,12 @@ var Private;
1760
1883
  else {
1761
1884
  notebook.deselectAll();
1762
1885
  }
1886
+ if (cut) {
1887
+ notebook.lastClipboardInteraction = 'cut';
1888
+ }
1889
+ else {
1890
+ notebook.lastClipboardInteraction = 'copy';
1891
+ }
1763
1892
  handleState(notebook, state);
1764
1893
  }
1765
1894
  Private.copyOrCut = copyOrCut;
@@ -1882,5 +2011,152 @@ var Private;
1882
2011
  cell.value.text = newHeader + source;
1883
2012
  }
1884
2013
  Private.setMarkdownHeader = setMarkdownHeader;
2014
+ /** Functionality related to collapsible headings */
2015
+ let Headings;
2016
+ (function (Headings) {
2017
+ /** Find the heading that is parent to cell.
2018
+ *
2019
+ * @param childCell - The cell that is child to the sought heading
2020
+ * @param notebook - The target notebook widget
2021
+ * @param includeChildCell [default=false] - if set to true and childCell is a heading itself, the childCell will be returned
2022
+ * @param returnIndex [default=false] - if set to true, the cell index is returned rather than the cell object.
2023
+ *
2024
+ * @returns the (index | Cell object) of the parent heading or (-1 | null) if there is no parent heading.
2025
+ */
2026
+ function findParentHeading(childCell, notebook, includeChildCell = false, returnIndex = false) {
2027
+ let cellIdx = notebook.widgets.indexOf(childCell) - (includeChildCell ? 1 : 0);
2028
+ while (cellIdx >= 0) {
2029
+ let headingInfo = NotebookActions.getHeadingInfo(notebook.widgets[cellIdx]);
2030
+ if (headingInfo.isHeading) {
2031
+ return returnIndex ? cellIdx : notebook.widgets[cellIdx];
2032
+ }
2033
+ cellIdx--;
2034
+ }
2035
+ return returnIndex ? -1 : null;
2036
+ }
2037
+ Headings.findParentHeading = findParentHeading;
2038
+ /** Find heading above with leq level than baseCell heading level.
2039
+ *
2040
+ * @param baseCell - cell relative to which so search
2041
+ * @param notebook - target notebook widget
2042
+ * @param returnIndex [default=false] - if set to true, the cell index is returned rather than the cell object.
2043
+ *
2044
+ * @returns the (index | Cell object) of the found heading or (-1 | null) if no heading found.
2045
+ */
2046
+ function findLowerEqualLevelParentHeadingAbove(baseCell, notebook, returnIndex = false) {
2047
+ let baseHeadingLevel = Private.Headings.determineHeadingLevel(baseCell, notebook);
2048
+ if (baseHeadingLevel == -1) {
2049
+ baseHeadingLevel = 1; // if no heading level can be determined, assume we're on level 1
2050
+ }
2051
+ // find the heading above with heading level <= baseHeadingLevel and return its index
2052
+ let cellIdx = notebook.widgets.indexOf(baseCell) - 1;
2053
+ while (cellIdx >= 0) {
2054
+ let cell = notebook.widgets[cellIdx];
2055
+ let headingInfo = NotebookActions.getHeadingInfo(cell);
2056
+ if (headingInfo.isHeading &&
2057
+ headingInfo.headingLevel <= baseHeadingLevel) {
2058
+ return returnIndex ? cellIdx : cell;
2059
+ }
2060
+ cellIdx--;
2061
+ }
2062
+ return returnIndex ? -1 : null; // no heading found
2063
+ }
2064
+ Headings.findLowerEqualLevelParentHeadingAbove = findLowerEqualLevelParentHeadingAbove;
2065
+ /** Find next heading with equal or lower level.
2066
+ *
2067
+ * @param baseCell - cell relative to which so search
2068
+ * @param notebook - target notebook widget
2069
+ * @param returnIndex [default=false] - if set to true, the cell index is returned rather than the cell object.
2070
+ *
2071
+ * @returns the (index | Cell object) of the found heading or (-1 | null) if no heading found.
2072
+ */
2073
+ function findLowerEqualLevelHeadingBelow(baseCell, notebook, returnIndex = false) {
2074
+ let baseHeadingLevel = Private.Headings.determineHeadingLevel(baseCell, notebook);
2075
+ if (baseHeadingLevel == -1) {
2076
+ baseHeadingLevel = 1; // if no heading level can be determined, assume we're on level 1
2077
+ }
2078
+ let cellIdx = notebook.widgets.indexOf(baseCell) + 1;
2079
+ while (cellIdx < notebook.widgets.length) {
2080
+ let cell = notebook.widgets[cellIdx];
2081
+ let headingInfo = NotebookActions.getHeadingInfo(cell);
2082
+ if (headingInfo.isHeading &&
2083
+ headingInfo.headingLevel <= baseHeadingLevel) {
2084
+ return returnIndex ? cellIdx : cell;
2085
+ }
2086
+ cellIdx++;
2087
+ }
2088
+ return returnIndex ? -1 : null;
2089
+ }
2090
+ Headings.findLowerEqualLevelHeadingBelow = findLowerEqualLevelHeadingBelow;
2091
+ /** Find next heading.
2092
+ *
2093
+ * @param baseCell - cell relative to which so search
2094
+ * @param notebook - target notebook widget
2095
+ * @param returnIndex [default=false] - if set to true, the cell index is returned rather than the cell object.
2096
+ *
2097
+ * @returns the (index | Cell object) of the found heading or (-1 | null) if no heading found.
2098
+ */
2099
+ function findHeadingBelow(baseCell, notebook, returnIndex = false) {
2100
+ let cellIdx = notebook.widgets.indexOf(baseCell) + 1;
2101
+ while (cellIdx < notebook.widgets.length) {
2102
+ let cell = notebook.widgets[cellIdx];
2103
+ let headingInfo = NotebookActions.getHeadingInfo(cell);
2104
+ if (headingInfo.isHeading) {
2105
+ return returnIndex ? cellIdx : cell;
2106
+ }
2107
+ cellIdx++;
2108
+ }
2109
+ return returnIndex ? -1 : null;
2110
+ }
2111
+ Headings.findHeadingBelow = findHeadingBelow;
2112
+ /** Determine the heading level of a cell.
2113
+ *
2114
+ * @param baseCell - The cell of which the heading level shall be determined
2115
+ * @param notebook - The target notebook widget
2116
+ *
2117
+ * @returns the heading level or -1 if there is no parent heading
2118
+ *
2119
+ * #### Notes
2120
+ * If the baseCell is a heading itself, the heading level of baseCell is returned.
2121
+ * If the baseCell is not a heading itself, the level of the parent heading is returned.
2122
+ * If there is no parent heading, -1 is returned.
2123
+ */
2124
+ function determineHeadingLevel(baseCell, notebook) {
2125
+ let headingInfoBaseCell = NotebookActions.getHeadingInfo(baseCell);
2126
+ // fill baseHeadingLevel or return null if there is no heading at or above baseCell
2127
+ if (headingInfoBaseCell.isHeading) {
2128
+ return headingInfoBaseCell.headingLevel;
2129
+ }
2130
+ else {
2131
+ let parentHeading = findParentHeading(baseCell, notebook, true);
2132
+ if (parentHeading == null) {
2133
+ return -1;
2134
+ }
2135
+ return NotebookActions.getHeadingInfo(parentHeading).headingLevel;
2136
+ }
2137
+ }
2138
+ Headings.determineHeadingLevel = determineHeadingLevel;
2139
+ /** Insert a new heading cell at given position.
2140
+ *
2141
+ * @param cellIndex - where to insert
2142
+ * @param headingLevel - level of the new heading
2143
+ * @param notebook - target notebook
2144
+ *
2145
+ * #### Notes
2146
+ * Enters edit mode after insert.
2147
+ */
2148
+ function insertHeadingAboveCellIndex(cellIndex, headingLevel, notebook) {
2149
+ const state = Private.getState(notebook);
2150
+ const newCell = notebook.model.contentFactory.createMarkdownCell({});
2151
+ notebook.model.cells.insert(cellIndex, newCell);
2152
+ Private.setMarkdownHeader(newCell, headingLevel);
2153
+ notebook.activeCellIndex = cellIndex;
2154
+ notebook.deselectAll();
2155
+ Private.handleState(notebook, state, true);
2156
+ notebook.mode = 'edit';
2157
+ notebook.widgets[cellIndex].setHidden(false);
2158
+ }
2159
+ Headings.insertHeadingAboveCellIndex = insertHeadingAboveCellIndex;
2160
+ })(Headings = Private.Headings || (Private.Headings = {}));
1885
2161
  })(Private || (Private = {}));
1886
2162
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.tsx"],"names":[],"mappings":"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"}