JSON structure
parent
d384a11e83
commit
3ac758d73b
55
borderify.js
55
borderify.js
|
@ -1,45 +1,64 @@
|
||||||
|
function createEventJSON(eventType, data) {
|
||||||
|
const timeStamp = new Date().toISOString();
|
||||||
|
return {
|
||||||
|
"@version": 1,
|
||||||
|
"type": `browserext.${eventType}`,
|
||||||
|
"TimeStamp": timeStamp,
|
||||||
|
"data": data,
|
||||||
|
"@timestamp": timeStamp
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
document.addEventListener( "keydown", (event) => {
|
document.addEventListener( "keydown", (event) => {
|
||||||
const key = event.key;
|
const key = event.key;
|
||||||
const code = event.code;
|
const code = event.code;
|
||||||
|
let description;
|
||||||
|
|
||||||
if (key.match(/^\p{Number}$/u)) {
|
if (key.match(/^\p{Number}$/u)) {
|
||||||
console.log(`Клавиша: number`);
|
description = "number";
|
||||||
}
|
}
|
||||||
else if (key.match(/^\p{Letter}$/u)) {
|
else if (key.match(/^\p{Letter}$/u)) {
|
||||||
console.log(`Клавиша: letter`);
|
description = "letter";
|
||||||
}
|
}
|
||||||
else if (key.match(/^\p{Punctuation}$|^\p{Symbol}$/u)) {
|
else if (key.match(/^\p{Punctuation}$|^\p{Symbol}$/u)) {
|
||||||
console.log(`Клавиша: symbol`);
|
description = "symbol";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
console.log(`Клавиша: ${key} Код: ${code}`);
|
description = `Клавиша: ${key} Код: ${code}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const eventData = {description};
|
||||||
|
console.log(JSON.stringify(createEventJSON('keydown', eventData)));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
document.addEventListener( "mousedown", (event) => {
|
document.addEventListener( "mousedown", (event) => {
|
||||||
console.log(`Клик мышью: ${event.button}`)
|
const eventData = { button: event.button, description: `Клик мышью: ${event.button}`};
|
||||||
|
console.log(JSON.stringify(createEventJSON('mousedown', eventData)));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
document.addEventListener( "click", (event) => {
|
document.addEventListener( "click", (event) => {
|
||||||
const clickedElement = event.target;
|
const clickedElement = event.target;
|
||||||
const tag = clickedElement.tagName;
|
const tag = clickedElement.tagName;
|
||||||
const id = clickedElement.id ? clickedElement.id : "отсутствует";
|
const id = clickedElement.id || "отсутствует";
|
||||||
const className = clickedElement.className ? clickedElement.className : "отсутствует";
|
const className = clickedElement.className || "отсутствует";
|
||||||
|
let eventData;
|
||||||
|
|
||||||
if (tag === 'A') {
|
if (tag === 'A') {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
const href = clickedElement.href;
|
const href = clickedElement.href;
|
||||||
|
eventData = { tag, id, className, href, description: "Клик по ссылке" };
|
||||||
|
|
||||||
|
localStorage.setItem('clickedElementInfo', JSON.stringify(eventData));
|
||||||
|
console.log(JSON.stringify(createEventJSON('click', eventData)));
|
||||||
|
|
||||||
localStorage.setItem('clickedElementInfo', `Тэг: ${tag}, ID: ${id}, Класс: ${className} Ссылка: ${href}`)
|
|
||||||
|
|
||||||
navigateWithPromise(href);
|
navigateWithPromise(href);
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (tag === 'INPUT') {
|
else if (tag === 'INPUT') {
|
||||||
const placeholder = clickedElement.placeholder ? clickedElement.placeholder : "отсутствует";
|
const placeholder = clickedElement.placeholder || "отсутствует";
|
||||||
console.log(`Тэг: ${tag}, ID: ${id}, Класс: ${className}, Плейсхолдер: ${placeholder}`)
|
eventData = { tag, id, className, placeholder, description: "Клик по полю ввода" };
|
||||||
|
console.log(JSON.stringify(createEventJSON('click', eventData)));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -73,16 +92,10 @@ document.addEventListener( "copy", (event) => {
|
||||||
const pageUrl = window.location.href;
|
const pageUrl = window.location.href;
|
||||||
|
|
||||||
const selectedText = window.getSelection().toString();
|
const selectedText = window.getSelection().toString();
|
||||||
|
let outputText = selectedText.length > 50 ? selectedText.substring(0, 49) + '…' : selectedText;
|
||||||
|
|
||||||
if (selectedText.length > 0) {
|
if (selectedText.length > 0) {
|
||||||
let outputText;
|
const eventData = { selectedText: outputText, pageUrl, description: "Скопирован текст" };
|
||||||
|
console.log(JSON.stringify(createEventJSON('copy', eventData)));
|
||||||
if (selectedText.length > 50) {
|
|
||||||
outputText = selectedText.substring(0, 49) + '…';
|
|
||||||
} else {
|
|
||||||
outputText = selectedText;
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log(`Скопирован текст: ${outputText}, Скопировано из: ${pageUrl}`)
|
|
||||||
}
|
}
|
||||||
});
|
});
|
Loading…
Reference in New Issue