defmodule DojoWeb.SVGComponents do
  use Phoenix.Component

  def folders(assigns) do
    ~H"""
    <svg class={@class} viewBox="0 0 60 50" x="0px" y="0px">
      <path d="M47.71,23.85h-15a3.81318,3.81318,0,0,1-3.08-1.57l-3.95-5.47a5.836,5.836,0,0,0-4.7-2.4c-1.9505.00551-9.34889-.004-11.19,0A5.79991,5.79991,0,0,0,4,20.2V50.29a5.79989,5.79989,0,0,0,5.79,5.79H47.71a5.88414,5.88414,0,0,0,5.7899-6.5c-.07225-.38135.05221-18.93837-.00008-19.93A5.80179,5.80179,0,0,0,47.71,23.85ZM33.94,45.1c-.67942.36091-1.29118-.12011-1.53-.77006-4.54933,10.00467-19.44534,6.90445-19.6-4.15007A10.24253,10.24253,0,0,1,32.42,36.04a1.0006,1.0006,0,1,1-1.83.81c-3.65887-8.06561-15.6875-5.53759-15.78,3.33016.07963,8.7421,11.868,11.37575,15.66,3.56971l-.39.24014a.99914.99914,0,0,1-1.05-1.7L31.57,40.72a1.00134,1.00134,0,0,1,1.41.38l1.38,2.65A.99378.99378,0,0,1,33.94,45.1Zm-9.43-9.23v4.31a1.03014,1.03014,0,0,1-.27.69l-3.07,3.19A.99734.99734,0,0,1,19.73,42.68l2.78-2.9V35.87A1.00011,1.00011,0,0,1,24.51,35.87ZM47.49,50.8H42.41a1.00009,1.00009,0,0,1,0-2h5.08A1.00011,1.00011,0,0,1,47.49,50.8Zm0-3.52H44.72a1.00011,1.00011,0,0,1,0-2h2.77A1.00011,1.00011,0,0,1,47.49,47.28Z" /><path d="M54.2,17.35H39.21a3.78615,3.78615,0,0,1-3.08-1.57l-3.96-5.47a5.78,5.78,0,0,0-4.69-2.39H16.29a5.78227,5.78227,0,0,0-5.64,4.49c1.2494.01319,8.89119-.0095,10.33,0A7.83058,7.83058,0,0,1,27.3,15.64l3.95,5.47a1.81863,1.81863,0,0,0,1.46.74h15a7.80791,7.80791,0,0,1,7.79,7.8c.0058,1.16079-.00418,19.123,0,19.78005A5.79766,5.79766,0,0,0,60,43.79V23.15A5.80417,5.80417,0,0,0,54.2,17.35Z" />
    </svg>
    """
  end

  def share(assigns) do
    ~H"""
    <svg
      class={@class}
      viewBox="0 0 100.0 100.0"
      fill="none"
      stroke="currentColor"
      stroke-width="4"
      stroke-linecap="round"
    >
      <path d="m77.898 7.0898c3.7656 0 7.1758 1.5273 9.668 4.0234 2.4609 2.4922 3.9648 5.8789 3.9648 9.6094 0 3.7578-1.5273 7.168-3.9961 9.6367-2.4648 2.4688-5.8711 3.9961-9.6367 3.9961-3.7617 0-7.1719-1.5273-9.668-4.0234-0.625-0.63672-1.1641-1.2969-1.6445-2.0039l-22.746 13.133c1.3203 2.5625 2.0625 5.4688 2.0625 8.543 0 3.0781-0.74219 5.9844-2.0625 8.5469l22.738 13.129c0.49219-0.73047 1.0547-1.4141 1.6758-2.0352 2.4648-2.4648 5.875-3.9922 9.6367-3.9922s7.1758 1.5273 9.6406 3.9922c2.4648 2.4648 3.9922 5.875 3.9922 9.6367 0 3.7656-1.5273 7.1758-3.9922 9.6406s-5.875 3.9922-9.6406 3.9922c-3.7617 0-7.1719-1.5273-9.6367-3.9922s-3.9922-5.8789-3.9922-9.6406c0-2.1523 0.5-4.1875 1.3906-5.9961l-22.742-13.129c-0.72266 1.1133-1.5586 2.1484-2.5195 3.1094-3.4141 3.3828-8.0703 5.457-13.207 5.457-5.1641 0-9.8438-2.0938-13.234-5.4844-3.3945-3.3945-5.4883-8.0742-5.4883-13.238s2.0977-9.8438 5.4844-13.234c3.3867-3.3906 8.0664-5.4844 13.234-5.4844 5.1641 0 9.8438 2.0938 13.23 5.4844 0.93359 0.93359 1.7734 1.9688 2.4922 3.082l22.746-13.133c-0.89063-1.8125-1.3906-3.8438-1.3906-5.9961 0-3.7578 1.5273-7.168 3.9961-9.6367 2.4648-2.4688 5.8711-3.9961 9.6367-3.9961zm8.3203 5.3125c-2.1289-2.1289-5.0703-3.4453-8.3203-3.4453s-6.1875 1.3164-8.3203 3.4453c-2.1289 2.125-3.4453 5.0664-3.4453 8.3203 0 3.2266 1.2969 6.1484 3.4219 8.293 2.1562 2.1523 5.0977 3.4727 8.3438 3.4727 3.25 0 6.1914-1.3164 8.3203-3.4453 2.1289-2.125 3.4453-5.0664 3.4453-8.3203 0-3.2266-1.2969-6.1484-3.4453-8.3203zm0 58.559c-2.1289-2.1289-5.0703-3.4453-8.3203-3.4453s-6.1875 1.3164-8.3203 3.4453c-2.1289 2.1289-3.4453 5.0703-3.4453 8.3203s1.3164 6.1914 3.4453 8.3203c2.1289 2.1289 5.0703 3.4453 8.3203 3.4453s6.1914-1.3164 8.3203-3.4453c2.1289-2.1289 3.4453-5.0703 3.4453-8.3203s-1.3164-6.1875-3.4453-8.3203zm-47.113-32.879c-3.0469-3.0469-7.2617-4.9336-11.918-4.9336-4.6523 0-8.8672 1.8867-11.918 4.9375-3.0508 3.0469-4.9375 7.2617-4.9375 11.918s1.8867 8.8711 4.9336 11.918c3.0508 3.0508 7.2656 4.9375 11.922 4.9375 4.6289 0 8.8242-1.8672 11.891-4.9102 3.0742-3.0781 4.9609-7.2891 4.9609-11.945s-1.8867-8.8672-4.9336-11.918zm20.645-15.715c0.046875 0.55078 0.11719 1.0742 0.20703 1.5703 0.089844 0.38672-0.078125 0.80859-0.4375 1.0195l-14.859 8.5781c-0.35156 0.20312-0.8125 0.15625-1.1172-0.14453-2.1445-2.1133-4.6992-3.8125-7.5273-4.9727-2.7148-1.1133-5.6953-1.7266-8.8281-1.7266-6.4336 0-12.262 2.6133-16.48 6.8281-4.2188 4.2148-6.8281 10.047-6.8281 16.48 0 6.4375 2.6094 12.266 6.8242 16.48 4.2188 4.2188 10.047 6.8281 16.484 6.8281 3.1328 0 6.1133-0.61328 8.8281-1.7266 2.8281-1.1562 5.3789-2.8594 7.5273-4.9727 0.28906-0.28125 0.74609-0.35156 1.1133-0.14062l14.836 8.5625c0.34375 0.18359 0.54687 0.57812 0.47266 0.98047-0.089844 0.50781-0.16406 1.0508-0.21484 1.6211-0.050781 0.51563-0.074219 1.0625-0.074219 1.6445 0 5.0039 2.0195 9.543 5.3125 12.859 3.3242 3.3203 7.8789 5.3633 12.91 5.3633s9.5898-2.0391 12.883-5.332c3.3008-3.2969 5.3359-7.8555 5.3359-12.887 0-5.0273-2.0391-9.5859-5.3359-12.883-3.2969-3.2969-7.8516-5.3359-12.883-5.3359-2.207 0-4.3242 0.39062-6.2734 1.1094-2.0273 0.74609-3.8945 1.8438-5.5117 3.2148-0.29297 0.24219-0.71875 0.29297-1.0625 0.09375l-14.816-8.5508c-0.37891-0.19531-0.58984-0.63281-0.47656-1.0625 0.24609-0.94922 0.43359-1.918 0.55859-2.9023 0.12109-0.94922 0.18359-1.9375 0.18359-2.9609 0-1.0234-0.0625-2.0117-0.18359-2.9609-0.125-0.97266-0.30859-1.9336-0.55078-2.8711-0.11719-0.40234 0.046875-0.85156 0.42578-1.0664l14.824-8.5586c0.33594-0.21094 0.78125-0.19141 1.1016 0.078125 1.6172 1.3711 3.4805 2.4688 5.5117 3.2148 1.9531 0.71484 4.0664 1.1094 6.2734 1.1094 5.0312 0 9.5898-2.0391 12.883-5.332 3.3008-3.2969 5.3359-7.8555 5.3359-12.887s-2.0391-9.5898-5.332-12.883c-3.2969-3.3008-7.8555-5.3359-12.887-5.3359-5.0078 0-9.543 2.0195-12.859 5.3125-3.3203 3.3242-5.3633 7.8789-5.3633 12.91 0 0.55469 0.019531 1.0781 0.074218 1.6445z" />
    </svg>
    """
  end

  def gears(assigns) do
    ~H"""
    <svg class={@class} viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
      <path
        d="M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z"
        fill="inherit"
      />
      <path
        d="M12 3C11.175 3 10.5 3.675 10.5 4.5V4.71094C10.5 5.32494 10.074 5.86494 9.48901 6.05994C9.33001 6.11394 9.17397 6.17397 9.01697 6.23397C8.43897 6.47797 7.76901 6.35191 7.34001 5.92191L7.17999 5.76205C6.60999 5.19205 5.69498 5.19205 5.12598 5.76105L4.76562 6.12109C4.19563 6.69109 4.19563 7.60595 4.76562 8.17595L4.92603 8.33594C5.35703 8.76494 5.48292 9.43494 5.23792 10.0129C5.17792 10.1699 5.11897 10.326 5.06397 10.486C4.86897 11.071 4.32897 11.4961 3.71497 11.4961H3.5C2.675 11.4961 2 12.1721 2 12.9971C2 13.8221 2.675 14.4971 3.5 14.4971H3.71094C4.32494 14.4971 4.86494 14.923 5.05994 15.508C5.11394 15.667 5.17397 15.8231 5.23397 15.9801C5.47797 16.5581 5.35191 17.228 4.92191 17.657L4.76205 17.817C4.19205 18.387 4.19205 19.302 4.76205 19.871L5.12207 20.231C5.69207 20.801 6.60693 20.801 7.17693 20.231L7.33691 20.071C7.76591 19.64 8.43592 19.514 9.01392 19.759C9.17092 19.819 9.32703 19.878 9.48703 19.933C10.072 20.128 10.4971 20.668 10.4971 21.282V21.4971C10.4971 22.3221 11.1731 22.9971 11.9981 22.9971C12.8231 22.9971 13.4981 22.3221 13.4981 21.4971V21.2861C13.4981 20.6721 13.924 20.1321 14.509 19.9371C14.668 19.8831 14.824 19.8231 14.981 19.7631C15.559 19.5191 16.229 19.6451 16.658 20.0751L16.818 20.2349C17.388 20.8049 18.303 20.8049 18.872 20.2349L19.232 19.8749C19.802 19.3049 19.802 18.39 19.232 17.82L19.072 17.66C18.641 17.231 18.515 16.561 18.76 15.983C18.82 15.826 18.879 15.67 18.934 15.51C19.129 14.925 19.669 14.5 20.283 14.5H20.4981C21.3231 14.5 21.9981 13.825 21.9981 13C21.9981 12.175 21.3231 11.5 20.4981 11.5H20.2871C19.6731 11.5 19.1331 11.074 18.9381 10.489C18.8841 10.33 18.8241 10.174 18.7641 10.017C18.5201 9.43896 18.6451 8.76901 19.0751 8.34001L19.2349 8.17999C19.8049 7.60999 19.8049 6.69498 19.2349 6.12598L18.8749 5.76562C18.3049 5.19563 17.39 5.19563 16.82 5.76562L16.66 5.92603C16.231 6.35703 15.561 6.48292 14.983 6.23792C14.826 6.17792 14.67 6.11897 14.51 6.06397C13.925 5.86897 13.5 5.32897 13.5 4.71497V4.5C13.5 3.675 12.825 3 12 3ZM12 17C9.23858 17 7 14.7614 7 12C7 9.23858 9.23858 7 12 7C14.7614 7 17 9.23858 17 12C17 14.7614 14.7614 17 12 17Z"
        stroke="currentColor"
        stroke-width="1"
      />
    </svg>
    """
  end

  def manual(assigns) do
    ~H"""
    <svg
      class={@class}
      x="0px"
      y="0px"
      viewBox="0 0 100 100"
      enable-background="new 0 0 100 100"
      xml:space="preserve"
    >
      <path d="M92.2,50.9L45.1,78.3l-7.9-4.6v0L8.1,57v-7.7L45,70.6l52.8-30.7L55,15.1L2.1,45.8h0v0l0,0l0,0v14.3h0l32,18.4v0l11,6.3  l52.8-30.7L92.2,50.9z M39.4,43.6c1.6-0.8,3.1-1.2,4.4-1.4c1.8-0.2,4.3-0.1,7.6,0.2c1.6,0.2,3.2,0.2,4.7,0c1.5-0.2,2.8-0.7,4-1.3  c1.2-0.7,1.9-1.5,2-2.3c0.1-0.8-0.5-1.6-1.7-2.3c-1-0.6-2.1-0.9-3.4-0.9c-0.8,0-1.6,0.1-2.4,0.3c-0.9,0.3-2.1,0.2-2.9-0.3  c0,0,0,0,0,0L47,32.9c-0.6-0.4-0.6-0.9,0.1-1.2c2.7-1.4,5.6-1.9,8.8-1.7c3.6,0.3,7,1.4,10.3,3.3c3.5,2,5.4,4.2,5.7,6.4  c0.3,2.2-1.1,4.2-4.1,5.9c-1.8,1.1-4.1,1.7-6.8,2c-2.7,0.3-5.3,0.2-7.9-0.3c-1.6-0.2-2.9-0.2-3.9,0.1c-0.7,0.2-1.5,0.4-2.3,0.8  c-0.6,0.3-1.6,0.3-2.2-0.1l-5.2-3C38.7,44.6,38.7,43.9,39.4,43.6z M30.6,48.7l2.7-1.6c0.9-0.5,2.4-0.5,3.3,0l4.2,2.4  c0.9,0.5,0.9,1.4,0,1.9L38.1,53c-0.9,0.5-2.4,0.5-3.3,0l-4.2-2.4C29.7,50.1,29.7,49.2,30.6,48.7z" />
    </svg>
    """
  end

  def record(assigns) do
    ~H"""
    <svg
      xmlns:svg="http://www.w3.org/2000/svg"
      xmlns="http://www.w3.org/2000/svg"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      version="1.0"
      class={@class}
      viewBox="-15 -15 150 150"
      xml:space="preserve"
    >
      <g>
        <path
          d="M76.34 52.05l-43.6-43.6a63.42 63.42 0 0 1 29.7-8.2zm4.2 7.7L64.64.2A63.32 63.32 0 0 1 94.44 8zm-.08 8.86l16-59.5a63.32 63.32 0 0 1 21.94 21.6zm-4.5 7.6l43.62-43.5a63.32 63.32 0 0 1 8.17 29.7zm-7.7 4.4l59.56-15.9a63.32 63.32 0 0 1-7.78 29.8zm-8.86-.1l59.56 16a63.32 63.32 0 0 1-21.66 22zM51.8 76l43.58 43.63a63.32 63.32 0 0 1-29.72 8.17zm-4.36-7.7l15.92 59.6a63.32 63.32 0 0 1-29.82-7.8zm.1-8.83l-16 59.55A63.3 63.3 0 0 1 9.6 97.3zm4.5-7.62L8.44 95.4a63.32 63.32 0 0 1-8.2-29.72zm7.7-4.33L.16 63.36a63.32 63.32 0 0 1 7.8-29.8zm8.85.1L9 31.56A63.32 63.32 0 0 1 30.68 9.6z"
          fill="inherit"
        />
      </g>
    </svg>
    """
  end

  def droplet_loader(assigns) do
    ~H"""
    <svg
      xmlns:svg="http://www.w3.org/2000/svg"
      xmlns="http://www.w3.org/2000/svg"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      version="1.0"
      class={@class}
      viewBox="0 0 128 128"
      xml:space="preserve"
    >
      <g>
        <path
          fill="#000000"
          d="M64,128a64,64,0,1,1,64-64A64,64,0,0,1,64,128ZM64,2.75A61.25,61.25,0,1,0,125.25,64,61.25,61.25,0,0,0,64,2.75Z"
        /><path
          fill="inherit"
          d="M64 128a64 64 0 1 1 64-64 64 64 0 0 1-64 64zM64 2.75A61.2 61.2 0 0 0 3.34 72.4c1.28-3.52 3.9-6.32 7.5-6.86 6.55-1 11.9 2.63 13.6 8.08 3.52 11.27.5 23 15 35.25 19.47 16.46 40.34 13.54 52.84 9.46A61.25 61.25 0 0 0 64 2.75z"
        />
        <animateTransform
          attributeName="transform"
          type="rotate"
          from="0 64 64"
          to="360 64 64"
          dur="3800ms"
          repeatCount="indefinite"
        >
        </animateTransform>
      </g>
    </svg>
    """
  end

  def centering(assigns) do
    ~H"""
    <svg
      xmlns="http://www.w3.org/2000/svg"
      class={@class}
      viewBox="20 20 60 60"
      fill="inherit"
      stroke="currentColor"
      stroke-width="3"
      stroke-linecap="round"
      stroke-linejoin="round"
    >
      <style>
        .arrow-path {
          transition: transform 0.3s ease-out;
        }

        svg:hover .top-left {
          transform: translate(5px, 5px);
        }

        svg:hover .top-right {
          transform: translate(-5px, 5px);
        }

        svg:hover .bottom-left {
          transform: translate(5px, -5px);
        }

        svg:hover .bottom-right {
          transform: translate(-5px, -5px);
        }
      </style>
      
    <!-- Center circle -->
      <path
        class="center-circle"
        fill="inherit"
        d="M52.828,47.172c1.562,1.562,1.562,4.095,0,5.657c-1.562,1.562-4.095,1.562-5.657,0c-1.562-1.562-1.562-4.095,0-5.657 C48.734,45.609,51.266,45.609,52.828,47.172z"
      />
      
    <!-- Top Left Arrow -->
      <path
        class="arrow-path top-left"
        fill="inherit"
        d="M42.146,34.854L40,37l-5.293-5.293c-0.391-0.391-1.024-0.391-1.414,0l-1.586,1.586c-0.391,0.391-0.391,1.024,0,1.414L37,40 l-2.146,2.146C34.539,42.461,34.762,43,35.207,43H42c0.552,0,1-0.448,1-1v-6.793C43,34.762,42.461,34.539,42.146,34.854z"
      />
      
    <!-- Top Right Arrow -->
      <path
        class="arrow-path top-right"
        fill="inherit"
        d="M58,43h6.793c0.445,0,0.669-0.539,0.354-0.854L63,40l5.293-5.293c0.391-0.391,0.391-1.024,0-1.414l-1.586-1.586 c-0.391-0.391-1.024-0.391-1.414,0L60,37l-2.146-2.146C57.539,34.539,57,34.762,57,35.207V42C57,42.552,57.448,43,58,43z"
      />
      
    <!-- Bottom Left Arrow -->
      <path
        class="arrow-path bottom-left"
        fill="inherit"
        d="M42,57h-6.793c-0.445,0-0.669,0.539-0.354,0.854L37,60l-5.293,5.293c-0.391,0.391-0.391,1.024,0,1.414l1.586,1.586 c0.391,0.391,1.024,0.391,1.414,0L40,63l2.146,2.146C42.461,65.461,43,65.238,43,64.793V58C43,57.448,42.552,57,42,57z"
      />
      
    <!-- Bottom Right Arrow -->
      <path
        class="arrow-path bottom-right"
        d="M63,60l2.146-2.146C65.461,57.539,65.238,57,64.793,57H58c-0.552,0-1,0.448-1,1v6.793c0,0.445,0.539,0.669,0.854,0.354L60,63l5.293,5.293c0.391,0.391,1.024,0.391,1.414,0l1.586-1.586c0.391-0.391,0.391-1.024,0-1.414L63,60z"
      />
    </svg>
    """
  end

  def save(assigns) do
    ~H"""
    <svg
      class={@class}
      viewBox="2 2 20 20"
      fill="none"
      stroke="currentColor"
      stroke-width="3"
      stroke-linecap="round"
      stroke-linejoin="round"
    >
      
    <!-- Container box for download -->
      <path class="transition duration-300 ease-in-out" d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
      
    <!-- The download arrow with animation -->
      <g class="transform transition-all duration-300 ease-in-out hover:translate-y-0.5">
        <polyline points="7 10 12 15 17 10" />
        <line
          x1="12"
          y1="15"
          x2="12"
          y2="3"
          class="origin-top transition-all duration-300 ease-in-out group-hover:scale-y-105"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "erase"} = assigns) do
    ~H"""
    <svg
      version="1.1"
      class={@class}
      viewBox="0 0 100 100"
      style="enable-background:new 0 0 100 100;"
      xml:space="preserve"
    >
      <g i:extraneous="self">
        <g>
          <path d="M49.8,2.5c-2,0.1-3.5,1.9-3.4,3.9l1.3,19.2c0.1,1.1,1,2.1,2.2,2.2c1.3,0.1,2.4-0.9,2.5-2.2l1.3-19.2c0-0.2,0-0.3,0-0.5     C53.5,3.9,51.8,2.4,49.8,2.5z" /><path d="M31.1,34.4c0.9,0.8,2.2,0.8,3,0c1-0.8,1.1-2.3,0.2-3.3L21.7,16.6c-0.1-0.1-0.2-0.2-0.3-0.3c-1.5-1.3-3.8-1.2-5.1,0.3     s-1.2,3.8,0.3,5.1L31.1,34.4z" /><path d="M27.7,50.2c0.1-1.3-0.9-2.4-2.2-2.5L6.4,46.4c-0.2,0-0.3,0-0.5,0c-2,0.1-3.5,1.9-3.4,3.9c0.1,2,1.9,3.5,3.9,3.4l19.2-1.3     C26.7,52.2,27.6,51.3,27.7,50.2z" /><path d="M31.1,65.6L16.6,78.3c-0.1,0.1-0.2,0.2-0.3,0.3c-1.3,1.5-1.2,3.8,0.3,5.1c1.5,1.3,3.8,1.2,5.1-0.3l12.7-14.5     c0.8-0.9,0.8-2.2,0-3C33.5,64.9,32.1,64.8,31.1,65.6z" /><path d="M50.2,72.3c-1.3-0.1-2.4,0.9-2.5,2.2l-1.3,19.2c0,0.2,0,0.3,0,0.5c0.1,2,1.9,3.5,3.9,3.4c2-0.1,3.5-1.9,3.4-3.9     l-1.3-19.2C52.2,73.3,51.3,72.4,50.2,72.3z" /><path d="M68.9,65.6c-0.9-0.8-2.2-0.8-3,0c-1,0.8-1.1,2.3-0.2,3.3l12.7,14.5c0.1,0.1,0.2,0.2,0.3,0.3c1.5,1.3,3.8,1.2,5.1-0.3     c1.3-1.5,1.2-3.8-0.3-5.1L68.9,65.6z" /><path d="M93.6,46.4l-19.2,1.3c-1.1,0.1-2.1,1-2.2,2.2c-0.1,1.3,0.9,2.4,2.2,2.5l19.2,1.3c0.2,0,0.3,0,0.5,0     c2-0.1,3.5-1.9,3.4-3.9C97.4,47.8,95.6,46.3,93.6,46.4z" /><path d="M68.9,34.4l14.5-12.7c0.1-0.1,0.2-0.2,0.3-0.3c1.3-1.5,1.2-3.8-0.3-5.1c-1.5-1.3-3.8-1.2-5.1,0.3L65.6,31.1     c-0.8,0.9-0.8,2.2,0,3C66.5,35.1,67.9,35.2,68.9,34.4z" />
        </g>
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "def"} = assigns) do
    ~H"""
    <svg
      xmlns="http://www.w3.org/2000/svg"
      class={@class}
      xmlns:xlink="http://www.w3.org/1999/xlink"
      version="1.1"
      x="0px"
      y="0px"
      viewBox="0 0 512 512"
      xml:space="preserve"
    >
      <g>
        <path d="M302.7,85.8c16.3-5.4,26.9-0.7,34.3,15.3c3.3,6.7,13.3,2.8,11.2-4.4c-5.3-16.4-0.6-26.9,15.3-34.3   c6.7-3.3,2.8-13.3-4.4-11.2c-11,3.6-25.9,2.2-44-40.7c-3.2-7-13.6-3-11.2,4.4c8.2,22.9,14.9,50.4-5.5,59.7   C291.6,77.9,295.5,88,302.7,85.8z M323.2,58.3c0.4-2.7,0.5-5.5,0.5-8.6c5.3,6.2,11.5,11,18.6,13.3c-4,4.5-6.5,9.7-7.6,15.5   c-4.7-3.6-10-5.8-15.9-6.5C321,68,322.5,63.4,323.2,58.3z" /><path d="M71.5,174.4c2.5,7.1,12.9,4.3,11.6-3.1c-3.2-15.6,2.2-24.8,17.6-29.9c3-1,4.7-4.2,3.9-7.2s-3.9-5-7-4.3   c-15.6,3.2-24.8-2.2-29.9-17.6c-1-3-4.2-4.7-7.3-3.9c-3.1,0.8-5,3.9-4.3,7c3.3,15.5-2.1,24.8-17.5,29.9c-7.1,2.5-4.3,12.9,3.1,11.6   C57.3,153.5,66.5,158.9,71.5,174.4z M67.4,134.4c3.2,3,7,5.2,11.1,6.6c-3,3.2-5.2,6.9-6.6,11.1c-3.2-3-6.9-5.2-11.1-6.6   C63.8,142.3,66,138.6,67.4,134.4z" /><path d="M134.1,148.7l10.3,0.4l-0.3,10.3c-0.1,3.3,2.5,6.1,5.8,6.2c3.3,0.1,6.1-2.5,6.2-5.8c0,0,0.3-10.3,0.3-10.3   s10.3,0.3,10.3,0.3c3.3,0.1,6.1-2.5,6.2-5.8c0.1-3.3-2.5-6.1-5.8-6.2l-10.3-0.3l0.3-10.4c0.1-3.3-2.5-6.1-5.8-6.2   c-3.3-0.1-6.1,2.5-6.2,5.8l-0.3,10.4l-10.3-0.4C126.6,136.7,126.2,148.1,134.1,148.7z" /><path d="M403,187.1c-2.3-2.4-6.1-2.5-8.5-0.1l-7.4,7.2l-7.2-7.4c-2.3-2.4-6.1-2.4-8.5-0.1c-2.4,2.3-2.4,6.1-0.1,8.5l7.2,7.4   l-7.4,7.2c-2.4,2.3-2.4,6.1-0.1,8.5c2.3,2.4,6.1,2.4,8.5,0.1c0,0,7.4-7.2,7.4-7.2l7.2,7.5c2.3,2.4,6.1,2.4,8.5,0.1   c2.4-2.3,2.4-6.1,0.1-8.5l-7.2-7.5l7.4-7.1C405.3,193.3,405.3,189.5,403,187.1z" /><path d="M99.8,225.9c0-10.1-8.3-18.4-18.4-18.4c-24.4,1-24.4,35.8,0,36.8C91.5,244.3,99.8,236,99.8,225.9z M75,225.9   c0-3.5,2.9-6.4,6.4-6.4c8.5,0.3,8.5,12.5,0,12.8C77.9,232.3,75,229.4,75,225.9z" /><path d="M393.5,145.3c10.1,0,18.4-8.3,18.4-18.4c-1-24.4-35.8-24.4-36.8,0C375.1,137,383.4,145.3,393.5,145.3z M393.5,120.5   c3.5,0,6.4,2.9,6.4,6.4c-0.3,8.5-12.5,8.5-12.8,0C387.1,123.4,390,120.5,393.5,120.5z" /><path d="M422.8,316.3c-6.2-26.9-22-48.8-46.9-64.2c-16.9-5.8-34.3-10.7-50.7-15c10.8-31.7,27.9-58.7,49.2-77.4   c2.5-2.2,2.7-6,0.5-8.5c-2.2-2.5-6-2.7-8.5-0.5c-23.1,20.3-41.4,49.4-52.9,83.5c-10.2-2.5-19.9-4.8-28.9-6.7   c1.5-11.4,3.7-23.5,6.4-35.3c0.7-3.2-1.3-6.5-4.5-7.2c-3.2-0.7-6.5,1.3-7.2,4.5c-2.7,11.8-4.9,23.9-6.5,35.5   c-9.4-2-17.7-3.6-24.5-4.8c-3.1-39.6-10.8-75.7-23.1-107.6c-1.2-3.1-4.7-4.6-7.8-3.4c-3.1,1.2-4.6,4.7-3.4,7.8   c11.9,31,19.4,66.1,22.4,104.8c-6.7,1.3-14.9,2.9-24.4,5c-6.4-20.7-16-43.1-27.6-64.5c-1.6-2.9-5.2-4-8.1-2.4   c-2.9,1.6-4,5.2-2.4,8.1c11.1,20.3,20.2,41.6,26.4,61.3c-8.6,1.9-17.8,4.2-27.5,6.6c-13.2-29.3-34.5-54.5-61.6-72.4   c-2.8-1.8-6.5-1.1-8.3,1.7c-1.8,2.8-1.1,6.5,1.7,8.3c24.7,16.3,44.1,39,56.5,65.5c-14.4,3.9-29.5,8.3-44.4,13.3   C92,267.4,76.1,289.4,70,316.3c-0.6,2.6,0.6,5.3,3,6.6c9.7,5.2,19.7,9.9,29.9,13.9c4.9,33.8,3.7,68.6-2.4,105.3   c-0.3,5.3,4.4,10,9.7,10c43.1,1.4,100.3,19.1,130.4,40.2c1.7,1.3,3.7,1.9,5.8,1.9c2,0,4-0.6,5.7-1.8   c30.9-21.8,89.2-38.9,132.8-40.5c5-1.3,8.2-6.3,7.3-11.4c-6.1-36.2-6.8-70.1-2.2-103.5c10.2-4.1,20.2-8.7,29.9-13.9   C422.2,321.6,423.5,318.9,422.8,316.3z M170.3,263.6c2.4,7.6,13.4,4.5,11.6-3.2c-1.3-4.6-2.7-9.1-4.4-13.6   c9.2-2.3,18.1-4.4,26.3-6.3c2.3,8.9,4,17.3,4.8,24.9c0.4,3.3,3.4,5.7,6.6,5.3c3.3-0.4,5.7-3.3,5.3-6.6c-0.9-8.1-2.6-16.9-5.1-26.2   c8.3-1.8,15.7-3.3,21.8-4.5c0.6,11.7,0.8,23.6,0.7,35.9c-0.1,3.3,2.6,6,5.9,6.1c3.3,0.1,6-2.6,6.1-5.9c0.2-12.7-0.1-25.1-0.7-37.2   c5.9,1.1,13.5,2.6,22.3,4.5c-0.8,8.1-1.2,15.7-1.2,22.4c0,3.3,2.7,6,6,6s6-2.7,6-6c0-6,0.4-12.7,1-19.9c8.2,1.8,17.2,3.9,26.6,6.2   c-1.2,4.2-2.3,8.5-3.3,12.9c-0.9,3.7,2.1,7.4,5.9,7.3c2.7,0,5.2-1.9,5.8-4.7c1-4.3,2.1-8.5,3.2-12.6c11.7,3,23.9,6.4,36,10.2   c-73.8,35-148.8,35-222.6,0c10.4-3.2,20.7-6.2,30.8-8.9C167.5,254.4,169,258.9,170.3,263.6z M119.6,264.5   c34,17.7,70.9,28.5,110.1,32.3c-15.5,13.3-26,29.7-31.5,49c-41.2-2.5-79.6-12.8-115.5-31.3C88.6,293.8,100.7,277.4,119.6,264.5z    M379.9,440.2c-44.1,2-101.9,19.9-133.6,41.5c-31.5-21.5-89.2-39.4-133.5-41.5c5.6-34.4,6.5-66.8,2.7-98.6   c27.6,9.6,56.9,15.1,87.3,16.4c2.8,0,5.2-1.9,5.8-4.7c5.2-22.4,17.8-40.6,37.7-54.2c19.8,13.6,32.5,31.9,37.7,54.2   c0.6,2.7,3.1,4.7,5.8,4.7c30.5-1.3,59.7-6.9,87.3-16.4C373.4,373.4,374.3,405.8,379.9,440.2z M382.6,326.8   c-27.7,10.7-57.2,17.1-88.1,18.9c-5.4-19.3-16-35.8-31.5-49c39.2-3.8,76.2-14.6,110.1-32.3c19,12.9,31.1,29.3,36.9,50   C401.1,319.1,391.9,323.2,382.6,326.8z" /><path d="M246.8,326.5c-3.3-0.2-6.2,2.3-6.4,5.6c-3.1,43.4-3.1,88.2,0,133c0.8,7.9,12.2,7.1,12-0.8c-3-44.3-3-88.5,0-131.4   C252.6,329.6,250.1,326.7,246.8,326.5z" /><path d="M290.5,169c3.1,0.9,6.5-0.9,7.4-4.1c5.4-18.4,12.2-36.2,20.4-52.8c1.5-3,0.2-6.6-2.7-8c-3-1.5-6.6-0.2-8,2.7   c-8.5,17.3-15.6,35.7-21.2,54.8C285.5,164.7,287.3,168,290.5,169z" />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "loop"} = assigns) do
    ~H"""
    <svg
      version="1.1"
      viewBox="0 0 600 600"
      class={@class}
      xmlns="http://www.w3.org/2000/svg"
      xmlns:svg="http://www.w3.org/2000/svg"
    >
      /> <defs id="defs19" />
      <g id="g18">
        <g id="g17">
          <path
            d="m 440.22803,494.3392 c 11.24145,-6.69873 21.9646,-14.38434 32.06933,-23.00396 0.10199,0.0471 0.14597,0.10894 0.32178,0.10894 0.36704,0 0.62607,-0.3887 0.42847,-0.74084 10.93841,-9.40933 21.27139,-19.99072 30.98559,-32.1897 0.10059,0.0378 0.14588,0.0848 0.29492,0.0848 0.44501,0 0.68018,-0.54904 0.33082,-0.86572 9.93505,-12.58576 18.47802,-26.04785 25.54565,-40.19989 0.38586,-0.0304 0.58704,-0.45542 0.37646,-0.77106 16.52155,-33.39313 24.78925,-70.39493 23.98853,-108.43103 0.093,-0.17541 0.0814,-0.32993 -0.006,-0.48004 C 552.50439,199.08305 499.89572,117.42497 416.63965,79.939301 393.95312,69.725433 299.85393,58.71154 270.9467,57.809196 c -2.92813,-0.09247 59.84017,4.593819 54.58211,4.897133 C 180.27113,31.973133 43.750248,142.69647 43.750248,290.90237 c 0,78.92017 39.196896,148.68 99.178592,190.89313 -43.763873,66.89145 -38.99347,59.60007 -39.35559,60.1536 -0.36448,0.55731 0.48098,1.09112 0.83593,0.54785 l 39.33789,-60.13425 c 39.72641,27.706 87.87153,42.9888 139.06812,41.73953 11.04575,3.73078 30.77905,2.90302 38.05493,2.90302 42.34107,0 82.95728,-11.19421 118.48975,-32.15958 l 35.05908,47.67374 c 0.16272,0.22211 0.47595,0.27008 0.69824,0.10644 0.22266,-0.16357 0.27051,-0.47656 0.10645,-0.69921 z m -6.9773,2.67908 c -0.0628,-0.2366 0.90116,0.97519 -16.75561,-19.12537 9.54004,-7.12848 18.50634,-14.97961 26.83984,-23.45507 3.26657,2.08706 4.57263,2.76803 27.93115,16.30059 -11.73413,9.95765 -24.46142,18.77521 -38.01538,26.27985 z m -42.58423,18.29141 -9.906,-15.4385 c 12.29614,-6.11707 23.97803,-13.28101 34.92334,-21.3866 4.18213,4.75079 12.54654,14.2522 16.72876,19.00287 -13.19531,7.23504 -27.1626,13.22857 -41.7461,17.82223 z m -38.67212,8.60877 -4.49023,-10.59577 c 11.17383,-3.53842 21.98022,-7.89822 32.35522,-13.00369 l 9.81934,15.30307 c -12.16724,3.77252 -24.76074,6.56165 -37.68433,8.29639 z M 367.09204,66.773659 c 9.42871,1.381897 18.43726,3.33844 27.07788,5.900268 L 383.33374,83.226235 C 375.7832,79.352882 367.9873,75.893593 359.9873,72.847511 c 7.1037,-5.953743 7.06995,-5.67527 7.10474,-6.073852 z M 501.0647,145.94987 c 21.99951,26.95136 37.66967,58.47992 45.90161,92.12079 -0.39435,-0.13656 1.97693,-1.13745 -38.97705,20.17308 -1.6919,-12.07194 -4.30249,-23.84794 -7.76856,-35.2537 l 33.20508,-22.56293 c 0.22852,-0.15527 0.28711,-0.46631 0.13184,-0.69434 -0.15625,-0.22998 -0.4668,-0.28564 -0.69434,-0.13281 l -32.94189,22.38403 c -3.10694,-10.06079 -6.88672,-19.8247 -11.26758,-29.25317 l 29.40869,-21.88379 c 0.22168,-0.16504 0.26758,-0.47852 0.10254,-0.69971 -0.16699,-0.22216 -0.47949,-0.26709 -0.7002,-0.10302 l -29.2434,21.76074 c -4.44263,-9.45197 -9.49317,-18.56079 -15.11573,-27.26764 0.3411,-0.22676 -3.62869,2.41241 27.95899,-18.58753 z m 52.49658,141.75719 c -14.48956,2.73587 -29.00311,10.30356 -43.54688,14.10407 0.65369,-14.19754 0.07,-28.13868 -1.87793,-42.51569 40.54792,-21.18971 38.89838,-20.27304 39.03345,-20.42009 3.83032,15.89905 5.99512,32.2636 6.39136,48.83171 z m -24.07153,108.68152 -40.34693,-8.3559 c 5.32544,-11.61291 9.71973,-23.73956 13.1001,-36.2835 44.45361,-0.38587 35.51306,0.23883 44.47119,-2.12293 -4.07983,16.33508 -9.89038,31.98956 -17.22436,46.76233 z m -40.78174,-7.42444 40.3208,8.35053 c -7.12329,14.18975 -15.646,27.55975 -25.40235,39.9162 l -33.62841,-15.26813 c 7.09277,-10.42487 13.35522,-21.45777 18.70996,-32.9986 z m -16.63135,81.08875 c -24.24499,-14.03846 -25.19128,-14.53464 -28.0332,-16.34058 9.30737,-9.54791 17.80298,-19.88794 25.37549,-30.91431 l 33.55981,15.23688 c -9.26489,11.62842 -19.61621,22.35242 -30.9021,32.01801 z m 74.90723,-121.52942 c -9.93402,2.4432 1.57849,1.8237 -44.46973,2.2232 4.07617,-15.4002 6.62939,-31.41967 7.46069,-47.89502 14.52271,-3.74377 29.22547,-11.37326 43.59986,-14.12646 0.38366,19.69775 -1.66248,39.64395 -6.59082,59.79828 z m -46.55909,-203.3474 -27.86865,18.52625 c -5.11743,-7.85053 -10.6936,-15.37275 -16.69262,-22.5307 24.5082,-19.83376 22.9945,-18.4554 23.09106,-18.75209 7.70068,7.13166 14.86694,14.7378 21.47021,22.75654 z m -22.12597,-23.36506 c -0.19467,0.0813 1.02749,-0.84526 -23.08154,18.59626 -5.60206,-6.62701 -11.56055,-12.94233 -17.85792,-18.90528 l 19.7461,-16.30047 c 0.18579,-0.15345 0.2229,-0.40992 0.11499,-0.61499 7.72623,5.59187 14.40881,11.09593 21.07837,17.22448 z m -21.43677,-17.48462 c -0.4328,-0.067 0.84076,-0.82385 -20.24121,16.4881 -7.14575,-6.70807 -14.71411,-12.96863 -22.66113,-18.74219 L 430.2998,88.863624 c 0.21485,-0.173339 0.24805,-0.488281 0.0742,-0.703125 -0.17285,-0.214355 -0.48828,-0.248535 -0.70312,-0.07422 L 413.12354,101.4625 c -9.14673,-6.583617 -18.78809,-12.521056 -28.86036,-17.745726 12.14997,-11.845589 10.85105,-10.545578 10.9834,-10.71167 21.82825,6.621193 43.58399,18.323273 61.61548,31.321286 z M 270.91545,58.808227 c 9.03955,0.282227 86.72029,6.618325 95.05061,7.79374 l -7.05297,5.837158 c -9.35791,-3.509949 -88.01497,-12.056313 -97.8995,-14.353859 3.95319,0.159511 7.76258,0.656319 9.90186,0.722961 z m 102.77447,33.025231 c 69.18579,34.051032 119.02265,117.488252 119.02265,199.808802 0,115.39148 -82.86637,216.89463 -198.25773,216.89463 -21.77661,0 -64.27901,-4.85838 -84.01741,-11.03965 -37.30705,-25.47032 -96.24884,-150.12216 -96.62599,-146.80321 -7.05781,-26.63672 -9.26165,-53.94001 -6.7915,-80.88019 0.34044,-0.15622 0.40802,-0.61313 0.0818,-0.85016 7.58458,-79.5033 73.6096,-162.31147 143.72314,-198.496078 48.98993,-10.61242 80.14055,1.611649 122.86504,21.365856 z M 210.43743,497.49724 c -19.24866,-6.42456 -42.75806,-21.55016 -59.05517,-32.96716 L 169.493,451.46201 c 12.48056,13.3024 25.02547,35.55882 40.94443,46.03523 z m -43.91204,-46.63802 -15.14313,13.67086 c -11.65357,-8.25153 -22.41699,-17.6731 -32.13684,-28.08289 21.62778,-12.28985 33.01743,-22.33122 33.19562,-22.46614 7.30947,11.08496 8.40031,25.11328 17.23005,34.60659 -0.84189,0.59625 -3.04589,2.04569 -3.1457,2.27158 z m -47.98078,-15.16483 c -9.63159,-10.41706 -18.21997,-21.81135 -25.589357,-34.02662 0.139313,0.99573 35.198477,-20.79068 37.951267,-19.67423 4.4541,1.80645 17.59052,14.97397 21.78728,24.07872 1.64654,3.57212 1.91702,6.51887 -0.25276,7.90879 z M 92.440971,400.79778 C 85.576835,389.29436 75.139474,373.86179 70.561837,361.0665 c 34.200533,-8.22082 42.016953,-10.38327 42.183523,-10.49018 -1.17618,0.55422 12.4891,19.20343 16.83151,29.85529 0.39783,0.97587 -31.143234,17.12817 -37.135899,20.36617 z M 70.227853,360.11826 c -5.32959,-15.12823 -8.975464,-31.04944 -10.693116,-47.54614 l 46.360163,-1.70081 c 1.19595,14.06598 3.39483,26.38629 6.6084,38.79632 -0.21195,-0.009 -7.86858,2.21186 -42.275447,10.45063 z M 59.534737,312.57212 c -1.362915,-13.72769 -1.517044,-28.88452 -0.06323,-43.22254 l 46.545463,0.44946 c -1.22731,13.43338 -1.29423,26.49497 -0.20081,40.06983 0,0 -60.737041,4.0174 -46.281423,2.70325 z m 46.577933,-43.76905 -46.528128,-0.44805 c 1.309448,-12.32592 3.691162,-24.33049 7.049316,-35.92137 12.151856,3.6e-4 33.599782,-1.05635 45.385182,1.97344 -2.81421,11.27881 -4.79467,22.77788 -5.90637,34.39598 z M 112.2594,233.437 c -11.76648,-3.02497 -33.200737,-1.97815 -45.329033,-2.00006 3.523194,-11.93561 8.080933,-23.4256 13.574219,-34.36713 l 42.610644,3.62927 c 0.023,0.004 0.0454,0.005 0.0681,0.006 -4.4353,10.62238 -8.08752,21.56641 -10.92395,32.73182 z m 11.27808,-33.59308 c -0.0664,-0.0607 -0.14368,-0.11048 -0.23865,-0.12824 l -42.331475,-3.57714 c 6.181884,-12.16168 13.515376,-23.63916 21.863525,-34.28412 28.39615,8.47124 36.56802,5.56439 36.71111,5.56439 0.57497,0 0.692,-0.81449 0.14356,-0.97901 l -13.41199,-4.00497 -13.41199,-4.00497 c 8.72339,-11.00641 18.5354,-21.10773 29.26807,-30.15339 l 21.3457,8.02393 c -16.75673,18.98979 -30.11101,40.26839 -39.93786,63.54352 z m 40.64489,-64.34644 -21.17773,-7.96082 c 9.95483,-8.29761 20.69519,-15.6814 32.09009,-22.0351 l 12.27636,7.31665 c -8.23779,7.00849 -15.97998,14.5846 -23.18872,22.67927 z m 11.92041,-30.55945 c 16.26831,-8.953312 52.42639,-29.249378 70.97034,-33.627491 -14.37201,7.709999 -46.35527,30.262131 -58.88879,40.827991 z m 109.8291,419.05135 c 21.03711,-0.79126 41.36524,-4.35193 60.61817,-10.35693 l 4.42016,10.42968 c -9.85595,1.2782 -19.90161,1.94312 -30.10009,1.94312 -6.17725,0 -23.48334,0.7655 -34.93824,-2.01587 z"
            id="path1"
          />
          <path
            d="M 58.762699,161.08726 C 79.914062,112.06431 125.16797,73.318703 176.86328,59.97007 c 0.64322,-0.165497 0.38662,-1.137924 -0.25,-0.967774 C 124.625,72.426125 79.116211,111.39097 57.84473,160.69078 c -0.26247,0.6093 0.658104,1.0023 0.917969,0.39648 z"
            id="path14"
          />
          <path
            d="m 63.527348,121.86607 c 14.89355,-29.606449 41.402342,-52.792484 72.728512,-63.612309 0.62598,-0.216861 0.29804,-1.161918 -0.32617,-0.945312 -31.57031,10.904297 -58.286131,34.270996 -73.294921,64.108401 -0.297489,0.59146 0.597519,1.03605 0.892579,0.44922 z"
            id="path15"
          />
          <path
            d="m 549.35059,404.37436 c -0.26465,-0.0801 -0.54297,0.0693 -0.62305,0.33398 -10.64649,35.26368 -33.11133,66.3418 -63.25879,87.50928 -0.22656,0.15869 -0.28125,0.4707 -0.12207,0.69629 0.16257,0.23087 0.47635,0.27777 0.69629,0.12207 30.33008,-21.29541 52.93164,-52.56152 63.6416,-88.03857 0.0801,-0.26416 -0.0693,-0.54346 -0.33398,-0.62305 z"
            id="path16"
          />
          <path
            d="m 555.95996,432.6185 c -0.24805,-0.11621 -0.54785,-0.007 -0.66309,0.24316 -9.56445,20.62012 -21.87695,39.8584 -36.59472,57.17969 -0.17871,0.21045 -0.15332,0.52588 0.0566,0.70459 0.21136,0.17871 0.52612,0.15372 0.70508,-0.0571 14.77734,-17.39013 27.13769,-36.7041 36.73925,-57.40625 0.11622,-0.25049 0.008,-0.54785 -0.24316,-0.66406 z"
            id="path17"
          />
        </g>
      </g>
      <g
        id="g19"
        transform="matrix(0.99270514,-0.76346686,0.76346686,0.99270514,229.53509,368.00858)"
        style="display:inline"
      >
        <g id="g1" transform="rotate(40.851127,9.5883397,-47.378286)" style="display:inline">
          <path
            d="m 193.52322,-65.399574 h -31.47283 l -29.62148,-45.049316 -0.30856,-0.30856 c -0.30856,-0.30856 -0.30856,-0.61711 -0.61711,-0.92567 -0.30856,-0.30856 -0.61712,-0.92567 -1.23423,-1.23423 -0.30856,-0.30856 -0.61712,-0.30856 -0.92567,-0.61711 -0.30856,-0.30856 -0.92568,-0.61712 -1.23423,-0.92568 -0.30856,-0.30855 -0.61712,-0.30855 -0.92567,-0.61711 -0.61712,-0.30856 -0.92567,-0.30856 -1.54279,-0.61711 -0.30856,0 -0.30856,-0.30856 -0.61711,-0.30856 l -56.465984,-14.81074 c -3.394128,-0.92567 -7.405371,-0.30856 -10.182385,1.85134 l -44.43223,30.547157 c -5.5540311,4.011232 -7.0968166,11.725151 -3.085574,17.279176 4.011245,5.554028 11.725178,7.096813 17.279206,3.085571 l 39.495312,-27.153004 31.781384,8.639592 C 96.636255,-92.552592 23.816773,8.3455785 23.816773,8.3455785 l -54.614611,4.6283565 c -6.788257,0.617115 -12.033728,6.788253 -11.416614,13.576513 0.617114,6.4797 5.862586,11.41661 12.342285,11.41661 h 1.234229 l 59.860082,-5.24547 c 3.394129,-0.30855 6.4797,-1.85134 8.6396,-4.3198 L 70.408899,-8.3165063 113.60692,21.304979 90.156555,85.176308 c -2.468457,6.47969 0.925672,13.57651 7.405371,16.044972 1.542786,0.61711 2.777014,0.61711 4.319804,0.61711 5.24549,0 9.87385,-3.085572 11.72519,-8.331042 l 27.15303,-74.97938 c 1.85134,-4.936918 0.30856,-10.4909465 -3.70269,-13.8850755 l -31.16427,-25.9187975 25.9188,-44.740784 12.9594,20.056213 c 2.1599,3.394129 6.17115,5.554029 10.49094,5.554029 h 38.26109 c 6.78826,0 12.34228,-5.554029 12.34228,-12.342285 0.30856,-7.096814 -5.55402,-12.650842 -12.34228,-12.650842 z m -39.18676,-53.071806 c 13.26796,0 24.06746,-10.7995 24.06746,-24.06745 0,-13.26796 -10.7995,-24.06746 -24.06746,-24.06746 -13.26795,0 -24.06745,10.7995 -24.06745,24.06746 0,13.26795 10.49094,24.06745 24.06745,24.06745 z"
            id="path1-3"
            style="display:inline;stroke-width:3.08557"
          />
          <path
            d="m 99.526834,287.62251 86.550146,36.41654 c 4.98642,2.09807 10.55282,-0.17136 12.65089,-5.15778 2.09808,-4.98643 -0.17135,-10.55283 -5.15778,-12.65089 l -86.55015,-36.41654 c -4.98642,-2.09807 -10.55282,0.17136 -12.650893,5.15778 -2.098067,4.98643 0.527525,10.70269 5.157787,12.65089 z m 69.703106,51.54717 c 2.09807,-4.98642 -0.17135,-10.55281 -5.15778,-12.65089 L 77.522015,290.10225 c -4.986426,-2.09806 -10.552819,0.17136 -12.650896,5.15779 -2.098073,4.98642 0.171355,10.55282 5.157778,12.65089 l 86.550143,36.41653 c 4.98644,2.09808 10.55283,-0.17135 12.6509,-5.15778 z m -35.76175,-67.4506 86.55015,36.41653 c 4.98642,2.09807 10.55281,-0.17135 12.65089,-5.15778 2.09807,-4.98642 -0.17136,-10.55282 -5.15778,-12.65089 L 140.9613,253.9104 c -4.98643,-2.09807 -10.55282,0.17135 -12.6509,5.15778 -2.09806,4.98643 0.17136,10.55282 5.15779,12.6509 z"
            style="display:inline;stroke-width:3.86417"
            id="path1-7"
            transform="matrix(0.79719331,-0.04579926,0.04579926,0.79719331,-166.51281,-288.13055)"
          />
        </g>
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "fw"} = assigns) do
    ~H"""
    <svg
      class={@class}
      viewBox="0 0 256 256"
      stroke-width="2"
      stroke-linecap="round"
      stroke-linejoin="round"
    >
      <g transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)">
        <path
          d="M 42.918 50.129 c -1.144 0 -2.277 -0.497 -3.054 -1.454 c -1.367 -1.685 -1.108 -4.159 0.577 -5.526 l 22.419 -18.18 c 1.685 -1.364 4.159 -1.108 5.526 0.577 c 1.366 1.686 1.108 4.159 -0.577 5.526 L 45.39 49.251 C 44.662 49.842 43.787 50.129 42.918 50.129 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 71.946 43.083 c -1.343 0 -2.648 -0.69 -3.381 -1.924 l -6.608 -11.133 c -1.108 -1.865 -0.493 -4.276 1.372 -5.383 c 1.866 -1.107 4.277 -0.492 5.383 1.373 l 4.664 7.857 l 10.793 -5.967 c 1.9 -1.05 4.289 -0.361 5.339 1.537 c 1.049 1.899 0.362 4.289 -1.537 5.339 l -14.128 7.81 C 73.242 42.925 72.59 43.083 71.946 43.083 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; a; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 38.608 34.788 c -1.203 0 -2.391 -0.551 -3.161 -1.593 c -1.29 -1.744 -0.922 -4.204 0.822 -5.494 l 11.837 -8.758 c 1.092 -0.808 2.525 -0.995 3.787 -0.492 l 14.893 5.92 c 2.016 0.801 3.001 3.085 2.199 5.102 c -0.801 2.017 -3.086 3 -5.101 2.2 l -12.862 -5.112 l -10.08 7.458 C 40.239 34.537 39.42 34.788 38.608 34.788 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <circle
          cx="76.622"
          cy="19.962"
          r="6.782"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform="  matrix(1 0 0 1 0 0) "
        />
        <path
          d="M 20.115 74.459 c -1.237 0 -2.455 -0.582 -3.219 -1.673 c -1.246 -1.776 -0.816 -4.226 0.96 -5.472 l 15.626 -10.962 l 5.916 -11.901 c 0.966 -1.943 3.325 -2.733 5.266 -1.77 c 1.943 0.966 2.735 3.324 1.77 5.266 l -6.36 12.795 c -0.292 0.587 -0.726 1.091 -1.262 1.467 L 22.368 73.746 C 21.681 74.228 20.894 74.459 20.115 74.459 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 57.856 56.365 c -0.504 0 -1.017 -0.098 -1.511 -0.304 l -14.943 -6.235 c -2.002 -0.835 -2.948 -3.136 -2.112 -5.138 c 0.836 -2.002 3.137 -2.946 5.138 -2.112 L 59.37 48.81 c 2.003 0.835 2.948 3.136 2.113 5.138 C 60.854 55.455 59.394 56.365 57.856 56.365 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 50.014 76.82 c -0.467 0 -0.943 -0.083 -1.405 -0.261 c -2.026 -0.777 -3.039 -3.049 -2.262 -5.075 l 7.842 -20.456 c 0.777 -2.026 3.048 -3.04 5.075 -2.263 s 3.038 3.049 2.263 5.075 l -7.843 20.456 C 53.084 75.86 51.594 76.82 50.014 76.82 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 31.603 45.981 H 1.964 C 0.879 45.981 0 45.102 0 44.017 c 0 -1.085 0.879 -1.964 1.964 -1.964 h 29.639 c 1.085 0 1.964 0.879 1.964 1.964 C 33.568 45.102 32.688 45.981 31.603 45.981 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 27.581 35.524 H 9.204 c -1.085 0 -1.964 -0.879 -1.964 -1.964 s 0.879 -1.964 1.964 -1.964 h 18.377 c 1.085 0 1.964 0.879 1.964 1.964 S 28.666 35.524 27.581 35.524 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
        <path
          d="M 25.168 56.438 H 9.204 c -1.085 0 -1.964 -0.879 -1.964 -1.964 s 0.879 -1.964 1.964 -1.964 h 15.964 c 1.085 0 1.964 0.879 1.964 1.964 S 26.253 56.438 25.168 56.438 z"
          style="stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; ; fill-rule: nonzero; opacity: 1;"
          transform=" matrix(1 0 0 1 0 0) "
          stroke-linecap="round"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "lt"} = assigns) do
    ~H"""
    <svg
      class={@class}
      stroke-width="2"
      stroke-linecap="round"
      stroke-linejoin="round"
      viewBox="0 0 30 37.5"
      x="0px"
      y="0px"
    >
      <path
        d="M25.479,25.542c1.5-1.209,2.518-4.33,2.731-8.347.281-5.309-.893-10.54-2.791-12.438C23.789,3.127,19.7,2.073,15,2.073S6.211,3.127,4.581,4.757c-1.9,1.9-3.072,7.129-2.791,12.438C2,21.212,3.024,24.333,4.521,25.542,8.537,28.788,21.463,28.788,25.479,25.542ZM13.472,9.959a.75.75,0,0,1,1.5,0v3.89a.75.75,0,0,1-1.5,0Zm-7.778,0a.75.75,0,0,1,1.5,0v3.89a.75.75,0,1,1-1.5,0ZM5.042,18.1a.752.752,0,0,1,1.04-.209,9.157,9.157,0,0,0,4.251,1.43,9.1,9.1,0,0,0,4.251-1.43.75.75,0,0,1,.832,1.248,10.546,10.546,0,0,1-5.083,1.682A10.551,10.551,0,0,1,5.25,19.139.75.75,0,0,1,5.042,18.1Z"
        fill="none"
      /><path d="M3.579,26.709C5.82,28.521,10.41,29.427,15,29.427s9.18-.906,11.421-2.718c1.85-1.5,3.049-4.934,3.287-9.434.25-4.734-.653-11-3.228-13.578C24.177,1.394,19.04.573,15,.573S5.823,1.394,3.52,3.7C.945,6.272.042,12.541.292,17.275.53,21.775,1.729,25.214,3.579,26.709Zm1-21.952C6.211,3.127,10.3,2.073,15,2.073s8.789,1.054,10.419,2.684c1.9,1.9,3.072,7.129,2.791,12.438-.213,4.017-1.234,7.138-2.731,8.347-4.016,3.246-16.942,3.246-20.958,0C3.024,24.333,2,21.212,1.79,17.2,1.509,11.886,2.683,6.655,4.581,4.757Z" /><path d="M10.333,20.821a10.546,10.546,0,0,0,5.083-1.682.75.75,0,0,0-.832-1.248,9.1,9.1,0,0,1-4.251,1.43,9.157,9.157,0,0,1-4.251-1.43.75.75,0,0,0-.832,1.248A10.551,10.551,0,0,0,10.333,20.821Z" /><path d="M6.444,14.6a.75.75,0,0,0,.75-.75V9.959a.75.75,0,0,0-1.5,0v3.89A.75.75,0,0,0,6.444,14.6Z" /><path d="M14.222,14.6a.75.75,0,0,0,.75-.75V9.959a.75.75,0,0,0-1.5,0v3.89A.75.75,0,0,0,14.222,14.6Z" />
    </svg>
    """
  end

  def cmd_icon(%{command: "rt"} = assigns) do
    ~H"""
    <svg
      class={[@class, "-scale-y-100 -rotate-180"]}
      stroke-width="2"
      stroke-linecap="round"
      stroke-linejoin="round"
      viewBox="0 0 30 37.5"
      x="0px"
      y="0px"
    >
      <path
        d="M25.479,25.542c1.5-1.209,2.518-4.33,2.731-8.347.281-5.309-.893-10.54-2.791-12.438C23.789,3.127,19.7,2.073,15,2.073S6.211,3.127,4.581,4.757c-1.9,1.9-3.072,7.129-2.791,12.438C2,21.212,3.024,24.333,4.521,25.542,8.537,28.788,21.463,28.788,25.479,25.542ZM13.472,9.959a.75.75,0,0,1,1.5,0v3.89a.75.75,0,0,1-1.5,0Zm-7.778,0a.75.75,0,0,1,1.5,0v3.89a.75.75,0,1,1-1.5,0ZM5.042,18.1a.752.752,0,0,1,1.04-.209,9.157,9.157,0,0,0,4.251,1.43,9.1,9.1,0,0,0,4.251-1.43.75.75,0,0,1,.832,1.248,10.546,10.546,0,0,1-5.083,1.682A10.551,10.551,0,0,1,5.25,19.139.75.75,0,0,1,5.042,18.1Z"
        fill="none"
      /><path d="M3.579,26.709C5.82,28.521,10.41,29.427,15,29.427s9.18-.906,11.421-2.718c1.85-1.5,3.049-4.934,3.287-9.434.25-4.734-.653-11-3.228-13.578C24.177,1.394,19.04.573,15,.573S5.823,1.394,3.52,3.7C.945,6.272.042,12.541.292,17.275.53,21.775,1.729,25.214,3.579,26.709Zm1-21.952C6.211,3.127,10.3,2.073,15,2.073s8.789,1.054,10.419,2.684c1.9,1.9,3.072,7.129,2.791,12.438-.213,4.017-1.234,7.138-2.731,8.347-4.016,3.246-16.942,3.246-20.958,0C3.024,24.333,2,21.212,1.79,17.2,1.509,11.886,2.683,6.655,4.581,4.757Z" /><path d="M10.333,20.821a10.546,10.546,0,0,0,5.083-1.682.75.75,0,0,0-.832-1.248,9.1,9.1,0,0,1-4.251,1.43,9.157,9.157,0,0,1-4.251-1.43.75.75,0,0,0-.832,1.248A10.551,10.551,0,0,0,10.333,20.821Z" /><path d="M6.444,14.6a.75.75,0,0,0,.75-.75V9.959a.75.75,0,0,0-1.5,0v3.89A.75.75,0,0,0,6.444,14.6Z" /><path d="M14.222,14.6a.75.75,0,0,0,.75-.75V9.959a.75.75,0,0,0-1.5,0v3.89A.75.75,0,0,0,14.222,14.6Z" />
    </svg>
    """
  end

  def cmd_icon(%{command: "hd"} = assigns) do
    ~H"""
    <svg version="1.1" x="0px" y="0px" class={@class} viewBox="0 0 100 125">
      <g transform="translate(0.1185,12.409)">
        <path d="M 61.371,7.78 C 59.222,3.756 54.799,1.255 49.825,1.255 44.743,1.256 40.145,4.067 37.798,8.652 l -16.394,36.138 1.364,0.595 c 0.26,0.114 3.115,1.347 7.299,2.694 v 12.853 c 0,4.943 6.533,4.943 6.533,0 V 49.917 c 0.957,0.231 1.945,0.446 2.945,0.647 l -0.009,43.718 c 0,2.563 2.081,4.645 4.644,4.645 2.57,0 4.178,-2.081 4.178,-4.645 l 0.004,-29.896 2.667,0.015 -0.014,30.012 c 0,2.561 1.954,4.514 4.521,4.514 2.562,0 4.643,-2.081 4.643,-4.645 l 0.014,-43.441 c 0.909,-0.152 1.804,-0.312 2.667,-0.486 v 10.576 c 0,4.977 6.5,4.977 6.486,0 V 48.743 c 4.512,-1.333 7.433,-2.634 7.679,-2.746 l 1.334,-0.605 z m 0.164,39.833 -4.916,-25.397 -2.887,0.559 4.905,25.328 c -2.521,0.376 -5.195,0.623 -7.946,0.662 V 34.073 h -2.936 v 14.624 c -2.962,-0.172 -5.98,-0.642 -8.833,-1.265 L 42.778,28.148 39.899,27.572 36.066,46.745 C 31.318,45.517 27.324,44.047 25.323,43.256 L 40.441,9.928 c 1.812,-3.537 5.409,-5.736 9.384,-5.737 3.886,0 7.32,1.905 8.915,4.886 l 15.718,34.807 c -2.218,0.874 -6.976,2.579 -12.923,3.729 z" />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "label"} = assigns) do
    ~H"""
    <svg class={@class} xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100.0 100.0">
      <path d="m14.844 38.129c1.375 6.5586 5.6836 12.082 12.129 15.555 0.14844 0.082031 0.30859 0.11719 0.46875 0.11719 1.0234 0 1.3672-1.3711 0.46875-1.8555-5.9258-3.1914-9.8789-8.2422-11.133-14.223-0.98047-4.668-0.23828-9.4922 2.1484-13.941 0.19531-0.36328 0.14453-0.8125-0.13281-1.1211-2.1484-2.4258-4.1172-5.0234-5.8516-7.7148-0.40234-0.62891-0.33594-0.58984 0.20703-0.51953 3.5625 0.52344 7.1289 1.3242 10.598 2.375 0.32812 0.097657 0.68359 0.023438 0.9375-0.20312 3.9102-3.4531 8.832-5.8828 14.227-7.0195 14.145-2.9648 28.867 3.8711 31.59 16.875 1.0859 5.1875-0.011719 10.707-3.0938 15.535-0.29297 0.46094-0.15625 1.0703 0.30078 1.3633 0.45703 0.29297 1.0703 0.16016 1.3633-0.30078 3.3594-5.2656 4.5508-11.305 3.3594-17-2.9688-14.23-18.855-21.57-33.918-18.406-5.5391 1.168-10.613 3.6211-14.711 7.1094-3.3984-1-6.8828-1.7695-10.375-2.2852-2.4922-0.33203-3.4883 1.4453-2.1406 3.543 1.668 2.5898 3.543 5.0938 5.5859 7.4453-2.3594 4.6992-3.0586 9.7539-2.0273 14.672z" />
      <path d="m44.426 30.086c0.45703-0.8125 0.77344-1.7656 1.25-2.418 0.33594-0.46094 0.91406-0.86328 1.3672-0.73828 0.9375 0.26172 1.0938 2.3164 2.4414 3.5078 1.5977 1.4141 4.0234 0.90625 5.4453-0.40234 0.91016-0.83594 1.4805-1.918 1.9102-2.9648 1.2773 0.64844 2.9375 0.45313 3.8984-0.61328 0.36328-0.40625 0.33203-1.0273-0.070312-1.3945-0.40234-0.36328-1.0273-0.33203-1.3945 0.070312-0.48828 0.54297-1.6406 0.39844-1.9844-0.23828-0.40625-0.75391-1.5156-0.66406-1.8008 0.14062-0.4375 1.2461-0.93359 2.6602-1.8945 3.543-0.75 0.6875-2.082 1.0117-2.8008 0.375-0.35156-0.30859-0.60547-0.84766-0.87109-1.4141-0.45312-0.95703-1.0156-2.1445-2.3438-2.5156-1.2188-0.33984-2.5898 0.23828-3.4922 1.4727-0.64453 0.87891-0.91797 1.8008-1.375 2.6133-1.5547 2.7617-5.8789 3.9141-8.543 1.5 0.58984-1.8906 0.96094-3.8516 1.0938-5.8438 0.10938-1.6289-0.45703-2.7539-1.5508-3.0938-2.9609-0.91016-5.1328 5.0898-1.7891 9.4102-1.0508 2.8867-2.668 5.5625-4.7656 7.8477-0.36719 0.40234-0.34375 1.0273 0.058594 1.3945 0.39844 0.36719 1.0234 0.34375 1.3945-0.058594 2.0742-2.2578 3.7109-4.8711 4.8516-7.6875 3.6133 2.6055 8.9062 1.1641 10.965-2.4922zm-11.133-5.4453c-0.089844 1.3125-0.28906 2.6133-0.59375 3.8828-1.0859-2.5781-0.0625-4.8594 0.43359-4.9609 0.054688 0.050781 0.20313 0.39844 0.16016 1.0781z" />
      <path d="m81.625 81.012c1.4297-0.32812 3.043-0.49609 4.5117-0.91406 2.2344-0.63281 3.4102-1.7773 3.1484-3.0625-0.28516-1.4023-1.9883-1.9727-3.7891-2.5781-0.95312-0.32031-2.3906-0.80078-2.6523-1.2305-0.007812-0.41406 1.7539-2.043 4.668-5.2539 0.37109-0.39844 0.34766-1.0234-0.050781-1.3945-0.39844-0.37109-1.0234-0.34766-1.3945 0.050781l-3.9062 4.1953c-0.60547 0.65234-1.8672 2.0039-1.0039 3.4297 0.63281 1.0469 2.1289 1.5469 3.7109 2.0781 0.75781 0.25391 2.1289 0.71484 2.4375 1.0391-1.6016 1.7461-8.9883 0.98828-9.9531 4.1016-0.64844 2.0977 2.2734 3.2656 4.3594 3.9375 1.1328 0.36719 3.4961 1.125 3.6836 1.7305-0.21484 1.4922-12.828 5.3867-26.383 3.4258 0.46484-0.53516 0.5-0.57812 4.0898-5.9883 6.9297-10.305 6.8398-10.094 7.043-11.043 0.21484-1.0156-0.11719-1.8789-0.89453-2.5078-0.054688-0.64844-6.4453-22.645-6.8164-23.941-0.39844-1.375-0.71094-2.4609-2.3945-3.3594-4.043-2.1602-14.785-2.4688-24.734 3.418-1.6992 1.0117-3.6641 2.4648-3.7969 4.7773-0.0625 1.0586 0.24609 2.1758 0.36328 3.0586 0.59766 4.4492 0.36328 2.6758 3.2344 24.195-0.09375 0.48828 0.35156 2.2266 2.2695 3.3984 1.207 0.73047-4.2031-2.5391 15.238 9.1992 1.6016 0.96484 3.7891 0.71875 5.1641-0.12109 0.050781 0.42969 0.36719 0.79297 0.82031 0.85938 2.6562 0.39062 5.418 0.58203 8.1875 0.58203 5.6016 0 11.211-0.78516 15.949-2.2969 3.543-1.1289 5.0742-2.5547 4.5469-4.2383-0.53516-1.7109-3.2773-2.4766-5.1016-3.0664-2.5273-0.81641-2.9023-1.4297-2.9375-1.4297 0.089843-0.19531 0.78516-0.68359 2.3828-1.0508zm-22.52-35.551c0.94922 0.50781 1.0625 0.89062 1.4648 2.2852 6.3242 21.984 6.4219 21.766 6.5586 22.371-0.82812-0.16406-4.2969-0.42188-4.4336-0.42969-2.2656-8.3594-4.5312-16.715-6.793-25.074 0.13281 0.019531 0.26953 0.027344 0.40625 0.046875 0.83594 0.12109 1.9062 0.32422 2.7969 0.80078zm-11.668 26.25c-1.6836-8.5938-3.3633-17.188-5.0469-25.777 2.0859-0.71484 4.2383-1.1797 6.4102-1.4141 1.9844 8.5391 3.9648 17.082 5.9492 25.621-2.875 0.41797-5.0117 0.92188-7.3125 1.5703zm-13.613-17c-0.375-2.8945-1.2852-3.7109 3.0703-6.2109 1.3438 8.5273 2.6914 17.055 4.0352 25.582-1.7734 0.87891-3.2656 1.9297-4.1484 2.7617-0.015625-0.14062-2.6406-19.785-2.957-22.133zm4.5781 26.168c-1.4922-0.91016-2.1406-1.4961 1.6602-4.0547 4.7188-3.1094 16.715-5.8711 23.773-5.0547 0.96094 0.097657 3.0117 0.09375 3.9961 0.63281 0.40625 0.22656 0.44531 0.40625 0.37891 0.71875-0.097657 0.45703-0.21875 0.69141-6.8047 10.438-1.8203-0.71094-4.8555-0.55078-6.793-0.17188-2.5156 0.49219-4.9102 1.5508-6.9844 3.0586-0.22656-0.13672-9.0312-5.4492-9.2266-5.5664z" />
      <path d="m18.273 84.883 8.9062-2.8242c0.51953-0.16406 0.80859-0.71875 0.64062-1.2383-0.16406-0.51953-0.71875-0.80859-1.2383-0.64062l-8.9062 2.8242c-0.51953 0.16406-0.80859 0.71875-0.64062 1.2383 0.16406 0.51953 0.72266 0.80469 1.2383 0.64062z" />
      <path d="m19.871 72.176c-0.52734-0.13672-1.0664 0.17188-1.207 0.69922-0.14062 0.52734 0.17188 1.0664 0.69922 1.207 9.3789 2.4883 8.9023 2.4023 9.1484 2.4023 0.4375 0 0.83594-0.29297 0.95312-0.73047 0.14062-0.52734-0.17188-1.0664-0.69922-1.207z" />
      <path d="m26.512 89.477c0.57812 0 0.34766-0.10547 6.1797-4.2695 0.44141-0.32031 0.53516-0.9375 0.21484-1.3789s-0.94141-0.53906-1.3789-0.21484l-5.5977 4.082c-0.76563 0.55469-0.375 1.7812 0.58203 1.7812z" />
    </svg>
    """
  end

  def cmd_icon(%{command: "faceto"} = assigns) do
    ~H"""
    <svg version="1.1" class={@class} x="0px" y="0px" viewBox="0 0 108.079 135">
      <defs id="defs9">
        <linearGradient id="linearGradient156" inkscape:collect="always">
          <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop156" /><stop
            style="stop-color:#000000;stop-opacity:0;"
            offset="1"
            id="stop157"
          />
        </linearGradient>
        <clipPath clipPathUnits="userSpaceOnUse" id="clipPath52">
          <path
            id="path52"
            style="stroke-width:0.1;stroke-linecap:square;paint-order:markers fill stroke;stop-color:#000000"
            d="m -880.82767,-187.29769 h 1640.84 v 73.28155 h -1640.84 z"
          />
        </clipPath>
        <linearGradient id="linearGradient5" inkscape:collect="always">
          <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop5" /><stop
            style="stop-color:#000000;stop-opacity:0;"
            offset="1"
            id="stop6"
          />
        </linearGradient>
        <linearGradient
          inkscape:collect="always"
          xlink:href="#linearGradient5"
          id="linearGradient6"
          x1="26.005632"
          y1="71.487129"
          x2="45.576361"
          y2="71.487129"
          gradientUnits="userSpaceOnUse"
        /><linearGradient
          inkscape:collect="always"
          xlink:href="#linearGradient156"
          id="linearGradient157"
          x1="61.957266"
          y1="71.487129"
          x2="81.527994"
          y2="71.487129"
          gradientUnits="userSpaceOnUse"
        />
      </defs>
      <sodipodi:namedview
        id="namedview9"
        pagecolor="#ffffff"
        bordercolor="#000000"
        borderopacity="0.25"
        inkscape:showpageshadow="2"
        inkscape:pageopacity="0.0"
        inkscape:pagecheckerboard="0"
        inkscape:deskcolor="#d1d1d1"
        inkscape:zoom="4.2749845"
        inkscape:cx="45.49724"
        inkscape:cy="103.27523"
        inkscape:window-width="1920"
        inkscape:window-height="1053"
        inkscape:window-x="0"
        inkscape:window-y="27"
        inkscape:window-maximized="1"
        inkscape:current-layer="g9"
      />
      <g id="g9">
        <path
          d="M 70.900571,134.2394 70.43498,117.59663 c 2.433,-0.259 15.84402,-1.99763 18.66802,-2.64063 3.83,-0.909 7.83,-2.166 11.587,-4.721 1.862,-1.291 3.693,-2.972 5.11,-5.25 1.422,-2.255 2.298,-5.134 2.278,-8.024 -0.053,-5.276 -2.4,-9.929 -6.059,-14.563 -3.728,-4.662 -9.058,-9.544 -16.611,-15.17 -1.408,-1.045 -3.046,-1.551 -4.674,-1.57 0.852,1.768 1.343,3.74 1.343,5.83 0,3.939 -1.707,7.478 -4.409,9.946 5.822,4.466 9.655,8.18 11.832,10.931 1.202,1.506 1.898,2.707 2.24,3.489 0.181,0.415 0.263,0.698 0.301,0.874 -0.367,0.341 -1.481,1.064 -3.103,1.641 -2.697,1.01 -6.556,1.692 -9.766,2.008 -2.311,0.237 -4.291,0.315 -5.423,0.341 -0.13,-0.006 -0.258,-0.02 -0.39,-0.02 H 34.725 c -0.145,0 -0.286,0.014 -0.429,0.022 -2.153,-0.052 -7.281,-0.313 -11.727,-1.354 -2.695,-0.596 -5.084,-1.561 -6.082,-2.292 -0.203,-0.141 -0.351,-0.262 -0.449,-0.353 0.04,-0.177 0.125,-0.457 0.303,-0.865 0.883,-2.279 5.021,-7.529 14.069,-14.43 -2.696,-2.468 -4.4,-6.003 -4.4,-9.938 0,-2.089 0.491,-4.061 1.343,-5.829 -1.629,0.018 -3.267,0.524 -4.674,1.569 C 15.121,72.852 9.79,77.735 6.063,82.397 2.402,87.033 0.053,91.686 0,96.961 c -0.021,2.891 0.856,5.771 2.28,8.025 2.534,3.994 6.071,6.123 9.417,7.625 5.079,2.202 18.424804,4.00852 22.825804,4.52552 0.179,0.02 0.352,0.038 0.528,0.057 l 0.465591,16.64377 c 0.452063,16.16018 35.813285,15.74083 35.384176,0.40211 z"
          sodipodi:nodetypes="sccccccccscccccccssccccccsccccccccss"
        /><path d="m 51.405,65.156 h 5.278 c 2.273,-4.255 6.755,-7.159 11.905,-7.159 1.005,0 1.982,0.119 2.925,0.329 C 67.388,53.247 61.096,50 54.042,50 c -7.052,0 -13.345,3.247 -17.47,8.327 0.944,-0.21 1.922,-0.33 2.929,-0.33 5.15,0 9.631,2.904 11.904,7.159 z" /><path d="m 54.042,95 c 8.183,0 15.343,-4.368 19.28,-10.897 -1.476,0.556 -3.066,0.874 -4.734,0.874 -5.151,0 -9.634,-2.904 -11.905,-7.158 h -5.277 c -2.272,4.254 -6.755,7.158 -11.905,7.158 -1.669,0 -3.262,-0.319 -4.738,-0.875 C 38.7,90.632 45.861,95 54.042,95 Z" /><path
          d="m 21.62163,71.487128 c 0,7.8239 6.344211,14.168112 14.168112,14.168112 6.405709,0 11.813663,-4.254575 13.56695,-10.089242 h 9.373871 c 1.752032,5.834667 7.159986,10.089242 13.565695,10.089242 7.823901,0 14.168112,-6.344212 14.168112,-14.168112 0,-7.825156 -6.344211,-14.169368 -14.168112,-14.169368 -6.405709,0 -11.814918,4.254575 -13.568205,10.090497 H 49.357947 C 47.605915,61.572335 42.196706,57.31776 35.789742,57.31776 c -7.823901,0 -14.168112,6.344212 -14.168112,14.169368 z M 72.296258,61.148133 c 5.709163,0 10.338995,4.629831 10.338995,10.338995 0,5.709163 -4.629832,10.338994 -10.338995,10.338994 -5.710418,0 -10.338995,-4.629831 -10.338995,-10.338994 0,-5.709164 4.628577,-10.338995 10.338995,-10.338995 z M 46.129992,71.487128 c 0,5.709163 -4.628577,10.338994 -10.338995,10.338994 -5.709163,0 -10.338995,-4.629831 -10.338995,-10.338994 0,-5.710419 4.629832,-10.338995 10.338995,-10.338995 5.709163,0 10.338995,4.629831 10.338995,10.338995 z"
          style="stroke-width:1.25504"
        /><rect
          x="-24.254425"
          y="76.167076"
          transform="rotate(-45)"
          width="0.6309939"
          height="4.4249578"
          style="stroke-width:0.99999"
        /><rect
          x="-21.882996"
          y="76.167847"
          transform="rotate(-45)"
          width="0.63199395"
          height="4.4239573"
          style="stroke-width:0.99999"
        /><rect
          x="-22.990232"
          y="72.373276"
          transform="rotate(-44.94328)"
          width="0.63099426"
          height="12.05589"
          style="stroke-width:0.999991"
        /><rect
          x="-3.2646255"
          y="97.147186"
          transform="rotate(-44.991897)"
          width="0.63099396"
          height="4.4249578"
          style="stroke-width:0.99999"
        /><rect
          x="-0.79406404"
          y="97.146248"
          transform="rotate(-44.935177)"
          width="0.63199437"
          height="4.4239602"
          style="stroke-width:0.999991"
        /><rect
          x="-2.0913866"
          y="93.328133"
          transform="rotate(-45)"
          width="0.6309939"
          height="12.055884"
          style="stroke-width:0.99999"
        />
        <g id="g10" transform="matrix(-1.0452339,0,0,-1.0170483,-58.091457,32.046983)">
          <path
            d="m -60.117003,4.7367105 v 0 a 3.0001668,3.0001668 0 0 0 2.842658,-2.0401135 q 0.18001,-0.5550308 0.330019,-1.1175621 c 1.830101,-6.7053728 0.630035,-12.7957119 -3.285183,-16.7109289 a 14.75332,14.75332 0 0 0 -10.703095,-4.13273 26.941498,26.941498 0 0 0 -12.240681,3.337686 3.0001668,3.0001668 0 0 0 -0.750041,4.800266 v 0 a 3.0001668,3.0001668 0 0 0 3.555197,0.510029 21.03867,21.03867 0 0 1 9.435525,-2.647647 8.8804937,8.8804937 0 0 1 6.47286,2.377632 c 2.625146,2.6251458 3.000167,6.9678872 1.500083,11.75315327 a 3.0001668,3.0001668 0 0 0 2.842658,3.87021523 z"
            id="path1-3"
            style="stroke-width:0.750042"
          /><path
            d="m -67.789929,28.738045 a 3.0901718,3.0901718 0 0 0 2.70015,-3.127674 v -8.872993 a 6.0003336,6.0003336 0 0 0 -6.000334,-6.000334 h -8.865493 a 3.0901718,3.0901718 0 0 0 -3.135174,2.707651 3.0001668,3.0001668 0 0 0 3.000167,3.292683 h 5.445303 c -4.942775,3.870215 -10.260571,6.000333 -14.595812,6.000333 a 8.8804937,8.8804937 0 0 1 -6.47286,-2.377632 c -3.367687,-3.367687 -3.000167,-9.555531 0.255014,-15.8858831 a 3.0976722,3.0976722 0 0 0 -0.555031,-3.66020355 3.0001668,3.0001668 0 0 0 -4.725261,0.81754545 31.389245,31.389245 0 0 0 -2.49764,6.2628482 c -1.8301,6.705373 -0.63004,12.795711 3.285183,16.710929 a 14.75332,14.75332 0 0 0 10.710595,4.13273 c 5.782822,0 12.300684,-2.617646 18.151009,-7.155398 v 4.155231 a 3.0001668,3.0001668 0 0 0 3.300184,3.000167 z"
            id="path2-6"
            style="stroke-width:0.750042"
          /><path
            d="m -92.383796,-19.264624 a 3.0901718,3.0901718 0 0 0 -2.700151,3.127674 v 8.872993 a 6.0003336,6.0003336 0 0 0 6.000334,6.000334 h 8.865493 a 3.0901718,3.0901718 0 0 0 3.135174,-2.7076511 3.0001668,3.0001668 0 0 0 -3.000167,-3.2926829 h -5.445303 c 4.942775,-3.870215 10.260571,-6.000333 14.595812,-6.000333 a 8.8804937,8.8804937 0 0 1 6.47286,2.377632 c 3.367687,3.3676873 3.000167,9.5555306 -0.255014,15.8858832 a 3.0976722,3.0976722 0 0 0 0.555031,3.660204 3.0001668,3.0001668 0 0 0 4.725261,-0.817546 31.389245,31.389245 0 0 0 2.497641,-6.2628476 c 1.8301,-6.705374 0.63004,-12.7957116 -3.285184,-16.7109286 a 14.75332,14.75332 0 0 0 -10.710595,-4.132731 c -5.782822,0 -12.300684,2.617646 -18.151009,7.155398 v -4.155231 a 3.0001668,3.0001668 0 0 0 -3.300183,-3.000167 z"
            id="path2-6-5"
            style="stroke-width:0.750042"
          /><circle cx="-91.333611" cy="-6.5137897" id="circle3" style="stroke-width:0.5625" r="2.25" />
        </g>
        <g id="g10-8" transform="matrix(1.0452339,0,0,-1.0170483,166.11305,32.046983)">
          <path
            d="m -60.117003,4.7367105 v 0 a 3.0001668,3.0001668 0 0 0 2.842658,-2.0401135 q 0.18001,-0.5550308 0.330019,-1.1175621 c 1.830101,-6.7053728 0.630035,-12.7957119 -3.285183,-16.7109289 a 14.75332,14.75332 0 0 0 -10.703095,-4.13273 26.941498,26.941498 0 0 0 -12.240681,3.337686 3.0001668,3.0001668 0 0 0 -0.750041,4.800266 v 0 a 3.0001668,3.0001668 0 0 0 3.555197,0.510029 21.03867,21.03867 0 0 1 9.435525,-2.647647 8.8804937,8.8804937 0 0 1 6.47286,2.377632 c 2.625146,2.6251458 3.000167,6.9678872 1.500083,11.75315327 a 3.0001668,3.0001668 0 0 0 2.842658,3.87021523 z"
            id="path1-3-7"
            style="stroke-width:0.750042"
          /><path
            d="m -67.789929,28.738045 a 3.0901718,3.0901718 0 0 0 2.70015,-3.127674 v -8.872993 a 6.0003336,6.0003336 0 0 0 -6.000334,-6.000334 h -8.865493 a 3.0901718,3.0901718 0 0 0 -3.135174,2.707651 3.0001668,3.0001668 0 0 0 3.000167,3.292683 h 5.445303 c -4.942775,3.870215 -10.260571,6.000333 -14.595812,6.000333 a 8.8804937,8.8804937 0 0 1 -6.47286,-2.377632 c -3.367687,-3.367687 -3.000167,-9.555531 0.255014,-15.8858831 a 3.0976722,3.0976722 0 0 0 -0.555031,-3.66020355 3.0001668,3.0001668 0 0 0 -4.725261,0.81754545 31.389245,31.389245 0 0 0 -2.49764,6.2628482 c -1.8301,6.705373 -0.63004,12.795711 3.285183,16.710929 a 14.75332,14.75332 0 0 0 10.710595,4.13273 c 5.782822,0 12.300684,-2.617646 18.151009,-7.155398 v 4.155231 a 3.0001668,3.0001668 0 0 0 3.300184,3.000167 z"
            id="path2-6-9"
            style="stroke-width:0.750042"
          /><path
            d="m -92.383797,-19.264624 a 3.0901718,3.0901718 0 0 0 -2.70015,3.127674 v 8.8729931 a 6.0003336,6.0003336 0 0 0 6.000335,6.000334 h 8.865492 a 3.0901718,3.0901718 0 0 0 3.135174,-2.707651 3.0001668,3.0001668 0 0 0 -3.000167,-3.292683 h -5.445303 c 4.942775,-3.8702151 10.260571,-6.0003331 14.595812,-6.0003331 a 8.8804937,8.8804937 0 0 1 6.47286,2.377632 c 3.367687,3.3676864 3.000167,9.5555308 -0.255014,15.885883 a 3.0976722,3.0976722 0 0 0 0.555031,3.6602038 3.0001668,3.0001668 0 0 0 4.725261,-0.817546 31.389245,31.389245 0 0 0 2.49764,-6.2628481 c 1.8301,-6.7053729 0.63004,-12.7957107 -3.285183,-16.7109287 a 14.75332,14.75332 0 0 0 -10.710595,-4.13273 c -5.782822,0 -12.300684,2.617646 -18.151008,7.155397 v -4.15523 a 3.0001668,3.0001668 0 0 0 -3.300185,-3.000167 z"
            id="path2-6-9-6"
            style="stroke-width:0.750042"
          /><circle
            cx="-91.333611"
            cy="-6.5137897"
            id="circle3-0"
            style="stroke-width:0.5625"
            r="2.25"
          />
        </g>
        <ellipse
          style="opacity:0.25207;mix-blend-mode:normal;fill:url(#linearGradient6);stroke-width:0.232;stroke-linecap:round;stroke-miterlimit:4.3;stroke-dashoffset:180.559;stroke-dasharray:none"
          id="path5"
          cx="35.790997"
          cy="71.487129"
          rx="9.7853642"
          ry="10.338996"
        /><ellipse
          style="opacity:0.2279022;fill:url(#linearGradient157);stroke-width:0.231959;stroke-linecap:round;stroke-miterlimit:4.3;stroke-dashoffset:180.559;fill-opacity:1"
          id="path5-5"
          cx="71.74263"
          cy="71.487129"
          rx="9.7853642"
          ry="10.338996"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "show"} = assigns) do
    ~H"""
    <svg class={@class} x="0px" y="0px" viewBox="0 0 100.018 296.48" xml:space="preserve">
      <g>
        <path d="M8.574,146.43c0.158,0,0.316-0.005,0.476-0.015c4.411-0.259,7.776-4.043,7.52-8.454C16.177,131.308,16,125.251,16,119.738   c-0.033-24.215,3.498-37.819,6.964-44.919V224.82c0,6.83,5.537,12.363,12.363,12.363c6.828,0,12.365-5.533,12.365-12.363v-90.271   h4.635v90.271c0,6.83,5.537,12.363,12.363,12.363c6.828,0,12.365-5.533,12.365-12.363V74.86c0.593,1.217,1.191,2.612,1.782,4.24   c2.818,7.811,5.188,20.63,5.179,40.638c0,5.515-0.177,11.572-0.564,18.225c-0.259,4.408,3.109,8.194,7.52,8.451   c0.159,0.01,0.318,0.014,0.476,0.015c4.205,0,7.729-3.282,7.978-7.534c0.402-6.936,0.591-13.301,0.591-19.157   c-0.041-30.184-4.861-46.889-11.435-56.931c-3.285-4.987-7.127-8.184-10.679-9.955c-3.354-1.692-6.307-2.095-8.12-2.13   c-0.152-0.01-0.302-0.023-0.456-0.023H30.693c-0.154,0-0.304,0.014-0.455,0.023c-1.813,0.034-4.766,0.437-8.125,2.13   c-5.377,2.668-11.178,8.502-15.235,18.84C2.772,82.071,0.015,97.077,0,119.738c0.002,5.856,0.189,12.224,0.596,19.159   C0.845,143.147,4.37,146.429,8.574,146.43z" /><circle
          cx="50.011"
          cy="22.5"
          r="22.5"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "goto"} = assigns) do
    ~H"""
    <svg class={@class} x="0px" y="0px" viewBox="0 0 80 100">
      <path
        d="m 81.266632,43.46307 -2.250366,2.250366 c 0.129288,-3.652954 0.42147,-7.16106 0.855102,-10.474548 0.116074,-0.0686 0.228493,-0.144001 0.346268,-0.210114 0.668854,-0.376087 1.328949,-0.671211 1.972633,-0.904148 -0.432327,2.972519 -0.742164,6.106697 -0.923637,9.338444 z m 1.521019,25.965862 C 82.111008,65.801476 81.619499,61.872753 81.343338,57.760731 l -2.276001,-2.276264 c 0.288002,6.341529 1.065346,12.226738 2.223358,17.342903 z m -14.198456,-10.1721 c 0.883683,0.624126 2.058434,0.644138 2.96212,0.04832 l 7.28904,-4.804818 0.187424,0.187424 2.253502,2.253502 5.271148,5.271149 -3.595535,8.162845 -1.468704,3.334282 -0.202072,0.458679 c -0.449326,1.021142 -0.197884,2.174775 0.546379,2.919098 0.198013,0.197945 0.436111,0.36039 0.699653,0.490265 0.03492,0.0172 0.06494,0.04028 0.100907,0.05611 0.716072,0.315002 1.492378,0.27623 2.151619,-0.02603 0.564224,-0.258636 1.043899,-0.707702 1.313911,-1.320907 l 5.336548,-12.117722 c 0.006,-0.0461 0.01301,-0.09064 0.0189,-0.136871 l 0.198799,-1.681431 0.0973,-0.921806 0.08371,-0.89251 c 0.01138,-0.121437 0.0206,-0.245163 0.03159,-0.366928 -0.09411,-0.142498 -0.199394,-0.279041 -0.323578,-0.403225 l -4.415192,-4.415195 5.191887,-5.191891 -0.0013,-0.53323 c -0.0021,-0.770614 -0.01151,-1.538086 -0.02825,-2.302421 l -0.02825,-0.865303 c -0.01778,-0.599018 -0.03767,-1.19542 -0.06383,-1.787632 l -0.05336,-1.000805 c -0.03034,-0.540943 -0.06173,-1.081368 -0.0994,-1.618653 l -0.07638,-1.030098 c -0.04081,-0.525249 -0.0858,-1.045791 -0.133927,-1.56372 l -0.09626,-0.998184 C 91.683174,37.926025 91.62249,37.40025 91.560753,36.876045 l -0.10672,-0.909771 c -0.07743,-0.603203 -0.161133,-1.19751 -0.247978,-1.789726 l -0.08789,-0.626221 c -0.120323,-0.790493 -0.250069,-1.569475 -0.387138,-2.334856 l -0.13707,-0.715156 -0.07585,-0.366604 c -2.44217,-1.02768 -4.951172,-1.318098 -7.495232,-0.853337 -0.768387,0.140402 -1.539787,0.348946 -2.313408,0.625632 -1.751266,0.626417 -3.513138,1.58942 -5.275329,2.915039 -0.864388,0.659965 -1.03167,1.886837 -0.381058,2.760509 0.05579,0.07436 0.120849,0.139424 0.185921,0.204491 0.687751,0.687824 1.784553,0.78075 2.574592,0.176567 0.72451,-0.544479 1.43705,-1.005577 2.14135,-1.40115 0.783821,-0.440174 1.556465,-0.789772 2.319298,-1.045139 2.939689,-0.984062 5.740417,-0.6017 8.523819,1.17292 l -9.580796,9.580799 -2.234085,2.234082 -4.060234,4.060234 0.0054,0.0054 -0.0089,-0.0056 -1.655014,1.314766 -3.104554,2.046463 -1.914566,-1.359558 -2.164894,-1.5373 -6.572506,-4.667229 c -1.183643,-0.840454 -2.824203,-0.562263 -3.664722,0.621315 -0.754265,1.061097 -0.608173,2.488862 0.281849,3.378823 0.102997,0.102997 0.215999,0.19965 0.339466,0.286819 l 9.852577,6.996525 2.265274,1.608646 c 0.0021,0.0015 0.0046,0.0019 0.0068,0.0034 z M 94.96907,47.508656 C 94.854889,41.902882 94.3573,36.600407 93.55262,31.802195 92.155388,23.470306 89.835251,16.669704 86.964287,12.553558 85.025002,9.7785291 82.849968,8.2142858 80.535713,8.2142858 c -7.992882,0 -14.464287,18.7071002 -14.464287,41.7857132 0,0.123203 0.002,0.244904 0.0032,0.367321 l 2.162674,1.535866 C 68.22612,51.271996 68.214287,50.641522 68.214287,50 c 0,-22.689253 6.50515,-39.642857 12.321426,-39.642857 1.883957,0 3.580567,1.861922 4.671021,3.422307 0.175911,0.252228 0.344764,0.53578 0.515899,0.809327 -2.02246,3.661129 -3.704742,8.722425 -4.89035,14.717821 0.695473,-0.23346 1.397812,-0.425589 2.094269,-0.553109 0.0718,-0.01314 0.143997,-0.01766 0.215866,-0.02962 0.980003,-4.664023 2.272537,-8.746621 3.818863,-11.906434 0.001,-0.0021 0.002,-0.0045 0.003,-0.0066 0.228882,0.467377 0.452141,0.955223 0.669907,1.461575 0.01804,0.04198 0.03472,0.08815 0.0527,0.130398 0.214951,0.505174 0.424416,1.02866 0.627923,1.569933 0.07396,0.196773 0.144195,0.40414 0.216651,0.605489 0.144135,0.40061 0.286889,0.804488 0.424805,1.222622 0.07991,0.242157 0.156815,0.491312 0.234505,0.739157 0.12458,0.397209 0.247131,0.798994 0.366081,1.210262 0.07716,0.26668 0.152695,0.53637 0.227448,0.808804 0.114173,0.416042 0.225021,0.839081 0.333442,1.26794 0.06985,0.276226 0.139687,0.551606 0.207176,0.832999 0.109536,0.456716 0.213967,0.923048 0.317032,1.392713 0.0582,0.265371 0.118302,0.52669 0.174408,0.796051 0.105484,0.506222 0.204422,1.023625 0.302323,1.543121 0.0115,0.06088 0.02348,0.120785 0.03485,0.181862 0.0342,0.183695 0.07161,0.36183 0.104828,0.547095 0.138244,0.770023 0.268051,1.55352 0.389427,2.349178 0.03165,0.207233 0.05866,0.420357 0.08913,0.629227 0.08672,0.594963 0.171074,1.192802 0.248238,1.800319 0.03838,0.302189 0.07233,0.609154 0.108291,0.914219 0.06207,0.526757 0.122292,1.055146 0.177025,1.589947 0.03413,0.333118 0.06533,0.668594 0.09653,1.004658 0.04839,0.520412 0.09351,1.043308 0.134842,1.570327 0.02701,0.344239 0.05303,0.688672 0.07697,1.035462 0.03728,0.539375 0.06945,1.082218 0.09927,1.62735 0.01831,0.33469 0.03767,0.668071 0.0531,1.004657 0.02734,0.595093 0.04735,1.194306 0.06559,1.794892 0.0088,0.29068 0.02086,0.579269 0.02759,0.871124 0.01753,0.767082 0.02629,1.538414 0.02878,2.312363 3.89e-4,0.125556 0.004,0.24974 0.004,0.37543 0,0.900616 -0.01236,1.796265 -0.03276,2.687794 -0.0067,0.291855 -0.01877,0.580444 -0.0276,0.871124 -0.01824,0.600586 -0.03825,1.199799 -0.06559,1.794891 -0.01543,0.336651 -0.03479,0.670033 -0.0531,1.004658 -0.02982,0.545132 -0.062,1.087975 -0.09927,1.62735 -0.02399,0.347118 -0.05003,0.691944 -0.07703,1.03651 -0.0412,0.52512 -0.08612,1.046185 -0.134315,1.564766 -0.02472,0.265896 -0.04689,0.533818 -0.07338,0.797882 -0.0073,0.0722 -0.01648,0.142235 -0.02386,0.214364 -0.02779,0.27106 -0.05519,0.542121 -0.08488,0.811222 -0.02871,0.260532 -0.06134,0.516555 -0.09181,0.775127 -0.03597,0.305065 -0.06991,0.611897 -0.108292,0.914089 -0.07677,0.604706 -0.160743,1.19986 -0.247062,1.792145 -0.03094,0.212402 -0.05846,0.429115 -0.09064,0.639824 -0.121177,0.794411 -0.250793,1.576729 -0.388839,2.345642 -0.03413,0.19043 -0.07259,0.373665 -0.107773,0.562462 -0.107308,0.575935 -0.21711,1.147484 -0.33371,1.707199 -0.05722,0.274788 -0.118431,0.541466 -0.177872,0.812134 -0.101821,0.463715 -0.204948,0.924164 -0.313041,1.375252 -0.06866,0.286499 -0.139755,0.566978 -0.210968,0.848175 -0.10672,0.42173 -0.215668,0.837768 -0.327889,1.247009 -0.07677,0.279961 -0.154335,0.556908 -0.233589,0.83078 -0.116341,0.401848 -0.236145,0.79435 -0.357773,1.182732 -0.08025,0.256149 -0.159698,0.513542 -0.242225,0.763679 -0.134583,0.407867 -0.273873,0.801605 -0.414406,1.192673 -0.0756,0.210502 -0.148972,0.426895 -0.226334,0.632431 -0.195984,0.520866 -0.397796,1.02362 -0.604309,1.511078 -0.0259,0.06101 -0.04997,0.127456 -0.07599,0.187942 -0.217308,0.505173 -0.440178,0.991776 -0.668533,1.458176 -9.84e-4,-0.002 -0.0019,-0.0043 -0.0029,-0.0063 -0.729744,-1.491127 -1.397225,-3.20375 -2.008339,-5.069534 -0.405975,0.176956 -0.845688,0.275444 -1.280502,0.275444 -0.317879,0 -0.625893,-0.06409 -0.926903,-0.159043 0.876289,2.756653 1.873367,5.183846 2.976967,7.181664 -0.170807,0.272888 -0.339264,0.555916 -0.514786,0.807625 -1.091568,1.56195 -2.788239,3.423942 -4.672135,3.423942 -4.9309,0 -10.350235,-12.193977 -11.887794,-29.728679 -0.126083,-0.06585 -0.250069,-0.136807 -0.367714,-0.220055 l -1.913391,-1.358444 c 1.337456,19.0807 7.165512,33.450031 14.168899,33.450031 2.314255,0 4.489289,-1.564308 6.428574,-4.339271 C 91.732155,80.610725 95,66.403572 95,50 95,49.162163 94.985878,48.334328 94.96907,47.508656 Z M 25.440782,35.198734 c 2.127163,-2.127163 2.127163,-5.576019 0,-7.70318 -2.127227,-2.127228 -5.576019,-2.127228 -7.703247,0 -2.127162,2.127161 -2.127162,5.576017 0,7.70318 2.127228,2.127163 5.57602,2.127163 7.703247,0 z m -7.34946,0.994133 2.433601,2.433407 c -0.04682,-0.479671 -0.0996,-0.951168 -0.152172,-1.423645 -0.827507,-0.170158 -1.597401,-0.525448 -2.28313,-1.024151 5.89e-4,0.0048 0.0011,0.0096 0.0017,0.01439 z m 13.624027,9.775479 c 0.04558,1.321888 0.07037,2.665752 0.07037,4.031654 0,22.689255 -6.50515,39.64286 -12.32143,39.64286 -1.883892,0 -3.580562,-1.861992 -4.67102,-3.422309 C 14.617353,85.968323 14.448504,85.684769 14.277366,85.411224 18.359114,78.022461 21.071428,64.931076 21.071428,50 c 0,-1.686207 -0.04283,-3.342003 -0.109993,-4.976219 -0.754591,-0.399693 -1.493683,-0.868637 -2.21368,-1.415993 0.115356,2.097931 0.180817,4.231831 0.180817,6.392212 0,13.303593 -2.258803,25.76281 -5.88985,33.182503 -0.229012,-0.467705 -0.454755,-0.947701 -0.67265,-1.454445 -0.01883,-0.04388 -0.03643,-0.09214 -0.05519,-0.136345 -0.214168,-0.503479 -0.422777,-1.025131 -0.625632,-1.564507 -0.07409,-0.196838 -0.144392,-0.404533 -0.216915,-0.606018 -0.143934,-0.400146 -0.286625,-0.803764 -0.424411,-1.221443 -0.08004,-0.242676 -0.157276,-0.492752 -0.23516,-0.74118 C 10.684443,77.062141 10.56209,76.660873 10.443334,76.250389 10.366167,75.983581 10.29044,75.713303 10.215693,75.440803 10.101515,75.024635 9.9905395,74.601135 9.8820495,74.172081 9.8123388,73.896507 9.7424974,73.621262 9.6752061,73.340584 9.5657348,72.883865 9.4611682,72.417274 9.3581065,71.947678 9.29984,71.682175 9.2397413,71.420265 9.183568,71.150772 9.0658569,70.585701 8.9549475,70.008392 8.8465881,69.426773 8.8123865,69.242943 8.7749157,69.064552 8.7416296,68.879089 8.603385,68.109001 8.4735765,67.32531 8.3521376,66.529518 8.3206835,66.323326 8.2936755,66.110992 8.2633973,65.903168 8.176488,65.307419 8.0919972,64.708336 8.0147658,64.099968 7.9765101,63.79837 7.9425703,63.491734 7.9066687,63.187256 7.8445435,62.660175 7.7842493,62.131065 7.7294488,61.595806 7.6954432,61.26321 7.6641846,60.92767 7.6329913,60.592064 7.5846643,60.071587 7.5394111,59.548164 7.4980817,59.021149 7.4710736,58.677174 7.4451118,58.332409 7.4211774,57.985817 7.3839026,57.446571 7.351728,56.903404 7.321908,56.358467 7.3036628,56.023907 7.2842407,55.690266 7.2688074,55.353809 7.2414727,54.758846 7.2214618,54.159435 7.2032165,53.558918 7.1943883,53.268303 7.1823554,52.979584 7.17562,52.687794 7.1552167,51.796265 7.1428571,50.900551 7.1428571,50 c 0,-0.900551 0.01236,-1.796265 0.032763,-2.687794 0.00674,-0.29179 0.018768,-0.580509 0.027597,-0.871124 0.018245,-0.600517 0.038256,-1.199863 0.065591,-1.794891 0.015433,-0.336457 0.034855,-0.670098 0.053101,-1.004658 0.02982,-0.544937 0.061995,-1.088104 0.099269,-1.62735 0.024,-0.346985 0.049962,-0.692139 0.077035,-1.03651 0.041199,-0.524922 0.086191,-1.046315 0.1343212,-1.564766 0.031389,-0.338482 0.06291,-0.676834 0.097242,-1.01231 0.054605,-0.53323 0.1147027,-1.060315 0.1766315,-1.585499 0.035967,-0.305329 0.070038,-0.612881 0.1084247,-0.915329 0.076774,-0.604317 0.160675,-1.199276 0.2469311,-1.791165 0.030931,-0.212467 0.058528,-0.429515 0.090702,-0.640346 0.1211767,-0.79435 0.2507896,-1.576931 0.3888378,-2.345778 0.034136,-0.190168 0.072457,-0.373142 0.1076403,-0.561676 0.1074429,-0.576194 0.2172413,-1.148332 0.3339052,-1.708309 0.057156,-0.2742 0.1182995,-0.540815 0.1776123,-0.810896 0.10182,-0.463844 0.2051439,-0.924812 0.313241,-1.376037 0.068534,-0.285906 0.1396837,-0.56645 0.2107029,-0.847124 0.1070509,-0.423039 0.2164565,-0.840716 0.3290005,-1.251198 0.07619,-0.277668 0.15322,-0.552979 0.231891,-0.824696 0.116729,-0.40329 0.236925,-0.797489 0.359017,-1.187176 0.08004,-0.255498 0.159498,-0.51263 0.24183,-0.762111 0.134713,-0.408325 0.274331,-0.802853 0.414995,-1.194437 0.07534,-0.209656 0.148578,-0.425589 0.225547,-0.630274 0.196053,-0.521198 0.398058,-1.024345 0.604706,-1.512125 0.02576,-0.06082 0.0499,-0.127127 0.07579,-0.187422 0.217504,-0.505697 0.442854,-0.984976 0.671475,-1.45183 1.458435,2.980042 2.690473,6.782292 3.648638,11.116465 0.20063,-0.286823 0.418591,-0.5639 0.671276,-0.816586 0.345547,-0.345546 0.734908,-0.625894 1.142252,-0.873283 -1.118055,-4.665003 -2.556544,-8.632376 -4.223066,-11.655708 0.170681,-0.272697 0.339007,-0.55553 0.514396,-0.807038 1.09157,-1.561955 2.788172,-3.423877 4.672131,-3.423877 4.995642,0 10.495476,12.512447 11.949137,30.418591 0.672848,-0.271778 1.364922,-0.611832 2.076481,-1.012966 C 31.910292,21.634608 26.233761,8.2142857 19.464285,8.2142857 c -2.314256,0 -4.489287,1.5642433 -6.42857,4.3392723 C 8.2678442,19.389278 5,33.596432 5,50 c 0,16.403568 3.2678442,30.610725 8.035714,37.446442 1.939284,2.774963 4.114314,4.339271 6.428571,4.339271 7.992882,0 14.464285,-18.707168 14.464285,-41.785713 0,-1.627613 -0.03557,-3.230438 -0.09822,-4.809528 -0.709797,0.306377 -1.415405,0.56887 -2.115,0.777874 z m 5.15795,-5.274811 c -0.557686,-0.929459 -1.765919,-1.24551 -2.704792,-0.697109 -5.201439,3.079246 -9.613169,2.934593 -13.578385,-0.547421 L 19.817745,38.676628 17.81019,36.669071 15.486516,34.345398 14.705767,33.564648 C 14.01801,32.93261 13.311615,32.35635 12.586648,31.854445 c -0.02661,-0.0187 -0.05362,-0.03374 -0.08024,-0.05225 v 15.706461 h 1.416451 l 4.686651,-4.686653 c 5.111976,4.163952 11.125488,4.377727 17.566679,0.576259 0.929523,-0.557686 1.245445,-1.765987 0.697109,-2.704727 z M 64.5,40 c 0,-0.828613 -0.671875,-1.5 -1.5,-1.5 H 47 c -0.828613,0 -1.5,0.671387 -1.5,1.5 0,0.828613 0.671387,1.5 1.5,1.5 h 16 c 0.828125,0 1.5,-0.671387 1.5,-1.5 z m -12,9.5 C 52.5,48.671387 51.828125,48 51,48 H 41 c -0.828613,0 -1.5,0.671387 -1.5,1.5 0,0.828613 0.671387,1.5 1.5,1.5 h 10 c 0.828125,0 1.5,-0.671387 1.5,-1.5 z"
        sodipodi:nodetypes="cccccccccccccccccccccscccccccccsccccccccccccccccccccccccccccccccccccccscccccccssccsscccscccsccccccssscccscccscccscscscsscscsscssccscscccssscsccscccccccscccscccscsccssccccccccssccsccscccccscccccscccscccccccccscscsccccccccccccccccccccccscccscccsccscscssccccccccccccccccssssssssssssss"
      />
      <g transform="matrix(0.52279635,0,0,0.52279635,24.160182,53.560182)">
        <switch id="switch3" transform="translate(-7.6511626)">
          <foreignObject
            requiredExtensions="http://ns.adobe.com/AdobeIllustrator/10.0/"
            x="0"
            y="0"
            width="1"
            height="1"
          />
          <g i:extraneous="self">
            <g transform="matrix(0.74747657,0,0,0.74747657,12.052335,4.3181514)">
              <path d="m 68.3,67.6 c -1.2,2.1 -2.5,4.1 -3.8,6 8.4,1.9 13.4,5.2 13.4,7.7 0,3.7 -11.1,9.3 -27.9,9.3 -16.8,0 -27.9,-5.6 -27.9,-9.3 0,-2.5 5,-5.7 13.4,-7.7 -1.3,-1.9 -2.6,-3.9 -3.8,-6 -9.6,2.5 -16.5,7 -16.5,13.7 0,10.6 17.5,16.2 34.8,16.2 17.3,0 34.8,-5.6 34.8,-16.2 0,-6.7 -6.9,-11.2 -16.5,-13.7 z" /><path d="M 53.1,78.5 C 60.2,68 77.2,41.7 77.2,29.8 77.2,14.7 65,2.5 50,2.5 35,2.5 22.7,14.7 22.7,29.8 c 0,11.9 17.1,38.2 24.2,48.7 1.5,2.1 4.7,2.1 6.2,0 z M 37.3,29.8 c 0,-7 5.7,-12.7 12.7,-12.7 7,0 12.7,5.7 12.7,12.7 0,7 -5.7,12.6 -12.7,12.6 -7,0 -12.7,-5.7 -12.7,-12.6 z" />
            </g>
          </g>
        </switch>
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "home"} = assigns) do
    ~H"""
    <svg class={@class} version="1.1" viewBox="-5.0 -10.0 110.0 135.0">
      <path
        d="M25.479,25.542c1.5-1.209,2.518-4.33,2.731-8.347.281-5.309-.893-10.54-2.791-12.438C23.789,3.127,19.7,2.073,15,2.073S6.211,3.127,4.581,4.757c-1.9,1.9-3.072,7.129-2.791,12.438C2,21.212,3.024,24.333,4.521,25.542,8.537,28.788,21.463,28.788,25.479,25.542ZM13.472,9.959a.75.75,0,0,1,1.5,0v3.89a.75.75,0,0,1-1.5,0Zm-7.778,0a.75.75,0,0,1,1.5,0v3.89a.75.75,0,1,1-1.5,0ZM5.042,18.1a.752.752,0,0,1,1.04-.209,9.157,9.157,0,0,0,4.251,1.43,9.1,9.1,0,0,0,4.251-1.43.75.75,0,0,1,.832,1.248,10.546,10.546,0,0,1-5.083,1.682A10.551,10.551,0,0,1,5.25,19.139.75.75,0,0,1,5.042,18.1Z"
        fill="none"
      /><path
        d="M 85.855,34.234 50.714,13.945 c -0.44141,-0.25391 -0.98828,-0.25391 -1.4297,0 l -35.141,20.289 c -0.44141,0.25391 -0.71484,0.72656 -0.71484,1.2383 v 50.953 h -0.91797 0.0039 c -1.168,-0.01953 -2.2969,0.43359 -3.1289,1.2539 -0.83203,0.81641 -1.2969,1.9375 -1.2969,3.1055 0,1.168 0.46484,2.2852 1.2969,3.1055 0.83206,0.8203 1.9609,1.2695 3.1289,1.2539 h 74.969 c 2.3828,-0.03516 4.2969,-1.9766 4.2969,-4.3594 0,-2.3828 -1.9141,-4.3242 -4.2969,-4.3594 h -0.91797 l 0.0039,-50.953 c 0,-0.51172 -0.27344,-0.98438 -0.71484,-1.2383 z M 16.285,36.3004 50,16.8314 83.715,36.3004 v 50.125 h -67.43 z m 72.699,54.488 c 0,0.82422 -0.67188,1.4961 -1.5,1.5 H 12.515 c -0.83203,0 -1.5078,-0.67578 -1.5078,-1.5039 0,-0.83203 0.67578,-1.5078 1.5078,-1.5078 h 74.969 c 0.83203,0.0039 1.5039,0.67578 1.5039,1.5078 z M 6.964,41.0074 c 0.37891,0 0.74219,-0.14844 1.0078,-0.41797 0.26953,-0.26953 0.41797,-0.63281 0.41797,-1.0117 v -7.625 l 41.609,-24.02 20.512,11.84 c 0.02344,0.01562 0.04687,0.03516 0.07422,0.05078 l 8.6484,4.9922 c 0.02344,0.01563 0.05078,0.02734 0.07813,0.03906 l 12.301,7.1016 -0.0039,7.6211 c -0.0078,0.38672 0.13672,0.76172 0.40625,1.0352 0.26953,0.27734 0.63672,0.43359 1.0234,0.43359 0.38281,0 0.75391,-0.15625 1.0234,-0.43359 0.26953,-0.27344 0.41406,-0.64844 0.40234,-1.0352 v -8.4453 c 0,-0.51172 -0.26953,-0.98437 -0.71094,-1.2383 l -12.379,-7.1445 v -12.629 c 0,-0.78906 -0.64062,-1.4258 -1.4297,-1.4258 h -8.6445 c -0.37891,0 -0.74219,0.14844 -1.0117,0.41797 -0.26562,0.26562 -0.41797,0.62891 -0.41797,1.0078 v 5.9883 l -19.156,-11.062 c -0.44141,-0.25391 -0.98828,-0.25391 -1.4297,0 l -43.035,24.848 c -0.44141,0.25391 -0.71484,0.72656 -0.71484,1.2344 v 8.4492 c 0,0.37891 0.15234,0.74219 0.41797,1.0117 0.26953,0.26953 0.63281,0.41797 1.0117,0.41797 z m 65.762,-29.457 h 5.793 v 9.5508 l -5.793,-3.3438 z"
        sodipodi:nodetypes="ccccsccccssccscccccccccccccssscccccscccccccccsccsccsssssccccsscccccccc"
      />
      <g transform="translate(33.582621,35.878002)">
        <path
          d="m 15,2.073 c -4.7,0 -8.789,1.054 -10.419,2.684 -1.9,1.9 -3.072,7.128 -2.791,12.437 0.21,4.017 1.234,7.138 2.732,8.348 4.015,3.246 16.941,3.246 20.957,0 1.5,-1.209 2.518,-4.33 2.731,-8.347 C 28.491,11.886 27.318,6.655 25.42,4.757 23.789,3.127 19.7,2.073 15,2.073 Z m 3.139,3.609 a 0.75,0.75 0 1 1 1.5,0 v 3.889 a 0.75,0.75 0 1 1 -1.5,0 z m -7.778,0 a 0.75,0.75 0 1 1 1.5,0 v 3.889 a 0.75,0.75 0 1 1 -1.5,0 z m 9.722,9.179 A 10.546,10.546 0 0 1 15,16.543 10.546,10.546 0 0 1 9.917,14.861 a 0.75,0.75 0 0 1 0.831,-1.248 9.163,9.163 0 0 0 4.252,1.43 9.1,9.1 0 0 0 4.251,-1.43 0.75,0.75 0 1 1 0.832,1.248 z"
          fill="none"
        />
        <g transform="matrix(1.3255243,0,0,1.3255243,-3.0938243,1.8261913)">
          <path d="m 15,0.573 c -4.04,0 -9.177,0.821 -11.48,3.124 -2.575,2.574 -3.478,8.843 -3.228,13.576 0.238,4.5 1.436,7.941 3.287,9.436 2.241,1.812 6.831,2.718 11.421,2.718 4.59,0 9.18,-0.906 11.421,-2.718 1.851,-1.5 3.049,-4.934 3.287,-9.434 C 29.959,12.541 29.055,6.275 26.48,3.697 24.177,1.394 19.04,0.573 15,0.573 Z M 28.21,17.2 c -0.213,4.017 -1.234,7.138 -2.731,8.347 -4.016,3.246 -16.942,3.246 -20.957,0 C 3.024,24.332 2,21.211 1.79,17.194 1.509,11.885 2.683,6.655 4.581,4.757 6.211,3.127 10.3,2.073 15,2.073 c 4.7,0 8.789,1.054 10.42,2.684 1.898,1.898 3.071,7.129 2.79,12.443 z" /><path d="M 19.251,13.613 A 9.1,9.1 0 0 1 15,15.043 9.163,9.163 0 0 1 10.748,13.613 0.75,0.75 0 0 0 9.917,14.861 10.546,10.546 0 0 0 15,16.543 10.546,10.546 0 0 0 20.083,14.861 0.75,0.75 0 1 0 19.251,13.613 Z" /><path d="m 11.111,10.321 a 0.75,0.75 0 0 0 0.75,-0.75 V 5.682 a 0.75,0.75 0 1 0 -1.5,0 v 3.889 a 0.75,0.75 0 0 0 0.75,0.75 z" /><path d="m 18.889,10.321 a 0.75,0.75 0 0 0 0.75,-0.75 V 5.682 a 0.75,0.75 0 1 0 -1.5,0 v 3.889 a 0.75,0.75 0 0 0 0.75,0.75 z" />
        </g>
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "beColour"} = assigns) do
    ~H"""
    <svg class={@class} version="1.1" viewBox="0 0 8.4666 10.58325">
      <g transform="rotate(-90,4.7624757,4.7624351)">
        <path
          class="fil0"
          d="M 6.3619,5.0891 5.4888,4.7364 5.404,4.9464 6.2771,5.2991 Z M 6.3706,4.7282 C 6.7815,4.1475 7.0878,3.5049 7.2806,2.8296 7.4527,2.2269 7.5345,1.5979 7.52,0.9639 7.0691,1.41 6.6912,1.9191 6.3964,2.4724 6.0666,3.0915 5.8406,3.7667 5.733,4.4707 Z m -0.96,-0.38 C 5.5282,3.6325 5.7621,2.9456 6.0988,2.3136 6.466,1.6244 6.9555,1.0001 7.5492,0.4744 7.5769,0.4461 7.6145,0.4273 7.657,0.424 7.7501,0.4168 7.8317,0.4864 7.8389,0.5795 7.9028,1.3741 7.8216,2.1674 7.606,2.9222 7.4095,3.6102 7.1007,4.2669 6.6877,4.8641 6.744,4.9094 6.7668,4.9879 6.7386,5.0585 L 6.7238,5.0953 C 6.8666,5.2435 6.9626,5.4311 7,5.6325 7.0429,5.8633 7.0088,6.1122 6.88,6.3401 6.6877,6.6808 6.4353,6.9889 6.1315,7.2466 5.8388,7.4949 5.4981,7.6971 5.1171,7.8368 L 5.1129,7.8383 C 4.2448,8.1556 3.33,8.0918 2.5524,7.7318 1.7733,7.3711 1.1317,6.713 0.8126,5.8437 L 0.8111,5.8395 C 0.4938,4.9713 0.5578,4.0564 0.9178,3.2788 1.2785,2.4999 1.9366,1.8581 2.8059,1.5391 3.1687,1.406 3.5409,1.3396 3.9084,1.3338 4.2886,1.3279 4.6633,1.3871 5.0168,1.5047 5.1416,1.5462 5.2521,1.6075 5.3464,1.6832 5.5159,1.8194 5.6347,2.0026 5.6938,2.2031 5.7527,2.4031 5.7522,2.6214 5.6837,2.8278 5.6453,2.9434 5.5859,3.055 5.5041,3.1568 5.4483,3.2263 5.3979,3.295 5.3533,3.3622 5.1826,3.6195 5.1054,3.8432 5.113,4.0311 5.1186,4.1697 5.1738,4.293 5.2741,4.3989 5.3093,4.3627 5.3598,4.3436 5.4106,4.3482 Z M 5.1292,4.7245 C 4.9081,4.5423 4.7866,4.3143 4.7756,4.0443 4.7651,3.7854 4.8601,3.4942 5.0715,3.1756 5.1208,3.1013 5.1774,3.0243 5.2409,2.9452 5.2972,2.8752 5.3378,2.7994 5.3635,2.722 5.4097,2.5828 5.4098,2.4347 5.3696,2.2983 5.3296,2.1624 5.2492,2.0383 5.1348,1.9464 5.0705,1.8947 4.9953,1.8529 4.911,1.8249 4.5931,1.7192 4.2558,1.6659 3.9136,1.6712 3.5849,1.6763 3.2502,1.7364 2.9223,1.8567 2.1406,2.1435 1.5489,2.7204 1.2248,3.4204 0.9017,4.1183 0.8438,4.9393 1.1272,5.7188 l 0.0063,0.0173 c 0.288,0.7772 0.863,1.3657 1.5605,1.6887 0.6979,0.3231 1.5189,0.3808 2.2982,0.0974 L 5.01,7.5157 C 5.3494,7.3901 5.6526,7.2096 5.9131,6.9886 6.1863,6.7569 6.4132,6.4798 6.5862,6.174 6.6739,6.0191 6.6972,5.85 6.668,5.6933 6.6524,5.6095 6.6219,5.5291 6.578,5.4563 L 6.5273,5.5818 C 6.5097,5.6257 6.4757,5.6582 6.4352,5.675 6.4428,6.0779 6.164,6.255 5.8863,6.4312 5.7194,6.5371 5.5527,6.643 5.5127,6.8 5.5054,6.8271 5.4917,6.853 5.471,6.8747 5.4068,6.9422 5.2997,6.9449 5.2322,6.8807 5.1373,6.7905 5.059,6.6915 4.9966,6.5879 4.8484,6.3408 4.7869,6.0641 4.8008,5.8088 4.8146,5.5549 4.903,5.3191 5.0551,5.1489 5.0162,5.1026 5.0033,5.0369 5.0273,4.977 Z M 6.0874,5.5868 5.3854,5.3033 C 5.3608,5.3209 5.3381,5.3408 5.3175,5.3626 5.2107,5.475 5.1482,5.6417 5.1382,5.826 5.1278,6.0182 5.1742,6.2271 5.2861,6.4135 L 5.3142,6.4571 C 5.418,6.3277 5.5615,6.2366 5.7051,6.1454 5.9159,6.0117 6.1276,5.8771 6.0874,5.5868 Z M 3.3526,5.3789 c 0.2429,0 0.4633,0.0989 0.6233,0.2586 l 9e-4,9e-4 c 0.1596,0.16 0.2583,0.3803 0.2583,0.623 0,0.2429 -0.0989,0.4633 -0.2586,0.6233 l -9e-4,9e-4 C 3.8156,7.0452 3.5953,7.1439 3.3526,7.1439 3.1097,7.1439 2.8893,7.045 2.7293,6.8853 l -9e-4,-9e-4 C 2.5688,6.7244 2.4701,6.5041 2.4701,6.2614 2.4701,6.0185 2.569,5.7981 2.7287,5.6381 l 9e-4,-9e-4 C 2.8896,5.4776 3.1099,5.3789 3.3526,5.3789 Z M 3.7374,5.8766 C 3.6393,5.7784 3.5032,5.7177 3.3526,5.7177 3.202,5.7177 3.0659,5.7784 2.9681,5.8763 2.8696,5.9747 2.8089,6.1108 2.8089,6.2614 c 0,0.1506 0.0607,0.2867 0.1586,0.3845 0.0984,0.0985 0.2345,0.1592 0.3851,0.1592 0.1506,0 0.2867,-0.0607 0.3845,-0.1586 C 3.8356,6.5481 3.8963,6.412 3.8963,6.2614 3.8963,6.1108 3.8356,5.9747 3.7374,5.8766 Z M 2.2256,3.7703 c 0.2225,0 0.4243,0.0904 0.5702,0.2363 0.1459,0.1459 0.2363,0.3477 0.2363,0.5702 0,0.2225 -0.0904,0.4242 -0.2363,0.5701 C 2.6499,5.2928 2.4481,5.3832 2.2256,5.3832 2.0031,5.3832 1.8013,5.2928 1.6554,5.1469 L 1.6461,5.1368 C 1.5057,4.9916 1.4191,4.7939 1.4191,4.5768 1.4191,4.3543 1.5095,4.1525 1.6554,4.0066 1.8013,3.8607 2.003,3.7703 2.2256,3.7703 Z M 2.5564,4.246 C 2.4719,4.1615 2.3548,4.1091 2.2256,4.1091 2.0963,4.1091 1.9793,4.1615 1.8948,4.246 1.8103,4.3305 1.7579,4.4476 1.7579,4.5768 c 0,0.126 0.0494,0.2402 0.1295,0.3237 l 0.0074,0.007 C 1.9793,4.992 2.0964,5.0444 2.2256,5.0444 2.3548,5.0444 2.4719,4.992 2.5564,4.9075 2.6409,4.823 2.6933,4.706 2.6933,4.5768 2.6933,4.4476 2.6409,4.3305 2.5564,4.246 Z M 3.2766,2.3243 c 0.1944,0 0.3708,0.079 0.4983,0.2065 0.1275,0.1275 0.2065,0.3038 0.2065,0.4983 0,0.1944 -0.079,0.3708 -0.2065,0.4983 C 3.6474,3.6549 3.471,3.7339 3.2766,3.7339 3.0821,3.7339 2.9058,3.6549 2.7783,3.5274 2.6508,3.3999 2.5718,3.2235 2.5718,3.0291 2.5718,2.8346 2.6508,2.6583 2.7783,2.5308 2.9058,2.4033 3.0821,2.3243 3.2766,2.3243 Z M 3.5355,2.7702 C 3.4694,2.7041 3.3777,2.6631 3.2766,2.6631 c -0.1012,0 -0.1928,0.041 -0.2589,0.1071 -0.0661,0.0661 -0.1071,0.1577 -0.1071,0.2589 0,0.1011 0.041,0.1928 0.1071,0.2589 0.0661,0.0661 0.1577,0.1071 0.2589,0.1071 0.1011,0 0.1928,-0.041 0.2589,-0.1071 0.0661,-0.0661 0.1071,-0.1578 0.1071,-0.2589 0,-0.1012 -0.041,-0.1928 -0.1071,-0.2589 z"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: "jmp"} = assigns) do
    ~H"""
    <svg class={@class} viewBox="0 0 28 35" version="1.1">
      <g>
        <circle cx="-1.1280334" cy="18.313631" r="2" transform="rotate(-86.337629)" />
        <path
          d="m 27.224309,14.787214 c 0.302208,-0.402171 0.220769,-0.973249 -0.181812,-1.274911 -1.670218,-1.253162 -3.382521,-2.43721 -5.094503,-3.6203095 -0.308913,-0.211489 -0.69883,-0.26669 -1.054308,-0.14926 l -2.483942,0.8395905 0.25071,-2.7996915 c 0.961938,-0.0085 3.002523,-0.02052 3.002523,-0.02052 0.269385,-0.0019 0.526599,-0.112464 0.713394,-0.306578 0,0 2.979204,-3.087541 3.59588,-3.68338 0.883248,-0.8242207 -0.353087,-2.149093 -1.236335,-1.3248702 -0.636691,0.5741032 -3.50555,2.9793872 -3.50555,2.9793872 -0.92631,-0.092243 -9.585468,-0.8768033 -9.585468,-0.8768033 -0.265357,-0.020301 -0.526678,0.074177 -0.717702,0.2594778 -0.455732,0.4411587 -2.3114045,2.165137 -2.7925677,2.5747795 -0.9387438,0.762053 0.2043363,2.170168 1.1430799,1.408116 0.502445,-0.387279 2.2681238,-1.627995 2.6354568,-1.8841041 0.775971,0.1367251 3.345917,0.2130531 3.611301,0.9548531 0.577565,1.614422 -0.08333,3.0832115 -0.08333,3.0832115 0,0 -0.498203,1.273868 -0.765744,1.903173 -0.564915,1.328781 -1.458276,2.67278 -1.771976,3.952617 -1.378096,-0.142206 -2.756794,-0.276822 -4.1438192,-0.361121 -1.0853201,-0.06359 -1.3513797,1.483859 -0.3071452,1.786412 1.7401084,0.501189 3.4934814,0.922949 5.2465334,1.343761 0.624784,0.146023 1.258576,-0.2051 1.466111,-0.81223 l 1.684495,-4.457073 c 0,0 2.905022,-1.174034 4.344097,-1.797678 1.622432,0.868195 3.248638,1.731946 4.907818,2.540219 0.387826,0.191814 0.857068,0.08438 1.122803,-0.257068 z"
          sodipodi:nodetypes="ccccccccccccccccssaccccccccc"
        />
        <polygon
          points="8.125,25.955 8.25,21.33 2,21.33 2,25.955 "
          transform="translate(-0.5660163,1.6980489)"
        />
        <polygon
          points="19.5,21.33 19.5,25.955 26,25.955 25.75,21.33 "
          transform="translate(1.5754878,1.6980489)"
        />
      </g>
      <path
        d="m 10.280783,13.328824 -7.7058487,3.64097 C 2.2928446,17.10308 1.9563342,16.982534 1.8230488,16.700439 1.6897626,16.41835 1.8103122,16.081839 2.0924034,15.948554 L 9.798253,12.307583 c 0.282089,-0.133285 0.6186,-0.01274 0.751886,0.269355 0.133546,0.281967 0.01274,0.618601 -0.269356,0.751886 z"
        style="opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.287551;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none"
        stroke-linecap="round"
      />
      <path
        d="m 7.7581963,11.173591 -4.8062832,2.29343 c -0.2837683,0.135407 -0.622282,0.01294 -0.7563617,-0.273643 -0.1340789,-0.286577 -0.012812,-0.628445 0.2709582,-0.763852 l 4.8062833,-2.29343 c 0.2837683,-0.135407 0.6222834,-0.01294 0.7563621,0.273643 0.13408,0.286579 0.01281,0.628445 -0.2709587,0.763852 z"
        style="opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.290692;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none"
        stroke-linecap="round"
      />
      <path
        d="m 7.7115573,18.998702 -4.1751922,1.99229 C 3.2525968,21.1264 2.9140824,21.003931 2.7800034,20.717349 2.6459238,20.430771 2.7671914,20.088904 3.0509616,19.953498 l 4.1751923,-1.99229 c 0.2837683,-0.135407 0.6222827,-0.01294 0.7563615,0.273641 0.134079,0.28658 0.012812,0.628446 -0.2709581,0.763853 z"
        style="opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.290692;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:none"
        stroke-linecap="round"
      />
    </svg>
    """
  end

  def cmd_icon(%{command: "wait"} = assigns) do
    ~H"""
    <svg class={@class} viewBox="0 0 100 110">
      <g
        transform="matrix(1.4149917,0.5684788,-0.5684788,1.4149917,46.734379,26.124538)"
        style="display:none"
      >
        <path d="m 25.7,18.6 c 0.7,-0.6 1.1,-1.4 1.1,-2.3 V 14.2 H 16.4 v 2.1 c 0,0.9 0.4,1.7 1.1,2.3 2.3,2 5.8,2 8.2,0 z" /><path d="m 39.2,46.3 c 0,-1.2 -1,-2.1 -2.1,-2.1 h -2.8 v -9.6 c 0,-3.2 -1.4,-6.1 -3.8,-8.1 -0.5,-0.4 -1,-0.7 -1.5,-1 0.5,-0.3 1,-0.6 1.5,-1 2.4,-2 3.8,-4.9 3.8,-8.1 V 6.8 H 37 c 1.2,0 2.1,-1 2.1,-2.1 0,-1.2 -1,-2.1 -2.1,-2.1 H 6.1 C 4.9,2.5 4,3.5 4,4.6 4,5.8 5,6.7 6.1,6.7 h 2.8 v 9.6 c 0,3.1 1.4,6.1 3.8,8.1 0.5,0.4 1,0.7 1.5,1 -0.5,0.3 -1,0.6 -1.5,1 -2.4,2 -3.8,4.9 -3.8,8.1 v 9.6 H 6.1 c -1.2,0 -2.1,1 -2.1,2.1 0,1.2 1,2.1 2.1,2.1 H 37 c 1.2,0.1 2.2,-0.9 2.2,-2 z M 13.1,16.3 V 6.8 H 30 v 9.6 c 0,1.9 -0.8,3.6 -2.3,4.8 -3.6,2.9 -8.7,2.9 -12.3,0 -1.4,-1.3 -2.3,-3 -2.3,-4.9 z M 30,44.1 H 13.1 v -9.6 c 0,-1.9 0.8,-3.6 2.3,-4.8 3.6,-2.9 8.7,-2.9 12.3,0 1.4,1.2 2.3,2.9 2.3,4.8 z" /><path d="m 22.2,33.1 c -0.4,-0.3 -0.9,-0.3 -1.2,0 -1.4,1.2 -4.6,4 -4.6,4.7 v 3.1 h 10.4 v -3.1 c 0,-0.7 -3.2,-3.5 -4.6,-4.7 z" />
      </g>
      <g transform="translate(-11.003067,-5.7000008)" style="display:inline">
        <path d="m 95.8,24.6 c -1.2,-6.4 -7.4,-9.2 -12.4,-10.3 0.1,0.8 0.2,1.7 0.2,2.5 0,2.5 -0.6,4.8 -1.7,6.9 2.4,0.6 4.4,1.7 4.6,2.7 0.1,0.7 0,1 -0.3,1.4 -1.7,2 -7.1,3.4 -11.2,3.4 H 62.4 c -4.1,0 -9.5,-1.4 -11.2,-3.4 -0.3,-0.4 -0.5,-0.7 -0.3,-1.4 0.2,-1 2.2,-2 4.6,-2.7 -1.1,-2.1 -1.7,-4.4 -1.7,-6.9 0,-0.8 0.1,-1.7 0.2,-2.5 -5,1.2 -11.2,3.9 -12.4,10.3 -0.6,3.4 0.2,6.5 2.3,9.1 3.3,3.9 8.8,5.6 13,6.2 -1.3,3.5 -3.7,10.6 -5.5,16.8 -5,-0.1 -13.8,-0.3 -17.1,-0.3 -1.8,0 -3.6,0.8 -4.9,2.2 -3,3.1 -4.5,11.2 -4.5,24 l -8.5,4.5 c -2.7,1.4 -3.7,4.7 -2.3,7.4 1,1.9 2.9,2.9 4.9,2.9 0.9,0 1.7,-0.2 2.5,-0.6 L 60.7,76.4 c 5,-2.2 7.8,-5.2 8.9,-8.2 2.2,-5.3 7.4,-21.9 9.3,-28.1 4.3,-0.5 10.8,-2 14.5,-6.5 2.3,-2.5 3.1,-5.6 2.4,-9 z M 36.1,76.9 c 0.2,-3.9 0.5,-7.4 1,-9.4 5,0.1 13.5,0.3 16.5,0.3 z" /><circle
          cx="68.699997"
          cy="16.700001"
          r="11"
        />
      </g>
      <g transform="matrix(3.4588438,2.3891413,-2.3891413,3.4588438,47.486771,-7.4632121)">
        <rect x="7.5" y="20" width="11" height="1" /><rect x="18.5" y="19" width="1" height="1" /><rect
          x="6.5"
          y="19"
          width="1"
          height="1"
          id="rect3"
        /><rect x="18.5" y="6" width="1" height="1" id="rect4" /><rect
          x="6.5"
          y="6"
          width="1"
          height="1"
          id="rect5"
        /><rect x="7.5" y="5" width="11" height="1" id="rect6" /><rect
          x="8.5"
          y="16"
          width="1"
          height="1"
          id="rect7"
        /><rect x="9.5" y="15" width="1" height="1" id="rect8" /><rect
          x="16.5"
          y="16"
          width="1"
          height="1"
          id="rect9"
        /><rect x="8.5" y="9" width="1" height="1" id="rect10" /><rect
          x="16.5"
          y="9"
          width="1"
          height="1"
          id="rect11"
        /><rect x="15.5" y="15" width="1" height="1" id="rect12" /><rect
          x="9.5"
          y="10"
          width="1"
          height="1"
          id="rect13"
        /><rect x="15.5" y="10" width="1" height="1" id="rect14" /><rect
          x="10.5"
          y="11"
          width="1"
          height="4"
          id="rect15"
        /><rect x="14.5" y="11" width="1" height="4" id="rect16" /><polygon
          points="7.5,9 8.5,9 8.5,8 10.5,8 10.5,9 11.5,9 11.5,10 12.5,10 12.5,11 13.5,11 13.5,10 14.5,10 14.5,9 15.5,9 15.5,8 17.5,8 17.5,9 18.5,9 18.5,7 7.5,7 "
          id="polygon16"
        /><rect x="12.5" y="12" width="1" height="1" id="rect17" /><rect
          x="12.5"
          y="14"
          width="1"
          height="1"
          id="rect18"
        /><polygon
          points="17.5,18 15,18 15,17 11,17 11,18 8.5,18 8.5,17 7.5,17 7.5,19 18.5,19 18.5,17 17.5,17 "
          id="polygon18"
        />
      </g>
    </svg>
    """
  end

  def cmd_icon(%{command: _} = assigns) do
    ~H"""
    <svg class={@class} viewBox="0 0 100 125" enable-background="new 0 0 100 100" xml:space="preserve">
      <path d="M94.543,48.617H77.999c0,0,41.751-17.072-2.628-26.157c-0.027,0.022-2.246-0.353-2.246-0.353S70.5,12.539,70.5,11.67  c0-2.983-3.95-5.75-7.047-6.068c-0.027,0-1.727-0.496-4.223,0.056c-2.104,0.464-3.773,0.962-6.462,1.229  C48.59,7.303,43.99,7.243,40.335,7.652c-2.877,0.394-3.941,1.809-4.378,2.372C35.562,10.534,27.449,25.112,26,27.17  c-0.151,0.215,0.188-3.332,0.188-3.332s-38.854,10.542-8.166,24.779C18,48.463,0,48.758,0,48.758l17.6,24.076  c0,0-4.475,4.961-6.475,7.461s-6.338,12.25-6.338,12.25h88.137c0,0-3.02-14.21-10.138-22.244c-0.169-0.191-6.064,2.917-6.007,2.628  C76.827,72.695,94.543,48.617,94.543,48.617z M50.967,63.166c-7.978,0.938-10.402-1.399-12.092-4.496  c0.281,0-4.615,3.839-9.965,2.056c-5.351-1.783-7.737-10.245-6.477-9.861c5.948,1.81,23.519,5.61,36.694,3.098  C61.988,53.416,58.945,62.229,50.967,63.166z" /><path d="M80.426,67.639" />
    </svg>
    """
  end
end
