Skip to content

Commit

Permalink
Merge branch 'main' into SnorlaxH-patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
kyechan99 authored Jan 18, 2024
2 parents dff0259 + 94b00a7 commit 6ac32e4
Show file tree
Hide file tree
Showing 44 changed files with 1,344 additions and 241 deletions.
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
name: Bug report
about: Report a bug
title: "[BUG]"
labels: ๋ฒ„๊ทธ
assignees: ''

---

### **๋ฒ„๊ทธ ๋‚ด์šฉ**

<!-- ๋ฐœ์ƒํ•œ ๋ฒ„๊ทธ๋ฅผ ์ž์„ธํžˆ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. -->
<!-- ํŠน์ˆ˜ํ•œ ์กฐ๊ฑด์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฏธ์ง€๋‚˜ ์˜์ƒ์ด ์žˆ๋‹ค๋ฉด ๋”์šฑ ๋นจ๋ฆฌ ํ•ด๊ฒฐ ๋  ์ˆ˜ ์žˆ์–ด์š”. -->

### **ํ™˜๊ฒฝ**

version:
os:
browser:

<!--์‚ฌ์šฉ ์ค‘์ธ ํ™˜๊ฒฝ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. -->

### **๊ธฐํƒ€**

<!--ํ˜น์‹œ ์ƒ๊ฐํ•˜์‹  ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด๋‚˜ ๋Œ€์•ˆ์ฑ… ๊ฐ™์€๊ฒŒ ์žˆ์œผ์‹œ๋‹ค๋ฉด ๊ณต์œ ํ•ด์ฃผ์„ธ์š”. -->
<!--์ฐธ๊ณ ์— ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค! -->
<!--์—†์œผ์‹œ๋‹ค๋ฉด ํ•ด๋‹น ํ•ญ๋ชฉ์€ ์‚ญ์ œํ•ด์ฃผ์„ธ์š”. -->
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[Feature]"
labels: ์•„์ด๋””์–ด
assignees: ''

---

### **์ œ์•ˆ**

<!-- ์ œ์•ˆํ•˜์‹ค ๋‚ด์šฉ์„ ์ž์„ธํžˆ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. -->
<!-- ๋งŒ์•ฝ ์ฐธ๊ณ ํ•ด๋ณผ๋งŒํ•œ ์ด๋ฏธ์ง€๋‚˜ ์˜์ƒ ๋“ฑ์ด ์žˆ๋‹ค๋ฉด ์ดํ•ดํ•˜๋Š”๋ฐ ๋”์šฑ ์‰ฌ์šธ ์ˆ˜ ์žˆ์–ด์š”. -->

### **๊ธฐํƒ€**

<!--ํ˜น์‹œ ์ƒ๊ฐํ•˜์‹  ๊ตฌํ˜„๋ฐฉ๋ฒ• ๊ฐ™์€๊ฒŒ ์žˆ์œผ์‹œ๋‹ค๋ฉด ๊ณต์œ ํ•ด์ฃผ์„ธ์š”. -->
<!--์—†์œผ์‹œ๋‹ค๋ฉด ํ•ด๋‹น ํ•ญ๋ชฉ์€ ์‚ญ์ œํ•ด์ฃผ์„ธ์š”. -->
<!--PR๋„ ํ”„๋กœ๊ทธ๋žจ์˜ ์„ฑ์žฅ์— ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. -->
48 changes: 19 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,41 +9,31 @@
<p align="center">
<img src="https://img.shields.io/github/package-json/v/kyechan99/chzzk-plus?style=for-the-badge"/>
<img src="https://img.shields.io/github/license/kyechan99/chzzk-plus?style=for-the-badge"/>
<a href="https://github.com/kyechan99/chzzk-plus/releases">
<a href="https://chromewebstore.google.com/detail/chzzk-plus/miampiopgfpnimmggagljgbpmjmjdjia">
<img src="https://img.shields.io/badge/DOWNLOAD-ME-%2320c997?style=for-the-badge"/>
</a>
</p>

## Feature

### 1. PIP ๋ชจ๋“œ ๋ฒ„ํŠผ

![PIP ๋ชจ๋“œ ๋ฒ„ํŠผ](/README/feature_pip.png)

### 2. ๋ฐฉ์†ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ

![๋ฐฉ์†ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ](/README/preview.png)

### 3. ๋ฐฉ์†กํ™”๋ฉด ์ด๋ฒคํŠธ ๋ฐฉํ•ด ๋ฐฉ์ง€
[ํฌ๋กฌ ํ™•์žฅํ”„๋กœ๊ทธ๋žจ ์„ค์น˜](https://chromewebstore.google.com/detail/chzzk-plus/miampiopgfpnimmggagljgbpmjmjdjia)

![๋ฐฉ์†กํ™”๋ฉด ์ด๋ฒคํŠธ ๋ฐฉํ•ด ๋ฐฉ์ง€](/README/barrigade.png)

> ์„ค์ • ์ฐฝ์—์„œ ํ™œ์„ฑํ™” ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
>
> default ๋กœ ๋น„ํ™œ์„ฑํ™” ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.
### 4. ์ฑ„ํŒ… ์ƒ‰์ƒ

![์ฑ„ํŒ… ์ƒ‰์ƒ ์กฐ์ ˆ](/README/font_color.png)

> ํŠธ์œ„์น˜์˜ ๊ฒฝ์šฐ ์ฑ„ํŒ… ์ƒ‰์ƒ ์กฐ์ ˆ์— BM์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
>
> ์น˜์ง€์ง ์—ญ์‹œ ์ถ”๊ฐ€ ๋  ๊ฒฝ์šฐ ๊ธฐ๋Šฅ์ด ์‚ญ์ œ ํ˜น์€ ๋ณ€๊ฒฝ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
## ๊ณ ๋ ค์ค‘
## Feature

1. ํŒ”๋กœ์šฐ ์ฑ„๋„ ์šฐ์„ ์ˆœ์œ„ ์ˆœ์œ„
2. ํ’ˆ์งˆ ์กฐ์ ˆ ๊ธฐํƒ€ ๋“ฑ๋“ฑ
1. PIP ๋ชจ๋“œ ๋ฒ„ํŠผ
2. ๋ฐฉ์†ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ
3. ๋ฐฉ์†ก ํ™”๋ฉด ์บก์ฒ˜์ €์žฅ
4. ์ƒ๋ฐฉ์†ก ๋…นํ™”
5. ์น˜์ฆˆ ์ œ๊ฑฐ ๋ชจ๋“œ
6. ์ฑ„ํŒ… ์ƒ‰์ƒ ๋ชจ๋“œ
7. ์ฑ„ํŒ… ํฌ๊ธฐ ์กฐ์ ˆ
8. ๋ฐฉ์†ก ๋‹จ์ถ•ํ‚ค
9. ์ฆ๊ฒจ์ฐพ๊ธฐ (ํŒ”๋กœ์šฐ ์ฑ„๋„ ์ค‘ ์šฐ์„ ์ˆœ์œ„ ์˜ฌ๋ฆฌ๊ธฐ)
10. ์ƒ๋ฐฉ์†ก ๋นจ๋ฆฌ๊ฐ๊ธฐ
11. ์˜ค๋””์˜ค ์••์ถ•

![0](/README/0.png)
![1](/README/1.png)
![2](/README/2.png)
![3](/README/3.png)

## ์•Œ๋ฆผ์‚ฌํ•ญ

Expand Down
Binary file added README/0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added README/1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added README/2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added README/3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified README/barrigade.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified README/font_color.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "Chzzk Plus",
"description": "๋„ค์ด๋ฒ„ ์ŠคํŠธ๋ฆฌ๋ฐ ์„œ๋น„์Šค Chzzk Plus",
"version": "1.0",
"version": "1.0.9",
"manifest_version": 3,
"icons": {
"16": "icon16.png",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "chzzk-plus",
"private": true,
"version": "0.0.4",
"version": "1.0.9",
"type": "module",
"scripts": {
"dev": "vite",
Expand Down
6 changes: 6 additions & 0 deletions renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended"
]
}
34 changes: 30 additions & 4 deletions src/App.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@ body {
}
#root {
padding: 2rem;
min-width: 16rem;
min-width: 18rem;
}
hr {
opacity: 0.5;
width: 100%;
}
.popup {
Expand All @@ -21,16 +22,41 @@ hr {
display: flex;
width: 100%;
color: white;
align-items: center;
align-items: flex-start;
justify-content: space-between;
}

.menu {
.setting-group {
width: 100%;
}
.setting-label {
color: white;
width: 100%;
margin-top: 0px;
margin-bottom: 0.25rem;
}
.menus {
width: 100%;
display: flex;
flex-direction: column;
gap: 0.5rem;
gap: 0.75rem;
}
.menus .menu {
display: flex;
flex-direction: column;
}
.menus .menu .menu-title {
font-size: 14px;
/* font-weight: bold; */
margin: 0px;
}
.menus .menu .menu-desc {
margin: 0px;
color: #afafaf;
}
.description {
color: #6fec9f;
}
.version {
color: white;
}
115 changes: 109 additions & 6 deletions src/App.tsx
Original file line number Diff line number Diff line change
@@ -1,24 +1,127 @@
import "./App.css";

import Logo from "../public/icon128.png";
import URLButton from "./components/button/URLButton/URLButton";
import { Select } from "./components/input/Select/Select";
import Checkbox from "./components/input/Checkbox/Checkbox";
import URLButton from "./components/button/URLButton/URLButton";
import ColorPicker from "./components/input/ColorPicker/ColorPicker";
import { CHAT_NAME_COLOR, CHAT_TEXT_COLOR } from "./constants/data";

import {
AUDIO_COMPRESSOR,
CHAT_COLOR_OPTIONS,
CHAT_COLOR_THEME,
CHAT_NAME_COLOR,
CHAT_SIZE,
CHAT_SIZE_OPTIONS,
CHAT_TEXT_COLOR,
CHEEZE_REMOVER,
FAST_BUTTON,
PLAYER_KEY_CONTROL,
} from "./constants/storage";

function App() {
return (
<div className="popup">
<img src={Logo} alt="chzzk-plus" />

<URLButton href="https://chzzk.naver.com/">Chzzk ์ด๋™ํ•˜๊ธฐ</URLButton>
<URLButton href="https://github.com/kyechan99/chzzk-plus/issues">
๋ฒ„๊ทธ ์ œ๋ณดํ•˜๊ธฐ
</URLButton>

<hr />

<div className="setting-group">
<h2 className="setting-label">ํ”Œ๋ ˆ์ด์–ด</h2>
<div className="menus">
{/* <Checkbox id={BARRICADE}>
<div className="menu">
<p className="menu-title">ํ™”๋ฉด ํด๋ฆญ์‹œ ์ผ์‹œ์ •์ง€ ๋ฐฉ์ง€ *</p>
<p className="menu-desc">์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค</p>
</div>
</Checkbox> */}

<Checkbox id={PLAYER_KEY_CONTROL}>
<div className="menu">
<p className="menu-title">ํ‚ค ์ด๋ฒคํŠธ ํ™œ์„ฑํ™” *</p>
<p className="menu-desc">T: ๋„“์€ ํ™”๋ฉด</p>
<p className="menu-desc">F: ์ „์ฒด ํ™”๋ฉด</p>
<p className="menu-desc">M: ์Œ์†Œ๊ฑฐ</p>
</div>
</Checkbox>

<Checkbox id={FAST_BUTTON}>
<div className="menu">
<p className="menu-title">๋นจ๋ฆฌ ๊ฐ๊ธฐ ํ™œ์„ฑํ™” *</p>
<p className="menu-desc">์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ</p>
</div>
</Checkbox>

<Checkbox id={AUDIO_COMPRESSOR}>
<div className="menu">
<p className="menu-title">์‚ฌ์šด๋“œ ์••์ถ• *</p>
<p className="menu-desc">๋†’๊ณ  ๋‚ฎ์€ ์Œ์•• ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ์ค„์ž„</p>
<p className="menu-desc">์ผ์ •ํ•œ ์Œ๋Ÿ‰ ์ˆ˜์ค€์„ ์œ ์ง€</p>
</div>
</Checkbox>
</div>
</div>

<hr />
<div className="menu">
<Checkbox id="barricade">ํ™”๋ฉด ํด๋ฆญ์‹œ ์ผ์‹œ์ •์ง€ ๋ฐฉ์ง€ *</Checkbox>
<ColorPicker id={CHAT_NAME_COLOR}>์ฑ„ํŒ… ์ด๋ฆ„ ์ƒ‰์ƒ</ColorPicker>
<ColorPicker id={CHAT_TEXT_COLOR}>์ฑ„ํŒ… ๋‚ด์šฉ ์ƒ‰์ƒ</ColorPicker>

<div className="setting-group">
<h2 className="setting-label">์ฑ„ํŒ…</h2>
<div className="menus">
<Checkbox id={CHEEZE_REMOVER}>
<div className="menu">
<p className="menu-title">์น˜์ฆˆ ์ œ๊ฑฐ *</p>
<p className="menu-desc">์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ</p>
</div>
</Checkbox>

<Select
id={CHAT_COLOR_THEME}
options={CHAT_COLOR_OPTIONS.map((op) => {
return { name: op, value: op };
})}
>
<div className="menu">
<p className="menu-title">์ฑ„ํŒ… ์ด๋ฆ„์— ์ƒ‰์ƒ๋„ฃ๊ธฐ *</p>
<p className="menu-desc">์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ</p>
</div>
</Select>

<ColorPicker id={CHAT_NAME_COLOR}>
<div className="menu">
<p className="menu-title">์ด๋ฆ„ ์ƒ‰</p>
<p className="menu-desc">'์ปค์Šคํ…€' ๋ชจ๋“œ์—์„œ ์ž‘๋™</p>
</div>
</ColorPicker>
<ColorPicker id={CHAT_TEXT_COLOR}>
<div className="menu">
<p className="menu-title">๋‚ด์šฉ ์ƒ‰</p>
<p className="menu-desc">'์ปค์Šคํ…€' ๋ชจ๋“œ์—์„œ ์ž‘๋™</p>
</div>
</ColorPicker>

<Select
id={CHAT_SIZE}
options={CHAT_SIZE_OPTIONS.map((op) => {
return { name: op, value: op };
})}
>
<div className="menu">
<p className="menu-title">์ฑ„ํŒ… ํฌ๊ธฐ *</p>
<p className="menu-desc">์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ</p>
</div>
</Select>
</div>
</div>

<hr />

<p className="description">* ํ‘œ์‹œ๋œ ์„ค์ •์€ ์ƒˆ๋กœ๊ณ ์นจ ํ›„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค</p>
<p className="version">v1.0.9</p>
</div>
);
}
Expand Down
4 changes: 2 additions & 2 deletions src/components/Global.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.live_chatting_list_wrapper__a5XTV .name_text__yQG50 {
/* .live_chatting_list_wrapper__a5XTV .name_text__yQG50 {
color: var(--czp-chat-name) !important;
}
.live_chatting_list_wrapper__a5XTV .live_chatting_message_text__DyleH {
color: var(--czp-chat-text) !important;
}
} */
45 changes: 45 additions & 0 deletions src/components/Global.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,50 @@
import { useEffect } from "react";
import "./Global.css";
import {
INPUT_UI_LIST,
VIDEO_FULL_BTN,
VIDEO_VIEW_BTN,
VIDEO_VOLUME_BTN,
} from "../constants/class";
import { PLAYER_KEY_CONTROL } from "../constants/storage";

export default function Global() {
useEffect(() => {
// Feat: ํ”Œ๋ ˆ์ด์ปค ํ‚ค ๋‹จ์ถ•ํ‚ค ํ™œ์„ฑํ™” =========================================================
chrome.storage.local.get(PLAYER_KEY_CONTROL, (res) => {
// ์œ„์—์„œ pip ๋ฒ„ํŠผ ์ถ”๊ฐ€ ์ฒดํฌ๋กœ ์žฌ์ƒ์„ฑ ๊ฑฑ์ •์€ ์•ˆํ•ด๋„ ๊ดœ์ฐฎ๋‹ค.
if (res[PLAYER_KEY_CONTROL]) {
document.addEventListener("keydown", (event) => {
const { target } = event;
if (target instanceof HTMLElement)
if (!INPUT_UI_LIST.includes(target.className) && !event.ctrlKey) {
// T : ๋„“์€ ํ™”๋ฉด
if (event.key === "t" || event.key === "T") {
const viewModeBtn = document.querySelector(
VIDEO_VIEW_BTN
) as HTMLElement;
if (viewModeBtn) viewModeBtn.click();
}

// F : ์ „์ฒด ํ™”๋ฉด
if (event.key === "f" || event.key === "F") {
const fullScreenBtn = document.querySelector(
VIDEO_FULL_BTN
) as HTMLElement;
if (fullScreenBtn) fullScreenBtn.click();
}
// M : ์Œ์†Œ๊ฑฐ
if (event.key === "m" || event.key === "M") {
const muteBtn = document.querySelector(
VIDEO_VOLUME_BTN
) as HTMLElement;
if (muteBtn) muteBtn.click();
}
}
});
}
});
}, []);

return <></>;
}
Loading

0 comments on commit 6ac32e4

Please sign in to comment.