406 Commits
1.0.1 ... 1.2.1

Author SHA1 Message Date
TinyAnts
3868962b1e Merge branch 'release/1.2.1' 2022-09-09 10:34:48 +08:00
TinyAnts
7dfc0d997a 增加静态资源 2022-09-09 10:30:46 +08:00
洪树泽
ee86e5dbf1 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop
# Conflicts:
#	app/src/pages.json
2022-09-09 10:14:29 +08:00
洪树泽
59f508d70f Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop
部分调整
2022-09-09 10:11:33 +08:00
linjinyuan
c9bf4ed561 【小程序】-- pages.json 添加搜索页面 2022-09-09 09:59:06 +08:00
linjinyuan
f5204f0e9d 【小程序】-- 搜索文章 2022-09-09 09:58:29 +08:00
Jason
e0b6bab788 忘记密码 2022-09-09 09:50:39 +08:00
洪树泽
2193193df9 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop
部分调整页面链接
2022-09-09 09:50:31 +08:00
TinyAnts
cb239727e7 优化代码 2022-09-09 09:26:57 +08:00
洪树泽
4eb5ec6118 【小程序】增加个人资料,修改密码页面。协议页面调整 2022-09-09 09:18:31 +08:00
洪树泽
d992e9bed0 协议页面对接 2022-09-09 09:06:21 +08:00
洪树泽
961ec0b967 增加协议枚举 2022-09-09 08:36:14 +08:00
洪树泽
42af47b620 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-09-09 08:35:24 +08:00
TinyAnts
fffcddfede 调整通知接口 2022-09-08 19:57:33 +08:00
TinyAnts
53b167f2f0 修复热门搜素获取接口 2022-09-08 19:42:57 +08:00
TinyAnts
65c7b8d3a3 修复通知列表报错 2022-09-08 19:29:01 +08:00
TinyAnts
85bb0630b6 增加搜索接口 2022-09-08 19:17:21 +08:00
Jason
41ba4227e9 打包 2022-09-08 19:11:31 +08:00
Jason
0f47284235 网站信息,登录,用户 2022-09-08 19:09:53 +08:00
洪树泽
f1872f53ba Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-09-08 18:58:17 +08:00
TinyAnts
669b91a99e 增加版本号返回 2022-09-08 18:51:37 +08:00
洪树泽
11f85bd955 【小程序】关于我们页面切图 2022-09-08 18:46:32 +08:00
洪树泽
6a5623e11d 【小程序】关于我们页面 2022-09-08 18:39:19 +08:00
洪树泽
89f58728cc Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop
# Conflicts:
#	app/src/pages.json
2022-09-08 18:35:59 +08:00
洪树泽
c873f109ff 【小程序】个人设置页面切图 2022-09-08 18:34:30 +08:00
TinyAnts
67c57a5d08 调整用户信息编辑字段 2022-09-08 18:34:14 +08:00
TinyAnts
54b5d76d01 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-08 18:32:29 +08:00
TinyAnts
b4be4a1e86 调整用户信息编辑接口 2022-09-08 18:32:26 +08:00
linjinyuan
30d46a37fc 【小程序】-- 新增我的收藏 2022-09-08 18:20:32 +08:00
TinyAnts
cc481438df 修复取消收藏接口 2022-09-08 18:03:17 +08:00
TinyAnts
db5588577b 修复取消收藏接口 2022-09-08 18:02:13 +08:00
洪树泽
32eeafdb33 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-09-08 17:59:42 +08:00
洪树泽
db84c5bed5 【小程序】个人设置页面 2022-09-08 17:59:05 +08:00
TinyAnts
ff167a56b3 修复小程序端免登录无法获取id的问题 2022-09-08 17:57:36 +08:00
TinyAnts
394793710d 增加详情里的收藏接口 2022-09-08 17:39:56 +08:00
TinyAnts
7d3398387c 优化默认头像 2022-09-08 17:23:46 +08:00
TinyAnts
ef795de84d 优化代码 2022-09-08 17:19:58 +08:00
TinyAnts
e0e880e812 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-08 17:10:50 +08:00
TinyAnts
2039a317a9 修复文章列表问题 2022-09-08 17:10:46 +08:00
linjinyuan
c8ca9c83cb 【小程序】-- 新增咨询详情页面 2022-09-08 16:58:01 +08:00
linjinyuan
e796f2662b 【小程序】-- 咨询列表 2022-09-08 16:55:00 +08:00
Jason
b7499b24c3 底部导航配置 2022-09-08 16:40:36 +08:00
Jason
04fad4b18c 登录,个人中心,联系客服 2022-09-08 16:28:56 +08:00
TinyAnts
fca4c24a8e 调整网站设置接口 2022-09-08 15:51:08 +08:00
TinyAnts
3a641675e3 增加用户编辑功能 2022-09-08 15:41:29 +08:00
Jason
a40d4c8986 重复请求的问题 2022-09-08 15:28:51 +08:00
TinyAnts
810ac4caa8 调整增加素材相对路径 2022-09-08 14:59:13 +08:00
TinyAnts
027fc078cb 增加修改密码 2022-09-08 14:53:01 +08:00
TinyAnts
fb86e38040 增加绑定手机号接口 2022-09-08 14:22:18 +08:00
TinyAnts
5a0043fcd2 增加绑定手机号接口 2022-09-08 12:12:41 +08:00
TinyAnts
1cde7463fe Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-08 11:43:30 +08:00
TinyAnts
ca2f5ee6a2 增加用户信息编辑 2022-09-08 11:40:57 +08:00
linjinyuan
c59f86c698 【小程序】-- 新增tab,tbs组件,可以左右滑动切换tab 2022-09-08 11:27:26 +08:00
TinyAnts
177907dfe6 增加获取微信手机号码 2022-09-08 11:15:56 +08:00
TinyAnts
e258f2097a 增加上传接口 2022-09-08 10:55:55 +08:00
TinyAnts
d042c12a31 调整用户管理接口 2022-09-08 10:43:23 +08:00
TinyAnts
ce877ff7f1 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-08 09:56:21 +08:00
TinyAnts
4529f969ea 处理微信登录问题 2022-09-08 09:56:10 +08:00
Jason
95e1c837ed 首页 2022-09-07 21:00:03 +08:00
Jason
5c0105e786 登录 2022-09-07 20:58:01 +08:00
TinyAnts
67ccf1b607 增加首页文章 2022-09-07 20:45:30 +08:00
TinyAnts
caed4541f4 处理微信登录问题 2022-09-07 20:36:50 +08:00
TinyAnts
47aad30c42 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-07 18:43:50 +08:00
TinyAnts
d018ffb2d0 调整全局配置接口 2022-09-07 18:43:39 +08:00
linjinyuan
b96c43e051 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop
* 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java:
  增加注册时的客户端
  增加文章收藏处理
  增加收藏
  调整接口
2022-09-07 18:37:29 +08:00
linjinyuan
d330a40296 【后台管理】-- 热门搜索 2022-09-07 18:37:01 +08:00
TinyAnts
15e20646c2 增加注册时的客户端 2022-09-07 18:28:14 +08:00
TinyAnts
42a0d891bc 增加文章收藏处理 2022-09-07 18:08:40 +08:00
TinyAnts
706a53193f 增加收藏 2022-09-07 17:09:50 +08:00
TinyAnts
d31a70d3d8 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-07 16:29:32 +08:00
TinyAnts
7968e41aa8 调整接口 2022-09-07 16:29:20 +08:00
linjinyuan
e31942371a 【后台管理】-- 用户设置 2022-09-07 16:24:24 +08:00
TinyAnts
88ac6114ba Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-07 16:19:57 +08:00
TinyAnts
fcb356e17e 增加政策协议接口 / 个人中心接口 / 热搜接口 2022-09-07 16:19:54 +08:00
Jason
f8803898c4 字体大小配置 2022-09-07 16:19:23 +08:00
Jason
81fe969176 uview切换为1. 2022-09-07 16:10:28 +08:00
Jason
5dbc93a1bc 图标选择器优化,底部导航 2022-09-07 15:30:03 +08:00
TinyAnts
18eb788ac9 调整验证码 2022-09-07 15:21:18 +08:00
TinyAnts
82f2a92dfd 调整接口 2022-09-07 14:43:07 +08:00
Jason
4dc75a0459 修改vite配置 2022-09-07 14:30:47 +08:00
TinyAnts
fe4e936b2d 增加登录校验功能 2022-09-07 14:21:24 +08:00
TinyAnts
c6534f3ab4 增加热门搜索 2022-09-07 11:40:43 +08:00
TinyAnts
c006488a4a 增加登录设置接口 2022-09-07 10:34:01 +08:00
TinyAnts
b87ea37bb3 增加设置方法 2022-09-07 09:47:30 +08:00
TinyAnts
60455a7227 修改底部导航装修接口 2022-09-07 09:28:24 +08:00
TinyAnts
81224c4013 装修 2022-09-06 19:16:08 +08:00
linjinyuan
c6a1e5924a 【后台管理】-- 系统设置--->用户设置&登录注册 2022-09-06 19:02:02 +08:00
Jason
116d6d5eff 装修,底部导航 2022-09-06 18:42:24 +08:00
TinyAnts
aed9b43d5e 处理编译问题 2022-09-06 18:30:44 +08:00
TinyAnts
3425d1e649 修改编译版本 2022-09-06 18:24:24 +08:00
TinyAnts
d78a3b74e4 修改编译版本 2022-09-06 18:22:21 +08:00
TinyAnts
a9a94157c4 修复渠道编辑问题 2022-09-06 18:10:35 +08:00
linjinyuan
30e84b2570 渠道对接 2022-09-06 16:36:15 +08:00
TinyAnts
03f388cb4c 增加收藏 2022-09-06 16:25:21 +08:00
TinyAnts
a437c1564f 实现短信通知功能 2022-09-06 15:36:13 +08:00
Jason
7c666c7bd6 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-09-06 14:17:27 +08:00
Jason
d40b706457 取消vscode配置忽略 2022-09-06 14:17:20 +08:00
TinyAnts
010818855a Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-09-06 14:07:34 +08:00
TinyAnts
88ead65e73 处理装修详情问题 2022-09-06 14:07:30 +08:00
Jason
45a31db37f 装修相关 2022-09-06 11:51:36 +08:00
TinyAnts
9ec547d9f4 调整渠道设置接口 2022-09-06 10:17:35 +08:00
TinyAnts
458b675ddb 消息通知功能 2022-09-05 19:01:54 +08:00
TinyAnts
252ff34bc5 增加忘记密码接口 2022-09-05 17:50:31 +08:00
TinyAnts
48735eec10 登录功能实现 2022-09-05 17:28:49 +08:00
TinyAnts
ee6fe3c37a 登录功能实现 2022-09-05 17:09:48 +08:00
TinyAnts
006978a484 登录与注册 2022-09-05 16:49:04 +08:00
lr
1768127ea0 Merge branch 'master' into develop 2022-09-04 22:54:36 +08:00
lr
0bcb40c158 Merge branch 'hotfix/docker-mysql' 2022-09-04 22:54:35 +08:00
lr
9d066fc717 调整Mysql容器配置 2022-09-04 22:54:09 +08:00
lr
b6cdcc8598 Merge branch 'master' into develop 2022-09-04 00:08:10 +08:00
lr
6041ae8d1e Merge branch 'hotfix/lr-20220903' 2022-09-04 00:08:10 +08:00
lr
54d6533e4f 调整容器名称 2022-09-04 00:07:49 +08:00
lr
16d30d94bb 调整README信息 2022-09-04 00:07:36 +08:00
lr
7a8be7a23b Merge tag 'lr-20220902' into develop
no message
2022-09-02 23:33:32 +08:00
lr
7cdf936062 Merge branch 'hotfix/lr-20220902' 2022-09-02 23:33:32 +08:00
lr
fa3f16aff6 调整演示环境 2022-09-02 23:33:17 +08:00
lr
e926748f59 Merge branch 'master' into develop 2022-09-02 17:41:40 +08:00
lr
5362660ed5 Merge branch 'hotfix/docker' 2022-09-02 17:41:40 +08:00
lr
1d06f0659d 增加docker快速部署 2022-09-02 17:41:05 +08:00
lr
cbe09b5b8c 调整README信息 2022-09-02 17:37:46 +08:00
lr
e853d0a3f8 增加docker配置 2022-09-02 12:06:52 +08:00
TinyAnts
5d3c3425ef 调整文章接口 2022-09-02 09:54:54 +08:00
TinyAnts
15c0cc66b9 增加文章资讯接口 2022-08-31 15:04:53 +08:00
TinyAnts
746236e545 增加微信驱动 2022-08-31 12:14:06 +08:00
Jason
61aa2980d0 菜单调整,用户,消息通知,渠道 2022-08-30 19:08:17 +08:00
TinyAnts
2f98e62840 修改通知列表 2022-08-30 17:39:50 +08:00
Jason
ceff438fcb 文章,渠道 2022-08-29 19:06:52 +08:00
Jason
479fae0430 修复bug 2022-08-29 19:06:22 +08:00
TinyAnts
729a63deca 增加前端服务 2022-08-29 19:00:20 +08:00
TinyAnts
6f95683e6f 增加装修接口 2022-08-29 16:23:46 +08:00
Jason
04f9d7eb36 uniapp 底层 2022-08-26 17:52:43 +08:00
TinyAnts
00a9b9ede0 增加渠道设置 2022-08-26 14:43:27 +08:00
TinyAnts
f5814b242a 增加微信开放平台配置接口 2022-08-25 18:36:46 +08:00
TinyAnts
77c4ef41ae 增加渠道设置接口 2022-08-25 16:31:25 +08:00
TinyAnts
896c06c657 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-25 15:01:53 +08:00
Jason
819ab8427a 修复图片上传bug 2022-08-25 11:09:43 +08:00
Jason
4e1307b00e 修复菜单提示问题 2022-08-25 10:51:43 +08:00
likeadmin
a56239b398 调整redeme信息
Signed-off-by: likeadmin <11287291+likeadmin@user.noreply.gitee.com>
2022-08-24 11:18:10 +00:00
likeadmin
2fb01f847e 调整redeme信息
Signed-off-by: likeadmin <11287291+likeadmin@user.noreply.gitee.com>
2022-08-24 11:17:08 +00:00
lr
fed7641590 Merge branch 'master' into develop 2022-08-24 19:12:59 +08:00
lr
792014ab4c Merge branch 'hotfix/lr-20220824' 2022-08-24 19:12:59 +08:00
lr
c8fafbf151 调整readme信息 2022-08-24 19:12:26 +08:00
lr
0bb3ee3454 Merge branch 'master' into develop 2022-08-24 19:09:57 +08:00
lr
ce594785e8 Merge branch 'hotfix/lr-20220824' 2022-08-24 19:09:57 +08:00
lr
a2518393ae 调整readme信息 2022-08-24 19:09:43 +08:00
lr
9f05a8a755 Merge branch 'master' into develop 2022-08-24 19:06:43 +08:00
lr
97737a030f Merge branch 'hotfix/lr-20220824' 2022-08-24 19:06:42 +08:00
lr
161fa279c8 调整README信息 2022-08-24 19:06:27 +08:00
TinyAnts
5e88c2ea5a 增加通知设置接口 2022-08-24 18:01:51 +08:00
TinyAnts
0d644bb957 增加通知设置接口 2022-08-24 17:48:57 +08:00
TinyAnts
0d09cbfd0e 增加华为云短信驱动 2022-08-23 18:24:19 +08:00
TinyAnts
45d2717313 增加短信实现 2022-08-23 17:30:50 +08:00
TinyAnts
9efdbf96a6 短信引擎保存 2022-08-23 14:58:02 +08:00
TinyAnts
2c434f8c90 增加短信引擎配置功能 2022-08-23 14:56:49 +08:00
TinyAnts
6cf24fc93e 增加通知设置/短信设置基础控制器 2022-08-23 10:56:51 +08:00
TinyAnts
e8bcc62d4b 增加文章/分类的状态切换接口 2022-08-23 10:18:14 +08:00
TinyAnts
f7c1eb85f5 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-23 09:27:30 +08:00
TinyAnts
7d74c116d9 增加文章作者 2022-08-23 09:27:14 +08:00
lr
5936fd369f Merge branch 'hotfix/20220822' 2022-08-22 23:13:26 +08:00
lr
8c17fcd94b Merge branch 'master' into develop 2022-08-22 23:13:26 +08:00
lr
aa46da73e2 调整README信息 2022-08-22 23:13:10 +08:00
lr
f6007fdb52 Merge branch 'hotfix/20220822' 2022-08-22 23:09:02 +08:00
lr
4de4f08746 Merge branch 'master' into develop 2022-08-22 23:09:02 +08:00
lr
34322caa6c 调整README文档 2022-08-22 23:08:17 +08:00
TinyAnts
061f4f6f40 init 2022-08-22 18:57:30 +08:00
TinyAnts
09b19615df 增加用户管理功能 2022-08-22 17:05:13 +08:00
TinyAnts
992d987c01 增加用户管理功能 2022-08-22 17:04:16 +08:00
TinyAnts
2350e786c1 处理菜单排序和默认头像 2022-08-19 09:46:40 +08:00
TinyAnts
6352e12427 修改项目包名称为mdd 2022-08-19 09:39:25 +08:00
TinyAnts
ac835fb2e1 优化代码格式 2022-08-18 15:15:11 +08:00
TinyAnts
dd4a57377b 调整免登录权限接口 2022-08-18 14:57:13 +08:00
TinyAnts
a44faa79f1 Merge branch 'master' into develop 2022-08-17 19:06:48 +08:00
TinyAnts
1ab31dd7a6 Merge branch 'hotfix/avatar' 2022-08-17 19:06:47 +08:00
TinyAnts
b2c75ff0f9 增加默认头像 2022-08-17 19:06:10 +08:00
TinyAnts
a78b9c6f7d Merge branch 'master' into develop 2022-08-17 18:53:27 +08:00
TinyAnts
48ecdc33e4 Merge branch 'hotfix/limit002' 2022-08-17 18:53:27 +08:00
TinyAnts
3a9aa46118 修改生产环境拦截问题 2022-08-17 18:52:31 +08:00
TinyAnts
55e75fba7e Merge branch 'master' into develop 2022-08-17 18:29:02 +08:00
TinyAnts
24ce27cf6c Merge branch 'hotfix/limit001' 2022-08-17 18:29:02 +08:00
TinyAnts
5e5a2f5afb 增加演示环境校验 2022-08-17 18:28:45 +08:00
TinyAnts
d0478a8fc4 增加演示环境校验 2022-08-17 18:25:45 +08:00
TinyAnts
d0848acf72 Merge tag '1.2.0' into develop 2022-08-17 17:47:19 +08:00
TinyAnts
135058a1e3 Merge branch 'release/1.2.0'
# Conflicts:
#	admin/src/views/permission/role/edit.vue
#	frontend/index.html
2022-08-17 17:46:27 +08:00
TinyAnts
1dfb3e1883 调整版本号和SQL文件 2022-08-17 17:34:58 +08:00
Jason
ac721f4529 Merge branches 'develop' and 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-17 16:14:37 +08:00
Jason
3c625e4712 调整上传接口地址 2022-08-17 16:14:05 +08:00
TinyAnts
11a27e43fa 调整静态资源访问问题 2022-08-17 16:14:01 +08:00
TinyAnts
4a1f201703 404处理 2022-08-17 16:08:21 +08:00
TinyAnts
6b8b046ccd 解决刷新404问题 2022-08-17 15:41:18 +08:00
TinyAnts
8981974a2e 处理 history 2022-08-17 15:36:02 +08:00
Jason
ba420a8507 调整生成环境域名 2022-08-17 15:26:13 +08:00
Jason
e55eb4dade 调整设置页面 2022-08-17 15:00:36 +08:00
Jason
b0753c7769 底部版权调整 2022-08-17 14:42:32 +08:00
TinyAnts
c18471e26b 修复字典删除问题 2022-08-17 14:30:27 +08:00
Jason
1d5e93daa0 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-17 12:02:11 +08:00
Jason
7ab5a00508 字典类型批量删除调整 2022-08-17 12:01:59 +08:00
TinyAnts
3fa340c5b1 调整字典数据类型批量删除 2022-08-17 11:58:02 +08:00
Jason
259db657e1 移除代码生成器批量删除剩余部分 2022-08-17 11:42:32 +08:00
Jason
cfc3f55b16 代码生成器列表页面,批量删除处理 2022-08-17 11:36:23 +08:00
Jason
6157258b2c 调整代码生成器模板 2022-08-17 11:23:12 +08:00
TinyAnts
e36568372e 修改代码生成器 2022-08-17 11:03:43 +08:00
TinyAnts
22c7964148 修改代码生成器 2022-08-17 10:59:46 +08:00
TinyAnts
e984d82ab2 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-17 10:39:07 +08:00
TinyAnts
69f98d01b5 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-17 10:38:41 +08:00
Jason
138755c339 修改全局样式表,package 2022-08-17 10:38:38 +08:00
TinyAnts
d64b660284 修改代码生成器 2022-08-17 10:38:36 +08:00
Jason
54a79aacc7 调整代码生成器模板 2022-08-17 10:37:42 +08:00
TinyAnts
b0e21ef936 修改代码生成器 2022-08-17 10:13:41 +08:00
Jason
2d61524315 代码生成器模板 2022-08-17 10:07:24 +08:00
Jason
c77bc5b679 Merge branches 'develop', 'develop' and 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 18:59:43 +08:00
Jason
3ab33b550e 调整代码生成器模板 2022-08-16 18:59:22 +08:00
TinyAnts
c3c869002e Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-16 18:58:59 +08:00
TinyAnts
6b66a251a3 修改代码生成器 2022-08-16 18:57:39 +08:00
TinyAnts
248f5b6219 修改代码生成器 2022-08-16 18:56:00 +08:00
Jason
d2acb7addc 调整代码生成器模板 2022-08-16 18:54:11 +08:00
Jason
75badfa160 调整字典数据显示组件 2022-08-16 18:52:50 +08:00
TinyAnts
97145b853f 修改代码生成器 2022-08-16 18:51:22 +08:00
Jason
97683f468b Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 18:30:15 +08:00
Jason
1875f72430 调整代码生成器 2022-08-16 18:30:02 +08:00
TinyAnts
87c4505f7b 修改代码生成器 2022-08-16 18:05:08 +08:00
TinyAnts
5a2c36a75b Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-16 18:01:51 +08:00
TinyAnts
f19f2cbbe9 修改代码生成器 2022-08-16 18:00:48 +08:00
Jason
bde551e783 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 17:56:20 +08:00
Jason
9db27da743 调整代码生成器模板 2022-08-16 17:55:55 +08:00
TinyAnts
5b074e8b34 修改代码生成器 2022-08-16 17:51:23 +08:00
Jason
a1642a8005 调整代码生成器模板 2022-08-16 17:47:55 +08:00
TinyAnts
7823d9dd34 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-16 17:37:07 +08:00
TinyAnts
e0baf0412b 修改表前缀 2022-08-16 17:36:50 +08:00
Jason
b4a9cc07c4 调整字典数据验证文案 2022-08-16 17:33:53 +08:00
Jason
148db692d5 调整代码生成器 2022-08-16 17:33:17 +08:00
Jason
958ec34e53 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 17:17:17 +08:00
Jason
5a7954d98f 模板调整 2022-08-16 17:17:06 +08:00
TinyAnts
13919fd0b8 修改代码生成器 2022-08-16 17:14:21 +08:00
TinyAnts
35fdcb9b19 修改代码生成器 2022-08-16 17:09:45 +08:00
Jason
d38c9da66a 模板调整 2022-08-16 17:05:38 +08:00
Jason
76293ed831 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 17:01:36 +08:00
TinyAnts
125a278eef 修改代码生成器 2022-08-16 16:45:09 +08:00
TinyAnts
2478c9240a 修改代码生成器 2022-08-16 16:30:30 +08:00
TinyAnts
f4b3841f22 修改代码生成器 2022-08-16 16:20:42 +08:00
TinyAnts
5ffd61f25c 修改代码生成器 2022-08-16 16:08:54 +08:00
Jason
63856cde0e 添加数字类型组件 2022-08-16 15:47:04 +08:00
Jason
92b1d7945a 添加批量删除选项,调整代码生成器模版 2022-08-16 15:37:02 +08:00
Jason
855c97d085 尝试解决菜单重新渲染问题 2022-08-16 15:23:08 +08:00
Jason
c605c61a21 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 15:22:14 +08:00
Jason
161d9f172b 打包 2022-08-16 15:17:17 +08:00
TinyAnts
87a196963b Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-16 15:14:51 +08:00
TinyAnts
428c8f52a8 修改权限配置 2022-08-16 15:14:23 +08:00
Jason
5c69f7de97 尝试解决菜单重新渲染问题 2022-08-16 15:14:15 +08:00
TinyAnts
cfd5de3e8d 修改代码生成器 2022-08-16 15:11:21 +08:00
TinyAnts
731390dd65 修改代码生成器 2022-08-16 14:56:55 +08:00
TinyAnts
b4d570226a 修改代码生成器 2022-08-16 14:45:07 +08:00
TinyAnts
7bc79d26f4 修复路径转换工具 2022-08-16 14:31:56 +08:00
TinyAnts
de952a1b0d Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-16 14:13:33 +08:00
TinyAnts
f8396ce2be 出来路径问题 2022-08-16 14:13:16 +08:00
Jason
34dd26e2d1 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 14:12:22 +08:00
Jason
ee2c41f39b 打包 2022-08-16 14:11:58 +08:00
TinyAnts
626d27620c 调整静态文件 2022-08-16 14:07:48 +08:00
Jason
8dc15f6bee 调整代码生成器模版 2022-08-16 12:06:26 +08:00
Jason
32303ce9e5 调整代码生成器编辑页面 2022-08-16 12:02:19 +08:00
TinyAnts
505ffce668 修改代码生成器 2022-08-16 11:56:02 +08:00
TinyAnts
9696160285 修改代码生成器 2022-08-16 11:48:19 +08:00
TinyAnts
07521b00f7 处理日志生成路径 2022-08-16 11:40:15 +08:00
TinyAnts
1571521ea6 修改代码生成器 2022-08-16 11:16:37 +08:00
Jason
6e8a04c135 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-16 10:58:45 +08:00
Jason
9b19334efe 模版调整 2022-08-16 10:58:40 +08:00
TinyAnts
ee9d69e62f 修改权限问题 2022-08-16 10:48:31 +08:00
TinyAnts
146b82ad99 修复权限问题 2022-08-16 10:44:52 +08:00
TinyAnts
b0459a9150 修改代码生成器 2022-08-16 10:27:45 +08:00
TinyAnts
5fea0dd4d0 修改代码生成器 2022-08-16 10:20:40 +08:00
TinyAnts
5ae30a66ef 调整代码生成器 2022-08-16 10:17:05 +08:00
TinyAnts
db37d06432 调整参数验证 2022-08-16 10:14:28 +08:00
TinyAnts
82a0794fd8 修改代码生成器 2022-08-16 10:02:16 +08:00
TinyAnts
8aefa6e50a 修改代码生成器 2022-08-16 10:00:18 +08:00
TinyAnts
dc46884293 修改代码生成器 2022-08-16 09:53:08 +08:00
Jason
d9210c2f9b Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-15 19:06:22 +08:00
Jason
c15936a19c 调整代码生成器前端模板 2022-08-15 18:57:45 +08:00
TinyAnts
d05edd7d0c 修改代码生成 2022-08-15 18:54:31 +08:00
TinyAnts
faf5d24d4e 修改代码生成器 2022-08-15 17:49:05 +08:00
TinyAnts
7e62e943fb 修改代码生成器 2022-08-15 17:46:26 +08:00
Jason
93c862e573 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-15 17:35:50 +08:00
Jason
e553ab56e3 修改设置 2022-08-15 17:35:45 +08:00
TinyAnts
5e684a698b 修改模板生成器 2022-08-15 17:17:20 +08:00
TinyAnts
f5118208dd 修改代码生成器 2022-08-15 17:03:57 +08:00
TinyAnts
0a9496ee86 修改代码生成器 2022-08-15 16:53:31 +08:00
TinyAnts
d8e946bbd9 修改代码生成器 2022-08-15 16:39:48 +08:00
Jason
e4a6704101 调整编辑数据表 2022-08-15 16:21:59 +08:00
TinyAnts
dfbd55136f Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-15 16:07:35 +08:00
TinyAnts
8ae89b8c31 修改代码生成器 2022-08-15 16:07:31 +08:00
Jason
450108d6ac 新增打包脚本 2022-08-15 15:47:33 +08:00
TinyAnts
971f9a3e66 修改代码生成器 2022-08-15 15:43:16 +08:00
TinyAnts
6f8e5f1075 Merge branch 'develop' of https://gitee.com/likeadmin/likeadmin_java into develop 2022-08-15 15:14:21 +08:00
TinyAnts
6a16adba7c 修改代码生成器 2022-08-15 15:14:12 +08:00
Jason
0b06603aee 打包 2022-08-15 15:11:25 +08:00
TinyAnts
816de01bee 代码生成器-前端模板处理 2022-08-15 14:58:27 +08:00
Jason
769f5f2f43 Merge branch 'develop' of https://gitee.com/likeshop_gitee/likeadmin-java into develop 2022-08-15 11:56:05 +08:00
Jason
627ba59af0 个人设置前端验证 2022-08-15 11:55:49 +08:00
TinyAnts
24eba2bc1f 代码生成器-前端列表页面模板 2022-08-15 11:49:06 +08:00
Jason
5b108d78b7 权限按钮控制 2022-08-15 11:46:57 +08:00
Jason
0831d571a9 编剧数据表前端验证 2022-08-15 10:50:52 +08:00
Jason
e65979d0ce 添加树表模版,树选择器 2022-08-15 10:32:57 +08:00
Jason
90c78a8aff 模版添加无选字典数据时的情况 2022-08-15 10:03:54 +08:00
Jason
8530f48088 新增时间范围选择器 2022-08-15 09:52:23 +08:00
Jason
df39931b4b 模版调整 2022-08-12 18:54:09 +08:00
Jason
3f092d3573 新版底层提交 2022-08-12 18:44:09 +08:00
TinyAnts
2b16a2d152 调整代码生成器-前端模板 2022-08-12 18:36:00 +08:00
TinyAnts
b422110c3c 调整字典类型新增校验 2022-08-12 17:45:08 +08:00
TinyAnts
3b628d4450 修复字典数据筛选问题 2022-08-12 17:04:52 +08:00
TinyAnts
2038901e2d 修复全局异常类bug 2022-08-12 12:13:54 +08:00
TinyAnts
e0fde0cf0f 更新当前信息需校验当前密码 2022-08-12 12:07:04 +08:00
TinyAnts
318107dbd7 处理数据表结构同步问题 2022-08-12 11:59:27 +08:00
TinyAnts
1cf0e277e8 修复表结构同步功能 2022-08-12 11:40:32 +08:00
TinyAnts
2006cd7132 调整控制台接口 2022-08-11 16:27:31 +08:00
TinyAnts
9f3f5f3157 修改控制台接口 2022-08-11 16:02:07 +08:00
TinyAnts
23e9813ae1 修改控制台接口 2022-08-11 15:58:26 +08:00
TinyAnts
31f4763d4f 调整上传功能 2022-08-11 15:52:43 +08:00
TinyAnts
b45df0d2ea 调整全局配置接口 2022-08-11 15:40:40 +08:00
TinyAnts
5c63190f1c 调整控制台接口类 2022-08-11 15:21:57 +08:00
TinyAnts
51c39e7a4f 修复相册管理无法查询全部问题 2022-08-11 14:40:48 +08:00
TinyAnts
1d5153dae6 调整字典数据可根据类型筛选 2022-08-11 11:50:54 +08:00
TinyAnts
63e00732e3 修复日志搜索错误 2022-08-11 11:28:31 +08:00
TinyAnts
f8490c1990 增加字典获取所有数据的接口 2022-08-11 09:40:40 +08:00
TinyAnts
545c9bbb16 修复管理员编辑问题 2022-08-10 16:23:54 +08:00
TinyAnts
df5b0d9e96 修复管理员编辑问题 2022-08-10 16:14:50 +08:00
TinyAnts
6553129909 修复管理员一定要设置密码问题 2022-08-10 16:10:06 +08:00
TinyAnts
b317402b5a 优化代码 2022-08-10 09:43:35 +08:00
TinyAnts
ff6b19e625 调整文件参数类名称 2022-08-10 09:22:28 +08:00
TinyAnts
71c78f2837 增加获取所有角色列表接口 2022-08-09 17:39:36 +08:00
TinyAnts
e0937b5d2f 优化代码增加注释 2022-08-09 16:52:33 +08:00
TinyAnts
8ec79912d2 优化代码增加注释 2022-08-09 16:25:19 +08:00
TinyAnts
ad08408de3 优化代码 2022-08-09 14:08:01 +08:00
TinyAnts
f5bb8e9ca1 优化代码 2022-08-09 12:13:58 +08:00
TinyAnts
afc6ae0c77 调整系统配置相关代码 2022-08-09 12:12:22 +08:00
TinyAnts
f7134b6e27 调整文章接口 2022-08-09 10:54:08 +08:00
TinyAnts
a5df2c3ad6 调整文章管理 2022-08-09 10:53:03 +08:00
TinyAnts
ec678c353c 优化代码 2022-08-09 10:51:35 +08:00
TinyAnts
091bf299e5 优化代码 2022-08-09 10:46:31 +08:00
TinyAnts
cc4ba32145 修复相册管理器bug 2022-08-09 10:14:48 +08:00
TinyAnts
ba0432b2b1 优化代码 2022-08-09 10:02:49 +08:00
TinyAnts
54be313c68 init 2022-08-08 17:13:07 +08:00
TinyAnts
7d4505d5f0 init 2022-08-08 17:01:39 +08:00
Mrtangl
1a358bb388 打包 2022-08-02 15:54:40 +08:00
Mrtangl
4953cbb0f3 打包 2022-08-02 15:53:15 +08:00
Mrtangl
edf6610409 调整 2022-08-02 15:51:51 +08:00
Mrtangl
f57e0e2b40 调整代码 2022-08-02 15:49:36 +08:00
Mrtangl
cf1e71c04d 打包 2022-08-02 15:47:29 +08:00
TinyAnts
627c3b27ce 修复上传报错bug 2022-08-01 16:16:36 +08:00
TinyAnts
cd7888e591 本地部署资源访问地址不带端口问题 2022-08-01 15:49:21 +08:00
TinyAnts
cd89b9932b 增加删掉除验证规则 2022-08-01 15:48:39 +08:00
Mrtangl
dd1be368da 修复角色权限要保存两次 2022-08-01 11:59:09 +08:00
TinyAnts
cb031d6ae1 优化权限菜单 2022-08-01 11:22:35 +08:00
TinyAnts
61b877528f 修复权限校验bug 2022-08-01 11:00:03 +08:00
TinyAnts
9d756089ec 修复其它角色登录无权限bug 2022-08-01 09:29:46 +08:00
Jason
c31dc949ce Merge tag 'wjx202207281011' into develop
no message
2022-07-28 10:15:02 +08:00
Jason
de7972fa00 Merge branch 'hotfix/wjx202207281011' 2022-07-28 10:15:01 +08:00
Jason
b431237287 打包 2022-07-28 10:14:42 +08:00
Jason
40bce0a68f 修改为history 2022-07-28 10:13:24 +08:00
Jason
2add62bc8c Merge tag 'wjx202207270700' into develop
no message

# Conflicts:
#	frontend/index.html
2022-07-27 19:12:25 +08:00
Jason
1b7e2b37bb Merge branch 'hotfix/wjx202207270700' 2022-07-27 19:11:02 +08:00
Jason
b5eb500eaf 修改路由为hash,打包 2022-07-27 19:10:46 +08:00
TinyAnts
b7531046ac 字典管理功能 2022-07-18 18:37:02 +08:00
TinyAnts
b6aaff68f8 统一代码格式 2022-07-18 15:50:23 +08:00
TinyAnts
e6a9cf9a8b 统一代码风格 2022-07-18 15:05:31 +08:00
TinyAnts
fdae717b4e 修复多表代码生成 2022-07-14 16:53:13 +08:00
TinyAnts
a97f718393 代码生成器详情调整 2022-07-14 16:43:05 +08:00
TinyAnts
97432dbd71 修改统一表前缀管理 2022-07-14 16:23:00 +08:00
TinyAnts
082d64655e 调整文章管理 2022-07-14 16:05:00 +08:00
TinyAnts
6518d7b507 Merge branch 'feature/generate' into develop 2022-07-14 15:45:16 +08:00
TinyAnts
c1154ee82b 代码生成器模板调整 2022-07-14 15:42:28 +08:00
TinyAnts
526bff448d 代码生成器模板调整 2022-07-14 15:11:04 +08:00
TinyAnts
4467008849 代码生成器模板调整 2022-07-14 09:25:35 +08:00
TinyAnts
49496b852e 代码生成器模板调整 2022-07-13 18:58:38 +08:00
TinyAnts
859397ea7c 代码生成器模板调整 2022-07-13 18:25:46 +08:00
TinyAnts
43e1a5fd40 代码生成器模板调整 2022-07-13 18:22:03 +08:00
TinyAnts
da3af0611c 代码生成器模板调整 2022-07-13 18:20:36 +08:00
TinyAnts
fe39b4b2fa 代码生成器模板调整 2022-07-13 18:15:04 +08:00
TinyAnts
5bb748ee77 代码生成器模板调整 2022-07-13 18:07:52 +08:00
TinyAnts
9c3ebdf0db 代码生成器模板调整 2022-07-13 18:00:59 +08:00
TinyAnts
a859e4ace8 代码生成器模板调整 2022-07-13 17:48:48 +08:00
TinyAnts
b338f259ac 代码生成器模板调整 2022-07-13 17:45:59 +08:00
TinyAnts
1031098831 代码生成器模板调整 2022-07-13 17:43:59 +08:00
TinyAnts
56a1af3ecd 代码生成器模板调整 2022-07-13 17:42:53 +08:00
TinyAnts
fbabeb46a8 代码生成模板调整 2022-07-13 17:40:21 +08:00
TinyAnts
5b544da8f7 代码生成模板 2022-07-13 17:17:10 +08:00
TinyAnts
5fc6c0ad99 代码生成模板 2022-07-13 17:06:08 +08:00
TinyAnts
895c1ef994 代码生成器模板 2022-07-13 17:04:05 +08:00
TinyAnts
2b252d0b16 代码生成 2022-07-13 16:51:06 +08:00
TinyAnts
d03c911ebc 代码生成器 2022-07-13 16:44:55 +08:00
Mrtangl
df1e3e8652 打包 2022-07-01 15:26:52 +08:00
TinyAnts
d2d23510b5 Merge tag 'v1.0.1' into develop 2022-06-28 10:10:46 +08:00
TinyAnts
3e31517297 Merge branch 'develop' into feature/generate
# Conflicts:
#	server/like-admin/src/main/java/com/hxkj/admin/config/AdminConfig.java
2022-06-21 15:25:45 +08:00
TinyAnts
917fb785f9 生成代码 2022-06-17 19:03:18 +08:00
TinyAnts
94fd5425f6 代码生成 - 模板处理 2022-06-16 19:01:59 +08:00
TinyAnts
253441942f 代码生成-代码下载 2022-06-16 15:05:11 +08:00
TinyAnts
5ec1e82d8b 代码生成-模板处理 2022-06-15 17:14:20 +08:00
TinyAnts
cd273a75d1 修改包名 2022-06-15 14:28:37 +08:00
TinyAnts
ca43595e8f 修改包名称 2022-06-15 14:21:31 +08:00
TinyAnts
731cf9044e 代码生成 - 结构同步 2022-06-14 18:58:50 +08:00
TinyAnts
61790c7444 代码生成-导入表结构 2022-06-14 17:00:35 +08:00
TinyAnts
57c94a1e7d 代码生成-删除 2022-06-13 18:23:35 +08:00
TinyAnts
19d4bf34ec 代码生成 - 编辑 2022-06-13 18:15:46 +08:00
TinyAnts
b08bf59e63 代码生成功能 2022-06-13 16:44:18 +08:00
TinyAnts
9062c0fde3 代码生成器 2022-06-10 19:02:29 +08:00
TinyAnts
97dc15dead 代码生成器-获取数据表 2022-06-09 19:00:36 +08:00
TinyAnts
efb984ae49 Merge branch 'develop' into feature/generate 2022-06-09 18:32:58 +08:00
TinyAnts
af2f416cd6 Merge branch 'develop' into feature/generate
# Conflicts:
#	server/like-common/src/main/java/com/hxkj/common/core/PageResult.java
2022-06-09 18:28:16 +08:00
TinyAnts
bad1ebf54c 代码生成器-数据表获取 2022-06-09 18:21:21 +08:00
1899 changed files with 91040 additions and 18055 deletions

1
.gitignore vendored
View File

@@ -1,4 +1,3 @@
.vscode
.idea
*.iws
*.iml

101
README.md
View File

@@ -1,26 +1,27 @@
<h1 align="center">likeadmin通用管理后台JAVA版本</h1>
<h4 align="center">📈快速开发前后端解决方案</h4>
<h1 align="center">likeadmin通用管理后台Java</h1>
<h4 align="center">🚀快速开发、🛠️ 一键生成代码、📱手机自适应</h4>
<p align="center">
<a href="https://www.java.com/zh-CN/download/"><img src="https://img.shields.io/badge/JAVA-8.0-d74f11"> </a><a href="#"> <img src="https://img.shields.io/badge/Spring Boot-2.5-5e
a931"> </a><a href="https://www.tslang.cn/"><img src="https://img.shields.io/badge/TypeScript-3.1-294e80"> </a><a href="#"><img src="https://img.shields.io/badge/Vue.js-3.2-4eb883"> </a><a href="#"><img src="https://img.shields.io/badge/vite-2.0.0-ffc018"> </a><a href="#"><img src="https://img.shields.io/badge/Element Plus-1.2.0-409eff"> </a>
<a href="https://www.java.com/zh-CN/download/"><img src="https://img.shields.io/badge/JAVA-8-d74f11"> </a><a href="#"> <img src="https://img.shields.io/badge/Spring Boot-2-5ea931"> </a><a href="https://www.tslang.cn/"><img src="https://img.shields.io/badge/TypeScript-3-294e80"></a> <a href="#"><img src="https://img.shields.io/badge/Vue.js-3-4eb883"> </a><a href="#"><img src="https://img.shields.io/badge/vite-2-ffc018"> </a><a href="#"><img src="https://img.shields.io/badge/Element Plus-2-409eff"> </a><a target="_blank" href="https://www.docker.com/"><img src="https://img.shields.io/badge/Docker--139cff"></a>
<div align="center">
<img width="80%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=f4dc6a16c63dac26da3017979e818802" />
<img width="80%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=9cf02b831e49d6a411bafbc4d79f51d4" /><br>
</div>
<br>
# 👨‍💻‍ 简介
<a href="https://gitee.com/likeshop_gitee">likeshop开源团队</a>基于以往开源产品的经验希望能够为开源社区做出更多的贡献推出永久免费开源的likeadmin通用前后端分离管理后台系统。遵循Apache2开源许可协议您可以免费使用甚至允许把你基于likeadmin开发的软件应用开源、发布、销售。
## 👀体验后台
地址https://demo-java.likeadmin.cn <br>
账号admin 密码123456
## 👨‍💻‍简介
我们希望能够为开源社区做出更多的贡献推出永久免费开源的likeadmin通用前后端分离管理后台系统。遵循MIT开源许可协议您可以免费使用甚至允许把你基于likeadmin开发的软件应用开源、发布、销售。
<br>
### 🏀 联系我们
likeadmin官网https://www.likeadmin.cn/
likeadmin交流群QQ629475409
<br>
# 🧐 进一步了解
### 🧰 场景介绍
1.likeadmin已经搭建好前后端分离的底层包含程序安装、登录、登出、工作台、菜单权限控制、角色、管理员、网站设置、图库管理等基础功能无需重复造轮子。<br>
## 🧐进一步了解
### 🧰场景介绍
1.likeadmin已经搭建好前后端分离的底层,包含程序安装、登录、登出、工作台、菜单权限控制、角色、管理员、部门管理、岗位管理、素材管理、网站设置、图库管理等基础功能,无需重复造轮子。更有开发者工具功能,一生成代码,大大节省开发时间。<br>
2.可视化系统程序安装界面,可自定义安装数据,开发者可快速扩展发行自己的软件产品。<br>
3.likeadmin定位为通用的软件系统管理后台方便开发者快速开发软件系统文档清晰、代码易懂、简单易用。<br>
4.未来将持续集成通用的微信/支付宝支付,阿里云/腾讯云短信,阿里云/腾讯云OSS等通用模块。
### 🐙 后端架构方面
1.服务端使用JAVA8开发性能有突破性的提升。<br>
2.使用Spring Boot2.5框架目前国内流行的JAVA框架高性能、简单易用、文档齐全、支持Mave高级项目管理工具、支持Redis等。
@@ -28,67 +29,15 @@ likeadmin交流群QQ629475409
1.使用最流性的前后端分离方案typescript、vue3、vite开发保持了代码的简洁、一致和规范。<br>
2.后台界面使用element-plus UI框架简单精美的后台界面丰富的组件库方便快速开发满足各种后台交互。
<br>
### 🛠️ 代码生成器
一键生成前后端业务代码,大大提示开发效率。
# ⚙️项目启动(开发模式)
## 环境要求
[JDK1.8](https://www.java.com/zh-CN/download/ "JDK1.8")、Mysql5.7、Redis6.x、node14.x<br>
## Mysql数据库和Redis缓存配置
1.复制“/server/like-admin/src/main/resources/application-example-pro.yml”文件为“/server/like-admin/src/main/resources/application-pro.yml”<br>
2.启动并登录Mysql创建编码为utf8mb4的数据库导入项目中/sql/install.sql文件数据库创建完毕。打开“application-pro.yml”找到datasource修改url项的地址为数据库ip地址地址“/”后面为数据库名称username项为数据库账号password项为数据密码然后保存。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=640156ad1b5b55defef7b0418e700a99)<br>
3.启动Redis同样打开“application-pro.yml”找到redis修改host项为Redis的地址port项为redis的端口有密码填写密码无密码则留空然后保存。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=463ab8cb922dfdd59a7624d816c8750a)<br>
## JAVA服务端部署
**服务端部署有两种方式,选择一种即可。**
### JAVA服务端部署方式①
下载并安装[Maven 3.8.x](https://maven.apache.org/download.cgi "Maven 3.8.x")需要配置好JAVA_HOME变量可在终端运行`java -version``mvn -v`验证。
![](https://md.likeshop.cn/Public/Uploads/2022-05-27/62909b7c55dff.png)<br>
#### 构建项目
打开终端使用cd命令进入“\server”目录运行 `mvn install`,构建项目。
![](https://md.likeshop.cn/Public/Uploads/2022-05-27/62909c6a1330e.png)
#### 运行项目
打开终端使用cd命令进入“\server\like-admin”目录运行`mvn spring-boot:run`
![](https://md.likeshop.cn/Public/Uploads/2022-05-27/62909c6a1330e.png)<br>
打开浏览器访问http://127.0.0.1:8082 ,即可看到接口返回信息。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=88b7fac34ec63b01ca3f3fd88276e241)<br>
### JAVA服务端部署方式②IDEA
使用IDEA打开server目录打开设置将项目的SDK设置为1.8,等待依赖加载(右下角有提示),加载完以后。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=314475d7aa4b529ff079fdfa5400c755)<br>
点击右上角运行图标启动项目。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=49e647f1ec18b7f9a52aa8246eae9588)<br>
打开浏览器访问http://127.0.0.1:8082 ,即可看到接口返回信息。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=88b7fac34ec63b01ca3f3fd88276e241)<br>
## 前端部署
打开“/.env.development”文件将文件内容“VITE_APP_BASE_URL”项的值修改为服务端的地址有端口号需要加上端口号,保存。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=6eb2a594e5c81d1e076db170e315e914)<br>
打开终端使用cd命令进入“/admin”目录运行`npm install`安装依赖。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=8378d21ee57ac759ca649fd97a6dc955)<br>
打开终端使用cd命令进入“/admin”目录运行`npm run dev`,在开发者模式中运行项目,然后打开浏览器访问终端显示本地地址。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=cf549fa67917f051bb66e8a43cfc97c0)<br>
访问后进入登录页面。如果报系统错误请检查前端JAVA服务端部署步骤一般为Mysql和Redis参数配置错误。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=6578d11fdf414b24520c0bc3769bed01)<br>
默认的账号为admin密码为123456输入账号密码登入后台。
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=c28c218c67223b810759209a8dc72f05)<br>
## 📁 目录结构
```shell
├─📂admin //管理后台前端源码
├─📂frontend // //前端已编译代码目录(入口目录、上线运行)
├─📂server //java项目目录编辑器、IDE打开此目录
│ │ ├─📂like-admin //管理后台模块
│ │ ├─📂like-common //公共模块
│ │ ├─📂like-front //前台模块
├─📂sql //项目数据库结构
```
### 🖥️界面预览
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=9cf02b831e49d6a411bafbc4d79f51d4)<br>
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=eb83547d55b4f41f0d92fd6a3e01d87e)
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=818d843fb9cba396226e32dad1a58f3c)<br>
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=194ab31919cd4dd619e6c453d7a44304)<br>
![](https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=f6770e2a8069d7b6ea3d83b91204b9d6)<br>
<br>
### 🪐接口文档
[点击这里进入更多更详细文档。](https://www.likeadmin.cn "点击这里进入更多更详细文档。")
[点击这里进入更多更详细文档。](https://www.likeadmin.cn "点击这里进入更多更详细文档。")

View File

@@ -1,4 +1,4 @@
NODE_ENV = 'development'
# Base API
VITE_APP_BASE_URL='https://likeadmin-java-api.yixiangonline.com'
# 请求域名
VITE_APP_BASE_URL='https://likeadmin-java.yixiangonline.com'

View File

@@ -1,3 +1,4 @@
NODE_ENV = 'production'
# Base API
VITE_APP_BASE_URL='https://likeadmin-java-api.yixiangonline.com'
# 请求域名
VITE_APP_BASE_URL=''

43
admin/.eslintrc.cjs Normal file
View File

@@ -0,0 +1,43 @@
/* eslint-env node */
require('@rushstack/eslint-patch/modern-module-resolution')
module.exports = {
root: true,
ignorePatterns: ['/auto-imports.d.ts', '/components.d.ts'],
extends: [
'plugin:vue/vue3-essential',
'eslint:recommended',
'@vue/eslint-config-typescript/recommended',
'@vue/eslint-config-prettier',
'./.eslintrc-auto-import.json'
],
rules: {
'prettier/prettier': [
'warn',
{
semi: false,
singleQuote: true,
printWidth: 100,
proseWrap: 'preserve',
bracketSameLine: false,
endOfLine: 'lf',
tabWidth: 4,
useTabs: false,
trailingComma: 'none'
}
],
'vue/multi-word-component-names': 'off',
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/ban-ts-comment': 'off',
'no-undef': 'off',
'vue/prefer-import-from-vue': 'off',
'no-prototype-builtins': 'off',
'prefer-spread': 'off',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
'vue/no-mutating-props': 'off'
},
globals: {
module: 'readonly'
}
}

View File

@@ -1,156 +0,0 @@
module.exports = {
root: true,
env: {
browser: true,
node: true,
es2021: true
},
parser: 'vue-eslint-parser',
extends: [
'eslint:recommended',
'plugin:vue/vue3-recommended',
'plugin:@typescript-eslint/recommended',
'plugin:prettier/recommended',
// eslint-config-prettier 的缩写
'prettier'
],
parserOptions: {
ecmaVersion: 12,
parser: '@typescript-eslint/parser',
sourceType: 'module',
ecmaFeatures: {
jsx: true
}
},
// eslint-plugin-vue @typescript-eslint/eslint-plugin eslint-plugin-prettier的缩写
plugins: ['vue', '@typescript-eslint', 'prettier'],
rules: {
'@typescript-eslint/ban-ts-ignore': 'off',
'@typescript-eslint/no-unused-vars': 'off',
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-var-requires': 'off',
'@typescript-eslint/no-empty-function': 'off',
'@typescript-eslint/no-use-before-define': 'off',
'@typescript-eslint/ban-ts-comment': 'off',
'@typescript-eslint/ban-types': 'off',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/explicit-module-boundary-types': 'off',
'no-var': 'error',
'prettier/prettier': 'error',
// 禁止出现console
'no-console': 'warn',
// 禁用debugger
'no-debugger': 'warn',
// 禁止出现重复的 case 标签
'no-duplicate-case': 'warn',
// 禁止出现空语句块
'no-empty': 'warn',
// 禁止不必要的括号
'no-extra-parens': 'off',
// 禁止对 function 声明重新赋值
'no-func-assign': 'warn',
// 禁止在 return、throw、continue 和 break 语句之后出现不可达代码
'no-unreachable': 'warn',
// 强制所有控制语句使用一致的括号风格
curly: 'warn',
// 要求 switch 语句中有 default 分支
'default-case': 'warn',
// 强制尽可能地使用点号
'dot-notation': 'warn',
// 要求使用 === 和 !==
eqeqeq: 'warn',
// 禁止 if 语句中 return 语句之后有 else 块
'no-else-return': 'warn',
// 禁止出现空函数
'no-empty-function': 'warn',
// 禁用不必要的嵌套块
'no-lone-blocks': 'warn',
// 禁止使用多个空格
'no-multi-spaces': 'warn',
// 禁止多次声明同一变量
'no-redeclare': 'warn',
// 禁止在 return 语句中使用赋值语句
'no-return-assign': 'warn',
// 禁用不必要的 return await
'no-return-await': 'warn',
// 禁止自我赋值
'no-self-assign': 'warn',
// 禁止自身比较
'no-self-compare': 'warn',
// 禁止不必要的 catch 子句
'no-useless-catch': 'warn',
// 禁止多余的 return 语句
'no-useless-return': 'warn',
// 禁止变量声明与外层作用域的变量同名
'no-shadow': 'off',
// 允许delete变量
'no-delete-var': 'off',
// 强制数组方括号中使用一致的空格
'array-bracket-spacing': 'warn',
// 强制在代码块中使用一致的大括号风格
'brace-style': 'warn',
// 强制使用骆驼拼写法命名约定
camelcase: 'warn',
// 强制使用一致的缩进
indent: 'off',
// 强制在 JSX 属性中一致地使用双引号或单引号
// 'jsx-quotes': 'warn',
// 强制可嵌套的块的最大深度4
'max-depth': 'warn',
// 强制最大行数 300
// "max-lines": ["warn", { "max": 1200 }],
// 强制函数最大代码行数 50
// 'max-lines-per-function': ['warn', { max: 70 }],
// 强制函数块最多允许的的语句数量20
'max-statements': ['warn', 100],
// 强制回调函数最大嵌套深度
'max-nested-callbacks': ['warn', 3],
// 强制函数定义中最多允许的参数数量
'max-params': ['warn', 3],
// 强制每一行中所允许的最大语句数量
'max-statements-per-line': ['warn', { max: 1 }],
// 要求方法链中每个调用都有一个换行符
'newline-per-chained-call': ['warn', { ignoreChainWithDepth: 3 }],
// 禁止 if 作为唯一的语句出现在 else 语句中
'no-lonely-if': 'warn',
// 禁止空格和 tab 的混合缩进
'no-mixed-spaces-and-tabs': 'warn',
// 禁止出现多行空行
'no-multiple-empty-lines': 'warn',
// 禁止出现;
semi: ['warn', 'never'],
// 强制在块之前使用一致的空格
'space-before-blocks': 'warn',
// 强制在 function的左括号之前使用一致的空格
// 'space-before-function-paren': ['warn', 'never'],
// 强制在圆括号内使用一致的空格
'space-in-parens': 'warn',
// 要求操作符周围有空格
'space-infix-ops': 'warn',
// 强制在一元操作符前后使用一致的空格
'space-unary-ops': 'warn',
// 强制在注释中 // 或 /* 使用一致的空格
// "spaced-comment": "warn",
// 强制在 switch 的冒号左右有空格
'switch-colon-spacing': 'warn',
// 强制箭头函数的箭头前后使用一致的空格
'arrow-spacing': 'warn',
'no-var': 'warn',
'prefer-const': 'warn',
'prefer-rest-params': 'warn',
'no-useless-escape': 'warn',
'no-irregular-whitespace': 'warn',
'no-prototype-builtins': 'warn',
'no-fallthrough': 'warn',
'no-extra-boolean-cast': 'warn',
'no-case-declarations': 'warn',
'no-async-promise-executor': 'warn'
},
globals: {
defineProps: 'readonly',
defineEmits: 'readonly',
defineExpose: 'readonly',
withDefaults: 'readonly'
}
}

33
admin/.gitignore vendored
View File

@@ -1,25 +1,32 @@
node_modules
.DS_Store
dist
dist-ssr
*.local
# local env files
.env.local
.env.*.local
# Log files
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
.DS_Store
dist
dist-ssr
coverage
*.local
# unplugin-auto-import
auto-imports.d.ts
components.d.ts
.eslintrc-auto-import.json
/cypress/videos/
/cypress/screenshots/
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

3
admin/.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
}

11
admin/.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,11 @@
{
"editor.detectIndentation": false,
"editor.tabSize": 4,
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
"css.validate": false,
"less.validate": false,
"scss.validate": false
}

View File

@@ -1,11 +1,46 @@
# Vue 3 + Typescript + Vite
# vue-project
This template should help get you started developing with Vue 3 and Typescript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
This template should help get you started developing with Vue 3 in Vite.
## Recommended IDE Setup
- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)
[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
## Type Support For `.vue` Imports in TS
## Type Support for `.vue` Imports in TS
Since TypeScript cannot handle type information for `.vue` imports, they are shimmed to be a generic Vue component type by default. In most cases this is fine if you don't really care about component prop types outside of templates. However, if you wish to get actual prop types in `.vue` imports (for example to get props validation when using manual `h(...)` calls), you can enable Volar's `.vue` type support plugin by running `Volar: Switch TS Plugin on/off` from VSCode command palette.
TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:
1. Disable the built-in TypeScript Extension
1) Run `Extensions: Show Built-in Extensions` from VSCode's command palette
2) Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
## Customize configuration
See [Vite Configuration Reference](https://vitejs.dev/config/).
## Project Setup
```sh
npm install
```
### Compile and Hot-Reload for Development
```sh
npm run dev
```
### Type-Check, Compile and Minify for Production
```sh
npm run build
```
### Lint with [ESLint](https://eslint.org/)
```sh
npm run lint
```

1
admin/global.d.ts vendored Normal file
View File

@@ -0,0 +1 @@
/// <reference types="vite/client" />

View File

@@ -1,10 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>admin</title>
<title>后台管理系统</title>
<style>
* {
margin: 0;

12749
admin/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,40 +1,59 @@
{
"name": "admin",
"name": "vue-project",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"dev": "vite",
"build": "vite build && ./release.sh",
"preview": "vite preview",
"lint": "eslint ./src/App.vue",
"prettier": "prettier --write src"
"preview": "vite preview --port 4173",
"build": "node ./scripts/build.mjs",
"type-check": "vue-tsc --noEmit",
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore"
},
"dependencies": {
"@element-plus/icons-vue": "^0.2.4",
"@tinymce/tinymce-vue": "^4.0.5",
"clipboard": "^2.0.8",
"echarts": "^5.2.2",
"element-plus": "^1.2.0-beta.6",
"@element-plus/icons-vue": "^2.0.6",
"@highlightjs/vue-plugin": "^2.1.0",
"@wangeditor/editor": "^5.1.12",
"@wangeditor/editor-for-vue": "^5.1.12",
"axios": "^0.27.2",
"css-color-function": "^1.3.3",
"echarts": "^5.3.3",
"element-plus": "^2.2.9",
"highlight.js": "^11.6.0",
"nprogress": "^0.2.0",
"vue": "^3.2.25",
"vue-echarts": "^6.0.0",
"vue-router": "^4.0.14",
"vuedraggable": "^4.1.0",
"vuex": "^4.0.0-0"
"pinia": "^2.0.14",
"vue": "^3.2.37",
"vue-clipboard3": "^2.0.0",
"vue-echarts": "^6.2.3",
"vue-router": "^4.0.16",
"vue3-video-play": "^1.3.1-beta.6",
"vuedraggable": "^4.1.0"
},
"devDependencies": {
"@types/node": "^17.0.15",
"@typescript-eslint/eslint-plugin": "^5.14.0",
"@typescript-eslint/parser": "^5.14.0",
"@vitejs/plugin-vue": "^2.0.0",
"axios": "^0.24.0",
"eslint": "^8.10.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-prettier": "^4.0.0",
"eslint-plugin-vue": "^8.5.0",
"@rushstack/eslint-patch": "^1.1.0",
"@types/lodash-es": "^4.17.6",
"@types/node": "^16.11.41",
"@types/nprogress": "^0.2.0",
"@vitejs/plugin-vue": "^3.0.0",
"@vitejs/plugin-vue-jsx": "^2.0.0",
"@vue/eslint-config-prettier": "^7.0.0",
"@vue/eslint-config-typescript": "^11.0.0",
"@vue/tsconfig": "^0.1.3",
"autoprefixer": "^10.4.7",
"consola": "^2.15.3",
"eslint": "^8.5.0",
"eslint-plugin-vue": "^9.0.0",
"execa": "^6.1.0",
"fs-extra": "^10.1.0",
"postcss": "^8.4.14",
"prettier": "^2.5.1",
"sass": "^1.49.7",
"typescript": "^4.4.4",
"vite": "^2.7.2",
"vue-tsc": "^0.29.8"
"sass": "^1.53.0",
"tailwindcss": "^3.0.24",
"typescript": "~4.7.4",
"unplugin-auto-import": "^0.9.2",
"unplugin-vue-components": "^0.19.9",
"vite": "^3.0.0",
"vite-plugin-style-import": "^2.0.0",
"vite-plugin-svg-icons": "^2.0.1",
"vue-tsc": "^0.38.1"
}
}

6
admin/postcss.config.js Normal file
View File

@@ -0,0 +1,6 @@
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -1,17 +0,0 @@
#!/bin/bash
# 文件原路径
srcPath="./dist/"
# 发布路径文件夹
releasePath="../frontend/public/admin"
#删除发布目录下的mobile文件
rm -r $releasePath
echo "已删除 ==> $releasePath 下的目录文件"
mkdir $releasePath
echo "已新建 ==> $releasePath 目录"
# 复制打包目录内的文件到发布目录
cp -r $srcPath/* $releasePath
echo "已复制 $srcPath/* ==> $releasePath"
cp $releasePath/../favicon.ico $releasePath

37
admin/scripts/build.mjs Normal file
View File

@@ -0,0 +1,37 @@
import { execaCommand } from 'execa'
import path from 'path'
import fsExtra from 'fs-extra'
const { existsSync, remove, copy } = fsExtra
const cwd = process.cwd()
//打包发布路径,谨慎改动
const releaseRelativePath = '../frontend'
const distPath = path.resolve(cwd, 'dist')
const releasePath = path.resolve(cwd, releaseRelativePath)
async function build() {
await execaCommand('vite build', { stdio: 'inherit', encoding: 'utf-8', cwd })
if (existsSync(releasePath)) {
await remove(releasePath)
}
console.log(`文件正在复制 ==> ${releaseRelativePath}`)
try {
await copyFile(distPath, releasePath)
} catch (error) {
console.log(`\n ${error}`)
}
console.log(`文件已复制 ==> ${releaseRelativePath}`)
}
function copyFile(sourceDir, targetDir) {
return new Promise((resolve, reject) => {
copy(sourceDir, targetDir, (err) => {
if (err) {
reject(err)
} else {
resolve()
}
})
})
}
build()

View File

@@ -1,44 +1,58 @@
<template>
<router-view v-if="routerAlive" />
</template>
<script lang="ts">
import { defineComponent, ref, nextTick, provide, onMounted } from 'vue'
import { useAdmin } from './core/hooks/app'
export default defineComponent({
setup() {
const { store, route } = useAdmin()
const routerAlive = ref(true)
const reload = () => {
routerAlive.value = false
nextTick(() => {
routerAlive.value = true
})
}
provide('reload', reload)
onMounted(async () => {
// 获取配置
const data = await store.dispatch('app/getConfig')
console.log('data', data)
// 设置网站logo
let favicon: HTMLLinkElement = document.querySelector('link[rel="icon"]')!
if (favicon) {
favicon.href = data.webFavicon
return
}
favicon = document.createElement('link')
favicon.rel = 'icon'
favicon.href = data.webFavicon
document.head.appendChild(favicon)
})
return {
routerAlive
}
<script setup lang="ts">
import { useDark, useWindowSize, useThrottleFn } from '@vueuse/core'
import zhCn from 'element-plus/lib/locale/lang/zh-cn'
import useAppStore from './stores/modules/app'
import useSettingStore from './stores/modules/setting'
import { ScreenEnum } from './enums/appEnums'
const appStore = useAppStore()
const settingStore = useSettingStore()
const elConfig = {
zIndex: 3000,
locale: zhCn
}
const isDark = useDark()
onMounted(async () => {
//设置主题色
settingStore.setTheme(isDark.value)
// 获取配置
const data: any = await appStore.getConfig()
// 设置网站logo
let favicon: HTMLLinkElement = document.querySelector('link[rel="icon"]')!
if (favicon) {
favicon.href = data.webFavicon
return
}
favicon = document.createElement('link')
favicon.rel = 'icon'
favicon.href = data.webFavicon
document.head.appendChild(favicon)
})
const { width } = useWindowSize()
watch(
width,
useThrottleFn((value) => {
if (value > ScreenEnum.SM) {
appStore.setMobile(false)
appStore.toggleCollapsed(false)
} else {
appStore.setMobile(true)
appStore.toggleCollapsed(true)
}
if (value < ScreenEnum.MD) {
appStore.toggleCollapsed(true)
}
}),
{
immediate: true
}
)
</script>
<style lang="scss">
@import "./assets/font/iconfont.css";
@import "./styles/index.scss";
</style>
<template>
<el-config-provider :locale="elConfig.locale" :z-index="elConfig.zIndex">
<router-view />
</el-config-provider>
</template>
<style></style>

View File

@@ -1,44 +1,11 @@
import request from '@/utils/request'
export function apiFileCateAdd(params: any) {
return request.post('/common/album/cateAdd', params)
}
export function apiFileCateEdit(params: { id: number; name: string }) {
return request.post('/common/album/cateRename', params)
}
// 文件分类删除
export function apiFileCateDelete(params: { id: number }) {
return request.post('/common/album/cateDel', params)
}
// 文件分类列表
export function apiFileCateLists(params: any) {
return request.get('/common/album/cateList', { params })
}
// 文件列表
export function apiFileList(params: any) {
return request.get('/common/album/albumList', { params })
}
// 文件删除
export function apiFileDelete(params: { ids: any[] }) {
return request.post('/common/album/albumDel', params)
}
// 文件移动
export function apiFileMove(params: { ids: any[]; cid: number }) {
return request.post('/common/album/albumMove', params)
}
// 文件重命名
export function apiFileRename(params: { id: number; name: string }) {
return request.post('/common/album/albumRename', params)
}
// 配置
export function apiConfig() {
return request.get('/common/index/config')
export function getConfig() {
return request.get({ url: '/common/index/config' })
}
// 工作台主页
export function getWorkbench() {
return request.get({ url: '/common/index/console' })
}

View File

@@ -1,31 +0,0 @@
import request from '@/utils/request'
// 短信通知列表
export function apiNoticeLists(params: any) {
return request.get('/notice.notice/settingLists', { params })
}
// 短信通知详情
export function apiNoticeDetail(params: any) {
return request.get('/notice.notice/detail', { params })
}
// 设置短信通知
export function apiNoticeEdit(params: any) {
return request.post('/notice.notice/set', params)
}
// 短信设置列表
export function apiSmsLists() {
return request.get('/notice.sms_config/getConfig')
}
// 短信设置详情
export function apiSmsDetail(params: any) {
return request.get('/notice.sms_config/detail', { params })
}
// 设置短信通知
export function apiSmsEdit(params: any) {
return request.post('/notice.sms_config/setConfig', params)
}

69
admin/src/api/article.ts Normal file
View File

@@ -0,0 +1,69 @@
import request from '@/utils/request'
// 文章分类列表
export function articleCateLists(params?: any) {
return request.get({ url: '/article/cate/list', params })
}
// 文章分类列表
export function articleCateAll(params?: any) {
return request.get({ url: '/article/cate/all', params })
}
// 添加文章分类
export function articleCateAdd(params: any) {
return request.post({ url: '/article/cate/add', params })
}
// 编辑文章分类
export function articleCateEdit(params: any) {
return request.post({ url: '/article/cate/edit', params })
}
// 删除文章分类
export function articleCateDelete(params: any) {
return request.post({ url: '/article/cate/del', params })
}
// 文章分类详情
export function articleCateDetail(params: any) {
return request.get({ url: '/article/cate/detail', params })
}
// 文章分类状态
export function articleCateStatus(params: any) {
return request.post({ url: '/article/cate/change', params })
}
// 文章列表
export function articleLists(params?: any) {
return request.get({ url: '/article/list', params })
}
// 文章列表
export function articleAll(params?: any) {
return request.get({ url: '/article/all', params })
}
// 添加文章
export function articleAdd(params: any) {
return request.post({ url: '/article/add', params })
}
// 编辑文章
export function articleEdit(params: any) {
return request.post({ url: '/article/edit', params })
}
// 删除文章
export function articleDelete(params: any) {
return request.post({ url: '/article/del', params })
}
// 文章详情
export function articleDetail(params: any) {
return request.get({ url: '/article/detail', params })
}
// 文章分类状态
export function articleStatus(params: any) {
return request.post({ url: '/article/change', params })
}

View File

@@ -1,83 +0,0 @@
import request from '@/utils/request'
import { terminal } from '@/config/app'
export function adminLists(params: any) {
return request.get('/system/admin/list', { params })
}
// 管理员添加
export function apiAdminAdd(params: any) {
return request.post('/system/admin/add', params)
}
export function apiAdminEdit(params: any) {
return request.post('/system/admin/edit', params)
}
// 管理员删除
export function apiAdminDelete(params: { id: number }) {
return request.post('/system/admin/del', params)
}
// 管理员详情
export function apiAdminDetail(params: any) {
return request.get('/system/admin/detail', { params })
}
// 管理员状态
export function apiAdminStatus(params: any) {
return request.post('/system/admin/disable', params)
}
/* 角色 */
// 角色列表
export function apiRoleLists(params: any) {
return request.get('/system/role/list', { params })
}
// 添加角色
export function apiRoleAdd(params: any) {
return request.post('/system/role/add', { ...params })
}
// 编辑角色
export function apiRoleEdit(params: any) {
return request.post('/system/role/edit', { ...params })
}
// 删除角色
export function apiRoleDel(params: any) {
return request.post('/system/role/del', { ...params })
}
// 角色详情
export function apiRoleDetail(params: any) {
return request.get('/system/role/detail', { params })
}
// 角色权限菜单
export function apiConfigGetMenu() {
return request.get('/system/menu/list')
}
// 菜单路由
export function apiConfigGetRoutes() {
return request.get('/system/menu/route')
}
/* 菜单 */
// 菜单详情
export function apiMenuDetail(params: any) {
return request.get('/system/menu/detail', { params })
}
// 新增菜单
export function apiMenuAdd(params: any) {
return request.post('/system/menu/add', params)
}
// 编辑菜单
export function apiMenuEdit(params: any) {
return request.post('/system/menu/edit', params)
}
// 删除菜单
export function apiMenuDelete(params: { id: number }) {
return request.post('/system/menu/del', params)
}

View File

@@ -1,17 +0,0 @@
/** S APP设置 **/
export interface AppSettings_Res {
ios_download_url: string, // 苹果APP下载链接
android_download_url: string, // 安卓APP下载链接
download_title: string, // APP下载引导文案
app_id: string, // 开放平台appid
app_secret: string // 开放平台appSecrets
}
export interface AppSettings_Req {
ios_download_url: string, // 苹果APP下载链接
android_download_url: string, // 安卓APP下载链接
download_title: string, // APP下载引导文案
app_id: string, // 开放平台appid
app_secret: string // 开放平台appSecrets
}
/** E APP设置 **/

View File

@@ -1,11 +0,0 @@
import request from "@/utils/request";
import * as Interface from './channel/app_store.d.ts'
/** S APP设置 **/
// 获取APP设置
export const apiAppSettings = (): Promise<Interface.AppSettings_Res> =>
request.get('/channel.app_setting/getConfig')
// APP设置
export const apiAppSettingsSet = (data: Interface.AppSettings_Req): Promise<any> =>
request.post('/channel.app_setting/setConfig', data)
/** E APP设置 **/

View File

@@ -0,0 +1,11 @@
import request from '@/utils/request'
// H5渠道配置保存
export function setH5Config(params: any) {
return request.post({ url: '/channel/h5/save', params })
}
// H5渠道配置详情
export function getH5Config() {
return request.get({ url: '/channel/h5/detail' })
}

View File

@@ -1,10 +0,0 @@
import request from "@/utils/request";
/** S H5设置 **/
// 获取H5设置
export const apiH5Settings = (): Promise<any> =>
request.get('/channel.h5_setting/getConfig')
// H5设置
export const apiH5SettingsSet = (data: any): Promise<any> =>
request.post('/channel.h5_setting/setConfig', data)
/** E H5设置 **/

View File

@@ -1,10 +0,0 @@
import request from "@/utils/request";
/** S 字节小程序设置 **/
// 获取字节小程序设置
export const apiToutiaoSetting = () =>
request.get('/toutiao.toutiao_setting/getConfig')
// 字节小程序设置
export const apiToutiaoSettingSet = (data: any) =>
request.post('/toutiao.toutiao_setting/setConfig', data)
/** E 字节小程序设置 **/

View File

@@ -1,49 +0,0 @@
import * as Common from '../common.d.ts'
import {apiMpWeChatMenuSave} from "@/api/channel/mp_wechat";
/** S 渠道信息 **/
export interface MPWeChatConfigInfo_Res extends Common.Indexes {
name: string, // 公众号名称
original_id: string, // 原始id
qr_code: string, // 二维码
app_id: string, // APP ID
app_secret: string, // App Secret
url: string, // URL
token: string, // Token
encoding_aes_key: string, // Encoding AES Key
encryption_type: string, // 消息加密方式: 1-明文模式 2-兼容模式 3-安全模式
business_domain: string, // 业务域名
js_secure_domain: string, // JS接口安全域名
web_auth_domain: string, // 网页授权域名
}
export interface MPWeChatConfigEdit_Req {
name?: string, // 公众号名称
original_id?: string, // 原始id
qr_code?: string, // 二维码
app_id: string, // APP ID
app_secret: string, // App Secret
token?: string, // Token
encoding_aes_key?: string, // Encoding AES Key
encryption_type: string, // 消息加密方式: 1-明文模式 2-兼容模式 3-安全模式
}
/** E 渠道信息 **/
/** S 菜单配置 **/
export interface MPWeChatMenu {
name: string, // 菜单名称
type: string, // 菜单类型click-关键字view-网页miniprogram-小程序
key?: string, // 关键字
url?: string, // 网页URL
appid?: string, // 小程序AppID
pagepath?: string, // 小程序路径
sub_button?: Array<MPWeChatMenu>, // 二级菜单
}
export interface MPWeChatMenuSave_Req {
menu: Array<MPWeChatMenu>
}
/** E 菜单配置 **/

View File

@@ -1,60 +0,0 @@
import request from "@/utils/request";
import * as Interface from './mp_wechat.d.ts'
/** S 渠道设置 **/
// 获取渠道信息
export const apiMPWeChatConfigInfo = (): Promise<any> =>
request.get('/channel.official_account_setting/getConfig')
// 编辑渠道信息
export const apiMpWeChatConfigEdit = (params: Interface.MPWeChatConfigEdit_Req) =>
request.post('/channel.official_account_setting/setConfig', params)
/** E 渠道设置 **/
/** S 菜单设置 **/
// 获取菜单详情
export const apiMpWeChatMenuDetail = (): Promise<any> =>
request.get('/channel.official_account_menu/detail')
// 保存菜单配置
export const apiMpWeChatMenuSave = (params: any) =>
request.post('/channel.official_account_menu/save', params)
// 发布菜单配置
export const apiMpWeChatMenuPublish = (params: any) =>
request.post('/channel.official_account_menu/saveAndPublish', params)
/** E 菜单设置 **/
/** S 回复管理 **/
// 新增回复(关注/关词词/默认)
export const apiMpWeChatReplyAdd = (params: any): Promise<any> =>
request.post('/channel.official_account_reply/add', params)
// 编辑回复(关注/关键词/默认)
export const apiMpWeChatReplyEdit = (params: any): Promise<any> =>
request.post('/channel.official_account_reply/edit', params)
// 获取回复详情
export const apiMpWeChatReplyDetail = (params: any): Promise<any> =>
request.get('/channel.official_account_reply/detail', {params})
// 删除回复
export const apiMpWeChatReplyDelete = (params: any): Promise<any> =>
request.post('/channel.official_account_reply/delete', params)
// 更新排序
export const apiMpWeChatReplySort = (params: any): Promise<any> =>
request.post('/channel.official_account_reply/sort', params)
// 回复列表
export const apiMpWeChatReplyLists = (params: any): Promise<any> =>
request.get('/channel.official_account_reply/lists', {params})
// 回复列表
export const apiMpWeChatReplyStatus = (params: any): Promise<any> =>
request.post('/channel.official_account_reply/status', params)
/** E 回复管理 **/

View File

@@ -0,0 +1,11 @@
import request from '@/utils/request'
// 微信小程序配置保存
export function setWeappConfig(params: any) {
return request.post({ url: '/channel/mp/save', params })
}
// 微信小程序配置详情
export function getWeappConfig() {
return request.get({ url: '/channel/mp/detail' })
}

View File

@@ -1,32 +0,0 @@
/** S 微信小程序设置 **/
export interface WechatMiniSetting_Res {
name: string, // 小程序名称
original_id: string, // 原始id
qr_code: string, // 二维码
app_id: string,
app_secret: string,
request_domain: string, // request合法域名
socket_domain: string, // socket合法域名
upload_file_domain: string, // uploadFile合法域名
download_file_domain: string, // downloadFile合法域名
udp_domain: string, // udp合法域名
business_domain: string, // 业务域名
url: string,
token: string,
encoding_aes_key: string,
encryption_type: 1 | 2 | 3 , // 消息加密方式 1-明文模式 2-兼容模式 3-安全模式
data_format: 1 | 2 // 数据格式 1-JSON 2-XML
}
export interface WechatMiniSetting_Req {
name: string, // 小程序名称
original_id: string, // 原始id
qr_code: string, // 二维码
app_id: string,
app_secret: string,
token: string,
encoding_aes_key: string,
encryption_type: 1 | 2 | 3 , // 消息加密方式 1-明文模式 2-兼容模式 3-安全模式
data_format: 1 | 2 // 数据格式 1-JSON 2-XML
}
/** E 微信小程序设置 **/

View File

@@ -1,11 +0,0 @@
import request from "@/utils/request";
import * as Interface from './wechat_app.d.ts'
/** S 微信小程序设置 **/
// 获取微信小程序设置
export const apiWechatMiniSetting = (): Promise<Interface.WechatMiniSetting_Res> =>
request.get('/channel.mnp_settings/getConfig')
// 微信小程序设置
export const apiWechatMiniSettingSet = (data: Interface.WechatMiniSetting_Req): Promise<any> =>
request.post('/channel.mnp_settings/setConfig', data)
/** E 微信小程序设置 **/

View File

@@ -1,11 +0,0 @@
import request from "@/utils/request";
/** S 微信公众平台设置 **/
// 获取pc设置
export const apiWechatPlatformGet = (): Promise<any> =>
request.get('/channel.open_setting/getConfig')
// pc设置
export const apiWechatPlatformSet = (data: any): Promise<any> =>
request.post('/channel.open_setting/setConfig', data)
/** E pc设置 **/

View File

@@ -0,0 +1,11 @@
import request from '@/utils/request'
// 微信开发平台配置保存
export function setWxDevConfig(params: any) {
return request.post({ url: '/channel/wx/save', params })
}
// 微信开发平台配置详情
export function getWxDevConfig() {
return request.get({ url: '/channel/wx/detail' })
}

View File

@@ -0,0 +1,11 @@
import request from '@/utils/request'
// 微信公众号配置保存
export function setOaConfig(params: any) {
return request.post({ url: '/channel/oa/save', params })
}
// 微信公众号配置详情
export function getOaConfig() {
return request.get({ url: '/channel/oa/detail' })
}

16
admin/src/api/consumer.ts Normal file
View File

@@ -0,0 +1,16 @@
import request from '@/utils/request'
// 用户列表
export function getUserList(params: any) {
return request.get({ url: '/user/list', params })
}
// 用户详情
export function getUserDetail(params: any) {
return request.get({ url: '/user/detail', params })
}
// 用户编辑
export function userEdit(params: any) {
return request.post({ url: '/user/edit', params })
}

View File

@@ -1,101 +1,21 @@
/* 装修管理 */
import request from '@/utils/request'
/* 首页装修 Start */
// 列表
export function apiHomeMenuLists() {
return request.get('/decorate.menu/lists')
// 页面装修详情
export function getDecoratePages(params: any) {
return request.get({ url: '/decorate/pages/detail', params }, { ignoreCancelToken: true })
}
// 商城页面列表
export function apiShowPage() {
return request.get('/decorate.menu/shopPage')
// 页面装修保存
export function setDecoratePages(params: any) {
return request.post({ url: '/decorate/pages/save', params })
}
// 商品分类一级页面
export function apiGoodsCategoryPage() {
return request.get('/decorate.menu/goodsCategoryPage')
// 底部导航详情
export function getDecorateTabbar(params?: any) {
return request.get({ url: '/decorate/tabbar/detail', params })
}
// 详情
export function apiHomeMenuDetail(params: any) {
return request.get('/decorate.menu/detail', { params })
// 底部导航保存
export function setDecorateTabbar(params: any) {
return request.post({ url: '/decorate/tabbar/save', params })
}
// 添加
export function apiHomeMenuAdd(params: any) {
return request.post('/decorate.menu/add', params)
}
// 编辑
export function apiHomeMenuEdit(params: any) {
return request.post('/decorate.menu/edit', params)
}
// 状态
export function apiHomeMenuStatusEdit(params: any) {
return request.post('/decorate.menu/status', params)
}
// 删除
export function apiHomeMenuDel(params: any) {
return request.post('/decorate.menu/del', params)
}
/* 首页装修 End */
/* 底部导航 Start */
// 列表
export function apiTabBarLists() {
return request.get('/decorate.navigation/lists')
}
// 详情
export function apiTabBarDetail(params: any) {
return request.get('/decorate.navigation/detail', { params })
}
// 编辑
export function apiTabBarEdit(params: any) {
return request.post('/decorate.navigation/edit', params)
}
/* 底部导航 End */
/* 广告管理 Start */
// 列表
export function apiAdLists(params: any) {
return request.get('/ad.ad/lists', { params })
}
// 广告位列表
export function apiAdPositionLists() {
return request.get('/ad.ad_position/lists')
}
// 详情
export function apiAdDetail(params: any) {
return request.get('/ad.ad/detail', { params })
}
// 添加
export function apiAdAdd(params: any) {
return request.post('/ad.ad/add', params)
}
// 删除
export function apiAdDel(params: any) {
return request.post('/ad.ad/del', params)
}
// 状态修改
export function apiAdEditStatus(params: any) {
return request.post('/ad.ad/status', params)
}
// 编辑
export function apiAdEdit(params: any) {
return request.post('/ad.ad/edit', params)
}
/* 广告管理 End */

39
admin/src/api/file.ts Normal file
View File

@@ -0,0 +1,39 @@
import request from '@/utils/request'
export function fileCateAdd(params: Record<string, any>) {
return request.post({ url: '/common/album/cateAdd', params })
}
export function fileCateEdit(params: Record<string, any>) {
return request.post({ url: '/common/album/cateRename', params })
}
// 文件分类删除
export function fileCateDelete(params: Record<string, any>) {
return request.post({ url: '/common/album/cateDel', params })
}
// 文件分类列表
export function fileCateLists(params: Record<string, any>) {
return request.get({ url: '/common/album/cateList', params })
}
// 文件列表
export function fileList(params: Record<string, any>) {
return request.get({ url: '/common/album/albumList', params })
}
// 文件删除
export function fileDelete(params: Record<string, any>) {
return request.post({ url: '/common/album/albumDel', params })
}
// 文件移动
export function fileMove(params: Record<string, any>) {
return request.post({ url: '/common/album/albumMove', params })
}
// 文件重命名
export function fileRename(params: { id: number; name: string }) {
return request.post({ url: '/common/album/albumRename', params })
}

View File

@@ -1,70 +0,0 @@
import request from '@/utils/request'
/** 资讯分类 Start **/
// 列表
export function apiArticleCategoryList(params: any) {
return request.get('/article.articleCategory/lists', { params })
}
// 添加
export function apiArticleCategoryAdd(params: any) {
return request.post('/article.articleCategory/add', params)
}
// 编辑
export function apiArticleCategoryEdit(params: any) {
return request.post('/article.articleCategory/edit', params)
}
// 详情
export function apiArticleCategoryDetail(params: any) {
return request.get('/article.articleCategory/detail', { params })
}
// 删除
export function apiArticleCategoryDelete(params: any) {
return request.post('/article.articleCategory/delete', params)
}
// 状态
export function apiArticleCategoryStatus(params: any) {
return request.post('/article.articleCategory/updateStatus', params)
}
/** 资讯分类 End **/
/** 资讯列表 Start **/
// 列表
export function apiArticleList(params: any) {
return request.get('/article.article/lists', { params })
}
// 添加
export function apiArticleAdd(params: any) {
return request.post('/article.article/add', params)
}
// 编辑
export function apiArticleEdit(params: any) {
return request.post('/article.article/edit', params)
}
// 详情
export function apiArticleDetail(params: any) {
return request.get('/article.article/detail', { params })
}
// 删除
export function apiArticleDelete(params: any) {
return request.post('/article.article/delete', params)
}
// 状态
export function apiArticleStatus(params: any) {
return request.post('/article.article/updateStatus', params)
}
// 所有资讯分类
export function apiAllArticleCategory() {
return request.get('/article.articleCategory/selectArticleCategory')
}
/** 资讯列表 End **/

31
admin/src/api/message.ts Normal file
View File

@@ -0,0 +1,31 @@
import request from '@/utils/request'
// 通知设置列表
export function noticeLists(params: any) {
return request.get({ url: '/setting/notice/list', params })
}
// 通知设置详情
export function noticeDetail(params: any) {
return request.get({ url: '/setting/notice/detail', params })
}
// 通知设置保存
export function setNoticeConfig(params: any) {
return request.post({ url: '/setting/notice/save', params })
}
// 短信设置列表
export function smsLists() {
return request.get({ url: '/setting/sms/list' })
}
// 短信设置详情
export function smsDetail(params: any) {
return request.get({ url: '/setting/sms/detail', params })
}
// 短信设置保存
export function setSmsConfig(params: any) {
return request.post({ url: '/setting/sms/save', params })
}

View File

@@ -0,0 +1,26 @@
import request from '@/utils/request'
// 部门列表
export function deptLists(params?: any) {
return request.get({ url: '/system/dept/list', params })
}
// 添加部门
export function deptAdd(params: any) {
return request.post({ url: '/system/dept/add', params })
}
// 编辑部门
export function deptEdit(params: any) {
return request.post({ url: '/system/dept/edit', params })
}
// 删除部门
export function deptDelete(params: any) {
return request.post({ url: '/system/dept/del', params })
}
// 部门详情
export function deptDetail(params?: any) {
return request.get({ url: '/system/dept/detail', params })
}

30
admin/src/api/org/post.ts Normal file
View File

@@ -0,0 +1,30 @@
import request from '@/utils/request'
// 岗位列表
export function postLists(params?: any) {
return request.get({ url: '/system/post/list', params })
}
// 岗位列表
export function postAll(params?: any) {
return request.get({ url: '/system/post/all', params })
}
// 添加岗位
export function postAdd(params: any) {
return request.post({ url: '/system/post/add', params })
}
// 编辑岗位
export function postEdit(params: any) {
return request.post({ url: '/system/post/edit', params })
}
// 删除岗位
export function postDelete(params: any) {
return request.post({ url: '/system/post/del', params })
}
// 岗位详情
export function postDetail(params: any) {
return request.get({ url: '/system/post/detail', params })
}

View File

@@ -1,64 +0,0 @@
import request from '@/utils/request'
/** 部门 S **/
// 部门列表
export function apiDeptLists(params: any) {
return request.get('/system/dept/list', { params })
}
// 添加部门
export function apiDeptAdd(params: any) {
return request.post('/system/dept/add', params)
}
// 编辑部门
export function apiDeptEdit(params: any) {
return request.post('/system/dept/edit', params)
}
// 删除部门
export function apiDeptDelete(params: any) {
return request.post('/system/dept/del', params)
}
// 部门详情
export function apiDeptDetail(params: any) {
return request.get('/system/dept/detail', { params })
}
// 所有部门
export function apiDeptAll(params: any) {
return request.get('/system/dept/all', { params })
}
/** 部门 E **/
/** 岗位 S **/
// 岗位列表
export function apiPostLists(params: any) {
return request.get('/system/post/list', { params })
}
// 添加岗位
export function apiPostAdd(params: any) {
return request.post('/system/post/add', params)
}
// 编辑岗位
export function apiPostEdit(params: any) {
return request.post('/system/post/edit', params)
}
// 删除岗位
export function apiPostDelete(params: any) {
return request.post('/system/post/del', params)
}
// 岗位详情
export function apiPostDetail(params: any) {
return request.get('/system/post/detail', { params })
}
// 所有岗位
export function apiPostAll(params: any) {
return request.get('/system/post/all', { params })
}
/** 岗位 E **/

View File

@@ -0,0 +1,31 @@
import request from '@/utils/request'
// 管理员列表
export function adminLists(params: any) {
return request.get({ url: '/system/admin/list', params })
}
// 管理员添加
export function adminAdd(params: any) {
return request.post({ url: '/system/admin/add', params })
}
// 管理员编辑
export function adminDetail(params: any) {
return request.get({ url: '/system/admin/detail', params })
}
// 管理员编辑
export function adminEdit(params: any) {
return request.post({ url: '/system/admin/edit', params })
}
// 管理员删除
export function adminDelete(params: any) {
return request.post({ url: '/system/admin/del', params })
}
// 管理员删除
export function adminStatus(params: any) {
return request.post({ url: '/system/admin/disable', params })
}

View File

@@ -0,0 +1,26 @@
import request from '@/utils/request'
// 菜单列表
export function menuLists(params?: Record<string, any>) {
return request.get({ url: '/system/menu/list', params })
}
// 添加菜单
export function menuAdd(params: Record<string, any>) {
return request.post({ url: '/system/menu/add', params })
}
// 编辑菜单
export function menuEdit(params: Record<string, any>) {
return request.post({ url: '/system/menu/edit', params })
}
// 菜单删除
export function menuDelete(params: Record<string, any>) {
return request.post({ url: '/system/menu/del', params })
}
// 菜单删除
export function menuDetail(params: Record<string, any>) {
return request.get({ url: '/system/menu/detail', params })
}

View File

@@ -0,0 +1,29 @@
import request from '@/utils/request'
// 角色列表
export function roleLists(params: any) {
return request.get({ url: '/system/role/list', params })
}
// 角色列表
export function roleAll(params?: any) {
return request.get({ url: '/system/role/all', params })
}
// 角色列表
export function roleDetail(params: any) {
return request.get({ url: '/system/role/detail', params })
}
// 添加角色
export function roleAdd(params: any) {
return request.post({ url: '/system/role/add', params })
}
// 编辑角色
export function roleEdit(params: any) {
return request.post({ url: '/system/role/edit', params })
}
// 删除角色
export function roleDelete(params: any) {
return request.post({ url: '/system/role/del', params })
}

View File

@@ -1,107 +0,0 @@
import request from '@/utils/request'
// 获取备案信息
export function apiGetCopyright() {
return request.get('/setting/basics/getCopyright')
}
// 设置备案信息
export function apiSetCopyright(params: any) {
return request.post('/setting/basics/setCopyright', { ...params })
}
// 获取网站信息
export function apiGetWebsite() {
return request.get('/setting/basics/getWebsite')
}
// 设置网站信息
export function apiSetWebsite(params: any) {
return request.post('/setting/basics/setWebsite', { ...params })
}
// 获取政策协议
export function apiGetProtocol() {
return request.get('/setting.web.web_setting/getAgreement')
}
// 设置政策协议
export function apiSetProtocol(params: any) {
return request.post('/setting.web.web_setting/setAgreement', params)
}
// 获取系统环境
export function apiSystemInfo() {
return request.get('/monitor/server')
}
/** S 在线客服 **/
// 获取客服设置
export const apiCustomerServiceGetConfig = (): Promise<any> =>
request.get('/setting.customer_service/getConfig')
// 设置客服设置
export const apiCustomerServiceSetConfig = (params: any): Promise<any> =>
request.post('/setting.customer_service/setConfig', params)
/** E 在线客服 **/
/** S 用户设置 **/
// 获取用户设置
export function apiUserConfigGet() {
return request.get('/setting.user.user/getConfig')
}
// 用户设置
export function apiUserConfigSet(params: any) {
return request.post('/setting.user.user/setConfig', params)
}
// 获取登录注册设置
export function apiLoginConfigGet() {
return request.get('/setting.user.user/getRegisterConfig')
}
// 登录注册设置
export function apiLoginConfigSet(params: any) {
return request.post('/setting.user.user/setRegisterConfig', params)
}
/** E 用户设置 **/
// 获取系统日志列表
export function apiSystemLogLists(params: any) {
return request.get('/system/log/operate', { params })
}
// 系统缓存
export function apiSystemCache(params: any) {
return request.get('/monitor/cache', { params })
}
// 编辑管理员信息
export function apiAuthAdminEditSelf(params: any) {
return request.post('/auth.admin/editSelf', params)
}
// 获取管理员信息
export function apiAuthAdminMySelf() {
return request.post('/auth.admin/mySelf')
}
/** S 存储设置 **/
// 存储列表
export function apiStorageLists() {
return request.get('/setting/storage/list')
}
// 存储切换
export function apiStorageChange(params: any) {
return request.post('/setting/storage/change', params)
}
// 存储详情
export function apiStorageDetail(params: any) {
return request.get('/setting/storage/detail', { params })
}
// 存储配置
export function apiStorageEdit(params: any) {
return request.post('/setting/storage/edit', params)
}
/** E 存储设置 **/

View File

@@ -0,0 +1,61 @@
import request from '@/utils/request'
// 字典类型列表
export function dictTypeLists(params?: any) {
return request.get({ url: '/setting/dict/type/list', params })
}
// 字典类型列表
export function dictTypeAll(params?: any) {
return request.get({ url: '/setting/dict/type/all', params })
}
// 添加字典类型
export function dictTypeAdd(params: any) {
return request.post({ url: '/setting/dict/type/add', params })
}
// 编辑字典类型
export function dictTypeEdit(params: any) {
return request.post({ url: '/setting/dict/type/edit', params })
}
// 删除字典类型
export function dictTypeDelete(params: any) {
return request.post({ url: '/setting/dict/type/del', params })
}
// 字典数据列表
export function dictDataLists(params: any) {
return request.get(
{ url: '/setting/dict/data/list', params },
{
ignoreCancelToken: true
}
)
}
// 字典数据列表
export function dictDataAll(params: any) {
return request.get(
{ url: '/setting/dict/data/all', params },
{
ignoreCancelToken: true
}
)
}
// 添加字典数据
export function dictDataAdd(params: any) {
return request.post({ url: '/setting/dict/data/add', params })
}
// 编辑字典数据
export function dictDataEdit(params: any) {
return request.post({ url: '/setting/dict/data/edit', params })
}
// 删除字典数据
export function dictDataDelete(params: any) {
return request.post({ url: '/setting/dict/data/del', params })
}

View File

@@ -0,0 +1,29 @@
import request from '@/utils/request'
/**
* @return { Promise }
* @description 获取热门搜索数据
*/
export function getSearch() {
return request.get({ url: '/setting/search/detail' })
}
export interface List {
name: string // 搜索关键字
sort: number // 热门搜索排序
}
export interface Search {
isHotSearch: number // 是否开启搜索0/1
list: List[]
}
/**
* @return { Promise }
* @param { Search } Search
* @description 设置热门搜索
*/
export function setSearch(params: Search) {
return request.post({ url: '/setting/search/save', params })
}

View File

@@ -0,0 +1,21 @@
import request from '@/utils/request'
// 获取存储引擎列表
export function storageLists() {
return request.get({ url: '/setting/storage/list' })
}
// 设置存储引擎信息
export function storageChange(params: any) {
return request.post({ url: '/setting/storage/change', params })
}
// 设置存储引擎信息
export function storageSetup(params: any) {
return request.post({ url: '/setting/storage/edit', params })
}
// 获取存储配置信息
export function storageDetail(params: any) {
return request.get({ url: '/setting/storage/detail', params })
}

View File

@@ -0,0 +1,16 @@
import request from '@/utils/request'
// 获取系统环境
export function systemInfo() {
return request.get({ url: '/monitor/server' })
}
// 获取系统日志列表
export function systemLogLists(params: any) {
return request.get({ url: '/system/log/operate', params })
}
// 系统缓存监控
export function systemCache() {
return request.get({ url: '/monitor/cache' })
}

View File

@@ -0,0 +1,45 @@
import request from '@/utils/request'
/**
* @return { Promise }
* @description 获取用户设置
*/
export function getUserSetup() {
return request.get({ url: '/setting/user/detail' })
}
/**
* @return { Promise }
* @param { string } defaultAvatar 默认用户头像
* @description 设置用户设置
*/
export function setUserSetup(params: { defaultAvatar: string }) {
return request.post({ url: '/setting/user/save', params })
}
/**
* @return { Promise }
* @description 设置登录注册规则
*/
export function getLogin() {
return request.get({ url: '/setting/login/detail' })
}
export interface LoginSetup {
loginWay: number[] | any // 登录方式, 逗号隔开
forceBindMobile: number // 强制绑定手机 0/1
openAgreement: number // 是否开启协议 0/1
openOtherAuth: number // 第三方登录 0/1
autoLoginAuth: number[] | any // 第三方自动登录 逗号隔开
}
/**
* @return { Promise }
* @param { LoginSetup } LoginSetup
* @description 设置登录注册规则
*/
export function setLogin(params: LoginSetup) {
return request.post({ url: '/setting/login/save', params })
}

View File

@@ -0,0 +1,27 @@
import request from '@/utils/request'
// 获取备案信息
export function getCopyright() {
return request.get({ url: '/setting/copyright/detail' })
}
// 设置备案信息
export function setCopyright(params: any) {
return request.post({ url: '/setting/copyright/save', params })
}
// 获取网站信息
export function getWebsite() {
return request.get({ url: '/setting/website/detail' })
}
// 设置网站信息
export function setWebsite(params: any) {
return request.post({ url: '/setting/website/save', params })
}
// 获取政策协议
export function getProtocol() {
return request.get({ url: '/setting/protocol/detail' })
}
// 设置政策协议
export function setProtocol(params: any) {
return request.post({ url: '/setting/protocol/save', params })
}

View File

@@ -0,0 +1,66 @@
import request from '@/utils/request'
// 代码生成已选数据表列表接口
export function generateTable(params: any) {
return request.get({ url: '/gen/list', params })
}
// 数据表列表接口
export function dataTable(params: any) {
return request.get({ url: '/gen/db', params })
}
//选择要生成代码的数据表
export function selectTable(params: any) {
return request.post(
{ url: '/gen/importTable', params },
{
isParamsToData: false
}
)
}
// 已选择的数据表详情
export function tableDetail(params: any) {
return request.get({ url: '/gen/detail', params })
}
//同步字段
export function syncColumn(params: any) {
return request.post(
{ url: '/gen/syncTable', params },
{
isParamsToData: false
}
)
}
//删除已选择的数据表
export function generateDelete(params: any) {
return request.post({ url: '/gen/delTable', params })
}
//编辑已选表字段
export function generateEdit(params: any) {
return request.post({ url: '/gen/editTable', params })
}
//预览代码
export function generatePreview(params: any) {
return request.get({ url: '/gen/previewCode', params })
}
//生成代码
export function generateCode(params: any) {
return request.get({ url: '/gen/genCode', params })
}
//下载代码
export function downloadCode(params: any) {
return request.get(
{ responseType: 'blob', url: '/gen/downloadCode', params },
{
isTransformResponse: false
}
)
}

View File

@@ -1,20 +1,27 @@
import config from '@/config'
import request from '@/utils/request'
import { terminal } from '@/config/app'
// 登录
export function apiLogin(params: { username: string; password: string }) {
return request.post('/system/login', { ...params, terminal })
export function login(params: Record<string, any>) {
return request.post({ url: '/system/login', params: { ...params, terminal: config.terminal } })
}
// 退出登录
export function apiLogout() {
return request.post('/system/logout')
export function logout() {
return request.post({ url: '/system/logout' })
}
// 用户信息
export function apiUserInfo() {
return request.get('/system/admin/self')
export function getUserInfo() {
return request.get({ url: '/system/admin/self' })
}
export function apiAdminUpInfo(params: any) {
return request.post('/system/admin/upInfo', params)
// 菜单路由
export function getMenu() {
return request.get({ url: '/system/menu/route' })
}
// 编辑管理员信息
export function setUserInfo(params: any) {
return request.post({ url: '/system/admin/upInfo', params })
}

View File

@@ -1,6 +0,0 @@
import request from '@/utils/request'
// 工作台主页
export function apiWorkbench() {
return request.get('/common/index/console')
}

View File

@@ -1,536 +0,0 @@
/* Logo 字体 */
@font-face {
font-family: 'iconfont logo';
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
}
.logo {
font-family: 'iconfont logo';
font-size: 160px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* tabs */
.nav-tabs {
position: relative;
}
.nav-tabs .nav-more {
position: absolute;
right: 0;
bottom: 0;
height: 42px;
line-height: 42px;
color: #666;
}
#tabs {
border-bottom: 1px solid #eee;
}
#tabs li {
cursor: pointer;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 16px;
border-bottom: 2px solid transparent;
position: relative;
z-index: 1;
margin-bottom: -1px;
color: #666;
}
#tabs .active {
border-bottom-color: #f00;
color: #222;
}
.tab-container .content {
display: none;
}
/* 页面布局 */
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main .logo {
color: #333;
text-align: left;
margin-bottom: 30px;
line-height: 1;
height: 110px;
margin-top: -50px;
overflow: hidden;
*zoom: 1;
}
.main .logo a {
font-size: 160px;
color: #333;
}
.helps {
margin-top: 40px;
}
.helps pre {
padding: 20px;
margin: 10px 0;
border: solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists {
width: 100% !important;
overflow: hidden;
*zoom: 1;
}
.icon_lists li {
width: 100px;
margin-bottom: 10px;
margin-right: 20px;
text-align: center;
list-style: none !important;
cursor: default;
}
.icon_lists li .code-name {
line-height: 1.2;
}
.icon_lists .icon {
display: block;
height: 100px;
line-height: 100px;
font-size: 42px;
margin: 10px auto;
color: #333;
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
-moz-transition: font-size 0.25s linear, width 0.25s linear;
transition: font-size 0.25s linear, width 0.25s linear;
}
.icon_lists .icon:hover {
font-size: 100px;
}
.icon_lists .svg-icon {
/* 通过设置 font-size 来改变图标大小 */
width: 1em;
/* 图标和文字相邻时,垂直对齐 */
vertical-align: -0.15em;
/* 通过设置 color 来改变 SVG 的颜色/fill */
fill: currentColor;
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
normalize.css 中也包含这行 */
overflow: hidden;
}
.icon_lists li .name,
.icon_lists li .code-name {
color: #666;
}
/* markdown 样式 */
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p {
margin: 1em 0;
}
.markdown > p,
.markdown > blockquote,
.markdown > .highlight,
.markdown > ol,
.markdown > ul {
width: 80%;
}
.markdown ul > li {
list-style: circle;
}
.markdown > ul li,
.markdown blockquote ul > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown > ul li p,
.markdown > ol li p {
margin: 0.6em 0;
}
.markdown ol > li {
list-style: decimal;
}
.markdown > ol li,
.markdown blockquote ol > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown > table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown > table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown > table th,
.markdown > table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown > table th {
background: #f7f7f7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown > br,
.markdown > p > br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
/* 代码高亮 */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*='language-'],
pre[class*='language-'] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*='language-']::-moz-selection,
pre[class*='language-'] ::-moz-selection,
code[class*='language-']::-moz-selection,
code[class*='language-'] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*='language-']::selection,
pre[class*='language-'] ::selection,
code[class*='language-']::selection,
code[class*='language-'] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*='language-'],
pre[class*='language-'] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*='language-'] {
padding: 1em;
margin: 0.5em 0;
overflow: auto;
}
:not(pre) > code[class*='language-'],
pre[class*='language-'] {
background: #f5f2f0;
}
/* Inline code */
:not(pre) > code[class*='language-'] {
padding: 0.1em;
border-radius: 0.3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.namespace {
opacity: 0.7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
background: hsla(0, 0%, 100%, 0.5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function,
.token.class-name {
color: #dd4a68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,365 +0,0 @@
@font-face {
font-family: 'iconfont'; /* Project id 2786219 */
src: url('iconfont.woff2?t=1638503419755') format('woff2'), url('iconfont.woff?t=1638503419755') format('woff'),
url('iconfont.ttf?t=1638503419755') format('truetype');
}
.iconfont {
font-family: 'iconfont' !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon_kdzs_mdsz:before {
content: '\e7c2';
}
.icon_xpdy_mbgl:before {
content: '\e6f9';
}
.icon_xcxzb_zb:before {
content: '\e701';
}
.icon_xycj_cj:before {
content: '\e752';
}
.icon_kdzs_fjrmb:before {
content: '\e75a';
}
.operation:before {
content: '\e75c';
}
.icon_pcshop:before {
content: '\e75d';
}
.icon_xpdy_dyjgl:before {
content: '\e75e';
}
.icon_kdzs_pldy:before {
content: '\e772';
}
.icon_kdzs_mdmb:before {
content: '\e7cc';
}
.icon_qudao_h5:before {
content: '\e753';
}
.icon_fenxiao_goods:before {
content: '\e75b';
}
.icon_kanjia:before {
content: '\e6d1';
}
.icon_hexiao_order:before {
content: '\e7b4';
}
.icon_pintuan:before {
content: '\e7cf';
}
.carryout:before {
content: '\e7d3';
}
.icon_qiandao_jilu:before {
content: '\e7d4';
}
.icon_notice:before {
content: '\e7da';
}
.icon_notice_mail:before {
content: '\e7de';
}
.gift:before {
content: '\e842';
}
.icon_notice_buyer:before {
content: '\e8e8';
}
.Field-time:before {
content: '\e90e';
}
.icon_hexiao_member2:before {
content: '\e747';
}
.icon_coupons:before {
content: '\e74a';
}
.icon_coupons_data:before {
content: '\e74b';
}
.icon_fenxiao_member:before {
content: '\e74c';
}
.icon_qiandao_guize:before {
content: '\e751';
}
.icon_pintuan2:before {
content: '\e759';
}
.icon_notice_seller:before {
content: '\e76a';
}
.icon_pintuan_data:before {
content: '\e76b';
}
.icon_fenxiao_data:before {
content: '\e76c';
}
.icon_ziti_store:before {
content: '\e76f';
}
.wallet:before {
content: '\e774';
}
.icon_kefu_comments:before {
content: '\e7b2';
}
.tradingdata:before {
content: '\e7b5';
}
.icon_fenxiao_order:before {
content: '\e7c4';
}
.icon_hexiao_member:before {
content: '\e7c9';
}
.icon_fenxiao_set:before {
content: '\e7ca';
}
.icon_fenxiao_grade:before {
content: '\e7d5';
}
.yiguanzhugongyingshang:before {
content: '\e7d6';
}
.icon_user_gaikuang:before {
content: '\e834';
}
.icon_qudao_weixin:before {
content: '\e833';
}
.icon_qudao_app:before {
content: '\e827';
}
.icon_qudao_xiaochengxu:before {
content: '\e6b4';
}
.icon_dianpu_daohang:before {
content: '\e857';
}
.icon_yingxiao_qipao:before {
content: '\e860';
}
.icon_set_jiaoyi:before {
content: '\e88f';
}
.icon_caiwu_yue:before {
content: '\e82c';
}
.icon_caiwu_tixian:before {
content: '\e828';
}
.icon_caiwu_jifen:before {
content: '\e829';
}
.icon_shuju_liuliang:before {
content: '\e82b';
}
.icon_user_dengji:before {
content: '\e82f';
}
.icon_user_guanli:before {
content: '\e830';
}
.icon_user_biaoqian:before {
content: '\e831';
}
.icon_order_shouhou:before {
content: '\e82a';
}
.icon_copy:before {
content: '\e861';
}
.icon_set_product:before {
content: '\e880';
}
.icon_set_save:before {
content: '\e887';
}
.icon_dianpu_fenlei:before {
content: '\e889';
}
.icon_dianpu_fengge:before {
content: '\e896';
}
.icon_dianpu_sucai:before {
content: '\e897';
}
.icon_dianpu_xiangqing:before {
content: '\e8a1';
}
.icon_order_guanli:before {
content: '\e8a9';
}
.icon_caiwu:before {
content: '\e826';
}
.icon_user:before {
content: '\e82d';
}
.icon_set_user:before {
content: '\e82e';
}
.icon_shuju:before {
content: '\e832';
}
.icon_dianpu_home:before {
content: '\e84c';
}
.icon_yingyongcenter:before {
content: '\e84f';
}
.icon_qudao:before {
content: '\e853';
}
.icon_qudao2:before {
content: '\e854';
}
.icon_set_store:before {
content: '\e85c';
}
.icon_dianpu_weiyem:before {
content: '\e85d';
}
.icon_set_quanxian:before {
content: '\e866';
}
.icon_hide:before {
content: '\e86f';
}
.icon_show:before {
content: '\e870';
}
.icon_wallet:before {
content: '\e871';
}
.icon_set_pay:before {
content: '\e872';
}
.icon_set_weihu:before {
content: '\e875';
}
.icon_set_peisong:before {
content: '\e877';
}
.icon_yingxiaowf:before {
content: '\e879';
}
.icon_dianpu_shoppingCar:before {
content: '\e87e';
}
.icon_goods:before {
content: '\e657';
}
.icon_sort:before {
content: '\e658';
}
.icon_danwei:before {
content: '\e653';
}
.icon_pingjia:before {
content: '\e654';
}
.icon_pinpai:before {
content: '\e655';
}
.icon_gongyingshang:before {
content: '\e656';
}

View File

@@ -1,625 +0,0 @@
{
"id": "2786219",
"name": "likesadmin",
"font_family": "iconfont",
"css_prefix_text": "icon-",
"description": "",
"glyphs": [
{
"icon_id": "13087831",
"name": "分层配置",
"font_class": "icon_kdzs_mdsz",
"unicode": "e7c2",
"unicode_decimal": 59330
},
{
"icon_id": "11474291",
"name": "integral",
"font_class": "icon_xpdy_mbgl",
"unicode": "e6f9",
"unicode_decimal": 59129
},
{
"icon_id": "11474324",
"name": "play",
"font_class": "icon_xcxzb_zb",
"unicode": "e701",
"unicode_decimal": 59137
},
{
"icon_id": "11488055",
"name": "gift",
"font_class": "icon_xycj_cj",
"unicode": "e752",
"unicode_decimal": 59218
},
{
"icon_id": "11488086",
"name": "office-supplies",
"font_class": "icon_kdzs_fjrmb",
"unicode": "e75a",
"unicode_decimal": 59226
},
{
"icon_id": "11488090",
"name": "operation",
"font_class": "operation",
"unicode": "e75c",
"unicode_decimal": 59228
},
{
"icon_id": "11488094",
"name": "phone",
"font_class": "icon_pcshop",
"unicode": "e75d",
"unicode_decimal": 59229
},
{
"icon_id": "11488099",
"name": "print",
"font_class": "icon_xpdy_dyjgl",
"unicode": "e75e",
"unicode_decimal": 59230
},
{
"icon_id": "11488203",
"name": "invoice",
"font_class": "icon_kdzs_pldy",
"unicode": "e772",
"unicode_decimal": 59250
},
{
"icon_id": "13087859",
"name": "cascades",
"font_class": "icon_kdzs_mdmb",
"unicode": "e7cc",
"unicode_decimal": 59340
},
{
"icon_id": "11488057",
"name": "image-text",
"font_class": "icon_qudao_h5",
"unicode": "e753",
"unicode_decimal": 59219
},
{
"icon_id": "11488091",
"name": "packaging",
"font_class": "icon_fenxiao_goods",
"unicode": "e75b",
"unicode_decimal": 59227
},
{
"icon_id": "16322380",
"name": "砍价",
"font_class": "icon_kanjia",
"unicode": "e6d1",
"unicode_decimal": 59089
},
{
"icon_id": "4766459",
"name": "file done",
"font_class": "icon_hexiao_order",
"unicode": "e7b4",
"unicode_decimal": 59316
},
{
"icon_id": "4766779",
"name": "shopping",
"font_class": "icon_pintuan",
"unicode": "e7cf",
"unicode_decimal": 59343
},
{
"icon_id": "4766856",
"name": "carry out",
"font_class": "carryout",
"unicode": "e7d3",
"unicode_decimal": 59347
},
{
"icon_id": "4766857",
"name": "calendar-check",
"font_class": "icon_qiandao_jilu",
"unicode": "e7d4",
"unicode_decimal": 59348
},
{
"icon_id": "4766907",
"name": "sound",
"font_class": "icon_notice",
"unicode": "e7da",
"unicode_decimal": 59354
},
{
"icon_id": "4766918",
"name": "mail",
"font_class": "icon_notice_mail",
"unicode": "e7de",
"unicode_decimal": 59358
},
{
"icon_id": "4936458",
"name": "gift",
"font_class": "gift",
"unicode": "e842",
"unicode_decimal": 59458
},
{
"icon_id": "6598316",
"name": "comment",
"font_class": "icon_notice_buyer",
"unicode": "e8e8",
"unicode_decimal": 59624
},
{
"icon_id": "9229178",
"name": "Field-time",
"font_class": "Field-time",
"unicode": "e90e",
"unicode_decimal": 59662
},
{
"icon_id": "11488002",
"name": "certified-supplier",
"font_class": "icon_hexiao_member2",
"unicode": "e747",
"unicode_decimal": 59207
},
{
"icon_id": "11488015",
"name": "coupons",
"font_class": "icon_coupons",
"unicode": "e74a",
"unicode_decimal": 59210
},
{
"icon_id": "11488023",
"name": "data",
"font_class": "icon_coupons_data",
"unicode": "e74b",
"unicode_decimal": 59211
},
{
"icon_id": "11488024",
"name": "Customer management",
"font_class": "icon_fenxiao_member",
"unicode": "e74c",
"unicode_decimal": 59212
},
{
"icon_id": "11488044",
"name": "feeds",
"font_class": "icon_qiandao_guize",
"unicode": "e751",
"unicode_decimal": 59217
},
{
"icon_id": "11488081",
"name": "New user zone",
"font_class": "icon_pintuan2",
"unicode": "e759",
"unicode_decimal": 59225
},
{
"icon_id": "11488152",
"name": "trade alert",
"font_class": "icon_notice_seller",
"unicode": "e76a",
"unicode_decimal": 59242
},
{
"icon_id": "11488153",
"name": "top sales",
"font_class": "icon_pintuan_data",
"unicode": "e76b",
"unicode_decimal": 59243
},
{
"icon_id": "11488154",
"name": "trading volume",
"font_class": "icon_fenxiao_data",
"unicode": "e76c",
"unicode_decimal": 59244
},
{
"icon_id": "11488170",
"name": "store",
"font_class": "icon_ziti_store",
"unicode": "e76f",
"unicode_decimal": 59247
},
{
"icon_id": "11488210",
"name": "wallet",
"font_class": "wallet",
"unicode": "e774",
"unicode_decimal": 59252
},
{
"icon_id": "12011693",
"name": "comments",
"font_class": "icon_kefu_comments",
"unicode": "e7b2",
"unicode_decimal": 59314
},
{
"icon_id": "12012167",
"name": "trading data",
"font_class": "tradingdata",
"unicode": "e7b5",
"unicode_decimal": 59317
},
{
"icon_id": "13087832",
"name": "申请记录",
"font_class": "icon_fenxiao_order",
"unicode": "e7c4",
"unicode_decimal": 59332
},
{
"icon_id": "13087848",
"name": "中间人",
"font_class": "icon_hexiao_member",
"unicode": "e7c9",
"unicode_decimal": 59337
},
{
"icon_id": "13087852",
"name": "账户操作",
"font_class": "icon_fenxiao_set",
"unicode": "e7ca",
"unicode_decimal": 59338
},
{
"icon_id": "13119207",
"name": "通讯录",
"font_class": "icon_fenxiao_grade",
"unicode": "e7d5",
"unicode_decimal": 59349
},
{
"icon_id": "13119208",
"name": "已关注供应商",
"font_class": "yiguanzhugongyingshang",
"unicode": "e7d6",
"unicode_decimal": 59350
},
{
"icon_id": "23974314",
"name": "icon_164",
"font_class": "icon_user_gaikuang",
"unicode": "e834",
"unicode_decimal": 59444
},
{
"icon_id": "6154432",
"name": "微信",
"font_class": "icon_qudao_weixin",
"unicode": "e833",
"unicode_decimal": 59443
},
{
"icon_id": "23974200",
"name": "icon_59",
"font_class": "icon_qudao_app",
"unicode": "e827",
"unicode_decimal": 59431
},
{
"icon_id": "15643755",
"name": "小程序设置",
"font_class": "icon_qudao_xiaochengxu",
"unicode": "e6b4",
"unicode_decimal": 59060
},
{
"icon_id": "23974663",
"name": "icon_511",
"font_class": "icon_dianpu_daohang",
"unicode": "e857",
"unicode_decimal": 59479
},
{
"icon_id": "23974709",
"name": "icon_563",
"font_class": "icon_yingxiao_qipao",
"unicode": "e860",
"unicode_decimal": 59488
},
{
"icon_id": "23974926",
"name": "icon_777",
"font_class": "icon_set_jiaoyi",
"unicode": "e88f",
"unicode_decimal": 59535
},
{
"icon_id": "23974194",
"name": "icon_52",
"font_class": "icon_caiwu_yue",
"unicode": "e82c",
"unicode_decimal": 59436
},
{
"icon_id": "23974189",
"name": "icon_48",
"font_class": "icon_caiwu_tixian",
"unicode": "e828",
"unicode_decimal": 59432
},
{
"icon_id": "23974193",
"name": "icon_41",
"font_class": "icon_caiwu_jifen",
"unicode": "e829",
"unicode_decimal": 59433
},
{
"icon_id": "23974195",
"name": "icon_56",
"font_class": "icon_shuju_liuliang",
"unicode": "e82b",
"unicode_decimal": 59435
},
{
"icon_id": "23974284",
"name": "icon_136",
"font_class": "icon_user_dengji",
"unicode": "e82f",
"unicode_decimal": 59439
},
{
"icon_id": "23974285",
"name": "icon_141",
"font_class": "icon_user_guanli",
"unicode": "e830",
"unicode_decimal": 59440
},
{
"icon_id": "23974287",
"name": "icon_137",
"font_class": "icon_user_biaoqian",
"unicode": "e831",
"unicode_decimal": 59441
},
{
"icon_id": "23974238",
"name": "icon_95",
"font_class": "icon_order_shouhou",
"unicode": "e82a",
"unicode_decimal": 59434
},
{
"icon_id": "23974703",
"name": "icon_551",
"font_class": "icon_copy",
"unicode": "e861",
"unicode_decimal": 59489
},
{
"icon_id": "23974857",
"name": "icon_710",
"font_class": "icon_set_product",
"unicode": "e880",
"unicode_decimal": 59520
},
{
"icon_id": "23974892",
"name": "icon_744",
"font_class": "icon_set_save",
"unicode": "e887",
"unicode_decimal": 59527
},
{
"icon_id": "23974902",
"name": "icon_754",
"font_class": "icon_dianpu_fenlei",
"unicode": "e889",
"unicode_decimal": 59529
},
{
"icon_id": "23974956",
"name": "icon_808",
"font_class": "icon_dianpu_fengge",
"unicode": "e896",
"unicode_decimal": 59542
},
{
"icon_id": "23974958",
"name": "icon_810",
"font_class": "icon_dianpu_sucai",
"unicode": "e897",
"unicode_decimal": 59543
},
{
"icon_id": "23974996",
"name": "icon_850",
"font_class": "icon_dianpu_xiangqing",
"unicode": "e8a1",
"unicode_decimal": 59553
},
{
"icon_id": "23975028",
"name": "icon_880",
"font_class": "icon_order_guanli",
"unicode": "e8a9",
"unicode_decimal": 59561
},
{
"icon_id": "23974187",
"name": "icon_30",
"font_class": "icon_caiwu",
"unicode": "e826",
"unicode_decimal": 59430
},
{
"icon_id": "23974276",
"name": "icon_130",
"font_class": "icon_user",
"unicode": "e82d",
"unicode_decimal": 59437
},
{
"icon_id": "23974282",
"name": "icon_138",
"font_class": "icon_set_user",
"unicode": "e82e",
"unicode_decimal": 59438
},
{
"icon_id": "23974320",
"name": "icon_170",
"font_class": "icon_shuju",
"unicode": "e832",
"unicode_decimal": 59442
},
{
"icon_id": "23974561",
"name": "icon_415",
"font_class": "icon_dianpu_home",
"unicode": "e84c",
"unicode_decimal": 59468
},
{
"icon_id": "23974584",
"name": "icon_436",
"font_class": "icon_yingyongcenter",
"unicode": "e84f",
"unicode_decimal": 59471
},
{
"icon_id": "23974606",
"name": "icon_460",
"font_class": "icon_qudao",
"unicode": "e853",
"unicode_decimal": 59475
},
{
"icon_id": "23974607",
"name": "icon_457",
"font_class": "icon_qudao2",
"unicode": "e854",
"unicode_decimal": 59476
},
{
"icon_id": "23974689",
"name": "icon_542",
"font_class": "icon_set_store",
"unicode": "e85c",
"unicode_decimal": 59484
},
{
"icon_id": "23974694",
"name": "icon_545",
"font_class": "icon_dianpu_weiyem",
"unicode": "e85d",
"unicode_decimal": 59485
},
{
"icon_id": "23974743",
"name": "icon_595",
"font_class": "icon_set_quanxian",
"unicode": "e866",
"unicode_decimal": 59494
},
{
"icon_id": "23974791",
"name": "icon_643",
"font_class": "icon_hide",
"unicode": "e86f",
"unicode_decimal": 59503
},
{
"icon_id": "23974792",
"name": "icon_644",
"font_class": "icon_show",
"unicode": "e870",
"unicode_decimal": 59504
},
{
"icon_id": "23974793",
"name": "icon_645",
"font_class": "icon_wallet",
"unicode": "e871",
"unicode_decimal": 59505
},
{
"icon_id": "23974795",
"name": "icon_646",
"font_class": "icon_set_pay",
"unicode": "e872",
"unicode_decimal": 59506
},
{
"icon_id": "23974814",
"name": "icon_663",
"font_class": "icon_set_weihu",
"unicode": "e875",
"unicode_decimal": 59509
},
{
"icon_id": "23974823",
"name": "icon_673",
"font_class": "icon_set_peisong",
"unicode": "e877",
"unicode_decimal": 59511
},
{
"icon_id": "23974833",
"name": "icon_684",
"font_class": "icon_yingxiaowf",
"unicode": "e879",
"unicode_decimal": 59513
},
{
"icon_id": "23974842",
"name": "icon_695",
"font_class": "icon_dianpu_shoppingCar",
"unicode": "e87e",
"unicode_decimal": 59518
},
{
"icon_id": "24076801",
"name": "menu_goods",
"font_class": "icon_goods",
"unicode": "e657",
"unicode_decimal": 58967
},
{
"icon_id": "24076802",
"name": "menu_sort",
"font_class": "icon_sort",
"unicode": "e658",
"unicode_decimal": 58968
},
{
"icon_id": "24069361",
"name": "menu_danwei",
"font_class": "icon_danwei",
"unicode": "e653",
"unicode_decimal": 58963
},
{
"icon_id": "24069362",
"name": "menu_pingjia",
"font_class": "icon_pingjia",
"unicode": "e654",
"unicode_decimal": 58964
},
{
"icon_id": "24069363",
"name": "menu_pinpai",
"font_class": "icon_pinpai",
"unicode": "e655",
"unicode_decimal": 58965
},
{
"icon_id": "24069364",
"name": "menu_gongyingshang",
"font_class": "icon_gongyingshang",
"unicode": "e656",
"unicode_decimal": 58966
}
]
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32z m-40 656H184V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v584zM688 420h-55.2c-5.1 0-10 2.5-13 6.6L468.9 634.4l-64.7-89c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174c6.4 8.8 19.6 8.8 26 0l212.6-292.7c3.8-5.4 0-12.8-6.5-12.8z" /></svg>

After

Width:  |  Height:  |  Size: 775 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M864.2 121.3a38.1 38.1 0 0 0-13.5 2.4l-33.9 12.4-112.2 41-112.1 41.1-224.3 82-112.2 41-112.1 41.1-55.2 20.2a38.7 38.7 0 0 0-14.1 63.7l28.3 28.2 71.1 71.1 101.9 101.9v232.8c0 23.6 19.3 40.1 40.1 40.1a40.1 40.1 0 0 0 22.7-7.2L458.5 850l99.3 99.4a38.7 38.7 0 0 0 63.7-14.1l20.2-55.2L682.8 768l41-112.2 41-112.1 41-112.2 82.1-224.3 12.4-33.9c9.6-26.3-10.7-52-36.1-52z m-84.9 173.3l-41.1 112.2-41 112.1-41 112.2-41.1 112.1-41 112.2-2.3 6.2-62.4-62.5-42.6-42.5-49.4 34.2-69.5 48.3V637.6L162.4 452.2l6.2-2.3 112.2-41 112.1-41.1 224.3-82 112.2-41.1L808 216zM575.9 405a4 4 0 0 0-5.6 0L394.9 580.4a4 4 0 0 0 0 5.7l39.6 39.6a4.2 4.2 0 0 0 5.7 0l175.3-175.4a4 4 0 0 0 0-5.7z" /></svg>

After

Width:  |  Height:  |  Size: 937 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M824 64H200a40 40 0 0 0-40 40v816a40 40 0 0 0 40 40h624a40 40 0 0 0 40-40V104a40 40 0 0 0-40-40z m-32 824H232V136h560z m-280-72a64 64 0 1 0-64-64 64.1 64.1 0 0 0 64 64z" /></svg>

After

Width:  |  Height:  |  Size: 443 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 967.68c251.668 0 455.68-204.012 455.68-455.68S763.668 56.32 512 56.32 56.32 260.332 56.32 512 260.332 967.68 512 967.68z m0-71.68c-212.07 0-384-171.93-384-384s171.93-384 384-384 384 171.93 384 384-171.93 384-384 384z" /><path d="M544.297 405.279a77.599 77.599 0 1 1 77.599 77.578 30.72 30.72 0 0 0 0 61.44c76.78 0 139.028-62.249 139.028-139.029S698.675 266.24 621.896 266.24s-139.039 62.249-139.039 139.028a30.72 30.72 0 0 0 61.44 0z m-61.44 213.217a77.588 77.588 0 0 1-155.177 0 77.588 77.588 0 0 1 77.588-77.599 30.72 30.72 0 0 0 0-61.44c-76.769 0-139.028 62.239-139.028 139.039 0 76.78 62.249 139.028 139.028 139.028 76.79 0 139.029-62.248 139.029-139.028a30.72 30.72 0 0 0-61.44 0z" /><path d="M482.857 402.156V619.93h61.44V402.156z" /></svg>

After

Width:  |  Height:  |  Size: 1019 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M555.633778 726.300444a45.966222 45.966222 0 0 0 0-64.910222l-363.463111-363.52a45.909333 45.909333 0 0 0-64.910223 0 45.909333 45.909333 0 0 0 0 64.910222l363.52 363.463112a45.966222 45.966222 0 0 0 64.853334 0.056888zM490.723556 726.300444a45.852444 45.852444 0 0 0 64.853333 0l345.088-345.088a45.852444 45.852444 0 0 0 0-64.853333 45.511111 45.511111 0 0 0-64.796445 0l-345.144888 345.088a45.909333 45.909333 0 0 0 0 64.853333z" /></svg>

After

Width:  |  Height:  |  Size: 705 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M555.633778 297.870222a45.966222 45.966222 0 0 1 0 64.910222l-363.463111 363.52a45.909333 45.909333 0 0 1-64.910223 0 45.909333 45.909333 0 0 1 0-64.910222l363.52-363.463111a45.966222 45.966222 0 0 1 64.853334-0.056889zM490.723556 297.870222a45.852444 45.852444 0 0 1 64.853333 0l345.088 345.088a45.852444 45.852444 0 0 1 0 64.853334 45.511111 45.511111 0 0 1-64.796445 0L490.723556 362.723556a45.909333 45.909333 0 0 1 0-64.853334z" /></svg>

After

Width:  |  Height:  |  Size: 707 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M761.2 639.7c-10.6 0-21.1-4-29.2-12.1-16.1-16.1-16.1-42.3 0-58.4l97.5-97.5c5.6-5.6 7.1-13.9 7.3-19.9l8.6-242.5c0.1-3.9-2.8-11.2-9.5-17.9-6.7-6.7-14.7-9.5-17.9-9.5l-242.5 8.6c-6 0.2-14.2 1.7-19.9 7.3l-102 102.1c-16.1 16.1-42.3 16.1-58.4 0s-16.1-42.3 0-58.4l102.1-102.1c19.2-19.2 46-30.4 75.3-31.4l242.5-8.6c27.9-1 56.9 11.2 79.2 33.6 22.4 22.4 34.6 51.2 33.6 79.3l-8.6 242.5c-1.1 29.4-12.2 56.1-31.4 75.3l-97.5 97.5c-8.1 8.1-18.7 12.1-29.2 12.1zM444.4 925.3c-40.6 0-84.7-18.5-120.4-54.3L156.4 703.4C93.9 640.9 84 552.8 133.8 502.9l88.3-88.3c16.1-16.1 42.3-16.1 58.4 0s16.1 42.3 0 58.4l-88.3 88.3c-14.4 14.4-7.8 53.3 22.6 83.7l167.6 167.6c30.4 30.4 69.3 37 83.7 22.6l83.7-83.7c16.1-16.1 42.3-16.1 58.4 0s16.1 42.3 0 58.4l-83.7 83.7c-21.4 21.3-49.8 31.7-80.1 31.7z" /><path d="M705.8 326.3m-45.8 0a45.8 45.8 0 1 0 91.6 0 45.8 45.8 0 1 0-91.6 0Z" /><path d="M829.9 885.7c-10.6 0-21.1-4-29.2-12.1l-642-642c-16.1-16.1-16.1-42.3 0-58.4s42.3-16.1 58.4 0l642 642c16.1 16.1 16.1 42.3 0 58.4-8.1 8.1-18.6 12.1-29.2 12.1z" /></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M884.1 282.4L542.5 85a60 60 0 0 0-60.1 0.1L140.9 283.8a39.9 39.9 0 0 0-16.3 18.2 40.2 40.2 0 0 0-7.6 23.2l-1 366.9a60 60 0 0 0 30 52.1l341.5 197.4a39.8 39.8 0 0 0 20 5.4 29.7 29.7 0 0 0 4.2-0.3 24.8 24.8 0 0 0 3.8 0.2 39.9 39.9 0 0 0 20.1-5.4l341.5-198.7a60.1 60.1 0 0 0 29.9-51.7l1-366.9a40.6 40.6 0 0 0-7.4-23.3 40.5 40.5 0 0 0-16.5-18.5zM476 737.6l-0.3 114L188 685.4l0.9-304.7 212 122.5 75.6 43.7z m36.5-253L226.7 319.4l-1.9-1.1 287.7-167.4 287.8 166.3-44.1 25.6zM835 684.1L547.7 851.2l0.2-97.6 0.6-206.7 250.4-145.6 36.9-21.5z" /></svg>

After

Width:  |  Height:  |  Size: 805 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M531.626667 915.228444a66.616889 66.616889 0 0 1-51.598223-24.462222L120.092444 484.181333a66.503111 66.503111 0 0 1-4.835555-74.296889l130.844444-269.027555a66.673778 66.673778 0 0 1 56.888889-32.142222h456.362667a66.787556 66.787556 0 0 1 57.173333 32.312889l1.308445 2.503111 130.844444 266.524444a66.673778 66.673778 0 0 1-5.688889 74.296889l-1.194666 1.479111-358.741334 404.935111a66.787556 66.787556 0 0 1-51.655111 24.462222z m-359.253334-472.177777l359.253334 405.731555 1.194666-1.479111 358.115556-404.252444-1.365333-2.503111-129.877334-264.988445H303.616z" /><path d="M531.626667 668.16a53.930667 53.930667 0 0 1-41.472-20.195556L270.165333 400.156444l49.948445-44.316444 211.512889 238.933333 211.740444-238.933333 49.948445 44.316444-220.216889 247.808a53.930667 53.930667 0 0 1-41.472 20.195556z" /></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M928 224H768v-56c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v56H548v-56c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v56H328v-56c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v56H96c-17.7 0-32 14.3-32 32v576c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32z m-40 568H136V296h120v56c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-56h148v56c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-56h148v56c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-56h120v496z" /><path d="M416 496H232c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM416 632H232c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM724.2 454.6L620.6 598.3l-52.8-73.1c-3-4.2-7.8-6.6-12.9-6.6H500c-6.5 0-10.3 7.4-6.5 12.7l114.1 158.2c6.4 8.8 19.4 8.8 25.8 0l165-228.7c3.8-5.3 0-12.7-6.5-12.7H737c-5-0.1-9.8 2.4-12.8 6.5z" /></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M725.546667 597.333333c26.24 0 50.496 14.08 63.509333 36.864l43.541333 76.181334a73.152 73.152 0 0 1 0 72.576l-43.52 76.181333A73.152 73.152 0 0 1 725.546667 896h-85.76c-26.24 0-50.496-14.08-63.509334-36.864l-43.541333-76.181333a73.152 73.152 0 0 1 0-72.576l43.52-76.181334A73.152 73.152 0 0 1 639.786667 597.333333h85.76zM523.093333 169.002667l235.690667 138.474666a64 64 0 0 1 0 110.378667l-33.194667 19.477333 33.194667 19.477334a64 64 0 0 1 7.466667 105.258666 115.2 115.2 0 0 0-34.666667-7.253333L725.546667 554.666667h-71.808l72.618666-42.666667-63.936-37.568-139.328 81.898667a64 64 0 0 1-64.853333 0l-139.370667-81.92L254.976 512 490.666667 650.474667l40.896-24.064-35.861334 62.805333c-4.565333 7.978667-8.106667 16.362667-10.624 24.981333a63.552 63.552 0 0 1-26.837333-8.533333l-139.370667-81.92L254.976 661.333333 490.666667 799.808l2.069333-1.194667 1.429333 2.773334 1.536 2.730666 28.629334 50.133334-1.237334 0.746666a64 64 0 0 1-64.853333 0l-235.690667-138.474666a64 64 0 0 1 0-110.378667l33.152-19.498667-33.152-19.456a64 64 0 0 1 0-110.378666l33.152-19.477334-33.152-19.477333a64 64 0 0 1 0-110.378667l235.690667-138.453333a64 64 0 0 1 64.853333 0zM725.546667 661.333333h-85.76a9.152 9.152 0 0 0-7.936 4.608l-43.541334 76.181334a9.152 9.152 0 0 0 0 9.088l43.52 76.181333a9.152 9.152 0 0 0 7.957334 4.608h85.76a9.152 9.152 0 0 0 7.936-4.608l43.541333-76.181333 0.768-1.770667a9.152 9.152 0 0 0-0.768-7.317333l-43.52-76.181334A9.152 9.152 0 0 0 725.546667 661.333333zM682.666667 704a42.666667 42.666667 0 1 1 0 85.333333 42.666667 42.666667 0 0 1 0-85.333333z m-192-479.808L254.976 362.666667 490.666667 501.141333 726.357333 362.666667 490.666667 224.192z" /></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M168.106667 621.44l120.746666 57.962667 223.274667 108.138666 215.317333-104.32 128.768-61.674666a64 64 0 0 1-29.952 84.970666l-286.229333 138.624a64 64 0 0 1-55.808 0L197.994667 706.517333A64 64 0 0 1 168.106667 621.44z m687.829333-133.930667a64 64 0 0 1-29.674667 85.546667L540.010667 711.68a64 64 0 0 1-55.808 0L197.994667 573.056A64 64 0 0 1 166.826667 490.88l317.013333 149.525333 28.288 13.696 286.229333-138.624-0.149333-0.064 57.728-27.882666zM540.032 185.792l286.208 138.602667a64 64 0 0 1 0 115.2l-286.208 138.624a64 64 0 0 1-55.808 0L197.994667 439.594667a64 64 0 0 1 0-115.2L484.224 185.813333a64 64 0 0 1 55.808 0z m-27.904 57.6l-286.229333 138.602667 286.229333 138.624 286.229333-138.624-286.229333-138.602667z" /></svg>

After

Width:  |  Height:  |  Size: 1000 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M832 341.333333v554.666667H405.333333v-64h362.666667V341.333333h64z m-106.666667-106.666666v554.666666H298.666667v-64h362.666666V234.666667h64z m-106.666666-106.666667v554.666667H192V128h426.666667z m-64 64H256v426.666667h298.666667V192z" /></svg>

After

Width:  |  Height:  |  Size: 512 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M199.5 832a127.8 127.8 0 0 0 37.8-5.7 384 384 0 0 0 539.7 9.6 128 128 0 0 0 138-209.4 129.7 129.7 0 0 0-22.3-17.9A382.9 382.9 0 0 0 896 558c0-166.1-105.5-307.6-253.2-361.1a128 128 0 0 0-254.3-2.6C237 245.7 128 389.1 128 558c0 13 0.7 25.9 1.9 38.5a134.1 134.1 0 0 0-20.9 17A128 128 0 0 0 199.5 832z m-39.6-88.4a56.1 56.1 0 0 1 0-79.2 56 56 0 0 1 79.2 0 56.1 56.1 0 0 1 0 79.2 56 56 0 0 1-79.2 0z m3.6-162.5z m4.1-1.1z m4.7-1.1z m4.1-0.8z m4.9-0.8z m4.1-0.5z m5-0.5z m4-0.2z m57.2 244.8a0.1 0.1 0 0 1-0.1 0.1 0.1 0.1 0 0 0 0.1-0.1z m3.5-1.6l-0.3 0.2z m34.9-24.8a23.9 23.9 0 0 0 2.2-2.3 23.9 23.9 0 0 1-2.2 2.3z m-31.6 23.2z m6.7-3.7l0.3-0.3z m3-1.9l0.7-0.5z m3.2-2.1l0.7-0.5z m3.3-2.4l0.4-0.2z m3.4-2.5l0.4-0.3z m2.8-2.2l0.9-0.8z m2.8-2.4l1-0.9z m2.9-2.6a6 6 0 0 0 0.8-0.8 6 6 0 0 1-0.8 0.8z m476.1 31.2zM734 807.5l0.3 0.3z m2.4 2.3a4.6 4.6 0 0 0 0.7 0.7 4.6 4.6 0 0 1-0.7-0.7z m2.4 2.3l0.8 0.7z m2.5 2.2l0.7 0.6z m2.5 2.1l0.6 0.5z m2.6 2l0.5 0.4z m2.6 2l0.4 0.3z m2.7 1.9l0.3 0.2z m2.6 1.8l0.3 0.2z m2.8 1.7c0 0.1 0.1 0.1 0.2 0.1s-0.2 0-0.2-0.1z m2.7 1.7c0.1 0 0.1 0 0.1 0.1s0-0.1-0.1-0.1z m104.3-70.9a56 56 0 1 1 16.4-39.6 55.5 55.5 0 0 1-16.4 39.6z m3.8-160l0.7 0.2z m8.5 3.4l0.5 0.2z m12.2 6.2z m-8-4.3a0.1 0.1 0 0 1 0.1 0.1 0.1 0.1 0 0 0-0.1-0.1z m4.1 2.1zM475.9 170.4a56 56 0 1 1 0 79.2 56.1 56.1 0 0 1 0-79.2z m-88.4 37.5z m0.5-9.2z m-0.3 4.8zM200 558a312.5 312.5 0 0 1 190.6-287.5l10-4a128.1 128.1 0 0 0 228.6 2.3l4.2 1.7A311.7 311.7 0 0 1 824 558c0 10.4-0.5 20.8-1.5 31h2a128 128 0 0 0-104.7 201.7 311.6 311.6 0 0 1-421.5-5.4c41.5-50.3 38.8-124.9-8.3-171.9a127.5 127.5 0 0 0-90.5-37.4h1c-0.3-6-0.5-12-0.5-18z m187.5-345.3z m0.2 4.4z m0.4 4.8z m0.4 4.4a1.3 1.3 0 0 1 0.1 0.6 1.3 1.3 0 0 0-0.1-0.6z m0.7 4.8z m0.8 4.3c0.1 0.2 0.1 0.4 0.2 0.6s-0.1-0.4-0.2-0.6z m1.1 4.7z m1.1 4.3a1.4 1.4 0 0 0 0.2 0.6 1.4 1.4 0 0 1-0.2-0.6z m1.4 4.7z m1.4 4.1a2.5 2.5 0 0 1 0.2 0.7 2.5 2.5 0 0 0-0.2-0.7z m1.8 4.7z m1.7 4l0.3 0.7zM860 594l-0.7-0.2z m-4.4-1.2z m-4.3-1z m-4.2-0.8z m-4.6-0.7z m-4.1-0.5z m-4.9-0.5z m-4-0.2z m-99 214.7l-0.6-0.5z m-3.8-4.3c-0.2-0.1-0.3-0.3-0.4-0.4s0.2 0.3 0.4 0.4z m-432.8-9.1l0.4-0.4zM150.6 585.7z m8.7-3.2z m-4.5 1.5z" /></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M289.5 613.5a128 128 0 1 0 0 181 127.5 127.5 0 0 0 0-181z m-50.9 130.1a56 56 0 0 1-79.2 0 56.1 56.1 0 0 1 0-79.2 56 56 0 0 1 79.2 0 56.1 56.1 0 0 1 0 79.2zM515 338a128 128 0 1 0-90.5-37.5A127.5 127.5 0 0 0 515 338z m-39.6-167.6a56 56 0 0 1 79.2 0 56.1 56.1 0 0 1 0 79.2 56 56 0 0 1-79.2 0 56.1 56.1 0 0 1 0-79.2z m439.1 456.1a128 128 0 1 0 0 181 127.5 127.5 0 0 0 0-181z m-50.9 130.1a56 56 0 0 1-79.2 0 56.1 56.1 0 0 1 0-79.2 56 56 0 0 1 79.2 0 56.1 56.1 0 0 1 0 79.2zM136.2 514.2a201.1 201.1 0 0 1 63.3-10.2h1.8a4 4 0 0 0 3.9-3.3 311.5 311.5 0 0 1 86.2-163.3 314.5 314.5 0 0 1 42.1-35.4 3.9 3.9 0 0 0 1.3-5 200.9 200.9 0 0 1-18.3-62.9 4.1 4.1 0 0 0-6.1-3c-96.6 59.7-164.7 161-179.4 278.8a3.9 3.9 0 0 0 5.2 4.3z m573.4 366.5a198.2 198.2 0 0 1-26.5-22.3 208.3 208.3 0 0 1-20.1-23.3 3.8 3.8 0 0 0-5.1-1.2c-8 4.2-16.1 8.1-24.5 11.6a313 313 0 0 1-242.8 0 287.6 287.6 0 0 1-31.5-15.5 4.1 4.1 0 0 0-5.1 1 177.3 177.3 0 0 1-13.1 14.4 195.7 195.7 0 0 1-36.5 28.9 4 4 0 0 0 0 6.8 384.5 384.5 0 0 0 405 6.4 4.1 4.1 0 0 0 0.2-6.8z m-14.3-575.2a314 314 0 0 1 104.2 131.1 306.2 306.2 0 0 1 21.4 77.3 3.7 3.7 0 0 0 3.6 3.1 199.7 199.7 0 0 1 65.3 10.9 3.6 3.6 0 0 0 4.7-3.7c-10.6-121.5-77.7-226.7-174.9-289.3a3.6 3.6 0 0 0-5.5 2.6 200.7 200.7 0 0 1-19.8 63.4 3.6 3.6 0 0 0 1 4.6z" /></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M245.333333 245.333333V768H810.666667v64H277.333333a96 96 0 0 1-96-96v-490.666667h64z m581.141334-42.666666V426.666667h-64v-111.082667l-194.688 199.701333-61.653334-63.872-141.781333 146.816-46.037333-44.458666 187.797333-194.517334 61.909333 64.128 152.746667-156.714666h-102.464v-64h208.170667z" /></svg>

After

Width:  |  Height:  |  Size: 571 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M256 234.666667v544.021333h74.730667l-0.021334-0.021333H842.666667v64h-554.666667a96 96 0 0 1-95.893333-91.477334L192 746.666667V234.666667h64z m489.6-74.624l158.378667 158.4-45.248 45.248-80.064-80.064v0.341333c0 200.448-165.482667 362.965333-370.56 366.634667l-7.082667 0.064H320v-64h81.024c173.44 0 313.642667-135.765333 313.642667-302.72v-2.496L640 356.16l-45.248-45.269333 150.826667-150.826667z" /></svg>

After

Width:  |  Height:  |  Size: 675 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M892 824H200V132a4 4 0 0 0-4-4h-64a4 4 0 0 0-4 4v760a4 4 0 0 0 4 4h760a4 4 0 0 0 4-4v-64a4 4 0 0 0-4-4z m-616-72h64a4 4 0 0 0 4-4V636a4 4 0 0 0-4-4h-64a4 4 0 0 0-4 4v112a4 4 0 0 0 4 4z m160-240a4 4 0 0 0-4 4v232a4 4 0 0 0 4 4h64a4 4 0 0 0 4-4V516a4 4 0 0 0-4-4z m160 80a4 4 0 0 0-4 4v152a4 4 0 0 0 4 4h64a4 4 0 0 0 4-4V596a4 4 0 0 0-4-4z m160-160a4 4 0 0 0-4 4v312a4 4 0 0 0 4 4h64a4 4 0 0 0 4-4V436a4 4 0 0 0-4-4z m-427.4 52a4 4 0 0 0 5.6-0.2l135.5-146.5 130.5 121.6a40.1 40.1 0 0 0 57-2.5l139.2-153.9 37.1 28.3a4.2 4.2 0 0 0 6.8-2.9l16.3-156.6a4.2 4.2 0 0 0-5.7-4.4l-146.7 57.2a4.2 4.2 0 0 0-1 7.3l42.1 32.1L626 395.4 495.7 274.1a39.9 39.9 0 0 0-56.6 2.1L287.2 440.3a4.1 4.1 0 0 0 0.2 5.7z" /></svg>

After

Width:  |  Height:  |  Size: 966 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M309.8 595.7a4.1 4.1 0 0 0 5.7-0.3l86.9-96.9a4 4 0 0 1 5.8-0.2L520.4 611a16.2 16.2 0 0 0 22.7 0l221.7-222.6a3.9 3.9 0 0 0 0-5.6l-39.6-39.6a4.2 4.2 0 0 0-5.7 0L534.6 528.8a4 4 0 0 1-5.7 0L405.8 405.2a4.1 4.1 0 0 0-5.9 0.1L267.8 552.7a4 4 0 0 0 0.4 5.6zM732 688H292a4 4 0 0 0-4 4v56a4 4 0 0 0 4 4h440a4 4 0 0 0 4-4v-56a4 4 0 0 0-4-4z m124-560H168a40 40 0 0 0-40 40v688a40 40 0 0 0 40 40h688a40 40 0 0 0 40-40V168a40 40 0 0 0-40-40z m-32 696H200V200h624z" /></svg>

After

Width:  |  Height:  |  Size: 726 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M469.333333 151.808v64.554667c-144.746667 20.693333-256 145.173333-256 295.637333 0 164.949333 133.717333 298.666667 298.666667 298.666667 150.464 0 274.944-111.253333 295.637333-256h64.554667c-21.12 180.181333-174.336 320-360.192 320-200.298667 0-362.666667-162.368-362.666667-362.666667 0-185.856 139.818667-339.072 320-360.192zM512 149.333333c197.973333 0 358.933333 158.656 362.602667 355.776L874.666667 512H512V149.333333z m64 70.869334V448h227.797333a299.093333 299.093333 0 0 0-220.885333-226.197333L576 220.202667z" /></svg>

After

Width:  |  Height:  |  Size: 797 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M853.333333 714.666667v64H170.666667v-64h682.666666zM320 405.333333v213.333334l-149.333333-106.666667 149.333333-106.666667z m533.333333 85.333334v64H405.333333v-64h448z m0-234.666667v64H170.666667v-64h682.666666z" /></svg>

After

Width:  |  Height:  |  Size: 488 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M490.261333 173.44a49.066667 49.066667 0 0 1 64.064 19.178667l1.664 3.093333 87.850667 177.813333 196.352 28.501334a49.066667 49.066667 0 0 1 29.717333 81.066666l-2.538666 2.645334L725.333333 624l33.536 195.349333a49.066667 49.066667 0 0 1-68.010666 53.269334l-3.157334-1.514667L512 778.858667l-175.701333 92.266666a49.066667 49.066667 0 0 1-71.637334-48.426666l0.469334-3.328L298.666667 624.021333 156.629333 485.76a49.066667 49.066667 0 0 1 23.893334-83.114667l3.285333-0.597333 196.352-28.501333 87.850667-177.813334a49.066667 49.066667 0 0 1 22.250666-22.272z" /></svg>

After

Width:  |  Height:  |  Size: 838 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M490.261333 173.44a49.066667 49.066667 0 0 1 64.064 19.178667l1.664 3.093333 87.850667 177.813333 196.352 28.501334a49.066667 49.066667 0 0 1 29.717333 81.066666l-2.538666 2.645334L725.333333 624l33.536 195.349333a49.066667 49.066667 0 0 1-68.010666 53.269334l-3.157334-1.514667L512 778.858667l-175.701333 92.266666a49.066667 49.066667 0 0 1-71.637334-48.426666l0.469334-3.328L298.666667 624.021333 156.629333 485.76a49.066667 49.066667 0 0 1 23.893334-83.114667l3.285333-0.597333 196.352-28.501333 87.850667-177.813334a49.066667 49.066667 0 0 1 22.250666-22.272z m-67.626666 258.581333l-199.658667 28.992 144.469333 140.650667-34.133333 198.741333L512 706.56l178.688 93.845333-34.133333-198.741333 144.469333-140.650667-199.658667-28.992L512 251.157333l-89.386667 180.864z" /></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M810.667 213.333a64 64 0 0 1 64 64V704a64 64 0 0 1-64 64H478.336l-146.645 96.107a21.333 21.333 0 0 1-33.024-17.856V768h-85.334a64 64 0 0 1-64-64V277.333a64 64 0 0 1 64-64h597.334z m0 64H213.333V704h149.334v63.296L459.243 704h351.424V277.333z m-271.36 213.334v64h-176.64v-64h176.64z m122.026-128v64H362.667v-64h298.666z" /></svg>

After

Width:  |  Height:  |  Size: 593 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M832 312H696v-16c0-101.6-82.4-184-184-184s-184 82.4-184 184v16H192c-17.7 0-32 14.3-32 32v536c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V344c0-17.7-14.3-32-32-32z m-432-16c0-61.9 50.1-112 112-112s112 50.1 112 112v16H400v-16z m392 544H232V384h96v88c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-88h224v88c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-88h96v456z" /></svg>

After

Width:  |  Height:  |  Size: 617 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M298.666667 277.333333v64h-25.898667L239.573333 789.333333h544.853334l-33.194667-448h-25.92v-64h25.92a64 64 0 0 1 63.829333 59.264l33.173334 448A64 64 0 0 1 784.426667 853.333333H239.573333a64 64 0 0 1-63.808-68.736l33.173334-448A64 64 0 0 1 272.768 277.333333h25.877333z m331.477333 234.666667l60.309333 21.418667C627.157333 711.594667 388.309333 711.594667 341.333333 530.773333l61.952-16.085333c30.613333 117.845333 184.064 117.845333 226.858667-2.666667z m-117.333333-373.333333a170.624 170.624 0 0 1 170.624 170.624v86.464h-64V341.333333h-213.269334l0.021334 54.4h-64v-86.442666A170.624 170.624 0 0 1 512.810667 138.666667z m0 64a106.666667 106.666667 0 0 0-101.76 74.666666h203.52a106.666667 106.666667 0 0 0-101.76-74.666666z" /></svg>

After

Width:  |  Height:  |  Size: 1007 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M851 384H704v-96c0-105.6-86.4-192-192-192s-192 86.4-192 192v96H173a40 40 0 0 0-39.7 44.7l54.5 464a40.1 40.1 0 0 0 39.8 35.3h568.8a40.1 40.1 0 0 0 39.8-35.3l54.5-464A40 40 0 0 0 851 384z m-459-96a120 120 0 0 1 240 0v96H392z m376 568H256l-47-400h111v60.5a58 58 0 1 0 72 0V456h240v60.5a58 58 0 1 0 72 0V456h111z" /></svg>

After

Width:  |  Height:  |  Size: 583 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M796.444444 910.222222H227.555556a113.777778 113.777778 0 0 1-113.777778-113.777778V227.555556a113.777778 113.777778 0 0 1 113.777778-113.777778h568.888888a113.777778 113.777778 0 0 1 113.777778 113.777778v568.888888a113.777778 113.777778 0 0 1-113.777778 113.777778zM227.555556 182.044444a45.511111 45.511111 0 0 0-45.511112 45.511112v568.888888a45.511111 45.511111 0 0 0 45.511112 45.511112h568.888888a45.511111 45.511111 0 0 0 45.511112-45.511112V227.555556a45.511111 45.511111 0 0 0-45.511112-45.511112z" /><path d="M671.288889 270.222222a159.288889 159.288889 0 0 1-318.577778 0H284.444444a230.343111 230.343111 0 0 0 227.555556 227.555556c1.365333 0 2.616889-0.398222 3.925333-0.398222A230.001778 230.001778 0 0 0 739.555556 270.222222z" /></svg>

After

Width:  |  Height:  |  Size: 1019 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M625.777778 977.976889H227.555556a113.777778 113.777778 0 0 1-113.777778-113.777778V344.291556a113.777778 113.777778 0 0 1 113.777778-113.777778h398.222222a113.777778 113.777778 0 0 1 113.777778 113.777778v519.907555a113.777778 113.777778 0 0 1-113.777778 113.777778zM227.555556 298.894222a45.511111 45.511111 0 0 0-45.511112 45.511111v519.907556a45.511111 45.511111 0 0 0 45.511112 45.511111h398.222222a45.511111 45.511111 0 0 0 45.511111-45.511111V344.405333a45.511111 45.511111 0 0 0-45.511111-45.511111zM796.444444 56.888889H398.222222a113.777778 113.777778 0 0 0-113.436444 110.250667c0 1.194667-0.341333 2.275556-0.341334 3.470222v92.615111h68.266667V170.609778a45.511111 45.511111 0 0 1 45.511111-45.511111h398.222222a45.511111 45.511111 0 0 1 45.511112 45.511111v519.907555a45.511111 45.511111 0 0 1-45.511112 45.511111h-92.558222v68.266667H796.444444a113.777778 113.777778 0 0 0 112.867556-104.504889c0-3.072 0.910222-6.087111 0.910222-9.216V170.723556c0-1.194667-0.341333-2.275556-0.341333-3.470223A113.777778 113.777778 0 0 0 796.444444 56.888889z" /></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M148.010667 605.290667c50.069333 0 90.666667-40.874667 90.666666-91.285334 0-49.962667-39.893333-90.538667-89.344-91.264V277.333333a64 64 0 0 1 64-64h597.333334a64 64 0 0 1 64 64l-0.021334 145.450667-3.050666 0.064c-48.021333 2.304-86.272 42.24-86.272 91.157333 0 49.962667 39.872 90.56 89.322666 91.285334V746.666667a64 64 0 0 1-64 64H213.333333a64 64 0 0 1-64-64v-141.397334l-1.322666 0.021334zM213.333333 654.784V746.666667h597.333334v-91.861334a155.370667 155.370667 0 0 1-89.344-140.8A154.837333 154.837333 0 0 1 810.666667 373.568V277.333333H213.333333v95.893334a155.370667 155.370667 0 0 1 89.322667 140.8 155.370667 155.370667 0 0 1-84.266667 138.282666l-5.056 2.496zM384 597.333333h68.010667v85.333334H384v-85.333334z m0-128h68.010667v85.333334H384v-85.333334z m0-128h68.010667v85.333334H384v-85.333334z" /></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M889.287111 219.420444h-178.005333V154.737778a97.28 97.28 0 0 0-96.995556-96.711111h-193.991111a97.28 97.28 0 0 0-96.995555 96.711111v64.682666H145.464889a32.312889 32.312889 0 0 0-32.312889 32.312889 32.312889 32.312889 0 0 0 32.312889 32.369778h48.469333v517.290667a129.706667 129.706667 0 0 0 129.308445 129.308444h387.982222a129.706667 129.706667 0 0 0 129.308444-129.308444V284.103111h48.469334a32.369778 32.369778 0 0 0 32.369777-32.369778 32.312889 32.312889 0 0 0-32.369777-32.312889zM388.152889 154.737778a32.426667 32.426667 0 0 1 32.312889-32.312889h193.991111a32.426667 32.426667 0 0 1 32.312889 32.312889v64.682666H388.152889z m387.982222 646.599111a64.853333 64.853333 0 0 1-64.682667 64.682667h-387.982222a64.910222 64.910222 0 0 1-64.682666-64.682667V284.046222h517.290666zM420.750222 413.411556a32.426667 32.426667 0 0 0-32.312889 32.312888v258.616889a32.312889 32.312889 0 0 0 32.369778 32.312889 32.312889 32.312889 0 0 0 32.312889-32.312889V445.724444a32.426667 32.426667 0 0 0-32.312889-32.312888z m193.991111 0a32.426667 32.426667 0 0 0-32.312889 32.312888v258.616889a32.312889 32.312889 0 0 0 32.369778 32.312889 32.312889 32.312889 0 0 0 32.312889-32.312889V445.724444a32.426667 32.426667 0 0 0-32.312889-32.312888z" /></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M744 251.1a40.1 40.1 0 0 0-31.3-15.1H640v-68a40 40 0 0 0-40-40H104a40 40 0 0 0-40 40v560a40 40 0 0 0 40 40h88a128 128 0 0 0 256 0h188a128 128 0 0 0 256 0h28a40 40 0 0 0 40-40V536.5a39.9 39.9 0 0 0-8.7-24.9zM697.3 308l95.5 120H640V308zM320 824a56 56 0 1 1 56-56 56 56 0 0 1-56 56z m248-128H425.8a127.9 127.9 0 0 0-211.6 0H136V200h432v496z m-120.1 67.6z m-0.3-5.5z m-0.4-4.4c0-0.3-0.1-0.6-0.1-1s0.1 0.7 0.1 1z m-0.7-5.3z m-0.7-4.3a2.9 2.9 0 0 1-0.2-0.9 2.9 2.9 0 0 0 0.2 0.9z m-1.1-5.2a0.1 0.1 0 0 0-0.1-0.1 0.1 0.1 0 0 1 0.1 0.1z m-1.1-4.2c-0.1-0.3-0.1-0.5-0.2-0.8s0.1 0.5 0.2 0.8z m-1.4-5a0.1 0.1 0 0 0-0.1-0.1 0.1 0.1 0 0 1 0.1 0.1z m-1.4-4.1a2.5 2.5 0 0 1-0.2-0.7 2.5 2.5 0 0 0 0.2 0.7z m-1.8-4.8z m-1.7-4.1l-0.2-0.5z m-4.1-8.5c-0.1-0.1-0.1-0.3-0.2-0.4s0.1 0.3 0.2 0.4z m-4.7-8.1l-0.2-0.3z m-236.4 63.5z m0.3-5.5z m0.4-4.4c0-0.3 0.1-0.6 0.1-1s-0.1 0.7-0.1 1z m0.7-5.3z m0.7-4.3a2.9 2.9 0 0 0 0.2-0.9 2.9 2.9 0 0 1-0.2 0.9z m1.1-5.2a0.1 0.1 0 0 1 0.1-0.1 0.1 0.1 0 0 0-0.1 0.1z m1.1-4.2c0.1-0.3 0.1-0.5 0.2-0.8s-0.1 0.5-0.2 0.8z m1.4-5a0.1 0.1 0 0 1 0.1-0.1 0.1 0.1 0 0 0-0.1 0.1z m1.4-4.1a2.5 2.5 0 0 0 0.2-0.7 2.5 2.5 0 0 1-0.2 0.7z m1.8-4.8z m1.7-4.1l0.2-0.5z m4.1-8.5c0.1-0.1 0.1-0.3 0.2-0.4s-0.1 0.3-0.2 0.4z m4.7-8.1l0.2-0.3zM764 824a56 56 0 1 1 56-56 56 56 0 0 1-56 56z m0-184a127.7 127.7 0 0 0-105.8 56H640V492h203.7l44.3 55.7V696h-18.2A127.7 127.7 0 0 0 764 640z m-123.6 94.7c0.1-0.3 0.1-0.5 0.2-0.8s-0.1 0.5-0.2 0.8z m1.4-5a0.1 0.1 0 0 1 0.1-0.1 0.1 0.1 0 0 0-0.1 0.1z m1.4-4.1a2.5 2.5 0 0 0 0.2-0.7 2.5 2.5 0 0 1-0.2 0.7z m1.8-4.8z m1.7-4.1l0.2-0.5z m4.1-8.5c0.1-0.1 0.1-0.3 0.2-0.4s-0.1 0.3-0.2 0.4z m4.7-8.1l0.2-0.3z m232.1 34.6c-0.1-0.3-0.1-0.5-0.2-0.8s0.1 0.5 0.2 0.8z m-1.4-5a0.1 0.1 0 0 0-0.1-0.1 0.1 0.1 0 0 1 0.1 0.1z m-1.4-4.1a2.5 2.5 0 0 1-0.2-0.7 2.5 2.5 0 0 0 0.2 0.7z m-1.8-4.8z m-1.7-4.1l-0.2-0.5z m-4.1-8.5c-0.1-0.1-0.1-0.3-0.2-0.4s0.1 0.3 0.2 0.4z m-4.7-8.1l-0.2-0.3z m19.4 62.4z m-3.3-23.7a0.1 0.1 0 0 1 0.1 0.1 0.1 0.1 0 0 0-0.1-0.1z m1 4.4a2.9 2.9 0 0 0 0.2 0.9 2.9 2.9 0 0 1-0.2-0.9z m0.9 5.1z m0.6 4.4c0 0.4 0.1 0.7 0.1 1s-0.1-0.6-0.1-1z m0.5 5.3z" /></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M468 552H300a4 4 0 0 0-4 4v56a4 4 0 0 0 4 4h168a4 4 0 0 0 4-4v-56a4 4 0 0 0-4-4z m128-136H300a4 4 0 0 0-4 4v56a4 4 0 0 0 4 4h296a4 4 0 0 0 4-4v-56a4 4 0 0 0-4-4z m212 160h-40V104a40 40 0 0 0-40-40H184A120 120 0 0 0 64 184v72a40 40 0 0 0 40 40h24v560a40 40 0 0 0 40 40h720a40 40 0 0 0 40-40V696a120 120 0 0 0-120-120zM136 224v-40a48 48 0 0 1 48-48h352v88z m560 600H200V296h368a40 40 0 0 0 40-40V136h88z m160 0h-88V648h40a48 48 0 0 1 48 48z" /></svg>

After

Width:  |  Height:  |  Size: 713 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M746.666667 149.333333a64 64 0 0 1 64 64v181.333334a64 64 0 0 1 64 64v49.664l-64 58.496v-87.573334l-239.104 197.376a95.978667 95.978667 0 0 1-117.632 3.050667l-3.84-2.986667-236.757334-192V800h372.330667l62.805333 64H213.333333a64 64 0 0 1-64-64v-341.333333a64 64 0 0 1 64-64V213.333333a64 64 0 0 1 64-64h469.333334z m126.869333 467.861334l44.928 45.610666-174.08 171.456-105.536-104.106666 44.970667-45.568 60.586666 59.818666 129.130667-127.210666zM746.666667 213.333333H277.333333v240.853334l213.184 172.906666a32 32 0 0 0 37.845334 1.984l2.56-1.92L746.666667 449.109333V213.333333z m-149.333334 192v64H362.666667v-64h234.666666z m64-128v64H362.666667v-64h298.666666z" /></svg>

After

Width:  |  Height:  |  Size: 945 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M285.8 406.9l137.3 83.7a7.7 7.7 0 0 0 11.8-6.6v-51.7h175a68.1 68.1 0 0 1 67.9 64.1 4.1 4.1 0 0 0 4 3.9h56.1a4.1 4.1 0 0 0 4-4.2c-2.2-70.8-60.6-127.8-132-127.8h-175v-51.8a7.7 7.7 0 0 0-11.8-6.6l-137.3 83.7a7.8 7.8 0 0 0 0 13.3z m452.4 210.2l-137.3-83.7a7.7 7.7 0 0 0-11.8 6.6v51.7h-175a68.1 68.1 0 0 1-67.9-64.1 4.1 4.1 0 0 0-4-3.9h-56.1a4.1 4.1 0 0 0-4 4.2c2.2 70.8 60.6 127.8 132 127.8h175v51.8a7.7 7.7 0 0 0 11.8 6.6l137.3-83.7a7.8 7.8 0 0 0 0-13.3zM856 128H168a40 40 0 0 0-40 40v688a40 40 0 0 0 40 40h688a40 40 0 0 0 40-40V168a40 40 0 0 0-40-40z m-32 696H200V200h624z" /></svg>

After

Width:  |  Height:  |  Size: 845 B

View File

@@ -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" width="64px" height="64.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M945 412H689c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h256c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM811 548H689c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h122c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM477.3 322.5H434c-6.2 0-11.2 5-11.2 11.2v248c0 3.6 1.7 6.9 4.6 9l148.9 108.6c5 3.6 12 2.6 15.6-2.4l25.7-35.1v-0.1c3.6-5 2.5-12-2.5-15.6l-126.7-91.6V333.7c0.1-6.2-5-11.2-11.1-11.2zM804.8 673.9H747c-5.6 0-10.9 2.9-13.9 7.7-12.7 20.1-27.5 38.7-44.5 55.7-29.3 29.3-63.4 52.3-101.3 68.3-39.3 16.6-81 25-124 25-43.1 0-84.8-8.4-124-25-37.9-16-72-39-101.3-68.3s-52.3-63.4-68.3-101.3c-16.6-39.2-25-80.9-25-124 0-43.1 8.4-84.7 25-124 16-37.9 39-72 68.3-101.3 29.3-29.3 63.4-52.3 101.3-68.3 39.2-16.6 81-25 124-25 43.1 0 84.8 8.4 124 25 37.9 16 72 39 101.3 68.3 17 17 31.8 35.6 44.5 55.7 3 4.8 8.3 7.7 13.9 7.7h57.8c6.9 0 11.3-7.2 8.2-13.3-65.2-129.7-197.4-214-345-215.7-216.1-2.7-395.6 174.2-396 390.1C71.6 727.5 246.9 903 463.2 903c149.5 0 283.9-84.6 349.8-215.8 3.1-6.1-1.4-13.3-8.2-13.3z" /></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

Some files were not shown because too many files have changed in this diff Show More