1) Added support for custom theme creation and selection. Fixes #4348.
2) Added Dark(Beta) UI Theme option. Fixes #3741. 3) Fix an issue where a black arrow-kind image is displaying at the background of browser tree images. Fixes #4171 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.
1
.gitignore
vendored
@ -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/
|
||||
|
13
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 <dir name>_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
|
||||
-----------------------
|
||||
|
||||
|
BIN
docs/en_US/images/preferences_misc_themes.png
Normal file
After Width: | Height: | Size: 101 KiB |
BIN
docs/en_US/images/preferences_misc_user_language.png
Executable file → Normal file
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 73 KiB |
@ -178,6 +178,14 @@ Expand the *Miscellaneous* node to specify miscellaneous display preferences.
|
||||
* Use the *User language* drop-down listbox to select the display language for
|
||||
the client.
|
||||
|
||||
.. image:: images/preferences_misc_themes.png
|
||||
:alt: Preferences dialog themes section
|
||||
:align: center
|
||||
|
||||
* Use the *Themes* drop-down listbox to select the theme for pgAdmin. You'll also get a preview just below the
|
||||
drop down. Note that, to apply the theme you need to refresh the pgAdmin page. You can also submit your
|
||||
own themes, check `here <https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=blob_plain;f=README>`_ how.
|
||||
|
||||
The Paths Node
|
||||
**************
|
||||
|
||||
|
@ -10,8 +10,10 @@ New features
|
||||
************
|
||||
|
||||
| `Issue #1974 <https://redmine.postgresql.org/issues/1974>`_ - Added encrypted password in reverse engineered SQL for roles.
|
||||
| `Issue #4351 <https://redmine.postgresql.org/issues/4351>`_ - Add an option to request confirmation before cancelling/resetting changes on a Properties dialog.
|
||||
| `Issue #3741 <https://redmine.postgresql.org/issues/3741>`_ - Added Dark(Beta) UI Theme option.
|
||||
| `Issue #4006 <https://redmine.postgresql.org/issues/4006>`_ - Support Enable Always and Enable Replica on triggers.
|
||||
| `Issue #4351 <https://redmine.postgresql.org/issues/4351>`_ - Add an option to request confirmation before cancelling/resetting changes on a Properties dialog.
|
||||
| `Issue #4348 <https://redmine.postgresql.org/issues/4348>`_ - Added support for custom theme creation and selection.
|
||||
|
||||
Housekeeping
|
||||
************
|
||||
@ -27,6 +29,7 @@ Bug fixes
|
||||
| `Issue #3913 <https://redmine.postgresql.org/issues/3913>`_ - Ensure the correct "running at" agent is shown when a pgAgent job is executing.
|
||||
| `Issue #3915 <https://redmine.postgresql.org/issues/3915>`_ - Fix an issue in the Query Tool where shortcut keys could be ignored following a query error.
|
||||
| `Issue #3999 <https://redmine.postgresql.org/issues/3999>`_ - Fix the toggle case shortcut key combination.
|
||||
| `Issue #4171 <https://redmine.postgresql.org/issues/4171>`_ - Fix an issue where a black arrow-kind image is displaying at the background of browser tree images.
|
||||
| `Issue #4191 <https://redmine.postgresql.org/issues/4191>`_ - Ensure comments are shown in reverse engineered SQL for table partitions.
|
||||
| `Issue #4242 <https://redmine.postgresql.org/issues/4242>`_ - Handle NULL values appropriately when sorting backgrid tables.
|
||||
| `Issue #4341 <https://redmine.postgresql.org/issues/4341>`_ - Give appropriate error messages when the user tries to use an blank master password.
|
||||
|
@ -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
|
||||
|
@ -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",
|
||||
|
@ -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)
|
||||
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
20
web/pgadmin/browser/static/img/drop_cascade.svg
Normal file
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 16 16" style="enable-background:new 0 0 16 16;" xml:space="preserve">
|
||||
<g>
|
||||
<polygon points="15,9 13.6,10.4 13.6,3.9 12.4,3.9 12.4,10.4 11,9 10.2,9.8 13,12.6 15.8,9.8 "/>
|
||||
<path d="M9.8,4.2H7.6L7.2,3C7.1,2.8,7,2.7,6.8,2.6C6.6,2.5,6.4,2.4,6.2,2.4H3.9c-0.2,0-0.4,0.1-0.5,0.2C3.2,2.7,3.1,2.9,3,3.1
|
||||
L2.5,4.3H0.3c-0.1,0-0.1,0-0.2,0.1S0.1,4.5,0.1,4.5v0.4c0,0.1,0,0.1,0.1,0.2s0.1,0.1,0.2,0.1H1v6.7c0,0.4,0.1,0.7,0.4,1
|
||||
c0.2,0.2,0.5,0.4,0.8,0.4h5.8c0.3,0,0.6-0.1,0.8-0.4c0.2-0.3,0.4-0.6,0.4-1V5.1h0.7c0.1,0,0.1,0,0.2-0.1C10,5,10,4.9,10,4.9V4.5
|
||||
c0.1-0.1,0-0.1,0-0.2C9.9,4.2,9.9,4.2,9.8,4.2z M3.8,3.4C3.9,3.3,3.9,3.3,4,3.3h2.2c0.1,0,0.1,0.1,0.1,0.1l0.4,0.8H3.5L3.8,3.4z
|
||||
M8.2,12.1c-0.1,0.1-0.1,0.2-0.1,0.2C8,12.3,8,12.3,8,12.3H2.1c0,0-0.1,0-0.1-0.1C2,12.2,2,12.2,1.9,12.1c-0.1-0.1-0.1-0.2-0.1-0.3
|
||||
V5.1h6.3v6.7h0.1C8.2,11.9,8.2,12,8.2,12.1z"/>
|
||||
<path d="M7,6.4H6.6c-0.1,0-0.1,0-0.2,0.1S6.4,6.6,6.4,6.7v4c0,0.1,0,0.1,0.1,0.2S6.6,11,6.6,11H7c0.1,0,0.1,0,0.2-0.1
|
||||
c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C7.2,6.4,7.1,6.4,7,6.4z"/>
|
||||
<path d="M3.4,6.4H3c-0.1,0-0.1,0-0.2,0.1C2.8,6.6,2.8,6.6,2.8,6.7v4c0,0.1,0,0.1,0.1,0.2C2.9,11,2.9,11,3,11h0.4
|
||||
c0.1,0,0.1,0,0.2-0.1c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C3.5,6.4,3.5,6.4,3.4,6.4z"/>
|
||||
<path d="M5.2,6.4H4.8c-0.1,0-0.1,0-0.2,0.1S4.6,6.6,4.6,6.7v4c0,0.1,0,0.1,0.1,0.2S4.8,11,4.8,11h0.4c0.1,0,0.1,0,0.2-0.1
|
||||
c0.1-0.1,0.1-0.1,0.1-0.2v-4c0-0.1,0-0.1-0.1-0.2C5.4,6.4,5.3,6.4,5.2,6.4z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.7 KiB |
@ -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',() => {
|
||||
|
@ -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,
|
||||
},
|
||||
];
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -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:
|
||||
|
@ -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 {
|
||||
|
@ -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;
|
||||
|
@ -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;
|
||||
|
@ -1350,7 +1350,7 @@ define('pgadmin.misc.explain', [
|
||||
|
||||
// Main div to be drawn all images on
|
||||
var planDiv = $('<div></div>', {
|
||||
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 = $('<div></div>', {
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;}
|
||||
</style>
|
||||
<g>
|
||||
<g>
|
||||
<line class="st0" x1="25.7" y1="22.4" x2="25.7" y2="9.4"/>
|
||||
<polyline class="st0" points="29.7,18.6 25.7,22.6 21.7,18.6 "/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M18.7,10.1C18.6,10,18.5,10,18.4,10h-3.6l-0.8-2c-0.1-0.3-0.3-0.5-0.6-0.7C13,7.1,12.7,7,12.4,7H8.6C8.3,7,8,7.1,7.7,7.3
|
||||
C7.4,7.5,7.2,7.8,7.1,8.1l-0.8,2H2.6c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v0.7c0,0.1,0,0.2,0.1,0.3
|
||||
c0.1,0.1,0.2,0.1,0.3,0.1h1.1v11.1c0,0.6,0.2,1.2,0.6,1.7C4.7,24.8,5.1,25,5.6,25h9.7c0.5,0,1-0.2,1.3-0.7c0.4-0.5,0.6-1,0.6-1.7
|
||||
V11.5h1.1c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-0.7C18.8,10.3,18.7,10.2,18.7,10.1z M8.5,8.6c0.1-0.1,0.1-0.1,0.2-0.1
|
||||
h3.7c0.1,0,0.1,0.1,0.2,0.1l0.6,1.4H7.9L8.5,8.6z M15.8,22.6c0,0.2,0,0.3-0.1,0.5c-0.1,0.1-0.1,0.3-0.2,0.3
|
||||
c-0.1,0.1-0.1,0.1-0.1,0.1H5.6c0,0-0.1,0-0.1-0.1c-0.1-0.1-0.1-0.2-0.2-0.3c-0.1-0.1-0.1-0.3-0.1-0.5V11.5h10.5V22.6z"/>
|
||||
<path d="M13.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1h-0.7
|
||||
c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C12.9,21.2,13,21.2,13.1,21.2z"/>
|
||||
<path d="M7.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1H7.1
|
||||
c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C6.9,21.2,7,21.2,7.1,21.2z"/>
|
||||
<path d="M10.1,21.2h0.7c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-6.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.1-0.2-0.1-0.3-0.1h-0.7
|
||||
c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v6.7c0,0.1,0,0.2,0.1,0.3C9.9,21.2,10,21.2,10.1,21.2z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.7 KiB |
18
web/pgadmin/static/img/loader-small.svg
Normal file
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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">
|
||||
<style type="text/css">
|
||||
.st0{fill:none;stroke:#EBEEF3;stroke-width:5;}
|
||||
.st1{fill:none;stroke:#326690;stroke-width:5;}
|
||||
</style>
|
||||
<g>
|
||||
<g transform="translate(1 1)">
|
||||
<circle class="st0" cx="18" cy="18" r="16"/>
|
||||
<path class="st1" d="M34,18c0-8.8-7.2-16-16-16 ">
|
||||
<animateTransform 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">
|
||||
</animateTransform>
|
||||
</path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 874 B |
@ -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) { %>',
|
||||
' <span class="<%=Backform.helpMessageClassName%>"><%=helpMessage%></span>',
|
||||
' <% } %>',
|
||||
' <% for (var i=0; i < options.length; i++) {%>',
|
||||
' <% var option = options[i]; %>',
|
||||
' <% if (option.preview_src && option.value === rawValue) { %>',
|
||||
' <div class="preview-img mt-2">',
|
||||
' <img src="<%=option.preview_src%>" class="img-fluid mx-auto d-block w-50 border" alt="'+gettext('Preview not available...')+'">',
|
||||
' </div>',
|
||||
' <%}%>',
|
||||
' <%}%>',
|
||||
'</div>',
|
||||
].join('\n')),
|
||||
render: function() {
|
||||
|
@ -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');
|
||||
}
|
||||
});
|
||||
},
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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 {
|
||||
|
@ -1,6 +1,3 @@
|
||||
@import './resources/pgadmin.resources.scss';
|
||||
|
||||
|
||||
$theme-colors: (
|
||||
"primary": $color-primary,
|
||||
"danger": $color-danger,
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
|
@ -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;
|
@ -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;
|
||||
}
|
73
web/pgadmin/static/scss/resources/dark/_theme.variables.scss
Normal file
@ -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;
|
BIN
web/pgadmin/static/scss/resources/dark/dark_preview.png
Normal file
After Width: | Height: | Size: 54 KiB |
@ -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';
|
||||
|
BIN
web/pgadmin/static/scss/resources/standard_preview.png
Normal file
After Width: | Height: | Size: 33 KiB |
@ -20,7 +20,8 @@
|
||||
|
||||
<!-- Base template stylesheets -->
|
||||
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/style.css')}}"/>
|
||||
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.css')}}"/>
|
||||
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='js/generated/pgadmin.style.css')}}"/>
|
||||
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename=('js/generated/'+get_theme_css())) }}"/>
|
||||
|
||||
<!--View specified stylesheets-->
|
||||
{% block css_link %}{% endblock %}
|
||||
|
@ -49,7 +49,7 @@
|
||||
title=""
|
||||
accesskey=""
|
||||
tabindex="0" disabled>
|
||||
<i class="icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
|
||||
<i class="pg-font-icon icon-save-data-changes sql-icon-lg" aria-hidden="true"></i>
|
||||
</button>
|
||||
</div>
|
||||
<div class="btn-group mr-1" role="group" aria-label="">
|
||||
@ -324,12 +324,12 @@
|
||||
title=""
|
||||
accesskey=""
|
||||
tabindex="0" disabled>
|
||||
<i class="icon-commit sql-icon-lg" aria-hidden="true"></i>
|
||||
<i class="pg-font-icon icon-commit sql-icon-lg" aria-hidden="true"></i>
|
||||
</button>
|
||||
<button id="btn-rollback" type="button" class="btn btn-sm btn-secondary"
|
||||
title=""
|
||||
tabindex="0" disabled>
|
||||
<i class="icon-rollback sql-icon-lg" aria-hidden="true"></i>
|
||||
<i class="pg-font-icon icon-rollback sql-icon-lg" aria-hidden="true"></i>
|
||||
</button>
|
||||
</div>
|
||||
<div class="btn-group mr-1" role="group" aria-label="">
|
||||
@ -370,7 +370,7 @@
|
||||
data-panel-visible="visible"
|
||||
accesskey=""
|
||||
tabindex="0">
|
||||
<i class="fa-custom fa-query-tool-disconnected obtaining-conn" aria-hidden="true"
|
||||
<i class="pg-font-icon icon-query-tool-disconnected obtaining-conn d-flex m-auto" aria-hidden="true"
|
||||
title="">
|
||||
</i>
|
||||
</div>
|
||||
@ -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 %}
|
||||
|
@ -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 {
|
||||
|
@ -1 +1,22 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>commit</title><path class="cls-1" d="M51.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q54.2,29.85,51.89,28.51Z"/><path class="cls-1" d="M36.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,36.92,51.56Z"/><path class="cls-1" d="M36.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,46.89,42,49.11,49.11,0,0,1,36.92,42.92Z"/><path class="cls-1" d="M25.67,12.44a11.28,11.28,0,0,1,4.23.8,11.13,11.13,0,0,1,3.6,2.28l-3.08,3.1a1.29,1.29,0,0,0-.31,1.56,1.33,1.33,0,0,0,1.32.9H41.51a1.43,1.43,0,0,0,1-.43,1.4,1.4,0,0,0,.42-1V9.56a1.34,1.34,0,0,0-.9-1.33,1.28,1.28,0,0,0-1.55.31l-2.92,2.91a17.34,17.34,0,0,0-5.51-3.52A17,17,0,0,0,19,8.05a19.15,19.15,0,0,0-3,1.6h0c-.43.3-.85.61-1.25.94l-.4.34h0a16.91,16.91,0,0,0-4.49,6,.8.8,0,0,0,0,.53.65.65,0,0,0,.31.39L14,20a.82.82,0,0,0,.6.05.72.72,0,0,0,.42-.4,11.46,11.46,0,0,1,1.12-2.11h0l.39-.54.24-.3c.18-.22.37-.44.57-.65L17.4,16l.45-.44.09-.09c.16-.15.33-.29.5-.43l.27-.2.21-.16a11.84,11.84,0,0,1,2.29-1.28A11.12,11.12,0,0,1,25.67,12.44Z"/></svg>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 877.4 1000" style="enable-background:new 0 0 877.4 1000;" xml:space="preserve">
|
||||
<title>commit</title>
|
||||
<path d="M877.4,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7c-56.5,10.5-113.9,15.6-171.4,15.2
|
||||
c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
|
||||
c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
|
||||
C862.4,449,877.4,468,877.4,488.3z M535.7,887c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
|
||||
c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
|
||||
c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
|
||||
C667.5,881,601.6,887.4,535.7,887z M535.7,716.3c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
|
||||
c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
|
||||
c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
|
||||
C668,710.8,601.9,716.9,535.7,716.3z M313.4,113.7c28.6-0.1,57,5.2,83.6,15.8c26.4,10.3,50.6,25.6,71.2,45.1l-60.9,61.3
|
||||
c-8.9,7.6-11.4,20.4-6.1,30.8c3.8,11.1,14.4,18.3,26.1,17.8h199.2c7.5-0.1,14.6-3.2,19.8-8.5c5.3-5.2,8.3-12.3,8.3-19.8V56.8
|
||||
c0.6-11.7-6.7-22.4-17.8-26.3c-10.4-5.3-23.1-2.7-30.6,6.1l-57.7,57.5C516.9,64.2,480,40.6,439.6,24.5C356.6-9,263.8-8.1,181.5,26.9
|
||||
c-20.7,8.8-40.5,19.3-59.3,31.6l0,0c-8.5,5.9-16.8,12.1-24.7,18.6l-7.9,6.7l0,0c-38.1,32.4-68.4,72.9-88.7,118.6
|
||||
c-1.2,3.4-1.2,7.1,0,10.5c0.9,3.3,3.1,6.1,6.1,7.7l75.7,42.5c3.7,1.8,7.9,2.2,11.9,1c3.8-1.4,6.8-4.2,8.3-7.9
|
||||
c5.9-14.6,13.3-28.6,22.1-41.7l0,0l7.7-10.7l4.7-5.9c3.6-4.3,7.3-8.7,11.3-12.8l1.2-1l8.9-8.7l1.8-1.8c3.2-3,6.5-5.7,9.9-8.5l5.3-4
|
||||
l4.2-3.2c14.1-10.1,29.3-18.6,45.3-25.3C253,120.3,283,113.9,313.4,113.7z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.2 KiB |
@ -1 +1,23 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#2c76b4;}</style></defs><title>connect</title><path class="cls-1" d="M21.27,4.25c.12-.12.12-.18,0-.29-.32-.3-.63-.61-.92-.93-.12-.13-.19-.13-.31,0-.69.71-1.4,1.4-2.1,2.11L17.7,4.9a4.22,4.22,0,0,0-5.26-.82,9.75,9.75,0,0,0-1.69,1.46l-.58.55c-.18-.18-.36-.35-.53-.53s-.14-.1-.23,0c-.31.33-.63.65-1,1-.12.12-.13.18,0,.3.69.67,1.36,1.37,2.05,2,.15.14.13.21,0,.34l-2.05,2c-.12.12-.12.18,0,.29.32.3.63.61.92.93.12.13.19.13.31,0l2-2.05c.12-.13.19-.15.33,0,.61.63,1.24,1.25,1.87,1.87.13.12.12.19,0,.31l-2.07,2.06c-.11.11-.13.17,0,.29q.47.44.91.91c.13.14.2.16.35,0,.67-.69,1.36-1.36,2-2.05.12-.13.19-.12.31,0l2.08,2.09c.09.1.15.12.25,0,.32-.34.66-.67,1-1,.1-.1.07-.15,0-.23l-.61-.6c.48-.45,1-.86,1.41-1.32a4.13,4.13,0,0,0,1.2-3.67,4,4,0,0,0-1.42-2.55c-.14-.12-.14-.19,0-.32C20,5.56,20.61,4.9,21.27,4.25Zm-3.05,7.41c-.43.39-.81.83-1.2,1.23L11.37,7.25l1.42-1.34a2.52,2.52,0,0,1,3.48-.06C17,6.55,17.74,7.27,18.43,8A2.51,2.51,0,0,1,18.22,11.67Z"/><path class="cls-1" d="M15.52,17.16c-2-1.95-8-8-9-9C6.4,8,6.34,8,6.22,8.14c-.3.32-.62.64-.94.94-.11.11-.14.17,0,.28s.35.33.6.57c-.49.45-1,.88-1.42,1.34a4.16,4.16,0,0,0-1.12,4,4.37,4.37,0,0,0,1.33,2.22c.13.13.13.2,0,.33-.65.63-1.28,1.28-1.93,1.91-.13.13-.12.19,0,.31.32.3.62.61.92.92.11.12.18.12.29,0,.53-.55,1.07-1.08,1.62-1.62.15-.15.29-.42.47-.41s.31.25.47.39a4.21,4.21,0,0,0,5.81,0c.5-.47.94-1,1.43-1.53.25.26.43.44.6.63s.14.11.24,0c.3-.32.61-.63.93-.92C15.67,17.38,15.68,17.31,15.52,17.16Zm-3-.38c-.43.43-.84.87-1.27,1.29a2.53,2.53,0,0,1-3.74-.17c-.53-.57-1.1-1.11-1.66-1.64a2.58,2.58,0,0,1,0-3.93c.41-.41.79-.84,1.19-1.27l5.52,5.52C12.57,16.66,12.58,16.7,12.49,16.78Z"/></svg>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 1033.2 1000" style="enable-background:new 0 0 1033.2 1000;" xml:space="preserve">
|
||||
<title>connect</title>
|
||||
<path d="M1029.1,70.6c5.5-5.5,5.5-11.1,0-16.6c-16.6-11.1-38.8-33.2-55.4-49.9c-5.5-5.5-11.1-5.5-16.6,0
|
||||
c-38.8,38.8-77.6,77.6-116.3,116.3l-11.1-11.1C757.6,26.3,635.7,9.7,536,65.1c-33.2,22.2-66.5,49.9-94.2,83.1l-33.2,27.7
|
||||
c-5.5-11.1-16.6-22.2-27.7-27.7c-11.1-11.1-5.5-5.5-11.1,0c-16.6,16.6-33.2,33.2-55.4,55.4c-5.5,5.5-5.5,11.1,0,16.6
|
||||
C353.2,259,392,297.8,430.7,331c5.5,5.5,5.5,11.1,0,16.6l-83.1,77.6c-66.5-60.9-116.3-116.3-138.5-133c-5.5-11.1-11.1-11.1-16.6-5.5
|
||||
c-16.6,22.2-33.2,38.8-49.9,55.4c-5.5,5.5-5.5,11.1,0,16.6s16.6,16.6,33.2,33.2c-27.7,27.7-55.4,49.9-77.6,72
|
||||
c-60.9,55.4-83.1,144-60.9,221.6c11.1,49.9,38.8,88.6,72,121.9c5.5,5.5,5.5,11.1,0,16.6c-33.2,33.2-72,72-105.3,105.3
|
||||
c-5.5,5.5-5.5,11.1,0,16.6c16.6,16.6,33.2,33.2,49.9,49.9c5.5,5.5,11.1,5.5,16.6,0c27.7-27.7,60.9-60.9,88.6-88.6
|
||||
c5.5-5.5,16.6-22.2,27.7-22.2s16.6,11.1,27.7,22.2c88.6,88.6,232.7,88.6,321.3,0c27.7-27.7,49.9-55.4,77.6-83.1
|
||||
c11.1,16.6,22.2,22.2,33.2,33.2c11.1,11.1,5.5,5.5,11.1,0c16.6-16.6,33.2-33.2,49.9-49.9c5.5-5.5,11.1-11.1,0-16.6
|
||||
c-27.7-27.7-66.5-60.9-105.3-105.3c27.7-27.7,55.4-55.4,77.6-83.1c5.5-5.5,11.1-5.5,16.6,0L813,718.8c5.5,5.5,11.1,5.5,11.1,0
|
||||
c16.6-16.6,38.8-38.8,55.4-55.4c5.5-5.5,5.5-5.5,0-11.1l-27.7-38.8c27.7-22.2,55.4-49.9,77.6-72c55.4-49.9,77.6-127.4,66.5-205
|
||||
c-5.5-55.4-33.2-105.3-77.6-138.5c-5.5-5.5-5.5-11.1,0-16.6C957.1,148.2,990.3,109.4,1029.1,70.6z M541.6,768.7
|
||||
c-22.2,22.2-44.3,49.9-72,72c-55.4,55.4-144,55.4-199.4,0c-33.2-27.8-48.6-44.9-99.7-99.7c-57.2-53.5-66.5-144-16.6-199.4
|
||||
c5.5-5.5,11.1-11.1,16.6-16.6c22.2-22.2,44.3-44.3,66.5-72l304.7,304.7C547.1,763.2,547.1,763.2,541.6,768.7L541.6,768.7z
|
||||
M613.6,530.5L536,613.6c-38.8-38.8-83.1-83.1-121.9-121.9l77.6-83.1c5.5-5.5,11.1-11.1,16.6,0c33.2,33.2,66.5,66.5,105.3,105.3
|
||||
C624.7,524.9,624.7,524.9,613.6,530.5z M868.4,475.1l-5.5,5.5l0,0c-22.2,22.2-44.3,44.3-66.5,66.5L480.6,236.8l77.6-72
|
||||
c55.4-49.9,138.5-55.4,193.9-5.5c38.8,38.8,77.6,83.1,116.3,121.9C923.8,336.6,923.8,425.2,868.4,475.1z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.3 KiB |
@ -1 +1,24 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#d0021b;}</style></defs><title>disconnect</title><path class="cls-1" d="M22.49,2.73c.12-.11.12-.18,0-.29-.31-.3-.62-.6-.91-.91-.12-.13-.18-.13-.31,0-.68.69-1.37,1.38-2.07,2.07L19,3.36a4.15,4.15,0,0,0-5.18-.81A9.59,9.59,0,0,0,12.14,4l-.57.54c-.18-.17-.36-.34-.53-.52s-.13-.09-.22,0c-.31.32-.62.64-.95.94-.12.11-.13.18,0,.3.68.66,1.34,1.34,2,2,.14.14.12.21,0,.34l-2,2c-.12.11-.12.18,0,.29.31.29.62.6.91.91.12.13.18.12.3,0l2-2c.12-.13.19-.15.32,0,.6.62,1.22,1.23,1.84,1.84.12.12.12.18,0,.3l-2,2c-.11.11-.13.17,0,.29q.46.43.89.89c.13.13.2.15.34,0,.66-.68,1.34-1.34,2-2,.12-.13.18-.12.3,0l2,2.05c.09.09.14.11.24,0,.32-.33.65-.66,1-1,.1-.09.07-.14,0-.22l-.6-.59c.47-.44.95-.85,1.38-1.3A4.06,4.06,0,0,0,22,7.47,4,4,0,0,0,20.56,5c-.14-.12-.14-.18,0-.31C21.2,4,21.84,3.36,22.49,2.73Zm-3,7.29c-.42.38-.8.81-1.18,1.21L12.75,5.68l1.39-1.32a2.48,2.48,0,0,1,3.42-.06C18.3,5,19,5.7,19.69,6.44A2.47,2.47,0,0,1,19.48,10Z"/><path class="cls-1" d="M14.1,18.75c-1.93-1.92-7.84-7.83-8.87-8.87-.11-.11-.16-.13-.28,0-.3.32-.61.63-.93.93-.11.1-.14.17,0,.28s.35.33.59.56c-.48.45-1,.86-1.4,1.32a4.09,4.09,0,0,0-1.1,3.93,4.3,4.3,0,0,0,1.31,2.19c.13.13.13.2,0,.33-.64.62-1.26,1.26-1.9,1.88-.13.12-.12.19,0,.3.31.29.61.6.91.91.11.12.17.12.29,0,.52-.54,1.06-1.07,1.59-1.59.15-.15.28-.41.46-.41s.31.24.46.38a4.14,4.14,0,0,0,5.72,0c.5-.46.92-1,1.4-1.51.25.26.42.43.59.62s.14.11.24,0c.3-.31.6-.62.91-.91C14.24,19,14.25,18.9,14.1,18.75Zm-3-.37c-.42.42-.82.86-1.25,1.27a2.49,2.49,0,0,1-3.68-.17c-.52-.56-1.08-1.09-1.64-1.62a2.54,2.54,0,0,1,0-3.87c.4-.4.78-.83,1.17-1.25l5.43,5.43C11.2,18.25,11.21,18.29,11.12,18.38Z"/></svg>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 995.3 1000" style="enable-background:new 0 0 995.3 1000;" xml:space="preserve">
|
||||
<title>disconnect</title>
|
||||
<path d="M991.7,60.3c4.7-4.7,4.7-9.5,0-14.2c-14.2-14.2-28.4-28.4-42.6-42.6c-4.7-4.7-9.5-4.7-14.2,0
|
||||
c-33.1,33.1-66.2,66.2-99.3,99.3l-9.5-9.5C764.8,22.5,660.8,8.3,580.4,55.6C552,74.5,523.6,98.1,500,121.7l-28.4,23.6
|
||||
c-4.7-4.7-14.2-14.2-23.6-23.6c-9.5-9.5-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-47.3,42.6c-4.7,4.7-4.7,9.5,0,14.2
|
||||
c33.1,33.1,61.5,61.5,94.6,94.6c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6
|
||||
c4.7,4.7,9.5,4.7,14.2,0l94.6-94.6c4.7-4.7,9.5-9.5,14.2,0c28.4,28.4,56.7,56.7,85.1,85.1c4.7,4.7,4.7,9.5,0,14.2l-94.6,94.6
|
||||
c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0c33.1-33.1,61.5-61.5,94.6-94.6
|
||||
c4.7-4.7,9.5-4.7,14.2,0l94.6,94.6c4.7,4.7,4.7,4.7,9.5,0c14.2-14.2,28.4-33.1,47.3-47.3c4.7-4.7,4.7-4.7,0-9.5l-28.4-28.4
|
||||
c23.6-18.9,47.3-37.8,66.2-61.5c47.3-42.6,66.2-108.7,56.7-170.2c-9.5-47.3-33.1-89.8-66.2-118.2c-4.7-4.7-4.7-9.5,0-14.2
|
||||
C930.3,121.7,958.6,93.4,991.7,60.3z M854.6,400.7C849.9,405.4,849.9,405.4,854.6,400.7L854.6,400.7c-23.6,23.6-42.6,42.6-56.7,61.5
|
||||
l-264.8-260l66.2-61.5c42.6-42.6,113.5-47.3,160.8-4.7c33.1,33.1,66.2,66.2,99.3,99.3C901.9,282.5,901.9,358.2,854.6,400.7z
|
||||
M173.8,400.7c-4.7-4.7-4.7-4.7-9.5,0c-14.2,14.2-28.4,28.4-42.6,42.6c-4.7,4.7-4.7,9.5,0,14.2s14.2,14.2,28.4,28.4
|
||||
c-23.6,23.6-47.3,42.6-66.2,61.5c-47.3,47.3-70.9,118.2-52,184.4c9.5,37.8,33.1,75.7,61.5,104c4.7,4.7,4.7,9.5,0,14.2
|
||||
C65,878.3,31.9,911.3,3.5,939.7c-4.7,4.7-4.7,9.5,0,14.2c14.2,14.2,28.4,28.4,42.6,42.6c4.7,4.7,9.5,4.7,14.2,0
|
||||
c23.6-23.6,52-52,75.7-75.7c9.5-9.5,14.2-18.9,23.6-18.9c9.5,0,14.2,9.5,23.6,18.9c75.7,70.9,193.9,70.9,269.5,0
|
||||
c23.6-23.6,42.6-47.3,66.2-70.9c9.5,14.2,18.9,18.9,28.4,28.4c9.5,9.5,4.7,4.7,9.5,0c14.2-14.2,28.4-28.4,42.6-42.6
|
||||
c4.7-4.7,9.5-9.5,0-14.2C504.7,727,225.8,448,173.8,400.7z M452.7,802.6L452.7,802.6c-18.9,18.9-37.8,42.6-61.5,61.5
|
||||
c-47.3,47.3-118.2,47.3-165.5,0c-4.7-4.7-4.7-4.7-9.5-9.5c-23.6-28.4-52-52-75.7-75.7c-52-42.6-56.7-118.2-14.2-170.2
|
||||
c4.7-4.7,9.5-9.5,14.2-14.2c18.9-18.9,37.8-37.8,56.7-56.7l255.3,255.3C457.4,793.1,457.4,797.9,452.7,802.6z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.4 KiB |
@ -1 +1,22 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><defs><style>.cls-1{fill:#222222;}</style></defs><title>rollback</title><path class="cls-1" d="M53.89,28.51a21.22,21.22,0,0,0-6.3-2.1,45.22,45.22,0,0,0-8.67-.78,45.12,45.12,0,0,0-8.66.78,21.22,21.22,0,0,0-6.3,2.1c-1.54.89-2.32,1.85-2.32,2.88v2.88c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V31.39Q56.2,29.85,53.89,28.51Z"/><path class="cls-1" d="M38.92,51.56a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V47.74a19.67,19.67,0,0,1-7.31,2.86A49.11,49.11,0,0,1,38.92,51.56Z"/><path class="cls-1" d="M38.92,42.92a49.08,49.08,0,0,1-10-1,19.79,19.79,0,0,1-7.32-2.86v3.82c0,1,.78,2,2.32,2.88a20.92,20.92,0,0,0,6.3,2.11,46,46,0,0,0,8.66.77,46.07,46.07,0,0,0,8.67-.77,20.92,20.92,0,0,0,6.3-2.11q2.31-1.32,2.31-2.88V39.1A19.67,19.67,0,0,1,48.89,42,49.11,49.11,0,0,1,38.92,42.92Z"/><path class="cls-1" d="M25.08,12.44a11.28,11.28,0,0,0-4.23.8,11.13,11.13,0,0,0-3.6,2.28l3.08,3.1a1.29,1.29,0,0,1,.31,1.56,1.33,1.33,0,0,1-1.32.9H9.24a1.43,1.43,0,0,1-1-.43,1.4,1.4,0,0,1-.42-1V9.56a1.34,1.34,0,0,1,.9-1.33,1.28,1.28,0,0,1,1.55.31l2.92,2.91a17.34,17.34,0,0,1,5.51-3.52,17,17,0,0,1,13.1.12,19.15,19.15,0,0,1,3,1.6h0c.43.3.85.61,1.25.94l.4.34h0a16.91,16.91,0,0,1,4.49,6,.8.8,0,0,1,0,.53.65.65,0,0,1-.31.39L36.8,20a.82.82,0,0,1-.6.05.72.72,0,0,1-.42-.4,11.46,11.46,0,0,0-1.12-2.11h0q-.19-.28-.39-.54l-.24-.3c-.18-.22-.37-.44-.57-.65L33.35,16l-.45-.44-.09-.09c-.16-.15-.33-.29-.5-.43l-.27-.2-.21-.16a11.84,11.84,0,0,0-2.29-1.28A11.12,11.12,0,0,0,25.08,12.44Z"/></svg>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg 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 956.7 1000" style="enable-background:new 0 0 956.7 1000;" xml:space="preserve">
|
||||
<title>rollback</title>
|
||||
<path d="M956.7,488.3v56.9c0,20.6-15.2,39.5-45.7,56.9c-39,20.4-81.1,34.5-124.5,41.7C730,654.3,672.6,659.4,615.1,659
|
||||
c-57.4,0.3-114.7-4.8-171.2-15.2c-43.2-7.3-85-21.3-123.7-41.7c-30.4-17.4-45.9-36.4-45.9-56.9v-56.9c0-19.8,15.4-39.5,45.9-56.9
|
||||
c39.1-20.3,81.1-34.3,124.5-41.5c56.4-10.6,113.7-15.8,171.2-15.4c57.5-0.4,114.9,4.8,171.4,15.4c43.4,7.2,85.4,21.2,124.5,41.5
|
||||
C941.7,449,956.7,468,956.7,488.3z M615.1,886.9c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
|
||||
c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
|
||||
c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.9,28.4-93,47.6-144.5,56.5
|
||||
C746.8,880.9,681,887.3,615.1,886.9z M615.1,716.2c-66.4,0.2-132.6-6.4-197.7-19.8c-51.5-9-100.7-28.2-144.7-56.5v75.5
|
||||
c0,19.8,15.4,39.5,45.9,56.9c39,20.4,81.1,34.5,124.5,41.7c56.4,10.5,113.8,15.6,171.2,15.2c57.5,0.3,114.9-4.7,171.4-15.2
|
||||
c43.5-7.2,85.5-21.3,124.5-41.7c30.4-17.4,45.7-36.4,45.7-56.9v-74.7c-43.6,28.5-92.4,48-143.7,57.3
|
||||
C747.3,710.7,681.3,716.8,615.1,716.2z M429.7,131.7c16,6.7,31.2,15.2,45.3,25.3l4.2,3.2l5.3,4c3.4,2.8,6.7,5.5,9.9,8.5l1.8,1.8
|
||||
l8.9,8.7l2.2,2.4c4,4.2,7.7,8.5,11.3,12.8l4.7,5.9c2.5,3.4,5.1,7,7.7,10.7l0,0c8.8,13.1,16.2,27.1,22.1,41.7
|
||||
c1.5,3.7,4.5,6.6,8.3,7.9c3.9,1.2,8.2,0.8,11.9-1l75.1-42.7c3-1.7,5.2-4.4,6.1-7.7c1.2-3.4,1.2-7.1,0-10.5
|
||||
c-20.3-45.7-50.7-86.2-88.7-118.6l0,0l-7.9-6.7c-7.9-6.5-16.2-12.6-24.7-18.6l0,0c-18.8-12.3-38.6-22.9-59.3-31.6
|
||||
C391.3-8.2,298-9.1,214.9,24.8C174.5,40.8,137.5,64.5,106,94.3L48.5,36.6c-7.6-8.9-20.2-11.4-30.6-6.1C6.7,34.3-0.5,45.1,0,56.8V256
|
||||
c0,7.4,3,14.6,8.3,19.8c5.2,5.3,12.3,8.4,19.8,8.5h199.6c11.7,0.5,22.3-6.7,26.1-17.8c5.3-10.5,2.8-23.2-6.1-30.8l-60.9-61.3
|
||||
c20.6-19.5,44.8-34.8,71.2-45.1c26.6-10.6,55-16,83.6-15.8C371.9,113.4,401.9,119.6,429.7,131.7z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 2.7 KiB |
@ -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;
|
||||
|
@ -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%;
|
||||
}
|
||||
|
@ -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<webpackShimConfig.css_bundle_include.length; i++) {
|
||||
pgadminStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
|
||||
if(webpackShimConfig.css_bundle_include[i].endsWith('.scss')) {
|
||||
pgadminScssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
|
||||
} else if(webpackShimConfig.css_bundle_include[i].endsWith('.css')){
|
||||
pgadminCssStyles.push(path.join(__dirname, webpackShimConfig.css_bundle_include[i]));
|
||||
}
|
||||
}
|
||||
pushModulesCss(path.join(__dirname,'./pgadmin'), pgadminStyles);
|
||||
|
||||
module.exports = {
|
||||
pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminScssStyles, '.scss');
|
||||
pushModulesStyles(path.join(__dirname,'./pgadmin'), pgadminCssStyles, '.css');
|
||||
|
||||
/* Get all the themes */
|
||||
|
||||
let all_themes_dir = path.join(__dirname,'./pgadmin/static/scss/resources');
|
||||
let pgadminThemes = {};
|
||||
/* Read all the theme dirs */
|
||||
/* Theme format
|
||||
"theme_name": {
|
||||
"disp_name": "theme_name",
|
||||
"cssfile": "pgadmin.theme.theme_name",
|
||||
"preview_img": "theme_name_preview.png"
|
||||
}
|
||||
*/
|
||||
fs.readdirSync(all_themes_dir).map(function(curr_dir) {
|
||||
let stats = fs.statSync(path.join(all_themes_dir, curr_dir));
|
||||
|
||||
if(stats.isDirectory()) {
|
||||
/* Theme directory found */
|
||||
let cssfile = 'pgadmin.theme.'+curr_dir;
|
||||
pgadminThemes[curr_dir] = {
|
||||
/* For now lets keep it as beta release */
|
||||
disp_name: curr_dir + '_(Beta)',
|
||||
cssfile: cssfile,
|
||||
preview_img: curr_dir + '_preview.png',
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
fs.writeFileSync(pgadminThemesJson, JSON.stringify(pgadminThemes, null, 4));
|
||||
|
||||
var themeCssRules = function(theme_name) {
|
||||
return [{
|
||||
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: 'postcss-loader',
|
||||
options: {
|
||||
plugins: (loader) => [
|
||||
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);
|
||||
|
295
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"
|
||||
|