refactor folder

This commit is contained in:
Ishaan Dey
2024-04-16 17:18:51 -04:00
parent 213c6e4576
commit a838241ac3
749 changed files with 6 additions and 6 deletions

36
frontend/README.md Normal file
View File

@ -0,0 +1,36 @@
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
## Getting Started
First, run the development server:
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
## Learn More
To learn more about Next.js, take a look at the following resources:
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
## Deploy on Vercel
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.

View File

@ -0,0 +1,11 @@
export default function AuthLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<div className="w-screen flex items-center justify-center h-screen">
{children}
</div>
)
}

View File

@ -0,0 +1,17 @@
import { SignIn } from "@clerk/nextjs"
import { dark } from "@clerk/themes"
export default function Page() {
return (
<SignIn
appearance={{
baseTheme: dark,
elements: {
footerActionLink: {
color: "#fff",
},
},
}}
/>
)
}

View File

@ -0,0 +1,17 @@
import { SignUp } from "@clerk/nextjs"
import { dark } from "@clerk/themes"
export default function Page() {
return (
<SignUp
appearance={{
baseTheme: dark,
elements: {
footerActionLink: {
color: "#A3A3A3",
},
},
}}
/>
)
}

View File

@ -0,0 +1,22 @@
"use client"
import Navbar from "@/components/editor/navbar"
import { useClerk } from "@clerk/nextjs"
import dynamic from "next/dynamic"
const CodeEditor = dynamic(() => import("@/components/editor"), {
ssr: false,
})
export default function CodePage() {
const clerk = useClerk()
return (
<div className="overflow-hidden overscroll-none w-screen flex flex-col h-screen bg-background">
<Navbar />
<div className="w-screen flex grow">
{clerk.loaded ? <CodeEditor /> : null}
</div>
</div>
)
}

View File

@ -0,0 +1,5 @@
import { redirect } from "next/navigation"
export default function Page() {
redirect("/")
}

View File

@ -0,0 +1,19 @@
import { UserButton, currentUser } from "@clerk/nextjs"
import { redirect } from "next/navigation"
import Dashboard from "@/components/dashboard"
import Navbar from "@/components/dashboard/navbar"
export default async function DashboardPage() {
const user = await currentUser()
if (!user) {
redirect("/")
}
return (
<div className="w-screen h-screen flex flex-col overflow-hidden overscroll-none">
<Navbar />
<Dashboard />
</div>
)
}

BIN
frontend/app/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

100
frontend/app/globals.css Normal file
View File

@ -0,0 +1,100 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 0 0% 3.9%;
--card: 0 0% 100%;
--card-foreground: 0 0% 3.9%;
--popover: 0 0% 100%;
--popover-foreground: 0 0% 3.9%;
--primary: 0 0% 9%;
--primary-foreground: 0 0% 98%;
--secondary: 0 0% 96.1%;
--secondary-foreground: 0 0% 9%;
--muted: 0 0% 96.1%;
--muted-foreground: 0 0% 45.1%;
--accent: 0 0% 96.1%;
--accent-foreground: 0 0% 9%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 89.8%;
--input: 0 0% 89.8%;
--ring: 0 0% 3.9%;
--radius: 0.5rem;
}
.dark {
--background: 0 0% 3.9%;
--foreground: 0 0% 98%;
--card: 0 0% 3.9%;
--card-foreground: 0 0% 98%;
--popover: 0 0% 3.9%;
--popover-foreground: 0 0% 98%;
--primary: 0 0% 98%;
--primary-foreground: 0 0% 9%;
--secondary: 0 0% 14.9%;
--secondary-foreground: 0 0% 98%;
--muted: 0 0% 14.9%;
--muted-foreground: 0 0% 63.9%;
--accent: 0 0% 14.9%;
--accent-foreground: 0 0% 98%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 14.9%;
--input: 0 0% 14.9%;
--ring: 0 0% 83.1%;
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
}
}
.gradient-button-bg {
background: radial-gradient(circle at top, #a5b4fc -25%, #3730a3 50%); /* violet 300 -> 800 */
}
.gradient-button {
background: radial-gradient(circle at bottom, #312e81 0%, hsl(0 0% 3.9%) 80%); /* violet 900 -> bg */
}
.gradient-button-bg > div:hover {
background: radial-gradient(circle at bottom, #312e81 0%, hsl(0 0% 3.9%) 130%); /* violet 900 -> bg */
}
.gradient-project-card-bg {
background: radial-gradient(circle at bottom right, #a5b4fc -15%, #3730a3 25%, hsl(0 0% 3.9%) 50%); /* violet 300 -> 800 */
}
.gradient-project-card {
background: radial-gradient(circle at bottom right, #312e81 -50%, hsl(0 0% 3.9%) 50%); /* violet 900 -> bg */
}
.gradient-project-card-bg > div:hover {
background: radial-gradient(circle at bottom right, #312e81 -50%, hsl(0 0% 3.9%) 60%); /* violet 900 -> bg */
}

34
frontend/app/layout.tsx Normal file
View File

@ -0,0 +1,34 @@
import type { Metadata } from "next"
import { GeistSans } from "geist/font/sans"
import { GeistMono } from "geist/font/mono"
import "./globals.css"
import { ThemeProvider } from "@/components/layout/themeProvider"
import { ClerkProvider } from "@clerk/nextjs"
export const metadata: Metadata = {
title: "Sandbox",
description: "A collaborative, AI-powered, auto-scaling code sandbox",
}
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode
}>) {
return (
<ClerkProvider>
<html lang="en" className={`${GeistSans.variable} ${GeistMono.variable}`}>
<body>
<ThemeProvider
attribute="class"
defaultTheme="dark"
forcedTheme="dark"
disableTransitionOnChange
>
{children}
</ThemeProvider>
</body>
</html>
</ClerkProvider>
)
}

62
frontend/app/page.tsx Normal file
View File

@ -0,0 +1,62 @@
import Image from "next/image"
import Logo from "@/assets/logo.svg"
import XLogo from "@/assets/x.svg"
import Button from "@/components/ui/customButton"
import { ChevronRight } from "lucide-react"
import Link from "next/link"
import { currentUser } from "@clerk/nextjs"
import { redirect } from "next/navigation"
export default async function Home() {
const user = await currentUser()
if (user) {
redirect("/dashboard")
}
return (
<div className="w-screen h-screen flex justify-center overflow-hidden overscroll-none">
<div className="w-full max-w-screen-md px-8 flex flex-col items-center">
<div className="w-full flex items-center justify-between py-8">
<div className="flex items-center font-medium">
<Image
src={Logo}
alt="Logo"
width={36}
height={36}
className="mr-2"
/>
</div>
<div className="flex items-center space-x-4">
<a href="https://www.x.com/ishaandey_" target="_blank">
<Image src={XLogo} alt="X Logo" width={18} height={18} />
</a>
</div>
</div>
<h1 className="text-2xl font-medium text-center mt-16">
A Collaborative, AI-Powered, Auto-Scaling Code Editor
</h1>
<div className="text-muted-foreground mt-4 text-center ">
Sandbox is an open-source cloud-based code editing environment with
custom AI code autocompletion and real-time collaboration. The
infrastructure runs on Docker and Kubernetes to scale automatically
based on resource usage.
</div>
<div className="mt-8 flex space-x-4">
<Link href="/sign-up">
<Button>Go To App</Button>
</Link>
<a
href="https://github.com/ishaan1013/sandbox"
target="_blank"
className="group h-9 px-4 py-2 inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"
>
GitHub Repository
<ChevronRight className="h-4 w-4 ml-1 transition-all group-hover:translate-x-1" />
</a>
</div>
<div className="aspect-video w-full rounded-lg bg-neutral-800 mt-12"></div>
</div>
</div>
)
}

18
frontend/assets/logo.svg Normal file
View File

@ -0,0 +1,18 @@
<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="40" height="40" rx="8.75" fill="url(#paint0_radial_1_21)"/>
<rect x="1.25" y="1.25" width="37.5" height="37.5" rx="7.5" fill="url(#paint1_radial_1_21)"/>
<path d="M12.6953 29.1797H25.8203C26.3176 29.1797 26.7945 28.9821 27.1461 28.6305C27.4978 28.2789 27.6953 27.802 27.6953 27.3047V15.1172L23.0078 10.4297H14.5703C14.073 10.4297 13.5961 10.6272 13.2445 10.9789C12.8929 11.3305 12.6953 11.8074 12.6953 12.3047V16.0547" stroke="white" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M22.0703 10.4297V14.1797C22.0703 14.677 22.2679 15.1539 22.6195 15.5055C22.9711 15.8571 23.448 16.0547 23.9453 16.0547H27.6953" stroke="white" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12.6953 19.8047C12.4467 19.8047 12.2082 19.9035 12.0324 20.0793C11.8566 20.2551 11.7578 20.4935 11.7578 20.7422V21.6797C11.7578 21.9283 11.659 22.1668 11.4832 22.3426C11.3074 22.5184 11.069 22.6172 10.8203 22.6172C11.069 22.6172 11.3074 22.716 11.4832 22.8918C11.659 23.0676 11.7578 23.306 11.7578 23.5547V24.4922C11.7578 24.7408 11.8566 24.9793 12.0324 25.1551C12.2082 25.3309 12.4467 25.4297 12.6953 25.4297" stroke="white" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M16.4453 25.4297C16.694 25.4297 16.9324 25.3309 17.1082 25.1551C17.284 24.9793 17.3828 24.7408 17.3828 24.4922V23.5547C17.3828 23.306 17.4816 23.0676 17.6574 22.8918C17.8332 22.716 18.0717 22.6172 18.3203 22.6172C18.0717 22.6172 17.8332 22.5184 17.6574 22.3426C17.4816 22.1668 17.3828 21.9283 17.3828 21.6797V20.7422C17.3828 20.4935 17.284 20.2551 17.1082 20.0793C16.9324 19.9035 16.694 19.8047 16.4453 19.8047" stroke="white" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
<defs>
<radialGradient id="paint0_radial_1_21" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(20) rotate(90) scale(40)">
<stop stop-color="#A5B4FC"/>
<stop offset="0.5" stop-color="#3730A3"/>
</radialGradient>
<radialGradient id="paint1_radial_1_21" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(20 38.75) rotate(-90) scale(50.75)">
<stop stop-color="#312E81"/>
<stop offset="0.5"/>
</radialGradient>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

3
frontend/assets/x.svg Normal file
View File

@ -0,0 +1,3 @@
<svg width="1200" height="1227" viewBox="0 0 1200 1227" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 430 B

17
frontend/components.json Normal file
View File

@ -0,0 +1,17 @@
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": true,
"tsx": true,
"tailwind": {
"config": "tailwind.config.ts",
"css": "app/globals.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils"
}
}

View File

@ -0,0 +1,99 @@
"use client"
import CustomButton from "@/components/ui/customButton"
import { Button } from "@/components/ui/button"
import {
Bolt,
Clock,
Code2,
FolderDot,
FolderOpenDot,
Globe,
HelpCircle,
Plus,
Settings,
User,
Users,
} from "lucide-react"
import { useState } from "react"
import { Card } from "../ui/card"
import ProjectCard from "./projectCard"
type TScreen = "projects" | "shared" | "settings" | "search"
export default function Dashboard() {
const [screen, setScreen] = useState<TScreen>("projects")
const activeScreen = (s: TScreen) => {
if (screen === s) return "justify-start"
else return "justify-start font-normal text-muted-foreground"
}
return (
<div className="flex grow w-full">
<div className="w-56 shrink-0 border-r border-border p-4 justify-between flex flex-col">
<div className="flex flex-col">
<CustomButton className="mb-4">
<Plus className="w-4 h-4 mr-2" />
New Project
</CustomButton>
<Button
variant="ghost"
onClick={() => setScreen("projects")}
className={activeScreen("projects")}
>
<FolderDot className="w-4 h-4 mr-2" />
My Projects
</Button>
<Button
variant="ghost"
onClick={() => setScreen("shared")}
className={activeScreen("shared")}
>
<Users className="w-4 h-4 mr-2" />
Shared Rooms
</Button>
<Button
variant="ghost"
onClick={() => setScreen("settings")}
className={activeScreen("settings")}
>
<Settings className="w-4 h-4 mr-2" />
Settings
</Button>
</div>
<div className="flex flex-col">
<Button
variant="ghost"
className="justify-start font-normal text-muted-foreground"
>
<Code2 className="w-4 h-4 mr-2" />
GitHub Repository
</Button>
<Button
variant="ghost"
className="justify-start font-normal text-muted-foreground"
>
<HelpCircle className="w-4 h-4 mr-2" />
About
</Button>
</div>
</div>
<div className="grow p-4 grid lg:grid-cols-4 xl:grid-cols-5 md:grid-cols-3 gap-4">
<ProjectCard>
<div className="font-medium flex items-center whitespace-nowrap w-full text-ellipsis overflow-hidden">
React Project 1
</div>
<div className="flex flex-col text-muted-foreground space-y-0.5 text-sm">
<div className="flex items-center">
<Globe className="w-3 h-3 mr-2" /> Public
</div>
<div className="flex items-center">
<Clock className="w-3 h-3 mr-2" /> 3d ago
</div>
</div>
</ProjectCard>
</div>
</div>
)
}

View File

@ -0,0 +1,37 @@
"use client"
import { UserButton } from "@clerk/nextjs"
import { dark } from "@clerk/themes"
import Image from "next/image"
import Link from "next/link"
import Logo from "@/assets/logo.svg"
import { Input } from "../../ui/input"
import { Search } from "lucide-react"
import { Suspense, useCallback, useEffect, useState } from "react"
import { useRouter, useSearchParams } from "next/navigation"
import DashboardNavbarSearch from "./search"
export default function DashboardNavbar() {
return (
<div className="h-16 px-4 w-full flex items-center justify-between border-b border-border">
<div className="flex items-center space-x-4">
<Link
href="/"
className="ring-offset-2 ring-offset-background focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none rounded-sm"
>
<Image src={Logo} alt="Logo" width={36} height={36} />
</Link>
<div className="text-sm font-medium flex items-center">Sandbox</div>
</div>
<div className="flex items-center space-x-4">
<DashboardNavbarSearch />
<UserButton
appearance={{
baseTheme: dark,
}}
afterSignOutUrl="/"
/>
</div>
</div>
)
}

View File

@ -0,0 +1,36 @@
"use client"
import { Input } from "../../ui/input"
import { Search } from "lucide-react"
import { useCallback, useEffect, useState } from "react"
import { useRouter, useSearchParams } from "next/navigation"
export default function DashboardNavbarSearch() {
const [search, setSearch] = useState("")
const router = useRouter()
useEffect(() => {
const delayDebounceFn = setTimeout(() => {
console.log("SEARCH", search)
if (search) {
router.push(`/dashboard?q=${search}`)
} else {
router.push(`/dashboard`)
}
}, 300)
return () => clearTimeout(delayDebounceFn)
}, [search])
return (
<div className="relative h-9 w-44 flex items-center justify-start">
<Search className="w-4 h-4 absolute left-2 text-muted-foreground" />
<Input
value={search}
onChange={(e) => setSearch(e.target.value)}
placeholder="Search projects..."
className="pl-8"
/>
</div>
)
}

View File

@ -0,0 +1,22 @@
import { cn } from "@/lib/utils"
export default function ProjectCard({
children,
className,
}: {
children: React.ReactNode
className?: string
}) {
return (
<div
tabIndex={0}
className={cn(
"rounded-lg border bg-card text-card-foreground shadow h-48 p-[1px] gradient-project-card-bg cursor-pointer transition-all focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"
)}
>
<div className="rounded-[7px] p-4 h-full flex flex-col justify-between gradient-project-card">
{children}
</div>
</div>
)
}

View File

@ -0,0 +1,146 @@
"use client"
import Editor, { OnMount } from "@monaco-editor/react"
import monaco from "monaco-editor"
import { useRef, useState } from "react"
import theme from "./theme.json"
import {
ResizableHandle,
ResizablePanel,
ResizablePanelGroup,
} from "@/components/ui/resizable"
import { Button } from "../ui/button"
import {
ChevronLeft,
ChevronRight,
RotateCcw,
RotateCw,
Terminal,
TerminalSquare,
X,
} from "lucide-react"
import Tab from "../ui/tab"
import Sidebar from "./sidebar"
export default function CodeEditor() {
const editorRef = useRef<null | monaco.editor.IStandaloneCodeEditor>(null)
const [code, setCode] = useState([
{
language: "css",
name: "style.css",
value: `body { background-color: #282c34; color: white; }`,
},
{
language: "html",
name: "index.html",
value: `<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Hello, world!</h1>
<script src="script.js"></script>
</body>
</html>`,
},
{
language: "javascript",
name: "script.js",
value: `console.log("Hello, world!")`,
},
])
const handleEditorMount: OnMount = (editor, monaco) => {
editorRef.current = editor
// import("monaco-themes/themes/Blackboard.json").then((data) => {
// monaco.editor.defineTheme(
// "Blackboard",
// data as monaco.editor.IStandaloneThemeData
// )
// })
// monaco.editor.setTheme("Blackboard")
}
return (
<>
<Sidebar />
<ResizablePanelGroup direction="horizontal">
<ResizablePanel
className="p-2 flex flex-col"
maxSize={75}
minSize={30}
defaultSize={60}
>
<div className="h-10 w-full flex gap-2">
<Tab>index.html</Tab>
<Tab>style.css</Tab>
</div>
<div className="grow w-full overflow-hidden rounded-md">
<Editor
height="100%"
defaultLanguage="typescript"
onMount={handleEditorMount}
options={{
minimap: {
enabled: false,
},
padding: {
bottom: 4,
top: 4,
},
scrollBeyondLastLine: false,
}}
theme="vs-dark"
/>
</div>
</ResizablePanel>
<ResizableHandle />
<ResizablePanel defaultSize={40}>
<ResizablePanelGroup direction="vertical">
<ResizablePanel
defaultSize={50}
minSize={20}
className="p-2 flex flex-col"
>
<div className="h-10 select-none w-full flex gap-2">
<div className="h-8 rounded-md px-3 text-xs bg-secondary flex items-center w-full justify-between">
Preview
<div className="flex space-x-1 translate-x-1">
<div className="p-0.5 h-5 w-5 ml-0.5 flex items-center justify-center transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<TerminalSquare className="w-4 h-4" />
</div>
<div className="p-0.5 h-5 w-5 ml-0.5 flex items-center justify-center transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<ChevronLeft className="w-4 h-4" />
</div>
<div className="p-0.5 h-5 w-5 ml-0.5 flex items-center justify-center transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<ChevronRight className="w-4 h-4" />
</div>
<div className="p-0.5 h-5 w-5 ml-0.5 flex items-center justify-center transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<RotateCw className="w-3 h-3" />
</div>
</div>
</div>
</div>
<div className="w-full grow rounded-md bg-foreground"></div>
</ResizablePanel>
<ResizableHandle />
<ResizablePanel
defaultSize={50}
minSize={20}
className="p-2 flex flex-col"
>
<div className="h-10 w-full flex gap-2">
<Tab>Node</Tab>
<Tab>Console</Tab>
</div>
<div className="w-full grow rounded-md bg-secondary"></div>
</ResizablePanel>
</ResizablePanelGroup>
</ResizablePanel>
</ResizablePanelGroup>
</>
)
}

View File

@ -0,0 +1,33 @@
import Image from "next/image"
import Logo from "@/assets/logo.svg"
import { Pencil } from "lucide-react"
import { UserButton } from "@clerk/nextjs"
import Link from "next/link"
import { dark } from "@clerk/themes"
export default function Navbar() {
return (
<div className="h-14 px-2 w-full flex items-center justify-between border-b border-border">
<div className="flex items-center space-x-4">
<Link
href="/"
className="ring-offset-2 ring-offset-background focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none rounded-sm"
>
<Image src={Logo} alt="Logo" width={36} height={36} />
</Link>
<div className="text-sm font-medium flex items-center">
My React Project{" "}
<div className="h-7 w-7 ml-2 flex items-center justify-center transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-md">
<Pencil className="w-4 h-4" />
</div>
</div>
</div>
<UserButton
appearance={{
baseTheme: dark,
}}
afterSignOutUrl="/"
/>
</div>
)
}

View File

@ -0,0 +1,20 @@
"use client"
import Image from "next/image"
import { getIconForFile } from "vscode-icons-js"
import { TFile } from "./types"
export default function SidebarFile({ data }: { data: TFile }) {
return (
<div className="w-full flex items-center h-7 px-1 transition-colors hover:bg-secondary rounded-sm cursor-pointer">
<Image
src={`/icons/${getIconForFile(data.name)}`}
alt="File Icon"
width={18}
height={18}
className="mr-2"
/>
{data.name}
</div>
)
}

View File

@ -0,0 +1,46 @@
"use client"
import Image from "next/image"
import { useState } from "react"
import { getIconForFolder, getIconForOpenFolder } from "vscode-icons-js"
import { TFolder } from "./types"
import SidebarFile from "./file"
export default function SidebarFolder({ data }: { data: TFolder }) {
const [isOpen, setIsOpen] = useState(false)
const folder = isOpen
? getIconForOpenFolder(data.name)
: getIconForFolder(data.name)
return (
<>
<div
onClick={() => setIsOpen((prev) => !prev)}
className="w-full flex items-center h-7 px-1 transition-colors hover:bg-secondary rounded-sm cursor-pointer"
>
<Image
src={`/icons/${folder}`}
alt="Folder icon"
width={18}
height={18}
className="mr-2"
/>
{data.name}
</div>
{isOpen ? (
<div className="flex w-full items-stretch">
<div className="w-[1px] bg-border mx-2 h-full"></div>
<div className="flex flex-col grow">
{data.children.map((child) =>
child.type === "file" ? (
<SidebarFile key={child.id} data={child} />
) : (
<SidebarFolder key={child.id} data={child} />
)
)}
</div>
</div>
) : null}
</>
)
}

View File

@ -0,0 +1,95 @@
import { FilePlus, FolderPlus, Search } from "lucide-react"
import SidebarFile from "./file"
import SidebarFolder from "./folder"
import { TFile, TFolder } from "./types"
const data: (TFile | TFolder)[] = [
{
id: "index.tsx",
type: "file",
name: "index.tsx",
},
{
id: "components",
type: "folder",
name: "components",
children: [
{
id: "navbar.tsx",
type: "file",
name: "navbar.tsx",
},
{
id: "ui",
type: "folder",
name: "ui",
children: [
{
id: "Button.tsx",
type: "file",
name: "Button.tsx",
},
{
id: "Input.tsx",
type: "file",
name: "Input.tsx",
},
],
},
],
},
{
id: "App.tsx",
type: "file",
name: "App.tsx",
},
{
id: "styles",
type: "folder",
name: "styles",
children: [
{
id: "style.css",
type: "file",
name: "style.css",
},
{
id: "index.css",
type: "file",
name: "index.css",
},
],
},
]
export default function Sidebar() {
return (
<div className="h-full w-56 select-none flex flex-col text-sm items-start p-2">
<div className="flex w-full items-center justify-between h-8 mb-1 ">
<div className="text-muted-foreground">EXPLORER</div>
<div className="flex space-x-1">
<div className="h-6 w-6 text-muted-foreground ml-0.5 flex items-center justify-center translate-x-1 transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<FilePlus className="w-4 h-4" />
</div>
<div className="h-6 w-6 text-muted-foreground ml-0.5 flex items-center justify-center translate-x-1 transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<FolderPlus className="w-4 h-4" />
</div>
<div className="h-6 w-6 text-muted-foreground ml-0.5 flex items-center justify-center translate-x-1 transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm">
<Search className="w-4 h-4" />
</div>
</div>
</div>
<div className="w-full mt-1 flex flex-col">
{/* <SidebarFile name="index.tsx" />
<SidebarFolder name="styles" /> */}
{data.map((child) =>
child.type === "file" ? (
<SidebarFile key={child.id} data={child} />
) : (
<SidebarFolder key={child.id} data={child} />
)
)}
</div>
</div>
)
}

View File

@ -0,0 +1,12 @@
export type TFolder = {
id: string
type: "folder"
name: string
children: (TFile | TFolder)[]
}
export type TFile = {
id: string
type: "file"
name: string
}

View File

@ -0,0 +1,697 @@
{
"inherit": true,
"base": "vs-dark",
"colors": {
"editor.background": "101010",
"editor.foreground": "FFFFFF",
"editor.selectionBackground": "FFFFFF25",
"editor.selectionHighlightBackground": "FFFFFF25",
"editorLineNumber.foreground": "505050",
"editorWidget.background": "101010",
"editorWarning.foreground": "FFC799",
"editorError.foreground": "FF8080",
"editorOverviewRuler.border": "101010",
"editorGutter.addedBackground": "99FFE4",
"editorGutter.deletedBackground": "FF8080",
"editorGutter.modifiedBackground": "FFC799",
"diffEditor.insertedTextBackground": "99FFE440",
"diffEditor.insertedLineBackground": "99FFE440",
"diffEditor.removedTextBackground": "FF808040",
"diffEditor.removedLineBackground": "FF808040",
"sideBar.background": "101010",
"sideBarTitle.foreground": "A0A0A0",
"sideBarSectionHeader.foreground": "A0A0A0",
"sideBarSectionHeader.background": "101010",
"activityBar.background": "101010",
"activityBar.foreground": "A0A0A0",
"activityBarBadge.background": "FFC799",
"activityBarBadge.foreground": "000",
"titleBar.activeBackground": "101010",
"titleBar.inactiveBackground": "101010",
"titleBar.activeForeground": "7E7E7E",
"titleBar.inactiveForeground": "707070",
"tab.activeBorderTop": "FFC799",
"statusBar.debuggingForeground": "FFFFFF",
"statusBar.debuggingBackground": "FF7300",
"statusBar.background": "101010",
"statusBar.foreground": "A0A0A0",
"statusBarItem.remoteBackground": "FFC799",
"statusBarItem.remoteForeground": "000",
"list.activeSelectionForeground": "FFC799",
"list.inactiveSelectionBackground": "232323",
"badge.background": "FFC799",
"badge.foreground": "000",
"button.background": "FFC799",
"button.hoverBackground": "FFCFA8",
"button.foreground": "000",
"focusBorder": "FFC799",
"icon.foreground": "A0A0A0",
"input.background": "1C1C1C",
"list.activeSelectionBackground": "232323",
"list.hoverBackground": "282828",
"list.errorForeground": "FF8080",
"list.highlightForeground": "FFC799",
"selection.background": "666",
"editorBracketHighlight.foreground1": "A0A0A0",
"editorBracketHighlight.foreground2": "A0A0A0",
"editorBracketHighlight.foreground3": "A0A0A0",
"editorBracketHighlight.foreground4": "A0A0A0",
"editorBracketHighlight.foreground5": "A0A0A0",
"editorBracketHighlight.foreground6": "A0A0A0",
"editorBracketHighlight.unexpectedBracket.foreground": "FF8080",
"textLink.foreground": "FFC799",
"textLink.activeForeground": "FFCFA8",
"editorHoverWidget.background": "161616",
"editorHoverWidget.border": "282828",
"scrollbarSlider.background": "34343480",
"scrollbarSlider.hoverBackground": "343434",
"gitDecoration.addedResourceForeground": "99FFE4",
"gitDecoration.untrackedResourceForeground": "99FFE4",
"gitDecoration.modifiedResourceForeground": "FFC799",
"gitDecoration.deletedResourceForeground": "FF8080",
"gitDecoration.ignoredResourceForeground": "595959",
"gitDecoration.conflictingResourceForeground": "FF8080",
"gitDecoration.submoduleResourceForeground": "A0A0A0",
"settings.modifiedItemIndicator": "FFC799",
"terminal.ansiBlack": "101010",
"terminal.ansiBlue": "FFC799",
"terminal.ansiBrightBlack": "101010",
"terminal.ansiBrightBlue": "FFC799",
"terminal.ansiBrightCyan": "99FFE4",
"terminal.ansiBrightGreen": "99FFE4",
"terminal.ansiBrightMagenta": "FBADFF",
"terminal.ansiBrightRed": "FF8080",
"terminal.ansiBrightWhite": "f8f8f2",
"terminal.ansiBrightYellow": "FFC799",
"terminal.ansiCyan": "99FFE4",
"terminal.ansiGreen": "99FFE4",
"terminal.ansiMagenta": "FBADFF",
"terminal.ansiRed": "FF8080",
"terminal.ansiWhite": "e3e3dd",
"terminal.ansiYellow": "FFC799",
"terminal.background": "101010",
"editorGroup.border": "FFC799",
"editorGroupHeader.tabsBackground": "101010",
"tab.inactiveBackground": "1C1C1C",
"tab.border": "1C1C1C"
},
"rules": [
{
"foreground": "595959",
"token": "comment"
},
{
"foreground": "595959",
"token": "punctuation.definition.comment"
},
{
"foreground": "FFFFFF",
"token": "variable"
},
{
"foreground": "FFFFFF",
"token": "string constant.other.placeholder"
},
{
"foreground": "FFFFFF",
"token": "entity.name.tag"
},
{
"foreground": "FFFFFF",
"token": "constant.other.color"
},
{
"foreground": "FF8080",
"token": "invalid"
},
{
"foreground": "FF8080",
"token": "invalid.illegal"
},
{
"foreground": "FBADFF",
"token": "keyword"
},
{
"foreground": "FBADFF",
"token": "storage.modifier"
},
{
"foreground": "FBADFF",
"token": "keyword.control"
},
{
"foreground": "FBADFF",
"token": "constant.other.color"
},
{
"foreground": "FBADFF",
"token": "punctuation.separator.inheritance.php"
},
{
"foreground": "FBADFF",
"token": "punctuation.definition.tag.html"
},
{
"foreground": "FBADFF",
"token": "punctuation.definition.tag.begin.html"
},
{
"foreground": "FBADFF",
"token": "punctuation.definition.tag.end.html"
},
{
"foreground": "FBADFF",
"token": "punctuation.section.embedded"
},
{
"foreground": "FBADFF",
"token": "keyword.other.template"
},
{
"foreground": "FBADFF",
"token": "keyword.other.rust"
},
{
"foreground": "FBADFF",
"token": "keyword.other.fn.rust"
},
{
"foreground": "FBADFF",
"token": "keyword.other.substitution"
},
{
"foreground": "FBADFF",
"token": "storage.type"
},
{
"foreground": "FBADFF",
"token": "keyword.other.import.java"
},
{
"foreground": "FFFFFF",
"token": "storage.modifier.import.java"
},
{
"foreground": "FFC799",
"token": "entity.name.tag"
},
{
"foreground": "FFC799",
"token": "meta.tag.sgml"
},
{
"foreground": "FFC799",
"token": "markup.deleted.git_gutter"
},
{
"foreground": "FFC799",
"token": "entity.name.function"
},
{
"foreground": "FFC799",
"token": "variable.function"
},
{
"foreground": "FFC799",
"token": "support.function"
},
{
"foreground": "FFC799",
"token": "keyword.other.special-method"
},
{
"foreground": "FFFFFF",
"token": "meta.block variable.other"
},
{
"foreground": "FFFFFF",
"token": "support.other.variable"
},
{
"foreground": "FFFFFF",
"token": "string.other.link"
},
{
"foreground": "FFC799",
"token": "constant.numeric"
},
{
"foreground": "FFC799",
"token": "support.constant"
},
{
"foreground": "FFC799",
"token": "constant.character"
},
{
"foreground": "FFC799",
"token": "constant.escape"
},
{
"foreground": "FFC799",
"token": "keyword.other.unit"
},
{
"foreground": "FFC799",
"token": "keyword.other"
},
{
"foreground": "FFC799",
"token": "constant.language.boolean"
},
{
"foreground": "99FFE4",
"token": "string"
},
{
"foreground": "99FFE4",
"token": "constant.other.symbol"
},
{
"foreground": "99FFE4",
"token": "constant.other.key"
},
{
"foreground": "99FFE4",
"token": "keyword.other.fn.rust"
},
{
"foreground": "99FFE4",
"token": "meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js"
},
{
"foreground": "FFC799",
"token": "entity.name"
},
{
"foreground": "FFC799",
"token": "support.type"
},
{
"foreground": "FFC799",
"token": "support.class"
},
{
"foreground": "FFC799",
"token": "support.other.namespace.use.php"
},
{
"foreground": "FFC799",
"token": "meta.use.php"
},
{
"foreground": "FFC799",
"token": "support.other.namespace.php"
},
{
"foreground": "FFC799",
"token": "markup.changed.git_gutter"
},
{
"foreground": "FFC799",
"token": "support.type.sys-types"
},
{
"foreground": "FFFFFF",
"token": "source.css support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.sass support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.scss support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.less support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.stylus support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.postcss support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "source.postcss support.type.property-name"
},
{
"foreground": "FFFFFF",
"token": "support.type.vendored.property-name.css"
},
{
"foreground": "FFFFFF",
"token": "source.css.scss entity.name.tag"
},
{
"foreground": "FFFFFF",
"token": "variable.parameter.keyframe-list.css"
},
{
"foreground": "FFFFFF",
"token": "meta.property-name.css"
},
{
"foreground": "FFFFFF",
"token": "variable.parameter.url.scss"
},
{
"foreground": "FFFFFF",
"token": "meta.property-value.scss"
},
{
"foreground": "FFFFFF",
"token": "meta.property-value.css"
},
{
"foreground": "FF8080",
"token": "entity.name.module.js"
},
{
"foreground": "FF8080",
"token": "variable.import.parameter.js"
},
{
"foreground": "FF8080",
"token": "variable.other.class.js"
},
{
"foreground": "99FFE4",
"token": "variable.other.constant"
},
{
"foreground": "FFFFFF",
"token": "variable.language"
},
{
"foreground": "FFFFFF",
"token": "entity.name.method.js"
},
{
"foreground": "FFFFFF",
"token": "meta.class-method.js entity.name.function.js"
},
{
"foreground": "FFFFFF",
"token": "variable.function.constructor"
},
{
"foreground": "FFFFFF",
"token": "entity.other.attribute-name"
},
{
"foreground": "FFFFFF",
"token": "meta.property-list.scss"
},
{
"foreground": "FFFFFF",
"token": "meta.attribute-selector.scss"
},
{
"foreground": "FFFFFF",
"token": "meta.property-value.css"
},
{
"foreground": "FFFFFF",
"token": "entity.other.keyframe-offset.css"
},
{
"foreground": "FFFFFF",
"token": "meta.selector.css"
},
{
"foreground": "FFFFFF",
"token": "entity.name.tag.reference.scss"
},
{
"foreground": "FFFFFF",
"token": "entity.name.tag.nesting.css"
},
{
"foreground": "FFFFFF",
"token": "punctuation.separator.key-value.css"
},
{
"foreground": "FFC799",
"token": "text.html.basic entity.other.attribute-name.html"
},
{
"foreground": "FFC799",
"token": "text.html.basic entity.other.attribute-name"
},
{
"foreground": "FFC799",
"token": "entity.other.attribute-name.class"
},
{
"foreground": "FFC799",
"token": "entity.other.attribute-name.id"
},
{
"foreground": "FFC799",
"token": "meta.attribute-selector.scss"
},
{
"foreground": "FFC799",
"token": "variable.parameter.misc.css"
},
{
"foreground": "99FFE4",
"token": "source.sass keyword.control"
},
{
"foreground": "99FFE4",
"token": "meta.attribute-selector.scss"
},
{
"foreground": "99FFE4",
"token": "markup.inserted"
},
{
"foreground": "FF8080",
"token": "markup.deleted"
},
{
"foreground": "A0A0A0",
"token": "markup.changed"
},
{
"foreground": "A0A0A0",
"token": "string.regexp"
},
{
"foreground": "A0A0A0",
"token": "constant.character.escape"
},
{
"fontStyle": "underline",
"token": "*url*"
},
{
"fontStyle": "underline",
"token": "*link*"
},
{
"fontStyle": "underline",
"token": "*uri*"
},
{
"foreground": "FFFFFF",
"token": "tag.decorator.js entity.name.tag.js"
},
{
"foreground": "FFFFFF",
"token": "tag.decorator.js punctuation.definition.tag.js"
},
{
"fontStyle": "italic",
"foreground": "FF8080",
"token": "source.js constant.other.object.key.js string.unquoted.label.js"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFC799",
"token": "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
},
{
"foreground": "FFFFFF",
"token": "text.html.markdown"
},
{
"foreground": "FFFFFF",
"token": "punctuation.definition.list_item.markdown"
},
{
"foreground": "A0A0A0",
"token": "text.html.markdown markup.inline.raw.markdown"
},
{
"foreground": "FFFFFF",
"token": "text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"
},
{
"foreground": "FFC799",
"token": "markdown.heading"
},
{
"foreground": "FFC799",
"token": "markup.heading | markup.heading entity.name"
},
{
"foreground": "FFC799",
"token": "markup.heading.markdown punctuation.definition.heading.markdown"
},
{
"foreground": "FFC799",
"token": "markup.heading"
},
{
"foreground": "FFC799",
"token": "markup.inserted.git_gutter"
},
{
"fontStyle": "italic",
"foreground": "FFFFFF",
"token": "markup.italic"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.bold"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.bold string"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.bold markup.italic"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.italic markup.bold"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.quote markup.bold"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.bold markup.italic string"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.italic markup.bold string"
},
{
"fontStyle": "bold",
"foreground": "FFFFFF",
"token": "markup.quote markup.bold string"
},
{
"fontStyle": "underline",
"foreground": "FFC799",
"token": "markup.underline"
},
{
"foreground": "FFFFFF",
"token": "markup.quote punctuation.definition.blockquote.markdown"
},
{
"foreground": "99FFE4",
"token": "markup.quote"
},
{
"foreground": "FFFFFF",
"token": "string.other.link.title.markdown"
},
{
"foreground": "A0A0A0",
"token": "string.other.link.description.title.markdown"
},
{
"foreground": "FFC799",
"token": "constant.other.reference.link.markdown"
},
{
"foreground": "A0A0A0",
"token": "markup.raw.block"
},
{
"foreground": "00000050",
"token": "markup.raw.block.fenced.markdown"
},
{
"foreground": "00000050",
"token": "punctuation.definition.fenced.markdown"
},
{
"foreground": "FFFFFF",
"token": "markup.raw.block.fenced.markdown"
},
{
"foreground": "FFFFFF",
"token": "variable.language.fenced.markdown"
},
{
"foreground": "FFFFFF",
"token": "punctuation.section.class.end"
},
{
"foreground": "FFFFFF",
"token": "variable.language.fenced.markdown"
},
{
"fontStyle": "bold",
"foreground": "65737E",
"token": "meta.separator"
},
{
"foreground": "FFFFFF",
"token": "markup.table"
}
],
"encodedTokensColors": []
}

View File

@ -0,0 +1,9 @@
"use client"
import * as React from "react"
import { ThemeProvider as NextThemesProvider } from "next-themes"
import { type ThemeProviderProps } from "next-themes/dist/types"
export function ThemeProvider({ children, ...props }: ThemeProviderProps) {
return <NextThemesProvider {...props}>{children}</NextThemesProvider>
}

View File

@ -0,0 +1,57 @@
import * as React from "react"
import { Slot } from "@radix-ui/react-slot"
import { cva, type VariantProps } from "class-variance-authority"
import { cn } from "@/lib/utils"
const buttonVariants = cva(
"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
{
variants: {
variant: {
default:
"bg-primary text-primary-foreground shadow hover:bg-primary/90",
destructive:
"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
outline:
"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
secondary:
"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
ghost: "hover:bg-accent hover:text-accent-foreground",
link: "text-primary underline-offset-4 hover:underline",
},
size: {
default: "h-9 px-4 py-2",
sm: "h-8 rounded-md px-3 text-xs",
lg: "h-10 rounded-md px-8",
icon: "h-9 w-9",
},
},
defaultVariants: {
variant: "default",
size: "default",
},
}
)
export interface ButtonProps
extends React.ButtonHTMLAttributes<HTMLButtonElement>,
VariantProps<typeof buttonVariants> {
asChild?: boolean
}
const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
({ className, variant, size, asChild = false, ...props }, ref) => {
const Comp = asChild ? Slot : "button"
return (
<Comp
className={cn(buttonVariants({ variant, size, className }))}
ref={ref}
{...props}
/>
)
}
)
Button.displayName = "Button"
export { Button, buttonVariants }

View File

@ -0,0 +1,76 @@
import * as React from "react"
import { cn } from "@/lib/utils"
const Card = React.forwardRef<
HTMLDivElement,
React.HTMLAttributes<HTMLDivElement>
>(({ className, ...props }, ref) => (
<div
ref={ref}
className={cn(
"rounded-xl border bg-card text-card-foreground shadow",
className
)}
{...props}
/>
))
Card.displayName = "Card"
const CardHeader = React.forwardRef<
HTMLDivElement,
React.HTMLAttributes<HTMLDivElement>
>(({ className, ...props }, ref) => (
<div
ref={ref}
className={cn("flex flex-col space-y-1.5 p-6", className)}
{...props}
/>
))
CardHeader.displayName = "CardHeader"
const CardTitle = React.forwardRef<
HTMLParagraphElement,
React.HTMLAttributes<HTMLHeadingElement>
>(({ className, ...props }, ref) => (
<h3
ref={ref}
className={cn("font-semibold leading-none tracking-tight", className)}
{...props}
/>
))
CardTitle.displayName = "CardTitle"
const CardDescription = React.forwardRef<
HTMLParagraphElement,
React.HTMLAttributes<HTMLParagraphElement>
>(({ className, ...props }, ref) => (
<p
ref={ref}
className={cn("text-sm text-muted-foreground", className)}
{...props}
/>
))
CardDescription.displayName = "CardDescription"
const CardContent = React.forwardRef<
HTMLDivElement,
React.HTMLAttributes<HTMLDivElement>
>(({ className, ...props }, ref) => (
<div ref={ref} className={cn("p-6 pt-0", className)} {...props} />
))
CardContent.displayName = "CardContent"
const CardFooter = React.forwardRef<
HTMLDivElement,
React.HTMLAttributes<HTMLDivElement>
>(({ className, ...props }, ref) => (
<div
ref={ref}
className={cn("flex items-center p-6 pt-0", className)}
{...props}
/>
))
CardFooter.displayName = "CardFooter"
export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }

View File

@ -0,0 +1,30 @@
import * as React from "react"
import { Plus } from "lucide-react"
import { cn } from "@/lib/utils"
const Button = ({
children,
className,
onClick,
}: {
children: React.ReactNode
className?: string
onClick?: () => void
}) => {
return (
<button
onClick={onClick}
className={cn(
className,
"gradient-button-bg p-[1px] inline-flex group rounded-md text-sm font-medium focus-visible:ring-offset-1 focus-visible:ring-offset-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"
)}
>
<div className="rounded-[6px] w-full gradient-button flex items-center justify-center whitespace-nowrap px-4 py-2 h-9">
<Plus className="w-4 h-4 mr-2" />
New Project
</div>
</button>
)
}
export default Button

View File

@ -0,0 +1,25 @@
import * as React from "react"
import { cn } from "@/lib/utils"
export interface InputProps
extends React.InputHTMLAttributes<HTMLInputElement> {}
const Input = React.forwardRef<HTMLInputElement, InputProps>(
({ className, type, ...props }, ref) => {
return (
<input
type={type}
className={cn(
"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
className
)}
ref={ref}
{...props}
/>
)
}
)
Input.displayName = "Input"
export { Input }

View File

@ -0,0 +1,45 @@
"use client"
import { DragHandleDots2Icon } from "@radix-ui/react-icons"
import * as ResizablePrimitive from "react-resizable-panels"
import { cn } from "@/lib/utils"
const ResizablePanelGroup = ({
className,
...props
}: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>) => (
<ResizablePrimitive.PanelGroup
className={cn(
"flex h-full w-full data-[panel-group-direction=vertical]:flex-col",
className
)}
{...props}
/>
)
const ResizablePanel = ResizablePrimitive.Panel
const ResizableHandle = ({
withHandle,
className,
...props
}: React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
withHandle?: boolean
}) => (
<ResizablePrimitive.PanelResizeHandle
className={cn(
"relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",
className
)}
{...props}
>
{withHandle && (
<div className="z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border">
<DragHandleDots2Icon className="h-2.5 w-2.5" />
</div>
)}
</ResizablePrimitive.PanelResizeHandle>
)
export { ResizablePanelGroup, ResizablePanel, ResizableHandle }

View File

@ -0,0 +1,31 @@
"use client"
import { X } from "lucide-react"
import { Button } from "./button"
export default function Tab({
children,
onClick,
onClose,
}: {
children: React.ReactNode
onClick?: () => void
onClose?: () => void
}) {
return (
<Button
onClick={onClick ?? undefined}
size="sm"
variant="secondary"
className="group select-none"
>
{children}
<div
onClick={onClose ?? undefined}
className="h-5 w-5 ml-0.5 flex items-center justify-center translate-x-1 transition-colors bg-transparent hover:bg-muted-foreground/25 cursor-pointer rounded-sm"
>
<X className="w-3 h-3" />
</div>
</Button>
)
}

6
frontend/lib/utils.ts Normal file
View File

@ -0,0 +1,6 @@
import { type ClassValue, clsx } from "clsx"
import { twMerge } from "tailwind-merge"
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs))
}

10
frontend/middleware.ts Normal file
View File

@ -0,0 +1,10 @@
import { authMiddleware } from "@clerk/nextjs"
export default authMiddleware({
publicRoutes: (req) =>
!req.url.includes("/dashboard") && !req.url.includes("/code"),
})
export const config = {
matcher: ["/((?!.+\\.[\\w]+$|_next).*)", "/", "/(api|trpc)(.*)"],
}

12
frontend/next.config.mjs Normal file
View File

@ -0,0 +1,12 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
images: {
remotePatterns: [
{
hostname: "cdn.simpleicons.org",
},
],
},
}
export default nextConfig

2628
frontend/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

40
frontend/package.json Normal file
View File

@ -0,0 +1,40 @@
{
"name": "sandbox",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"@clerk/nextjs": "^4.29.12",
"@clerk/themes": "^1.7.12",
"@monaco-editor/react": "^4.6.0",
"@radix-ui/react-icons": "^1.3.0",
"@radix-ui/react-slot": "^1.0.2",
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.0",
"geist": "^1.3.0",
"lucide-react": "^0.365.0",
"monaco-themes": "^0.4.4",
"next": "14.1.3",
"next-themes": "^0.3.0",
"react": "^18",
"react-dom": "^18",
"react-resizable-panels": "^2.0.16",
"tailwind-merge": "^2.2.2",
"tailwindcss-animate": "^1.0.7",
"vscode-icons-js": "^11.6.1"
},
"devDependencies": {
"@types/node": "^20",
"@types/react": "^18",
"@types/react-dom": "^18",
"autoprefixer": "^10.0.1",
"postcss": "^8",
"tailwindcss": "^3.3.0",
"typescript": "^5"
}
}

View File

@ -0,0 +1,6 @@
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
};

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>default_file</title><path d="M20.75,2H4.35V30h23.3V9Zm4.6,25.7H6.75V4.3h11.7v7h7V27.7Z" style="fill:#c5c5c5"/></svg>

After

Width:  |  Height:  |  Size: 183 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>default_folder</title><path d="M27.5,5.5H18.2L16.1,9.7H4.4V26.5H29.6V5.5Zm0,4.2H19.3l1.1-2.1h7.1Z" style="fill:#c09553"/></svg>

After

Width:  |  Height:  |  Size: 194 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>default_folder_opened</title><path d="M27.4,5.5H18.2L16.1,9.7H4.3V26.5H29.5V5.5Zm0,18.7H6.6V11.8H27.4Zm0-14.5H19.2l1-2.1h7.1V9.7Z" style="fill:#dcb67a"/><polygon points="25.7 13.7 0.5 13.7 4.3 26.5 29.5 26.5 25.7 13.7" style="fill:#dcb67a"/></svg>

After

Width:  |  Height:  |  Size: 314 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>default_root_folder</title><path d="M27.5,5.5H18.2L16.1,9.7H4.4V26.5H29.6V5.5Zm0,4.2H19.3l1.1-2.1h7.1Z" style="fill:#c09553"/><polygon points="19.735 31.25 13.811 31.25 23.605 9.75 29.59 9.75 19.735 31.25" style="fill:#c09553"/><path d="M23.766,10H29.2L19.575,31H14.2Z" style="fill:#ffeebe"/></svg>

After

Width:  |  Height:  |  Size: 365 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>default_root_folder_opened</title><path d="M27.4,5.5H18.2L16.1,9.7H4.3V26.5H29.5V5.5Zm0,18.7H6.6V11.8H27.4Zm0-14.5H19.2l1-2.1h7.1V9.7Z" style="fill:#dcb67a"/><polygon points="25.7 13.7 0.5 13.7 4.3 26.5 29.5 26.5 25.7 13.7" style="fill:#dcb67a"/><polygon points="19.635 31.25 13.711 31.25 23.505 9.75 29.49 9.75 19.635 31.25" style="fill:#dcb67a"/><path d="M23.666,10H29.1L19.475,31H14.1Z" style="fill:#ffeebe"/></svg>

After

Width:  |  Height:  |  Size: 485 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_access</title><path d="M16.639,2.317h1.9V5.092a20.123,20.123,0,0,1,9.237.681c1.111.379,2.32,1.244,2.212,2.568q.019,7.336,0,14.679c.111,1.34-1.13,2.2-2.253,2.574a20.217,20.217,0,0,1-9.2.662v3.427H16.558C11.712,28.8,6.853,27.99,2,27.137V4.869c4.878-.853,9.763-1.683,14.638-2.552" style="fill:#a12935"/><path d="M18.541,6.059a20.047,20.047,0,0,1,8.563.465c.76.283,1.779.624,1.951,1.531-.127.741-.9,1.076-1.511,1.343a19.25,19.25,0,0,1-9,.614V6.059" style="fill:#fff"/><path d="M25.058,11.011a8.1,8.1,0,0,0,3.993-1.419c-.07,1.368.108,2.752-.1,4.108a4.4,4.4,0,0,1-2.288,1.152,22.8,22.8,0,0,1-8.127.3V11.023a25.527,25.527,0,0,0,6.517-.013" style="fill:#fff"/><path d="M8.5,10.683c.741-.054,1.48-.1,2.224-.162,1.066,3.564,2.078,7.147,3.131,10.714-.735-.048-1.47-.1-2.2-.169-.194-.8-.4-1.591-.611-2.383-.977,0-1.954-.035-2.927-.083q-.282,1.131-.573,2.256-.936-.072-1.865-.134c.929-3.351,1.9-6.689,2.819-10.04" style="fill:#fff"/><path d="M8.511,16.882c.321-1.489.8-2.943,1.012-4.455.286,1.508.729,2.978,1.091,4.468q-1.055,0-2.1-.013" style="fill:#a12935"/><path d="M25.077,16.1a8.049,8.049,0,0,0,3.974-1.416c-.064,1.365.1,2.743-.089,4.1a4.3,4.3,0,0,1-2.272,1.155,22.857,22.857,0,0,1-8.149.305V16.114a25.387,25.387,0,0,0,6.536-.016" style="fill:#fff"/><path d="M25.065,21.19a8.075,8.075,0,0,0,3.987-1.416c-.067,1.365.105,2.749-.1,4.1-.9.98-2.329,1.161-3.567,1.413a23.386,23.386,0,0,1-6.861.025c.022-1.371.013-2.74.013-4.111a25.292,25.292,0,0,0,6.523-.016" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_actionscript</title><path d="M2,15.281c1.918,0,2.11-1.055,2.11-1.918a17.119,17.119,0,0,0-.192-2.205,18.723,18.723,0,0,1-.192-2.205c0-2.4,1.63-3.452,3.836-3.452h.575V6.938H7.658c-1.534,0-2.11.767-2.11,2.205a14.412,14.412,0,0,0,.192,1.918,14.306,14.306,0,0,1,.192,2.014c0,1.726-.671,2.493-1.918,2.877v.1c1.151.288,1.918,1.151,1.918,2.877a14.306,14.306,0,0,1-.192,2.014,13,13,0,0,0-.192,1.918c0,1.438.575,2.3,2.11,2.3h.479V26.6H7.562c-2.205,0-3.836-.959-3.836-3.644a18.723,18.723,0,0,1,.192-2.205,15.68,15.68,0,0,0,.192-2.11c0-.863-.288-1.918-2.11-1.918Z" style="fill:#c41718"/><path d="M9.479,18.062,8.233,21.8H6.6L10.63,9.911h1.822L16.479,21.8H14.945L13.7,18.062Zm3.932-1.151L12.26,13.459a9.364,9.364,0,0,1-.575-2.205h0c-.192.671-.384,1.438-.575,2.11L9.959,16.815h3.452Z" style="fill:#c41718"/><path d="M17.918,19.979a5.941,5.941,0,0,0,2.781.767c1.534,0,2.493-.863,2.493-2.014s-.671-1.726-2.205-2.4c-1.918-.671-3.164-1.726-3.164-3.356,0-1.822,1.534-3.26,3.836-3.26a5.135,5.135,0,0,1,2.589.575l-.384,1.247a5.519,5.519,0,0,0-2.3-.479c-1.63,0-2.205.959-2.205,1.822,0,1.151.767,1.63,2.4,2.3,2.014.767,3.068,1.726,3.068,3.452,0,1.822-1.342,3.452-4.123,3.452a5.807,5.807,0,0,1-3.068-.767Z" style="fill:#c41718"/><path d="M30,16.623c-1.918,0-2.11,1.151-2.11,1.918a15.68,15.68,0,0,0,.192,2.11,15.738,15.738,0,0,1,.192,2.205c0,2.685-1.63,3.644-3.836,3.644h-.575V25.062h.479c1.438,0,2.11-.863,2.11-2.3a13,13,0,0,0-.192-1.918,14.306,14.306,0,0,1-.192-2.014c0-1.726.767-2.589,1.918-2.877v-.1c-1.151-.288-1.918-1.151-1.918-2.877a14.306,14.306,0,0,1,.192-2.014,13,13,0,0,0,.192-1.918c0-1.438-.575-2.205-2.11-2.3h-.479V5.4h.575c2.205,0,3.836,1.055,3.836,3.452a17.119,17.119,0,0,1-.192,2.205,17.119,17.119,0,0,0-.192,2.205c0,.959.288,1.918,2.11,1.918Z" style="fill:#c41718"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_ai</title><path d="M3.169,3.517H28.835V28.483H3.169Z" style="fill:#1c0a00"/><path d="M3.169,3.517H28.835V28.483H3.169ZM2,29.65H30V2.35H2Zm18.34-17.57c0-.093.035-.14.14-.14h1.832c.093,0,.14.035.14.14v9.205c0,.093-.023.14-.14.14H20.505c-.117,0-.152-.058-.152-.152V12.08h-.012Zm-.128-2.648a1.19,1.19,0,0,1,2.38,0,1.115,1.115,0,0,1-1.213,1.19A1.1,1.1,0,0,1,20.214,9.432Zm-5.25,6.487c-.327-1.3-1.1-4.118-1.388-5.483h-.023c-.245,1.365-.863,3.675-1.353,5.483Zm-3.243,1.89-.922,3.5c-.023.093-.058.117-.175.117H8.909c-.117,0-.14-.035-.117-.175l3.313-11.6a3.779,3.779,0,0,0,.117-.968c0-.082.035-.117.093-.117h2.45c.082,0,.117.023.14.117l3.71,12.588c.023.093,0,.152-.093.152H16.585c-.093,0-.152-.023-.175-.1l-.957-3.512H11.72Z" style="fill:#ff7f18"/></svg>

After

Width:  |  Height:  |  Size: 822 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_ai2</title><path d="M24.037,2.072h0l5.564,5.8V29.928H8.814V30H29.67V7.945L24.037,2.072" style="fill:#909090"/><path d="M23.965,2H8.742V29.928H29.6V7.873L23.965,2" style="fill:#231612"/><path d="M23.893,2.072V7.946h5.633L23.893,2.072" style="fill:#4c4442"/><path d="M23.965,2V7.873H29.6L23.965,2Z" style="fill:#f36617"/><path d="M2.384,10.264H8.743V3.432H2.384v6.832Z" style="fill:#909090"/><path d="M8.743,10.264H22.461V3.432H8.743v6.832Z" style="fill:#4c4442"/><path d="M22.407,10.211H2.33V3.379H22.407v6.832" style="fill:#f36617"/><path d="M18.1,20.619c-.275-1.07-.948-3.226-1.223-4.344h-.014c-.206,1.054-.769,2.859-1.181,4.344H18.1Zm-2.775,1.566-.838,2.779c-.014.1-.055.128-.137.128h-1.4c-.1,0-.124-.048-.1-.16.742-2.444,1.992-6.516,2.871-9.279a3.686,3.686,0,0,0,.11-.878.086.086,0,0,1,.082-.1h1.9c.069,0,.082.016.11.08,1.016,3.274,2.129,6.884,3.173,10.19q.041.144-.082.144H19.472c-.069,0-.1-.032-.124-.1l-.879-2.811H15.323" style="fill:#f46c25"/><path d="M22.29,17.547c0-.1.027-.128.094-.128h1.431c.081,0,.108.016.108.128v7.506c0,.08-.027.128-.108.128h-1.4c-.081,0-.121-.032-.121-.144v-7.49ZM22.2,15.374a.918.918,0,0,1,.918-.99.884.884,0,0,1,.891.99.908.908,0,1,1-1.809,0" style="fill:#f46c25"/><path d="M11.238,5.279h-.013L10.9,7.352h.652ZM9.5,9.3,10.56,4.44h1.355L12.948,9.3H11.81l-.15-1.133h-.882L10.634,9.3H9.5" style="fill:#231612"/><path d="M13.438,9.3V4.44h1.086V9.3H13.438" style="fill:#231612"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_al</title><path d="M23.425,2.937,30,2.94l0,6.573-1.951-.029L28.07,5.77,18.827,15,11.4,8.656,3.382,16.077,2,14.727l9.379-8.614,7.439,6.116,7.344-7.362-2.73.005-.008-1.935Z" style="fill:#3a96dd"/><path d="M24.365,11.708l1.911-1.884,0,19.227H24.352l.013-17.342Z" style="fill:#3a96dd"/><path d="M9.468,12.7l1.922-1.783-.016,18.148-1.906-.016V12.7Z" style="fill:#3a96dd"/><path d="M13.2,12.5l1.908,1.619L15.1,29.058l-1.911-.008L13.2,12.5Z" style="fill:#3a96dd"/><path d="M20.645,15.583l1.908-2.039.005,15.5-1.927,0,.013-13.467Z" style="fill:#3a96dd"/><path d="M5.742,16.191l1.924-1.826.027,14.682H5.748L5.742,16.191Z" style="fill:#3a96dd"/><path d="M16.918,15.66l1.914,1.64.005,11.748-1.927,0,.008-13.39Z" style="fill:#3a96dd"/></svg>

After

Width:  |  Height:  |  Size: 806 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_angular</title><polygon points="16 2 16 2 16 2 2.966 6.648 4.954 23.882 16 30 16 30 16 30 27.046 23.882 29.034 6.648 16 2" style="fill:#dd0031"/><polygon points="16 2 16 5.108 16 5.094 16 19.276 16 19.276 16 30 16 30 27.046 23.882 29.034 6.648 16 2" style="fill:#c3002f"/><path d="M16,5.094,7.852,23.364H10.89l1.638-4.088h6.916l1.638,4.088H24.12L16,5.094Zm2.38,11.662H13.62L16,11.03Z" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 487 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_ansible</title><path d="M16,29.951a13.952,13.952,0,1,1,.193-27.9A13.951,13.951,0,0,1,16,29.951Zm-2.221-13.13c.1.1.1.1.193.1C16,18.559,18.027,20.1,19.958,21.745a10.928,10.928,0,0,0,1.255.965.99.99,0,0,0,1.545-.676,1.643,1.643,0,0,0-.1-.676L18.9,12.38c-.579-1.352-1.159-2.8-1.738-4.151a.87.87,0,0,0-.579-.579c-.579-.193-.965.1-1.255.676-2.027,4.731-3.958,9.558-5.986,14.289,0,.1-.1.193-.1.29h1.931c.193,0,.193-.1.29-.193.386-.869.676-1.834,1.062-2.7A31.234,31.234,0,0,1,13.779,16.821Z"/><path d="M13.779,16.821c-.386,1.062-.869,2.124-1.255,3.186-.386.869-.772,1.834-1.062,2.7a.355.355,0,0,1-.29.1H9.242c0-.1.1-.193.1-.29,2.027-4.731,3.958-9.558,5.986-14.289.29-.579.676-.869,1.255-.676a.87.87,0,0,1,.579.579c.579,1.352,1.159,2.8,1.738,4.151l3.765,8.979a2.978,2.978,0,0,1,.1.869.99.99,0,0,1-1.545.676,14.191,14.191,0,0,1-1.255-.965c-2.027-1.641-4.055-3.186-5.986-4.827C13.876,16.821,13.876,16.821,13.779,16.821Zm2.51-6.275c-.579,1.545-1.159,2.993-1.834,4.441-.1.1,0,.193.1.29C16,16.435,17.448,17.5,18.9,18.656c.29.193.579.483.869.676h0C18.607,16.435,17.448,13.539,16.29,10.546Z" style="fill:#fff"/><path d="M16.29,10.546c1.159,2.993,2.414,5.889,3.572,8.786h0c-.29-.193-.579-.483-.869-.676-1.448-1.159-2.9-2.221-4.344-3.379-.1-.1-.193-.1-.1-.29C15.035,13.539,15.614,12.091,16.29,10.546Z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_antlr</title><path d="M14.177,7.278a2.08,2.08,0,0,1,3.041-.8A3.571,3.571,0,0,1,18.2,8.022c1.356,3.122,2.9,6.165,4.119,9.345.645,1.5,1.429,2.938,1.994,4.468a1.455,1.455,0,0,1-2.258,1.376c-2.8-1.572-5.628-3.094-8.385-4.731,2.009.008,4.018-.008,6.025.013a19.707,19.707,0,0,0-1.288-2.918c-.781-1.858-1.6-3.7-2.358-5.565a9.783,9.783,0,0,0-1.032,2.125c-1.3,3.182-2.87,6.241-4.136,9.435-.281.59-.424,1.344-1.035,1.69a1.447,1.447,0,0,1-2.094-.738c-.241-.61.151-1.2.382-1.743.779-1.725,1.645-3.413,2.283-5.2C11.65,12.8,12.916,10.041,14.177,7.278Z" style="fill:#fefefe"/><path d="M13.817,2.2A13.923,13.923,0,0,1,29.526,12.549a13.733,13.733,0,0,1-2.082,11.519A14.074,14.074,0,0,1,7.738,27.293a13.852,13.852,0,0,1-5.615-9.483A14.152,14.152,0,0,1,3.451,9.85,13.961,13.961,0,0,1,13.817,2.2m.359,5.08c-1.261,2.762-2.526,5.525-3.762,8.3-.638,1.786-1.5,3.473-2.283,5.2-.231.542-.623,1.133-.382,1.743a1.447,1.447,0,0,0,2.094.738c.61-.347.753-1.1,1.035-1.69,1.266-3.194,2.833-6.253,4.136-9.435a9.783,9.783,0,0,1,1.032-2.125c.756,1.868,1.577,3.707,2.358,5.565a19.707,19.707,0,0,1,1.288,2.918c-2.007-.02-4.016-.005-6.025-.013,2.757,1.637,5.588,3.159,8.385,4.731a1.455,1.455,0,0,0,2.258-1.376c-.565-1.529-1.349-2.971-1.994-4.468-1.22-3.179-2.762-6.223-4.119-9.345a3.571,3.571,0,0,0-.982-1.544A2.08,2.08,0,0,0,14.177,7.278Z" style="fill:#e44a32"/></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_anyscript</title><path d="M19.666,11.545H18.305a.333.333,0,0,0-.182.078.225.225,0,0,0-.078.182L18.1,19.69l-3.679-7.97c-.02-.059-.033-.117-.091-.13-.02-.046-.072-.046-.13-.046H12.484a.295.295,0,0,0-.26.26v10.77a.319.319,0,0,0,.091.189.189.189,0,0,0,.169.072h1.38a.24.24,0,0,0,.182-.072.391.391,0,0,0,.078-.189l-.078-7.846,3.685,7.964c0,.046.059.072.072.085a.293.293,0,0,0,.163.059h1.7a.215.215,0,0,0,.182-.072.266.266,0,0,0,.078-.189V11.8a.225.225,0,0,0-.078-.182.3.3,0,0,0-.182-.078" style="fill:#96092b"/><path d="M5.327,17l1.25-5.17L7.789,17Zm.26-8.244a.348.348,0,0,0-.1.156L2,22.574v.163a.319.319,0,0,1,.02.046.252.252,0,0,0,.163.091l1.361.391c.039,0,.072.033.13,0a.189.189,0,0,0,.13-.072.148.148,0,0,0,.059-.117L4.9,18.745H8.238l1.055,4.33a.229.229,0,0,0,.039.117.159.159,0,0,0,.13.072.1.1,0,0,0,.13,0l1.354-.358a.376.376,0,0,0,.15-.124.313.313,0,0,0,.052-.208L7.658,8.913a.339.339,0,0,0-.1-.156A.334.334,0,0,0,7.4,8.711H5.731a.208.208,0,0,0-.143.046" style="fill:#96092b"/><path d="M22.948,11.414a.669.669,0,0,0-.15-.13.217.217,0,0,0-.2.046l-1.3.664a.165.165,0,0,0-.13.15.209.209,0,0,0,.039.208l3.438,6.153v4.07a.287.287,0,0,0,.072.189.2.2,0,0,0,.169.072h1.38a.24.24,0,0,0,.182-.072.266.266,0,0,0,.078-.189v-4.07l3.458-6.153a.317.317,0,0,0,.02-.13.289.289,0,0,0-.02-.13.269.269,0,0,0-.111-.1l-1.3-.664a.193.193,0,0,0-.189-.046c-.072.046-.13.059-.15.13l-2.637,5.1Z" style="fill:#96092b"/><path d="M25.515,10.3a1.469,1.469,0,1,0,1.335,2.222A1.483,1.483,0,0,0,25.515,10.3Z" style="fill:#fff"/><path d="M25.592,10.49a1.269,1.269,0,0,0-.912.371,1.325,1.325,0,0,0-.358.892,1.246,1.246,0,0,0,.358.912,1.212,1.212,0,0,0,.912.391,1.267,1.267,0,0,0,1.263-1.3,1.235,1.235,0,0,0-1.263-1.263" style="fill:#a7a6a6"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_apex</title><path d="M13.652,8.338A4.906,4.906,0,0,1,17.2,6.814a4.957,4.957,0,0,1,4.32,2.56,5.972,5.972,0,0,1,2.442-.519,6.089,6.089,0,1,1-1.189,12.06,4.412,4.412,0,0,1-5.782,1.816A5.034,5.034,0,0,1,7.634,22.5a4.646,4.646,0,0,1-.96.1,4.732,4.732,0,0,1-2.337-8.812,5.438,5.438,0,0,1,9.315-5.453" style="fill:#0f9bd7"/><path d="M25.376,30.966h-.561a4.658,4.658,0,0,1-1.284-.137,1.9,1.9,0,0,1-.818-.482,1.726,1.726,0,0,1-.455-.843,6.77,6.77,0,0,1-.106-1.413,5.889,5.889,0,0,0-.084-1.33,1,1,0,0,0-.3-.544,1.223,1.223,0,0,0-.66-.179l-.236-.014V24.145l.236-.014a1.482,1.482,0,0,0,.549-.1.706.706,0,0,0,.273-.264,1.394,1.394,0,0,0,.181-.529,6.683,6.683,0,0,0,.044-.939,8.132,8.132,0,0,1,.112-1.643,1.7,1.7,0,0,1,.448-.841,2.144,2.144,0,0,1,.906-.492,4.514,4.514,0,0,1,1.2-.116h.561v1.9h-.25a2.589,2.589,0,0,0-.743.056.284.284,0,0,0-.148.117.839.839,0,0,0-.054.386q0,.372-.053,1.413a3.74,3.74,0,0,1-.166,1.009,1.945,1.945,0,0,1-.693,1,2.01,2.01,0,0,1,.7,1.044,4.627,4.627,0,0,1,.163,1.079c.027.657.041,1.074.041,1.256a.871.871,0,0,0,.057.408A.343.343,0,0,0,24.4,29a2.382,2.382,0,0,0,.728.06h.25Z" style="fill:#fff"/><path d="M21.118,25.788V24.382a1.752,1.752,0,0,0,.645-.129.936.936,0,0,0,.375-.354,1.621,1.621,0,0,0,.217-.624A6.88,6.88,0,0,0,22.4,22.3a8,8,0,0,1,.105-1.585,1.456,1.456,0,0,1,.381-.721,1.9,1.9,0,0,1,.8-.431,4.336,4.336,0,0,1,1.125-.105h.311v1.4a2.876,2.876,0,0,0-.835.073.53.53,0,0,0-.272.223,1.079,1.079,0,0,0-.088.513q0,.369-.053,1.4a3.531,3.531,0,0,1-.152.94,1.918,1.918,0,0,1-.313.595,2.47,2.47,0,0,1-.583.486,2.045,2.045,0,0,1,.565.466,1.869,1.869,0,0,1,.337.647,4.41,4.41,0,0,1,.152,1.02q.041.973.041,1.242a1.1,1.1,0,0,0,.094.539.584.584,0,0,0,.284.231,2.649,2.649,0,0,0,.823.079v1.406h-.311A4.474,4.474,0,0,1,23.6,30.59a1.644,1.644,0,0,1-.712-.419,1.478,1.478,0,0,1-.39-.724,6.621,6.621,0,0,1-.1-1.356,6.374,6.374,0,0,0-.094-1.4,1.232,1.232,0,0,0-.39-.671A1.431,1.431,0,0,0,21.118,25.788Z" style="fill:#0072a0"/><path d="M27.011,30.966H26.45V29.059h.25A2.329,2.329,0,0,0,27.426,29a.323.323,0,0,0,.165-.127.812.812,0,0,0,.058-.379q0-.36.05-1.375a3.725,3.725,0,0,1,.173-1.047,2.223,2.223,0,0,1,.387-.7,2.145,2.145,0,0,1,.3-.292,2.141,2.141,0,0,1-.4-.4,2.612,2.612,0,0,1-.421-1.092,17.525,17.525,0,0,1-.1-1.841,1.357,1.357,0,0,0-.053-.479c-.008-.016-.031-.062-.136-.106a2.524,2.524,0,0,0-.757-.06h-.25V19.2h.561a4.793,4.793,0,0,1,1.283.133,1.841,1.841,0,0,1,.818.485,1.781,1.781,0,0,1,.453.843,6.6,6.6,0,0,1,.109,1.414,6.359,6.359,0,0,0,.079,1.336.992.992,0,0,0,.3.537,1.226,1.226,0,0,0,.664.18l.236.014v1.879l-.236.014a1.482,1.482,0,0,0-.549.1.686.686,0,0,0-.27.262,1.484,1.484,0,0,0-.186.534,6.743,6.743,0,0,0-.043.931,8.383,8.383,0,0,1-.108,1.644,1.694,1.694,0,0,1-.446.846,2.143,2.143,0,0,1-.913.492A4.5,4.5,0,0,1,27.011,30.966Z" style="fill:#fff"/><path d="M30.708,25.788a1.752,1.752,0,0,0-.645.129.918.918,0,0,0-.372.354,1.725,1.725,0,0,0-.22.624,6.82,6.82,0,0,0-.047.973,8.27,8.27,0,0,1-.1,1.588,1.439,1.439,0,0,1-.378.724,1.9,1.9,0,0,1-.809.431,4.336,4.336,0,0,1-1.125.105H26.7V29.31a2.652,2.652,0,0,0,.82-.079A.572.572,0,0,0,27.8,29,1.05,1.05,0,0,0,27.9,28.5q0-.357.05-1.365a3.53,3.53,0,0,1,.158-.976,1.976,1.976,0,0,1,.343-.621A2.038,2.038,0,0,1,29,25.085a2.416,2.416,0,0,1-.633-.551,2.339,2.339,0,0,1-.375-.984,17.564,17.564,0,0,1-.094-1.8,1.571,1.571,0,0,0-.079-.586.487.487,0,0,0-.264-.226,2.8,2.8,0,0,0-.853-.079v-1.4h.311a4.576,4.576,0,0,1,1.213.123,1.587,1.587,0,0,1,.709.419,1.529,1.529,0,0,1,.39.727,6.436,6.436,0,0,1,.1,1.356,6.842,6.842,0,0,0,.088,1.4,1.223,1.223,0,0,0,.393.671,1.447,1.447,0,0,0,.8.231Z" style="fill:#0072a0"/></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_apib</title><path d="M18.053,12.267l4.76,7.467.373.56,1.12-.653-.373-.56-4.76-7.467L18.8,10.96l-1.12.653.373.653Zm-5.227-.747-4.76,7.467-.373.56,1.12.653.373-.467,4.76-7.467.373-.56L13.2,10.96l-.373.56Z" style="fill:#a0b3c1"/><path d="M16,13.107A4.979,4.979,0,0,0,20.947,8.16,5.061,5.061,0,0,0,16,3.12a4.979,4.979,0,0,0-4.947,4.947A5.061,5.061,0,0,0,16,13.107ZM16,11.8a3.644,3.644,0,0,1-3.64-3.64,3.64,3.64,0,1,1,7.28,0A3.644,3.644,0,0,1,16,11.8Z" style="fill:#a0b3c1"/><path d="M25.053,28.88a4.947,4.947,0,1,0-4.947-4.947A4.979,4.979,0,0,0,25.053,28.88Zm0-1.307a3.644,3.644,0,0,1-3.64-3.64,3.64,3.64,0,1,1,7.28,0A3.644,3.644,0,0,1,25.053,27.573Z" style="fill:#a0b3c1"/><path d="M6.947,28.88a4.947,4.947,0,1,0,0-9.893,4.947,4.947,0,1,0,0,9.893Zm0-1.307a3.644,3.644,0,0,1-3.64-3.64,3.706,3.706,0,0,1,3.64-3.64,3.706,3.706,0,0,1,3.64,3.64A3.644,3.644,0,0,1,6.947,27.573Z" style="fill:#a0b3c1"/><circle cx="6.947" cy="23.933" r="1.68" style="fill:#5e9cff"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_apib2</title><path d="M18.053,12.267l4.76,7.467.373.56,1.12-.653-.373-.56-4.76-7.467L18.8,10.96l-1.12.653.373.653Zm-5.227-.747-4.76,7.467-.373.56,1.12.653.373-.467,4.76-7.467.373-.56L13.2,10.96l-.373.56Z" style="fill:#5e9cff"/><path d="M16,13.107A4.979,4.979,0,0,0,20.947,8.16,5.061,5.061,0,0,0,16,3.12a4.979,4.979,0,0,0-4.947,4.947A5.061,5.061,0,0,0,16,13.107ZM16,11.8a3.644,3.644,0,0,1-3.64-3.64,3.64,3.64,0,1,1,7.28,0A3.644,3.644,0,0,1,16,11.8Z" style="fill:#5e9cff"/><path d="M25.053,28.88a4.947,4.947,0,1,0-4.947-4.947A4.979,4.979,0,0,0,25.053,28.88Zm0-1.307a3.644,3.644,0,0,1-3.64-3.64,3.64,3.64,0,1,1,7.28,0A3.644,3.644,0,0,1,25.053,27.573Z" style="fill:#5e9cff"/><path d="M6.947,28.88a4.947,4.947,0,1,0,0-9.893,4.947,4.947,0,1,0,0,9.893Zm0-1.307a3.644,3.644,0,0,1-3.64-3.64,3.706,3.706,0,0,1,3.64-3.64,3.706,3.706,0,0,1,3.64,3.64A3.644,3.644,0,0,1,6.947,27.573Z" style="fill:#5e9cff"/><circle cx="6.947" cy="23.933" r="1.68" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_applescript</title><path d="M17.181,4.437A5.993,5.993,0,0,1,21.579,2a5.979,5.979,0,0,1-1.447,4.476,4.729,4.729,0,0,1-4.17,1.961A5.2,5.2,0,0,1,17.181,4.437Z" style="fill:#a8c2ab"/><path d="M16.2,10.034c.946,0,2.7-1.3,4.989-1.3a6.249,6.249,0,0,1,5.484,2.8,6.08,6.08,0,0,0-3.028,5.3,6.235,6.235,0,0,0,3.772,5.7s-2.637,7.422-6.2,7.422c-1.636,0-2.908-1.1-4.631-1.1-1.757,0-3.5,1.144-4.635,1.144C8.7,30,4.587,22.959,4.587,17.3c0-5.568,3.478-8.489,6.74-8.489C13.448,8.811,15.093,10.034,16.2,10.034Z" style="fill:#a8c2ab"/></svg>

After

Width:  |  Height:  |  Size: 598 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_appveyor</title><path d="M15.958,2a14,14,0,0,1,.091,28h-.091a14,14,0,0,1,0-28Z" style="fill:#00b3e0"/><path d="M11.971,27.829l5.346-5.165a6.515,6.515,0,0,1-5.709-1.269,6.744,6.744,0,0,1-2.447-6.162l-4.8,5.256a9.265,9.265,0,0,1-.815-3.353l8.427-6.615a7.068,7.068,0,0,1,8.427,0,6.849,6.849,0,0,1,1.269,9.152L15.5,28.463a11.6,11.6,0,0,1-3.534-.634Z" style="fill:#fff"/><path d="M19.4,18.676a4.389,4.389,0,1,1-6.887-5.437,4.686,4.686,0,0,1,6.343-.815,4.362,4.362,0,0,1,.544,6.252Z" style="fill:#00b3e0"/></svg>

After

Width:  |  Height:  |  Size: 583 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><radialGradient id="a" cx="767.179" cy="5169.543" r="14.989" gradientTransform="translate(-718.112 -4953.917) scale(0.955 0.962)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#36bac0"/><stop offset="1" stop-color="#2d9094"/></radialGradient></defs><title>file_type_arduino</title><path d="M29.645,15.925A13.77,13.77,0,1,1,15.876,2.056,13.819,13.819,0,0,1,29.645,15.925Z" style="stroke:#02797e;stroke-linejoin:round;stroke-width:1.1367228454969267px;fill:url(#a)"/><path d="M10.581,11.648c2.41-.076,3.359.834,4.605,2.069.285.282.579.59.9.921l.922-.991a6.223,6.223,0,0,1,3.256-1.93c1.939-.211,3.119-.122,4.311.814a5.023,5.023,0,0,1,2.245,3.9,5.653,5.653,0,0,1-3.25,5.156,5.975,5.975,0,0,1-3.913.135,7.656,7.656,0,0,1-3.541-2.987c-1.678,2.142-3.187,3.253-5.235,3.155-7.452-.354-6.842-10.075-.3-10.247Zm1.657,7.994a9.193,9.193,0,0,0,2.856-2.9c-.74-1.243-2.209-2.824-3.455-3.134a4.328,4.328,0,0,0-3.224.777,3.384,3.384,0,0,0-.762,3.686,3.674,3.674,0,0,0,4.585,1.57Zm-2.98-3.487,3.278.005v1.21l-3.283.005Zm13.448,3.6A3.843,3.843,0,0,0,24.937,17a3.458,3.458,0,0,0-1.863-3.109,3.648,3.648,0,0,0-4.2.728,7.364,7.364,0,0,0-1.649,2.151A8.936,8.936,0,0,0,19.2,19.252,4.022,4.022,0,0,0,22.706,19.754Zm-1.955-2.376-1.088-.008,0-1.217,1.091,0V15.075l1.107-.008-.007,1.093,1.085,0v1.165l-1.021-.008v1.12H20.753Z" style="stroke:#000;stroke-width:0.12103096480927482px;opacity:0.1680999994277954;isolation:isolate"/><path d="M4.917,16.337c0,5.348,7.354,7.34,10.987,1.894,3.765,5.647,10.824,3.28,10.824-1.9S19.7,8.656,15.9,14.441c-3.6-5.719-10.987-3.453-10.987,1.9Zm1.931,0c0-3.86,5.455-5.078,7.992,0-2.588,4.889-7.992,3.859-7.992,0Zm10.119,0c2.286-5.178,7.889-3.751,7.872.008S19.186,21.277,16.967,16.337Z" style="fill:#fff;stroke:#000;stroke-width:0.24206192961854964px"/><rect x="8.898" y="15.795" width="3.237" height="1.067" style="fill:#fff"/><polygon points="20.644 16.846 19.576 16.846 19.576 15.712 20.644 15.712 20.644 14.644 21.779 14.644 21.779 15.712 22.847 15.712 22.847 16.846 21.779 16.846 21.779 17.914 20.644 17.914 20.644 16.846" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_asp</title><path d="M12.786,23.5H9.852L9.01,20.342H5.676l-.8,3.158H2L6.053,8.49H8.619ZM6.555,16.891H8.1L7.32,13.867Z" style="fill:#0088b6"/><path d="M16.742,23.749a3.706,3.706,0,0,1-3.05-1.349,7.1,7.1,0,0,1-1.3-3.909l-.046-.566,2.622-.368.062.5a3.409,3.409,0,0,0,.565,1.693,1.425,1.425,0,0,0,1.169.515,1.454,1.454,0,0,0,1.179-.448,1.36,1.36,0,0,0,.338-.911.919.919,0,0,0-.11-.478,1.251,1.251,0,0,0-.537-.438c-.147-.074-.534-.238-1.524-.592a5.006,5.006,0,0,1-2.355-1.5,5.121,5.121,0,0,1-1.016-3.216,5.536,5.536,0,0,1,.481-2.3,3.553,3.553,0,0,1,1.368-1.6,3.834,3.834,0,0,1,2.042-.527A3.6,3.6,0,0,1,19.6,9.532,5.645,5.645,0,0,1,20.7,13l.014.552-2.651.168L18,13.238a2.26,2.26,0,0,0-.395-1.2,1.274,1.274,0,0,0-1-.353,1.47,1.47,0,0,0-1.11.4.535.535,0,0,0-.15.409.612.612,0,0,0,.152.415,3.877,3.877,0,0,0,1.634.817,7.9,7.9,0,0,1,2.188,1.048,3.917,3.917,0,0,1,1.211,1.61,6.386,6.386,0,0,1,.443,2.517,6.254,6.254,0,0,1-.521,2.542A3.757,3.757,0,0,1,18.98,23.2,4.286,4.286,0,0,1,16.742,23.749Z" style="fill:#0088b6"/><path d="M24.56,23.5h-2.7V8.49h3.5a7.985,7.985,0,0,1,2.41.227,3.122,3.122,0,0,1,1.587,1.555A6.479,6.479,0,0,1,30,13.322a7.047,7.047,0,0,1-.368,2.419A4.29,4.29,0,0,1,28.69,17.3a2.854,2.854,0,0,1-1.142.743,7.929,7.929,0,0,1-2.1.211h-.892Zm0-8.717h.688a3.214,3.214,0,0,0,1.4-.182,1.038,1.038,0,0,0,.434-.482,1.752,1.752,0,0,0,.152-.762,1.616,1.616,0,0,0-.209-.875.946.946,0,0,0-.571-.446,6.032,6.032,0,0,0-1.335-.086h-.563Z" style="fill:#0088b6"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_aspx</title><polygon points="22.75 2 6.35 2 6.35 30 29.65 30 29.65 9 22.75 2" style="fill:#c5c5c5"/><polygon points="27.35 27.7 8.75 27.7 8.75 4.3 20.45 4.3 20.45 11.3 27.45 11.3 27.45 27.7 27.35 27.7" style="fill:#f5f5f5"/><path d="M12.1,30.994A11.094,11.094,0,1,1,23.194,19.9,11.106,11.106,0,0,1,12.1,30.994Zm0-20.3A9.2,9.2,0,1,0,21.3,19.9,9.216,9.216,0,0,0,12.1,10.7Z" style="fill:#33a9dc"/><rect x="2.099" y="19.455" width="20.003" height="0.89" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/><path d="M12.325,15.763a31.93,31.93,0,0,1-8.484-1.11l.242-.807a31.374,31.374,0,0,0,15.992,0l.239.807A28.076,28.076,0,0,1,12.325,15.763Z" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/><path d="M4.1,25.724l-.239-.807a31.652,31.652,0,0,1,16.472,0l-.242.807A31.38,31.38,0,0,0,4.1,25.724Z" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/><path d="M8.536,29.055A25.438,25.438,0,0,1,8,10.608l.776.331a24.558,24.558,0,0,0,.533,17.783Z" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/><path d="M15.6,29.055l-.776-.333a24.559,24.559,0,0,0,.531-17.783l.776-.331A25.443,25.443,0,0,1,15.6,29.055Z" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/><rect x="11.655" y="9.898" width="0.889" height="20.371" style="fill:#33a9dc;stroke:#33a9dc;stroke-miterlimit:10"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><linearGradient id="a" x1="836.63" y1="36.205" x2="843.802" y2="14.48" gradientTransform="translate(525.922 30.249) rotate(180) scale(0.607 0.607)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fff" stop-opacity="0"/><stop offset="1" stop-color="#fff" stop-opacity="0.275"/></linearGradient></defs><title>file_type_assembly</title><path d="M16,2c-1.246,3.056-2,5.057-3.391,8.022A21.884,21.884,0,0,0,16.2,13.156a14.858,14.858,0,0,1-4-2.283C10.43,14.579,7.646,19.855,2,30c5.186-2.994,9.012-4.648,12.691-4.966V24.2h-.834v-.837h.834V24.2h1.675V22.521H14.691v-.834h-.834V20.013h.834v-.834h1.675v.834H17.2v.837h-.837v-.837H14.691v1.675h1.675v.834H17.2V24.2h-.837v.783c3.98.1,8.006,1.772,13.634,5.021-.863-1.589-1.636-3.021-2.372-4.385a25.526,25.526,0,0,0-4.833-3.333A14.436,14.436,0,0,1,26.65,23.8C19.17,9.872,18.565,8.02,16,2ZM10.511,19.179h1.671v.834h.837v5.021h-.837V22.521H10.511v2.512H9.673V20.013h.837Zm0,.834v1.675h1.671V20.013Zm7.526-.834h.837v.834h.837v.837h.834v-.837h.837v-.834h.837v5.855h-.837V20.85h-.837v.837h-.834V20.85h-.837v4.184h-.837Z" style="fill:#0000bf"/><path d="M23.881,18.642c-6.069-8.237-7.476-14.876-7.832-16.461A175.217,175.217,0,0,0,23.881,18.642Z" style="fill:#fff;fill-opacity:0.165680468082428"/><path d="M16.051,2.12,15.6,3.227c-.159.391-.311.765-.461,1.131s-.3.724-.448,1.077-.3.7-.448,1.053-.3.706-.465,1.066-.329.729-.506,1.111-.362.778-.561,1.193c-.028.057-.061.123-.089.181A21.872,21.872,0,0,0,16.2,13.156a14.879,14.879,0,0,1-3.989-2.276l-.14.287c-.065.133-.144.283-.212.42l-.106.219c-.878,1.793-2.006,3.984-3.524,6.822,3.551-2,7.381-4.887,14.338-2.4-.349-.661-.67-1.28-.971-1.863s-.581-1.128-.841-1.644-.5-1-.725-1.463-.433-.9-.629-1.313-.38-.818-.554-1.2-.339-.754-.5-1.118S18.047,6.9,17.9,6.546s-.291-.709-.434-1.066c-.036-.091-.073-.186-.109-.277C16.949,4.247,16.536,3.258,16.051,2.12Z" style="fill:url(#a)"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_audio</title><path d="M17.229,4a.9.9,0,0,0-.569.232l-7.6,6.32a1.158,1.158,0,0,1-.955.328H3.208A1.2,1.2,0,0,0,2,12.088v7.826A1.2,1.2,0,0,0,3.208,21.12H8.1a1.158,1.158,0,0,1,.955.328l7.6,6.32c.521.433,1.081.224,1.081-.289V4.522A.494.494,0,0,0,17.229,4ZM27,6.3,25.209,8.093a14.708,14.708,0,0,1,0,15.844l1.785,1.776A17.19,17.19,0,0,0,27,6.3Zm-4.333,4.323L20.905,12.4a6.035,6.035,0,0,1,0,7.237l1.756,1.756a8.554,8.554,0,0,0,.01-10.769Z" style="fill:#00007f"/></svg>

After

Width:  |  Height:  |  Size: 537 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><linearGradient id="a" x1="-73.299" y1="-36.757" x2="-69.112" y2="-40.601" gradientTransform="matrix(7.886, 0, 0, -8.589, 578.084, -327.095)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#c06fbb"/><stop offset="1" stop-color="#6e4d9b"/></linearGradient><linearGradient id="b" x1="-75.72" y1="-29.976" x2="-76.857" y2="-28.423" gradientTransform="matrix(15.701, 0, 0, -16.956, 1213.064, -480.525)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#6e4d9b"/><stop offset="0.14" stop-color="#77327a"/><stop offset="0.29" stop-color="#b31777"/><stop offset="0.84" stop-color="#cd0f7e"/><stop offset="1" stop-color="#ed2c89"/></linearGradient><linearGradient id="c" x1="-74.781" y1="-34.695" x2="-70.958" y2="-40.015" gradientTransform="matrix(8.637, 0, 0, -7.94, 632.817, -284.546)" xlink:href="#a"/><linearGradient id="d" x1="-3.96" y1="41.901" x2="31.012" y2="13.213" gradientTransform="matrix(1, 0, 0, 1, 0, 0)" xlink:href="#a"/><linearGradient id="e" x1="-72.241" y1="-41.388" x2="-69.334" y2="-43.773" gradientTransform="matrix(6.504, 0, 0, -6.517, 478.263, -265.393)" xlink:href="#a"/><linearGradient id="f" x1="-74.154" y1="-34.519" x2="-70.411" y2="-37.816" gradientTransform="matrix(10.02, 0, 0, -10.013, 732.69, -346.247)" xlink:href="#a"/><linearGradient id="g" x1="-74.562" y1="-31.575" x2="-75.704" y2="-30.013" gradientTransform="matrix(15.678, 0, 0, -16.922, 1195.287, -503.63)" xlink:href="#b"/><linearGradient id="h" x1="-73.124" y1="-36.529" x2="-68.938" y2="-41.164" gradientTransform="matrix(7.887, 0, 0, -8.589, 578.148, -327.094)" xlink:href="#a"/><linearGradient id="i" x1="-78.108" y1="-25.063" x2="-77.58" y2="-24.54" gradientTransform="matrix(37.627, 7.508, 7.477, -37.474, 3130.474, -328.745)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#6e4d9b"/><stop offset="0.14" stop-color="#77327a"/><stop offset="0.53" stop-color="#b31777"/><stop offset="0.79" stop-color="#cd0f7e"/><stop offset="1" stop-color="#ed2c89"/></linearGradient></defs><title>file_type_aurelia</title><path d="M20.336,7.408l-2.6,1.734L15.06,5.131l2.6-1.734,2.677,4.012Z" style="fill:url(#a)"/><path d="M22.449,19.461l4.44,6.654L21.6,29.644l-4.44-6.654-.775-1.161,5.289-3.53.775,1.161Z" style="fill:url(#b)"/><path d="M15.787,23.907l.978,1.465-4.026,2.687-1.752-2.626.88-.587,3.147-2.1.775,1.161Z" style="fill:url(#c)"/><polygon points="24.648 16.316 25.777 15.562 27.529 18.188 24.93 19.922 23.953 18.457 25.423 17.476 24.648 16.316 24.648 16.316" style="fill:url(#d)"/><polygon points="23.953 18.457 23.178 17.296 24.648 16.316 25.423 17.476 23.953 18.457 23.953 18.457" style="fill:url(#e)"/><path d="M6.424,16.692l-.879.587L2.868,13.267,6.894,10.58,8.77,13.393l-3.146,2.1,3.146-2.1.8,1.2-3.147,2.1Z" style="fill:url(#f)"/><path d="M15.432,8.947l.8,1.2-5.289,3.53-.8-1.2-4.4-6.591,5.289-3.53,4.4,6.591Z" style="fill:url(#g)"/><path d="M19.207,8.162l-1.47.981-.8-1.2L15.06,5.131l2.6-1.734,2.677,4.012-1.129.754Z" style="fill:url(#h)"/><path d="M12.64,26.006l-.775-1.161,3.147-2.1.775,1.161-3.146,2.1Z" style="fill:#714896"/><path d="M23.953,18.457,23.178,17.3l1.47-.981.775,1.161-1.47.981Z" style="fill:#6f4795"/><path d="M6.424,16.692l-.8-1.2,3.146-2.1.8,1.2-3.147,2.1Z" style="fill:#88519f"/><path d="M17.737,9.143l-.8-1.2,1.47-.981.8,1.2-1.47.981Z" style="fill:#85509e"/><path d="M22.449,19.461l-5.289,3.53-.775-1.161,5.289-3.53.775,1.161Z" style="fill:#8d166a"/><path d="M15.432,8.947l.8,1.2-5.289,3.53-.8-1.2,5.289-3.53Z" style="fill:#a70d6f"/><rect x="3.776" y="8.336" width="1.799" height="1.799" transform="translate(-4.34 4.149) rotate(-33.716)" style="fill:#9e61ad"/><rect x="9.168" y="26.271" width="1.799" height="1.799" transform="translate(-13.388 10.158) rotate(-33.716)" style="fill:#8053a3"/><path d="M6.38,27.43,2,20.813,25.407,5.157,30,11.668,6.38,27.43Z" style="fill:url(#i)"/></svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><linearGradient id="a" x1="54.604" y1="168.388" x2="54.604" y2="194.885" gradientTransform="translate(-38.604 -165.636)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#d8d8d8"/><stop offset="1" stop-color="#a3a3a3"/></linearGradient><linearGradient id="b" x1="68.756" y1="209.152" x2="91.638" y2="209.152" gradientTransform="translate(-50.601 -159.449) scale(0.832 0.837)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#d7d7d7"/><stop offset="0.5" stop-color="#e7e7e7"/><stop offset="1" stop-color="#d7d7d7"/></linearGradient></defs><title>file_type_autohotkey</title><rect x="2" y="2.824" width="28" height="26.353" rx="3.088" ry="3.088" style="fill:url(#a)"/><path d="M26.856,29.181H5.144A3.148,3.148,0,0,1,2,26.037V5.963A3.148,3.148,0,0,1,5.144,2.819H26.856A3.148,3.148,0,0,1,30,5.963V26.037A3.148,3.148,0,0,1,26.856,29.181ZM5.144,2.963a3,3,0,0,0-3,3h0V26.037a3,3,0,0,0,3,3H26.856a3,3,0,0,0,3-3V5.963a3,3,0,0,0-3-3Z" style="fill:#8d8d8d"/><rect x="4.313" y="4.641" width="23.169" height="21.94" rx="2.571" ry="2.571" style="fill:url(#b)"/><path d="M24.911,26.641H6.884A2.634,2.634,0,0,1,4.253,24.01V7.212A2.634,2.634,0,0,1,6.884,4.581H24.911a2.634,2.634,0,0,1,2.631,2.631v16.8A2.634,2.634,0,0,1,24.911,26.641ZM6.884,4.7A2.514,2.514,0,0,0,4.373,7.212v16.8a2.514,2.514,0,0,0,2.511,2.511H24.911a2.514,2.514,0,0,0,2.511-2.511V7.212A2.514,2.514,0,0,0,24.911,4.7Z" style="fill:#f8f8f8"/><path d="M6.145,23.9l2.343-6.1h.87l2.5,6.1h-.92l-.712-1.848H7.673L7,23.9ZM7.9,21.4H9.974l-.637-1.7q-.291-.77-.433-1.265A7.776,7.776,0,0,1,8.576,19.6Z"/><path d="M13.607,23.9V17.8h.807v2.5h3.171V17.8h.807v6.1h-.807V21.021h-3.17V23.9Z"/><path d="M20.478,23.9V17.8h.807v3.025l3.03-3.025h1.094L22.85,20.267,25.522,23.9H24.456l-2.172-3.088-1,.974V23.9Z"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_autoit</title><circle cx="16" cy="16" r="12.551" style="fill:#5d83ac"/><path d="M2,16A14,14,0,1,1,16,30,14,14,0,0,1,2,16ZM16,4.789A11.211,11.211,0,1,0,27.211,16,11.211,11.211,0,0,0,16,4.789Z" style="fill:#f0f0f0"/><path d="M24.576,20.156l-6.4-9.264a3.131,3.131,0,0,0-.819-.819,2.36,2.36,0,0,0-2.442.023,3.543,3.543,0,0,0-.812.8L7.533,20.156h3.752l4.808-6.8,1.838,2.71q.26.368.544.789t.5.7q-.368-.031-.865-.031h-3.53l-1.914,2.634Z" style="fill:#f0f0f0"/></svg>

After

Width:  |  Height:  |  Size: 536 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_avro</title><path d="M2,11.649h.025a4.785,4.785,0,0,0,2.911,1.336c2.308.221,4.59-.485,6.9-.326a7.03,7.03,0,0,1,2.68.664c.5-.319.989-.662,1.486-.989.5.327.984.674,1.488.989a6.834,6.834,0,0,1,2.487-.65c1.995-.167,3.967.308,5.957.359a5.2,5.2,0,0,0,4.026-1.383H30v.236c-.178.747-.882,1.176-1.284,1.79a4.948,4.948,0,0,1-.731.791,3.8,3.8,0,0,1-.565.748,2.551,2.551,0,0,0-.594.541,2.181,2.181,0,0,1-.96.749,1.149,1.149,0,0,1-.565.56,6.69,6.69,0,0,1-1.94.184c.723.548,1.5,1.02,2.246,1.535.782.513,1.54,1.061,2.326,1.568H4.089c1.5-1.058,3.057-2.035,4.55-3.1A6.8,6.8,0,0,1,6.7,17.065a1.155,1.155,0,0,1-.569-.562,2.28,2.28,0,0,1-1.043-.86c-.268-.3-.67-.466-.853-.843-.2-.436-.658-.664-.909-1.067-.4-.642-1.137-1.076-1.327-1.846v-.239m2.939,8.528q11.059.009,22.12,0c-3.668-2.51-7.376-4.961-11.059-7.448-3.684,2.487-7.392,4.941-11.061,7.449M4.167,13.2a7.842,7.842,0,0,0,2.84.731c1.163.123,2.341.046,3.5.236a2.7,2.7,0,0,1,1.607.781c.659-.452,1.332-.885,1.987-1.342l.012-.064a5.294,5.294,0,0,0-1.877-.5c-2.693-.316-5.387.712-8.067.16m13.652.356c.688.466,1.382.925,2.07,1.392a2.488,2.488,0,0,1,1.3-.719,19.859,19.859,0,0,1,3.137-.248,9.105,9.105,0,0,0,3.5-.768c-2.582.5-5.168-.409-7.761-.2a6.256,6.256,0,0,0-2.245.545M3.339,13.166a7.264,7.264,0,0,0,2.723,1.3c-.219-.153-.376-.416-.657-.457a7.955,7.955,0,0,1-2.066-.844m23.333.825c-.317.023-.5.3-.733.473a7.232,7.232,0,0,0,2.724-1.3,8.106,8.106,0,0,1-1.991.824m-22.5.126a5.121,5.121,0,0,0,2.589,1.1c-.115-.128-.209-.312-.4-.334a10.459,10.459,0,0,1-2.19-.771m21.467.768c-.189.022-.284.2-.394.336a5.187,5.187,0,0,0,2.6-1.109,10.477,10.477,0,0,1-2.2.773M6.3,14.206a3.243,3.243,0,0,0,2.445.352c-.1-.08-.181-.215-.325-.206q-1.063-.04-2.12-.146m17.351.139c-.171-.019-.291.1-.406.211a3.108,3.108,0,0,0,2.42-.352q-1,.112-2.014.141m-16.741.538a3.669,3.669,0,0,0,2.482.319,1.107,1.107,0,0,0-.281-.376,5.158,5.158,0,0,1-2.2.057m15.7.318a3.678,3.678,0,0,0,2.487-.319,5.127,5.127,0,0,1-2.2-.057,1.1,1.1,0,0,0-.283.376M4.838,14.977a4.11,4.11,0,0,0,2.133.841c-.057-.084-.114-.168-.171-.254a6.948,6.948,0,0,1-1.962-.587m20.361.589-.169.253a4.141,4.141,0,0,0,2.136-.843,7.015,7.015,0,0,1-1.967.59m-18.1-.13a.8.8,0,0,0,.534.31,7.579,7.579,0,0,0,2.037-.073c-.009-.03-.027-.09-.036-.12-.457-.051-.923.074-1.385.047A7.054,7.054,0,0,1,7.1,15.437m16.191.151a6.28,6.28,0,0,0-.913-.041l-.042.126a7.416,7.416,0,0,0,2.045.072.7.7,0,0,0,.522-.331,4.349,4.349,0,0,1-1.613.174m-17.52.327a3.12,3.12,0,0,0,1.754.481c-.065-.24-.334-.2-.523-.236-.419-.041-.816-.186-1.231-.246M25,16.163c-.188.041-.452-.006-.521.232a2.874,2.874,0,0,0,1.732-.482c-.4.079-.8.207-1.211.251M7.735,16.119a1,1,0,0,0,.789.275,9.331,9.331,0,0,0,1.325-.158c-.021-.093-.009-.278-.163-.228a9.983,9.983,0,0,1-1.951.111m14.415.118a8.157,8.157,0,0,0,1.412.154.9.9,0,0,0,.7-.274,9.387,9.387,0,0,1-1.934-.11c-.16-.06-.155.132-.176.23m-15.438.44a1.962,1.962,0,0,0,1.3.181l-.091-.126c-.4.006-.807-.022-1.209-.055m1.615.043a1.03,1.03,0,0,0,.716.294c.179-.125.358-.252.531-.386a5.747,5.747,0,0,1-1.247.092m14.1-.093c.237.144.467.477.782.345.166-.05.369-.089.461-.257a5.271,5.271,0,0,1-1.243-.088m1.713.263a2.007,2.007,0,0,0,1.145-.213,10.269,10.269,0,0,1-1.144.049C23.993,16.667,23.984,16.961,24.138,16.89Z" style="fill:#0040ff"/><path d="M7.435,18.886Q11.719,16.013,16,13.137l9.3,6.244c.221.147.439.3.648.464q-9.947-.01-19.894,0c.443-.344.92-.64,1.383-.958m8.255-5.066c-.457,1.859-.907,3.719-1.375,5.576.52.015,1.041.012,1.562,0q-.013-2.841,0-5.68l-.184.1m-2.5,1.684c.255.859.48,1.728.763,2.579.289-1.238.6-2.471.9-3.707-.55.386-1.114.75-1.668,1.129m3.357-.873c-.006.682,0,1.364,0,2.046a2.1,2.1,0,0,0,1.014-.254c.193-.145.1-.409.011-.586a4.276,4.276,0,0,0-1.024-1.207M18.327,16.4c-.1.544-.666.792-1.151.9.474.7.96,1.389,1.416,2.1.469.024.94.011,1.411.009a1.631,1.631,0,0,1,.16-2.976c-.834-.6-1.7-1.14-2.544-1.727.349.5.831,1.037.708,1.7m-6.822.242c.267.921.529,1.845.794,2.767.44,0,.88.008,1.321-.007-.339-1.161-.685-2.319-1.009-3.484-.385.215-.737.482-1.1.724m8.8.452a.946.946,0,0,0,.057,1.7c.533.09.855-.533.779-.99-.026-.4-.4-.861-.836-.714M7.4,19.4q1.324.018,2.65,0c.256-.7.413-1.468.629-2.2-1.1.715-2.187,1.461-3.279,2.194m14.377-1.9a1.616,1.616,0,0,1-.876,1.9c1.233.018,2.465.015,3.7,0-.934-.644-1.883-1.266-2.822-1.9m-5.223.115c-.01.6,0,1.2,0,1.8.415,0,.831,0,1.248,0-.419-.6-.8-1.219-1.243-1.794m-5.546.941h.346c-.055-.187-.108-.376-.166-.562a3.751,3.751,0,0,0-.181.563m-.18.693c-.015.04-.045.119-.061.159.275-.026.59.071.842-.05C11.453,19.112,11.074,19.275,10.826,19.244Z" style="fill:#0040ff"/></svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_aws</title><path d="M30,19.152v1.273c0,2.307-2.545,4.693-5.648,4.693H7.648C4.506,25.118,2,22.771,2,20.424V19.152Z" style="fill:#9d5125"/><path d="M12.778,6.782A7.112,7.112,0,0,1,19.3,11a3.638,3.638,0,0,1,2.068-.636,3.583,3.583,0,0,1,3.619,3.5A5.69,5.69,0,0,1,30,18.993v.477c0,2.347-2.545,4.693-5.688,4.693H7.648C4.506,24.163,2,21.816,2,19.47v-.477A5.527,5.527,0,0,1,5.619,14.14v-.2A7.129,7.129,0,0,1,12.778,6.782Z" style="fill:#f58535"/><path d="M9,15.095,7.131,21.618H8.244l.438-1.591h1.909l.4,1.591H12.1l-1.75-6.523Zm-.159,4.1.8-3.222h0l.756,3.222Z" style="fill:#fff"/><polygon points="16.795 20.226 16.756 20.226 15.881 15.095 14.767 15.095 13.932 20.186 13.892 20.186 13.017 15.095 11.983 15.095 13.256 21.657 14.449 21.657 15.284 16.726 15.324 16.726 16.159 21.657 17.392 21.657 18.705 15.095 17.631 15.095 16.795 20.226" style="fill:#fff"/><path d="M22.085,18.078l-.716-.239c-.716-.278-.994-.6-.994-1.153a.9.9,0,1,1,1.79,0v.119H23.2v-.159c0-.676-.159-1.71-1.869-1.71A1.8,1.8,0,0,0,19.3,16.805a1.729,1.729,0,0,0,1.392,1.79l.716.239a1.1,1.1,0,0,1,.955,1.153.928.928,0,0,1-.994.955q-1.074,0-1.074-1.193v-.159H19.261v.159a1.786,1.786,0,0,0,1.989,1.989c1.312,0,2.187-.557,2.187-1.949A1.728,1.728,0,0,0,22.085,18.078Z" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_babel2</title><path d="M13.016,4.025A26.109,26.109,0,0,1,10.17,5.82V6a.762.762,0,0,0,.281-.11c.123,0,.2.037.2.158l.2-.11h.1v.086A10.967,10.967,0,0,1,8.95,7.58l.11.171h-.1l-.209-.072c0,.062-.086.1-.281.11v.1l.219.243A.781.781,0,0,1,8.4,8.069a1.9,1.9,0,0,0-1.271.942l.11.171a2.611,2.611,0,0,1,.634-.5l.024.267a.851.851,0,0,0-.281.11l.233.342A6.837,6.837,0,0,1,9.3,8.192c.267.072.4.147.4.243h.2a15.493,15.493,0,0,1,4.25-2.3v.185c-.267.391-.439.586-.535.6a.741.741,0,0,0,.134.353,32.729,32.729,0,0,1-1.9,4.815,136.039,136.039,0,0,1-7.364,15.34.725.725,0,0,0,.11.267,2.557,2.557,0,0,0,.942-.353h.11v.185h.185l.206-.142c0,.062.072.086.2.072v.185a1.642,1.642,0,0,1-.318.843,4.395,4.395,0,0,0-.647,1.428V30h.185a11.737,11.737,0,0,0,1.819-2.627,29.214,29.214,0,0,0,5.35-2.017,5.013,5.013,0,0,0,2.822-.966v-.1l-.465.134h-.11v-.1a4.237,4.237,0,0,0,1.872-.61c1.771-1.367,3.1-2.332,4.012-2.908,2.8-2.052,4.117-4.031,3.959-5.911a11.058,11.058,0,0,0-1.846-2.308c-.024-.267.4-.623,1.257-1.113l2.431-2.14a6.315,6.315,0,0,0,.976-3.37L27.484,5.6c-.1-1.086-.88-1.966-2.37-2.637a9.2,9.2,0,0,0-4.721-.942,28.928,28.928,0,0,0-7.366,2Zm2.14,7.682c.185-1,.391-1.575.623-1.709L17.807,5.45c-.024-.281.4-.5,1.295-.647l.294-.024.024.267c.88-.134,1.418-.209,1.624-.233,1.6-.134,2.442.185,2.517.976h.185l-.037-.465h.2a1.217,1.217,0,0,1,.757.952,1.426,1.426,0,0,1-.415.952c-.123,0-.2-.072-.209-.267h-.2l-.048.551c-.818,1.222-1.4,1.846-1.771,1.872q-.495.677-.623.7a11.181,11.181,0,0,1-2.1,1.565,27.388,27.388,0,0,0-4.216,1.637.7.7,0,0,0-.391-.062V13.05a2.263,2.263,0,0,1,.476-1.337Zm-6.6-3.443V8.35a.851.851,0,0,0-.281.11h-.1V8.288Zm5.879-.136.024.267c-.086,0-.209.134-.353.391V8.6a.907.907,0,0,0,.267-.476Zm-.9,1.9.037.366h-.1l-.029-.364Zm-.233.661c-.024.3-.1.465-.267.476h-.1a.934.934,0,0,0,.158-.465Zm-.4.952v.086l-.171.294h-.185V11.94a.243.243,0,0,0,.267-.294h.088Zm-.415.856-.048.452h-.1l-.037-.452Zm2.14,1.367v.171l-.38.037v-.171ZM12.81,16.481A21.476,21.476,0,0,0,18,14.943l.575-.048a3.325,3.325,0,0,1,2.675.685l.037.366c-.439,1.271-.928,2-1.452,2.236l-2.442,1.942a23.881,23.881,0,0,1-2.942,1.808,21.859,21.859,0,0,1-5.4,2.48h-.11c.1-.342,1.38-2.98,3.873-7.942Zm2.637-1.038v.086l-.391.037v-.086Zm-6.083,5.9c-.123.623-.267.942-.391.952v-.086a1.041,1.041,0,0,1,.4-.867Zm2.442,3.445a31.3,31.3,0,0,0,5.839-3.055v.171c0,.072-.267.3-.818.709a14.845,14.845,0,0,0-2.859,1.624c-1.76.61-2.627.99-2.613,1.137a29.423,29.423,0,0,0-3.079,1.356,1.126,1.126,0,0,1-.5-.134.8.8,0,0,1,.428-.781,1.554,1.554,0,0,1,.781.123,7.543,7.543,0,0,1,1.514-.489v-.185l-.575.048a8.223,8.223,0,0,1,1.674-.781l.294-.024V24.6c-.489.037-.77.2-.832.452a.16.16,0,0,0,.2.158,2.362,2.362,0,0,0,.535-.415Zm-3-2.22v.086a.171.171,0,0,1-.171.209v-.086a.182.182,0,0,1,.153-.207Zm4.569,1.246a4.336,4.336,0,0,0-1.308.575h-.1v-.185a1.854,1.854,0,0,0,1.2-.551.183.183,0,0,1,.209.169ZM8.624,25.145l.294-.024v.1a.762.762,0,0,0-.281.11H8.453A.212.212,0,0,1,8.624,25.145Z" style="fill:#f4d44b"/></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><radialGradient id="a" cx="22.737" cy="22.737" r="3.628" gradientTransform="translate(-4.708 41.626) rotate(-81.5) scale(1 1.071)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#bedcdc"/><stop offset="0.5" stop-color="#8e9e9e" stop-opacity="0.74"/><stop offset="1" stop-color="#404f5c" stop-opacity="0.84"/></radialGradient><radialGradient id="b" cx="11.336" cy="11.336" r="5.201" gradientTransform="translate(-2.347 20.753) rotate(-81.5) scale(1 1.071)" xlink:href="#a"/></defs><title>file_type_bat</title><polygon points="24.811 27.318 27.215 24.914 28.417 27.318 27.215 28.52 24.811 27.318" style="fill:silver"/><polygon points="20.964 27.443 24.365 27.443 23.515 29.993 21.815 29.993 20.964 27.443" style="fill:silver"/><polygon points="18.157 24.811 20.561 27.215 18.157 28.417 16.954 27.215 18.157 24.811" style="fill:silver"/><polygon points="18.032 20.964 18.032 24.365 15.482 23.515 15.482 21.815 18.032 20.964" style="fill:silver"/><polygon points="20.664 18.157 18.26 20.561 17.058 18.157 18.26 16.954 20.664 18.157" style="fill:silver"/><polygon points="24.51 18.032 21.11 18.032 21.96 15.482 23.66 15.482 24.51 18.032" style="fill:silver"/><polygon points="27.318 20.664 24.914 18.26 27.318 17.058 28.52 18.26 27.318 20.664" style="fill:silver"/><polygon points="27.443 24.51 27.443 21.11 29.993 21.96 29.993 23.66 27.443 24.51" style="fill:silver"/><path d="M27.776,22.737A5.039,5.039,0,1,1,26.3,19.175,5.023,5.023,0,0,1,27.776,22.737Zm-5.039-1.9a1.9,1.9,0,1,0,1.344.557A1.894,1.894,0,0,0,22.737,20.837Z" style="fill:silver"/><path d="M22.656,18.074A4.664,4.664,0,1,0,27.4,22.656,4.664,4.664,0,0,0,22.656,18.074Zm.15,8.61a3.947,3.947,0,1,1,3.877-4.015A3.947,3.947,0,0,1,22.806,26.684Z" style="fill:#a9a9a9"/><path d="M22.674,19.11a3.628,3.628,0,1,0,3.69,3.564A3.628,3.628,0,0,0,22.674,19.11Zm.1,5.7A2.073,2.073,0,1,1,24.811,22.7,2.073,2.073,0,0,1,22.774,24.81Z" style="fill:url(#a)"/><path d="M22.7,20.665A2.073,2.073,0,1,0,24.81,22.7,2.073,2.073,0,0,0,22.7,20.665Zm.067,3.826a1.754,1.754,0,1,1,1.723-1.784A1.754,1.754,0,0,1,22.768,24.491Z" style="fill:#a9a9a9"/><polygon points="6.563 16.976 8.838 18.238 7.374 19.806 6.009 19.049 6.563 16.976" style="fill:silver"/><polygon points="4.382 13.834 5.722 16.064 3.67 16.69 2.866 15.352 4.382 13.834" style="fill:silver"/><polygon points="4.065 10.023 4.11 12.624 2.02 12.14 1.993 10.579 4.065 10.023" style="fill:silver"/><polygon points="5.696 6.563 4.434 8.838 2.866 7.374 3.623 6.009 5.696 6.563" style="fill:silver"/><polygon points="8.838 4.382 6.608 5.722 5.982 3.67 7.32 2.866 8.838 4.382" style="fill:silver"/><polygon points="12.65 4.065 10.048 4.11 10.532 2.02 12.093 1.993 12.65 4.065" style="fill:silver"/><polygon points="16.109 5.696 13.834 4.434 15.298 2.866 16.663 3.623 16.109 5.696" style="fill:silver"/><polygon points="18.29 8.838 16.95 6.608 19.002 5.982 19.806 7.32 18.29 8.838" style="fill:silver"/><polygon points="18.607 12.65 18.562 10.048 20.652 10.532 20.679 12.093 18.607 12.65" style="fill:silver"/><polygon points="16.976 16.109 18.238 13.834 19.806 15.298 19.049 16.663 16.976 16.109" style="fill:silver"/><polygon points="13.834 18.29 16.064 16.95 16.69 19.002 15.352 19.806 13.834 18.29" style="fill:silver"/><polygon points="10.023 18.607 12.624 18.562 12.14 20.652 10.579 20.679 10.023 18.607" style="fill:silver"/><path d="M11.467,18.831a7.5,7.5,0,1,1,5.261-2.288A7.473,7.473,0,0,1,11.467,18.831Zm2.682-7.544a2.814,2.814,0,1,0-.789,2A2.8,2.8,0,0,0,14.149,11.287Z" style="fill:silver"/><path d="M11.218,4.6a6.737,6.737,0,1,0,6.854,6.619A6.737,6.737,0,0,0,11.218,4.6Zm.217,12.436a5.7,5.7,0,1,1,5.6-5.8A5.7,5.7,0,0,1,11.436,17.036Z" style="fill:#a9a9a9"/><path d="M11.245,6.136a5.2,5.2,0,1,0,5.29,5.109A5.2,5.2,0,0,0,11.245,6.136Zm.14,8.036a2.837,2.837,0,1,1,2.787-2.886A2.837,2.837,0,0,1,11.386,14.172Z" style="fill:url(#b)"/><path d="M11.282,8.227a3.109,3.109,0,1,0,3.163,3.055A3.109,3.109,0,0,0,11.282,8.227Zm.1,5.74a2.631,2.631,0,1,1,2.585-2.677A2.631,2.631,0,0,1,11.382,13.967Z" style="fill:#a9a9a9"/></svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bazaar</title><path d="M23.418,8.449C17.727,2.634,16.918,2,16.17,2s-1.576.659-7.416,6.706c-6.364,6.59-7.034,7.359-6.18,8.7.235.37,6.168,6.374,6.228,6.435C14.477,29.586,15.2,30,15.72,30c.219,0,.492,0,2.8-2.155,1.276-1.192,2.922-2.812,4.636-4.563s3.3-3.433,4.466-4.736c2.1-2.352,2.1-2.625,2.1-2.845C29.725,15.245,29.26,14.42,23.418,8.449Z" style="fill:#fce94f"/><path d="M19.315,18.638c-1.455-2.081-2.193-4.1-1.969-4.683.084-.219.516-.344,1.184-.344.126,0,1.237-.01,1.237-.375,0-.6-3.321-5.565-3.78-5.656-.324-.061-1.03.759-2.1,2.446l-.036.057c-1.44,2.271-1.875,2.957-1.685,3.3.122.222.447.225.984.225h1.085v4.877a40.929,40.929,0,0,0,.219,5.251h0a3.532,3.532,0,0,0,1.475.219H17.25v-1.88a7.71,7.71,0,0,1,.152-1.87,3.448,3.448,0,0,1,1.1.822c.833.813,1.166,1.063,1.632.677C20.9,21.074,20.659,20.56,19.315,18.638Z" style="fill:#c4a000"/><path d="M14.093,23.224a38.676,38.676,0,0,1-.186-5.173V13.064H12.759c-1.391,0-1.4.019.783-3.417.985-1.554,1.727-2.449,1.986-2.4.4.08,3.692,5.021,3.692,5.549,0,.146-.507.266-1.127.266-.738,0-1.182.143-1.286.414-.264.688.635,2.858,1.982,4.785,1.38,1.975,1.5,2.375.839,2.92-.365.3-.6.2-1.486-.671-.58-.566-1.14-.943-1.246-.837a6.159,6.159,0,0,0-.192,1.963V23.41H15.492A3.487,3.487,0,0,1,14.093,23.224Z" style="fill:#555753"/><path d="M16.813,23.52H15.492a3.533,3.533,0,0,1-1.475-.219h0a40.93,40.93,0,0,1-.218-5.251V13.173H12.735c-.56,0-.883,0-1.007-.225-.19-.345.245-1.031,1.685-3.3l.036-.057c1.07-1.687,1.776-2.507,2.1-2.446.459.091,3.78,5.06,3.78,5.656,0,.365-1.11.375-1.237.375-.669,0-1.1.125-1.184.344-.223.582.515,2.6,1.969,4.683,1.343,1.922,1.58,2.435.819,3.067-.466.387-.8.137-1.632-.677a3.447,3.447,0,0,0-1.1-.822,7.708,7.708,0,0,0-.152,1.87Zm-2.633-.367a4.035,4.035,0,0,0,1.311.149h1.1V21.639a6.117,6.117,0,0,1,.224-2.04c.25-.25,1.134.577,1.4.836.939.917,1.069.889,1.339.665.563-.467.55-.757-.859-2.773-1.377-1.971-2.272-4.163-1.994-4.887.123-.322.59-.485,1.389-.485a1.938,1.938,0,0,0,1.023-.176A26.993,26.993,0,0,0,15.5,7.355c-.121-.022-.667.456-1.868,2.35l-.036.057c-1.2,1.9-1.805,2.848-1.678,3.08.062.112.4.11.815.112h1.281v5.1A46.7,46.7,0,0,0,14.18,23.153Z" style="fill:#2e3436"/><path d="M9.113,23.535c-3.276-3.315-6.053-6.178-6.17-6.362C2.3,16.166,2.8,15.5,9.069,9.01c5.2-5.382,6.484-6.572,7.1-6.572s1.9,1.171,6.936,6.318c4.346,4.442,6.182,6.5,6.182,6.946,0,.918-12.668,13.861-13.567,13.861C15.244,29.562,13.475,27.949,9.113,23.535Zm13.3-.74c4.256-4.371,6.316-6.683,6.316-7.087,0-.691-11.907-13.017-12.56-13-.447.011-12.282,12.035-12.811,13.016-.439.814-.157,1.174,5.376,6.867,6.036,6.21,6.539,6.692,6.972,6.692A82.622,82.622,0,0,0,22.412,22.8Z" style="fill:#555753"/><path d="M15.72,29.781c-.492,0-1.673-.942-6.763-6.092h0c-2.9-2.93-6.052-6.168-6.2-6.4-.731-1.15-.271-1.781,6.153-8.433C14.3,3.274,15.457,2.219,16.17,2.219s1.9,1.074,7.092,6.384c5.222,5.337,6.244,6.645,6.244,7.1,0,.722-4.982,5.868-6.509,7.428S16.431,29.781,15.72,29.781Zm.462-26.836C15.039,3.707,4.047,14.907,3.55,15.828c-.362.671-.012,1.1,5.341,6.61,5.285,5.438,6.4,6.555,6.778,6.623.425-.267,3.113-2.85,6.586-6.418h0C27.457,17.3,28.418,16,28.5,15.719,28.07,14.7,17.353,3.6,16.182,2.945ZM3,16.307a.846.846,0,0,0,.124.75c.076.106.833.9,2.059,2.164C3.636,17.566,3.081,16.831,3,16.307ZM23.677,9.654c2.655,2.77,5.269,5.627,5.269,6.054,0,.1,0,.234-.447.816a3.384,3.384,0,0,0,.57-.839C29.01,15.172,25.562,11.588,23.677,9.654ZM15.03,3.379c-.724.623-1.8,1.681-3.387,3.3C13.328,4.987,14.375,3.979,15.03,3.379Zm1.1-.457Zm.1-.007Z" style="fill:#2e3436"/></svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bazel</title><path d="M9,2l7,7L9,16,2,9Z" style="fill:#76d275"/><path d="M2,9v7l7,7V16Z" style="fill:#43a047"/><path d="M23,2l7,7-7,7L16,9Z" style="fill:#76d275"/><path d="M30,9v7l-7,7V16Z" style="fill:#43a047"/><path d="M16,9l7,7-7,7L9,16Z" style="fill:#43a047"/><path d="M16,23v7L9,23V16Z" style="fill:#00701a"/><path d="M16,23l7-7v7l-7,7Z" style="fill:#004300"/></svg>

After

Width:  |  Height:  |  Size: 448 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_binary</title><path d="M20.929,2H4.529V30h23.3V9Zm5.114,26.35H6.409V3.65H19.815l6.333,6.333V28.35ZM11.477,15.393c1.584,0,2.563-1.463,2.563-3.663,0-2.145-.8-3.443-2.4-3.443S9.068,9.75,9.068,11.95C9.068,14.1,9.871,15.393,11.477,15.393ZM10.234,11.73c0-1.562.429-2.453,1.32-2.453.649,0,1.045.55,1.221,1.474l-2.53,1.309A3.2,3.2,0,0,1,10.234,11.73ZM11.565,14.4c-.638,0-1.045-.528-1.221-1.43l2.53-1.309v.286C12.874,13.512,12.456,14.4,11.565,14.4Zm10.27.847.1-1.023h-1.65V8.21l-1.177.1v.8l-1.694.176.022.891,1.672-.044v4.092H17.259V15.25Zm-7.85,9.5.1-1.023h-1.65V17.71l-1.177.1v.8l-1.694.176.022.891,1.672-.044v4.092H9.409V24.75Zm5.442.143c1.584,0,2.563-1.463,2.563-3.663,0-2.145-.8-3.443-2.4-3.443s-2.574,1.463-2.574,3.663C17.018,23.595,17.821,24.893,19.427,24.893ZM18.184,21.23c0-1.562.429-2.453,1.32-2.453.649,0,1.045.55,1.221,1.474l-2.53,1.309A3.2,3.2,0,0,1,18.184,21.23ZM19.515,23.9c-.638,0-1.045-.528-1.221-1.43l2.53-1.309v.286C20.824,23.012,20.406,23.9,19.515,23.9Z" style="fill:#9f4246"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bithound</title><path d="M28.638,14.849a15.139,15.139,0,0,0-.7-3.244A19.659,19.659,0,0,0,22.75,3.478c-.1-.09-.5-.325-.641-.245-.384.212.34,1.684.429,1.95a9.25,9.25,0,0,1,.5,5.037A5.01,5.01,0,0,1,18.5,14.226c-1.259.106-2.527-.038-3.792.11a7.183,7.183,0,0,0-5.014,2.422,4.968,4.968,0,0,0-.38.581H9.284a2.15,2.15,0,0,1-1.161-.272l-.162-.092a8.407,8.407,0,0,1-3.067-3.941,11.352,11.352,0,0,1-.689-2.061,5.523,5.523,0,0,1-.1-.973,1.387,1.387,0,0,0-.091-.658c-.242-.386-.556-.017-.6.292a7.657,7.657,0,0,0-.133,1.525A8.183,8.183,0,0,0,3.871,13.7a11.119,11.119,0,0,0,1.934,3.273,11.849,11.849,0,0,0,1.112,1.133,5.633,5.633,0,0,1,1.073.971,2.609,2.609,0,0,1,.332,1.581A12.2,12.2,0,0,0,8.609,24.8a11.949,11.949,0,0,0,1.538,3.552,7.081,7.081,0,0,0,1.331,1.472c.339.266.98.3.609-.682a6.959,6.959,0,0,1,.384-6.424c1.067-1.684,2.955-3.18,5.092-2.913a6.051,6.051,0,0,1,5.164,6.347,8.481,8.481,0,0,1-.348,2.414,2.1,2.1,0,0,0-.112,1.074c.134.577.777.365,1.055-.014.757-1.033,1.56-2.034,2.274-3.1A17.622,17.622,0,0,0,28.638,14.849Z" style="fill:#c31230"/><path d="M11.074,6.374a4.679,4.679,0,0,1,.14.551.644.644,0,0,0,.073.254A2.262,2.262,0,0,0,12.379,8.21a8.338,8.338,0,0,0,1.038.432,4.738,4.738,0,0,0,1.6-.073c.9-.072,1.734-.392,2.562.088-4.234,4.968-.239,6.076,2.866,3.68,3.539-2.73.208-9.168.208-9.168s-.077-.5-1.415-.8c-.125-.064-.252-.123-.378-.181-1.329-.615-2.525.395-3.486,1.209-.277.234-.553.476-.845.693a7.376,7.376,0,0,1-1.277.754,4.373,4.373,0,0,1-1.554.493,2.408,2.408,0,0,0-.361.046c-.227.019-.346.081-.4.181a.349.349,0,0,0-.134.307.858.858,0,0,0,.2.456A.8.8,0,0,0,11.074,6.374Z" style="fill:#c31230"/></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_blade</title><path d="M24.851,15.957l-2.393-3.284c-.067-.095-.123-.19.045-.212s2.887-.514,3.01-.542.229-.061.38.145,2.22,2.826,2.3,2.926-.056.162-.235.2S24.851,15.957,24.851,15.957Zm2.511,5.165c-.23.084-7.748,2.621-7.894,2.684s-.261.084-.449-.188-2.634-4.5-2.634-4.5l7.97-2.074c.2-.063.261-.1.386.094s2.631,3.6,2.7,3.717S27.591,21.039,27.361,21.122ZM9.618,19.6c-.244.056-.244.028-.272-.056S3.9,8.3,3.827,8.159s-.071-.25,0-.25,4.323-.38,4.474-.388.135.024.19.119l6.1,10.534c.1.181.042.237-.056.258S9.862,19.548,9.618,19.6Zm16.693-8.03c-.436-.525-.648-.43-.916-.391s-3.4.564-3.758.625-.592.207-.369.519c.2.278,2.255,3.193,2.707,3.835L15.8,18.12,9.3,7.253c-.259-.384-.313-.518-.9-.491s-5.1.4-5.42.428-.674.17-.353.928,5.444,11.8,5.586,12.118a1.1,1.1,0,0,0,1.383.634c.89-.214,3.978-1.02,5.666-1.462.892,1.615,2.71,4.89,3.046,5.359.449.627.758.523,1.447.314.538-.163,8.42-3,8.775-3.144s.574-.251.334-.606c-.177-.261-2.256-3.047-3.345-4.5.746-.2,3.4-.9,3.681-.981.329-.089.374-.251.2-.452S26.746,12.1,26.311,11.573Z" style="fill:#fb503b;stroke:#fb503b;stroke-width:0.25px"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bolt</title><path d="M9.012,2H22.979q-2.787,5.6-5.593,11.194,2.8.014,5.6.009-4.9,8.4-9.794,16.8c-.019-4.192-.009-8.375-.009-12.567-1.391,0-2.782,0-4.173-.009Z" style="fill:#fbc02d"/></svg>

After

Width:  |  Height:  |  Size: 265 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bower</title><path d="M29.465,15.715c-1.44-1.384-8.642-2.248-10.914-2.5a6.669,6.669,0,0,0,.281-.806,9.094,9.094,0,0,1,.99-.367c.042.124.241.6.354.826,4.569.126,4.8-3.4,4.99-4.36a5.447,5.447,0,0,1,1.74-3.521c-2.335-.68-5.693,1.055-6.818,3.637a7.015,7.015,0,0,0-1.265-.348,6.137,6.137,0,0,0-5.966-4.585A11.154,11.154,0,0,0,2,15.232c0,6.1,4.163,11.442,6.515,11.442a2.316,2.316,0,0,0,2.118-1.459c.174.473.708,1.943.883,2.317.259.553,1.457,1.032,1.981.458a1.93,1.93,0,0,0,2.585-.4,1.914,1.914,0,0,0,2.471-1.423c.637-.034.95-.928.81-1.641a17.5,17.5,0,0,0-1.625-3.056c.846.688,2.988.883,3.248,0,1.364,1.07,3.489.509,3.657-.362,1.657.431,3.558-.515,3.245-1.66C30.552,19.265,30.212,16.433,29.465,15.715Z" style="fill:#543729"/><path d="M22.053,9.675a10.185,10.185,0,0,1,2.2-3.148,5.71,5.71,0,0,0-2.575,2.9,9.019,9.019,0,0,0-.906-.506,5.878,5.878,0,0,1,4.8-3.308c-1.4,1.269-.9,3.906-2.053,5.3A15.066,15.066,0,0,0,22.053,9.675Zm-.9,1.852a4.627,4.627,0,0,1,.047-.533,4.837,4.837,0,0,0-.839-.11,3.157,3.157,0,0,0,.291,1.216,4.378,4.378,0,0,0,2.282-.633,7.638,7.638,0,0,0-1.54-.434C21.335,11.149,21.2,11.442,21.149,11.527Z" style="fill:#00acee"/><path d="M17.2,20.527v.005c-.135-.29-.278-.642-.449-1.1.665.968,2.75.469,2.641-.4,1.02.768,3.121-.128,2.643-1.2,1.022.476,2.189-.482,1.927-.9,1.743.336,3.413.671,3.937.805a2.032,2.032,0,0,1-2.337.69c.646.88-.608,1.936-2.355,1.354.385.864-1.171,1.642-2.939.741C20.291,21.383,18.076,21.482,17.2,20.527Zm3.457-4.369c2.023.155,5.367.457,7.438.747-.131-.674-.488-.866-1.612-1.168C25.274,15.866,22.206,16.167,20.657,16.158Z" style="fill:#2baf2b"/><path d="M19.393,19.031c1.02.768,3.121-.128,2.643-1.2,1.022.476,2.189-.482,1.927-.9-2.06-.4-4.222-.8-4.713-.866.3.016.791.05,1.406.1,1.55.009,4.617-.293,5.826-.422a58.716,58.716,0,0,0-8.714-1.4,3.964,3.964,0,0,1-.773.841c-1.208,2.555-3.4,4.253-5.816,4.253a7.8,7.8,0,0,1-2.38-.4c-.552.591-2.9,1.039-4.813.1A9.737,9.737,0,0,0,12.9,25.044c3.273,0,4.725-3.342,4.407-4.227-.077-.215-.382-.927-.553-1.387C17.417,20.4,19.5,19.9,19.393,19.031Z" style="fill:#ffcc2f"/><path d="M17.409,12.3a9.482,9.482,0,0,1,2.239-.99c-.015-.105-.026-.212-.033-.319-.624.15-1.8.654-2.476-.041,1.423.429,2.134-.383,3.18-.383a6.724,6.724,0,0,1,2.214.449,7.469,7.469,0,0,0-4.7-2.1A3.29,3.29,0,0,0,17.409,12.3Z" style="fill:#cecece"/><path d="M8.8,19.03a7.8,7.8,0,0,0,2.38.4c2.421,0,4.609-1.7,5.816-4.253a7.485,7.485,0,0,1-4.87,1.384,7.621,7.621,0,0,0,4.964-3.139,4.221,4.221,0,0,1,.44-5.249,4.931,4.931,0,0,0-4.674-3.284C7.575,4.891,3.2,9.31,3.2,15.232a9.893,9.893,0,0,0,.788,3.9C5.9,20.069,8.248,19.621,8.8,19.03Z" style="fill:#ef5734"/><path d="M10.384,10.013a2.439,2.439,0,1,0,2.439-2.439A2.439,2.439,0,0,0,10.384,10.013Z" style="fill:#ffcc2f"/><path d="M11.363,10.013a1.46,1.46,0,1,0,1.46-1.46A1.46,1.46,0,0,0,11.363,10.013Z" style="fill:#543729"/><ellipse cx="12.823" cy="9.365" rx="0.851" ry="0.529" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_bower2</title><path d="M29.465,15.715c-1.44-1.384-8.642-2.248-10.914-2.5a6.669,6.669,0,0,0,.281-.806,9.094,9.094,0,0,1,.99-.367c.042.124.241.6.354.826,4.569.126,4.8-3.4,4.99-4.36a5.447,5.447,0,0,1,1.74-3.521c-2.335-.68-5.693,1.055-6.818,3.637a7.015,7.015,0,0,0-1.265-.348,6.137,6.137,0,0,0-5.966-4.585A11.154,11.154,0,0,0,2,15.232c0,6.1,4.163,11.442,6.515,11.442a2.316,2.316,0,0,0,2.118-1.459c.174.473.708,1.943.883,2.317.259.553,1.457,1.032,1.981.458a1.93,1.93,0,0,0,2.585-.4,1.914,1.914,0,0,0,2.471-1.423c.637-.034.95-.928.81-1.641a17.5,17.5,0,0,0-1.625-3.056c.846.688,2.988.883,3.248,0,1.364,1.07,3.489.509,3.657-.362,1.657.431,3.558-.515,3.245-1.66C30.552,19.265,30.212,16.433,29.465,15.715Z" style="fill:#ee4d26"/><path d="M20.658,16.158h0c-.616-.047-1.109-.081-1.406-.1.49.07,2.652.468,4.713.866.262.418-.905,1.376-1.927.9.478,1.077-1.623,1.972-2.643,1.2a.658.658,0,0,1-.332.609,1.833,1.833,0,0,1-.73.285,1.834,1.834,0,0,0,.73-.285.658.658,0,0,0,.332-.609c1.02.768,3.121-.128,2.643-1.2,1.022.476,2.189-.482,1.927-.9,1.743.336,3.413.671,3.937.805a2.032,2.032,0,0,1-2.337.69c.646.88-.608,1.936-2.355,1.354.385.864-1.171,1.642-2.939.741.022.864-2.193.964-3.069.009v.005q-.038-.081-.076-.169c-.112-.274-.25-.609-.351-.875l-.021-.057a1.57,1.57,0,0,0,1.578.494,1.57,1.57,0,0,1-1.578-.495h0l.021.057c.13.348.244.633.351.875.082.2.15.367.181.454.318.884-1.134,4.227-4.407,4.227a9.737,9.737,0,0,1-8.912-5.912c1.909.937,4.261.489,4.813-.1a7.8,7.8,0,0,0,2.38.4c2.421,0,4.609-1.7,5.816-4.253a3.964,3.964,0,0,0,.773-.841,58.716,58.716,0,0,1,8.714,1.4c-1.209.129-4.276.43-5.826.422h0ZM17.409,12.3a9.482,9.482,0,0,1,2.239-.99c-.015-.105-.026-.212-.033-.319-.624.15-1.8.654-2.476-.041,1.423.429,2.134-.383,3.18-.383a6.724,6.724,0,0,1,2.214.449,7.469,7.469,0,0,0-4.7-2.1A3.29,3.29,0,0,0,17.409,12.3Zm3.739-.777a4.627,4.627,0,0,1,.047-.533,4.837,4.837,0,0,0-.839-.11,3.157,3.157,0,0,0,.291,1.216,4.378,4.378,0,0,0,2.282-.633,7.638,7.638,0,0,0-1.54-.434C21.335,11.149,21.2,11.442,21.149,11.527Zm.9-1.852a10.185,10.185,0,0,1,2.2-3.148,5.71,5.71,0,0,0-2.575,2.9,9.02,9.02,0,0,0-.906-.506,5.878,5.878,0,0,1,4.8-3.308c-1.4,1.269-.9,3.906-2.053,5.3A15.066,15.066,0,0,0,22.053,9.675Zm-11.669.338a2.439,2.439,0,1,0,2.439-2.439A2.439,2.439,0,0,0,10.384,10.013Z" style="fill:#fff"/><circle cx="12.823" cy="10.013" r="1.46" style="fill:#ee4d26"/><ellipse cx="12.823" cy="9.365" rx="0.851" ry="0.529" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_browserslist</title><circle cx="16" cy="16" r="14" style="fill:#ffd539"/><path d="M21.247,7.264q.093-.026.185-.045l.182.223q-.02.078-.037.157a2.458,2.458,0,0,0-.432.12Q21.186,7.493,21.247,7.264Zm-3.938,4.221c-1.26,2-1.955,4.067-1.751,5.183a17.109,17.109,0,0,0,6.554-.142A13.775,13.775,0,0,0,26.06,15a2.466,2.466,0,0,0,.56-.44A8.435,8.435,0,0,1,22.8,12.442a5.117,5.117,0,0,1-1.651-4.724A9.283,9.283,0,0,0,17.309,11.485Zm4.378-4.3c-1.294,4.238,3.292,6.695,5.105,7.009.727.126.09.795-.531,1.159a16.1,16.1,0,0,1-11.026,1.67C14.383,14.51,18.565,7.481,21.688,7.18Z"/><path d="M20.382,12.652A.8.8,0,1,0,21,12.038a.5.5,0,1,1-.614.615Zm5.782,2.368a1.2,1.2,0,1,0-1.2-1.2C25.776,14.407,26.949,14.288,26.165,15.02Z"/><path d="M15.283,27.935c.276-3.157-.747-4.589-2.56-7.451s-1.04-8.122,3.885-7.691C24.581,13.491,21.419,25.291,15.283,27.935Z"/><path d="M11.065,26.748c1.389-2.848.948-4.552.28-7.874s1.94-7.955,6.383-5.788c7.194,3.509.013,13.393-6.663,13.662Z"/><path d="M7.562,24.141c2.317-2.161,2.516-3.91,3.083-7.251s4.662-6.731,8.033-3.116c5.459,5.854-4.787,12.508-11.117,10.366Z"/><path d="M5.2,20.479c2.938-1.187,3.75-2.749,5.477-5.664s6.764-4.614,8.616-.03c3,7.422-8.951,9.962-14.093,5.694Z"/><path d="M4.341,16.167c3.168-.055,4.486-1.222,7.143-3.325s7.968-1.883,8.055,3.06c.14,8-11.927,6.091-15.2.265Z"/><path d="M5.036,11.86c2.977,1.084,4.626.466,7.86-.545s8.114,1.1,6.423,5.743C16.582,24.58,6,18.471,5.036,11.86Z"/><path d="M7.281,8.1c2.392,2.079,4.152,2.093,7.534,2.308S22,14.338,18.753,18.069C13.5,24.11,5.813,14.615,7.281,8.1Z"/><path d="M10.679,5.363c1.488,2.8,3.126,3.442,6.206,4.855s5.3,6.245.93,8.566C10.748,22.542,6.973,10.923,10.679,5.363Z"/><path d="M14.868,4.056c.386,3.145,1.685,4.334,4.054,6.756s2.706,7.728-2.2,8.33C8.776,20.118,9.416,7.918,14.868,4.056Z"/><path d="M19.224,4.337c-.767,3.075.02,4.649,1.363,7.76s-.243,8.184-5.04,6.988C7.78,17.149,12.749,5.988,19.224,4.337Z"/><path d="M23.212,6.144c-4.288,3.251-1.826,5.6-1.826,11.811,0,5.689-2.842,3.476-6.892.64C7.937,14,16.576,5.366,23.212,6.144Z"/><path d="M21.365,16.5c-.013-.088-.037-.353-.053-.591-.026-.389-.172-1.651-.242-2.091l-.028-.173.224-.025a.816.816,0,0,0,.561-1.279A1.07,1.07,0,0,0,21.155,12h-.161l.171.162a.408.408,0,0,1,.171.314.527.527,0,0,1-.258.472c-.115.052-.123.047-.149-.1a11.32,11.32,0,0,1-.152-3.175,5.357,5.357,0,0,1,.17-.7l.094-.264,0,.216a4.774,4.774,0,0,0,.094.647,6.329,6.329,0,0,0,3.122,4.017,10.415,10.415,0,0,0,1.719.819,2.071,2.071,0,0,1,.4.163c.082.082-.012.2-.312.39A13.576,13.576,0,0,1,22.3,16.453C21.317,16.685,21.393,16.681,21.365,16.5Z" style="fill:#fff"/></svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_buckbuild</title><path d="M9.929,3.809H7.9V9.557l2.478,2.478H7.4L4.156,8.789V3.809H2v5.9l4.411,4.411h5.947l2.131,2.131h-5.7L13.6,21.2,6.559,28.191H9.335L16.372,21.1,13.7,18.428H27.919v.892l-6.145,3.667-5.154,5.2h2.924l3.518-3.568L30,20.46V16.248H23.458l-2.23-2.23,2.527-2.527V5.841H21.649v4.708l-2.056,2.032-1.834-1.92V5.841H15.777v5.749l4.635,4.658H17.584L9.929,8.665V3.809" style="fill:#4a69a5"/><path d="M20.683,19.717H17.908l1.338,1.437,1.437-1.437" style="fill:#4a69a5"/></svg>

After

Width:  |  Height:  |  Size: 559 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 45 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_c</title><path d="M10.676,15.973a10.052,10.052,0,0,0,1.175,5.151,5.446,5.446,0,0,0,6.306,2.408,4.284,4.284,0,0,0,3.09-3.6c.107-.6.109-.61.109-.61,1.737.251,4.537.658,6.274.906l-.11.44a11.256,11.256,0,0,1-2.7,5.39,9.439,9.439,0,0,1-5.366,2.688,14.61,14.61,0,0,1-8.277-.819A10.151,10.151,0,0,1,5.4,21.687a16.225,16.225,0,0,1,.019-11.45,10.538,10.538,0,0,1,8.963-7.054,13.353,13.353,0,0,1,6.666.555,9.571,9.571,0,0,1,6.167,6.9c.094.352.114.417.114.417-1.932.351-4.319.8-6.238,1.215-.362-1.915-1.265-3.428-3.2-3.9a5.263,5.263,0,0,0-6.616,3.57,10.49,10.49,0,0,0-.385,1.439A12.31,12.31,0,0,0,10.676,15.973Z" style="fill:#005f91"/></svg>

After

Width:  |  Height:  |  Size: 707 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_c2</title><path d="M23,19.418A6.971,6.971,0,1,1,22.95,12.5l6.093-3.509a14,14,0,1,0,.036,13.95Z" style="fill:#005f91"/></svg>

After

Width:  |  Height:  |  Size: 201 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_c_al</title><path d="M15.62,2.83h.023c.206.113.416.218.626.323.011,1.142,0,2.285.005,3.428q0,5.56,0,11.12c0,1.486,0,2.972,0,4.457,0,.711,0,1.422,0,2.133-.213.053-.427.1-.639.151-.01-2.028,0-4.056-.006-6.084a38.321,38.321,0,0,1-4.88,4,40.761,40.761,0,0,1-6.042,3.459A28.663,28.663,0,0,1,2,26.92v-.032a29.479,29.479,0,0,0,2.72-2.552,35.528,35.528,0,0,0,3.954-5.108,59.927,59.927,0,0,0,3.148-5.6,49.117,49.117,0,0,0,2.858-6.987A26.7,26.7,0,0,0,15.62,2.83Z" style="fill:#ffc525"/><path d="M16.274,17.7A31.642,31.642,0,0,0,23.046,7.435q.293.191.583.386a3.874,3.874,0,0,1,.008.4q0,4.584,0,9.168,0,4.361,0,8.723c-.193.063-.389.119-.585.172,0-2.8,0-5.6,0-8.4a19.537,19.537,0,0,1-2.588,2.048,27.688,27.688,0,0,1-4.188,2.23C16.274,20.672,16.271,19.186,16.274,17.7Z" style="fill:#5090cd"/><path d="M26.329,14.989a37.484,37.484,0,0,0,3.167-3.2c.165.088.338.16.5.248q0,8.465,0,16.93c-.172.055-.341.119-.514.173a44.222,44.222,0,0,0-4.8-1.345A42.238,42.238,0,0,0,8.552,27.4a34,34,0,0,0-6.381,1.7l.007-.032a33.507,33.507,0,0,1,12.571-3.389c.081-.008.163-.006.245-.012a35.1,35.1,0,0,1,3.7.018c.615.03,1.227.1,1.839.156a18.726,18.726,0,0,1,2.519.442c.2-.053.392-.109.585-.172q0-4.361,0-8.723C24.55,16.6,25.44,15.8,26.329,14.989Z" style="fill:#73c267"/><path d="M20.46,19.928a19.537,19.537,0,0,0,2.588-2.048c.006,2.8,0,5.6,0,8.4a18.726,18.726,0,0,0-2.519-.442.415.415,0,0,0-.193-.04c-.885-.1-1.776-.161-2.667-.187-.714-.006-1.429-.016-2.143.022a5.071,5.071,0,0,0-.535.032c-.082.006-.164,0-.245.012A33.507,33.507,0,0,0,2.178,29.068l-.007.032c-.064,0-.112.051-.171.07v0a9.855,9.855,0,0,1,.886-.612A26.865,26.865,0,0,1,8.9,25.837a33.472,33.472,0,0,1,5.632-1.257c.366-.054.736-.086,1.1-.138.212-.054.426-.1.639-.151,0-.711,0-1.422,0-2.133A27.688,27.688,0,0,0,20.46,19.928Z" style="fill:#00477f"/><path d="M10.747,22.358a38.321,38.321,0,0,0,4.88-4c.008,2.028,0,4.056.006,6.084-.365.052-.735.084-1.1.138A33.472,33.472,0,0,0,8.9,25.837a26.865,26.865,0,0,0-6.014,2.717A9.855,9.855,0,0,0,2,29.166V26.92a28.663,28.663,0,0,0,2.705-1.1A40.761,40.761,0,0,0,10.747,22.358Z" style="fill:#f47835"/></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cabal</title><path d="M18.467,2.028,9.327,3.715A.787.787,0,0,0,8.8,5.072l8.935,11.854a2.45,2.45,0,0,0,2.195.854l9.14-1.687a.787.787,0,0,0,.528-1.357L20.662,2.883A2.45,2.45,0,0,0,18.467,2.028Z" style="fill:#6bc9dd"/><path d="M28.88,17.144l-9.636,1.672a3.714,3.714,0,0,0-2,1.322L10.681,29.07c-.453.616-.289,1.024.365.911l9.636-1.672a3.714,3.714,0,0,0,2-1.322l6.558-8.933C29.7,17.438,29.534,17.03,28.88,17.144Z" style="fill:#6a6bd7"/><path d="M5.065,15.183c-.151.4-2.957,2.615-2.9,3.068s3.353,1.8,3.6,2.14,1.186,4.687,1.53,4.78,2.118-3.518,2.424-3.7,3.69.282,3.841-.114-2.044-3.976-2.106-4.429,1.095-4.513.844-4.851-3.381,1.06-3.725.967-3.014-3.071-3.32-2.884S5.216,14.787,5.065,15.183Z" style="fill:#567dd9"/></svg>

After

Width:  |  Height:  |  Size: 790 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cakephp</title><path d="M16,13.819l10.949,2.719C28.855,15.792,30,14.846,30,13.819V9.445c0-2.409-6.27-4.369-14-4.369S2,7.035,2,9.445v4.375c0,2.411,6.267,4.369,14,4.369V13.819Z" style="fill:#d33e44"/><path d="M26.948,16.538,16,13.818v4.37l10.949,2.72C28.854,20.16,30,19.216,30,18.188v-4.37C30,14.846,28.854,15.791,26.948,16.538Z" style="fill:#fff"/><path d="M2,13.818v4.37c0,2.411,6.267,4.366,14,4.366V18.188C8.267,18.188,2,16.228,2,13.818Z" style="fill:#fff"/><path d="M26.948,20.908,16,18.188v4.37l10.949,2.72C28.854,24.531,30,23.586,30,22.558v-4.37C30,19.216,28.854,20.161,26.948,20.908Z" style="fill:#d33e44"/><path d="M2,18.188v4.37c0,2.411,6.267,4.366,14,4.366V22.558C8.267,22.558,2,20.6,2,18.188Z" style="fill:#d33e44"/></svg>

After

Width:  |  Height:  |  Size: 808 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 21 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cf</title><rect x="3.167" y="3.517" width="25.667" height="24.967" style="fill:#26424e"/><path d="M2,2.35v27.3H30V2.35ZM3.167,3.517H28.834V28.483H3.167ZM16.81,21.066a.194.194,0,0,1-.135.212,6.028,6.028,0,0,1-2.125.288c-3,0-5.653-1.961-5.653-6.576,0-3.961,2.346-6.615,5.922-6.615a5.234,5.234,0,0,1,1.991.269c.1.038.115.1.115.212V10.51c0,.154-.077.154-.135.135a4.529,4.529,0,0,0-1.953-.365c-2.25,0-3.75,1.711-3.75,4.653,0,3.634,2.057,4.711,3.75,4.711a5.239,5.239,0,0,0,1.836-.25c.077-.038.135-.038.135.1v1.577Zm.746-6.975c-.077,0-.076-.038-.076-.135V12.371c0-.1.019-.115.1-.115h1.069v-.6a3.946,3.946,0,0,1,.385-1.842,2.521,2.521,0,0,1,2.481-1.423,2.126,2.126,0,0,1,.777.1.15.15,0,0,1,.115.173V10.2c0,.1-.038.135-.135.115a2.45,2.45,0,0,0-.526-.058c-.673,0-1,.481-1,1.4v.593H22.27c.1,0,.133.019.133.1v1.6c0,.1-.019.115-.115.135H20.743v7.183c0,.077-.019.129-.135.129H18.78a.121.121,0,0,1-.135-.135V14.091H17.556Z" style="fill:#e5f3fc"/></svg>

After

Width:  |  Height:  |  Size: 1014 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cf2</title><path d="M24.037,2.072h0l5.564,5.8V29.928H8.814V30H29.67V7.945L24.037,2.072" style="fill:#909090"/><path d="M23.965,2H8.742V29.928H29.6V7.873L23.965,2" style="fill:#27434f"/><path d="M23.893,2.072V7.945h5.633L23.893,2.072" style="fill:#4c4442"/><path d="M23.965,2V7.873H29.6L23.965,2Z" style="fill:#e5f3fc"/><path d="M2.384,10.264H8.742V3.432H2.384Z" style="fill:#909090"/><path d="M8.742,10.264H22.461V3.432H8.742v6.832Z" style="fill:#4c4442"/><path d="M22.407,10.211H2.33V3.378H22.407v6.832" style="fill:#e5f3fc"/><path d="M18.267,14.686a3.907,3.907,0,0,1,1.692.2c.054.032.068.063.068.158v1.374c0,.126-.054.126-.095.095a3.561,3.561,0,0,0-1.611-.273c-1.751,0-2.945,1.358-2.945,3.648,0,2.906,1.683,3.617,2.9,3.617a3.5,3.5,0,0,0,1.643-.244c.068-.032.1-.016.1.079V24.68a.19.19,0,0,1-.081.189,4.142,4.142,0,0,1-1.928.23c-2.172.016-4.248-1.408-4.248-5.167,0-2.985,1.765-5.246,4.506-5.246" style="fill:#e5f3fc"/><path d="M24.8,14.376c-1.625,0-2.582,1.12-2.582,3.079V17.7h-.9a.08.08,0,0,0-.091.091V18.9a.106.106,0,0,0,.091.121l.9.015v6.017c0,.091.03.121.106.121h1.534c.091,0,.121-.046.121-.121v-6l1.291-.03c.076,0,.091-.03.091-.106V17.788c0-.061-.015-.091-.091-.091H23.976v-.349c0-1.276.516-1.484,1.108-1.484a1.548,1.548,0,0,1,.268.024v-1.46a2.968,2.968,0,0,0-.556-.052" style="fill:#e5f3fc"/><path d="M14.215,9.237c0,.045-.013.06-.051.06h-.686c-.026,0-.038-.022-.038-.06V4.489c0-.045.006-.052.045-.052h2.468c.038,0,.051.007.058.052l.058.6c.006.045-.006.067-.045.067H14.215V6.576h1.622c.038,0,.051.015.051.052v.619a.046.046,0,0,1-.051.052H14.215V9.237" style="fill:#27434f"/><path d="M11.862,4.437a1.824,1.824,0,0,1,.79.092c.025.015.032.029.032.074v.641c0,.059-.025.059-.044.044a1.662,1.662,0,0,0-.752-.127c-.817,0-1.375.634-1.375,1.7,0,1.356.785,1.688,1.356,1.688a1.635,1.635,0,0,0,.767-.114c.032-.015.044-.007.044.037V9.1a.088.088,0,0,1-.038.088,1.933,1.933,0,0,1-.9.107c-1.014.007-1.983-.657-1.983-2.411a2.2,2.2,0,0,1,2.1-2.448" style="fill:#27434f"/></svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><radialGradient id="a" cx="26.508" cy="-543.31" r="12.833" gradientTransform="matrix(1.293, 0.001, 0.001, -1.234, -20.084, -658.573)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#576e71" stop-opacity="0.98"/><stop offset="1" stop-color="#26424e"/></radialGradient></defs><title>file_type_cfc</title><rect x="3.167" y="3.517" width="25.667" height="24.967" style="fill:url(#a)"/><path d="M2,2.35v27.3H30V2.35ZM3.167,3.517H28.834V28.483H3.167ZM13.836,21.066a.194.194,0,0,1-.135.212,6.028,6.028,0,0,1-2.125.288c-3,0-5.653-1.961-5.653-6.576,0-3.961,2.346-6.615,5.922-6.615a5.234,5.234,0,0,1,1.991.269c.1.038.115.1.115.212V10.51c0,.154-.077.154-.135.135a4.529,4.529,0,0,0-1.953-.365c-2.25,0-3.75,1.711-3.75,4.653,0,3.634,2.057,4.711,3.75,4.711a5.239,5.239,0,0,0,1.836-.25c.077-.038.135-.038.135.1v1.577Zm.746-6.975c-.077,0-.076-.038-.076-.135V12.371c0-.1.019-.115.1-.115h1.069v-.6a3.946,3.946,0,0,1,.385-1.842,2.521,2.521,0,0,1,2.481-1.423,2.126,2.126,0,0,1,.777.1.15.15,0,0,1,.115.173V10.2c0,.1-.038.135-.135.115a2.45,2.45,0,0,0-.526-.058c-.673,0-1,.481-1,1.4v.593H19.3c.1,0,.133.019.133.1v1.6c0,.1-.019.115-.115.135H17.77v7.183c0,.077-.019.129-.135.129H15.806a.121.121,0,0,1-.135-.135V14.091H14.583Zm11.5,6.881A.169.169,0,0,1,26,21.14a4.416,4.416,0,0,1-2.066.247c-2.654,0-4.012-2.1-4.012-4.731,0-2.758,1.782-4.806,4.338-4.806a4.085,4.085,0,0,1,1.7.227c.065.037.081.075.081.186l-.016,1.509c0,.112-.049.13-.114.093a3.352,3.352,0,0,0-1.521-.227c-1.465,0-2.393,1.209-2.393,2.961,0,2.068,1.14,2.942,2.344,2.942a3.943,3.943,0,0,0,1.626-.173c.081-.019.114.019.114.093v1.509" style="fill:#e5f3fc"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cfc2</title><path d="M24.037,2.072h0l5.564,5.8V29.928H8.814V30H29.67V7.945L24.037,2.072" style="fill:#909090"/><path d="M23.965,2H8.742V29.928H29.6V7.873L23.965,2" style="fill:#27434f"/><path d="M23.893,2.072V7.945h5.633L23.893,2.072" style="fill:#4c4442"/><path d="M23.965,2V7.873H29.6L23.965,2Z" style="fill:#e5f3fc"/><path d="M2.384,10.264H8.742V3.432H2.384Z" style="fill:#909090"/><path d="M8.742,10.264H22.461V3.432H8.742v6.832Z" style="fill:#4c4442"/><path d="M22.407,10.211H2.33V3.378H22.407v6.832" style="fill:#e5f3fc"/><path d="M14.953,14.686a3.907,3.907,0,0,1,1.692.2c.054.032.068.063.068.158v1.374c0,.126-.054.126-.095.095a3.561,3.561,0,0,0-1.611-.273c-1.751,0-2.945,1.358-2.945,3.648,0,2.906,1.683,3.617,2.9,3.617a3.5,3.5,0,0,0,1.643-.244c.068-.032.1-.016.1.079V24.68a.19.19,0,0,1-.081.189,4.142,4.142,0,0,1-1.928.23c-2.172.016-4.248-1.408-4.248-5.167,0-2.985,1.765-5.246,4.506-5.246" style="fill:#e5f3fc"/><path d="M21.482,14.376c-1.625,0-2.582,1.12-2.582,3.079V17.7H18a.08.08,0,0,0-.091.091V18.9a.106.106,0,0,0,.091.121l.9.015v6.017c0,.091.03.121.106.121H20.54c.091,0,.121-.046.121-.121v-6l1.291-.03c.076,0,.091-.03.091-.106V17.788c0-.061-.015-.091-.091-.091H20.662v-.349c0-1.276.516-1.484,1.108-1.484a1.548,1.548,0,0,1,.268.024v-1.46a2.968,2.968,0,0,0-.556-.052" style="fill:#e5f3fc"/><path d="M28.019,24.848a.133.133,0,0,1-.064.132,3.486,3.486,0,0,1-1.631.2c-2.095,0-3.167-1.661-3.167-3.735a3.5,3.5,0,0,1,3.424-3.794,3.225,3.225,0,0,1,1.342.179c.051.029.064.059.064.147l-.013,1.191c0,.088-.039.1-.09.074a2.646,2.646,0,0,0-1.2-.179c-1.157,0-1.889.955-1.889,2.337,0,1.633.9,2.323,1.851,2.323a3.113,3.113,0,0,0,1.284-.136c.064-.015.09.015.09.074v1.191" style="fill:#e6f3fc"/><path d="M9.653,4.437a1.824,1.824,0,0,1,.79.092c.025.015.032.029.032.074v.641c0,.059-.025.059-.044.044a1.662,1.662,0,0,0-.752-.127c-.817,0-1.375.634-1.375,1.7,0,1.356.785,1.688,1.356,1.688a1.635,1.635,0,0,0,.767-.114c.032-.015.044-.007.044.037V9.1a.088.088,0,0,1-.038.088,1.933,1.933,0,0,1-.9.107C8.519,9.3,7.55,8.639,7.55,6.885a2.2,2.2,0,0,1,2.1-2.448" style="fill:#27434f"/><path d="M12.006,9.237c0,.045-.013.06-.051.06h-.686c-.026,0-.038-.022-.038-.06V4.489c0-.045.006-.052.045-.052h2.468c.038,0,.051.007.058.052l.058.6c.006.045-.006.067-.045.067H12.006V6.576h1.622c.038,0,.051.015.051.052v.619a.046.046,0,0,1-.051.052H12.006V9.237" style="fill:#27434f"/><path d="M16.435,4.424a1.824,1.824,0,0,1,.79.092c.025.015.032.029.032.074v.641c0,.059-.025.059-.044.044a1.662,1.662,0,0,0-.752-.127c-.817,0-1.375.634-1.375,1.7,0,1.356.785,1.688,1.356,1.688a1.635,1.635,0,0,0,.767-.114c.032-.015.044-.007.044.037v.627a.088.088,0,0,1-.038.088,1.933,1.933,0,0,1-.9.107c-1.014.007-1.983-.657-1.983-2.411a2.2,2.2,0,0,1,2.1-2.448" style="fill:#27434f"/></svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32"><defs><radialGradient id="a" cx="10.925" cy="-543.261" r="12.833" gradientTransform="matrix(1.293, 0, 0, -1.234, -0.634, -658.475)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fff" stop-opacity="0.98"/><stop offset="1" stop-color="#e5f3fc"/></radialGradient></defs><title>file_type_cfm</title><rect x="3.167" y="3.517" width="25.667" height="24.967" style="fill:url(#a)"/><path d="M2,2.35v27.3H30V2.35ZM3.167,3.517H28.834V28.483H3.167ZM11.073,21.09a.185.185,0,0,1-.128.2,5.745,5.745,0,0,1-2.025.275c-2.859,0-5.387-1.869-5.387-6.267,0-3.775,2.236-6.3,5.644-6.3a4.988,4.988,0,0,1,1.9.257c.092.037.11.092.11.2V11.03c0,.147-.073.147-.128.128a4.316,4.316,0,0,0-1.861-.348c-2.144,0-3.573,1.631-3.573,4.434,0,3.463,1.961,4.489,3.573,4.489a4.993,4.993,0,0,0,1.75-.238c.073-.037.128-.037.128.092v1.5Zm.711-6.647c-.073,0-.073-.037-.073-.128V12.8c0-.092.018-.11.092-.11h1.019v-.568a3.76,3.76,0,0,1,.366-1.756,2.4,2.4,0,0,1,2.364-1.356,2.026,2.026,0,0,1,.741.092.143.143,0,0,1,.11.165v1.466c0,.092-.037.128-.128.11a2.335,2.335,0,0,0-.5-.055c-.641,0-.953.458-.953,1.338v.565h1.455c.092,0,.127.018.127.092v1.529c0,.092-.018.11-.11.128H14.821v6.845c0,.073-.018.123-.128.123H12.95a.116.116,0,0,1-.128-.128v-6.84H11.784Zm9.005-2.378a15.574,15.574,0,0,0-3.686.653c-.091,0-.107.053-.107.149.032.374.005.918.005,1.558h.011v6.8c0,.133.027.171.107.171h1.627c.091,0,.123-.037.123-.149V14.2a2.754,2.754,0,0,1,1.446-.384c.929,0,1.436.838,1.436,2.06v5.358a.193.193,0,0,0,.038.13.079.079,0,0,0,.068.038h0l.017,0H23.5c.091,0,.123-.037.123-.149V14.2a2.754,2.754,0,0,1,1.446-.384c.929,0,1.436.838,1.436,2.06v5.358c0,.112.048.171.139.171h1.612c.075,0,.123-.053.123-.149V15.893c0-3.047-1.355-3.72-2.545-3.816a12.021,12.021,0,0,0-3.385.478,2.6,2.6,0,0,0-1.37-.478c-.093-.007-.19-.011-.29-.012Z" style="fill:#28434f"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cfm2</title><path d="M24.037,2.072h0l5.564,5.8V29.928H8.814V30H29.67V7.945L24.037,2.072" style="fill:#909090"/><path d="M23.965,2H8.742V29.928H29.6V7.873L23.965,2" style="fill:#e5f3fc"/><path d="M23.893,2.072V7.945h5.633L23.893,2.072" style="fill:#4c4442"/><path d="M23.965,2V7.873H29.6L23.965,2Z" style="fill:#27434f"/><path d="M2.384,10.264H8.742V3.432H2.384Z" style="fill:#909090"/><path d="M8.742,10.264H22.461V3.432H8.742v6.832Z" style="fill:#4c4442"/><path d="M22.407,10.211H2.33V3.378H22.407v6.832" style="fill:#27434f"/><path d="M13.25,15.507a3.6,3.6,0,0,1,1.56.181c.05.029.063.058.063.146V17.1c0,.116-.05.116-.088.087a3.282,3.282,0,0,0-1.485-.252c-1.614,0-2.715,1.252-2.715,3.363,0,2.679,1.551,3.334,2.677,3.334a3.229,3.229,0,0,0,1.514-.225c.063-.029.088-.015.088.073v1.237a.175.175,0,0,1-.075.175,3.818,3.818,0,0,1-1.777.212c-2,.015-3.916-1.3-3.916-4.762,0-2.751,1.626-4.835,4.154-4.835" style="fill:#28434f"/><path d="M19.268,15.221c-1.5,0-2.379,1.032-2.379,2.838v.224h-.826a.074.074,0,0,0-.084.084v1.022a.1.1,0,0,0,.084.112l.826.014V25.06c0,.084.028.112.1.112H18.4c.084,0,.112-.042.112-.112V19.528L19.7,19.5c.07,0,.084-.028.084-.1V18.366c0-.056-.014-.084-.084-.084h-1.19V17.96c0-1.176.476-1.368,1.022-1.368a1.426,1.426,0,0,1,.247.022V15.268a2.735,2.735,0,0,0-.513-.048" style="fill:#28434f"/><path d="M23.582,18.221a11.581,11.581,0,0,0-2.741.485c-.067,0-.079.04-.079.111.024.278,0,.682,0,1.159h.008v5.059c0,.1.02.127.079.127h1.21c.067,0,.091-.028.091-.111V19.805a2.048,2.048,0,0,1,1.075-.286c.69,0,1.067.623,1.067,1.532v3.984a.143.143,0,0,0,.029.1.059.059,0,0,0,.051.028h0l.012,0H25.6c.067,0,.091-.028.091-.111V19.805a2.048,2.048,0,0,1,1.075-.286c.69,0,1.067.623,1.067,1.532v3.984c0,.083.036.127.1.127h1.2c.056,0,.091-.04.091-.111V21.067c0-2.266-1.008-2.766-1.893-2.837a8.938,8.938,0,0,0-2.517.355A1.931,1.931,0,0,0,23.8,18.23c-.069-.005-.141-.008-.216-.009Z" style="fill:#28434f"/><path d="M9.162,4.437a1.824,1.824,0,0,1,.79.092c.025.015.032.029.032.074v.641c0,.059-.025.059-.044.044a1.662,1.662,0,0,0-.752-.127c-.817,0-1.375.634-1.375,1.7,0,1.356.785,1.688,1.356,1.688a1.635,1.635,0,0,0,.767-.114c.032-.015.044-.007.044.037V9.1a.088.088,0,0,1-.038.088,1.933,1.933,0,0,1-.9.107C8.028,9.3,7.059,8.639,7.059,6.885a2.2,2.2,0,0,1,2.1-2.448" style="fill:#e5f3fc"/><path d="M11.515,9.237c0,.045-.013.06-.051.06h-.686c-.026,0-.038-.022-.038-.06V4.489c0-.045.006-.052.045-.052h2.468c.038,0,.051.007.058.052l.058.6c.006.045-.006.067-.045.067H11.515V6.576h1.622c.038,0,.051.015.051.052v.619a.046.046,0,0,1-.051.052H11.515V9.237" style="fill:#e5f3fc"/><path d="M14.315,4.432h1.033c.036,0,.051.008.058.044.182.676.706,2.873.829,3.615h.007c.138-.677.749-2.9.938-3.613.007-.036.022-.046.058-.046h1c.036,0,.044.007.051.036l.175,4.765c.007.044-.015.058-.051.058H17.7c-.044,0-.051-.02-.051-.056-.029-1.557-.029-3.757-.029-4.142h-.007c-.124.618-.763,3.1-1.04,4.142-.007.044-.029.056-.058.056h-.64a.057.057,0,0,1-.065-.049c-.269-1.083-.764-3.328-.931-4.149h-.015c0,.575-.058,2.564-.116,4.142,0,.044-.022.056-.051.056h-.64c-.044,0-.058-.014-.058-.051l.262-4.765c.007-.036.014-.044.051-.044" style="fill:#e5f3fc"/></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cheader</title><path d="M8.329,29V3h3.192v9.329a7.132,7.132,0,0,1,5.64-2.589,7.605,7.605,0,0,1,3.636.825,4.842,4.842,0,0,1,2.208,2.279,10.506,10.506,0,0,1,.665,4.221V29H20.478V17.064a4.932,4.932,0,0,0-1.038-3.485,3.858,3.858,0,0,0-2.935-1.091,5.176,5.176,0,0,0-2.669.736,4.157,4.157,0,0,0-1.782,2,9.164,9.164,0,0,0-.532,3.476V29Z" style="fill:#005f91"/></svg>

After

Width:  |  Height:  |  Size: 436 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_chef</title><path d="M11.791,20.247a6.1,6.1,0,0,0,4.265,1.773V19.5a3.438,3.438,0,0,1-2.483-1.027Z" style="fill:#3f5364"/><path d="M18.249,10.4l-.933,2.333A3.771,3.771,0,0,1,19.1,14.227h2.716A6.073,6.073,0,0,0,18.249,10.4Z" style="fill:#3f5364"/><path d="M10.008,16a6.114,6.114,0,0,0,.513,2.427l2.3-1.027a3.41,3.41,0,0,1-.28-1.4,3.534,3.534,0,0,1,3.509-3.5V9.98A6.045,6.045,0,0,0,10.008,16Z" style="fill:#f18b21"/><path d="M17.307,19.267,18.24,21.6a6.048,6.048,0,0,0,3.6-3.873H19.127A3.587,3.587,0,0,1,17.307,19.267Z" style="fill:#f18b21"/><path d="M16.047,22.3a6.3,6.3,0,1,1,6.085-8.027h2.436a8.657,8.657,0,1,0,0,3.5H22.132A6.3,6.3,0,0,1,16.047,22.3Z" style="fill:#3f5364"/><path d="M16.047,7.04h0V4.66h0A11.325,11.325,0,0,0,5.463,11.893l2.2.84A9.048,9.048,0,0,1,16.047,7.04Z" style="fill:#3f5364"/><path d="M16.047,24.96v2.38a11.373,11.373,0,0,0,11.237-9.567H24.848A8.936,8.936,0,0,1,16.047,24.96Z" style="fill:#3f5364"/><path d="M24.895,14.273h2.389a11.4,11.4,0,0,0-7.121-8.82l-.84,2.193A9.112,9.112,0,0,1,24.895,14.273Z" style="fill:#f18b21"/><path d="M7.059,16H4.669a11.361,11.361,0,0,0,7.168,10.547l.887-2.193A9.029,9.029,0,0,1,7.059,16Z" style="fill:#f18b21"/><path d="M27.564,14.273h2.389a14.463,14.463,0,0,0-2.016-5.647l-2.016,1.26A10.461,10.461,0,0,1,27.564,14.273Z" style="fill:#3f5364"/><path d="M2,16.009a14.74,14.74,0,0,0,1.241,6.048l2.315-.952a12.448,12.448,0,0,1-1.148-5.1" style="fill:#3f5364"/><path d="M16.047,27.62a11.632,11.632,0,0,1-8.241-3.407l-1.689,1.68A13.846,13.846,0,0,0,16.047,30,14.082,14.082,0,0,0,30,17.727H27.611A11.719,11.719,0,0,1,16.047,27.62Z" style="fill:#f18b21"/><path d="M16.047,4.38a11.38,11.38,0,0,1,6.972,2.333L24.475,4.8A13.96,13.96,0,0,0,16.047,2,14.1,14.1,0,0,0,2.933,10.913l2.249.887A11.686,11.686,0,0,1,16.047,4.38Z" style="fill:#f18b21"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_circleci</title><path d="M12.458,16a3.332,3.332,0,1,1,3.332,3.332A3.331,3.331,0,0,1,12.458,16ZM15.79,2A14.015,14.015,0,0,0,2.224,12.528a.432.432,0,0,0-.014.14.672.672,0,0,0,.672.672H8.524a.645.645,0,0,0,.6-.392h0a7.336,7.336,0,1,1,0,6.1h0a.684.684,0,0,0-.6-.392H2.882a.672.672,0,0,0-.672.672c0,.042.014.084.014.14A14,14,0,1,0,15.79,2Z" style="fill:#064c64"/></svg>

After

Width:  |  Height:  |  Size: 441 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_class</title><path d="M11.7,23.56s-1.07.622.761.833a16.023,16.023,0,0,0,5.8-.246A10.088,10.088,0,0,0,19.8,24.9c-5.481,2.349-12.405-.136-8.1-1.339" style="fill:#e76f00"/><path d="M11.026,20.494s-1.2.888.633,1.078a22.618,22.618,0,0,0,7.481-.359,3.32,3.32,0,0,0,1.152.7c-6.627,1.938-14.009.153-9.266-1.421" style="fill:#e76f00"/><path d="M16.673,15.294a2.051,2.051,0,0,1-.355,2.954s3.429-1.77,1.854-3.987c-1.471-2.067-2.6-3.095,3.508-6.636,0,0-9.586,2.394-5.007,7.669" style="fill:#e76f00"/><path d="M23.922,25.827s.792.652-.872,1.157c-3.164.958-13.168,1.248-15.948.038-1-.435.874-1.038,1.464-1.164a3.8,3.8,0,0,1,.966-.108c-1.111-.783-7.181,1.537-3.083,2.2,11.176,1.812,20.372-.816,17.473-2.124" style="fill:#e76f00"/><path d="M12.211,17.318s-5.089,1.209-1.8,1.648a38.225,38.225,0,0,0,6.731-.072c2.106-.178,4.221-.555,4.221-.555a8.934,8.934,0,0,0-1.28.685C14.913,20.382,4.93,19.75,7.8,18.359a9.629,9.629,0,0,1,4.407-1.042" style="fill:#e76f00"/><path d="M21.34,22.421c5.253-2.73,2.824-5.353,1.129-5a3.932,3.932,0,0,0-.6.161.957.957,0,0,1,.449-.346c3.354-1.179,5.933,3.478-1.083,5.322a.458.458,0,0,0,.106-.138" style="fill:#e76f00"/><path d="M18.172,1.906s2.909,2.91-2.759,7.386c-4.546,3.59-1.037,5.637,0,7.975-2.653-2.394-4.6-4.5-3.294-6.463,1.917-2.879,7.229-4.275,6.056-8.9" style="fill:#e76f00"/><path d="M12.727,29.818c5.042.323,12.786-.179,12.969-2.565,0,0-.353.9-4.167,1.623a41.458,41.458,0,0,1-12.76.2s.645.533,3.959.746" style="fill:#e76f00"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

Some files were not shown because too many files have changed in this diff Show More