ngwr 6.0.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (696) hide show
  1. package/LICENSE +1 -3
  2. package/README.md +179 -32
  3. package/affix/styles/_index.scss +12 -0
  4. package/alert/styles/_index.scss +75 -32
  5. package/anchor/styles/_index.scss +59 -0
  6. package/aurora/aurora.scss +1 -0
  7. package/aurora/styles/_index.scss +30 -0
  8. package/avatar/styles/_index.scss +30 -14
  9. package/back-top/styles/_index.scss +42 -0
  10. package/badge/styles/_index.scss +80 -0
  11. package/badge/styles/_tag.scss +81 -0
  12. package/bar-chart/styles/_index.scss +56 -0
  13. package/blur-text/blur-text.scss +1 -0
  14. package/blur-text/styles/_index.scss +14 -0
  15. package/border-glow/border-glow.scss +4 -0
  16. package/border-glow/styles/_index.scss +228 -0
  17. package/breadcrumbs/breadcrumbs.scss +1 -0
  18. package/breadcrumbs/styles/_index.scss +76 -0
  19. package/button/styles/_index.scss +148 -125
  20. package/calendar/styles/_index.scss +252 -0
  21. package/calendar-heatmap/styles/_index.scss +69 -0
  22. package/card/card.scss +1 -0
  23. package/card/styles/_index.scss +96 -0
  24. package/carousel/styles/_index.scss +102 -0
  25. package/cascader/cascader.scss +1 -0
  26. package/cascader/styles/_index.scss +174 -0
  27. package/checkbox/styles/_index.scss +76 -60
  28. package/circular-text/circular-text.scss +1 -0
  29. package/circular-text/styles/_index.scss +45 -0
  30. package/click-spark/click-spark.scss +1 -0
  31. package/click-spark/styles/_index.scss +16 -0
  32. package/collapse/styles/_index.scss +92 -0
  33. package/color-picker/styles/_index.scss +247 -0
  34. package/command-palette/styles/_index.scss +188 -0
  35. package/compare/styles/_index.scss +100 -0
  36. package/context-menu/styles/_index.scss +112 -0
  37. package/counter/styles/_index.scss +44 -0
  38. package/date-picker/styles/_index.scss +204 -0
  39. package/decrypt-text/decrypt-text.scss +1 -0
  40. package/decrypt-text/styles/_index.scss +26 -0
  41. package/density/styles/_index.scss +37 -0
  42. package/descriptions/styles/_index.scss +104 -0
  43. package/dialog/styles/_index.scss +101 -27
  44. package/divider/styles/_index.scss +43 -24
  45. package/donut-chart/styles/_index.scss +76 -0
  46. package/drag-drop/sortable-list.scss +1 -0
  47. package/drag-drop/styles/_index.scss +99 -0
  48. package/drawer/styles/_index.scss +164 -0
  49. package/dropdown/styles/_index.scss +76 -56
  50. package/empty/styles/_index.scss +49 -0
  51. package/falling-text/falling-text.scss +1 -0
  52. package/falling-text/styles/_index.scss +30 -0
  53. package/fesm2022/ngwr-affix.mjs +102 -0
  54. package/fesm2022/ngwr-affix.mjs.map +1 -0
  55. package/fesm2022/ngwr-alert.mjs +70 -52
  56. package/fesm2022/ngwr-alert.mjs.map +1 -1
  57. package/fesm2022/ngwr-anchor.mjs +103 -0
  58. package/fesm2022/ngwr-anchor.mjs.map +1 -0
  59. package/fesm2022/ngwr-aurora.mjs +309 -0
  60. package/fesm2022/ngwr-aurora.mjs.map +1 -0
  61. package/fesm2022/ngwr-avatar.mjs +81 -71
  62. package/fesm2022/ngwr-avatar.mjs.map +1 -1
  63. package/fesm2022/ngwr-back-top.mjs +81 -0
  64. package/fesm2022/ngwr-back-top.mjs.map +1 -0
  65. package/fesm2022/ngwr-badge.mjs +192 -0
  66. package/fesm2022/ngwr-badge.mjs.map +1 -0
  67. package/fesm2022/ngwr-bar-chart.mjs +69 -0
  68. package/fesm2022/ngwr-bar-chart.mjs.map +1 -0
  69. package/fesm2022/ngwr-blur-text.mjs +181 -0
  70. package/fesm2022/ngwr-blur-text.mjs.map +1 -0
  71. package/fesm2022/ngwr-border-glow.mjs +278 -0
  72. package/fesm2022/ngwr-border-glow.mjs.map +1 -0
  73. package/fesm2022/ngwr-breadcrumbs.mjs +101 -0
  74. package/fesm2022/ngwr-breadcrumbs.mjs.map +1 -0
  75. package/fesm2022/ngwr-button.mjs +179 -104
  76. package/fesm2022/ngwr-button.mjs.map +1 -1
  77. package/fesm2022/ngwr-calendar-heatmap.mjs +145 -0
  78. package/fesm2022/ngwr-calendar-heatmap.mjs.map +1 -0
  79. package/fesm2022/ngwr-calendar.mjs +402 -0
  80. package/fesm2022/ngwr-calendar.mjs.map +1 -0
  81. package/fesm2022/ngwr-card.mjs +100 -0
  82. package/fesm2022/ngwr-card.mjs.map +1 -0
  83. package/fesm2022/ngwr-carousel.mjs +128 -0
  84. package/fesm2022/ngwr-carousel.mjs.map +1 -0
  85. package/fesm2022/ngwr-cascader.mjs +280 -0
  86. package/fesm2022/ngwr-cascader.mjs.map +1 -0
  87. package/fesm2022/ngwr-checkbox.mjs +214 -54
  88. package/fesm2022/ngwr-checkbox.mjs.map +1 -1
  89. package/fesm2022/ngwr-circular-text.mjs +168 -0
  90. package/fesm2022/ngwr-circular-text.mjs.map +1 -0
  91. package/fesm2022/ngwr-click-spark.mjs +163 -0
  92. package/fesm2022/ngwr-click-spark.mjs.map +1 -0
  93. package/fesm2022/ngwr-clipboard.mjs +130 -0
  94. package/fesm2022/ngwr-clipboard.mjs.map +1 -0
  95. package/fesm2022/ngwr-collapse.mjs +232 -0
  96. package/fesm2022/ngwr-collapse.mjs.map +1 -0
  97. package/fesm2022/ngwr-color-picker.mjs +646 -0
  98. package/fesm2022/ngwr-color-picker.mjs.map +1 -0
  99. package/fesm2022/ngwr-command-palette.mjs +259 -0
  100. package/fesm2022/ngwr-command-palette.mjs.map +1 -0
  101. package/fesm2022/ngwr-compare.mjs +137 -0
  102. package/fesm2022/ngwr-compare.mjs.map +1 -0
  103. package/fesm2022/ngwr-confetti.mjs +160 -0
  104. package/fesm2022/ngwr-confetti.mjs.map +1 -0
  105. package/fesm2022/ngwr-context-menu.mjs +653 -0
  106. package/fesm2022/ngwr-context-menu.mjs.map +1 -0
  107. package/fesm2022/ngwr-cookie.mjs +127 -0
  108. package/fesm2022/ngwr-cookie.mjs.map +1 -0
  109. package/fesm2022/ngwr-counter.mjs +415 -0
  110. package/fesm2022/ngwr-counter.mjs.map +1 -0
  111. package/fesm2022/ngwr-date-adapter-fns.mjs +180 -0
  112. package/fesm2022/ngwr-date-adapter-fns.mjs.map +1 -0
  113. package/fesm2022/ngwr-date-adapter-luxon.mjs +201 -0
  114. package/fesm2022/ngwr-date-adapter-luxon.mjs.map +1 -0
  115. package/fesm2022/ngwr-date-adapter.mjs +419 -0
  116. package/fesm2022/ngwr-date-adapter.mjs.map +1 -0
  117. package/fesm2022/ngwr-date-picker.mjs +624 -0
  118. package/fesm2022/ngwr-date-picker.mjs.map +1 -0
  119. package/fesm2022/ngwr-decrypt-text.mjs +396 -0
  120. package/fesm2022/ngwr-decrypt-text.mjs.map +1 -0
  121. package/fesm2022/ngwr-density.mjs +157 -0
  122. package/fesm2022/ngwr-density.mjs.map +1 -0
  123. package/fesm2022/ngwr-descriptions.mjs +83 -0
  124. package/fesm2022/ngwr-descriptions.mjs.map +1 -0
  125. package/fesm2022/ngwr-dialog.mjs +249 -383
  126. package/fesm2022/ngwr-dialog.mjs.map +1 -1
  127. package/fesm2022/ngwr-directives.mjs +315 -0
  128. package/fesm2022/ngwr-directives.mjs.map +1 -0
  129. package/fesm2022/ngwr-divider.mjs +74 -59
  130. package/fesm2022/ngwr-divider.mjs.map +1 -1
  131. package/fesm2022/ngwr-donut-chart.mjs +131 -0
  132. package/fesm2022/ngwr-donut-chart.mjs.map +1 -0
  133. package/fesm2022/ngwr-drag-drop.mjs +117 -0
  134. package/fesm2022/ngwr-drag-drop.mjs.map +1 -0
  135. package/fesm2022/ngwr-drawer.mjs +315 -0
  136. package/fesm2022/ngwr-drawer.mjs.map +1 -0
  137. package/fesm2022/ngwr-dropdown.mjs +276 -229
  138. package/fesm2022/ngwr-dropdown.mjs.map +1 -1
  139. package/fesm2022/ngwr-empty.mjs +57 -0
  140. package/fesm2022/ngwr-empty.mjs.map +1 -0
  141. package/fesm2022/ngwr-falling-text.mjs +316 -0
  142. package/fesm2022/ngwr-falling-text.mjs.map +1 -0
  143. package/fesm2022/ngwr-file-upload.mjs +260 -0
  144. package/fesm2022/ngwr-file-upload.mjs.map +1 -0
  145. package/fesm2022/ngwr-form.mjs +133 -48
  146. package/fesm2022/ngwr-form.mjs.map +1 -1
  147. package/fesm2022/ngwr-fuzzy-text.mjs +373 -0
  148. package/fesm2022/ngwr-fuzzy-text.mjs.map +1 -0
  149. package/fesm2022/ngwr-gauge.mjs +83 -0
  150. package/fesm2022/ngwr-gauge.mjs.map +1 -0
  151. package/fesm2022/ngwr-glitch-text.mjs +67 -0
  152. package/fesm2022/ngwr-glitch-text.mjs.map +1 -0
  153. package/fesm2022/ngwr-gradient-text.mjs +109 -0
  154. package/fesm2022/ngwr-gradient-text.mjs.map +1 -0
  155. package/fesm2022/ngwr-hotkey.mjs +263 -0
  156. package/fesm2022/ngwr-hotkey.mjs.map +1 -0
  157. package/fesm2022/ngwr-i18n-en.mjs +168 -0
  158. package/fesm2022/ngwr-i18n-en.mjs.map +1 -0
  159. package/fesm2022/ngwr-i18n-ru.mjs +156 -0
  160. package/fesm2022/ngwr-i18n-ru.mjs.map +1 -0
  161. package/fesm2022/ngwr-i18n.mjs +478 -0
  162. package/fesm2022/ngwr-i18n.mjs.map +1 -0
  163. package/fesm2022/ngwr-icon-adapters-feather.mjs +74 -0
  164. package/fesm2022/ngwr-icon-adapters-feather.mjs.map +1 -0
  165. package/fesm2022/ngwr-icon-adapters-lucide.mjs +88 -0
  166. package/fesm2022/ngwr-icon-adapters-lucide.mjs.map +1 -0
  167. package/fesm2022/ngwr-icon.mjs +189 -650
  168. package/fesm2022/ngwr-icon.mjs.map +1 -1
  169. package/fesm2022/ngwr-image-cropper.mjs +299 -0
  170. package/fesm2022/ngwr-image-cropper.mjs.map +1 -0
  171. package/fesm2022/ngwr-input-number.mjs +239 -0
  172. package/fesm2022/ngwr-input-number.mjs.map +1 -0
  173. package/fesm2022/ngwr-input-otp.mjs +216 -0
  174. package/fesm2022/ngwr-input-otp.mjs.map +1 -0
  175. package/fesm2022/ngwr-input.mjs +183 -104
  176. package/fesm2022/ngwr-input.mjs.map +1 -1
  177. package/fesm2022/ngwr-keyboard.mjs +47 -0
  178. package/fesm2022/ngwr-keyboard.mjs.map +1 -0
  179. package/fesm2022/ngwr-knob.mjs +227 -0
  180. package/fesm2022/ngwr-knob.mjs.map +1 -0
  181. package/fesm2022/ngwr-layout.mjs +197 -0
  182. package/fesm2022/ngwr-layout.mjs.map +1 -0
  183. package/fesm2022/ngwr-lightbox.mjs +131 -0
  184. package/fesm2022/ngwr-lightbox.mjs.map +1 -0
  185. package/fesm2022/ngwr-line-chart.mjs +176 -0
  186. package/fesm2022/ngwr-line-chart.mjs.map +1 -0
  187. package/fesm2022/ngwr-list.mjs +132 -0
  188. package/fesm2022/ngwr-list.mjs.map +1 -0
  189. package/fesm2022/ngwr-loading-bar.mjs +160 -0
  190. package/fesm2022/ngwr-loading-bar.mjs.map +1 -0
  191. package/fesm2022/ngwr-marquee.mjs +224 -0
  192. package/fesm2022/ngwr-marquee.mjs.map +1 -0
  193. package/fesm2022/ngwr-media.mjs +132 -0
  194. package/fesm2022/ngwr-media.mjs.map +1 -0
  195. package/fesm2022/ngwr-mention.mjs +374 -0
  196. package/fesm2022/ngwr-mention.mjs.map +1 -0
  197. package/fesm2022/ngwr-meta.mjs +266 -0
  198. package/fesm2022/ngwr-meta.mjs.map +1 -0
  199. package/fesm2022/ngwr-meter-group.mjs +73 -0
  200. package/fesm2022/ngwr-meter-group.mjs.map +1 -0
  201. package/fesm2022/ngwr-overlay.mjs +145 -0
  202. package/fesm2022/ngwr-overlay.mjs.map +1 -0
  203. package/fesm2022/ngwr-page-header.mjs +53 -0
  204. package/fesm2022/ngwr-page-header.mjs.map +1 -0
  205. package/fesm2022/ngwr-pagination.mjs +152 -96
  206. package/fesm2022/ngwr-pagination.mjs.map +1 -1
  207. package/fesm2022/ngwr-pipes.mjs +290 -11
  208. package/fesm2022/ngwr-pipes.mjs.map +1 -1
  209. package/fesm2022/ngwr-platform.mjs +63 -0
  210. package/fesm2022/ngwr-platform.mjs.map +1 -0
  211. package/fesm2022/ngwr-popconfirm.mjs +188 -0
  212. package/fesm2022/ngwr-popconfirm.mjs.map +1 -0
  213. package/fesm2022/ngwr-popover.mjs +361 -0
  214. package/fesm2022/ngwr-popover.mjs.map +1 -0
  215. package/fesm2022/ngwr-progress.mjs +47 -39
  216. package/fesm2022/ngwr-progress.mjs.map +1 -1
  217. package/fesm2022/ngwr-qr.mjs +168 -190
  218. package/fesm2022/ngwr-qr.mjs.map +1 -1
  219. package/fesm2022/ngwr-radio.mjs +204 -0
  220. package/fesm2022/ngwr-radio.mjs.map +1 -0
  221. package/fesm2022/ngwr-rating.mjs +180 -0
  222. package/fesm2022/ngwr-rating.mjs.map +1 -0
  223. package/fesm2022/ngwr-result.mjs +119 -0
  224. package/fesm2022/ngwr-result.mjs.map +1 -0
  225. package/fesm2022/ngwr-rotating-text.mjs +256 -0
  226. package/fesm2022/ngwr-rotating-text.mjs.map +1 -0
  227. package/fesm2022/ngwr-scramble-text.mjs +165 -0
  228. package/fesm2022/ngwr-scramble-text.mjs.map +1 -0
  229. package/fesm2022/ngwr-scroll.mjs +107 -0
  230. package/fesm2022/ngwr-scroll.mjs.map +1 -0
  231. package/fesm2022/ngwr-segmented.mjs +96 -0
  232. package/fesm2022/ngwr-segmented.mjs.map +1 -0
  233. package/fesm2022/ngwr-select.mjs +842 -307
  234. package/fesm2022/ngwr-select.mjs.map +1 -1
  235. package/fesm2022/ngwr-shiny-text.mjs +127 -0
  236. package/fesm2022/ngwr-shiny-text.mjs.map +1 -0
  237. package/fesm2022/ngwr-sidebar.mjs +134 -0
  238. package/fesm2022/ngwr-sidebar.mjs.map +1 -0
  239. package/fesm2022/ngwr-skeleton.mjs +59 -34
  240. package/fesm2022/ngwr-skeleton.mjs.map +1 -1
  241. package/fesm2022/ngwr-slider.mjs +234 -0
  242. package/fesm2022/ngwr-slider.mjs.map +1 -0
  243. package/fesm2022/ngwr-sparkline.mjs +104 -0
  244. package/fesm2022/ngwr-sparkline.mjs.map +1 -0
  245. package/fesm2022/ngwr-speed-dial.mjs +79 -0
  246. package/fesm2022/ngwr-speed-dial.mjs.map +1 -0
  247. package/fesm2022/ngwr-spinner.mjs +34 -28
  248. package/fesm2022/ngwr-spinner.mjs.map +1 -1
  249. package/fesm2022/ngwr-splash-cursor.mjs +970 -0
  250. package/fesm2022/ngwr-splash-cursor.mjs.map +1 -0
  251. package/fesm2022/ngwr-split-text.mjs +200 -0
  252. package/fesm2022/ngwr-split-text.mjs.map +1 -0
  253. package/fesm2022/ngwr-splitter.mjs +125 -0
  254. package/fesm2022/ngwr-splitter.mjs.map +1 -0
  255. package/fesm2022/ngwr-spotlight-card.mjs +138 -0
  256. package/fesm2022/ngwr-spotlight-card.mjs.map +1 -0
  257. package/fesm2022/ngwr-squircle.mjs +320 -0
  258. package/fesm2022/ngwr-squircle.mjs.map +1 -0
  259. package/fesm2022/ngwr-star-border.mjs +72 -0
  260. package/fesm2022/ngwr-star-border.mjs.map +1 -0
  261. package/fesm2022/ngwr-statistic.mjs +220 -0
  262. package/fesm2022/ngwr-statistic.mjs.map +1 -0
  263. package/fesm2022/ngwr-stepper.mjs +186 -0
  264. package/fesm2022/ngwr-stepper.mjs.map +1 -0
  265. package/fesm2022/ngwr-storage.mjs +317 -0
  266. package/fesm2022/ngwr-storage.mjs.map +1 -0
  267. package/fesm2022/ngwr-switch.mjs +99 -0
  268. package/fesm2022/ngwr-switch.mjs.map +1 -0
  269. package/fesm2022/ngwr-table.mjs +218 -207
  270. package/fesm2022/ngwr-table.mjs.map +1 -1
  271. package/fesm2022/ngwr-tabs.mjs +217 -0
  272. package/fesm2022/ngwr-tabs.mjs.map +1 -0
  273. package/fesm2022/ngwr-textarea.mjs +106 -120
  274. package/fesm2022/ngwr-textarea.mjs.map +1 -1
  275. package/fesm2022/ngwr-theme.mjs +152 -0
  276. package/fesm2022/ngwr-theme.mjs.map +1 -0
  277. package/fesm2022/ngwr-tilt-card.mjs +137 -0
  278. package/fesm2022/ngwr-tilt-card.mjs.map +1 -0
  279. package/fesm2022/ngwr-timeline.mjs +73 -0
  280. package/fesm2022/ngwr-timeline.mjs.map +1 -0
  281. package/fesm2022/ngwr-toast.mjs +446 -0
  282. package/fesm2022/ngwr-toast.mjs.map +1 -0
  283. package/fesm2022/ngwr-toolbar.mjs +46 -0
  284. package/fesm2022/ngwr-toolbar.mjs.map +1 -0
  285. package/fesm2022/ngwr-tree.mjs +483 -0
  286. package/fesm2022/ngwr-tree.mjs.map +1 -0
  287. package/fesm2022/ngwr-typewriter.mjs +229 -0
  288. package/fesm2022/ngwr-typewriter.mjs.map +1 -0
  289. package/fesm2022/ngwr-typography.mjs +79 -0
  290. package/fesm2022/ngwr-typography.mjs.map +1 -0
  291. package/fesm2022/ngwr-utils.mjs +535 -0
  292. package/fesm2022/ngwr-utils.mjs.map +1 -0
  293. package/fesm2022/ngwr-validators.mjs +214 -0
  294. package/fesm2022/ngwr-validators.mjs.map +1 -0
  295. package/fesm2022/ngwr-version.mjs +51 -0
  296. package/fesm2022/ngwr-version.mjs.map +1 -0
  297. package/fesm2022/ngwr-virtual-scroll.mjs +99 -0
  298. package/fesm2022/ngwr-virtual-scroll.mjs.map +1 -0
  299. package/fesm2022/ngwr-waves.mjs +356 -0
  300. package/fesm2022/ngwr-waves.mjs.map +1 -0
  301. package/fesm2022/ngwr-window.mjs +1141 -0
  302. package/fesm2022/ngwr-window.mjs.map +1 -0
  303. package/fesm2022/ngwr.mjs +0 -3
  304. package/fesm2022/ngwr.mjs.map +1 -1
  305. package/file-upload/styles/_index.scss +152 -0
  306. package/form/styles/_index.scss +85 -42
  307. package/gauge/styles/_index.scss +37 -0
  308. package/glitch-text/glitch-text.scss +1 -0
  309. package/glitch-text/styles/_index.scss +144 -0
  310. package/gradient-text/gradient-text.scss +1 -0
  311. package/gradient-text/styles/_index.scss +113 -0
  312. package/icon/styles/_index.scss +21 -15
  313. package/image-cropper/styles/_index.scss +114 -0
  314. package/input/styles/_index.scss +133 -93
  315. package/input-number/styles/_index.scss +75 -0
  316. package/input-otp/styles/_index.scss +53 -0
  317. package/keyboard/styles/_index.scss +55 -0
  318. package/knob/styles/_index.scss +54 -0
  319. package/layout/styles/_index.scss +65 -0
  320. package/lightbox/lightbox.scss +1 -0
  321. package/lightbox/styles/_index.scss +144 -0
  322. package/line-chart/styles/_index.scss +93 -0
  323. package/list/list.scss +1 -0
  324. package/list/styles/_index.scss +101 -0
  325. package/loading-bar/loading-bar.scss +1 -0
  326. package/loading-bar/styles/_index.scss +29 -0
  327. package/marquee/marquee.scss +1 -0
  328. package/marquee/styles/_index.scss +138 -0
  329. package/mention/styles/_index.scss +47 -0
  330. package/meter-group/styles/_index.scss +61 -0
  331. package/package.json +576 -99
  332. package/page-header/styles/_index.scss +78 -0
  333. package/pagination/styles/_index.scss +89 -34
  334. package/popconfirm/styles/_index.scss +32 -0
  335. package/popover/styles/_index.scss +83 -0
  336. package/progress/styles/_index.scss +29 -14
  337. package/qr/styles/_index.scss +6 -3
  338. package/radio/styles/_index.scss +111 -0
  339. package/rating/styles/_index.scss +63 -0
  340. package/result/styles/_index.scss +69 -0
  341. package/rotating-text/rotating-text.scss +1 -0
  342. package/rotating-text/styles/_index.scss +39 -0
  343. package/schematics/collection.json +37 -0
  344. package/schematics/component-style/index.js +49 -0
  345. package/{alert/alert-type.d.ts → schematics/component-style/schema.js} +2 -1
  346. package/schematics/component-style/schema.json +20 -0
  347. package/schematics/icon-set/index.js +96 -0
  348. package/{avatar/public-api.d.ts → schematics/icon-set/schema.js} +2 -1
  349. package/schematics/icon-set/schema.json +39 -0
  350. package/schematics/migrations/v7/index.js +187 -0
  351. package/schematics/migrations.json +10 -0
  352. package/schematics/ng-add/index.js +180 -0
  353. package/{cdk/public-api.d.ts → schematics/ng-add/schema.js} +2 -1
  354. package/schematics/ng-add/schema.json +80 -0
  355. package/schematics/page/index.js +63 -0
  356. package/{alert/public-api.d.ts → schematics/page/schema.js} +2 -2
  357. package/schematics/page/schema.json +39 -0
  358. package/schematics/page/templates.js +198 -0
  359. package/schematics/provider/index.js +126 -0
  360. package/schematics/provider/schema.js +8 -0
  361. package/schematics/provider/schema.json +52 -0
  362. package/schematics/use/index.js +143 -0
  363. package/schematics/use/schema.js +8 -0
  364. package/schematics/use/schema.json +25 -0
  365. package/schematics/use/symbol-map.json +356 -0
  366. package/scramble-text/scramble-text.scss +1 -0
  367. package/scramble-text/styles/_index.scss +8 -0
  368. package/segmented/styles/_index.scss +92 -0
  369. package/select/styles/_index.scss +245 -159
  370. package/shiny-text/shiny-text.scss +1 -0
  371. package/shiny-text/styles/_index.scss +101 -0
  372. package/sidebar/styles/_index.scss +208 -0
  373. package/skeleton/styles/_index.scss +33 -33
  374. package/slider/styles/_index.scss +77 -0
  375. package/sparkline/styles/_index.scss +9 -0
  376. package/speed-dial/styles/_index.scss +158 -0
  377. package/spinner/styles/_index.scss +38 -22
  378. package/splash-cursor/splash-cursor.scss +1 -0
  379. package/splash-cursor/styles/_index.scss +27 -0
  380. package/split-text/split-text.scss +1 -0
  381. package/split-text/styles/_index.scss +22 -0
  382. package/splitter/styles/_index.scss +85 -0
  383. package/spotlight-card/spotlight-card.scss +1 -0
  384. package/spotlight-card/styles/_index.scss +43 -0
  385. package/squircle/styles/_index.scss +34 -0
  386. package/star-border/star-border.scss +1 -0
  387. package/star-border/styles/_index.scss +118 -0
  388. package/statistic/styles/_index.scss +54 -0
  389. package/stepper/styles/_index.scss +162 -0
  390. package/styles/_animations.scss +198 -0
  391. package/styles/_breakpoints.scss +75 -0
  392. package/styles/_grid.scss +71 -0
  393. package/styles/_reset.scss +123 -0
  394. package/styles/_typography.scss +122 -0
  395. package/styles.scss +102 -13
  396. package/switch/styles/_index.scss +82 -0
  397. package/table/styles/_index.scss +255 -4
  398. package/tabs/styles/_index.scss +71 -0
  399. package/textarea/styles/_index.scss +47 -56
  400. package/theme/styles/_colors.scss +83 -0
  401. package/theme/styles/_dark.scss +85 -0
  402. package/theme/styles/_focus.scss +93 -0
  403. package/theme/styles/_index.scss +5 -0
  404. package/theme/styles/_mixins.scss +57 -0
  405. package/theme/styles/_variables.scss +118 -0
  406. package/tilt-card/styles/_index.scss +40 -0
  407. package/tilt-card/tilt-card.scss +1 -0
  408. package/timeline/styles/_index.scss +127 -0
  409. package/toast/styles/_index.scss +263 -0
  410. package/toolbar/styles/_index.scss +65 -0
  411. package/tree/styles/_index.scss +271 -0
  412. package/types/ngwr-affix.d.ts +43 -0
  413. package/types/ngwr-alert.d.ts +68 -0
  414. package/types/ngwr-anchor.d.ts +53 -0
  415. package/types/ngwr-aurora.d.ts +52 -0
  416. package/types/ngwr-avatar.d.ts +90 -0
  417. package/types/ngwr-back-top.d.ts +37 -0
  418. package/types/ngwr-badge.d.ts +158 -0
  419. package/types/ngwr-bar-chart.d.ts +47 -0
  420. package/types/ngwr-blur-text.d.ts +62 -0
  421. package/types/ngwr-border-glow.d.ts +66 -0
  422. package/types/ngwr-breadcrumbs.d.ts +61 -0
  423. package/types/ngwr-button.d.ts +176 -0
  424. package/types/ngwr-calendar-heatmap.d.ts +58 -0
  425. package/types/ngwr-calendar.d.ts +116 -0
  426. package/types/ngwr-card.d.ts +50 -0
  427. package/types/ngwr-carousel.d.ts +57 -0
  428. package/types/ngwr-cascader.d.ts +107 -0
  429. package/types/ngwr-checkbox.d.ts +139 -0
  430. package/types/ngwr-circular-text.d.ts +49 -0
  431. package/types/ngwr-click-spark.d.ts +52 -0
  432. package/types/ngwr-clipboard.d.ts +53 -0
  433. package/types/ngwr-collapse.d.ts +139 -0
  434. package/types/ngwr-color-picker.d.ts +302 -0
  435. package/types/ngwr-command-palette.d.ts +113 -0
  436. package/types/ngwr-compare.d.ts +55 -0
  437. package/types/ngwr-confetti.d.ts +70 -0
  438. package/types/ngwr-context-menu.d.ts +207 -0
  439. package/types/ngwr-cookie.d.ts +60 -0
  440. package/types/ngwr-counter.d.ts +182 -0
  441. package/types/ngwr-date-adapter-fns.d.ts +73 -0
  442. package/types/ngwr-date-adapter-luxon.d.ts +73 -0
  443. package/types/ngwr-date-adapter.d.ts +198 -0
  444. package/types/ngwr-date-picker.d.ts +117 -0
  445. package/types/ngwr-decrypt-text.d.ts +85 -0
  446. package/types/ngwr-density.d.ts +97 -0
  447. package/types/ngwr-descriptions.d.ts +41 -0
  448. package/types/ngwr-dialog.d.ts +210 -0
  449. package/types/ngwr-directives.d.ts +125 -0
  450. package/types/ngwr-divider.d.ts +73 -0
  451. package/types/ngwr-donut-chart.d.ts +53 -0
  452. package/types/ngwr-drag-drop.d.ts +83 -0
  453. package/types/ngwr-drawer.d.ts +155 -0
  454. package/types/ngwr-dropdown.d.ts +124 -0
  455. package/types/ngwr-empty.d.ts +38 -0
  456. package/types/ngwr-falling-text.d.ts +63 -0
  457. package/types/ngwr-file-upload.d.ts +94 -0
  458. package/types/ngwr-form.d.ts +95 -0
  459. package/types/ngwr-fuzzy-text.d.ts +74 -0
  460. package/types/ngwr-gauge.d.ts +39 -0
  461. package/types/ngwr-glitch-text.d.ts +31 -0
  462. package/types/ngwr-gradient-text.d.ts +46 -0
  463. package/types/ngwr-hotkey.d.ts +142 -0
  464. package/types/ngwr-i18n-en.d.ts +18 -0
  465. package/types/ngwr-i18n-ru.d.ts +6 -0
  466. package/types/ngwr-i18n.d.ts +336 -0
  467. package/types/ngwr-icon-adapters-feather.d.ts +44 -0
  468. package/types/ngwr-icon-adapters-lucide.d.ts +54 -0
  469. package/types/ngwr-icon.d.ts +180 -0
  470. package/types/ngwr-image-cropper.d.ts +110 -0
  471. package/types/ngwr-input-number.d.ts +77 -0
  472. package/types/ngwr-input-otp.d.ts +78 -0
  473. package/types/ngwr-input.d.ts +131 -0
  474. package/types/ngwr-keyboard.d.ts +34 -0
  475. package/types/ngwr-knob.d.ts +77 -0
  476. package/types/ngwr-layout.d.ts +89 -0
  477. package/types/ngwr-lightbox.d.ts +50 -0
  478. package/types/ngwr-line-chart.d.ts +90 -0
  479. package/types/ngwr-list.d.ts +71 -0
  480. package/types/ngwr-loading-bar.d.ts +79 -0
  481. package/types/ngwr-marquee.d.ts +95 -0
  482. package/types/ngwr-media.d.ts +74 -0
  483. package/types/ngwr-mention.d.ts +110 -0
  484. package/types/ngwr-meta.d.ts +164 -0
  485. package/types/ngwr-meter-group.d.ts +57 -0
  486. package/types/ngwr-overlay.d.ts +110 -0
  487. package/types/ngwr-page-header.d.ts +35 -0
  488. package/types/ngwr-pagination.d.ts +119 -0
  489. package/types/ngwr-pipes.d.ts +177 -0
  490. package/types/ngwr-platform.d.ts +38 -0
  491. package/types/ngwr-popconfirm.d.ts +79 -0
  492. package/types/ngwr-popover.d.ts +90 -0
  493. package/types/ngwr-progress.d.ts +33 -0
  494. package/types/ngwr-qr.d.ts +56 -0
  495. package/types/ngwr-radio.d.ts +120 -0
  496. package/types/ngwr-rating.d.ts +62 -0
  497. package/types/ngwr-result.d.ts +64 -0
  498. package/types/ngwr-rotating-text.d.ts +72 -0
  499. package/types/ngwr-scramble-text.d.ts +49 -0
  500. package/types/ngwr-scroll.d.ts +65 -0
  501. package/types/ngwr-segmented.d.ts +65 -0
  502. package/types/ngwr-select.d.ts +413 -0
  503. package/types/ngwr-shiny-text.d.ts +70 -0
  504. package/types/ngwr-sidebar.d.ts +83 -0
  505. package/types/ngwr-skeleton.d.ts +41 -0
  506. package/types/ngwr-slider.d.ts +86 -0
  507. package/types/ngwr-sparkline.d.ts +48 -0
  508. package/types/ngwr-speed-dial.d.ts +51 -0
  509. package/types/ngwr-spinner.d.ts +41 -0
  510. package/types/ngwr-splash-cursor.d.ts +94 -0
  511. package/types/ngwr-split-text.d.ts +83 -0
  512. package/types/ngwr-splitter.d.ts +52 -0
  513. package/types/ngwr-spotlight-card.d.ts +71 -0
  514. package/types/ngwr-squircle.d.ts +132 -0
  515. package/types/ngwr-star-border.d.ts +40 -0
  516. package/types/ngwr-statistic.d.ts +88 -0
  517. package/types/ngwr-stepper.d.ts +99 -0
  518. package/types/ngwr-storage.d.ts +178 -0
  519. package/types/ngwr-switch.d.ts +39 -0
  520. package/types/ngwr-table.d.ts +237 -0
  521. package/types/ngwr-tabs.d.ts +125 -0
  522. package/types/ngwr-textarea.d.ts +60 -0
  523. package/types/ngwr-theme.d.ts +124 -0
  524. package/types/ngwr-tilt-card.d.ts +63 -0
  525. package/types/ngwr-timeline.d.ts +40 -0
  526. package/types/ngwr-toast.d.ts +230 -0
  527. package/types/ngwr-toolbar.d.ts +30 -0
  528. package/types/ngwr-tree.d.ts +150 -0
  529. package/types/ngwr-typewriter.d.ts +84 -0
  530. package/types/ngwr-typography.d.ts +56 -0
  531. package/types/ngwr-utils.d.ts +447 -0
  532. package/types/ngwr-validators.d.ts +70 -0
  533. package/types/ngwr-version.d.ts +44 -0
  534. package/types/ngwr-virtual-scroll.d.ts +64 -0
  535. package/types/ngwr-waves.d.ts +71 -0
  536. package/types/ngwr-window.d.ts +437 -0
  537. package/types/ngwr.d.ts +2 -0
  538. package/typewriter/styles/_index.scss +33 -0
  539. package/typewriter/typewriter.scss +1 -0
  540. package/typography/styles/_index.scss +211 -0
  541. package/virtual-scroll/styles/_index.scss +27 -0
  542. package/virtual-scroll/virtual-scroll.scss +1 -0
  543. package/waves/styles/_index.scss +24 -0
  544. package/waves/waves.scss +1 -0
  545. package/window/styles/_index.scss +430 -0
  546. package/alert/alert.component.d.ts +0 -21
  547. package/alert/index.d.ts +0 -5
  548. package/alert/styles/theming.scss +0 -26
  549. package/alert/styles/vars.scss +0 -11
  550. package/avatar/avatar.component.d.ts +0 -27
  551. package/avatar/index.d.ts +0 -5
  552. package/button/button-group.component.d.ts +0 -12
  553. package/button/button.component.d.ts +0 -31
  554. package/button/index.d.ts +0 -5
  555. package/button/public-api.d.ts +0 -8
  556. package/button/styles/vars.scss +0 -13
  557. package/cdk/base.directive.d.ts +0 -20
  558. package/cdk/index.d.ts +0 -5
  559. package/cdk/rxjs/index.d.ts +0 -5
  560. package/cdk/rxjs/is-array.d.ts +0 -8
  561. package/cdk/rxjs/is-defined.d.ts +0 -8
  562. package/cdk/rxjs/is-not-empty-array.d.ts +0 -8
  563. package/cdk/rxjs/is-observable.d.ts +0 -9
  564. package/cdk/rxjs/public-api.d.ts +0 -10
  565. package/cdk/types/index.d.ts +0 -5
  566. package/cdk/types/maybe.d.ts +0 -7
  567. package/cdk/types/public-api.d.ts +0 -9
  568. package/cdk/types/safe-any.d.ts +0 -7
  569. package/cdk/types/theme-color.d.ts +0 -8
  570. package/cdk/utils/generate-random-id.d.ts +0 -12
  571. package/cdk/utils/index.d.ts +0 -5
  572. package/cdk/utils/public-api.d.ts +0 -7
  573. package/checkbox/checkbox.component.d.ts +0 -28
  574. package/checkbox/index.d.ts +0 -5
  575. package/checkbox/public-api.d.ts +0 -7
  576. package/checkbox/styles/vars.scss +0 -16
  577. package/dialog/dialog-animations.d.ts +0 -22
  578. package/dialog/dialog-base.directive.d.ts +0 -40
  579. package/dialog/dialog-close.directive.d.ts +0 -9
  580. package/dialog/dialog-content.directive.d.ts +0 -6
  581. package/dialog/dialog-data.token.d.ts +0 -8
  582. package/dialog/dialog-footer.directive.d.ts +0 -8
  583. package/dialog/dialog-options.d.ts +0 -19
  584. package/dialog/dialog-ref.d.ts +0 -26
  585. package/dialog/dialog-title.directive.d.ts +0 -6
  586. package/dialog/dialog.component.d.ts +0 -28
  587. package/dialog/dialog.module.d.ts +0 -6
  588. package/dialog/dialog.service.d.ts +0 -28
  589. package/dialog/index.d.ts +0 -5
  590. package/dialog/public-api.d.ts +0 -18
  591. package/dialog/styles/vars.scss +0 -7
  592. package/divider/divider.component.d.ts +0 -13
  593. package/divider/index.d.ts +0 -5
  594. package/divider/public-api.d.ts +0 -7
  595. package/dropdown/dropdown-menu-item.component.d.ts +0 -12
  596. package/dropdown/dropdown-menu.component.d.ts +0 -14
  597. package/dropdown/dropdown.directive.d.ts +0 -29
  598. package/dropdown/dropdown.types.d.ts +0 -9
  599. package/dropdown/index.d.ts +0 -5
  600. package/dropdown/public-api.d.ts +0 -10
  601. package/dropdown/styles/vars.scss +0 -18
  602. package/fesm2022/ngwr-cdk-rxjs.mjs +0 -53
  603. package/fesm2022/ngwr-cdk-rxjs.mjs.map +0 -1
  604. package/fesm2022/ngwr-cdk-types.mjs +0 -44
  605. package/fesm2022/ngwr-cdk-types.mjs.map +0 -1
  606. package/fesm2022/ngwr-cdk-utils.mjs +0 -30
  607. package/fesm2022/ngwr-cdk-utils.mjs.map +0 -1
  608. package/fesm2022/ngwr-cdk.mjs +0 -46
  609. package/fesm2022/ngwr-cdk.mjs.map +0 -1
  610. package/fesm2022/ngwr-tag.mjs +0 -87
  611. package/fesm2022/ngwr-tag.mjs.map +0 -1
  612. package/form/form-error.component.d.ts +0 -11
  613. package/form/form-item.component.d.ts +0 -14
  614. package/form/index.d.ts +0 -5
  615. package/form/public-api.d.ts +0 -8
  616. package/icon/icon.component.d.ts +0 -24
  617. package/icon/icon.service.d.ts +0 -23
  618. package/icon/icons.d.ts +0 -770
  619. package/icon/index.d.ts +0 -5
  620. package/icon/provide-wr-icons.d.ts +0 -9
  621. package/icon/public-api.d.ts +0 -10
  622. package/icon/styles/vars.scss +0 -3
  623. package/index.d.ts +0 -5
  624. package/input/index.d.ts +0 -5
  625. package/input/input-types.d.ts +0 -1
  626. package/input/input.component.d.ts +0 -38
  627. package/input/public-api.d.ts +0 -8
  628. package/input/styles/vars.scss +0 -17
  629. package/pagination/index.d.ts +0 -5
  630. package/pagination/pagination.component.d.ts +0 -23
  631. package/pagination/pagination.types.d.ts +0 -7
  632. package/pagination/public-api.d.ts +0 -8
  633. package/pagination/styles/vars.scss +0 -14
  634. package/pipes/index.d.ts +0 -5
  635. package/pipes/new-array.pipe.d.ts +0 -13
  636. package/pipes/public-api.d.ts +0 -7
  637. package/progress/index.d.ts +0 -5
  638. package/progress/progress.component.d.ts +0 -10
  639. package/progress/public-api.d.ts +0 -7
  640. package/progress/styles/theming.scss +0 -8
  641. package/progress/styles/vars.scss +0 -6
  642. package/public-api.d.ts +0 -2
  643. package/qr/generator.d.ts +0 -7
  644. package/qr/index.d.ts +0 -5
  645. package/qr/public-api.d.ts +0 -7
  646. package/qr/qr.component.d.ts +0 -31
  647. package/qr/qrcodegen.d.ts +0 -94
  648. package/select/index.d.ts +0 -5
  649. package/select/public-api.d.ts +0 -10
  650. package/select/select-option-group.component.d.ts +0 -19
  651. package/select/select-option.component.d.ts +0 -22
  652. package/select/select.component.d.ts +0 -63
  653. package/select/select.types.d.ts +0 -17
  654. package/select/styles/vars.scss +0 -32
  655. package/skeleton/index.d.ts +0 -1
  656. package/skeleton/skeleton.component.d.ts +0 -10
  657. package/spinner/index.d.ts +0 -1
  658. package/spinner/spinner.component.d.ts +0 -13
  659. package/spinner/spinner.types.d.ts +0 -7
  660. package/styles/animations.scss +0 -92
  661. package/styles/cdk.scss +0 -5
  662. package/styles/colors.scss +0 -72
  663. package/styles/grid.scss +0 -99
  664. package/styles/maps.scss +0 -31
  665. package/styles/reset.scss +0 -112
  666. package/styles/variables.scss +0 -72
  667. package/table/index.d.ts +0 -5
  668. package/table/public-api.d.ts +0 -11
  669. package/table/styles/table-filter.scss +0 -202
  670. package/table/styles/table-sort.scss +0 -47
  671. package/table/styles/table.scss +0 -232
  672. package/table/styles/vars.scss +0 -21
  673. package/table/table-cell/index.d.ts +0 -7
  674. package/table/table-cell/table-cell.directive.d.ts +0 -8
  675. package/table/table-filter/index.d.ts +0 -7
  676. package/table/table-filter/table-filter.component.d.ts +0 -18
  677. package/table/table-sort/index.d.ts +0 -7
  678. package/table/table-sort/table-sort.component.d.ts +0 -8
  679. package/table/table.component.d.ts +0 -33
  680. package/table/types/index.d.ts +0 -6
  681. package/table/types/table-cell-context.d.ts +0 -6
  682. package/table/types/table-columns.d.ts +0 -7
  683. package/table/types/table-filter-emit.d.ts +0 -5
  684. package/table/types/table-filter-item.d.ts +0 -6
  685. package/table/types/table-order-item.d.ts +0 -5
  686. package/table/types/table-order.enum.d.ts +0 -5
  687. package/tag/index.d.ts +0 -5
  688. package/tag/public-api.d.ts +0 -7
  689. package/tag/styles/_index.scss +0 -32
  690. package/tag/styles/theming.scss +0 -21
  691. package/tag/styles/vars.scss +0 -12
  692. package/tag/tag.component.d.ts +0 -21
  693. package/textarea/index.d.ts +0 -7
  694. package/textarea/public-api.d.ts +0 -7
  695. package/textarea/styles/vars.scss +0 -17
  696. package/textarea/textarea.component.d.ts +0 -44
@@ -1,6 +1,5 @@
1
- import { DOCUMENT } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
- import { InjectionToken, Injectable, inject, Renderer2, ElementRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, HostBinding } from '@angular/core';
2
+ import { InjectionToken, input, inject, ElementRef, EnvironmentInjector, computed, effect, isDevMode, ViewEncapsulation, Component } from '@angular/core';
4
3
 
5
4
  /**
6
5
  * @license
@@ -8,37 +7,14 @@ import { InjectionToken, Injectable, inject, Renderer2, ElementRef, Component, C
8
7
  * Use of this source code is governed by an MIT-style license that can be
9
8
  * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
10
9
  */
11
- const WR_ICONS_PATCH = new InjectionToken('wr_icons_patch');
12
- class WrIconService {
13
- constructor() {
14
- this.registry = new Map();
15
- }
16
- addIcon(...icons) {
17
- icons.forEach(i => this.registry.set(i.name, i.data));
18
- }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
20
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconService, providedIn: 'root' }); }
21
- }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconService, decorators: [{
23
- type: Injectable,
24
- args: [{
25
- providedIn: 'root',
26
- }]
27
- }] });
28
- class WrIconPatchService {
29
- constructor() {
30
- this.icons = inject(WR_ICONS_PATCH, { self: true });
31
- this.wrIconService = inject(WrIconService);
32
- }
33
- addIcons() {
34
- this.icons.forEach(icon => this.wrIconService.addIcon(icon));
35
- }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconPatchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
37
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconPatchService }); }
38
- }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconPatchService, decorators: [{
40
- type: Injectable
41
- }] });
10
+ /**
11
+ * Multi-provider token for registering icons with the icon registry.
12
+ *
13
+ * Use {@link provideWrIcons} instead of providing this token directly.
14
+ *
15
+ * @internal
16
+ */
17
+ const WR_ICONS = new InjectionToken('WR_ICONS');
42
18
 
43
19
  /**
44
20
  * @license
@@ -47,629 +23,123 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
47
23
  * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
48
24
  */
49
25
  /**
50
- * NGWR icon component.
26
+ * Renders a registered SVG icon.
27
+ *
28
+ * Icons must be registered via {@link provideWrIcons} before use —
29
+ * either at the application root or on any ancestor component.
51
30
  *
52
- * {@tutorial} [How to use wr-btn]{@link http://ngwr.dev/docs/components/icon}
31
+ * @example
32
+ * ```html
33
+ * <wr-icon name="home" />
34
+ * ```
35
+ *
36
+ * @see https://ngwr.dev/components/icon
53
37
  */
54
- class WrIconComponent {
55
- set name(value) {
56
- this.setIcon(value);
57
- }
58
- get elClasses() {
59
- return {
60
- 'wr-icon': true,
61
- };
62
- }
63
- setIcon(name) {
64
- if (!this.iconService.registry.has(name)) {
65
- return console.warn(`[NGWR]\nNo icon named ${name} was found.\nYou may need to import it using provideWrIcons()`);
66
- }
67
- const iconData = this.iconService.registry.get(name);
68
- if (iconData) {
69
- this.setElement(this.svgElementFromString(iconData));
70
- }
71
- }
72
- svgElementFromString(svgContent) {
73
- const div = this.doc.createElement('div');
74
- div.innerHTML = svgContent;
75
- const svg = div.querySelector('svg');
76
- if (!svg) {
77
- throw new Error('<svg> tag not found');
78
- }
79
- return svg;
80
- }
81
- setElement(svg) {
82
- this.clearElement();
83
- this.r2.appendChild(this.elRef.nativeElement, svg);
84
- }
85
- clearElement() {
86
- const el = this.elRef.nativeElement;
87
- const children = el.childNodes;
88
- const length = children.length;
89
- for (let i = length - 1; i >= 0; i--) {
90
- const child = children[i];
91
- if (child.tagName?.toLowerCase() === 'svg') {
92
- this.r2.removeChild(el, child);
38
+ class WrIcon {
39
+ name = input.required(/* @ts-ignore */
40
+ ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
41
+ host = inject(ElementRef);
42
+ /**
43
+ * Merged view of every `WR_ICONS` multi-provider visible from this
44
+ * injector position — element-level first overlay, environment-level
45
+ * (app/lazy-route bootstrap) as the base.
46
+ *
47
+ * Angular's default `inject(WR_ICONS)` only returns the **closest**
48
+ * injector's contribution; if a component declares its own
49
+ * `provideWrIcons(...)`, the root registration is **shadowed**, not
50
+ * appended. That contradicts the docstring's "each call adds to the
51
+ * registry" promise and silently breaks any page that overrides while
52
+ * still relying on root-registered icons.
53
+ *
54
+ * We work around it by also asking the environment injector directly
55
+ * (`envInjector.get(WR_ICONS, null, …)`). When no element-level
56
+ * provider exists both calls return the same array reference and we
57
+ * skip the redundant pass. Otherwise we lay element on top of env so
58
+ * a page's local icons can override a root-registered name.
59
+ *
60
+ * One known limitation: multiple element-injector levels in between
61
+ * still shadow each other — but the showcase doesn't nest providers
62
+ * that deep, and the env+local merge fixes the dominant case.
63
+ */
64
+ iconSets = (() => {
65
+ const local = inject(WR_ICONS, { optional: true }) ?? [];
66
+ const env = inject(EnvironmentInjector).get(WR_ICONS, null, { optional: true }) ?? [];
67
+ return local === env ? local : [...env, ...local];
68
+ })();
69
+ registry = computed(() => {
70
+ const map = new Map();
71
+ for (const set of this.iconSets) {
72
+ for (const icon of set) {
73
+ map.set(icon.name, icon);
93
74
  }
94
75
  }
95
- }
76
+ return map;
77
+ }, /* @ts-ignore */
78
+ ...(ngDevMode ? [{ debugName: "registry" }] : /* istanbul ignore next */ []));
79
+ icon = computed(() => this.registry().get(this.name()), /* @ts-ignore */
80
+ ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
96
81
  constructor() {
97
- this.r2 = inject(Renderer2);
98
- this.patchService = inject(WrIconPatchService, { optional: true });
99
- this.iconService = inject(WrIconService);
100
- this.elRef = inject(ElementRef);
101
- this.doc = inject(DOCUMENT);
102
- if (this.patchService) {
103
- this.patchService.addIcons();
104
- }
82
+ effect(() => {
83
+ const icon = this.icon();
84
+ const name = this.name();
85
+ if (!icon) {
86
+ if (isDevMode()) {
87
+ throw new Error(`[NGWR] No icon named "${name}" is registered. Did you forget to call provideWrIcons()?`);
88
+ }
89
+ this.host.nativeElement.innerHTML = '';
90
+ return;
91
+ }
92
+ this.host.nativeElement.innerHTML = icon.data;
93
+ });
105
94
  }
106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: WrIconComponent, isStandalone: true, selector: "wr-icon", inputs: { name: "name" }, host: { properties: { "class": "this.elClasses" } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
95
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: WrIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
96
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: WrIcon, isStandalone: true, selector: "wr-icon", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "attr.data-icon": "name()" }, classAttribute: "wr-icon" }, ngImport: i0, template: '', isInline: true, encapsulation: i0.ViewEncapsulation.None });
108
97
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: WrIconComponent, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: WrIcon, decorators: [{
110
99
  type: Component,
111
100
  args: [{
112
101
  selector: 'wr-icon',
113
102
  template: '',
114
- changeDetection: ChangeDetectionStrategy.OnPush,
115
103
  encapsulation: ViewEncapsulation.None,
104
+ host: {
105
+ class: 'wr-icon',
106
+ '[attr.data-icon]': 'name()',
107
+ },
116
108
  }]
117
- }], ctorParameters: () => [], propDecorators: { name: [{
118
- type: Input,
119
- args: [{ required: true }]
120
- }], elClasses: [{
121
- type: HostBinding,
122
- args: ['class']
123
- }] } });
109
+ }], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }] } });
124
110
 
125
- /* 🤖 this file was generated by svg-to-ts */
126
- const addCircleOutline = {
127
- name: 'add-circle-outline',
128
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M24 33V15m-9 9h18"/><path d="M24 8c8.82 0 16 7.18 16 16s-7.18 16-16 16S8 32.82 8 24 15.18 8 24 8m0-4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4"/></svg>`
129
- };
130
- const addCircle = {
131
- name: 'add-circle',
132
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M24 4.12c-11.05 0-20 8.96-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20M33 26h-7v7c0 1.1-.9 2-2 2s-2-.9-2-2v-7h-7c-1.1 0-2-.9-2-2s.9-2 2-2h7v-7c0-1.1.9-2 2-2s2 .9 2 2v7h7c1.1 0 2 .9 2 2s-.9 2-2 2"/></svg>`
133
- };
134
- const add = {
135
- name: 'add',
136
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M24 36V12M12 24h24"/></svg>`
137
- };
138
- const alertCircleOutline = {
139
- name: 'alert-circle-outline',
140
- data: `<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M24 8.12c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16m0-4c-11.05 0-20 8.96-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20"/><circle cx="24" cy="33" r="2"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M24 27V15"/></svg>`
141
- };
142
- const alertCircle = {
143
- name: 'alert-circle',
144
- data: `<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M24 4.12c-11.05 0-20 8.96-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20M24 35c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m2-8c0 1.1-.9 2-2 2s-2-.9-2-2V15c0-1.1.9-2 2-2s2 .9 2 2z"/></svg>`
145
- };
146
- const alertSquircle = {
147
- name: 'alert-squircle',
148
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M117.8 10.2C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8M64 32.9c3.6 0 6.5 3 6.4 6.6L69.6 70c-.1 3-2.6 5.4-5.6 5.4S58.5 73 58.4 70l-.9-30.5c0-3.6 2.9-6.6 6.5-6.6m0 62.2c-3.9 0-7.1-3.2-7.1-7.1s3.2-7.1 7.1-7.1 7.1 3.2 7.1 7.1-3.2 7.1-7.1 7.1"/></svg>`
149
- };
150
- const alert = {
151
- name: 'alert',
152
- data: `<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 48 48" class="wr-icon__svg"><circle cx="24" cy="36" r="2"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M24 30V12"/></svg>`
153
- };
154
- const arrowBackCircle = {
155
- name: 'arrow-back-circle',
156
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.7 0 0 28.7 0 64s28.7 64 64 64 64-28.7 64-64S99.3 0 64 0m28.1 69.2H48.3L60 80.9c2.1 2.1 2 5.4-.1 7.4-2 1.9-5.3 1.8-7.3-.2L32.4 67.9c-2.2-2.2-2.2-5.6 0-7.8l20.3-20.2c2.1-2.1 5.4-2 7.4.1 1.9 2 1.8 5.3-.2 7.3L48.3 58.9h43.5c2.8 0 5.3 2.2 5.4 5 .1 2.9-2.2 5.3-5.1 5.3"/></svg>`
157
- };
158
- const arrowBack = {
159
- name: 'arrow-back',
160
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M99.2 57.6h-54l14.4-14.4c2.5-2.5 2.7-6.6.3-9.1-2.5-2.6-6.6-2.7-9.2-.1L25.5 59.1c-2.7 2.7-2.7 7 0 9.7l25 25c2.5 2.5 6.6 2.7 9.1.3 2.6-2.5 2.7-6.6.1-9.2L45.2 70.4h54.3c3.6 0 6.5-3 6.4-6.6-.1-3.5-3.2-6.2-6.7-6.2"/></svg>`
161
- };
162
- const arrowBottomCircle = {
163
- name: 'arrow-bottom-circle',
164
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M0 64c0 35.3 28.7 64 64 64s64-28.7 64-64S99.3 0 64 0 0 28.7 0 64m69.2-28.1v43.8L80.9 68c2.1-2.1 5.4-2 7.4.1 1.9 2 1.8 5.3-.2 7.3L67.9 95.6c-2.2 2.2-5.6 2.2-7.8 0L39.9 75.3c-2.1-2.1-2-5.4.1-7.4 2-1.9 5.3-1.8 7.3.2l11.6 11.6V36.2c0-2.8 2.2-5.3 5-5.4 2.9-.1 5.3 2.2 5.3 5.1"/></svg>`
165
- };
166
- const arrowBottom = {
167
- name: 'arrow-bottom',
168
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M58.3 29.5v54L44 69.1c-2.5-2.5-6.6-2.7-9.1-.3-2.6 2.5-2.7 6.6-.1 9.2L60 103.2c2.7 2.7 7 2.7 9.7 0l25-25c2.5-2.5 2.7-6.6.3-9.1-2.5-2.6-6.6-2.7-9.2-.1L71.2 83.5V29.2c0-3.6-3-6.5-6.6-6.4s-6.3 3.2-6.3 6.7"/></svg>`
169
- };
170
- const arrowForwardCircle = {
171
- name: 'arrow-forward-circle',
172
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 128c35.3 0 64-28.7 64-64S99.3 0 64 0 0 28.7 0 64s28.7 64 64 64M35.9 58.8h43.8L68 47.1c-2.1-2.1-2-5.4.1-7.4 2-1.9 5.3-1.8 7.3.2L95.5 60c2.2 2.2 2.2 5.6 0 7.8L75.3 88.1c-2.1 2.1-5.4 2-7.4-.1-1.9-2-1.8-5.3.2-7.3l11.6-11.6H36.2c-2.8 0-5.3-2.2-5.4-5-.1-2.9 2.2-5.3 5.1-5.3"/></svg>`
173
- };
174
- const arrowForward = {
175
- name: 'arrow-forward',
176
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M30.2 70.3h54L69.8 84.7c-2.5 2.5-2.7 6.6-.3 9.1 2.5 2.6 6.6 2.7 9.2.1l25.2-25.2c2.7-2.7 2.7-7 0-9.7l-25-25c-2.5-2.5-6.6-2.7-9.1-.3-2.6 2.5-2.7 6.6-.1 9.2l14.6 14.6H29.9c-3.6 0-6.5 3-6.4 6.6.1 3.5 3.2 6.2 6.7 6.2"/></svg>`
177
- };
178
- const arrowTopCircle = {
179
- name: 'arrow-top-circle',
180
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M128 64c0-35.3-28.7-64-64-64S0 28.7 0 64s28.7 64 64 64 64-28.7 64-64M58.8 92.1V48.3L47.1 60c-2.1 2.1-5.4 2-7.4-.1-1.9-2-1.8-5.3.2-7.3L60 32.5c2.2-2.2 5.6-2.2 7.8 0L88 52.8c2.1 2.1 2 5.4-.1 7.4-2 1.9-5.3 1.8-7.3-.2L69.1 48.3v43.5c0 2.8-2.2 5.3-5 5.4-2.9.1-5.3-2.2-5.3-5.1"/></svg>`
181
- };
182
- const arrowTop = {
183
- name: 'arrow-top',
184
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M71.1 98.5v-54l14.4 14.4c2.5 2.5 6.6 2.7 9.1.3 2.6-2.5 2.7-6.6.1-9.2L69.5 24.8c-2.7-2.7-7-2.7-9.7 0l-25 25c-2.5 2.5-2.7 6.6-.3 9.1 2.5 2.6 6.6 2.7 9.2.1l14.6-14.6v54.3c0 3.6 3 6.5 6.6 6.4 3.5-.1 6.2-3.1 6.2-6.6"/></svg>`
185
- };
186
- const bugOutline = {
187
- name: 'bug-outline',
188
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M108.9 75.5h7.3a6.7 6.7 0 0 0 0-13.4h-7.3v-7.6c0-2-.1-4-.4-5.9h7.7a6.7 6.7 0 0 0 0-13.4h-11.7c-3.5-7.4-9-13.7-15.8-18.2l5.7-5.7C97 8.8 97 4.6 94.4 2A6.64 6.64 0 0 0 85 2l-9.2 9.2c-3.8-1-7.7-1.6-11.8-1.6s-8 .6-11.8 1.6L43 2a6.64 6.64 0 0 0-9.4 0 6.64 6.64 0 0 0 0 9.4l5.7 5.7C32.5 21.6 27 27.9 23.5 35.3H11.8a6.7 6.7 0 0 0 0 13.4h7.7c-.3 1.9-.4 3.9-.4 5.9v7.6h-7.3a6.7 6.7 0 0 0 0 13.4h7.3v7.6c0 2 .1 4 .4 5.9h-7.7a6.7 6.7 0 0 0 0 13.4h11.7c7.1 15 22.6 25.5 40.5 25.5s33.4-10.5 40.6-25.7h11.7a6.7 6.7 0 0 0 0-13.4h-7.7c.3-1.9.4-3.9.4-5.9v-7.5zM64 114.6c-17.4 0-31.5-14.1-31.5-31.5V54.5C32.5 37.1 46.6 23 64 23s31.5 14.1 31.5 31.5v28.6c0 17.4-14.1 31.5-31.5 31.5m18.6-61.8c0 3.7-3 6.7-6.7 6.7H52a6.7 6.7 0 0 1 0-13.4h24c3.6 0 6.6 3 6.6 6.7m0 32c0 3.7-3 6.7-6.7 6.7H52a6.7 6.7 0 0 1 0-13.4h23.9c3.7.1 6.7 3 6.7 6.7"/></svg>`
189
- };
190
- const bug = {
191
- name: 'bug',
192
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M108.9 75.5h7.3a6.7 6.7 0 0 0 0-13.4h-7.3v-7.6c0-2-.1-4-.4-5.9h7.7a6.7 6.7 0 0 0 0-13.4h-11.7c-3.5-7.4-9-13.7-15.8-18.2l5.7-5.7C97 8.8 97 4.6 94.4 2A6.64 6.64 0 0 0 85 2l-9.2 9.2c-3.8-1-7.7-1.6-11.8-1.6s-8 .6-11.8 1.6L43 2a6.64 6.64 0 0 0-9.4 0 6.64 6.64 0 0 0 0 9.4l5.7 5.7C32.5 21.6 27 27.9 23.5 35.3H11.8a6.7 6.7 0 0 0 0 13.4h7.7c-.3 1.9-.4 3.9-.4 5.9v7.6h-7.3a6.7 6.7 0 0 0 0 13.4h7.3v7.6c0 2 .1 4 .4 5.9h-7.7a6.7 6.7 0 0 0 0 13.4h11.7c7.1 15 22.6 25.5 40.5 25.5s33.4-10.5 40.6-25.7h11.7a6.7 6.7 0 0 0 0-13.4h-7.7c.3-1.9.4-3.9.4-5.9v-7.5zM76 91.5H52a6.7 6.7 0 0 1 0-13.4h24c3.7 0 6.7 3 6.7 6.7s-3.1 6.7-6.7 6.7m0-32.1H52A6.7 6.7 0 0 1 52 46h24c3.7 0 6.7 3 6.7 6.7-.1 3.8-3.1 6.7-6.7 6.7"/></svg>`
193
- };
194
- const caretBackCircle = {
195
- name: 'caret-back-circle',
196
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.7 0 0 28.7 0 64s28.7 64 64 64 64-28.7 64-64S99.3 0 64 0"/><path d="m38.4 68.5 26.2 26.2c4 4 10.8 1.2 10.8-4.5V37.8c0-5.6-6.8-8.4-10.8-4.5L38.4 59.5c-2.5 2.5-2.5 6.5 0 9" fill="currentColor"/></svg>`
197
- };
198
- const caretBack = {
199
- name: 'caret-back',
200
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="m41.3 68.5 26.2 26.2c4 4 10.8 1.2 10.8-4.5V37.8c0-5.6-6.8-8.4-10.8-4.5L41.3 59.5c-2.5 2.5-2.5 6.5 0 9"/></svg>`
201
- };
202
- const caretForwardCircle = {
203
- name: 'caret-forward-circle',
204
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.7 0 0 28.7 0 64s28.7 64 64 64 64-28.7 64-64S99.3 0 64 0m22.5 68.5L60.4 94.6c-4 4-10.8 1.2-10.8-4.5V37.8c0-5.6 6.8-8.4 10.8-4.5l26.2 26.2c2.4 2.5 2.4 6.5-.1 9"/></svg>`
205
- };
206
- const caretForward = {
207
- name: 'caret-forward',
208
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M82.3 68.5 56.1 94.6c-4 4-10.8 1.2-10.8-4.5V37.8c0-5.6 6.8-8.4 10.8-4.5l26.2 26.2c2.5 2.5 2.5 6.5 0 9"/></svg>`
209
- };
210
- const checkmarkCircleOutline = {
211
- name: 'checkmark-circle-outline',
212
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M96.3 46.4c2.8 2.8 2.8 7.3 0 10L69 83.7l-10 10-10-10-16.5-16.4c-2.8-2.8-2.8-7.3 0-10s7.3-2.8 10 0L59 73.6l27.3-27.3c2.8-2.7 7.3-2.7 10 .1M128 64c0 35.3-28.7 64-64 64S0 99.3 0 64 28.7 0 64 0s64 28.7 64 64m-10.3 0c0-29.6-24.1-53.7-53.7-53.7S10.3 34.4 10.3 64s24.1 53.7 53.7 53.7 53.7-24.1 53.7-53.7"/></svg>`
213
- };
214
- const checkmarkCircle = {
215
- name: 'checkmark-circle',
216
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.7 0 0 28.7 0 64s28.7 64 64 64 64-28.7 64-64S99.3 0 64 0m32.3 56.4L69 83.7l-10 10-10-10-16.5-16.4c-2.8-2.8-2.8-7.3 0-10s7.3-2.8 10 0L59 73.6l27.3-27.3c2.8-2.8 7.3-2.8 10 0s2.8 7.3 0 10.1"/></svg>`
217
- };
218
- const checkmark = {
219
- name: 'checkmark',
220
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M124.1 21.3c5.2 5.2 5.2 13.7 0 18.9L72.7 91.7l-18.9 18.9-19-18.9-30.9-31c-5.2-5.2-5.2-13.7 0-18.9s13.7-5.2 18.9 0l30.9 30.9 51.4-51.4c5.3-5.2 13.8-5.2 19 0"/></svg>`
221
- };
222
- const chevronDown = {
223
- name: 'chevron-down',
224
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linecap="square" stroke-miterlimit="10" stroke-width="48" d="m112 184 144 144 144-144"/></svg>`
225
- };
226
- const chevronUp = {
227
- name: 'chevron-up',
228
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linecap="square" stroke-miterlimit="10" stroke-width="48" d="m112 328 144-144 144 144"/></svg>`
229
- };
230
- const closeCircleOutline = {
231
- name: 'close-circle-outline',
232
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M109.3 18.7c-25-25-65.5-25-90.5 0s-25 65.5 0 90.5 65.5 25 90.5 0 24.9-65.5 0-90.5M102 102c-21 20.9-55 20.9-76 0S5.1 47 26 26s55-20.9 76 0 20.9 55 0 76"/><path d="M87.5 40.5c-2.1-2.1-5.3-2.1-7.3-.1L63.9 56.7 47.7 40.5c-2-2-5.2-2-7.2 0s-2.1 5.3-.1 7.3L56.6 64 40.5 80.2c-2 2-2 5.2.1 7.3s5.3 2.1 7.3.1L64 71.4l16.1 16.1c2 2 5.3 2.1 7.4 0 2-2 2-5.2-.1-7.3L71.3 64.1l16.3-16.3c1.9-2 1.9-5.2-.1-7.3"/></svg>`
233
- };
234
- const closeCircle = {
235
- name: 'close-circle',
236
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M109.3 18.7c-25-25-65.5-25-90.5 0s-25 65.5 0 90.5 65.5 25 90.5 0 24.9-65.5 0-90.5M87.4 80.2c2 2 2.1 5.3.1 7.3-2.1 2.1-5.3 2.1-7.4 0L64 71.4 47.8 87.5c-2 2-5.2 2-7.3-.1s-2.1-5.3-.1-7.3L56.6 64 40.4 47.7c-2-2-2-5.2.1-7.3 2-2 5.2-2 7.2 0L64 56.7l16.3-16.3c2-2 5.2-2 7.3.1s2.1 5.3.1 7.3L71.3 64.1z"/></svg>`
237
- };
238
- const close = {
239
- name: 'close',
240
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M73 64.1 93.2 44c2.5-2.5 2.5-6.6 0-9.1s-6.6-2.5-9.1 0L64 55.1 43.8 34.9c-2.5-2.5-6.6-2.5-9.1 0s-2.5 6.6 0 9.1l20.2 20.2-20.1 20c-2.5 2.5-2.5 6.6 0 9.1s6.6 2.5 9.1 0L64 73.2l20 20.1c2.5 2.5 6.6 2.5 9.1 0s2.5-6.6 0-9.1z"/></svg>`
241
- };
242
- const cog = {
243
- name: 'cog',
244
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M123.5 64.7c-13.2-4.2-17.6-20.7-8.3-31 2.4-2.7 2.3-6.7-.2-9.3L103.6 13c-2.5-2.5-6.6-2.6-9.3-.2-10.3 9.3-26.8 4.9-31-8.3-1.1-3.4-4.7-5.4-8.1-4.4L39.7 4.3c-3.5.9-5.6 4.4-4.8 7.9 3 13.6-9.1 25.6-22.7 22.7-3.5-.8-7 1.4-7.9 4.8L.1 55.2c-.9 3.5 1 7 4.4 8.1 13.2 4.2 17.6 20.7 8.3 31-2.4 2.7-2.3 6.7.2 9.3L24.4 115c2.5 2.5 6.6 2.6 9.3.2 10.3-9.3 26.8-4.9 31 8.3 1.1 3.4 4.7 5.4 8.1 4.4l15.5-4.2c3.5-.9 5.6-4.4 4.8-7.9-3-13.6 9.1-25.6 22.7-22.7 3.5.8 7-1.4 7.9-4.8l4.2-15.5c.9-3.5-1-7-4.4-8.1M64 93.8c-16.4 0-29.8-13.3-29.8-29.8S47.6 34.2 64 34.2 93.8 47.6 93.8 64 80.4 93.8 64 93.8"/></svg>`
245
- };
246
- const copyOutline = {
247
- name: 'copy-outline',
248
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M120.1 36.6c-7.9-7.9-20-7.9-41.7-7.9s-33.8 0-41.7 7.9-7.9 20-7.9 41.7 0 33.8 7.9 41.7 20 7.9 41.7 7.9 33.8 0 41.7-7.9 7.9-20 7.9-41.7 0-33.8-7.9-41.7m-8.7 74.8c-6.3 6.3-15.9 6.3-33.1 6.3s-26.8 0-33.1-6.3-6.2-15.8-6.2-33 0-26.8 6.3-33.1S61.1 39 78.4 39c17.2 0 26.8 0 33.1 6.3s6.3 15.9 6.3 33.1c-.1 17.2-.1 26.8-6.4 33"/><path d="M20.6 88.9c0-1.9-1-3.6-2.5-4.8-.6-.4-1.1-.9-1.6-1.4-6.3-6.3-6.3-15.9-6.3-33.1s0-26.8 6.3-33.1 15.9-6.3 33.1-6.3 26.8 0 33.1 6.3c.5.5 1 1 1.4 1.6 1.2 1.5 2.9 2.4 4.8 2.5h.1c4.8 0 7.7-5.3 5.1-9.4q-1.2-1.8-2.7-3.3C83.5 0 71.4 0 49.6 0S15.8 0 7.9 7.9 0 27.9 0 49.6s0 33.8 7.9 41.7q1.5 1.5 3.3 2.7c4 2.6 9.4-.2 9.4-5.1q0 .15 0 0"/></svg>`
249
- };
250
- const copy = {
251
- name: 'copy',
252
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M120.1 36.6c-7.9-7.9-20-7.9-41.7-7.9s-33.8 0-41.7 7.9-7.9 20-7.9 41.7 0 33.8 7.9 41.7 20 7.9 41.7 7.9 33.8 0 41.7-7.9 7.9-20 7.9-41.7 0-33.8-7.9-41.7"/><path d="M20.6 78.4c0-25.3 0-39.4 9.2-48.6s23.3-9.2 48.6-9.2c7.4 0 13.8 0 19.5.2-1.1-5.4-3-9.5-6.4-12.9C83.5 0 71.4 0 49.6 0S15.8 0 7.9 7.9 0 27.9 0 49.6s0 33.8 7.9 41.7c3.4 3.4 7.6 5.3 12.9 6.4-.2-5.5-.2-12-.2-19.3"/></svg>`
253
- };
254
- const discover = {
255
- name: 'discover',
256
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="m119.4 57.3-33-33.2c-2.2-2.4-5.4-3.6-8.6-3.6s-6.2 1.2-8.6 3.6l-4 4c-.4.4-1 .4-1.2.4s-.8 0-1.2-.6l-4-4c-2.4-2.2-5.4-3.4-8.6-3.4s-6.2 1.2-8.6 3.6l-33 33.2C3.2 62.7 0 70.1 0 78.1c0 16.2 13.2 29.4 29.4 29.4 11.4 0 21.4-6.6 26.2-16.2q3.6 2.4 8.4 2.4c3 0 6-.8 8.4-2.4 4.8 9.6 14.8 16.2 26.2 16.2 16.2 0 29.4-13.2 29.4-29.4 0-8-3.2-15.4-8.6-20.8m-90 35c-7.8 0-14.2-6.4-14.2-14.2s6.4-14.2 14.2-14.2 14.2 6.4 14.2 14.2-6.4 14.2-14.2 14.2M64 85.1c-3.8 0-7-3-7-7 0-3.8 3-7 7-7s7 3 7 7c0 3.8-3.2 7-7 7m34.6 7.2c-7.8 0-14.2-6.4-14.2-14.2s6.4-14.2 14.2-14.2 14.2 6.4 14.2 14.2-6.4 14.2-14.2 14.2"/></svg>`
257
- };
258
- const document = {
259
- name: 'document',
260
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32" d="M416 221.25V416a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V96a48 48 0 0 1 48-48h98.75a32 32 0 0 1 22.62 9.37l141.26 141.26a32 32 0 0 1 9.37 22.62z"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M256 56v120a32 32 0 0 0 32 32h120m-232 80h160m-160 80h160"/></svg>`
261
- };
262
- const dotsHorizontal = {
263
- name: 'dots-horizontal',
264
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><circle cx="256" cy="256" r="48"/><circle cx="416" cy="256" r="48"/><circle cx="96" cy="256" r="48"/></svg>`
265
- };
266
- const dotsVertical = {
267
- name: 'dots-vertical',
268
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><circle cx="256" cy="256" r="48"/><circle cx="256" cy="416" r="48"/><circle cx="256" cy="96" r="48"/></svg>`
269
- };
270
- const download = {
271
- name: 'download',
272
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M376 160H272v153.37l52.69-52.68a16 16 0 0 1 22.62 22.62l-80 80a16 16 0 0 1-22.62 0l-80-80a16 16 0 0 1 22.62-22.62L240 313.37V160H136a56.06 56.06 0 0 0-56 56v208a56.06 56.06 0 0 0 56 56h240a56.06 56.06 0 0 0 56-56V216a56.06 56.06 0 0 0-56-56M272 48a16 16 0 0 0-32 0v112h32z"/></svg>`
273
- };
274
- const externalOutline = {
275
- name: 'external-outline',
276
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M121.1 0H85.8c-3.5 0-6.6 2.8-6.6 6.2-.1 3.6 2.8 6.6 6.4 6.6h20.6L67.8 51.3c-2.5 2.5-2.5 6.7.1 9.2 2.5 2.4 6.6 2.1 9.1-.4l38.2-38.2v20.4c0 3.5 2.8 6.6 6.2 6.6 3.6.1 6.6-2.8 6.6-6.4V6.9c0-3.9-3-6.9-6.9-6.9"/><path d="M121.4 64.9c-3.6 0-6.6 2.9-6.6 6.5-.2 17.7-1 28.2-8.2 35.2-8.1 8.1-20.5 8.1-42.7 8.1s-34.6 0-42.7-8.1-8-20.4-8-42.6 0-34.6 8.1-42.7c7.2-7.2 17.5-8 35.2-8.1 3.7 0 6.6-3 6.6-6.6 0-3.7-3-6.7-6.7-6.6-23.3.1-37 1-46.2 10.2C0 20.4 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2c9.2-9.2 10.1-22.9 10.2-46.3 0-3.6-3-6.6-6.6-6.6"/></svg>`
277
- };
278
- const eyeOff = {
279
- name: 'eye-off',
280
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M19 10.85c1.53-.54 3.2-.85 5-.85 12 0 18 14 18 14s-1 2.33-3 5.09M13.54 14C8.51 18.14 6 24 6 24s6 14 18 14c4 0 7.33-1.56 10-3.63M8 8l32 32M20.46 20.46c-.9.9-1.46 2.15-1.46 3.54 0 2.76 2.24 5 5 5 1.38 0 2.63-.56 3.54-1.46"/></svg>`
281
- };
282
- const eye = {
283
- name: 'eye',
284
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><circle cx="24" cy="24" r="5" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M6 24s6 14 18 14 18-14 18-14-6-14-18-14S6 24 6 24"/></svg>`
285
- };
286
- const fileAab = {
287
- name: 'file-aab',
288
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M94.6 57.4c-1.8 0-3.3.6-4.5 1.9s-1.8 2.9-1.8 4.9c0 2.1.6 3.7 1.8 4.9s2.7 1.9 4.5 1.9 3.3-.6 4.5-1.9c1.2-1.2 1.8-2.9 1.8-4.9 0-2.1-.6-3.7-1.8-4.9-1.2-1.3-2.7-1.9-4.5-1.9m-55.4 9.4c-.6.3-1.1.7-1.3 1.1q-.3.6-.3 1.5c0 .7.3 1.3.9 1.9s1.4.8 2.3.8c1.6 0 2.9-.5 4-1.5 1-1 1.5-2.2 1.5-3.7v-1.1c-1.9 0-3.3.1-4.5.3-1.1.2-2 .4-2.6.7m25 0c-.6.3-1.1.7-1.3 1.1q-.3.6-.3 1.5c0 .7.3 1.3.9 1.9s1.4.8 2.3.8c1.6 0 2.9-.5 4-1.5 1-1 1.5-2.2 1.5-3.7v-1.1c-1.9 0-3.3.1-4.5.3-1.1.2-1.9.4-2.6.7m53.6-56.6C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8m-91 65.7c-.7.7-1.5 1.1-2.5 1.1-.9 0-1.8-.4-2.5-1.1s-1.1-1.5-1.1-2.5.4-1.8 1.1-2.5 1.5-1.1 2.5-1.1c.9 0 1.8.4 2.5 1.1s1.1 1.5 1.1 2.5-.3 1.8-1.1 2.5m25.8.8H48l-1.1-2.4c-.6.5-1.2 1-1.9 1.4-.6.4-1.4.7-2.2.9s-2 .4-3.1.4c-2.7 0-4.8-.7-6.3-2s-2.2-3-2.2-5.1c0-1.2.3-2.4.7-3.4.5-1 1.3-1.9 2.5-2.7 1.2-.7 2.7-1.3 4.6-1.7q2.85-.6 7.2-.6c0-1.4-.4-2.4-1.1-3.2s-1.7-1.1-3-1.1c-.8 0-1.5.1-2 .4q-.75.45-1.2.9c-.3.4-.5.9-.7 1.4h-6.3c.1-1.2.5-2.3 1-3.3q.75-1.5 2.1-2.7c.9-.8 2-1.4 3.2-1.8 1.3-.5 2.7-.7 4.2-.7 1.4 0 2.7.3 3.9.7s2.2 1.2 3.1 2c.9.9 1.6 1.9 2 3.1.5 1.2.7 2.5.7 3.9zm25 0H73l-1.1-2.4c-.6.5-1.2 1-1.9 1.4-.6.4-1.4.7-2.2.9s-1.9.4-3 .4c-2.7 0-4.8-.7-6.3-2s-2.2-3-2.2-5.1c0-1.2.3-2.4.7-3.4.5-1 1.3-1.9 2.5-2.7 1.2-.7 2.7-1.3 4.6-1.7q2.85-.6 7.2-.6c0-1.4-.4-2.4-1.1-3.2s-1.7-1.1-3-1.1c-.8 0-1.5.1-2 .4q-.75.45-1.2.9c-.3.4-.5.9-.7 1.4H57c.1-1.2.5-2.3 1-3.3q.75-1.5 2.1-2.7c.9-.8 2-1.4 3.2-1.8s2.7-.7 4.2-.7c1.4 0 2.7.3 3.9.7s2.2 1.2 3.1 2 1.6 1.9 2 3.1c.5 1.2.7 2.5.7 3.9zm28.6-7.4c-.6 1.6-1.5 2.9-2.6 4.1-1.1 1.1-2.3 2-3.7 2.7s-2.9.9-4.4.9c-1.1 0-2.1-.1-2.9-.4-.9-.3-1.6-.6-2.2-.9-.7-.4-1.4-.9-1.9-1.4l-1.1 2.4h-4.6V42.4h6.3v11.4c.5-.4 1.1-.8 1.7-1.2.6-.3 1.3-.6 2-.8.8-.3 1.7-.4 2.8-.4q2.4 0 4.5.9c1.4.6 2.7 1.5 3.7 2.7 1.1 1.1 1.9 2.5 2.6 4.1q.9 2.4.9 5.1c-.1 1.9-.5 3.6-1.1 5.1"/></svg>`
289
- };
290
- const fileApk = {
291
- name: 'file-apk',
292
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M38.7 66.8c-.6.3-1.1.7-1.3 1.1q-.3.6-.3 1.5c0 .7.3 1.3.9 1.9.6.5 1.4.8 2.3.8 1.6 0 2.9-.5 3.9-1.4s1.5-2.2 1.5-3.7v-1.1c-1.8 0-3.3.1-4.4.2-1.2.2-2 .4-2.6.7m30.5-9.2c-1.7 0-3.2.6-4.4 1.8S63 62.2 63 64.3c0 2 .6 3.7 1.8 4.9s2.7 1.8 4.4 1.8 3.2-.6 4.4-1.8 1.8-2.8 1.8-4.9c0-2-.6-3.7-1.8-4.9s-2.6-1.8-4.4-1.8m48.6-47.4C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8M26.1 75.8c-.7.7-1.5 1.1-2.4 1.1s-1.7-.4-2.4-1.1-1.1-1.5-1.1-2.4.4-1.7 1.1-2.4 1.5-1.1 2.4-1.1 1.7.4 2.4 1.1 1.1 1.5 1.1 2.4-.4 1.7-1.1 2.4m25.7.8h-4.5l-1.1-2.4c-.6.5-1.2.9-1.9 1.3-.6.4-1.3.7-2.2.9-.9.3-1.8.4-2.9.4-2.7 0-4.7-.7-6.2-2-1.4-1.3-2.1-3-2.1-5 0-1.2.2-2.3.7-3.3s1.3-1.9 2.4-2.6 2.7-1.3 4.5-1.7c1.9-.4 4.2-.6 7.1-.6 0-1.3-.4-2.4-1.1-3.2s-1.7-1.1-2.9-1.1c-.8 0-1.5.1-2 .4q-.75.45-1.2.9c-.3.4-.5.8-.7 1.3h-6.2c.1-1.1.5-2.2 1-3.2s1.2-1.9 2.1-2.6c.9-.8 2-1.3 3.2-1.8 1.2-.4 2.6-.7 4.1-.7 1.4 0 2.7.2 3.9.7s2.2 1.2 3.1 2c.9.9 1.5 1.9 2 3.1s.7 2.5.7 3.9zm28.8-7.3c-.6 1.5-1.5 2.9-2.5 4-1.1 1.1-2.3 2-3.7 2.6s-2.9.9-4.4.9c-1 0-1.9-.1-2.7-.4s-1.4-.5-2-.8c-.7-.4-1.2-.8-1.7-1.2v10.7h-6.2V52H62l1.1 2.4c.5-.5 1.2-.9 1.9-1.3.6-.3 1.3-.6 2.2-.9s1.8-.4 2.9-.4c1.5 0 3 .3 4.4.9s2.6 1.5 3.7 2.6 1.9 2.5 2.5 4 .9 3.2.9 5c-.1 1.8-.4 3.5-1 5m20.2 7.3-8.6-11.2v11.2h-6.1V42.8h6.2v19.3L99.8 52h7L98 63.8l9.9 12.9z"/></svg>`
293
- };
294
- const fileApks = {
295
- name: 'file-apks',
296
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M28.2 69.3c0 1.3 1.3 2.7 3.2 2.7 3.2 0 5.4-2.1 5.4-5.1v-1.1c-7.3 0-8.6 1.4-8.6 3.5"/><path d="M117.8 10.2C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8M14.9 76.8c-1.9 0-3.5-1.6-3.5-3.5s1.6-3.5 3.5-3.5 3.5 1.6 3.5 3.5-1.6 3.5-3.5 3.5m28-.3h-4.6l-1.1-2.4c-.6.5-1.2 1-1.9 1.3-1.2.7-2.9 1.3-5.1 1.3-5.4 0-8.3-2.9-8.3-7 0-4.9 3.5-8.3 14.7-8.3 0-2.7-1.6-4.3-4-4.3-1.7 0-2.5.7-3.1 1.3-.3.4-.5.9-.6 1.3h-6.2c.6-4.5 4.3-8.3 10.4-8.3 5.6 0 9.6 4.1 9.6 9.6v15.5zm17.9.3c-2.1 0-3.6-.6-4.7-1.2-.6-.4-1.2-.7-1.7-1.2v10.7h-6.2V51.9h4.6l1.1 2.4c.5-.5 1.2-1 1.9-1.3 1.2-.6 2.9-1.3 5.1-1.3 6.2 0 11.5 5.3 11.5 12.6-.1 7.2-5.5 12.5-11.6 12.5m30.4-.3-8.6-11.2v11.2h-6.2V42.8h6.2v19.3l7.5-10.2h7l-8.8 11.8 9.9 12.9h-7zm17.1.3c-6.4 0-9.7-3.2-10.2-8h5.9c.3 1.7 1.6 2.9 3.7 2.9s3.5-1.3 3.5-2.7c0-3.5-12.6-1.4-12.6-9.9 0-4 3.5-7.5 8.8-7.5 5.9 0 9 3.2 9.6 7.5h-5.9c-.3-1.1-1.6-2.4-3.5-2.4s-2.9 1.1-2.9 2.4c0 3.4 12.6 1.4 12.6 10.2.1 4-3.5 7.5-9 7.5"/><path d="M60 57.5c-3.5 0-6.2 2.6-6.2 6.7s2.7 6.7 6.2 6.7 6.2-2.6 6.2-6.7c-.1-4.1-2.7-6.7-6.2-6.7"/></svg>`
297
- };
298
- const fileIpa = {
299
- name: 'file-ipa',
300
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M63.5 57.5c-1.7 0-3.2.6-4.4 1.8s-1.8 2.8-1.8 4.9c0 2 .6 3.7 1.8 4.9s2.6 1.8 4.4 1.8c1.7 0 3.2-.6 4.4-1.8s1.8-2.8 1.8-4.9c0-2-.6-3.7-1.8-4.9s-2.7-1.8-4.4-1.8M87 66.8c-.6.3-1.1.7-1.3 1.1s-.3.9-.3 1.5c0 .7.3 1.3.9 1.9.6.5 1.4.8 2.3.8 1.6 0 2.9-.5 3.9-1.4S94 68.5 94 67v-1.1c-1.8 0-3.3.1-4.4.2s-2 .4-2.6.7m30.8-56.6C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8m-84 65.6c-.7.7-1.5 1.1-2.4 1.1s-1.7-.4-2.4-1.1-1.1-1.5-1.1-2.4.4-1.7 1.1-2.4 1.5-1.1 2.4-1.1 1.7.4 2.4 1.1 1.1 1.5 1.1 2.4c-.1.9-.4 1.7-1.1 2.4m12 .7h-6.2V51.9h6.2zm-.5-28.8c-.7.7-1.5 1.1-2.4 1.1s-1.7-.4-2.4-1.1-1.1-1.5-1.1-2.4.4-1.7 1.1-2.4 1.5-1.1 2.4-1.1 1.7.4 2.4 1.1 1.1 1.5 1.1 2.4c-.1.8-.4 1.7-1.1 2.4m29.5 21.6c-.6 1.5-1.5 2.9-2.5 4-1.1 1.1-2.3 2-3.7 2.6s-2.9.9-4.4.9c-1 0-1.9-.1-2.7-.4s-1.4-.5-2-.8c-.7-.4-1.2-.8-1.7-1.2v10.7h-6.2V51.9h4.5l1.1 2.4c.5-.5 1.2-.9 1.9-1.3.6-.3 1.3-.6 2.2-.9s1.8-.4 2.9-.4c1.5 0 3 .3 4.4.9s2.6 1.5 3.7 2.6 1.9 2.5 2.5 4 .9 3.2.9 5c.1 1.9-.2 3.5-.9 5.1m25.3 7.2h-4.5l-1.1-2.4c-.6.5-1.2.9-1.9 1.3-.6.4-1.3.7-2.2.9-.9.3-1.8.4-2.9.4-2.7 0-4.7-.7-6.1-2s-2.1-3-2.1-5c0-1.2.2-2.3.7-3.3s1.3-1.9 2.4-2.6 2.7-1.3 4.5-1.7c1.9-.4 4.2-.6 7-.6 0-1.3-.4-2.4-1.1-3.2s-1.7-1.1-2.9-1.1c-.8 0-1.5.1-2 .4q-.75.45-1.2.9c-.3.4-.5.8-.7 1.3h-6c.1-1.1.5-2.2 1-3.2s1.2-1.9 2.1-2.6 2-1.3 3.2-1.8c1.2-.4 2.6-.7 4.1-.7 1.4 0 2.7.2 3.9.7s2.2 1.2 3.1 2 1.5 1.9 2 3.1.7 2.5.7 3.9z"/></svg>`
301
- };
302
- const fileZip = {
303
- name: 'file-zip',
304
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M86.5 57.4c-1.8 0-3.3.6-4.5 1.9-1.2 1.2-1.8 2.9-1.8 4.9 0 2.1.6 3.7 1.8 4.9s2.7 1.9 4.5 1.9 3.3-.6 4.5-1.9 1.8-2.9 1.8-4.9c0-2.1-.6-3.7-1.8-4.9s-2.7-1.9-4.5-1.9m31.3-47.2C107.6 0 92 0 64 0S20.4 0 10.2 10.2 0 36 0 64s0 43.6 10.2 53.8S36 128 64 128s43.6 0 53.8-10.2S128 92 128 64s0-43.6-10.2-53.8M34.9 75.9c-.7.7-1.5 1.1-2.5 1.1s-1.8-.4-2.5-1.1-1.1-1.5-1.1-2.5.4-1.8 1.1-2.5 1.5-1.1 2.5-1.1 1.8.4 2.5 1.1 1.1 1.5 1.1 2.5-.3 1.8-1.1 2.5m24.2.8H39.7v-5.2l10.9-13.9H39.7v-6h18.8v5.2L47.6 70.7H59v6zm10.2 0H63v-25h6.3zm-.5-29.4c-.7.7-1.5 1.1-2.5 1.1-.9 0-1.8-.4-2.5-1.1s-1.1-1.5-1.1-2.5.4-1.8 1.1-2.5 1.5-1.1 2.5-1.1c.9 0 1.8.4 2.5 1.1s1.1 1.5 1.1 2.5-.4 1.8-1.1 2.5m29.3 22c-.6 1.6-1.5 2.9-2.6 4.1-1.1 1.1-2.3 2-3.7 2.7s-2.9.9-4.4.9c-1.1 0-2-.1-2.8-.4s-1.5-.5-2-.8c-.7-.4-1.2-.8-1.7-1.3v10.9h-6.3V51.7h4.6l1.1 2.4c.5-.5 1.2-1 1.9-1.4.6-.3 1.4-.6 2.2-.9s1.9-.4 2.9-.4q2.4 0 4.5.9c1.4.6 2.7 1.5 3.7 2.7 1.1 1.1 1.9 2.5 2.6 4.1q.9 2.4.9 5.1.15 2.85-.9 5.1"/></svg>`
305
- };
306
- const filterOutline = {
307
- name: 'filter-outline',
308
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M113.5 10.3c2.3 0 4.2 1.9 4.2 4.2 0 1.1-.5 2.2-1.3 3l-39 38c-2 1.9-3.1 4.6-3.1 7.4v53.3l-20.6-10V62.9c0-2.8-1.1-5.4-3.1-7.4l-39-38c-.8-.8-1.3-1.9-1.3-3 0-2.3 1.9-4.2 4.2-4.2zm0-10.3h-99C6.5 0 0 6.5 0 14.5c0 3.9 1.6 7.7 4.4 10.4l39 38v44.9c0 2.9 1.7 5.6 4.3 6.9l25.8 12.5c1.1.5 2.2.8 3.4.8 4 0 7.7-3.2 7.7-7.7V62.9l39-38c2.8-2.7 4.4-6.5 4.4-10.4 0-8-6.5-14.5-14.5-14.5"/></svg>`
309
- };
310
- const filter = {
311
- name: 'filter',
312
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M128 14.5c0-8-6.5-14.5-14.5-14.5h-99C6.5 0 0 6.5 0 14.5c0 3.9 1.6 7.7 4.4 10.4l39 38v44.9c0 2.9 1.7 5.6 4.3 6.9l25.8 12.5c5.1 2.5 11-1.2 11-6.9V62.9l39-38c2.9-2.8 4.5-6.5 4.5-10.4"/></svg>`
313
- };
314
- const flash = {
315
- name: 'flash',
316
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M194.82 496a18.36 18.36 0 0 1-18.1-21.53v-.11L204.83 320H96a16 16 0 0 1-12.44-26.06L302.73 23a18.45 18.45 0 0 1 32.8 13.71c0 .3-.08.59-.13.89L307.19 192H416a16 16 0 0 1 12.44 26.06L209.24 489a18.45 18.45 0 0 1-14.42 7"/></svg>`
317
- };
318
- const folder = {
319
- name: 'folder',
320
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M440 432H72a40 40 0 0 1-40-40V120a40 40 0 0 1 40-40h75.89a40 40 0 0 1 22.19 6.72l27.84 18.56a40 40 0 0 0 22.19 6.72H440a40 40 0 0 1 40 40v240a40 40 0 0 1-40 40M32 192h448"/></svg>`
321
- };
322
- const help = {
323
- name: 'help',
324
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64m-6 304a20 20 0 1 1 20-20 20 20 0 0 1-20 20m33.44-102C267.23 276.88 265 286.85 265 296a14 14 0 0 1-28 0c0-21.91 10.08-39.33 30.82-53.26C287.1 229.8 298 221.6 298 203.57c0-12.26-7-21.57-21.49-28.46-3.41-1.62-11-3.2-20.34-3.09-11.72.15-20.82 2.95-27.83 8.59C215.12 191.25 214 202.83 214 203a14 14 0 1 1-28-1.35c.11-2.43 1.8-24.32 24.77-42.8 11.91-9.58 27.06-14.56 45-14.78 12.7-.15 24.63 2 32.72 5.82C312.7 161.34 326 180.43 326 203.57c0 33.83-22.61 49.02-42.56 62.43"/></svg>`
325
- };
326
- const home = {
327
- name: 'home',
328
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M72.1 3.5c-4.6-4.6-12-4.6-16.6 0l-50 48.4C1.9 55.5.1 60.5.7 65.5l5.6 49.2c.8 7.6 7.2 13.2 14.8 13.2h16.4c4.6 0 8.2-3.6 8.2-8.2v-24c0-5.2 4.2-9.6 9.6-9.6h16.8c5.2 0 9.6 4.2 9.6 9.6v24.2c0 4.6 3.6 8.2 8.2 8.2h16.4c7.6 0 14-5.8 14.8-13.2l5.6-49.2c.6-5-1.2-10.2-4.8-13.6z"/></svg>`
329
- };
330
- const infoCircleOutline = {
331
- name: 'info-circle-outline',
332
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32" d="M248 64C146.39 64 64 146.39 64 248s82.39 184 184 184 184-82.39 184-184S349.61 64 248 64z"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M220 220h32v116"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M208 340h88"/><path d="M248 130a26 26 0 1 0 26 26 26 26 0 0 0-26-26"/></svg>`
333
- };
334
- const lockOpened = {
335
- name: 'lock-opened',
336
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M102.5 50.1c-6.7-6.7-17.1-6.7-35.6-6.7h-7.5c-3.9 0-7.5 0-10.7.1V25.6c0-8.7 7.3-15.7 16-15.3 8.3.4 14.6 7.5 14.6 15.7v2.2c0 2.8 2.3 5.1 5.1 5.1s5.1-2.3 5.1-5.1v-2C89.6 11.8 77.9-.3 63.5 0 49.6.3 38.4 11.6 38.4 25.6V44c-6.3.8-11 2.5-14.6 6.1-6.7 6.7-6.7 17.1-6.7 35.6s0 28.8 6.7 35.6c6.7 6.7 17.1 6.7 35.6 6.7h7.5c18.5 0 28.8 0 35.6-6.7 6.7-6.7 6.7-17.1 6.7-35.6.1-18.6.1-28.9-6.7-35.6"/></svg>`
337
- };
338
- const lock = {
339
- name: 'lock',
340
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M102.5 50.1c-3.3-3.3-7.4-5-12.9-5.8V25.6C89.6 11.5 78.1 0 64 0S38.4 11.5 38.4 25.6V44c-6.3.8-11 2.5-14.6 6.1-6.7 6.7-6.7 17.1-6.7 35.6s0 28.8 6.7 35.6c6.7 6.7 17.1 6.7 35.6 6.7h7.5c18.5 0 28.8 0 35.6-6.7 6.7-6.7 6.7-17.1 6.7-35.6.1-18.6.1-28.9-6.7-35.6m-43.1-6.8c-3.9 0-7.5 0-10.7.1V25.6c0-8.4 6.9-15.3 15.3-15.3s15.3 6.9 15.3 15.3v17.8c-3.7-.1-7.8-.1-12.4-.1z"/></svg>`
341
- };
342
- const logoAndroid = {
343
- name: 'logo-android',
344
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M47.86 36.94c-.02-.1-.03-.2-.05-.3-.1-.6-.22-1.2-.37-1.79-.25-1.03-.57-2.03-.95-3-.32-.82-.68-1.62-1.09-2.4-.52-1-1.1-1.95-1.75-2.86-.79-1.11-1.68-2.16-2.65-3.12q-.615-.6-1.26-1.17c-.94-.81-1.94-1.55-3-2.21 0-.02.02-.03.03-.05.48-.84.97-1.67 1.45-2.51.47-.82.95-1.64 1.42-2.45.34-.59.68-1.18 1.02-1.76a2.217 2.217 0 0 0-.79-3.01 2.26 2.26 0 0 0-1.36-.3c-.11.01-.23.03-.34.06a2.22 2.22 0 0 0-1.34 1.03c-.34.59-.68 1.18-1.02 1.76l-1.42 2.45c-.48.84-.97 1.67-1.45 2.51-.05.09-.11.18-.16.28-.07-.03-.15-.06-.22-.09a24 24 0 0 0-8.59-1.58h-.25c-2.69.03-5.28.5-7.69 1.34-.28.1-.55.2-.83.31-.05-.09-.1-.17-.15-.26-.48-.84-.97-1.67-1.45-2.51-.47-.82-.95-1.64-1.42-2.45-.34-.59-.68-1.18-1.02-1.76-.08-.14-.17-.27-.28-.38-.29-.32-.66-.54-1.06-.65a2 2 0 0 0-.34-.06c-.14-.01-.28-.02-.42 0-.33.03-.65.13-.94.3a2.13 2.13 0 0 0-.9 1.04c-.04.09-.07.19-.1.29a2.22 2.22 0 0 0 .22 1.68c.34.59.68 1.18 1.02 1.76.47.82.95 1.64 1.42 2.45.48.84.97 1.67 1.45 2.51 0 0 0 .01.01.02-.98.61-1.91 1.28-2.78 2.02a24.684 24.684 0 0 0-4.17 4.51c-.65.91-1.23 1.86-1.75 2.86-.4.78-.77 1.58-1.09 2.4-.38.97-.69 1.97-.95 3-.14.59-.27 1.18-.37 1.79-.02.1-.03.2-.05.29-.05.35-.1.7-.14 1.06h48c-.04-.36-.08-.71-.14-1.06Zm-33.14-6.58c-.79 1.19-2.21 1.63-3.17.99s-1.1-2.12-.31-3.31 2.21-1.63 3.17-.99 1.1 2.12.31 3.31m21.76.99c-.96.64-2.38.2-3.17-.99s-.65-2.67.31-3.31 2.38-.2 3.17.99.65 2.67-.31 3.31"/></svg>`
345
- };
346
- const logoAngular = {
347
- name: 'logo-angular',
348
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M42 11.34 40.7 31.7 28.27 5zm-8.61 26.32L24 43l-9.39-5.34 1.91-4.62h14.96zM24 15.14l4.92 11.93h-9.84zM7.29 31.69 6 11.33l13.73-6.34z"/></svg>`
349
- };
350
- const logoAppCenter = {
351
- name: 'logo-app-center',
352
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M96 0v109.9L0 96l96 32 32-13.3V13.3z"/><path d="M43.7 88V68.8L64 82.7l16-5.3V34.7l-16-5.3-19.7 13.8V24L32 21.3 10.7 40v8L23 56l-12.3 8v8L32 90.7zM64 45.3v21.3L43.7 56zm-46.9-2.1L32 32v18.7zM32 61.3V80L17.1 68.8z"/></svg>`
353
- };
354
- const logoAppGallery = {
355
- name: 'logo-app-gallery',
356
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer_1" x="0" y="0" version="1.1" viewBox="0 0 128 128" class="wr-icon__svg"><style>.st0{fill-rule:evenodd;clip-rule:evenodd}</style><path d="M55.8 74.2H61l-2.6-6z" class="st0"/><path d="M92.1 0H35.9C9.6 0 0 9.6 0 35.9v56.2C0 118.4 9.6 128 35.9 128h56.2c26.3 0 35.9-9.6 35.9-35.9V35.9C128 9.6 118.4 0 92.1 0M28.7 80.8h-3.4V74h-7.7v6.8h-3.4V64h3.4v6.8h7.7V64h3.4zm19.1-7.3c0 4.8-2.6 7.6-7.3 7.6-4.6 0-7.2-2.7-7.2-7.4V64h3.4v9.5c0 2.8 1.4 4.3 3.8 4.3 2.5 0 3.8-1.5 3.8-4.2V64h3.4v9.5zm-5.1-52.2h3c0 10.1 8.2 18.3 18.3 18.3s18.3-8.2 18.3-18.3h3c0 11.8-9.6 21.3-21.3 21.3-11.8.1-21.3-9.5-21.3-21.3m21 59.4-1.5-3.5h-7.7L53 80.7h-3.5L57 64h3l7.4 16.7zm21.5.1h-2.8l-3.8-11-3.8 11H72L66 64h3.6l3.7 11.5L77.2 64H80l3.8 11.5L87.5 64H91zm21.2-.1H93.7V64H106v3.1h-9v3.4h6.2v3.1H97v4.1h9.3v3zm7.4 0h-3.4V64h3.4z" class="st0"/></svg>`
357
- };
358
- const logoApple = {
359
- name: 'logo-apple',
360
- data: `<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M39.91 17.36c-.24.19-4.52 2.6-4.52 7.96 0 6.2 5.44 8.39 5.6 8.44-.03.13-.86 3-2.87 5.93-1.79 2.57-3.65 5.14-6.49 5.14s-3.57-1.65-6.85-1.65-4.33 1.7-6.93 1.7-4.41-2.38-6.49-5.3C8.95 36.15 7 30.81 7 25.75c0-8.12 5.28-12.42 10.47-12.42 2.76 0 5.06 1.81 6.79 1.81s4.22-1.92 7.36-1.92c1.19 0 5.47.11 8.28 4.14Zm-9.77-7.58c1.3-1.54 2.22-3.68 2.22-5.82 0-.3-.03-.6-.08-.84-2.11.08-4.63 1.41-6.14 3.17-1.19 1.35-2.3 3.49-2.3 5.66 0 .33.05.65.08.76.13.03.35.05.57.05 1.9 0 4.28-1.27 5.66-2.98Z"/></svg>`
361
- };
362
- const logoAppscreener = {
363
- name: 'logo-appscreener',
364
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" class="wr-icon__svg"><path d="M24.88 215.29c.09-.06.18-.12.24-.18-.06.06-.15.12-.24.18M95.44 160c0-.8.09-1.59.12-2.36l-23.91-1.83c-1.06 16.47 3.39 32.53 12.1 45.87l20.52-13.11c-5.56-8.14-8.83-17.97-8.83-28.57m11.1-31.65-32.3-31.94c-9.48 10.72-16.74 23.73-20.78 38.46-.89 3.28-1.59 6.58-2.15 9.89l44.37 10.18c1-10 4.92-19.15 10.86-26.59m115.66-21.16 22.35-16.62c-5.28-7.59-16.92-20.96-24.44-26.57l-18.13 21.82c12.1 9.15 16.73 16.44 20.22 21.37"/><path d="M51.19 76.63c-18.13 19.45-25.06 33.8-30.32 61.14l25.92 5.76c3.22-19.34 11.9-36.69 24.35-50.51zm-39.47 71.89c-1.86 30.52 6.26 63.11 21.99 86.73l45.84-30.44c-9.45-14.38-14.26-31.65-13.11-49.42zc0-.12 0 .09 0 0m23.5-106.04 44.4 49.8c14.41-14.52 33.36-23.85 53.7-26.98L125.19 0C90.74 4.37 59.51 19.69 35.22 42.48m153.09 89.42 29.85-21.17c-5.25-7.59-11.78-14.32-19.28-19.93l-24.15 27.34c5.34 3.66 9.98 8.32 13.58 13.76m33.89-24.71 22.35-16.62c-5.28-7.59-16.92-20.96-24.44-26.57l-18.13 21.82c12.1 9.15 16.73 16.44 20.22 21.37m-116.28 83.6L72.8 217.12c4.52 5.23 11.51 12.28 17.06 16.38l23.53-34.83a53.5 53.5 0 0 1-7.47-7.88"/><path d="m140.93 109.58-6.61-38.44c-19.31 2.98-38.2 12.55-51.78 26.45l25.74 28.78c8.18-9.23 19.66-15.46 32.65-16.79M69.31 219.84l-17.74 14.91c6.05 7 15.14 15.79 22.64 21.25l13.34-18.18a98 98 0 0 1-18.24-17.98m76.96-134.76h-.32c-1.3 0-2.57.09-3.84.15l1.3 24.09c.89-.06 1.8-.03 2.72-.03 9.56 0 18.48 2.69 26.1 7.29l13.79-19.96c-11.53-7.26-25.14-11.51-39.75-11.54m-.15-5.73c15.56 0 30.05 4.4 42.36 12.04.24.15.5.3.77.44L218 49.97c-18.95-12.31-41.3-19.96-65.51-21.11-4.22-.21-8.41-.18-12.55.03l1.77 50.6c1.49-.08 2.94-.14 4.41-.14"/></svg>`
365
- };
366
- const logoAppstore = {
367
- name: 'logo-appstore',
368
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.6 0 0 28.6 0 64s28.6 64 64 64 64-28.6 64-64S99.4 0 64 0M39.7 92c-.8 1.4-2.3 2.2-3.8 2.2-.8 0-1.6-.2-2.2-.6-2.1-1.2-2.8-3.9-1.6-6l4.4-7.3c.4-.8 1.3-1.2 2.2-1.2h.6c3.2 0 5.4 1.9 6 3.8zm37-14.3H29.1c-2.4 0-4.4-2-4.4-4.4v-.2c.1-2.4 2.2-4.2 4.6-4.2H43l16.3-27.8-5.3-9c-1.2-2.1-.7-4.8 1.4-6.1s4.8-.7 6.2 1.3c0 .1.1.1.1.2l2.8 4.8 2.8-4.8c1.3-2.1 4-2.8 6.1-1.6l.1.1c2 1.3 2.6 4 1.4 6.1l-5.3 9-5.1 8.8-11.2 19h16.5c2.1 0 4.6 1.1 5.7 2.9l.1.2c.9 1.6 1.4 2.6 1.4 4.2q0 .75-.3 1.5m22.2 0h-7.7l5.7 9.6c1.3 2.1.6 4.8-1.5 6.2-.7.4-1.5.6-2.3.6-1.6 0-3-.8-3.8-2.2l-8.4-14.2-5.2-8.9L69 57.3c-2-3.3-2-7.5-.2-10.9 1.3-2.3 2.3-3 2.3-3L86 68.9h12.8c2.4 0 4.5 1.8 4.6 4.2.1 2.5-1.8 4.5-4.3 4.6z"/></svg>`
369
- };
370
- const logoBankCenterCredit = {
371
- name: 'logo-bank-center-credit',
372
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="m45.7 31-14-23.3c-3.5-5.8-11.9-5.8-15.5 0L2.3 31c-3.6 6.1.7 13.7 7.7 13.7h28c7 0 11.3-7.6 7.7-13.7m-5.9 8.7H11.7c-3.9 0-6.2-4.2-4.2-7.5l14-23.3c2-3.2 6.6-3.2 8.6 0l14 23.3c1.9 3.2-.4 7.5-4.3 7.5m-9.2-26.1c-1.3-2.4-4.7-2.4-6.1 0l-9.3 15.5c-1.4 2.4.3 5.4 3.1 5.4h18.6c2.8 0 4.5-3.1 3.1-5.4zm4.8 16H23.3c-1.1 0-1.7-1.2-1.2-2.1l6.1-10.1c.6-.9 1.9-.9 2.4 0l6.1 10.1c.4.9-.2 2.1-1.3 2.1"/></svg>`
373
- };
374
- const logoChrome = {
375
- name: 'logo-chrome',
376
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M17.1 24c0 3.8 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9-3.1-6.9-6.9-6.9-6.9 3.1-6.9 6.9m29.6-3.9c-.2-1-.4-2-.7-3 .2 1 .5 2 .7 3-.2-1-.4-2-.7-3H30c2 1.7 3.2 4.1 3.2 6.9 0 1.6-.4 3.2-1.3 4.6L21.4 46.8c.9.2 1.7.2 2.6.2.7 0 1.4 0 2.1-.1 1-.1 2.1-.3 3.1-.5C39.4 44.1 47 34.9 47 24q0-1.95-.3-3.9M24 33.2c-3.4 0-6.3-1.8-7.9-4.6L5.5 10.4C-2 20.5.1 34.9 10.3 42.5c2.6 1.9 5.5 3.3 8.7 4l8-13.8c-1 .3-2 .5-3 .5M7.1 8.5 15 22.1c.9-4.3 4.6-7.4 9-7.4h21.1c-.7-1.6-1.6-3.1-2.6-4.5 1 1.4 1.9 2.9 2.6 4.5-.7-1.6-1.6-3.1-2.6-4.5C34.8.1 20.4-2 10.2 5.6 9.1 6.4 8 7.4 7.1 8.5"/></svg>`
377
- };
378
- const logoDiscord = {
379
- name: 'logo-discord',
380
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M40 9.5c-3-1.4-6.2-2.4-9.5-2.9q-.75 1.2-1.2 2.4-5.25-.75-10.5 0c-.4-.8-.8-1.7-1.2-2.5q-5.1.9-9.6 3C2 18.4.4 27 1.2 35.6c3.5 2.6 7.5 4.6 11.6 5.8.9-1.3 1.8-2.6 2.5-4-1.4-.5-2.7-1.1-3.9-1.9.3-.2.7-.5 1-.7 7.4 3.5 15.9 3.5 23.3 0 .3.3.6.5 1 .7-1.3.7-2.6 1.4-3.9 1.9.7 1.4 1.5 2.8 2.5 4 4.2-1.3 8.1-3.2 11.6-5.8.9-9.9-1.7-18.5-6.9-26.1M16.4 30.3c-2.3 0-4.1-2.1-4.1-4.6s1.8-4.6 4.1-4.6 4.2 2.1 4.1 4.6-1.8 4.6-4.1 4.6m15.2 0c-2.3 0-4.1-2.1-4.1-4.6s1.8-4.6 4.1-4.6 4.2 2.1 4.1 4.6-1.7 4.6-4.1 4.6"/></svg>`
381
- };
382
- const logoFirebase = {
383
- name: 'logo-firebase',
384
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M20.6 83.6 33.2 2.5c.4-2.8 4.1-3.4 5.5-.9L52.3 27zm90.3 18.8L98.5 28.6c-.3-1.6-1.8-2.7-3.4-2.4-.6.1-1.1.4-1.6.8L17 102.4l42.5 24.5c2.7 1.5 5.9 1.5 8.5 0zM76.4 38.1l-9.7-18.5c-.7-1.4-2.5-2-3.9-1.3-.5.3-1 .7-1.3 1.3L18.6 95.9z"/></svg>`
385
- };
386
- const logoForteBank = {
387
- name: 'logo-forte-bank',
388
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M47 21.5c-.2-.5-.7-.8-1.3-.8h-4c-.4 0-.7.1-1 .4-2.4 2.2-5.2 3.2-8.5 3-5.7-.4-10-4.7-10-10 0-4 3.3-7.3 7.4-7.3 1.6 0 3.3.8 4.4 2 .2.2.5.6.6 1q.15.45 0 .9c-.3.7-1.1 1.1-1.8.9-.5-.2-.9-.3-1.4-.3-1.8 0-3.3 1.1-3.9 2.8-.6 1.6-.1 3.5 1.2 4.6l.2.2.1.1c0 .1.1.1.2.1 2.1 1.2 4.6 1.3 6.8.2 2.5-1.2 4.3-3.7 4.7-6.7.4-2.7-.4-5.4-2.2-7.6-2.1-2.5-5.4-4-8.7-4.1h-.2c-7.2 0-13.1 5.8-13.2 13 0 1.4.2 2.8.5 4.1-.3 0-.5-.1-.8-.1-5.9-.4-11.1 2-15 6.8-.4.4-.4 1-.2 1.6.2.5.7.8 1.3.8h4c.4 0 .7-.1 1-.4 2.4-2.2 5.2-3.2 8.5-3 5.7.4 10 4.7 10 10 0 4-3.3 7.3-7.4 7.3-1.6 0-3.3-.8-4.4-2-.2-.2-.5-.6-.6-1q-.15-.45 0-.9c.3-.7 1.1-1.1 1.8-.9.5.2.9.3 1.4.3 1.8 0 3.3-1.1 3.9-2.8.6-1.6.1-3.5-1.2-4.6l-.2-.2v.1c0-.1-.1-.1-.2-.1-2.1-1.2-4.7-1.3-6.8-.2-2.5 1.2-4.3 3.7-4.7 6.7-.4 2.7.4 5.4 2.2 7.6 2.1 2.5 5.4 4 8.7 4.1h.2c7.2 0 13.1-5.8 13.2-13 0-1.4-.2-2.8-.5-4.1.3 0 .5.1.8.1h1.2c5.4 0 10.2-2.4 13.8-6.9.2-.5.3-1.1.1-1.7"/></svg>`
389
- };
390
- const logoGithub = {
391
- name: 'logo-github',
392
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 1.6c-35.3 0-64 28.7-64 64 0 28.3 18.3 52.3 43.8 60.7 3.2.6 4.4-1.4 4.4-3.1 0-1.5-.1-5.5-.1-10.9-17.8 3.9-21.6-8.6-21.6-8.6-2.9-7.4-7.1-9.4-7.1-9.4-5.8-4 .4-3.9.4-3.9 6.4.5 9.8 6.6 9.8 6.6 5.7 9.8 15 7 18.6 5.3.6-4.1 2.2-7 4.1-8.6-14.2-1.6-29.2-7.1-29.2-31.6 0-7 2.5-12.7 6.6-17.2-.7-1.6-2.9-8.1.6-16.9 0 0 5.4-1.7 17.6 6.6 5.1-1.4 10.6-2.1 16-2.2 5.4 0 10.9.7 16 2.2C92.1 26.3 97.5 28 97.5 28c3.5 8.8 1.3 15.3.6 16.9 4.1 4.5 6.6 10.2 6.6 17.2 0 24.6-15 30-29.2 31.6 2.3 2 4.3 5.9 4.3 11.9 0 8.6-.1 15.5-.1 17.6 0 1.7 1.2 3.7 4.4 3.1 25.4-8.5 43.7-32.5 43.7-60.7.2-35.4-28.5-64-63.8-64"/></svg>`
393
- };
394
- const logoGitlab = {
395
- name: 'logo-gitlab',
396
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="m46.2 19.4-.1-.2-6.2-16.3c-.1-.3-.4-.6-.6-.8-.6-.4-1.4-.3-1.9.1-.3.2-.5.5-.6.8l-4.2 13H15.4L11.2 3.1c-.1-.3-.3-.6-.6-.8-.6-.4-1.3-.5-1.9-.1-.2.1-.5.4-.6.7L1.8 19.2l-.1.2c-1.9 4.8-.3 10.3 3.9 13.4h.1l9.5 7.1 4.7 3.6 2.9 2.2c.7.5 1.6.5 2.3 0l2.9-2.2 4.7-3.6 9.6-7.2c4.2-3 5.8-8.5 3.9-13.3"/></svg>`
397
- };
398
- const logoGooglePlay = {
399
- name: 'logo-google-play',
400
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M65.2 64 6.3 121.4c-.2.2-.5.4-.9.4-.7 0-1.2-.6-1.2-1.2V7.5c0-.3.1-.6.4-.9.5-.5 1.3-.5 1.8 0zm7.2-6.9 17.4-16.7L16-.3c-1.3-.7-2.5 1-1.4 2zm-57.9 69.2c-1 1 .2 2.7 1.4 2l73.8-40.7-17.3-16.7zm105.1-69.5L99 45.5 79.6 64 99 82.5l20.6-11.3c5.7-3.1 5.7-11.3 0-14.4"/></svg>`
401
- };
402
- const logoHalykBank = {
403
- name: 'logo-halyk-bank',
404
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M16.5 24.8c-2.8 1.3-4.8 3.1-6 4.7l-3.9-3.9c-.9-.9-.9-2.3 0-3.2L22.4 6.5c.9-.9 2.3-.9 3.2 0l4.4 4.4c.5.5.9 1.1 1.1 1.8.6 1.7 1.2 4.7-1.2 7.5-3.7 4.4-7.4 1.8-13.4 4.6m21.1-6.3c-1.3 1.5-3.2 3.3-6 4.7-6.1 2.8-9.7.3-13.5 4.7-2.3 2.8-1.8 5.7-1.2 7.5.3.7.6 1.3 1.1 1.8l4.4 4.4c.9.9 2.3.9 3.2 0l15.9-15.9c.9-.9.9-2.3 0-3.2zm8.5 7.7-4.9 4.9v7c0 1.7-1.4 3.1-3.1 3.1h-7l-4.9 4.9c-1.2 1.2-3.1 1.2-4.4 0l-4.9-4.9h-7c-1.7 0-3.1-1.4-3.1-3.1v-7l-4.9-4.9c-1.2-1.2-1.2-3.1 0-4.4l4.9-4.9v-7c0-1.7 1.4-3.1 3.1-3.1h7l4.9-4.9C23 .7 25 .7 26.2 1.9l4.9 4.9h7c1.7 0 3.1 1.4 3.1 3.1v7l4.9 4.9c1.2 1.2 1.2 3.2 0 4.4m-2-3.7-4.8-4.8v-6.8c0-1.2-1-2.2-2.2-2.2h-6.8l-4.8-4.8c-.8-.8-2.2-.8-3.1 0l-4.8 4.8h-6.8c-1.2 0-2.2 1-2.2 2.2v6.8l-4.8 4.8c-.8.8-.8 2.2 0 3.1l4.8 4.8v6.8c0 1.2 1 2.2 2.2 2.2h6.8l4.8 4.8c.8.8 2.2.8 3.1 0l4.8-4.8h6.8c1.2 0 2.2-1 2.2-2.2v-6.8l4.8-4.8c.8-.9.8-2.3 0-3.1"/></svg>`
405
- };
406
- const logoInstagram = {
407
- name: 'logo-instagram',
408
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M14.5 1.2c-2.5.1-4.1.5-5.6 1-1.5.6-2.8 1.4-4.1 2.7S2.8 7.5 2.2 9s-.9 3.1-1.1 5.6S1 17.8 1 24s0 7 .2 9.5c.1 2.4.5 4.1 1.1 5.6s1.4 2.8 2.7 4.1 2.6 2.1 4.1 2.6c1.5.6 3.1 1 5.6 1.1 2.3.1 3.1.1 9.3.1s7 0 9.5-.2 4.1-.5 5.6-1.1 2.8-1.4 4.1-2.7 2.1-2.6 2.6-4.1c.6-1.5 1-3.1 1.1-5.6.1-2.3.1-3.1.1-9.3s0-7-.2-9.5-.5-4.1-1.1-5.6-1.4-2.8-2.7-4.1-2.6-2.1-4.1-2.6c-1.5-.6-3.1-1-5.6-1.1C31 1 30.2 1 24 1c-6.3 0-7.1 0-9.5.2m.2 41.5c-2.2-.1-3.5-.5-4.3-.8-1.1-.4-1.8-.9-2.6-1.7s-1.3-1.6-1.7-2.6c-.3-.8-.7-2-.8-4.3-.1-2.4-.1-3.2-.2-9.3 0-6.1 0-6.9.1-9.3.1-2.2.5-3.5.8-4.3.5-1 1-1.8 1.8-2.6s1.6-1.3 2.6-1.7c.8-.3 2-.7 4.3-.8 2.4-.1 3.2-.1 9.3-.2 6.1 0 6.9 0 9.3.1 2.2.1 3.5.5 4.3.8 1.1.4 1.8.9 2.6 1.7s1.3 1.6 1.7 2.6c.3.8.7 2 .8 4.3.1 2.4.1 3.2.2 9.3s0 6.9-.1 9.3c-.1 2.2-.5 3.5-.8 4.3-.4 1.1-.9 1.8-1.7 2.6s-1.6 1.3-2.6 1.7c-.8.3-2 .7-4.3.8-2.4.1-3.2.1-9.3.2s-6.9 0-9.4-.1m18.8-31c0 1.5 1.2 2.8 2.8 2.8 1.5 0 2.8-1.2 2.8-2.8 0-1.5-1.2-2.8-2.8-2.8s-2.8 1.3-2.8 2.8M12.2 24c0 6.5 5.3 11.8 11.8 11.8S35.8 30.5 35.8 24 30.5 12.2 24 12.2 12.2 17.5 12.2 24m4.1 0c0-4.2 3.4-7.7 7.7-7.7 4.2 0 7.7 3.4 7.7 7.7 0 4.2-3.4 7.7-7.7 7.7-4.2 0-7.7-3.4-7.7-7.7"/></svg>`
409
- };
410
- const logoJusanBank = {
411
- name: 'logo-jusan-bank',
412
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M36.4.9H11.6C5.7.9 1 5.6 1 11.5v25c0 5.9 4.7 10.6 10.6 10.6h24.8c5.8 0 10.6-4.8 10.6-10.6v-25C47 5.6 42.3.9 36.4.9M22.1 33.2c0 1.5-.8 2.8-2.1 3.4l-5.6 2.8v-8.2c0-1.5.8-2.8 2.1-3.4l5.6-2.8zm11.5-5.8c0 1.5-.8 2.8-2.1 3.5l-5.6 2.8V14.8c0-1.5.8-2.8 2.1-3.4l5.6-2.8z"/></svg>`
413
- };
414
- const logoKaspiBank = {
415
- name: 'logo-kaspi-bank',
416
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path fill-rule="evenodd" d="M25.1 25.7c4.1.6 4.7 3.1 5 5.3l.1.4v.3l.2 1.3c.4 2.5 1.2 7.8 1.2 10.6 0 .7-.1 1.2-.2 1.5-.2.4-.7.9-1.5 1.2-1.8.4-3.7.7-5.6.7h-.6c-.8-.2-1.4-.6-1.7-1.1-.9-1.5-1-4.9-1-8.9v-1.7c0-4.2-.1-7.9 1.5-9.2.6-.5 1.4-.6 2.6-.4m-9 9.1c.9-.1 1.5 4.3 1.6 7.7.1 2.3-.2 3.3-.6 3.6-.4-.1-.9-.3-1.3-.5q-.45-.75-.6-2.4c-.4-3.3-.1-8.3.9-8.4m22.4 6.6c-.1.3-.1.5-.2.7-.8.6-1.6 1.2-2.4 1.7-.3 0-.5 0-.6-.2-1.1-2-1.5-8.1-.5-8.6 1.4-.7 3.9 5.3 3.7 6.4M24 1c12.5 0 22.7 9.9 23 22.3v.6c0 5.6-2.1 10.7-5.5 14.6-.1-.1-.3-.3-.8-.9-.4-.6-4-6.2-4-12.6 0-1.3 1.8-3.2 3.4-4.9 1.2-1.3 2.3-2.5 2.7-3.5.5-1.2.2-2.1-.4-2.4-.5-.3-1.3-.1-1.9.9-.9 1.6-1.2 1.9-2.6 3-1.3 1.1-3.4 2.2-3.4.8 0-.8 1.2-2.5 1.7-3.7.6-1.2 0-2.1-1.3-2.1-2.4 0-4 3-4 4.1s.5 1.2.5 2.4-2.6 2.8-5.1 2.8c-2.4 0-3.8-.5-4.3-1.8l-.1-.2.1-.3c-.6-1.7-1-3-1.7-4.2-.4-.7-1-1.2-1.5-1.6-.7-.5-1-1-1.1-1.4s-.1-1 1.1-2.6c1.2-1.5 1.3-2.7.7-3.3-.2-.2-.6-.4-1-.4-.8 0-1.9.4-3.1 1.6-1.8 1.8-.8 3.6-.8 4.4s-.3 1.2-1.4 2.3-1.5 2-1.6 5.6c0 1.9-.4 2.9-.7 3.9-.3.8-.5 1.6-.5 2.8 0 1.3.2 2.1.4 3s.5 1.9.7 3.5c.3 2.6.2 4.7-.3 7l-.2.4v.2c-.1.4-.2.9-.4 1C4.8 38.2 1 31.4 1 23.8 1 11.2 11.3 1 24 1" clip-rule="evenodd"/></svg>`
417
- };
418
- const logoNpm = {
419
- name: 'logo-npm',
420
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M21.34 20.35H24v5.35h-2.66zM0 15v16.07h13.33v2.68H24v-2.68h24V15zm13.33 13.4h-2.66v-8.03H8v8.03H2.66V17.68h10.67zm13.33 0h-5.33v2.68H16v-13.4h10.67V28.4Zm18.67 0h-2.66v-8.03h-2.66v8.03h-2.66v-8.03h-2.66v8.03h-5.33V17.68h16V28.4h-.02Z"/></svg>`
421
- };
422
- const logoOtbasyBank = {
423
- name: 'logo-otbasy-bank',
424
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M12.3 19.9c6.4-4.2 12.5-6.8 16.3-7.2.3 0 .6-.1.9-.1s.6 0 .9.1c3.8.4 9.9 3 16.3 7.2.4.2.7.5 1.1.7V0H.2v30.1c2.6-3.1 6.9-6.8 12.1-10.2m17.2-5.8c-3.7.7-9.7 3.9-15.8 8.6C6.6 28.2 1.3 34.3.2 38v10h47.6V24.7c-.8-.7-1.6-1.4-2.5-2-6.1-4.8-12-7.9-15.8-8.6"/></svg>`
425
- };
426
- const logoOversecured = {
427
- name: 'logo-oversecured',
428
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" class="wr-icon__svg"><path d="M114.67.34C50.24 7.01 0 61.47 0 127.66c0 70.69 57.31 128 128 128s128-57.31 128-128C256 61.47 205.76 7.01 141.33.34v27.42c49.35 6.52 87.43 48.76 87.43 99.89 0 55.65-45.11 100.77-100.77 100.77-55.65 0-100.77-45.11-100.77-100.77 0-51.13 38.08-93.37 87.43-99.89V.34z"/><path d="M61.21 182.13c25.94 32.13 72.12 41.5 109 20.2 40.81-23.56 54.8-75.75 31.23-116.57S125.7 30.97 84.88 54.53c-36.89 21.3-51.86 65.97-37 104.5l24.28-14.02c-7.54-25.09 2.81-52.98 26.49-66.64 27.65-15.96 63-6.49 78.96 21.16s6.49 63-21.16 78.97c-23.67 13.67-53 8.69-70.96-10.38z"/><path d="M113.76 87.43c-16.56 5.86-28.43 21.66-28.43 40.23 0 23.56 19.1 42.67 42.67 42.67 23.56 0 42.67-19.1 42.67-42.67 0-18.57-11.86-34.37-28.43-40.23v40.23h-.02c0 7.85-6.37 14.22-14.22 14.22s-14.22-6.37-14.22-14.22h-.02z"/></svg>`
429
- };
430
- const logoRustore = {
431
- name: 'logo-rustore',
432
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M119 9c-9-9-23.5-9-52.4-9h-5.1C32.5 0 18 0 9 9S0 32.5 0 61.4v5.1c0 29 0 43.4 9 52.4s23.5 9 52.4 9h5.1c29 0 43.4 0 52.4-9s9-23.5 9-52.4v-5.1C128 32.5 128 18 119 9m-12.5 70.1c0 4-3.8 7-7.7 6L90.2 83c-1.1-.3-1.9-1.2-1.9-2.3l-1.1-31.8c-.3-4.2-3.4-7.6-6.7-8.6-.2-.1-.4 0-.5.2s-.1.4.1.5c.8.6 3 2.7 3 6.2v41.6c0 4-3.8 7-7.7 6l-8.6-2.2c-1.1-.3-1.8-1.2-1.8-2.3l-1.1-31.8c-.3-4.2-3.4-7.6-6.7-8.6-.2-.1-.4 0-.5.2s-.1.4.1.5c.8.6 3 2.7 3 6.2v41.6c0 4-3.8 7-7.7 6l-24.8-6.2c-3.4-.9-5.9-3.9-5.9-7.5V48.9c0-4 3.8-7 7.7-6l15.6 3.9v-7.5c0-4 3.8-7 7.7-6L68 37.2v-7.5c0-4 3.8-7 7.7-6l24.8 6.2c3.4.9 5.9 3.9 5.9 7.5v41.7z"/></svg>`
433
- };
434
- const logoStingray = {
435
- name: 'logo-stingray',
436
- data: `<svg xmlns="http://www.w3.org/2000/svg" width="933.333" height="933.333" class="header-logo-mark wr-icon__svg" viewBox="0 0 700 700"><path d="M335.5 10c-39.2 33-81.9 74.8-113.6 111-4.5 5.2-8.5 9.7-8.8 10-.4.3-4.1 4.7-8.4 9.8l-7.8 9.4 4.3 4.6c6 6.5 16.4 20 23.5 30.7 34.8 51.9 62 119.5 82.9 205.5 1 4.3 7.5 32.8 7.8 34.5.2 1.1.7 3.1 1 4.5s.8 3.7 1.1 5.2c.3 1.6.7 4 1 5.5.8 3.7 4.6 24.3 5 26.8 1.3 7.2 3.5 20.6 4 24 .4 2.2.8 4.7 1 5.5s.7 3.7 1 6.5c.4 2.7.8 5.7 1 6.5s.7 4 1 7 .8 6.6 1 8 .7 4.5 1 7 1 7.6 1.5 11.5c1 7.3 1.7 13.9 2.5 21.5.2 2.5.7 6.7 1 9.5.5 5.1 1.2 11.6 2 19.5.3 2.5.7 6.5.9 9 .3 2.5.8 8.5 1.1 13.5.3 4.9.8 11.2 1 14 1.2 14.8 2.2 32.6 3 53 .6 13.4 1.3 16.5 4 16.5s3.3-3.1 4-19.5c1-25.5 2.3-46.6 4-65 .3-2.8.7-8.2 1-12 .5-7.6 1.3-16 2-21.5.2-1.9.7-6.2 1-9.5.8-8.1 1.5-14.3 2-18.5.3-1.9.7-5.8 1-8.5.3-2.8.8-6.1 1-7.5s.6-4.5 1-7c.5-4.5 1.3-10.3 2-15 .2-1.4 1.1-7.5 2-13.5.9-6.1 2.2-14.6 3-19s1.7-10 2-12.5c.4-2.4.8-4.7 1-5s.6-2.3.9-4.5c.4-2.2 1.6-9 2.7-15 1.2-6.1 2.3-11.9 2.5-13 .4-2.3 1.2-6.1 1.9-9 1.2-5.3 3.5-15.5 3.9-17.6 1.1-6.1 9.2-37.7 13.7-53.7 7.8-27.4 22.3-70.2 25.9-76.4.5-1 1-2.2 1-2.8 0-.5 1.1-3.3 2.4-6.2s3.6-8.2 5.1-11.8c14.7-34.3 38.3-73.4 58.8-97.3l7.6-8.8-2.3-2.7c-1.3-1.5-5.6-6.5-9.6-11.2-8.4-9.8-17.6-20.1-27.5-30.9C454.3 94 414 54 402.5 43.5c-5.4-5-10.3-9.5-10.9-10-2.4-2.2-26.4-23.3-31.8-27.8-9.2-7.8-10.1-7.6-24.3 4.3"/><path d="M165.7 189.6c-24.7 33.2-43.2 60.6-61.2 90.4-8.6 14.1-18.9 32-24 41.5-2.7 4.9-5.7 10.6-6.8 12.5-10.5 18.9-31.6 63.8-43.7 93S3.5 496 5 496c.8 0 18.7-5.1 33.5-9.5 4.4-1.3 14.8-4.4 23-6.8 8.3-2.4 18.4-5.4 22.5-6.6 4.1-1.3 14.9-4.4 24-7.1s23.5-6.9 32-9.4c8.5-2.6 20.9-6.2 27.5-8.1s13.4-3.9 15-4.5c1.7-.5 11.6-3.4 22-6.5 20.6-6 24.1-7.1 47.5-14.1 8.5-2.5 17.1-5.1 19.1-5.6 3.6-1 3.6-1.1 2.8-4.6-.4-2.1-1.1-5.3-1.4-7.2s-1.1-5.5-1.6-8c-.6-2.5-1.3-5.6-1.5-7-1.7-8.8-9.5-37.1-14.1-51-3.4-10.4-9.2-27.1-10.3-29.5-.4-1.1-3.9-9.2-7.6-18-8.8-21-22.5-48.5-30.1-60.7-1.3-2.1-2.3-3.9-2.3-4.1 0-1.5-30.5-48.9-31.3-48.7-.1.1-3.7 4.8-8 10.6m352.1 2.1c-32.4 48.8-54.7 94.5-72.4 147.9-8.7 26.4-20.1 71.6-19.2 76.1.2 1.1 3.9 2.6 12.3 5 6.6 1.9 14 4.1 16.5 4.8 2.5.8 8.3 2.5 13 3.8 4.7 1.4 16.8 5 27 8s19.4 5.7 20.5 6 8.8 2.5 17 5c8.3 2.5 20.4 6.1 27 8.1 6.6 1.9 30.5 8.9 53 15.6 22.6 6.7 42.4 12.5 44 13 5.8 1.5 34.5 10 37 11 1.4.5 2.5.8 2.5.7 0-2.5-22.1-61.2-27.5-73.2-.8-1.7-2.6-5.9-4-9.5-10.5-25.5-43.8-92.8-52.5-106-.6-.8-1.3-2.2-1.7-3s-2.2-3.8-4-6.7-3.3-5.4-3.3-5.7c0-.8-15-25.1-25.1-40.6-12.7-19.6-25.1-37.3-39.2-56.3l-12.4-16.8z"/></svg>`
437
- };
438
- const logoTelegram = {
439
- name: 'logo-telegram',
440
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path fill-rule="evenodd" d="M24 1C11.3 1 1 11.3 1 24s10.3 23 23 23 23-10.3 23-23S36.7 1 24 1m10.7 15.6c-.3 3.6-1.8 12.5-2.6 16.5-.3 1.7-1 2.3-1.6 2.4-1.3.1-2.3-.9-3.6-1.7-2-1.3-3.2-2.2-5.1-3.4-2.3-1.5-.8-2.3.5-3.7.3-.4 6.2-5.7 6.3-6.2 0-.1 0-.3-.1-.4s-.3-.1-.5 0c-.2 0-3.4 2.2-9.7 6.4-.9.6-1.7.9-2.5.9s-2.4-.5-3.6-.8c-1.4-.5-2.6-.7-2.5-1.5.1-.4.6-.8 1.7-1.3 6.7-2.9 11.2-4.8 13.4-5.8 6.4-2.7 7.7-3.1 8.6-3.1.2 0 .6 0 .9.3q.3.3.3.6c.1.1.1.5.1.8" clip-rule="evenodd"/></svg>`
441
- };
442
- const logoVk = {
443
- name: 'logo-vk',
444
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M43.8 4.3C40.5 1 35.3 1 24.9 1h-1.8C12.7 1 7.5 1 4.2 4.2 1 7.5 1 12.7 1 23.1v1.8c0 10.4 0 15.6 3.2 18.8C7.5 47 12.7 47 23.1 47h1.8c10.4 0 15.6 0 18.8-3.2C47 40.5 47 35.3 47 24.9v-1.8c0-10.4 0-15.6-3.2-18.8M34 34.1c-1.1-3.6-4-6.4-7.9-6.8v6.8h-.6C15 34.1 9 27 8.8 15H14c.2 8.8 4 12.5 7.1 13.3V15H26v7.6c3-.4 6.2-3.8 7.3-7.6h4.9c-.8 4.6-4.2 8.1-6.7 9.5 2.5 1.1 6.4 4.2 7.9 9.6z"/></svg>`
445
- };
446
- const logoWhatsapp = {
447
- name: 'logo-whatsapp',
448
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M40.3 7.6C36 3.3 30.2.9 24.1.9 11.5.9 1.2 11.2 1.2 23.8c0 4 1.1 8 3.1 11.5L1 47.1l12.1-3.2c3.3 1.8 7.1 2.8 10.9 2.8 12.7 0 23-10.3 23-22.9 0-6.1-2.4-11.9-6.7-16.2M24.1 42.8c-3.4 0-6.8-.9-9.7-2.7l-.7-.4-7.2 1.9 1.9-7-.4-.7c-1.9-3-2.9-6.5-2.9-10.1 0-10.5 8.5-19 19-19 5.1 0 9.9 2 13.5 5.6s5.6 8.4 5.6 13.5c-.1 10.4-8.6 18.9-19.1 18.9m10.4-14.2c-.6-.3-3.4-1.7-3.9-1.9s-.9-.3-1.3.3-1.5 1.9-1.8 2.2c-.3.4-.7.4-1.2.1-.6-.3-2.4-.9-4.6-2.8-1.7-1.5-2.8-3.4-3.2-4-.3-.6 0-.9.3-1.2s.6-.7.9-1 .4-.6.6-1 .1-.7 0-1-1.3-3.1-1.8-4.2-.9-1-1.3-1h-1.1c-.4 0-1 .1-1.5.7s-2 2-2 4.8 2.1 5.5 2.3 5.9c.3.4 4 6.2 9.8 8.6 1.4.6 2.4.9 3.3 1.2 1.4.4 2.6.4 3.6.2 1.1-.2 3.4-1.4 3.9-2.7s.5-2.5.3-2.7c-.3-.1-.7-.2-1.3-.5"/></svg>`
449
- };
450
- const logoYandexCloud = {
451
- name: 'logo-yandex-cloud',
452
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M24 1C11.3 1 1 11.3 1 24s10.3 23 23 23 23-10.3 23-23S36.7 1 24 1m-9.2 39.5C9 37.3 5.1 31.1 5.1 24 5.1 13.5 13.5 5.1 24 5.1c2.7 0 4.8 1 5.8 2.2 1.1 1.2 1.4 3.3 1 6.2l-6.1 1.2c-5.6 1-8.6 4.1-9.7 9.7-.1.8-.3 1.6-.4 2.3-.1.3-.1.6-.2.9-.1.8-.3 1.5-.4 2.2-.2 1-.4 1.9-.5 2.6-.6 3.6-.1 6.2 1.3 8.1M30 17.8c-.1.8-.3 1.7-.3 2.5-.2.8-.3 1.7-.5 2.5-.8 3.9-2.7 5.7-6.6 6.5l-4.6.9.3-1.8c0-.2.1-.5.1-.7.2-.8.3-1.6.5-2.5.7-3.9 2.6-5.7 6.5-6.5zm-6 25.1c-2.7 0-4.8-1-5.8-2.3-1-1.2-1.3-3.3-1-6.2l6.1-1.2c5.6-1 8.6-4.1 9.7-9.7.1-.8.3-1.6.4-2.3.1-.3.1-.6.2-.9.2-.9.3-1.8.5-2.5.2-.8.3-1.6.4-2.2.6-3.6.1-6.3-1.3-8.1 5.8 3.2 9.7 9.4 9.7 16.5 0 10.5-8.5 18.9-18.9 18.9"/></svg>`
453
- };
454
- const logoYandexTracker = {
455
- name: 'logo-yandex-tracker',
456
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M17.7 46V33.4h12.6V46zm0-15.7V17.7h12.6v12.6zM2 14.6V2h12.6v12.6zm15.7 0V2h12.6v12.6zm15.7 0V2H46v12.6z"/></svg>`
457
- };
458
- const modules = {
459
- name: 'modules',
460
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 15" class="wr-icon__svg"><path fill-rule="evenodd" d="M8.781.974h-7.25C.868.974.324 1.512.324 2.169v8.362h1.209V2.169h7.25zm1.81 2.39H3.946c-.665 0-1.209.537-1.209 1.194v8.363c0 .657.544 1.194 1.209 1.194h6.645c.665 0 1.208-.537 1.208-1.194V4.558c0-.657-.543-1.194-1.208-1.194m-6.647 9.558h6.646V4.56H3.944z" clip-rule="evenodd"/></svg>`
461
- };
462
- const moon = {
463
- name: 'moon',
464
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M116.5 107.3C104.2 120.1 86.9 128 67.8 128 31.1 128 .7 98.3 0 61.6-.5 35.4 13.9 12.4 35.4.7c4.6-2.5 9.8 1.9 8.1 6.8-2.7 7.6-4 15.7-3.8 24.2.8 35 28.7 63.9 63.6 66 3 .2 5.9.2 8.8 0 5.1-.3 8.1 5.9 4.4 9.6m8.9-80.3-13.7-6.1-6.1-13.7c-1.5-3.4-6.4-3.4-7.9 0l-6.1 13.7L78 27c-3.4 1.5-3.4 6.4 0 7.9L91.7 41l6.1 13.7c1.5 3.4 6.4 3.4 7.9 0l6.1-13.7 13.7-6.1c3.4-1.5 3.4-6.4-.1-7.9"/></svg>`
465
- };
466
- const playBack = {
467
- name: 'play-back',
468
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="m30.71 229.47 188.87-113a30.54 30.54 0 0 1 31.09-.39 33.74 33.74 0 0 1 16.76 29.47v79.05l180.72-108.16a30.54 30.54 0 0 1 31.09-.39A33.74 33.74 0 0 1 496 145.52v221A33.73 33.73 0 0 1 479.24 396a30.54 30.54 0 0 1-31.09-.39L267.43 287.4v79.08A33.73 33.73 0 0 1 250.67 396a30.54 30.54 0 0 1-31.09-.39l-188.87-113a31.27 31.27 0 0 1 0-53z"/></svg>`
469
- };
470
- const playCircle = {
471
- name: 'play-circle',
472
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48m74.77 217.3-114.45 69.14a10.78 10.78 0 0 1-16.32-9.31V186.87a10.78 10.78 0 0 1 16.32-9.31l114.45 69.14a10.89 10.89 0 0 1 0 18.6"/></svg>`
473
- };
474
- const playForward = {
475
- name: 'play-forward',
476
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="m481.29 229.47-188.87-113a30.54 30.54 0 0 0-31.09-.39 33.74 33.74 0 0 0-16.76 29.47v79.05L63.85 116.44a30.54 30.54 0 0 0-31.09-.39A33.74 33.74 0 0 0 16 145.52v221A33.74 33.74 0 0 0 32.76 396a30.54 30.54 0 0 0 31.09-.39L244.57 287.4v79.08A33.74 33.74 0 0 0 261.33 396a30.54 30.54 0 0 0 31.09-.39l188.87-113a31.27 31.27 0 0 0 0-53z"/></svg>`
477
- };
478
- const play = {
479
- name: 'play',
480
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13 13" class="wr-icon__svg"><path fill-rule="evenodd" d="M6.292.571C2.958.571.251 3.247.251 6.544c0 3.298 2.707 5.974 6.041 5.974s6.042-2.676 6.042-5.974S9.627.571 6.292.571m0 10.752c-2.665 0-4.834-2.144-4.834-4.778 0-2.635 2.169-4.779 4.833-4.779s4.833 2.144 4.833 4.779-2.169 4.778-4.833 4.778m2.416-4.778L5.083 9.233V3.857z" clip-rule="evenodd"/></svg>`
481
- };
482
- const plusCircle = {
483
- name: 'plus-circle',
484
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.7 0 0 28.7 0 64s28.7 64 64 64 64-28.7 64-64S99.3 0 64 0m36.5 68.3c0 1.3-1 2.3-2.3 2.3H70.5v27.7c0 1.3-1 2.3-2.3 2.3h-8.5c-1.3 0-2.3-1-2.3-2.3V70.5H29.7c-1.3 0-2.3-1-2.3-2.3v-8.5c0-1.3 1-2.3 2.3-2.3h27.7V29.7c0-1.3 1-2.3 2.3-2.3h8.5c1.3 0 2.3 1 2.3 2.3v27.7h27.7c1.3 0 2.3 1 2.3 2.3z"/></svg>`
485
- };
486
- const reader = {
487
- name: 'reader',
488
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><rect width="320" height="416" x="96" y="48" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32" rx="48" ry="48"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M176 128h160m-160 80h160m-160 80h80"/></svg>`
489
- };
490
- const repeat = {
491
- name: 'repeat',
492
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M112 55.9c-3.6 0-6.5 2.9-6.5 6.5v7.9c0 5.3-4.3 9.6-9.6 9.6H51.7l3.9-3.9c2.5-2.5 2.5-6.7 0-9.2s-6.7-2.5-9.2 0l-13 13c-3.6 3.6-3.6 9.6 0 13.2l13 13c1.3 1.3 2.9 1.9 4.6 1.9s3.3-.6 4.6-1.9c2.5-2.5 2.5-6.7 0-9.2L51.7 93h44.1c12.5 0 22.6-10.2 22.6-22.6v-7.9c.1-3.6-2.8-6.6-6.4-6.6"/><path d="m76.3 48-3.9 3.9c-2.5 2.5-2.5 6.7 0 9.2 1.3 1.3 2.9 1.9 4.6 1.9s3.3-.6 4.6-1.9l13-13c1.8-1.8 2.7-4.1 2.7-6.6s-1-4.9-2.7-6.6l-13-13c-2.5-2.5-6.7-2.5-9.2 0s-2.5 6.7 0 9.2l3.9 3.9H32.1C19.7 35 9.5 45.2 9.5 57.6v7.9c0 3.6 2.9 6.5 6.5 6.5s6.5-2.9 6.5-6.5v-7.9c0-5.3 4.3-9.6 9.6-9.6z"/></svg>`
493
- };
494
- const search = {
495
- name: 'search',
496
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="m123.5 100.9-21.1-21.1c3.8-7.7 6.4-16.6 6.4-25.5 0-30-24.3-54.3-54.3-54.3S.2 24.3.2 54.3s24.3 54.3 54.3 54.3c8.9 0 17.9-2.6 25.5-6.4l21.1 21.1c6.4 6.4 16 6.4 22.3 0 5.8-6.5 5.8-16 .1-22.4m-69-5.1c-23 0-41.5-18.5-41.5-41.5s18.5-41.5 41.5-41.5S96 31.3 96 54.3 77.5 95.8 54.5 95.8"/></svg>`
497
- };
498
- const shieldCheckmarkOutline = {
499
- name: 'shield-checkmark-outline',
500
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M91.5 44.5c2.4 2.4 2.4 6.3 0 8.6L68 76.6l-8.6 8.6-8.6-8.6-14.3-14.1c-2.4-2.4-2.4-6.3 0-8.6 2.4-2.4 6.3-2.4 8.6 0L59.3 68l23.5-23.5c2.4-2.4 6.3-2.4 8.7 0"/><path d="M63.8 10.7c.2 0 .5.1.6.1L112 30.7c.9.4 1.1 1 1.1 1.2 0 30.8-11.9 51.9-21.9 64.2-12.2 15-24.4 20.7-27.5 21.1-3.1-.5-15.2-6.3-27.2-21C26.7 84 14.8 62.9 14.8 31.9c0-.5.3-1 .8-1.2l47.5-19.9c.2 0 .5 0 .7-.1m0-10.7c-1.3 0-3.4.4-4.6.9l-47.7 20c-4.5 1.8-7.4 6.2-7.4 11 0 64.4 47.1 96.1 59.7 96.1 13.5 0 60.1-32.6 60.1-96.1 0-4.6-2.9-9-7.6-11.1L68.4.8C67.2.4 65.1 0 63.8 0"/></svg>`
501
- };
502
- const shieldCheckmark = {
503
- name: 'shield-checkmark',
504
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M116.3 20.8 68.4.8C67.2.4 65.1 0 63.8 0s-3.4.4-4.6.9l-47.7 20c-4.5 1.8-7.4 6.2-7.4 11 0 64.4 47.1 96.1 59.7 96.1 13.5 0 60.1-32.6 60.1-96.1 0-4.6-2.9-9-7.6-11.1M91.5 53.1 68 76.6l-8.6 8.6-8.6-8.6-14.3-14.1c-2.4-2.4-2.4-6.3 0-8.6 2.4-2.4 6.3-2.4 8.6 0L59.3 68l23.5-23.5c2.4-2.4 6.3-2.4 8.6 0 2.4 2.4 2.4 6.3.1 8.6"/></svg>`
505
- };
506
- const shieldOutline = {
507
- name: 'shield-outline',
508
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M63.8 10.7c.2 0 .5.1.6.1L112 30.7c.9.4 1.1 1 1.1 1.2 0 30.8-11.9 51.9-21.9 64.2-12.2 15-24.4 20.7-27.5 21.1-3.1-.5-15.2-6.3-27.2-21C26.7 84 14.8 62.9 14.8 31.9c0-.5.3-1 .8-1.2l47.5-19.9c.2 0 .5 0 .7-.1m0-10.7c-1.3 0-3.4.4-4.6.9l-47.7 20c-4.5 1.8-7.4 6.2-7.4 11 0 64.4 47.1 96.1 59.7 96.1 13.5 0 60.1-32.6 60.1-96.1 0-4.6-2.9-9-7.6-11.1L68.4.8C67.2.4 65.1 0 63.8 0"/></svg>`
509
- };
510
- const shield = {
511
- name: 'shield',
512
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M123.9 31.9c0 63.4-46.6 96.1-60.1 96.1-12.6 0-59.7-31.6-59.7-96.1 0-4.8 2.9-9.2 7.4-11.1L59.2.8c1.2-.4 3.3-.8 4.6-.8s3.4.4 4.6.9l47.9 20c4.7 2.1 7.6 6.4 7.6 11"/></svg>`
513
- };
514
- const shuffle = {
515
- name: 'shuffle',
516
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M107.5 27.5 94.3 14.3c-1.6-1.6-3.8-2.6-6.2-2.6s-4.5.9-6.2 2.6L68.8 27.5c-2.5 2.5-2.5 6.6 0 9.1s6.6 2.5 9.1 0l3.9-3.9v4.9c0 5.2-2.5 10-6.7 13L45.6 71.1C38 76.5 33.4 85.3 33.4 94.6v15.3c0 3.5 2.9 6.4 6.4 6.4s6.4-2.9 6.4-6.4V94.6c0-5.2 2.5-10 6.7-13l11-7.8 11 7.8c4.2 3 6.7 7.8 6.7 13v15.3c0 3.5 2.9 6.4 6.4 6.4s6.4-2.9 6.4-6.4V94.6c0-9.3-4.6-18.1-12.2-23.5L75.1 66l7.3-5.1c7.6-5.4 12.2-14.1 12.2-23.5v-4.9l3.9 3.9c1.2 1.2 2.9 1.9 4.5 1.9s3.3-.6 4.5-1.9c2.5-2.4 2.5-6.4 0-8.9"/><path d="M33.4 37.5c0 7.7 3.2 15.2 8.7 20.6 1.2 1.2 2.9 1.8 4.5 1.8 1.7 0 3.3-.6 4.6-1.9 2.5-2.5 2.4-6.6-.1-9.1-3.1-3-4.8-7.1-4.8-11.4v-4.9l3.9 3.9c1.2 1.2 2.9 1.9 4.5 1.9s3.3-.6 4.5-1.9c2.5-2.5 2.5-6.6 0-9.1L46 14.3c-1.6-1.6-3.8-2.6-6.2-2.6-2.3 0-4.5.9-6.2 2.6L20.5 27.5c-2.5 2.5-2.5 6.5 0 9s6.6 2.5 9.1 0l3.9-3.9v4.9z"/></svg>`
517
- };
518
- const stopCircle = {
519
- name: 'stop-circle',
520
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48m80 262.4a25.62 25.62 0 0 1-25.6 25.6H201.6a25.62 25.62 0 0 1-25.6-25.6V201.6a25.62 25.62 0 0 1 25.6-25.6h108.8a25.62 25.62 0 0 1 25.6 25.6z"/></svg>`
521
- };
522
- const stop = {
523
- name: 'stop',
524
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path d="M392 432H120a40 40 0 0 1-40-40V120a40 40 0 0 1 40-40h272a40 40 0 0 1 40 40v272a40 40 0 0 1-40 40"/></svg>`
525
- };
526
- const sun = {
527
- name: 'sun',
528
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M37.3 90.7c2.5 2.5 2.5 6.6 0 9.1l-12.9 12.9c-2.5 2.5-6.6 2.5-9.1 0s-2.5-6.6 0-9.1l12.9-12.9c2.6-2.5 6.6-2.5 9.1 0m-9-53.4c2.5 2.5 6.6 2.5 9.1 0s2.5-6.6 0-9.1L24.5 15.4c-2.5-2.5-6.6-2.5-9.1 0s-2.5 6.6 0 9.1zm71.4 53.4c-2.5-2.5-6.6-2.5-9.1 0s-2.5 6.6 0 9.1l12.9 12.9c2.5 2.5 6.6 2.5 9.1 0s2.5-6.6 0-9.1zM64 38.9c-13.9 0-25.1 11.3-25.1 25.1 0 13.9 11.3 25.1 25.1 25.1S89.1 77.9 89.1 64 77.9 38.9 64 38.9m0-12.6c3.5 0 6.4-2.9 6.4-6.4V6.4C70.4 2.9 67.5 0 64 0s-6.4 2.9-6.4 6.4v13.5c0 3.5 2.9 6.4 6.4 6.4m0 75.4c-3.5 0-6.4 2.9-6.4 6.4v13.5c0 3.5 2.9 6.4 6.4 6.4s6.4-2.9 6.4-6.4v-13.5c0-3.5-2.9-6.4-6.4-6.4M26.3 64c0-3.5-2.9-6.4-6.4-6.4H6.4C2.9 57.6 0 60.5 0 64s2.9 6.4 6.4 6.4h13.5c3.5 0 6.4-2.9 6.4-6.4m95.3-6.4h-13.5c-3.5 0-6.4 2.9-6.4 6.4s2.9 6.4 6.4 6.4h13.5c3.5 0 6.4-2.9 6.4-6.4s-2.9-6.4-6.4-6.4M99.7 37.3l12.9-12.9c2.5-2.5 2.5-6.6 0-9.1s-6.6-2.5-9.1 0l-12.8 13c-2.5 2.5-2.5 6.6 0 9.1 2.5 2.4 6.5 2.4 9-.1"/></svg>`
529
- };
530
- const terminal = {
531
- name: 'terminal',
532
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M110.9 4.3H17.1C7.6 4.3 0 11.9 0 21.3v85.3c0 9.4 7.6 17.1 17.1 17.1H111c9.4 0 17.1-7.6 17.1-17.1V21.3c-.1-9.4-7.7-17-17.2-17M20.5 65.2c-1.7-1.6-1.8-4.3-.1-6l13.7-13.7-13.6-13.8c-1.6-1.6-1.8-4.3-.2-6s4.3-1.8 6-.1l16.6 16.5c1.8 1.8 1.8 4.6 0 6.4L26.4 65c-1.6 1.7-4.3 1.8-5.9.2m43.4 1.1h-18c-2.3 0-4.2-1.9-4.2-4.2s1.9-4.2 4.2-4.2h17.9c2.1 0 4.1 1.5 4.3 3.7.3 2.5-1.6 4.7-4.2 4.7"/></svg>`
533
- };
534
- const time = {
535
- name: 'time',
536
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" class="wr-icon__svg"><path d="M24 8c8.82 0 16 7.18 16 16s-7.18 16-16 16S8 32.82 8 24 15.18 8 24 8m0-4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M24 15v10.5l6 1.5"/></svg>`
537
- };
538
- const trash = {
539
- name: 'trash',
540
- data: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="wr-icon__svg"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="m112 112 20 320c.95 18.49 14.4 32 32 32h184c17.67 0 30.87-13.51 32-32l20-320"/><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M80 112h352"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M192 112V72h0a23.93 23.93 0 0 1 24-24h80a23.93 23.93 0 0 1 24 24h0v40m-64 64v224m-72-224 8 224m136-224-8 224"/></svg>`
541
- };
542
- const userAdd = {
543
- name: 'user-add',
544
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><circle cx="71.4" cy="28.3" r="28.3" transform="rotate(-67.5 71.399 28.3)"/><path d="M71.4 68.5c-46.7 0-56.6 14.8-56.6 29.7S32.7 128 71.4 128 128 113.2 128 98.3s-9.9-29.8-56.6-29.8M17.2 66.9c0 2.7 2.2 4.9 4.9 4.9s4.9-2.2 4.9-4.9V56.5h10.5c2.7 0 4.9-2.2 4.9-4.9s-2.2-4.9-4.9-4.9H26.9V36.3c0-2.7-2.2-4.9-4.9-4.9s-4.9 2.2-4.9 4.9v10.5H6.7c-2.7 0-4.9 2.2-4.9 4.9s2.2 4.9 4.9 4.9h10.5z"/></svg>`
545
- };
546
- const userCircle = {
547
- name: 'user-circle',
548
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0C28.6 0 0 28.6 0 64s28.6 64 64 64 64-28.6 64-64S99.4 0 64 0m0 20c10.4 0 19 8.6 19 19s-8.6 19-19 19-19-8.6-19-19 8.6-19 19-19m0 86c-26 0-38-10-38-20s6.6-20 38-20 38 10 38 20-12 20-38 20"/></svg>`
549
- };
550
- const userRemove = {
551
- name: 'user-remove',
552
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M71.4 0c15.5 0 28.3 12.8 28.3 28.3S86.9 56.6 71.4 56.6 43.1 43.8 43.1 28.3 55.9 0 71.4 0m0 128c-38.7 0-56.6-14.9-56.6-29.8s9.9-29.7 56.6-29.7S128 83.4 128 98.3 110.1 128 71.4 128M1.9 56.5c0-2.7 2.2-4.9 4.9-4.9h30.6c2.7 0 4.9 2.2 4.9 4.9s-2.2 4.9-4.9 4.9H6.7c-2.7-.1-4.8-2.2-4.8-4.9"/></svg>`
553
- };
554
- const user = {
555
- name: 'user',
556
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="M64 0c15.5 0 28.3 12.8 28.3 28.3S79.5 56.6 64 56.6 35.7 43.8 35.7 28.3 48.5 0 64 0m0 128c-38.7 0-56.6-14.9-56.6-29.8S17.3 68.5 64 68.5s56.6 14.9 56.6 29.8S102.7 128 64 128"/></svg>`
557
- };
558
- const warning = {
559
- name: 'warning',
560
- data: `<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128" class="wr-icon__svg"><path d="m125.2 90.9-43-74.7c-8.1-14-28.3-14-36.3 0l-43 74.7c-8 14 2 31.4 18.2 31.4h86c16 0 26.1-17.4 18.1-31.4M64 35.9c3.8 0 6.8 3.1 6.7 6.9l-.8 32c-.1 3.1-2.7 5.7-5.9 5.7s-5.8-2.5-5.9-5.7l-.9-32c0-3.7 3-6.9 6.8-6.9m0 65.3c-4.1 0-7.5-3.4-7.5-7.5s3.4-7.5 7.5-7.5 7.5 3.4 7.5 7.5c0 4.2-3.4 7.5-7.5 7.5"/></svg>`
561
- };
562
- const wrIconSet = [
563
- addCircleOutline,
564
- addCircle,
565
- add,
566
- alertCircleOutline,
567
- alertCircle,
568
- alertSquircle,
569
- alert,
570
- arrowBackCircle,
571
- arrowBack,
572
- arrowBottomCircle,
573
- arrowBottom,
574
- arrowForwardCircle,
575
- arrowForward,
576
- arrowTopCircle,
577
- arrowTop,
578
- bugOutline,
579
- bug,
580
- caretBackCircle,
581
- caretBack,
582
- caretForwardCircle,
583
- caretForward,
584
- checkmarkCircleOutline,
585
- checkmarkCircle,
586
- checkmark,
587
- chevronDown,
588
- chevronUp,
589
- closeCircleOutline,
590
- closeCircle,
591
- close,
592
- cog,
593
- copyOutline,
594
- copy,
595
- discover,
596
- document,
597
- dotsHorizontal,
598
- dotsVertical,
599
- download,
600
- externalOutline,
601
- eyeOff,
602
- eye,
603
- fileAab,
604
- fileApk,
605
- fileApks,
606
- fileIpa,
607
- fileZip,
608
- filterOutline,
609
- filter,
610
- flash,
611
- folder,
612
- help,
613
- home,
614
- infoCircleOutline,
615
- lockOpened,
616
- lock,
617
- logoAndroid,
618
- logoAngular,
619
- logoAppCenter,
620
- logoAppGallery,
621
- logoApple,
622
- logoAppscreener,
623
- logoAppstore,
624
- logoBankCenterCredit,
625
- logoChrome,
626
- logoDiscord,
627
- logoFirebase,
628
- logoForteBank,
629
- logoGithub,
630
- logoGitlab,
631
- logoGooglePlay,
632
- logoHalykBank,
633
- logoInstagram,
634
- logoJusanBank,
635
- logoKaspiBank,
636
- logoNpm,
637
- logoOtbasyBank,
638
- logoOversecured,
639
- logoRustore,
640
- logoStingray,
641
- logoTelegram,
642
- logoVk,
643
- logoWhatsapp,
644
- logoYandexCloud,
645
- logoYandexTracker,
646
- modules,
647
- moon,
648
- playBack,
649
- playCircle,
650
- playForward,
651
- play,
652
- plusCircle,
653
- reader,
654
- repeat,
655
- search,
656
- shieldCheckmarkOutline,
657
- shieldCheckmark,
658
- shieldOutline,
659
- shield,
660
- shuffle,
661
- stopCircle,
662
- stop,
663
- sun,
664
- terminal,
665
- time,
666
- trash,
667
- userAdd,
668
- userCircle,
669
- userRemove,
670
- user,
671
- warning
672
- ];
111
+ /**
112
+ * @license
113
+ *
114
+ * Use of this source code is governed by an MIT-style license that can be
115
+ * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
116
+ */
117
+ const VIEW_BOX_RE = /<svg\b[^>]*\bviewBox\s*=/i;
118
+ const SVG_ROOT_RE = /<svg\b/i;
119
+ /**
120
+ * Dev-mode sanity check for a registered icon.
121
+ *
122
+ * Warns about issues that prevent correct rendering — most importantly,
123
+ * a missing `viewBox`, which causes the SVG not to scale to the icon
124
+ * host's size.
125
+ *
126
+ * Production builds drop the call entirely via `isDevMode()` tree-shaking.
127
+ *
128
+ * @internal
129
+ */
130
+ function validateIcon(icon) {
131
+ if (!SVG_ROOT_RE.test(icon.data)) {
132
+ // eslint-disable-next-line no-console -- dev-mode validation
133
+ console.warn(`[NGWR] Icon "${icon.name}" data does not contain an <svg> root element. ` +
134
+ `Custom icons must be valid SVG markup.`);
135
+ return;
136
+ }
137
+ if (!VIEW_BOX_RE.test(icon.data)) {
138
+ // eslint-disable-next-line no-console -- dev-mode validation
139
+ console.warn(`[NGWR] Icon "${icon.name}" has no viewBox attribute — it won't scale ` +
140
+ `to the host size. Add viewBox="0 0 W H" to the <svg> root.`);
141
+ }
142
+ }
673
143
 
674
144
  /**
675
145
  * @license
@@ -677,14 +147,50 @@ const wrIconSet = [
677
147
  * Use of this source code is governed by an MIT-style license that can be
678
148
  * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
679
149
  */
150
+ /**
151
+ * Registers a set of icons for use by `<wr-icon>`.
152
+ *
153
+ * Can be called multiple times — each call adds to the registry.
154
+ * Works at both the application root and at the component level,
155
+ * so a feature module or a single component can bring its own icons
156
+ * without polluting the global config.
157
+ *
158
+ * In dev mode, each icon is validated for common issues (missing
159
+ * `viewBox`, malformed root). Validation is dropped from production
160
+ * builds via `isDevMode()` tree-shaking.
161
+ *
162
+ * @example
163
+ * ```ts
164
+ * // App-level registration
165
+ * import { home, user, cog, provideWrIcons } from 'ngwr/icon';
166
+ *
167
+ * export const appConfig: ApplicationConfig = {
168
+ * providers: [
169
+ * provideWrIcons([home, user, cog]),
170
+ * ],
171
+ * };
172
+ * ```
173
+ *
174
+ * @example
175
+ * ```ts
176
+ * // Component-level registration
177
+ * import { logoGithub, logoNpm, provideWrIcons, WrIconDef } from 'ngwr/icon';
178
+ *
179
+ * @Component({
180
+ * selector: 'ngwr-header',
181
+ * imports: [WrIcon],
182
+ * providers: [provideWrIcons([logoGithub, logoNpm])],
183
+ * template: `<wr-icon name="logo-github" />`,
184
+ * })
185
+ * export class HeaderComponent {}
186
+ * ```
187
+ */
680
188
  function provideWrIcons(icons) {
681
- return [
682
- WrIconPatchService,
683
- {
684
- provide: WR_ICONS_PATCH,
685
- useValue: icons,
686
- },
687
- ];
189
+ if (isDevMode()) {
190
+ for (const icon of icons)
191
+ validateIcon(icon);
192
+ }
193
+ return [{ provide: WR_ICONS, useValue: icons, multi: true }];
688
194
  }
689
195
 
690
196
  /**
@@ -693,10 +199,43 @@ function provideWrIcons(icons) {
693
199
  * Use of this source code is governed by an MIT-style license that can be
694
200
  * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
695
201
  */
202
+ /**
203
+ * Wrap a raw SVG string in the {@link WrIconDef} envelope. Use this when
204
+ * importing icons from sources that ship full `<svg>` files — Tabler,
205
+ * Phosphor, Heroicons, Iconoir, Radix, Bootstrap Icons, your designer.
206
+ *
207
+ * Pair with a bundler's raw-SVG import (Vite's `?raw`, Webpack's
208
+ * `raw-loader`, esbuild's `--loader:.svg=text`) so the SVG file becomes
209
+ * a string at build time.
210
+ *
211
+ * For sets with a non-SVG shape (Lucide's IconNode tuples, Feather's
212
+ * inner-only SVG), use the dedicated adapter under
213
+ * `ngwr/icon/adapters/<set>` instead.
214
+ *
215
+ * @example
216
+ * ```ts
217
+ * import { svgIcon, provideWrIcons } from 'ngwr/icon';
218
+ * // Vite: the `?raw` suffix returns the file as a string.
219
+ * import plusSvg from '@tabler/icons/icons/plus.svg?raw';
220
+ * import phosphorPlusSvg from '@phosphor-icons/core/assets/regular/plus.svg?raw';
221
+ *
222
+ * bootstrapApplication(AppComponent, {
223
+ * providers: [
224
+ * provideWrIcons([
225
+ * svgIcon('plus', plusSvg),
226
+ * svgIcon('plus-phosphor', phosphorPlusSvg),
227
+ * ]),
228
+ * ],
229
+ * });
230
+ * ```
231
+ */
232
+ function svgIcon(name, svg) {
233
+ return { name, data: svg };
234
+ }
696
235
 
697
236
  /**
698
237
  * Generated bundle index. Do not edit.
699
238
  */
700
239
 
701
- export { WR_ICONS_PATCH, WrIconComponent, WrIconPatchService, WrIconService, add, addCircle, addCircleOutline, alert, alertCircle, alertCircleOutline, alertSquircle, arrowBack, arrowBackCircle, arrowBottom, arrowBottomCircle, arrowForward, arrowForwardCircle, arrowTop, arrowTopCircle, bug, bugOutline, caretBack, caretBackCircle, caretForward, caretForwardCircle, checkmark, checkmarkCircle, checkmarkCircleOutline, chevronDown, chevronUp, close, closeCircle, closeCircleOutline, cog, copy, copyOutline, discover, document, dotsHorizontal, dotsVertical, download, externalOutline, eye, eyeOff, fileAab, fileApk, fileApks, fileIpa, fileZip, filter, filterOutline, flash, folder, help, home, infoCircleOutline, lock, lockOpened, logoAndroid, logoAngular, logoAppCenter, logoAppGallery, logoApple, logoAppscreener, logoAppstore, logoBankCenterCredit, logoChrome, logoDiscord, logoFirebase, logoForteBank, logoGithub, logoGitlab, logoGooglePlay, logoHalykBank, logoInstagram, logoJusanBank, logoKaspiBank, logoNpm, logoOtbasyBank, logoOversecured, logoRustore, logoStingray, logoTelegram, logoVk, logoWhatsapp, logoYandexCloud, logoYandexTracker, modules, moon, play, playBack, playCircle, playForward, plusCircle, provideWrIcons, reader, repeat, search, shield, shieldCheckmark, shieldCheckmarkOutline, shieldOutline, shuffle, stop, stopCircle, sun, terminal, time, trash, user, userAdd, userCircle, userRemove, warning, wrIconSet };
240
+ export { WrIcon, provideWrIcons, svgIcon };
702
241
  //# sourceMappingURL=ngwr-icon.mjs.map