import React, { ForwardedRef, useContext } from 'react';
import { OriginIconProps } from '../type';
import { Context } from '../context';

function IconHomeAtComponent(props: OriginIconProps, ref: ForwardedRef<SVGSVGElement>) {
    const { prefix: prefixFromContext } = useContext(Context);
    const { className = '', prefix: prefixFromProps, width = '1em', height = '1em', useCurrentColor = true, spin, ...rest } = props;

    const prefix = prefixFromProps || prefixFromContext || 'hiagent';
    const loadingKls = spin ? ` ${prefix}-icon-loading` : '';
    return <svg className={`${prefix}-icon ${prefix}-icon-home-at${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : '#000'} viewBox="0 0 24 24" {...rest} ref={ref}><path fillRule="evenodd" d="M3.83 12c0-4.519 3.685-8.181 8.23-8.181 4.543 0 8.11 3.57 8.11 8.093 0 1.32-.506 2.501-1.162 3.243-.693.784-1.305.862-1.644.709-.133-.061-.8-.697-.485-2.05a5.07 5.07 0 0 0 .329-1.805c0-2.825-2.305-5.116-5.147-5.116-2.844 0-5.148 2.291-5.148 5.116 0 2.827 2.304 5.118 5.147 5.118 1.21 0 2.323-.416 3.201-1.111.298.72.792 1.25 1.343 1.501 1.423.647 2.86-.124 3.779-1.161.953-1.079 1.617-2.687 1.617-4.444C22 6.392 17.621 2 12.06 2 6.504 2 2 6.477 2 12s4.504 10 10.06 10a.911.911 0 0 0 .646-1.553.912.912 0 0 0-.646-.266c-4.547 0-8.23-3.662-8.23-8.181Zm11.32 1.217h-.007l-.011.042a3.32 3.32 0 0 1-3.072 2.049 3.309 3.309 0 0 1-3.317-3.299 3.308 3.308 0 0 1 3.317-3.297 3.308 3.308 0 0 1 3.319 3.297c0 .427-.082.835-.23 1.208Z" clipRule="evenodd"/><path d="m16.879 13.815-.127-.048-.004.017.13.03Zm-1.618 2.201.124-.05-.068-.163-.138.109.082.104Zm-.118-2.8.034-.13-.128-.033-.034.128.128.035Zm.006.001-.034.13.114.03.044-.11-.124-.05Zm-.017.042.124.052.005-.018-.129-.034ZM12.06 3.685c-4.619 0-8.364 3.722-8.364 8.315h.267c0-4.444 3.624-8.048 8.097-8.048v-.267Zm8.244 8.227c0-4.597-3.628-8.227-8.244-8.227v.267c4.468 0 7.977 3.51 7.977 7.96h.267Zm-1.196 3.332c.679-.767 1.196-1.979 1.196-3.333h-.267c0 1.289-.493 2.44-1.129 3.156l.2.177Zm-1.8.741c.416.188 1.09.063 1.8-.741l-.2-.177c-.673.761-1.227.794-1.488.674l-.11.244h-.002Zm-.56-2.201c-.163.701-.073 1.228.083 1.592.077.18.17.32.254.419a.792.792 0 0 0 .224.19l.111-.244-.012-.006a.819.819 0 0 1-.12-.115 1.399 1.399 0 0 1-.213-.35c-.131-.307-.218-.775-.067-1.426l-.26-.06Zm.327-1.775c0 .619-.114 1.212-.32 1.758l.248.094a5.22 5.22 0 0 0 .338-1.852h-.266ZM12.06 7.027c2.77 0 5.014 2.232 5.014 4.982h.266c0-2.9-2.365-5.249-5.28-5.249v.267Zm-5.016 4.982c0-2.75 2.244-4.982 5.014-4.982V6.76c-2.915 0-5.28 2.35-5.28 5.25h.266Zm5.014 4.984c-2.77 0-5.014-2.232-5.014-4.984H6.78c0 2.9 2.365 5.251 5.28 5.251v-.267Zm3.12-1.081a5.012 5.012 0 0 1-3.12 1.081v.267a5.281 5.281 0 0 0 3.284-1.139l-.164-.209Zm1.478 1.484c-.514-.235-.985-.736-1.272-1.43l-.248.1c.307.747.823 1.306 1.41 1.573l.11-.243Zm3.626-1.128c-.903 1.019-2.282 1.739-3.626 1.128l-.11.243c1.502.682 3-.14 3.933-1.195l-.2-.176h.003Zm1.584-4.356c0 1.724-.654 3.303-1.584 4.356l.2.176c.974-1.103 1.65-2.743 1.65-4.533h-.266v.001ZM12.06 2.133c5.488 0 9.807 4.334 9.807 9.779h.266c0-5.593-4.44-10.045-10.073-10.045v.266ZM2.133 12c0-5.448 4.444-9.867 9.927-9.867v-.266C6.43 1.867 1.867 6.403 1.867 12h.266Zm9.927 9.867c-5.483 0-9.927-4.419-9.927-9.867h-.266c0 5.597 4.564 10.133 10.193 10.133v-.266Zm.781-.776a.78.78 0 0 1-.781.776v.266c.579 0 1.048-.466 1.048-1.042h-.267Zm-.781-.776c.432 0 .781.348.781.776h.267a1.044 1.044 0 0 0-1.048-1.043v.267ZM3.696 12c0 4.593 3.747 8.315 8.364 8.315v-.267c-4.473 0-8.097-3.604-8.097-8.048h-.267Zm11.413 1.345h.006l.068-.256-.006-.002-.068.258Zm.152-.053.011-.04-.257-.07-.012.043.258.067Zm-3.2 2.15a3.453 3.453 0 0 0 3.194-2.133l-.246-.101a3.186 3.186 0 0 1-2.949 1.967l.001.266Zm-3.453-3.433a3.441 3.441 0 0 0 3.453 3.432l-.001-.266a3.17 3.17 0 0 1-2.94-1.95 3.174 3.174 0 0 1-.245-1.216h-.267Zm3.453-3.43a3.441 3.441 0 0 0-3.453 3.43h.267a3.175 3.175 0 0 1 3.186-3.164V8.58Zm3.451 3.43a3.442 3.442 0 0 0-3.45-3.43v.266a3.167 3.167 0 0 1 2.246.923 3.173 3.173 0 0 1 .937 2.241h.267Zm-.239 1.258c.155-.39.239-.814.239-1.258h-.267c0 .41-.078.8-.22 1.16l.248.098Z"/></svg>;
}

const IconHomeAt = React.forwardRef(IconHomeAtComponent);
export default IconHomeAt;
