Tüm .config dosyaları ilk yedekleme
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 seeeeew
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -0,0 +1 @@
|
||||
{"file_hashes":[{"block_hashes":["G3ss67DNW3XC5D9QZFW42dtXDb7DrTOPr6XLcuOUD6E="],"block_size":4096,"path":"LICENSE"},{"block_hashes":["c+0RRu89at4TATYyMWEnYnpiixWVOdF8UCt5j27AQ1Q=","GPnyPccvbWzCKCEOle5iVOtD2sIuGbW6pW7IzaNnKLw="],"block_size":4096,"path":"aiwarningforsteam.user.js"}],"version":2}
|
||||
@@ -0,0 +1 @@
|
||||
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiRzNzczY3RE5XM1hDNUQ5UVpGVzQyZHRYRGI3RHJUT1ByNlhMY3VPVUQ2RSJ9LHsicGF0aCI6ImFpd2FybmluZ2ZvcnN0ZWFtLnVzZXIuanMiLCJyb290X2hhc2giOiJXQTNub19vVUR4N0NrckpyRzNTZkhhWU9KdDI5OGlXQU1iZTA3d3ZqS0l3In0seyJwYXRoIjoiaW1nL2ljb24xMjgucG5nIiwicm9vdF9oYXNoIjoiaVRUS2RjNi1INlhjOTF3ZUlCZTh6N0JPUmxUZ3dyTElIaFBBWGJHZHFSUSJ9LHsicGF0aCI6Im1hbmlmZXN0Lmpzb24iLCJyb290X2hhc2giOiJmODVHNXI2LUc5V2FOTDI4Z1Ytc1F0TU85YTVFR2VTZTRIOE5jS0xDTllNIn1dLCJmb3JtYXQiOiJ0cmVlaGFzaCIsImhhc2hfYmxvY2tfc2l6ZSI6NDA5Nn1dLCJpdGVtX2lkIjoiY2xlZ2NvYmhlcHBubmlnYWFlZWxma2VvbWpjbmdtbmgiLCJpdGVtX3ZlcnNpb24iOiIxLjAuMiIsInByb3RvY29sX3ZlcnNpb24iOjF9","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"R0qwQJUR5yV84YRtSW2NSdzPw0xRCTO8n_V8oQelxveewDUwuV1sMjNXGaEIom0l27GMM5T_I7O161enUVC4qQVxiDIIyMLfoUujA0_eGHHe_cUANwGw-VDe8npO5TN765zM_xRxh0uY4N2mUOtEN1zLkjgWEHKKquqVgJSolsU1Vd-bDGgzJBU5m1NV-QfBU-IG4Q9z_iaSWSeY3ADeXkalSoBeZm7sDLuqP_-mMc_kbDGMpTXjSpkOo2JdAAolSS2oveAJbYWvOIuDp579SRWaoVSaSnYTOvCSzDSZsvlFFRYsOugwykcsGWD2qJ_DkCqjsmOC8DmtBH-4Bg3mXw"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"hDSUTMMwCgLIzrw3Wz7R3VosBd_U9xNePZkyFBWi3GliThUJYtzYhO3IPGZPqoFB8NyXM-M51J0_FkM0a_Fi-Uhao_GVPgmrppm0KWRq7XWx6WN67v-ZkiSJEHn82JP5Xu3JGWmNWQaYFP3-fPRCRnJfQoZbrWrWyi5pgDdHbYQa5REgQSGVUCulyspubki_E-u6qwhhBBPtj4SnoHuYgXnR6kulFXArIKtK685QZ_ZFNMUY9ykEVcaryGPqqTjpWE2tShMDKP7ghs2BtISYx3_IebDjW-STOu-cvm1RWAk-D1EkbfihtADgzq3bJW2_yMYFtdX7zIhomOzw4RsRMA"}]}}]
|
||||
@@ -0,0 +1,203 @@
|
||||
// ==UserScript==
|
||||
// @name AI warning for Steam
|
||||
// @namespace https://github.com/seeeeew/aiwarningforsteam
|
||||
// @version 1.0.2
|
||||
// @description Shows the AI Generated Content Disclosure on Steam store pages as a modal popup.
|
||||
// @author seeeeew
|
||||
// @homepage https://github.com/seeeeew/aiwarningforsteam
|
||||
// @match https://store.steampowered.com/app/*
|
||||
// @icon https://raw.githubusercontent.com/seeeeew/aiwarningforsteam/refs/heads/main/img/icon128.png
|
||||
// @grant none
|
||||
// @run-at document-end
|
||||
// @updateURL https://github.com/seeeeew/aiwarningforsteam/raw/refs/heads/main/aiwarningforsteam.user.js
|
||||
// @downloadURL https://github.com/seeeeew/aiwarningforsteam/raw/refs/heads/main/aiwarningforsteam.user.js
|
||||
// @supportURL https://github.com/seeeeew/aiwarningforsteam/issues
|
||||
// @license MIT
|
||||
// ==/UserScript==
|
||||
|
||||
(function() {
|
||||
|
||||
const msg = {
|
||||
aidisclosure: {
|
||||
schinese: "AI 生成内容披露",
|
||||
tchinese: "AI 生成內容聲明",
|
||||
japanese: "AI生成コンテンツの開示",
|
||||
koreana: "AI 생성 콘텐츠 사용 공개",
|
||||
thai: "การเปิดเผยข้อมูลเกี่ยวกับเนื้อหาที่สร้างด้วย AI",
|
||||
bulgarian: "Оповестяване за съдържание, генерирано от ИИ",
|
||||
czech: "Informace o obsahu vytvářeném AI",
|
||||
danish: "Meddelelse om AI-genereret indhold",
|
||||
german: "Offenlegung von KI-generierten Inhalten",
|
||||
english: "AI Generated Content Disclosure",
|
||||
spanish: "Información sobre contenido generado por IA",
|
||||
latam: "Información sobre contenido generado por IA",
|
||||
greek: "Γνωστοποίηση περιεχομένου που δημιουργήθηκε από τεχνητή νοημοσύνη (AI)",
|
||||
french: "Divulgation de contenu généré par IA",
|
||||
italian: "Divulgazione dei contenuti generati dall'IA",
|
||||
indonesian: "Pernyataan Konten Buatan AI",
|
||||
hungarian: "Nyilatkozat MI generálta tartalomról",
|
||||
dutch: "Informatie over door AI gegenereerde inhoud",
|
||||
norwegian: "Opplysning om AI-generert innhold",
|
||||
polish: "Oświadczenie w sprawie treści generowanych przez SI",
|
||||
portuguese: "Divulgação de conteúdo gerado por IA",
|
||||
brazilian: "Divulgação de conteúdo gerado por IA",
|
||||
romanian: "Informații despre conținutul generat de IA",
|
||||
russian: "Информация об ИИ-контенте",
|
||||
finnish: "Tiedote tekoälysisällöstä",
|
||||
swedish: "Upplysning om AI-genererat innehåll",
|
||||
turkish: "Yapay Zekâ İçeriği Açıklaması",
|
||||
vietnamese: "Công bố về nội dung tạo bởi AI",
|
||||
ukrainian: "Розкриття інформації щодо вмісту, згенерованого ШІ",
|
||||
},
|
||||
close: {
|
||||
schinese: "关闭",
|
||||
tchinese: "關閉",
|
||||
japanese: "閉じる",
|
||||
koreana: "닫기",
|
||||
thai: "ปิด",
|
||||
bulgarian: "Затваряне",
|
||||
czech: "Zavřít",
|
||||
danish: "Luk",
|
||||
german: "Schließen",
|
||||
english: "Close",
|
||||
spanish: "Cerrar",
|
||||
latam: "Cerrar",
|
||||
greek: "Κλείσιμο",
|
||||
french: "Fermer",
|
||||
italian: "Chiudi",
|
||||
indonesian: "Tutup",
|
||||
hungarian: "Bezárás",
|
||||
dutch: "Sluiten",
|
||||
norwegian: "Lukk",
|
||||
polish: "Zamknij",
|
||||
portuguese: "Fechar",
|
||||
brazilian: "Fechar",
|
||||
romanian: "Închide",
|
||||
russian: "Закрыть",
|
||||
finnish: "Sulje",
|
||||
swedish: "Stäng",
|
||||
turkish: "Kapat",
|
||||
vietnamese: "Đóng",
|
||||
ukrainian: "Закрити",
|
||||
}
|
||||
// Currently latam and brazilian aren't recognized and are only included
|
||||
// for completeness, but we can ignore that for now, because both their
|
||||
// strings are identical to spanish and portuguese respectively.
|
||||
}
|
||||
|
||||
function findAIDisclosureHeader() {
|
||||
const titles = Object.values(msg.aidisclosure);
|
||||
return [...document.querySelectorAll(".game_page_autocollapse > #game_area_content_descriptors > h2")].find(element => titles.includes(element.textContent));
|
||||
}
|
||||
|
||||
function injectStyle() {
|
||||
const style = document.createElement("style");
|
||||
style.innerHTML = `
|
||||
.aiwarning_container {
|
||||
position: fixed;
|
||||
inset: 0px;
|
||||
backdrop-filter: blur(25px);
|
||||
z-index: 1999; /* cookie consent popup has 2000 */
|
||||
background-color: rgba(0, 0, 0, 0.6);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.aiwarning_container .newmodal {
|
||||
box-shadow: 0px 0px 10px #000000;
|
||||
position: relative;
|
||||
}
|
||||
.aiwarning_container .title_text {
|
||||
margin-right: 20px;
|
||||
}
|
||||
.aiwarning_container .newmodal_content {
|
||||
max-height: 350px;
|
||||
}
|
||||
.aiwarning_watermark {
|
||||
position: absolute;
|
||||
left: 10px;
|
||||
bottom: 10px;
|
||||
color: white;
|
||||
opacity: 0.25;
|
||||
text-decoration: none;
|
||||
font-size: 12px;
|
||||
}
|
||||
.aiwarning_watermark:hover {
|
||||
opacity: 0.6;
|
||||
}
|
||||
`;
|
||||
document.head.append(style);
|
||||
return style;
|
||||
}
|
||||
|
||||
function getMetadata() {
|
||||
const metadata = {};
|
||||
if (typeof GM_info !== "undefined") {
|
||||
metadata.homepage = GM_info.script.homepage;
|
||||
metadata.name = GM_info.script.name;
|
||||
metadata.version = GM_info.script.version;
|
||||
} else if (typeof browser !== "undefined") {
|
||||
metadata.homepage = browser.runtime.getManifest().homepage_url;
|
||||
metadata.name = browser.runtime.getManifest().name;
|
||||
metadata.version = browser.runtime.getManifest().version;
|
||||
} else if (typeof chrome !== "undefined") {
|
||||
metadata.homepage = chrome.runtime.getManifest().homepage_url;
|
||||
metadata.name = chrome.runtime.getManifest().name;
|
||||
metadata.version = chrome.runtime.getManifest().version;
|
||||
}
|
||||
return metadata;
|
||||
}
|
||||
|
||||
function findKeyForValue(object, value) {
|
||||
return Object.keys(object).find(key => object[key] === value);
|
||||
}
|
||||
|
||||
function createWarning(header) {
|
||||
const style = injectStyle();
|
||||
const {homepage, name, version} = getMetadata();
|
||||
const language = findKeyForValue(msg.aidisclosure, header.textContent);
|
||||
const container = document.createElement("div");
|
||||
container.classList.add("aiwarning_container");
|
||||
const appname = document.querySelector("#appHubAppName")?.textContent;
|
||||
const title = header.innerHTML + (appname ? " — " + appname : "");
|
||||
container.innerHTML = `
|
||||
<div class="newmodal">
|
||||
<div class="modal_top_bar"></div>
|
||||
<div class="newmodal_header_border">
|
||||
<div class="newmodal_header">
|
||||
<div class="newmodal_close"></div>
|
||||
<div class="title_text">${title}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="newmodal_content_border">
|
||||
<div class="newmodal_content">
|
||||
<div class="newmodal_prompt_description"></div>
|
||||
<div class="newmodal_buttons">
|
||||
<div class="btn_blue_steamui btn_medium aiwarning_close">
|
||||
<span>${msg.close[language]}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a href="${homepage}" class="aiwarning_watermark">${name} v${version}</a>
|
||||
</div>
|
||||
`;
|
||||
container.querySelector(".newmodal_prompt_description").append(...[...header.parentNode.childNodes].filter(node => node !== header).map(node => node.cloneNode(true)));
|
||||
function closeWarning() {
|
||||
container.remove();
|
||||
style.remove();
|
||||
}
|
||||
container.querySelectorAll(".newmodal_close, .aiwarning_close").forEach(element => element.addEventListener("click", closeWarning));
|
||||
container.addEventListener("click", event => {
|
||||
if (event.target === container) closeWarning();
|
||||
});
|
||||
document.body.append(container);
|
||||
}
|
||||
|
||||
const header = findAIDisclosureHeader();
|
||||
const warning = document.querySelector(".aiwarning_container");
|
||||
if (header && !warning) {
|
||||
createWarning(header);
|
||||
}
|
||||
|
||||
})();
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.4 KiB |
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"browser_specific_settings": {
|
||||
"gecko": {
|
||||
"data_collection_permissions": {
|
||||
"required": [ "none" ]
|
||||
},
|
||||
"id": "{29428906-aec3-11f0-beb4-6f7e24e82795}"
|
||||
}
|
||||
},
|
||||
"content_scripts": [ {
|
||||
"js": [ "aiwarningforsteam.user.js" ],
|
||||
"matches": [ "*://store.steampowered.com/app/*" ]
|
||||
} ],
|
||||
"description": "Show the AI Generated Content Disclosure on Steam store pages as a modal popup.",
|
||||
"homepage_url": "https://github.com/seeeeew/aiwarningforsteam",
|
||||
"icons": {
|
||||
"128": "img/icon128.png"
|
||||
},
|
||||
"key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwGKXBxwMtuoMbnGbZ9bEywfttrZeNtJ1e8XhS/GR0RSR2TIVNmaL22f2MnAn5R77cltyOG2ND/9P7C/6V0ZyKHlr/0p5Ouo0agYXgrZ6L5PkDpoIZkQdTtlfX3MtdrdXJEI5/4E5wHf8KfE6F80e44cD0oc26sa3NaY8rbJNOkZx/sfmr2AyTSiZFx4/T7tVNmDYHqTN8BLoq8g17GTCDreiO/RzqtqWE5eEdoK1LISJNlOkkXfG2uubgVDvBJ37ANf01eI4DgSoVz5SNPV8irDMuABH5PBZVW9852s8OXtz7Lc6Gi0nDeVCKN9pCHqmJWEuXDuAzNtjcvglYe4HjQIDAQAB",
|
||||
"manifest_version": 3,
|
||||
"name": "AI warning for Steam",
|
||||
"short_name": "AI warning",
|
||||
"update_url": "https://clients2.google.com/service/update2/crx",
|
||||
"version": "1.0.2"
|
||||
}
|
||||
Reference in New Issue
Block a user