diff --git a/package.json b/package.json index bc69598..a56d00f 100644 --- a/package.json +++ b/package.json @@ -27,13 +27,12 @@ "format": "prettier --write \"./src/**/*.{js,jsx,ts,tsx,json,vue}\"" }, "dependencies": { - "@phosphor-icons/core": "^2.0.2", + "@phosphor-icons/core": "^2.0.4", "@phosphor-icons/react": "^2.0.15", "@recoiljs/refine": "^0.1.1", "file-saver": "^2.0.2", - "framer-motion": "^9.0.1", + "framer-motion": "^10.17.12", "fuse.js": "^6.4.1", - "prop-types": "^15.8.1", "react": "^18.2.0", "react-dom": "^18.2.0", "react-dropdown-select": "^4.4.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7f1179b..be08018 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,7 @@ settings: dependencies: '@phosphor-icons/core': - specifier: ^2.0.2 + specifier: ^2.0.4 version: 2.0.4 '@phosphor-icons/react': specifier: ^2.0.15 @@ -18,14 +18,11 @@ dependencies: specifier: ^2.0.2 version: 2.0.5 framer-motion: - specifier: ^9.0.1 - version: 9.1.7(react-dom@18.2.0)(react@18.2.0) + specifier: ^10.17.12 + version: 10.17.12(react-dom@18.2.0)(react@18.2.0) fuse.js: specifier: ^6.4.1 version: 6.6.2 - prop-types: - specifier: ^15.8.1 - version: 15.8.1 react: specifier: ^18.2.0 version: 18.2.0 @@ -1043,11 +1040,16 @@ packages: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} dev: false - /framer-motion@9.1.7(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-nKxBkIO4IPkMEqcBbbATxsVjwPYShKl051yhBv9628iAH6JLeHD0siBHxkL62oQzMC1+GNX73XtPjgP753ufuw==} + /framer-motion@10.17.12(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-6aaBLN2EgH/GilXwOzEalTfw5Rx9DTQJJjTrxq5bfDbGtPCzXz2GCN6ePGRpTi1ZGugLHxdU273h38ENbcdFKQ==} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true dependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) diff --git a/src/components/App/App.tsx b/src/components/App/App.tsx index de64f76..99de892 100644 --- a/src/components/App/App.tsx +++ b/src/components/App/App.tsx @@ -8,7 +8,7 @@ import IconGrid from "@/components/IconGrid"; import Footer from "@/components/Footer"; import ErrorBoundary from "@/components/ErrorBoundary"; import Notice from "@/components/Notice"; -import Recipes from "@/components/Recipes"; +// import Recipes from "@/components/Recipes"; import { useCSSVariables } from "@/hooks"; import { isDarkThemeSelector } from "@/state"; diff --git a/src/components/IconGrid/IconGrid.css b/src/components/IconGrid/IconGrid.css index 956e39f..315c329 100644 --- a/src/components/IconGrid/IconGrid.css +++ b/src/components/IconGrid/IconGrid.css @@ -10,7 +10,7 @@ .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); - max-width: 1120px; + max-width: 1152px; margin: auto; } diff --git a/src/components/IconGrid/IconGrid.tsx b/src/components/IconGrid/IconGrid.tsx index 891ab1a..85ce486 100644 --- a/src/components/IconGrid/IconGrid.tsx +++ b/src/components/IconGrid/IconGrid.tsx @@ -64,10 +64,15 @@ const IconGrid = (_: IconGridProps) => {
- + {filteredQueryResults.map((iconEntry, index) => ( { const transition = { duration: 0.2 }; const originIndex = 0; -const delayPerPixel = 0.0004; +const delayPerPixel = 0.0003; const itemVariants = { hidden: { opacity: 0 }, @@ -68,30 +68,28 @@ const IconGridItem = (props: IconGridItemProps) => { }, [originOffset]); return ( - <> - e.key === "Enter" && handleOpen()} - onClick={handleOpen} - > - -

- {name} - {isNew && } - {isUpdated && } -

-
- + e.key === "Enter" && handleOpen()} + onClick={handleOpen} + > + +

+ {name} + {isNew && } + {isUpdated && } +

+
); }; diff --git a/src/components/IconGrid/Panel.tsx b/src/components/IconGrid/Panel.tsx index 3869796..a36b80c 100644 --- a/src/components/IconGrid/Panel.tsx +++ b/src/components/IconGrid/Panel.tsx @@ -18,6 +18,7 @@ import { CaretDoubleLeft, CaretDoubleRight, } from "@phosphor-icons/react"; +import { IconStyle } from "@phosphor-icons/core"; import ReactGA from "react-ga4"; import Tabs, { Tab } from "@/components/Tabs"; @@ -61,6 +62,7 @@ enum CopyType { SVG_DATA, PNG, PNG_DATA, + UNICODE, } function cloneWithSize(svg: SVGSVGElement, size: number): SVGSVGElement { @@ -75,12 +77,18 @@ const ActionButton = ( active?: boolean; label: string; download?: boolean; + disabled?: boolean; } & HTMLAttributes ) => { const { active, download, label, ...rest } = props; const Icon = download ? ArrowFatLinesDown : Copy; return ( -
diff --git a/src/state/RecoilSyncLocalStorage.tsx b/src/state/RecoilSyncLocalStorage.tsx index 57e17da..af35c97 100644 --- a/src/state/RecoilSyncLocalStorage.tsx +++ b/src/state/RecoilSyncLocalStorage.tsx @@ -42,6 +42,7 @@ export default ({ children }: { children: ReactNode }) => { const listen: ListenToItems = useCallback( ({ updateItem, updateAllKnownItems }) => { + void updateAllKnownItems; const onStorage = (event: StorageEvent) => { // ignore clear() calls if (event.storageArea === localStorage && event.key !== null) {