fleet/frontend/components/graphics/FilePng.tsx
Ian Littman 0d29f2bfc0
Add custom software icons (#32652)
For #29478, sans GitOps.

---------

Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
Co-authored-by: Konstantin Sykulev <konst@sykulev.com>
2025-09-05 17:31:03 -05:00

59 lines
3.4 KiB
TypeScript

import React from "react";
import { uniqueId } from "lodash";
const FilePng = () => {
const clipPathId = uniqueId();
return (
<svg xmlns="http://www.w3.org/2000/svg" width="34" height="40" fill="none">
<g clipPath={`url(#${clipPathId})`}>
<path
fill="#fff"
stroke="#192147"
strokeWidth=".5"
d="M4.667.25h19.561c.641 0 1.256.255 1.71.708l5.104 5.105c.453.453.708 1.068.708 1.709v29.562a2.417 2.417 0 0 1-2.417 2.416H4.667a2.417 2.417 0 0 1-2.417-2.416V2.666A2.417 2.417 0 0 1 4.667.25Z"
/>
<path
fill="#C5C7D1"
d="M23.5.5h.834l.5 6.5 6.666.5v1h-6a2 2 0 0 1-2-2v-6Z"
/>
<path
stroke="#192147"
strokeWidth=".5"
d="M24.5.334v5.667c0 .736.597 1.333 1.333 1.333h6"
/>
<path
fill="#C5C7D1"
d="M3.5 19h25a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2h-25V19Z"
/>
<rect
width="29.163"
height="14.53"
x=".25"
y="18.58"
fill="#5CABDF"
rx="1.75"
/>
<rect
width="29.163"
height="14.53"
x=".25"
y="18.58"
stroke="#192147"
strokeWidth=".5"
rx="1.75"
/>
<path
fill="#fff"
d="M22.291 30.36c-.642 0-1.193-.092-1.652-.276-.456-.18-.81-.431-1.064-.75a1.958 1.958 0 0 1-.421-1.094h2.22a.56.56 0 0 0 .166.33c.09.083.203.143.343.179.141.039.3.058.475.058.298 0 .544-.072.739-.217.197-.144.296-.406.296-.784V26.72h-.067a1.405 1.405 0 0 1-.384.555 1.8 1.8 0 0 1-.621.346 2.59 2.59 0 0 1-.797.117 2.57 2.57 0 0 1-1.26-.317c-.382-.211-.688-.547-.918-1.006-.229-.459-.343-1.058-.343-1.798 0-.773.12-1.402.36-1.886.241-.484.553-.839.934-1.064a2.354 2.354 0 0 1 1.21-.338c.317 0 .595.056.834.167.24.108.44.255.601.438.162.18.284.38.367.597h.05v-1.119h2.304v6.393c0 .542-.14 1.003-.422 1.381-.278.381-.67.672-1.176.872-.507.2-1.098.3-1.774.3Zm.084-4.256a.857.857 0 0 0 .542-.176c.153-.12.27-.289.35-.509.084-.222.126-.49.126-.8 0-.318-.042-.59-.125-.815a1.112 1.112 0 0 0-.35-.521.832.832 0 0 0-.543-.184.832.832 0 0 0-.543.184c-.147.12-.261.293-.342.521a2.502 2.502 0 0 0-.117.814c0 .317.04.587.117.81.081.22.195.388.342.504a.87.87 0 0 0 .543.172ZM13.911 24.218v3.605h-2.303v-6.41h2.186v1.219h.067c.14-.406.384-.725.734-.956.354-.23.765-.346 1.236-.346.453 0 .847.104 1.18.313.337.206.597.49.78.851.187.362.279.775.276 1.24v4.089h-2.303v-3.605c.003-.318-.078-.567-.242-.747-.162-.181-.387-.272-.676-.272a.96.96 0 0 0-.497.126.802.802 0 0 0-.321.35 1.24 1.24 0 0 0-.117.543ZM4 30.226v-8.813h2.287v1.119h.05c.083-.217.206-.416.367-.597.161-.183.361-.33.6-.438a1.96 1.96 0 0 1 .835-.167c.423 0 .825.113 1.206.338.384.225.695.58.935 1.064.242.484.363 1.113.363 1.886 0 .74-.116 1.353-.347 1.84-.228.487-.534.85-.918 1.09-.38.239-.8.358-1.255.358-.3 0-.57-.049-.806-.146a1.858 1.858 0 0 1-.6-.405 1.871 1.871 0 0 1-.38-.584h-.034v3.455H4Zm2.253-5.608c0 .312.04.582.121.81.084.225.2.4.35.525a.848.848 0 0 0 .547.184c.212 0 .391-.06.539-.18.15-.122.264-.296.342-.521.08-.228.12-.5.12-.818 0-.317-.04-.588-.12-.814a1.1 1.1 0 0 0-.342-.521.815.815 0 0 0-.539-.184.849.849 0 0 0-.546.184c-.15.12-.267.293-.35.521-.081.226-.122.497-.122.814Z"
/>
</g>
<defs>
<clipPath id={clipPathId}>
<path fill="#fff" d="M0 0h34v40H0z" />
</clipPath>
</defs>
</svg>
);
};
export default FilePng;