-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpopup.js
78 lines (70 loc) · 1.85 KB
/
popup.js
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
69
70
71
72
73
74
75
76
77
78
import { generateCidrIPv4 } from './generators/generate-cidr-ipv4.js';
import { generateCidrIPv6 } from './generators/generate-cidr-ipv6.js';
import { generateIPv4 } from './generators/generate-ipv4.js';
import { generateIPv6 } from './generators/generate-ipv6.js';
import { generateTimestamp } from './generators/generate-timestamp.js';
import { generateDate } from './generators/generate-date.js';
import { generateTimeAndDate } from './generators/generate-time-and-date.js';
import { generateMac } from './generators/generate-mac.js';
const generators = [
{
id: 'generate-ipv4',
generate: generateIPv4,
},
{
id: 'generate-ipv6',
generate: generateIPv6,
},
{
id: 'generate-cidr-ipv4',
generate: generateCidrIPv4,
},
{
id: 'generate-cidr-ipv6',
generate: generateCidrIPv6,
},
{
id: 'generate-mac',
generate: generateMac,
},
{
id: 'generate-timestamp',
generate: generateTimestamp,
},
{
id: 'generate-date',
generate: generateDate,
},
{
id: 'generate-time-and-date',
generate: generateTimeAndDate,
},
];
const updateLastCopiedValue = (() => {
const lastCopiedValueContainer = document.getElementById('last-copied-value');
return text => {
chrome.storage.local.set({
lastValue: text,
});
lastCopiedValueContainer.innerText = text;
};
})();
function copyToClipboard(text) {
return navigator.clipboard.writeText(text);
}
generators.forEach(generator => {
const button = document.getElementById(generator.id);
button.addEventListener('click', () => {
const text = generator.generate();
copyToClipboard(text).then(() => {
updateLastCopiedValue(text);
console.log('Copied', text);
});
});
});
chrome.storage.local.get(['lastValue'], ({ lastValue }) => {
console.log(lastValue);
if (lastValue) {
updateLastCopiedValue(lastValue);
}
});