1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

后端添加域名访问首页入口单页;前端打包塞入Gateway中

This commit is contained in:
2023-04-22 17:18:24 +08:00
parent d4edba9212
commit f5bc5b9eef
52 changed files with 451 additions and 157 deletions

View File

@@ -0,0 +1,3 @@
编辑后右键 Compile And Reload File 修改即可生效,不用频繁重启项目
manage 文件夹下为 frontend 项目打包产物

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

View File

@@ -0,0 +1,89 @@
* {
margin: 0;
padding: 0;
}
html,
body {
height: 100%;
}
.container {
width: 100%;
height: 100%;
background-color: #0556c6;
display: grid;
grid-template-columns: 3fr 4fr;
grid-template-rows: 60px 1fr;
place-items: center;
color: white;
}
.top-container {
grid-column-start: 1;
grid-column-end: 3;
}
.top-container,
.left-container {
text-shadow: 2px 2px 2px #00000066;
}
h1 {
margin-bottom: 30px;
font-size: 4vw;
}
h3 {
margin-bottom: 10px;
margin-top: 22px;
font-size: 2vw;
}
p {
font-size: 1.4vw;
line-height: 1.5em;
}
.right-container {
}
#qrcode {
box-shadow: 0px 0px 17px 12px rgb(0 0 0 / 50%);
border-radius: 50%;
display: block;
width: min(40vw, 68vh);
height: min(40vw, 68vh);
}
#refreshTimeCountDown {
text-align: center;
margin-top: 30px;
font-size: 2em;
color: #ffffff9c;
}
/* 右上角按钮 */
.ctrl-btn {
position: absolute;
right: 0;
top: 0;
padding: 10px;
}
.btn {
width: 32px;
height: 32px;
cursor: pointer;
filter: invert(1) opacity(0.8);
}
.btn-ctrl {
margin-left: 2px;
vertical-align: middle;
}
#fullscreen-button {
width: 28px;
height: 28px;
}

View File

@@ -0,0 +1,109 @@
.full-screen-mask {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
background-color: black;
opacity: 0.35;
}
.setting-container {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 20;
display: grid;
place-items: center;
}
.setting-panel {
width: 320px;
height: 450px;
background-color: white;
border-radius: 40px;
position: relative;
padding: 14px;
box-sizing: border-box;
}
#close-setting-button {
position: absolute;
right: -17px;
top: -21px;
transform: rotate(12deg) scale(0.9);
transition: 0.3s;
}
#close-setting-button:hover {
transform: rotate(102deg) scale(1.1);
}
.save-button-container {
position: absolute;
bottom: 20px;
left: 0;
right: 0;
}
.save-setting-button {
width: 120px;
font-weight: 200;
font-size: 1.1em;
color: white;
background-color: #0556C6;
border: none;
border-radius: 5px;
height: 32px;
cursor: pointer;
}
.hidden {
display: none;
}
/* 弹窗列表样式 */
#gate-list {
width: 100%;
height: 70%;
/*box-shadow: 0 2px 10px 0 rgb(0 0 0 / 19%);*/
overflow-x: hidden;
overflow-y: scroll;
}
.gate-list-item {
display: grid;
grid-template-columns: 1fr 70px;
height: 50px;
margin: 8px 10px;
box-sizing: border-box;
place-items: center;
background-color: #f6f6f6;
}
.gate-list-item > p {
font-size: 14px;
}
.gate-list-item:hover {
background-color: #dcdcdc;
}
.gate-list-item.active {
background-color: #b7b7b7;
}
.status {
font-weight: bold;
}
.open {
color: green;
}
.closed {
color: red;
}

View File

@@ -0,0 +1,39 @@
const DOMSettingButton = document.getElementById("setting-button")
const DOMFullScreenMask = document.getElementById("full-screen-mask")
const DOMCloseSettingButton = document.getElementById("close-setting-button")
const DOMSettingContainer = document.getElementById("setting-container")
const DOMSettingPanel = document.querySelector(".setting-panel")
const DOMSaveSettingButton = document.querySelector(".save-setting-button")
function showSettingPanel() {
console.log("showSettingPanel")
DOMFullScreenMask.classList.remove("hidden")
DOMSettingContainer.classList.remove("hidden")
}
function closeSettingPanel() {
console.log("closeSettingPanel")
DOMFullScreenMask.classList.add("hidden")
DOMSettingContainer.classList.add("hidden")
}
DOMSettingButton?.addEventListener('click', showSettingPanel)
// DOMFullScreenMask?.addEventListener('click', closeSettingPanel)
DOMSettingContainer?.addEventListener('click', closeSettingPanel)
DOMCloseSettingButton?.addEventListener('click', closeSettingPanel)
DOMSettingPanel.addEventListener('click', function (e) {
e.stopPropagation()
})
DOMSaveSettingButton.addEventListener('click', function (e) {
e.stopPropagation()
if (window.selectGateId) {
closeSettingPanel()
location.href = "./index.html?gateId=" + window.selectGateId
} else {
alert("请选择大门")
}
})
// 绑定到全局
window.showSettingPanel = showSettingPanel
window.closeSettingPanel = closeSettingPanel

View File

@@ -0,0 +1,62 @@
window.wsUrl = 'wss://epp.only4.work/access/websocket/1';
// window.wsUrl = 'ws://127.0.0.1:80/access/websocket/1';
// window.wsUrl = 'ws://127.0.0.1:8002/access/websocket/1';
window.ws = null; // WebSocket 实例对象
(function () {
if (!'WebSocket' in window) {
alert("不支持当前浏览器,请升级浏览器。")
return
}
function createConn() {
// 创建webscoket 对象
const ws = new WebSocket(window.wsUrl)
// 执行上面的语句之后,客户端就会与服务器进行连接
// readyState返回当前实例对象的当前状态
/*
共有四种状态
CONNECTING: 值为0表示正在连接
OPEN: 值为1表示连接成功可以通信了
CLOSING 值为2 表示连接正在关闭
CLOSED 值为3表示连接已经关闭了或者打开连接失败
*/
// 实例对象的onopen属性用于指定连接成功后的回调函数
ws.onopen = (res) => {
console.log('onopen readyState', ws.readyState)
console.log('onopen 连接成功==========>', res)
}
// 实例对象的onmessage属性用于指定收到服务器数据后的回调函数
ws.onmessage = ({data}) => {
console.log('onmessage readyState', ws.readyState)
// 注意此时的data是json格式的 需要转化下
console.log('onmessage 有新消息啦=======>', JSON.parse(data))
// 实例对象的send方法给服务器发送消息
ws.send('客户端发送的消息')
}
// 实例对象的onclose属性用于连接关闭后的回调 函数
// 当关闭了服务器后 会走到此回调函数
ws.onclose = () => {
console.log('onclose readyState', ws.readyState)
console.log('onclose websocket连接关闭=======>')
console.log("等待 1s 尝试重新建立连接...");
setTimeout(function () {
window.ws = createConn();
}, 1000);
}
// 连接发生错误的回调方法
// 如当服务器没有启动 就会走到这个错误回调
ws.onerror = (error) => {
console.log('onerror readyState', ws.readyState)
console.log('onerror 发生错误==========>', error)
}
return ws
}
window.ws = createConn()
})()

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 viewBox="0 0 1102 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="215" height="200"><path d="M701.597538 511.842462l366.119385-366.119385a57.974154 57.974154 0 0 0 0-82.077539l-41.038769-41.038769a57.974154 57.974154 0 0 0-82.077539 0L578.481231 388.726154 212.283077 22.528a57.974154 57.974154 0 0 0-82.077539 0l-41.117538 41.117538a57.974154 57.974154 0 0 0 0 82.077539l366.119385 366.119385-366.119385 366.119384a58.131692 58.131692 0 0 0 0 82.156308l41.038769 41.038769a57.974154 57.974154 0 0 0 82.077539 0l366.119384-366.119385 366.119385 366.119385a57.974154 57.974154 0 0 0 82.077538 0l41.03877-41.038769a58.131692 58.131692 0 0 0 0-82.156308L701.597538 511.842462z"></path></svg>

After

Width:  |  Height:  |  Size: 886 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 viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M692.705882 24.094118h240.941177c36.141176 0 60.235294 24.094118 60.235294 60.235294s-24.094118 60.235294-60.235294 60.235294h-240.941177c-36.141176 0-60.235294-24.094118-60.235294-60.235294s24.094118-60.235294 60.235294-60.235294z"></path><path d="M933.647059 24.094118c36.141176 0 60.235294 24.094118 60.235294 60.235294v240.941176c0 36.141176-24.094118 60.235294-60.235294 60.235294s-60.235294-24.094118-60.235294-60.235294v-240.941176c0-36.141176 24.094118-60.235294 60.235294-60.235294z"></path><path d="M915.576471 96.376471c18.070588 24.094118 18.070588 60.235294 0 84.329411l-246.964706 246.964706c-24.094118 24.094118-60.235294 24.094118-84.329412 0-24.094118-24.094118-24.094118-60.235294 0-84.329412l246.964706-246.964705c24.094118-18.070588 60.235294-18.070588 84.329412 0zM90.352941 867.388235h240.941177c36.141176 0 60.235294 24.094118 60.235294 60.235294s-24.094118 60.235294-60.235294 60.235295H90.352941c-36.141176 0-60.235294-24.094118-60.235294-60.235295s24.094118-60.235294 60.235294-60.235294z"></path><path d="M90.352941 626.447059c36.141176 0 60.235294 24.094118 60.235294 60.235294v240.941176c0 36.141176-24.094118 60.235294-60.235294 60.235295s-60.235294-24.094118-60.235294-60.235295v-240.941176c0-36.141176 24.094118-60.235294 60.235294-60.235294z"></path><path d="M102.4 909.552941c-24.094118-24.094118-24.094118-60.235294 0-84.329412l246.964706-246.964705c24.094118-24.094118 60.235294-24.094118 84.329412 0 24.094118 24.094118 24.094118 60.235294 0 84.329411l-246.964706 246.964706c-24.094118 18.070588-60.235294 18.070588-84.329412 0zM90.352941 24.094118h240.941177c36.141176 0 60.235294 24.094118 60.235294 60.235294s-24.094118 60.235294-60.235294 60.235294H90.352941c-36.141176 0-60.235294-24.094118-60.235294-60.235294s24.094118-60.235294 60.235294-60.235294z"></path><path d="M90.352941 24.094118c36.141176 0 60.235294 24.094118 60.235294 60.235294v240.941176c0 36.141176-24.094118 60.235294-60.235294 60.235294s-60.235294-24.094118-60.235294-60.235294v-240.941176c0-36.141176 24.094118-60.235294 60.235294-60.235294z"></path><path d="M102.4 96.376471c-18.070588 24.094118-18.070588 60.235294 0 84.329411l246.964706 246.964706c24.094118 24.094118 60.235294 24.094118 84.329412 0 24.094118-24.094118 24.094118-60.235294 0-84.329412L186.729412 96.376471c-24.094118-18.070588-60.235294-18.070588-84.329412 0zM692.705882 867.388235h240.941177c36.141176 0 60.235294 24.094118 60.235294 60.235294s-24.094118 60.235294-60.235294 60.235295h-240.941177c-36.141176 0-60.235294-24.094118-60.235294-60.235295s24.094118-60.235294 60.235294-60.235294z"></path><path d="M933.647059 626.447059c36.141176 0 60.235294 24.094118 60.235294 60.235294v240.941176c0 36.141176-24.094118 60.235294-60.235294 60.235295s-60.235294-24.094118-60.235294-60.235295v-240.941176c0-36.141176 24.094118-60.235294 60.235294-60.235294z"></path><path d="M915.576471 909.552941c24.094118-24.094118 24.094118-60.235294 0-84.329412l-246.964706-246.964705c-24.094118-24.094118-60.235294-24.094118-84.329412 0-24.094118 24.094118-24.094118 60.235294 0 84.329411l246.964706 246.964706c24.094118 18.070588 60.235294 18.070588 84.329412 0z"></path></svg>

After

Width:  |  Height:  |  Size: 3.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 viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M512.5 390.6c-29.9 0-57.9 11.6-79.1 32.8-21.1 21.2-32.8 49.2-32.8 79.1 0 29.9 11.7 57.9 32.8 79.1 21.2 21.1 49.2 32.8 79.1 32.8 29.9 0 57.9-11.7 79.1-32.8 21.1-21.2 32.8-49.2 32.8-79.1 0-29.9-11.7-57.9-32.8-79.1-21.2-21.2-49.2-32.8-79.1-32.8z"></path><path d="M924.8 626.1l-65.4-55.9c3.1-19 4.7-38.4 4.7-57.7s-1.6-38.8-4.7-57.7l65.4-55.9c10.1-8.6 13.8-22.6 9.3-35.2l-0.9-2.6c-18.1-50.4-44.8-96.8-79.6-137.7l-1.8-2.1c-8.6-10.1-22.5-13.9-35.1-9.5l-81.2 28.9c-30-24.6-63.4-44-99.6-57.5l-15.7-84.9c-2.4-13.1-12.7-23.3-25.8-25.7l-2.7-0.5c-52-9.4-106.8-9.4-158.8 0l-2.7 0.5c-13.1 2.4-23.4 12.6-25.8 25.7l-15.8 85.3c-35.9 13.6-69.1 32.9-98.9 57.3l-81.8-29.1c-12.5-4.4-26.5-0.7-35.1 9.5l-1.8 2.1c-34.8 41.1-61.5 87.4-79.6 137.7l-0.9 2.6c-4.5 12.5-0.8 26.5 9.3 35.2l66.2 56.5c-3.1 18.8-4.6 38-4.6 57 0 19.2 1.5 38.4 4.6 57l-66 56.5c-10.1 8.6-13.8 22.6-9.3 35.2l0.9 2.6c18.1 50.3 44.8 96.8 79.6 137.7l1.8 2.1c8.6 10.1 22.5 13.9 35.1 9.5l81.8-29.1c29.8 24.5 63 43.9 98.9 57.3l15.8 85.3c2.4 13.1 12.7 23.3 25.8 25.7l2.7 0.5c26.1 4.7 52.7 7.1 79.4 7.1 26.7 0 53.4-2.4 79.4-7.1l2.7-0.5c13.1-2.4 23.4-12.6 25.8-25.7l15.7-84.9c36.2-13.6 69.6-32.9 99.6-57.5l81.2 28.9c12.5 4.4 26.5 0.7 35.1-9.5l1.8-2.1c34.8-41.1 61.5-87.4 79.6-137.7l0.9-2.6c4.3-12.4 0.6-26.3-9.5-35z m-412.3 52.2c-97.1 0-175.8-78.7-175.8-175.8s78.7-175.8 175.8-175.8 175.8 78.7 175.8 175.8-78.7 175.8-175.8 175.8z"></path></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,71 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CSP -->
<!-- <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"> -->
<!-- Electron -->
<!-- <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src *; img-src *; connect-src *;"> -->
<title>社区疫情防控系统 - 门禁端</title>
<link rel="stylesheet" href="./assets/css/index.css"/>
<link rel="stylesheet" href="./assets/css/setting-panel.css"/>
</head>
<body>
<div class="ctrl-btn">
<img class="btn btn-ctrl" id="setting-button" src="./assets/svg/setting.svg" alt="">
<img class="btn btn-ctrl" id="fullscreen-button" src="./assets/svg/fullscreen.svg" alt="">
</div>
<div class="container">
<div class="top-container">
<p id="gate-name" style="font-size: 28px;">Loading...</p>
</div>
<div class="left-container">
<h1>进出社区请扫码</h1>
<h3>社区居民</h3>
<p>1. 打开 微信 > 扫一扫,扫描右侧小程序码</p>
<p>2. 点击确认进入,门即开启</p>
<h3>外来访客</h3>
<p>1. 打开 微信 > 扫一扫,扫描右侧小程序码</p>
<p>2. 填写进入申请表</p>
<h3>长期租客</h3>
<p>1. 请联系管理员为你添加进出权限</p>
</div>
<div class="right-container">
<h1 id="no-qrcode">请选择大门</h1>
<img id="qrcode" src="" style="display: none">
<p id="refreshTimeCountDown"></p>
</div>
</div>
<div id="full-screen-mask" class="full-screen-mask hidden"></div>
<div id="setting-container" class="setting-container hidden">
<div class="setting-panel">
<!-- 关闭按钮 -->
<img id="close-setting-button" class="btn" src="./assets/svg/close.svg" alt="">
<h3 style="text-align: center;">请选择大门</h3>
<div id="gate-list">
<div class="gate-list-item">
<p>大门1</p>
<p class="status open closed">
开放 封闭
</p>
</div>
</div>
<div class="save-button-container" style="text-align: center;">
<button class="save-setting-button">保 存</button>
</div>
</div>
</div>
<script src="./assets/js/setting-panel.js" type="module"></script>
<script src="./renderer.js" type="module"></script>
<script src="./assets/js/websocket.js"></script>
</body>
</html>

View File

@@ -0,0 +1,152 @@
// 定义常量
const baseUrl = "/" // "https://epp.only4.work/"
const url = baseUrl + "access/wechat/getUnlimitedQRCode"
const page = "pages/index/index" // "pages/scan/entrance"
const envVersion = "develop" // 正式版为 "release",体验版为 "trial",开发版为 "develop"
const autoColor = true
const isHyaline = false
const width = 500
// 页面上的元素
const image = document.getElementById('qrcode')
const noQrInfo = document.getElementById('no-qrcode')
const refreshTimeCountDown = document.getElementById('refreshTimeCountDown')
const DOMGateList = document.getElementById('gate-list')
// 大门列表
window.gateList = []
// 当前大门
window.currentGate = null
// 获取 Url 参数
function getUrlParams() {
let params = {}
location.search.substring(1).split("&").map(param => {
let a = param.indexOf("=")
if (a < 0)
params[param] = ''
else
params[param.substring(0, a)] = decodeURIComponent(param.substring(a + 1))
})
// console.log(params)
return params
}
// 获取 url 参数
let urlParams = getUrlParams()
console.log("urlParams", urlParams)
// 是否在 electron 中
const inElectron = urlParams['inElectron']
// 点击全屏
document.getElementById("fullscreen-button").addEventListener("click", function () {
if (document.fullscreenElement) {
document.exitFullscreen();
} else {
if (inElectron) {
// electron 中
const message = JSON.stringify({
action: 'fullscreen'
});
window.parent.postMessage(message, '*');
} else {
// 浏览器中
document.body.requestFullscreen()
}
}
})
// 定时更新页面上的小程序码
let i = 0, refreshTime = 10 + 1
function updateQRCode() {
// 取消图片隐藏
image.style.visibility = '';
image.style.display = '';
noQrInfo.style.display = 'none';
if (i % refreshTime == 0) {
// scene 最长支支持 32 位,所以这里不传入时间戳
let scene = encodeURIComponent(`guard;${window.currentGate.id}`); // &${Date.now()}
image.src = `${url}?page=${page}&scene=${scene}&envVersion=${envVersion}&width=${width}&autoColor=${autoColor}&isHyaline=${isHyaline}`
console.log(image.src)
refreshTimeCountDown.innerHTML = `&nbsp;`
} else {
refreshTimeCountDown.textContent = `${refreshTime - i}秒后刷新`
}
i = i % refreshTime + 1
}
// 挂载到 window 上
window.updateQRCode = updateQRCode
// 弹窗中修改 item
function changePanelSelectGate(gateId) {
// 删除旧的 active
let activeList = document.querySelectorAll('.gate-list-item.active')
for (let a of activeList) {
a.classList.remove('active')
}
// 添加新的 active
let newActiveItem = document.getElementById(`gate-list-${gateId}`)
if (newActiveItem) {
newActiveItem.classList.add('active')
window.selectGateId = gateId
}
}
// 挂载到 window 上
window.changePanelSelectGate = changePanelSelectGate
// 发送请求,获取大门列表
async function getGateList() {
const response = await fetch(baseUrl + 'access/gate/guard-client/getGateList');
const data = await response.json();
return data.data;
}
window.onload = async function () {
// 当前的门禁端
let gateId = urlParams['gateId'] || ""
// 获取大门列表
window.gateList = await getGateList()
console.log("gateList", window.gateList)
let domList = []
for (let gate of window.gateList) {
domList.push(`
<div id="gate-list-${gate.id}" class="gate-list-item" onclick="window.changePanelSelectGate('${gate.id}')">
<p>${gate.name}</p>
<p class="status ${gate.open ? 'open' : 'closed'}">
${gate.open ? '开放' : '封闭'}
</p>
</div>
`)
}
DOMGateList.innerHTML = domList.join('')
// 通过id 找门禁
window.currentGate = gateList.find((gate) => gate.id === gateId)
if (!window.currentGate) {
// 弹出选择框
window.showSettingPanel && window.showSettingPanel()
} else {
// 显示大门名称及状态
document.querySelector('#gate-name').innerHTML = `
<span>${window.currentGate.name}</span>
<span style="font-weight: bold; color: ${window.currentGate.open ? '#40f940' : 'red'};">${window.currentGate.open ? '允许通行' : '禁止通行'}</span>`
// 开始更新图片
updateQRCode()
setInterval(updateQRCode, 1000)
}
}

View File

@@ -0,0 +1,92 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>基于微服务的社区疫情防控系统</title>
<style>
body {
font-size: 1.2em;
}
.grid-item {
border: 1px solid black;
text-align: center;
}
.grid-item ul {
text-align: left;
}
</style>
</head>
<body>
<div>
<h1 style="text-align: center;">基于微服务的社区疫情防控系统</h1>
<p style="text-align: center;">epp.only4.work</p>
<div style="display: grid; grid-template-columns: repeat(2, 1fr);">
<div class="grid-item">
<h3>
门禁端 跨端桌面应用
</h3>
<ul>
<li>
方式1访问
<a target="_blank" href="./guard/index.html">https://epp.only4.work/guard/index.html</a>
</li>
<li>
方式2运行跨端桌面应用
</li>
</ul>
</div>
<div class="grid-item">
<h3>
居民端 小程序
</h3>
<ul>
<li>
方式1扫描下方小程序码
<p style="text-align: center">
<img src="./assets/image/miniprogram.jpg" style="width: 180px;">
</p>
</li>
<li>
方式2微信搜索小程序 <b>devprogram</b>
</li>
</ul>
</div>
<div class="grid-item">
<h3>
社区管理员端 管理后台
</h3>
<ul>
<li>
访问
<a target="_blank" href="./manage/index.html">https://epp.only4.work/manage/index.html</a>
</li>
</ul>
</div>
<div class="grid-item">
<h3>
系统管理员端 管理后台
</h3>
<ul>
<li>
访问
<a target="_blank" href="./manage/index.html">https://epp.only4.work/manage/index.html</a>
</li>
</ul>
</div>
</div>
</div>
<div>
<h2>开发</h2>
<p>小程序后台:<a target="_blank">https://mp.weixin.qq.com/</a></p>
</div>
</body>
</html>

View File

@@ -0,0 +1 @@
import{d as r,dJ as p,b0 as l,r as i,o as m,c as E,e as o,b as s,w as a,p as f,h,f as t,_ as v}from"./index.f859bf4e.js";const c=e=>(f("data-v-d4771405"),e=e(),h(),e),B={class:"error-page"},g=c(()=>o("div",{class:"error-code"},[t("4"),o("span",null,"0"),t("3")],-1)),k=c(()=>o("div",{class:"error-desc"},"\u554A\u54E6~ \u4F60\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u9875\u9762\u54E6",-1)),x={class:"error-handle"},y=r({name:"403"}),C=r({...y,setup(e){const u=p(),n=()=>{u.go(-2)};return(b,D)=>{const _=l,d=i("router-link");return m(),E("div",B,[g,k,o("div",x,[s(d,{to:"/"},{default:a(()=>[s(_,{type:"primary",size:"large"},{default:a(()=>[t("\u8FD4\u56DE\u9996\u9875")]),_:1})]),_:1}),s(_,{class:"error-btn",type:"primary",size:"large",onClick:n},{default:a(()=>[t("\u8FD4\u56DE\u4E0A\u4E00\u9875")]),_:1})])])}}});const I=v(C,[["__scopeId","data-v-d4771405"]]);export{I as default};

View File

@@ -0,0 +1 @@
.error-page[data-v-d4771405]{display:flex;justify-content:center;align-items:center;flex-direction:column;width:100%;height:100%;background:#f3f3f3;box-sizing:border-box}.error-code[data-v-d4771405]{line-height:1;font-size:250px;font-weight:bolder;color:#f02d2d}.error-code span[data-v-d4771405]{color:#00a854}.error-desc[data-v-d4771405]{font-size:30px;color:#777}.error-handle[data-v-d4771405]{margin-top:30px;padding-bottom:200px}.error-btn[data-v-d4771405]{margin-left:100px}

View File

@@ -0,0 +1 @@
import{m as s}from"./manage-list.8ab8e06b.js";import{s as t}from"./send_request.cc43fdb9.js";import{d as n,o as r,c,b as o}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";function u(e){return t({url:"/access/gate/manage/getGateList",method:"GET",params:e})}function a(e){return t({url:"/access/gate/manage/editGate",method:"POST",useQS:!0,params:e})}function i(e){return t({url:"/access/gate/manage/deleteGate",method:"POST",useQS:!0,params:e})}function m(e){return t({url:"/access/gate/manage/exportGateList",method:"GET",params:e})}const d={class:"container"},L=n({__name:"access-gate-setting",setup(e){return(p,f)=>(r(),c("div",d,[o(s,{"list-func":u,"add-func":a,"edit-func":a,"delete-func":i,"export-func":m,"edit-permiss":"access-gate-setting"},null,8,["list-func","add-func","edit-func","delete-func","export-func"])]))}});export{L as default};

View File

@@ -0,0 +1 @@
import{m as o}from"./manage-list.8ab8e06b.js";import{s as m}from"./send_request.cc43fdb9.js";import{d as r,o as c,c as a,b as n}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";function p(e){var s,i;let t=JSON.parse(JSON.stringify(e));return delete t.timestamp,Array.isArray(e.timestamp)&&e.timestamp.length==2&&(t.startTime=(s=e.timestamp[0])==null?void 0:s.getTime(),t.endTime=(i=e.timestamp[1])==null?void 0:i.getTime()),m({url:"/access/access-log/manage/getAccessLogList",method:"GET",params:t})}function g(e){var s,i;let t=JSON.parse(JSON.stringify(e));return delete t.timestamp,Array.isArray(e.timestamp)&&e.timestamp.length==2&&(t.startTime=(s=e.timestamp[0])==null?void 0:s.getTime(),t.endTime=(i=e.timestamp[1])==null?void 0:i.getTime()),m({url:"/access/access-log/manage/exportAccessLogList",method:"GET",params:t})}const l={class:"container"},y=r({__name:"access-log",setup(e){return(t,s)=>(c(),a("div",l,[n(o,{"list-func":p,"export-func":g,"edit-permiss":"access-log"},null,8,["list-func","export-func"])]))}});export{y as default};

View File

@@ -0,0 +1 @@
.el-row[data-v-e670d298]{margin-bottom:20px}.grid-content[data-v-e670d298]{display:flex;align-items:center;height:100px}.grid-cont-right[data-v-e670d298]{flex:1;text-align:center;font-size:14px;color:#999}.grid-num[data-v-e670d298]{font-size:30px;font-weight:700}.grid-con-icon[data-v-e670d298]{font-size:50px;width:100px;height:100px;text-align:center;line-height:100px;color:#fff}.grid-con-1 .grid-con-icon[data-v-e670d298]{background:rgb(45,140,240)}.grid-con-1 .grid-num[data-v-e670d298]{color:#2d8cf0}.grid-con-2 .grid-con-icon[data-v-e670d298]{background:rgb(100,213,114)}.grid-con-2 .grid-num[data-v-e670d298]{color:#64d572}.grid-con-3 .grid-con-icon[data-v-e670d298]{background:rgb(242,94,67)}.grid-con-3 .grid-num[data-v-e670d298]{color:#f25e43}.user-info[data-v-e670d298]{display:flex;align-items:center;padding-bottom:20px;border-bottom:2px solid #ccc;margin-bottom:20px}.user-info-cont[data-v-e670d298]{padding-left:50px;flex:1;font-size:14px;color:#999}.user-info-cont div[data-v-e670d298]:first-child{font-size:30px;color:#222}.user-info-list[data-v-e670d298]{font-size:14px;color:#999;line-height:25px}.user-info-list span[data-v-e670d298]{margin-left:70px}.mgb20[data-v-e670d298]{margin-bottom:20px}.todo-item[data-v-e670d298]{font-size:14px}.todo-item-del[data-v-e670d298]{text-decoration:line-through;color:#999}

View File

@@ -0,0 +1 @@
import{d as g,E as C,r as _,a as F,o as x,c as y,b as s,w as e,e as o,u as r,t as h,f as t,g as b,p as w,h as A,_ as S}from"./index.f859bf4e.js";import{E as D,a as I,b as V}from"./el-card.0035c23b.js";import{E as N}from"./el-progress.d53d438b.js";const a=d=>(w("data-v-e670d298"),d=d(),A(),d),R={class:"container"},T={class:"user-info"},k={class:"user-info-cont"},G={class:"user-info-name"},U=a(()=>o("div",{class:"user-info-list"},[t(" \u4E0A\u6B21\u767B\u5F55\u65F6\u95F4\uFF1A "),o("span",null,"2022-10-01")],-1)),z=a(()=>o("div",{class:"user-info-list"},[t(" \u4E0A\u6B21\u767B\u5F55\u5730\u70B9\uFF1A "),o("span",null,"\u4E1C\u839E")],-1)),H=a(()=>o("div",{class:"clearfix"},[o("span",null,"\u8BED\u8A00\u8BE6\u60C5")],-1)),L={class:"grid-content grid-con-1"},M=a(()=>o("div",{class:"grid-cont-right"},[o("div",{class:"grid-num"},"1234"),o("div",null,"\u7528\u6237\u8BBF\u95EE\u91CF")],-1)),P={class:"grid-content grid-con-2"},j=a(()=>o("div",{class:"grid-cont-right"},[o("div",{class:"grid-num"},"321"),o("div",null,"\u7CFB\u7EDF\u6D88\u606F")],-1)),q={class:"grid-content grid-con-3"},J=a(()=>o("div",{class:"grid-cont-right"},[o("div",{class:"grid-num"},"500"),o("div",null,"\u5546\u54C1\u6570\u91CF")],-1)),K=g({name:"dashboard"}),O=g({...K,setup(d){const i=localStorage.getItem("ms_username"),f=i==="admin"?"\u8D85\u7EA7\u7BA1\u7406\u5458":"\u666E\u901A\u7528\u6237";return(Q,W)=>{const v=C,n=D,l=N,c=I,m=_("User"),u=F,E=_("ChatDotRound"),B=_("Goods"),p=V;return x(),y("div",R,[s(p,{gutter:20},{default:e(()=>[s(c,{span:8},{default:e(()=>[s(n,{shadow:"hover",class:"mgb20",style:{height:"252px"}},{default:e(()=>[o("div",T,[s(v,{size:120,src:r(b)},null,8,["src"]),o("div",k,[o("div",G,h(r(i)),1),o("div",null,h(r(f)),1)])]),U,z]),_:1}),s(n,{shadow:"hover",style:{height:"252px"}},{header:e(()=>[H]),default:e(()=>[t(" Vue "),s(l,{percentage:79.4,color:"#42b983"},null,8,["percentage"]),t(" TypeScript "),s(l,{percentage:14,color:"#f1e05a"}),t(" CSS "),s(l,{percentage:5.6},null,8,["percentage"]),t(" HTML "),s(l,{percentage:1,color:"#f56c6c"})]),_:1})]),_:1}),s(c,{span:16},{default:e(()=>[s(p,{gutter:20,class:"mgb20"},{default:e(()=>[s(c,{span:8},{default:e(()=>[s(n,{shadow:"hover","body-style":{padding:"0px"}},{default:e(()=>[o("div",L,[s(u,{class:"grid-con-icon"},{default:e(()=>[s(m)]),_:1}),M])]),_:1})]),_:1}),s(c,{span:8},{default:e(()=>[s(n,{shadow:"hover","body-style":{padding:"0px"}},{default:e(()=>[o("div",P,[s(u,{class:"grid-con-icon"},{default:e(()=>[s(E)]),_:1}),j])]),_:1})]),_:1}),s(c,{span:8},{default:e(()=>[s(n,{shadow:"hover","body-style":{padding:"0px"}},{default:e(()=>[o("div",q,[s(u,{class:"grid-con-icon"},{default:e(()=>[s(B)]),_:1}),J])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})])}}});const $=S(O,[["__scopeId","data-v-e670d298"]]);export{$ as default};

View File

@@ -0,0 +1 @@
import{i as g,j as r,d as u,k as h,o as f,c as N,n as d,u as o,l as m,f as R,t as x,m as B,e as K,q as w,s as _,v,x as p,y as P,z as n,A as j,B as A,C as S,w as k,D as E,F as D}from"./index.f859bf4e.js";const O=Symbol("rowContextKey"),V=g({header:{type:String,default:""},bodyStyle:{type:r([String,Object,Array]),default:""},shadow:{type:String,values:["always","hover","never"],default:"always"}}),L=u({name:"ElCard"}),T=u({...L,props:V,setup(i){const t=h("card");return(s,l)=>(f(),N("div",{class:d([o(t).b(),o(t).is(`${s.shadow}-shadow`)])},[s.$slots.header||s.header?(f(),N("div",{key:0,class:d(o(t).e("header"))},[m(s.$slots,"header",{},()=>[R(x(s.header),1)])],2)):B("v-if",!0),K("div",{class:d(o(t).e("body")),style:w(s.bodyStyle)},[m(s.$slots,"default")],6)],2))}});var q=_(T,[["__file","/home/runner/work/element-plus/element-plus/packages/components/card/src/card.vue"]]);const z=v(q),F=g({tag:{type:String,default:"div"},span:{type:Number,default:24},offset:{type:Number,default:0},pull:{type:Number,default:0},push:{type:Number,default:0},xs:{type:r([Number,Object]),default:()=>p({})},sm:{type:r([Number,Object]),default:()=>p({})},md:{type:r([Number,Object]),default:()=>p({})},lg:{type:r([Number,Object]),default:()=>p({})},xl:{type:r([Number,Object]),default:()=>p({})}}),I=u({name:"ElCol"}),J=u({...I,props:F,setup(i){const t=i,{gutter:s}=P(O,{gutter:n(()=>0)}),l=h("col"),y=n(()=>{const e={};return s.value&&(e.paddingLeft=e.paddingRight=`${s.value/2}px`),e}),b=n(()=>{const e=[];return["span","offset","pull","push"].forEach(a=>{const c=t[a];j(c)&&(a==="span"?e.push(l.b(`${t[a]}`)):c>0&&e.push(l.b(`${a}-${t[a]}`)))}),["xs","sm","md","lg","xl"].forEach(a=>{j(t[a])?e.push(l.b(`${a}-${t[a]}`)):A(t[a])&&Object.entries(t[a]).forEach(([c,C])=>{e.push(c!=="span"?l.b(`${a}-${c}-${C}`):l.b(`${a}-${C}`))})}),s.value&&e.push(l.is("guttered")),[l.b(),e]});return(e,$)=>(f(),S(E(e.tag),{class:d(o(b)),style:w(o(y))},{default:k(()=>[m(e.$slots,"default")]),_:3},8,["class","style"]))}});var G=_(J,[["__file","/home/runner/work/element-plus/element-plus/packages/components/col/src/col.vue"]]);const ee=v(G),H=["start","center","end","space-around","space-between","space-evenly"],M=["top","middle","bottom"],Q=g({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:H,default:"start"},align:{type:String,values:M,default:"top"}}),U=u({name:"ElRow"}),W=u({...U,props:Q,setup(i){const t=i,s=h("row"),l=n(()=>t.gutter);D(O,{gutter:l});const y=n(()=>{const e={};return t.gutter&&(e.marginRight=e.marginLeft=`-${t.gutter/2}px`),e}),b=n(()=>[s.b(),s.is(`justify-${t.justify}`,t.justify!=="start"),s.is(`align-${t.align}`,t.align!=="top")]);return(e,$)=>(f(),S(E(e.tag),{class:d(o(b)),style:w(o(y))},{default:k(()=>[m(e.$slots,"default")]),_:3},8,["class","style"]))}});var X=_(W,[["__file","/home/runner/work/element-plus/element-plus/packages/components/row/src/row.vue"]]);const te=v(X);export{z as E,ee as a,te as b};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{-webkit-animation:v-modal-in var(--el-transition-duration-fast) ease;animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{-webkit-animation:v-modal-out var(--el-transition-duration-fast) ease forwards;animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@-webkit-keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-in{0%{opacity:0}}@-webkit-keyframes v-modal-out{to{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color)}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:20px;--el-dialog-border-radius:var(--el-border-radius-small);position:relative;margin:var(--el-dialog-margin-top,15vh) auto 50px;background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:0!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;margin-bottom:0;height:100%;overflow:auto}.el-dialog__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;margin:0}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.el-dialog__header{padding:var(--el-dialog-padding-primary);padding-bottom:10px;margin-right:16px}.el-dialog__headerbtn{position:absolute;top:6px;right:0;padding:0;width:54px;height:54px;background:0 0;border:none;outline:0;cursor:pointer;font-size:var(--el-message-close-size,16px)}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{line-height:var(--el-dialog-font-line-height);font-size:var(--el-dialog-title-font-size);color:var(--el-text-color-primary)}.el-dialog__body{padding:calc(var(--el-dialog-padding-primary) + 10px) var(--el-dialog-padding-primary);color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{padding:var(--el-dialog-padding-primary);padding-top:10px;text-align:right;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial;padding:25px calc(var(--el-dialog-padding-primary) + 5px) 30px}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-overlay-dialog{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto}.dialog-fade-enter-active{-webkit-animation:modal-fade-in var(--el-transition-duration);animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{-webkit-animation:dialog-fade-in var(--el-transition-duration);animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{-webkit-animation:modal-fade-out var(--el-transition-duration);animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{-webkit-animation:dialog-fade-out var(--el-transition-duration);animation:dialog-fade-out var(--el-transition-duration)}@-webkit-keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@-webkit-keyframes dialog-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}@keyframes dialog-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}@-webkit-keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@-webkit-keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;height:100%;background-color:var(--el-overlay-color-lighter);overflow:auto}.el-overlay .el-overlay-root{height:0}

View File

@@ -0,0 +1 @@
.el-progress{position:relative;line-height:1;display:flex;align-items:center}.el-progress__text{font-size:14px;color:var(--el-text-color-regular);margin-left:5px;min-width:50px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{flex-grow:1;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:var(--el-border-color-lighter);overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:var(--el-color-primary);text-align:right;border-radius:100px;line-height:1;white-space:nowrap;transition:width .6s ease}.el-progress-bar__inner:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-progress-bar__inner--indeterminate{transform:translateZ(0);-webkit-animation:indeterminate 3s infinite;animation:indeterminate 3s infinite}.el-progress-bar__innerText{display:inline-block;vertical-align:middle;color:#fff;font-size:12px;margin:0 5px}@-webkit-keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@-webkit-keyframes indeterminate{0%{left:-100%}to{left:100%}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}

View File

@@ -0,0 +1,6 @@
import{i as M,j as m,d as T,k as A,z as r,G as V,H as O,I as j,J as q,K as G,L as H,M as C,o as l,c,n as i,u as t,e as y,q as f,l as _,t as D,m as I,C as N,w as J,D as K,a as R,s as U,v as Q}from"./index.f859bf4e.js";const X=M({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:u=>u>=0&&u<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:{type:Boolean,default:!1},duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:m(String),default:"round"},textInside:{type:Boolean,default:!1},width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:m([String,Array,Function]),default:""},format:{type:m(Function),default:u=>`${u}%`}}),Y=["aria-valuenow"],Z={viewBox:"0 0 100 100"},ee=["d","stroke","stroke-width"],te=["d","stroke","opacity","stroke-linecap","stroke-width"],se={key:0},ae=T({name:"ElProgress"}),re=T({...ae,props:X,setup(u){const s=u,v={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},a=A("progress"),x=r(()=>({width:`${s.percentage}%`,animationDuration:`${s.duration}s`,backgroundColor:P(s.percentage)})),g=r(()=>(s.strokeWidth/s.width*100).toFixed(1)),b=r(()=>["circle","dashboard"].includes(s.type)?Number.parseInt(`${50-Number.parseFloat(g.value)/2}`,10):0),$=r(()=>{const e=b.value,o=s.type==="dashboard";return`
M 50 50
m 0 ${o?"":"-"}${e}
a ${e} ${e} 0 1 1 0 ${o?"-":""}${e*2}
a ${e} ${e} 0 1 1 0 ${o?"":"-"}${e*2}
`}),h=r(()=>2*Math.PI*b.value),k=r(()=>s.type==="dashboard"?.75:1),w=r(()=>`${-1*h.value*(1-k.value)/2}px`),B=r(()=>({strokeDasharray:`${h.value*k.value}px, ${h.value}px`,strokeDashoffset:w.value})),z=r(()=>({strokeDasharray:`${h.value*k.value*(s.percentage/100)}px, ${h.value}px`,strokeDashoffset:w.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),E=r(()=>{let e;return s.color?e=P(s.percentage):e=v[s.status]||v.default,e}),F=r(()=>s.status==="warning"?V:s.type==="line"?s.status==="success"?O:j:s.status==="success"?q:G),W=r(()=>s.type==="line"?12+s.strokeWidth*.4:s.width*.111111+2),S=r(()=>s.format(s.percentage));function L(e){const o=100/e.length;return e.map((n,p)=>C(n)?{color:n,percentage:(p+1)*o}:n).sort((n,p)=>n.percentage-p.percentage)}const P=e=>{var o;const{color:d}=s;if(H(d))return d(e);if(C(d))return d;{const n=L(d);for(const p of n)if(p.percentage>e)return p.color;return(o=n[n.length-1])==null?void 0:o.color}};return(e,o)=>(l(),c("div",{class:i([t(a).b(),t(a).m(e.type),t(a).is(e.status),{[t(a).m("without-text")]:!e.showText,[t(a).m("text-inside")]:e.textInside}]),role:"progressbar","aria-valuenow":e.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[e.type==="line"?(l(),c("div",{key:0,class:i(t(a).b("bar"))},[y("div",{class:i(t(a).be("bar","outer")),style:f({height:`${e.strokeWidth}px`})},[y("div",{class:i([t(a).be("bar","inner"),{[t(a).bem("bar","inner","indeterminate")]:e.indeterminate}]),style:f(t(x))},[(e.showText||e.$slots.default)&&e.textInside?(l(),c("div",{key:0,class:i(t(a).be("bar","innerText"))},[_(e.$slots,"default",{percentage:e.percentage},()=>[y("span",null,D(t(S)),1)])],2)):I("v-if",!0)],6)],6)],2)):(l(),c("div",{key:1,class:i(t(a).b("circle")),style:f({height:`${e.width}px`,width:`${e.width}px`})},[(l(),c("svg",Z,[y("path",{class:i(t(a).be("circle","track")),d:t($),stroke:`var(${t(a).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-width":t(g),fill:"none",style:f(t(B))},null,14,ee),y("path",{class:i(t(a).be("circle","path")),d:t($),stroke:t(E),fill:"none",opacity:e.percentage?1:0,"stroke-linecap":e.strokeLinecap,"stroke-width":t(g),style:f(t(z))},null,14,te)]))],6)),(e.showText||e.$slots.default)&&!e.textInside?(l(),c("div",{key:2,class:i(t(a).e("text")),style:f({fontSize:`${t(W)}px`})},[_(e.$slots,"default",{percentage:e.percentage},()=>[e.status?(l(),N(t(R),{key:1},{default:J(()=>[(l(),N(K(t(F))))]),_:1})):(l(),c("span",se,D(t(S)),1))])],6)):I("v-if",!0)],10,Y))}});var oe=U(re,[["__file","/home/runner/work/element-plus/element-plus/packages/components/progress/src/progress.vue"]]);const le=Q(oe);export{le as E};

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
.login-wrap[data-v-0fd4c22f]{width:100%;height:100%}.login-container[data-v-0fd4c22f]{width:100%;height:100%;display:grid;place-items:center}.ms-title[data-v-0fd4c22f]{width:100%;padding:18px 24px;box-sizing:border-box;text-align:center;font-size:20px;color:#fff;border-bottom:1px solid #ddd}.ms-login[data-v-0fd4c22f]{width:min(380px,95vw);padding:5px 10px;border-radius:5px;background:rgba(255,255,255,.3);overflow:hidden}.ms-content[data-v-0fd4c22f]{padding:30px}.login-btn[data-v-0fd4c22f]{text-align:center}.login-btn button[data-v-0fd4c22f]{width:100%;height:36px;margin-bottom:10px}.company-info[data-v-0fd4c22f]{color:#7589b6;text-align:center;position:absolute;left:0;right:0;bottom:10px;font-size:13px;letter-spacing:1px}

View File

@@ -0,0 +1 @@
import{d as E,dJ as x,aR as C,ac as k,dK as N,r as R,o as b,c as h,e as d,t as F,u,b as o,w as a,aT as S,f as T,m as q,bP as B,b0 as D,a as K,bX as f,dL as L,dM as M,_ as U}from"./index.f859bf4e.js";import{E as $,s as j,t as A}from"./el-input.f35758e8.js";import{u as J}from"./user.0bac8e4f.js";import"./send_request.cc43fdb9.js";const O={class:"login-wrap"},P={class:"login-container"},X={class:"ms-login"},z={class:"ms-title"},G={class:"login-btn"},H={key:0,class:"company-info"},Q=E({__name:"login",setup(W){const _=x(),r=C({username:"root",password:"root"}),V={username:[{required:!0,message:"\u8BF7\u8F93\u5165\u7528\u6237\u540D",trigger:"blur"}],password:[{required:!0,message:"\u8BF7\u8F93\u5165\u5BC6\u7801",trigger:"blur"}]},p=k(),v=g=>{!g||g.validate(async(s,l)=>{if(!s){console.log("invalidFields",l),Object.values(l).forEach(e=>{e.forEach(t=>{B.error({message:t.message,grouping:!0})})});return}J({username:r.username,password:r.password}).then(async e=>{var i,c,m,n,y,I,w;if(!e)return;console.log("login data",e,e.userInfo),B.success("\u767B\u5F55\u6210\u529F"),localStorage.setItem("ms_username",(i=e.userInfo)==null?void 0:i.username),localStorage.setItem("ms_realname",(c=e.userInfo)==null?void 0:c.realname),localStorage.setItem("ms_user_id",(m=e.userInfo)==null?void 0:m.id),localStorage.setItem("ms_role_id",(n=e.userInfo)==null?void 0:n.roleId);let t=(w=(I=(y=_.currentRoute)==null?void 0:y.value)==null?void 0:I.query)==null?void 0:w.redirectTo;t&&!t.includes("/login")?_.push(t):_.push("/")})})};return N().clearTags(),(g,s)=>{const l=D,e=$,t=j,i=R("Right"),c=K,m=A;return b(),h("div",O,[d("div",P,[d("div",X,[d("div",z,F(u(f).siteFullTitle),1),o(m,{model:r,rules:V,ref_key:"login",ref:p,"label-width":"0px",class:"ms-content"},{default:a(()=>[o(t,{prop:"username"},{default:a(()=>[o(e,{modelValue:r.username,"onUpdate:modelValue":s[0]||(s[0]=n=>r.username=n),placeholder:"\u7528\u6237\u540D"},{prepend:a(()=>[o(l,{icon:u(L)},null,8,["icon"])]),_:1},8,["modelValue"])]),_:1}),o(t,{prop:"password"},{default:a(()=>[o(e,{type:"password",placeholder:"\u5BC6\u7801",modelValue:r.password,"onUpdate:modelValue":s[1]||(s[1]=n=>r.password=n),onKeyup:s[2]||(s[2]=S(n=>v(p.value),["enter"]))},{prepend:a(()=>[o(l,{icon:u(M)},null,8,["icon"])]),_:1},8,["modelValue"])]),_:1}),d("div",G,[o(l,{type:"primary",onClick:s[3]||(s[3]=n=>v(p.value))},{default:a(()=>[T(" \u767B \u5F55\xA0"),o(c,null,{default:a(()=>[o(i)]),_:1})]),_:1})])]),_:1},8,["model"])])]),u(f).companyName?(b(),h("div",H,F(u(f).companyName),1)):q("",!0)])}}});const te=U(Q,[["__scopeId","data-v-0fd4c22f"]]);export{te as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
import{m as t}from"./manage-list.8ab8e06b.js";import{g as s,e,d as r,a as i}from"./user.0bac8e4f.js";import{d as n,o,c as a,b as c}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";import"./send_request.cc43fdb9.js";const p={class:"container"},L=n({__name:"privilege-user-setting",setup(d){return(m,u)=>(o(),a("div",p,[c(t,{"list-func":s,"add-func":e,"edit-func":e,"delete-func":r,"export-func":i,"edit-permiss":"privilege-user-setting"},null,8,["list-func","add-func","edit-func","delete-func","export-func"])]))}});export{L as default};

View File

@@ -0,0 +1 @@
import{m}from"./manage-list.8ab8e06b.js";import{s}from"./send_request.cc43fdb9.js";import{d as o,o as n,c as p,b as a}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";function c(e){var r,i;let t=JSON.parse(JSON.stringify(e));return delete t.timestamp,Array.isArray(e.timestamp)&&e.timestamp.length==2&&(t.startTime=(r=e.timestamp[0])==null?void 0:r.getTime(),t.endTime=(i=e.timestamp[1])==null?void 0:i.getTime()),s({url:"/access/report/manage/getReportList",method:"GET",params:t})}function l(e){var r,i;let t=JSON.parse(JSON.stringify(e));return delete t.timestamp,Array.isArray(e.timestamp)&&e.timestamp.length==2&&(t.startTime=(r=e.timestamp[0])==null?void 0:r.getTime(),t.endTime=(i=e.timestamp[1])==null?void 0:i.getTime()),s({url:"/access/report/manage/exportReportList",method:"GET",params:t})}const u={class:"container"},h=o({__name:"report-log",setup(e){return(t,r)=>(n(),p("div",u,[a(m,{"list-func":c,"export-func":l,"edit-permiss":"privilege-user-setting"},null,8,["list-func","export-func"])]))}});export{h as default};

View File

@@ -0,0 +1 @@
import{bU as O,bV as S,bW as P,bX as j,bY as L,bP as b}from"./index.f859bf4e.js";import{v as N}from"./el-input.f35758e8.js";var o=O,g=Object.prototype.hasOwnProperty,x=Array.isArray,s={allowDots:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:o.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},E=function(i){return i.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},v=function(i,e){return i&&typeof i=="string"&&e.comma&&i.indexOf(",")>-1?i.split(","):i},A="utf8=%26%2310003%3B",D="utf8=%E2%9C%93",H=function(e,r){var n={},c=r.ignoreQueryPrefix?e.replace(/^\?/,""):e,u=r.parameterLimit===1/0?void 0:r.parameterLimit,t=c.split(r.delimiter,u),l=-1,a,f=r.charset;if(r.charsetSentinel)for(a=0;a<t.length;++a)t[a].indexOf("utf8=")===0&&(t[a]===D?f="utf-8":t[a]===A&&(f="iso-8859-1"),l=a,a=t.length);for(a=0;a<t.length;++a)if(a!==l){var d=t[a],p=d.indexOf("]="),h=p===-1?d.indexOf("="):p+1,y,m;h===-1?(y=r.decoder(d,s.decoder,f,"key"),m=r.strictNullHandling?null:""):(y=r.decoder(d.slice(0,h),s.decoder,f,"key"),m=o.maybeMap(v(d.slice(h+1),r),function(w){return r.decoder(w,s.decoder,f,"value")})),m&&r.interpretNumericEntities&&f==="iso-8859-1"&&(m=E(m)),d.indexOf("[]=")>-1&&(m=x(m)?[m]:m),g.call(n,y)?n[y]=o.combine(n[y],m):n[y]=m}return n},C=function(i,e,r,n){for(var c=n?e:v(e,r),u=i.length-1;u>=0;--u){var t,l=i[u];if(l==="[]"&&r.parseArrays)t=[].concat(c);else{t=r.plainObjects?Object.create(null):{};var a=l.charAt(0)==="["&&l.charAt(l.length-1)==="]"?l.slice(1,-1):l,f=parseInt(a,10);!r.parseArrays&&a===""?t={0:c}:!isNaN(f)&&l!==a&&String(f)===a&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(t=[],t[f]=c):a!=="__proto__"&&(t[a]=c)}c=t}return c},Q=function(e,r,n,c){if(!!e){var u=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,t=/(\[[^[\]]*])/,l=/(\[[^[\]]*])/g,a=n.depth>0&&t.exec(u),f=a?u.slice(0,a.index):u,d=[];if(f){if(!n.plainObjects&&g.call(Object.prototype,f)&&!n.allowPrototypes)return;d.push(f)}for(var p=0;n.depth>0&&(a=l.exec(u))!==null&&p<n.depth;){if(p+=1,!n.plainObjects&&g.call(Object.prototype,a[1].slice(1,-1))&&!n.allowPrototypes)return;d.push(a[1])}return a&&d.push("["+u.slice(a.index)+"]"),C(d,r,n,c)}},T=function(e){if(!e)return s;if(e.decoder!==null&&e.decoder!==void 0&&typeof e.decoder!="function")throw new TypeError("Decoder has to be a function.");if(typeof e.charset<"u"&&e.charset!=="utf-8"&&e.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var r=typeof e.charset>"u"?s.charset:e.charset;return{allowDots:typeof e.allowDots>"u"?s.allowDots:!!e.allowDots,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:s.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:s.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:s.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:s.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:s.comma,decoder:typeof e.decoder=="function"?e.decoder:s.decoder,delimiter:typeof e.delimiter=="string"||o.isRegExp(e.delimiter)?e.delimiter:s.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:s.depth,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:s.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:s.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:s.plainObjects,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:s.strictNullHandling}},_=function(i,e){var r=T(e);if(i===""||i===null||typeof i>"u")return r.plainObjects?Object.create(null):{};for(var n=typeof i=="string"?H(i,r):i,c=r.plainObjects?Object.create(null):{},u=Object.keys(n),t=0;t<u.length;++t){var l=u[t],a=Q(l,n[l],r,typeof i=="string");c=o.merge(c,a,r)}return r.allowSparse===!0?c:o.compact(c)},$=S,I=_,U=P,V={formats:U,parse:I,stringify:$};async function M({url:i,method:e="POST",params:r,useQS:n=!1,callback:c}){if(!i)return!1;const u=N.service({lock:!0,text:"\u8BF7\u7A0D\u5019",background:"rgba(0, 0, 0, 0.7)"});let t={baseURL:j.backendHost,url:i,method:e,withCredentials:!0};return e.toUpperCase()=="POST"?(t.headers={"content-type":"application/x-www-form-urlencoded"},t.data=n?V.stringify(r):r):e.toUpperCase()=="GET"&&(t.params=r),L(t).then(l=>{let a=l.data;if(!a.success)return b.error((a==null?void 0:a.msg)||"\u670D\u52A1\u5668\u9519\u8BEF"),null;let f=a.data;return typeof c=="function"&&c(f),f}).catch(l=>(console.error(l),b.error(l.message),!1)).finally(()=>{u.close()})}export{M as s};

View File

@@ -0,0 +1 @@
import{m as r}from"./manage-list.8ab8e06b.js";import{s as t}from"./send_request.cc43fdb9.js";import{d as a,o as n,c as s,b as u}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";function i(e){return t({url:"/shop/good/manage/getCategoryList",method:"GET",params:e})}function o(e){return t({url:"/shop/good/manage/editCategory",method:"POST",useQS:!0,params:e})}function c(e){return t({url:"/shop/good/manage/deleteCategory",method:"POST",useQS:!0,params:e})}function d(e){return t({url:"/shop/good/manage/exportCategoryList",method:"GET",params:e})}const m={class:"container"},L=a({__name:"shop-cate-setting",setup(e){return(p,f)=>(n(),s("div",m,[u(r,{"list-func":i,"add-func":o,"edit-func":o,"delete-func":c,"export-func":d,"edit-permiss":"shop-cate-setting"},null,8,["list-func","add-func","edit-func","delete-func","export-func"])]))}});export{L as default};

View File

@@ -0,0 +1 @@
import{m as n}from"./manage-list.8ab8e06b.js";import{s as e}from"./send_request.cc43fdb9.js";import{d as r,o as s,c as d,b as a}from"./index.f859bf4e.js";import"./el-overlay.1542ee54.js";import"./el-input.f35758e8.js";import"./el-progress.d53d438b.js";function u(o){return e({url:"/shop/good/manage/getGoodList",method:"GET",params:o})}function t(o){return e({url:"/shop/good/manage/editGood",method:"POST",useQS:!0,params:o})}function i(o){return e({url:"/shop/good/manage/deleteGood",method:"POST",useQS:!0,params:o})}function m(o){return e({url:"/shop/good/manage/exportGoodList",method:"GET",params:o})}const c={class:"container"},L=r({__name:"shop-good-setting",setup(o){return(p,f)=>(s(),d("div",c,[a(n,{"list-func":u,"add-func":t,"edit-func":t,"delete-func":i,"export-func":m,"edit-permiss":"shop-good-setting"},null,8,["list-func","add-func","edit-func","delete-func","export-func"])]))}});export{L as default};

View File

@@ -0,0 +1 @@
import{s as r}from"./send_request.cc43fdb9.js";function u({username:e,password:s}){return r({url:"/user/login",method:"POST",useQS:!0,params:{username:e,password:s}})}function a(e){return r({url:"/user/manage/getUserList",method:"GET",params:e})}function n(e){return r({url:"/user/manage/editUser",method:"POST",useQS:!0,params:e})}function o(e){return r({url:"/user/manage/deleteUser",method:"POST",useQS:!0,params:e})}function m(e){return r({url:"/user/manage/exportUserList",method:"GET",params:e})}export{m as a,o as d,n as e,a as g,u};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,9 @@
/*!
* Cropper.js v1.5.13
* https://fengyuanchen.github.io/cropperjs
*
* Copyright 2015-present Chen Fengyuan
* Released under the MIT license
*
* Date: 2022-11-20T05:30:43.444Z
*/.cropper-container{direction:ltr;font-size:0;line-height:0;position:relative;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.cropper-container img{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;height:100%;image-orientation:0deg;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.cropper-wrap-box,.cropper-canvas,.cropper-drag-box,.cropper-crop-box,.cropper-modal{bottom:0;left:0;position:absolute;right:0;top:0}.cropper-wrap-box,.cropper-canvas{overflow:hidden}.cropper-drag-box{background-color:#fff;opacity:0}.cropper-modal{background-color:#000;opacity:.5}.cropper-view-box{display:block;height:100%;outline:1px solid #39f;outline-color:#3399ffbf;overflow:hidden;width:100%}.cropper-dashed{border:0 dashed #eee;display:block;opacity:.5;position:absolute}.cropper-dashed.dashed-h{border-bottom-width:1px;border-top-width:1px;height:calc(100% / 3);left:0;top:calc(100% / 3);width:100%}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;height:100%;left:calc(100% / 3);top:0;width:calc(100% / 3)}.cropper-center{display:block;height:0;left:50%;opacity:.75;position:absolute;top:50%;width:0}.cropper-center:before,.cropper-center:after{background-color:#eee;content:" ";display:block;position:absolute}.cropper-center:before{height:1px;left:-3px;top:0;width:7px}.cropper-center:after{height:7px;left:0;top:-3px;width:1px}.cropper-face,.cropper-line,.cropper-point{display:block;height:100%;opacity:.1;position:absolute;width:100%}.cropper-face{background-color:#fff;left:0;top:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;right:-3px;top:0;width:5px}.cropper-line.line-n{cursor:ns-resize;height:5px;left:0;top:-3px}.cropper-line.line-w{cursor:ew-resize;left:-3px;top:0;width:5px}.cropper-line.line-s{bottom:-3px;cursor:ns-resize;height:5px;left:0}.cropper-point{background-color:#39f;height:5px;opacity:.75;width:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;right:-3px;top:50%}.cropper-point.point-n{cursor:ns-resize;left:50%;margin-left:-3px;top:-3px}.cropper-point.point-w{cursor:ew-resize;left:-3px;margin-top:-3px;top:50%}.cropper-point.point-s{bottom:-3px;cursor:s-resize;left:50%;margin-left:-3px}.cropper-point.point-ne{cursor:nesw-resize;right:-3px;top:-3px}.cropper-point.point-nw{cursor:nwse-resize;left:-3px;top:-3px}.cropper-point.point-sw{bottom:-3px;cursor:nesw-resize;left:-3px}.cropper-point.point-se{bottom:-3px;cursor:nwse-resize;height:20px;opacity:1;right:-3px;width:20px}@media (min-width: 768px){.cropper-point.point-se{height:15px;width:15px}}@media (min-width: 992px){.cropper-point.point-se{height:10px;width:10px}}@media (min-width: 1200px){.cropper-point.point-se{height:5px;opacity:.75;width:5px}}.cropper-point.point-se:before{background-color:#39f;bottom:-50%;content:" ";display:block;height:200%;opacity:0;position:absolute;right:-50%;width:200%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-hide{display:block;height:0;position:absolute;width:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}.info[data-v-cdea44c0]{text-align:center;padding:35px 0}.info-image[data-v-cdea44c0]{position:relative;margin:auto;width:100px;height:100px;background:#f8f8f8;border:1px solid #eee;border-radius:50px;overflow:hidden}.info-edit[data-v-cdea44c0]{display:flex;justify-content:center;align-items:center;position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.5);opacity:0;transition:opacity .3s ease}.info-edit i[data-v-cdea44c0]{color:#eee;font-size:25px}.info-image:hover .info-edit[data-v-cdea44c0]{opacity:1}.info-name[data-v-cdea44c0]{margin:15px 0 10px;font-size:24px;font-weight:500;color:#262626}.crop-demo-btn[data-v-cdea44c0]{position:relative}.crop-input[data-v-cdea44c0]{position:absolute;width:100px;height:40px;left:0;top:0;opacity:0;cursor:pointer}

View File

@@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title></title>
<link rel="stylesheet" href="https://at.alicdn.com/t/font_830376_qzecyukz0s.css">
<script type="module" crossorigin src="./assets/index.f859bf4e.js"></script>
<link rel="stylesheet" href="./assets/index.87e2e9b7.css">
</head>
<body>
<noscript>
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled.
Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>