-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripts.js
More file actions
68 lines (54 loc) · 2.38 KB
/
scripts.js
File metadata and controls
68 lines (54 loc) · 2.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// scripts.js
document.getElementById('pasteInbound').addEventListener('click', () => {
navigator.clipboard.readText().then(text => {
document.getElementById('inboundConfig').value = text;
adjustTextareaHeight(document.getElementById('inboundConfig'));
});
});
document.getElementById('pasteAddresses').addEventListener('click', () => {
navigator.clipboard.readText().then(text => {
document.getElementById('addresses').value = text;
adjustTextareaHeight(document.getElementById('addresses'));
});
});
document.getElementById('changeAddresses').addEventListener('click', () => {
let inboundConfig = document.getElementById('inboundConfig').value;
let addresses = document.getElementById('addresses').value.split('\n');
let output = '';
addresses.forEach(address => {
let config = inboundConfig;
if (config.startsWith('vmess://')) {
let decodedConfig = JSON.parse(atob(config.slice(8)));
decodedConfig.add = address;
config = 'vmess://' + btoa(JSON.stringify(decodedConfig));
} else {
config = config.replace(/@.*?:/, `@${address}:`);
}
output += config + '\n' + '\n';
});
let outputTextarea = document.getElementById('output');
outputTextarea.value = output.trim();
document.getElementById('outputGroup').classList.remove('hidden');
adjustTextareaHeight(outputTextarea);
});
document.getElementById('copyToClipboard').addEventListener('click', () => {
let output = document.getElementById('output').value;
navigator.clipboard.writeText(output).then(() => {
alert('Inbound configurations copied to clipboard!');
});
});
function adjustTextareaHeight(textarea) {
textarea.style.height = (textarea.scrollHeight) + 'px';
}
document.getElementById('inboundConfig').addEventListener('input', function() {
adjustTextareaHeight(this);
});
document.getElementById('addresses').addEventListener('input', function() {
adjustTextareaHeight(this);
});
document.getElementById('site').addEventListener('click', function () {
window.open('https://dailydigitalskills.online/', '_blank')
})
document.getElementById('youtube').addEventListener('click', function () {
window.open('https://www.youtube.com/channel/UCDBnd7heT6Gz6QgqtxvtuEw/', '_blank')
})