@jupyterlab/launcher 4.6.0-alpha.4 → 4.6.0-beta.0
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/tokens.d.ts +12 -0
- package/lib/widget.js +20 -15
- package/lib/widget.js.map +1 -1
- package/package.json +5 -5
- package/src/tokens.ts +13 -0
- package/src/widget.tsx +28 -15
- package/style/base.css +9 -3
package/lib/tokens.d.ts
CHANGED
|
@@ -107,6 +107,18 @@ export declare namespace ILauncher {
|
|
|
107
107
|
* The default rank is `Infinity`.
|
|
108
108
|
*/
|
|
109
109
|
rank?: number;
|
|
110
|
+
/**
|
|
111
|
+
* The rank used to control the ordering of launcher categories/sections.
|
|
112
|
+
*
|
|
113
|
+
* Lower values appear earlier in the launcher.
|
|
114
|
+
*
|
|
115
|
+
* If multiple items belong to the same category and specify different
|
|
116
|
+
* categoryRank values, the smallest (highest priority) value determines
|
|
117
|
+
* the position of that category in the launcher.
|
|
118
|
+
*
|
|
119
|
+
* If omitted, the category falls back to default ordering rules.
|
|
120
|
+
*/
|
|
121
|
+
categoryRank?: number;
|
|
110
122
|
/**
|
|
111
123
|
* For items that have a kernel associated with them, the URL of the kernel
|
|
112
124
|
* icon.
|
package/lib/widget.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
4
|
import { showErrorMessage } from '@jupyterlab/apputils';
|
|
4
5
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
5
6
|
import { classes, LabIcon, VDomModel, VDomRenderer } from '@jupyterlab/ui-components';
|
|
@@ -93,11 +94,6 @@ export class Launcher extends VDomRenderer {
|
|
|
93
94
|
if (!this.model) {
|
|
94
95
|
return null;
|
|
95
96
|
}
|
|
96
|
-
const knownCategories = [
|
|
97
|
-
this._trans.__('Notebook'),
|
|
98
|
-
this._trans.__('Console'),
|
|
99
|
-
this._trans.__('Other')
|
|
100
|
-
];
|
|
101
97
|
const kernelCategories = [
|
|
102
98
|
this._trans.__('Notebook'),
|
|
103
99
|
this._trans.__('Console')
|
|
@@ -122,15 +118,24 @@ export class Launcher extends VDomRenderer {
|
|
|
122
118
|
let section;
|
|
123
119
|
// Assemble the final ordered list of categories, beginning with
|
|
124
120
|
// KNOWN_CATEGORIES.
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
121
|
+
const defaultCategoryRanks = {
|
|
122
|
+
[this._trans.__('Notebook')]: 0,
|
|
123
|
+
[this._trans.__('Console')]: 20,
|
|
124
|
+
[this._trans.__('Other')]: 100
|
|
125
|
+
};
|
|
126
|
+
const orderedCategories = Object.keys(categories).sort((a, b) => {
|
|
127
|
+
const getRank = (cat) => {
|
|
128
|
+
var _a, _b;
|
|
129
|
+
const items = (_a = categories[cat]) !== null && _a !== void 0 ? _a : [];
|
|
130
|
+
const defaultRank = (_b = defaultCategoryRanks[cat]) !== null && _b !== void 0 ? _b : Infinity;
|
|
131
|
+
return Math.min(...items.map((item) => { var _a; return (_a = item.categoryRank) !== null && _a !== void 0 ? _a : defaultRank; }));
|
|
132
|
+
};
|
|
133
|
+
const rankA = getRank(a);
|
|
134
|
+
const rankB = getRank(b);
|
|
135
|
+
if (rankA !== rankB)
|
|
136
|
+
return rankA - rankB;
|
|
137
|
+
return a.localeCompare(b);
|
|
138
|
+
});
|
|
134
139
|
// Now create the sections for each category
|
|
135
140
|
orderedCategories.forEach(cat => {
|
|
136
141
|
if (!categories[cat]) {
|
|
@@ -153,7 +158,7 @@ export class Launcher extends VDomRenderer {
|
|
|
153
158
|
}
|
|
154
159
|
});
|
|
155
160
|
// Wrap the sections in body and content divs.
|
|
156
|
-
return (React.createElement("div", { className: "jp-Launcher-body" },
|
|
161
|
+
return (React.createElement("div", { className: "jp-Launcher-body jp-zoom-target" },
|
|
157
162
|
React.createElement("div", { className: "jp-Launcher-content" },
|
|
158
163
|
React.createElement("div", { className: "jp-Launcher-cwd" },
|
|
159
164
|
React.createElement("h3", null, this.cwd)),
|
package/lib/widget.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.tsx"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyterlab/launcher",
|
|
3
|
-
"version": "4.6.0-
|
|
3
|
+
"version": "4.6.0-beta.0",
|
|
4
4
|
"description": "JupyterLab - Launcher Panel",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -41,9 +41,9 @@
|
|
|
41
41
|
"watch": "tsc -b --watch"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@jupyterlab/apputils": "^4.7.0-
|
|
45
|
-
"@jupyterlab/translation": "^4.6.0-
|
|
46
|
-
"@jupyterlab/ui-components": "^4.6.0-
|
|
44
|
+
"@jupyterlab/apputils": "^4.7.0-beta.0",
|
|
45
|
+
"@jupyterlab/translation": "^4.6.0-beta.0",
|
|
46
|
+
"@jupyterlab/ui-components": "^4.6.0-beta.0",
|
|
47
47
|
"@lumino/algorithm": "^2.0.4",
|
|
48
48
|
"@lumino/commands": "^2.3.3",
|
|
49
49
|
"@lumino/coreutils": "^2.2.2",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"react": "^18.2.0"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@jupyterlab/testing": "^4.6.0-
|
|
56
|
+
"@jupyterlab/testing": "^4.6.0-beta.0",
|
|
57
57
|
"@types/jest": "^29.2.0",
|
|
58
58
|
"@types/react": "^18.0.26",
|
|
59
59
|
"jest": "^29.2.0",
|
package/src/tokens.ts
CHANGED
|
@@ -129,6 +129,19 @@ export namespace ILauncher {
|
|
|
129
129
|
*/
|
|
130
130
|
rank?: number;
|
|
131
131
|
|
|
132
|
+
/**
|
|
133
|
+
* The rank used to control the ordering of launcher categories/sections.
|
|
134
|
+
*
|
|
135
|
+
* Lower values appear earlier in the launcher.
|
|
136
|
+
*
|
|
137
|
+
* If multiple items belong to the same category and specify different
|
|
138
|
+
* categoryRank values, the smallest (highest priority) value determines
|
|
139
|
+
* the position of that category in the launcher.
|
|
140
|
+
*
|
|
141
|
+
* If omitted, the category falls back to default ordering rules.
|
|
142
|
+
*/
|
|
143
|
+
categoryRank?: number;
|
|
144
|
+
|
|
132
145
|
/**
|
|
133
146
|
* For items that have a kernel associated with them, the URL of the kernel
|
|
134
147
|
* icon.
|
package/src/widget.tsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
4
|
|
|
4
5
|
import { showErrorMessage } from '@jupyterlab/apputils';
|
|
5
6
|
import type { ITranslator, TranslationBundle } from '@jupyterlab/translation';
|
|
@@ -109,11 +110,6 @@ export class Launcher extends VDomRenderer<ILauncher.IModel> {
|
|
|
109
110
|
return null;
|
|
110
111
|
}
|
|
111
112
|
|
|
112
|
-
const knownCategories = [
|
|
113
|
-
this._trans.__('Notebook'),
|
|
114
|
-
this._trans.__('Console'),
|
|
115
|
-
this._trans.__('Other')
|
|
116
|
-
];
|
|
117
113
|
const kernelCategories = [
|
|
118
114
|
this._trans.__('Notebook'),
|
|
119
115
|
this._trans.__('Console')
|
|
@@ -143,15 +139,32 @@ export class Launcher extends VDomRenderer<ILauncher.IModel> {
|
|
|
143
139
|
|
|
144
140
|
// Assemble the final ordered list of categories, beginning with
|
|
145
141
|
// KNOWN_CATEGORIES.
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
142
|
+
const defaultCategoryRanks: Record<string, number> = {
|
|
143
|
+
[this._trans.__('Notebook')]: 0,
|
|
144
|
+
[this._trans.__('Console')]: 20,
|
|
145
|
+
[this._trans.__('Other')]: 100
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
const orderedCategories = Object.keys(categories).sort((a, b) => {
|
|
149
|
+
const getRank = (cat: string): number => {
|
|
150
|
+
const items = categories[cat] ?? [];
|
|
151
|
+
|
|
152
|
+
const defaultRank = defaultCategoryRanks[cat] ?? Infinity;
|
|
153
|
+
|
|
154
|
+
return Math.min(
|
|
155
|
+
...items.map(
|
|
156
|
+
(item: ILauncher.IItemOptions) => item.categoryRank ?? defaultRank
|
|
157
|
+
)
|
|
158
|
+
);
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
const rankA = getRank(a);
|
|
162
|
+
const rankB = getRank(b);
|
|
163
|
+
|
|
164
|
+
if (rankA !== rankB) return rankA - rankB;
|
|
165
|
+
|
|
166
|
+
return a.localeCompare(b);
|
|
167
|
+
});
|
|
155
168
|
|
|
156
169
|
// Now create the sections for each category
|
|
157
170
|
orderedCategories.forEach(cat => {
|
|
@@ -198,7 +211,7 @@ export class Launcher extends VDomRenderer<ILauncher.IModel> {
|
|
|
198
211
|
|
|
199
212
|
// Wrap the sections in body and content divs.
|
|
200
213
|
return (
|
|
201
|
-
<div className="jp-Launcher-body">
|
|
214
|
+
<div className="jp-Launcher-body jp-zoom-target">
|
|
202
215
|
<div className="jp-Launcher-content">
|
|
203
216
|
<div className="jp-Launcher-cwd">
|
|
204
217
|
<h3>{this.cwd}</h3>
|
package/style/base.css
CHANGED
|
@@ -111,10 +111,15 @@
|
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
.jp-LauncherCard:focus:not(:active) {
|
|
114
|
-
border: 1px solid var(--jp-
|
|
114
|
+
border: 1px solid var(--jp-focus-outline-color);
|
|
115
115
|
box-shadow: var(--jp-elevation-z6);
|
|
116
|
-
|
|
117
|
-
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.jp-LauncherCard:focus-visible {
|
|
119
|
+
outline-width: var(--jp-focus-outline-width);
|
|
120
|
+
outline-color: var(--jp-focus-outline-color);
|
|
121
|
+
outline-style: solid;
|
|
122
|
+
outline-offset: calc(-1 * var(--jp-border-width));
|
|
118
123
|
}
|
|
119
124
|
|
|
120
125
|
.jp-LauncherCard:hover {
|
|
@@ -149,6 +154,7 @@
|
|
|
149
154
|
|
|
150
155
|
.jp-LauncherCard[data-category='Console'] .jp-LauncherCard-noKernelIcon {
|
|
151
156
|
/* This color is copied from the console icon. */
|
|
157
|
+
/* stylelint-disable-next-line declaration-property-value-allowed-list */
|
|
152
158
|
color: #0288d1;
|
|
153
159
|
}
|
|
154
160
|
|