Skip to content

Commit 3514147

Browse files
Refactor JS and improve HTMX integration
- Moved inline theme/layout switcher scripts to main.js - Added HTMX boost to navigation - Replaced CDN highlight.js with npm package - Fixed blog feed hover effects - Bumped package version to 1.0.29
1 parent b31508f commit 3514147

File tree

8 files changed

+41
-46
lines changed

8 files changed

+41
-46
lines changed

apps/docs/docs.html

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -483,23 +483,4 @@ <h3>Confirm your action!</h3>
483483
<button autofocus onclick="modalExample.close()">Confirm</button>
484484
</footer>
485485
</dialog>
486-
<script>
487-
for (const element of document.querySelectorAll("[data-theme-switcher]")) {
488-
element.addEventListener("click", () => {
489-
document.documentElement.setAttribute(
490-
"data-theme",
491-
element.dataset.themeSwitcher,
492-
);
493-
});
494-
}
495-
496-
for (const element of document.querySelectorAll("[data-layout-switcher]")) {
497-
element.addEventListener("click", () => {
498-
document.body.setAttribute(
499-
"data-layout",
500-
element.dataset.layoutSwitcher,
501-
);
502-
});
503-
}
504-
</script>
505486
{{/base}}

apps/docs/install.html

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -44,23 +44,4 @@ <h4>Theme Switching Code</h4>
4444
><code class="language-html">&lt;html data-theme="light"&gt;</code></pre>
4545
</section>
4646
</main>
47-
<script>
48-
for (const element of document.querySelectorAll("[data-theme-switcher]")) {
49-
element.addEventListener("click", () => {
50-
document.documentElement.setAttribute(
51-
"data-theme",
52-
element.dataset.themeSwitcher,
53-
);
54-
});
55-
}
56-
57-
for (const element of document.querySelectorAll("[data-layout-switcher]")) {
58-
element.addEventListener("click", () => {
59-
document.body.setAttribute(
60-
"data-layout",
61-
element.dataset.layoutSwitcher,
62-
);
63-
});
64-
}
65-
</script>
6647
{{/base}}

apps/docs/main.js

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
11
import "htmx.org";
22
import "launch.css";
3-
hljs.highlightAll();
3+
import "highlight.js/styles/github-dark.css";
4+
import hljs from "highlight.js";
5+
6+
function on_mount() {
7+
hljs.highlightAll();
8+
for (const element of document.querySelectorAll("[data-theme-switcher]")) {
9+
element.addEventListener("click", () => {
10+
document.documentElement.setAttribute(
11+
"data-theme",
12+
element.dataset.themeSwitcher,
13+
);
14+
});
15+
}
16+
17+
for (const element of document.querySelectorAll("[data-layout-switcher]")) {
18+
element.addEventListener("click", () => {
19+
document.body.setAttribute(
20+
"data-layout",
21+
element.dataset.layoutSwitcher,
22+
);
23+
});
24+
}
25+
}
26+
27+
on_mount();
28+
document.addEventListener("htmx:afterRequest", on_mount);

apps/docs/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"preview": "vite preview"
1010
},
1111
"devDependencies": {
12+
"highlight.js": "^11.11.1",
1213
"htmx.org": "^1.9.12",
1314
"launch.css": "workspace:*",
1415
"vite": "^6.2.0",

apps/docs/partials/base.hbs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,11 @@
55
<meta name="viewport" content="width=device-width, initial-scale=1" />
66
<meta name="color-scheme" content="light dark" />
77
<title>{{ title }}</title>
8-
<link rel="stylesheet" href="https://unpkg.com/@highlightjs/[email protected]/styles/github-dark.min.css">
9-
<script src="https://unpkg.com/@highlightjs/[email protected]/highlight.min.js"></script>
108
</head>
119

1210
<body data-layout="website">
1311
<header>
14-
<nav>
12+
<nav hx-boost="true">
1513
<a href="/">launch.css</a>
1614
<menu>
1715
<li><a href="/install">Install</a></li>

packages/main/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "launch.css",
3-
"version": "1.0.28",
3+
"version": "1.0.29",
44
"description": "A classless CSS framework built for speed. Style your website later—build it now.",
55
"homepage": "https://launch-css.dev",
66
"main": "dist/index.css",

packages/main/src/compoments/_blog.scss

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ article,
4141
object-fit: cover;
4242
}
4343
}
44+
}
4445

45-
&:hover > figure > img {
46-
transform: scale(1.05);
47-
}
46+
[role="feed"] > *:hover > figure > img {
47+
transform: scale(1.05);
4848
}

pnpm-lock.yaml

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)