💥 feat(登录、样式): node-sass换sass、适配解决flex样式问题、新增绿色登录页、新增三种主题配色选择、

This commit is contained in:
fhysy 2024-06-17 17:38:51 +08:00
parent 2380b7f16b
commit 83efcfefe5
38 changed files with 814 additions and 531 deletions

View File

@ -21,4 +21,4 @@ port= 9988
// 测试端
// target = http://192.168.10.241:32024
// 开发端
target = http://192.168.10.241:30646
target = http://192.168.1.17:8899

View File

@ -55,10 +55,10 @@
"js-md5": "^0.7.3",
"jsencrypt": "3.0.0-rc.1",
"moment": "^2.29.4",
"node-sass": "^4.9.0",
"nprogress": "0.2.0",
"qrcodejs2": "^0.0.2",
"quill": "1.3.7",
"sass": "1.32.12",
"sass-loader": "^7.0.1",
"save": "^2.5.0",
"screenfull": "5.0.2",
@ -84,7 +84,6 @@
"eslint": "7.15.0",
"eslint-plugin-vue": "7.2.0",
"lint-staged": "10.5.3",
"node-sass": "^4.9.0",
"runjs": "4.4.2",
"sass-loader": "^7.0.1",
"script-ext-html-webpack-plugin": "2.1.5",

View File

@ -19,7 +19,7 @@
<script src="https://webapi.amap.com/maps?v=1.4.15&key=4b483d227a9c7dd12e46faae5a8c8af8&plugin=AMap.PlaceSearch"></script>
<script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script>
<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=4b483d227a9c7dd12e46faae5a8c8af8&plugin=AMap.Geocoder"></script>
<script type="text/javascript" src="<%= BASE_URL %>cdn/js/jessibuca/jessibuca.js"></script>
<!-- <script type="text/javascript" src="<%= BASE_URL %>cdn/js/jessibuca/jessibuca.js"></script>-->
<script src="<%= BASE_URL %>cdn/js/liveplayer/liveplayer-lib.min.js"></script>
<title><%= webpackConfig.name %></title>
<style>
@ -208,6 +208,8 @@
opacity: 0.5;
}
</style>
<!-- 全局系统配置(区分系统) -->
<script src="./systenConfig.js"></script>
</head>
<body>
<div id="app">

3
public/systenConfig.js Normal file
View File

@ -0,0 +1,3 @@
window._SYSTEMCONFIG = {}
window._SYSTEMCONFIG['logoURL'] = '@/assets/logo/drgy/logo.png'
window._SYSTEMCONFIG['systemName'] = '数字用电管理系统'

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -5,6 +5,7 @@
@import './sidebar.scss';
@import './btn.scss';
@import './e-custom-style.scss';
@import "./theme.scss";
body {
height: 100%;

View File

@ -87,7 +87,7 @@
& .nest-menu .el-submenu>.el-submenu__title,
& .el-submenu .el-menu-item {
min-width: $sideBarWidth !important;
background-color: $subMenuBg !important;
//background-color: $subMenuBg !important;
&:hover {
background-color: rgba(0, 0, 0, 0.06) !important;
@ -115,6 +115,19 @@
background-color: $subMenuHover !important;
}
}
//& .theme-Green .is-active > .el-submenu__title {
// color: $menuGreenHover !important;
//}
//
& .theme-Green .nest-menu .el-submenu>.el-submenu__title,
& .theme-Green .el-submenu .el-menu-item {
background-color: $menuGreenBg !important;
&:hover {
background-color: $menuGreenActiveHover !important;
}
}
}
.hideSidebar {

View File

@ -0,0 +1,187 @@
//theme-green主题
.theme-green{
//logo
.sidebar-logo-container{
background: $menuGreenLogoBg !important;
}
.sidebar-title{
color: $menuGreenLogoColor !important;
}
.sidebar-container{
background-color: $menuGreenBg !important;
.el-submenu>.el-submenu__title{
background-color: $menuGreenBg !important;
color: $sidebarGreenTitle !important;
&:hover{
background: $menuGreenActiveHover !important;
}
}
.el-menu,.el-menu-item{
background-color: $menuGreenBg !important;
color: $sidebarGreenTitle !important;
&:hover{
background: $menuGreenActiveHover !important;
}
}
.el-submenu.is-active>.el-submenu__title,.el-submenu.is-active .el-menu-item{
background-color: $menuGreenLogoBg !important;
}
.el-submenu.is-active>.el-submenu__title{
background-color: $menuGreenActive !important;
color: $menuGreenActiveTxt !important;
}
.el-submenu.is-active .el-menu-item.is-active{
background: $menuGreenActive !important;
color: $menuGreenActiveTxt !important;
}
}
.router-link-active>.is-active{
color: $menuGreenActiveTxt !important;
background: $menuGreenActive !important;
}
//右上角颜色
.right-menu-item{
color: $menuGreenBg !important;
}
//tag样式
.tags-view-container .tags-view-wrapper .tags-view-item.active{
background-color: $menuGreenBg !important;
}
}
//theme-blue-black主题
.theme-blue-black{
//logo
.sidebar-logo-container{
background: $menuBlueBlackLogoBg !important;
}
.sidebar-title{
color: $menuBlueBlackLogoColor !important;
}
.sidebar-container{
background-color: $menuBlueBlackBg !important;
.el-submenu>.el-submenu__title{
background-color: $menuBlueBlackBg !important;
color: $sidebarBlueBlackTitle !important;
&:hover{
color: $menuBlueBlackLogoColor !important;
background: $menuBlueBlackActiveHover !important;
}
}
.el-menu,.el-menu-item{
background-color: $menuBlueBlackBg !important;
color: $sidebarBlueBlackTitle !important;
&:hover{
color: $menuBlueBlackLogoColor !important;
background: $menuBlueBlackActiveHover !important;
}
}
.el-submenu.is-active>.el-submenu__title,.el-submenu.is-active .el-menu-item{
background-color: $menuBlueBlackActiveBg !important;
}
.el-submenu.is-active>.el-submenu__title{
color: $menuBlueBlackLogoColor !important;
}
.el-submenu.is-active .el-menu-item.is-active{
color: $menuBlueBlackLogoColor !important;
background: $menuBlueBlackActive !important;
}
}
.router-link-active>.is-active{
color: $menuBlueBlackLogoColor !important;
background: $menuBlueBlackActive !important;
}
//右上角颜色
.right-menu-item{
color: $menuBlueBlackLogoColor !important;
}
//tag样式
.tags-view-container .tags-view-wrapper .tags-view-item.active{
background-color: $menuBlueBlackLogoColor !important;
}
}
//theme-blue-white主题
.theme-blue-white{
//logo
.sidebar-logo-container{
background: $menuBlueWhiteLogoBg !important;
}
.sidebar-title{
color: $menuBlueWhiteLogoColor !important;
}
.sidebar-container{
background-color: $menuBlueWhiteBg !important;
.el-submenu>.el-submenu__title{
background-color: $menuBlueWhiteBg !important;
.svg-icon{
color: $sidebarBlueWhiteTitle !important;
}
//color: $sidebarBlueWhiteTitle !important;
&:hover{
color: $menuBlueWhiteBg !important;
background: $menuBlueWhiteActiveHover !important;
.svg-icon{
color: $menuBlueWhiteBg !important;
}
}
}
.el-menu,.el-menu-item{
background-color: $menuBlueWhiteBg !important;
.svg-icon{
color: $sidebarBlueWhiteTitle !important;
}
&:hover{
color: $menuBlueWhiteBg !important;
background: $menuBlueWhiteActiveHover !important;
//.svg-icon{
// color: $menuBlueWhiteText !important;
//}
}
}
.el-menu-item{
&:hover{
.svg-icon{
color: $menuBlueWhiteText !important;
}
}
}
.el-submenu.is-active .el-submenu__title{
color: $menuBlueWhiteBg !important;
background: $menuBlueWhiteHover !important;
.svg-icon{
color: $menuBlueWhiteText !important;
}
}
.el-submenu.is-active .el-menu-item.is-active{
color: $menuBlueWhiteBg !important;
background: $menuBlueWhiteHover !important;
.svg-icon{
color: $menuBlueWhiteText !important;
}
}
}
.router-link-active>.is-active{
color: $menuBlueWhiteBg !important;
background: $menuBlueWhiteHover !important;
.svg-icon{
color: $menuBlueWhiteText !important;
}
}
//右上角颜色
.right-menu-item{
color: $menuBlueWhiteLogoColor !important;
}
//tag样式
.tags-view-container .tags-view-wrapper .tags-view-item.active{
background-color: $menuBlueWhiteLogoColor !important;
}
}

View File

@ -21,10 +21,42 @@ $menuLightBg:#ffffff;
$menuLightHover:#f0f1f5;
$sidebarLightTitle: #001529;
$menuN1Text:#bfcbd9;
$menuN1Bg:#07204b;
$menuN1Hover:#051249;
$sidebarN1Title: #ffffff;
//theme-Green 样式
$menuGreenText:#ffffff;
$menuGreenLogoBg:#00a0a2;
$menuGreenLogoColor:#fff;
$menuGreenBg:#00a9ab;
$menuGreenHover:#55FDFF;
$menuGreenActive:#009698;
$menuGreenActiveTxt:#55FDFF;
$menuGreenActiveHover:#009fa1;
$sidebarGreenTitle: #ffffff;
//theme-blue-black样式
$menuBlueBlackText:#ffffff;
$menuBlueBlackLogoBg:#041a2f;
$menuBlueBlackLogoColor:#1890FF;
$menuBlueBlackBg:#041a2f;
$menuBlueBlackHover:#1d3144;
$menuBlueBlackActive:#1d3144;
$menuBlueBlackActiveBg:#11263a;
$menuBlueBlackActiveHover:#1d3144;
$sidebarBlueBlackTitle: #587A99;
//theme-blue-white样式
$menuBlueWhiteText:#ffffff;
$menuBlueWhiteLogoBg:#FFFFFF;
$menuBlueWhiteLogoColor:#0066CC;
$menuBlueWhiteBg:#FFFFFF;
$menuBlueWhiteHover:#0066cc;
$menuBlueWhiteActiveHover:#0066cc;
$sidebarBlueWhiteTitle: #0066CC;
$subMenuBg:#050d2f;
$subMenuHover:#003083;
@ -42,9 +74,15 @@ $sideBarWidth: 200px;
menuLightBg: $menuLightBg;
menuLightHover: $menuLightHover;
//
menuN1Text:$menuN1Text;
menuN1Bg:$menuN1Bg;
menuN1Hover:$menuN1Hover;
sidebarN1Title:$sidebarN1Title;
//绿色背景
menuGreenText:$menuGreenText;
menuGreenBg:$menuGreenBg;
menuGreenHover:$menuGreenHover;
sidebarGreenTitle:$sidebarGreenTitle;
//
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;

View File

@ -29,7 +29,8 @@ let httpProtocol = window.dasConfig.protocol ? window.dasConfig.protocol : 'http
if (env.NODE_ENV == 'development') {
flowIotUrl = 'http://127.0.0.1:1880/#flow/'
hrefHost = "power-tcore.histron.cn"
// hrefHost = "power-tcore.histron.cn"
hrefHost = "192.168.1.17"
} else if(env.NODE_ENV == 'production') {
// if (hrefHost.indexOf('.gkiiot.com') >= 0) {
// iotHost = 'iot.gkiiot.com'
@ -42,7 +43,7 @@ if (env.NODE_ENV == 'development') {
}
port = window.dasConfig.port ? ':' + window.dasConfig.port : '';
port = port + (window.dasConfig.prodApi ? window.dasConfig.prodApi : '')
} else if(env.NODE_ENV == 'test') {
}
sysWebSocket = sysWebSocket + hrefHost + port;

View File

@ -150,7 +150,7 @@ export default {
display: inline-block;
padding: 0 8px;
height: 100%;
font-size: 18px;
font-size: 16px;
color: #5a5e66;
vertical-align: text-bottom;

View File

@ -1,13 +1,13 @@
<template>
<div class="sidebar-logo-container" :class="{'collapse':collapse}" :style="{ backgroundColor: '#145178' }">
<div class="sidebar-logo-container" :class="{'collapse':collapse}">
<transition name="sidebarLogoFade">
<router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to="/">
<!-- <img v-if="logo" :src="logo" class="sidebar-logo"> -->
<h1 class="sidebar-title" :style="{ color: this.themeTextColor()}">{{ attribute }} </h1>
<h1 class="sidebar-title">{{ attribute }} </h1>
</router-link>
<router-link v-else key="expand" class="sidebar-logo-link" to="/">
<!-- <img v-if="logo" :src="logo" class="sidebar-logo"> -->
<h1 class="sidebar-title" :style="{ color: this.themeTextColor() }">{{ attribute }} </h1>
<h1 class="sidebar-title">{{ attribute }} </h1>
</router-link>
</transition>
</div>
@ -39,36 +39,43 @@ export default {
},
data() {
return {
title: '智慧能源综合管理系统',
title: '数字用电管理系统',
logo: logoImg
}
},
methods: {
themeMenuBg() {
switch (this.sideTheme) {
case "theme-dark":
return variables["menuBg"];
case "theme-light":
return variables["menuLightBg"];
case "theme-N1":
return variables["menuN1Bg"];
}
// switch (this.sideTheme) {
// case "theme-dark":
// return variables["menuBg"];
// case "theme-light":
// return variables["menuLightBg"];
// case "theme-N1":
// return variables["menuN1Bg"];
// case "theme-Green":
// return variables["menuGreenBg"];
// }
return variables[`menu${this.sideTheme.substring(6)}Bg`];
},
themeTextColor() {
switch (this.sideTheme) {
case "theme-dark":
return variables["sidebarTitle"];
case "theme-light":
return variables['sidebarLightTitle'];
case "theme-N1":
return variables["sidebarN1Title"];
}
// switch (this.sideTheme) {
// case "theme-dark":
// return variables["sidebarTitle"];
// case "theme-light":
// return variables['sidebarLightTitle'];
// case "theme-N1":
// return variables["sidebarN1Title"];
// case "theme-Green":
// return variables["sidebarGreenTitle"];
// }
return variables[`sidebar${this.sideTheme.substring(6)}Title`];
},
},
}
</script>
<style lang="scss" scoped>
@import "~@/assets/styles/variables.scss";
.sidebarLogoFade-enter-active {
transition: opacity 1.5s;
}
@ -83,7 +90,7 @@ export default {
width: 100%;
height: 50px;
line-height: 50px;
background: #2b2f3a;
//background: $menuGreenLogoBg;
text-align: center;
overflow: hidden;
@ -101,7 +108,7 @@ export default {
& .sidebar-title {
display: inline-block;
margin: 0;
color: #fff;
//color: $menuGreenLogoColor;
font-weight: 600;
line-height: 50px;
font-size: 16px;
@ -116,4 +123,9 @@ export default {
}
}
}
</style>
<style>
</style>

View File

@ -1,18 +1,13 @@
<template>
<div
:class="{ 'has-logo': showLogo }"
:style="{ backgroundColor: this.themeMenuBg() }"
>
<logo v-if="showLogo" :collapse="isCollapse" />
<el-scrollbar :class="settings.sideTheme" wrap-class="scrollbar-wrapper">
<el-scrollbar wrap-class="scrollbar-wrapper">
<el-menu
:default-active="activeMenu"
:collapse="isCollapse"
:background-color="this.themeMenuBg()"
:text-color="this.themeTextColor()
"
:unique-opened="true"
:active-text-color="settings.theme"
:collapse-transition="false"
mode="vertical"
>
@ -24,7 +19,7 @@
/>
</el-menu>
</el-scrollbar>
<logout />
<!-- <logout />-->
</div>
</template>
@ -61,25 +56,31 @@ export default {
},
methods: {
themeMenuBg() {
switch (this.settings.sideTheme) {
case "theme-dark":
return variables["menuBg"];
case "theme-light":
return variables["menuLightBg"];
case "theme-N1":
console.log(variables["menuN1Bg"])
return variables["menuN1Bg"];
}
// switch (this.settings.sideTheme) {
// case "theme-dark":
// return variables["menuBg"];
// case "theme-light":
// return variables["menuLightBg"];
// case "theme-N1":
// console.log(variables["menuN1Bg"])
// return variables["menuN1Bg"];
// case "theme-Green":
// return variables["menuGreenBg"];
// }
return variables[`menu${this.settings.sideTheme.substring(6)}Bg`];
},
themeTextColor() {
switch (this.settings.sideTheme) {
case "theme-dark":
return variables["menuText"];
case "theme-light":
return "rgba(0,0,0,.65)";
case "theme-N1":
return variables["menuText"];
}
// switch (this.settings.sideTheme) {
// case "theme-dark":
// return variables["menuText"];
// case "theme-light":
// return "rgba(0,0,0,.65)";
// case "theme-N1":
// return variables["menuText"];
// case "theme-Green":
// return variables["sidebarGreenTitle"];
// }
return variables[`menu${this.settings.sideTheme.substring(6)}Text`];
},
},
};

View File

@ -1,7 +1,7 @@
<template>
<div :class="classObj" class="app-wrapper" :style="{'--current-color': theme}">
<div :class="[classObj,themeClass]" class="app-wrapper" :style="{'--current-color': theme}">
<div v-if="device==='mobile'&&sidebar.opened" class="drawer-bg" @click="handleClickOutside"/>
<sidebar class="sidebar-container" :style="{ backgroundColor: this.themeMenuItemColor() }" />
<sidebar class="sidebar-container" />
<div :class="{hasTagsView:needTagsView}" class="main-container">
<div :class="{'fixed-header':fixedHeader}" id="navbar-top" :style="navbarShow() ? 'display: none;' : ''">
<navbar />
@ -37,6 +37,7 @@ export default {
...mapState({
theme: state => state.settings.theme,
sideTheme: state => state.settings.sideTheme,
themeClass: state => state.settings.themeClass,
sidebar: state => state.app.sidebar,
device: state => state.app.device,
showSettings: state => state.settings.showSettings,
@ -70,6 +71,8 @@ export default {
return variables["menuLightBg"];
case "theme-N1":
return variables["menuN1Bg"];
case "theme-Green":
return variables["menuGreenBg"];
}
},
navbarShow() {

View File

@ -40,7 +40,7 @@ export const constantRoutes = [
},
{
path: '/login',
component: (resolve) => require(['@/views/login'], resolve),
component: (resolve) => require(['@/views/login-green'], resolve),
hidden: true
},
{

View File

@ -1,10 +1,16 @@
module.exports = {
title: '智慧能源综合管理系统', // 智慧用电管理系统
title: '数字用电管理系统', // 智慧用电管理系统
//默认主体色
theme: '#55FDFF',
themeClass: 'theme-green',
// themeClass: 'theme-blue-black',
// themeClass: 'theme-blue-white',
/**
* 侧边栏主题 深色主题theme-dark浅色主题theme-light, 自定义主题theme-N1
*/
sideTheme: 'theme-N1',
// sideTheme: 'theme-N1',
sideTheme: 'theme-green',
/**
* 是否系统布局配置

View File

@ -1,11 +1,12 @@
import variables from '@/assets/styles/element-variables.scss'
import defaultSettings from '@/settings'
const { sideTheme, showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
const { theme, themeClass, sideTheme, showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
const state = {
theme: variables.theme,
theme: theme,
sideTheme: sideTheme,
themeClass: themeClass,
showSettings: showSettings,
tagsView: tagsView,
fixedHeader: fixedHeader,

View File

@ -86,7 +86,7 @@ export default {
},
data() {
return {
title: "智慧能源综合管理系统",
title: "数字用电管理系统",
scalseNum: 1,
resultInfo: {},
alarmInfoResult: {},

View File

@ -86,7 +86,7 @@ export default {
},
data() {
return {
title: "智慧能源综合管理系统",
title: "数字用电管理系统",
scalseNum: 1,
resultInfo: {},
alarmInfoResult: {},
@ -274,7 +274,7 @@ export default {
}
.app-main {
width: 100%;
height: calc(100vh - 0);
height: 100vh;
// background: #021c80;
}
.big-v1-wrap {

View File

@ -180,7 +180,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -84,7 +84,7 @@ export default {
font-weight: 400;
color: #02D9FD;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -90,7 +90,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;
@ -106,7 +106,7 @@ export default {
padding-top: 10px;
background-image: url("../../../../assets/images/big/boxmap-c.png");
background-size: contain;
justify-content: start;
justify-content: flex-start;
padding: 0 20px;
.info-crad {
width: 358px;

View File

@ -114,7 +114,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -159,7 +159,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -99,7 +99,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -78,7 +78,7 @@ export default {
font-weight: 400;
color: #02d9fd;
padding-left: 0;
align-items: end;
align-items: flex-end;
padding-bottom: 0px;
letter-spacing: 1px;
background-size: cover;

View File

@ -163,7 +163,7 @@ export default {
},
data() {
return {
title: "智慧能源综合管理系统",
title: "数字用电管理系统",
scalseNumX: 1,
scalseNumY: 1,
resultInfo: {},
@ -220,11 +220,11 @@ export default {
// document.getElementById("con_lf_top_div").style.minHeight =
// "calc(100vh - 84px)";
// }
// this.title = this.$store.getters.attributeInfo['bigTitle'] || '';
// this.title = this.$store.getters.attributeInfo['bigTitle'] || '';
// },
},
created() {
// this.title = this.$store.getters.attributeInfo['bigTitle'] || '';
// this.title = this.$store.getters.attributeInfo['bigTitle'] || '';
document.getElementById("app").style.background = "#010e45";
this.getProjectList();
this.warningAnalysisList();
@ -458,7 +458,7 @@ export default {
}
.app-main {
width: 100%;
height: calc(100vh - 0);
height: 100vh;
// background: #021c80;
}
.big-v3-wrap {

View File

@ -241,7 +241,7 @@ export default {
.census-block {
// width: 50%;
display: flex;
align-items: end;
align-items: flex-end;
justify-content: flex-start;
flex-wrap: nowrap;
font-size: 16px;

View File

@ -225,7 +225,7 @@ export default {
.census-block {
// width: 50%;
display: flex;
align-items: end;
align-items: flex-end;
justify-content: flex-start;
flex-wrap: nowrap;
font-size: 16px;

View File

@ -93,7 +93,7 @@ export default {
justify-content: center;
padding-top: 10px;
background-size: contain;
justify-content: start;
justify-content: flex-start;
padding: 0 20px;
.info-crad {
width: 358px;

View File

@ -437,7 +437,7 @@ export default {
overflow: auto;
display: flex;
flex-wrap: wrap;
justify-content: start;
justify-content: flex-start;
.object-device-card {
width: 285px;
height: 164px;
@ -553,4 +553,4 @@ export default {
}
}
}
</style>
</style>

View File

@ -270,7 +270,7 @@ export default {
.electricity-query {
width: 100%;
height: 40px;
justify-content: start;
justify-content: flex-start;
align-items: center;
display: flex;
margin-bottom: 10px;

393
src/views/login-green.vue Normal file
View File

@ -0,0 +1,393 @@
<template>
<div class="login">
<div class="login-header">
<img src="@/assets/logo/drgy/logo.png" alt="Logo"/>
<span>{{systemName}}</span>
</div>
<div class="form-wrap">
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
<div class="title-tags-wrap">
<div
@click="userTypeClick('system')"
:class="formTitleType === 'system' ? 'tags-div tags-checked' : 'tags-div'"
>
<h3>运营登录</h3>
<span></span>
</div>
<div
@click="userTypeClick('enter')"
:class="formTitleType === 'enter' ? 'tags-div tags-checked' : 'tags-div'"
>
<h3>企业登录</h3>
<span></span>
</div>
<!-- <div-->
<!-- @click="userTypeClick('personal')"-->
<!-- :class="formTitleType === 'personal' ? 'tags-div tags-checked' : 'tags-div'"-->
<!-- >-->
<!-- <h3>个人登录</h3>-->
<!-- <span></span>-->
<!-- </div>-->
</div>
<el-form-item prop="username">
<el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="账号">
<svg-icon slot="prefix" icon-class="A_loginUser" class="el-input__icon input-icon" />
</el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
v-model="loginForm.password"
type="password"
auto-complete="off"
placeholder="密码"
@keyup.enter.native="handleLogin"
>
<svg-icon slot="prefix" icon-class="A_loginPassword" class="el-input__icon input-icon" />
</el-input>
</el-form-item>
<el-form-item prop="code" class="code-box">
<el-input
v-model="loginForm.code"
auto-complete="off"
placeholder="验证码"
style="width: 63%"
@keyup.enter.native="handleLogin"
>
<svg-icon slot="prefix" icon-class="A_loginCode" class="el-input__icon input-icon" />
</el-input>
<div class="login-code">
<img :src="codeUrl" @click="getCode" class="login-code-img" />
</div>
</el-form-item>
<el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px; margin-left: 25px;color: #5E6B82;">记住密码</el-checkbox>
<el-form-item style="width:100%;">
<el-button
:loading="loading"
size="medium"
type="primary"
style="width:100%; height: 46px;background: linear-gradient(87deg, #0CDFE1 1%, #00B5B7 100%);border-radius: 23px;border: none"
@click.native.prevent="handleLogin"
>
<span v-if="!loading"> </span>
<span v-else> 中...</span>
</el-button>
</el-form-item>
</el-form>
</div>
<!-- 底部 -->
<!-- <div class="el-login-footer">
<span>Copyright © 2018-2021 smartpower.vip All Rights Reserved.</span>
</div> -->
</div>
</template>
<script>
import { getCodeImg } from "@/api/login";
import Cookies from "js-cookie";
import { encrypt, decrypt } from "@/utils/jsencrypt";
export default {
name: "Login",
data() {
return {
logoUrl: '',
systemName: '',
formTitle: {
enter: "企业登录",
personal: "个人登录"
},
formTitleType: "enter",
codeUrl: "",
cookiePassword: "",
loginForm: {
username: "",
password: "",
rememberMe: false,
code: "",
uuid: ""
},
loginRules: {
username: [
{ required: true, trigger: "blur", message: "用户名不能为空" }
],
password: [
{ required: true, trigger: "blur", message: "密码不能为空" }
],
code: [{ required: true, trigger: "change", message: "验证码不能为空" }]
},
loading: false,
redirect: undefined
};
},
watch: {
$route: {
handler: function(route) {
this.redirect = route.query && route.query.redirect;
},
immediate: true
}
},
created() {
this.logoUrl = window._SYSTEMCONFIG["logoURL"];
this.systemName = window._SYSTEMCONFIG["systemName"];
this.getCode();
this.getCookie();
},
methods: {
userTypeClick(val) {
this.formTitleType = val;
},
getCode() {
getCodeImg().then(res => {
this.codeUrl = "data:image/gif;base64," + res.img;
this.loginForm.uuid = res.uuid;
});
},
getCookie() {
const username = Cookies.get("username");
const password = Cookies.get("password");
const rememberMe = Cookies.get("rememberMe");
this.loginForm = {
username: username === undefined ? this.loginForm.username : username,
password:
password === undefined ? this.loginForm.password : decrypt(password),
rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)
};
},
handleLogin() {
this.$refs.loginForm.validate(valid => {
if (valid) {
this.loading = true;
if (this.loginForm.rememberMe) {
Cookies.set("username", this.loginForm.username, { expires: 30 });
Cookies.set("password", encrypt(this.loginForm.password), {
expires: 30
});
Cookies.set("rememberMe", this.loginForm.rememberMe, {
expires: 30
});
} else {
Cookies.remove("username");
Cookies.remove("password");
Cookies.remove("rememberMe");
}
switch(this.formTitleType) {
case 'enter':
this.loginForm["userType"] = 'TENANT'
break;
case 'system':
this.loginForm["userType"] = 'SYSTEM'
break;
case 'personal':
this.loginForm["userType"] = 'PERSONAL'
break;
};
// this.loginForm["userType"] =
// this.formTitleType === "enter" ? undefined : "PERSONAL";
this.$store
.dispatch("Login", this.loginForm)
.then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(() => {});
})
.catch(() => {
this.loading = false;
this.getCode();
});
}
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss">
.login {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100%;
background: url("../assets/images/green-login/login-bg.png") no-repeat;
background-position: top center;
background-size: 1920px 59%;
.login-header{
-webkit-user-select: none; /* Chrome, Safari, Opera */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* Internet Explorer/Edge */
user-select: none;
display: flex;
align-items: center;
margin-bottom: 27px;
img{
height: 120px;
width: 120px;
}
span{
margin-left: 20px;
font-family: SimSun;
font-weight: 400;
font-size: 28px;
color: #FFFFFF;
}
}
.form-wrap {
//width: 500px;
//height: 480px;
padding: 50px 70px;
background: #FFFFFF;
box-shadow: 0px 0px 18px 0px rgba(222,234,255,0.88);
border-radius: 20px;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
border: 0;
margin-bottom: 30px;
.el-form-item__error {
left: 25px;
}
}
.login-form {
//border-radius: 6px;
//background: #ffffff00;
width: 357px;
//padding: 25px 25px 5px 25px;
.title-tags-wrap {
font-family: Source Han Sans CN;
font-weight: 500;
font-size: 18px;
display: flex;
width: 100%;
height: 70px;
justify-content: center;
align-items: baseline;
cursor: default;
.tags-div {
display: flex;
width: 50%;
align-items: center;
height: 100%;
font-family: "Source Han Sans CN";
font-weight: 500;
font-size: 18px;
line-height: 46px;
flex-wrap: wrap;
justify-content: center;
padding-bottom: 20px;
color: #444;
cursor: pointer;
> h3 {
width: 100%;
margin: 0px;
text-align: center;
font-weight: 700;
}
> span {
display: none;
width: 70px;
height: 3px;
background: #00A9AB;
border-radius: 2px;
}
}
.tags-checked {
color: #00A9AB;
> span {
display: block;
}
}
}
.el-checkbox__input.is-checked + .el-checkbox__label {
margin-left: 3px;
}
.el-input {
input {
height: 45px;
border: none;
border-radius: 30px;
padding-left: 56px;
font-size: 16px;
//color: #e4e2e2;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
//-webkit-text-fill-color: #ededed !important;
-webkit-box-shadow: 0 0 0px 1000px #06060600 inset !important;
background-color: #06060657;
background-image: none;
transition: background-color 50000s ease-in-out 0s; //
}
input {
height: 46px;
background-color: #F6F6F6;
border-radius: 23px;
}
}
.input-icon {
height: 42px;
width: 26px;
margin-left: 15px;
}
}
.code-box{
background-color: #F6F6F6;
border-radius: 23px;
}
.login-tip {
font-size: 13px;
text-align: center;
color: #bfbfbf;
}
.login-code {
//width: 120px;
//height: 44px;
float: right;
img {
width: 122px;
height: 46px;
cursor: pointer;
vertical-align: middle;
border-radius: 0 23px 23px 0;
}
}
.el-login-footer {
height: 40px;
line-height: 40px;
position: fixed;
bottom: 0;
width: 100%;
text-align: center;
color: #fff;
font-family: Arial;
font-size: 12px;
letter-spacing: 1px;
}
.login-code-img {
height: 38px;
}
}
.el-form-item{
margin-bottom: 15px;
}
.el-checkbox__input.is-checked + .el-checkbox__label{
color: #00A9AB;
}
.el-checkbox__input.is-checked .el-checkbox__inner{
background-color: #00A9AB;
border-color: #00A9AB;
}
@media screen and (min-width: 1921px) {
/* 选择对应的元素这里假设是body作为示例 */
.login {
background-size: 100% 59%;
}
}
</style>

View File

@ -275,8 +275,8 @@ export default {
margin-top: 10px;
border-radius: 2px;
padding: 10px;
justify-content: start;
align-items: start;
justify-content: flex-start;
align-items: flex-start;
margin: 0;
margin-left: 15px;
margin-top: 15px;
@ -333,8 +333,8 @@ export default {
flex-wrap: wrap;
border-radius: 0px;
padding: 10px;
justify-content: start;
align-items: start;
justify-content: flex-start;
align-items: flex-start;
margin: 0;
border: 1px solid #b7b4b4;
margin-left: -1px;

View File

@ -868,7 +868,7 @@ export default {
font-family: Source Han Sans CN;
font-weight: 400;
color: #00c805;
justify-content: start;
justify-content: flex-start;
/* switch按钮样式 */
.switch-wrap .el-switch__label {

View File

@ -284,8 +284,8 @@ export default {
margin-top: 10px;
border-radius: 2px;
padding: 10px;
justify-content: start;
align-items: start;
justify-content: flex-start;
align-items: flex-start;
margin: 0;
margin-left: 15px;
margin-top: 15px;
@ -342,8 +342,8 @@ export default {
flex-wrap: wrap;
border-radius: 0px;
padding: 10px;
justify-content: start;
align-items: start;
justify-content: flex-start;
align-items: flex-start;
margin: 0;
border: 1px solid #b7b4b4;
margin-left: -1px;

503
yarn.lock
View File

@ -1480,11 +1480,6 @@ alphanum-sort@^1.0.0:
resolved "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz"
integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=
amdefine@>=0.0.4:
version "1.0.1"
resolved "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz"
integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=
ansi-colors@^3.0.0:
version "3.2.4"
resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz"
@ -1567,7 +1562,15 @@ anymatch@~3.1.1:
normalize-path "^3.0.0"
picomatch "^2.0.4"
aproba@^1.0.3, aproba@^1.1.1:
anymatch@~3.1.2:
version "3.1.3"
resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
dependencies:
normalize-path "^3.0.0"
picomatch "^2.0.4"
aproba@^1.1.1:
version "1.2.0"
resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz"
integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
@ -1577,14 +1580,6 @@ arch@^2.1.1:
resolved "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz"
integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==
are-we-there-yet@~1.1.2:
version "1.1.5"
resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz"
integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
dependencies:
delegates "^1.0.0"
readable-stream "^2.0.6"
argparse@^1.0.7:
version "1.0.10"
resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz"
@ -1607,11 +1602,6 @@ arr-union@^3.1.0:
resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz"
integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
array-find-index@^1.0.1:
version "1.0.2"
resolved "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz"
integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=
array-flatten@1.1.1:
version "1.1.1"
resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz"
@ -1689,11 +1679,6 @@ async-each@^1.0.1:
resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz"
integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
async-foreach@^0.1.3:
version "0.1.3"
resolved "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz"
integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=
async-limiter@~1.0.0:
version "1.0.1"
resolved "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz"
@ -1882,13 +1867,6 @@ bindings@^1.5.0:
dependencies:
file-uri-to-path "1.0.0"
block-stream@*:
version "0.0.9"
resolved "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz"
integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=
dependencies:
inherits "~2.0.0"
bluebird@^3.1.1, bluebird@^3.5.0, bluebird@^3.5.5:
version "3.7.2"
resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz"
@ -2218,24 +2196,11 @@ camel-case@3.0.x:
no-case "^2.2.0"
upper-case "^1.1.1"
camelcase-keys@^2.0.0:
version "2.1.0"
resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz"
integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc=
dependencies:
camelcase "^2.0.0"
map-obj "^1.0.0"
camelcase@^1.2.1:
version "1.2.1"
resolved "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz"
integrity sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=
camelcase@^2.0.0:
version "2.1.1"
resolved "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz"
integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=
camelcase@^5.0.0, camelcase@^5.3.1:
version "5.3.1"
resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
@ -2288,7 +2253,7 @@ chalk@4.1.0, chalk@^4.0.0, chalk@^4.1.0:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
chalk@^1.1.1, chalk@^1.1.3:
chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz"
integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
@ -2318,6 +2283,21 @@ check-types@^8.0.3:
resolved "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz"
integrity sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==
"chokidar@>=3.0.0 <4.0.0":
version "3.6.0"
resolved "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b"
integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==
dependencies:
anymatch "~3.1.2"
braces "~3.0.2"
glob-parent "~5.1.2"
is-binary-path "~2.1.0"
is-glob "~4.0.1"
normalize-path "~3.0.0"
readdirp "~3.6.0"
optionalDependencies:
fsevents "~2.3.2"
chokidar@^2.1.8:
version "2.1.8"
resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz"
@ -2525,11 +2505,6 @@ coa@^2.0.2:
chalk "^2.4.1"
q "^1.1.2"
code-point-at@^1.0.0:
version "1.1.0"
resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz"
integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
collection-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz"
@ -2688,11 +2663,6 @@ console-browserify@^1.1.0:
resolved "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz"
integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
console-control-strings@^1.0.0, console-control-strings@~1.1.0:
version "1.1.0"
resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz"
integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
consolidate@^0.15.1:
version "0.15.1"
resolved "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz"
@ -2872,14 +2842,6 @@ cronstrue@^1.94.0:
resolved "https://registry.npmjs.org/cronstrue/-/cronstrue-1.111.0.tgz"
integrity sha512-XuZj3jHp3p3r6OXo8yuhjO0n6UEj9qEtpSzVg9ruKhpV5pBJZCqZwpaApqRV0nW+AJLiAB+3OSPEWcFlzIM25g==
cross-spawn@^3.0.0:
version "3.0.1"
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz"
integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI=
dependencies:
lru-cache "^4.0.1"
which "^1.2.9"
cross-spawn@^5.0.1:
version "5.1.0"
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz"
@ -3079,13 +3041,6 @@ csso@^4.0.2:
dependencies:
css-tree "^1.1.2"
currently-unhandled@^0.4.1:
version "0.4.1"
resolved "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz"
integrity sha1-mI3zP+qxke95mmE2nddsF635V+o=
dependencies:
array-find-index "^1.0.1"
cyclist@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz"
@ -3129,7 +3084,7 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0:
dependencies:
ms "2.1.2"
decamelize@^1.1.2, decamelize@^1.2.0:
decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
@ -3250,11 +3205,6 @@ delegate@^3.1.2:
resolved "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz"
integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==
delegates@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz"
integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
depd@~1.1.2:
version "1.1.2"
resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz"
@ -3551,7 +3501,7 @@ errno@^0.1.3, errno@~0.1.7:
dependencies:
prr "~1.0.1"
error-ex@^1.2.0, error-ex@^1.3.1:
error-ex@^1.3.1:
version "1.3.2"
resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
@ -4280,15 +4230,10 @@ fsevents@~2.3.1:
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
fstream@^1.0.0, fstream@^1.0.12:
version "1.0.12"
resolved "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz"
integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==
dependencies:
graceful-fs "^4.1.2"
inherits "~2.0.0"
mkdirp ">=0.5 0"
rimraf "2"
fsevents@~2.3.2:
version "2.3.3"
resolved "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
function-bind@^1.1.1:
version "1.1.1"
@ -4310,27 +4255,6 @@ fuzzysearch@^1.0.3:
resolved "https://registry.npmjs.org/fuzzysearch/-/fuzzysearch-1.0.3.tgz"
integrity sha1-3/yA9tawQiPyImqnndGUIxCW0Ag=
gauge@~2.7.3:
version "2.7.4"
resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz"
integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
dependencies:
aproba "^1.0.3"
console-control-strings "^1.0.0"
has-unicode "^2.0.0"
object-assign "^4.1.0"
signal-exit "^3.0.0"
string-width "^1.0.1"
strip-ansi "^3.0.1"
wide-align "^1.1.0"
gaze@^1.0.0:
version "1.1.3"
resolved "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz"
integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==
dependencies:
globule "^1.0.0"
gensync@^1.0.0-beta.1:
version "1.0.0-beta.2"
resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz"
@ -4355,11 +4279,6 @@ get-own-enumerable-property-symbols@^3.0.0:
resolved "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz"
integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==
get-stdin@^4.0.1:
version "4.0.1"
resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=
get-stream@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz"
@ -4406,23 +4325,18 @@ glob-parent@^5.0.0, glob-parent@~5.1.0:
dependencies:
is-glob "^4.0.1"
glob-parent@~5.1.2:
version "5.1.2"
resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
dependencies:
is-glob "^4.0.1"
glob-to-regexp@^0.3.0:
version "0.3.0"
resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz"
integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=
glob@^7.0.0, glob@~7.1.1:
version "7.1.7"
resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz"
integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
dependencies:
fs.realpath "^1.0.0"
inflight "^1.0.4"
inherits "2"
minimatch "^3.0.4"
once "^1.3.0"
path-is-absolute "^1.0.0"
glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4:
version "7.1.6"
resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz"
@ -4484,15 +4398,6 @@ globby@^9.2.0:
pify "^4.0.1"
slash "^2.0.0"
globule@^1.0.0:
version "1.3.2"
resolved "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz"
integrity sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==
dependencies:
glob "~7.1.1"
lodash "~4.17.10"
minimatch "~3.0.2"
good-listener@^1.2.2:
version "1.2.2"
resolved "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz"
@ -4563,11 +4468,6 @@ has-symbols@^1.0.1:
resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz"
integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
has-unicode@^2.0.0:
version "2.0.1"
resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz"
integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
has-value@^0.3.1:
version "0.3.1"
resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz"
@ -4912,18 +4812,6 @@ imurmurhash@^0.1.4:
resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
in-publish@^2.0.0:
version "2.0.1"
resolved "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz"
integrity sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==
indent-string@^2.1.0:
version "2.1.0"
resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz"
integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=
dependencies:
repeating "^2.0.0"
indent-string@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz"
@ -4947,7 +4835,7 @@ inflight@^1.0.4:
once "^1.3.0"
wrappy "1"
inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
version "2.0.4"
resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@ -5164,18 +5052,6 @@ is-extglob@^2.1.0, is-extglob@^2.1.1:
resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
is-finite@^1.0.0:
version "1.1.0"
resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz"
integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
is-fullwidth-code-point@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz"
integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
dependencies:
number-is-nan "^1.0.0"
is-fullwidth-code-point@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz"
@ -5317,11 +5193,6 @@ is-typedarray@~1.0.0:
resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz"
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
is-utf8@^0.2.0:
version "0.2.1"
resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz"
integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
is-windows@^1.0.2:
version "1.0.2"
resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz"
@ -5393,7 +5264,7 @@ jest-worker@^25.4.0:
merge-stream "^2.0.0"
supports-color "^7.0.0"
js-base64@^2.1.8, js-base64@^2.1.9:
js-base64@^2.1.9:
version "2.6.4"
resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz"
integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==
@ -5633,17 +5504,6 @@ listr2@^3.2.2:
through "^2.3.8"
wrap-ansi "^7.0.0"
load-json-file@^1.0.0:
version "1.1.0"
resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz"
integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
dependencies:
graceful-fs "^4.1.2"
parse-json "^2.2.0"
pify "^2.0.0"
pinkie-promise "^2.0.0"
strip-bom "^2.0.0"
loader-fs-cache@^1.0.0:
version "1.0.3"
resolved "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz"
@ -5746,11 +5606,6 @@ lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.1
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz"
integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
lodash@~4.17.10:
version "4.17.21"
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
log-symbols@^2.2.0:
version "2.2.0"
resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz"
@ -5780,14 +5635,6 @@ loglevel@^1.6.8:
resolved "https://registry.npmjs.org/loglevel/-/loglevel-1.7.1.tgz"
integrity sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw==
loud-rejection@^1.0.0:
version "1.6.0"
resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz"
integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=
dependencies:
currently-unhandled "^0.4.1"
signal-exit "^3.0.0"
lower-case@^1.1.1:
version "1.1.4"
resolved "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz"
@ -5840,11 +5687,6 @@ map-cache@^0.2.2:
resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz"
integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
map-obj@^1.0.0, map-obj@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz"
integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=
map-stream@0.0.7:
version "0.0.7"
resolved "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz"
@ -5902,22 +5744,6 @@ memory-fs@^0.5.0:
errno "^0.1.3"
readable-stream "^2.0.1"
meow@^3.7.0:
version "3.7.0"
resolved "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz"
integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=
dependencies:
camelcase-keys "^2.0.0"
decamelize "^1.1.2"
loud-rejection "^1.0.0"
map-obj "^1.0.1"
minimist "^1.1.3"
normalize-package-data "^2.3.4"
object-assign "^4.0.1"
read-pkg-up "^1.0.1"
redent "^1.0.0"
trim-newlines "^1.0.0"
merge-descriptors@1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz"
@ -6076,14 +5902,14 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz"
integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
minimatch@^3.0.4, minimatch@~3.0.2:
minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz"
integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
dependencies:
brace-expansion "^1.1.7"
minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5:
minimist@^1.2.0, minimist@^1.2.5:
version "1.2.5"
resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz"
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
@ -6145,7 +5971,7 @@ mixin-deep@^1.2.0:
for-in "^1.0.2"
is-extendable "^1.0.1"
"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1:
mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1:
version "0.5.5"
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz"
integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
@ -6226,11 +6052,6 @@ nan@^2.12.1:
resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916"
integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==
nan@^2.13.2:
version "2.14.2"
resolved "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz"
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
nanomatch@^1.2.1, nanomatch@^1.2.9:
version "1.2.13"
resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz"
@ -6280,24 +6101,6 @@ node-forge@^0.10.0:
resolved "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz"
integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==
node-gyp@^3.8.0:
version "3.8.0"
resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz"
integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==
dependencies:
fstream "^1.0.0"
glob "^7.0.3"
graceful-fs "^4.1.2"
mkdirp "^0.5.0"
nopt "2 || 3"
npmlog "0 || 1 || 2 || 3 || 4"
osenv "0"
request "^2.87.0"
rimraf "2"
semver "~5.3.0"
tar "^2.0.0"
which "1"
node-ipc@^9.1.1:
version "9.1.3"
resolved "https://registry.npmjs.org/node-ipc/-/node-ipc-9.1.3.tgz"
@ -6341,36 +6144,6 @@ node-releases@^1.1.70:
resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz"
integrity sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==
node-sass@^4.9.0:
version "4.14.1"
resolved "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz"
integrity sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==
dependencies:
async-foreach "^0.1.3"
chalk "^1.1.1"
cross-spawn "^3.0.0"
gaze "^1.0.0"
get-stdin "^4.0.1"
glob "^7.0.3"
in-publish "^2.0.0"
lodash "^4.17.15"
meow "^3.7.0"
mkdirp "^0.5.1"
nan "^2.13.2"
node-gyp "^3.8.0"
npmlog "^4.0.0"
request "^2.88.0"
sass-graph "2.2.5"
stdout-stream "^1.4.0"
"true-case-path" "^1.0.2"
"nopt@2 || 3":
version "3.0.6"
resolved "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz"
integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k=
dependencies:
abbrev "1"
nopt@^5.0.0:
version "5.0.0"
resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz"
@ -6378,7 +6151,7 @@ nopt@^5.0.0:
dependencies:
abbrev "1"
normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0:
normalize-package-data@^2.5.0:
version "2.5.0"
resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"
integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
@ -6444,16 +6217,6 @@ npm-run-path@^4.0.0:
dependencies:
path-key "^3.0.0"
"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0:
version "4.1.2"
resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz"
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
dependencies:
are-we-there-yet "~1.1.2"
console-control-strings "~1.1.0"
gauge "~2.7.3"
set-blocking "~2.0.0"
nprogress@0.2.0:
version "0.2.0"
resolved "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz"
@ -6471,11 +6234,6 @@ num2fraction@^1.2.2:
resolved "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz"
integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=
number-is-nan@^1.0.0:
version "1.0.1"
resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz"
integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
oauth-sign@~0.9.0:
version "0.9.0"
resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz"
@ -6659,24 +6417,11 @@ os-browserify@^0.3.0:
resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz"
integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
os-homedir@^1.0.0:
version "1.0.2"
resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz"
integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
os-tmpdir@^1.0.0, os-tmpdir@~1.0.2:
os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz"
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
osenv@0:
version "0.1.5"
resolved "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz"
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
dependencies:
os-homedir "^1.0.0"
os-tmpdir "^1.0.0"
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz"
@ -6783,13 +6528,6 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.5:
pbkdf2 "^3.0.3"
safe-buffer "^5.1.1"
parse-json@^2.2.0:
version "2.2.0"
resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz"
integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
dependencies:
error-ex "^1.2.0"
parse-json@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz"
@ -6892,15 +6630,6 @@ path-to-regexp@0.1.7:
resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz"
integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
path-type@^1.0.0:
version "1.1.0"
resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz"
integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
dependencies:
graceful-fs "^4.1.2"
pify "^2.0.0"
pinkie-promise "^2.0.0"
path-type@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz"
@ -7630,23 +7359,6 @@ raw-body@2.4.0:
iconv-lite "0.4.24"
unpipe "1.0.0"
read-pkg-up@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz"
integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
dependencies:
find-up "^1.0.0"
read-pkg "^1.0.0"
read-pkg@^1.0.0:
version "1.1.0"
resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz"
integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
dependencies:
load-json-file "^1.0.0"
normalize-package-data "^2.3.2"
path-type "^1.0.0"
read-pkg@^5.1.1:
version "5.2.0"
resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz"
@ -7657,7 +7369,7 @@ read-pkg@^5.1.1:
parse-json "^5.0.0"
type-fest "^0.6.0"
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
version "2.3.7"
resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz"
integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
@ -7695,13 +7407,12 @@ readdirp@~3.5.0:
dependencies:
picomatch "^2.2.1"
redent@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz"
integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=
readdirp@~3.6.0:
version "3.6.0"
resolved "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
dependencies:
indent-string "^2.1.0"
strip-indent "^1.0.1"
picomatch "^2.2.1"
regenerate-unicode-properties@^8.2.0:
version "8.2.0"
@ -7808,14 +7519,7 @@ repeat-string@^1.6.1:
resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz"
integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
repeating@^2.0.0:
version "2.0.1"
resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz"
integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
dependencies:
is-finite "^1.0.0"
request@^2.87.0, request@^2.88.0, request@^2.88.2:
request@^2.88.2:
version "2.88.2"
resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz"
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
@ -7927,7 +7631,7 @@ rgba-regex@^1.0.0:
resolved "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz"
integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=
rimraf@2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3, rimraf@^2.7.1:
rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3, rimraf@^2.7.1:
version "2.7.1"
resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz"
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
@ -8000,16 +7704,6 @@ safe-regex@^1.1.0:
resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
sass-graph@2.2.5:
version "2.2.5"
resolved "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz"
integrity sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==
dependencies:
glob "^7.0.0"
lodash "^4.0.0"
scss-tokenizer "^0.2.3"
yargs "^13.3.2"
sass-loader@^7.0.1:
version "7.3.1"
resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-7.3.1.tgz"
@ -8021,6 +7715,13 @@ sass-loader@^7.0.1:
pify "^4.0.1"
semver "^6.3.0"
sass@1.32.12:
version "1.32.12"
resolved "https://registry.npmmirror.com/sass/-/sass-1.32.12.tgz#a2a47ad0f1c168222db5206444a30c12457abb9f"
integrity sha512-zmXn03k3hN0KaiVTjohgkg98C3UowhL1/VSGdj4/VAAiMKGQOE80PFPxFP2Kyq0OUskPKcY5lImkhBKEHlypJA==
dependencies:
chokidar ">=3.0.0 <4.0.0"
save@^2.5.0:
version "2.5.0"
resolved "https://registry.npmjs.org/save/-/save-2.5.0.tgz"
@ -8066,14 +7767,6 @@ script-ext-html-webpack-plugin@2.1.5:
dependencies:
debug "^4.2.0"
scss-tokenizer@^0.2.3:
version "0.2.3"
resolved "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz"
integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE=
dependencies:
js-base64 "^2.1.8"
source-map "^0.4.2"
select-hose@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz"
@ -8118,11 +7811,6 @@ semver@^7.2.1, semver@^7.3.2:
dependencies:
lru-cache "^6.0.0"
semver@~5.3.0:
version "5.3.0"
resolved "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz"
integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8=
send@0.17.1:
version "0.17.1"
resolved "https://registry.npmjs.org/send/-/send-0.17.1.tgz"
@ -8172,7 +7860,7 @@ serve-static@1.14.1:
parseurl "~1.3.3"
send "0.17.1"
set-blocking@^2.0.0, set-blocking@~2.0.0:
set-blocking@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz"
integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
@ -8392,13 +8080,6 @@ source-map-url@^0.4.0:
resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz"
integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
source-map@^0.4.2:
version "0.4.4"
resolved "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz"
integrity sha1-66T12pwNyZneaAMti092FzZSA2s=
dependencies:
amdefine ">=0.0.4"
source-map@^0.5.0, source-map@^0.5.6:
version "0.5.7"
resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz"
@ -8535,13 +8216,6 @@ statuses@~1.3.1:
resolved "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz"
integrity sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=
stdout-stream@^1.4.0:
version "1.4.1"
resolved "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz"
integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==
dependencies:
readable-stream "^2.0.1"
stream-browserify@^2.0.1:
version "2.0.2"
resolved "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz"
@ -8592,16 +8266,7 @@ string-argv@0.3.1:
resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz"
integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==
string-width@^1.0.1:
version "1.0.2"
resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz"
integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
dependencies:
code-point-at "^1.0.0"
is-fullwidth-code-point "^1.0.0"
strip-ansi "^3.0.0"
"string-width@^1.0.2 || 2", string-width@^2.0.0:
string-width@^2.0.0:
version "2.1.1"
resolved "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz"
integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
@ -8694,13 +8359,6 @@ strip-ansi@^6.0.0:
dependencies:
ansi-regex "^5.0.0"
strip-bom@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz"
integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
dependencies:
is-utf8 "^0.2.0"
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz"
@ -8711,13 +8369,6 @@ strip-final-newline@^2.0.0:
resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz"
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
strip-indent@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz"
integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=
dependencies:
get-stdin "^4.0.1"
strip-indent@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz"
@ -8859,15 +8510,6 @@ tapable@^1.0.0, tapable@^1.1.3:
resolved "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz"
integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
tar@^2.0.0:
version "2.2.2"
resolved "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz"
integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==
dependencies:
block-stream "*"
fstream "^1.0.12"
inherits "2"
terser-webpack-plugin@^1.4.3:
version "1.4.5"
resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz"
@ -9052,18 +8694,6 @@ traverse@^0.6.6:
resolved "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz"
integrity sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=
trim-newlines@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz"
integrity sha1-WIeWa7WCpFA6QetST301ARgVphM=
"true-case-path@^1.0.2":
version "1.0.3"
resolved "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz"
integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==
dependencies:
glob "^7.1.2"
tryer@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz"
@ -9687,7 +9317,7 @@ which-module@^2.0.0:
resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
which@1, which@^1.2.9:
which@^1.2.9:
version "1.3.1"
resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
@ -9701,13 +9331,6 @@ which@^2.0.1:
dependencies:
isexe "^2.0.0"
wide-align@^1.1.0:
version "1.1.3"
resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz"
integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
dependencies:
string-width "^1.0.2 || 2"
word-wrap@^1.2.3:
version "1.2.3"
resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz"