icons = {}

icons['arrow-down'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="m19 12 -7 7 -7 -7 h5 v-8 h4 v8 h5"/>
</svg>'''

icons['arrow-up'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="m5 12 7-7 7 7 h-5 v8 h-4 v-8 h-5" />
</svg>'''

icons['bulk-update'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M2 2h8" />
  <path d="M2 7h8" />
  <path d="M2 12h8" />
  <path d="M2 17h8" />
  <path d="M2 22h8" />    <path
        d="M21.5 12a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z" />

</svg>'''

icons['chart'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M3 3 v18 h18" />
    <rect x="7" y="8" width="4" height="9" rx="0" />
    <rect x="15" y="5" width="4" height="12" rx="0" />
</svg>
'''

icons['close'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="3" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M5 5 L21 21 M 5 21 L21 5" rx="2" ry="2" fill="none" />
</svg>'''

icons['color'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path
        d="M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z" />
    <circle cx="13.5" cy="6.5" r=".5" fill="currentColor" />
    <circle cx="17.5" cy="10.5" r=".5" fill="currentColor" />
    <circle cx="6.5" cy="12.5" r=".5" fill="currentColor" />
    <circle cx="8.5" cy="7.5" r=".5" fill="currentColor" />
</svg>'''

icons['exit'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="3" d="m12.2 7.2 v.01" />
    <path d="m13 20 v-3 l -2 -3 l 1.5 -4.5 l2 2 l2 1" />
    <path d="m5 17 h3 l 2 -3 l 1.5 -4.5 h-1 l-2 1 l-1 2" />
    <path d="m5 14.5 v -10.5 h14 v16" />
    <path d="m5 19.5 v 0.5 " />
</svg>'''

icons['export'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M12 17V3" />
    <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
    <path d="m7 8 5 -5 5 5" />
</svg>'''

icons['eye-off'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49" />
  <path d="M14.084 14.158a3 3 0 0 1-4.242-4.242" />
  <path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143" />
  <path d="m2 2 20 20" />
</svg>
'''

icons['eye'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0" />
  <circle cx="12" cy="12" r="3" />
</svg>
'''

icons['go-bottom'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M5 20h14" />
    <path d="m18 12-6 6 -6 -6" />
    <path d="M12 4v13" />
</svg>
'''

icons['go-down'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="m19 12 -7 7 -7 -7" />
    <path d="M12 5v14" />
</svg>'''

icons['go-top'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M5 4h14" />
    <path d="m18 12-6-6-6 6" />
    <path d="M12 7v13" />
</svg>
'''

icons['go-up'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="m5 12 7-7 7 7" />
    <path d="M12 19V5" />
</svg>'''

icons['help'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <circle cx="12" cy="12" r="10" />
    <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3 v2" />
    <line x1="12" x2="12.01" y1="18" y2="18" />
</svg>'''

icons['import'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M12 15V3" />
    <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
    <path d="m7 12 5 5 5-5" />
</svg>'''

icons['info'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M12 17v-6" />
    <path d="M12 8h.01" />
    <circle cx="12" cy="12" r="10" />
</svg>'''

icons['list-chevrons-down-up'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M3 2h8" />
  <path d="M3 7h8" />
  <path d="M3 12h8" />
  <path d="M3 17h8" />
  <path d="M3 22h8" />
  <path d="m15 5 3 3 3-3" />
  <path d="m15 19 3-3 3 3" />
</svg>'''

icons['list-chevrons-up-down'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M3 2h8" />
  <path d="M3 7h8" />
  <path d="M3 12h8" />
  <path d="M3 17h8" />
  <path d="M3 22h8" />
  <path d="m15 8 3-3 3 3" />
  <path d="m15 16 3 3 3-3" />
</svg>
'''

icons['list-minus'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M3 2h8" />
  <path d="M3 7h8" />
  <path d="M3 12h8" />
  <path d="M3 17h8" />
  <path d="M3 22h8" />
  <path d="M21 12h-6" />
</svg>
'''

icons['list-plus'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
  <path d="M3 2h8" />
  <path d="M3 7h8" />
  <path d="M3 12h8" />
  <path d="M3 17h8" />
  <path d="M3 22h8" />
  <path d="M18 9v6" />
  <path d="M21 12h-6" />
</svg>
'''

icons['lock'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <circle cx="12" cy="16" r="2" />
    <rect width="12" height="12" x="6" y="10" rx="2" />
    <path d="M8 10V8 a4 5 0 0 1 8 0 v1" />
</svg>'''

icons['menu'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="m4 7 h16"/>
    <path d="m4 12 h16"/>
    <path d="m4 17 h16"/>
</svg>'''

icons['moon'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path
        d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401" />
</svg>'''

icons['new'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke="red" stroke-width="1" d="m 0 0 h24 v24 h-24 v-24" />
</svg>'''

icons['paste-csv'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m12 22 h-8v-20h12l4 4 v6" />
    <path stroke-width="2" d="m7 5 l 5 9" />
    <path stroke-width="2" d="m12 5 l-5 9" />
    <path stroke-width="2" d="m14 19 l3 3 l3 -3" />
    <path stroke-width="4" d="m17 14 v5" />
</svg>'''

icons['print'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2" />
    <rect x="6" y="14" width="12" height="8" rx="1" />
    <rect x="6" y="2" width="12" height="7" rx="1"/>

</svg>'''

icons['q2gui'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    >
    <rect stroke="white" fill="white" stroke-width="1" x="1" y="1" width="22" height="22" rx="100" ry="100" />
    <rect x="11" y="13" width="5.5" height="5.5" transform="rotate(-135, 10, 12)" fill="black"/>
    <rect x="11" y="13" width="5.5" height="5.5" transform="rotate(45, 10, 12)" fill="black"/>
    <rect x="11.4" y="14" width="5.5" height="5.5" transform="rotate(-45, 9.4, 12)" fill="black"/>
</svg>'''

icons['refresh'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8" />
    <path d="M21 3v5h-5" />
</svg>
'''

icons['restore'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <rect x="4" y="11" width="11" height="11" rx="0" ry="0" />
    <path d="M8 10 V6 H20 V18 H16" rx="2" ry="2" fill="none" />
</svg>'''

icons['row-copy'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m21 18v1h-15v-17h11l4 4v12" />
    <path stroke-width="2" d="m19 22v0h-16v-18" />
</svg>'''

icons['row-edit'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m20 18v4h-16v-20h12l4 4" />
    <path
        d="M20 12a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z" />
    <path d="M7 19h2" />
</svg>'''

icons['row-new'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m20 18v4h-16v-20h12l4 4v12" />
</svg>'''

icons['row-remove'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m12 22 h-8v-20h12l4 4 v6" />
    <path d="M14 14 l7 7" />
    <path d="M21 14 l-7 7" />
</svg>'''

icons['row-view'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0" />
    <circle cx="12" cy="12" r="3" />
</svg>'''

icons['select'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path stroke-width="2" d="m4 13 l 6 6 l11 -11" />
</svg>'''

icons['star'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M12 2 L14.85 8.63 L22 9.27 L16.5 14.14 L17.6 21 L12 17.77 L6.4 21 L7.5 14.14 L2 9.27 L9.15 8.63 Z" />
</svg>
'''

icons['sun'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <circle cx="12" cy="12" r="4" />
    <path d="M12 2v2" />
    <path d="M12 20v2" />
    <path d="m4.93 4.93 1.41 1.41" />
    <path d="m17.66 17.66 1.41 1.41" />
    <path d="M2 12h2" />
    <path d="M20 12h2" />
    <path d="m6.34 17.66-1.41 1.41" />
    <path d="m19.07 4.93-1.41 1.41" />
</svg>    
'''

icons['time'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M12 6v6l4-2" />
    <circle cx="12" cy="12" r="10" />
</svg>
'''

icons['tools'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z"/>
</svg>
'''

icons['unlock'] = '''<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"
    stroke-linejoin="round">
    <circle cx="9" cy="16" r="2" />
    <rect width="12" height="12" x="3" y="10" rx="2" />
    <path d="M12 10V7a5 5 0 0 1 9.33-2.5" />
</svg>'''
