| 1 | import { cn } from "@/lib/utils"; |
| 2 | import { |
| 3 | Book, |
| 4 | CandlestickChart, |
| 5 | Circle, |
| 6 | CircleDot, |
| 7 | ClipboardListIcon, |
| 8 | Cloud, |
| 9 | Command, |
| 10 | Diamond, |
| 11 | Eye, |
| 12 | Facebook, |
| 13 | Globe, |
| 14 | Heart, |
| 15 | Lightbulb, |
| 16 | Mail, |
| 17 | Network, |
| 18 | Newspaper, |
| 19 | NotebookPen, |
| 20 | PanelsTopLeft, |
| 21 | PartyPopper, |
| 22 | Pencil, |
| 23 | Plane, |
| 24 | Puzzle, |
| 25 | Shirt, |
| 26 | Square, |
| 27 | Star, |
| 28 | Terminal, |
| 29 | Triangle, |
| 30 | User, |
| 31 | Youtube, |
| 32 | } from "lucide-react"; |
| 33 | import { forwardRef, type SVGProps } from "react"; |
| 34 | |
| 35 | interface Props { |
| 36 | className?: string; |
| 37 | } |
| 38 | |
| 39 | export const ICON_MAP = { |
| 40 | calendar: CalendarIcon, |
| 41 | cake: CakeIcon, |
| 42 | "shopping-cart": ShoppingCartIcon, |
| 43 | car: CarIcon, |
| 44 | fork: UtensilsIcon, |
| 45 | "cooking-pot": CookingPotIcon, |
| 46 | bottle: PillBottleIcon, |
| 47 | brain: Brain, |
| 48 | lightbulb: Lightbulb, |
| 49 | puzzle: Puzzle, |
| 50 | star: Star, |
| 51 | heart: Heart, |
| 52 | diamond: Diamond, |
| 53 | circle: Circle, |
| 54 | square: Square, |
| 55 | triangle: Triangle, |
| 56 | eye: Eye, |
| 57 | browser: Globe, |
| 58 | notebook: NotebookPen, |
| 59 | mouth: Mouth, |
| 60 | network: Network, |
| 61 | youtube: Youtube, |
| 62 | google: GoogleLogo, |
| 63 | facebook: Facebook, |
| 64 | cloud: Cloud, |
| 65 | weather: Cloud, |
| 66 | stock: CandlestickChart, |
| 67 | plane: Plane, |
| 68 | user: User, |
| 69 | book: Book, |
| 70 | news: Newspaper, |
| 71 | shirt: Shirt, |
| 72 | party: PartyPopper, |
| 73 | command: Command, |
| 74 | terminal: Terminal, |
| 75 | pencil: Pencil, |
| 76 | "circle-dot": CircleDot, |
| 77 | website: PanelsTopLeft, |
| 78 | mail: Mail, |
| 79 | clipboard: ClipboardListIcon, |
| 80 | }; |
| 81 | |
| 82 | export type Icons = keyof typeof ICON_MAP; |
| 83 | |
| 84 | export function FontColor(props: { className?: string }) { |
| 85 | return ( |
| 86 | <div className={cn("h-full w-full", props.className)}> |
| 87 | <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 20"> |
| 88 | <path |
| 89 | d="M11 2 5.5 16h2.25l1.12-3h6.25l1.12 3h2.25L13 2h-2zm-1.38 9L12 4.67 14.38 11H9.62z" |
| 90 | fill="currentColor" |
| 91 | ></path> |
| 92 | </svg> |
| 93 | <div className="h-2 w-full rounded-full bg-linear-to-r from-red-500 via-yellow-500 to-blue-500"></div> |
| 94 | </div> |
| 95 | ); |
| 96 | } |
| 97 | |
| 98 | export function GoogleLogo(props: { className?: string }) { |
| 99 | return ( |
| 100 | <svg |
| 101 | xmlns="http://www.w3.org/2000/svg" |
| 102 | className={cn("h-full w-full", props.className)} |
| 103 | viewBox="0 0 186.69 190.5" |
| 104 | > |
| 105 | <g transform="translate(1184.583 765.171)"> |
| 106 | <path |
| 107 | clipPath="none" |
| 108 | mask="none" |
| 109 | d="M-1089.333-687.239v36.888h51.262c-2.251 11.863-9.006 21.908-19.137 28.662l30.913 23.986c18.011-16.625 28.402-41.044 28.402-70.052 0-6.754-.606-13.249-1.732-19.483z" |
| 110 | fill="#4285f4" |
| 111 | /> |
| 112 | <path |
| 113 | clipPath="none" |
| 114 | mask="none" |
| 115 | d="M-1142.714-651.791l-6.972 5.337-24.679 19.223h0c15.673 31.086 47.796 52.561 85.03 52.561 25.717 0 47.278-8.486 63.038-23.033l-30.913-23.986c-8.486 5.715-19.31 9.179-32.125 9.179-24.765 0-45.806-16.712-53.34-39.226z" |
| 116 | fill="#34a853" |
| 117 | /> |
| 118 | <path |
| 119 | clipPath="none" |
| 120 | mask="none" |
| 121 | d="M-1174.365-712.61c-6.494 12.815-10.217 27.276-10.217 42.689s3.723 29.874 10.217 42.689c0 .086 31.693-24.592 31.693-24.592-1.905-5.715-3.031-11.776-3.031-18.098s1.126-12.383 3.031-18.098z" |
| 122 | fill="#fbbc05" |
| 123 | /> |
| 124 | <path |
| 125 | d="M-1089.333-727.244c14.028 0 26.497 4.849 36.455 14.201l27.276-27.276c-16.539-15.413-38.013-24.852-63.731-24.852-37.234 0-69.359 21.388-85.032 52.561l31.692 24.592c7.533-22.514 28.575-39.226 53.34-39.226z" |
| 126 | fill="#ea4335" |
| 127 | clipPath="none" |
| 128 | mask="none" |
| 129 | /> |
| 130 | </g> |
| 131 | </svg> |
| 132 | ); |
| 133 | } |
| 134 | |
| 135 | export function Temple(props: { className?: string }) { |
| 136 | return ( |
| 137 | <svg |
| 138 | xmlns="http://www.w3.org/2000/svg" |
| 139 | viewBox="0 0 24 24" |
| 140 | fill="currentColor" |
| 141 | stroke="currentColor" |
| 142 | strokeWidth="0" |
| 143 | strokeLinecap="round" |
| 144 | strokeLinejoin="round" |
| 145 | className={cn( |
| 146 | "relative mt-[-.125em] mr-0.5 inline-block size-[1em] shrink-0 transform-cpu text-[1.25em]", |
| 147 | props.className, |
| 148 | )} |
| 149 | > |
| 150 | <path d="M19.255 16.605a.527.527 0 0 0-.528-.527h-.188v-.779c0-3.34-1.793-6.4-4.694-8.033v-.444a3.48 3.48 0 0 0-1.318-2.73v-.565a.527.527 0 1 0-1.055 0v.565a3.48 3.48 0 0 0-1.317 2.73v.444a9.204 9.204 0 0 0-4.694 8.033v.779h-.188a.527.527 0 0 0 0 1.055h.188V21h13.078v-3.867h.188a.527.527 0 0 0 .527-.528Zm-1.77-1.306v.779H14.53v-2.702a10.76 10.76 0 0 0-1.38-5.27h.035a8.152 8.152 0 0 1 4.299 7.193Zm-6.962.779v-2.702c0-1.716.458-3.406 1.323-4.888L12 8.224l.154.264a9.704 9.704 0 0 1 1.323 4.888v2.702h-2.954Zm2.954 1.055v2.812h-2.954v-2.813h2.954ZM12 5.027c.5.457.79 1.105.79 1.795v.23h-1.58v-.23c0-.69.29-1.338.79-1.795ZM6.515 15.299a8.152 8.152 0 0 1 4.3-7.192h.034a10.76 10.76 0 0 0-1.38 5.27v2.7H6.515V15.3Zm0 1.834H9.47v2.812H6.515v-2.813Zm10.97 2.812H14.53v-2.813h2.954v2.813Z"></path> |
| 151 | <path d="M11.473 18.539a.527.527 0 0 1 1.055 0 .527.527 0 0 1-1.055 0ZM15.48 18.539a.527.527 0 0 1 1.055 0 .527.527 0 0 1-1.055 0ZM7.465 18.539a.527.527 0 0 1 1.055 0 .527.527 0 0 1-1.055 0Z"></path> |
| 152 | </svg> |
| 153 | ); |
| 154 | } |
| 155 | |
| 156 | export function Museum(props: { className?: string }) { |
| 157 | return ( |
| 158 | <svg |
| 159 | xmlns="http://www.w3.org/2000/svg" |
| 160 | viewBox="0 0 24 24" |
| 161 | fill="none" |
| 162 | stroke="currentColor" |
| 163 | strokeWidth="1.3125" |
| 164 | strokeLinecap="round" |
| 165 | strokeLinejoin="round" |
| 166 | className={cn( |
| 167 | "relative mt-[-.125em] mr-0.5 inline-block size-[1em] shrink-0 transform-cpu text-[1.25em]", |
| 168 | props.className, |
| 169 | )} |
| 170 | > |
| 171 | <path d="M19.599 10.071H4.402c-.72 0-1.03-.784-.463-1.157l7.598-4.975a.913.913 0 0 1 .926 0l7.598 4.975c.566.373.258 1.157-.462 1.157ZM19.714 17.143H4.286a.643.643 0 0 0-.643.643v1.928c0 .355.288.643.643.643h15.428a.643.643 0 0 0 .643-.643v-1.928a.643.643 0 0 0-.643-.643ZM5.571 10.071v7.072M8.786 10.071v7.072M12 10.071v7.072M15.214 10.071v7.072M18.428 10.071v7.072"></path> |
| 172 | </svg> |
| 173 | ); |
| 174 | } |
| 175 | |
| 176 | function PillBottleIcon(props) { |
| 177 | return ( |
| 178 | <svg |
| 179 | {...props} |
| 180 | xmlns="http://www.w3.org/2000/svg" |
| 181 | width="24" |
| 182 | height="24" |
| 183 | viewBox="0 0 24 24" |
| 184 | fill="none" |
| 185 | stroke="currentColor" |
| 186 | strokeWidth="2" |
| 187 | strokeLinecap="round" |
| 188 | strokeLinejoin="round" |
| 189 | > |
| 190 | <path d="M18 11h-4a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h4" /> |
| 191 | <path d="M6 7v13a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V7" /> |
| 192 | <rect width="16" height="5" x="4" y="2" rx="1" /> |
| 193 | </svg> |
| 194 | ); |
| 195 | } |
| 196 | export function Brain({ className }: { className?: string }) { |
| 197 | return ( |
| 198 | <svg |
| 199 | xmlns="http://www.w3.org/2000/svg" |
| 200 | viewBox="0 0 24 24" |
| 201 | fill="currentColor" |
| 202 | className={cn("h-6 w-6", className)} |
| 203 | > |
| 204 | <path d="M11.9563 2.53666C10.5312 2.63106 9.01178 3.02217 7.48332 3.69649C7.26304 3.79089 6.97983 3.8853 6.85396 3.90777C6.39093 3.97521 5.53679 4.25392 5.01082 4.51466C3.85998 5.0721 3.01483 5.89027 2.39446 7.02313C2.27758 7.23891 2.03482 7.60304 1.855 7.83231C0.133241 10.0351 0.0523227 12.1345 1.61225 14.2024C1.77858 14.4227 1.98987 14.7194 2.08427 14.8632C2.29106 15.1779 2.82602 15.6949 3.12272 15.8612C3.9364 16.3153 4.9344 16.3557 6.0223 15.9736C6.23358 15.9017 6.43588 15.8297 6.48083 15.8163C6.53478 15.7983 6.59772 15.8567 6.70561 16.032C7.19561 16.7918 7.88342 17.3132 8.71958 17.5515C9.21408 17.6954 10.1671 17.7223 10.8549 17.6189L11.3764 17.5425L11.5922 17.7448C11.8394 17.9786 12.1271 18.1359 12.5452 18.2663C12.8464 18.3607 13.4128 18.4506 13.7095 18.4506C13.8759 18.4506 13.9028 18.4776 15.0042 19.7003C15.6246 20.3881 16.1865 20.977 16.2585 21.013C16.4293 21.0984 17.9712 21.1344 18.2545 21.058C18.4972 20.9905 18.722 20.7703 18.7849 20.5365C18.8254 20.3881 18.8164 20.2802 18.722 19.8936C18.659 19.6419 18.6096 19.4171 18.6096 19.3991C18.6096 19.3812 18.7265 19.3362 18.8703 19.3047C19.2479 19.2193 19.8413 19.0035 20.2504 18.8012C21.653 18.0955 22.6825 16.9806 23.0151 15.7983C23.132 15.3757 23.141 14.7194 23.0331 14.3597C22.9612 14.108 22.7454 13.6809 22.624 13.5416C22.5611 13.4741 22.5701 13.4471 22.687 13.2943C23.8423 11.8018 23.7614 9.88674 22.4757 8.33131C22.3139 8.13351 22.0216 7.77837 21.8283 7.54011C21.2439 6.82533 19.5626 5.17549 18.9468 4.71246C17.1396 3.35933 15.3594 2.68051 13.26 2.53666C12.9004 2.51418 12.5767 2.4962 12.5407 2.50069C12.5048 2.50069 12.2395 2.51868 11.9563 2.53666ZM13.714 4.02466C13.9208 4.05163 14.1006 4.0831 14.1096 4.09209C14.1186 4.10108 14.0467 4.20447 13.9478 4.32136C13.4893 4.8698 13.1881 5.48568 13.0262 6.19147C12.9183 6.66799 12.8914 7.81883 12.9813 8.13351C13.1521 8.73141 13.9748 8.84829 14.2939 8.32232C14.3704 8.19645 14.3794 8.09755 14.3794 7.45919C14.3749 6.62753 14.4513 6.24991 14.7255 5.72844C14.9548 5.28788 15.6561 4.60457 15.8764 4.60457C16.1101 4.60457 18.0791 5.7644 18.1466 5.93523C18.16 5.97569 18.1016 6.13752 18.0207 6.30386C17.8903 6.5556 17.8229 6.63202 17.5352 6.82533C17.3374 6.96469 17.171 7.11753 17.1216 7.21194C17.0092 7.42323 17.0137 7.68846 17.1396 7.90424C17.3688 8.30434 17.8319 8.35379 18.3444 8.03011C18.686 7.81433 19.0322 7.46369 19.212 7.15799L19.3379 6.94671L19.7065 7.33781C19.9133 7.55359 20.21 7.88176 20.3673 8.07057C20.5247 8.25938 20.7854 8.56957 20.9472 8.75838C21.5496 9.47316 21.6305 9.58105 21.7834 9.88674C22.2779 10.8802 22.0981 11.8198 21.2394 12.7414C20.7989 13.2134 20.718 13.3932 20.8124 13.6944C20.8483 13.8203 20.9293 13.9461 21.0461 14.045C21.4327 14.3867 21.5586 14.5306 21.6126 14.7059C21.8463 15.4791 21.2709 16.4501 20.138 17.1874C19.4727 17.6189 18.7355 17.8932 17.8678 18.0235C17.3464 18.1 17.1486 18.2258 17.0362 18.536C16.9777 18.7023 16.9777 18.7608 17.0497 19.1024C17.0901 19.3092 17.1396 19.5115 17.1531 19.552C17.1755 19.6059 17.1486 19.6194 17.0317 19.6194C16.8878 19.6194 16.8024 19.534 15.7595 18.3787C15.0447 17.583 14.5906 17.1154 14.5007 17.0795C14.4243 17.048 14.1096 17.012 13.7994 16.9986C12.9138 16.9536 12.6261 16.8232 12.3384 16.3377C12.289 16.2523 12.1766 16.1354 12.0912 16.077C11.9024 15.9511 11.7001 15.9556 11.0572 16.113C10.7066 16.2029 10.5088 16.2208 9.93335 16.2208C9.15564 16.2253 8.94884 16.1714 8.50829 15.8702C8.29251 15.7218 7.86544 15.2408 7.86544 15.1464C7.86544 15.1195 7.99581 14.9891 8.15315 14.8632C8.70159 14.4272 9.07921 13.8023 9.17811 13.1774C9.21857 12.9122 9.21408 12.7908 9.15563 12.5031C9.07022 12.076 8.94435 11.8692 8.71508 11.7524C8.38241 11.5815 7.96883 11.6894 7.77553 11.9996C7.66764 12.1704 7.65865 12.3098 7.7081 12.8088C7.73507 13.1055 7.73057 13.1325 7.6047 13.3348C7.24506 13.8877 5.92789 14.5935 4.9254 14.7688C4.17017 14.8992 3.88246 14.7239 2.96538 13.573C2.28657 12.7189 2.02134 12.1659 1.9539 11.4602C1.92244 11.1275 2.00335 10.5521 2.12024 10.2733L2.18317 10.116L2.30905 10.3722C2.80804 11.3972 3.84649 12.0715 4.95238 12.085C5.4244 12.0895 5.5278 12.0491 5.7256 11.7793C5.85596 11.604 5.85596 11.1814 5.7256 11.0016C5.57725 10.7993 5.35697 10.6734 5.15018 10.6734C4.25108 10.6689 3.55429 10.0351 3.40594 9.08205C3.30704 8.4437 3.50034 7.85479 4.04879 7.12203C4.74559 6.19596 5.7211 5.61605 7.03378 5.34632C7.68562 5.21146 8.02278 5.34183 8.40489 5.8678C8.66113 6.21844 8.81398 6.31285 9.13765 6.31285C9.51078 6.31285 9.81647 5.98917 9.81647 5.59357C9.81647 5.3643 9.72656 5.18898 9.40738 4.79788L9.21408 4.56411L9.59169 4.44723C10.1132 4.28989 10.9044 4.11457 11.4169 4.04264C11.9563 3.97071 13.215 3.96172 13.714 4.02466Z"></path> |
| 205 | <path d="M10.248 6.68169C10.1356 6.74013 10.0008 6.85701 9.94234 6.94243C9.84794 7.08178 9.83895 7.13573 9.86142 7.40995C9.8794 7.64372 9.86592 7.7606 9.81197 7.87299C9.60518 8.31354 8.6926 8.71813 8.10819 8.62822C7.95984 8.60575 7.85195 8.5518 7.68562 8.40345C7.51929 8.2551 7.4114 8.20115 7.25855 8.17418C6.80001 8.10675 6.37744 8.52932 6.44487 8.98336C6.50331 9.35649 7.00231 9.81952 7.51929 9.98136C8.08122 10.1522 8.91288 10.0937 9.54225 9.8375L9.81197 9.72961L10.0502 9.99035C10.5312 10.5208 11.1112 10.8085 11.7136 10.8085C12.28 10.8085 12.6981 10.6107 12.8374 10.2826C12.9813 9.94539 12.8689 9.59924 12.5407 9.37897C12.3789 9.27107 12.235 9.26658 11.772 9.3475C11.5652 9.38796 11.4169 9.31153 11.1471 9.03731L10.9448 8.82602L11.0662 8.61474C11.4483 7.92693 11.3944 6.99637 10.9493 6.72215C10.7066 6.5693 10.4908 6.55582 10.248 6.68169Z"></path> |
| 206 | <path d="M15.0134 8.92943C14.7527 9.0643 14.6088 9.27558 14.6088 9.53632C14.6088 9.82403 14.7212 10.0218 14.9909 10.2106C15.1213 10.3005 15.2697 10.4444 15.3281 10.5253C15.4585 10.7141 15.5529 11.0738 15.5529 11.3705C15.5529 11.5863 15.445 12.1931 15.3955 12.2381C15.3865 12.2516 15.2202 12.2291 15.0359 12.1886C14.3166 12.0268 13.3771 12.1167 12.8241 12.3999C12.3161 12.6562 11.7767 13.2541 11.7048 13.6317C11.6104 14.1307 12.1004 14.5802 12.5949 14.4454C12.7792 14.3959 12.9051 14.288 13.1883 13.9329C13.3906 13.6811 13.6243 13.5822 14.0829 13.5598C14.5684 13.5328 14.973 13.6227 15.4989 13.8699C16.1822 14.1846 16.6902 14.6162 16.9105 15.0702C16.9869 15.2321 17.0139 15.3669 17.0184 15.6412C17.0229 16.0637 17.0678 16.1896 17.2567 16.3514C17.6163 16.6526 18.1198 16.5672 18.358 16.1581C18.4794 15.9513 18.5064 15.4164 18.412 15.0163C18.2502 14.3375 17.6882 13.5598 17.0049 13.0698C16.7936 12.9214 16.7262 12.845 16.7442 12.791C16.9734 12.2021 17.0544 11.2356 16.9285 10.6647C16.7622 9.92293 16.2677 9.23512 15.6922 8.95191C15.391 8.80356 15.2697 8.79906 15.0134 8.92943Z"></path> |
| 207 | <path d="M19.3469 10.2691C18.6411 10.4084 18.4838 10.4714 18.3354 10.6782C18.0073 11.1367 18.3534 11.7975 18.9198 11.7975C19.1671 11.7975 20.2595 11.5817 20.4123 11.5008C20.5742 11.4199 20.709 11.2401 20.7675 11.0423C20.8574 10.7006 20.6146 10.2736 20.273 10.1792C20.0707 10.1207 20.0932 10.1207 19.3469 10.2691Z"></path> |
| 208 | </svg> |
| 209 | ); |
| 210 | } |
| 211 | export function Mouth({ className }: { className?: string }) { |
| 212 | return ( |
| 213 | <svg |
| 214 | xmlns="http://www.w3.org/2000/svg" |
| 215 | className={cn("h-6 w-6 text-inherit", className)} |
| 216 | viewBox="0 0 192.756 192.756" |
| 217 | > |
| 218 | <g> |
| 219 | <path |
| 220 | fill="currentColor" |
| 221 | fillOpacity="0" |
| 222 | d="M0 0h192.756v192.756H0V0z" |
| 223 | /> |
| 224 | <path |
| 225 | stroke="currentColor" |
| 226 | strokeWidth={"16"} |
| 227 | d="M175.15 62.206c-25.258-14.837-22.475-27.994-31.605-45.447 0 0-1.57-4.625-9.143-7.469-16.357-3.759-28.65 11.285-31.596 13.776.545-4.99-11.155-25.778-33.425-6.568-15.29 10.952-15.257 37.678-41.136 47.984-.426-.237-4.285 2.525-.299 6.32 0 0 11.583 7.47 11.965 20.924-.715 2.699-10.044 12.34-15.183 34.234-9.724 55.166 50.81 82.287 79.378 31.068 0 0 21.273.236 33.455-28.638 7.789-16.68 8.318-30.546 27.967-51.973 5.504-5.822 9.221-9.219 9.221-9.219s3.573-2.727.401-4.992z" |
| 228 | /> |
| 229 | <path |
| 230 | d="M58.741 51.183c.989-2.379 2.006-2.686 2.006-2.686s4.436-4.226 12.465-5.28c9.168-.639 13.028 3.791 15.831 4.895 2.208 1.444 7.99 3.783 16.119-.557 6.877-4.609 14.867-4.03 14.867-4.03s6.043 0 10.27 4.225c7.137 7.521 9.812 14.802 9.984 15.481-1.105.509-11.736 7.104-16.258-5.697-12.084 14.212-24.387 6.738-26.68.623-15.348 12.282-24.249 2.933-24.504-3.948-1.868 2.209-11.681 5.559-14.1-3.026zM74.173 22.164c2.337-8.487 12.677-9.083 12.677-9.083s9.064.057 10.173 6.321c1.547 5.582-2.686 7.648-2.686 7.648s-4.499 3.183-7.781-1.517c-4.197-2.171-6.204-.217-6.204-.217s-8.379 4.001-6.179-3.152zM122.289 24.51c-2.492.906-6.572 1.92-7.152-3.349 1.629-5.391 8.662-7.182 8.662-7.182s10.305-1.926 13.393 3.477c0 0 1.656 3.778.848 6.45-5.355 7.246-10.098.928-10.098.928s-3.268-1.878-5.653-.324zM66.893 79.77c-1.132 1.019-30.346 20.819-29.736 55.84.845 7.604 5.493 7.393 5.493 7.393s4.89.392 5.947-8.058c.377-9.242 3.059-32.363 22.933-51.804 6.941-7.72-1.692-5.41-4.637-3.371zM110.023 88.602c-7.588 8.042-17.262 40.638-23.044 50.005-.113.68-10.603 14.648-2.268 20.678 8.41 2.348 14.144-8.815 16.437-17.31 1.193-3.659 4.609-37.272 21.383-53.406 3.365-3.237 4.887-4.854 5.279-6.847.238-1.218.135-2.364-.42-2.736-1.154-2.122-7.168.87-7.168.87s-5.386 2.602-10.199 8.746z" |
| 231 | fill="white" |
| 232 | /> |
| 233 | </g> |
| 234 | </svg> |
| 235 | ); |
| 236 | } |
| 237 | function CookingPotIcon(props) { |
| 238 | return ( |
| 239 | <svg |
| 240 | {...props} |
| 241 | xmlns="http://www.w3.org/2000/svg" |
| 242 | width="24" |
| 243 | height="24" |
| 244 | viewBox="0 0 24 24" |
| 245 | fill="none" |
| 246 | stroke="currentColor" |
| 247 | strokeWidth="2" |
| 248 | strokeLinecap="round" |
| 249 | strokeLinejoin="round" |
| 250 | > |
| 251 | <path d="M2 12h20" /> |
| 252 | <path d="M20 12v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8" /> |
| 253 | <path d="m4 8 16-4" /> |
| 254 | <path d="m8.86 6.78-.45-1.81a2 2 0 0 1 1.45-2.43l1.94-.48a2 2 0 0 1 2.43 1.46l.45 1.8" /> |
| 255 | </svg> |
| 256 | ); |
| 257 | } |
| 258 | export function CakeIcon(props) { |
| 259 | return ( |
| 260 | <svg |
| 261 | {...props} |
| 262 | xmlns="http://www.w3.org/2000/svg" |
| 263 | width="24" |
| 264 | height="24" |
| 265 | viewBox="0 0 24 24" |
| 266 | fill="none" |
| 267 | stroke="currentColor" |
| 268 | strokeWidth="2" |
| 269 | strokeLinecap="round" |
| 270 | strokeLinejoin="round" |
| 271 | > |
| 272 | <path d="M20 21v-8a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v8" /> |
| 273 | <path d="M4 16s.5-1 2-1 2.5 2 4 2 2.5-2 4-2 2.5 2 4 2 2-1 2-1" /> |
| 274 | <path d="M2 21h20" /> |
| 275 | <path d="M7 8v3" /> |
| 276 | <path d="M12 8v3" /> |
| 277 | <path d="M17 8v3" /> |
| 278 | <path d="M7 4h0.01" /> |
| 279 | <path d="M12 4h0.01" /> |
| 280 | <path d="M17 4h0.01" /> |
| 281 | </svg> |
| 282 | ); |
| 283 | } |
| 284 | |
| 285 | function UtensilsIcon(props) { |
| 286 | return ( |
| 287 | <svg |
| 288 | {...props} |
| 289 | xmlns="http://www.w3.org/2000/svg" |
| 290 | width="24" |
| 291 | height="24" |
| 292 | viewBox="0 0 24 24" |
| 293 | fill="none" |
| 294 | stroke="currentColor" |
| 295 | strokeWidth="2" |
| 296 | strokeLinecap="round" |
| 297 | strokeLinejoin="round" |
| 298 | > |
| 299 | <path d="M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2" /> |
| 300 | <path d="M7 2v20" /> |
| 301 | <path d="M21 15V2v0a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3Zm0 0v7" /> |
| 302 | </svg> |
| 303 | ); |
| 304 | } |
| 305 | |
| 306 | export function CalendarIcon(props) { |
| 307 | return ( |
| 308 | <svg |
| 309 | {...props} |
| 310 | xmlns="http://www.w3.org/2000/svg" |
| 311 | width="24" |
| 312 | height="24" |
| 313 | viewBox="0 0 24 24" |
| 314 | fill="none" |
| 315 | stroke="currentColor" |
| 316 | strokeWidth="2" |
| 317 | strokeLinecap="round" |
| 318 | strokeLinejoin="round" |
| 319 | > |
| 320 | <path d="M8 2v4" /> |
| 321 | <path d="M16 2v4" /> |
| 322 | <rect width="18" height="18" x="3" y="4" rx="2" /> |
| 323 | <path d="M3 10h18" /> |
| 324 | </svg> |
| 325 | ); |
| 326 | } |
| 327 | |
| 328 | export function CarIcon(props) { |
| 329 | return ( |
| 330 | <svg |
| 331 | {...props} |
| 332 | xmlns="http://www.w3.org/2000/svg" |
| 333 | width="24" |
| 334 | height="24" |
| 335 | viewBox="0 0 24 24" |
| 336 | fill="none" |
| 337 | stroke="currentColor" |
| 338 | strokeWidth="2" |
| 339 | strokeLinecap="round" |
| 340 | strokeLinejoin="round" |
| 341 | > |
| 342 | <path d="M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2" /> |
| 343 | <circle cx="7" cy="17" r="2" /> |
| 344 | <path d="M9 17h6" /> |
| 345 | <circle cx="17" cy="17" r="2" /> |
| 346 | </svg> |
| 347 | ); |
| 348 | } |
| 349 | |
| 350 | export function PenToolIcon(props) { |
| 351 | return ( |
| 352 | <svg |
| 353 | {...props} |
| 354 | xmlns="http://www.w3.org/2000/svg" |
| 355 | width="24" |
| 356 | height="24" |
| 357 | viewBox="0 0 24 24" |
| 358 | fill="none" |
| 359 | stroke="currentColor" |
| 360 | strokeWidth="2" |
| 361 | strokeLinecap="round" |
| 362 | strokeLinejoin="round" |
| 363 | > |
| 364 | <path d="M15.707 21.293a1 1 0 0 1-1.414 0l-1.586-1.586a1 1 0 0 1 0-1.414l5.586-5.586a1 1 0 0 1 1.414 0l1.586 1.586a1 1 0 0 1 0 1.414z" /> |
| 365 | <path d="m18 13-1.375-6.874a1 1 0 0 0-.746-.776L3.235 2.028a1 1 0 0 0-1.207 1.207L5.35 15.879a1 1 0 0 0 .776.746L13 18" /> |
| 366 | <path d="m2.3 2.3 7.286 7.286" /> |
| 367 | <circle cx="11" cy="11" r="2" /> |
| 368 | </svg> |
| 369 | ); |
| 370 | } |
| 371 | |
| 372 | export function ShoppingCartIcon(props) { |
| 373 | return ( |
| 374 | <svg |
| 375 | {...props} |
| 376 | xmlns="http://www.w3.org/2000/svg" |
| 377 | width="24" |
| 378 | height="24" |
| 379 | viewBox="0 0 24 24" |
| 380 | fill="none" |
| 381 | stroke="currentColor" |
| 382 | strokeWidth="2" |
| 383 | strokeLinecap="round" |
| 384 | strokeLinejoin="round" |
| 385 | > |
| 386 | <circle cx="8" cy="21" r="1" /> |
| 387 | <circle cx="19" cy="21" r="1" /> |
| 388 | <path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12" /> |
| 389 | </svg> |
| 390 | ); |
| 391 | } |
| 392 | |
| 393 | export function GoogleIcon({ className }: Props) { |
| 394 | return ( |
| 395 | <svg |
| 396 | xmlns="http://www.w3.org/2000/svg" |
| 397 | viewBox="0 0 48 48" |
| 398 | className={className} |
| 399 | > |
| 400 | <path |
| 401 | fill="#FFC107" |
| 402 | d="M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z" |
| 403 | /> |
| 404 | <path |
| 405 | fill="#FF3D00" |
| 406 | d="M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z" |
| 407 | /> |
| 408 | <path |
| 409 | fill="#4CAF50" |
| 410 | d="M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z" |
| 411 | /> |
| 412 | <path |
| 413 | fill="#1976D2" |
| 414 | d="M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z" |
| 415 | /> |
| 416 | </svg> |
| 417 | ); |
| 418 | } |
| 419 | |
| 420 | type IconSvgProps = SVGProps<SVGSVGElement>; |
| 421 | |
| 422 | export const MindMapIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 423 | (props, ref) => { |
| 424 | return ( |
| 425 | <svg |
| 426 | ref={ref} |
| 427 | xmlns="http://www.w3.org/2000/svg" |
| 428 | viewBox="0 0 24 24" |
| 429 | fill="none" |
| 430 | className={cn("h-4 w-4", props.className)} |
| 431 | {...props} |
| 432 | > |
| 433 | <path |
| 434 | d="M21 5H18.6C15 5 15 10.0313 15 12" |
| 435 | stroke="currentColor" |
| 436 | strokeWidth="2" |
| 437 | strokeLinecap="round" |
| 438 | ></path> |
| 439 | <path |
| 440 | d="M3 5H5.4C8.99996 5 9 10.0313 9 12" |
| 441 | stroke="currentColor" |
| 442 | strokeWidth="2" |
| 443 | strokeLinecap="round" |
| 444 | ></path> |
| 445 | <path |
| 446 | d="M21 19H18.6C15 19 15 13.9688 15 12" |
| 447 | stroke="currentColor" |
| 448 | strokeWidth="2" |
| 449 | strokeLinecap="round" |
| 450 | ></path> |
| 451 | <path |
| 452 | d="M3 19H5.4C8.99996 19 9 13.9688 9 12" |
| 453 | stroke="currentColor" |
| 454 | strokeWidth="2" |
| 455 | strokeLinecap="round" |
| 456 | ></path> |
| 457 | <path |
| 458 | d="M11 12H21" |
| 459 | stroke="currentColor" |
| 460 | strokeWidth="2" |
| 461 | strokeLinecap="round" |
| 462 | ></path> |
| 463 | <path |
| 464 | d="M3 12H12" |
| 465 | stroke="currentColor" |
| 466 | strokeWidth="2" |
| 467 | strokeLinecap="round" |
| 468 | ></path> |
| 469 | </svg> |
| 470 | ); |
| 471 | }, |
| 472 | ); |
| 473 | MindMapIcon.displayName = "MindMapIcon"; |
| 474 | |
| 475 | export const LogicChartIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 476 | (props, ref) => { |
| 477 | return ( |
| 478 | <svg |
| 479 | ref={ref} |
| 480 | xmlns="http://www.w3.org/2000/svg" |
| 481 | viewBox="0 0 24 24" |
| 482 | fill="none" |
| 483 | stroke="currentColor" |
| 484 | strokeWidth="2" |
| 485 | strokeLinecap="round" |
| 486 | strokeLinejoin="round" |
| 487 | className={cn("h-4 w-4", props.className)} |
| 488 | {...props} |
| 489 | > |
| 490 | <path |
| 491 | d="M20.0267 4H17.6C14 4 12.8267 9.8 12.8267 11.6" |
| 492 | stroke="currentColor" |
| 493 | strokeWidth="2" |
| 494 | strokeLinecap="round" |
| 495 | ></path> |
| 496 | <path |
| 497 | d="M20.0267 19.2001L17.7 19.2001C13.5 19.2001 12.8267 13.4001 12.8267 11.6001" |
| 498 | stroke="currentColor" |
| 499 | strokeWidth="2" |
| 500 | strokeLinecap="round" |
| 501 | ></path> |
| 502 | <path |
| 503 | d="M8.02663 11.6H20.0266M4.02535 13.6214L7.02531 13.6054C7.57811 13.6024 8.02364 13.1515 8.01995 12.5987L8.0066 10.5987C8.00291 10.047 7.55303 9.60248 7.00128 9.60543L4.00132 9.62145C3.44852 9.6244 3.00299 10.0753 3.00668 10.6281L3.02004 12.6281C3.02372 13.1798 3.4736 13.6243 4.02535 13.6214Z" |
| 504 | stroke="currentColor" |
| 505 | strokeWidth="2" |
| 506 | strokeLinecap="round" |
| 507 | ></path> |
| 508 | </svg> |
| 509 | ); |
| 510 | }, |
| 511 | ); |
| 512 | LogicChartIcon.displayName = "LogicChartIcon"; |
| 513 | export const ReverseLogicChartIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 514 | (props, ref) => { |
| 515 | return ( |
| 516 | <svg |
| 517 | ref={ref} |
| 518 | xmlns="http://www.w3.org/2000/svg" |
| 519 | viewBox="0 0 24 24" |
| 520 | fill="none" |
| 521 | stroke="currentColor" |
| 522 | strokeWidth="2" |
| 523 | strokeLinecap="round" |
| 524 | strokeLinejoin="round" |
| 525 | className={cn("h-4 w-4 rotate-180", props.className)} |
| 526 | {...props} |
| 527 | > |
| 528 | <path |
| 529 | d="M20.0267 4H17.6C14 4 12.8267 9.8 12.8267 11.6" |
| 530 | stroke="currentColor" |
| 531 | strokeWidth="2" |
| 532 | strokeLinecap="round" |
| 533 | ></path> |
| 534 | <path |
| 535 | d="M20.0267 19.2001L17.7 19.2001C13.5 19.2001 12.8267 13.4001 12.8267 11.6001" |
| 536 | stroke="currentColor" |
| 537 | strokeWidth="2" |
| 538 | strokeLinecap="round" |
| 539 | ></path> |
| 540 | <path |
| 541 | d="M8.02663 11.6H20.0266M4.02535 13.6214L7.02531 13.6054C7.57811 13.6024 8.02364 13.1515 8.01995 12.5987L8.0066 10.5987C8.00291 10.047 7.55303 9.60248 7.00128 9.60543L4.00132 9.62145C3.44852 9.6244 3.00299 10.0753 3.00668 10.6281L3.02004 12.6281C3.02372 13.1798 3.4736 13.6243 4.02535 13.6214Z" |
| 542 | stroke="currentColor" |
| 543 | strokeWidth="2" |
| 544 | strokeLinecap="round" |
| 545 | ></path> |
| 546 | </svg> |
| 547 | ); |
| 548 | }, |
| 549 | ); |
| 550 | ReverseLogicChartIcon.displayName = "ReverseLogicChartIcon"; |
| 551 | |
| 552 | export const TreeChartIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 553 | (props, ref) => { |
| 554 | return ( |
| 555 | <svg |
| 556 | ref={ref} |
| 557 | xmlns="http://www.w3.org/2000/svg" |
| 558 | viewBox="0 0 24 24" |
| 559 | fill="none" |
| 560 | className={cn("h-4 w-4", props.className)} |
| 561 | stroke="currentColor" |
| 562 | strokeWidth="2" |
| 563 | strokeLinecap="round" |
| 564 | strokeLinejoin="round" |
| 565 | {...props} |
| 566 | > |
| 567 | <path |
| 568 | d="M4 18V17.8C4 16.1198 4 15.2798 4.32698 14.638C4.6146 14.0735 5.07354 13.6146 5.63803 13.327C6.27976 13 7.11984 13 8.8 13H15.2C16.8802 13 17.7202 13 18.362 13.327C18.9265 13.6146 19.3854 14.0735 19.673 14.638C20 15.2798 20 16.1198 20 17.8V18M4 18C2.89543 18 2 18.8954 2 20C2 21.1046 2.89543 22 4 22C5.10457 22 6 21.1046 6 20C6 18.8954 5.10457 18 4 18ZM20 18C18.8954 18 18 18.8954 18 20C18 21.1046 18.8954 22 20 22C21.1046 22 22 21.1046 22 20C22 18.8954 21.1046 18 20 18ZM12 18C10.8954 18 10 18.8954 10 20C10 21.1046 10.8954 22 12 22C13.1046 22 14 21.1046 14 20C14 18.8954 13.1046 18 12 18ZM12 18V8M6 8H18C18.9319 8 19.3978 8 19.7654 7.84776C20.2554 7.64477 20.6448 7.25542 20.8478 6.76537C21 6.39782 21 5.93188 21 5C21 4.06812 21 3.60218 20.8478 3.23463C20.6448 2.74458 20.2554 2.35523 19.7654 2.15224C19.3978 2 18.9319 2 18 2H6C5.06812 2 4.60218 2 4.23463 2.15224C3.74458 2.35523 3.35523 2.74458 3.15224 3.23463C3 3.60218 3 4.06812 3 5C3 5.93188 3 6.39782 3.15224 6.76537C3.35523 7.25542 3.74458 7.64477 4.23463 7.84776C4.60218 8 5.06812 8 6 8Z" |
| 569 | stroke="currentColor" |
| 570 | strokeWidth="2" |
| 571 | strokeLinecap="round" |
| 572 | strokeLinejoin="round" |
| 573 | ></path> |
| 574 | </svg> |
| 575 | ); |
| 576 | }, |
| 577 | ); |
| 578 | TreeChartIcon.displayName = "TreeChartIcon"; |
| 579 | |
| 580 | export const TimelineChartIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 581 | (props, ref) => { |
| 582 | return ( |
| 583 | <svg |
| 584 | ref={ref} |
| 585 | xmlns="http://www.w3.org/2000/svg" |
| 586 | viewBox="0 0 24 24" |
| 587 | fill="none" |
| 588 | className={cn("h-4 w-4", props.className)} |
| 589 | stroke="currentColor" |
| 590 | strokeWidth="2" |
| 591 | strokeLinecap="round" |
| 592 | strokeLinejoin="round" |
| 593 | {...props} |
| 594 | > |
| 595 | <path |
| 596 | d="M2 11.8999H22" |
| 597 | stroke="currentColor" |
| 598 | strokeWidth="2" |
| 599 | strokeLinecap="round" |
| 600 | ></path> |
| 601 | <path |
| 602 | d="M4 11.5V5.5" |
| 603 | stroke="currentColor" |
| 604 | strokeWidth="2" |
| 605 | strokeLinecap="round" |
| 606 | ></path> |
| 607 | <path |
| 608 | d="M12 5.5V11.5" |
| 609 | stroke="currentColor" |
| 610 | strokeWidth="2" |
| 611 | strokeLinecap="round" |
| 612 | ></path> |
| 613 | <path |
| 614 | d="M7 12.5V18.5" |
| 615 | stroke="currentColor" |
| 616 | strokeWidth="2" |
| 617 | strokeLinecap="round" |
| 618 | ></path> |
| 619 | <path |
| 620 | d="M16 12.5V18.5" |
| 621 | stroke="currentColor" |
| 622 | strokeWidth="2" |
| 623 | strokeLinecap="round" |
| 624 | ></path> |
| 625 | <path |
| 626 | d="M19 11.5V5.5" |
| 627 | stroke="currentColor" |
| 628 | strokeWidth="2" |
| 629 | strokeLinecap="round" |
| 630 | ></path> |
| 631 | </svg> |
| 632 | ); |
| 633 | }, |
| 634 | ); |
| 635 | TimelineChartIcon.displayName = "TimelineChartIcon"; |
| 636 | |
| 637 | export const FishboneChartIcon = forwardRef<SVGSVGElement, IconSvgProps>( |
| 638 | (props, ref) => { |
| 639 | return ( |
| 640 | <svg |
| 641 | ref={ref} |
| 642 | xmlns="http://www.w3.org/2000/svg" |
| 643 | viewBox="0 0 24 24" |
| 644 | fill="none" |
| 645 | className={cn("h-4 w-4", props.className)} |
| 646 | stroke="currentColor" |
| 647 | strokeWidth="2" |
| 648 | strokeLinecap="round" |
| 649 | strokeLinejoin="round" |
| 650 | {...props} |
| 651 | > |
| 652 | <path |
| 653 | d="M6 12.0586H22.2" |
| 654 | stroke="currentColor" |
| 655 | strokeWidth="2" |
| 656 | strokeLinecap="round" |
| 657 | ></path> |
| 658 | <path |
| 659 | d="M8 12.0585L11.6 6.05859" |
| 660 | stroke="currentColor" |
| 661 | strokeWidth="2" |
| 662 | strokeLinecap="round" |
| 663 | ></path> |
| 664 | <path |
| 665 | d="M10.3999 12.0586L13.9999 18.0586" |
| 666 | stroke="currentColor" |
| 667 | strokeWidth="2" |
| 668 | strokeLinecap="round" |
| 669 | ></path> |
| 670 | <path |
| 671 | d="M16.8 12.0586L20.4 18.0586" |
| 672 | stroke="currentColor" |
| 673 | strokeWidth="2" |
| 674 | strokeLinecap="round" |
| 675 | ></path> |
| 676 | <path |
| 677 | d="M14.3999 12.0585L17.9999 6.05859" |
| 678 | stroke="currentColor" |
| 679 | strokeWidth="2" |
| 680 | strokeLinecap="round" |
| 681 | ></path> |
| 682 | <path |
| 683 | d="M2 11.5C2 10.6716 2.67157 10 3.5 10H4.5C5.32843 10 6 10.6716 6 11.5V12.5C6 13.3284 5.32843 14 4.5 14H3.5C2.67157 14 2 13.3284 2 12.5V11.5Z" |
| 684 | stroke="currentColor" |
| 685 | strokeWidth="2" |
| 686 | ></path> |
| 687 | </svg> |
| 688 | ); |
| 689 | }, |
| 690 | ); |
| 691 | FishboneChartIcon.displayName = "FishboneChartIcon"; |
| 692 |