import { cloneElement } from 'react' const CustomIconMap = { arc: ( ), angle: ( ), arrowDown: ( ), arrowLeft: ( ), arrowRight: ( ), arrowRotateRight: ( ), arrowUp: ( ), booleanExclude: ( ), booleanIntersect: ( ), booleanSubtract: ( ), booleanUnion: ( ), bug: ( ), chat: ( ), checkmark: ( ), caretDown: ( ), chamfer3d: ( ), circle: ( ), clipboardCheckmark: ( ), clipboardPlus: ( ), close: ( ), code: ( ), dimension: ( ), elephant: ( ), equal: ( ), exclamationMark: ( ), exportFile: ( ), extrude: ( ), fillet: ( ), fillet3d: ( ), file: ( ), filePlus: ( ), floppyDiskArrow: ( ), folder: ( ), folderPlus: ( ), gear: ( ), hole: ( ), horizontal: ( ), horizontalDash: ( ), 'intersection-offset': ( ), kcl: ( ), keyboard: ( ), line: ( ), link: ( ), lockClosed: ( ), lockOpen: ( ), loft: ( ), 'make-variable': ( ), menu: ( ), mirror: ( ), move: ( ), network: ( ), networkCrossedOut: ( ), parallel: ( ), person: ( ), plane: ( ), plus: ( ), printer3d: ( ), polygon: ( ), questionMark: ( ), rectangle: ( ), refresh: ( ), revolve: ( ), search: ( ), settings: ( ), shell: ( ), sketch: ( ), sparkles: ( ), spline: ( ), sweep: ( ), tangent: ( ), text: ( ), 'three-dots': ( ), trash: ( ), vertical: ( ), xAbsolute: ( ), xRelative: ( ), yAbsolute: ( ), yRelative: ( ), } as const export type CustomIconName = keyof typeof CustomIconMap export const CustomIcon = ({ name, ...props }: { name: CustomIconName } & React.SVGProps) => cloneElement(CustomIconMap[name], props)