weasel-icons 0.1.0 → 0.3.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 (396) hide show
  1. package/README.md +93 -5
  2. package/THIRD_PARTY_NOTICES.md +17 -5
  3. package/dist/icons/alert/alert-icon.d.ts +6 -0
  4. package/dist/icons/alert/alert-icon.js +22 -0
  5. package/dist/icons/alert/alert-rig.d.ts +12 -0
  6. package/dist/icons/alert/alert-rig.js +25 -0
  7. package/dist/icons/arrow-down/arrow-down-icon.d.ts +5 -0
  8. package/dist/icons/arrow-down/arrow-down-icon.js +9 -0
  9. package/dist/icons/arrow-down/arrow-down-rig.d.ts +43 -0
  10. package/dist/icons/arrow-down/arrow-down-rig.js +64 -0
  11. package/dist/icons/arrow-left/arrow-left-icon.d.ts +5 -0
  12. package/dist/icons/arrow-left/arrow-left-icon.js +9 -0
  13. package/dist/icons/arrow-left/arrow-left-rig.d.ts +43 -0
  14. package/dist/icons/arrow-left/arrow-left-rig.js +64 -0
  15. package/dist/icons/arrow-right/arrow-right-icon.d.ts +5 -0
  16. package/dist/icons/arrow-right/arrow-right-icon.js +9 -0
  17. package/dist/icons/arrow-right/arrow-right-rig.d.ts +43 -0
  18. package/dist/icons/arrow-right/arrow-right-rig.js +64 -0
  19. package/dist/icons/arrow-up/arrow-up-icon.d.ts +5 -0
  20. package/dist/icons/arrow-up/arrow-up-icon.js +9 -0
  21. package/dist/icons/arrow-up/arrow-up-rig.d.ts +43 -0
  22. package/dist/icons/arrow-up/arrow-up-rig.js +64 -0
  23. package/dist/icons/badge-check/badge-check-icon.d.ts +5 -0
  24. package/dist/icons/badge-check/badge-check-icon.js +33 -0
  25. package/dist/icons/badge-check/badge-check-rig.d.ts +14 -0
  26. package/dist/icons/badge-check/badge-check-rig.js +36 -0
  27. package/dist/icons/bell/bell-icon.js +1 -1
  28. package/dist/icons/book-open/book-open-icon.d.ts +5 -0
  29. package/dist/icons/book-open/book-open-icon.js +9 -0
  30. package/dist/icons/book-open/book-open-rig.d.ts +65 -0
  31. package/dist/icons/book-open/book-open-rig.js +95 -0
  32. package/dist/icons/bookmark/bookmark-icon.d.ts +5 -0
  33. package/dist/icons/bookmark/bookmark-icon.js +9 -0
  34. package/dist/icons/bookmark/bookmark-rig.d.ts +43 -0
  35. package/dist/icons/bookmark/bookmark-rig.js +65 -0
  36. package/dist/icons/bulb/bulb-icon.d.ts +5 -0
  37. package/dist/icons/bulb/bulb-icon.js +25 -0
  38. package/dist/icons/bulb/bulb-rig.d.ts +13 -0
  39. package/dist/icons/bulb/bulb-rig.js +37 -0
  40. package/dist/icons/calendar/calendar-icon.d.ts +5 -0
  41. package/dist/icons/calendar/calendar-icon.js +9 -0
  42. package/dist/icons/calendar/calendar-rig.d.ts +67 -0
  43. package/dist/icons/calendar/calendar-rig.js +95 -0
  44. package/dist/icons/camera/camera-icon.d.ts +5 -0
  45. package/dist/icons/camera/camera-icon.js +9 -0
  46. package/dist/icons/camera/camera-rig.d.ts +58 -0
  47. package/dist/icons/camera/camera-rig.js +82 -0
  48. package/dist/icons/check/check-icon.d.ts +5 -0
  49. package/dist/icons/check/check-icon.js +26 -0
  50. package/dist/icons/check/check-rig.d.ts +6 -0
  51. package/dist/icons/check/check-rig.js +38 -0
  52. package/dist/icons/chevron-down/chevron-down-icon.d.ts +5 -0
  53. package/dist/icons/chevron-down/chevron-down-icon.js +9 -0
  54. package/dist/icons/chevron-down/chevron-down-rig.d.ts +48 -0
  55. package/dist/icons/chevron-down/chevron-down-rig.js +30 -0
  56. package/dist/icons/chevron-left/chevron-left-icon.d.ts +5 -0
  57. package/dist/icons/chevron-left/chevron-left-icon.js +9 -0
  58. package/dist/icons/chevron-left/chevron-left-rig.d.ts +34 -0
  59. package/dist/icons/chevron-left/chevron-left-rig.js +49 -0
  60. package/dist/icons/chevron-right/chevron-right-icon.d.ts +5 -0
  61. package/dist/icons/chevron-right/chevron-right-icon.js +9 -0
  62. package/dist/icons/chevron-right/chevron-right-rig.d.ts +34 -0
  63. package/dist/icons/chevron-right/chevron-right-rig.js +49 -0
  64. package/dist/icons/chevron-up/chevron-up-icon.d.ts +5 -0
  65. package/dist/icons/chevron-up/chevron-up-icon.js +9 -0
  66. package/dist/icons/chevron-up/chevron-up-rig.d.ts +48 -0
  67. package/dist/icons/chevron-up/chevron-up-rig.js +30 -0
  68. package/dist/icons/circle-help/circle-help-icon.d.ts +5 -0
  69. package/dist/icons/circle-help/circle-help-icon.js +9 -0
  70. package/dist/icons/circle-help/circle-help-rig.d.ts +45 -0
  71. package/dist/icons/circle-help/circle-help-rig.js +70 -0
  72. package/dist/icons/clapperboard/clapperboard-icon.d.ts +5 -0
  73. package/dist/icons/clapperboard/clapperboard-icon.js +18 -0
  74. package/dist/icons/clapperboard/clapperboard-rig.d.ts +12 -0
  75. package/dist/icons/clapperboard/clapperboard-rig.js +25 -0
  76. package/dist/icons/clipboard/clipboard-icon.d.ts +5 -0
  77. package/dist/icons/clipboard/clipboard-icon.js +9 -0
  78. package/dist/icons/clipboard/clipboard-rig.d.ts +69 -0
  79. package/dist/icons/clipboard/clipboard-rig.js +99 -0
  80. package/dist/icons/clock/clock-icon.d.ts +5 -0
  81. package/dist/icons/clock/clock-icon.js +9 -0
  82. package/dist/icons/clock/clock-rig.d.ts +40 -0
  83. package/dist/icons/clock/clock-rig.js +53 -0
  84. package/dist/icons/close/close-icon.d.ts +5 -0
  85. package/dist/icons/close/close-icon.js +27 -0
  86. package/dist/icons/close/close-rig.d.ts +10 -0
  87. package/dist/icons/close/close-rig.js +31 -0
  88. package/dist/icons/cloud/cloud-icon.d.ts +5 -0
  89. package/dist/icons/cloud/cloud-icon.js +9 -0
  90. package/dist/icons/cloud/cloud-rig.d.ts +74 -0
  91. package/dist/icons/cloud/cloud-rig.js +103 -0
  92. package/dist/icons/code/code-icon.d.ts +5 -0
  93. package/dist/icons/code/code-icon.js +9 -0
  94. package/dist/icons/code/code-rig.d.ts +104 -0
  95. package/dist/icons/code/code-rig.js +148 -0
  96. package/dist/icons/copy/copy-icon.d.ts +5 -0
  97. package/dist/icons/copy/copy-icon.js +31 -0
  98. package/dist/icons/copy/copy-rig.d.ts +13 -0
  99. package/dist/icons/copy/copy-rig.js +44 -0
  100. package/dist/icons/credit-card/credit-card-icon.d.ts +5 -0
  101. package/dist/icons/credit-card/credit-card-icon.js +9 -0
  102. package/dist/icons/credit-card/credit-card-rig.d.ts +88 -0
  103. package/dist/icons/credit-card/credit-card-rig.js +122 -0
  104. package/dist/icons/cursor/cursor-icon.d.ts +5 -0
  105. package/dist/icons/cursor/cursor-icon.js +32 -0
  106. package/dist/icons/cursor/cursor-rig.d.ts +21 -0
  107. package/dist/icons/cursor/cursor-rig.js +63 -0
  108. package/dist/icons/database/database-icon.d.ts +5 -0
  109. package/dist/icons/database/database-icon.js +9 -0
  110. package/dist/icons/database/database-rig.d.ts +61 -0
  111. package/dist/icons/database/database-rig.js +86 -0
  112. package/dist/icons/delete/delete-icon.d.ts +5 -0
  113. package/dist/icons/delete/delete-icon.js +25 -0
  114. package/dist/icons/delete/delete-rig.d.ts +15 -0
  115. package/dist/icons/delete/delete-rig.js +33 -0
  116. package/dist/icons/dog/dog-icon.js +1 -1
  117. package/dist/icons/download/download-icon.js +1 -1
  118. package/dist/icons/external-link/external-link-icon.d.ts +5 -0
  119. package/dist/icons/external-link/external-link-icon.js +9 -0
  120. package/dist/icons/external-link/external-link-rig.d.ts +45 -0
  121. package/dist/icons/external-link/external-link-rig.js +42 -0
  122. package/dist/icons/eye/eye-icon.d.ts +5 -0
  123. package/dist/icons/eye/eye-icon.js +27 -0
  124. package/dist/icons/eye/eye-rig.d.ts +9 -0
  125. package/dist/icons/eye/eye-rig.js +37 -0
  126. package/dist/icons/file/file-icon.d.ts +5 -0
  127. package/dist/icons/file/file-icon.js +9 -0
  128. package/dist/icons/file/file-rig.d.ts +53 -0
  129. package/dist/icons/file/file-rig.js +80 -0
  130. package/dist/icons/file-text/file-text-icon.d.ts +5 -0
  131. package/dist/icons/file-text/file-text-icon.js +9 -0
  132. package/dist/icons/file-text/file-text-rig.d.ts +93 -0
  133. package/dist/icons/file-text/file-text-rig.js +138 -0
  134. package/dist/icons/filter/filter-icon.d.ts +5 -0
  135. package/dist/icons/filter/filter-icon.js +9 -0
  136. package/dist/icons/filter/filter-rig.d.ts +72 -0
  137. package/dist/icons/filter/filter-rig.js +99 -0
  138. package/dist/icons/folder/folder-icon.d.ts +5 -0
  139. package/dist/icons/folder/folder-icon.js +9 -0
  140. package/dist/icons/folder/folder-rig.d.ts +20 -0
  141. package/dist/icons/folder/folder-rig.js +28 -0
  142. package/dist/icons/globe/globe-icon.d.ts +5 -0
  143. package/dist/icons/globe/globe-icon.js +9 -0
  144. package/dist/icons/globe/globe-rig.d.ts +40 -0
  145. package/dist/icons/globe/globe-rig.js +57 -0
  146. package/dist/icons/heart/heart-icon.js +1 -1
  147. package/dist/icons/heart/heart-rig.js +1 -1
  148. package/dist/icons/home/home-icon.d.ts +5 -0
  149. package/dist/icons/home/home-icon.js +9 -0
  150. package/dist/icons/home/home-rig.d.ts +49 -0
  151. package/dist/icons/home/home-rig.js +76 -0
  152. package/dist/icons/image/image-icon.d.ts +5 -0
  153. package/dist/icons/image/image-icon.js +9 -0
  154. package/dist/icons/image/image-rig.d.ts +70 -0
  155. package/dist/icons/image/image-rig.js +99 -0
  156. package/dist/icons/info/info-icon.d.ts +5 -0
  157. package/dist/icons/info/info-icon.js +9 -0
  158. package/dist/icons/info/info-rig.d.ts +48 -0
  159. package/dist/icons/info/info-rig.js +69 -0
  160. package/dist/icons/key/key-icon.d.ts +5 -0
  161. package/dist/icons/key/key-icon.js +9 -0
  162. package/dist/icons/key/key-rig.d.ts +50 -0
  163. package/dist/icons/key/key-rig.js +76 -0
  164. package/dist/icons/layers/layers-icon.d.ts +5 -0
  165. package/dist/icons/layers/layers-icon.js +9 -0
  166. package/dist/icons/layers/layers-rig.d.ts +147 -0
  167. package/dist/icons/layers/layers-rig.js +211 -0
  168. package/dist/icons/layout-dashboard/layout-dashboard-icon.d.ts +5 -0
  169. package/dist/icons/layout-dashboard/layout-dashboard-icon.js +9 -0
  170. package/dist/icons/layout-dashboard/layout-dashboard-rig.d.ts +194 -0
  171. package/dist/icons/layout-dashboard/layout-dashboard-rig.js +284 -0
  172. package/dist/icons/layout-grid/layout-grid-icon.d.ts +5 -0
  173. package/dist/icons/layout-grid/layout-grid-icon.js +9 -0
  174. package/dist/icons/layout-grid/layout-grid-rig.d.ts +103 -0
  175. package/dist/icons/layout-grid/layout-grid-rig.js +167 -0
  176. package/dist/icons/link/link-icon.d.ts +5 -0
  177. package/dist/icons/link/link-icon.js +30 -0
  178. package/dist/icons/link/link-rig.d.ts +13 -0
  179. package/dist/icons/link/link-rig.js +37 -0
  180. package/dist/icons/list/list-icon.d.ts +5 -0
  181. package/dist/icons/list/list-icon.js +9 -0
  182. package/dist/icons/list/list-rig.d.ts +165 -0
  183. package/dist/icons/list/list-rig.js +231 -0
  184. package/dist/icons/lock/lock-icon.d.ts +5 -0
  185. package/dist/icons/lock/lock-icon.js +9 -0
  186. package/dist/icons/lock/lock-rig.d.ts +42 -0
  187. package/dist/icons/lock/lock-rig.js +58 -0
  188. package/dist/icons/log-in/log-in-icon.d.ts +5 -0
  189. package/dist/icons/log-in/log-in-icon.js +9 -0
  190. package/dist/icons/log-in/log-in-rig.d.ts +39 -0
  191. package/dist/icons/log-in/log-in-rig.js +55 -0
  192. package/dist/icons/log-out/log-out-icon.d.ts +5 -0
  193. package/dist/icons/log-out/log-out-icon.js +9 -0
  194. package/dist/icons/log-out/log-out-rig.d.ts +39 -0
  195. package/dist/icons/log-out/log-out-rig.js +55 -0
  196. package/dist/icons/mail/mail-icon.d.ts +5 -0
  197. package/dist/icons/mail/mail-icon.js +9 -0
  198. package/dist/icons/mail/mail-rig.d.ts +20 -0
  199. package/dist/icons/mail/mail-rig.js +28 -0
  200. package/dist/icons/map-pin/map-pin-icon.d.ts +5 -0
  201. package/dist/icons/map-pin/map-pin-icon.js +9 -0
  202. package/dist/icons/map-pin/map-pin-rig.d.ts +118 -0
  203. package/dist/icons/map-pin/map-pin-rig.js +164 -0
  204. package/dist/icons/maximize/maximize-icon.d.ts +5 -0
  205. package/dist/icons/maximize/maximize-icon.js +9 -0
  206. package/dist/icons/maximize/maximize-rig.d.ts +190 -0
  207. package/dist/icons/maximize/maximize-rig.js +268 -0
  208. package/dist/icons/menu/menu-icon.d.ts +5 -0
  209. package/dist/icons/menu/menu-icon.js +9 -0
  210. package/dist/icons/menu/menu-rig.d.ts +41 -0
  211. package/dist/icons/menu/menu-rig.js +58 -0
  212. package/dist/icons/message-circle/message-circle-icon.d.ts +5 -0
  213. package/dist/icons/message-circle/message-circle-icon.js +9 -0
  214. package/dist/icons/message-circle/message-circle-rig.d.ts +99 -0
  215. package/dist/icons/message-circle/message-circle-rig.js +143 -0
  216. package/dist/icons/mic/mic-icon.d.ts +5 -0
  217. package/dist/icons/mic/mic-icon.js +9 -0
  218. package/dist/icons/mic/mic-rig.d.ts +67 -0
  219. package/dist/icons/mic/mic-rig.js +96 -0
  220. package/dist/icons/minimize/minimize-icon.d.ts +5 -0
  221. package/dist/icons/minimize/minimize-icon.js +9 -0
  222. package/dist/icons/minimize/minimize-rig.d.ts +190 -0
  223. package/dist/icons/minimize/minimize-rig.js +268 -0
  224. package/dist/icons/minus/minus-icon.d.ts +5 -0
  225. package/dist/icons/minus/minus-icon.js +9 -0
  226. package/dist/icons/minus/minus-rig.d.ts +31 -0
  227. package/dist/icons/minus/minus-rig.js +47 -0
  228. package/dist/icons/monkey/monkey-icon.js +1 -1
  229. package/dist/icons/moon/moon-icon.d.ts +5 -0
  230. package/dist/icons/moon/moon-icon.js +9 -0
  231. package/dist/icons/moon/moon-rig.d.ts +62 -0
  232. package/dist/icons/moon/moon-rig.js +87 -0
  233. package/dist/icons/more-horizontal/more-horizontal-icon.d.ts +5 -0
  234. package/dist/icons/more-horizontal/more-horizontal-icon.js +9 -0
  235. package/dist/icons/more-horizontal/more-horizontal-rig.d.ts +91 -0
  236. package/dist/icons/more-horizontal/more-horizontal-rig.js +141 -0
  237. package/dist/icons/more-vertical/more-vertical-icon.d.ts +5 -0
  238. package/dist/icons/more-vertical/more-vertical-icon.js +9 -0
  239. package/dist/icons/more-vertical/more-vertical-rig.d.ts +91 -0
  240. package/dist/icons/more-vertical/more-vertical-rig.js +141 -0
  241. package/dist/icons/music/music-icon.d.ts +5 -0
  242. package/dist/icons/music/music-icon.js +9 -0
  243. package/dist/icons/music/music-rig.d.ts +66 -0
  244. package/dist/icons/music/music-rig.js +95 -0
  245. package/dist/icons/package/package-icon.d.ts +5 -0
  246. package/dist/icons/package/package-icon.js +9 -0
  247. package/dist/icons/package/package-rig.d.ts +40 -0
  248. package/dist/icons/package/package-rig.js +60 -0
  249. package/dist/icons/pause/pause-icon.d.ts +5 -0
  250. package/dist/icons/pause/pause-icon.js +9 -0
  251. package/dist/icons/pause/pause-rig.d.ts +104 -0
  252. package/dist/icons/pause/pause-rig.js +147 -0
  253. package/dist/icons/pencil/pencil-icon.d.ts +5 -0
  254. package/dist/icons/pencil/pencil-icon.js +9 -0
  255. package/dist/icons/pencil/pencil-rig.d.ts +48 -0
  256. package/dist/icons/pencil/pencil-rig.js +68 -0
  257. package/dist/icons/phone/phone-icon.d.ts +5 -0
  258. package/dist/icons/phone/phone-icon.js +9 -0
  259. package/dist/icons/phone/phone-rig.d.ts +41 -0
  260. package/dist/icons/phone/phone-rig.js +60 -0
  261. package/dist/icons/play/play-icon.d.ts +5 -0
  262. package/dist/icons/play/play-icon.js +9 -0
  263. package/dist/icons/play/play-rig.d.ts +58 -0
  264. package/dist/icons/play/play-rig.js +80 -0
  265. package/dist/icons/plug/plug-icon.d.ts +5 -0
  266. package/dist/icons/plug/plug-icon.js +21 -0
  267. package/dist/icons/plug/plug-rig.d.ts +16 -0
  268. package/dist/icons/plug/plug-rig.js +29 -0
  269. package/dist/icons/plus/plus-icon.d.ts +5 -0
  270. package/dist/icons/plus/plus-icon.js +9 -0
  271. package/dist/icons/plus/plus-rig.d.ts +94 -0
  272. package/dist/icons/plus/plus-rig.js +137 -0
  273. package/dist/icons/refresh/refresh-icon.d.ts +5 -0
  274. package/dist/icons/refresh/refresh-icon.js +40 -0
  275. package/dist/icons/refresh/refresh-rig.d.ts +11 -0
  276. package/dist/icons/refresh/refresh-rig.js +30 -0
  277. package/dist/icons/replace/replace-icon.d.ts +5 -0
  278. package/dist/icons/replace/replace-icon.js +26 -0
  279. package/dist/icons/replace/replace-rig.d.ts +20 -0
  280. package/dist/icons/replace/replace-rig.js +42 -0
  281. package/dist/icons/rocket/rocket-icon.js +1 -1
  282. package/dist/icons/save/save-icon.d.ts +5 -0
  283. package/dist/icons/save/save-icon.js +9 -0
  284. package/dist/icons/save/save-rig.d.ts +43 -0
  285. package/dist/icons/save/save-rig.js +63 -0
  286. package/dist/icons/search/search-icon.js +1 -1
  287. package/dist/icons/send/send-icon.d.ts +5 -0
  288. package/dist/icons/send/send-icon.js +9 -0
  289. package/dist/icons/send/send-rig.d.ts +43 -0
  290. package/dist/icons/send/send-rig.js +61 -0
  291. package/dist/icons/settings/settings-icon.d.ts +5 -0
  292. package/dist/icons/settings/settings-icon.js +9 -0
  293. package/dist/icons/settings/settings-rig.d.ts +41 -0
  294. package/dist/icons/settings/settings-rig.js +64 -0
  295. package/dist/icons/share/share-icon.d.ts +5 -0
  296. package/dist/icons/share/share-icon.js +9 -0
  297. package/dist/icons/share/share-rig.d.ts +80 -0
  298. package/dist/icons/share/share-rig.js +114 -0
  299. package/dist/icons/shield/shield-icon.d.ts +5 -0
  300. package/dist/icons/shield/shield-icon.js +25 -0
  301. package/dist/icons/shield/shield-rig.d.ts +23 -0
  302. package/dist/icons/shield/shield-rig.js +42 -0
  303. package/dist/icons/ship/ship-icon.js +1 -1
  304. package/dist/icons/shopping-bag/shopping-bag-icon.d.ts +5 -0
  305. package/dist/icons/shopping-bag/shopping-bag-icon.js +9 -0
  306. package/dist/icons/shopping-bag/shopping-bag-rig.d.ts +92 -0
  307. package/dist/icons/shopping-bag/shopping-bag-rig.js +139 -0
  308. package/dist/icons/shopping-cart/shopping-cart-icon.d.ts +5 -0
  309. package/dist/icons/shopping-cart/shopping-cart-icon.js +9 -0
  310. package/dist/icons/shopping-cart/shopping-cart-rig.d.ts +72 -0
  311. package/dist/icons/shopping-cart/shopping-cart-rig.js +111 -0
  312. package/dist/icons/sliders/sliders-icon.d.ts +5 -0
  313. package/dist/icons/sliders/sliders-icon.js +9 -0
  314. package/dist/icons/sliders/sliders-rig.d.ts +156 -0
  315. package/dist/icons/sliders/sliders-rig.js +231 -0
  316. package/dist/icons/sparkle/sparkle-icon.d.ts +5 -0
  317. package/dist/icons/sparkle/sparkle-icon.js +27 -0
  318. package/dist/icons/sparkle/sparkle-rig.d.ts +8 -0
  319. package/dist/icons/sparkle/sparkle-rig.js +6 -0
  320. package/dist/icons/sparkles/sparkles-icon.d.ts +5 -0
  321. package/dist/icons/sparkles/sparkles-icon.js +27 -0
  322. package/dist/icons/sparkles/sparkles-rig.d.ts +14 -0
  323. package/dist/icons/sparkles/sparkles-rig.js +24 -0
  324. package/dist/icons/star/star-icon.d.ts +5 -0
  325. package/dist/icons/star/star-icon.js +38 -0
  326. package/dist/icons/star/star-rig.d.ts +20 -0
  327. package/dist/icons/star/star-rig.js +61 -0
  328. package/dist/icons/sun/sun-icon.d.ts +5 -0
  329. package/dist/icons/sun/sun-icon.js +9 -0
  330. package/dist/icons/sun/sun-rig.d.ts +290 -0
  331. package/dist/icons/sun/sun-rig.js +401 -0
  332. package/dist/icons/swap/swap-icon.d.ts +5 -0
  333. package/dist/icons/swap/swap-icon.js +26 -0
  334. package/dist/icons/swap/swap-rig.d.ts +10 -0
  335. package/dist/icons/swap/swap-rig.js +24 -0
  336. package/dist/icons/terminal/terminal-icon.d.ts +5 -0
  337. package/dist/icons/terminal/terminal-icon.js +9 -0
  338. package/dist/icons/terminal/terminal-rig.d.ts +71 -0
  339. package/dist/icons/terminal/terminal-rig.js +102 -0
  340. package/dist/icons/timer/timer-icon.d.ts +5 -0
  341. package/dist/icons/timer/timer-icon.js +9 -0
  342. package/dist/icons/timer/timer-rig.d.ts +50 -0
  343. package/dist/icons/timer/timer-rig.js +72 -0
  344. package/dist/icons/truck/truck-icon.d.ts +5 -0
  345. package/dist/icons/truck/truck-icon.js +9 -0
  346. package/dist/icons/truck/truck-rig.d.ts +184 -0
  347. package/dist/icons/truck/truck-rig.js +272 -0
  348. package/dist/icons/upload/upload-icon.d.ts +5 -0
  349. package/dist/icons/upload/upload-icon.js +9 -0
  350. package/dist/icons/upload/upload-rig.d.ts +99 -0
  351. package/dist/icons/upload/upload-rig.js +124 -0
  352. package/dist/icons/user/user-icon.d.ts +5 -0
  353. package/dist/icons/user/user-icon.js +9 -0
  354. package/dist/icons/user/user-rig.d.ts +45 -0
  355. package/dist/icons/user/user-rig.js +66 -0
  356. package/dist/icons/users/users-icon.d.ts +5 -0
  357. package/dist/icons/users/users-icon.js +9 -0
  358. package/dist/icons/users/users-rig.d.ts +76 -0
  359. package/dist/icons/users/users-rig.js +113 -0
  360. package/dist/icons/video/video-icon.d.ts +5 -0
  361. package/dist/icons/video/video-icon.js +9 -0
  362. package/dist/icons/video/video-rig.d.ts +62 -0
  363. package/dist/icons/video/video-rig.js +84 -0
  364. package/dist/icons/volume/volume-icon.d.ts +5 -0
  365. package/dist/icons/volume/volume-icon.js +9 -0
  366. package/dist/icons/volume/volume-rig.d.ts +82 -0
  367. package/dist/icons/volume/volume-rig.js +120 -0
  368. package/dist/icons/wallet/wallet-icon.d.ts +5 -0
  369. package/dist/icons/wallet/wallet-icon.js +9 -0
  370. package/dist/icons/wallet/wallet-rig.d.ts +63 -0
  371. package/dist/icons/wallet/wallet-rig.js +90 -0
  372. package/dist/icons/wave/wave-icon.d.ts +5 -0
  373. package/dist/icons/wave/wave-icon.js +18 -0
  374. package/dist/icons/wave/wave-rig.d.ts +8 -0
  375. package/dist/icons/wave/wave-rig.js +39 -0
  376. package/dist/icons/wifi/wifi-icon.d.ts +5 -0
  377. package/dist/icons/wifi/wifi-icon.js +9 -0
  378. package/dist/icons/wifi/wifi-rig.d.ts +189 -0
  379. package/dist/icons/wifi/wifi-rig.js +260 -0
  380. package/dist/index.d.ts +93 -2
  381. package/dist/index.js +92 -1
  382. package/dist/shared/articulated-icon.d.ts +7 -0
  383. package/dist/shared/articulated-icon.js +49 -0
  384. package/dist/shared/articulation.d.ts +62 -0
  385. package/dist/shared/articulation.js +85 -0
  386. package/dist/shared/icon-colors.d.ts +95 -4
  387. package/dist/shared/icon-types.d.ts +1 -0
  388. package/dist/shared/sparkle-motion.d.ts +12 -0
  389. package/dist/shared/sparkle-motion.js +38 -0
  390. package/dist/shared/use-icon-motion.d.ts +5 -1
  391. package/dist/shared/use-icon-motion.js +30 -3
  392. package/package.json +464 -9
  393. package/dist/icons/leaf/leaf-icon.d.ts +0 -6
  394. package/dist/icons/leaf/leaf-icon.js +0 -29
  395. package/dist/icons/leaf/leaf-rig.d.ts +0 -25
  396. package/dist/icons/leaf/leaf-rig.js +0 -201
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type SlidersState } from "./sliders-rig.js";
3
+ export { slidersStates, type SlidersState } from "./sliders-rig.js";
4
+ export type SlidersIconProps = StatefulIconProps<SlidersState>;
5
+ export declare const SlidersIcon: import("react").NamedExoticComponent<SlidersIconProps>;
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { memo } from 'react';
4
+ import { ArticulatedIcon } from "../../shared/articulated-icon.js";
5
+ import { slidersArt, slidersStates } from "./sliders-rig.js";
6
+ export { slidersStates } from "./sliders-rig.js";
7
+ export const SlidersIcon = memo(function SlidersIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: slidersArt, states: slidersStates, ...props });
9
+ });
@@ -0,0 +1,156 @@
1
+ export declare const slidersStates: readonly ["idle", "adjusting", "applied"];
2
+ export type SlidersState = (typeof slidersStates)[number];
3
+ export declare const slidersArt: {
4
+ readonly name: "sliders";
5
+ readonly parts: readonly [{
6
+ readonly name: "tracks";
7
+ readonly paths: readonly ["M3 5H21M3 12H21M3 19H21"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [12, 12];
10
+ readonly gestures: readonly [];
11
+ }, {
12
+ readonly name: "knob-0";
13
+ readonly paths: readonly ["M13.4 3H14.600000000000001Q15.200000000000001 3 15.200000000000001 3.6V6.4Q15.200000000000001 7 14.600000000000001 7H13.4Q12.8 7 12.8 6.4V3.6Q12.8 3 13.4 3Z"];
14
+ readonly poses: readonly [{}, {
15
+ readonly x: -2;
16
+ }, {
17
+ readonly x: 2;
18
+ }];
19
+ readonly pivot: readonly [14, 5];
20
+ readonly gestures: readonly [null, {
21
+ readonly duration: 3.4;
22
+ readonly repeatAfter: 5.3;
23
+ readonly loop: true;
24
+ readonly frames: readonly [{
25
+ readonly at: 0;
26
+ }, {
27
+ readonly at: 0.08;
28
+ }, {
29
+ readonly at: 0.2;
30
+ readonly x: 3.4;
31
+ }, {
32
+ readonly at: 0.33;
33
+ readonly x: 3.4;
34
+ }, {
35
+ readonly at: 0.45;
36
+ readonly x: 2.448;
37
+ }, {
38
+ readonly at: 0.5599999999999999;
39
+ }, {
40
+ readonly at: 1;
41
+ }];
42
+ }, {
43
+ readonly duration: 1.1;
44
+ readonly repeatAfter: 2.1;
45
+ readonly loop: false;
46
+ readonly frames: readonly [{
47
+ readonly at: 0;
48
+ }, {
49
+ readonly at: 0.13;
50
+ readonly x: -0.7;
51
+ }, {
52
+ readonly at: 0.43;
53
+ readonly x: 0.15;
54
+ }, {
55
+ readonly at: 1;
56
+ }];
57
+ }];
58
+ readonly surface: true;
59
+ }, {
60
+ readonly name: "knob-1";
61
+ readonly paths: readonly ["M7.3999999999999995 10H8.6Q9.2 10 9.2 10.6V13.4Q9.2 14 8.6 14H7.3999999999999995Q6.8 14 6.8 13.4V10.6Q6.8 10 7.3999999999999995 10Z"];
62
+ readonly poses: readonly [{}, {
63
+ readonly x: 3;
64
+ }, {
65
+ readonly x: -2;
66
+ }];
67
+ readonly pivot: readonly [8, 12];
68
+ readonly gestures: readonly [null, {
69
+ readonly duration: 3.4;
70
+ readonly repeatAfter: 5.3;
71
+ readonly loop: true;
72
+ readonly frames: readonly [{
73
+ readonly at: 0;
74
+ }, {
75
+ readonly at: 0.26;
76
+ }, {
77
+ readonly at: 0.38;
78
+ readonly x: -3;
79
+ }, {
80
+ readonly at: 0.51;
81
+ readonly x: -3;
82
+ }, {
83
+ readonly at: 0.63;
84
+ readonly x: -2.16;
85
+ }, {
86
+ readonly at: 0.74;
87
+ }, {
88
+ readonly at: 1;
89
+ }];
90
+ }, {
91
+ readonly duration: 1.1;
92
+ readonly repeatAfter: 2.1;
93
+ readonly loop: false;
94
+ readonly frames: readonly [{
95
+ readonly at: 0;
96
+ }, {
97
+ readonly at: 0.26;
98
+ readonly x: 0.6;
99
+ }, {
100
+ readonly at: 0.53;
101
+ readonly x: -0.15;
102
+ }, {
103
+ readonly at: 1;
104
+ }];
105
+ }];
106
+ readonly surface: true;
107
+ }, {
108
+ readonly name: "knob-2";
109
+ readonly paths: readonly ["M15.4 17H16.599999999999998Q17.2 17 17.2 17.6V20.4Q17.2 21 16.599999999999998 21H15.4Q14.8 21 14.8 20.4V17.6Q14.8 17 15.4 17Z"];
110
+ readonly poses: readonly [{}, {
111
+ readonly x: -4;
112
+ }, {
113
+ readonly x: -1;
114
+ }];
115
+ readonly pivot: readonly [16, 19];
116
+ readonly gestures: readonly [null, {
117
+ readonly duration: 3.4;
118
+ readonly repeatAfter: 5.3;
119
+ readonly loop: true;
120
+ readonly frames: readonly [{
121
+ readonly at: 0;
122
+ }, {
123
+ readonly at: 0.44;
124
+ }, {
125
+ readonly at: 0.56;
126
+ readonly x: 2;
127
+ }, {
128
+ readonly at: 0.69;
129
+ readonly x: 2;
130
+ }, {
131
+ readonly at: 0.81;
132
+ readonly x: 1.44;
133
+ }, {
134
+ readonly at: 0.9199999999999999;
135
+ }, {
136
+ readonly at: 1;
137
+ }];
138
+ }, {
139
+ readonly duration: 1.1;
140
+ readonly repeatAfter: 2.1;
141
+ readonly loop: false;
142
+ readonly frames: readonly [{
143
+ readonly at: 0;
144
+ }, {
145
+ readonly at: 0.39;
146
+ readonly x: -0.5;
147
+ }, {
148
+ readonly at: 0.63;
149
+ readonly x: 0.12;
150
+ }, {
151
+ readonly at: 1;
152
+ }];
153
+ }];
154
+ readonly surface: true;
155
+ }];
156
+ };
@@ -0,0 +1,231 @@
1
+ export const slidersStates = ['idle', 'adjusting', 'applied'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Adjust settings: one knob drags to a value and nudges into a detent before the next knob moves. Applied values catch once; tracks never wobble.
4
+ export const slidersArt = {
5
+ name: 'sliders',
6
+ parts: [
7
+ {
8
+ name: 'tracks',
9
+ paths: ['M3 5H21M3 12H21M3 19H21'],
10
+ poses: [{}, {}, {}],
11
+ pivot: [12, 12],
12
+ gestures: [],
13
+ },
14
+ {
15
+ name: 'knob-0',
16
+ paths: [
17
+ 'M13.4 3H14.600000000000001Q15.200000000000001 3 15.200000000000001 3.6V6.4Q15.200000000000001 7 14.600000000000001 7H13.4Q12.8 7 12.8 6.4V3.6Q12.8 3 13.4 3Z',
18
+ ],
19
+ poses: [
20
+ {},
21
+ {
22
+ x: -2,
23
+ },
24
+ {
25
+ x: 2,
26
+ },
27
+ ],
28
+ pivot: [14, 5],
29
+ gestures: [
30
+ null,
31
+ {
32
+ duration: 3.4,
33
+ repeatAfter: 5.3,
34
+ loop: true,
35
+ frames: [
36
+ {
37
+ at: 0,
38
+ },
39
+ {
40
+ at: 0.08,
41
+ },
42
+ {
43
+ at: 0.2,
44
+ x: 3.4,
45
+ },
46
+ {
47
+ at: 0.33,
48
+ x: 3.4,
49
+ },
50
+ {
51
+ at: 0.45,
52
+ x: 2.448,
53
+ },
54
+ {
55
+ at: 0.5599999999999999,
56
+ },
57
+ {
58
+ at: 1,
59
+ },
60
+ ],
61
+ },
62
+ {
63
+ duration: 1.1,
64
+ repeatAfter: 2.1,
65
+ loop: false,
66
+ frames: [
67
+ {
68
+ at: 0,
69
+ },
70
+ {
71
+ at: 0.13,
72
+ x: -0.7,
73
+ },
74
+ {
75
+ at: 0.43,
76
+ x: 0.15,
77
+ },
78
+ {
79
+ at: 1,
80
+ },
81
+ ],
82
+ },
83
+ ],
84
+ surface: true,
85
+ },
86
+ {
87
+ name: 'knob-1',
88
+ paths: [
89
+ 'M7.3999999999999995 10H8.6Q9.2 10 9.2 10.6V13.4Q9.2 14 8.6 14H7.3999999999999995Q6.8 14 6.8 13.4V10.6Q6.8 10 7.3999999999999995 10Z',
90
+ ],
91
+ poses: [
92
+ {},
93
+ {
94
+ x: 3,
95
+ },
96
+ {
97
+ x: -2,
98
+ },
99
+ ],
100
+ pivot: [8, 12],
101
+ gestures: [
102
+ null,
103
+ {
104
+ duration: 3.4,
105
+ repeatAfter: 5.3,
106
+ loop: true,
107
+ frames: [
108
+ {
109
+ at: 0,
110
+ },
111
+ {
112
+ at: 0.26,
113
+ },
114
+ {
115
+ at: 0.38,
116
+ x: -3,
117
+ },
118
+ {
119
+ at: 0.51,
120
+ x: -3,
121
+ },
122
+ {
123
+ at: 0.63,
124
+ x: -2.16,
125
+ },
126
+ {
127
+ at: 0.74,
128
+ },
129
+ {
130
+ at: 1,
131
+ },
132
+ ],
133
+ },
134
+ {
135
+ duration: 1.1,
136
+ repeatAfter: 2.1,
137
+ loop: false,
138
+ frames: [
139
+ {
140
+ at: 0,
141
+ },
142
+ {
143
+ at: 0.26,
144
+ x: 0.6,
145
+ },
146
+ {
147
+ at: 0.53,
148
+ x: -0.15,
149
+ },
150
+ {
151
+ at: 1,
152
+ },
153
+ ],
154
+ },
155
+ ],
156
+ surface: true,
157
+ },
158
+ {
159
+ name: 'knob-2',
160
+ paths: [
161
+ 'M15.4 17H16.599999999999998Q17.2 17 17.2 17.6V20.4Q17.2 21 16.599999999999998 21H15.4Q14.8 21 14.8 20.4V17.6Q14.8 17 15.4 17Z',
162
+ ],
163
+ poses: [
164
+ {},
165
+ {
166
+ x: -4,
167
+ },
168
+ {
169
+ x: -1,
170
+ },
171
+ ],
172
+ pivot: [16, 19],
173
+ gestures: [
174
+ null,
175
+ {
176
+ duration: 3.4,
177
+ repeatAfter: 5.3,
178
+ loop: true,
179
+ frames: [
180
+ {
181
+ at: 0,
182
+ },
183
+ {
184
+ at: 0.44,
185
+ },
186
+ {
187
+ at: 0.56,
188
+ x: 2,
189
+ },
190
+ {
191
+ at: 0.69,
192
+ x: 2,
193
+ },
194
+ {
195
+ at: 0.81,
196
+ x: 1.44,
197
+ },
198
+ {
199
+ at: 0.9199999999999999,
200
+ },
201
+ {
202
+ at: 1,
203
+ },
204
+ ],
205
+ },
206
+ {
207
+ duration: 1.1,
208
+ repeatAfter: 2.1,
209
+ loop: false,
210
+ frames: [
211
+ {
212
+ at: 0,
213
+ },
214
+ {
215
+ at: 0.39,
216
+ x: -0.5,
217
+ },
218
+ {
219
+ at: 0.63,
220
+ x: 0.12,
221
+ },
222
+ {
223
+ at: 1,
224
+ },
225
+ ],
226
+ },
227
+ ],
228
+ surface: true,
229
+ },
230
+ ],
231
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type SparkleState } from "./sparkle-rig.js";
3
+ export { sparkleStates, type SparkleState } from "./sparkle-rig.js";
4
+ export type SparkleIconProps = StatefulIconProps<SparkleState>;
5
+ export declare const SparkleIcon: import("react").NamedExoticComponent<SparkleIconProps>;
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { memo, useRef, useCallback } from 'react';
4
+ import { motion, useTransform } from 'motion/react';
5
+ import { usePoseWeight, useBehaviorClock, useActionProgress } from "../../shared/use-icon-motion.js";
6
+ import { useMotionPreference } from "../../shared/use-motion-preference.js";
7
+ import { SPARKLE_BLINK_DURATION } from "../../shared/sparkle-motion.js";
8
+ import { SPARKLE_CORE, sampleSparkle } from "./sparkle-rig.js";
9
+ export { sparkleStates } from "./sparkle-rig.js";
10
+ const ORIGIN = { originX: '0px', originY: '0px', transformBox: 'view-box' };
11
+ export const SparkleIcon = memo(function SparkleIcon({ state = 'idle', size = 24, color = 'currentColor', accentColor = 'currentColor', strokeWidth = 1.65, speed = 1, alive = false, className, }) {
12
+ const reduced = useMotionPreference(), element = useRef(null);
13
+ const pace = Number.isFinite(speed) ? Math.min(4, Math.max(0.1, speed)) : 1;
14
+ const idle = usePoseWeight(state === 'idle', pace, reduced), shimmering = usePoseWeight(state === 'shimmering', pace, reduced), blink = usePoseWeight(state === 'blink', pace, reduced), dimmed = usePoseWeight(state === 'dimmed', pace, reduced);
15
+ const performs = alive && !reduced && (state === 'shimmering' || state === 'blink');
16
+ const life = usePoseWeight(performs, pace, reduced), time = useBehaviorClock(element, performs, pace, life);
17
+ const first = useRef(true);
18
+ const canRestart = useCallback(() => {
19
+ const invisible = first.current || blink.get() < 0.001;
20
+ first.current = false;
21
+ return invisible;
22
+ }, [blink]);
23
+ const entry = useActionProgress(state === 'blink', pace, reduced, SPARKLE_BLINK_DURATION, canRestart);
24
+ const rig = useTransform(() => sampleSparkle([idle.get(), shimmering.get(), blink.get(), dimmed.get()], time.get(), life.get(), entry.get()));
25
+ const core = useTransform(rig, (r) => r.core), coreOpacity = useTransform(rig, (r) => r.coreOpacity), tint = useTransform(rig, (r) => r.tint);
26
+ return (_jsx("svg", { ref: element, className: className, width: size, height: size, viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", focusable: "false", pointerEvents: "none", style: { display: 'block', overflow: 'visible' }, children: _jsx(motion.g, { "data-layer": "sparkle-core", transform: core, style: ORIGIN, opacity: coreOpacity, children: _jsx(motion.path, { "data-part": "shell", d: SPARKLE_CORE, stroke: color, strokeWidth: strokeWidth, fill: accentColor, fillOpacity: tint }) }) }));
27
+ });
@@ -0,0 +1,8 @@
1
+ export { SPARKLE_CORE } from "../../shared/sparkle-motion.js";
2
+ export declare const sparkleStates: readonly ["idle", "shimmering", "blink", "dimmed"];
3
+ export type SparkleState = (typeof sparkleStates)[number];
4
+ export declare function sampleSparkle(weights: readonly number[], time?: number, alive?: number, entry?: number): {
5
+ core: string;
6
+ coreOpacity: number;
7
+ tint: number;
8
+ };
@@ -0,0 +1,6 @@
1
+ import { sampleSparkleCore } from "../../shared/sparkle-motion.js";
2
+ export { SPARKLE_CORE } from "../../shared/sparkle-motion.js";
3
+ export const sparkleStates = ['idle', 'shimmering', 'blink', 'dimmed'];
4
+ export function sampleSparkle(weights, time = 0, alive = 0, entry = 1) {
5
+ return sampleSparkleCore(weights, time, alive, entry, 0.85);
6
+ }
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type SparklesState } from "./sparkles-rig.js";
3
+ export { sparklesStates, type SparklesState } from "./sparkles-rig.js";
4
+ export type SparklesIconProps = StatefulIconProps<SparklesState>;
5
+ export declare const SparklesIcon: import("react").NamedExoticComponent<SparklesIconProps>;
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { memo, useRef, useCallback } from 'react';
4
+ import { motion, useTransform } from 'motion/react';
5
+ import { usePoseWeight, useBehaviorClock, useActionProgress } from "../../shared/use-icon-motion.js";
6
+ import { useMotionPreference } from "../../shared/use-motion-preference.js";
7
+ import { SPARKLE_BLINK_DURATION } from "../../shared/sparkle-motion.js";
8
+ import { SPARKLES_CORE, SPARKLES_HIGH, SPARKLES_LOW, sampleSparkles, } from "./sparkles-rig.js";
9
+ export { sparklesStates } from "./sparkles-rig.js";
10
+ const ORIGIN = { originX: '0px', originY: '0px', transformBox: 'view-box' };
11
+ export const SparklesIcon = memo(function SparklesIcon({ state = 'idle', size = 24, color = 'currentColor', accentColor = 'currentColor', strokeWidth = 1.65, speed = 1, alive = false, className, }) {
12
+ const reduced = useMotionPreference(), element = useRef(null);
13
+ const pace = Number.isFinite(speed) ? Math.min(4, Math.max(0.1, speed)) : 1;
14
+ const idle = usePoseWeight(state === 'idle', pace, reduced), shimmering = usePoseWeight(state === 'shimmering', pace, reduced), blink = usePoseWeight(state === 'blink', pace, reduced), dimmed = usePoseWeight(state === 'dimmed', pace, reduced);
15
+ const performs = alive && !reduced && (state === 'shimmering' || state === 'blink');
16
+ const life = usePoseWeight(performs, pace, reduced), time = useBehaviorClock(element, performs, pace, life);
17
+ const first = useRef(true);
18
+ const canRestart = useCallback(() => {
19
+ const invisible = first.current || blink.get() < 0.001;
20
+ first.current = false;
21
+ return invisible;
22
+ }, [blink]);
23
+ const entry = useActionProgress(state === 'blink', pace, reduced, SPARKLE_BLINK_DURATION, canRestart);
24
+ const rig = useTransform(() => sampleSparkles([idle.get(), shimmering.get(), blink.get(), dimmed.get()], time.get(), life.get(), entry.get()));
25
+ const core = useTransform(rig, (r) => r.core), high = useTransform(rig, (r) => r.high), low = useTransform(rig, (r) => r.low), coreOpacity = useTransform(rig, (r) => r.coreOpacity), highOpacity = useTransform(rig, (r) => r.highOpacity), lowOpacity = useTransform(rig, (r) => r.lowOpacity), tint = useTransform(rig, (r) => r.tint);
26
+ return (_jsxs("svg", { ref: element, className: className, width: size, height: size, viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", focusable: "false", pointerEvents: "none", style: { display: 'block', overflow: 'visible' }, children: [_jsx(motion.g, { "data-layer": "sparkles-core", transform: core, style: ORIGIN, opacity: coreOpacity, children: _jsx(motion.path, { "data-part": "shell", d: SPARKLES_CORE, stroke: color, strokeWidth: strokeWidth, fill: accentColor, fillOpacity: tint }) }), _jsx(motion.path, { "data-layer": "sparkles-high", d: SPARKLES_HIGH, stroke: accentColor, strokeWidth: Math.min(strokeWidth * 0.6, 1.2), transform: high, style: ORIGIN, opacity: highOpacity }), _jsx(motion.path, { "data-layer": "sparkles-low", d: SPARKLES_LOW, stroke: accentColor, strokeWidth: Math.min(strokeWidth * 0.6, 1.2), transform: low, style: ORIGIN, opacity: lowOpacity })] }));
27
+ });
@@ -0,0 +1,14 @@
1
+ export { SPARKLE_CORE as SPARKLES_CORE } from "../../shared/sparkle-motion.js";
2
+ export declare const sparklesStates: readonly ["idle", "shimmering", "blink", "dimmed"];
3
+ export type SparklesState = (typeof sparklesStates)[number];
4
+ export declare function sampleSparkles(weights: readonly number[], time?: number, alive?: number, entry?: number): {
5
+ high: string;
6
+ low: string;
7
+ highOpacity: number;
8
+ lowOpacity: number;
9
+ core: string;
10
+ coreOpacity: number;
11
+ tint: number;
12
+ };
13
+ export declare const SPARKLES_HIGH = "M19 2.8Q19.4 4.6 21.2 5Q19.4 5.4 19 7.2Q18.6 5.4 16.8 5Q18.6 4.6 19 2.8Z";
14
+ export declare const SPARKLES_LOW = "M5 17.4Q5.3 18.7 6.6 19Q5.3 19.3 5 20.6Q4.7 19.3 3.4 19Q4.7 18.7 5 17.4Z";
@@ -0,0 +1,24 @@
1
+ import { behaviorBeat } from "../../shared/behavior-curves.js";
2
+ import { sampleSparkleCore, sampleTwinkle } from "../../shared/sparkle-motion.js";
3
+ export { SPARKLE_CORE as SPARKLES_CORE } from "../../shared/sparkle-motion.js";
4
+ export const sparklesStates = ['idle', 'shimmering', 'blink', 'dimmed'];
5
+ export function sampleSparkles(weights, time = 0, alive = 0, entry = 1) {
6
+ const clamp = (n) => Math.max(0, Math.min(1, n));
7
+ const [, shimmering, blink, dimmed] = weights.map(clamp), life = clamp(alive);
8
+ const t = time % 6.4, e = clamp(entry);
9
+ // Separate authored schedules; never blink the complete glyph in unison.
10
+ const highBlink = sampleTwinkle(time, life, e, 0.44, [1.2, 4.2]), lowBlink = sampleTwinkle(time, life, e, 0.88, [2.2, 5.2]);
11
+ const highBeat = Math.max(behaviorBeat(e, 0.15, 0.2, 0.04, 0.48), life * behaviorBeat(t, 0.85, 0.28, 0.08, 0.65));
12
+ const lowBeat = Math.max(behaviorBeat(e, 0.32, 0.2, 0.03, 0.43), life * behaviorBeat(t, 1.4, 0.25, 0.08, 0.65));
13
+ const highScale = 1 - dimmed * 0.28 + shimmering * highBeat * 0.12;
14
+ const lowScale = 1 - dimmed * 0.28 + shimmering * lowBeat * 0.16;
15
+ return {
16
+ ...sampleSparkleCore(weights, time, life, e, 0.67),
17
+ high: `translate(19px, 5px) rotate(${-blink * highBlink.tilt}deg) scale(${highScale}) translate(-19px, -5px)`,
18
+ low: `translate(5px, 19px) rotate(${blink * lowBlink.tilt * 0.75}deg) scale(${lowScale}) translate(-5px, -19px)`,
19
+ highOpacity: clamp(1 - dimmed * 0.55 - shimmering * life * (1 - highBeat) * 0.45 - blink * highBlink.dark * 0.9),
20
+ lowOpacity: clamp(1 - dimmed * 0.55 - shimmering * life * (1 - lowBeat) * 0.45 - blink * lowBlink.dark * 0.9),
21
+ };
22
+ }
23
+ export const SPARKLES_HIGH = 'M19 2.8Q19.4 4.6 21.2 5Q19.4 5.4 19 7.2Q18.6 5.4 16.8 5Q18.6 4.6 19 2.8Z';
24
+ export const SPARKLES_LOW = 'M5 17.4Q5.3 18.7 6.6 19Q5.3 19.3 5 20.6Q4.7 19.3 3.4 19Q4.7 18.7 5 17.4Z';
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type StarState } from "./star-rig.js";
3
+ export { starStates, type StarState } from "./star-rig.js";
4
+ export type StarIconProps = StatefulIconProps<StarState>;
5
+ export declare const StarIcon: import("react").NamedExoticComponent<StarIconProps>;
@@ -0,0 +1,38 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { memo, useRef, useCallback } from 'react';
4
+ import { motion, useTransform } from 'motion/react';
5
+ import { usePoseWeight, useBehaviorClock, useActionProgress } from "../../shared/use-icon-motion.js";
6
+ import { useMotionPreference } from "../../shared/use-motion-preference.js";
7
+ import { STAR_SHELL, STAR_MOTE, STAR_ACTION_DURATION, sampleStar, } from "./star-rig.js";
8
+ export { starStates } from "./star-rig.js";
9
+ const ORIGIN = { originX: '0px', originY: '0px', transformBox: 'view-box' };
10
+ const MOTE_INDICES = [0, 1, 2, 3, 4, 5];
11
+ function StarMote({ rig, index, color, strokeWidth, }) {
12
+ const transform = useTransform(rig, (r) => r.motes[index].transform), opacity = useTransform(rig, (r) => r.motes[index].opacity);
13
+ return (_jsx(motion.path, { "data-layer": `star-mote-${index}`, d: STAR_MOTE, transform: transform, opacity: opacity, stroke: color, fill: color, strokeWidth: Math.min(strokeWidth * 0.3, 0.6), style: ORIGIN }));
14
+ }
15
+ export const StarIcon = memo(function StarIcon({ state = 'idle', size = 24, color = 'currentColor', accentColor = 'currentColor', strokeWidth = 1.65, speed = 1, alive = false, className, }) {
16
+ const reduced = useMotionPreference(), element = useRef(null);
17
+ const pace = Number.isFinite(speed) ? Math.min(4, Math.max(0.1, speed)) : 1;
18
+ const idle = usePoseWeight(state === 'idle', pace, reduced), shooting = usePoseWeight(state === 'shooting', pace, reduced), starred = usePoseWeight(state === 'starred', pace, reduced), loading = usePoseWeight(state === 'loading', pace, reduced);
19
+ const performs = alive && !reduced && state !== 'idle';
20
+ const life = usePoseWeight(performs, pace, reduced), time = useBehaviorClock(element, performs, pace, life);
21
+ const first = useRef(true);
22
+ const canRestart = useCallback(() => {
23
+ const invisible = first.current || starred.get() < 0.001;
24
+ first.current = false;
25
+ return invisible;
26
+ }, [starred]);
27
+ const firstFlight = useRef(true);
28
+ const canRestartFlight = useCallback(() => {
29
+ const invisible = firstFlight.current || shooting.get() < 0.001;
30
+ firstFlight.current = false;
31
+ return invisible;
32
+ }, [shooting]);
33
+ const entry = useActionProgress(state === 'starred', pace, reduced, STAR_ACTION_DURATION, canRestart);
34
+ const flightEntry = useActionProgress(state === 'shooting', pace, reduced, STAR_ACTION_DURATION, canRestartFlight);
35
+ const rig = useTransform(() => sampleStar([idle.get(), shooting.get(), starred.get(), loading.get()], time.get(), life.get(), entry.get(), flightEntry.get()));
36
+ const body = useTransform(rig, (r) => r.body), tint = useTransform(rig, (r) => r.tint), trail = useTransform(rig, (r) => r.trail), trailOpacity = useTransform(rig, (r) => r.trailOpacity), trailDash = useTransform(rig, (r) => r.trailDash), trailOffset = useTransform(rig, (r) => r.trailOffset), progress = useTransform(rig, (r) => r.progress), progressOffset = useTransform(rig, (r) => r.progressOffset);
37
+ return (_jsxs("svg", { ref: element, className: className, width: size, height: size, viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", focusable: "false", pointerEvents: "none", style: { display: 'block', overflow: 'visible' }, children: [_jsx(motion.path, { "data-layer": "star-trail", d: trail, opacity: trailOpacity, strokeDasharray: trailDash, strokeDashoffset: trailOffset, stroke: accentColor, strokeWidth: Math.min(strokeWidth * 0.65, 1.2) }), _jsxs(motion.g, { "data-layer": "star-body", transform: body, style: ORIGIN, children: [_jsx(motion.path, { "data-part": "shell", d: STAR_SHELL, stroke: color, strokeWidth: strokeWidth, fill: accentColor, fillOpacity: tint }), _jsx(motion.circle, { "data-layer": "star-progress", cx: "12", cy: "12", r: "2.3", stroke: accentColor, strokeWidth: Math.min(strokeWidth * 0.65, 1.2), strokeDasharray: "3.6 10.85", strokeDashoffset: progressOffset, opacity: progress })] }), MOTE_INDICES.map((index) => (_jsx(StarMote, { rig: rig, index: index, color: accentColor, strokeWidth: strokeWidth }, index)))] }));
38
+ });
@@ -0,0 +1,20 @@
1
+ export declare const starStates: readonly ["idle", "shooting", "starred", "loading"];
2
+ export type StarState = (typeof starStates)[number];
3
+ export declare const STAR_ACTION_DURATION = 1.35;
4
+ export declare function sampleStar(weights: readonly number[], time?: number, alive?: number, entry?: number, flightEntry?: number): {
5
+ body: string;
6
+ tint: number;
7
+ motes: {
8
+ transform: string;
9
+ opacity: number;
10
+ }[];
11
+ trail: string;
12
+ trailOpacity: number;
13
+ trailDash: string;
14
+ trailOffset: number;
15
+ progress: number;
16
+ progressOffset: number;
17
+ };
18
+ export declare const STAR_MOTE = "M0 -1.2L.36 -.38L1.25 -.3L.63 .33L.8 1.2L0 .76L-.8 1.2L-.63 .33L-1.25 -.3L-.36 -.38Z";
19
+ /** Rounded Lucide star contour, preserved as one rigid silhouette. */
20
+ export declare const STAR_SHELL = "M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z";