From 7e4c91f953e4bc809722b2d31f4dd858971c7ffc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=9B?= <41524451+CaptainObjective@users.noreply.github.com> Date: Fri, 11 Nov 2022 08:06:18 +0100 Subject: [PATCH] Nowa biblioteka do Ikon (#73) --- package-lock.json | 65 ++++++++++------------------------------------- package.json | 3 +-- src/types/icon.ts | 13 ++-------- 3 files changed, 16 insertions(+), 65 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0e1afd9..dea7725 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,6 @@ "devDependencies": { "@astrojs/react": "1.2.2", "@astrojs/tailwind": "2.1.2", - "@iconify/json": "2.1.135", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", "@typescript-eslint/eslint-plugin": "5.42.1", @@ -39,10 +38,10 @@ "eslint-plugin-react": "7.31.10", "eslint-plugin-react-hooks": "4.6.0", "eslint-plugin-simple-import-sort": "8.0.0", + "iconify-icon-names": "1.0.1", "postcss": "8.4.19", "prettier": "2.7.1", "tailwindcss": "3.2.3", - "type-fest": "3.2.0", "typescript": "4.8.4", "vite": "3.2.3", "vite-tsconfig-paths": "3.5.2" @@ -781,16 +780,6 @@ "react": ">=16" } }, - "node_modules/@iconify/json": { - "version": "2.1.135", - "resolved": "https://registry.npmjs.org/@iconify/json/-/json-2.1.135.tgz", - "integrity": "sha512-TPcWuayPACVtr2PxMbayUU+UEpoeL9VKvc3iJ+nImmxCZvDqeO7ralHqBSZi52sf9O5lvpe6xQSQijSIr6omAw==", - "dev": true, - "dependencies": { - "@iconify/types": "*", - "pathe": "^0.3.0" - } - }, "node_modules/@iconify/types": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", @@ -5085,6 +5074,12 @@ "url": "https://github.com/sponsors/cyberalien" } }, + "node_modules/iconify-icon-names": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/iconify-icon-names/-/iconify-icon-names-1.0.1.tgz", + "integrity": "sha512-L9jeUGz90GmKgCLpX8O2/nT7thn2WibEHDTQL38tA+kHOMRZA56ogPRL85fTE6u5yPlC7dxP9NtgxpLJheFy5Q==", + "dev": true + }, "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -7517,12 +7512,6 @@ "node": ">=8" } }, - "node_modules/pathe": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-0.3.5.tgz", - "integrity": "sha512-grU/QeYP0ChuE5kjU2/k8VtAeODzbernHlue0gTa27+ayGIu3wqYBIPGfP9r5xSqgCgDd4nWrjKXEfxMillByg==", - "dev": true - }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -9485,18 +9474,6 @@ "node": ">= 0.8.0" } }, - "node_modules/type-fest": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.2.0.tgz", - "integrity": "sha512-Il3wdLRzWvbAEtocgxGQA9YOoRVeVUGOMBtel5LdEpNeEAol6GJTLw8GbX6Z8EIMfvfhoOXs2bwOijtAZdK5og==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/typescript": { "version": "4.8.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", @@ -11118,16 +11095,6 @@ "iconify-icon": "^1.0.1" } }, - "@iconify/json": { - "version": "2.1.135", - "resolved": "https://registry.npmjs.org/@iconify/json/-/json-2.1.135.tgz", - "integrity": "sha512-TPcWuayPACVtr2PxMbayUU+UEpoeL9VKvc3iJ+nImmxCZvDqeO7ralHqBSZi52sf9O5lvpe6xQSQijSIr6omAw==", - "dev": true, - "requires": { - "@iconify/types": "*", - "pathe": "^0.3.0" - } - }, "@iconify/types": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", @@ -14214,6 +14181,12 @@ "@iconify/types": "^2.0.0" } }, + "iconify-icon-names": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/iconify-icon-names/-/iconify-icon-names-1.0.1.tgz", + "integrity": "sha512-L9jeUGz90GmKgCLpX8O2/nT7thn2WibEHDTQL38tA+kHOMRZA56ogPRL85fTE6u5yPlC7dxP9NtgxpLJheFy5Q==", + "dev": true + }, "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -15847,12 +15820,6 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "pathe": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-0.3.5.tgz", - "integrity": "sha512-grU/QeYP0ChuE5kjU2/k8VtAeODzbernHlue0gTa27+ayGIu3wqYBIPGfP9r5xSqgCgDd4nWrjKXEfxMillByg==", - "dev": true - }, "picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -17288,12 +17255,6 @@ "prelude-ls": "^1.2.1" } }, - "type-fest": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.2.0.tgz", - "integrity": "sha512-Il3wdLRzWvbAEtocgxGQA9YOoRVeVUGOMBtel5LdEpNeEAol6GJTLw8GbX6Z8EIMfvfhoOXs2bwOijtAZdK5og==", - "dev": true - }, "typescript": { "version": "4.8.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", diff --git a/package.json b/package.json index 2aa4815..1d7d64d 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,6 @@ "devDependencies": { "@astrojs/react": "1.2.2", "@astrojs/tailwind": "2.1.2", - "@iconify/json": "2.1.135", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", "@typescript-eslint/eslint-plugin": "5.42.1", @@ -50,10 +49,10 @@ "eslint-plugin-react": "7.31.10", "eslint-plugin-react-hooks": "4.6.0", "eslint-plugin-simple-import-sort": "8.0.0", + "iconify-icon-names": "1.0.1", "postcss": "8.4.19", "prettier": "2.7.1", "tailwindcss": "3.2.3", - "type-fest": "3.2.0", "typescript": "4.8.4", "vite": "3.2.3", "vite-tsconfig-paths": "3.5.2" diff --git a/src/types/icon.ts b/src/types/icon.ts index dcf971a..5ab2d0e 100644 --- a/src/types/icon.ts +++ b/src/types/icon.ts @@ -1,12 +1,3 @@ -import type { StringKeyOf, ValueOf } from 'type-fest'; +import type { CircleFlags, Fa6Brands, Fa6Solid, SimpleIcons } from 'iconify-icon-names'; -type IconSets = { - 'fa6-brands': typeof import('@iconify/json/json/fa6-brands.json'); - 'fa6-solid': typeof import('@iconify/json/json/fa6-solid.json'); - 'simple-icons': typeof import('@iconify/json/json/simple-icons.json'); - 'circle-flags': typeof import('@iconify/json/json/circle-flags.json'); -}; - -export type IconName = ValueOf<{ - [IconSet in keyof IconSets]: `${IconSet}:${StringKeyOf}`; -}>; +export type IconName = Fa6Brands | Fa6Solid | SimpleIcons | CircleFlags;