This commit is contained in:
9700X_PC 2024-12-16 15:59:56 +09:00
parent 55a7deff69
commit 54543888b8
319 changed files with 2973 additions and 489 deletions

2463
app.log

File diff suppressed because one or more lines are too long

Binary file not shown.

1
respones1.json Normal file

File diff suppressed because one or more lines are too long

103
src/api_worker.py Normal file
View File

@ -0,0 +1,103 @@
from PySide6.QtCore import QObject, QRunnable, Signal, Slot
import requests
import logging
from deep_translator import GoogleTranslator
# WorkerSignals 클래스 정의
class WorkerSignals(QObject):
result = Signal(int, dict) # 성공 신호: (행 번호, API 결과)
error = Signal(int, str) # 실패 신호: (행 번호, 오류 메시지)
finished = Signal() # 작업 완료 신호
# APICallWorker 클래스 정의
class APICallWorker(QRunnable):
def __init__(self, row, product_id, image_url, db_manager, rapid_api_url, headers, logger):
super().__init__()
self.row = row
self.product_id = product_id
self.image_url = image_url
self.db_manager = db_manager
self.rapid_api_url = rapid_api_url
self.headers = headers
self.logger = logger
self.signals = WorkerSignals()
self.gtranslator = GoogleTranslator(source="zh-CN", target="ko")
@Slot()
def run(self):
try:
# API 호출
querystring = {"imgUrl": self.image_url, "pageSize": "10"}
response = requests.get(self.rapid_api_url, headers=self.headers, params=querystring)
response.raise_for_status()
# 결과 처리
api_response = response.json()
top_item = self.select_top_item(api_response)
if top_item:
# DB 업데이트
self.db_manager.update_item({
"id": self.product_id,
"Taoid": top_item["itemId"],
"Tao_URL": f"https://item.taobao.com/item.htm?id={top_item['itemId']}",
"Tao_image_url": top_item["image"],
"Tao_price": top_item["price"],
"TaoTitle": top_item["title"],
"translatedTitle": self.translate_name(top_item["title"]),
})
# 성공 결과 전달
self.signals.result.emit(self.row, top_item)
else:
self.signals.error.emit(self.row, "상위 상품 없음")
except requests.exceptions.RequestException as e:
self.logger.log(f"API 호출 실패: {e}", level=logging.ERROR, exc_info=True)
self.signals.error.emit(self.row, "API 호출 실패")
finally:
self.signals.finished.emit()
def select_top_item(self, api_response):
try:
result_list = api_response.get("result", {}).get("resultList", [])
if not result_list:
return None
items = [
{
"itemId": entry["item"]["itemId"],
"image": f"https:{entry['item']['image']}",
"title": entry["item"]["title"],
"price": float(entry["item"]["sku"]["def"]["price"])
}
for entry in result_list if "item" in entry
]
sorted_items = sorted(items, key=lambda x: x["price"])
return sorted_items[0] if sorted_items else None
except Exception as e:
self.logger.log(f"API 응답 처리 중 오류: {e}", level=logging.ERROR, exc_info=True)
return None
def translate_name(self, text: str) -> str:
"""
중국어 텍스트를 한국어로 번역하는 메서드
:param text: 번역할 텍스트
:return: 번역된 한국어 텍스트
"""
if not text.strip():
self.logger.log(f"빈 텍스트가 입력되었습니다.", level=logging.WARNING)
return ""
try:
# 번역 수행
result = self.gtranslator.translate(text)
self.logger.log(f"번역 성공: {text} -> {result}", level=logging.DEBUG)
return result
except Exception as e:
self.logger.log(f"번역 중 오류 발생: {e}", level=logging.ERROR, exc_info=True)
return "번역 실패"

View File

@ -1 +0,0 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiUGIwc2tBVUxaUzFqWldTQnctV0hIRkltRlhVcExiZDlUcVkwR2ZHSHBWcyJ9LHsicGF0aCI6ImNybC1zZXQiLCJyb290X2hhc2giOiJCanZVQnV4RzYzQUs5WDBxcTVFaDBlTUJpeGRtbXh3eGw0X3ZwcEV0V0VJIn0seyJwYXRoIjoibWFuaWZlc3QuanNvbiIsInJvb3RfaGFzaCI6ImMwUmo2bTIwSm5OUzB5N1B6REw3V19OYzlZUm1pM1Fta1htR1ptLThpajQifV0sImZvcm1hdCI6InRyZWVoYXNoIiwiaGFzaF9ibG9ja19zaXplIjo0MDk2fV0sIml0ZW1faWQiOiJoZm5rcGltbGhoZ2llYWRkZ2ZlbWpob2ZtZmJsbW5pYiIsIml0ZW1fdmVyc2lvbiI6IjkzOTIiLCJwcm90b2NvbF92ZXJzaW9uIjoxfQ","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"rLZsZDPKsiEPDOB7092uDS5DZnmMe7sC2F3c3EY_cFyPDGOZuTIk6tSE9eF3gmfx_jccA8dpvXl9m6rrUmafx2eP9go520g2JrpkIJa9qCyCPKP2Z2G3en5Wa24_E0HOjBUaamUfdmiDLvm2YnwJRHWebZ6YcEV5JGaS46aCM-dsXBpslBAiD5VLNU9WvryiZexqfeX2mktLq1nh7HTLQwbz4itJbFWMugd4MZkwWY0Z3VApWawU6-uQURVeu3w_ixx71ImVJ2VF8ICe0lQGAdXVjnITnuJnfdMECLa8M6ZolF0HrzS8u0e37k_4Vq0fA-E3BR4DLS2_i1vDB7frcw"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"Lp79dHxu7b_FX1K1Z894TGU8HfmltAQtP6mnuLAy3RagKgqSMUf4URgFO5KMS7-v4nT02EG4YI5v8uhbpHPrGztMwScgwBPTgN3InhF7NWz0jwtgADB8rV7d1ajExXX6vSgegugG7dVn2q560zX6JRSTCzG2ndT5_dmbvS4TivueU-4OEhVLl2HHkHEN6sEheA03GN4h_qKndKMHpTwCebUVGqjtgKrAPrmx-9qB94t8sXnSliqIMgdjM7ih7Y3El3xrt2kRbMNN3Kpr9D_UNYTS4Kceku6dilpC06plHxiJFDfRDQUhI5SJjhuVHq7E5HxcKOuIRVKMufoLl43xjQ"}]}}]

View File

@ -1 +0,0 @@
1.84cb6f109deb8d6a5335120f793d6e2fef46f13da33d1d64ed9214bf3071d6db

View File

@ -1,5 +0,0 @@
{
"manifest_version": 2,
"name": "crl-set-5603823087361325227.data",
"version": "9392"
}

View File

@ -1,27 +0,0 @@
// Copyright 2015 The Chromium Authors. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -1 +0,0 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiUGIwc2tBVUxaUzFqWldTQnctV0hIRkltRlhVcExiZDlUcVkwR2ZHSHBWcyJ9LHsicGF0aCI6ImNybC1zZXQiLCJyb290X2hhc2giOiI2bGxFc25OdW5maF9DYVJWQVRQaldHM1M5aW1JWFA3d1BtOGtPSHlaUWlFIn0seyJwYXRoIjoibWFuaWZlc3QuanNvbiIsInJvb3RfaGFzaCI6IjJvNlFQSmp6TXJUbTI0SkUzZGhQUjdfM1BFUTRqRnoySVg2U3lfdWhJbG8ifV0sImZvcm1hdCI6InRyZWVoYXNoIiwiaGFzaF9ibG9ja19zaXplIjo0MDk2fV0sIml0ZW1faWQiOiJoZm5rcGltbGhoZ2llYWRkZ2ZlbWpob2ZtZmJsbW5pYiIsIml0ZW1fdmVyc2lvbiI6IjkzOTMiLCJwcm90b2NvbF92ZXJzaW9uIjoxfQ","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"X9euR2K61cwUnR1LIk4lhlRqD62MxR3yW5LkBkRxHAY7L4xXzQPnVjwxPx0AfYpQNu1cPcP1scO2SEa07Btw8y_qKx94f-hjsaq-1ZoIowUgjZSAA1uirAPunrMyD_Vy_jvcDe5wkMW_pSn4yxiO_vhuYdrjRlQ9NMbsJWoSkyWUXSQSBeRYQg9oA1ZpBj-aHQvtHPjH5MJOiZvGfjWK2KADeGUroR1GL-0WclAebP_MAFckMnYYgbcWKlamB6qDvwcLWHoXfCxDOgmIofLwhyA7vTDSuy0wRuQ3gojoAy-0HSa-8vucZ6wwL1EQ0JSjqc7f9_7ELS4rZqm_mpyFfw"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"N9UrownDFkGRJ4qJXayRac2DAWtTakBtePfZrS1NHNGt4vXVl9LSlrCR2hbtw3ivX5CKoEdp_HlzB2EAxLMaPOQ1yXlDv0Ev2YCqB2sk1c9g8FzB995Br5XQDsp5awL2rEGTcA2gbRmYYA7Ktfp5icfhRTbOQLb5ppFBmK9u3CSBb2wRVQOL-iziEIwVh1weR7YmLShtOFuoxktkGtcILzJmmGSGxOZBCW0Uh1fHRzRWxpVN-1lWpbJqT4DoFxNs0NeBjts7OlaZyLEesrtULvy383546AmNAHSTDQSDepYquDhFo69ZNnawRA_RZ9QHPWQvBvMrXx0fYhDwm0akfQ"}]}}]

View File

@ -1 +0,0 @@
1.325b6cac521a90a2004e79359fba56e5fe1bf5091a47e6c1aead76977b1532b0

View File

@ -1,5 +0,0 @@
{
"manifest_version": 2,
"name": "crl-set-10509878343749934609.data",
"version": "9393"
}

View File

@ -0,0 +1 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiUGIwc2tBVUxaUzFqWldTQnctV0hIRkltRlhVcExiZDlUcVkwR2ZHSHBWcyJ9LHsicGF0aCI6ImNybC1zZXQiLCJyb290X2hhc2giOiJ5R3ZDT2hDU1MwZ0tVelZ4V2xXOUlyYzdnd3I4RjV2MXItYmZ5UFRHN1JJIn0seyJwYXRoIjoibWFuaWZlc3QuanNvbiIsInJvb3RfaGFzaCI6IkhtdzBFR19nbEtTVFpNMGlCYkFKWWF4LXVsYXdNOEJWS2NOUVJrTmM3bWcifV0sImZvcm1hdCI6InRyZWVoYXNoIiwiaGFzaF9ibG9ja19zaXplIjo0MDk2fV0sIml0ZW1faWQiOiJoZm5rcGltbGhoZ2llYWRkZ2ZlbWpob2ZtZmJsbW5pYiIsIml0ZW1fdmVyc2lvbiI6IjkzOTYiLCJwcm90b2NvbF92ZXJzaW9uIjoxfQ","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"On1Z_1cH_Wpx5vKeMC_5IwAjdk2z41hGhGnbdG21cqQFz7Y_f5ynycRwcP-mdpBhcJ_ygMDQvj-M_aMOabbG1i2640Atkq4q4TeYvuPG0BCdtaIHJRw-q9AJ85LkBjNokh_xH-lKtdpm7BxGeyQ44XC_V-zyhhy20rr9c9bY0ke-8ni0qyLDX1ct3rqCpefjqzRm0VdVmHgO5aQAs_1vXbX43mfcTijqjKpd2MfgvoZlhaxWwrZQ0RiAxBot5r9xA7h2suV354V86kMObQNPpL7CR9erUShoSJnb9AAngl10ri06GgNBm8SS-efn6GjLJ6yvF7x7tTRcUmPntRA1vA"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"cd9a30C2nbBqK6xtpxVOgDyG4H9czL9KBvmVbN7d13UwKhunNFD0Wdwz2yVaCAf6C1dbmUi6crk6r930tWHQQTwr0Df1yh04qWvKDlFcWcwuRAPMuqFeNP_RrIBlFxZpfOOsGCQ2d1Ci4fZiwlkVB51ZXANLk6Nwnjzw9IA4MgS9hZQFF7avJ3rQXW8nU0ZtNbt4e1PmBrytrdsHUlybHshIGBBSPT9qbRxXDbt_7Rph3nt4B-A7t3A6fnC8vKs8Ary1Q_U-B11QD-iKBMqsgKXEVRHkOWAqPDIfHhE5aoGn8KtLwLduI_zXdCBNj01jzoEdKyOnYwzntm17bHiXkQ"}]}}]

View File

@ -0,0 +1 @@
1.960607cee571126866bbd56978629d6f50cdc2c4b3e9acba5cc637802a3bc9d7

View File

@ -0,0 +1,5 @@
{
"manifest_version": 2,
"name": "crl-set-12138909489476248921.data",
"version": "9396"
}

View File

@ -1,36 +0,0 @@
{
"blocked-reporting-start": "13375544266327517",
"tracking-rules": {
"blocked-domain-counters": {
},
"blocked-for-origin-counters": {
},
"deleted-presets": [ ],
"enabled": true,
"exceptions-type": 1,
"exempt_list": [ ],
"index-checksum": "3741677681",
"known-sources": [ ],
"process_list": [ ],
"rule-sources": [ {
"allow-abp-snippets": false,
"expires": "43200000000",
"group": 0,
"has-tracker-infos": true,
"homepage": "",
"invalid-rules-count": 275,
"last-fetch-result": 0,
"last-upate": "13378647925176536",
"license": "",
"next-fetch": "13378692519452487",
"redirect": "",
"rules-list-checksum": "3021838798",
"source-url": "https://shared-whale.pstatic.net/tds/tds-v2-current.json",
"title": "DuckDuckGo blocking list",
"unsupported-rules-count": 18,
"valid-rules-count": 2636,
"version": "0"
} ]
},
"version": 6
}

View File

@ -1,3 +1,3 @@
2024/12/15-13:48:05.885 5efc Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/MANIFEST-000001
2024/12/15-13:48:05.885 5efc Recovering log #3
2024/12/15-13:48:05.885 5efc Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/000003.log
2024/12/16-15:03:47.542 32fc Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/MANIFEST-000001
2024/12/16-15:03:47.543 32fc Recovering log #3
2024/12/16-15:03:47.543 32fc Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/000003.log

View File

@ -1,3 +1,3 @@
2024/12/15-07:34:44.854 16c Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/MANIFEST-000001
2024/12/15-07:34:44.854 16c Recovering log #3
2024/12/15-07:34:44.854 16c Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/000003.log
2024/12/16-14:50:00.043 4adc Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/MANIFEST-000001
2024/12/16-14:50:00.043 4adc Recovering log #3
2024/12/16-14:50:00.043 4adc Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Browser Storage\leveldb/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-13:48:05.478 5efc Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Rules/MANIFEST-000001
2024/12/15-13:48:05.478 5efc Recovering log #3
2024/12/15-13:48:05.479 5efc Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Rules/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-07:34:44.361 4568 Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Rules/MANIFEST-000001
2024/12/15-07:34:44.361 4568 Recovering log #3
2024/12/15-07:34:44.361 4568 Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Rules/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-13:48:05.481 5efc Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Scripts/MANIFEST-000001
2024/12/15-13:48:05.481 5efc Recovering log #3
2024/12/15-13:48:05.481 5efc Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Scripts/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-07:34:44.363 4568 Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Scripts/MANIFEST-000001
2024/12/15-07:34:44.364 4568 Recovering log #3
2024/12/15-07:34:44.364 4568 Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension Scripts/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-13:48:05.898 5e38 Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension State/MANIFEST-000001
2024/12/15-13:48:05.899 5e38 Recovering log #3
2024/12/15-13:48:05.899 5e38 Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension State/000003.log

View File

@ -1,3 +0,0 @@
2024/12/15-07:34:44.867 4568 Reusing MANIFEST D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension State/MANIFEST-000001
2024/12/15-07:34:44.868 4568 Recovering log #3
2024/12/15-07:34:44.868 4568 Reusing old log D:\py\RapidSS\src\browsers\whale\user_data\Default\Extension State/000003.log

View File

@ -1 +0,0 @@
1.51e12adf7cf2e17fff4bd703e352af0305cd6f27f99d93e7e7baa4582578c9db

View File

@ -12,7 +12,6 @@
} ],
"default_locale": "en",
"description": "Translate texts from image.",
"differential_fingerprint": "1.51e12adf7cf2e17fff4bd703e352af0305cd6f27f99d93e7e7baa4582578c9db",
"host_permissions": [ "\u003Call_urls>" ],
"icons": {
"16": "icons/papago.png"

View File

@ -1 +0,0 @@
1.885d395f0608a013fb8a7f34aa3bb9e3ae1586b16ccd9377364556ab1406e539

View File

@ -19,7 +19,6 @@
} ],
"default_locale": "en",
"description": "__MSG_APP_DESCRIPTION__",
"differential_fingerprint": "1.885d395f0608a013fb8a7f34aa3bb9e3ae1586b16ccd9377364556ab1406e539",
"externally_connectable": {
"ids": [ "mdppnmkhoflepinhojdkmkanhhlkginn", "mliknopbojighdkjkjbpgpmlpckdjclf", "lckbhcagdfofbmndjcfhnbecneflbhhb" ],
"matches": [ "https://papago.naver.com/*", "https://test-papago.naver.com/*", "https://whale.naver.com/*", "https://*.whale.naver.com/*" ]

View File

@ -1,4 +0,0 @@
[jscontroller='o2G9me'],
[role='dialog'][aria-labelledby='promo-header'] {
display: none !important;
}

View File

@ -1 +0,0 @@
(()=>{const e="section[jscontroller] button[jsaction] > span[jsname]",t={},n=e=>{if(!e||!e.textContent)return;const{lang:t}=document.documentElement,n="ko"===t?"네이버 웨일":"NAVER Whale";e.textContent=e.textContent.replace("Chrome",n)},o=()=>{t.timer&&(clearTimeout(t.timer),t.timer=void 0),t.timer=setTimeout((()=>{document.querySelectorAll(e).forEach(n)}),50)};document.addEventListener("DOMContentLoaded",(()=>{((e,t={})=>{const n=t.timeout||1e4,o=t.interval||20,r=Date.now();return new Promise(((t,c)=>{const a=setInterval((()=>{const o=e();o&&(clearInterval(a),t(o)),Date.now()-r>n&&(clearInterval(a),c())}),o)}))})((()=>document.querySelector(e))).then((()=>{o(),new MutationObserver(o).observe(document.body,{childList:!0,subtree:!0,characterData:!0})}))}))})();

View File

@ -1 +0,0 @@
!function(){"use strict";((e,t={})=>{const n=t.timeout||5e3,r=t.interval||20,c=Date.now();return new Promise(((t,o)=>{const l=setInterval((()=>{const r=e();r&&(clearInterval(l),t(r)),Date.now()-c>n&&(clearInterval(l),o())}),r)}))})((()=>document.querySelector("div.w-MH"))).then((e=>{const t=e&&e.querySelector("#link_ds");t&&t.click()}))}();

View File

@ -1,9 +0,0 @@
.og-pdp,
div[style*="url(#default#userData)"],
#promos .gb_Kd.gb_5c.gb_Dc,
#gbw .gb_Kd.gb_5c {
display: none !important;
visibility: hidden !important;
opacity: 0 !important;
user-select: none !important;
}

View File

@ -1 +0,0 @@
!function(){const e=(()=>{const e={},t=document.querySelectorAll("object");for(let n=0,r=t.length;n<r;n+=1){const r=t[n];if(!r||!r.children)continue;const o=Array.from(r.children).find((e=>"string"==typeof e.value&&e.value.startsWith("http")&&e.value.endsWith(".mp3")));if(o){e.object=r,e.url=o.value;break}}return e})();e.object&&(e=>{const{object:t,url:n}=e,r=document.createElement("AUDIO");r.innerHTML=`<source src="${n}" type="audio/mpeg" />`,r.controls=!0,r.autoplay=!0,r.style.cssText=`\n width: ${t.width}px;\n height: 50px;\n filter: invert();\n `,t.parentNode.replaceChild(r,t)})(e)}();

View File

@ -1,16 +0,0 @@
@charset "utf-8";
body,
button,
h1,
h2,
h3,
h4,
h5,
input,
select,
table,
textarea {
font-family: HelveticaNeue-Light, Helvetica, AppleSDGothicNeo-Regular,
"나눔고딕", nanumgothic, sans-serif !important;
}

View File

@ -1,7 +0,0 @@
/* Fixed header to install facebook App. */
.android #header-notices,
/* "Get Facebook for Android and browse faster" link in login form. */
.android a[href*="com.facebook.katana"],
.android #MChromeHeader #header {
display: none !important;
}

View File

@ -1,15 +0,0 @@
[data-useragent*="sidebar"] #nx_input_clear {
right: 9px;
}
[data-useragent*="sidebar"] #_rs_show_btn {
display: none;
}
[data-useragent*="sidebar"] .sch_btn:not(.sch_del) {
display: none;
}
[data-useragent*="sidebar"] .sch_w .sch_inpw_in .sch_inp_inner {
margin-right: 34px;
}

View File

@ -1 +0,0 @@
window.addEventListener("DOMContentLoaded",(()=>{const e=document.querySelector('input[name="query"]');e&&e.setAttribute("accesskey",e.getAttribute("accesskey")||"s")}));

View File

@ -1 +0,0 @@
(()=>{var e={725:e=>{e.exports={isSidebar:()=>navigator.userAgent.includes("sidebar"),isMobileWindow:()=>navigator.userAgent.includes("Build/WHALE")&&navigator.userAgent.includes("Mobile")}},45:e=>{let t;const r=()=>!!t,o=()=>!(!r()||isNaN(t.duration)||t.networkState===t.NETWORK_EMPTY||t.networkState===t.NETWORK_NO_SOURCE);e.exports={isAvailable:o,hasElement:r,setElement:e=>{t=e},togglePlayPause:()=>{o()&&(t.paused?t.play():t.pause())},seekPrev:e=>{o()&&(t.currentTime=Math.max(0,t.currentTime-e))},seekNext:e=>{if(!o())return;const{currentTime:r,duration:a}=t;t.currentTime=Math.min(a,r+e)},volumeUp:e=>{o()&&(t.volume=Math.min(1,t.volume+e))},volumeDown:e=>{o()&&(t.volume=Math.max(0,t.volume-e))}}}},t={};function r(o){var a=t[o];if(void 0!==a)return a.exports;var n=t[o]={exports:{}};return e[o](n,n.exports,r),n.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";var e=r(725),t=r.n(e),o=r(45),a=r.n(o);(t().isSidebar()||t().isMobileWindow())&&(a().setElement(document.querySelector("video")),window.addEventListener("click",(e=>{e.target.closest(".player,#player")?a().setElement(document.querySelector("video")):a().setElement(void 0)}),!0),window.addEventListener("keydown",(e=>{a().isAvailable()&&(["INPUT","TEXTAREA"].includes(e.target.tagName.toUpperCase())||(e.code.startsWith("Arrow")||"Space"===e.code)&&(e.preventDefault(),"ArrowLeft"===e.code?a().seekPrev(5):"ArrowRight"===e.code?a().seekNext(5):"ArrowUp"===e.code?a().volumeUp(.1):"ArrowDown"===e.code?a().volumeDown(.1):"Space"===e.code&&a().togglePlayPause()))}),!0))})()})();

View File

@ -1,7 +0,0 @@
video {
cursor: pointer;
}
video::-webkit-media-controls {
cursor: default;
}

View File

@ -1 +0,0 @@
(()=>{var e={725:e=>{e.exports={isSidebar:()=>navigator.userAgent.includes("sidebar"),isMobileWindow:()=>navigator.userAgent.includes("Build/WHALE")&&navigator.userAgent.includes("Mobile")}},45:e=>{let t;const r=()=>!!t,o=()=>!(!r()||isNaN(t.duration)||t.networkState===t.NETWORK_EMPTY||t.networkState===t.NETWORK_NO_SOURCE);e.exports={isAvailable:o,hasElement:r,setElement:e=>{t=e},togglePlayPause:()=>{o()&&(t.paused?t.play():t.pause())},seekPrev:e=>{o()&&(t.currentTime=Math.max(0,t.currentTime-e))},seekNext:e=>{if(!o())return;const{currentTime:r,duration:a}=t;t.currentTime=Math.min(a,r+e)},volumeUp:e=>{o()&&(t.volume=Math.min(1,t.volume+e))},volumeDown:e=>{o()&&(t.volume=Math.max(0,t.volume-e))}}}},t={};function r(o){var a=t[o];if(void 0!==a)return a.exports;var n=t[o]={exports:{}};return e[o](n,n.exports,r),n.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";var e=r(725),t=r.n(e),o=r(45),a=r.n(o);(t().isSidebar()||t().isMobileWindow())&&(a().setElement(document.querySelector("video")),window.addEventListener("click",(e=>{"VIDEO"===e.target.tagName.toUpperCase()?(a().setElement(e.target),a().togglePlayPause()):a().setElement(void 0)}),!0),window.addEventListener("keydown",(e=>{a().isAvailable()&&(["INPUT","TEXTAREA"].includes(e.target.tagName.toUpperCase())||(e.code.startsWith("Arrow")||"Space"===e.code)&&(e.preventDefault(),"ArrowLeft"===e.code?a().seekPrev(5):"ArrowRight"===e.code?a().seekNext(5):"ArrowUp"===e.code?a().volumeUp(.1):"ArrowDown"===e.code?a().volumeDown(.1):"Space"===e.code&&a().togglePlayPause()))}),!0),window.addEventListener("player-state-change",(e=>{a().hasElement()||-1===e.detail.state||a().setElement(document.querySelector("video"))}),!0))})()})();

View File

@ -1 +0,0 @@
(()=>{var e={725:e=>{e.exports={isSidebar:()=>navigator.userAgent.includes("sidebar"),isMobileWindow:()=>navigator.userAgent.includes("Build/WHALE")&&navigator.userAgent.includes("Mobile")}},45:e=>{let t;const r=()=>!!t,o=()=>!(!r()||isNaN(t.duration)||t.networkState===t.NETWORK_EMPTY||t.networkState===t.NETWORK_NO_SOURCE);e.exports={isAvailable:o,hasElement:r,setElement:e=>{t=e},togglePlayPause:()=>{o()&&(t.paused?t.play():t.pause())},seekPrev:e=>{o()&&(t.currentTime=Math.max(0,t.currentTime-e))},seekNext:e=>{if(!o())return;const{currentTime:r,duration:n}=t;t.currentTime=Math.min(n,r+e)},volumeUp:e=>{o()&&(t.volume=Math.min(1,t.volume+e))},volumeDown:e=>{o()&&(t.volume=Math.max(0,t.volume-e))}}}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o](a,a.exports,r),a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";var e=r(725),t=r.n(e),o=r(45),n=r.n(o);(t().isSidebar()||t().isMobileWindow())&&(n().setElement(document.querySelector("video")),window.addEventListener("click",(()=>{n().hasElement()||n().setElement(document.querySelector("video"))}),!0),window.addEventListener("keydown",(e=>{n().isAvailable()&&(["INPUT","TEXTAREA"].includes(e.target.tagName.toUpperCase())||(e.code.startsWith("Arrow")||"Space"===e.code)&&(e.preventDefault(),"ArrowLeft"===e.code?n().seekPrev(5):"ArrowRight"===e.code?n().seekNext(5):"ArrowUp"===e.code?n().volumeUp(.1):"ArrowDown"===e.code?n().volumeDown(.1):"Space"===e.code&&n().togglePlayPause()))}),!0))})()})();

View File

@ -1 +0,0 @@
(()=>{const e=e=>{if(e.key&&"Enter"!==e.key)return;const t=(e.target.getAttribute("rel")||"").split(" "),n=e.target.getAttribute("href");if(t.includes("whale-system")){if(!n.startsWith("whale://"))return;whale.runtime.sendMessage("mdppnmkhoflepinhojdkmkanhhlkginn",{namespace:"webui.api",message:{action:"createTab",param:{url:n}}}),e.preventDefault()}};window.addEventListener("click",e,!0),window.addEventListener("keydown",e,!0)})();

View File

@ -1,73 +0,0 @@
[data-useragent*="sidebar"] .__whale__extension {
background: transparent;
border: 0;
padding: 35px;
letter-spacing: -0.5pt;
color: #000;
}
[data-useragent*="sidebar"] .__whale__extension .container {
position: relative;
background: #fff;
border: 0.5px solid rgba(0, 0, 0, 0.2);
box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15), 0px 12px 24px rgba(0, 0, 0, 0.18);
border-radius: 16px;
padding: 30px;
}
[data-useragent*="sidebar"] .__whale__extension .btn-close {
position: absolute;
top: 0;
right: 0;
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
outline: none;
}
[data-useragent*="sidebar"] .__whale__extension .header h1 {
font-size: 15px;
font-weight: bold;
line-height: 140%;
}
[data-useragent*="sidebar"] .__whale__extension .header svg {
pointer-events: none;
}
[data-useragent*="sidebar"] .__whale__extension .body {
margin: 10px 0 15px;
color: #777;
font-size: 13px;
line-height: 150%;
white-space: pre-line;
word-break: keep-all;
}
[data-useragent*="sidebar"] .__whale__extension .btn-action {
display: flex;
height: 34px;
white-space: nowrap;
color: #fff;
background: #05C3A7;
border-radius: 3px;
align-items: center;
justify-content: center;
font-style: normal;
font-weight: 700;
font-size: 13px;
line-height: 150%;
cursor: pointer;
text-decoration: none;
}
[data-useragent*="sidebar"] .__whale__extension .btn-action:hover {
background: #05AF96;
}
[data-useragent*="sidebar"] .__whale__extension .btn-action:active {
background: #049C86;
}

View File

@ -1 +0,0 @@
(()=>{const e="whale_naver_notice_termiation_noticed";if(!navigator.userAgent.includes("sidebar"))return;if(localStorage.getItem(e))return;const t={ko:{title:"네이버 알림 사이드바 제공 종료 안내",text:"안녕하세요. 네이버 웨일 팀입니다.\n서비스 개편에 따라, 2023년 7월 중 네이버 알림이 사이드바에서 제공 종료될 예정입니다. 계속해서 네이버 알림 서비스를 사용하기 희망하시는 경우, 웨일 스토어에서 네이버 알림 확장앱을 설치하여 주시기 바랍니다.\n웨일을 사랑해주셔서 감사합니다.",button:"네이버 알림 확장앱 설치하기"},en:{title:"Notice of Service Termination",text:"Hello. This is the NAVER Whale Team.\nFollowing the service reorganization, Naver Notice will be terminated from the sidebar in July 2023. If you want to continue using Naver Notice, please add Naver Notice extension to Whale in Whale Store.\nThank you.",button:"Add Naver Notice extension"}},n=navigator.language.startsWith("ko")?"ko":"en",o=e=>t[n][e],i=document.createElement("dialog");i.className="__whale__extension",i.innerHTML=`\n <div class="container">\n <button type="button" class="btn-close">\n <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M3.85355 3.14645C3.65829 2.95118 3.34171 2.95118 3.14645 3.14645C2.95118 3.34171 2.95118 3.65829 3.14645 3.85355L8.79289 9.5L3.14645 15.1464C2.95118 15.3417 2.95118 15.6583 3.14645 15.8536C3.34171 16.0488 3.65829 16.0488 3.85355 15.8536L9.5 10.2071L15.1464 15.8536C15.3417 16.0488 15.6583 16.0488 15.8536 15.8536C16.0488 15.6583 16.0488 15.3417 15.8536 15.1464L10.2071 9.5L15.8536 3.85355C16.0488 3.65829 16.0488 3.34171 15.8536 3.14645C15.6583 2.95118 15.3417 2.95118 15.1464 3.14645L9.5 8.79289L3.85355 3.14645Z" fill="#222222"/>\n </svg>\n </button>\n <div class="header">\n <h1>${o("title")}</h1>\n </div>\n <div class="body">${o("text")}</div>\n <div class="footer">\n <a href="https://store.whale.naver.com/detail/pmaoolobhideeaadkcjkkejmjkhfhcho" target="_whale_store" class="btn-action">\n ${o("button")}\n </a>\n </div>\n </div>\n `;const a=()=>{i.close(),localStorage.setItem(e,!0)};i.querySelector(".btn-close").addEventListener("click",(()=>{a()})),i.querySelector(".btn-action").addEventListener("click",(()=>{a()})),document.body.append(i),i.showModal()})();

View File

@ -1,6 +0,0 @@
[data-videoparty="videoparty"] .html5-endscreen,
[data-videoparty="videoparty"] .videowall-endscreen,
[data-videoparty="videoparty"] .ytp-chrome-top-buttons,
[data-videoparty="videoparty"] .ytp-pause-overlay {
display: none !important;
}

View File

@ -1 +0,0 @@
(()=>{const e=decodeURIComponent(location.search);(navigator.userAgent.includes("videoparty")||e.includes("whaleon")&&e.includes("play/youtube"))&&(document.documentElement.dataset.videoparty="videoparty")})();

Some files were not shown because too many files have changed in this diff Show More