Skip to content
Merged

Dev #165

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,5 @@ app/test/
app/api/test

# Idea
/.idea
/.idea
/.claude
10 changes: 4 additions & 6 deletions src/app/components/HelpModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
DialogTitle,
DialogTrigger,
} from '@/src/app/components/ui/dialog';
import { Button } from './ui/button';

interface HelpModalProps {
title: string;
Expand All @@ -28,13 +29,10 @@ const HelpModal = ({
return (
<Dialog open={isOpen} onOpenChange={setIsOpen}>
<DialogTrigger asChild>
<button
className={`inline-flex items-center gap-2 text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-200 transition-colors ${triggerClassName}`}
aria-label="도움말 열기"
>
<Button variant="outline" size="sm" className={triggerClassName}>
{showIcon && <HelpCircle className="w-4 h-4" />}
{triggerText && <span className="text-sm">{triggerText}</span>}
</button>
{triggerText && <span className="leading-none">{triggerText}</span>}
</Button>
</DialogTrigger>
<DialogContent className="max-w-xl w-full overflow-x-auto max-h-[80vh] overflow-y-auto bg-white dark:bg-gray-900 text-gray-800 dark:text-gray-100">
<DialogHeader>
Expand Down
3 changes: 2 additions & 1 deletion src/app/kkuko/profile/KkukoProfile.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,8 @@ export default function KkukoProfile() {
<div className="bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4">
<p className="text-red-700 dark:text-red-400 font-semibold">{error}</p>
<p className="text-red-600 dark:text-red-500 text-sm mt-2">
2026-01-18 17시 이후 게임 접속한 유저에 대해서 조회할 수 있습니다.
2026-01-18 17시 ~ 2026-03-03 00시 사이에 게임 접속한 유저에 대해서 조회할 수 있습니다.
프로필 등록을 원하신다면 id검색을 이용해주세요.
</p>
</div>
)}
Expand Down
29 changes: 28 additions & 1 deletion src/app/lib/lib.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,31 @@ export function misssionCharMask(chars: string[]): number {
}
}
return base;
}
}


/**
* 한글 텍스트 필터링 함수
*
* @param text 필터링할 텍스트
* @param search 검색할 텍스트
* @returns text가 search를 포함하는지 여부
*/
export function filterKoreanText(text: string, search: string): boolean {
if (search === "") return true;
let indexText = 0;
let indexSearch = 0;

while (indexText < text.length && indexSearch < search.length) {
if (
text[indexText] === search[indexSearch] ||
(("ㄱ" <= search[indexSearch] && search[indexSearch] <= "ㅎ") &&
calculateKoreanInitials(text[indexText]) === calculateKoreanInitials(search[indexSearch]))
) {
indexSearch++;
}
indexText++;
}

return indexSearch === search.length;
};
2 changes: 1 addition & 1 deletion src/app/manager-tool/Home.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ export default function Home() {
</div>
<div className="flex items-center">
<div className="w-2 h-2 bg-blue-400 rounded-full mr-3"></div>
등등
미션 단어 추출
</div>
</div>

Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/containx/ContainX.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -106,14 +106,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="X가 포함된 단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
<div className="space-y-3">
Expand Down
6 changes: 3 additions & 3 deletions src/app/manager-tool/extract/endx/EndX.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -110,15 +110,15 @@ const WordExtractorApp = () => {
</div>
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm" className="dark:text-gray-200 dark:bg-gray-800 dark:border-gray-700">
<Home className="sm" />
<Button variant="outline" size="sm">
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="X로 끝나는 단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 dark:border-gray-700 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,15 +126,15 @@ const WordExtractorApp = () => {
</div>
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm" className="dark:text-gray-200 dark:bg-gray-800 dark:border-gray-700">
<Home className="sm" />
<Button variant="outline" size="sm">
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="영어 미션단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 dark:border-gray-700 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -186,14 +186,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="한국어 미션 단어 추출 - B 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/korean-mission/KoreanMission.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -323,14 +323,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="한국어 미션단어 추출 - A 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/lenx/LenX.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -109,14 +109,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm"/>
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="X 글자수 단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/loop/Loop.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -134,14 +134,14 @@ const LoopWordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModalA
title="돌림단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/merge/Merge.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -324,14 +324,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="텍스트 파일 합성 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
4 changes: 2 additions & 2 deletions src/app/manager-tool/extract/startx/StartX.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,14 @@ const WordExtractorApp = () => {
<div className="flex items-center space-x-2">
<Link href="/manager-tool/extract">
<Button variant="outline" size="sm">
<Home className="sm" />
<Home className="w-4 h-4" />
도구홈
</Button>
</Link>
<HelpModal
title="X로 시작하는 단어 추출 사용법"
triggerText="도움말"
triggerClassName="border border-gray-200 border-1 rounded-md p-2"
triggerClassName="h-8 rounded-md border border-input bg-background px-3 text-xs font-medium text-foreground shadow-sm hover:bg-accent hover:text-accent-foreground [&_span]:text-xs [&_svg]:size-4"
>
<div className="space-y-6">
{/* Step 0 */}
Expand Down
Loading
Loading