feat: bundle htmx.org locally instead of loading from unpkg

This commit is contained in:
2026-06-04 11:28:01 +02:00
parent 0c4b35cc4b
commit 8b3bd30b6c
3 changed files with 10 additions and 3 deletions

View File

@@ -4,6 +4,9 @@
"workspaces": { "workspaces": {
"": { "": {
"name": "myanimelist-ui", "name": "myanimelist-ui",
"dependencies": {
"htmx.org": "1.9.12",
},
"devDependencies": { "devDependencies": {
"@tailwindcss/cli": "^4.2.4", "@tailwindcss/cli": "^4.2.4",
"@types/node": "^24.0.0", "@types/node": "^24.0.0",
@@ -182,6 +185,8 @@
"graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="], "graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="],
"htmx.org": ["htmx.org@1.9.12", "", {}, "sha512-VZAohXyF7xPGS52IM8d1T1283y+X4D+Owf3qY1NZ9RuBypyu9l8cGsxUMAG5fEAb/DhT7rDoJ9Hpu5/HxFD3cw=="],
"is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="],
"is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="], "is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="],

View File

@@ -5,7 +5,7 @@
"scripts": { "scripts": {
"build:css": "bunx @tailwindcss/cli -i ./static/assets/style.css -o ./dist/tailwind.css", "build:css": "bunx @tailwindcss/cli -i ./static/assets/style.css -o ./dist/tailwind.css",
"watch:css": "bunx @tailwindcss/cli -i ./static/assets/style.css -o ./dist/tailwind.css --watch", "watch:css": "bunx @tailwindcss/cli -i ./static/assets/style.css -o ./dist/tailwind.css --watch",
"build:ts": "bun build ./static/player/main.ts --outdir ./dist/static/player --target browser --splitting && bun build ./static/*.ts --outdir ./dist/static --target browser --root ./static --entry-naming \"[name].js\"", "build:ts": "bun build ./static/player/main.ts --outdir ./dist/static/player --target browser --splitting && bun build ./static/*.ts --outdir ./dist/static --target browser --root ./static --entry-naming \"[name].js\" && cp ./node_modules/htmx.org/dist/htmx.min.js ./dist/static/htmx-lib.js",
"typecheck": "bunx tsc -p tsconfig.json --noEmit", "typecheck": "bunx tsc -p tsconfig.json --noEmit",
"build:assets": "bun run build:css && bun run build:ts", "build:assets": "bun run build:css && bun run build:ts",
"format": "bunx oxfmt", "format": "bunx oxfmt",
@@ -15,7 +15,9 @@
"lint:ts:fix": "bunx oxlint --ignore-path .oxlintignore static --tsconfig ./tsconfig.json --type-aware --max-warnings 0 --fix", "lint:ts:fix": "bunx oxlint --ignore-path .oxlintignore static --tsconfig ./tsconfig.json --type-aware --max-warnings 0 --fix",
"lint:go": "golangci-lint run ./..." "lint:go": "golangci-lint run ./..."
}, },
"dependencies": {}, "dependencies": {
"htmx.org": "1.9.12"
},
"devDependencies": { "devDependencies": {
"@tailwindcss/cli": "^4.2.4", "@tailwindcss/cli": "^4.2.4",
"@types/node": "^24.0.0", "@types/node": "^24.0.0",

View File

@@ -84,8 +84,8 @@
<script type="module" src="/dist/static/shell.js" defer></script> <script type="module" src="/dist/static/shell.js" defer></script>
<script type="module" src="/dist/static/watchlist.js" defer></script> <script type="module" src="/dist/static/watchlist.js" defer></script>
<script type="module" src="/dist/static/schedule_board.js" defer></script> <script type="module" src="/dist/static/schedule_board.js" defer></script>
<script src="/dist/static/htmx-lib.js"></script>
<script type="module" src="/dist/static/htmx.js" defer></script> <script type="module" src="/dist/static/htmx.js" defer></script>
<script src="https://unpkg.com/htmx.org@1.9.12"></script>
<script> <script>
document.addEventListener('htmx:afterSwap', function(evt) { document.addEventListener('htmx:afterSwap', function(evt) {
if (evt.detail.target.classList.contains('error')) { if (evt.detail.target.classList.contains('error')) {