diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index de49bf8e..00000000 --- a/.eslintrc.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - root: true, - extends: ["myfursona"], - settings: { - next: { - rootDir: ["apps/*/"] - } - } -} diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 00000000..f3a5bdc2 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,9 @@ +{ + "root": true, + "extends": ["myfursona"], + "settings": { + "next": { + "rootDir": ["apps/*/"] + } + } +} diff --git a/TODO.md b/TODO.md index 23b70f56..98160496 100644 --- a/TODO.md +++ b/TODO.md @@ -1,6 +1,5 @@ ## TODO list - ### Components - [ ] Notification Drop Down @@ -17,7 +16,7 @@ - [ ] Completed Landing Page - [ ] Terms and Service - [ ] Pricing Page -- [ ] Character +- [ ] Character - [ ] Art Page - [ ] Character Shop Page - [ ] Character Gallery Page @@ -26,10 +25,9 @@ - [ ] Avatar Cropper (Appears when Uploading Images for Characters/Characters) - -*Tasks listed below are just waiting to get the backend setup* +_Tasks listed below are just waiting to get the backend setup_ - [ ] Authentication, Signing In, Out, Registering, Email Verification - [ ] Ability to create a Fursona - [ ] Ability to upload images -- [ ] Access Control on Characters \ No newline at end of file +- [ ] Access Control on Characters diff --git a/apps/website/package.json b/apps/website/package.json index b03b08d9..87156748 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -9,9 +9,6 @@ "lint": "next lint" }, "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.4.0", - "@fortawesome/free-brands-svg-icons": "^6.4.0", - "@fortawesome/react-fontawesome": "^0.2.0", "@headlessui/react": "^1.7.17", "@mdx-js/loader": "^2.3.0", "@mdx-js/react": "^2.3.0", @@ -27,6 +24,7 @@ "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "autoprefixer": "^10.4.15", + "class-variance-authority": "^0.7.0", "detect-browser": "^5.3.0", "eslint": "^8.48.0", "eslint-config-next": "^13.4.19", @@ -34,12 +32,12 @@ "gray-matter": "^4.0.3", "gsap": "^3.12.2", "lodash": "^4.17.21", - "lucide-react": "^0.269.0", "next": "^13.4.19", "next-pwa": "^5.6.0", "postcss": "^8.4.28", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-icons": "^4.11.0", "react-player": "^2.13.0", "react-quill": "^2.0.0", "sass": "^1.66.1", diff --git a/apps/website/src/app/blog/page.tsx b/apps/website/src/app/blog/page.tsx index ec0e3656..8d231c95 100644 --- a/apps/website/src/app/blog/page.tsx +++ b/apps/website/src/app/blog/page.tsx @@ -1,6 +1,6 @@ import { MarginClamp, Separator, Tabs } from "@/components/ui" import { Button } from "@/components/ui/Buttons" -import { RssIcon, SearchIcon } from "lucide-react" +import { LuRss as RssIcon, LuSearch as SearchIcon } from "react-icons/lu" import type { Metadata } from "next" const title = "Blog" diff --git a/apps/website/src/app/browse/ShelfSection.tsx b/apps/website/src/app/browse/ShelfSection.tsx index 1573a0a1..7639cba8 100644 --- a/apps/website/src/app/browse/ShelfSection.tsx +++ b/apps/website/src/app/browse/ShelfSection.tsx @@ -1,5 +1,5 @@ import { Carousel, GridResponsive } from "@/components/ui" -import type { LucideIcon } from "lucide-react" +import type { IconType } from "react-icons" export default function ShelfSection({ children, @@ -7,7 +7,7 @@ export default function ShelfSection({ title }: { children?: React.ReactNode - icon?: LucideIcon + icon?: IconType title?: string }) { return ( @@ -15,7 +15,7 @@ export default function ShelfSection({ as="section" title={ - + {title} } diff --git a/apps/website/src/app/browse/page.tsx b/apps/website/src/app/browse/page.tsx index 14764f33..99eb7e69 100644 --- a/apps/website/src/app/browse/page.tsx +++ b/apps/website/src/app/browse/page.tsx @@ -1,4 +1,9 @@ -import { Brush, Heart, Layers, Sparkles } from "lucide-react" +import { + LuBrush as Brush, + LuHeart as Heart, + LuLayers as Layers, + LuSparkles as Sparkles +} from "react-icons/lu" import { FursonaCard } from "@/components/ui/Cards" import type { FursonaStatus } from "@/types/Fursonas" import ShelfSection from "./ShelfSection" @@ -47,7 +52,7 @@ export default function Browse() { Artists Open for Comissions
-
+
@@ -56,7 +61,7 @@ export default function Browse() { Curated Collections
-
+
diff --git a/apps/website/src/app/profile/[profile]/(characters)/characters/CharacterView.tsx b/apps/website/src/app/profile/[profile]/(characters)/characters/CharacterView.tsx index e951ba68..36d56ece 100644 --- a/apps/website/src/app/profile/[profile]/(characters)/characters/CharacterView.tsx +++ b/apps/website/src/app/profile/[profile]/(characters)/characters/CharacterView.tsx @@ -1,7 +1,11 @@ "use client" import { useState } from "react" -import { CheckCircle2Icon, FolderPlus, XIcon } from "lucide-react" +import { + LuCheckCircle2 as CheckCircle2Icon, + LuFolderPlus as FolderPlus, + LuX as XIcon +} from "react-icons/lu" import { FolderView, GridResponsive, Modal } from "@/components/ui" import { FursonaCard, PinnedCharacter } from "@/components/ui/Cards" import { Button } from "@/components/ui/Buttons" diff --git a/apps/website/src/app/profile/[profile]/(gallery)/gallery/page.tsx b/apps/website/src/app/profile/[profile]/(gallery)/gallery/page.tsx index a3ca0cbb..4e3caead 100644 --- a/apps/website/src/app/profile/[profile]/(gallery)/gallery/page.tsx +++ b/apps/website/src/app/profile/[profile]/(gallery)/gallery/page.tsx @@ -1,5 +1,5 @@ import { SlugRouteProps } from "@/types" -import { Palette } from "lucide-react" +import { LuPalette as Palette } from "react-icons/lu" import { Metadata, ResolvingMetadata } from "next" export async function generateMetadata( diff --git a/apps/website/src/app/profile/[profile]/CharacterMasthead.tsx b/apps/website/src/app/profile/[profile]/CharacterMasthead.tsx index 23067d33..0cb077c4 100644 --- a/apps/website/src/app/profile/[profile]/CharacterMasthead.tsx +++ b/apps/website/src/app/profile/[profile]/CharacterMasthead.tsx @@ -4,16 +4,14 @@ import { useEffect, useRef } from "react" import Image from "next/image" import { Button } from "@/components/ui/Buttons" import { - ArrowLeft, - BookMarked, - EditIcon, - HeartIcon, - HistoryIcon, - HomeIcon, - LayoutGridIcon, - // LockIcon -} from "lucide-react" -// import {Badge} from '@/../../../packages/ui' + LuArrowLeft as ArrowLeft, + LuBookMarked as BookMarked, + LuPencil as EditIcon, + LuHeart as HeartIcon, + LuHistory as HistoryIcon, + LuHome as HomeIcon, + LuLayoutGrid as LayoutGridIcon +} from "react-icons/lu" import { Tabs } from "@/components/ui" import { useDetailPeekContext } from "@/context" @@ -61,7 +59,7 @@ export default function CharacterMasthead({
diff --git a/apps/website/src/app/profile/[profile]/DynamicMasthead.tsx b/apps/website/src/app/profile/[profile]/DynamicMasthead.tsx index 5e938724..3bedecf2 100644 --- a/apps/website/src/app/profile/[profile]/DynamicMasthead.tsx +++ b/apps/website/src/app/profile/[profile]/DynamicMasthead.tsx @@ -4,7 +4,13 @@ import { usePathname } from "next/navigation" import ProfileMasthead from "./ProfileMasthead" import CharacterMasthead from "./CharacterMasthead" -export default function DynamicMasthead({ handle, character }: { handle?: string, character?: string }) { +export default function DynamicMasthead({ + handle, + character +}: { + handle?: string + character?: string +}) { const isRouteCharacter = usePathname().includes("character/") return !isRouteCharacter ? ( diff --git a/apps/website/src/app/profile/[profile]/ProfileMasthead.tsx b/apps/website/src/app/profile/[profile]/ProfileMasthead.tsx index 9c49f580..8f08ee68 100644 --- a/apps/website/src/app/profile/[profile]/ProfileMasthead.tsx +++ b/apps/website/src/app/profile/[profile]/ProfileMasthead.tsx @@ -4,16 +4,16 @@ import { useEffect, useRef } from "react" import Image from "next/image" import { Button } from "@/components/ui/Buttons" import { - AlertTriangleIcon, - BrushIcon, - CatIcon, - HeartIcon, - HomeIcon, - LayoutGridIcon, - MoreVerticalIcon, - StoreIcon, - UserPlusIcon -} from "lucide-react" + LuAlertTriangle as AlertTriangleIcon, + LuBrush as BrushIcon, + LuCat as CatIcon, + LuHeart as HeartIcon, + LuHome as HomeIcon, + LuLayoutGrid as LayoutGridIcon, + LuMoreVertical as MoreVerticalIcon, + LuStore as StoreIcon, + LuUserPlus as UserPlusIcon +} from "react-icons/lu" import { Tabs, SocialsRow, BuiImage } from "@/components/ui" import { Dropdown, DropdownItem } from "@/components/ui/Dropdown" import { useDetailPeekContext } from "@/context" diff --git a/apps/website/src/app/profile/[profile]/character/[character]/(artworks)/layout.tsx b/apps/website/src/app/profile/[profile]/character/[character]/(artworks)/layout.tsx index b7428fd8..a89b20c7 100644 --- a/apps/website/src/app/profile/[profile]/character/[character]/(artworks)/layout.tsx +++ b/apps/website/src/app/profile/[profile]/character/[character]/(artworks)/layout.tsx @@ -1,7 +1,6 @@ import type { SlugRouteProps } from "@/types" import { MarginClamp } from "@/components/ui" - export default function Layout({ params, children diff --git a/apps/website/src/app/welcome/CreateProfileForm.tsx b/apps/website/src/app/welcome/CreateProfileForm.tsx index 530a8e74..6ce53591 100644 --- a/apps/website/src/app/welcome/CreateProfileForm.tsx +++ b/apps/website/src/app/welcome/CreateProfileForm.tsx @@ -3,9 +3,10 @@ import { useState } from "react" import Link from "next/link" -import type { IconName } from "@fortawesome/fontawesome-svg-core" -import { CreditCardIcon, LockIcon } from "lucide-react" -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome" +import { + LuCreditCard as CreditCardIcon, + LuLock as LockIcon +} from "react-icons/lu" import { Fieldset, Note, Separator } from "@/components/ui" import { Button } from "@/components/ui/Buttons" import { FormWithProgress, InputField } from "@/components/ui/Forms" @@ -40,33 +41,6 @@ export default function CreateProfileForm() { } ] - // TODO export these lil shits into their own component like lucide icons - const socialIcons: IconName[] = [ - "youtube", - "facebook", - "x-twitter", - "instagram", - "twitch", - "tiktok", - "github", - "telegram", - "discord", - "reddit", - "tumblr", - "threads", - "deviantart", - "artstation", - "soundcloud", - "spotify", - "itunes-note", - "patreon", - "bandcamp", - "xbox", - "steam", - "battle-net", - "dribbble" - ] - return ( <>
-
+ {/*
{socialIcons.map((icon, i) => ( ))} -
+
*/} {"Any platforms missing or have a suggestions to add? "} @@ -158,26 +132,10 @@ export default function CreateProfileForm() { - -