@jupyterlab/application 4.0.0-alpha.9 → 4.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/frontend.d.ts +2 -3
- package/lib/frontend.js.map +1 -1
- package/lib/lab.js +7 -3
- package/lib/lab.js.map +1 -1
- package/lib/layoutrestorer.d.ts +23 -2
- package/lib/layoutrestorer.js +71 -22
- package/lib/layoutrestorer.js.map +1 -1
- package/lib/mimerenderers.js +1 -1
- package/lib/mimerenderers.js.map +1 -1
- package/lib/shell.d.ts +110 -19
- package/lib/shell.js +197 -66
- package/lib/shell.js.map +1 -1
- package/lib/tokens.d.ts +1 -1
- package/lib/utils.js +9 -3
- package/lib/utils.js.map +1 -1
- package/package.json +27 -27
- package/src/connectionlost.ts +27 -0
- package/src/frontend.ts +412 -0
- package/src/index.ts +25 -0
- package/src/lab.ts +289 -0
- package/src/layoutrestorer.ts +870 -0
- package/src/mimerenderers.ts +180 -0
- package/src/router.ts +206 -0
- package/src/shell.ts +2285 -0
- package/src/status.ts +93 -0
- package/src/tokens.ts +220 -0
- package/src/treepathupdater.ts +20 -0
- package/src/utils.ts +153 -0
- package/style/buttons.css +10 -10
- package/style/core.css +4 -0
- package/style/menus.css +23 -3
- package/style/scrollbar.css +1 -66
- package/style/sidepanel.css +61 -80
- package/style/tabs.css +19 -22
package/style/sidepanel.css
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
|
|
24
24
|
.jp-SideBar.lm-TabBar,
|
|
25
25
|
#jp-down-stack .lm-TabBar {
|
|
26
|
-
color: var(--jp-ui-font-
|
|
26
|
+
color: var(--jp-ui-font-color2);
|
|
27
27
|
background: var(--jp-layout-color2);
|
|
28
28
|
font-size: var(--jp-ui-font-size1);
|
|
29
29
|
overflow: visible;
|
|
@@ -42,24 +42,25 @@
|
|
|
42
42
|
align-items: stretch;
|
|
43
43
|
list-style-type: none;
|
|
44
44
|
height: var(--jp-private-sidebar-tab-width);
|
|
45
|
-
transform-origin: 0 0 0;
|
|
46
45
|
}
|
|
47
46
|
|
|
48
47
|
.jp-SideBar .lm-TabBar-tab {
|
|
49
|
-
padding: 0
|
|
48
|
+
padding: 16px 0;
|
|
50
49
|
border: none;
|
|
51
50
|
overflow: visible;
|
|
51
|
+
flex-direction: column;
|
|
52
|
+
position: relative;
|
|
52
53
|
}
|
|
53
54
|
|
|
54
|
-
.jp-SideBar .lm-TabBar-tab.lm-mod-current {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
55
|
+
.jp-SideBar .lm-TabBar-tab.lm-mod-current::after {
|
|
56
|
+
/* Internal border override pseudo-element */
|
|
57
|
+
position: absolute;
|
|
58
|
+
content: '';
|
|
59
|
+
bottom: 0;
|
|
60
|
+
right: 0;
|
|
61
|
+
top: 0;
|
|
62
|
+
left: 0;
|
|
63
|
+
border: var(--jp-border-width) solid var(--jp-layout-color1);
|
|
63
64
|
}
|
|
64
65
|
|
|
65
66
|
.jp-SideBar .lm-TabBar-tab:not(.lm-mod-current),
|
|
@@ -86,106 +87,83 @@
|
|
|
86
87
|
background: var(--jp-layout-color1);
|
|
87
88
|
}
|
|
88
89
|
|
|
89
|
-
|
|
90
|
+
.jp-SideBar.lm-TabBar::after {
|
|
91
|
+
/* Internal border pseudo-element */
|
|
92
|
+
position: absolute;
|
|
93
|
+
content: '';
|
|
94
|
+
bottom: 0;
|
|
95
|
+
right: 0;
|
|
96
|
+
top: 0;
|
|
97
|
+
left: 0;
|
|
98
|
+
pointer-events: none;
|
|
99
|
+
}
|
|
90
100
|
|
|
91
101
|
/* Borders */
|
|
92
102
|
|
|
93
|
-
|
|
94
|
-
border-right: var(--jp-border-width) solid var(--jp-border-color0);
|
|
95
|
-
}
|
|
103
|
+
/* stylelint-disable selector-max-class */
|
|
96
104
|
|
|
97
|
-
.jp-SideBar.lm-TabBar
|
|
98
|
-
border-
|
|
105
|
+
.jp-SideBar.lm-TabBar .lm-TabBar-tab + .lm-TabBar-tab {
|
|
106
|
+
border-top: var(--jp-border-width) solid var(--jp-layout-color2);
|
|
99
107
|
}
|
|
100
108
|
|
|
101
|
-
.jp-SideBar.lm-TabBar.
|
|
102
|
-
|
|
103
|
-
+ .lm-TabBar-tab {
|
|
104
|
-
border-right: var(--jp-border-width) solid var(--jp-border-color0);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
.jp-SideBar.lm-TabBar.jp-mod-left
|
|
108
|
-
.lm-TabBar-tab
|
|
109
|
-
+ .lm-TabBar-tab.lm-mod-current {
|
|
110
|
-
border-right: var(--jp-border-width) solid var(--jp-border-color0);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.jp-SideBar.lm-TabBar.jp-mod-left .lm-TabBar-tab.lm-mod-current:last-child {
|
|
114
|
-
border-left: var(--jp-border-width) solid var(--jp-border-color0);
|
|
109
|
+
.jp-SideBar.lm-TabBar .lm-TabBar-tab.lm-mod-current + .lm-TabBar-tab {
|
|
110
|
+
border-top: var(--jp-border-width) solid var(--jp-border-color0);
|
|
115
111
|
}
|
|
116
112
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
.jp-SideBar.lm-TabBar.jp-mod-left .lm-TabBar-content {
|
|
120
|
-
flex-direction: row-reverse;
|
|
121
|
-
transform: rotate(-90deg) translateX(-100%);
|
|
113
|
+
.jp-SideBar.lm-TabBar .lm-TabBar-tab + .lm-TabBar-tab.lm-mod-current {
|
|
114
|
+
border-top: var(--jp-border-width) solid var(--jp-border-color0);
|
|
122
115
|
}
|
|
123
116
|
|
|
124
|
-
.jp-SideBar.lm-TabBar.
|
|
125
|
-
|
|
126
|
-
.lm-TabBar-tabIcon {
|
|
127
|
-
transform: rotate(90deg);
|
|
117
|
+
.jp-SideBar.lm-TabBar .lm-TabBar-tab.lm-mod-current:last-child {
|
|
118
|
+
border-bottom: var(--jp-border-width) solid var(--jp-border-color0);
|
|
128
119
|
}
|
|
129
120
|
|
|
130
|
-
.jp-SideBar.lm-TabBar.
|
|
131
|
-
|
|
132
|
-
.lm-TabBar-tabIcon {
|
|
133
|
-
transform: rotate(90deg)
|
|
134
|
-
translate(
|
|
135
|
-
calc(-0.5 * var(--jp-border-width)),
|
|
136
|
-
calc(-0.5 * var(--jp-border-width))
|
|
137
|
-
);
|
|
121
|
+
.jp-SideBar.lm-TabBar .lm-TabBar-tabLabel {
|
|
122
|
+
writing-mode: vertical-rl;
|
|
138
123
|
}
|
|
139
124
|
|
|
140
|
-
/*
|
|
125
|
+
/* Left */
|
|
141
126
|
|
|
142
127
|
/* Borders */
|
|
143
128
|
|
|
144
|
-
.jp-SideBar.lm-TabBar.jp-mod-
|
|
145
|
-
|
|
129
|
+
.jp-SideBar.lm-TabBar.jp-mod-left .lm-TabBar-content {
|
|
130
|
+
/* Internal border spacing */
|
|
131
|
+
margin-right: var(--jp-border-width);
|
|
146
132
|
}
|
|
147
133
|
|
|
148
|
-
.jp-SideBar.lm-TabBar.jp-mod-
|
|
149
|
-
|
|
134
|
+
.jp-SideBar.lm-TabBar.jp-mod-left .lm-TabBar-tab.lm-mod-current::after {
|
|
135
|
+
/* Internal border override */
|
|
136
|
+
right: calc(-1 * var(--jp-border-width));
|
|
150
137
|
}
|
|
151
138
|
|
|
152
|
-
.jp-SideBar.lm-TabBar.jp-mod-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
border-left: var(--jp-border-width) solid var(--jp-border-color0);
|
|
139
|
+
.jp-SideBar.lm-TabBar.jp-mod-left::after {
|
|
140
|
+
/* Internal border */
|
|
141
|
+
border-right: var(--jp-border-width) solid var(--jp-border-color0);
|
|
156
142
|
}
|
|
157
143
|
|
|
158
|
-
|
|
159
|
-
.lm-TabBar-tab
|
|
160
|
-
+ .lm-TabBar-tab.lm-mod-current {
|
|
161
|
-
border-left: var(--jp-border-width) solid var(--jp-border-color0);
|
|
162
|
-
}
|
|
144
|
+
/* Transforms */
|
|
163
145
|
|
|
164
|
-
.jp-SideBar.lm-TabBar.jp-mod-
|
|
165
|
-
|
|
146
|
+
.jp-SideBar.lm-TabBar.jp-mod-left .lm-TabBar-tabLabel {
|
|
147
|
+
transform: rotate(180deg);
|
|
166
148
|
}
|
|
167
149
|
|
|
168
|
-
/*
|
|
150
|
+
/* Right */
|
|
151
|
+
|
|
152
|
+
/* Borders */
|
|
169
153
|
|
|
170
154
|
.jp-SideBar.lm-TabBar.jp-mod-right .lm-TabBar-content {
|
|
171
|
-
|
|
172
|
-
|
|
155
|
+
/* Internal border spacing */
|
|
156
|
+
margin-left: var(--jp-border-width);
|
|
173
157
|
}
|
|
174
158
|
|
|
175
|
-
.jp-SideBar.lm-TabBar.jp-mod-right
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
transform: rotate(-90deg);
|
|
159
|
+
.jp-SideBar.lm-TabBar.jp-mod-right .lm-TabBar-tab.lm-mod-current::after {
|
|
160
|
+
/* Internal border override */
|
|
161
|
+
left: calc(-1 * var(--jp-border-width));
|
|
179
162
|
}
|
|
180
163
|
|
|
181
|
-
.jp-SideBar.lm-TabBar.jp-mod-right
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
transform: rotate(-90deg)
|
|
185
|
-
translate(
|
|
186
|
-
calc(0.5 * var(--jp-border-width)),
|
|
187
|
-
calc(-0.5 * var(--jp-border-width))
|
|
188
|
-
);
|
|
164
|
+
.jp-SideBar.lm-TabBar.jp-mod-right::after {
|
|
165
|
+
/* Internal border */
|
|
166
|
+
border-left: var(--jp-border-width) solid var(--jp-border-color0);
|
|
189
167
|
}
|
|
190
168
|
|
|
191
169
|
/* Down */
|
|
@@ -213,11 +191,14 @@
|
|
|
213
191
|
border-right: var(--jp-border-width) solid var(--jp-border-color1);
|
|
214
192
|
}
|
|
215
193
|
|
|
194
|
+
/* stylelint-enable selector-max-class */
|
|
195
|
+
|
|
216
196
|
/* Stack panels */
|
|
217
197
|
|
|
218
198
|
#jp-left-stack > .lm-Widget,
|
|
219
199
|
#jp-right-stack > .lm-Widget {
|
|
220
200
|
min-width: var(--jp-sidebar-min-width);
|
|
201
|
+
background-color: var(--jp-layout-color1);
|
|
221
202
|
}
|
|
222
203
|
|
|
223
204
|
#jp-right-stack {
|
package/style/tabs.css
CHANGED
|
@@ -20,7 +20,6 @@
|
|
|
20
20
|
|
|
21
21
|
.lm-DockPanel-tabBar,
|
|
22
22
|
.lm-TabPanel-tabBar {
|
|
23
|
-
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
|
|
24
23
|
overflow: visible;
|
|
25
24
|
color: var(--jp-ui-font-color1);
|
|
26
25
|
font-size: var(--jp-ui-font-size1);
|
|
@@ -49,7 +48,7 @@
|
|
|
49
48
|
flex: 0 1 var(--jp-private-horizontal-tab-width);
|
|
50
49
|
align-items: center;
|
|
51
50
|
min-height: calc(
|
|
52
|
-
var(--jp-private-horizontal-tab-height) + var(--jp-border-width)
|
|
51
|
+
var(--jp-private-horizontal-tab-height) + 2 * var(--jp-border-width)
|
|
53
52
|
);
|
|
54
53
|
min-width: 0;
|
|
55
54
|
margin-left: calc(-1 * var(--jp-border-width));
|
|
@@ -64,6 +63,17 @@
|
|
|
64
63
|
.lm-DockPanel-tabBar .lm-TabBar-tab:hover:not(.lm-mod-current),
|
|
65
64
|
.lm-TabPanel-tabBar .lm-TabBar-tab:hover:not(.lm-mod-current) {
|
|
66
65
|
background: var(--jp-layout-color1);
|
|
66
|
+
color: var(--jp-ui-font-color1);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.lm-DockPanel-tabBar .lm-TabBar-tab:not(.lm-mod-current)::after,
|
|
70
|
+
.lm-DockPanel-tabBar .lm-TabBar-addButton::after {
|
|
71
|
+
position: absolute;
|
|
72
|
+
content: '';
|
|
73
|
+
bottom: 0;
|
|
74
|
+
left: calc(-1 * var(--jp-border-width));
|
|
75
|
+
width: calc(100% + 2 * var(--jp-border-width));
|
|
76
|
+
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
|
|
67
77
|
}
|
|
68
78
|
|
|
69
79
|
.lm-DockPanel-tabBar .lm-TabBar-tab:first-child,
|
|
@@ -74,16 +84,12 @@
|
|
|
74
84
|
/* This is a current tab of a tab bar in the dock panel: each tab bar has 1. */
|
|
75
85
|
.lm-DockPanel-tabBar .lm-TabBar-tab.lm-mod-current {
|
|
76
86
|
background: var(--jp-layout-color1);
|
|
77
|
-
color: var(--jp-ui-font-
|
|
78
|
-
min-height: calc(
|
|
79
|
-
var(--jp-private-horizontal-tab-height) + 2 * var(--jp-border-width)
|
|
80
|
-
);
|
|
81
|
-
transform: translateY(var(--jp-border-width));
|
|
87
|
+
color: var(--jp-ui-font-color1);
|
|
82
88
|
}
|
|
83
89
|
|
|
84
90
|
.lm-TabPanel-tabBar .lm-TabBar-tab.lm-mod-current {
|
|
85
91
|
background: var(--jp-layout-color1);
|
|
86
|
-
color: var(--jp-ui-font-
|
|
92
|
+
color: var(--jp-ui-font-color1);
|
|
87
93
|
}
|
|
88
94
|
|
|
89
95
|
/* This is the main application level current tab: only 1 exists. */
|
|
@@ -99,12 +105,8 @@
|
|
|
99
105
|
|
|
100
106
|
/* This is the left tab bar current tab: only 1 exists. */
|
|
101
107
|
.lm-TabBar-tab.lm-mod-current {
|
|
102
|
-
color: var(--jp-ui-font-color0);
|
|
103
|
-
background: var(--jp-layout-color1);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.lm-TabBar-tab.lm-mod-current:hover {
|
|
107
108
|
background: var(--jp-layout-color1);
|
|
109
|
+
color: var(--jp-ui-font-color1);
|
|
108
110
|
}
|
|
109
111
|
|
|
110
112
|
.lm-DockPanel-tabBar .lm-TabBar.lm-mod-left .lm-TabBar-tab,
|
|
@@ -127,6 +129,8 @@
|
|
|
127
129
|
margin-top: 0;
|
|
128
130
|
}
|
|
129
131
|
|
|
132
|
+
/* stylelint-disable selector-max-class */
|
|
133
|
+
|
|
130
134
|
.lm-DockPanel-tabBar .lm-TabBar.lm-mod-left .lm-TabBar-tab.lm-mod-current,
|
|
131
135
|
.lm-DockPanel-tabBar .lm-TabBar.lm-mod-right .lm-TabBar-tab.lm-mod-current {
|
|
132
136
|
min-width: 80px;
|
|
@@ -147,21 +151,14 @@
|
|
|
147
151
|
margin-right: 4px;
|
|
148
152
|
}
|
|
149
153
|
|
|
150
|
-
|
|
151
|
-
.lm-TabPanel-tabBar .lm-TabBar-tab.lm-mod-current .lm-TabBar-tabIcon {
|
|
152
|
-
margin-bottom: var(--jp-border-width);
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
.lm-TabBar-WindowTabLabel {
|
|
156
|
-
margin-top: 4px;
|
|
157
|
-
}
|
|
154
|
+
/* stylelint-enable selector-max-class */
|
|
158
155
|
|
|
159
156
|
.lm-TabBar-tab.lm-mod-drag-image {
|
|
160
157
|
background: var(--jp-layout-color1);
|
|
158
|
+
color: var(--jp-ui-font-color1);
|
|
161
159
|
border: var(--jp-border-width) solid var(--jp-border-color1);
|
|
162
160
|
border-top: var(--jp-border-width) solid var(--jp-brand-color1);
|
|
163
161
|
box-shadow: var(--jp-elevation-z4);
|
|
164
|
-
color: var(--jp-ui-font-color1);
|
|
165
162
|
font-size: var(--jp-ui-font-size1);
|
|
166
163
|
line-height: var(--jp-private-horizontal-tab-height);
|
|
167
164
|
min-height: var(--jp-private-horizontal-tab-height);
|