From 8180403f976ee0d759631e7539205548dbdd2d6c Mon Sep 17 00:00:00 2001 From: Aditya Toshniwal Date: Thu, 7 Nov 2019 18:51:03 +0530 Subject: [PATCH] =?UTF-8?q?1)=C2=A0Added=20support=20for=20custom=20theme?= =?UTF-8?q?=20creation=20and=20selection.=20Fixes=20#4348.=202)=C2=A0Added?= =?UTF-8?q?=20Dark(Beta)=20UI=20Theme=20option.=20Fixes=20#3741.=203)?= =?UTF-8?q?=C2=A0Fix=20an=20issue=20where=20a=20black=20arrow-kind=20image?= =?UTF-8?q?=20is=20displaying=20at=20the=20background=20of=20browser=20tre?= =?UTF-8?q?e=20images.=20Fixes=20#4171?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes include: 1) New theme option in preferences - Miscellaneous -> Themes. You can select the theme from the dropdown. It also has a preview of the theme just below the dropdown. Note that, a page refresh is needed to apply changes. On saving, a dialogĀ appears to ask for refresh. 2) You can create your own theme and submit to hackers. README is updated to help you create a theme. Theme will be available only after the bundle. 3) Correction of SASS variables at few places and few other CSS corrections. 4) Added iconfont-webpack-plugin, which will convert all the SVG files(monochrome) used as icons for buttons to font icons. This will allow us to change the color of the icon by using CSS color property. 5) All the .css files will bundle into a separate file now- pgadmin.style.css. This will help reduce the size of theme CSS files as CSS in .css files will not change with the change of SASS variables. --- .gitignore | 1 + README | 13 + docs/en_US/images/preferences_misc_themes.png | Bin 0 -> 103490 bytes .../images/preferences_misc_user_language.png | Bin 50432 -> 74731 bytes docs/en_US/preferences.rst | 8 + docs/en_US/release_notes_4_15.rst | 5 +- web/config.py | 21 ++ web/package.json | 4 + web/pgadmin/__init__.py | 20 +- .../servers/static/css/servers.css | 11 +- .../servers/static/scss/_servers.scss | 9 + web/pgadmin/browser/static/css/browser.css | 5 + .../browser/static/img/drop_cascade.svg | 20 ++ web/pgadmin/browser/static/js/collection.js | 2 +- web/pgadmin/browser/static/js/toolbar.js | 6 +- web/pgadmin/browser/static/scss/_browser.scss | 3 +- .../dashboard/static/css/dashboard.css | 17 - .../dashboard/static/scss/_dashboard.scss | 22 +- web/pgadmin/misc/__init__.py | 36 +- .../bgprocess/static/scss/_bgprocess.scss | 2 +- .../file_manager/static/css/file_manager.css | 6 - .../static/scss/_file_manager.scss | 50 +-- web/pgadmin/misc/static/explain/js/explain.js | 2 +- .../misc/static/explain/scss/_explain.scss | 29 +- .../preferences/static/js/preferences.js | 31 +- web/pgadmin/static/img/drop_cascade.svg | 28 -- web/pgadmin/static/img/load-node.gif | Bin 1728 -> 0 bytes web/pgadmin/static/img/loader-small.svg | 18 + web/pgadmin/static/js/backform.pgadmin.js | 13 + web/pgadmin/static/js/sqleditor_utils.js | 10 +- .../static/scss/_aci_tree.overrides.scss | 126 +++++-- web/pgadmin/static/scss/_alert.scss | 2 +- .../static/scss/_alertify.overrides.scss | 9 + .../static/scss/_backgrid.overrides.scss | 14 +- .../static/scss/_bootstrap.overrides.scss | 12 +- .../static/scss/_codemirror.overrides.scss | 41 ++- web/pgadmin/static/scss/_pgadmin.style.scss | 61 ++-- .../static/scss/_select2.overrides.scss | 29 +- .../static/scss/_webcabin.pgadmin.scss | 28 +- web/pgadmin/static/scss/pgadmin.scss | 3 - .../static/scss/resources/_default.style.scss | 18 +- .../scss/resources/_default.variables.scss | 185 ++++++----- .../scss/resources/_pgadmin.variables.scss | 0 .../resources/_theme.variables.scss.sample | 74 +++++ web/pgadmin/static/scss/resources/_utils.scss | 9 - .../scss/resources/dark/_theme.variables.scss | 73 +++++ .../scss/resources/dark/dark_preview.png | Bin 0 -> 55602 bytes .../scss/resources/pgadmin.resources.scss | 2 - .../scss/resources/standard_preview.png | Bin 0 -> 33349 bytes web/pgadmin/templates/base.html | 3 +- .../datagrid/templates/datagrid/index.html | 104 +++--- .../tools/sqleditor/static/css/sqleditor.css | 73 +---- .../tools/sqleditor/static/img/commit.svg | 23 +- .../tools/sqleditor/static/img/connect.svg | 24 +- .../tools/sqleditor/static/img/disconnect.svg | 25 +- .../tools/sqleditor/static/img/rollback.svg | 23 +- .../static/img/save_data_changes.svg | 36 +- .../tools/sqleditor/static/img/view_data.svg | 35 +- .../tools/sqleditor/static/scss/_history.scss | 14 +- .../sqleditor/static/scss/_sqleditor.scss | 89 ++++- web/webpack.config.js | 309 +++++++++++++----- web/yarn.lock | 295 ++++++++++++++++- 62 files changed, 1537 insertions(+), 594 deletions(-) create mode 100644 docs/en_US/images/preferences_misc_themes.png mode change 100755 => 100644 docs/en_US/images/preferences_misc_user_language.png create mode 100644 web/pgadmin/browser/static/img/drop_cascade.svg delete mode 100644 web/pgadmin/static/img/drop_cascade.svg delete mode 100644 web/pgadmin/static/img/load-node.gif create mode 100644 web/pgadmin/static/img/loader-small.svg delete mode 100644 web/pgadmin/static/scss/resources/_pgadmin.variables.scss create mode 100644 web/pgadmin/static/scss/resources/_theme.variables.scss.sample delete mode 100644 web/pgadmin/static/scss/resources/_utils.scss create mode 100644 web/pgadmin/static/scss/resources/dark/_theme.variables.scss create mode 100644 web/pgadmin/static/scss/resources/dark/dark_preview.png create mode 100644 web/pgadmin/static/scss/resources/standard_preview.png diff --git a/.gitignore b/.gitignore index 1cc2ea4e8..c1e62bc38 100644 --- a/.gitignore +++ b/.gitignore @@ -36,6 +36,7 @@ runtime/pgAdmin4_resource.rc runtime/release/ runtime/ui_BrowserWindow.h web/config_local.py +web/pgadmin.themes.json web/geckodriver.log web/regression/test_config.json node_modules/ diff --git a/README b/README index e1045703d..3c886c43a 100644 --- a/README +++ b/README @@ -219,6 +219,19 @@ can be used: C:\$PGADMIN4_SRC\web> yarn install C:\$PGADMIN4_SRC\web> yarn run bundle +Creating pgAdmin themes +----------------------- + +To create a pgAdmin theme, you need to create a directory under web/pgadmin/static/scss/resources. +Copy the sample file _theme.variables.scss.sample to the new directory and rename it to _theme.variables.scss. +Change the desired hexadecimal values of the colors and bundle pgAdmin. You can also add a preview image in the +theme directory with the name as _preview.png. It is recommended that the preview image should not be +larger in size as it may take time to load on slow networks. Run the yarn run bundle and you're good to go. +No other changes are required, pgAdmin bundle will read the directory and create other required entries to make them +available in preferences. +The name of the theme is derived from the directory name. Underscores (_) and hyphens (-) will be replaced with +spaces and the result will be camel cased. + Configuring the Runtime ----------------------- diff --git a/docs/en_US/images/preferences_misc_themes.png b/docs/en_US/images/preferences_misc_themes.png new file mode 100644 index 0000000000000000000000000000000000000000..460998d45e48278e582a77034d13583e9f83ff08 GIT binary patch literal 103490 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 z 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 z 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 F{|`SLA+Z1e literal 50432 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 z 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 how. + The Paths Node ************** diff --git a/docs/en_US/release_notes_4_15.rst b/docs/en_US/release_notes_4_15.rst index 7407abc92..5b0609961 100644 --- a/docs/en_US/release_notes_4_15.rst +++ b/docs/en_US/release_notes_4_15.rst @@ -10,8 +10,10 @@ New features ************ | `Issue #1974 `_ - Added encrypted password in reverse engineered SQL for roles. -| `Issue #4351 `_ - Add an option to request confirmation before cancelling/resetting changes on a Properties dialog. +| `Issue #3741 `_ - Added Dark(Beta) UI Theme option. | `Issue #4006 `_ - Support Enable Always and Enable Replica on triggers. +| `Issue #4351 `_ - Add an option to request confirmation before cancelling/resetting changes on a Properties dialog. +| `Issue #4348 `_ - Added support for custom theme creation and selection. Housekeeping ************ @@ -27,6 +29,7 @@ Bug fixes | `Issue #3913 `_ - Ensure the correct "running at" agent is shown when a pgAgent job is executing. | `Issue #3915 `_ - Fix an issue in the Query Tool where shortcut keys could be ignored following a query error. | `Issue #3999 `_ - Fix the toggle case shortcut key combination. +| `Issue #4171 `_ - Fix an issue where a black arrow-kind image is displaying at the background of browser tree images. | `Issue #4191 `_ - Ensure comments are shown in reverse engineered SQL for table partitions. | `Issue #4242 `_ - Handle NULL values appropriately when sorting backgrid tables. | `Issue #4341 `_ - Give appropriate error messages when the user tries to use an blank master password. diff --git a/web/config.py b/web/config.py index c67f240b2..f992cc487 100644 --- a/web/config.py +++ b/web/config.py @@ -14,6 +14,7 @@ import logging import os import sys +import json if sys.version_info[0] >= 3: import builtins @@ -486,6 +487,26 @@ try: except ImportError: pass +THEMES = { + "standard": { + "disp_name": "Standard", + "cssfile": "pgadmin", + "preview_img": "standard_preview.png" + } +} + +OTHER_THEMES = {} +try: + extra_themes = json.load(open('pgadmin.themes.json')) + OTHER_THEMES.update(extra_themes) +except Exception: + pass + +# Set OTHER_THEMES to None here to disable all other themes + +if OTHER_THEMES is not None: + THEMES.update(OTHER_THEMES) + # SUPPORT_SSH_TUNNEL can be override in local config file and if that # setting is False in local config then we should not check the Python version. if (SUPPORT_SSH_TUNNEL is True and diff --git a/web/package.json b/web/package.json index 52352348f..4e82aa7f7 100644 --- a/web/package.json +++ b/web/package.json @@ -9,14 +9,17 @@ "devDependencies": { "@babel/core": "~7.6.0", "@babel/preset-env": "~7.6.0", + "autoprefixer": "^9.6.4", "axios-mock-adapter": "^1.17.0", "babel-loader": "~8.0.5", "babel-plugin-transform-object-rest-spread": "^7.0.0-beta.3", + "copy-webpack-plugin": "^5.0.4", "core-js": "^3.2.1", "cross-env": "^5.2.0", "eclint": "^2.8.1", "eslint": "5.15.1", "file-loader": "^3.0.1", + "iconfont-webpack-plugin": "^4.2.1", "image-webpack-loader": "^4.6.0", "is-docker": "^1.1.0", "jasmine-core": "~3.3.0", @@ -34,6 +37,7 @@ "node-sass": "^4.11.0", "optimize-css-assets-webpack-plugin": "^5.0.1", "popper.js": "^1.14.7", + "postcss-loader": "^3.0.0", "raw-loader": "^1.0.0", "sass-loader": "^7.1.0", "sass-resources-loader": "^2.0.0", diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py index de365eadd..41ca051f1 100644 --- a/web/pgadmin/__init__.py +++ b/web/pgadmin/__init__.py @@ -713,10 +713,26 @@ def create_app(app_name=None): @app.context_processor def inject_blueprint(): - """Inject a reference to the current blueprint, if any.""" + """ + Inject a reference to the current blueprint, if any. + Also the get_theme_css func. + """ + + def get_theme_css(): + misc_preference = Preferences.module('misc') + theme = misc_preference.preference('theme').get() + theme_css = config.THEMES['standard']['cssfile'] + '.css' + + if theme not in config.THEMES: + pass + else: + theme_css = config.THEMES[theme]['cssfile'] + '.css' + return theme_css + return { 'current_app': current_app, - 'current_blueprint': current_blueprint + 'current_blueprint': current_blueprint, + 'get_theme_css': get_theme_css, } @app.errorhandler(Exception) diff --git a/web/pgadmin/browser/server_groups/servers/static/css/servers.css b/web/pgadmin/browser/server_groups/servers/static/css/servers.css index 65f9f53db..61536428a 100644 --- a/web/pgadmin/browser/server_groups/servers/static/css/servers.css +++ b/web/pgadmin/browser/server_groups/servers/static/css/servers.css @@ -1,12 +1,3 @@ -.icon-server-connecting { - background-image: url('~top/static/img/load-node.gif') !important; - background-repeat: no-repeat; - background-size: 20px !important; - align-content: center; - vertical-align: middle; - height: 1.3em; -} - .change_password { padding-left: 7px; -} \ No newline at end of file +} diff --git a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss index 0059fc259..6b83f891c 100644 --- a/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss +++ b/web/pgadmin/browser/server_groups/servers/static/scss/_servers.scss @@ -1,3 +1,12 @@ .bg-model-duplicate { @extend .bg-warning-light; } + +.icon-server-connecting { + background-image: $loader-icon-small !important; + background-repeat: no-repeat; + background-size: 18px !important; + align-content: center; + vertical-align: middle; + height: 1.3em; +} diff --git a/web/pgadmin/browser/static/css/browser.css b/web/pgadmin/browser/static/css/browser.css index b4de47c0f..57295ee76 100644 --- a/web/pgadmin/browser/static/css/browser.css +++ b/web/pgadmin/browser/static/css/browser.css @@ -47,3 +47,8 @@ .pgadmin_header_logo { cursor: default; } + +.icon-drop-cascade:before { + font-icon: url('../img/drop_cascade.svg'); + font-size: 1.6em !important; +} diff --git a/web/pgadmin/browser/static/img/drop_cascade.svg b/web/pgadmin/browser/static/img/drop_cascade.svg new file mode 100644 index 000000000..c3e521c55 --- /dev/null +++ b/web/pgadmin/browser/static/img/drop_cascade.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + diff --git a/web/pgadmin/browser/static/js/collection.js b/web/pgadmin/browser/static/js/collection.js index 51919fdce..96e793079 100644 --- a/web/pgadmin/browser/static/js/collection.js +++ b/web/pgadmin/browser/static/js/collection.js @@ -247,7 +247,7 @@ define([ type: 'delete', tooltip: gettext('Drop Cascade'), extraClasses: ['btn-secondary m-1', 'delete_multiple_cascade'], - icon: 'icon-delete_multiple_cascade', + icon: 'pg-font-icon icon-drop-cascade', disabled: (_.isFunction(that.canDropCascade)) ? !(that.canDropCascade.apply(self, [data, item])) : (!that.canDropCascade), register: function(btn) { btn.on('click',() => { diff --git a/web/pgadmin/browser/static/js/toolbar.js b/web/pgadmin/browser/static/js/toolbar.js index 1a951d272..f491bfdbc 100644 --- a/web/pgadmin/browser/static/js/toolbar.js +++ b/web/pgadmin/browser/static/js/toolbar.js @@ -22,7 +22,7 @@ let _defaultToolBarButtons = [ text: '', toggled: false, toggleClass: '', - parentClass: 'pg-toolbar-btn', + parentClass: 'pg-toolbar-btn btn-secondary', enabled: false, }, { @@ -31,7 +31,7 @@ let _defaultToolBarButtons = [ text: '', toggled: false, toggleClass: '', - parentClass: 'pg-toolbar-btn', + parentClass: 'pg-toolbar-btn btn-secondary', enabled: false, }, { @@ -40,7 +40,7 @@ let _defaultToolBarButtons = [ text: '', toggled: false, toggleClass: '', - parentClass: 'pg-toolbar-btn', + parentClass: 'pg-toolbar-btn btn-secondary', enabled: false, }, ]; diff --git a/web/pgadmin/browser/static/scss/_browser.scss b/web/pgadmin/browser/static/scss/_browser.scss index 53de6f93a..9ea1ecc5e 100644 --- a/web/pgadmin/browser/static/scss/_browser.scss +++ b/web/pgadmin/browser/static/scss/_browser.scss @@ -49,5 +49,6 @@ samp, .pg-toolbar-btn { margin-left: 0.25rem; - border: $input-btn-border-width solid $btn-secondary-border; + border-style: solid; + border-width: 1px; } diff --git a/web/pgadmin/dashboard/static/css/dashboard.css b/web/pgadmin/dashboard/static/css/dashboard.css index 93a0e1471..91ab75b62 100644 --- a/web/pgadmin/dashboard/static/css/dashboard.css +++ b/web/pgadmin/dashboard/static/css/dashboard.css @@ -24,23 +24,6 @@ line-height: 30px; } -.dashboard-tab-btn-group button { - padding: 5px; -} - -.dashboard-tab-btn-group > button { - margin: 2px 3px 2px 0px; - min-width: 40px; -} - -.dashboard-tab-btn-group > button:first-child { - margin-left: 3px; -} - -.dashboard-tab-btn-group > button:last-child { - margin-right: 3px; -} - .graph-container { margin-top: 10px; height: 150px; diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss index eeac9c4f5..4b204a3bb 100644 --- a/web/pgadmin/dashboard/static/scss/_dashboard.scss +++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss @@ -16,14 +16,6 @@ margin-bottom: $grid-gutter-width/2; } -.dashboard-tab-btn-group { - background-color: $color-gray-light; - border: 2px solid $color-gray; - left: 0px; - right: 0px; - padding: 2px; -} - .graph-error { background-color: $color-gray-lighter; padding-top: 20px @@ -44,5 +36,17 @@ .dashboard-link a { cursor: pointer; - color: $color-fg-theme; + color: $color-fg; +} + +.dashboard-graph-body { + & .flotr-labels { + color: $color-fg !important; + } + & .flotr-legend { + .flotr-legend-label { + color: $color-fg !important; + padding-left: 0.25rem; + } + } } diff --git a/web/pgadmin/misc/__init__.py b/web/pgadmin/misc/__init__.py index 0041e4a98..68d4381af 100644 --- a/web/pgadmin/misc/__init__.py +++ b/web/pgadmin/misc/__init__.py @@ -23,6 +23,8 @@ MODULE_NAME = 'misc' class MiscModule(PgAdminModule): + LABEL = gettext('Miscellaneous') + def get_own_javascripts(self): return [ { @@ -47,10 +49,6 @@ class MiscModule(PgAdminModule): """ Register preferences for this module. """ - self.misc_preference = Preferences( - 'miscellaneous', gettext('Miscellaneous') - ) - lang_options = [] for lang in config.LANGUAGES: lang_options.append( @@ -61,13 +59,39 @@ class MiscModule(PgAdminModule): ) # Register options for the User language settings - self.misc_preference.register( - 'miscellaneous', 'user_language', + self.preference.register( + 'user_language', 'user_language', gettext("User language"), 'options', 'en', category_label=gettext('User language'), options=lang_options ) + theme_options = [] + + for theme in config.THEMES: + theme_options.append({ + 'label': config.THEMES[theme]['disp_name'] + .replace('_', ' ') + .replace('-', ' ') + .title(), + 'value': theme, + 'preview_src': url_for( + 'static', filename='js/generated/img/' + + config.THEMES[theme]['preview_img'] + ) + }) + + self.preference.register( + 'themes', 'theme', + gettext("Theme"), 'options', 'standard', + category_label=gettext('Themes'), + options=theme_options, + help_str=gettext( + 'A refresh is required to apply the theme. Below is the ' + 'preview of the theme' + ) + ) + def get_exposed_url_endpoints(self): """ Returns: diff --git a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss index 7821853e3..63f716135 100644 --- a/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss +++ b/web/pgadmin/misc/bgprocess/static/scss/_bgprocess.scss @@ -5,7 +5,7 @@ $bgproc-container-pad: 2px; border: none; padding: 0px !important; text-align: left; - color: $color-fg-theme; + color: $color-fg; min-width: 500px; max-width: 500px; .card { diff --git a/web/pgadmin/misc/file_manager/static/css/file_manager.css b/web/pgadmin/misc/file_manager/static/css/file_manager.css index 669bca71d..1fc5bd374 100644 --- a/web/pgadmin/misc/file_manager/static/css/file_manager.css +++ b/web/pgadmin/misc/file_manager/static/css/file_manager.css @@ -56,12 +56,6 @@ /** Opera hack */ x:-o-prefocus, .file-input-container {top:16px;width:198px;} -@-moz-document url-prefix() { - .filepath { - padding:0.2em 0.3em; - } -} - /** Input file Replacement - end */ .file_listing #contents.grid { text-align: left; diff --git a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss index f85bced82..6bd173dc9 100644 --- a/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss +++ b/web/pgadmin/misc/file_manager/static/scss/_file_manager.scss @@ -105,7 +105,7 @@ .fm_folder_grid, .fm_file_grid, .fm_file_list { - color: $color-gray-darker; + color: $color-fg; } .fm_drive { @@ -130,20 +130,6 @@ wrap: no-wrap; } -.filepath { - background-color: $color-gray-lighter; - border: 1px solid $color-gray-lighter; - margin: 0; - padding: 0.1em 0.3em; - line-height: 1.7em; - -webkit-border-top-left-radius: 6px; - -webkit-border-bottom-left-radius: 6px; - -moz-border-radius-topleft: 6px; - -moz-border-radius-bottomleft: 6px; - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; -} - .file_listing #contents.grid li { display: block; float: left; @@ -158,24 +144,6 @@ border: 1px solid $color-bg; } -.file_listing #contents.list thead { - background: $color-gray-lighter; /* Old browsers */ - background: -moz-linear-gradient(top, rgba($color-primary, 0.71) 0%, rgba($color-primary, 0.98) 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba($color-primary, 0.71)), color-stop(100%,rgba($color-primary, 0.98))); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* Opera 11.10+ */ - background: -ms-linear-gradient(top, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); /* IE10+ */ - background: linear-gradient(to bottom, rgba($color-primary, 0.71) 0%,rgba($color-primary, 0.98) 100%); - border-bottom: 1px solid $color-gray-lighter; - display: inline-block; - width: 100%; -} - -.btn-group.filemanager-btn-group .btn:not(:first-child):not(:last-child), -.btn-group.filemanager-path-group .btn:not(:first-child):not(:last-child) { - border-left: 1px solid $color-gray-light; -} - .file_manager { position: absolute; top: 0px; @@ -191,7 +159,7 @@ .file_manager #uploader .filemanager-path-group { padding: 0; display: block; - border: 1px solid $color-gray; + border: 1px solid $border-color; height: 30px; border-radius: 5px; -webkit-border-radius: 5px; @@ -207,7 +175,7 @@ } .file_manager #uploader .filemanager-btn-group { - border: 1px solid $color-gray; + border: 1px solid $border-color; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; @@ -222,12 +190,12 @@ .fileinfo .prompt-info { text-align: center; - color: $color-fg-theme; + color: $color-fg; } .allowed_file_types { border-top: $panel-border; - background: $color-bg-theme; + background: $color-bg; z-index: 5; padding: 0.25rem; } @@ -261,7 +229,7 @@ float: left; width: 100%; height: 21px !important; - border: 1px solid $color-gray-dark; + border: 1px solid $border-color; border-radius: 0 !important; -moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; @@ -313,7 +281,7 @@ display: none; padding: 1rem; border-bottom: $panel-border; - background: $color-bg-theme; + background: $color-bg; position: absolute; top: 0; left: 0; @@ -322,7 +290,7 @@ } .upload_file .dz_cross_btn { - color: $color-fg-theme; + color: $color-fg; right: 0px; position: absolute; background: transparent; @@ -359,7 +327,7 @@ .file_selection_ctrl button.select_item { display: inline; - background: $color-bg-theme; + background: $color-bg; padding: 9px 0px 9px 0px; margin-left: 0px; margin-right: -7px; diff --git a/web/pgadmin/misc/static/explain/js/explain.js b/web/pgadmin/misc/static/explain/js/explain.js index 993ab5a00..e0aeb100c 100644 --- a/web/pgadmin/misc/static/explain/js/explain.js +++ b/web/pgadmin/misc/static/explain/js/explain.js @@ -1350,7 +1350,7 @@ define('pgadmin.misc.explain', [ // Main div to be drawn all images on var planDiv = $('
', { - class: 'pgadmin-explain-container p-3 w-100 h-100 overflow-auto', + class: 'pgadmin-explain-container w-100 h-100 overflow-auto', }).appendTo(graphicalContainer), // Div to draw tool-tip on toolTip = $('
', { diff --git a/web/pgadmin/misc/static/explain/scss/_explain.scss b/web/pgadmin/misc/static/explain/scss/_explain.scss index d812516cb..35cee5480 100644 --- a/web/pgadmin/misc/static/explain/scss/_explain.scss +++ b/web/pgadmin/misc/static/explain/scss/_explain.scss @@ -1,16 +1,12 @@ .pgadmin-explain-tooltip { position: absolute; opacity: 0; - color: $color-gray-lighter; - background-color: $color-gray-dark; + color: $popover-body-color; + background-color: $popover-bg; + border-color: $popover-border-color; + box-shadow: $popover-box-shadow; } -$explain-bg-color-2: #FFEE88; -$explain-bg-color-3: #EE8800; -$explain-bg-color-4: #880000; -$explain-fg-color-3: #FFFFFF; -$explain-fg-color-4: #FFFFFF; - .sql-editor-explain { .backform-tab { .tab-content { @@ -56,21 +52,21 @@ div.tab-pane[data-explain-tabpanel=table] { td.pga-ex-exclusive-2, td.pga-ex-inclusive-2, td.pga-ex-rowsx-2 { - background-color: $explain-bg-color-2; + background-color: $explain-sev-2-bg; } td.pga-ex-exclusive-3, td.pga-ex-inclusive-3, td.pga-ex-rowsx-3 { - background-color: $explain-bg-color-3; - color: $explain-fg-color-3; + background-color: $explain-sev-3-bg; + color: $explain-sev-3-color; } td.pga-ex-exclusive-4, td.pga-ex-inclusive-4, td.pga-ex-rowsx-4 { - background-color: $explain-bg-color-4; - color: $explain-fg-color-4; + background-color: $explain-sev-4-bg; + color: $explain-sev-4-color; } .pg-ex-subplans { @@ -141,3 +137,10 @@ div.tab-pane[data-explain-tabpanel=statistics] { } } } + +/* Setting it to hardcoded white as the SVG generated is having white bg + * Need to check what can be done. + */ +.pgadmin-explain-container { + background-color: #fff; +} diff --git a/web/pgadmin/preferences/static/js/preferences.js b/web/pgadmin/preferences/static/js/preferences.js index b047b13a1..3344ed388 100644 --- a/web/pgadmin/preferences/static/js/preferences.js +++ b/web/pgadmin/preferences/static/js/preferences.js @@ -242,10 +242,17 @@ define('pgadmin.preferences', [ // Convert the array to SelectControl understandable options. _.each(p.options, function(o) { if ('label' in o && 'value' in o) { - opts.push({ + let push_var = { 'label': o.label, 'value': o.value, - }); + }; + push_var['label'] = o.label; + push_var['value'] = o.value; + + if('preview_src' in o) { + push_var['preview_src'] = o.preview_src; + } + opts.push(push_var); if (o.value == p.value) has_value = true; } else { @@ -454,6 +461,7 @@ define('pgadmin.preferences', [ } if (e.button.text == gettext('Save')) { + let requires_refresh = false; preferences.updateAll(); /* Find the modules changed */ @@ -463,8 +471,27 @@ define('pgadmin.preferences', [ if(!modulesChanged[pref.module]) { modulesChanged[pref.module] = true; } + + if(pref.name == 'theme') { + requires_refresh = true; + } }); + if(requires_refresh) { + Alertify.confirm( + gettext('Refresh required'), + gettext('A page refresh is required to apply the theme. Do you wish to refresh the page now ?'), + function() { + /* If user clicks Yes */ + location.reload(); + return true; + }, + function() {/* If user clicks No */ return true;} + ).set('labels', { + ok: gettext('Refresh'), + cancel: gettext('Later'), + }); + } // Refresh preferences cache pgBrowser.cache_preferences(modulesChanged); } diff --git a/web/pgadmin/static/img/drop_cascade.svg b/web/pgadmin/static/img/drop_cascade.svg deleted file mode 100644 index 24eb7947c..000000000 --- a/web/pgadmin/static/img/drop_cascade.svg +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/web/pgadmin/static/img/load-node.gif b/web/pgadmin/static/img/load-node.gif deleted file mode 100644 index 500fa0860e2eb9883f86c30da579008475f596c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1728 zcmaLUYfMvV8o=?_0=-b6t(-%J4!uyhmeRt3-fxHApp^o00J&3YK}w+uij3`5*3<`k|yaM3eyLSM9n>TOn-@iW?4B|NMcDrM-*pVYg?%ut7^ytz2{QTnL z;_~uxygw9DW5*e$LCr_R{aNt08b~cB@ zdHneC%a<>=ZQB-)$6vjA1tC0s{P>$UZ{EIrd*Q-`D_5?(e*OB^ty{CRv(KMDzj5Qn z!-o&=-Me?~+O_57<;BIt`}gnPzJ2?}ix+q9+}XZ;`>9i>=I7_@>gt-BnmRf9ks{mo8nJn3%vY?8%cSDwS&Q-o0&YZECezCX-E1PuJJiXJ%&Z-n}~<4p&uGUA}zz z>eZ`{9z8m9=FHBWJNNC|clhw(*49>rVf=o7ZEdYmsXTV1KU!N-26ZMqmCDb}S81SLYt@k~_G&4uLy!X?iJv(Mtad9*P7}>x4m(UqN9KUp z4cQs!oF2D9jv#9esWw9{TRdlTx*$)uMn;=eSsqf9EiaI0F`j{I`AGMv!swTK4QQ4VL3vl=%$GtQku4D@Q9@6zA&>b(I!>@?u1M#JLDn#_tU z%4JE-a$p!MHD8!RdJGmb?UQFZpd%zF~G*z^!5CC zPd5jmQ_FRQQ0vj3uU@wi>ag#bu1J*B|C=fh1iW;ziXcMeP4zx{>%>T>x@~NYg~64B z{IqNP|MkaiK7u^*q;G0;_NS)?#&_+lKZltOmd1%_2#04qwm7uz`^D9Pv))0V)WK8Ni?>W@PR zn$_~hZUe=w-!`^2LlD{S{4Sg=U}wl{darJfuhjOl-*B|v + + + + + + + + + + + + + diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js index a03ac7cac..4d9aa9155 100644 --- a/web/pgadmin/static/js/backform.pgadmin.js +++ b/web/pgadmin/static/js/backform.pgadmin.js @@ -2065,6 +2065,11 @@ define([ $(this.$sel).append($element); $(this.$sel).trigger('change'); } + + let new_value = _.findWhere(this.field.get('options'), {value: evt.params.data.id}); + if(new_value.preview_src) { + this.$el.find('.preview-img img').attr('src', new_value.preview_src); + } }, formatter: Select2Formatter, @@ -2090,6 +2095,14 @@ define([ ' <% if (helpMessage && helpMessage.length) { %>', ' <%=helpMessage%>', ' <% } %>', + ' <% for (var i=0; i < options.length; i++) {%>', + ' <% var option = options[i]; %>', + ' <% if (option.preview_src && option.value === rawValue) { %>', + '
', + ' '+gettext('Preview not available...')+'', + '
', + ' <%}%>', + ' <%}%>', '', ].join('\n')), render: function() { diff --git a/web/pgadmin/static/js/sqleditor_utils.js b/web/pgadmin/static/js/sqleditor_utils.js index fde7283b0..d305f4779 100644 --- a/web/pgadmin/static/js/sqleditor_utils.js +++ b/web/pgadmin/static/js/sqleditor_utils.js @@ -135,7 +135,7 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'], if(sqlEditorUtils.previousStatus != status && !$status_el.hasClass('fa-query_tool_connected')) { $status_el.removeClass() - .addClass('fa-custom fa-query-tool-connected'); + .addClass('pg-font-icon icon-query-tool-connected'); is_status_changed = true; } } @@ -153,10 +153,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'], msg = gettext('An unexpected error occurred - ' + 'ensure you are logged into the application.'); $el.attr('data-content', msg); - if(!$status_el.hasClass('fa-query-tool-disconnected')) { + if(!$status_el.hasClass('icon-query-tool-disconnected')) { $el.popover('hide'); $status_el.removeClass() - .addClass('fa-custom fa-query-tool-disconnected'); + .addClass('pg-icon-font icon-query-tool-disconnected'); } } }) @@ -173,10 +173,10 @@ define(['jquery', 'underscore', 'sources/gettext', 'sources/url_for'], // Set bootstrap popover $el.attr('data-content', msg); // Add error class - if(!$status_el.hasClass('fa-query-tool-disconnected')) { + if(!$status_el.hasClass('icon-query-tool-disconnected')) { $el.popover('hide'); $status_el.removeClass() - .addClass('fa-custom fa-query-tool-disconnected'); + .addClass('pg-font-icon icon-query-tool-disconnected'); } }); }, diff --git a/web/pgadmin/static/scss/_aci_tree.overrides.scss b/web/pgadmin/static/scss/_aci_tree.overrides.scss index 8b7b6683b..806798065 100644 --- a/web/pgadmin/static/scss/_aci_tree.overrides.scss +++ b/web/pgadmin/static/scss/_aci_tree.overrides.scss @@ -1,3 +1,19 @@ +.tree-icon-right:before { + font-family: $font-family-icon; + content: "\f054" !important; + right: 15px; + top: 3px; + font-size: 0.6rem; + line-height: 2; + border-style: none; +} + +.aciTree { + & .aciTreeButton, & .aciTreePush, & .aciTreeItem, & .aciTreeIcon, & .aciTreeText, & .aciTreeColumn { + color: $color-fg; + } +} + .aciTree .aciTreeLi { display: grid !important; cursor: pointer; @@ -6,13 +22,9 @@ font-family: $font-family-primary; font-size: 0.815rem; } -.aciTree.aciTreeFocus .aciTreeFocus > .aciTreeLine { - background-color: $color-primary-light !important; - border-right: $active-border !important; -} .aciTree .aciTreeSelected > .aciTreeLine { - background-color: $color-primary-light !important; + background-color: $tree-bg-selected !important; border-color: $color-primary-light; border-right: $active-border !important; border-left: none !important; @@ -21,13 +33,15 @@ -webkit-border-radius: none !important; -moz-border-radius: none !important; border-radius: none !important; -} -.aciTree .aciTreeSelected > .aciTreeLine .aciTreeItem { - background-color: $color-primary-light; - border: 1px solid transparent; - -webkit-border-radius: none !important; - -moz-border-radius: none !important; - border-radius: none !important; + + & .aciTreeItem { + background-color: $tree-bg-selected; + border: 1px solid transparent; + -webkit-border-radius: none !important; + -moz-border-radius: none !important; + border-radius: none !important; + color: $tree-fg-selected; + } } .aciTree .aciTreeItem { white-space: nowrap !important; @@ -36,31 +50,45 @@ background: none; } .aciTree .aciTreeLine.aciTreeHover { - background-color: $color-gray-light; + background-color: $tree-bg-hover; -webkit-border-radius: none !important; -moz-border-radius: none !important; border-radius: none !important; + & .aciTreeItem { + background-color: inherit; + border: 1px solid transparent; + -webkit-border-radius: none !important; + -moz-border-radius: none !important; + border-radius: none !important; + color: $tree-fg-hover; + } } -.aciTree .aciTreeLine.aciTreeHover .aciTreeItem { - background-color: $color-gray-light; - border: 1px solid transparent; - -webkit-border-radius: none !important; - -moz-border-radius: none !important; - border-radius: none !important; -} -.aciTree.aciTreeFocus .aciTreeSelected >.aciTreeLine .aciTreeItem { - background-color: $color-primary-light; -} -.aciTree.aciTreeFocus .aciTreeFocus >.aciTreeLine .aciTreeItem, -.aciTree.aciTreeFocus .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem { - border: 1px solid transparent; + +.aciTree.aciTreeFocus { + + & .aciTreeFocus > .aciTreeLine { + background-color: $tree-bg-selected !important; + border-right: $active-border !important; + } + + & .aciTreeSelected >.aciTreeLine .aciTreeItem { + background-color: $tree-bg-selected; + } + + & .aciTreeFocus >.aciTreeLine .aciTreeItem, + & .aciTreeSelected.aciTreeFocus >.aciTreeLine .aciTreeItem { + border: 1px solid transparent; + color: $tree-fg-selected; + } } + .aciTree .aciTreeButton { background: none; } .aciTree .aciTreePush { - width: 30px; - background: url(../img/collapse_expand.svg) 12px 7px no-repeat; + background: none; + text-align: center; + font-size: 0.85em; } .aciTree .aciTreeEntry, .aciTree .aciTreeBranch, @@ -68,11 +96,41 @@ overflow:hidden; background: none !important; } -.aciTree .aciTreeInode >.aciTreeLine .aciTreePush, -.aciTree .aciTreeInode >.aciTreeLine .aciTreePush.aciTreeHover { - background-position: 6px center !important; + + +.aciTree .aciTreeInode>.aciTreeLine .aciTreePush { + &:before, + &.aciTreeHover:before { + background-position: 6px center !important; + font-family: $font-family-icon; + content: "\f054" !important; + border-style: none; + margin-left: 5px; + } } -.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush, -.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush.aciTreeHover { - background-position: -14px center !important; + +.aciTree .aciTreeLoad>.aciTreeLine .aciTreePush { + &:before, + &.aciTreeHover:before { + content: " " !important; + } +} + +.aciTree .aciTreeOpen >.aciTreeLine .aciTreePush { + &:before, + &.aciTreeHover:before { + background-position: -14px center !important; + font-family: $font-family-icon; + content: "\f078" !important; + border-style: none; + margin-left: 5px; + } +} + +.aciTree .aciTreePush>span { + width: 15px; + height: 15px; + left: 2px; + background: $loader-icon-small 0 0 no-repeat; + background-color: inherit!important; } diff --git a/web/pgadmin/static/scss/_alert.scss b/web/pgadmin/static/scss/_alert.scss index f5082c37b..3f2e561e3 100644 --- a/web/pgadmin/static/scss/_alert.scss +++ b/web/pgadmin/static/scss/_alert.scss @@ -49,7 +49,7 @@ .alert-info { border-color: $color-primary; background-color: $color-primary-light; - color : $color-fg-theme; + color : $color-fg; background-image: none; } diff --git a/web/pgadmin/static/scss/_alertify.overrides.scss b/web/pgadmin/static/scss/_alertify.overrides.scss index 0c579dd6a..0063d565f 100644 --- a/web/pgadmin/static/scss/_alertify.overrides.scss +++ b/web/pgadmin/static/scss/_alertify.overrides.scss @@ -23,6 +23,11 @@ } } + .ajs-body { + background-color: $color-bg !important; + color: $color-fg !important; + } + &.ajs-resizable, &.ajs-maximized { & .ajs-body { @@ -64,6 +69,8 @@ padding: 0; min-height: $footer-min-height; border-top: $panel-border; + background-color: $color-bg !important; + color: $color-fg !important; & .ajs-buttons { border: none; border-radius: 0rem; @@ -115,6 +122,8 @@ border: $panel-border; border-radius: $panel-border-radius; box-shadow: $dialog-box-shadow; + background-color: $color-bg !important; + color: $color-fg !important; } .ajs-content { padding-left: 0 !important; diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss index 47915bb8e..c929ddd45 100644 --- a/web/pgadmin/static/scss/_backgrid.overrides.scss +++ b/web/pgadmin/static/scss/_backgrid.overrides.scss @@ -80,8 +80,8 @@ .backgrid thead td, .backgrid thead th{ - background: $color-bg-theme; - background-color: $color-bg-theme !important; + background: $color-bg; + background-color: $color-bg !important; text-align: left; } @@ -147,7 +147,7 @@ span.form-control:disabled { .subnode { border: $panel-border; - background: $color-bg-theme; + background: $color-bg; } .subnode-noouter-border { @@ -203,8 +203,8 @@ span.form-control:disabled { } .subnode-header { - background-color: $color-bg-theme; - color: $color-fg-theme; + background-color: $color-bg; + color: $color-fg; border-bottom: $panel-border; } @@ -240,7 +240,7 @@ span.form-control:disabled { } fieldset.inline-fieldset { - background: $color-bg-theme; + background: $color-bg; } } .subnode-footer { @@ -289,7 +289,7 @@ table.backgrid { } & td.editor { - background-color: $color-bg-theme !important; + background-color: $color-bg !important; } & td.edit-cell.editor:focus { diff --git a/web/pgadmin/static/scss/_bootstrap.overrides.scss b/web/pgadmin/static/scss/_bootstrap.overrides.scss index 3b2df9fd6..0b61787e2 100644 --- a/web/pgadmin/static/scss/_bootstrap.overrides.scss +++ b/web/pgadmin/static/scss/_bootstrap.overrides.scss @@ -226,12 +226,6 @@ legend { } } -/* Override default bootstrap popover fonts & size */ -.popover-content { - font-family: $font-family-primary; - font-size: 13px; -} - .switch-cell { height: 0px; width: 0px; @@ -252,10 +246,10 @@ td.switch-cell > div.toggle { & .nav-link { border: none !important; padding: $tabs-padding; - color: $color-fg-theme; + color: $color-fg; &.active { border-bottom: $active-border !important; - color: $color-primary; + color: $active-color; } } } @@ -313,7 +307,7 @@ td.switch-cell > div.toggle { .btn-group label.btn.btn-primary.active { background-color: $color-primary-light; - color: $color-primary; + color: $color-primary-light-fg; } .btn-group.pgadmin-controls-radio-none.disabled { diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss index 27e028b75..2857455be 100644 --- a/web/pgadmin/static/scss/_codemirror.overrides.scss +++ b/web/pgadmin/static/scss/_codemirror.overrides.scss @@ -1,6 +1,3 @@ -.cm-s-default .CodeMirror { - background: $color-editor-bg; -} /* To override inbuilt Green color for matchingbracket */ .cm-s-default .CodeMirror-matchingbracket { color: $sql-bracket-match-fg !important; @@ -10,6 +7,8 @@ .CodeMirror { font-size: 1em; font-family: monospace, monospace; + background-color: $color-editor-bg; + color: $color-editor-fg; } /* Ensure the codemirror editor displays full height gutters when resized */ @@ -39,14 +38,34 @@ } /* make syntax-highlighting bold */ -.cm-s-default .cm-keyword { - font-weight: 600; - color: $color-editor-keyword; -} +.cm-s-default { + & .cm-quote {color: #090;} + & .cm-keyword {color: $color-editor-keyword; font-weight: 600;} + & .cm-atom {color: $color-editor-fg;} + & .cm-number {color: $color-editor-number; font-weight: 600;} + & .cm-def {color: $color-editor-fg;} + & .cm-punctuation, + & .cm-property, + & .cm-operator { color: $color-editor-operator; } + & .cm-variable {color: $color-editor-variable; } + & .cm-variable-2, + & .cm-variable-3, + & .cm-type {color: $color-editor-variable-2;} + & .cm-comment {color: $color-editor-comment;} + & .cm-string {color: $color-editor-string;} + & .cm-string-2 {color: $color-editor-string;} + & .cm-meta {color: $color-editor-fg;} + & .cm-qualifier {color: $color-editor-fg;} + & .cm-builtin {color: $color-editor-builtin;} + & .cm-bracket {color: $color-editor-bracket;} + & .cm-tag {color: $color-editor-fg;} + & .cm-attribute {color: $color-editor-fg;} + & .cm-hr {color: $color-editor-fg;} + & .cm-link {color: $color-editor-fg;} -.cm-s-default .cm-number { - font-weight: 600; - color: $color-editor-number; + & .CodeMirror-cursor { + border-color: $color-editor-fg; + } } /* Codemirror buttons */ @@ -84,7 +103,7 @@ } .CodeMirror-linenumber { - color: $color-fg-theme; + color: $color-fg; } .debugger-container .breakpoints { diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss index 7a6768b8d..53aeddf8b 100644 --- a/web/pgadmin/static/scss/_pgadmin.style.scss +++ b/web/pgadmin/static/scss/_pgadmin.style.scss @@ -90,6 +90,7 @@ .panel-link-heading:hover { text-decoration: none; + color: inherit; } .nav .open > a, .nav .open > a:hover, .nav .open > a:focus { @@ -97,7 +98,7 @@ } #navbar-user { - font-size: $navbar-user-font-size; + font-size: 0.9em; } @@ -143,19 +144,12 @@ .pg-navbar { font-size: $navbar-font-size; - background-color: $navbar-color-bg; + background-color: $navbar-bg; padding-left: 0rem; padding-right: 0.5rem; & .nav-item .nav-link{ line-height: 1; } - - .pg-navbar-brand-arrow { - border: $navbar-height/2 solid $navbar-brand-arrow-bg; - border-right-color: transparent; - border-bottom-color: transparent; - border-top-color: transparent; - } } @@ -192,7 +186,7 @@ &.pg-prop-btn-group-below { text-align: right; padding: $footer-padding; - background: $color-bg-theme; + background: $color-bg; border-top: $panel-border; } } @@ -407,9 +401,9 @@ padding: 0rem; border: $panel-border; border-radius: $card-border-radius; - background-color: $color-bg-theme; + background-color: $color-bg; fieldset.inline-fieldset { - background: $color-bg-theme; + background: $color-bg; } } @@ -548,7 +542,8 @@ fieldset.inline-fieldset > div { .dashboard-tab-container, .pg-panel-statistics-container, -.pg-panel-depends-container, +.pg-panel-dependencies-container, +.pg-panel-dependents-container, .pg-prop-coll-container, { width: 100%; overflow: auto; @@ -561,7 +556,7 @@ fieldset.inline-fieldset > div { left: 0px; right: 0px; top : 0px; - background-color: $color-bg-theme; + background-color: $color-bg; } /* Overrides/fixes for pgAdmin specific styling */ @@ -733,7 +728,7 @@ table tr th { & button { background: none; border: none; - color: $color-fg-theme; + color: $color-fg; padding: 0; } & button:focus { @@ -843,11 +838,11 @@ body { } .pg-el-container { - background-color: $color-gray-lighter; + background-color: $negative-bg; } .nav-tabs { - background-color: $color-bg-theme; + background-color: $color-bg; } .editor-toolbar { @@ -967,18 +962,6 @@ table.table-empty-rows{ background-size: 28px 28px; } } -.icon-delete_multiple_cascade { - display: inline-block; - align-content: center; - vertical-align: middle; - height: 17px; - width: 22px; - background-image: url(/static/img/drop_cascade.svg) !important; - background-size: 25px !important; - background-repeat: no-repeat; - background-position-x: center; - background-position-y: center; -} .pgadmin-controls-radio-none { & input[type="radio"] { @@ -1031,3 +1014,23 @@ table.table-empty-rows{ border-radius: $input-border-radius; padding: $input-btn-padding-y $input-btn-padding-x; } + +::placeholder { + color: $input-placeholder-color; +} + +.pg-font-icon { + &:before { + font-style: normal; + font-weight: normal; + font-stretch: normal; + font-size: 100%; + line-height: 1; + vertical-align: middle; + } +} + +textarea { + color: $input-color; + background-color: $input-bg; +} diff --git a/web/pgadmin/static/scss/_select2.overrides.scss b/web/pgadmin/static/scss/_select2.overrides.scss index f0e4e7e68..d94d064af 100644 --- a/web/pgadmin/static/scss/_select2.overrides.scss +++ b/web/pgadmin/static/scss/_select2.overrides.scss @@ -1,6 +1,22 @@ -.select2-container--default .select2-results__option--highlighted[aria-selected] { - background-color: $color-primary-light; - color: $color-gray-dark; +.select2-dropdown { + background-color: $input-bg; + color: $input-color; +} + +.select2-container--default .select2-results__option--highlighted[aria-selected], +.select2-container--default .select2-results__option[aria-selected=true] { + background-color: $dropdown-link-hover-bg; + color: $dropdown-link-hover-color; +} + +.select2-container--default .select2-selection--multiple { + background-color: $input-bg; + color: $input-color; +} + +.select2-container--default .select2-selection--multiple .select2-selection__choice { + background-color: $dropdown-link-hover-bg; + color: $dropdown-link-hover-color; } .select2-container--default .select2-search--inline .select2-search__field { @@ -11,6 +27,11 @@ width: 100% !important; } +.select2-container--default .select2-search__field { + background-color: $input-bg; + color: $input-color; +} + .renderable > .select2-container { width: 100% !important; } @@ -18,10 +39,12 @@ .select2-container .select2-selection--single { height: auto; min-height: 28px; + background-color: $input-bg; & .select2-selection__rendered{ line-height: inherit; padding: $input-padding-y $input-padding-x; padding-right: 1.5rem; + color: $input-color; } } diff --git a/web/pgadmin/static/scss/_webcabin.pgadmin.scss b/web/pgadmin/static/scss/_webcabin.pgadmin.scss index 5c0ff69a8..91dfb57d2 100644 --- a/web/pgadmin/static/scss/_webcabin.pgadmin.scss +++ b/web/pgadmin/static/scss/_webcabin.pgadmin.scss @@ -1,30 +1,30 @@ .wcDocker { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcModalBlocker { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcPanelBackground { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcPanelBackground .wcCenter { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcFrameFlasher { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcFrameShadower { - background-color: $color-bg-theme; + background-color: $color-bg; } .wcFrameTitleBar { height: $title-height; - background-color: $color-bg-theme; + background-color: $color-bg; border-bottom: $panel-border; } @@ -43,7 +43,7 @@ .wcFrameButton.disabled { pointer-events: none; - color: $color-gray; + opacity: $btn-disabled-opacity; } .wcFrameButton .fa { @@ -52,7 +52,7 @@ .wcFrameButtonBar { height: $title-height; - background-color: $color-bg-theme; + background-color: $color-bg; border-bottom: $panel-border; padding: 0rem 0.25rem; @@ -80,13 +80,13 @@ } .wcPanelTab, .wcFrameTitle{ - color: $color-fg-theme; + color: $color-fg; padding: $tabs-padding; margin: 0px; } .wcFloating { - box-shadow: $box-shadow; + box-shadow: $dialog-box-shadow; z-index: 1050 !important; &.wcFrame, & .wcPanelBackground { @@ -152,7 +152,7 @@ .wcFloating .wcPanelTabActive { border-bottom: none; - color: $color-fg-theme; + color: $color-fg; font-weight: bold; } @@ -162,7 +162,7 @@ .wcFloating .wcFrameTitleBar { height: $title-height; - background-color: $color-bg-theme; + background-color: $color-bg; border-bottom: $panel-border; } @@ -182,7 +182,7 @@ .wcPanelTabActive { border-bottom: $active-border; - color: $color-primary; + color: $active-color; } .wcFrameEdge { diff --git a/web/pgadmin/static/scss/pgadmin.scss b/web/pgadmin/static/scss/pgadmin.scss index d2d5e9022..890f5082b 100644 --- a/web/pgadmin/static/scss/pgadmin.scss +++ b/web/pgadmin/static/scss/pgadmin.scss @@ -1,6 +1,3 @@ -@import './resources/pgadmin.resources.scss'; - - $theme-colors: ( "primary": $color-primary, "danger": $color-danger, diff --git a/web/pgadmin/static/scss/resources/_default.style.scss b/web/pgadmin/static/scss/resources/_default.style.scss index f90fe47ad..4a0bd9192 100644 --- a/web/pgadmin/static/scss/resources/_default.style.scss +++ b/web/pgadmin/static/scss/resources/_default.style.scss @@ -60,10 +60,6 @@ &-dark { background-color: $color-gray-dark; } - - &-darker { - background-color: $color-gray-darker; - } } /* Borders */ @@ -113,10 +109,6 @@ &-dark { border: 2px solid $color-gray-dark; } - - &-darker { - border: 2px solid $color-gray-darker; - } } /* Typography */ @@ -167,3 +159,13 @@ .text-semibold { font-family: $font-family-semibold; } + +.not-selectable { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + ms-user-select: none; + user-select: none; + cursor: default; +} diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss index 55507a33d..f09b11fb1 100644 --- a/web/pgadmin/static/scss/resources/_default.variables.scss +++ b/web/pgadmin/static/scss/resources/_default.variables.scss @@ -1,5 +1,5 @@ /** Dividing a pixel var with 1px or rem var with 1rem removes the unit px/rem **/ -$enable-flex: true !default; +$enable-flex: true ; $white: #fff; $black: #000; @@ -7,72 +7,65 @@ $black: #000; $color-bg: $white !default; $color-fg: #222222 !default; -$color-bg-theme: $white !default; -$color-fg-theme: #222222 !default; - $color-primary: #326690 !default; $color-primary-fg: $white !default; $color-primary-light: #d6effc !default; +$color-primary-light-fg: $color-primary !default; $color-primary-dark: #295c85 !default; $color-secondary: $white !default; $color-danger: #e53935 !default; $color-danger-fg: $white !default; -$color-danger-light: #F39999; -$color-danger-lighter: #FAECEC; +$color-danger-light: #F39999 !default; +$color-danger-lighter: #F39999 !default; $color-success: #43a047 !default; $color-success-fg: $black !default; -$color-success-light: #DDF1DE; +$color-success-light: #DDF1DE !default; $color-warning: #eea236 !default; $color-warning-fg: $black !default; -$color-warning-light: #fce5c5; +$color-warning-light: #fce5c5 !default;; -$color-gray-darker: #5b6d7c; -$color-gray-dark: #848ea0; -$color-gray: #bac1cd; -$color-gray-light: #ebeef3; -$color-gray-lighter: #f3f5f9; +$color-gray-dark: #848ea0 !default; +$color-gray: #bac1cd !default; +$color-gray-light: #ebeef3 !default; +$color-gray-lighter: #f3f5f9 !default; $color-brand: $white !default; -$color-editor-bg: $color-bg !default; -$color-editor-keyword: #908 !default; -$color-editor-number: #964 !default; -$color-editor-foldmarker: #0000FF !default; -$color-editor-activeline: #50B0F0 !default; /* Typography */ -$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default; -$font-family-semibold: "Roboto Medium" !default; -$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default; -$font-family-icon: "FontAwesome" !default; +$font-family-primary: "Roboto", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; +$font-family-semibold: "Roboto Medium"; +$font-family-editor: "Source Code Pro", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +$font-family-icon: "FontAwesome"; $border-width: 1px; -$border-color: #dde0e6; +$border-color: #dde0e6 !default; $border-color-dark: $color-gray; -$box-shadow: 0 0.5rem 3rem $color-gray-dark; -/** Bootstrap Variable Changes **/ -$font-family-monospace: $font-family-editor !default; -$font-family-base: $font-family-primary !default; -$gray-600: $color-gray-dark; -$gray-900: $color-fg-theme; -$body-color: $color-fg-theme; +$shadow-base-color: $color-gray-dark !default; + +$font-family-monospace: $font-family-editor; +$font-family-base: $font-family-primary; +$body-color: $color-fg; $font-size-base: 0.875rem; -$line-height-base: 1.5; // no change +$line-height-base: 1.5; $text-height-calc: $line-height-base*$font-size-base/1rem; $grid-gutter-width: 15px; -$border-radius: 0.25rem; //no change +$border-radius: 0.25rem; -$text-color: $color-fg-theme; -$text-muted: $color-gray-dark; +$text-muted: $color-gray-dark !default; -$navbar-dark-color: #fff; -$navbar-dark-hover-color: #fff; -$navbar-dark-active-color: #fff; +$navbar-bg: $color-primary; +$navbar-font-size: 0.925rem; +$navbar-height: 32px; +$navbar-dropdown-top: 100%; +$navbar-dark-color: $color-primary-fg; +$navbar-dark-hover-color: $color-primary-fg; +$navbar-dark-active-color: $color-primary-fg; $navbar-dark-disabled-color: $color-gray; $navbar-toggler-padding-y: 0.25rem; //no-change @@ -80,16 +73,25 @@ $navbar-toggler-padding-y: 0.25rem; //no-change $form-group-margin-bottom: 0.5rem; $btn-active-box-shadow: none; -$dropdown-link-hover-color: $white; +$dropdown-bg: $color-bg; +$dropdown-color: $color-fg; +$dropdown-link-color: $color-fg; +$dropdown-link-hover-color: $color-primary-fg; $dropdown-link-hover-bg: $color-primary; $dropdown-border-color: $border-color; -$dropdown-box-shadow: 0 0.125rem 0.5rem rgba($color-gray-dark, .175); +$dropdown-box-shadow: 0 0.125rem 0.5rem rgba($shadow-base-color, .275); $dropdown-divider-bg: $dropdown-border-color; $dropdown-padding-y: 0.25rem; $dropdown-item-padding-x: 1rem; $dropdown-spacer: .125rem; //no-change +$dropdown-link-disabled-color: $text-muted; $nav-divider-margin-y: .25rem; +$popover-bg: $color-gray-dark !default; +$popover-body-color: $white !default; +$popover-border-color: $dropdown-border-color; +$popover-box-shadow: $dropdown-box-shadow; + $input-btn-focus-width: 0.1rem; $btn-disabled-opacity: 0.5; $btn-transition: color .05s ease-in-out, background-color .05s ease-in-out, border-color .05s ease-in-out, box-shadow .05s ease-in-out; @@ -98,9 +100,8 @@ $card-spacer-y: 0rem; $card-spacer-x: 0rem; $card-border-radius: $border-radius; $card-border-color: $border-color; -$card-cap-bg: $color-bg-theme; -$card-bg: $color-bg-theme; - +$card-cap-bg: $color-bg; +$card-bg: $color-bg; $navbar-padding-y: 0rem; $navbar-padding-x: 0rem; @@ -122,36 +123,50 @@ $table-cell-padding: 0.25rem; $table-header-cell-padding: 0.75rem; $table-hover-bg: none; //we will use our own classes $table-active-bg: $color-primary-light; -$table-border-width: $border-width !default; -$table-border-color: $border-color !default; -$table-head-bg: $color-primary !default; -$table-head-color: $color-primary-fg !default; +$table-border-width: $border-width; +$table-border-color: $border-color; +$table-head-bg: $color-primary; +$table-head-color: $color-primary-fg; -$input-bg: $white; //no change -$input-color: $color-fg-theme; +$input-bg: $white !default; +$input-color: $color-fg !default; +$input-placeholder-color: $text-muted; $input-border-color: $border-color; -$input-border-radius: $border-radius; //no change -$input-disabled-bg: $color-gray-lighter; -$input-btn-border-width: $border-width; //no change -$input-border-width: $input-btn-border-width; //no change +$input-border-radius: $border-radius; +$input-disabled-bg: $color-gray-lighter !default; +$input-btn-border-width: $border-width; +$input-border-width: $input-btn-border-width; $input-btn-padding-y: .25rem; -$input-btn-padding-x: .75rem; //no change +$input-btn-padding-x: .75rem; -$component-active-bg: $color-primary; //no change -$input-btn-focus-width: .2rem !default; //no change -$input-btn-focus-color: rgba($component-active-bg, .25) !default; //no change -$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default; //no change -$input-focus-bg: $input-bg !default; //no change -$input-focus-border-color: lighten($component-active-bg, 25%) !default; //no change -$input-focus-color: $input-color !default; //no change -$input-focus-width: $input-btn-focus-width !default; //no change -$input-focus-box-shadow: $input-btn-focus-box-shadow !default; //no change +$component-active-bg: $color-primary; +$input-btn-focus-width: .2rem; +$input-btn-focus-color: rgba($component-active-bg, .25); +$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color; +$input-focus-bg: $input-bg; +$input-focus-border-color: lighten($component-active-bg, 25%); +$input-focus-color: $input-color; +$input-focus-width: $input-btn-focus-width; +$input-focus-box-shadow: $input-btn-focus-box-shadow; -$btn-border-radius: $border-radius; //no change +$btn-border-radius: $border-radius; -/***************/ +$color-editor-fg: $input-color !default; +$color-editor-bg: $input-bg; +$color-editor-keyword: #908 !default; +$color-editor-number: #964 !default; +$color-editor-string: #a11 !default; +$color-editor-variable: $color-fg !default; +$color-editor-variable-2: #05a !default; +$color-editor-builtin: #30a !default; +$color-editor-comment: #a50 !default; +$color-editor-bracket: #997 !default; +$color-editor-operator: $color-fg !default; +$color-editor-foldmarker: #0000FF !default; +$color-editor-activeline: #50B0F0 !default; -$active-border: 3px solid $color-primary; +$active-color: $color-primary !default; +$active-border: 3px solid $active-color; $panel-border-width: $border-width; $panel-border-color: $border-color; $panel-border-radius: $border-radius; @@ -166,42 +181,51 @@ $footer-height-calc: $footer-min-height+$footer-padding*2; // ($splitter-hover-width - $panel-border-width) should be even number to split evenly. $splitter-hover-width: 7px; -$navbar-brand-bg: #222222; //place image url if image -$navbar-brand-arrow-bg: #222222; -$navbar-color-bg: $color-primary; -$navbar-font-size: 0.925rem; -$navbar-user-font-size: 0.875rem; - -$navbar-height: 32px; -$navbar-dropdown-top: 100%; $dropdown-submenu-top: -$dropdown-spacer; -$table-bg: $color-bg-theme; +$table-bg: $color-bg; $table-bg-selected: $color-primary-light; $table-hover-border-color: $color-primary; $table-hover-border: $panel-border-width solid $color-primary !important; $table-hover-bg-color: $color-primary-light; $datagrid-bg: $color-gray-light; +$tree-fg-hover: $color-fg; +$tree-bg-hover: $color-gray-lighter; +$tree-fg-selected: $color-fg; +$tree-bg-selected: $color-primary-light; + +$sql-grid-data-cell-fg: $input-color; +$sql-grid-data-cell-bg: $input-bg; +$sql-grid-title-cell-fg: $input-color; +$sql-grid-title-cell-bg: $input-bg; + $sql-title-padding: 3px; -$sql-title-bg: $color-gray-darker; +$sql-title-bg: #5b6d7c; $sql-title-fg: $white; // Toolbar + editor title heights + title bottom border $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width; $sql-gutters-bg: $color-gray-light; $sql-history-detail-bg: $color-gray-lighter; $sql-history-success-bg: $color-primary-light; -$sql-history-success-fg: $color-primary; +$sql-history-success-fg: $active-color; $sql-history-error-bg: $color-danger-lighter; $sql-history-error-fg: $color-danger; -$sql-hint-bg: $color-bg-theme; +$sql-hint-bg: $color-bg; $sql-hint-active-bg: $color-primary; $sql-hint-active-fg: $white; -$sql-bracket-match-fg: $color-gray-darker; +$sql-bracket-match-fg: #5b6d7c; $sql-bracket-match-bg: #f5d2af; -$negative-bg: $color-gray-light; -$dialog-box-shadow: $box-shadow; +/* For explain analysis */ +$explain-sev-2-bg: #FFEE88 !default; +$explain-sev-3-bg: #EE8800 !default; +$explain-sev-4-bg: #880000 !default; +$explain-sev-3-color: #FFFFFF !default; +$explain-sev-4-color: #FFFFFF !default; + +$negative-bg: $color-gray-light !default; +$dialog-box-shadow: 0 0.5rem 3rem $shadow-base-color; $alert-icon-color: $white; $alertify-borderremove-margin: $panel-border-width; @@ -221,3 +245,4 @@ $loading-bg : rgba($black,0.6); $loading-fg : $white; $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default; +$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23326690;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default; diff --git a/web/pgadmin/static/scss/resources/_pgadmin.variables.scss b/web/pgadmin/static/scss/resources/_pgadmin.variables.scss deleted file mode 100644 index e69de29bb..000000000 diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample new file mode 100644 index 000000000..30bc06060 --- /dev/null +++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample @@ -0,0 +1,74 @@ +$color-bg: $white; +$color-fg: #222222; + +$color-bg: #fff; +$color-fg: #222; + +$color-primary: #326690; +$color-primary-fg: $white; +$color-primary-light: #d6effc; +$color-primary-light-fg: $color-primary; +$color-primary-dark: #295c85; + +$color-secondary: $white; + +$color-danger: #e53935; +$color-danger-fg: $white; +$color-danger-light: #F39999; +$color-danger-lighter: #F39999; + +$color-success: #43a047; +$color-success-fg: $black; +$color-success-light: #DDF1DE; + +$color-warning: #eea236; +$color-warning-fg: $black; +$color-warning-light: #fce5c5;; + +/* Used at highest level in places like tooltip backgroud */ +$color-gray-dark: #848ea0; +/* Used for text colors at certain places */ +$color-gray: #bac1cd; +/* Used mostly for panel background empty spaces */ +$color-gray-light: #ebeef3; +/* Used mostly for disabled input backgrounds */ +$color-gray-lighter: #f3f5f9; + +$color-brand: $white; + +$border-color: #dde0e6; +$shadow-base-color: $color-gray-dark; + +$text-muted: $color-gray-dark; +$input-bg: $white; +$input-color: $color-fg; +$input-disabled-bg: $color-gray-lighter; + +$popover-bg: $color-bg; +$popover-body-color: $color-fg; + +$active-color: $color-primary; + +$color-editor-fg: $color-fg; +$color-editor-keyword: #908; +$color-editor-number: #964; +$color-editor-string: #a11; +$color-editor-variable: $color-fg; +$color-editor-variable-2: #05a; +$color-editor-builtin: #30a; +$color-editor-comment: #a50; +$color-editor-bracket: #997; +$color-editor-operator: $color-fg; +$color-editor-foldmarker: #0000FF; +$color-editor-activeline: #50B0F0; + +$explain-sev-2-bg: #FFEE88; +$explain-sev-3-bg: #EE8800; +$explain-sev-4-bg: #880000; +$explain-sev-3-color: #FFFFFF; +$explain-sev-4-color: #FFFFFF; + +$negative-bg: $color-gray-light; + +$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default; +$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default; diff --git a/web/pgadmin/static/scss/resources/_utils.scss b/web/pgadmin/static/scss/resources/_utils.scss deleted file mode 100644 index ed749243d..000000000 --- a/web/pgadmin/static/scss/resources/_utils.scss +++ /dev/null @@ -1,9 +0,0 @@ -.not-selectable { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - ms-user-select: none; - user-select: none; - cursor: default; -} \ No newline at end of file diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss new file mode 100644 index 000000000..e290fe289 --- /dev/null +++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss @@ -0,0 +1,73 @@ +$white: #fff; +$black: #000; + +$color-bg: #4d4d4d; +$color-fg: #fff; + +$color-primary: #40617d; +$color-primary-fg: $white; +$color-primary-light: #536270; +$color-primary-light-fg: $color-primary-fg; +$color-primary-dark: #15354f; + +$color-secondary: #424242; + +$color-danger: #ff5370; +$color-danger-fg: $white; +$color-danger-light: #914649; +$color-danger-lighter: #8f8282; + +$color-success: #6baa7f; +$color-success-fg: $black; +$color-success-light: #5a7863; + +$color-warning: #eea236; +$color-warning-fg: $black; +$color-warning-light: #fce5c5; + +/* For dark theme - colors are in reverse order + * gray-dark is lighter then gray-light + */ +$color-gray-dark: #595959; +$color-gray: #424242; +$color-gray-light: #303030; +$color-gray-lighter: #212121; + +$color-brand: $white; + +$border-color: $color-gray; +$shadow-base-color: $color-gray-lighter; + +$text-muted: #9d9fa1; +$input-bg: $color-gray-lighter; +$input-color: $color-fg; +$input-disabled-bg: $color-bg; + +$popover-bg: $color-bg; +$popover-body-color: $color-fg; + +$active-color: $color-fg; + +$color-editor-fg: #9cdcfe; +$color-editor-keyword: #c58680; +$color-editor-number: #81bb67; +$color-editor-string: #dcdcaa; +$color-editor-variable: #9cdcfe; +$color-editor-variable-2: #9cdcfe; +$color-editor-builtin: #dcdcaa; +$color-editor-comment: #81bb67; +$color-editor-bracket: #d4d4d4; +$color-editor-operator: #d4d4d4; +$color-editor-foldmarker: #0000FF !default; +$color-editor-activeline: #50B0F0 !default; + +$explain-sev-2-bg: #ded17e; +$explain-sev-3-bg: #c2812b; +$explain-sev-4-bg: #880000; +$explain-sev-3-color: $color-fg; +$explain-sev-4-color: $color-fg; + +$negative-bg: $color-bg; + +$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default; +$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default; diff --git a/web/pgadmin/static/scss/resources/dark/dark_preview.png b/web/pgadmin/static/scss/resources/dark/dark_preview.png new file mode 100644 index 0000000000000000000000000000000000000000..09cc988c1072ed12628d8cce47f735937e937d05 GIT binary patch literal 55602 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
-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 z°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 JPDHLkV1h!SFb4nt literal 0 HcmV?d00001 diff --git a/web/pgadmin/static/scss/resources/pgadmin.resources.scss b/web/pgadmin/static/scss/resources/pgadmin.resources.scss index 4b6ba733d..787f83663 100644 --- a/web/pgadmin/static/scss/resources/pgadmin.resources.scss +++ b/web/pgadmin/static/scss/resources/pgadmin.resources.scss @@ -1,5 +1,3 @@ /* All the global variables, mixins goes here */ -@import 'pgadmin.variables.scss'; @import 'default.variables.scss'; @import 'default.style.scss'; -@import 'utils.scss'; diff --git a/web/pgadmin/static/scss/resources/standard_preview.png b/web/pgadmin/static/scss/resources/standard_preview.png new file mode 100644 index 0000000000000000000000000000000000000000..64b5eb5079d300f80bb06f8a4edc545fab0b18e3 GIT binary patch literal 33349 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%0A4U#P!oNirVJo)qlfSqk}r0*z{QUF93A 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 literal 0 HcmV?d00001 diff --git a/web/pgadmin/templates/base.html b/web/pgadmin/templates/base.html index ad9e75d5b..781a09246 100644 --- a/web/pgadmin/templates/base.html +++ b/web/pgadmin/templates/base.html @@ -20,7 +20,8 @@ - + + {% block css_link %}{% endblock %} diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html index 0f12665e5..30e87c558 100644 --- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html +++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html @@ -49,7 +49,7 @@ title="" accesskey="" tabindex="0" disabled> - +
@@ -324,12 +324,12 @@ title="" accesskey="" tabindex="0" disabled> - +
@@ -370,7 +370,7 @@ data-panel-visible="visible" accesskey="" tabindex="0"> -
@@ -392,55 +392,57 @@ {% endblock %} {% block init_script %} - require(['sources/generated/sqleditor', 'sources/generated/browser_nodes', 'sources/generated/codemirror', 'sources/generated/slickgrid'], function(ctx) { - var $ = pgAdmin.SqlEditor.jquery, - S = pgAdmin.SqlEditor.S, - editorPanel = $('.sql-editor'), - loadingDiv = $('#fetching_data'), - msgDiv = loadingDiv.find('.sql-editor-busy-text'); +require(['sources/generated/browser_nodes', 'sources/generated/codemirror', 'sources/generated/slickgrid'], function() { + require(['sources/generated/sqleditor'], function(ctx) { + var $ = pgAdmin.SqlEditor.jquery, + S = pgAdmin.SqlEditor.S, + editorPanel = $('.sql-editor'), + loadingDiv = $('#fetching_data'), + msgDiv = loadingDiv.find('.sql-editor-busy-text'); - // Register unload event on window close. - /* If opened in new tab, close the connection only on tab/window close and - * not on refresh attempt because the user may cancel the reload - */ - if(window.opener) { - $(window).on('unload', function(ev) { - $.ajax({ - method: 'DELETE', - url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }} - }); - }); - } else { - $(window).on('beforeunload', function(ev) { - $.ajax({ - method: 'DELETE', - url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }} - }); - }); - } + // Register unload event on window close. + /* If opened in new tab, close the connection only on tab/window close and + * not on refresh attempt because the user may cancel the reload + */ + if(window.opener) { + $(window).on('unload', function(ev) { + $.ajax({ + method: 'DELETE', + url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }} + }); + }); + } else { + $(window).on('beforeunload', function(ev) { + $.ajax({ + method: 'DELETE', + url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }} + }); + }); + } - // Get the controller object from pgAdmin.SqlEditor - var sqlEditorController = pgAdmin.SqlEditor.create(editorPanel); + // Get the controller object from pgAdmin.SqlEditor + var sqlEditorController = pgAdmin.SqlEditor.create(editorPanel); - // Listen on events to show/hide loading-icon and change messages. - sqlEditorController.on('pgadmin-sqleditor:loading-icon:message', function(msg) { - msgDiv.text(msg); - }).on('pgadmin-sqleditor:loading-icon:show', function(msg) { - loadingDiv.removeClass('d-none'); - msgDiv.text(msg); - }).on('pgadmin-sqleditor:loading-icon:hide', function() { - loadingDiv.addClass('d-none'); - }); - {% if script_type_url %} - var script_type_url = '{{ script_type_url }}'; - {% else %} - var script_type_url = ''; - {% endif %} - // Start the query tool. - sqlEditorController.start( - {{ uniqueId }}, - {{ url_params|safe}}, - '{{ layout|safe }}' - ); + // Listen on events to show/hide loading-icon and change messages. + sqlEditorController.on('pgadmin-sqleditor:loading-icon:message', function(msg) { + msgDiv.text(msg); + }).on('pgadmin-sqleditor:loading-icon:show', function(msg) { + loadingDiv.removeClass('d-none'); + msgDiv.text(msg); + }).on('pgadmin-sqleditor:loading-icon:hide', function() { + loadingDiv.addClass('d-none'); + }); + {% if script_type_url %} + var script_type_url = '{{ script_type_url }}'; + {% else %} + var script_type_url = ''; + {% endif %} + // Start the query tool. + sqlEditorController.start( + {{ uniqueId }}, + {{ url_params|safe}}, + '{{ layout|safe }}' + ); + }); }); {% endblock %} diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css index 8831d5023..62c0f2c56 100644 --- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css +++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css @@ -14,30 +14,6 @@ bottom: 0; } -.sql-scratch { - width: 100%; - height: 100%; - box-sizing: border-box; - overflow-y: hidden; -} - -.sql-scratch textarea { - width: 100%; - height: 100%; - box-sizing: border-box; - border: none; - resize: none; -} - -.sql-editor-grid-container { - height: 100%; - overflow: auto; -} - -.sql-editor-grid-container.has-no-footer { - height: 100%; -} - .filter-container .CodeMirror-scroll { min-height: 120px; } @@ -274,53 +250,32 @@ input.editor-checkbox:focus { white-space: pre; } -/* CSS for connection status icon */ -.connection_status .fa-custom { - height: 18px; - width: 18px; - display: block; - background-repeat: no-repeat; - content: ''; +.connection_status { + font-size: 1rem; } -.connection_status .fa-query-tool-connected { - background-image: url('../img/connect.svg'); +.icon-query-tool-connected:before { + font-icon: url('../img/connect.svg'); } -.connection_status .fa-query-tool-disconnected { - background-image: url('../img/disconnect.svg'); +.icon-query-tool-disconnected:before { + font-icon: url('../img/disconnect.svg'); } -.connection_status .obtaining-conn { - background-image: url('../img/loading.gif') !important; +.icon-commit:before { + font-icon: url('../img/commit.svg'); } -.icon-commit, .icon-rollback, .icon-save-data-changes, .icon-view-data { - display: inline-block; - align-content: center; - vertical-align: middle; - height: 18px; - width: 18px; - background-size: 22px !important; - background-repeat: no-repeat; - background-position-x: center; - background-position-y: center; +.icon-rollback:before { + font-icon: url('../img/rollback.svg'); } -.icon-commit { - background-image: url('../img/commit.svg') !important; +.icon-save-data-changes:before { + font-icon: url('../img/save_data_changes.svg'); } -.icon-rollback { - background-image: url('../img/rollback.svg') !important; -} - -.icon-save-data-changes { - background-image: url('../img/save_data_changes.svg') !important; -} - -.icon-view-data { - background-image: url('../img/view_data.svg') !important; +.icon-view-data:before { + font-icon: url('../img/view_data.svg'); } .ajs-body .warn-header { diff --git a/web/pgadmin/tools/sqleditor/static/img/commit.svg b/web/pgadmin/tools/sqleditor/static/img/commit.svg index 7fd36e8b8..5047ac3e6 100644 --- a/web/pgadmin/tools/sqleditor/static/img/commit.svg +++ b/web/pgadmin/tools/sqleditor/static/img/commit.svg @@ -1 +1,22 @@ -commit + + + +commit + + diff --git a/web/pgadmin/tools/sqleditor/static/img/connect.svg b/web/pgadmin/tools/sqleditor/static/img/connect.svg index 9170fc9b5..c311f2868 100644 --- a/web/pgadmin/tools/sqleditor/static/img/connect.svg +++ b/web/pgadmin/tools/sqleditor/static/img/connect.svg @@ -1 +1,23 @@ -connect + + + +connect + + diff --git a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg index 113b7588d..1fe248042 100644 --- a/web/pgadmin/tools/sqleditor/static/img/disconnect.svg +++ b/web/pgadmin/tools/sqleditor/static/img/disconnect.svg @@ -1 +1,24 @@ -disconnect + + + +disconnect + + diff --git a/web/pgadmin/tools/sqleditor/static/img/rollback.svg b/web/pgadmin/tools/sqleditor/static/img/rollback.svg index 89713cdf4..c0566447f 100644 --- a/web/pgadmin/tools/sqleditor/static/img/rollback.svg +++ b/web/pgadmin/tools/sqleditor/static/img/rollback.svg @@ -1 +1,22 @@ -rollback + + + +rollback + + diff --git a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg index 09ead9286..1b1140237 100644 --- a/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg +++ b/web/pgadmin/tools/sqleditor/static/img/save_data_changes.svg @@ -1,12 +1,32 @@ - + + + save_data_changes - - -Layer 1 - - - \ No newline at end of file + + diff --git a/web/pgadmin/tools/sqleditor/static/img/view_data.svg b/web/pgadmin/tools/sqleditor/static/img/view_data.svg index 8a1a382b4..803d12cb5 100644 --- a/web/pgadmin/tools/sqleditor/static/img/view_data.svg +++ b/web/pgadmin/tools/sqleditor/static/img/view_data.svg @@ -1,9 +1,26 @@ - - -save_data_changes - - -Layer 1 \ No newline at end of file + + + + + diff --git a/web/pgadmin/tools/sqleditor/static/scss/_history.scss b/web/pgadmin/tools/sqleditor/static/scss/_history.scss index 68f7fcd2c..b2922630f 100644 --- a/web/pgadmin/tools/sqleditor/static/scss/_history.scss +++ b/web/pgadmin/tools/sqleditor/static/scss/_history.scss @@ -3,7 +3,7 @@ .list-item { border-bottom: $panel-border; - background-color: $color-bg-theme; + background-color: $color-bg; } .entry { @@ -81,8 +81,8 @@ .header-label { @extend .text-12; - @extend .text-gray; display: block; + color: $color-fg; } @@ -98,7 +98,7 @@ width: 100%; display: flex; flex-direction: column; - background-color: $color-bg-theme; + background-color: $color-bg; .error-message-block { background: $sql-history-error-bg; flex: 0.3; @@ -163,8 +163,8 @@ float: left; position: relative; z-index: 10; - border: 1px solid $color-gray-light; - color: $color-primary; + border: 1px solid $border-color; + color: $color-fg; font-size: 12px; box-shadow: 1px 2px 4px 0px $color-gray-light; padding: 3px 12px 3px 10px; @@ -172,13 +172,14 @@ min-width: 75px; } - .copy-all { + .copy-all, .copy-to-editor { background-color: $color-bg; } .was-copied { background-color: $color-primary-light; border-color: $color-primary-light; + color: $active-color; } .CodeMirror-scroll { @@ -217,6 +218,7 @@ @extend .bg-white; @extend .text-13; font-family: $font-family-editor; + color: $color-fg; border: 0; padding-left: 0; position: absolute; diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss index 2742f3204..0ecfc3894 100644 --- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss +++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss @@ -110,7 +110,7 @@ li.CodeMirror-hint-active { .slick-cell.cell-move-handle { font-weight: bold; text-align: right; - border-right: solid $color-gray; + border-right: solid $border-color; background: $color-gray-lighter; cursor: move; } @@ -129,7 +129,7 @@ li.CodeMirror-hint-active { } .cell-selection { - border-right-color: $color-gray-light; + border-right-color: $border-color; border-right-style: solid; background: $color-gray-lighter; color: $color-gray; @@ -138,7 +138,8 @@ li.CodeMirror-hint-active { } #datagrid .slick-header .slick-header-columns { - background: $color-bg; + background: $sql-grid-title-cell-bg; + color: $sql-grid-title-cell-fg; height: 40px; border-bottom: $panel-border; } @@ -222,6 +223,27 @@ li.CodeMirror-hint-active { } /* color the first column */ + +#datagrid .slick-row { + .slick-cell { + background-color: $sql-grid-data-cell-bg; + color: $sql-grid-data-cell-fg; + } + + .slick-cell.l0.r0 { + background-color: $sql-grid-title-cell-bg; + color: $sql-grid-title-cell-fg; + } +} + +#datagrid div.slick-header.ui-state-default { + background-color: $sql-grid-title-cell-bg; + color: $sql-grid-title-cell-fg; + border-bottom: none; + border-right: none; + border-top: none; +} + #datagrid .slick-row .slick-cell.l0.r0.selected { background-color: $color-primary; color: $color-primary-fg; @@ -233,17 +255,10 @@ li.CodeMirror-hint-active { border-bottom: $table-hover-border; } -#datagrid div.slick-header.ui-state-default { - background: $color-bg; - border-bottom: none; - border-right: none; - border-top: none; -} - .pg-text-editor { z-index:10000; position:absolute; - background: $color-bg-theme; + background: $color-bg; padding: 0.25rem; border: $panel-border; box-shadow: $dropdown-box-shadow; @@ -299,3 +314,55 @@ div.strikeout:after { content: "\00B7"; font-size: 1px; } + +.sql-scratch { + width: 100%; + height: 100%; + box-sizing: border-box; + overflow-y: hidden; + + textarea { + width: 100%; + height: 100%; + box-sizing: border-box; + border: none; + resize: none; + } +} + +.icon-query-tool-connected { + color: $color-primary; +} + +.icon-query-tool-disconnected { + color: $color-danger; +} + +.connection_status .obtaining-conn { + background-image: $loader-icon-small !important; + background-position: center center; + background-repeat: no-repeat; + &:before { + content:''; + } + min-width: 50%; + min-height: 100%; +} + +.sql-editor-grid-container { + height: 100%; + overflow: auto; + + .ui-widget-content { + background-color: $input-bg; + color: $input-color; + } + + .ui-state-default { + color: $color-fg; + } +} + +.sql-editor-grid-container.has-no-footer { + height: 100%; +} diff --git a/web/webpack.config.js b/web/webpack.config.js index bc64081e2..2acaacb55 100644 --- a/web/webpack.config.js +++ b/web/webpack.config.js @@ -22,15 +22,20 @@ const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const extractStyle = new MiniCssExtractPlugin({ filename: '[name].css', + chunkFilename: '[name].css', allChunks: true, }); const WebpackRequireFromPlugin = require('webpack-require-from'); const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; +const CopyPlugin = require('copy-webpack-plugin'); +const IconfontWebpackPlugin = require('iconfont-webpack-plugin'); const envType = PRODUCTION ? 'production': 'development'; const devToolVal = PRODUCTION ? false : 'eval'; const analyzerMode = process.env.ANALYZE=='true' ? 'static' : 'disabled'; +const outputPath = __dirname + '/pgadmin/static/js/generated'; + // Expose libraries in app context so they need not to // require('libname') when used in a module const providePlugin = new webpack.ProvidePlugin({ @@ -62,7 +67,7 @@ const optimizeAssetsPlugin = new OptimizeCssAssetsPlugin({ // Reference: https://webpack.js.org/plugins/source-map-dev-tool-plugin/#components/sidebar/sidebar.jsx const sourceMapDevToolPlugin = new webpack.SourceMapDevToolPlugin({ filename: '[name].js.map', - exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|style\.js|popper)/, + exclude: /(vendor|codemirror|slickgrid|pgadmin\.js|pgadmin.theme|pgadmin.static|style\.js|popper)/, columns: false, }); @@ -79,6 +84,16 @@ const bundleAnalyzer = new BundleAnalyzerPlugin({ reportFilename: 'analyze_report.html', }); +let pgadminThemesJson = 'pgadmin.themes.json'; +const copyFiles = new CopyPlugin([ + pgadminThemesJson, + { + from: './pgadmin/static/scss/resources/**/*.png', + to: outputPath + '/img', + flatten: true, + }, +]); + function cssToBeSkiped(curr_path) { /** Skip all templates **/ if(curr_path.indexOf('template') > -1) { @@ -96,7 +111,7 @@ function cssToBeSkiped(curr_path) { /* Get all the style files recursively and store in array to * give input to webpack. */ -function pushModulesCss(curr_path, pgadminStyles) { +function pushModulesStyles(curr_path, pgadminStyles, extn) { /** Skip Directories */ if(cssToBeSkiped(curr_path)) { return; @@ -111,22 +126,223 @@ function pushModulesCss(curr_path, pgadminStyles) { let stats = fs.statSync(path.join(curr_path, curr_file)); /* if directory, dig further */ if(stats.isDirectory()) { - pushModulesCss(path.join(curr_path, curr_file), pgadminStyles); + pushModulesStyles(path.join(curr_path, curr_file), pgadminStyles, extn); } - else if(stats.isFile() && (curr_file.endsWith('.scss') || curr_file.endsWith('.css'))) { + else if(stats.isFile() && (curr_file.endsWith(extn))) { pgadminStyles.push(path.join(curr_path, curr_file)); } }); } -let pgadminStyles = []; +let pgadminScssStyles = []; +let pgadminCssStyles = []; + /* Include what is given in shim config */ for(let i=0; i [ + require('autoprefixer')(), + new IconfontWebpackPlugin(loader), + ], + }, + }, + {loader: 'sass-loader'}, + { + loader: 'sass-resources-loader', + options: { + resources: function(theme_name){ + let ret_res = [ + './pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss', + './pgadmin/static/scss/resources/pgadmin.resources.scss', + ]; + if(theme_name!='standard') { + ret_res.unshift('./pgadmin/static/scss/resources/' + theme_name + '/_theme.variables.scss'); + } + return ret_res; + }(theme_name), + }, + }, + ], + }, { + test: /\.css$/, + use: [ + MiniCssExtractPlugin.loader, + 'css-loader', + { + loader: 'postcss-loader', + options: { + plugins: (loader) => [ + require('autoprefixer')(), + new IconfontWebpackPlugin(loader), + ], + }, + }, + ], + }]; +}; + +var getThemeWebpackConfig = function(theme_name) { + return { + mode: envType, + devtool: devToolVal, + stats: { children: false }, + // The base directory, an absolute path, for resolving entry points and loaders + // from configuration. + context: __dirname, + // Specify entry points of application + entry: { + [pgadminThemes[theme_name].cssfile]: pgadminScssStyles, + }, + // path: The output directory for generated bundles(defined in entry) + // Ref: https://webpack.js.org/configuration/output/#output-library + output: { + libraryTarget: 'amd', + path: outputPath, + filename: '[name].js', + libraryExport: 'default', + }, + // Templates files which contains python code needs to load dynamically + // Such files specified in externals are loaded at first and defined in + // the start of generated bundle within define(['libname'],fn) etc. + externals: webpackShimConfig.externals, + module: { + // References: + // Module and Rules: https://webpack.js.org/configuration/module/ + // Loaders: https://webpack.js.org/loaders/ + // + // imports-loader: it adds dependent modules(use:imports-loader?module1) + // at the beginning of module it is dependency of like: + // var jQuery = require('jquery'); var browser = require('pgadmin.browser') + // It solves number of problems + // Ref: http:/github.com/webpack-contrib/imports-loader/ + rules: themeCssRules(theme_name), + }, + resolve: { + alias: webpackShimConfig.resolveAlias, + modules: ['node_modules', '.'], + extensions: ['.js'], + unsafeCache: true, + }, + // Watch mode Configuration: After initial build, webpack will watch for + // changes in files and compiles only files which are changed, + // if watch is set to True + // Reference: https://webpack.js.org/configuration/watch/#components/sidebar/sidebar.jsx + watchOptions: { + aggregateTimeout: 300, + poll: 1000, + ignored: /node_modules/, + }, + // Define list of Plugins used in Production or development mode + // Ref:https://webpack.js.org/concepts/plugins/#components/sidebar/sidebar.jsx + plugins: PRODUCTION ? [ + extractStyle, + optimizeAssetsPlugin, + sourceMapDevToolPlugin, + ]: [ + extractStyle, + sourceMapDevToolPlugin, + ], + }; +}; + +var pgadminThemesWebpack = []; +Object.keys(pgadminThemes).map((theme_name)=>{ + pgadminThemesWebpack.push(getThemeWebpackConfig(theme_name)); +}); + +module.exports = [{ mode: envType, devtool: devToolVal, stats: { children: false }, @@ -141,14 +357,15 @@ module.exports = { sqleditor: './pgadmin/tools/sqleditor/static/js/sqleditor.js', debugger_direct: './pgadmin/tools/debugger/static/js/direct.js', file_utils: './pgadmin/misc/file_manager/static/js/utility.js', - pgadmin: pgadminStyles, + 'pgadmin.style': pgadminCssStyles, + pgadmin: pgadminScssStyles, style: './pgadmin/static/css/style.css', }, // path: The output directory for generated bundles(defined in entry) // Ref: https://webpack.js.org/configuration/output/#output-library output: { libraryTarget: 'amd', - path: __dirname + '/pgadmin/static/js/generated', + path: outputPath, filename: '[name].js', chunkFilename: '[name].chunk.js', libraryExport: 'default', @@ -282,73 +499,7 @@ module.exports = { use: { loader: 'imports-loader?this=>window,fix=>module.exports=0', }, - }, { - test: /\.(jpe?g|png|gif|svg)$/i, - loaders: [{ - loader: 'url-loader', - options: { - emitFile: true, - name: 'img/[name].[ext]', - limit: 4096, - }, - }, { - loader: 'image-webpack-loader', - query: { - bypassOnDebug: true, - mozjpeg: { - progressive: true, - }, - gifsicle: { - interlaced: false, - }, - optipng: { - optimizationLevel: 7, - }, - pngquant: { - quality: '75-90', - speed: 3, - }, - }, - }], - exclude: /vendor/, - }, { - test: /\.(eot|svg|ttf|woff|woff2)$/, - loaders: [{ - loader: 'file-loader', - options: { - name: 'fonts/[name].[ext]', - emitFile: true, - }, - }], - include: [ - /node_modules/, - path.join(sourceDir, '/css/'), - path.join(sourceDir, '/scss/'), - path.join(sourceDir, '/fonts/'), - ], - exclude: /vendor/, - }, { - test: /\.scss$/, - use: [ - {loader: MiniCssExtractPlugin.loader}, - {loader: 'css-loader'}, - {loader: 'sass-loader'}, - { - loader: 'sass-resources-loader', - options: { - resources: [ - './pgadmin/static/scss/resources/pgadmin.resources.scss', - ], - }, - }, - ], - }, { - test: /\.css$/, - use: [ - MiniCssExtractPlugin.loader, - 'css-loader', - ], - }], + }].concat(themeCssRules('standard')), // Prevent module from parsing through webpack, helps in reducing build time noParse: [/moment.js/], }, @@ -466,10 +617,12 @@ module.exports = { sourceMapDevToolPlugin, webpackRequireFrom, bundleAnalyzer, + copyFiles, ]: [ extractStyle, providePlugin, sourceMapDevToolPlugin, webpackRequireFrom, + copyFiles, ], -}; +}].concat(pgadminThemesWebpack); diff --git a/web/yarn.lock b/web/yarn.lock index 8f325cf2b..9066fa4ae 100644 --- a/web/yarn.lock +++ b/web/yarn.lock @@ -1030,7 +1030,7 @@ are-we-there-yet@~1.1.2: delegates "^1.0.0" readable-stream "^2.0.6" -argparse@^1.0.7: +argparse@^1.0.6, argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== @@ -1188,6 +1188,19 @@ atob@^2.1.1: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== +autoprefixer@^9.6.4: + version "9.6.4" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.4.tgz#e6453be47af316b2923eaeaed87860f52ad4b7eb" + integrity sha512-Koz2cJU9dKOxG8P1f8uVaBntOv9lP4yz9ffWvWaicv9gHBPhpQB22nGijwd8gqW9CNT+UdkbQOQNLVI8jN1ZfQ== + dependencies: + browserslist "^4.7.0" + caniuse-lite "^1.0.30000998" + chalk "^2.4.2" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.18" + postcss-value-parser "^4.0.2" + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" @@ -2039,7 +2052,7 @@ browserify@^16.1.0, browserify@~16.2.3: vm-browserify "^1.0.0" xtend "^4.0.0" -browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.1: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.7.0, browserslist@^4.7.1: version "4.7.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.2.tgz#1bb984531a476b5d389cedecb195b2cd69fb1348" integrity sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw== @@ -2132,6 +2145,26 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== +cacache@^11.3.3: + version "11.3.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" + integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA== + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + cacache@^12.0.2: version "12.0.3" resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390" @@ -2253,6 +2286,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001004: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001004.tgz#d879b73981b255488316da946c39327d8c00a586" integrity sha512-3nfOR4O8Wa2RWoYfJkMtwRVOsK96TQ+eq57wd0iKaEWl8dwG4hKZ/g0MVBfCvysFvMLi9fQGR/DvozMdkEPl3g== +caniuse-lite@^1.0.30000998: + version "1.0.30000999" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz#427253a69ad7bea4aa8d8345687b8eec51ca0e43" + integrity sha512-1CUyKyecPeksKwXZvYw0tEoaMCo/RwBlXmEtN5vVnabvO0KPd9RQLcaAuR9/1F+KDMv6esmOFWlsXuzDk+8rxg== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -2543,7 +2581,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3: +commander@^2.12.2, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@~2.20.3: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== @@ -2691,6 +2729,24 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= +copy-webpack-plugin@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz#c78126f604e24f194c6ec2f43a64e232b5d43655" + integrity sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg== + dependencies: + cacache "^11.3.3" + find-cache-dir "^2.1.0" + glob-parent "^3.1.0" + globby "^7.1.1" + is-glob "^4.0.1" + loader-utils "^1.2.3" + minimatch "^3.0.4" + normalize-path "^3.0.0" + p-limit "^2.2.0" + schema-utils "^1.0.0" + serialize-javascript "^1.7.0" + webpack-log "^2.0.0" + core-js-compat@^3.1.1: version "3.3.3" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.3.3.tgz#82642808cf484a35292b2f8e83ef9376884e760f" @@ -2970,6 +3026,11 @@ csso@^3.5.1: dependencies: css-tree "1.0.0-alpha.29" +cubic2quad@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/cubic2quad/-/cubic2quad-1.1.1.tgz#69b19c61a3f5b41ecf2f1d5fae8fb03415aa8b15" + integrity sha1-abGcYaP1tB7PLx1fro+wNBWqixU= + currently-unhandled@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" @@ -3248,6 +3309,13 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" +dir-glob@^2.0.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== + dependencies: + path-type "^3.0.0" + doctrine@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" @@ -4296,6 +4364,11 @@ gaze@^1.0.0: dependencies: globule "^1.0.0" +geometry-interfaces@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz#9e82af6700ca639a675299f08e1f5fbc4a79d48d" + integrity sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA== + get-assigned-identifiers@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz#6dbf411de648cbaf8d9169ebb0d2d576191e2ff1" @@ -4465,6 +4538,18 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" +globby@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA= + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + globule@^1.0.0: version "1.2.1" resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" @@ -4814,6 +4899,17 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= +iconfont-webpack-plugin@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/iconfont-webpack-plugin/-/iconfont-webpack-plugin-4.2.1.tgz#bd1b1ab2960affd602b207d1523d79dea4f21aea" + integrity sha512-OIBHTSgir7uGwM0nw+UbCsfDXg/OEfn9ixrgsRygKm2nY8JGTy9zHxOWbQE6xDaP92/jYzQL3GjCy3kiBvBYtw== + dependencies: + loader-utils "1.2.3" + postcss "6.0.23" + svg2ttf "4.3.0" + svgicons2svgfont "9.1.1" + ttf2woff "2.0.1" + iconv-lite@0.4.24, iconv-lite@^0.4.15, iconv-lite@^0.4.24, iconv-lite@^0.4.4: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -4850,6 +4946,11 @@ ignore-walk@^3.0.1: dependencies: minimatch "^3.0.4" +ignore@^3.3.5: + version "3.3.10" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" + integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== + ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" @@ -4943,6 +5044,13 @@ immutability-helper@^3.0.0: dependencies: invariant "^2.2.4" +import-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" + integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= + dependencies: + import-from "^2.1.0" + import-fresh@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" @@ -4959,6 +5067,13 @@ import-fresh@^3.0.0: parent-module "^1.0.0" resolve-from "^4.0.0" +import-from@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" + integrity sha1-M1238qev/VOqpHHUuAId7ja387E= + dependencies: + resolve-from "^3.0.0" + import-lazy@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-3.1.0.tgz#891279202c8a2280fdbd6674dbd8da1a1dfc67cc" @@ -5463,6 +5578,11 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -6156,6 +6276,11 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= +microbuffer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/microbuffer/-/microbuffer-1.0.0.tgz#8b3832ed40c87d51f47bb234913a698a756d19d2" + integrity sha1-izgy7UDIfVH0e7I0kTppinVtGdI= + micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" @@ -6435,6 +6560,13 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +neatequal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/neatequal/-/neatequal-1.0.0.tgz#2ee1211bc9fa6e4c55715fd210bb05602eb1ae3b" + integrity sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs= + dependencies: + varstream "^0.3.2" + needle@^2.2.1: version "2.3.0" resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.0.tgz#ce3fea21197267bacb310705a7bbe24f2a3a3492" @@ -6589,6 +6721,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + normalize-url@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" @@ -6660,6 +6797,11 @@ null-check@^1.0.0: resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" integrity sha1-l33/1xdgErnsMNKjnbXPcqBDnt0= +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -6918,7 +7060,7 @@ p-is-promise@^2.0.0: resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== -p-limit@^2.0.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== @@ -6968,7 +7110,7 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -pako@~1.0.5: +pako@^1.0.0, pako@~1.0.5: version "1.0.10" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw== @@ -7118,6 +7260,13 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + pbkdf2@^3.0.3: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -7276,6 +7425,24 @@ postcss-discard-overridden@^4.0.1: dependencies: postcss "^7.0.0" +postcss-load-config@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" + integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q== + dependencies: + cosmiconfig "^5.0.0" + import-cwd "^2.0.0" + +postcss-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" + integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== + dependencies: + loader-utils "^1.1.0" + postcss "^7.0.0" + postcss-load-config "^2.0.0" + schema-utils "^1.0.0" + postcss-merge-longhand@^4.0.11: version "4.0.11" resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" @@ -7531,10 +7698,24 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^ resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.20" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.20.tgz#a107b68ef1ad1c5e6e214ebb3c5ede2799322837" - integrity sha512-VOdO3a5nHVftPSEbG1zaG320b4mH5KAflH+pIeVAF5/hlw6YumELSgHZQBekjg29Oj4qw7XAyp9tIEBpeNWcyg== +postcss-value-parser@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" + integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ== + +postcss@6.0.23: + version "6.0.23" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" + integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== + dependencies: + chalk "^2.4.1" + source-map "^0.6.1" + supports-color "^5.4.0" + +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.21" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17" + integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ== dependencies: chalk "^2.4.2" source-map "^0.6.1" @@ -7789,6 +7970,16 @@ read-pkg@^1.0.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^1.0.33: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + readdirp@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" @@ -8371,6 +8562,11 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= + slice-ansi@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" @@ -8765,6 +8961,16 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string.fromcodepoint@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653" + integrity sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM= + +string.prototype.codepointat@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz#004ad44c8afc727527b108cd462b4d971cd469bc" + integrity sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg== + string.prototype.trimleft@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" @@ -8788,6 +8994,11 @@ string_decoder@^1.0.0, string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -8890,13 +9101,46 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= -supports-color@^5.3.0: +supports-color@^5.3.0, supports-color@^5.4.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" +svg-pathdata@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/svg-pathdata/-/svg-pathdata-5.0.2.tgz#e667b94a6071b60c5b123df04f9d6c9fe2f4850e" + integrity sha512-tmfwioGZZaSMZnAGCFiWd30O2sVbA5/wVP/CS8Pcf9s1ptd6J26bZUFwkIRZy+GYmD+uCECdiAP7bPpLszj+1w== + +svg2ttf@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/svg2ttf/-/svg2ttf-4.3.0.tgz#433440c7e9062f8fdcec3cad721cd08a2c7e51e3" + integrity sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA== + dependencies: + argparse "^1.0.6" + cubic2quad "^1.0.0" + lodash "^4.17.10" + microbuffer "^1.0.0" + svgpath "^2.1.5" + xmldom "~0.1.22" + +svgicons2svgfont@9.1.1: + version "9.1.1" + resolved "https://registry.yarnpkg.com/svgicons2svgfont/-/svgicons2svgfont-9.1.1.tgz#655d30c256176f6e29c96058609ef0a9b0ebf2df" + integrity sha512-iOj7lqHP/oMrLg7S2Iv89LOJUfmIuePefXcs5ul4IsKwcYvL/T/Buahz+nQQJygyuvEMBBXqnCRmnvJggHeJzA== + dependencies: + commander "^2.12.2" + geometry-interfaces "^1.1.4" + glob "^7.1.2" + neatequal "^1.0.0" + readable-stream "^2.3.3" + sax "^1.2.4" + string.fromcodepoint "^0.2.1" + string.prototype.codepointat "^0.2.0" + svg-pathdata "^5.0.0" + transformation-matrix-js "^2.7.1" + svgo@^1.0.0, svgo@^1.0.5: version "1.3.0" resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.0.tgz#bae51ba95ded9a33a36b7c46ce9c359ae9154313" @@ -8916,6 +9160,11 @@ svgo@^1.0.0, svgo@^1.0.5: unquote "~1.1.1" util.promisify "~1.0.0" +svgpath@^2.1.5: + version "2.2.2" + resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.2.2.tgz#1c70d44e27f7b6bd42a74ed3c960be93e411def3" + integrity sha512-7cXFbkZvPkZpKLC+3QIfyUd3/Un/CvJONjTD3Gz5qLuEa73StPOt8kZjTi9apxO6zwCaza0bPNnmzTyrQ4qQlw== + syntax-error@^1.1.1: version "1.4.0" resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.4.0.tgz#2d9d4ff5c064acb711594a3e3b95054ad51d907c" @@ -9205,6 +9454,11 @@ tough-cookie@~2.4.3: psl "^1.1.24" punycode "^1.4.1" +transformation-matrix-js@^2.7.1: + version "2.7.6" + resolved "https://registry.yarnpkg.com/transformation-matrix-js/-/transformation-matrix-js-2.7.6.tgz#25c7ff055c99b8528ffbd4c4a2684be6c9d5ef60" + integrity sha512-1CxDIZmCQ3vA0GGnkdMQqxUXVm3xXAFmglPYRS1hr37LzSg22TC7QAWOT38OmdUvMEs/rqcnkFoAsqvzdiluDg== + trim-newlines@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" @@ -9234,6 +9488,15 @@ tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== +ttf2woff@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ttf2woff/-/ttf2woff-2.0.1.tgz#871832240024b09db9570904c7c1928b8057c969" + integrity sha1-hxgyJAAksJ25VwkEx8GSi4BXyWk= + dependencies: + argparse "^1.0.6" + microbuffer "^1.0.0" + pako "^1.0.0" + tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" @@ -9554,6 +9817,13 @@ value-or-function@^3.0.0: resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM= +varstream@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/varstream/-/varstream-0.3.2.tgz#18ac6494765f3ff1a35ad9a4be053bec188a5de1" + integrity sha1-GKxklHZfP/GjWtmkvgU77BiKXeE= + dependencies: + readable-stream "^1.0.33" + vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -9870,6 +10140,11 @@ xmlbuilder@^10.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-10.1.1.tgz#8cae6688cc9b38d850b7c8d3c0a4161dcaf475b0" integrity sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg== +xmldom@~0.1.22: + version "0.1.27" + resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" + integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk= + xmlhttprequest-ssl@~1.5.4: version "1.5.5" resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e"