daily-focus 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,36 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Daily Focus</title>
7
+ <link rel="stylesheet" href="/style.css" />
8
+ <!-- Served by the server: a briefcase for work, a house for personal. -->
9
+ <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
10
+ <script>
11
+ /*
12
+ * Applied before first paint so a dark-mode user never sees a white flash,
13
+ * and so the toggle's three icons have a state to key off in that paint too.
14
+ * It has to live here rather than in the bundle: the bundle is fetched after
15
+ * this document is already on screen.
16
+ *
17
+ * Only the two explicit modes are ever stored. Anything else — nothing yet,
18
+ * a value from an older build, a hand-edited one — stamps `system`, which
19
+ * pins no scheme and leaves the OS in charge. `client/theme.ts` writes the
20
+ * same attribute and reads the same key from then on.
21
+ */
22
+ const stored = localStorage.getItem('daily-focus:theme');
23
+ document.documentElement.dataset.theme =
24
+ stored === 'light' || stored === 'dark' ? stored : 'system';
25
+ </script>
26
+ </head>
27
+ <body>
28
+ <!--
29
+ The page is built by app.js, bundled from client/. Nothing is written here
30
+ that the client would only have to describe again: one source for the
31
+ markup, and one place a change to it is made.
32
+ -->
33
+ <div id="app"></div>
34
+ <script type="module" src="/app.js"></script>
35
+ </body>
36
+ </html>