refactor: restructure project with shared state and public assets
This commit is contained in:
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>AI 분류 - Chakmate</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../styles/main.css">
|
||||
<!-- Heroicons SVG Sprite -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="hidden">
|
||||
@@ -112,7 +109,7 @@
|
||||
<div class="max-w-[1200px] w-full mx-auto p-6">
|
||||
<!-- Back Header -->
|
||||
<div class="flex items-center gap-4 mb-8">
|
||||
<a href="index.html" class="inline-flex items-center gap-2 text-text-secondary font-medium transition-colors duration-150 hover:text-primary hover:bg-accent/10 rounded-xl px-3 py-2">
|
||||
<a href="scene_dashboard.html" class="inline-flex items-center gap-2 text-text-secondary font-medium transition-colors duration-150 hover:text-primary hover:bg-accent/10 rounded-xl px-3 py-2">
|
||||
<svg class="w-5 h-5"><use href="#icon-arrow-left"></use></svg>
|
||||
<span>대시보드로</span>
|
||||
</a>
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>대시보드 - Chakmate</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../styles/main.css">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none">
|
||||
<symbol id="icon-layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
||||
@@ -100,21 +97,22 @@
|
||||
|
||||
<nav class="fixed bottom-0 left-0 right-0 bg-surface-card border-t border-surface-secondary z-[100]">
|
||||
<div class="max-w-[600px] mx-auto flex justify-around py-3">
|
||||
<button class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 active bg-primary/10 text-primary" id="nav-dashboard">
|
||||
<span class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 active bg-primary/10 text-primary">
|
||||
<svg class="w-6 h-6 stroke-current fill-none"><use href="#icon-layers"></use></svg>
|
||||
<span class="text-xs font-medium">홈</span>
|
||||
</button>
|
||||
<button class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 text-text-muted" id="nav-swipe" onclick="window.location.href='scene_swipe.html'">
|
||||
</span>
|
||||
<a href="scene_swipe.html" class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 text-text-muted">
|
||||
<svg class="w-6 h-6 stroke-current fill-none"><use href="#icon-bolt"></use></svg>
|
||||
<span class="text-xs font-medium">스와이프</span>
|
||||
</button>
|
||||
<button class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 text-text-muted" id="nav-settings" onclick="window.location.href='scene_settings.html'">
|
||||
</a>
|
||||
<a href="scene_settings.html" class="nav-btn flex flex-col items-center gap-1 px-6 py-2 rounded-2xl transition-all duration-250 text-text-muted">
|
||||
<svg class="w-6 h-6 stroke-current fill-none"><use href="#icon-cog"></use></svg>
|
||||
<span class="text-xs font-medium">설정</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<script type="module" src="../scripts/shared/state.js"></script>
|
||||
<script type="module" src="../scripts/dashboard.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -300,6 +300,7 @@
|
||||
|
||||
<div class="fixed top-0 left-0 w-full h-full pointer-events-none z-[1000] overflow-hidden" id="confettiContainer"></div>
|
||||
|
||||
<script type="module" src="../scripts/shared/state.js"></script>
|
||||
<script type="module" src="../scripts/gamification.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Chakmate - 지능형 디지털 자산 관리</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../styles/main.css">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none">
|
||||
<symbol id="icon-layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>설정 - Chakmate</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../styles/main.css">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none">
|
||||
<symbol id="icon-x-mark" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||
@@ -34,10 +31,10 @@
|
||||
</head>
|
||||
<body class="font-sans bg-surface-primary text-text-primary min-h-screen antialiased overflow-x-hidden">
|
||||
<header class="flex items-center justify-between p-5 bg-surface-card rounded-b-3xl shadow-[0_4px_20px_rgba(30,27,46,0.08)]">
|
||||
<button class="flex items-center gap-2 px-4 py-2 rounded-full text-text-secondary hover:bg-surface-secondary transition-colors" onclick="window.location.href='scene_dashboard.html'">
|
||||
<a href="scene_dashboard.html" class="flex items-center gap-2 px-4 py-2 rounded-full text-text-secondary hover:bg-surface-secondary transition-colors">
|
||||
<svg class="w-5 h-5"><use href="#icon-home"></use></svg>
|
||||
<span class="text-sm font-medium">홈으로</span>
|
||||
</button>
|
||||
</a>
|
||||
<h1 class="font-display text-lg font-semibold text-text-primary">설정</h1>
|
||||
<div class="w-[80px]"></div>
|
||||
</header>
|
||||
@@ -121,6 +118,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="module" src="../scripts/shared/state.js"></script>
|
||||
<script type="module" src="../scripts/settings.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
|
||||
<title>스와이프 모드 - Chakmate</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../styles/main.css">
|
||||
</head>
|
||||
<body class="font-sans bg-surface-primary text-text-primary min-h-screen antialiased">
|
||||
@@ -27,10 +24,10 @@
|
||||
</svg>
|
||||
|
||||
<header class="flex items-center justify-between p-5 bg-surface-card rounded-b-3xl shadow-[0_4px_20px_rgba(30,27,46,0.08)]">
|
||||
<button class="flex items-center gap-2 px-4 py-2 rounded-full text-text-secondary hover:bg-surface-secondary transition-colors" onclick="window.location.href='scene_dashboard.html'">
|
||||
<a href="scene_dashboard.html" class="flex items-center gap-2 px-4 py-2 rounded-full text-text-secondary hover:bg-surface-secondary transition-colors">
|
||||
<svg class="w-5 h-5"><use href="#icon-home"></use></svg>
|
||||
<span class="text-sm font-medium">홈</span>
|
||||
</button>
|
||||
</a>
|
||||
<h1 class="font-display text-lg font-semibold text-text-primary">스와이프 모드</h1>
|
||||
<button class="flex items-center gap-2 px-5 py-3 bg-gradient-to-r from-primary to-primary-dark rounded-full text-white text-sm font-semibold shadow-md transition-all duration-250 hover:-translate-y-0.5 hover:shadow-lg disabled:opacity-40 disabled:cursor-not-allowed disabled:transform-none" id="undoBtn" disabled>
|
||||
<svg class="w-4 h-4"><use href="#icon-arrow-uturn-left"></use></svg>
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>구조 제안 - Chakmate</title>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
<!-- Heroicons SVG Sprite -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none; width: 0; height: 0;">
|
||||
<symbol id="icon-arrow-left" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||
@@ -85,11 +82,11 @@
|
||||
<h1 class="header-title">구조 제안</h1>
|
||||
</div>
|
||||
<div class="header-right">
|
||||
<button class="back-btn" onclick="window.location.href='index.html'" aria-label="Go back">
|
||||
<a href="scene_dashboard.html" class="back-btn" aria-label="Go back">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||
<use href="#icon-arrow-left"></use>
|
||||
</svg>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user