annotate mrjunejune/test/snapshots/tools_file_converter.snapshot @ 273:e02e2036ef84 default tip

add Layer 2 JRPG component system Add reusable content and window modals, an isolated component sandbox, shared cyberpunk scroll areas, production-safe cache freshness, and server-rendered JRPG panel state. Co-authored-by: Copilot <[email protected]>
author MrJuneJune <me@mrjunejune.com>
date Sat, 08 Aug 2026 02:08:08 -0700
parents 60a876c4587a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
1 <!DOCTYPE html>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
2 <html lang="en">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
3 <head>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
4 <meta charset="UTF-8">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
6 <title>File Format Converter</title>
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
7 <meta charset="UTF-8">
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
8 <meta name="viewport" content="width=device-width, initial-scale=1.0">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
9 <meta name="theme-color" content="#f7f3e8">
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
10 <link rel="icon" type="image/svg+xml" href="/public/epi_all_colors.svg">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
11 <link rel="manifest" href="/public/manifest.json">
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
12 <link rel="apple-touch-icon" href="/public/epi_all_colors.svg">
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
13
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
14 <link rel="preload" href="/public/fonts/Roboto-Regular.ttf" as="font" crossorigin>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
15 <link rel="preload" href="/public/fonts/Roboto-Thin.ttf"as="font" crossorigin>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
16
126
e7899c93da77 Remove playground.
June Park <parkjune1995@gmail.com>
parents: 109
diff changeset
17 <!-- <link rel="preload" href="/public/fonts/atkinson-regular.woff" as="font" type="font/woff" crossorigin> -->
e7899c93da77 Remove playground.
June Park <parkjune1995@gmail.com>
parents: 109
diff changeset
18 <!-- <link rel="preload" href="/public/fonts/atkinson-bold.woff" as="font" type="font/woff" crossorigin> -->
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
19
126
e7899c93da77 Remove playground.
June Park <parkjune1995@gmail.com>
parents: 109
diff changeset
20 <!-- <link rel="preload" href="/public/fonts/more-sugar.extras.otf" as="font" type="font/otf" crossorigin> -->
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
21 <link rel="preload" href="/public/fonts/more-sugar.regular.otf" as="font" type="font/otf" crossorigin>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
22 <link rel="preload" href="/public/fonts/more-sugar.thin.otf" as="font" type="font/otf" crossorigin>
158
1c0878eb17de [MrJuneJune] Readme file gets compiled in server side.
June Park <parkjune1995@gmail.com>
parents: 145
diff changeset
23 <link rel="preload" href="/public/epi_all_colors.svg" as="image">
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
24
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
25 <link rel="stylesheet" href="/public/design-system/styles/tokens.css" />
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
26 <link rel="stylesheet" href="/public/design-system/styles/themes.css" />
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
27 <link rel="preload" href="/base.css" as="style" />
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
28 <link rel="stylesheet" href="/base.css" />
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
29 <link rel="stylesheet" href="/public/design-system/styles/components.css" />
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
30 <script
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
31 type="module"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
32 src="/public/design-system/components/index.js"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
33 ></script>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
34
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
35 <script src="/public/pwa-register.js" defer></script>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
36
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
37 <style>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
38 .container {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
39 max-width: 800px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
40 margin: 2rem auto;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
41 padding: var(--zenbu-sys-padding-xl);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
42 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
43
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
44 .converter-section {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
45 border-radius: var(--zenbu-sys-radius-control);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
46 border: 2px solid var(--lightgray);
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
47 padding: var(--zenbu-sys-padding-xl);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
48 margin-bottom: 2rem;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
49 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
50
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
51 .converter-section h2 {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
52 margin-top: 0;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
53 color: var(--black);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
54 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
55
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
56 .file-input-wrapper {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
57 margin: 1rem 0;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
58 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
59
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
60 .file-input-wrapper label {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
61 display: block;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
62 margin-bottom: 0.5rem;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
63 font-weight: 600;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
64 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
65
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
66 input[type="file"] {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
67 padding: var(--zenbu-sys-padding-sm);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
68 border: 2px dashed #ccc;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
69 border-radius: var(--zenbu-sys-radius-control-small);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
70 background: white;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
71 font-size: var(--zenbu-sys-font-size-md);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
72 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
73
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
74 button {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
75 background: var(--purple);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
76 font-family: "More Thin", sans-serif;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
77 color: var(--gray-gradient);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
78 border: none;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
79 border-radius: var(--zenbu-sys-radius-control-small);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
80 cursor: pointer;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
81 margin-top: 1rem;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
82 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
83
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
84 button:hover {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
85 background: var(--orange);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
86 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
87
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
88 button:disabled {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
89 background: var(--gray);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
90 cursor: not-allowed;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
91 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
92
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
93 .result {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
94 margin-top: 1rem;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
95 padding: var(--zenbu-sys-padding-md);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
96 background: white;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
97 border-radius: var(--zenbu-sys-radius-control-small);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
98 display: none;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
99 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
100
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
101 .result.show {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
102 display: block;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
103 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
104
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
105 .result.success {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
106 border-left: 4px solid var(--blue);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
107 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
108
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
109 .result.error {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
110 border-left: 4px solid var(--red);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
111 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
112
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
113 .download-link {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
114 display: inline-block;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
115 margin-top: 0.5rem;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
116 color: var(--awesome);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
117 text-decoration: none;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
118 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
119
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
120 .download-link:hover {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
121 text-decoration: underline;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
122 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
123
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
124 .loading {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
125 display: none;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
126 margin-top: 1rem;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
127 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
128
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
129 .loading.show {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
130 display: block;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
131 }
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
132
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
133 /* Mobile responsive */
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
134 @media (max-width: 720px) {
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
135 .container {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
136 padding: var(--zenbu-sys-padding-md);
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
137 margin: 1rem auto;
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
138 }
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
139
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
140 .converter-section {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
141 padding:
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
142 var(--zenbu-sys-padding-lg)
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
143 var(--zenbu-sys-padding-md);
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
144 }
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
145
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
146 .converter-section h2 {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
147 font-size: var(--zenbu-sys-font-size-2xl);
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
148 }
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
149
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
150 .file-input-wrapper label {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
151 font-size: var(--zenbu-sys-font-size-md);
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
152 }
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
153
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
154
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
155 .result {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
156 padding: var(--zenbu-sys-padding-md);
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
157 font-size: var(--zenbu-sys-font-size-md);
109
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
158 }
1c446ab6f945 [MrJuneJune] New Blog about writing Seobeo library.
June Park <parkjune1995@gmail.com>
parents: 94
diff changeset
159 }
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
160 </style>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
161 </head>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
162 <body>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
163 <style>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
164 :root {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
165 --header-background: var(--white);
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
166 --header-color: var(--black);
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
167 --link-hover-accent: var(--awesome);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
168 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
169
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
170 #themeControl {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
171 position: fixed;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
172 top: 20px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
173 left: 20px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
174 z-index: 1000;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
175 transition: transform 0.2s ease;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
176 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
177
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
178 #themeControl:hover {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
179 transform: scale(1.05);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
180 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
181
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
182 #themeToggle {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
183 display: flex;
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
184 flex-direction: column;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
185 padding: 0;
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
186 border: 0;
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
187 background: transparent;
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
188 }
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
189
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
190 /* Professional header */
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
191 header {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
192 margin: auto;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
193 padding: 1.5em 1em;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
194 font-family: "More", sans-serif;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
195 width: 720px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
196 max-width: calc(100% - 2em);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
197 text-align: center;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
198 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
199
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
200 header h1 {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
201 margin: 0;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
202 font-size: 1.8em;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
203 font-weight: 700;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
204 letter-spacing: -0.5px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
205 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
206
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
207 header h1 a {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
208 text-decoration: none;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
209 color: var(--header-color);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
210 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
211
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
212 header h1 a::before {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
213 display: none;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
214 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
215
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
216 /* Mobile responsiveness */
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
217 @media (max-width: 720px) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
218 #themeControl {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
219 top: 15px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
220 left: 15px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
221 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
222
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
223 header {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
224 padding: 1em;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
225 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
226
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
227 header h1 {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
228 font-size: 1.5em;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
229 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
230 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
231
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
232 @media (max-width: 480px) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
233 #themeControl {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
234 top: 10px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
235 left: 10px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
236 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
237
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
238 #themeToggle img {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
239 height: 40px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
240 width: 40px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
241 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
242
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
243 header h1 {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
244 font-size: 1.3em;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
245 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
246 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
247
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
248 #logo {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
249 width: 300px;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
250 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
251
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
252 /* 1. DEFINE THE DEFAULTS (Light Mode) */
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
253 :root {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
254 --logo-invert: invert(0);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
255 --epi-grayscale: grayscale(0) brightness(1);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
256 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
257
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
258 /* 2. MANUAL DARK OVERRIDE */
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
259 html[data-zen-theme="ink"] {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
260 --logo-invert: invert(1);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
261 --epi-grayscale: grayscale(1);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
262 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
263
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
264 /* 3. MANUAL LIGHT OVERRIDE */
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
265 html[data-zen-theme="paper"] {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
266 --logo-invert: invert(0);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
267 --epi-grayscale: brightness(2.9) grayscale(1);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
268 }
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
269
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
270 html[data-zen-theme="playful"] {
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
271 --logo-invert: invert(0);
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
272 --epi-grayscale: saturate(1.25);
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
273 }
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
274
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
275 /* 4. SYSTEM PREFERENCE */
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
276 @media (prefers-color-scheme: dark) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
277 :root:not([data-zen-theme]) {
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
278 --logo-invert: invert(1);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
279 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
280 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
281
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
282 /* 5. APPLY TO ELEMENTS */
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
283 #logo {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
284 -webkit-filter: var(--logo-invert);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
285 filter: var(--logo-invert);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
286 transition: filter 0.3s ease;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
287 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
288
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
289 .epi-logo {
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
290 -webkit-filter: var(--epi-grayscale);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
291 filter: var(--epi-grayscale);
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
292 transition: filter 0.3s ease;
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
293 }
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
294 </style>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
295
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
296 <zen-button id="themeControl" appearance="plain" size="xl">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
297 <button
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
298 id="themeToggle"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
299 type="button"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
300 aria-label="Change site theme"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
301 >
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
302 <img
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
303 id="epiChan"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
304 class="epi-logo"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
305 alt=""
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
306 src="/public/epi_all_colors.svg"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
307 height="50"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
308 width="50"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
309 >
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
310 <span id="themeName" class="zen-visually-hidden" aria-live="polite">Auto</span>
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
311 </button>
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
312 </zen-button>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
313
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
314 <header>
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
315 <h1><a href="/" data-zen-link-effect="none">MrJuneJune</a></h1>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
316 </header>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
317 <script src="/index.js"></script>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
318
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
319
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
320 <div class="container">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
321 <h1>File Format Converter</h1>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
322 <p>Convert your images and videos to different formats using FFmpeg</p>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
323
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
324 <div class="converter-section">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
325 <h2>Image to WebP Converter</h2>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
326 <p>Upload an image file (PNG, JPG, GIF, etc.) to convert it to WebP format</p>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
327
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
328 <div class="file-input-wrapper">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
329 <label for="imageInput">Choose an image file:</label>
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
330 <zen-input appearance="plain" size="md">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
331 <input type="file" id="imageInput" accept="image/*">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
332 </zen-input>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
333 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
334
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
335 <zen-button appearance="plain" size="md">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
336 <button id="convertImageBtn" onclick="convertImageToWebP()">Convert to WebP</button>
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
337 </zen-button>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
338
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
339 <div class="loading" id="imageLoading">Converting... Please wait.</div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
340
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
341 <div class="result" id="imageResult">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
342 <p id="imageMessage"></p>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
343 <a id="imageDownload" class="download-link" style="display: none;">Download WebP Image</a>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
344 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
345 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
346
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
347 <div class="converter-section">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
348 <h2>Video to MP4 Converter</h2>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
349 <p>Upload a video file (AVI, MOV, MKV, etc.) to convert it to MP4 format</p>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
350
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
351 <div class="file-input-wrapper">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
352 <label for="videoInput">Choose a video file:</label>
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
353 <zen-input appearance="plain" size="md">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
354 <input type="file" id="videoInput" accept="video/*">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
355 </zen-input>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
356 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
357
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
358 <zen-button appearance="plain" size="md">
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
359 <button id="convertVideoBtn" onclick="convertVideoToMP4()">Convert to MP4</button>
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
360 </zen-button>
94
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
361
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
362 <div class="loading" id="videoLoading">Converting... Please wait.</div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
363
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
364 <div class="result" id="videoResult">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
365 <p id="videoMessage"></p>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
366 <a id="videoDownload" class="download-link" style="display: none;">Download MP4 Video</a>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
367 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
368 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
369 <div style="display: flex; align-items: center; justify-content: center; margin: 30px 0px;">
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
370 <small>&copy; 2026 June Park</small>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
371 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
372
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
373 </div>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
374 <script src="/tools/file_converter/index.js"></script>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
375 </body>
092afa595764 [MrJuneJune] Added Integration tests.
June Park <parkjune1995@gmail.com>
parents:
diff changeset
376 </html>