从完整版转移
Former-commit-id: d164dbcc7f4a728304b1683d763d45fdebca8170
@@ -0,0 +1,3 @@
|
|||||||
|
> 1%
|
||||||
|
last 2 versions
|
||||||
|
not ie <= 8
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
# 所有环境默认
|
||||||
|
|
||||||
|
# 页面 title 前缀
|
||||||
|
VUE_APP_TITLE=D2Admin
|
||||||
|
|
||||||
|
# 网络请求公用地址
|
||||||
|
VUE_APP_API=/api/
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
# 开发环境
|
||||||
|
|
||||||
|
# 页面 title 前缀
|
||||||
|
VUE_APP_TITLE=D2Admin Dev
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
# travis
|
||||||
|
|
||||||
|
# 指定构建模式
|
||||||
|
NODE_ENV=production
|
||||||
|
|
||||||
|
# 标记当前是 CI 自动构建
|
||||||
|
VUE_APP_BUILD_MODE=TRAVIS
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
# 忽略目录
|
||||||
|
build/
|
||||||
|
tests/
|
||||||
|
node_modules/
|
||||||
|
|
||||||
|
# node 覆盖率文件
|
||||||
|
coverage/
|
||||||
|
|
||||||
|
# 忽略文件
|
||||||
|
**/*-min.js
|
||||||
|
**/*.min.js
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
module.exports = {
|
||||||
|
root: true,
|
||||||
|
env: {
|
||||||
|
node: true
|
||||||
|
},
|
||||||
|
'extends': [
|
||||||
|
'plugin:vue/essential',
|
||||||
|
'@vue/standard'
|
||||||
|
],
|
||||||
|
rules: {
|
||||||
|
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
|
||||||
|
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
parser: 'babel-eslint'
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "👾 BUG"
|
||||||
|
about: 代码错误
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
👾 BUG | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "🎮 示例相关"
|
||||||
|
about: 增加或者完善示例
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
🎮 示例相关 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "🌈 显示优化"
|
||||||
|
about: 显示方面调整
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
🌈 显示优化 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "📔 文档相关"
|
||||||
|
about: 更新或者新增文档内容
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
📔 文档相关 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "🔩 功能开发"
|
||||||
|
about: 开发新的功能
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
🔩 功能开发 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "🖐 其它问题"
|
||||||
|
about: 其它类型的 issue 请使用该模板
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
🖐 其它问题 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "🤔 提问"
|
||||||
|
about: 提出使用方面的问题
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
🤔 提问 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: "⚙ 功能升级"
|
||||||
|
about: 升级某个功能
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
为了统一格式,请将下面一行复制到 `Title` 栏,然后删除这部分
|
||||||
|
⚙ 功能升级 | 你的标题
|
||||||
|
```
|
||||||
|
|
||||||
|
如果需要,在这里描述具体内容
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
.DS_Store
|
||||||
|
node_modules
|
||||||
|
/dist
|
||||||
|
|
||||||
|
# Log files
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.idea
|
||||||
|
.vscode
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw*
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
module.exports = {
|
||||||
|
plugins: {
|
||||||
|
autoprefixer: {}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
language: node_js
|
||||||
|
node_js: stable
|
||||||
|
|
||||||
|
cache:
|
||||||
|
directories:
|
||||||
|
- "node_modules"
|
||||||
|
|
||||||
|
branches:
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
|
||||||
|
script:
|
||||||
|
- npm run build:travis
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- ./qshell account $AK $SK
|
||||||
|
- curl -o- -L https://yarnpkg.com/install.sh | bash
|
||||||
|
- export PATH=$HOME/.yarn/bin:$PATH
|
||||||
|
|
||||||
|
after_success:
|
||||||
|
- ./qshell qupload qiniu-config
|
||||||
|
- ./qshell cdnrefresh -dirs cdnrefresh-dirs.txt
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2018 李杨
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
@@ -0,0 +1,142 @@
|
|||||||
|

|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<a><img src="https://img.shields.io/github/release/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/npm/v/@d2-admin/ice-scaffold.svg"/></a>
|
||||||
|
<a href="https://www.travis-ci.org/d2-projects/d2-admin"><img src="https://www.travis-ci.org/d2-projects/d2-admin.svg?branch=master"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/last-commit/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/badge/code_style-standard-brightgreen.svg"/></a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<a><img src="https://img.shields.io/github/issues/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/issues-closed/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/issues-pr/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/issues-pr-closed/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/forks/d2-projects/d2-admin.svg"/></a>
|
||||||
|
<a><img src="https://img.shields.io/github/stars/d2-projects/d2-admin.svg"/></a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
[D2Admin](https://github.com/d2-projects/d2-admin) 是一个完全 **开源免费** 的企业中后台产品前端集成方案,使用最新的前端技术栈,已经做好大部分项目前期准备工作,并且带有大量示例代码,助力管理系统敏捷开发。
|
||||||
|
|
||||||
|
## 文档
|
||||||
|
|
||||||
|
[文档](https://doc.d2admin.fairyever.com)
|
||||||
|
|
||||||
|
## 预览
|
||||||
|
|
||||||
|
[预览地址](https://d2admin.fairyever.com)
|
||||||
|
|
||||||
|
## 码云镜像
|
||||||
|
|
||||||
|
[码云](https://gitee.com/fairyever/d2-admin)
|
||||||
|
|
||||||
|
## 功能
|
||||||
|
|
||||||
|
* 使用 vue-cli3 构建
|
||||||
|
* 首屏加载等待动画
|
||||||
|
* 五款主题
|
||||||
|
* 详细的文档
|
||||||
|
* 登录和注销
|
||||||
|
* 分离的路由和菜单设置
|
||||||
|
* 可折叠侧边栏
|
||||||
|
* 多国语
|
||||||
|
* 富文本编辑器
|
||||||
|
* Markdown 编辑器
|
||||||
|
* 全屏
|
||||||
|
* Fontawesome 图标库
|
||||||
|
* 图标选择器
|
||||||
|
* 自动注册 SVG 图标
|
||||||
|
* 模拟数据
|
||||||
|
* 剪贴板封装
|
||||||
|
* 图表库
|
||||||
|
* 时间日期计算工具
|
||||||
|
* 导入 Excel ( xlsx + csv )
|
||||||
|
* 数据导出 Excel ( xlsx + csv )
|
||||||
|
* 数据导出文本
|
||||||
|
* 数字动画
|
||||||
|
* 可拖拽调整大小的区块布局
|
||||||
|
* 可拖拽调整大小和位置的网格布局
|
||||||
|
* 开箱即用的页面布局组件
|
||||||
|
* 加载并解析 markdown 文件
|
||||||
|
* GitHub 样式的 markdown 显示组件
|
||||||
|
* markdown 内代码高亮
|
||||||
|
* 为 markdown 扩展了百度云链接解析和优化显示
|
||||||
|
* 右键菜单组件
|
||||||
|
* 自定义滚动条和滚动控制
|
||||||
|
* 公用样式抽离,方便的主题定制
|
||||||
|
* 支持临时菜单配置
|
||||||
|
* 系统功能展示模块 `1.1.4 +`
|
||||||
|
* 多标签页模式 `1.1.4 +`
|
||||||
|
* 美化滚动条 `1.1.4 +`
|
||||||
|
* json view `1.1.4 +`
|
||||||
|
* cookie 封装 `1.1.5 +`
|
||||||
|
* 多标签页全局控制 API `1.1.5 +`
|
||||||
|
* 菜单全局控制 API `1.1.5 +`
|
||||||
|
* 多标签页关闭控制支持右键菜单 `1.1.10 +`
|
||||||
|
* 模块化全局状态管理 `1.2.0 +`
|
||||||
|
* 多种数据持久化方式:区分用户,区分路由,页面数据快照功能 `1.2.0 +`
|
||||||
|
* 支持跳出外部链接的菜单系统 `1.2.0 +`
|
||||||
|
* 支持菜单 svg 图标 `1.3.0 +`
|
||||||
|
* 日志记录和错误捕捉 `1.3.0 +`
|
||||||
|
* 全局菜单搜索 `1.3.0 +`
|
||||||
|
* 自定义登录重定向 `1.3.0 +`
|
||||||
|
* 切换全局基础组件尺寸 `1.4.0 +`
|
||||||
|
* 页面载入进度条 `1.4.1 +`
|
||||||
|
* 自适应的顶部菜单栏 `1.4.7 +`
|
||||||
|
* 数据导出 xslx 时支持合并单元格 `1.5.4 +`
|
||||||
|
|
||||||
|
## 其它版本
|
||||||
|
|
||||||
|
| 名称 | Github / 主页 | 预览 | 介绍 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| 简化版模板 | [Github](https://github.com/d2-projects/d2-admin-start-kit) | [预览](https://start-kit.d2admin.fairyever.com) | 无 |
|
||||||
|
| 飞冰脚手架 | [飞冰](https://alibaba.github.io/ice/scaffold?type=vue) | [预览](https://ice.d2admin.fairyever.com) | [介绍](https://juejin.im/post/5b6349716fb9a04f834669d6) |
|
||||||
|
|
||||||
|
## 生态
|
||||||
|
|
||||||
|
| 名称 | Github / 主页 | 预览 | 介绍 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| D2 日报 | [Github](https://github.com/d2-projects/d2-awesome) | [网站](https://awesome.fairyever.com/daily/) | 每天更新设计与技术圈的新闻和资源 |
|
||||||
|
| D2 CRUD | [Github](https://github.com/d2-projects/d2-crud) | [预览](https://d2admin.fairyever.com/#/demo/d2-crud/index) | 表格常用操作封装 |
|
||||||
|
| D2 Ribbons | [Github](https://github.com/d2-projects/d2-ribbons) | [预览](https://github.com/d2-projects/d2-ribbons) | 开源项目徽标库 |
|
||||||
|
|
||||||
|
## 开源后端实现
|
||||||
|
|
||||||
|
> 后端由开源社区贡献,不保证使用 D2Admin 最新版本,相关使用问题请联系其开源作者。
|
||||||
|
|
||||||
|
| 名称 | Github / 主页 | 预览 | 介绍 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| ( Spring Cloud ) Taroco | [Github](https://github.com/liuht777/Taroco) | [预览](http://111.231.192.110/) | 整套微服务企业级解决方案 |
|
||||||
|
|
||||||
|
## 徽章
|
||||||
|
|
||||||
|
如果您的开源项目基于 D2Admin 开发,请在您的 README 添加下面的徽章:
|
||||||
|
|
||||||
|
<a href="https://github.com/d2-projects/d2-admin" target="_blank">
|
||||||
|
<img src="https://raw.githubusercontent.com/FairyEver/d2-admin/master/doc/image/d2-admin@2x.png" width="200">
|
||||||
|
</a>
|
||||||
|
|
||||||
|
复制下面代码加入到 README 中即可:
|
||||||
|
|
||||||
|
``` html
|
||||||
|
<a href="https://github.com/d2-projects/d2-admin" target="_blank"><img src="https://raw.githubusercontent.com/FairyEver/d2-admin/master/doc/image/d2-admin@2x.png" width="200"></a>
|
||||||
|
```
|
||||||
|
|
||||||
|
同时您可以将您的项目汇报给我们,优秀项目我们会放置在 D2Admin 相关位置并帮助您宣传。
|
||||||
|
|
||||||
|
## 加入我们
|
||||||
|
|
||||||
|
D2Admin 是完全开源免费的项目,旨在帮助开发者更方便地进行管理系统开发,同时也提供 2000 人的 QQ 交流群和微信群,前后端的朋友可以相互答疑,项目组成员全部在内,所有 D2 相关项目使用问题欢迎在群内提问。
|
||||||
|
|
||||||
|
> 隐性福利:重要通知会发群红包
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
[MIT](https://github.com/d2-projects/d2-admin/blob/master/LICENSE)
|
||||||
|
|
||||||
|
Copyright (c) 2018-present FairyEver
|
||||||
|
|
||||||
|

|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
module.exports = {
|
||||||
|
presets: [
|
||||||
|
'@vue/app'
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
https://d2admin.fairyever.com/
|
||||||
|
After Width: | Height: | Size: 748 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 258 KiB |
|
After Width: | Height: | Size: 272 KiB |
@@ -0,0 +1,23 @@
|
|||||||
|
module.exports = {
|
||||||
|
moduleFileExtensions: [
|
||||||
|
'js',
|
||||||
|
'jsx',
|
||||||
|
'json',
|
||||||
|
'vue'
|
||||||
|
],
|
||||||
|
transform: {
|
||||||
|
'^.+\\.vue$': 'vue-jest',
|
||||||
|
'.+\\.(css|styl|less|sass|scss|png|jpg|ttf|woff|woff2)$': 'jest-transform-stub',
|
||||||
|
'^.+\\.jsx?$': 'babel-jest'
|
||||||
|
},
|
||||||
|
moduleNameMapper: {
|
||||||
|
'^@/(.*)$': '<rootDir>/src/$1'
|
||||||
|
},
|
||||||
|
snapshotSerializers: [
|
||||||
|
'jest-serializer-vue'
|
||||||
|
],
|
||||||
|
testMatch: [
|
||||||
|
'**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)'
|
||||||
|
],
|
||||||
|
testURL: 'http://localhost/'
|
||||||
|
}
|
||||||
@@ -0,0 +1,80 @@
|
|||||||
|
{
|
||||||
|
"name": "d2-admin",
|
||||||
|
"version": "1.5.6",
|
||||||
|
"private": true,
|
||||||
|
"scripts": {
|
||||||
|
"serve": "vue-cli-service serve --open",
|
||||||
|
"start": "npm run serve",
|
||||||
|
"dev": "npm run serve",
|
||||||
|
"build": "vue-cli-service build",
|
||||||
|
"build:travis": "vue-cli-service build --mode travis",
|
||||||
|
"lint": "vue-cli-service lint --fix",
|
||||||
|
"test:unit": "vue-cli-service test:unit"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@d2-projects/d2-crud": "^1.2.0",
|
||||||
|
"axios": "^0.17.1",
|
||||||
|
"babel-polyfill": "^6.26.0",
|
||||||
|
"better-scroll": "^1.12.1",
|
||||||
|
"clipboard-polyfill": "^2.4.1",
|
||||||
|
"countup.js": "^1.9.3",
|
||||||
|
"dayjs": "^1.6.7",
|
||||||
|
"echarts": "^4.1.0",
|
||||||
|
"element-ui": "^2.4.4",
|
||||||
|
"file-saver": "^1.3.3",
|
||||||
|
"flex.css": "^1.1.7",
|
||||||
|
"fuse.js": "^3.2.1",
|
||||||
|
"github-markdown-css": "^2.10.0",
|
||||||
|
"highlight.js": "^9.12.0",
|
||||||
|
"hotkeys-js": "^3.3.6",
|
||||||
|
"js-cookie": "^2.2.0",
|
||||||
|
"lodash": "^4.17.10",
|
||||||
|
"lowdb": "^1.0.0",
|
||||||
|
"marked": "^0.3.9",
|
||||||
|
"mockjs": "^1.0.1-beta3",
|
||||||
|
"nprogress": "^0.2.0",
|
||||||
|
"papaparse": "^4.3.6",
|
||||||
|
"particles.js": "^2.0.0",
|
||||||
|
"quill": "^1.3.4",
|
||||||
|
"screenfull": "^3.3.2",
|
||||||
|
"simplemde": "^1.11.2",
|
||||||
|
"ua-parser-js": "^0.7.18",
|
||||||
|
"v-charts": "^1.17.6",
|
||||||
|
"v-contextmenu": "^2.7.0",
|
||||||
|
"vue": "^2.5.17",
|
||||||
|
"vue-grid-layout": "^2.1.11",
|
||||||
|
"vue-i18n": "^7.4.2",
|
||||||
|
"vue-json-tree-view": "^2.1.4",
|
||||||
|
"vue-router": "^3.0.1",
|
||||||
|
"vue-splitpane": "^1.0.2",
|
||||||
|
"vuex": "^3.0.1",
|
||||||
|
"xlsx": "^0.12.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@kazupon/vue-i18n-loader": "^0.3.0",
|
||||||
|
"@vue/cli-plugin-babel": "^3.0.0",
|
||||||
|
"@vue/cli-plugin-eslint": "^3.0.0",
|
||||||
|
"@vue/cli-plugin-unit-jest": "^3.0.0",
|
||||||
|
"@vue/cli-service": "^3.0.0",
|
||||||
|
"@vue/eslint-config-standard": "^3.0.0",
|
||||||
|
"@vue/test-utils": "^1.0.0-beta.20",
|
||||||
|
"babel-core": "7.0.0-bridge.0",
|
||||||
|
"babel-jest": "^23.0.1",
|
||||||
|
"lint-staged": "^7.2.0",
|
||||||
|
"node-sass": "^4.9.0",
|
||||||
|
"sass-loader": "^7.0.1",
|
||||||
|
"svg-sprite-loader": "^3.8.0",
|
||||||
|
"text-loader": "0.0.1",
|
||||||
|
"vue-template-compiler": "^2.5.17"
|
||||||
|
},
|
||||||
|
"lint-staged": {
|
||||||
|
"*.js": [
|
||||||
|
"vue-cli-service lint",
|
||||||
|
"git add"
|
||||||
|
],
|
||||||
|
"*.vue": [
|
||||||
|
"vue-cli-service lint",
|
||||||
|
"git add"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
201810220000004bh2i5pwqfgrqp1azjyj7itsun1y3fr4mcbxlc397hri1pvzeo
|
||||||
|
After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
@@ -0,0 +1,6 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||||
|
<path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
|
||||||
|
<path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
|
||||||
|
<animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
|
||||||
|
</path>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 422 B |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 86 KiB |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 359 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 6.2 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 20 KiB |
@@ -0,0 +1,58 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
|
<link rel="icon" href="<%= BASE_URL %>icon.ico">
|
||||||
|
<title><%= VUE_APP_TITLE %></title>
|
||||||
|
<style>
|
||||||
|
html, body, #app { height: 100%; margin: 0px; padding: 0px; }
|
||||||
|
.d2-home { background-color: #303133; height: 100%; display: flex; flex-direction: column; }
|
||||||
|
.d2-home__main { user-select: none; width: 100%; flex-grow: 1; display: flex; justify-content: center; align-items: center; flex-direction: column; }
|
||||||
|
.d2-home__footer { width: 100%; flex-grow: 0; text-align: center; padding: 1em 0; }
|
||||||
|
.d2-home__footer > a { font-size: 12px; color: #ABABAB; text-decoration: none; }
|
||||||
|
.d2-home__loading { height: 32px; width: 32px; margin-bottom: 20px; }
|
||||||
|
.d2-home__title { color: #FFF; font-size: 14px; margin-bottom: 10px; }
|
||||||
|
.d2-home__sub-title { color: #ABABAB; font-size: 12px; }
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
var _hmt = _hmt || [];
|
||||||
|
var hmid = "bc38887aa5588add05a38704342ad7e8";
|
||||||
|
(function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?" + hmid; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s);})();
|
||||||
|
</script>
|
||||||
|
<!-- ua -->
|
||||||
|
<script src="<%= BASE_URL %>script/ua-parser.min.js"></script>
|
||||||
|
<script src="<%= BASE_URL %>script/ua.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<noscript>
|
||||||
|
<strong>
|
||||||
|
很抱歉,如果没有 JavaScript 支持,D2Admin 将不能正常工作。请启用浏览器的 JavaScript 然后继续。
|
||||||
|
</strong>
|
||||||
|
</noscript>
|
||||||
|
<div id="app">
|
||||||
|
<div class="d2-home">
|
||||||
|
<div class="d2-home__main">
|
||||||
|
<img
|
||||||
|
class="d2-home__loading"
|
||||||
|
src="./image/loading/loading-spin.svg"
|
||||||
|
alt="loading">
|
||||||
|
<div class="d2-home__title">
|
||||||
|
正在加载资源
|
||||||
|
</div>
|
||||||
|
<div class="d2-home__sub-title">
|
||||||
|
初次加载资源可能需要较多时间 请耐心等待
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="d2-home__footer">
|
||||||
|
<a
|
||||||
|
href="https://github.com/d2-projects/d2-admin"
|
||||||
|
target="_blank">
|
||||||
|
https://github.com/d2-projects/d2-admin
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
|
<title>提示信息</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>请不要使用手机浏览</h1>
|
||||||
|
<!-- 请自行完善此页面 -->
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# 一级标题
|
||||||
|
|
||||||
|
| ID | Name | Email |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| 0001 | FairyEver | 1711467488@qq.com |
|
||||||
|
|
||||||
|
```
|
||||||
|
alert('Hello World')
|
||||||
|
```
|
||||||
|
|
||||||
|
一般引用
|
||||||
|
|
||||||
|
> 引用文字
|
||||||
|
|
||||||
|
分享一个我很早前的一副设计作品 [in Lofter](http://fairyever.lofter.com/post/16ff00_6796fe8) 借此演示百度云链接的显示优化
|
||||||
|
|
||||||
|
> https://pan.baidu.com/s/1kW6uUwB
|
||||||
|
|
||||||
|
设计源文件
|
||||||
|
|
||||||
|
> 链接: https://pan.baidu.com/s/1ggFW21l 密码: 877y
|
||||||
|
|
||||||
|
[https://github.com/d2-projects](https://github.com/d2-projects)
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
/* eslint-disable */
|
||||||
|
|
||||||
|
var parser = new UAParser()
|
||||||
|
|
||||||
|
var uaResult = parser.getResult()
|
||||||
|
|
||||||
|
if (uaResult.device.type === 'mobile') {
|
||||||
|
window.location.href = './is-mobile.html'
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
"src_dir" : "/home/travis/build/d2-projects/d2-admin/dist",
|
||||||
|
"bucket" : "d2-admin",
|
||||||
|
"ignore_dir" : false,
|
||||||
|
"overwrite" : true,
|
||||||
|
"check_exists" : true,
|
||||||
|
"check_hash" : true,
|
||||||
|
"check_size" : true,
|
||||||
|
"rescan_local" : true,
|
||||||
|
"skip_file_prefixes" : "test,demo,",
|
||||||
|
"skip_path_prefixes" : "hello/,temp/",
|
||||||
|
"skip_fixed_strings" : ".svn,.git",
|
||||||
|
"skip_suffixes" : ".DS_Store,.exe",
|
||||||
|
"log_file" : "upload.log",
|
||||||
|
"log_level" : "info",
|
||||||
|
"log_rotate" : 1,
|
||||||
|
"log_stdout" : false
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
fd53ac81035ca2b6e7b5252caed08eff24e23002
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
<template>
|
||||||
|
<div id="app">
|
||||||
|
<router-view/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'app'
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
@import '~@/assets/style/public-class.scss';
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import request from '@/plugin/axios'
|
||||||
|
|
||||||
|
export function ComponentsMarkdownBase (url) {
|
||||||
|
return request({
|
||||||
|
baseURL: process.env.BASE_URL,
|
||||||
|
url,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import request from '@/plugin/axios'
|
||||||
|
|
||||||
|
export function BusinessTable1List (data) {
|
||||||
|
return request({
|
||||||
|
url: '/demo/business/table/1',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
import request from '@/plugin/axios'
|
||||||
|
|
||||||
|
export function PluginMocksAjax () {
|
||||||
|
return request({
|
||||||
|
url: '/demo/plugins/mock/ajax',
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import request from '@/plugin/axios'
|
||||||
|
|
||||||
|
export function AccountLogin (data) {
|
||||||
|
return request({
|
||||||
|
url: '/login',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
// 过渡动画 横向渐变
|
||||||
|
.fade-transverse-leave-active,
|
||||||
|
.fade-transverse-enter-active {
|
||||||
|
transition: all .5s;
|
||||||
|
}
|
||||||
|
.fade-transverse-enter {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-30px);
|
||||||
|
}
|
||||||
|
.fade-transverse-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(30px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 过渡动画 缩放渐变
|
||||||
|
.fade-scale-leave-active,
|
||||||
|
.fade-scale-enter-active {
|
||||||
|
transition: all .5s;
|
||||||
|
}
|
||||||
|
.fade-scale-enter {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale(1.2);
|
||||||
|
}
|
||||||
|
.fade-scale-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale(0.8);
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
// 优化显示
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
margin: 0px;
|
||||||
|
height: 100%;
|
||||||
|
font-family: "Arial", "Microsoft YaHei", "黑体", "宋体", sans-serif;
|
||||||
|
#app {
|
||||||
|
@extend %full;
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
// element 样式补丁
|
||||||
|
|
||||||
|
.el-card {
|
||||||
|
&.is-always-shadow {
|
||||||
|
box-shadow: 0 0 8px 0 rgba(232,237,250,.6), 0 2px 4px 0 rgba(232,237,250,.5);
|
||||||
|
}
|
||||||
|
&.is-hover-shadow {
|
||||||
|
&:hover {
|
||||||
|
box-shadow: 0 0 8px 0 rgba(232,237,250,.6), 0 2px 4px 0 rgba(232,237,250,.5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-menu--horizontal {
|
||||||
|
border-bottom: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-tabs__item:focus.is-active.is-focus:not(:active) {
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
// markdown 样式补丁
|
||||||
|
|
||||||
|
.markdown-body {
|
||||||
|
ul {
|
||||||
|
list-style: disc;
|
||||||
|
}
|
||||||
|
h1, h2 {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
#nprogress {
|
||||||
|
.bar {
|
||||||
|
background: $color-primary !important;
|
||||||
|
}
|
||||||
|
.peg {
|
||||||
|
box-shadow: 0 0 10px $color-primary, 0 0 5px $color-primary !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
.tree-view-wrapper.tree-view-small {
|
||||||
|
.tree-view-item {
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
// vue-splitpane 样式补丁
|
||||||
|
|
||||||
|
.vue-grid-item {
|
||||||
|
&.vue-grid-placeholder {
|
||||||
|
border: 1px solid $color-border-1;
|
||||||
|
background-color: rgba(#FFF, .3);
|
||||||
|
opacity: 1;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
// vue-splitpane 样式补丁
|
||||||
|
|
||||||
|
@import '~@/assets/style/unit/color.scss';
|
||||||
|
|
||||||
|
.splitter-pane-resizer {
|
||||||
|
background-color: $color-border-1 !important;
|
||||||
|
opacity: 1 !important;
|
||||||
|
}
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
@import 'public';
|
||||||
|
|
||||||
|
// 补丁 base
|
||||||
|
@import '~@/assets/style/fixed/base.scss';
|
||||||
|
// 补丁 element
|
||||||
|
@import '~@/assets/style/fixed/element.scss';
|
||||||
|
// 补丁 markdown
|
||||||
|
@import '~@/assets/style/fixed/markdown.scss';
|
||||||
|
// 补丁 n-progress
|
||||||
|
@import '~@/assets/style/fixed/n-progress.scss';
|
||||||
|
// 补丁 vue-splitpane
|
||||||
|
@import '~@/assets/style/fixed/vue-splitpane.scss';
|
||||||
|
// 补丁 vue-grid-layout
|
||||||
|
@import '~@/assets/style/fixed/vue-grid-layout.scss';
|
||||||
|
// 补丁 tree-view
|
||||||
|
@import '~@/assets/style/fixed/tree-view.scss';
|
||||||
|
|
||||||
|
// 动画
|
||||||
|
@import '~@/assets/style/animate/vue-transition.scss';
|
||||||
|
|
||||||
|
// 在这里写公用的class
|
||||||
|
// 注意 这个文件里只写class
|
||||||
|
// mixin等内容请在 public.scss 里书写
|
||||||
|
|
||||||
|
// 文字相关
|
||||||
|
.#{$prefix}-text-center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 浮动相关
|
||||||
|
.#{$prefix}-fl {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.#{$prefix}-fr {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.#{$prefix}-clearfix:before,
|
||||||
|
.#{$prefix}-clearfix:after {
|
||||||
|
display: table;
|
||||||
|
content: "";
|
||||||
|
}
|
||||||
|
.#{$prefix}-clearfix:after {
|
||||||
|
clear: both
|
||||||
|
}
|
||||||
|
|
||||||
|
// 边距相关
|
||||||
|
$sizes: (0, 5, 10, 15, 20);
|
||||||
|
|
||||||
|
@for $index from 1 to 6 {
|
||||||
|
.#{$prefix}-m-#{nth($sizes, $index)} { margin: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-mt-#{nth($sizes, $index)} { margin-top: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-mr-#{nth($sizes, $index)} { margin-right: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-mb-#{nth($sizes, $index)} { margin-bottom: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-ml-#{nth($sizes, $index)} { margin-left: #{nth($sizes, $index)}px !important; }
|
||||||
|
|
||||||
|
.#{$prefix}-p-#{nth($sizes, $index)} { padding: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-pt-#{nth($sizes, $index)} { padding-top: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-pr-#{nth($sizes, $index)} { padding-right: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-pb-#{nth($sizes, $index)} { padding-bottom: #{nth($sizes, $index)}px !important; }
|
||||||
|
.#{$prefix}-pl-#{nth($sizes, $index)} { padding-left: #{nth($sizes, $index)}px !important; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// 快速使用
|
||||||
|
|
||||||
|
.#{$prefix}-m { margin: 20px !important; }
|
||||||
|
.#{$prefix}-mt { margin-top: 20px !important; }
|
||||||
|
.#{$prefix}-mr { margin-right: 20px !important; }
|
||||||
|
.#{$prefix}-mb { margin-bottom: 20px !important; }
|
||||||
|
.#{$prefix}-ml { margin-left: 20px !important; }
|
||||||
|
|
||||||
|
.#{$prefix}-p { padding: 20px !important; }
|
||||||
|
.#{$prefix}-pt { padding-top: 20px !important; }
|
||||||
|
.#{$prefix}-pr { padding-right: 20px !important; }
|
||||||
|
.#{$prefix}-pb { padding-bottom: 20px !important; }
|
||||||
|
.#{$prefix}-pl { padding-left: 20px !important; }
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
@import '~@/assets/style/unit/color.scss';
|
||||||
|
|
||||||
|
// 工具类名统一前缀
|
||||||
|
$prefix: d2;
|
||||||
|
|
||||||
|
// 禁止用户选中 鼠标变为手形
|
||||||
|
%unable-select {
|
||||||
|
user-select: none;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 填满父元素
|
||||||
|
// 组要父元素 position: relative | absolute;
|
||||||
|
%full {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 0px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// flex 垂直水平居中
|
||||||
|
%flex-center-row {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
%flex-center-col {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将元素模拟成卡片外观
|
||||||
|
%card {
|
||||||
|
border: 1px solid #dddee1;
|
||||||
|
border-color: #e9eaec;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-size: 14px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
@import './setting.scss';
|
||||||
|
@import '../theme.scss';
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// 主题名称
|
||||||
|
$theme-name: 'd2';
|
||||||
|
// 主题背景颜色
|
||||||
|
$theme-bg-color: #ebf1f6;
|
||||||
|
// 主题背景图片遮罩
|
||||||
|
$theme-bg-mask: rgba(#000, 0);
|
||||||
|
|
||||||
|
// container组件
|
||||||
|
$theme-container-background-color: rgba(#FFF, 1);
|
||||||
|
$theme-container-header-footer-background-color: #FFF;
|
||||||
|
$theme-container-border-inner: 1px solid #cfd7e5;
|
||||||
|
$theme-container-border-outer: 1px solid #cfd7e5;
|
||||||
|
|
||||||
|
$theme-multiple-page-control-color: $color-text-normal;
|
||||||
|
$theme-multiple-page-control-color-active: #2f74ff;
|
||||||
|
$theme-multiple-page-control-nav-prev-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-nav-next-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-border-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-border-color-active: #FFF;
|
||||||
|
$theme-multiple-page-control-background-color: rgba(#000, .03);
|
||||||
|
$theme-multiple-page-control-background-color-active: #FFF;
|
||||||
|
|
||||||
|
// 顶栏和侧边栏中展开的菜单 hover 状态下
|
||||||
|
$theme-menu-item-color-hover: #293849;
|
||||||
|
$theme-menu-item-background-color-hover: #ecf5ff;
|
||||||
|
|
||||||
|
// 顶栏上的文字颜色
|
||||||
|
$theme-header-item-color: $color-text-normal;
|
||||||
|
$theme-header-item-background-color: transparent;
|
||||||
|
// 顶栏上的项目在 hover 时
|
||||||
|
$theme-header-item-color-hover: #2f74ff;
|
||||||
|
$theme-header-item-background-color-hover: rgba(#FFF, .5);
|
||||||
|
// 顶栏上的项目在 focus 时
|
||||||
|
$theme-header-item-color-focus: #2f74ff;
|
||||||
|
$theme-header-item-background-color-focus: rgba(#FFF, .5);
|
||||||
|
// 顶栏上的项目在 active 时
|
||||||
|
$theme-header-item-color-active: #2f74ff;
|
||||||
|
$theme-header-item-background-color-active: rgba(#FFF, .5);
|
||||||
|
|
||||||
|
// 侧边栏上的文字颜色
|
||||||
|
$theme-aside-item-color: $color-text-normal;
|
||||||
|
$theme-aside-item-background-color: transparent;
|
||||||
|
// 侧边栏上的项目在 hover 时
|
||||||
|
$theme-aside-item-color-hover: #2f74ff;
|
||||||
|
$theme-aside-item-background-color-hover: rgba(#FFF, .5);
|
||||||
|
// 侧边栏上的项目在 focus 时
|
||||||
|
$theme-aside-item-color-focus: #2f74ff;
|
||||||
|
$theme-aside-item-background-color-focus: rgba(#FFF, .5);
|
||||||
|
// 侧边栏上的项目在 active 时
|
||||||
|
$theme-aside-item-color-active: #2f74ff;
|
||||||
|
$theme-aside-item-background-color-active: rgba(#FFF, .5);
|
||||||
|
|
||||||
|
// 侧边栏菜单为空的时候显示的元素
|
||||||
|
$theme-aside-menu-empty-icon-color: $color-text-normal;
|
||||||
|
$theme-aside-menu-empty-text-color: $color-text-normal;
|
||||||
|
$theme-aside-menu-empty-background-color: rgba(#000, .03);
|
||||||
|
$theme-aside-menu-empty-icon-color-hover: $color-text-main;
|
||||||
|
$theme-aside-menu-empty-text-color-hover: $color-text-main;
|
||||||
|
$theme-aside-menu-empty-background-color-hover: rgba(#000, .05);
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
@import './setting.scss';
|
||||||
|
@import '../theme.scss';
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// 主题名称
|
||||||
|
$theme-name: 'line';
|
||||||
|
// 主题背景颜色
|
||||||
|
$theme-bg-color: #f8f8f9;
|
||||||
|
// 主题背景图片遮罩
|
||||||
|
$theme-bg-mask: rgba(#000, 0);
|
||||||
|
|
||||||
|
// container组件
|
||||||
|
$theme-container-background-color: rgba(#FFF, .8);
|
||||||
|
$theme-container-header-footer-background-color: #FFF;
|
||||||
|
$theme-container-border-inner: 1px solid $color-border-2;
|
||||||
|
$theme-container-border-outer: 1px solid #cfd7e5;
|
||||||
|
|
||||||
|
$theme-multiple-page-control-color: #FFF;
|
||||||
|
$theme-multiple-page-control-color-active: $color-text-normal;
|
||||||
|
$theme-multiple-page-control-nav-prev-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-nav-next-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-border-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-border-color-active: #FFF;
|
||||||
|
$theme-multiple-page-control-background-color: #cfd7e5;
|
||||||
|
$theme-multiple-page-control-background-color-active: #FFF;
|
||||||
|
|
||||||
|
// 顶栏和侧边栏中展开的菜单 hover 状态下
|
||||||
|
$theme-menu-item-color-hover: #293849;
|
||||||
|
$theme-menu-item-background-color-hover: #EFEFEF;
|
||||||
|
|
||||||
|
// 顶栏上的文字颜色
|
||||||
|
$theme-header-item-color: $color-text-normal;
|
||||||
|
$theme-header-item-background-color: transparent;
|
||||||
|
// 顶栏上的项目在 hover 时
|
||||||
|
$theme-header-item-color-hover: $color-text-main;
|
||||||
|
$theme-header-item-background-color-hover: rgba(#000, .02);
|
||||||
|
// 顶栏上的项目在 focus 时
|
||||||
|
$theme-header-item-color-focus: $color-text-main;
|
||||||
|
$theme-header-item-background-color-focus: rgba(#000, .02);
|
||||||
|
// 顶栏上的项目在 active 时
|
||||||
|
$theme-header-item-color-active: $color-text-main;
|
||||||
|
$theme-header-item-background-color-active: rgba(#000, .03);
|
||||||
|
|
||||||
|
// 侧边栏上的文字颜色
|
||||||
|
$theme-aside-item-color: $color-text-normal;
|
||||||
|
$theme-aside-item-background-color: transparent;
|
||||||
|
// 侧边栏上的项目在 hover 时
|
||||||
|
$theme-aside-item-color-hover: $color-text-main;
|
||||||
|
$theme-aside-item-background-color-hover: rgba(#000, .02);
|
||||||
|
// 侧边栏上的项目在 focus 时
|
||||||
|
$theme-aside-item-color-focus: $color-text-main;
|
||||||
|
$theme-aside-item-background-color-focus: rgba(#000, .02);
|
||||||
|
// 侧边栏上的项目在 active 时
|
||||||
|
$theme-aside-item-color-active: $color-text-main;
|
||||||
|
$theme-aside-item-background-color-active: rgba(#000, .03);
|
||||||
|
|
||||||
|
// 侧边栏菜单为空的时候显示的元素
|
||||||
|
$theme-aside-menu-empty-icon-color: $color-text-normal;
|
||||||
|
$theme-aside-menu-empty-text-color: $color-text-normal;
|
||||||
|
$theme-aside-menu-empty-background-color: rgba(#000, .03);
|
||||||
|
$theme-aside-menu-empty-icon-color-hover: $color-text-main;
|
||||||
|
$theme-aside-menu-empty-text-color-hover: $color-text-main;
|
||||||
|
$theme-aside-menu-empty-background-color-hover: rgba(#000, .05);
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
@import '~@/assets/style/public.scss';
|
||||||
|
@import '~@/assets/style/theme/theme-base.scss';
|
||||||
|
|
||||||
|
@import '~@/assets/style/theme/d2/index.scss';
|
||||||
|
@import '~@/assets/style/theme/line/index.scss';
|
||||||
|
@import '~@/assets/style/theme/star/index.scss';
|
||||||
|
@import '~@/assets/style/theme/tomorrow-night-blue/index.scss';
|
||||||
|
@import '~@/assets/style/theme/violet/index.scss';
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
@import './setting.scss';
|
||||||
|
@import '../theme.scss';
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// 主题名称
|
||||||
|
$theme-name: 'star';
|
||||||
|
// 主题背景颜色
|
||||||
|
$theme-bg-color: #EFF4F8;
|
||||||
|
// 主题背景图片遮罩
|
||||||
|
$theme-bg-mask: rgba(#000, .3);
|
||||||
|
|
||||||
|
// container组件
|
||||||
|
$theme-container-background-color: rgba(#FFF, .9);
|
||||||
|
$theme-container-header-footer-background-color: #FFF;
|
||||||
|
$theme-container-border-inner: 1px solid $color-border-1;
|
||||||
|
$theme-container-border-outer: 1px solid #114450;
|
||||||
|
|
||||||
|
$theme-multiple-page-control-color: #FFF;
|
||||||
|
$theme-multiple-page-control-color-active: $color-text-normal;
|
||||||
|
$theme-multiple-page-control-nav-prev-color: #FFF;
|
||||||
|
$theme-multiple-page-control-nav-next-color: #FFF;
|
||||||
|
$theme-multiple-page-control-border-color: #114450;
|
||||||
|
$theme-multiple-page-control-border-color-active: #FFF;
|
||||||
|
$theme-multiple-page-control-background-color: rgba(#FFF, .5);
|
||||||
|
$theme-multiple-page-control-background-color-active: #FFF;
|
||||||
|
|
||||||
|
// 顶栏和侧边栏中展开的菜单 hover 状态下
|
||||||
|
$theme-menu-item-color-hover: #293849;
|
||||||
|
$theme-menu-item-background-color-hover: #ecf5ff;
|
||||||
|
|
||||||
|
// 顶栏上的文字颜色
|
||||||
|
$theme-header-item-color: #FFF;
|
||||||
|
$theme-header-item-background-color: transparent;
|
||||||
|
// 顶栏上的项目在 hover 时
|
||||||
|
$theme-header-item-color-hover: #FFF;
|
||||||
|
$theme-header-item-background-color-hover: rgba(#000, .2);
|
||||||
|
// 顶栏上的项目在 focus 时
|
||||||
|
$theme-header-item-color-focus: #FFF;
|
||||||
|
$theme-header-item-background-color-focus: rgba(#000, .2);
|
||||||
|
// 顶栏上的项目在 active 时
|
||||||
|
$theme-header-item-color-active: #FFF;
|
||||||
|
$theme-header-item-background-color-active: rgba(#000, .3);
|
||||||
|
|
||||||
|
// 侧边栏上的文字颜色
|
||||||
|
$theme-aside-item-color: #FFF;
|
||||||
|
$theme-aside-item-background-color: transparent;
|
||||||
|
// 侧边栏上的项目在 hover 时
|
||||||
|
$theme-aside-item-color-hover: #FFF;
|
||||||
|
$theme-aside-item-background-color-hover: rgba(#000, .2);
|
||||||
|
// 侧边栏上的项目在 focus 时
|
||||||
|
$theme-aside-item-color-focus: #FFF;
|
||||||
|
$theme-aside-item-background-color-focus: rgba(#000, .2);
|
||||||
|
// 侧边栏上的项目在 active 时
|
||||||
|
$theme-aside-item-color-active: #FFF;
|
||||||
|
$theme-aside-item-background-color-active: rgba(#000, .3);
|
||||||
|
|
||||||
|
// 侧边栏菜单为空的时候显示的元素
|
||||||
|
$theme-aside-menu-empty-icon-color: #FFF;
|
||||||
|
$theme-aside-menu-empty-text-color: #FFF;
|
||||||
|
$theme-aside-menu-empty-background-color: rgba(#FFF, .2);
|
||||||
|
$theme-aside-menu-empty-icon-color-hover: #FFF;
|
||||||
|
$theme-aside-menu-empty-text-color-hover: #FFF;
|
||||||
|
$theme-aside-menu-empty-background-color-hover: rgba(#FFF, .3);
|
||||||
@@ -0,0 +1,445 @@
|
|||||||
|
// 减小弹出菜单的项目高度
|
||||||
|
.el-menu--popup {
|
||||||
|
.el-menu-item {
|
||||||
|
height: 36px;
|
||||||
|
line-height: 36px;
|
||||||
|
}
|
||||||
|
.el-submenu__title {
|
||||||
|
height: 36px;
|
||||||
|
line-height: 36px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 整体框架结构
|
||||||
|
.d2-layout-header-aside-group {
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
min-width: 900px;
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
// 背景上面的半透明遮罩
|
||||||
|
.d2-layout-header-aside-mask {
|
||||||
|
@extend %full;
|
||||||
|
}
|
||||||
|
// 内容层
|
||||||
|
.d2-layout-header-aside-content {
|
||||||
|
@extend %full;
|
||||||
|
.d2-theme-header {
|
||||||
|
height: 60px;
|
||||||
|
.d2-theme-header-menu {
|
||||||
|
overflow: hidden;
|
||||||
|
&.is-scrollable {
|
||||||
|
position: relative;
|
||||||
|
padding: 0 20px;
|
||||||
|
.d2-theme-header-menu__prev, .d2-theme-header-menu__next {
|
||||||
|
display: -webkit-box;
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-theme-header-menu__content {
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-theme-header-menu__scroll {
|
||||||
|
white-space: nowrap;
|
||||||
|
position: relative;
|
||||||
|
-webkit-transition: -webkit-transform .3s;
|
||||||
|
transition: -webkit-transform .3s;
|
||||||
|
transition: transform .3s;
|
||||||
|
transition: transform .3s, -webkit-transform .3s;
|
||||||
|
transition: transform .3s,-webkit-transform .3s;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-theme-header-menu__prev, .d2-theme-header-menu__next {
|
||||||
|
height: 60px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
font-size: 20px;
|
||||||
|
cursor: pointer;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.d2-theme-header-menu__prev {
|
||||||
|
left: 0;
|
||||||
|
border-top-left-radius: 2px;
|
||||||
|
border-bottom-left-radius: 2px;
|
||||||
|
}
|
||||||
|
.d2-theme-header-menu__next {
|
||||||
|
right: 0;
|
||||||
|
border-top-right-radius: 2px;
|
||||||
|
border-bottom-right-radius: 2px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-theme-container {
|
||||||
|
.d2-theme-container-aside {
|
||||||
|
transition: width .3s;
|
||||||
|
position: relative;
|
||||||
|
.d2-layout-header-aside-menu-side {
|
||||||
|
@extend %full;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-theme-container-main {
|
||||||
|
padding: 0px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-theme-container-main-layer {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
right: 0px;
|
||||||
|
}
|
||||||
|
.d2-theme-container-main-body {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 主题公用
|
||||||
|
.d2-layout-header-aside-group {
|
||||||
|
&.grayMode {
|
||||||
|
-webkit-filter: grayscale(100%);
|
||||||
|
-moz-filter: grayscale(100%);
|
||||||
|
-ms-filter: grayscale(100%);
|
||||||
|
-o-filter: grayscale(100%);
|
||||||
|
filter: grayscale(100%);
|
||||||
|
filter: gray;
|
||||||
|
}
|
||||||
|
// 主体
|
||||||
|
.d2-layout-header-aside-content {
|
||||||
|
// [布局] 顶栏
|
||||||
|
.d2-theme-header {
|
||||||
|
// logo区域
|
||||||
|
.logo-group {
|
||||||
|
transition: width .3s;
|
||||||
|
float: left;
|
||||||
|
text-align: center;
|
||||||
|
img {
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 折叠侧边栏切换按钮
|
||||||
|
.toggle-aside-btn {
|
||||||
|
float: left;
|
||||||
|
height: 60px;
|
||||||
|
width: 60px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
@extend %unable-select;
|
||||||
|
i {
|
||||||
|
font-size: 20px;
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [菜单] 顶栏
|
||||||
|
.el-menu {
|
||||||
|
float: left;
|
||||||
|
border-bottom: none;
|
||||||
|
background-color: transparent;
|
||||||
|
%header-menu-item {
|
||||||
|
@extend %unable-select;
|
||||||
|
i.fa {
|
||||||
|
font-size: 16px;
|
||||||
|
margin-right: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-menu-item {
|
||||||
|
@extend %header-menu-item;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.el-submenu {
|
||||||
|
@extend %header-menu-item;
|
||||||
|
.el-submenu__title {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 顶栏右侧的按钮
|
||||||
|
.d2-header-right {
|
||||||
|
float: right;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.btn-text {
|
||||||
|
padding: 14px 12px;
|
||||||
|
border-radius: 4px;
|
||||||
|
margin: 0px !important;
|
||||||
|
}
|
||||||
|
.el-dropdown {
|
||||||
|
@extend %unable-select;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [布局] 顶栏下面
|
||||||
|
.d2-theme-container {
|
||||||
|
// 侧边栏
|
||||||
|
.d2-theme-container-aside {
|
||||||
|
%d2-theme-container-aside-menu-icon {
|
||||||
|
width: 20px;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
// [菜单] 正常状态
|
||||||
|
.el-menu {
|
||||||
|
@extend %unable-select;
|
||||||
|
background-color: transparent;
|
||||||
|
border-right: none;
|
||||||
|
.el-menu-item {
|
||||||
|
i {
|
||||||
|
@extend %d2-theme-container-aside-menu-icon;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-submenu {
|
||||||
|
@extend %unable-select;
|
||||||
|
.el-submenu__title {
|
||||||
|
i {
|
||||||
|
@extend %d2-theme-container-aside-menu-icon;
|
||||||
|
}
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
margin-top: -10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 菜单为空的时候显示的信息
|
||||||
|
.d2-layout-header-aside-menu-empty {
|
||||||
|
height: 160px;
|
||||||
|
margin: 10px;
|
||||||
|
margin-top: 0px;
|
||||||
|
border-radius: 4px;
|
||||||
|
@extend %unable-select;
|
||||||
|
i {
|
||||||
|
font-size: 30px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [菜单] 折叠状态
|
||||||
|
.el-menu--collapse {
|
||||||
|
background-color: transparent;
|
||||||
|
.el-submenu__title {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 右下 主体
|
||||||
|
.d2-theme-container-main {
|
||||||
|
// 主体部分分为多页面控制器 和主体
|
||||||
|
.d2-theme-container-main-header {
|
||||||
|
// 多页面控制器
|
||||||
|
.d2-multiple-page-control-group {
|
||||||
|
padding-right: 20px;
|
||||||
|
.d2-multiple-page-control-content {
|
||||||
|
overflow: auto;
|
||||||
|
position: relative;
|
||||||
|
.d2-multiple-page-control-content-inner {
|
||||||
|
.d2-multiple-page-control {
|
||||||
|
.el-tabs__header.is-top {
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
.el-tabs__nav {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-multiple-page-control-btn {
|
||||||
|
position: relative;
|
||||||
|
bottom: -1px;
|
||||||
|
.el-dropdown {
|
||||||
|
.el-button-group {
|
||||||
|
.el-button:first-child {
|
||||||
|
border-bottom-left-radius: 0px;
|
||||||
|
}
|
||||||
|
.el-button:last-child {
|
||||||
|
border-bottom-right-radius: 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 主体
|
||||||
|
.d2-theme-container-main-body {
|
||||||
|
// 布局组件
|
||||||
|
.container-component {
|
||||||
|
@extend %full;
|
||||||
|
overflow: hidden;
|
||||||
|
// 填充式布局组件
|
||||||
|
.d2-container-full {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-full__header {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.d2-container-full__body {
|
||||||
|
flex-grow: 1;
|
||||||
|
padding: 20px 20px;
|
||||||
|
overflow: auto;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.d2-container-full__footer {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 填充式布局组件 - 滚动优化
|
||||||
|
.d2-container-full-bs {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-full-bs__header {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.d2-container-full-bs__body {
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
.d2-container-full-bs__body-wrapper-inner {
|
||||||
|
padding: 20px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-container-full-bs__footer {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 隐形布局组件
|
||||||
|
.d2-container-ghost {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-ghost__header {
|
||||||
|
padding: 20px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
}
|
||||||
|
.d2-container-ghost__body {
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow: auto;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.d2-container-ghost__footer {
|
||||||
|
padding: 20px;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 隐形布局组件 - 滚动优化
|
||||||
|
.d2-container-ghost-bs {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-ghost-bs__header {
|
||||||
|
padding: 20px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
}
|
||||||
|
.d2-container-ghost-bs__body {
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.d2-container-ghost-bs__footer {
|
||||||
|
padding: 20px;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 卡片式布局组件
|
||||||
|
.d2-container-card {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-card__header {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.d2-container-card__body {
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow: auto;
|
||||||
|
.d2-container-card__body-card {
|
||||||
|
position: relative;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
padding: 20px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-container-card__footer {
|
||||||
|
padding: 20px;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 卡片式布局组件 - 滚动优化
|
||||||
|
.d2-container-card-bs {
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-card-bs__header {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.d2-container-card-bs__body {
|
||||||
|
position: relative;
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow: hidden;
|
||||||
|
.d2-container-card-bs__body-wrapper-inner {
|
||||||
|
padding-bottom: 20px;
|
||||||
|
}
|
||||||
|
.d2-container-card-bs__body-card {
|
||||||
|
position: relative;
|
||||||
|
padding: 20px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-container-card-bs__footer {
|
||||||
|
padding: 20px;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,413 @@
|
|||||||
|
// 每个主题特有的设置
|
||||||
|
.theme-#{$theme-name} {
|
||||||
|
|
||||||
|
.el-card {
|
||||||
|
&.d2-card {
|
||||||
|
border: $theme-container-border-outer;
|
||||||
|
.el-card__header {
|
||||||
|
border-bottom: $theme-container-border-outer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 背景图片和遮罩
|
||||||
|
.d2-layout-header-aside-group {
|
||||||
|
background-color: $theme-bg-color;
|
||||||
|
.d2-layout-header-aside-mask {
|
||||||
|
background: $theme-bg-mask;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 菜单项目
|
||||||
|
@mixin theme-menu-hover-style {
|
||||||
|
color: $theme-menu-item-color-hover;
|
||||||
|
i.fa {
|
||||||
|
color: $theme-menu-item-color-hover;
|
||||||
|
}
|
||||||
|
background: $theme-menu-item-background-color-hover;
|
||||||
|
}
|
||||||
|
%el-menu-icon {
|
||||||
|
i {
|
||||||
|
display: inline-block;
|
||||||
|
width: 14px;
|
||||||
|
text-align: center;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
svg {
|
||||||
|
margin: 0px;
|
||||||
|
height: 14px;
|
||||||
|
width: 14px;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-submenu__title {
|
||||||
|
@extend %unable-select;
|
||||||
|
@extend %el-menu-icon;
|
||||||
|
}
|
||||||
|
.el-menu-item {
|
||||||
|
@extend %unable-select;
|
||||||
|
@extend %el-menu-icon;
|
||||||
|
}
|
||||||
|
.el-submenu__title:hover {
|
||||||
|
@include theme-menu-hover-style;
|
||||||
|
}
|
||||||
|
.el-menu-item:hover {
|
||||||
|
@include theme-menu-hover-style;
|
||||||
|
}
|
||||||
|
.el-menu--horizontal .el-menu-item:not(.is-disabled):hover {
|
||||||
|
@include theme-menu-hover-style;
|
||||||
|
}
|
||||||
|
.el-menu--horizontal .el-menu .el-submenu__title:hover {
|
||||||
|
@include theme-menu-hover-style;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 顶栏
|
||||||
|
.d2-theme-header {
|
||||||
|
// 顶栏菜单空间不足时显示的滚动控件
|
||||||
|
.d2-theme-header-menu {
|
||||||
|
.d2-theme-header-menu__prev, .d2-theme-header-menu__next {
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
background: $theme-header-item-background-color;
|
||||||
|
&:hover {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
background: $theme-header-item-background-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 切换按钮
|
||||||
|
.toggle-aside-btn {
|
||||||
|
i {
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
background: $theme-header-item-background-color;
|
||||||
|
&:hover {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 顶栏菜单
|
||||||
|
.el-menu {
|
||||||
|
.el-menu-item {
|
||||||
|
transition: border-top-color 0s;
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
background: $theme-header-item-background-color;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
&:hover {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
background: $theme-header-item-background-color-hover;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
}
|
||||||
|
&:focus {
|
||||||
|
color: $theme-header-item-color-focus;
|
||||||
|
background: $theme-header-item-background-color-focus;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
}
|
||||||
|
&.is-active {
|
||||||
|
color: $theme-header-item-color-active;
|
||||||
|
background: $theme-header-item-background-color-active;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-submenu {
|
||||||
|
&.is-active {
|
||||||
|
.el-submenu__title {
|
||||||
|
color: $theme-header-item-color-active;
|
||||||
|
background: $theme-header-item-background-color-active;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-submenu__title {
|
||||||
|
transition: border-top-color 0s;
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
background: $theme-header-item-background-color;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
background: $theme-header-item-background-color-hover;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:focus {
|
||||||
|
color: $theme-header-item-color-focus;
|
||||||
|
background: $theme-header-item-background-color-focus;
|
||||||
|
i.fa { color: inherit; }
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
color: $theme-header-item-color-focus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 顶栏右侧
|
||||||
|
.d2-header-right {
|
||||||
|
.btn-text {
|
||||||
|
color: $theme-header-item-color;
|
||||||
|
&.can-hover {
|
||||||
|
&:hover {
|
||||||
|
color: $theme-header-item-color-hover;
|
||||||
|
background: $theme-header-item-background-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [布局] 顶栏下面
|
||||||
|
.d2-theme-container {
|
||||||
|
// 侧边栏
|
||||||
|
.d2-theme-container-aside {
|
||||||
|
// 菜单为空的时候显示的信息
|
||||||
|
.d2-layout-header-aside-menu-empty {
|
||||||
|
background: $theme-aside-menu-empty-background-color;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-menu-empty-icon-color;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
color: $theme-aside-menu-empty-text-color;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
background: $theme-aside-menu-empty-background-color-hover;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-menu-empty-icon-color-hover;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
color: $theme-aside-menu-empty-text-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [菜单] 正常状态
|
||||||
|
.el-menu {
|
||||||
|
.el-menu-item {
|
||||||
|
color: $theme-aside-item-color;
|
||||||
|
background: $theme-aside-item-background-color;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
color: $theme-aside-item-color-hover;
|
||||||
|
background: $theme-aside-item-background-color-hover;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:focus {
|
||||||
|
color: $theme-aside-item-color-focus;
|
||||||
|
background: $theme-aside-item-background-color-focus;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color-focus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.is-active {
|
||||||
|
color: $theme-aside-item-color-active;
|
||||||
|
background: $theme-aside-item-background-color-active;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color-active;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-submenu {
|
||||||
|
.el-submenu__title {
|
||||||
|
color: $theme-aside-item-color;
|
||||||
|
background: $theme-aside-item-background-color;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color;
|
||||||
|
}
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
color: $theme-aside-item-color;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
color: $theme-aside-item-color-hover;
|
||||||
|
background: $theme-aside-item-background-color-hover;
|
||||||
|
i {
|
||||||
|
color: $theme-aside-item-color-hover;
|
||||||
|
}
|
||||||
|
.el-submenu__icon-arrow {
|
||||||
|
color: $theme-aside-item-color-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-theme-container-main {
|
||||||
|
// 主体部分分为多页面控制器 和主体
|
||||||
|
.d2-theme-container-main-header {
|
||||||
|
// 多页面控制器
|
||||||
|
.d2-multiple-page-control {
|
||||||
|
.el-tabs__header.is-top {
|
||||||
|
border-bottom-color: $theme-multiple-page-control-border-color;
|
||||||
|
}
|
||||||
|
.el-tabs__nav {
|
||||||
|
border-color: $theme-multiple-page-control-border-color;
|
||||||
|
.el-tabs__item {
|
||||||
|
@extend %unable-select;
|
||||||
|
color: $theme-multiple-page-control-color;
|
||||||
|
background-color: $theme-multiple-page-control-background-color;
|
||||||
|
border-left-color: $theme-multiple-page-control-border-color;
|
||||||
|
&:first-child {
|
||||||
|
border-left: none;
|
||||||
|
&:hover {
|
||||||
|
padding: 0px 20px;
|
||||||
|
}
|
||||||
|
.el-icon-close {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-tabs__item.is-active {
|
||||||
|
color: $theme-multiple-page-control-color-active;
|
||||||
|
background-color: $theme-multiple-page-control-background-color-active;
|
||||||
|
border-bottom-color: $theme-multiple-page-control-border-color-active;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
%el-tabs__nav {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
.el-tabs__nav-prev {
|
||||||
|
@extend %el-tabs__nav;
|
||||||
|
color: $theme-multiple-page-control-nav-prev-color;
|
||||||
|
}
|
||||||
|
.el-tabs__nav-next {
|
||||||
|
@extend %el-tabs__nav;
|
||||||
|
color: $theme-multiple-page-control-nav-next-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 多页控制器的关闭控制
|
||||||
|
.d2-multiple-page-control-btn {
|
||||||
|
.el-dropdown {
|
||||||
|
.el-button-group {
|
||||||
|
.el-button {
|
||||||
|
border-color: $theme-multiple-page-control-border-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 主体
|
||||||
|
.d2-theme-container-main-body {
|
||||||
|
// 布局组件
|
||||||
|
.container-component {
|
||||||
|
// [组件]
|
||||||
|
// d2-container-full 填充型
|
||||||
|
.d2-container-full {
|
||||||
|
border: $theme-container-border-outer;
|
||||||
|
border-top: none;
|
||||||
|
border-bottom: none;
|
||||||
|
.d2-container-full__header {
|
||||||
|
border-bottom: $theme-container-border-inner;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-full__body {
|
||||||
|
background: $theme-container-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-full__footer {
|
||||||
|
border-top: $theme-container-border-inner;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [组件]
|
||||||
|
// d2-container-full-bs 填充型 滚动优化
|
||||||
|
.d2-container-full-bs {
|
||||||
|
border: $theme-container-border-outer;
|
||||||
|
border-top: none;
|
||||||
|
border-bottom: none;
|
||||||
|
.d2-container-full-bs__header {
|
||||||
|
border-bottom: $theme-container-border-inner;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-full-bs__body {
|
||||||
|
background: $theme-container-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-full-bs__footer {
|
||||||
|
border-top: $theme-container-border-inner;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [组件]
|
||||||
|
// d2-container-ghost 隐形布局组件
|
||||||
|
.d2-container-ghost {
|
||||||
|
.d2-container-ghost__header {
|
||||||
|
border-bottom: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-ghost__footer {
|
||||||
|
border-top: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [组件]
|
||||||
|
// d2-container-ghost-bs 隐形布局组件 滚动优化
|
||||||
|
.d2-container-ghost-bs {
|
||||||
|
.d2-container-ghost-bs__header {
|
||||||
|
border-bottom: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-ghost-bs__footer {
|
||||||
|
border-top: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [组件]
|
||||||
|
// d2-container-card 卡片型
|
||||||
|
.d2-container-card {
|
||||||
|
.d2-container-card__header {
|
||||||
|
border-bottom: $theme-container-border-inner;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-card__body {
|
||||||
|
.d2-container-card__body-card {
|
||||||
|
background: $theme-container-background-color;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
border-bottom: $theme-container-border-outer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-container-card__footer {
|
||||||
|
border-top: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// [组件]
|
||||||
|
// d2-container-card-bs 卡片型 滚动优化
|
||||||
|
.d2-container-card-bs {
|
||||||
|
.d2-container-card-bs__header {
|
||||||
|
border-bottom: $theme-container-border-inner;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
.d2-container-card-bs__body {
|
||||||
|
.d2-container-card-bs__body-card {
|
||||||
|
background: $theme-container-background-color;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
border-bottom: $theme-container-border-outer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.d2-container-card-bs__footer {
|
||||||
|
border-top: $theme-container-border-outer;
|
||||||
|
border-left: $theme-container-border-outer;
|
||||||
|
border-right: $theme-container-border-outer;
|
||||||
|
background: $theme-container-header-footer-background-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
@import './setting.scss';
|
||||||
|
@import '../theme.scss';
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// 主题名称
|
||||||
|
$theme-name: 'tomorrow-night-blue';
|
||||||
|
// 主题背景颜色
|
||||||
|
$theme-bg-color: #002253;
|
||||||
|
// 主题背景图片遮罩
|
||||||
|
$theme-bg-mask: rgba(#000, 0);
|
||||||
|
|
||||||
|
// container组件
|
||||||
|
$theme-container-background-color: rgba(#FFF, 1);
|
||||||
|
$theme-container-header-footer-background-color: #FFF;
|
||||||
|
$theme-container-border-inner: 1px solid $color-border-1;
|
||||||
|
$theme-container-border-outer: 1px solid #002253;
|
||||||
|
|
||||||
|
$theme-multiple-page-control-color: #FFF;
|
||||||
|
$theme-multiple-page-control-color-active: $color-text-normal;
|
||||||
|
$theme-multiple-page-control-nav-prev-color: #FFF;
|
||||||
|
$theme-multiple-page-control-nav-next-color: #FFF;
|
||||||
|
$theme-multiple-page-control-border-color: #002253;
|
||||||
|
$theme-multiple-page-control-border-color-active: #FFF;
|
||||||
|
$theme-multiple-page-control-background-color: rgba(#FFF, .2);
|
||||||
|
$theme-multiple-page-control-background-color-active: #FFF;
|
||||||
|
|
||||||
|
// 顶栏和侧边栏中展开的菜单 hover 状态下
|
||||||
|
$theme-menu-item-color-hover: #293849;
|
||||||
|
$theme-menu-item-background-color-hover: #ecf5ff;
|
||||||
|
|
||||||
|
// 顶栏上的文字颜色
|
||||||
|
$theme-header-item-color: #FF929A;
|
||||||
|
$theme-header-item-background-color: transparent;
|
||||||
|
// 顶栏上的项目在 hover 时
|
||||||
|
$theme-header-item-color-hover: #FFEBA4;
|
||||||
|
$theme-header-item-background-color-hover: rgba(#FFF, .05);
|
||||||
|
// 顶栏上的项目在 focus 时
|
||||||
|
$theme-header-item-color-focus: #FFB870;
|
||||||
|
$theme-header-item-background-color-focus: rgba(#FFF, .05);
|
||||||
|
// 顶栏上的项目在 active 时
|
||||||
|
$theme-header-item-color-active: #FFB870;
|
||||||
|
$theme-header-item-background-color-active: rgba(#FFF, .05);
|
||||||
|
|
||||||
|
// 侧边栏上的文字颜色
|
||||||
|
$theme-aside-item-color: #FF929A;
|
||||||
|
$theme-aside-item-background-color: transparent;
|
||||||
|
// 侧边栏上的项目在 hover 时
|
||||||
|
$theme-aside-item-color-hover: #FFEBA4;
|
||||||
|
$theme-aside-item-background-color-hover: rgba(#FFF, .05);
|
||||||
|
// 侧边栏上的项目在 focus 时
|
||||||
|
$theme-aside-item-color-focus: #FFB870;
|
||||||
|
$theme-aside-item-background-color-focus: rgba(#FFF, .05);
|
||||||
|
// 侧边栏上的项目在 active 时
|
||||||
|
$theme-aside-item-color-active: #FFB870;
|
||||||
|
$theme-aside-item-background-color-active: rgba(#FFF, .05);
|
||||||
|
|
||||||
|
// 侧边栏菜单为空的时候显示的元素
|
||||||
|
$theme-aside-menu-empty-icon-color: #FFB870;
|
||||||
|
$theme-aside-menu-empty-text-color: #FFB870;
|
||||||
|
$theme-aside-menu-empty-background-color: rgba(#FFF, .1);
|
||||||
|
$theme-aside-menu-empty-icon-color-hover: #FFEBA4;
|
||||||
|
$theme-aside-menu-empty-text-color-hover: #FFEBA4;
|
||||||
|
$theme-aside-menu-empty-background-color-hover: rgba(#FFF, .2);
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
@import './setting.scss';
|
||||||
|
@import '../theme.scss';
|
||||||
|
|
||||||
|
.theme-#{$theme-name} {
|
||||||
|
.d2-layout-header-aside-group {
|
||||||
|
background: #bc00e3;
|
||||||
|
background: linear-gradient(120deg, #bc00e3 0%, #4EFFFB 100%);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// 主题名称
|
||||||
|
$theme-name: 'violet';
|
||||||
|
// 主题背景颜色
|
||||||
|
$theme-bg-color: #000;
|
||||||
|
// 主题背景图片遮罩
|
||||||
|
$theme-bg-mask: rgba(#000, 0);
|
||||||
|
|
||||||
|
// container组件
|
||||||
|
$theme-container-background-color: #FFF;
|
||||||
|
$theme-container-header-footer-background-color: #FFF;
|
||||||
|
$theme-container-border-inner: 1px solid $color-border-2;
|
||||||
|
$theme-container-border-outer: 1px solid #8C40E2;
|
||||||
|
|
||||||
|
$theme-multiple-page-control-color: #FFF;
|
||||||
|
$theme-multiple-page-control-color-active: $color-text-normal;
|
||||||
|
$theme-multiple-page-control-nav-prev-color: #FFF;
|
||||||
|
$theme-multiple-page-control-nav-next-color: #FFF;
|
||||||
|
$theme-multiple-page-control-border-color: #8C40E2;
|
||||||
|
$theme-multiple-page-control-border-color-active: #FFF;
|
||||||
|
$theme-multiple-page-control-background-color: rgba(#FFF, .3);
|
||||||
|
$theme-multiple-page-control-background-color-active: #FFF;
|
||||||
|
|
||||||
|
// 顶栏和侧边栏中展开的菜单 hover 状态下
|
||||||
|
$theme-menu-item-color-hover: #293849;
|
||||||
|
$theme-menu-item-background-color-hover: #ecf5ff;
|
||||||
|
|
||||||
|
// 顶栏上的文字颜色
|
||||||
|
$theme-header-item-color: #FFF;
|
||||||
|
$theme-header-item-background-color: transparent;
|
||||||
|
// 顶栏上的项目在 hover 时
|
||||||
|
$theme-header-item-color-hover: #FFF;
|
||||||
|
$theme-header-item-background-color-hover: linear-gradient(-180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.12) 100%);
|
||||||
|
// 顶栏上的项目在 focus 时
|
||||||
|
$theme-header-item-color-focus: #FFF;
|
||||||
|
$theme-header-item-background-color-focus: linear-gradient(-180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.12) 100%);
|
||||||
|
// 顶栏上的项目在 active 时
|
||||||
|
$theme-header-item-color-active: #FFF;
|
||||||
|
$theme-header-item-background-color-active: linear-gradient(-180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.12) 100%);
|
||||||
|
|
||||||
|
// 侧边栏上的文字颜色
|
||||||
|
$theme-aside-item-color: #FFF;
|
||||||
|
$theme-aside-item-background-color: transparent;
|
||||||
|
// 侧边栏上的项目在 hover 时
|
||||||
|
$theme-aside-item-color-hover: #FFF;
|
||||||
|
$theme-aside-item-background-color-hover: linear-gradient(90deg, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0.00) 100%);
|
||||||
|
// 侧边栏上的项目在 focus 时
|
||||||
|
$theme-aside-item-color-focus: #FFF;
|
||||||
|
$theme-aside-item-background-color-focus: linear-gradient(90deg, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0.00) 100%);
|
||||||
|
// 侧边栏上的项目在 active 时
|
||||||
|
$theme-aside-item-color-active: #FFF;
|
||||||
|
$theme-aside-item-background-color-active: linear-gradient(90deg, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0.00) 100%);
|
||||||
|
|
||||||
|
// 侧边栏菜单为空的时候显示的元素
|
||||||
|
$theme-aside-menu-empty-icon-color: #FFF;
|
||||||
|
$theme-aside-menu-empty-text-color: #FFF;
|
||||||
|
$theme-aside-menu-empty-background-color: rgba(#000, .1);
|
||||||
|
$theme-aside-menu-empty-icon-color-hover: #FFF;
|
||||||
|
$theme-aside-menu-empty-text-color-hover: #FFF;
|
||||||
|
$theme-aside-menu-empty-background-color-hover: rgba(#000, .15);
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
// 主色
|
||||||
|
$color-primary: #409EFF;
|
||||||
|
|
||||||
|
// 辅助色
|
||||||
|
$color-info: #909399;
|
||||||
|
$color-success: #67C23A;
|
||||||
|
$color-warning: #E6A23C;
|
||||||
|
$color-danger: #F56C6C;
|
||||||
|
|
||||||
|
// 文字
|
||||||
|
$color-text-main: #303133;
|
||||||
|
$color-text-normal: #606266;
|
||||||
|
$color-text-sub: #909399;
|
||||||
|
$color-text-placehoder: #C0C4CC;
|
||||||
|
|
||||||
|
// 边框
|
||||||
|
$color-border-1: #DCDFE6;
|
||||||
|
$color-border-2: #E4E7ED;
|
||||||
|
$color-border-3: #EBEEF5;
|
||||||
|
$color-border-4: #F2F6FC;
|
||||||
|
|
||||||
|
// 背景
|
||||||
|
$color-bg: #f8f8f9;
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024C229.7 1024 0 794.3 0 512S229.7 0 512 0s512 229.7 512 512-229.7 512-512 512z m0-938.7C276.7 85.3 85.3 276.7 85.3 512S276.7 938.7 512 938.7 938.7 747.3 938.7 512 747.3 85.3 512 85.3z" fill="#3688FF" /><path d="M682.7 554.7H341.3c-23.6 0-42.7-19.1-42.7-42.7s19.1-42.7 42.7-42.7h341.3c23.6 0 42.7 19.1 42.7 42.7s-19.1 42.7-42.6 42.7z" fill="#5F6379" /><path d="M512 725.3c-23.6 0-42.7-19.1-42.7-42.7V341.3c0-23.6 19.1-42.7 42.7-42.7s42.7 19.1 42.7 42.7v341.3c0 23.6-19.1 42.7-42.7 42.7z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 752 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 896c-223.5 0-405.3-181.8-405.3-405.3S288.5 85.3 512 85.3s405.3 181.8 405.3 405.3S735.5 896 512 896z m0-725.3c-176.4 0-320 143.5-320 320s143.6 320 320 320 320-143.5 320-320-143.6-320-320-320z" fill="#3688FF" /><path d="M922.6 249.6c-13.7 0-27.1-6.6-35.4-18.8-15.3-22.6-32.8-43.9-52.1-63.2-19.3-19.3-40.6-36.9-63.2-52.1-19.5-13.2-24.6-39.7-11.5-59.2 13.2-19.5 39.7-24.6 59.2-11.5 27.1 18.3 52.6 39.4 75.7 62.5s44.2 48.6 62.5 75.7c13.2 19.5 8.1 46.1-11.5 59.2-7.2 5-15.5 7.4-23.7 7.4zM101.4 249.6c-8.2 0-16.5-2.4-23.8-7.3-19.5-13.2-24.7-39.7-11.5-59.2 18.3-27.1 39.4-52.6 62.5-75.7s48.6-44.1 75.7-62.5c19.5-13.2 46.1-8 59.3 11.5 13.2 19.5 8.1 46-11.5 59.2-22.6 15.3-43.9 32.8-63.2 52.1-19.3 19.3-36.8 40.5-52.1 63.2-8.2 12.1-21.7 18.7-35.4 18.7zM138.6 970.7c-8.6 0-17.3-2.6-24.8-7.9-19.2-13.7-23.6-40.4-9.9-59.5l53.3-74.7c13.7-19.2 40.3-23.6 59.5-9.9 19.2 13.7 23.6 40.4 9.9 59.5l-53.3 74.7c-8.2 11.6-21.4 17.8-34.7 17.8zM885.4 970.7c-13.3 0-26.4-6.2-34.8-17.9l-53.3-74.7c-13.7-19.2-9.3-45.8 9.9-59.5 19.2-13.7 45.8-9.2 59.5 9.9l53.3 74.7c13.7 19.2 9.3 45.8-9.9 59.5-7.5 5.4-16.2 8-24.7 8zM512 554.7c-7.2 0-14.5-1.8-21-5.5-13.4-7.6-21.6-21.8-21.6-37.1V384c0-23.6 19.1-42.7 42.7-42.7s42.7 19.1 42.7 42.7v52.6l42.1-25.2c20.2-12.1 46.4-5.6 58.5 14.6 12.1 20.2 5.6 46.4-14.6 58.5l-106.7 64c-6.9 4.1-14.5 6.2-22.1 6.2z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M899.9 938.7H124.1C55.7 938.7 0 883 0 814.6V273.4C0 205 55.7 149.3 124.1 149.3h68.7l85.3-106.7h467.7l85.3 106.7h68.7c68.4 0 124.1 55.7 124.1 124.1v541.1c0.1 68.5-55.6 124.2-124 124.2z m-775.8-704c-21.4 0-38.8 17.4-38.8 38.8v541.1c0 21.4 17.4 38.8 38.8 38.8h775.8c21.4 0 38.8-17.4 38.8-38.8V273.4c0-21.4-17.4-38.8-38.8-38.8H790.2L704.8 128H319.2l-85.3 106.7H124.1z" fill="#3688FF" /><path d="M512 768c-117.6 0-213.3-95.7-213.3-213.3S394.4 341.3 512 341.3 725.3 437 725.3 554.7 629.6 768 512 768z m0-341.3c-70.6 0-128 57.4-128 128s57.4 128 128 128 128-57.4 128-128-57.4-128-128-128z" fill="#5F6379" /><path d="M810.7 341.3m-42.7 0a42.7 42.7 0 1 0 85.4 0 42.7 42.7 0 1 0-85.4 0Z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 935 B |
|
After Width: | Height: | Size: 7.8 KiB |
@@ -0,0 +1,13 @@
|
|||||||
|
|
||||||
|
<svg viewBox="0 0 60 54" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<desc>D2Admin</desc>
|
||||||
|
<defs></defs>
|
||||||
|
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="logo-no-shadow" transform="translate(-3.000000, -3.000000)">
|
||||||
|
<path d="M44.2833805,33.4299717 L6.05798302,56.3652102 C4.16366196,57.5018028 1.70662094,56.8875426 0.570028297,54.9932215 C0.197031333,54.3715599 8.87839274e-17,53.6602143 0,52.9352385 L-4.4408921e-16,7.06476152 C-7.1463071e-16,4.85562252 1.790861,3.06476152 4,3.06476152 C4.72497578,3.06476152 5.43632142,3.26179285 6.05798302,3.63478981 L44.2833805,26.5700283 C46.1777016,27.7066209 46.7919618,30.163662 45.6553692,32.057983 C45.3175701,32.6209814 44.8463789,33.0921727 44.2833805,33.4299717 Z" id="Triangle-Copy" fill="#35495E" transform="translate(25.000000, 30.000000) rotate(-180.000000) translate(-25.000000, -30.000000) "></path>
|
||||||
|
<path d="M60.2833805,33.4299717 L22.057983,56.3652102 C20.163662,57.5018028 17.7066209,56.8875426 16.5700283,54.9932215 C16.1970313,54.3715599 16,53.6602143 16,52.9352385 L16,7.06476152 C16,4.85562252 17.790861,3.06476152 20,3.06476152 C20.7249758,3.06476152 21.4363214,3.26179285 22.057983,3.63478981 L60.2833805,26.5700283 C62.1777016,27.7066209 62.7919618,30.163662 61.6553692,32.057983 C61.3175701,32.6209814 60.8463789,33.0921727 60.2833805,33.4299717 Z" id="Triangle" fill="#409EFF"></path>
|
||||||
|
<path d="M42.4688663,31.7973091 L24.0289915,42.8612339 C23.081831,43.4295303 21.8533105,43.1224001 21.2850141,42.1752396 C21.0985157,41.8644088 21,41.508736 21,41.1462481 L21,19.0183984 C21,17.9138289 21.8954305,17.0183984 23,17.0183984 C23.3624879,17.0183984 23.7181607,17.116914 24.0289915,17.3034125 L42.4688663,28.3673374 C43.4160268,28.9356337 43.7231569,30.1641542 43.1548606,31.1113147 C42.9859611,31.3928139 42.7503655,31.6284096 42.4688663,31.7973091 Z" id="Triangle-Copy" fill="#FFFFFF" transform="translate(31.000000, 30.082670) rotate(-180.000000) translate(-31.000000, -30.082670) "></path>
|
||||||
|
<path d="M37.5708451,30.8574929 L30.5144958,35.0913025 C30.0409155,35.3754507 29.4266552,35.2218856 29.1425071,34.7483054 C29.0492578,34.59289 29,34.4150536 29,34.2338096 L29,25.7661904 C29,25.2139056 29.4477153,24.7661904 30,24.7661904 C30.1812439,24.7661904 30.3590804,24.8154482 30.5144958,24.9086975 L37.5708451,29.1425071 C38.0444254,29.4266552 38.1979905,30.0409155 37.9138423,30.5144958 C37.8293925,30.6552454 37.7115947,30.7730432 37.5708451,30.8574929 Z" id="Triangle" fill="#409EFF"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
@@ -0,0 +1,26 @@
|
|||||||
|
|
||||||
|
<svg viewBox="0 0 256 236" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<!-- Generator: Sketch 49.3 (51167) - http://www.bohemiancoding.com/sketch -->
|
||||||
|
<desc>Created with Sketch.</desc>
|
||||||
|
<defs></defs>
|
||||||
|
<g id="logo" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="icon/500/crud" transform="translate(-122.000000, -132.000000)" fill-rule="nonzero">
|
||||||
|
<g id="table-(1)" transform="translate(122.000000, 132.000000)">
|
||||||
|
<path d="M192,132.24 L192,166.906667 C192,169.115806 190.209139,170.906667 188,170.906667 L153.333333,170.906667 C151.124194,170.906667 149.333333,169.115806 149.333333,166.906667 L149.333333,132.24 C149.333333,130.030861 151.124194,128.24 153.333333,128.24 L188,128.24 C190.209139,128.24 192,130.030861 192,132.24 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M128,132.24 L128,166.906667 C128,169.115806 126.209139,170.906667 124,170.906667 L89.3333333,170.906667 C87.1241943,170.906667 85.3333333,169.115806 85.3333333,166.906667 L85.3333333,132.24 C85.3333333,130.030861 87.1241943,128.24 89.3333333,128.24 L124,128.24 C126.209139,128.24 128,130.030861 128,132.24 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M64,132.24 L64,166.906667 C64,169.115806 62.209139,170.906667 60,170.906667 L4,170.906667 C1.790861,170.906667 2.705415e-16,169.115806 0,166.906667 L0,132.24 C-2.705415e-16,130.030861 1.790861,128.24 4,128.24 L60,128.24 C62.209139,128.24 64,130.030861 64,132.24 Z" id="Shape" fill="#35495E"></path>
|
||||||
|
<path d="M128,69.0933333 L128,103.76 C128,105.969139 126.209139,107.76 124,107.76 L89.3333333,107.76 C87.1241943,107.76 85.3333333,105.969139 85.3333333,103.76 L85.3333333,69.0933333 C85.3333333,66.8841943 87.1241943,65.0933333 89.3333333,65.0933333 L124,65.0933333 C126.209139,65.0933333 128,66.8841943 128,69.0933333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M64,4.24 L64,38.9066667 C64,41.1158057 62.209139,42.9066667 60,42.9066667 L4,42.9066667 C1.790861,42.9066667 2.705415e-16,41.1158057 0,38.9066667 L0,4.24 C-2.705415e-16,2.030861 1.790861,0.24 4,0.24 L60,0.24 C62.209139,0.24 64,2.030861 64,4.24 Z" id="Shape" fill="#35495E"></path>
|
||||||
|
<path d="M192,69.0933333 L192,103.76 C192,105.969139 190.209139,107.76 188,107.76 L153.333333,107.76 C151.124194,107.76 149.333333,105.969139 149.333333,103.76 L149.333333,69.0933333 C149.333333,66.8841943 151.124194,65.0933333 153.333333,65.0933333 L188,65.0933333 C190.209139,65.0933333 192,66.8841943 192,69.0933333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M64,69.0933333 L64,103.76 C64,105.969139 62.209139,107.76 60,107.76 L4,107.76 C1.790861,107.76 2.705415e-16,105.969139 0,103.76 L0,69.0933333 C-2.705415e-16,66.8841943 1.790861,65.0933333 4,65.0933333 L60,65.0933333 C62.209139,65.0933333 64,66.8841943 64,69.0933333 Z" id="Shape" fill="#35495E"></path>
|
||||||
|
<path d="M256,132.24 L256,166.906667 C256,169.115806 254.209139,170.906667 252,170.906667 L217.333333,170.906667 C215.124194,170.906667 213.333333,169.115806 213.333333,166.906667 L213.333333,132.24 C213.333333,130.030861 215.124194,128.24 217.333333,128.24 L252,128.24 C254.209139,128.24 256,130.030861 256,132.24 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M256,69.0933333 L256,103.76 C256,105.969139 254.209139,107.76 252,107.76 L217.333333,107.76 C215.124194,107.76 213.333333,105.969139 213.333333,103.76 L213.333333,69.0933333 C213.333333,66.8841943 215.124194,65.0933333 217.333333,65.0933333 L252,65.0933333 C254.209139,65.0933333 256,66.8841943 256,69.0933333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M256,4.24 L256,38.9066667 C256,41.1158057 254.209139,42.9066667 252,42.9066667 L89.3333333,42.9066667 C87.1241943,42.9066667 85.3333333,41.1158057 85.3333333,38.9066667 L85.3333333,4.24 C85.3333333,2.030861 87.1241943,0.24 89.3333333,0.24 L252,0.24 C254.209139,0.24 256,2.030861 256,4.24 Z" id="Shape" fill="#35495E"></path>
|
||||||
|
<path d="M128,197.093333 L128,231.76 C128,233.969139 126.209139,235.76 124,235.76 L89.3333333,235.76 C87.1241943,235.76 85.3333333,233.969139 85.3333333,231.76 L85.3333333,197.093333 C85.3333333,194.884194 87.1241943,193.093333 89.3333333,193.093333 L124,193.093333 C126.209139,193.093333 128,194.884194 128,197.093333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M64,197.093333 L64,231.76 C64,233.969139 62.209139,235.76 60,235.76 L4,235.76 C1.790861,235.76 2.705415e-16,233.969139 0,231.76 L0,197.093333 C-2.705415e-16,194.884194 1.790861,193.093333 4,193.093333 L60,193.093333 C62.209139,193.093333 64,194.884194 64,197.093333 Z" id="Shape" fill="#35495E"></path>
|
||||||
|
<path d="M256,197.093333 L256,231.76 C256,233.969139 254.209139,235.76 252,235.76 L217.333333,235.76 C215.124194,235.76 213.333333,233.969139 213.333333,231.76 L213.333333,197.093333 C213.333333,194.884194 215.124194,193.093333 217.333333,193.093333 L252,193.093333 C254.209139,193.093333 256,194.884194 256,197.093333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
<path d="M192,197.093333 L192,231.76 C192,233.969139 190.209139,235.76 188,235.76 L153.333333,235.76 C151.124194,235.76 149.333333,233.969139 149.333333,231.76 L149.333333,197.093333 C149.333333,194.884194 151.124194,193.093333 153.333333,193.093333 L188,193.093333 C190.209139,193.093333 192,194.884194 192,197.093333 Z" id="Shape" fill="#409EFF"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 5.4 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024C229.7 1024 0 794.3 0 512S229.7 0 512 0s512 229.7 512 512-229.7 512-512 512z m0-938.7C276.7 85.3 85.3 276.7 85.3 512S276.7 938.7 512 938.7 938.7 747.3 938.7 512 747.3 85.3 512 85.3z" fill="#3688FF" /><path d="M640 682.7c-9.6 0-19.3-3.2-27.3-9.9l-128-106.7c-9.7-8.1-15.4-20.1-15.4-32.8V384c0-23.6 19.1-42.7 42.7-42.7s42.7 19.1 42.7 42.7v129.4l112.6 93.9c18.1 15.1 20.5 42 5.5 60.1-8.5 10-20.6 15.3-32.8 15.3z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 676 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M192 938.7H87.9c-48.4 0-87.9-39.5-87.9-88V386.6c0-48.5 39.5-87.9 87.9-87.9h125.4c11.6 0 22.7 4.7 30.8 13.1 8 8.4 12.3 19.6 11.9 31.2l-21.3 554.7c-0.9 22.8-19.8 41-42.7 41zM87.9 384c-1.4 0-2.6 1.2-2.6 2.6v464.1c0 1.4 1.2 2.6 2.6 2.6h63L169 384H87.9z" fill="#5F6379" /><path d="M810.4 938.7H275.7l24.6-640H418l72-201.8C510.7 38.9 566 0 627.5 0c42.4 0 82.6 18.4 110.3 50.4S778 124.8 772 166.7l-18.9 132h142.6c70.7 0 128.2 57.5 128.2 128.2l-1 9.3-84.4 379.4c-2.6 68.3-59.1 123.1-128.1 123.1z m-446.1-85.4h446.1c23.6 0 42.9-19.2 42.9-42.9l1-9.3L938.5 423c-2-21.8-20.4-39-42.7-39h-241l32.8-229.4c2.5-17.7-2.5-34.8-14.2-48.3s-28-20.9-45.9-20.9c-25.6 0-48.5 16.2-57.1 40.3L478.1 384h-95.7l-18.1 469.3z" fill="#3688FF" /></svg>
|
||||||
|
After Width: | Height: | Size: 953 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1025 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M512.8 977.4c-26.1 0-50.1-7.3-71.5-21.7C323.5 897 0 675.3 0 400.5 0 212 153.4 58.6 341.9 58.6c60.5 0 119 15.8 170.9 45.9 51.9-30.1 110.5-45.9 170.9-45.9 188.5 0 341.9 153.4 341.9 341.9 0 274.8-323.5 496.6-441.3 555.2-21.4 14.4-45.4 21.7-71.5 21.7zM341.9 144.1c-141.4 0-256.4 115-256.4 256.4 0 117.2 80.6 225.2 148.2 295.1 86.1 89 187.5 155.2 248.1 184.8l6.1 3.7c15.1 10.8 34.6 10.8 49.7 0l6.1-3.7C604.4 850.7 705.8 784.6 791.8 695.6c67.6-69.9 148.2-177.8 148.2-295.1 0-141.4-115-256.4-256.4-256.4-52.6 0-103.2 16-146.5 46.1L512.8 207.3l-24.5-17.1c-43.2-30.2-93.9-46.1-146.4-46.1z" /></svg>
|
||||||
|
After Width: | Height: | Size: 840 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M277.3 469.3m-64 0a64 64 0 1 0 128 0 64 64 0 1 0-128 0Z" fill="#5F6379" /><path d="M344.7 978.2c-5.2 0-10.4-0.8-15.5-2.5-13.8-4.5-24.8-14.8-30.4-28.1l-39.3-94.2H128.3C57.5 853.3 0 795.8 0 725.1V213.6C0 142.9 57.5 85.3 128.3 85.3h767.5c70.7 0 128.3 57.5 128.3 128.3v511.5c0 70.7-57.5 128.3-128.3 128.3H566.5L370.2 971.1c-7.7 4.7-16.6 7.1-25.5 7.1z m-18.3-80.3s-0.1 0 0 0zM128.3 170.7c-23.7 0-42.9 19.3-42.9 42.9v511.5c0 23.7 19.3 42.9 42.9 42.9h188.2l45.3 108.7L542.9 768h352.9c23.7 0 42.9-19.3 42.9-42.9V213.6c0-23.7-19.3-42.9-42.9-42.9H128.3z" fill="#3688FF" /><path d="M512 469.3m-64 0a64 64 0 1 0 128 0 64 64 0 1 0-128 0Z" fill="#5F6379" /><path d="M746.7 469.3m-64 0a64 64 0 1 0 128 0 64 64 0 1 0-128 0Z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 967 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 128c-23.6 0-42.7-19.1-42.7-42.7V42.7C469.3 19.1 488.4 0 512 0s42.7 19.1 42.7 42.7v42.7c0 23.5-19.1 42.6-42.7 42.6zM512 1024c-61.8 0-122.3-10.5-179.9-31.1-22.2-7.9-33.7-32.4-25.8-54.6 8-22.2 32.3-33.8 54.6-25.8 98.4 35.3 209.2 34.6 307.1-1.8 22.1-8.2 46.6 3 54.9 25.1 8.2 22.1-3 46.6-25.1 54.9-59.5 22.1-121.9 33.3-185.8 33.3z" fill="#5F6379" /><path d="M845 874.7H179c-75.2 0-136.4-61.2-136.4-136.4v-4.6c0-57.1 34.7-106 85.3-126.1V426.7c0-211.7 172.3-384 384-384s384 172.3 384 384v180.9c50.6 20.1 85.3 69 85.3 126.1v4.6c0.1 75.2-61 136.4-136.2 136.4zM512 128c-164.7 0-298.7 134-298.7 298.7v253.2l-38.9 3.5c-26.5 2.4-46.5 24-46.5 50.3v4.6c0 28.1 22.9 51 51 51h666c28.1 0 51-22.9 51-51v-4.6c0-26.3-20-48-46.5-50.3l-38.9-3.5V426.7C810.7 262 676.7 128 512 128z" fill="#3688FF" /></svg>
|
||||||
|
After Width: | Height: | Size: 1021 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M492.5 917.7c-247 0-447.9-200.9-447.9-447.9s200.9-448 447.9-448 447.9 200.9 447.9 447.9-200.9 448-447.9 448z m0-810.6c-200 0-362.6 162.7-362.6 362.6s162.7 362.6 362.6 362.6 362.6-162.7 362.6-362.6-162.6-362.6-362.6-362.6z" fill="#3688FF" /><path d="M951.1 971c-10.9 0-21.8-4.2-30.2-12.5l-96-96c-16.7-16.7-16.7-43.7 0-60.3 16.6-16.7 43.7-16.7 60.3 0l96 96c16.7 16.7 16.7 43.7 0 60.3-8.2 8.4-19.2 12.5-30.1 12.5z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 670 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M811.3 938.7H217.5c-71.5 0-129.8-58.2-129.8-129.8V215.1c0-71.6 58.2-129.8 129.8-129.8h296.9c23.6 0 42.7 19.1 42.7 42.7s-19.1 42.7-42.7 42.7H217.5c-24.5 0-44.4 19.9-44.4 44.4v593.8c0 24.5 19.9 44.4 44.4 44.4h593.8c24.5 0 44.4-19.9 44.4-44.4V512c0-23.6 19.1-42.7 42.7-42.7S941 488.4 941 512v296.9c0 71.6-58.2 129.8-129.7 129.8z" fill="#3688FF" /><path d="M898.4 405.3c-23.6 0-42.7-19.1-42.7-42.7V212.9c0-23.3-19-42.3-42.3-42.3H663.7c-23.6 0-42.7-19.1-42.7-42.7s19.1-42.7 42.7-42.7h149.7c70.4 0 127.6 57.2 127.6 127.6v149.7c0 23.7-19.1 42.8-42.6 42.8z" fill="#5F6379" /><path d="M373.6 712.6c-10.9 0-21.8-4.2-30.2-12.5-16.7-16.7-16.7-43.7 0-60.3L851.2 132c16.7-16.7 43.7-16.7 60.3 0 16.7 16.7 16.7 43.7 0 60.3L403.8 700.1c-8.4 8.3-19.3 12.5-30.2 12.5z" fill="#5F6379" /></svg>
|
||||||
|
After Width: | Height: | Size: 1008 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#333333" d="M761.2 942.8c-8.9 0-17.9-1.8-26.5-5.4l-220.7-93-220.7 93c-22.1 9.3-46.8 6.4-66.2-7.6-19.4-14.1-29.8-36.7-27.7-60.6l20.2-238.7L62.9 449.2c-15.7-18.1-20.6-42.5-13.2-65.3 7.4-22.8 25.7-39.6 49.1-45.1L332 284.3l123.9-205c12.4-20.5 34.1-32.7 58-32.7 24 0 45.7 12.2 58.1 32.7l123.9 205 233.2 54.5c23.3 5.5 41.7 22.3 49.1 45.1 7.4 22.8 2.5 47.2-13.2 65.3L808.4 630.4l20.2 238.7c2 23.9-8.3 46.5-27.7 60.6-11.8 8.6-25.7 13-39.7 13.1zM146.4 415.3L289 580.2c11.9 13.7 17.8 32 16.3 50.1l-18.4 217.2 200.8-84.6c16.8-7 35.9-7 52.6 0l200.9 84.6-18.4-217.2c-1.5-18.1 4.4-36.4 16.3-50.1l142.5-164.9-212.2-49.6c-17.7-4.1-33.2-15.4-42.6-31L514 148.3 401.2 334.8c-9.4 15.6-24.9 26.8-42.6 31l-212.2 49.5z m553.3-124.7h0.2-0.2z" /></svg>
|
||||||
|
After Width: | Height: | Size: 966 B |