import { createComponent } from "./create-component"

export const FileUploadAnatomy = createComponent((props) => {
  const { palette, ...rest } = props
  return (
    <svg
      width={400}
      height={300}
      viewBox="0 0 400 300"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      {...rest}
    >
      <rect
        x={110.5}
        y={119.5}
        width={178.163}
        height={60}
        rx={5.79592}
        fill={palette[2]}
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M143.337 143.488H139.337C139.153 143.488 138.973 143.437 138.816 143.341C138.66 143.245 138.532 143.108 138.448 142.945C138.364 142.782 138.327 142.598 138.34 142.415C138.354 142.232 138.417 142.056 138.524 141.907L143.524 134.907C143.621 134.784 143.744 134.684 143.885 134.616C144.026 134.548 144.18 134.512 144.337 134.512C144.493 134.512 144.648 134.548 144.789 134.616C144.929 134.684 145.053 134.784 145.15 134.907L150.15 141.907C150.256 142.056 150.32 142.232 150.333 142.415C150.347 142.598 150.309 142.782 150.225 142.945C150.141 143.108 150.014 143.245 149.857 143.341C149.7 143.437 149.52 143.488 149.337 143.488H145.337V156.488C145.337 156.753 145.231 157.007 145.044 157.195C144.856 157.382 144.602 157.488 144.337 157.488C144.072 157.488 143.817 157.382 143.63 157.195C143.442 157.007 143.337 156.753 143.337 156.488V143.488ZM155.303 148.23L159.303 163.23C159.342 163.378 159.347 163.533 159.317 163.683C159.287 163.834 159.223 163.975 159.13 164.097C159.036 164.218 158.916 164.317 158.779 164.385C158.641 164.453 158.49 164.488 158.337 164.488H130.337C130.183 164.488 130.032 164.453 129.895 164.385C129.757 164.317 129.637 164.218 129.544 164.097C129.45 163.975 129.386 163.834 129.356 163.683C129.326 163.533 129.331 163.378 129.371 163.23L133.371 148.23C133.428 148.017 133.553 147.829 133.728 147.695C133.902 147.561 134.116 147.488 134.337 147.488H140.337V149.488H135.106L131.637 162.488H157.037L153.568 149.488H148.337V147.488H154.337C154.557 147.488 154.771 147.561 154.946 147.695C155.12 147.829 155.246 148.017 155.303 148.23Z"
        fill={palette[15]}
      />
      <path
        d="M189.159 139.136H192.241V152.53C192.241 153.955 191.906 155.218 191.237 156.318C190.567 157.412 189.626 158.274 188.413 158.903C187.2 159.527 185.778 159.838 184.147 159.838C182.523 159.838 181.105 159.527 179.892 158.903C178.679 158.274 177.737 157.412 177.068 156.318C176.398 155.218 176.064 153.955 176.064 152.53V139.136H179.136V152.281C179.136 153.203 179.338 154.021 179.743 154.737C180.154 155.453 180.734 156.017 181.483 156.428C182.232 156.832 183.12 157.034 184.147 157.034C185.182 157.034 186.073 156.832 186.822 156.428C187.578 156.017 188.155 155.453 188.552 154.737C188.957 154.021 189.159 153.203 189.159 152.281V139.136ZM196.47 165.227V144.227H199.373V146.703H199.621C199.794 146.385 200.042 146.017 200.367 145.599C200.692 145.182 201.143 144.817 201.72 144.506C202.296 144.188 203.059 144.028 204.006 144.028C205.239 144.028 206.34 144.34 207.308 144.963C208.275 145.586 209.034 146.484 209.585 147.658C210.141 148.831 210.42 150.243 210.42 151.893C210.42 153.544 210.145 154.959 209.595 156.139C209.044 157.312 208.289 158.217 207.327 158.854C206.366 159.483 205.269 159.798 204.036 159.798C203.108 159.798 202.349 159.643 201.759 159.331C201.176 159.019 200.719 158.655 200.387 158.237C200.056 157.82 199.8 157.448 199.621 157.124H199.443V165.227H196.47ZM199.383 151.864C199.383 152.937 199.539 153.879 199.85 154.688C200.162 155.496 200.612 156.129 201.202 156.587C201.792 157.037 202.515 157.263 203.37 157.263C204.258 157.263 205.001 157.027 205.597 156.557C206.194 156.08 206.645 155.433 206.95 154.618C207.261 153.803 207.417 152.884 207.417 151.864C207.417 150.856 207.264 149.951 206.96 149.149C206.661 148.347 206.211 147.714 205.607 147.25C205.011 146.786 204.265 146.554 203.37 146.554C202.508 146.554 201.779 146.776 201.183 147.22C200.593 147.664 200.145 148.284 199.84 149.08C199.535 149.875 199.383 150.803 199.383 151.864ZM216.724 139.136V159.5H213.751V139.136H216.724ZM227.157 159.808C225.725 159.808 224.475 159.48 223.408 158.824C222.341 158.168 221.512 157.25 220.922 156.07C220.332 154.89 220.037 153.511 220.037 151.933C220.037 150.349 220.332 148.964 220.922 147.777C221.512 146.59 222.341 145.669 223.408 145.013C224.475 144.357 225.725 144.028 227.157 144.028C228.588 144.028 229.838 144.357 230.905 145.013C231.972 145.669 232.801 146.59 233.391 147.777C233.981 148.964 234.276 150.349 234.276 151.933C234.276 153.511 233.981 154.89 233.391 156.07C232.801 157.25 231.972 158.168 230.905 158.824C229.838 159.48 228.588 159.808 227.157 159.808ZM227.167 157.312C228.095 157.312 228.864 157.067 229.473 156.577C230.083 156.086 230.534 155.433 230.826 154.618C231.124 153.803 231.273 152.904 231.273 151.923C231.273 150.949 231.124 150.054 230.826 149.239C230.534 148.417 230.083 147.757 229.473 147.26C228.864 146.763 228.095 146.514 227.167 146.514C226.232 146.514 225.456 146.763 224.84 147.26C224.23 147.757 223.776 148.417 223.478 149.239C223.186 150.054 223.04 150.949 223.04 151.923C223.04 152.904 223.186 153.803 223.478 154.618C223.776 155.433 224.23 156.086 224.84 156.577C225.456 157.067 226.232 157.312 227.167 157.312ZM242.039 159.838C241.071 159.838 240.196 159.659 239.414 159.301C238.632 158.937 238.012 158.41 237.555 157.72C237.104 157.031 236.879 156.186 236.879 155.185C236.879 154.323 237.044 153.614 237.376 153.057C237.707 152.5 238.155 152.059 238.718 151.734C239.282 151.41 239.911 151.164 240.607 150.999C241.303 150.833 242.013 150.707 242.735 150.621C243.65 150.515 244.392 150.429 244.962 150.362C245.532 150.289 245.947 150.173 246.205 150.014C246.464 149.855 246.593 149.597 246.593 149.239V149.169C246.593 148.301 246.348 147.628 245.857 147.151C245.373 146.673 244.651 146.435 243.69 146.435C242.689 146.435 241.9 146.657 241.323 147.101C240.753 147.538 240.359 148.026 240.14 148.562L237.346 147.926C237.677 146.998 238.161 146.249 238.798 145.679C239.441 145.102 240.18 144.685 241.015 144.426C241.85 144.161 242.729 144.028 243.65 144.028C244.26 144.028 244.906 144.101 245.589 144.247C246.278 144.386 246.921 144.645 247.518 145.023C248.121 145.401 248.615 145.941 248.999 146.643C249.384 147.339 249.576 148.244 249.576 149.358V159.5H246.673V157.412H246.553C246.361 157.796 246.073 158.174 245.688 158.545C245.304 158.917 244.81 159.225 244.207 159.47C243.604 159.715 242.881 159.838 242.039 159.838ZM242.685 157.452C243.507 157.452 244.21 157.289 244.793 156.964C245.383 156.64 245.831 156.215 246.136 155.692C246.447 155.161 246.603 154.595 246.603 153.991V152.023C246.497 152.129 246.291 152.228 245.987 152.321C245.688 152.407 245.347 152.483 244.962 152.55C244.578 152.609 244.203 152.666 243.839 152.719C243.474 152.765 243.169 152.805 242.924 152.838C242.347 152.911 241.82 153.034 241.343 153.206C240.872 153.378 240.495 153.627 240.21 153.952C239.931 154.27 239.792 154.694 239.792 155.224C239.792 155.96 240.064 156.517 240.607 156.895C241.151 157.266 241.844 157.452 242.685 157.452ZM259.253 159.798C258.02 159.798 256.92 159.483 255.952 158.854C254.991 158.217 254.235 157.312 253.685 156.139C253.141 154.959 252.87 153.544 252.87 151.893C252.87 150.243 253.145 148.831 253.695 147.658C254.252 146.484 255.014 145.586 255.982 144.963C256.95 144.34 258.047 144.028 259.273 144.028C260.221 144.028 260.983 144.188 261.56 144.506C262.143 144.817 262.594 145.182 262.912 145.599C263.237 146.017 263.489 146.385 263.668 146.703H263.847V139.136H266.82V159.5H263.917V157.124H263.668C263.489 157.448 263.231 157.82 262.892 158.237C262.561 158.655 262.104 159.019 261.52 159.331C260.937 159.643 260.181 159.798 259.253 159.798ZM259.909 157.263C260.765 157.263 261.487 157.037 262.077 156.587C262.674 156.129 263.124 155.496 263.429 154.688C263.741 153.879 263.897 152.937 263.897 151.864C263.897 150.803 263.744 149.875 263.439 149.08C263.134 148.284 262.687 147.664 262.097 147.22C261.507 146.776 260.778 146.554 259.909 146.554C259.015 146.554 258.269 146.786 257.672 147.25C257.076 147.714 256.625 148.347 256.32 149.149C256.022 149.951 255.873 150.856 255.873 151.864C255.873 152.884 256.025 153.803 256.33 154.618C256.635 155.433 257.086 156.08 257.682 156.557C258.285 157.027 259.028 157.263 259.909 157.263Z"
        fill={palette[0]}
      />
    </svg>
  )
})
