2023-09-16 01:23:11 -04:00
|
|
|
export type CustomIconName =
|
2023-10-16 13:28:41 -04:00
|
|
|
| 'createFile'
|
|
|
|
| 'createFolder'
|
2023-09-16 01:23:11 -04:00
|
|
|
| 'equal'
|
|
|
|
| 'exit'
|
|
|
|
| 'extrude'
|
2023-10-16 13:28:41 -04:00
|
|
|
| 'file'
|
2023-09-16 01:23:11 -04:00
|
|
|
| 'horizontal'
|
|
|
|
| 'line'
|
|
|
|
| 'move'
|
|
|
|
| 'parallel'
|
|
|
|
| 'sketch'
|
|
|
|
| 'vertical'
|
|
|
|
|
|
|
|
export const CustomIcon = ({
|
|
|
|
name,
|
|
|
|
...props
|
|
|
|
}: {
|
|
|
|
name: CustomIconName
|
|
|
|
} & React.SVGProps<SVGSVGElement>) => {
|
|
|
|
switch (name) {
|
2023-10-16 13:28:41 -04:00
|
|
|
case 'createFile':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
|
|
|
d="M4 3H4.5H11H11.2071L11.3536 3.14645L15.8536 7.64646L16 7.7929V8.00001V11.3773C15.6992 11.1362 15.3628 10.9376 15 10.7908V8.50001H11H10.5V8.00001V4H5V16H9.79076C9.93763 16.3628 10.1362 16.6992 10.3773 17H4.5H4V16.5V3.5V3ZM11.5 4.70711L14.2929 7.50001H11.5V4.70711ZM13 12V14H11V15H13V17H14V15H16V14H14V12H13Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'createFolder':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
|
|
|
d="M3.5 3.5H4H7H7.16667L7.3 3.6L9.16667 5H16H16.5V5.5V7.5V10.3773C16.1992 10.1362 15.8628 9.93763 15.5 9.79076V8H4.5V15.5H10.5351C10.7529 15.8764 11.0302 16.2141 11.3542 16.5H4H3.5V16V7.5V4V3.5ZM4.5 4.5V7H15.5V6H9H8.83333L8.7 5.9L6.83333 4.5H4.5ZM13.5 11V13H11.5V14H13.5V16H14.5V14H16.5V13H14.5V11H13.5Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
2023-09-16 01:23:11 -04:00
|
|
|
case 'equal':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
d="M5 8.78V7H14.52V8.78H5ZM5 13.02V11.24H14.52V13.02H5Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'exit':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
d="M17 10L3 10M3 10L6.5 6.5M3 10L6.5 13.5"
|
|
|
|
stroke="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
|
|
|
|
case 'extrude':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M10 3L10.3536 3.35355L12.3536 5.35355L11.6465 6.06066L10.5 4.91421V11.5854C11.0826 11.7913 11.5 12.3469 11.5 13C11.5 13.8284 10.8284 14.5 10 14.5C9.17157 14.5 8.5 13.8284 8.5 13C8.5 12.3469 8.91741 11.7913 9.5 11.5854V4.91421L8.35356 6.06066L7.64645 5.35355L9.64645 3.35355L10 3ZM1.95887 12.3282L8 8.63644V9.80838L2.91773 12.9142L10 17.2423L17.0823 12.9142L12 9.80838V8.63644L18.0411 12.3282L19 12.9142L19 14.9683H18V13.5253L10.5 18.1087V19.9683H9.5V18.1087L2 13.5253V14.9683H1L1 12.9142L1.95887 12.3282Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
2023-10-16 13:28:41 -04:00
|
|
|
case 'file':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
d="M11 3.5H4.5V16.5H15.5V8.00001M11 3.5L15.5 8.00001M11 3.5V8.00001H15.5"
|
|
|
|
stroke="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
2023-09-16 01:23:11 -04:00
|
|
|
case 'horizontal':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M4 9.5H16V11.5H4V9.5Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'line':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M15.5 6C16.3284 6 17 5.32843 17 4.5C17 3.67157 16.3284 3 15.5 3C14.6716 3 14 3.67157 14 4.5C14 4.73107 14.0522 4.94993 14.1456 5.14543L5.14543 14.1456C4.94993 14.0522 4.73107 14 4.5 14C3.67157 14 3 14.6716 3 15.5C3 16.3284 3.67157 17 4.5 17C5.32843 17 6 16.3284 6 15.5C6 15.2679 5.94729 15.0482 5.8532 14.852L14.852 5.8532C15.0482 5.94729 15.2679 6 15.5 6Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'move':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M10 2.29289L10.3536 2.64645L12.3536 4.64645L11.6465 5.35355L10.5 4.20711V8V9.50001H12L15.7929 9.50001L14.6465 8.35356L15.3536 7.64645L17.3536 9.64645L17.7071 10L17.3536 10.3536L15.3536 12.3536L14.6465 11.6465L15.7929 10.5H12H10.5V12V15.7929L11.6465 14.6464L12.3536 15.3536L10.3536 17.3536L10 17.7071L9.64645 17.3536L7.64645 15.3536L8.35356 14.6464L9.50001 15.7929V12V10.5H8.00001H4.20712L5.35357 11.6465L4.64646 12.3536L2.64646 10.3536L2.29291 10L2.64646 9.64645L4.64646 7.64645L5.35357 8.35356L4.20712 9.50001H8.00001H9.50001V8V4.20711L8.35356 5.35355L7.64645 4.64645L9.64645 2.64645L10 2.29289Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'parallel':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M8 16V4H6V16H8ZM14 16V4H12V16H14Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'sketch':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M14.8037 13.4035L15.5509 14.1635L16.3682 16.8386L13.5521 16.1346L12.8186 15.3885L14.8037 13.4035ZM14.1025 12.6903L12.1175 14.6754L3.48609 5.89624C2.94588 5.34678 2.94963 4.46456 3.49448 3.91971C4.04591 3.36828 4.94112 3.37208 5.48786 3.92817L14.1025 12.6903ZM6.20094 3.22709L16.4357 13.6371L17.5003 17.1216L17.8412 18.2376L16.7091 17.9546L13.0364 17.0364L2.77301 6.59732C1.84793 5.6564 1.85434 4.14564 2.78737 3.2126C3.73167 2.2683 5.26468 2.27481 6.20094 3.22709Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
case 'vertical':
|
|
|
|
return (
|
|
|
|
<svg
|
|
|
|
{...props}
|
|
|
|
viewBox="0 0 20 20"
|
|
|
|
fill="none"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
2023-09-18 16:13:04 -04:00
|
|
|
fillRule="evenodd"
|
|
|
|
clipRule="evenodd"
|
2023-09-16 01:23:11 -04:00
|
|
|
d="M11 4V16H9V4H11Z"
|
|
|
|
fill="currentColor"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|