Auto-detect content icon collections for the server bundle instead of hand-maintaining the list

Fixes noto, carbon, cbi, cib, fluent-color, logos, and solar icons silently
falling back to a live api.iconify.design call blocked by the CSP, which
only showed up after a hard refresh once the browser cached a partial
response. nuxt.config.ts now scans content/*.md for every icon collection
actually referenced and bundles it automatically, so a newly introduced
collection only needs npm install, not a manual config edit.
This commit is contained in:
Djeex
2026-09-07 16:39:23 +02:00
parent 0450a78478
commit 88e52a976a
3 changed files with 129 additions and 1 deletions
+70
View File
@@ -6,6 +6,13 @@
"": {
"name": "docudjeex",
"dependencies": {
"@iconify-json/carbon": "^1.2.26",
"@iconify-json/cbi": "^1.2.59",
"@iconify-json/cib": "^1.2.3",
"@iconify-json/fluent-color": "^1.2.21",
"@iconify-json/logos": "^1.2.14",
"@iconify-json/noto": "^1.2.7",
"@iconify-json/solar": "^1.2.10",
"@nuxtjs/i18n": "^10.6.0",
"better-sqlite3": "^12.11.1",
"docus": "^5.13.0",
@@ -1355,6 +1362,51 @@
"url": "https://github.com/sponsors/nzakas"
}
},
"node_modules/@iconify-json/carbon": {
"version": "1.2.26",
"resolved": "https://registry.npmjs.org/@iconify-json/carbon/-/carbon-1.2.26.tgz",
"integrity": "sha512-UVzlnCAzSkrNydW3GYESeggndriR1JSgU5M8DNz9S0Fu10I3NpJUYPWar+WYjMAQUIm9B7mljPpc30oal3PRSQ==",
"license": "Apache-2.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/cbi": {
"version": "1.2.59",
"resolved": "https://registry.npmjs.org/@iconify-json/cbi/-/cbi-1.2.59.tgz",
"integrity": "sha512-kvp05ix+eJk509JJ8CTEUvdNx0F5x9Xg5oBMMDnjyLzKYZTh7nEWswvGKPmAmnEQ0pVjt8R+eS65LwYmi1OvFA==",
"license": "CC-BY-NC-SA-4.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/cib": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/@iconify-json/cib/-/cib-1.2.3.tgz",
"integrity": "sha512-MMvRXVTHt82z3bYN19JDAjv/X8OBNC/1B3I334SV/1nyhdPeeyvJZVoI1cGuNqYznBjMnWxKPtIhhiVgGQ1CzQ==",
"license": "CC0-1.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/fluent-color": {
"version": "1.2.21",
"resolved": "https://registry.npmjs.org/@iconify-json/fluent-color/-/fluent-color-1.2.21.tgz",
"integrity": "sha512-VETjGx7BMpVsCR3HV5g5t6oBGZ92XKzIRClS5xUvDn1YHAkQTF9OyF/aFdtxYOC8JROoI1SNO/Ql6jZeK7mroA==",
"license": "MIT",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/logos": {
"version": "1.2.14",
"resolved": "https://registry.npmjs.org/@iconify-json/logos/-/logos-1.2.14.tgz",
"integrity": "sha512-O36DicXkgAMT6NAsH7MTWlOql8NktHz9fBCItTjz6L/9gyRXw4vQj6qTeVgww5UZWiVugUV1MhVFA/g9HWIkBw==",
"license": "CC0-1.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/lucide": {
"version": "1.2.127",
"resolved": "https://registry.npmjs.org/@iconify-json/lucide/-/lucide-1.2.127.tgz",
@@ -1364,6 +1416,15 @@
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/noto": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/@iconify-json/noto/-/noto-1.2.7.tgz",
"integrity": "sha512-2pNHliXnMLpnepNTZwR9hPBSl6GmhIfXPnudFCHY5v9pJhmA7LoVb/pFY0qLDY/k+3ikET8RXRf7XFxc/pHObA==",
"license": "Apache-2.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/simple-icons": {
"version": "1.2.94",
"resolved": "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.94.tgz",
@@ -1373,6 +1434,15 @@
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/solar": {
"version": "1.2.10",
"resolved": "https://registry.npmjs.org/@iconify-json/solar/-/solar-1.2.10.tgz",
"integrity": "sha512-ChpZ3kNw8nDhHfUoLq5JJ3AdIzytFm57dFkjAS0fjXnL5a7WwibTINjMKfvqQDhuXBrgqejNLyGp8CCpG8UyCg==",
"license": "CC-BY-4.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/vscode-icons": {
"version": "1.2.76",
"resolved": "https://registry.npmjs.org/@iconify-json/vscode-icons/-/vscode-icons-1.2.76.tgz",