import * as React from 'react'; import { IconProps } from '../../types'; import { IconWrapper } from '../IconWrapper'; const CPU = (allProps: IconProps) => { const { svgProps: props, iconStyle, ...restProps } = allProps; const styles: { [style: string]: React.ReactNode } = { Broken: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path d="M17 14c0 1.414 0 2.121-.44 2.56-.439.44-1.146.44-2.56.44h-4c-1.414 0-2.121 0-2.56-.44C7 16.122 7 15.415 7 14v-4c0-1.414 0-2.121.44-2.56C7.878 7 8.585 7 10 7h4c1.414 0 2.121 0 2.56.44.44.439.44 1.146.44 2.56" stroke="currentColor" strokeWidth={1.5} strokeLinecap="round" /><path d="M4 12c0-3.771 0-5.657 1.172-6.828C6.343 4 8.229 4 12 4c3.771 0 5.657 0 6.828 1.172C20 6.343 20 8.229 20 12c0 3.771 0 5.657-1.172 6.828C17.657 20 15.771 20 12 20c-3.771 0-5.657 0-6.828-1.172C4 17.657 4 15.771 4 12Z" stroke="currentColor" strokeWidth={1.5} /><path d="M4 12H2M22 12h-2M4 9H2M22 9h-2M4 15H2M22 15h-2M12 20v2M12 2v2M9 20v2M9 2v2M15 20v2M15 2v2" stroke="currentColor" strokeWidth={1.5} strokeLinecap="round" /></svg>, LineDuotone: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path opacity={0.5} d="M7 10c0-1.414 0-2.121.44-2.56C7.878 7 8.585 7 10 7h4c1.414 0 2.121 0 2.56.44.44.439.44 1.146.44 2.56v4c0 1.414 0 2.121-.44 2.56-.439.44-1.146.44-2.56.44h-4c-1.414 0-2.121 0-2.56-.44C7 16.122 7 15.415 7 14v-4Z" stroke="currentColor" strokeWidth={1.5} /><path d="M4 12c0-3.771 0-5.657 1.172-6.828C6.343 4 8.229 4 12 4c3.771 0 5.657 0 6.828 1.172C20 6.343 20 8.229 20 12c0 3.771 0 5.657-1.172 6.828C17.657 20 15.771 20 12 20c-3.771 0-5.657 0-6.828-1.172C4 17.657 4 15.771 4 12Z" stroke="currentColor" strokeWidth={1.5} /><path opacity={0.5} d="M4 12H2M22 12h-2M4 9H2M22 9h-2M4 15H2M22 15h-2M12 20v2M12 2v2M9 20v2M9 2v2M15 20v2M15 2v2" stroke="currentColor" strokeWidth={1.5} strokeLinecap="round" /></svg>, Linear: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path d="M7 10c0-1.414 0-2.121.44-2.56C7.878 7 8.585 7 10 7h4c1.414 0 2.121 0 2.56.44.44.439.44 1.146.44 2.56v4c0 1.414 0 2.121-.44 2.56-.439.44-1.146.44-2.56.44h-4c-1.414 0-2.121 0-2.56-.44C7 16.122 7 15.415 7 14v-4Z" stroke="currentColor" strokeWidth={1.5} /><path d="M4 12c0-3.771 0-5.657 1.172-6.828C6.343 4 8.229 4 12 4c3.771 0 5.657 0 6.828 1.172C20 6.343 20 8.229 20 12c0 3.771 0 5.657-1.172 6.828C17.657 20 15.771 20 12 20c-3.771 0-5.657 0-6.828-1.172C4 17.657 4 15.771 4 12Z" stroke="currentColor" strokeWidth={1.5} /><path d="M4 12H2M22 12h-2M4 9H2M22 9h-2M4 15H2M22 15h-2M12 20v2M12 2v2M9 20v2M9 2v2M15 20v2M15 2v2" stroke="currentColor" strokeWidth={1.5} strokeLinecap="round" /></svg>, Outline: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path fillRule="evenodd" clipRule="evenodd" d="M9 1.25a.75.75 0 0 1 .75.75v1.263a85.75 85.75 0 0 1 1.5-.013V2a.75.75 0 0 1 1.5 0v1.25c.535.001 1.034.004 1.5.013V2a.75.75 0 0 1 1.5 0v1.327c.26.02.506.045.739.076 1.172.158 2.121.49 2.87 1.238.748.749 1.08 1.698 1.238 2.87.031.233.056.48.076.739H22a.75.75 0 0 1 0 1.5h-1.263c.01.466.012.965.013 1.5H22a.75.75 0 0 1 0 1.5h-1.25c-.001.535-.004 1.034-.013 1.5H22a.75.75 0 0 1 0 1.5h-1.327c-.02.26-.045.506-.076.739-.158 1.172-.49 2.121-1.238 2.87-.749.748-1.698 1.08-2.87 1.238-.233.031-.48.056-.739.076V22a.75.75 0 0 1-1.5 0v-1.263c-.466.01-.965.012-1.5.013V22a.75.75 0 0 1-1.5 0v-1.25c-.535-.001-1.034-.004-1.5-.013V22a.75.75 0 0 1-1.5 0v-1.327c-.26-.02-.506-.045-.739-.076-1.172-.158-2.121-.49-2.87-1.238-.748-.749-1.08-1.698-1.238-2.87-.031-.233-.056-.48-.076-.739H2a.75.75 0 0 1 0-1.5h1.263a85.75 85.75 0 0 1-.013-1.5H2a.75.75 0 0 1 0-1.5h1.25c.001-.535.004-1.034.013-1.5H2a.75.75 0 0 1 0-1.5h1.327c.02-.26.045-.506.076-.739.158-1.172.49-2.121 1.238-2.87.749-.748 1.698-1.08 2.87-1.238.233-.031.48-.056.739-.076V2A.75.75 0 0 1 9 1.25ZM7.71 4.89c-1.005.135-1.585.389-2.008.812-.423.423-.677 1.003-.812 2.009-.138 1.028-.14 2.382-.14 4.289 0 1.907.002 3.261.14 4.29.135 1.005.389 1.585.812 2.008.423.423 1.003.677 2.009.812 1.028.138 2.382.14 4.289.14 1.907 0 3.261-.002 4.29-.14 1.005-.135 1.585-.389 2.008-.812.423-.423.677-1.003.812-2.009.138-1.028.14-2.382.14-4.289 0-1.907-.002-3.261-.14-4.29-.135-1.005-.389-1.585-.812-2.008-.423-.423-1.003-.677-2.009-.812-1.028-.138-2.382-.14-4.289-.14-1.907 0-3.261.002-4.29.14Zm2.24 1.36h4.1c.664 0 1.237 0 1.696.062.492.066.963.215 1.345.597s.531.854.597 1.345c.062.459.062 1.032.062 1.697v4.098c0 .665 0 1.238-.062 1.697-.066.492-.215.963-.597 1.345s-.854.531-1.345.597c-.459.062-1.032.062-1.697.062H9.951c-.665 0-1.238 0-1.697-.062-.491-.066-.963-.215-1.345-.597s-.531-.854-.597-1.345c-.062-.459-.062-1.032-.062-1.697V9.951c0-.665 0-1.238.062-1.697.066-.491.215-.963.597-1.345s.854-.531 1.345-.597c.459-.062 1.032-.062 1.697-.062ZM8.455 7.798c-.325.044-.427.115-.484.172-.057.057-.128.159-.172.484-.046.347-.048.818-.048 1.546v4c0 .728.002 1.2.048 1.546.044.325.115.427.172.484.057.057.159.128.484.172.347.046.818.048 1.546.048h4c.728 0 1.2-.002 1.546-.048.325-.044.427-.115.484-.172.057-.057.128-.159.172-.484.046-.347.048-.818.048-1.546v-4c0-.728-.002-1.2-.048-1.546-.044-.325-.115-.427-.172-.484-.057-.057-.159-.128-.484-.172-.347-.046-.818-.048-1.546-.048h-4c-.728 0-1.2.002-1.546.048Z" fill="currentColor" /></svg>, Bold: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path d="M9.181 10.181c.053-.053.148-.119.45-.16.323-.043.761-.044 1.439-.044h1.86c.678 0 1.116.001 1.438.045.303.04.398.106.45.16.054.052.12.147.16.45.044.322.045.76.045 1.438v1.86c0 .678-.001 1.116-.045 1.438-.04.303-.106.398-.16.45-.052.054-.147.12-.45.16-.322.044-.76.045-1.438.045h-1.86c-.678 0-1.116-.001-1.438-.045-.303-.04-.398-.106-.45-.16-.054-.052-.12-.147-.16-.45-.044-.322-.045-.76-.045-1.438v-1.86c0-.678.001-1.116.045-1.438.04-.303.106-.398.16-.45Z" fill="currentColor" /><path fillRule="evenodd" clipRule="evenodd" d="M12 3c.385 0 .698.312.698.698v2.79c.51.002.974.005 1.395.017V3.698a.698.698 0 0 1 1.395 0v2.79a.703.703 0 0 1-.008.108c.936.115 1.585.353 2.078.846.493.493.731 1.142.846 2.078a.702.702 0 0 1 .108-.008h2.79a.698.698 0 0 1 0 1.395h-2.807c.012.421.016.885.017 1.395h2.79a.698.698 0 0 1 0 1.396h-2.79c-.002.51-.005.974-.017 1.395h2.807a.698.698 0 0 1 0 1.395h-2.79a.703.703 0 0 1-.108-.008c-.115.936-.353 1.585-.846 2.078-.493.493-1.142.731-2.078.846.006.035.008.071.008.108v2.79a.698.698 0 0 1-1.395 0v-2.807c-.421.012-.885.016-1.395.017v2.79a.698.698 0 0 1-1.396 0v-2.79a56.16 56.16 0 0 1-1.395-.017v2.807a.698.698 0 0 1-1.395 0v-2.79c0-.037.002-.073.008-.108-.936-.115-1.585-.353-2.078-.846-.493-.493-.731-1.142-.846-2.078a.703.703 0 0 1-.108.008h-2.79a.698.698 0 0 1 0-1.395h2.807a56.235 56.235 0 0 1-.017-1.395h-2.79a.698.698 0 0 1 0-1.396h2.79c.002-.51.005-.974.017-1.395H2.698a.698.698 0 0 1 0-1.395h2.79c.037 0 .073.002.108.008.115-.936.353-1.585.846-2.078.493-.493 1.142-.731 2.078-.846a.702.702 0 0 1-.008-.108v-2.79a.698.698 0 0 1 1.395 0v2.807c.421-.012.885-.016 1.395-.017v-2.79c0-.386.313-.698.698-.698Zm-.976 5.581c-.619 0-1.152 0-1.578.058-.458.061-.896.2-1.252.555-.355.356-.494.794-.555 1.252-.058.427-.058.96-.058 1.578v1.952c0 .619 0 1.151.058 1.578.061.458.2.896.555 1.252.356.355.794.494 1.252.555.426.058.96.058 1.578.058h1.952c.619 0 1.151 0 1.578-.058.458-.061.896-.2 1.252-.555.355-.356.494-.794.555-1.252.058-.427.058-.96.058-1.578v-1.952c0-.619 0-1.151-.058-1.578-.061-.458-.2-.896-.555-1.252-.356-.355-.794-.494-1.252-.555-.427-.058-.96-.058-1.578-.058h-1.952Z" fill="currentColor" /></svg>, BoldDuotone: <svg width="inherit" height="inherit" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}><path fillRule="evenodd" clipRule="evenodd" d="M12 3c.385 0 .698.312.698.698v2.79c.51.002.974.005 1.395.017V3.698a.698.698 0 0 1 1.395 0v2.79a.703.703 0 0 1-.008.108c.936.115 1.585.353 2.078.846.493.493.731 1.142.846 2.078a.702.702 0 0 1 .108-.008h2.79a.698.698 0 0 1 0 1.395h-2.807c.012.421.016.885.017 1.395h2.79a.698.698 0 0 1 0 1.396h-2.79c-.002.51-.005.974-.017 1.395h2.807a.698.698 0 0 1 0 1.395h-2.79a.703.703 0 0 1-.108-.008c-.115.936-.353 1.585-.846 2.078-.493.493-1.142.731-2.078.846.006.035.008.071.008.108v2.79a.698.698 0 0 1-1.395 0v-2.807c-.421.012-.885.016-1.395.017v2.79a.698.698 0 0 1-1.396 0v-2.79a56.16 56.16 0 0 1-1.395-.017v2.807a.698.698 0 0 1-1.395 0v-2.79c0-.037.002-.073.008-.108-.936-.115-1.585-.353-2.078-.846-.493-.493-.731-1.142-.846-2.078a.703.703 0 0 1-.108.008h-2.79a.698.698 0 0 1 0-1.395h2.807a56.235 56.235 0 0 1-.017-1.395h-2.79a.698.698 0 0 1 0-1.396h2.79c.002-.51.005-.974.017-1.395H2.698a.698.698 0 0 1 0-1.395h2.79c.037 0 .073.002.108.008.115-.936.353-1.585.846-2.078.493-.493 1.142-.731 2.078-.846a.702.702 0 0 1-.008-.108v-2.79a.698.698 0 0 1 1.395 0v2.807c.421-.012.885-.016 1.395-.017v-2.79c0-.386.313-.698.698-.698Zm-.976 5.581c-.619 0-1.152 0-1.578.058-.458.061-.896.2-1.252.555-.355.356-.494.794-.555 1.252-.058.427-.058.96-.058 1.578v1.952c0 .619 0 1.151.058 1.578.061.458.2.896.555 1.252.356.355.794.494 1.252.555.426.058.96.058 1.578.058h1.952c.619 0 1.151 0 1.578-.058.458-.061.896-.2 1.252-.555.355-.356.494-.794.555-1.252.058-.427.058-.96.058-1.578v-1.952c0-.619 0-1.151-.058-1.578-.061-.458-.2-.896-.555-1.252-.356-.355-.794-.494-1.252-.555-.427-.058-.96-.058-1.578-.058h-1.952Z" fill="currentColor" /><path opacity={0.5} d="M9.18 10.18c.054-.052.149-.118.451-.159.323-.043.761-.044 1.439-.044h1.86c.678 0 1.116.001 1.438.044.303.041.398.107.45.16.054.053.12.148.16.45.044.323.045.761.045 1.439v1.86c0 .678-.001 1.116-.045 1.438-.04.303-.106.398-.16.45-.052.054-.147.12-.45.16-.322.044-.76.045-1.438.045h-1.86c-.678 0-1.116-.001-1.439-.045-.302-.04-.397-.106-.45-.16-.053-.052-.119-.147-.16-.45-.043-.322-.044-.76-.044-1.438v-1.86c0-.678.001-1.116.044-1.438.041-.303.107-.398.16-.451Z" fill="currentColor" /></svg> }; return <IconWrapper icon={styles[iconStyle || 'Linear']} {...restProps} /> }; export default CPU