svg.cljs 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444
  1. (ns frontend.components.svg
  2. (:require [rum.core :as rum]))
  3. (rum/defc arrow-down
  4. []
  5. [:svg
  6. {:aria-hidden "true"
  7. :height "16"
  8. :width "10"
  9. :version "1.1"
  10. :view-box "0 0 10 16"
  11. :fill "currentColor"
  12. :display "inline-block"}
  13. [:path
  14. {:d "M5 11L0 6l1.5-1.5L5 8.25 8.5 4.5 10 6l-5 5z"
  15. :fill-rule "evenodd"}]])
  16. (rum/defc arrow-right
  17. []
  18. [:svg
  19. {:aria-hidden "true"
  20. :height "16"
  21. :width "10"
  22. :version "1.1"
  23. :view-box "0 0 10 16"
  24. :fill "currentColor"
  25. :display "inline-block"}
  26. [:path
  27. {:d "M7.5 8l-5 5L1 11.5 4.75 8 1 4.5 2.5 3l5 5z"
  28. :fill-rule "evenodd"}]])
  29. (rum/defc big-arrow-right
  30. []
  31. [:svg
  32. {:fill "none", :view-box "0 0 24 24", :height "24", :width "24"}
  33. [:path
  34. {:stroke-linejoin "round"
  35. :stroke-linecap "round"
  36. :stroke-width "2"
  37. :stroke "currentColor"
  38. :d "M14 5L21 12M21 12L14 19M21 12L3 12"}]])
  39. (rum/defc big-arrow-left
  40. []
  41. [:svg
  42. {:fill "none", :view-box "0 0 24 24", :height "24", :width "24"}
  43. [:path
  44. {:stroke-linejoin "round"
  45. :stroke-linecap "round"
  46. :stroke-width "2"
  47. :stroke "currentColor"
  48. :d "M10 19L3 12M3 12L10 5M3 12L21 12"}]])
  49. (defonce arrow-right-v2
  50. [:svg.h-3.w-3
  51. {:version "1.1"
  52. :view-box "0 0 128 128"
  53. :fill "currentColor"
  54. :display "inline-block"
  55. :style {:margin-top -3}}
  56. [:path
  57. {:d
  58. "M99.069 64.173c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z"}]])
  59. (defonce arrow-down-v2
  60. [:svg.h-3.w-3
  61. {:version "1.1"
  62. :view-box "0 0 128 128"
  63. :fill "currentColor"
  64. :display "inline-block"
  65. :style {:margin-top -3}}
  66. [:path
  67. {:d
  68. "M64.177 100.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.086 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z"}]])
  69. (defonce loading
  70. [:svg.h-5.w-5.animate-spin
  71. {:version "1.1"
  72. :view-box "0 0 24 24"
  73. :fill "none"
  74. :display "inline-block"}
  75. [:circle.opacity-25 {:cx 12 :cy 12 :r 10 :stroke "currentColor" :stroke-width 4}]
  76. [:path.opacity-75 {:fill "currentColor"
  77. :d "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}]])
  78. (defn- hero-icon
  79. ([d]
  80. (hero-icon d {}))
  81. ([d options]
  82. [:svg (merge {:fill "currentColor", :view-box "0 0 24 24", :height "24", :width "24"}
  83. options)
  84. [:path
  85. {:stroke-linejoin "round"
  86. :stroke-linecap "round"
  87. :stroke-width "2"
  88. :stroke "currentColor"
  89. :d d}]]))
  90. (def refresh
  91. (hero-icon "M4 4V9H4.58152M19.9381 11C19.446 7.05369 16.0796 4 12 4C8.64262 4 5.76829 6.06817 4.58152 9M4.58152 9H9M20 20V15H19.4185M19.4185 15C18.2317 17.9318 15.3574 20 12 20C7.92038 20 4.55399 16.9463 4.06189 13M19.4185 15H15"
  92. {:fill "none"}))
  93. (def user
  94. [:svg
  95. {:stroke-linejoin "round"
  96. :stroke-linecap "round"
  97. :fill "none"
  98. :stroke "currentColor"
  99. :stroke-width "2"
  100. :view-box "0 0 24 24"
  101. :height "24"
  102. :width "24"}
  103. [:path {:d "M0 0h24v24H0z", :stroke "none"}]
  104. [:circle {:r "4", :cy "7", :cx "12"}]
  105. [:path {:d "M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"}]])
  106. (def close (hero-icon "M6 18L18 6M6 6L18 18"))
  107. (def plus (hero-icon "M12 4v16m8-8H4"))
  108. (def plus-circle
  109. [:svg.add-button
  110. {:viewBox "0 0 20 20"}
  111. [:circle.circle {:fill "#dce0e2", :r "9", :cy "10.5", :cx "10.5"}]
  112. [:line
  113. {:stroke-width "1"
  114. :stroke "#868c90"
  115. :y2 "10.5"
  116. :x2 "15"
  117. :y1 "10.5"
  118. :x1 "6"}]
  119. [:line
  120. {:stroke-width "1"
  121. :stroke "#868c90"
  122. :y2 "15"
  123. :x2 "10.5"
  124. :y1 "6"
  125. :x1 "10.5"}]])
  126. (def graph-sm [:div {:style {:transform "rotate(90deg)"}} (hero-icon "M8.684 13.342C8.886 12.938 9 12.482 9 12c0-.482-.114-.938-.316-1.342m0 2.684a3 3 0 110-2.684m0 2.684l6.632 3.316m-6.632-6l6.632-3.316m0 0a3 3 0 105.367-2.684 3 3 0 00-5.367 2.684zm0 9.316a3 3 0 105.368 2.684 3 3 0 00-5.368-2.684z" {:height "16" :width "16"})])
  127. (def folder-add
  128. [:svg
  129. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none" :width 24 :height 24 :display "inline-block"}
  130. [:path
  131. {:d
  132. "M9 13h6m-3-3v6m-9 1V7a2 2 0 012-2h6l2 2h6a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z"
  133. :stroke-width "2"
  134. :stroke-linejoin "round"
  135. :stroke-linecap "round"}]])
  136. (def folder (hero-icon "M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z"))
  137. (def folder-sm (hero-icon "M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z" {:height "16" :width "16"}))
  138. (def pages-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "16", :width "16"}
  139. [:path {:d "M9 2a2 2 0 00-2 2v8a2 2 0 002 2h6a2 2 0 002-2V6.414A2 2 0 0016.414 5L14 2.586A2 2 0 0012.586 2H9z"}]
  140. [:path {:d "M3 8a2 2 0 012-2v10h8a2 2 0 01-2 2H5a2 2 0 01-2-2V8z"}]])
  141. (def repos-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "16", :width "16"}
  142. [:path {:d "M3 12v3c0 1.657 3.134 3 7 3s7-1.343 7-3v-3c0 1.657-3.134 3-7 3s-7-1.343-7-3z"}]
  143. [:path {:d "M3 7v3c0 1.657 3.134 3 7 3s7-1.343 7-3V7c0 1.657-3.134 3-7 3S3 8.657 3 7z"}]
  144. [:path {:d "M17 5c0 1.657-3.134 3-7 3S3 6.657 3 5s3.134-3 7-3 7 1.343 7 3z"}]])
  145. (def settings-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "20", :width "20"}
  146. [:path {:fill-rule "evenodd", :d "M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z", :clip-rule "evenodd"}]])
  147. (def calendar-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "16", :width "16"}
  148. [:path {:fill-rule "evenodd", :d "M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z", :clip-rule "evenodd"}]])
  149. (def import-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "16", :width "16"}
  150. [:path {:fill-rule "evenodd", :d "M3 17a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM6.293 6.707a1 1 0 010-1.414l3-3a1 1 0 011.414 0l3 3a1 1 0 01-1.414 1.414L11 5.414V13a1 1 0 11-2 0V5.414L7.707 6.707a1 1 0 01-1.414 0z", :clip-rule "evenodd"}]])
  151. (def logout-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "18", :width "18"}
  152. [:path {:fill-rule "evenodd", :d "M3 3a1 1 0 00-1 1v12a1 1 0 102 0V4a1 1 0 00-1-1zm10.293 9.293a1 1 0 001.414 1.414l3-3a1 1 0 000-1.414l-3-3a1 1 0 10-1.414 1.414L14.586 9H7a1 1 0 100 2h7.586l-1.293 1.293z", :clip-rule "evenodd"}]])
  153. (def trash-sm [:svg {:viewBox "0 0 20 20", :fill "currentColor", :height "16", :width "16"}
  154. [:path {:fill-rule "evenodd", :d "M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z", :clip-rule "evenodd"}]])
  155. (def sort-asc-sm [:svg {:viewBox "0 0 16 16", :fill "currentColor"}
  156. [:path {:d "M3 3a1 1 0 000 2h11a1 1 0 100-2H3zM3 7a1 1 0 000 2h5a1 1 0 000-2H3zM3 11a1 1 0 100 2h4a1 1 0 100-2H3zM13 16a1 1 0 102 0v-5.586l1.293 1.293a1 1 0 001.414-1.414l-3-3a1 1 0 00-1.414 0l-3 3a1 1 0 101.414 1.414L13 10.414V16z"}]])
  157. (defn vertical-dots
  158. [options]
  159. (hero-icon "M12 5v.01M12 12v.01M12 19v.01M12 6a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2z" options))
  160. (def external-link
  161. [:svg {:fill "none", :view-box "0 0 24 24", :height "21", :width "21"
  162. :stroke "currentColor"}
  163. [:path
  164. {:stroke-linejoin "round"
  165. :stroke-linecap "round"
  166. :stroke-width "2"
  167. :d "M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"}]])
  168. (def save
  169. [:svg
  170. {:fill "currentColor", :view-box "0 0 448 512", :height "24", :width "24"}
  171. [:path
  172. {:stroke-linejoin "round"
  173. :stroke-linecap "round"
  174. :stroke-width "2"
  175. :stroke "currentColor"
  176. :d "M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z"}]])
  177. (rum/defc note
  178. []
  179. [:svg.h-8.w-8.svg-shadow.note
  180. {:view-box "0 0 512 512"
  181. :fill "currentColor"}
  182. [:path
  183. {:d
  184. "M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z"}]])
  185. (rum/defc tip
  186. []
  187. [:svg.h-8.w-8.tip
  188. {:view-box "0 0 352 512"
  189. :fill "currentColor"}
  190. [:path
  191. {:d
  192. "M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z"}]])
  193. (rum/defc important
  194. []
  195. [:svg.h-8.w-8.svg-shadow.important
  196. {:view-box "0 0 512 512"
  197. :fill "currentColor"
  198. :color "#bf0000"}
  199. [:path
  200. {:d
  201. "M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"}]])
  202. (rum/defc caution
  203. []
  204. [:svg.h-8.w-8.svg-shadow.caution
  205. {:view-box "0 0 384 512"
  206. :fill "currentColor"
  207. :color "#bf3400"}
  208. [:path
  209. {:d
  210. "M216 23.86c0-23.8-30.65-32.77-44.15-13.04C48 191.85 224 200 224 288c0 35.63-29.11 64.46-64.85 63.99-35.17-.45-63.15-29.77-63.15-64.94v-85.51c0-21.7-26.47-32.23-41.43-16.5C27.8 213.16 0 261.33 0 320c0 105.87 86.13 192 192 192s192-86.13 192-192c0-170.29-168-193-168-296.14z"}]])
  211. (defn warning
  212. ([]
  213. (warning nil))
  214. ([opts]
  215. [:svg.h-8.w-8.svg-shadow.warning
  216. (merge
  217. {:view-box "0 0 576 512"
  218. :fill "currentColor"
  219. :color "#bf6900"}
  220. opts)
  221. [:path
  222. {:d
  223. "M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"}]]))
  224. (rum/defc caret-down
  225. []
  226. [:svg.h-4.w-4
  227. {:aria-hidden "true"
  228. :version "1.1"
  229. :view-box "0 0 192 512"
  230. :fill "currentColor"
  231. :display "inline-block"}
  232. [:path
  233. {:d "M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z"
  234. :fill-rule "evenodd"}]])
  235. (rum/defc caret-right
  236. []
  237. [:svg.h-4.w-4
  238. {:aria-hidden "true"
  239. :version "1.1"
  240. :view-box "0 0 192 512"
  241. :fill "currentColor"
  242. :display "inline-block"
  243. :style {:margin-left 2}}
  244. [:path
  245. {:d "M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z"
  246. :fill-rule "evenodd"}]])
  247. (rum/defc menu
  248. [class]
  249. [:svg
  250. {:fill "none", :view-box "0 0 20 20", :height "20", :width "20"
  251. :class class}
  252. [:path
  253. {:fill "currentColor"
  254. :d
  255. "M3 5C3 4.44772 3.44772 4 4 4H16C16.5523 4 17 4.44772 17 5C17 5.55228 16.5523 6 16 6H4C3.44772 6 3 5.55228 3 5Z"
  256. :clip-rule "evenodd"
  257. :fill-rule "evenodd"}]
  258. [:path
  259. {:fill "currentColor"
  260. :d
  261. "M3 10C3 9.44772 3.44772 9 4 9H16C16.5523 9 17 9.44772 17 10C17 10.5523 16.5523 11 16 11H4C3.44772 11 3 10.5523 3 10Z"
  262. :clip-rule "evenodd"
  263. :fill-rule "evenodd"}]
  264. [:path
  265. {:fill "currentColor"
  266. :d
  267. "M3 15C3 14.4477 3.44772 14 4 14H16C16.5523 14 17 14.4477 17 15C17 15.5523 16.5523 16 16 16H4C3.44772 16 3 15.5523 3 15Z"
  268. :clip-rule "evenodd"
  269. :fill-rule "evenodd"}]])
  270. (defn excalidraw-logo
  271. []
  272. [:svg
  273. {:preserve-aspect-ratio "xMidYMid meet"
  274. :view-box "0 0 109.000000 269.000000"
  275. :height 24
  276. :width 24
  277. :version "1.0"
  278. :style {:display "inline"}}
  279. [:g
  280. {:stroke "none"
  281. :fill "currentColor"
  282. :transform
  283. "translate(0.000000,269.000000) scale(0.100000,-0.100000)"}
  284. [:path
  285. {:d
  286. "M393 2643 c-74 -59 -188 -159 -278 -245 l-71 -67 13 -88 c7 -48 20 -142 28 -208 9 -66 18 -128 21 -137 4 -12 0 -18 -11 -18 -19 0 -20 5 32 -160 19 -63 37 -121 39 -127 2 -7 10 -10 19 -7 9 4 14 12 11 19 -3 8 2 16 10 19 11 4 10 12 -7 41 -27 45 -96 429 -100 553 -3 88 -3 89 34 139 36 49 119 123 247 217 36 27 72 57 82 67 15 18 22 13 148 -121 73 -77 154 -156 180 -176 l48 -36 -37 -78 c-20 -42 -101 -204 -181 -358 -167 -324 -133 -293 -327 -296 l-126 -1 -42 -48 c-44 -51 -50 -70 -29 -102 8 -11 14 -29 14 -40 0 -18 7 -21 47 -23 25 -1 48 -4 51 -7 3 -3 7 -65 10 -138 l4 -132 -67 -144 c-111 -240 -155 -350 -155 -386 0 -19 4 -35 8 -35 10 0 10 1 417 850 189 394 368 765 398 826 30 61 57 117 59 125 2 9 -67 78 -177 175 -99 88 -186 168 -194 177 -23 28 -57 19 -118 -30z m34 -1150 c-46 -89 -48 -90 -174 -96 -111 -6 -113 -5 -113 16 0 12 -4 28 -9 36 -6 9 -2 25 12 47 l22 34 100 0 c55 1 118 5 140 9 22 4 41 6 43 5 2 -1 -8 -24 -21 -51z m-84 -160 c-8 -21 -29 -65 -46 -98 -28 -56 -31 -58 -38 -35 -4 14 -7 55 -8 92 -1 73 -3 72 81 77 l27 1 -16 -37z"}]
  287. [:path
  288. {:d
  289. "M423 2405 c-18 -13 -23 -26 -23 -59 0 -39 3 -45 30 -56 27 -11 34 -10 65 11 41 28 42 35 12 80 -26 39 -52 46 -84 24z m57 -36 c16 -28 6 -49 -24 -49 -27 0 -39 27 -24 54 12 22 35 20 48 -5z"}]
  290. [:path
  291. {:d
  292. "M1050 2180 c0 -5 -6 -10 -13 -10 -6 0 -23 -28 -36 -62 -40 -104 -440 -895 -441 -870 0 13 -6 22 -16 22 -14 0 -16 -8 -10 -47 6 -45 2 -55 -140 -331 -80 -157 -166 -321 -191 -365 -26 -46 -46 -96 -48 -117 -3 -36 1 -41 88 -116 50 -44 114 -99 142 -124 126 -115 185 -161 201 -158 24 4 395 393 396 415 0 10 -18 162 -40 338 -38 300 -74 651 -70 685 3 21 -12 127 -23 173 -9 36 -5 51 67 215 42 97 97 216 121 264 23 48 43 90 43 93 0 3 -7 5 -15 5 -8 0 -15 -4 -15 -10z m-230 -747 c11 -70 33 -238 49 -373 31 -248 67 -523 77 -593 6 -35 2 -42 -63 -114 -113 -127 -233 -252 -274 -284 l-38 -30 -195 182 c-180 166 -195 183 -184 203 6 11 57 104 113 206 56 102 130 238 164 302 35 65 67 121 73 124 7 4 9 -97 7 -312 -4 -321 -3 -322 29 -315 4 0 7 162 7 359 l0 358 105 210 c58 116 106 209 108 208 2 -1 12 -60 22 -131z"}]]])
  293. (rum/defc logo
  294. [dark?]
  295. [:svg.svg-shadow
  296. {:fill (if dark? "currentColor" "#002B36"), :view-box "0 0 21 21", :height "21", :width "21"
  297. :style {:margin-top 2}}
  298. [:ellipse
  299. {:transform
  300. "matrix(0.987073 0.160274 -0.239143 0.970984 11.7346 2.59206)"
  301. :ry "2.04373"
  302. :rx "3.29236"}]
  303. [:ellipse
  304. {:transform
  305. "matrix(-0.495846 0.868411 -0.825718 -0.564084 3.97209 5.54515)"
  306. :ry "3.37606"
  307. :rx "2.95326"}]
  308. [:ellipse
  309. {:transform
  310. "matrix(0.987073 0.160274 -0.239143 0.970984 13.0843 14.72)"
  311. :ry "6.13006"
  312. :rx "7.78547"}]])
  313. (def discord
  314. [:svg
  315. {:view-box "0 0 448 512"
  316. :height 15
  317. :width 15
  318. :preserve-aspect-ratio "xMidYMid meet"
  319. :style
  320. {"msTransform" "rotate(360deg)"
  321. "WebkitTransform" "rotate(360deg)"
  322. "transform" "rotate(360deg)"}
  323. :focusable "false"
  324. :aria-hidden "true"
  325. :fill "currentColor"}
  326. [:path
  327. {:d
  328. "M297.216 243.2c0 15.616-11.52 28.416-26.112 28.416c-14.336 0-26.112-12.8-26.112-28.416s11.52-28.416 26.112-28.416c14.592 0 26.112 12.8 26.112 28.416zm-119.552-28.416c-14.592 0-26.112 12.8-26.112 28.416s11.776 28.416 26.112 28.416c14.592 0 26.112-12.8 26.112-28.416c.256-15.616-11.52-28.416-26.112-28.416zM448 52.736V512c-64.494-56.994-43.868-38.128-118.784-107.776l13.568 47.36H52.48C23.552 451.584 0 428.032 0 398.848V52.736C0 23.552 23.552 0 52.48 0h343.04C424.448 0 448 23.552 448 52.736zm-72.96 242.688c0-82.432-36.864-149.248-36.864-149.248c-36.864-27.648-71.936-26.88-71.936-26.88l-3.584 4.096c43.52 13.312 63.744 32.512 63.744 32.512c-60.811-33.329-132.244-33.335-191.232-7.424c-9.472 4.352-15.104 7.424-15.104 7.424s21.248-20.224 67.328-33.536l-2.56-3.072s-35.072-.768-71.936 26.88c0 0-36.864 66.816-36.864 149.248c0 0 21.504 37.12 78.08 38.912c0 0 9.472-11.52 17.152-21.248c-32.512-9.728-44.8-30.208-44.8-30.208c3.766 2.636 9.976 6.053 10.496 6.4c43.21 24.198 104.588 32.126 159.744 8.96c8.96-3.328 18.944-8.192 29.44-15.104c0 0-12.8 20.992-46.336 30.464c7.68 9.728 16.896 20.736 16.896 20.736c56.576-1.792 78.336-38.912 78.336-38.912z"}]])
  329. (def slideshow
  330. [:svg
  331. {:view-box "0 0 24 24"
  332. :height 24
  333. :width 24
  334. :fill "currentColor"}
  335. [:path
  336. {:d "M10 8v8l5-4-5-4zm9-5H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14z"}]])
  337. (def indent-block
  338. [:svg.h-6.w-6
  339. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none"}
  340. [:path
  341. {:d "M4.293 15.707a1 1 0 010-1.414L8.586 10 4.293 5.707a1 1 0 011.414-1.414l5 5a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0z"
  342. :fill-rule "evenodd"
  343. :clip-rule "evenodd"
  344. :stroke-width "2"
  345. :stroke-linejoin "round"
  346. :stroke-linecap "round"}]
  347. [:path
  348. {:d "M10.293 15.707a1 1 0 010-1.414L14.586 10l-4.293-4.293a1 1 0 111.414-1.414l5 5a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0z"
  349. :fill-rule "evenodd"
  350. :clip-rule "evenodd"
  351. :stroke-width "2"
  352. :stroke-linejoin "round"
  353. :stroke-linecap "round"}]])
  354. (def outdent-block
  355. [:svg.h-6.w-6
  356. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none"}
  357. [:path
  358. {:d "M15.707 15.707a1 1 0 01-1.414 0l-5-5a1 1 0 010-1.414l5-5a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 010 1.414zm-6 0a1 1 0 01-1.414 0l-5-5a1 1 0 010-1.414l5-5a1 1 0 011.414 1.414L5.414 10l4.293 4.293a1 1 0 010 1.414z"
  359. :fill-rule "evenodd"
  360. :clip-rule "evenodd"
  361. :stroke-width "2"
  362. :stroke-linejoin "round"
  363. :stroke-linecap "round"}]])
  364. (def move-up-block
  365. [:svg.h-6.w-6
  366. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none"}
  367. [:path
  368. {:d "M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z"
  369. :fill-rule "evenodd"
  370. :clip-rule "evenodd"
  371. :stroke-width "2"
  372. :stroke-linejoin "round"
  373. :stroke-linecap "round"}]])
  374. (def move-down-block
  375. [:svg.h-6.w-6
  376. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none"}
  377. [:path
  378. {:d "M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
  379. :fill-rule "evenodd"
  380. :clip-rule "evenodd"
  381. :stroke-width "2"
  382. :stroke-linejoin "round"
  383. :stroke-linecap "round"}]])
  384. (def multi-line-input
  385. [:svg.h-6.w-6
  386. {:stroke "currentColor", :view-box "0 0 24 24", :fill "none"}
  387. [:path
  388. {:d "M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 15a1 1 0 011-1h6a1 1 0 110 2H4a1 1 0 01-1-1z"
  389. :fill-rule "evenodd"
  390. :clip-rule "evenodd"
  391. :stroke-width "2"
  392. :stroke-linejoin "round"
  393. :stroke-linecap "round"}]])
  394. (def page
  395. [:svg.h-5.w-4 {:viewBox "0 0 24 24", :fill "none", :xmlns "http://www.w3.org/2000/svg"}
  396. [:path {:d "M2 0.5H6.78272L13.5 7.69708V18C13.5 18.8284 12.8284 19.5 12 19.5H2C1.17157 19.5 0.5 18.8284 0.5 18V2C0.5 1.17157 1.17157 0.5 2 0.5Z", :fill "var(--ls-active-primary-color)"}]
  397. [:path {:d "M7 5.5V0L14 7.5H9C7.89543 7.5 7 6.60457 7 5.5Z", :fill "var(--ls-active-secondary-color)"}]])
  398. (def online
  399. (hero-icon "M8.111 16.404a5.5 5.5 0 017.778 0M12 20h.01m-7.08-7.071c3.904-3.905 10.236-3.905 14.141 0M1.394 9.393c5.857-5.857 15.355-5.857 21.213 0"))
  400. (rum/defc filter-icon
  401. []
  402. [:svg
  403. {:stroke "currentColor"
  404. :fill "currentColor"
  405. :view-box "0 0 16.06 16.06"
  406. :width "16"
  407. :height "16"}
  408. [:path
  409. {:d "M.53.53h15l-5 7v8h-5v-8z" :stroke-width "1.06" :stroke-linejoin "round"}]])