add webclientv2

This commit is contained in:
lejianwen
2024-11-16 18:33:02 +08:00
parent c7e69aa8a5
commit e09fa17013
93 changed files with 217848 additions and 0 deletions

39881
resources/web2/js/dist/index.js vendored Normal file

File diff suppressed because it is too large Load Diff

82
resources/web2/js/dist/ljw.js vendored Normal file
View File

@@ -0,0 +1,82 @@
window._gwen = {}
window._gwen.kv = {}
const apiserver = localStorage.getItem('api-server')
function stringToUint8Array(str) {
var arr = [];
for (var i = 0, j = str.length; i < j; ++i) {
arr.push(str.charCodeAt(i));
}
var tmpUint8Array = new Uint8Array(arr);
return tmpUint8Array
}
function getQueryVariable() {
const query = window.location.hash.substring(3);
const vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
window._gwen.kv[pair[0]] = pair[1]
}
}
getQueryVariable()
const id = window._gwen.kv.id || ''
if (id) {
localStorage.setItem('remote-id', id)
}
const share_token = window._gwen.kv.share_token || ''
if (share_token) {
fetch(apiserver + "/api/shared-peer", {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({share_token})
}).then(res => res.json()).then(res => {
if (res.code === 0) {
localStorage.setItem('custom-rendezvous-server', res.data.id_server)
localStorage.setItem('key', res.data.key)
const peer = res.data.peer
localStorage.setItem('remote-id', peer.info.id)
peer.tmppwd = stringToUint8Array(window.atob(peer.tmppwd)).toString()
const oldPeers = JSON.parse(localStorage.getItem('peers')) || {}
oldPeers[peer.info.id] = peer
localStorage.setItem('peers', JSON.stringify(oldPeers))
}
})
}
let fetching = false
export function getServerConf(token) {
if (!token) {
return
}
const prefix = 'wc-'
console.log('getServerConf', token)
if (fetching) {
return
}
fetching = true
fetch(apiserver + "/api/server-config-v2", {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + token
}
}
).then(res => res.json()).then(res => {
fetching = false
if (res.code === 0) {
if (!localStorage.getItem(prefix + 'custom-rendezvous-server') || !localStorage.getItem('key')) {
localStorage.setItem(prefix + 'custom-rendezvous-server', res.data.id_server)
localStorage.setItem(prefix + 'key', res.data.key)
}
}
}).catch(_ => {
fetching = false
})
}

102
resources/web2/js/dist/vendor.js vendored Normal file

File diff suppressed because one or more lines are too long