@jupyterlab/filebrowser 4.0.0-alpha.6 → 4.0.0-alpha.9

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/browser.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { Contents } from '@jupyterlab/services';
2
2
  import { ITranslator } from '@jupyterlab/translation';
3
- import { Toolbar } from '@jupyterlab/ui-components';
3
+ import { SidePanel } from '@jupyterlab/ui-components';
4
4
  import { IIterator } from '@lumino/algorithm';
5
- import { PanelLayout, Widget } from '@lumino/widgets';
5
+ import { Panel } from '@lumino/widgets';
6
6
  import { BreadCrumbs } from './crumbs';
7
7
  import { DirListing } from './listing';
8
8
  import { FilterFileBrowserModel } from './model';
@@ -13,7 +13,7 @@ import { FilterFileBrowserModel } from './model';
13
13
  * and presents itself as a flat list of files and directories with
14
14
  * breadcrumbs.
15
15
  */
16
- export declare class FileBrowser extends Widget {
16
+ export declare class FileBrowser extends SidePanel {
17
17
  /**
18
18
  * Construct a new file browser.
19
19
  *
@@ -24,14 +24,6 @@ export declare class FileBrowser extends Widget {
24
24
  * The model used by the file browser.
25
25
  */
26
26
  readonly model: FilterFileBrowserModel;
27
- /**
28
- * The toolbar used by the file browser.
29
- */
30
- readonly toolbar: Toolbar<Widget>;
31
- /**
32
- * Override Widget.layout with a more specific PanelLayout type.
33
- */
34
- layout: PanelLayout;
35
27
  /**
36
28
  * Whether to show active file in file browser
37
29
  */
@@ -51,6 +43,11 @@ export declare class FileBrowser extends Widget {
51
43
  */
52
44
  get showHiddenFiles(): boolean;
53
45
  set showHiddenFiles(value: boolean);
46
+ /**
47
+ * Whether to show checkboxes next to files and folders
48
+ */
49
+ get showFileCheckboxes(): boolean;
50
+ set showFileCheckboxes(value: boolean);
54
51
  /**
55
52
  * Create an iterator over the listing's selected items.
56
53
  *
@@ -145,7 +142,7 @@ export declare class FileBrowser extends Widget {
145
142
  private _onConnectionFailure;
146
143
  protected listing: DirListing;
147
144
  protected crumbs: BreadCrumbs;
148
- private _trans;
145
+ protected mainPanel: Panel;
149
146
  private _filenameSearcher;
150
147
  private _manager;
151
148
  private _directoryPending;
@@ -154,6 +151,7 @@ export declare class FileBrowser extends Widget {
154
151
  private _showLastModifiedColumn;
155
152
  private _useFuzzyFilter;
156
153
  private _showHiddenFiles;
154
+ private _showFileCheckboxes;
157
155
  }
158
156
  /**
159
157
  * The namespace for the `FileBrowser` class statics.
package/lib/browser.js CHANGED
@@ -3,15 +3,18 @@
3
3
  import { showErrorMessage } from '@jupyterlab/apputils';
4
4
  import { ServerConnection } from '@jupyterlab/services';
5
5
  import { nullTranslator } from '@jupyterlab/translation';
6
- import { FilenameSearcher, newFolderIcon, refreshIcon, Toolbar, ToolbarButton } from '@jupyterlab/ui-components';
7
- import { PanelLayout, Widget } from '@lumino/widgets';
6
+ import { FilenameSearcher, SidePanel } from '@jupyterlab/ui-components';
7
+ import { Panel } from '@lumino/widgets';
8
8
  import { BreadCrumbs } from './crumbs';
9
9
  import { DirListing } from './listing';
10
- import { Uploader } from './upload';
11
10
  /**
12
11
  * The class name added to file browsers.
13
12
  */
14
13
  const FILE_BROWSER_CLASS = 'jp-FileBrowser';
14
+ /**
15
+ * The class name added to file browser panel (gather filter, breadcrumbs and listing).
16
+ */
17
+ const FILE_BROWSER_PANEL_CLASS = 'jp-FileBrowser-Panel';
15
18
  /**
16
19
  * The class name added to the filebrowser crumbs node.
17
20
  */
@@ -35,55 +38,43 @@ const LISTING_CLASS = 'jp-FileBrowser-listing';
35
38
  * and presents itself as a flat list of files and directories with
36
39
  * breadcrumbs.
37
40
  */
38
- export class FileBrowser extends Widget {
41
+ export class FileBrowser extends SidePanel {
39
42
  /**
40
43
  * Construct a new file browser.
41
44
  *
42
45
  * @param options - The file browser options.
43
46
  */
44
47
  constructor(options) {
45
- super();
48
+ var _a;
49
+ super({ content: new Panel(), translator: options.translator });
46
50
  this._showLastModifiedColumn = true;
47
51
  this._useFuzzyFilter = true;
48
52
  this._showHiddenFiles = false;
53
+ this._showFileCheckboxes = false;
49
54
  this.addClass(FILE_BROWSER_CLASS);
55
+ this.toolbar.addClass(TOOLBAR_CLASS);
50
56
  this.id = options.id;
57
+ const translator = (this.translator = (_a = options.translator) !== null && _a !== void 0 ? _a : nullTranslator);
51
58
  const model = (this.model = options.model);
52
59
  const renderer = options.renderer;
53
- const translator = this.translator;
54
60
  model.connectionFailure.connect(this._onConnectionFailure, this);
55
- this.translator = options.translator || nullTranslator;
56
61
  this._manager = model.manager;
57
- this._trans = this.translator.load('jupyterlab');
58
- this.crumbs = new BreadCrumbs({ model, translator });
59
- this.toolbar = new Toolbar();
60
62
  // a11y
61
63
  this.toolbar.node.setAttribute('role', 'navigation');
62
64
  this.toolbar.node.setAttribute('aria-label', this._trans.__('file browser'));
63
65
  this._directoryPending = false;
64
- const newFolder = new ToolbarButton({
65
- icon: newFolderIcon,
66
- onClick: () => {
67
- this.createNewDirectory();
68
- },
69
- tooltip: this._trans.__('New Folder')
70
- });
71
- const uploader = new Uploader({ model, translator: this.translator });
72
- const refresher = new ToolbarButton({
73
- icon: refreshIcon,
74
- onClick: () => {
75
- void model.refresh();
76
- },
77
- tooltip: this._trans.__('Refresh File List')
78
- });
79
- this.toolbar.addItem('newFolder', newFolder);
80
- this.toolbar.addItem('upload', uploader);
81
- this.toolbar.addItem('refresher', refresher);
66
+ // File browser widgets container
67
+ this.mainPanel = new Panel();
68
+ this.mainPanel.addClass(FILE_BROWSER_PANEL_CLASS);
69
+ this.mainPanel.title.label = this._trans.__('File Browser');
70
+ this.crumbs = new BreadCrumbs({ model, translator });
71
+ this.crumbs.addClass(CRUMBS_CLASS);
82
72
  this.listing = this.createDirListing({
83
73
  model,
84
74
  renderer,
85
- translator: this.translator
75
+ translator
86
76
  });
77
+ this.listing.addClass(LISTING_CLASS);
87
78
  this._filenameSearcher = FilenameSearcher({
88
79
  updateFilter: (filterFn) => {
89
80
  this.listing.model.setFilter(value => {
@@ -93,15 +84,11 @@ export class FileBrowser extends Widget {
93
84
  useFuzzyFilter: this._useFuzzyFilter,
94
85
  placeholder: this._trans.__('Filter files by name')
95
86
  });
96
- this.crumbs.addClass(CRUMBS_CLASS);
97
- this.toolbar.addClass(TOOLBAR_CLASS);
98
87
  this._filenameSearcher.addClass(FILTERBOX_CLASS);
99
- this.listing.addClass(LISTING_CLASS);
100
- this.layout = new PanelLayout();
101
- this.layout.addWidget(this.toolbar);
102
- this.layout.addWidget(this._filenameSearcher);
103
- this.layout.addWidget(this.crumbs);
104
- this.layout.addWidget(this.listing);
88
+ this.mainPanel.addWidget(this._filenameSearcher);
89
+ this.mainPanel.addWidget(this.crumbs);
90
+ this.mainPanel.addWidget(this.listing);
91
+ this.addWidget(this.mainPanel);
105
92
  if (options.restore !== false) {
106
93
  void model.restore(this.id);
107
94
  }
@@ -135,6 +122,9 @@ export class FileBrowser extends Widget {
135
122
  */
136
123
  set useFuzzyFilter(value) {
137
124
  this._useFuzzyFilter = value;
125
+ // Detach and dispose the current widget
126
+ this._filenameSearcher.parent = null;
127
+ this._filenameSearcher.dispose();
138
128
  this._filenameSearcher = FilenameSearcher({
139
129
  updateFilter: (filterFn) => {
140
130
  this.listing.model.setFilter(value => {
@@ -146,12 +136,7 @@ export class FileBrowser extends Widget {
146
136
  forceRefresh: true
147
137
  });
148
138
  this._filenameSearcher.addClass(FILTERBOX_CLASS);
149
- this.layout.removeWidget(this._filenameSearcher);
150
- this.layout.removeWidget(this.crumbs);
151
- this.layout.removeWidget(this.listing);
152
- this.layout.addWidget(this._filenameSearcher);
153
- this.layout.addWidget(this.crumbs);
154
- this.layout.addWidget(this.listing);
139
+ this.mainPanel.insertWidget(0, this._filenameSearcher);
155
140
  }
156
141
  /**
157
142
  * Whether to show hidden files
@@ -163,6 +148,21 @@ export class FileBrowser extends Widget {
163
148
  this.model.showHiddenFiles(value);
164
149
  this._showHiddenFiles = value;
165
150
  }
151
+ /**
152
+ * Whether to show checkboxes next to files and folders
153
+ */
154
+ get showFileCheckboxes() {
155
+ return this._showFileCheckboxes;
156
+ }
157
+ set showFileCheckboxes(value) {
158
+ if (this.listing.setColumnVisibility) {
159
+ this.listing.setColumnVisibility('is_selected', value);
160
+ this._showFileCheckboxes = value;
161
+ }
162
+ else {
163
+ console.warn('Listing does not support toggling column visibility');
164
+ }
165
+ }
166
166
  /**
167
167
  * Create an iterator over the listing's selected items.
168
168
  *
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAY,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAEL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,aAAa,EAEb,WAAW,EACX,OAAO,EACP,aAAa,EACd,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC;;GAEG;AACH,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAE5C;;GAEG;AACH,MAAM,YAAY,GAAG,uBAAuB,CAAC;AAE7C;;GAEG;AACH,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAEnD;;GAEG;AACH,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAE/C;;GAEG;AACH,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,OAAO,WAAY,SAAQ,MAAM;IACrC;;;;OAIG;IACH,YAAY,OAA6B;QACvC,KAAK,EAAE,CAAC;QAiXF,4BAAuB,GAAY,IAAI,CAAC;QACxC,oBAAe,GAAY,IAAI,CAAC;QAChC,qBAAgB,GAAY,KAAK,CAAC;QAlXxC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAClC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QAErB,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,cAAc,CAAC;QACvD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,EAAU,CAAC;QACrC,OAAO;QACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAC5B,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAC/B,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAE/B,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;YAClC,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,CAAC;YACD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC;SACtC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAEtE,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;YAClC,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,GAAG,EAAE;gBACZ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;YACvB,CAAC;YACD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,mBAAmB,CAAC;SAC7C,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACnC,KAAK;YACL,QAAQ;YACR,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;YACxC,YAAY,EAAE,CAAC,QAAmC,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC;YACD,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC;SACpD,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;YAC7B,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC7B;IACH,CAAC;IAiBD;;OAEG;IACH,IAAI,0BAA0B;QAC5B,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,0BAA0B,CAAC,KAAc;QAC3C,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,sBAAsB,CAAC,KAAc;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YACzD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;SACtC;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;OAEG;IACH,IAAI,cAAc,CAAC,KAAc;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAE7B,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;YACxC,YAAY,EAAE,CAAC,QAAmC,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC;YACD,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC;YACnD,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe,CAAC,KAAc;QAChC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAY;QACjC,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,GAAG;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;YACnC,OAAO;SACR;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,+CAA+C;QAC/C,iDAAiD;QACjD,+CAA+C;QAC/C,iDAAiD;QACjD,WAAW;QACX,KAAK,IAAI,CAAC,QAAQ;aACf,WAAW,CAAC;YACX,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,WAAW;SAClB,CAAC;aACD,IAAI,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;YAClB,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,KAAK,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,OAAiC;QAC7C,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE;YAC9B,OAAO;SACR;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,+CAA+C;QAC/C,4CAA4C;QAC5C,0CAA0C;QAC1C,4CAA4C;QAC5C,WAAW;QACX,KAAK,IAAI,CAAC,QAAQ;aACf,WAAW,CAAC;YACX,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC;aACD,IAAI,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;YAClB,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,KAAK,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,KAAiB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACO,gBAAgB,CAAC,OAA4B;QACrD,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAID;;OAEG;IACK,oBAAoB,CAC1B,MAA8B,EAC9B,IAAW;QAEX,IACE,IAAI,YAAY,gBAAgB,CAAC,aAAa;YAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAC5B;YACA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAC3B,2BAA2B,EAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAChB,CAAC;YACF,KAAK,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACpC;IACH,CAAC;CAaF"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAY,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EACL,gBAAgB,EAEhB,SAAS,EACV,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC;;GAEG;AACH,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAE5C;;GAEG;AACH,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAExD;;GAEG;AACH,MAAM,YAAY,GAAG,uBAAuB,CAAC;AAE7C;;GAEG;AACH,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAEnD;;GAEG;AACH,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAE/C;;GAEG;AACH,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC;;;;OAIG;IACH,YAAY,OAA6B;;QACvC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAqW1D,4BAAuB,GAAY,IAAI,CAAC;QACxC,oBAAe,GAAY,IAAI,CAAC;QAChC,qBAAgB,GAAY,KAAK,CAAC;QAClC,wBAAmB,GAAY,KAAK,CAAC;QAvW3C,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,cAAc,CAAC,CAAC;QAE5E,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAElC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAE9B,OAAO;QACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAC5B,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAC/B,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAE/B,iCAAiC;QACjC,IAAI,CAAC,SAAS,GAAG,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;QAE5D,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAEnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACnC,KAAK;YACL,QAAQ;YACR,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;YACxC,YAAY,EAAE,CAAC,QAAmC,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC;YACD,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC;SACpD,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE/B,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;YAC7B,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC7B;IACH,CAAC;IAOD;;OAEG;IACH,IAAI,0BAA0B;QAC5B,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,0BAA0B,CAAC,KAAc;QAC3C,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,sBAAsB,CAAC,KAAc;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YACzD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;SACtC;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;OAEG;IACH,IAAI,cAAc,CAAC,KAAc;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAE7B,wCAAwC;QACxC,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAEjC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;YACxC,YAAY,EAAE,CAAC,QAAmC,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC;YACD,cAAc,EAAE,IAAI,CAAC,eAAe;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC;YACnD,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe,CAAC,KAAc;QAChC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,kBAAkB,CAAC,KAAc;QACnC,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YACvD,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;SAClC;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAY;QACjC,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,GAAG;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;YACnC,OAAO;SACR;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,+CAA+C;QAC/C,iDAAiD;QACjD,+CAA+C;QAC/C,iDAAiD;QACjD,WAAW;QACX,KAAK,IAAI,CAAC,QAAQ;aACf,WAAW,CAAC;YACX,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,WAAW;SAClB,CAAC;aACD,IAAI,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;YAClB,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,KAAK,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,OAAiC;QAC7C,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE;YAC9B,OAAO;SACR;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,+CAA+C;QAC/C,4CAA4C;QAC5C,0CAA0C;QAC1C,4CAA4C;QAC5C,WAAW;QACX,KAAK,IAAI,CAAC,QAAQ;aACf,WAAW,CAAC;YACX,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC;aACD,IAAI,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;YAClB,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,KAAK,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,KAAiB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACO,gBAAgB,CAAC,OAA4B;QACrD,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAID;;OAEG;IACK,oBAAoB,CAC1B,MAA8B,EAC9B,IAAW;QAEX,IACE,IAAI,YAAY,gBAAgB,CAAC,aAAa;YAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAC5B;YACA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAC3B,2BAA2B,EAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAChB,CAAC;YACF,KAAK,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACpC;IACH,CAAC;CAeF"}
package/lib/crumbs.d.ts CHANGED
@@ -58,6 +58,7 @@ export declare class BreadCrumbs extends Widget {
58
58
  protected translator: ITranslator;
59
59
  private _trans;
60
60
  private _model;
61
+ private _hasPreferred;
61
62
  private _crumbs;
62
63
  private _crumbSeps;
63
64
  }
package/lib/crumbs.js CHANGED
@@ -4,7 +4,7 @@ import { DOMUtils, showErrorMessage } from '@jupyterlab/apputils';
4
4
  import { PageConfig, PathExt } from '@jupyterlab/coreutils';
5
5
  import { renameFile } from '@jupyterlab/docmanager';
6
6
  import { nullTranslator } from '@jupyterlab/translation';
7
- import { ellipsesIcon, folderIcon } from '@jupyterlab/ui-components';
7
+ import { ellipsesIcon, homeIcon as preferredIcon, folderIcon as rootIcon } from '@jupyterlab/ui-components';
8
8
  import { ArrayExt } from '@lumino/algorithm';
9
9
  import { ElementExt } from '@lumino/domutils';
10
10
  import { Widget } from '@lumino/widgets';
@@ -15,7 +15,11 @@ const BREADCRUMB_CLASS = 'jp-BreadCrumbs';
15
15
  /**
16
16
  * The class name for the breadcrumbs home node
17
17
  */
18
- const BREADCRUMB_HOME_CLASS = 'jp-BreadCrumbs-home';
18
+ const BREADCRUMB_ROOT_CLASS = 'jp-BreadCrumbs-home';
19
+ /**
20
+ * The class name for the breadcrumbs preferred node
21
+ */
22
+ const BREADCRUMB_PREFERRED_CLASS = 'jp-BreadCrumbs-preferred';
19
23
  /**
20
24
  * The class name added to the breadcrumb node.
21
25
  */
@@ -49,6 +53,11 @@ export class BreadCrumbs extends Widget {
49
53
  this.addClass(BREADCRUMB_CLASS);
50
54
  this._crumbs = Private.createCrumbs();
51
55
  this._crumbSeps = Private.createCrumbSeparators();
56
+ this._hasPreferred =
57
+ PageConfig.getOption('preferredPath') !== '/' ? true : false;
58
+ if (this._hasPreferred) {
59
+ this.node.appendChild(this._crumbs[Private.Crumb.Preferred]);
60
+ }
52
61
  this.node.appendChild(this._crumbs[Private.Crumb.Home]);
53
62
  this._model.refreshed.connect(this.update, this);
54
63
  }
@@ -115,7 +124,7 @@ export class BreadCrumbs extends Widget {
115
124
  // Update the breadcrumb list.
116
125
  const contents = this._model.manager.services.contents;
117
126
  const localPath = contents.localPath(this._model.path);
118
- Private.updateCrumbs(this._crumbs, this._crumbSeps, localPath);
127
+ Private.updateCrumbs(this._crumbs, this._crumbSeps, localPath, this._hasPreferred);
119
128
  }
120
129
  /**
121
130
  * Handle the `'click'` event for the widget.
@@ -128,8 +137,17 @@ export class BreadCrumbs extends Widget {
128
137
  // Find a valid click target.
129
138
  let node = event.target;
130
139
  while (node && node !== this.node) {
140
+ if (node.classList.contains(BREADCRUMB_PREFERRED_CLASS)) {
141
+ this._model
142
+ .cd(PageConfig.getOption('preferredPath'))
143
+ .catch(error => showErrorMessage(this._trans.__('Open Error'), error));
144
+ // Stop the event propagation.
145
+ event.preventDefault();
146
+ event.stopPropagation();
147
+ return;
148
+ }
131
149
  if (node.classList.contains(BREADCRUMB_ITEM_CLASS) ||
132
- node.classList.contains(BREADCRUMB_HOME_CLASS)) {
150
+ node.classList.contains(BREADCRUMB_ROOT_CLASS)) {
133
151
  const index = ArrayExt.findFirstIndex(this._crumbs, value => value === node);
134
152
  this._model
135
153
  .cd(BREAD_CRUMB_PATHS[index])
@@ -242,18 +260,25 @@ var Private;
242
260
  Crumb[Crumb["Ellipsis"] = 1] = "Ellipsis";
243
261
  Crumb[Crumb["Parent"] = 2] = "Parent";
244
262
  Crumb[Crumb["Current"] = 3] = "Current";
263
+ Crumb[Crumb["Preferred"] = 4] = "Preferred";
245
264
  })(Crumb = Private.Crumb || (Private.Crumb = {}));
246
265
  /**
247
266
  * Populate the breadcrumb node.
248
267
  */
249
- function updateCrumbs(breadcrumbs, separators, path) {
268
+ function updateCrumbs(breadcrumbs, separators, path, hasPreferred) {
250
269
  const node = breadcrumbs[0].parentNode;
251
- // Remove all but the home node.
270
+ // Remove all but the home or preferred node.
252
271
  const firstChild = node.firstChild;
253
272
  while (firstChild && firstChild.nextSibling) {
254
273
  node.removeChild(firstChild.nextSibling);
255
274
  }
256
- node.appendChild(separators[0]);
275
+ if (hasPreferred) {
276
+ node.appendChild(breadcrumbs[Crumb.Home]);
277
+ node.appendChild(separators[0]);
278
+ }
279
+ else {
280
+ node.appendChild(separators[0]);
281
+ }
257
282
  const parts = path.split('/');
258
283
  if (parts.length > 2) {
259
284
  node.appendChild(breadcrumbs[Crumb.Ellipsis]);
@@ -280,8 +305,8 @@ var Private;
280
305
  * Create the breadcrumb nodes.
281
306
  */
282
307
  function createCrumbs() {
283
- const home = folderIcon.element({
284
- className: BREADCRUMB_HOME_CLASS,
308
+ const home = rootIcon.element({
309
+ className: BREADCRUMB_ROOT_CLASS,
285
310
  tag: 'span',
286
311
  title: PageConfig.getOption('serverRoot') || 'Jupyter Server Root',
287
312
  stylesheet: 'breadCrumb'
@@ -295,7 +320,13 @@ var Private;
295
320
  parent.className = BREADCRUMB_ITEM_CLASS;
296
321
  const current = document.createElement('span');
297
322
  current.className = BREADCRUMB_ITEM_CLASS;
298
- return [home, ellipsis, parent, current];
323
+ const preferred = preferredIcon.element({
324
+ className: BREADCRUMB_PREFERRED_CLASS,
325
+ tag: 'span',
326
+ title: PageConfig.getOption('preferredPath') || 'Jupyter Preferred Path',
327
+ stylesheet: 'breadCrumb'
328
+ });
329
+ return [home, ellipsis, parent, current, preferred];
299
330
  }
300
331
  Private.createCrumbs = createCrumbs;
301
332
  /**
package/lib/crumbs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"crumbs.js","sourceRoot":"","sources":["../src/crumbs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crumbs.js","sourceRoot":"","sources":["../src/crumbs.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAEL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,YAAY,EACZ,QAAQ,IAAI,aAAa,EACzB,UAAU,IAAI,QAAQ,EACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC;;GAEG;AACH,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAE1C;;GAEG;AACH,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;AAEpD;;GAEG;AACH,MAAM,0BAA0B,GAAG,0BAA0B,CAAC;AAE9D;;GAEG;AACH,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;AAEpD;;GAEG;AACH,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAErD;;GAEG;AACH,MAAM,aAAa,GAAG,iCAAiC,CAAC;AAExD;;GAEG;AACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAE9C;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,MAAM;IACrC;;;;OAIG;IACH,YAAY,OAA6B;QACvC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,cAAc,CAAC;QACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAClD,IAAI,CAAC,aAAa;YAChB,UAAU,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/D,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;SAC9D;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;OASG;IACH,WAAW,CAAC,KAAY;QACtB,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,OAAO;gBACV,IAAI,CAAC,SAAS,CAAC,KAAmB,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,cAAc;gBACjB,IAAI,CAAC,aAAa,CAAC,KAAmB,CAAC,CAAC;gBACxC,MAAM;YACR,KAAK,cAAc;gBACjB,IAAI,CAAC,aAAa,CAAC,KAAmB,CAAC,CAAC;gBACxC,MAAM;YACR,KAAK,aAAa;gBAChB,IAAI,CAAC,YAAY,CAAC,KAAmB,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAC;gBACnC,MAAM;YACR;gBACE,OAAO;SACV;IACH,CAAC;IAED;;OAEG;IACO,aAAa,CAAC,GAAY;QAClC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,GAAY;QACnC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACO,eAAe,CAAC,GAAY;QACpC,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,CAAC,YAAY,CAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,KAAiB;QACjC,6CAA6C;QAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO;SACR;QAED,6BAA6B;QAC7B,IAAI,IAAI,GAAG,KAAK,CAAC,MAAqB,CAAC;QACvC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;YACjC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE;gBACvD,IAAI,CAAC,MAAM;qBACR,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;qBACzC,KAAK,CAAC,KAAK,CAAC,EAAE,CACb,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CACtD,CAAC;gBAEJ,8BAA8B;gBAC9B,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,OAAO;aACR;YACD,IACE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAC9C;gBACA,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CACnC,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CACxB,CAAC;gBACF,IAAI,CAAC,MAAM;qBACR,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;qBAC5B,KAAK,CAAC,KAAK,CAAC,EAAE,CACb,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CACtD,CAAC;gBAEJ,8BAA8B;gBAC9B,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,OAAO;aACR;YACD,IAAI,GAAG,IAAI,CAAC,aAA4B,CAAC;SAC1C;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAiB;QACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CACzD,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CACvD,CAAC;YACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,IAAI,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;oBACrD,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;iBACzB;aACF;SACF;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAiB;QACrC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QACtE,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;SAChD;IACH,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,KAAiB;QACpC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC;QACxC,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QACtE,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;SAChD;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CACzD,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CACvD,CAAC;QACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACtD;IACH,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,KAAiB;QAChC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,KAAK,CAAC,cAAc,KAAK,MAAM,EAAE;YACnC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC;YAC1B,OAAO;SACR;QACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAC1C,OAAO;SACR;QACD,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC;QAExC,IAAI,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;QACzC,OAAO,MAAM,IAAI,MAAM,CAAC,aAAa,EAAE;YACrC,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;gBAChD,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBAC3C,MAAM;aACP;YACD,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;SAC/B;QAED,yCAAyC;QACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CACnC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CACxB,CAAC;QACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO;SACR;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAE9B,yBAAyB;QACzB,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAa,CAAC;QACnE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAClE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;SACtD;QACD,KAAK,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACrC,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;CAQF;AAsBD;;GAEG;AACH,IAAU,OAAO,CAwGhB;AAxGD,WAAU,OAAO;IACf;;OAEG;IACH,IAAY,KAMX;IAND,WAAY,KAAK;QACf,iCAAI,CAAA;QACJ,yCAAQ,CAAA;QACR,qCAAM,CAAA;QACN,uCAAO,CAAA;QACP,2CAAS,CAAA;IACX,CAAC,EANW,KAAK,GAAL,aAAK,KAAL,aAAK,QAMhB;IAED;;OAEG;IACH,SAAgB,YAAY,CAC1B,WAAuC,EACvC,UAAsC,EACtC,IAAY,EACZ,YAAqB;QAErB,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,UAAyB,CAAC;QAEtD,6CAA6C;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAyB,CAAC;QAClD,OAAO,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SAC1C;QAED,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/D,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,WAAW,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;QAED,IAAI,IAAI,EAAE;YACR,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;gBACrB,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAChE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC1D,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC;gBACzC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;aACjC;YACD,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7C,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;IACH,CAAC;IA1Ce,oBAAY,eA0C3B,CAAA;IAED;;OAEG;IACH,SAAgB,YAAY;QAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC5B,SAAS,EAAE,qBAAqB;YAChC,GAAG,EAAE,MAAM;YACX,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,qBAAqB;YAClE,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;YACpC,SAAS,EAAE,qBAAqB;YAChC,GAAG,EAAE,MAAM;YACX,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,SAAS,GAAG,qBAAqB,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,OAAO,CAAC,SAAS,GAAG,qBAAqB,CAAC;QAC1C,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC;YACtC,SAAS,EAAE,0BAA0B;YACrC,GAAG,EAAE,MAAM;YACX,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,wBAAwB;YACxE,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;IAvBe,oBAAY,eAuB3B,CAAA;IAED;;OAEG;IACH,SAAgB,qBAAqB;QACnC,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,qEAAqE;QACrE,MAAM,eAAe,GAAG,CAAC,CAAC;QAE1B,0EAA0E;QAC1E,6BAA6B;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClB;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAbe,6BAAqB,wBAapC,CAAA;AACH,CAAC,EAxGS,OAAO,KAAP,OAAO,QAwGhB"}
package/lib/listing.d.ts CHANGED
@@ -187,6 +187,10 @@ export declare class DirListing extends Widget {
187
187
  protected onUpdateRequest(msg: Message): void;
188
188
  onResize(msg: Widget.ResizeMessage): void;
189
189
  setColumnVisibility(name: DirListing.ToggleableColumn, visible: boolean): void;
190
+ /**
191
+ * Would this click (or other event type) hit the checkbox by default?
192
+ */
193
+ protected isWithinCheckboxHitArea(event: Event): boolean;
190
194
  /**
191
195
  * Handle the `'click'` event for the widget.
192
196
  */
@@ -355,7 +359,7 @@ export declare namespace DirListing {
355
359
  /**
356
360
  * Toggleable columns.
357
361
  */
358
- type ToggleableColumn = 'last_modified';
362
+ type ToggleableColumn = 'last_modified' | 'is_selected';
359
363
  /**
360
364
  * A file contents model thunk.
361
365
  *
@@ -421,6 +425,19 @@ export declare namespace DirListing {
421
425
  * @returns The node containing the file name.
422
426
  */
423
427
  getNameNode(node: HTMLElement): HTMLElement;
428
+ /**
429
+ * Get the checkbox input element node.
430
+ *
431
+ * Downstream interface implementations,such as jupyterlab-unfold, that
432
+ * don't support checkboxes should simply always return null for this
433
+ * function.
434
+ *
435
+ * @param node A node created by [[createItemNode]] or
436
+ * [[createHeaderItemNode]]
437
+ *
438
+ * @returns The checkbox node.
439
+ */
440
+ getCheckboxNode: (node: HTMLElement) => HTMLInputElement | null;
424
441
  /**
425
442
  * Create an appropriate drag image for an item.
426
443
  *
@@ -464,6 +481,23 @@ export declare namespace DirListing {
464
481
  * @returns A new DOM node to use as a content item.
465
482
  */
466
483
  createItemNode(hiddenColumns?: Set<DirListing.ToggleableColumn>): HTMLElement;
484
+ /**
485
+ * Creates a node containing a checkbox.
486
+ *
487
+ * We wrap the checkbox in a label element in order to increase its hit
488
+ * area. This is because the padding of the checkbox itself cannot be
489
+ * increased via CSS, as the CSS/form compatibility table at the following
490
+ * url from MDN shows:
491
+ * https://developer.mozilla.org/en-US/docs/Learn/Forms/Property_compatibility_table_for_form_controls#check_boxes_and_radio_buttons
492
+ *
493
+ * @param [options]
494
+ * @params options.alwaysVisible Should the checkbox be visible even when
495
+ * not hovered?
496
+ * @returns A new DOM node that contains a checkbox.
497
+ */
498
+ createCheckboxWrapperNode(options?: {
499
+ alwaysVisible: boolean;
500
+ }): HTMLElement;
467
501
  /**
468
502
  * Update an item node to reflect the current state of a model.
469
503
  *
@@ -483,6 +517,15 @@ export declare namespace DirListing {
483
517
  * @returns The node containing the file name.
484
518
  */
485
519
  getNameNode(node: HTMLElement): HTMLElement;
520
+ /**
521
+ * Get the checkbox input element node.
522
+ *
523
+ * @param node A node created by [[createItemNode]] or
524
+ * [[createHeaderItemNode]]
525
+ *
526
+ * @returns The checkbox node.
527
+ */
528
+ getCheckboxNode(node: HTMLElement): HTMLInputElement | null;
486
529
  /**
487
530
  * Create a drag image for an item.
488
531
  *