From 73f341aae5c6b5fddde73397a2650d1b25b87eba Mon Sep 17 00:00:00 2001 From: Freddie Date: Sat, 21 Mar 2026 16:46:55 -0700 Subject: [PATCH 1/7] Convert all icon usage to newer Iconify style --- apps/frontend/package-lock.json | 121 ------ apps/frontend/package.json | 11 - .../components/images/IconifyWrapper.svelte | 40 +- apps/frontend/shared/icons/library.ts | 410 +++++++++--------- apps/frontend/types/icons.ts | 3 +- 5 files changed, 217 insertions(+), 368 deletions(-) diff --git a/apps/frontend/package-lock.json b/apps/frontend/package-lock.json index 0c90920b1..1026cbb59 100644 --- a/apps/frontend/package-lock.json +++ b/apps/frontend/package-lock.json @@ -18,17 +18,6 @@ "tippy.js": "^6.3.7" }, "devDependencies": { - "@iconify/icons-carbon": "^1.2.20", - "@iconify/icons-emojione-monotone": "^1.2.4", - "@iconify/icons-fa-solid": "^1.2.4", - "@iconify/icons-game-icons": "^1.2.1", - "@iconify/icons-heroicons-solid": "^1.2.6", - "@iconify/icons-ic": "^1.2.13", - "@iconify/icons-mdi": "^1.2.48", - "@iconify/icons-noto": "^1.2.10", - "@iconify/icons-openmoji": "^1.2.33", - "@iconify/icons-solar": "^1.2.3", - "@iconify/icons-twemoji": "^1.2.8", "@iconify/json": "^2.2.382", "@iconify/svelte": "^5.0.1", "@iconify/types": "^2.0.0", @@ -792,116 +781,6 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@iconify/icons-carbon": { - "version": "1.2.20", - "resolved": "https://registry.npmjs.org/@iconify/icons-carbon/-/icons-carbon-1.2.20.tgz", - "integrity": "sha512-GaBRDebrshFfiRu11ktyBvm/Ez72UXvZUsHG3WPqddokTp3auOT4cLch+2JSEzeVXSGbopzU2Fhpv8vE2I0XCw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-emojione-monotone": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@iconify/icons-emojione-monotone/-/icons-emojione-monotone-1.2.4.tgz", - "integrity": "sha512-NX9UUhjmFFTsMrK8Gm91zXII+O5Ki3XwrS2C5XStz7JQihDp7ZGiVf8QT+MaDGo/tkaJPha0B682BYsZ8oNemw==", - "dev": true, - "license": "CC-BY-4.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-fa-solid": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@iconify/icons-fa-solid/-/icons-fa-solid-1.2.4.tgz", - "integrity": "sha512-gLH+zYl/Srpnlsb++vys7WNXNGPTXjd/BaUO0Q9Z52vpZnmdiHx420TzsGSS5Pi5AR3QL1wdbkopS3EIaSdsZg==", - "dev": true, - "license": "CC-BY-4.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-game-icons": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@iconify/icons-game-icons/-/icons-game-icons-1.2.1.tgz", - "integrity": "sha512-heO/4Veq5SOE7Ho1AiPn1HbSavl7ISIgiC7Ww6J2NNZ5mw+hVuTCzOQ77ImkWSjNKZZ4oEX6A6ibZEcK15J8Hg==", - "dev": true, - "license": "CC-BY-3.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-heroicons-solid": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@iconify/icons-heroicons-solid/-/icons-heroicons-solid-1.2.6.tgz", - "integrity": "sha512-IoUqqNYGIFz+jTcocExo99lPyZphUA+mJV1Sb/D2RBqCmYxFtPy1Pts2CzMaovXiQp6zW8D9aViGjdCDbHcIyA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-ic": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@iconify/icons-ic/-/icons-ic-1.2.13.tgz", - "integrity": "sha512-TphrhwOvgd7CTmUhz6jgXF+SPnMtvTm03bZsAYbny2kwq4zlkhr9e16YEyPGMvKhjtTqNooA3iZ9Wa+pZ8moXQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-mdi": { - "version": "1.2.48", - "resolved": "https://registry.npmjs.org/@iconify/icons-mdi/-/icons-mdi-1.2.48.tgz", - "integrity": "sha512-1Tiq+iX1d2MzrdDiw45Tc9HuhNgg8H4vvaKNV+kF+jmr/kPG+YyeLMyXUKp4bwv+gheIAgNpZPjuqAPRkmMieA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-noto": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@iconify/icons-noto/-/icons-noto-1.2.10.tgz", - "integrity": "sha512-tTaBjHwW8MadgqcunNztkWLbACDkuebeJTSfEMNxJihJtXCLe2wz0x4ILvF2bnftU8K21sfi4sBOJXgf1Ia+Mw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-openmoji": { - "version": "1.2.33", - "resolved": "https://registry.npmjs.org/@iconify/icons-openmoji/-/icons-openmoji-1.2.33.tgz", - "integrity": "sha512-moKObRJzba3G+cyJIo8E9gycmz9bWZXgArzFk2Or1B57/I/ybro430nIcjeCHuuMaPqnNowFjbm+kRe7Q2gZaA==", - "dev": true, - "license": "CC-BY-SA-4.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-solar": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@iconify/icons-solar/-/icons-solar-1.2.3.tgz", - "integrity": "sha512-dots93IzoaOrJ8aUD2YGZ4+Jy+yf5D87CmzSeBkEi/m+WX1klvHqWuw5kyZvVroLOlaIaJXb5nZVaDnhc8XJyQ==", - "dev": true, - "license": "CC-BY-4.0", - "dependencies": { - "@iconify/types": "*" - } - }, - "node_modules/@iconify/icons-twemoji": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@iconify/icons-twemoji/-/icons-twemoji-1.2.8.tgz", - "integrity": "sha512-i1MiOeVyt5FJ9aHzsMnR+7+A9at54bUujA6Dc0e583YEpcz2VWBBtHNchBs+vRpuglH7xphPX3udnvyn0+W80A==", - "dev": true, - "license": "CC-BY-4.0", - "dependencies": { - "@iconify/types": "*" - } - }, "node_modules/@iconify/json": { "version": "2.2.382", "resolved": "https://registry.npmjs.org/@iconify/json/-/json-2.2.382.tgz", diff --git a/apps/frontend/package.json b/apps/frontend/package.json index 31f238c71..a101e2bf7 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -23,17 +23,6 @@ "tippy.js": "^6.3.7" }, "devDependencies": { - "@iconify/icons-carbon": "^1.2.20", - "@iconify/icons-emojione-monotone": "^1.2.4", - "@iconify/icons-fa-solid": "^1.2.4", - "@iconify/icons-game-icons": "^1.2.1", - "@iconify/icons-heroicons-solid": "^1.2.6", - "@iconify/icons-ic": "^1.2.13", - "@iconify/icons-mdi": "^1.2.48", - "@iconify/icons-noto": "^1.2.10", - "@iconify/icons-openmoji": "^1.2.33", - "@iconify/icons-solar": "^1.2.3", - "@iconify/icons-twemoji": "^1.2.8", "@iconify/json": "^2.2.382", "@iconify/svelte": "^5.0.1", "@iconify/types": "^2.0.0", diff --git a/apps/frontend/shared/components/images/IconifyWrapper.svelte b/apps/frontend/shared/components/images/IconifyWrapper.svelte index a11628a26..cc576d648 100644 --- a/apps/frontend/shared/components/images/IconifyWrapper.svelte +++ b/apps/frontend/shared/components/images/IconifyWrapper.svelte @@ -1,8 +1,5 @@ -{#if 'body' in icon} - {@const actualIcon = (icon || iconLibrary.mdiImageBrokenVariant) as IconifyIcon} - -{:else} - {@const Icon = icon as ComponentIcon} - - - -{/if} + + + diff --git a/apps/frontend/shared/icons/library.ts b/apps/frontend/shared/icons/library.ts index bd7c87418..a66a9b150 100644 --- a/apps/frontend/shared/icons/library.ts +++ b/apps/frontend/shared/icons/library.ts @@ -1,222 +1,222 @@ -export { default as carbonScatterMatrix } from '@iconify/icons-carbon/scatter-matrix'; +export { default as carbonScatterMatrix } from '~icons/carbon/scatter-matrix'; -export { default as emojiConstruction } from '@iconify/icons-emojione-monotone/construction'; -export { default as emojiWorldMap } from '@iconify/icons-emojione-monotone/world-map'; -export { default as emojiZzz } from '@iconify/icons-emojione-monotone/zzz'; +export { default as emojiConstruction } from '~icons/emojione-monotone/construction'; +export { default as emojiWorldMap } from '~icons/emojione-monotone/world-map'; +export { default as emojiZzz } from '~icons/emojione-monotone/zzz'; -export { default as faDungeon } from '@iconify/icons-fa-solid/dungeon'; +export { default as faDungeon } from '~icons/fa-solid/dungeon'; -export { default as gameAnimalHide } from '@iconify/icons-game-icons/animal-hide'; -export { default as gameAnvil } from '@iconify/icons-game-icons/anvil'; -export { default as gameBackpack } from '@iconify/icons-game-icons/backpack'; -export { default as gameBarbecue } from '@iconify/icons-game-icons/barbecue'; -export { default as gameBarbute } from '@iconify/icons-game-icons/barbute'; -export { default as gameBatLeth } from '@iconify/icons-game-icons/bat-leth'; -export { default as gameBattleAxe } from '@iconify/icons-game-icons/battle-axe'; -export { default as gameBeamsAura } from '@iconify/icons-game-icons/beams-aura'; -export { default as gameBearFace } from '@iconify/icons-game-icons/bear-face'; -export { default as gameBeltArmor } from '@iconify/icons-game-icons/belt-armor'; -export { default as gameBigDiamondRing } from '@iconify/icons-game-icons/big-diamond-ring'; -export { default as gameBlunderbuss } from '@iconify/icons-game-icons/blunderbuss'; -export { default as gameBracer } from '@iconify/icons-game-icons/bracer'; -export { default as gameBrassKnuckles } from '@iconify/icons-game-icons/brass-knuckles'; -export { default as gameBroadsword } from '@iconify/icons-game-icons/broadsword'; -export { default as gameCandleLight } from '@iconify/icons-game-icons/candle-light'; -export { default as gameCape } from '@iconify/icons-game-icons/cape'; -export { default as gameCash } from '@iconify/icons-game-icons/cash'; -export { default as gameCastle } from '@iconify/icons-game-icons/castle'; -export { default as gameChestArmor } from '@iconify/icons-game-icons/chest-armor'; -export { default as gameClosedDoors } from '@iconify/icons-game-icons/closed-doors'; -export { default as gameClothes } from '@iconify/icons-game-icons/clothes'; -export { default as gameCompanionCube } from '@iconify/icons-game-icons/companion-cube'; -export { default as gameCrossbow } from '@iconify/icons-game-icons/crossbow'; -export { default as gameCrossedSwords } from '@iconify/icons-game-icons/crossed-swords'; -export { default as gameCrownedSkull } from '@iconify/icons-game-icons/crowned-skull'; -export { default as gameCurvyKnife } from '@iconify/icons-game-icons/curvy-knife'; -export { default as gameDeathSkull } from '@iconify/icons-game-icons/death-skull'; -export { default as gameDiceRandom } from '@iconify/icons-game-icons/perspective-dice-six-faces-random'; -export { default as gameDigDug } from '@iconify/icons-game-icons/dig-dug'; -export { default as gameDorsalScales } from '@iconify/icons-game-icons/dorsal-scales'; -export { default as gameEmerald } from '@iconify/icons-game-icons/emerald'; -export { default as gameFairyWand } from '@iconify/icons-game-icons/fairy-wand'; -export { default as gameFizzingFlask } from '@iconify/icons-game-icons/fizzing-flask'; -export { default as gameFrog } from '@iconify/icons-game-icons/frog'; -export { default as gameGauntlet } from '@iconify/icons-game-icons/gauntlet'; -export { default as gameGladius } from '@iconify/icons-game-icons/gladius'; -export { default as gameGreaves } from '@iconify/icons-game-icons/greaves'; -export { default as gameHandBag } from '@iconify/icons-game-icons/hand-bag'; -export { default as gameHanger } from '@iconify/icons-game-icons/hanger'; -export { default as gameHatchet } from '@iconify/icons-game-icons/hatchet'; -export { default as gameHeartNecklace } from '@iconify/icons-game-icons/heart-necklace'; +export { default as gameAnimalHide } from '~icons/game-icons/animal-hide'; +export { default as gameAnvil } from '~icons/game-icons/anvil'; +export { default as gameBackpack } from '~icons/game-icons/backpack'; +export { default as gameBarbecue } from '~icons/game-icons/barbecue'; +export { default as gameBarbute } from '~icons/game-icons/barbute'; +export { default as gameBatLeth } from '~icons/game-icons/bat-leth'; +export { default as gameBattleAxe } from '~icons/game-icons/battle-axe'; +export { default as gameBeamsAura } from '~icons/game-icons/beams-aura'; +export { default as gameBearFace } from '~icons/game-icons/bear-face'; +export { default as gameBeltArmor } from '~icons/game-icons/belt-armor'; +export { default as gameBigDiamondRing } from '~icons/game-icons/big-diamond-ring'; +export { default as gameBlunderbuss } from '~icons/game-icons/blunderbuss'; +export { default as gameBracer } from '~icons/game-icons/bracer'; +export { default as gameBrassKnuckles } from '~icons/game-icons/brass-knuckles'; +export { default as gameBroadsword } from '~icons/game-icons/broadsword'; +export { default as gameCandleLight } from '~icons/game-icons/candle-light'; +export { default as gameCape } from '~icons/game-icons/cape'; +export { default as gameCash } from '~icons/game-icons/cash'; +export { default as gameCastle } from '~icons/game-icons/castle'; +export { default as gameChestArmor } from '~icons/game-icons/chest-armor'; +export { default as gameClosedDoors } from '~icons/game-icons/closed-doors'; +export { default as gameClothes } from '~icons/game-icons/clothes'; +export { default as gameCompanionCube } from '~icons/game-icons/companion-cube'; +export { default as gameCrossbow } from '~icons/game-icons/crossbow'; +export { default as gameCrossedSwords } from '~icons/game-icons/crossed-swords'; +export { default as gameCrownedSkull } from '~icons/game-icons/crowned-skull'; +export { default as gameCurvyKnife } from '~icons/game-icons/curvy-knife'; +export { default as gameDeathSkull } from '~icons/game-icons/death-skull'; +export { default as gameDiceRandom } from '~icons/game-icons/perspective-dice-six-faces-random'; +export { default as gameDigDug } from '~icons/game-icons/dig-dug'; +export { default as gameDorsalScales } from '~icons/game-icons/dorsal-scales'; +export { default as gameEmerald } from '~icons/game-icons/emerald'; +export { default as gameFairyWand } from '~icons/game-icons/fairy-wand'; +export { default as gameFizzingFlask } from '~icons/game-icons/fizzing-flask'; +export { default as gameFrog } from '~icons/game-icons/frog'; +export { default as gameGauntlet } from '~icons/game-icons/gauntlet'; +export { default as gameGladius } from '~icons/game-icons/gladius'; +export { default as gameGreaves } from '~icons/game-icons/greaves'; +export { default as gameHandBag } from '~icons/game-icons/hand-bag'; +export { default as gameHanger } from '~icons/game-icons/hanger'; +export { default as gameHatchet } from '~icons/game-icons/hatchet'; +export { default as gameHeartNecklace } from '~icons/game-icons/heart-necklace'; export { default as gameHeartPlus } from '~icons/game-icons/heart-plus'; -export { default as gameHouse } from '@iconify/icons-game-icons/house'; -export { default as gameJigsawBox } from '@iconify/icons-game-icons/jigsaw-box'; -export { default as gameKnapsack } from '@iconify/icons-game-icons/knapsack'; -export { default as gameLockedFortress } from '@iconify/icons-game-icons/locked-fortress'; -export { default as gameMetalBoot } from '@iconify/icons-game-icons/metal-boot'; -export { default as gameNightSky } from '@iconify/icons-game-icons/night-sky'; -export { default as gameNotebook } from '@iconify/icons-game-icons/notebook'; -export { default as gameOpenChest } from '@iconify/icons-game-icons/open-chest'; -export { default as gamePiranha } from '@iconify/icons-game-icons/piranha'; -export { default as gamePocketBow } from '@iconify/icons-game-icons/pocket-bow'; -export { default as gamePokecog } from '@iconify/icons-game-icons/pokecog'; -export { default as gamePresent } from '@iconify/icons-game-icons/present'; -export { default as gameRolledCloth } from '@iconify/icons-game-icons/rolled-cloth'; -export { default as gameScrollQuill } from '@iconify/icons-game-icons/scroll-quill'; -export { default as gameSecretBook } from '@iconify/icons-game-icons/secret-book'; -export { default as gameShield } from '@iconify/icons-game-icons/shield'; -export { default as gameShirt } from '@iconify/icons-game-icons/shirt'; -export { default as gameShurikenAperture } from '@iconify/icons-game-icons/shuriken-aperture'; -export { default as gameSpellBook } from '@iconify/icons-game-icons/spell-book'; -export { default as gameSpiderFace } from '@iconify/icons-game-icons/spider-face'; -export { default as gameSpikedDragonHead } from '@iconify/icons-game-icons/spiked-dragon-head'; -export { default as gameStaryu } from '@iconify/icons-game-icons/staryu'; -export { default as gameStopwatch } from '@iconify/icons-game-icons/stopwatch'; -export { default as gameStrongbox } from '@iconify/icons-game-icons/strongbox'; -export { default as gameTeslaTurret } from '@iconify/icons-game-icons/tesla-turret'; -export { default as gameThorHammer } from '@iconify/icons-game-icons/thor-hammer'; -export { default as gameThumbUp } from '@iconify/icons-game-icons/thumb-up'; -export { default as gameTotemHead } from '@iconify/icons-game-icons/totem-head'; -export { default as gameTreasureMap } from '@iconify/icons-game-icons/treasure-map'; -export { default as gameTrident } from '@iconify/icons-game-icons/trident'; -export { default as gameTrophy } from '@iconify/icons-game-icons/trophy'; -export { default as gameTwirlyFlower } from '@iconify/icons-game-icons/twirly-flower'; -export { default as gameTwoCoins } from '@iconify/icons-game-icons/two-coins'; +export { default as gameHouse } from '~icons/game-icons/house'; +export { default as gameJigsawBox } from '~icons/game-icons/jigsaw-box'; +export { default as gameKnapsack } from '~icons/game-icons/knapsack'; +export { default as gameLockedFortress } from '~icons/game-icons/locked-fortress'; +export { default as gameMetalBoot } from '~icons/game-icons/metal-boot'; +export { default as gameNightSky } from '~icons/game-icons/night-sky'; +export { default as gameNotebook } from '~icons/game-icons/notebook'; +export { default as gameOpenChest } from '~icons/game-icons/open-chest'; +export { default as gamePiranha } from '~icons/game-icons/piranha'; +export { default as gamePocketBow } from '~icons/game-icons/pocket-bow'; +export { default as gamePokecog } from '~icons/game-icons/pokecog'; +export { default as gamePresent } from '~icons/game-icons/present'; +export { default as gameRolledCloth } from '~icons/game-icons/rolled-cloth'; +export { default as gameScrollQuill } from '~icons/game-icons/scroll-quill'; +export { default as gameSecretBook } from '~icons/game-icons/secret-book'; +export { default as gameShield } from '~icons/game-icons/shield'; +export { default as gameShirt } from '~icons/game-icons/shirt'; +export { default as gameShurikenAperture } from '~icons/game-icons/shuriken-aperture'; +export { default as gameSpellBook } from '~icons/game-icons/spell-book'; +export { default as gameSpiderFace } from '~icons/game-icons/spider-face'; +export { default as gameSpikedDragonHead } from '~icons/game-icons/spiked-dragon-head'; +export { default as gameStaryu } from '~icons/game-icons/staryu'; +export { default as gameStopwatch } from '~icons/game-icons/stopwatch'; +export { default as gameStrongbox } from '~icons/game-icons/strongbox'; +export { default as gameTeslaTurret } from '~icons/game-icons/tesla-turret'; +export { default as gameThorHammer } from '~icons/game-icons/thor-hammer'; +export { default as gameThumbUp } from '~icons/game-icons/thumb-up'; +export { default as gameTotemHead } from '~icons/game-icons/totem-head'; +export { default as gameTreasureMap } from '~icons/game-icons/treasure-map'; +export { default as gameTrident } from '~icons/game-icons/trident'; +export { default as gameTrophy } from '~icons/game-icons/trophy'; +export { default as gameTwirlyFlower } from '~icons/game-icons/twirly-flower'; +export { default as gameTwoCoins } from '~icons/game-icons/two-coins'; export { default as gameUnstableOrb } from '~icons/game-icons/unstable-orb'; -export { default as gameUpgrade } from '@iconify/icons-game-icons/upgrade'; -export { default as gameWarPick } from '@iconify/icons-game-icons/war-pick'; -export { default as gameWizardStaff } from '@iconify/icons-game-icons/wizard-staff'; -export { default as gameWoodClub } from '@iconify/icons-game-icons/wood-club'; +export { default as gameUpgrade } from '~icons/game-icons/upgrade'; +export { default as gameWarPick } from '~icons/game-icons/war-pick'; +export { default as gameWizardStaff } from '~icons/game-icons/wizard-staff'; +export { default as gameWoodClub } from '~icons/game-icons/wood-club'; -export { default as hisExclamationCircle } from '@iconify/icons-heroicons-solid/exclamation-circle'; -export { default as hisTrash } from '@iconify/icons-heroicons-solid/trash'; +export { default as hisExclamationCircle } from '~icons/heroicons-solid/exclamation-circle'; +export { default as hisTrash } from '~icons/heroicons-solid/trash'; -export { default as icSharpMoreTime } from '@iconify/icons-ic/sharp-more-time'; +export { default as icSharpMoreTime } from '~icons/ic/sharp-more-time'; -export { default as mdiAccountGroupOutline } from '@iconify/icons-mdi/account-group-outline'; -export { default as mdiAccountStarOutline } from '@iconify/icons-mdi/account-star-outline'; -export { default as mdiAlertOutline } from '@iconify/icons-mdi/alert-outline'; -export { default as mdiArrowDownBoldCircleOutline } from '@iconify/icons-mdi/arrow-down-bold-circle-outline'; -export { default as mdiArrowDownBoldOutline } from '@iconify/icons-mdi/arrow-down-bold-outline'; -export { default as mdiArrowLeftBoldOutline } from '@iconify/icons-mdi/arrow-left-bold-outline'; -export { default as mdiArrowRightBoldOutline } from '@iconify/icons-mdi/arrow-right-bold-outline'; -export { default as mdiArrowUpBoldOutline } from '@iconify/icons-mdi/arrow-up-bold-outline'; -export { default as mdiAutoFix } from '@iconify/icons-mdi/auto-fix'; -export { default as mdiAxeBattle } from '@iconify/icons-mdi/axe-battle'; -export { default as mdiBank } from '@iconify/icons-mdi/bank'; -export { default as mdiBookshelf } from '@iconify/icons-mdi/bookshelf'; -export { default as mdiCalendar } from '@iconify/icons-mdi/calendar-alert'; -export { default as mdiCart } from '@iconify/icons-mdi/cart'; -export { default as mdiCartOutline } from '@iconify/icons-mdi/cart-outline'; -export { default as mdiCashMultiple } from '@iconify/icons-mdi/cash-multiple'; -export { default as mdiChartLine } from '@iconify/icons-mdi/chart-line'; -export { default as mdiChatQuestionOutline } from '@iconify/icons-mdi/chat-question-outline'; -export { default as mdiCheck } from '@iconify/icons-mdi/check'; -export { default as mdiCheckboxBlankOutline } from '@iconify/icons-mdi/checkbox-blank-outline'; -export { default as mdiCheckboxOutline } from '@iconify/icons-mdi/checkbox-outline'; -export { default as mdiChevronDown } from '@iconify/icons-mdi/chevron-down'; -export { default as mdiChevronRight } from '@iconify/icons-mdi/chevron-right'; -export { default as mdiChevronUp } from '@iconify/icons-mdi/chevron-up'; -export { default as mdiClipboardPlusOutline } from '@iconify/icons-mdi/clipboard-plus-outline'; -export { default as mdiClose } from '@iconify/icons-mdi/close'; -export { default as mdiCloud } from '@iconify/icons-mdi/cloud'; -export { default as mdiCogOutline } from '@iconify/icons-mdi/cog-outline'; -export { default as mdiCurrencyUsd } from '@iconify/icons-mdi/currency-usd'; -export { default as mdiDiceMultiple } from '@iconify/icons-mdi/dice-multiple'; -export { default as mdiDuck } from '@iconify/icons-mdi/duck'; -export { default as mdiEmoticonDevilOutline } from '@iconify/icons-mdi/emoticon-devil-outline'; -export { default as mdiExclamationThick } from '@iconify/icons-mdi/exclamation-thick'; -export { default as mdiFire } from '@iconify/icons-mdi/fire'; -export { default as mdiFormatListCheckbox } from '@iconify/icons-mdi/format-list-checkbox'; -export { default as mdiGiftOutline } from '@iconify/icons-mdi/gift-outline'; -export { default as mdiGhost } from '@iconify/icons-mdi/ghost'; -export { default as mdiHammerWrench } from '@iconify/icons-mdi/hammer-wrench'; -export { default as mdiHomeOutline } from '@iconify/icons-mdi/home-outline'; -export { default as mdiImageBrokenVariant } from '@iconify/icons-mdi/image-broken-variant'; -export { default as mdiLetterC } from '@iconify/icons-mdi/alpha-c-circle-outline'; -export { default as mdiLetterL } from '@iconify/icons-mdi/alpha-l-circle-outline'; -export { default as mdiLetterM } from '@iconify/icons-mdi/alpha-m-circle-outline'; -export { default as mdiLetterP } from '@iconify/icons-mdi/alpha-p-circle-outline'; -export { default as mdiLightningBoltOutline } from '@iconify/icons-mdi/lightning-bolt-outline'; -export { default as mdiListStatus } from '@iconify/icons-mdi/list-status'; -export { default as mdiLockOutline } from '@iconify/icons-mdi/lock-outline'; -export { default as mdiMinus } from '@iconify/icons-mdi/minus'; -export { default as mdiMulticast } from '@iconify/icons-mdi/multicast'; -export { default as mdiNumeric1CircleOutline } from '@iconify/icons-mdi/numeric-1-circle-outline'; -export { default as mdiNumeric2CircleOutline } from '@iconify/icons-mdi/numeric-2-circle-outline'; -export { default as mdiNumeric3CircleOutline } from '@iconify/icons-mdi/numeric-3-circle-outline'; -export { default as mdiNumeric4CircleOutline } from '@iconify/icons-mdi/numeric-4-circle-outline'; -export { default as mdiNumeric5CircleOutline } from '@iconify/icons-mdi/numeric-5-circle-outline'; -export { default as mdiPageFirst } from '@iconify/icons-mdi/page-first'; -export { default as mdiPageLast } from '@iconify/icons-mdi/page-last'; -export { default as mdiPartyPopper } from '@iconify/icons-mdi/party-popper'; -export { default as mdiPlanet } from '@iconify/icons-mdi/planet'; -export { default as mdiPlus } from '@iconify/icons-mdi/plus'; -export { default as mdiProgressQuestion } from '@iconify/icons-mdi/progress-question'; -export { default as mdiPuzzle } from '@iconify/icons-mdi/puzzle'; -export { default as mdiQuestion } from '@iconify/icons-mdi/help-circle-outline'; -export { default as mdiQuestionMark } from '@iconify/icons-mdi/question-mark'; -export { default as mdiRadioboxBlank } from '@iconify/icons-mdi/radiobox-blank'; -export { default as mdiRadioboxMarked } from '@iconify/icons-mdi/radiobox-marked'; -export { default as mdiRocketLaunchOutline } from '@iconify/icons-mdi/rocket-launch-outline'; -export { default as mdiRunFast } from '@iconify/icons-mdi/run-fast'; -export { default as mdiSafeSquareOutline } from '@iconify/icons-mdi/safe-square-outline'; -export { default as mdiShieldHalfFull } from '@iconify/icons-mdi/shield-half-full'; -export { default as mdiSkull } from '@iconify/icons-mdi/skull'; -export { default as mdiSlotMachineOutline } from '@iconify/icons-mdi/slot-machine-outline'; -export { default as mdiSortAlphabeticalAscending } from '@iconify/icons-mdi/sort-alphabetical-ascending'; -export { default as mdiSortAlphabeticalDescending } from '@iconify/icons-mdi/sort-alphabetical-descending'; -export { default as mdiSortNumericAscending } from '@iconify/icons-mdi/sort-numeric-ascending'; -export { default as mdiSortNumericDescending } from '@iconify/icons-mdi/sort-numeric-descending'; -export { default as mdiStarFace } from '@iconify/icons-mdi/star-face'; -export { default as mdiStarHalfFull } from '@iconify/icons-mdi/star-half-full'; -export { default as mdiStarOutline } from '@iconify/icons-mdi/star-outline'; -export { default as mdiSwimDive } from '@iconify/icons-mdi/swim-dive'; -export { default as mdiSwordCross } from '@iconify/icons-mdi/sword-cross'; -export { default as mdiTimerSand } from '@iconify/icons-mdi/timer-sand'; -export { default as mdiTrophy } from '@iconify/icons-mdi/trophy'; -export { default as mdiTshirtCrew } from '@iconify/icons-mdi/tshirt-crew'; -export { default as mdiUnicorn } from '@iconify/icons-mdi/unicorn'; -export { default as mdiWardrobeOutline } from '@iconify/icons-mdi/wardrobe-outline'; -export { default as mdiWizardHat } from '@iconify/icons-mdi/wizard-hat'; +export { default as mdiAccountGroupOutline } from '~icons/mdi/account-group-outline'; +export { default as mdiAccountStarOutline } from '~icons/mdi/account-star-outline'; +export { default as mdiAlertOutline } from '~icons/mdi/alert-outline'; +export { default as mdiArrowDownBoldCircleOutline } from '~icons/mdi/arrow-down-bold-circle-outline'; +export { default as mdiArrowDownBoldOutline } from '~icons/mdi/arrow-down-bold-outline'; +export { default as mdiArrowLeftBoldOutline } from '~icons/mdi/arrow-left-bold-outline'; +export { default as mdiArrowRightBoldOutline } from '~icons/mdi/arrow-right-bold-outline'; +export { default as mdiArrowUpBoldOutline } from '~icons/mdi/arrow-up-bold-outline'; +export { default as mdiAutoFix } from '~icons/mdi/auto-fix'; +export { default as mdiAxeBattle } from '~icons/mdi/axe-battle'; +export { default as mdiBank } from '~icons/mdi/bank'; +export { default as mdiBookshelf } from '~icons/mdi/bookshelf'; +export { default as mdiCalendar } from '~icons/mdi/calendar-alert'; +export { default as mdiCart } from '~icons/mdi/cart'; +export { default as mdiCartOutline } from '~icons/mdi/cart-outline'; +export { default as mdiCashMultiple } from '~icons/mdi/cash-multiple'; +export { default as mdiChartLine } from '~icons/mdi/chart-line'; +export { default as mdiChatQuestionOutline } from '~icons/mdi/chat-question-outline'; +export { default as mdiCheck } from '~icons/mdi/check'; +export { default as mdiCheckboxBlankOutline } from '~icons/mdi/checkbox-blank-outline'; +export { default as mdiCheckboxOutline } from '~icons/mdi/checkbox-outline'; +export { default as mdiChevronDown } from '~icons/mdi/chevron-down'; +export { default as mdiChevronRight } from '~icons/mdi/chevron-right'; +export { default as mdiChevronUp } from '~icons/mdi/chevron-up'; +export { default as mdiClipboardPlusOutline } from '~icons/mdi/clipboard-plus-outline'; +export { default as mdiClose } from '~icons/mdi/close'; +export { default as mdiCloud } from '~icons/mdi/cloud'; +export { default as mdiCogOutline } from '~icons/mdi/cog-outline'; +export { default as mdiCurrencyUsd } from '~icons/mdi/currency-usd'; +export { default as mdiDiceMultiple } from '~icons/mdi/dice-multiple'; +export { default as mdiDuck } from '~icons/mdi/duck'; +export { default as mdiEmoticonDevilOutline } from '~icons/mdi/emoticon-devil-outline'; +export { default as mdiExclamationThick } from '~icons/mdi/exclamation-thick'; +export { default as mdiFire } from '~icons/mdi/fire'; +export { default as mdiFormatListCheckbox } from '~icons/mdi/format-list-checkbox'; +export { default as mdiGiftOutline } from '~icons/mdi/gift-outline'; +export { default as mdiGhost } from '~icons/mdi/ghost'; +export { default as mdiHammerWrench } from '~icons/mdi/hammer-wrench'; +export { default as mdiHomeOutline } from '~icons/mdi/home-outline'; +export { default as mdiImageBrokenVariant } from '~icons/mdi/image-broken-variant'; +export { default as mdiLetterC } from '~icons/mdi/alpha-c-circle-outline'; +export { default as mdiLetterL } from '~icons/mdi/alpha-l-circle-outline'; +export { default as mdiLetterM } from '~icons/mdi/alpha-m-circle-outline'; +export { default as mdiLetterP } from '~icons/mdi/alpha-p-circle-outline'; +export { default as mdiLightningBoltOutline } from '~icons/mdi/lightning-bolt-outline'; +export { default as mdiListStatus } from '~icons/mdi/list-status'; +export { default as mdiLockOutline } from '~icons/mdi/lock-outline'; +export { default as mdiMinus } from '~icons/mdi/minus'; +export { default as mdiMulticast } from '~icons/mdi/multicast'; +export { default as mdiNumeric1CircleOutline } from '~icons/mdi/numeric-1-circle-outline'; +export { default as mdiNumeric2CircleOutline } from '~icons/mdi/numeric-2-circle-outline'; +export { default as mdiNumeric3CircleOutline } from '~icons/mdi/numeric-3-circle-outline'; +export { default as mdiNumeric4CircleOutline } from '~icons/mdi/numeric-4-circle-outline'; +export { default as mdiNumeric5CircleOutline } from '~icons/mdi/numeric-5-circle-outline'; +export { default as mdiPageFirst } from '~icons/mdi/page-first'; +export { default as mdiPageLast } from '~icons/mdi/page-last'; +export { default as mdiPartyPopper } from '~icons/mdi/party-popper'; +export { default as mdiPlanet } from '~icons/mdi/planet'; +export { default as mdiPlus } from '~icons/mdi/plus'; +export { default as mdiProgressQuestion } from '~icons/mdi/progress-question'; +export { default as mdiPuzzle } from '~icons/mdi/puzzle'; +export { default as mdiQuestion } from '~icons/mdi/help-circle-outline'; +export { default as mdiQuestionMark } from '~icons/mdi/question-mark'; +export { default as mdiRadioboxBlank } from '~icons/mdi/radiobox-blank'; +export { default as mdiRadioboxMarked } from '~icons/mdi/radiobox-marked'; +export { default as mdiRocketLaunchOutline } from '~icons/mdi/rocket-launch-outline'; +export { default as mdiRunFast } from '~icons/mdi/run-fast'; +export { default as mdiSafeSquareOutline } from '~icons/mdi/safe-square-outline'; +export { default as mdiShieldHalfFull } from '~icons/mdi/shield-half-full'; +export { default as mdiSkull } from '~icons/mdi/skull'; +export { default as mdiSlotMachineOutline } from '~icons/mdi/slot-machine-outline'; +export { default as mdiSortAlphabeticalAscending } from '~icons/mdi/sort-alphabetical-ascending'; +export { default as mdiSortAlphabeticalDescending } from '~icons/mdi/sort-alphabetical-descending'; +export { default as mdiSortNumericAscending } from '~icons/mdi/sort-numeric-ascending'; +export { default as mdiSortNumericDescending } from '~icons/mdi/sort-numeric-descending'; +export { default as mdiStarFace } from '~icons/mdi/star-face'; +export { default as mdiStarHalfFull } from '~icons/mdi/star-half-full'; +export { default as mdiStarOutline } from '~icons/mdi/star-outline'; +export { default as mdiSwimDive } from '~icons/mdi/swim-dive'; +export { default as mdiSwordCross } from '~icons/mdi/sword-cross'; +export { default as mdiTimerSand } from '~icons/mdi/timer-sand'; +export { default as mdiTrophy } from '~icons/mdi/trophy'; +export { default as mdiTshirtCrew } from '~icons/mdi/tshirt-crew'; +export { default as mdiUnicorn } from '~icons/mdi/unicorn'; +export { default as mdiWardrobeOutline } from '~icons/mdi/wardrobe-outline'; +export { default as mdiWizardHat } from '~icons/mdi/wizard-hat'; -export { default as notoAngryFaceWithHorns } from '@iconify/icons-noto/angry-face-with-horns'; -export { default as notoBackpack } from '@iconify/icons-noto/backpack'; -export { default as notoBank } from '@iconify/icons-noto/bank'; -export { default as notoBrick } from '@iconify/icons-noto/brick'; -export { default as notoCarrot } from '@iconify/icons-noto/carrot'; -export { default as notoCloud } from '@iconify/icons-noto/cloud'; -export { default as notoClownFace } from '@iconify/icons-noto/clown-face'; -export { default as notoCowboyHatFace } from '@iconify/icons-noto/cowboy-hat-face'; -export { default as notoCrossedSwords } from '@iconify/icons-noto/crossed-swords'; -export { default as notoDogFace } from '@iconify/icons-noto/dog-face'; -export { default as notoFamilyWomanWomanGirlBoy } from '@iconify/icons-noto/family-woman-woman-girl-boy'; -export { default as notoIce } from '@iconify/icons-noto/ice'; -export { default as notoPinkHeart } from '@iconify/icons-noto/pink-heart'; -export { default as notoRose } from '@iconify/icons-noto/rose'; -export { default as notoSnowflake } from '@iconify/icons-noto/snowflake'; -export { default as notoSunWithFace } from '@iconify/icons-noto/sun-with-face'; -export { default as notoWaterWave } from '@iconify/icons-noto/water-wave'; +export { default as notoAngryFaceWithHorns } from '~icons/noto/angry-face-with-horns'; +export { default as notoBackpack } from '~icons/noto/backpack'; +export { default as notoBank } from '~icons/noto/bank'; +export { default as notoBrick } from '~icons/noto/brick'; +export { default as notoCarrot } from '~icons/noto/carrot'; +export { default as notoCloud } from '~icons/noto/cloud'; +export { default as notoClownFace } from '~icons/noto/clown-face'; +export { default as notoCowboyHatFace } from '~icons/noto/cowboy-hat-face'; +export { default as notoCrossedSwords } from '~icons/noto/crossed-swords'; +export { default as notoDogFace } from '~icons/noto/dog-face'; +export { default as notoFamilyWomanWomanGirlBoy } from '~icons/noto/family-woman-woman-girl-boy'; +export { default as notoIce } from '~icons/noto/ice'; +export { default as notoPinkHeart } from '~icons/noto/pink-heart'; +export { default as notoRose } from '~icons/noto/rose'; +export { default as notoSnowflake } from '~icons/noto/snowflake'; +export { default as notoSunWithFace } from '~icons/noto/sun-with-face'; +export { default as notoWaterWave } from '~icons/noto/water-wave'; export { default as notoV1AngryFaceWithHorns } from '~icons/noto-v1/angry-face-with-horns'; -export { default as openmojiFlagFrance } from '@iconify/icons-openmoji/flag-france'; -export { default as openmojiFlagGermany } from '@iconify/icons-openmoji/flag-germany'; -export { default as openmojiFlagItaly } from '@iconify/icons-openmoji/flag-italy'; -export { default as openmojiFlagPortgual } from '@iconify/icons-openmoji/flag-portugal'; -export { default as openmojiFlagRussia } from '@iconify/icons-openmoji/flag-russia'; -export { default as openmojiFlagSpain } from '@iconify/icons-openmoji/flag-spain'; -export { default as openmojiFlagUnitedKingdom } from '@iconify/icons-openmoji/flag-united-kingdom'; +export { default as openmojiFlagFrance } from '~icons/openmoji/flag-france'; +export { default as openmojiFlagGermany } from '~icons/openmoji/flag-germany'; +export { default as openmojiFlagItaly } from '~icons/openmoji/flag-italy'; +export { default as openmojiFlagPortgual } from '~icons/openmoji/flag-portugal'; +export { default as openmojiFlagRussia } from '~icons/openmoji/flag-russia'; +export { default as openmojiFlagSpain } from '~icons/openmoji/flag-spain'; +export { default as openmojiFlagUnitedKingdom } from '~icons/openmoji/flag-united-kingdom'; -export { default as solarMasksBold } from '@iconify/icons-solar/masks-bold'; +export { default as solarMasksBold } from '~icons/solar/masks-bold'; -export { default as twemojiFlagFrance } from '@iconify/icons-twemoji/flag-france'; -export { default as twemojiFlagGermany } from '@iconify/icons-twemoji/flag-germany'; -export { default as twemojiFlagItaly } from '@iconify/icons-twemoji/flag-italy'; -export { default as twemojiFlagPortgual } from '@iconify/icons-twemoji/flag-portugal'; -export { default as twemojiFlagRussia } from '@iconify/icons-twemoji/flag-russia'; -export { default as twemojiFlagSpain } from '@iconify/icons-twemoji/flag-spain'; -export { default as twemojiFlagUnitedKingdom } from '@iconify/icons-twemoji/flag-united-kingdom'; +export { default as twemojiFlagFrance } from '~icons/twemoji/flag-france'; +export { default as twemojiFlagGermany } from '~icons/twemoji/flag-germany'; +export { default as twemojiFlagItaly } from '~icons/twemoji/flag-italy'; +export { default as twemojiFlagPortgual } from '~icons/twemoji/flag-portugal'; +export { default as twemojiFlagRussia } from '~icons/twemoji/flag-russia'; +export { default as twemojiFlagSpain } from '~icons/twemoji/flag-spain'; +export { default as twemojiFlagUnitedKingdom } from '~icons/twemoji/flag-united-kingdom'; export { default as GameCutDiamond } from '~icons/game-icons/cut-diamond'; export { default as GameTreasureMap } from '~icons/game-icons/treasure-map'; diff --git a/apps/frontend/types/icons.ts b/apps/frontend/types/icons.ts index c19a8eab0..886083511 100644 --- a/apps/frontend/types/icons.ts +++ b/apps/frontend/types/icons.ts @@ -2,5 +2,4 @@ import type { IconifyIcon } from '@iconify/types'; import type { Component } from 'svelte'; import type { SvelteHTMLElements } from 'svelte/elements'; -export type ComponentIcon = Component; -export type Icon = Component | IconifyIcon; +export type Icon = Component; From 5829ad0301387121b640e6fbb50b72cd517e4870 Mon Sep 17 00:00:00 2001 From: Freddie Date: Sat, 21 Mar 2026 17:33:50 -0700 Subject: [PATCH 2/7] Partial JS updates + chunking changes --- apps/frontend/auctions/Sidebar.svelte | 4 +- .../auctions/components/browse/Browse.svelte | 97 +++--- .../character-table/CharacterTable.svelte | 4 +- apps/frontend/components/team/Team.svelte | 31 +- apps/frontend/package-lock.json | 290 ++++++++++-------- apps/frontend/package.json | 30 +- .../components/paginate/Paginate.svelte | 49 +-- .../sub-sidebar/SubSidebarEntry.svelte | 17 +- apps/frontend/shared/state/settings.svelte.ts | 7 +- .../frontend/user-home/CharacterFilter.svelte | 4 +- apps/frontend/user-home/Routes.svelte | 64 ++-- apps/frontend/vite.config.ts | 10 + 12 files changed, 310 insertions(+), 297 deletions(-) diff --git a/apps/frontend/auctions/Sidebar.svelte b/apps/frontend/auctions/Sidebar.svelte index b95d7bcb3..e4689f757 100644 --- a/apps/frontend/auctions/Sidebar.svelte +++ b/apps/frontend/auctions/Sidebar.svelte @@ -1,5 +1,5 @@