Przeglądaj źródła

Simplify themes (#3423)

* Simplify themes

* Simplify the urls

* Bump launcher dep

* Add docs
Steven Silvester 7 lat temu
rodzic
commit
e4c88c862b

+ 4 - 4
docs/extensions_dev.md

@@ -177,10 +177,10 @@ document can then be saved by the user in the usual manner.
 ## Themes
 A theme is a JupyterLab extension that uses a `ThemeManager` and can be
 loaded and unloaded dynamically.  The package must include all static assets
-that are referenced by `url()` in its CSS files.  The `url()` paths in a CSS
-file served by the Jupyter server must start with the path
-`'./lab/api/themes/<foo>/'`, where `foo` is the name of the
-package. Note that `'@import'` paths are still given as relative paths, e.g. (`'@import './foo.css';`).
+that are referenced by `url()` in its CSS files.  Local URLs can be used
+to reference files relative to the location of the referring CSS file in the theme directory.  For example `url('images/foo.png')` or 
+`url('../foo/bar.css')`can be used to refer local files in the theme.  
+Absolute URLs (starting with a `/`) or external URLs (e.g. `https:`) can be used to refer to external assets.
 The path to the theme  assets is specified `package.json` under the
 `"jupyterlab"` key as `"themeDir"`. See the [JupyterLab Light Theme](https://github.com/jupyterlab/jupyterlab/tree/master/packages/theme-light-extension)
 for an example.  Ensure that the theme files are included in the

+ 1 - 93
packages/theme-dark-extension/style/embed.css

@@ -5,96 +5,4 @@
 
 @import '~font-awesome/css/font-awesome.min.css';
 @import '~@jupyterlab/application/style/index.css';
-@import './variables.css';
-
-:root {
-
-  /* Images
-
-  These images are included with JupyterLab for showing the Project Jupyter logo
-  */
-  --jp-image-jupyter: url('./images/jupyter.svg');
-  --jp-image-jupyterlab: url('./images/jupyterlab.svg');
-  --jp-image-jupyterlab-workmark: url('./images/jupyterlab-wordmark.svg');
-  --jp-image-jupyter-favicon: url('./images/jupyter-favicon.svg');
-  --jp-image-caretleft: url('./images/caretleft.png');
-  --jp-image-caretright: url('./images/caretright.png');
-  --jp-image-caretup: url('./images/caretup.png');
-  --jp-image-caretdown: url('./images/caretdown.png');
-
-  /* Icons
-
-  These icons are used throughout JupyterLab.
-  */
-
-  /* The caret used for select dropdown styling. */
-
-  --jp-ui-select-caret: url('./icons/md/down_caret.svg');
-
-  /* Icons used in the application. */
-
-  --jp-icon-add: url('./icons/md/add.svg');
-  --jp-icon-book: url('./icons/jupyter/book.svg');
-  --jp-icon-book-selected: url('./icons/jupyter/book_selected.svg');
-  --jp-icon-bug: url('./icons/md/bug.svg');
-  --jp-icon-directory: url('./icons/jupyter/directory.svg');
-  --jp-icon-directory-selected: url('./icons/jupyter/directory_selected.svg');
-  --jp-icon-new-directory: url('./icons/md/new-folder.svg');
-  --jp-icon-file-selected: url('./icons/jupyter/file_selected.svg');
-  --jp-icon-yaml: url('./icons/jupyter/yml.svg');
-  --jp-icon-yaml-selected: url('./icons/jupyter/yml_selected.svg');
-  --jp-icon-spreadsheet: url('./icons/jupyter/csv.svg');
-  --jp-icon-spreadsheet-selected: url('./icons/jupyter/csv_selected.svg');
-  --jp-icon-image: url('./icons/jupyter/image.svg');
-  --jp-icon-image-selected: url('./icons/jupyter/image_selected.svg');
-  --jp-icon-json: url('./icons/jupyter/json.svg');
-  --jp-icon-json-selected: url('./icons/jupyter/json_selected.svg');
-  --jp-icon-kernel-running: url('./icons/md/panorama_fish_eye.svg');
-  --jp-icon-markdown: url('./icons/jupyter/markdown.svg');
-  --jp-icon-markdown-selected: url('./icons/jupyter/markdown_selected.svg');
-  --jp-icon-python: url('./icons/jupyter/python.svg');
-  --jp-icon-python-selected: url('./icons/jupyter/python_selected.svg');
-  --jp-icon-r: url('./icons/jupyter/r.svg');
-  --jp-icon-r-selected: url('./icons/jupyter/r_selected.svg');
-  --jp-icon-console: url('./icons/jupyter/console.svg');
-  --jp-icon-terminal: url('./icons/jupyter/terminal.svg');
-  --jp-icon-file: url('./icons/jupyter/file.svg');
-  --jp-icon-refresh: url('./icons/md/refresh.svg');
-  --jp-icon-close: url('./icons/md/close.svg');
-  --jp-icon-inverse-close: url('./icons/md/close-inverse.svg');
-  --jp-icon-circle: url('./icons/md/circle.svg');
-  --jp-icon-inverse-circle: url('./icons/md/circle-inverse.svg');
-  --jp-icon-close-circle: url('./icons/md/close-circle.svg');
-  --jp-icon-inverse-close-circle: url('./icons/md/close-circle-inverse.svg');
-  --jp-icon-search: url('./icons/md/search.svg');
-  --jp-icon-copy: url('./icons/md/copy.svg');
-  --jp-icon-cut: url('./icons/md/cut.svg');
-  --jp-icon-paste: url('./icons/md/paste.svg');
-  --jp-icon-download: url('./icons/md/download.svg');
-  --jp-icon-edit: url('./icons/md/edit.svg');
-  --jp-icon-ellipses: url('./icons/md/ellipses.svg');
-  --jp-icon-expand-less: url('./icons/md/expand-less.svg');
-  --jp-icon-expand-more: url('./icons/md/expand-more.svg');
-  --jp-icon-home: url('./icons/md/home.svg');
-  --jp-icon-jupyter: url('./icons/jupyter/jupyter.svg');
-  --jp-icon-launcher: url('./icons/jupyter/launcher.svg');
-  --jp-icon-more: url('./icons/md/more-horiz.svg');
-  --jp-icon-run: url('./icons/md/run.svg');
-  --jp-icon-save: url('./icons/md/save.svg');
-  --jp-icon-stop: url('./icons/md/stop.svg');
-  --jp-icon-text-editor: url('./icons/jupyter/texteditor.svg');
-  --jp-icon-vega: url('./icons/jupyter/vega.svg');
-  --jp-icon-upload: url('./icons/md/upload.svg');
-  --jp-icon-question-mark: url('./icons/jupyter/questionmark.svg');
-  --jp-icon-chat: url('./icons/md/chat.svg');
-  --jp-icon-checkmark: url('./icons/md/checkmark.svg');
-  --jp-icon-checkmark-disabled: url('./icons/md/checkmark-disabled.svg');
-  --jp-icon-caretup: url('./icons/md/caretup.svg');
-  --jp-icon-caretdown: url('./icons/md/caretdown.svg');
-  --jp-icon-caretleft: url('./icons/md/caretleft.svg');
-  --jp-icon-caretright: url('./icons/md/caretright.svg');
-  --jp-icon-undo: url('./icons/md/undo.svg');
-  --jp-icon-settings: url('./icons/jupyter/settings.svg');
-  --jp-about-header-logo: url('./icons/jupyter/jupyter.svg');
-  --jp-about-header-wordmark: url('./images/jupyterlab-wordmark.svg');
-}
+@import './index.css';

+ 73 - 74
packages/theme-dark-extension/style/urls.css

@@ -9,15 +9,14 @@
 
   These images are included with JupyterLab for showing the Project Jupyter logo
   */
-  --jp-image-jupyter: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyter-white-moons.svg');
-  --jp-image-jupyterlab: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyterlab.svg');
-  --jp-image-jupyterlab-workmark: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyterlab-wordmark.svg');
-  --jp-image-jupyter-favicon: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyter-favicon.svg');
-  --jp-image-caretleft: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/caretleft.png');
-  --jp-image-caretright: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/caretright.png');
-  --jp-image-caretup: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/caretup.png');
-  --jp-image-caretdown: url('./lab/api/themes/@jupyterlab/theme-dark-extension/images/caretdown.png');
-
+  --jp-image-jupyter: url('images/jupyter.svg');
+  --jp-image-jupyterlab: url('images/jupyterlab.svg');
+  --jp-image-jupyterlab-workmark: url('images/jupyterlab-wordmark.svg');
+  --jp-image-jupyter-favicon: url('images/jupyter-favicon.svg');
+  --jp-image-caretleft: url('images/caretleft.png');
+  --jp-image-caretright: url('images/caretright.png');
+  --jp-image-caretup: url('images/caretup.png');
+  --jp-image-caretdown: url('images/caretdown.png');
 
   /* Icons
 
@@ -26,72 +25,72 @@
 
   /* The caret used for select dropdown styling. */
 
-  --jp-ui-select-caret: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/down_caret.svg');
+  --jp-ui-select-caret: url('icons/md/down_caret.svg');
 
   /* Icons used in the application. */
 
-  --jp-icon-add: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/add.svg');
-  --jp-icon-book: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/book.svg');
-  --jp-icon-book-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/book_selected.svg');
-  --jp-icon-bug: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/bug.svg');
-  --jp-icon-directory: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/directory.svg');
-  --jp-icon-directory-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/directory_selected.svg');
-  --jp-icon-new-directory: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/new-folder.svg');
-  --jp-icon-file-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/file_selected.svg');
-  --jp-icon-yaml: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/yml.svg');
-  --jp-icon-yaml-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/yml_selected.svg');
-  --jp-icon-spreadsheet: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/csv.svg');
-  --jp-icon-spreadsheet-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/csv_selected.svg');
-  --jp-icon-image: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/image.svg');
-  --jp-icon-image-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/image_selected.svg');
-  --jp-icon-json: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/json.svg');
-  --jp-icon-json-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/json_selected.svg');
-  --jp-icon-kernel-running: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/panorama_fish_eye.svg');
-  --jp-icon-markdown: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/markdown.svg');
-  --jp-icon-markdown-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/markdown_selected.svg');
-  --jp-icon-python: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/python.svg');
-  --jp-icon-python-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/python_selected.svg');
-  --jp-icon-r: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/r.svg');
-  --jp-icon-r-selected: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/r_selected.svg');
-  --jp-icon-console: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/console.svg');
-  --jp-icon-terminal: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/terminal.svg');
-  --jp-icon-file: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/file.svg');
-  --jp-icon-refresh: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/refresh.svg');
-  --jp-icon-close: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/close.svg');
-  --jp-icon-inverse-close: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/close-inverse.svg');
-  --jp-icon-circle: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/circle.svg');
-  --jp-icon-inverse-circle: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/circle-inverse.svg');
-  --jp-icon-close-circle: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/close-circle.svg');
-  --jp-icon-inverse-close-circle: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/close-circle-inverse.svg');
-  --jp-icon-search: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/search.svg');
-  --jp-icon-copy: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/copy.svg');
-  --jp-icon-cut: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/cut.svg');
-  --jp-icon-paste: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/paste.svg');
-  --jp-icon-download: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/download.svg');
-  --jp-icon-edit: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/edit.svg');
-  --jp-icon-ellipses: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/ellipses.svg');
-  --jp-icon-expand-less: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/expand-less.svg');
-  --jp-icon-expand-more: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/expand-more.svg');
-  --jp-icon-home: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/home.svg');
-  --jp-icon-jupyter: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/jupyter.svg');
-  --jp-icon-launcher: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/launcher.svg');
-  --jp-icon-more: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/more-horiz.svg');
-  --jp-icon-run: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/run.svg');
-  --jp-icon-save: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/save.svg');
-  --jp-icon-stop: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/stop.svg');
-  --jp-icon-text-editor: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/texteditor.svg');
-  --jp-icon-upload: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/upload.svg');
-  --jp-icon-question-mark: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/questionmark.svg');
-  --jp-icon-chat: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/chat.svg');
-  --jp-icon-checkmark: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/checkmark.svg');
-  --jp-icon-checkmark-disabled: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/checkmark-disabled.svg');
-  --jp-icon-caretup: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/caretup.svg');
-  --jp-icon-caretdown: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/caretdown.svg');
-  --jp-icon-caretleft: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/caretleft.svg');
-  --jp-icon-caretright: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/caretright.svg');
-  --jp-icon-undo: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/md/undo.svg');
-  --jp-icon-settings: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/settings.svg');
-  --jp-about-header-logo: url('./lab/api/themes/@jupyterlab/theme-dark-extension/icons/jupyter/jupyter.svg');
-  --jp-about-header-logo: url('/lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyter-white-moons.svg');
-  --jp-about-header-wordmark: url('/lab/api/themes/@jupyterlab/theme-dark-extension/images/jupyterlab-wordmark-inverse.svg');
+  --jp-icon-add: url('icons/md/add.svg');
+  --jp-icon-book: url('icons/jupyter/book.svg');
+  --jp-icon-book-selected: url('icons/jupyter/book_selected.svg');
+  --jp-icon-bug: url('icons/md/bug.svg');
+  --jp-icon-directory: url('icons/jupyter/directory.svg');
+  --jp-icon-directory-selected: url('icons/jupyter/directory_selected.svg');
+  --jp-icon-new-directory: url('icons/md/new-folder.svg');
+  --jp-icon-file-selected: url('icons/jupyter/file_selected.svg');
+  --jp-icon-yaml: url('icons/jupyter/yml.svg');
+  --jp-icon-yaml-selected: url('icons/jupyter/yml_selected.svg');
+  --jp-icon-spreadsheet: url('icons/jupyter/csv.svg');
+  --jp-icon-spreadsheet-selected: url('icons/jupyter/csv_selected.svg');
+  --jp-icon-image: url('icons/jupyter/image.svg');
+  --jp-icon-image-selected: url('icons/jupyter/image_selected.svg');
+  --jp-icon-json: url('icons/jupyter/json.svg');
+  --jp-icon-json-selected: url('icons/jupyter/json_selected.svg');
+  --jp-icon-kernel-running: url('icons/md/panorama_fish_eye.svg');
+  --jp-icon-markdown: url('icons/jupyter/markdown.svg');
+  --jp-icon-markdown-selected: url('icons/jupyter/markdown_selected.svg');
+  --jp-icon-python: url('icons/jupyter/python.svg');
+  --jp-icon-python-selected: url('icons/jupyter/python_selected.svg');
+  --jp-icon-r: url('icons/jupyter/r.svg');
+  --jp-icon-r-selected: url('icons/jupyter/r_selected.svg');
+  --jp-icon-console: url('icons/jupyter/console.svg');
+  --jp-icon-terminal: url('icons/jupyter/terminal.svg');
+  --jp-icon-file: url('icons/jupyter/file.svg');
+  --jp-icon-refresh: url('icons/md/refresh.svg');
+  --jp-icon-close: url('icons/md/close.svg');
+  --jp-icon-inverse-close: url('icons/md/close-inverse.svg');
+  --jp-icon-circle: url('icons/md/circle.svg');
+  --jp-icon-inverse-circle: url('icons/md/circle-inverse.svg');
+  --jp-icon-close-circle: url('icons/md/close-circle.svg');
+  --jp-icon-inverse-close-circle: url('icons/md/close-circle-inverse.svg');
+  --jp-icon-search: url('icons/md/search.svg');
+  --jp-icon-copy: url('icons/md/copy.svg');
+  --jp-icon-cut: url('icons/md/cut.svg');
+  --jp-icon-paste: url('icons/md/paste.svg');
+  --jp-icon-download: url('icons/md/download.svg');
+  --jp-icon-edit: url('icons/md/edit.svg');
+  --jp-icon-ellipses: url('icons/md/ellipses.svg');
+  --jp-icon-expand-less: url('icons/md/expand-less.svg');
+  --jp-icon-expand-more: url('icons/md/expand-more.svg');
+  --jp-icon-home: url('icons/md/home.svg');
+  --jp-icon-jupyter: url('icons/jupyter/jupyter.svg');
+  --jp-icon-launcher: url('icons/jupyter/launcher.svg');
+  --jp-icon-more: url('icons/md/more-horiz.svg');
+  --jp-icon-run: url('icons/md/run.svg');
+  --jp-icon-save: url('icons/md/save.svg');
+  --jp-icon-stop: url('icons/md/stop.svg');
+  --jp-icon-text-editor: url('icons/jupyter/texteditor.svg');
+  --jp-icon-vega: url('icons/jupyter/vega.svg');
+  --jp-icon-upload: url('icons/md/upload.svg');
+  --jp-icon-question-mark: url('icons/jupyter/questionmark.svg');
+  --jp-icon-chat: url('icons/md/chat.svg');
+  --jp-icon-checkmark: url('icons/md/checkmark.svg');
+  --jp-icon-checkmark-disabled: url('icons/md/checkmark-disabled.svg');
+  --jp-icon-caretup: url('icons/md/caretup.svg');
+  --jp-icon-caretdown: url('icons/md/caretdown.svg');
+  --jp-icon-caretleft: url('icons/md/caretleft.svg');
+  --jp-icon-caretright: url('icons/md/caretright.svg');
+  --jp-icon-undo: url('icons/md/undo.svg');
+  --jp-icon-settings: url('icons/jupyter/settings.svg');
+  --jp-about-header-logo: url('icons/jupyter/jupyter.svg');
+  --jp-about-header-wordmark: url('images/jupyterlab-wordmark.svg');
 }

+ 1 - 93
packages/theme-light-extension/style/embed.css

@@ -5,96 +5,4 @@
 
 @import '~font-awesome/css/font-awesome.min.css';
 @import '~@jupyterlab/application/style/index.css';
-@import './variables.css';
-
-:root {
-
-  /* Images
-
-  These images are included with JupyterLab for showing the Project Jupyter logo
-  */
-  --jp-image-jupyter: url('./images/jupyter.svg');
-  --jp-image-jupyterlab: url('./images/jupyterlab.svg');
-  --jp-image-jupyterlab-workmark: url('./images/jupyterlab-wordmark.svg');
-  --jp-image-jupyter-favicon: url('./images/jupyter-favicon.svg');
-  --jp-image-caretleft: url('./images/caretleft.png');
-  --jp-image-caretright: url('./images/caretright.png');
-  --jp-image-caretup: url('./images/caretup.png');
-  --jp-image-caretdown: url('./images/caretdown.png');
-
-  /* Icons
-
-  These icons are used throughout JupyterLab.
-  */
-
-  /* The caret used for select dropdown styling. */
-
-  --jp-ui-select-caret: url('./icons/md/down_caret.svg');
-
-  /* Icons used in the application. */
-
-  --jp-icon-add: url('./icons/md/add.svg');
-  --jp-icon-book: url('./icons/jupyter/book.svg');
-  --jp-icon-book-selected: url('./icons/jupyter/book_selected.svg');
-  --jp-icon-bug: url('./icons/md/bug.svg');
-  --jp-icon-directory: url('./icons/jupyter/directory.svg');
-  --jp-icon-directory-selected: url('./icons/jupyter/directory_selected.svg');
-  --jp-icon-new-directory: url('./icons/md/new-folder.svg');
-  --jp-icon-file-selected: url('./icons/jupyter/file_selected.svg');
-  --jp-icon-yaml: url('./icons/jupyter/yml.svg');
-  --jp-icon-yaml-selected: url('./icons/jupyter/yml_selected.svg');
-  --jp-icon-spreadsheet: url('./icons/jupyter/csv.svg');
-  --jp-icon-spreadsheet-selected: url('./icons/jupyter/csv_selected.svg');
-  --jp-icon-image: url('./icons/jupyter/image.svg');
-  --jp-icon-image-selected: url('./icons/jupyter/image_selected.svg');
-  --jp-icon-json: url('./icons/jupyter/json.svg');
-  --jp-icon-json-selected: url('./icons/jupyter/json_selected.svg');
-  --jp-icon-kernel-running: url('./icons/md/panorama_fish_eye.svg');
-  --jp-icon-markdown: url('./icons/jupyter/markdown.svg');
-  --jp-icon-markdown-selected: url('./icons/jupyter/markdown_selected.svg');
-  --jp-icon-python: url('./icons/jupyter/python.svg');
-  --jp-icon-python-selected: url('./icons/jupyter/python_selected.svg');
-  --jp-icon-r: url('./icons/jupyter/r.svg');
-  --jp-icon-r-selected: url('./icons/jupyter/r_selected.svg');
-  --jp-icon-console: url('./icons/jupyter/console.svg');
-  --jp-icon-terminal: url('./icons/jupyter/terminal.svg');
-  --jp-icon-file: url('./icons/jupyter/file.svg');
-  --jp-icon-refresh: url('./icons/md/refresh.svg');
-  --jp-icon-close: url('./icons/md/close.svg');
-  --jp-icon-inverse-close: url('./icons/md/close-inverse.svg');
-  --jp-icon-circle: url('./icons/md/circle.svg');
-  --jp-icon-inverse-circle: url('./icons/md/circle-inverse.svg');
-  --jp-icon-close-circle: url('./icons/md/close-circle.svg');
-  --jp-icon-inverse-close-circle: url('./icons/md/close-circle-inverse.svg');
-  --jp-icon-search: url('./icons/md/search.svg');
-  --jp-icon-copy: url('./icons/md/copy.svg');
-  --jp-icon-cut: url('./icons/md/cut.svg');
-  --jp-icon-paste: url('./icons/md/paste.svg');
-  --jp-icon-download: url('./icons/md/download.svg');
-  --jp-icon-edit: url('./icons/md/edit.svg');
-  --jp-icon-ellipses: url('./icons/md/ellipses.svg');
-  --jp-icon-expand-less: url('./icons/md/expand-less.svg');
-  --jp-icon-expand-more: url('./icons/md/expand-more.svg');
-  --jp-icon-home: url('./icons/md/home.svg');
-  --jp-icon-jupyter: url('./icons/jupyter/jupyter.svg');
-  --jp-icon-launcher: url('./icons/jupyter/launcher.svg');
-  --jp-icon-more: url('./icons/md/more-horiz.svg');
-  --jp-icon-run: url('./icons/md/run.svg');
-  --jp-icon-save: url('./icons/md/save.svg');
-  --jp-icon-stop: url('./icons/md/stop.svg');
-  --jp-icon-text-editor: url('./icons/jupyter/texteditor.svg');
-  --jp-icon-vega: url('./icons/jupyter/vega.svg');
-  --jp-icon-upload: url('./icons/md/upload.svg');
-  --jp-icon-question-mark: url('./icons/jupyter/questionmark.svg');
-  --jp-icon-chat: url('./icons/md/chat.svg');
-  --jp-icon-checkmark: url('./icons/md/checkmark.svg');
-  --jp-icon-checkmark-disabled: url('./icons/md/checkmark-disabled.svg');
-  --jp-icon-caretup: url('./icons/md/caretup.svg');
-  --jp-icon-caretdown: url('./icons/md/caretdown.svg');
-  --jp-icon-caretleft: url('./icons/md/caretleft.svg');
-  --jp-icon-caretright: url('./icons/md/caretright.svg');
-  --jp-icon-undo: url('./icons/md/undo.svg');
-  --jp-icon-settings: url('./icons/jupyter/settings.svg');
-  --jp-about-header-logo: url('./icons/jupyter/jupyter.svg');
-  --jp-about-header-wordmark: url('./images/jupyterlab-wordmark.svg');
-}
+@import './index.css';

+ 73 - 73
packages/theme-light-extension/style/urls.css

@@ -10,14 +10,14 @@
 
   These images are included with JupyterLab for showing the Project Jupyter logo
   */
-  --jp-image-jupyter: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/jupyter.svg');
-  --jp-image-jupyterlab: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/jupyterlab.svg');
-  --jp-image-jupyterlab-workmark: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/jupyterlab-wordmark.svg');
-  --jp-image-jupyter-favicon: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/jupyter-favicon.svg');
-  --jp-image-caretleft: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/caretleft.png');
-  --jp-image-caretright: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/caretright.png');
-  --jp-image-caretup: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/caretup.png');
-  --jp-image-caretdown: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/caretdown.png');
+  --jp-image-jupyter: url('images/jupyter.svg');
+  --jp-image-jupyterlab: url('images/jupyterlab.svg');
+  --jp-image-jupyterlab-workmark: url('images/jupyterlab-wordmark.svg');
+  --jp-image-jupyter-favicon: url('images/jupyter-favicon.svg');
+  --jp-image-caretleft: url('images/caretleft.png');
+  --jp-image-caretright: url('images/caretright.png');
+  --jp-image-caretup: url('images/caretup.png');
+  --jp-image-caretdown: url('images/caretdown.png');
 
   /* Icons
 
@@ -26,72 +26,72 @@
 
   /* The caret used for select dropdown styling. */
 
-  --jp-ui-select-caret: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/down_caret.svg');
+  --jp-ui-select-caret: url('icons/md/down_caret.svg');
 
   /* Icons used in the application. */
 
-  --jp-icon-add: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/add.svg');
-  --jp-icon-book: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/book.svg');
-  --jp-icon-book-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/book_selected.svg');
-  --jp-icon-bug: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/bug.svg');
-  --jp-icon-directory: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/directory.svg');
-  --jp-icon-directory-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/directory_selected.svg');
-  --jp-icon-new-directory: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/new-folder.svg');
-  --jp-icon-file-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/file_selected.svg');
-  --jp-icon-yaml: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/yml.svg');
-  --jp-icon-yaml-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/yml_selected.svg');
-  --jp-icon-spreadsheet: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/csv.svg');
-  --jp-icon-spreadsheet-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/csv_selected.svg');
-  --jp-icon-image: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/image.svg');
-  --jp-icon-image-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/image_selected.svg');
-  --jp-icon-json: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/json.svg');
-  --jp-icon-json-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/json_selected.svg');
-  --jp-icon-kernel-running: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/panorama_fish_eye.svg');
-  --jp-icon-markdown: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/markdown.svg');
-  --jp-icon-markdown-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/markdown_selected.svg');
-  --jp-icon-python: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/python.svg');
-  --jp-icon-python-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/python_selected.svg');
-  --jp-icon-r: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/r.svg');
-  --jp-icon-r-selected: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/r_selected.svg');
-  --jp-icon-console: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/console.svg');
-  --jp-icon-terminal: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/terminal.svg');
-  --jp-icon-file: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/file.svg');
-  --jp-icon-refresh: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/refresh.svg');
-  --jp-icon-close: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/close.svg');
-  --jp-icon-inverse-close: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/close-inverse.svg');
-  --jp-icon-circle: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/circle.svg');
-  --jp-icon-inverse-circle: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/circle-inverse.svg');
-  --jp-icon-close-circle: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/close-circle.svg');
-  --jp-icon-inverse-close-circle: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/close-circle-inverse.svg');
-  --jp-icon-search: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/search.svg');
-  --jp-icon-copy: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/copy.svg');
-  --jp-icon-cut: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/cut.svg');
-  --jp-icon-paste: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/paste.svg');
-  --jp-icon-download: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/download.svg');
-  --jp-icon-edit: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/edit.svg');
-  --jp-icon-ellipses: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/ellipses.svg');
-  --jp-icon-expand-less: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/expand-less.svg');
-  --jp-icon-expand-more: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/expand-more.svg');
-  --jp-icon-home: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/home.svg');
-  --jp-icon-jupyter: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/jupyter.svg');
-  --jp-icon-launcher: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/launcher.svg');
-  --jp-icon-more: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/more-horiz.svg');
-  --jp-icon-run: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/run.svg');
-  --jp-icon-save: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/save.svg');
-  --jp-icon-stop: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/stop.svg');
-  --jp-icon-text-editor: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/texteditor.svg');
-  --jp-icon-vega: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/vega.svg');
-  --jp-icon-upload: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/upload.svg');
-  --jp-icon-question-mark: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/questionmark.svg');
-  --jp-icon-chat: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/chat.svg');
-  --jp-icon-checkmark: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/checkmark.svg');
-  --jp-icon-checkmark-disabled: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/checkmark-disabled.svg');
-  --jp-icon-caretup: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/caretup.svg');
-  --jp-icon-caretdown: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/caretdown.svg');
-  --jp-icon-caretleft: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/caretleft.svg');
-  --jp-icon-caretright: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/caretright.svg');
-  --jp-icon-undo: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/md/undo.svg');
-  --jp-icon-settings: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/settings.svg');
-  --jp-about-header-logo: url('./lab/api/themes/@jupyterlab/theme-light-extension/icons/jupyter/jupyter.svg');
-  --jp-about-header-wordmark: url('./lab/api/themes/@jupyterlab/theme-light-extension/images/jupyterlab-wordmark.svg');
+  --jp-icon-add: url('icons/md/add.svg');
+  --jp-icon-book: url('icons/jupyter/book.svg');
+  --jp-icon-book-selected: url('icons/jupyter/book_selected.svg');
+  --jp-icon-bug: url('icons/md/bug.svg');
+  --jp-icon-directory: url('icons/jupyter/directory.svg');
+  --jp-icon-directory-selected: url('icons/jupyter/directory_selected.svg');
+  --jp-icon-new-directory: url('icons/md/new-folder.svg');
+  --jp-icon-file-selected: url('icons/jupyter/file_selected.svg');
+  --jp-icon-yaml: url('icons/jupyter/yml.svg');
+  --jp-icon-yaml-selected: url('icons/jupyter/yml_selected.svg');
+  --jp-icon-spreadsheet: url('icons/jupyter/csv.svg');
+  --jp-icon-spreadsheet-selected: url('icons/jupyter/csv_selected.svg');
+  --jp-icon-image: url('icons/jupyter/image.svg');
+  --jp-icon-image-selected: url('icons/jupyter/image_selected.svg');
+  --jp-icon-json: url('icons/jupyter/json.svg');
+  --jp-icon-json-selected: url('icons/jupyter/json_selected.svg');
+  --jp-icon-kernel-running: url('icons/md/panorama_fish_eye.svg');
+  --jp-icon-markdown: url('icons/jupyter/markdown.svg');
+  --jp-icon-markdown-selected: url('icons/jupyter/markdown_selected.svg');
+  --jp-icon-python: url('icons/jupyter/python.svg');
+  --jp-icon-python-selected: url('icons/jupyter/python_selected.svg');
+  --jp-icon-r: url('icons/jupyter/r.svg');
+  --jp-icon-r-selected: url('icons/jupyter/r_selected.svg');
+  --jp-icon-console: url('icons/jupyter/console.svg');
+  --jp-icon-terminal: url('icons/jupyter/terminal.svg');
+  --jp-icon-file: url('icons/jupyter/file.svg');
+  --jp-icon-refresh: url('icons/md/refresh.svg');
+  --jp-icon-close: url('icons/md/close.svg');
+  --jp-icon-inverse-close: url('icons/md/close-inverse.svg');
+  --jp-icon-circle: url('icons/md/circle.svg');
+  --jp-icon-inverse-circle: url('icons/md/circle-inverse.svg');
+  --jp-icon-close-circle: url('icons/md/close-circle.svg');
+  --jp-icon-inverse-close-circle: url('icons/md/close-circle-inverse.svg');
+  --jp-icon-search: url('icons/md/search.svg');
+  --jp-icon-copy: url('icons/md/copy.svg');
+  --jp-icon-cut: url('icons/md/cut.svg');
+  --jp-icon-paste: url('icons/md/paste.svg');
+  --jp-icon-download: url('icons/md/download.svg');
+  --jp-icon-edit: url('icons/md/edit.svg');
+  --jp-icon-ellipses: url('icons/md/ellipses.svg');
+  --jp-icon-expand-less: url('icons/md/expand-less.svg');
+  --jp-icon-expand-more: url('icons/md/expand-more.svg');
+  --jp-icon-home: url('icons/md/home.svg');
+  --jp-icon-jupyter: url('icons/jupyter/jupyter.svg');
+  --jp-icon-launcher: url('icons/jupyter/launcher.svg');
+  --jp-icon-more: url('icons/md/more-horiz.svg');
+  --jp-icon-run: url('icons/md/run.svg');
+  --jp-icon-save: url('icons/md/save.svg');
+  --jp-icon-stop: url('icons/md/stop.svg');
+  --jp-icon-text-editor: url('icons/jupyter/texteditor.svg');
+  --jp-icon-vega: url('icons/jupyter/vega.svg');
+  --jp-icon-upload: url('icons/md/upload.svg');
+  --jp-icon-question-mark: url('icons/jupyter/questionmark.svg');
+  --jp-icon-chat: url('icons/md/chat.svg');
+  --jp-icon-checkmark: url('icons/md/checkmark.svg');
+  --jp-icon-checkmark-disabled: url('icons/md/checkmark-disabled.svg');
+  --jp-icon-caretup: url('icons/md/caretup.svg');
+  --jp-icon-caretdown: url('icons/md/caretdown.svg');
+  --jp-icon-caretleft: url('icons/md/caretleft.svg');
+  --jp-icon-caretright: url('icons/md/caretright.svg');
+  --jp-icon-undo: url('icons/md/undo.svg');
+  --jp-icon-settings: url('icons/jupyter/settings.svg');
+  --jp-about-header-logo: url('icons/jupyter/jupyter.svg');
+  --jp-about-header-wordmark: url('images/jupyterlab-wordmark.svg');
 }

+ 1 - 1
setup.py

@@ -120,7 +120,7 @@ setup_args = dict(
 
 setup_args['install_requires'] = [
     'notebook>=4.3.1',
-    'jupyterlab_launcher>=0.7.0,<0.8.0',
+    'jupyterlab_launcher>=0.8.0,<0.9.0',
     'ipython_genutils',
     'futures;python_version<"3.0"',
     'subprocess32;python_version<"3.0"'