weasel-icons 0.2.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 (303) hide show
  1. package/README.md +81 -2
  2. package/THIRD_PARTY_NOTICES.md +6 -4
  3. package/dist/icons/arrow-down/arrow-down-icon.d.ts +5 -0
  4. package/dist/icons/arrow-down/arrow-down-icon.js +9 -0
  5. package/dist/icons/arrow-down/arrow-down-rig.d.ts +43 -0
  6. package/dist/icons/arrow-down/arrow-down-rig.js +64 -0
  7. package/dist/icons/arrow-left/arrow-left-icon.d.ts +5 -0
  8. package/dist/icons/arrow-left/arrow-left-icon.js +9 -0
  9. package/dist/icons/arrow-left/arrow-left-rig.d.ts +43 -0
  10. package/dist/icons/arrow-left/arrow-left-rig.js +64 -0
  11. package/dist/icons/arrow-right/arrow-right-icon.d.ts +5 -0
  12. package/dist/icons/arrow-right/arrow-right-icon.js +9 -0
  13. package/dist/icons/arrow-right/arrow-right-rig.d.ts +43 -0
  14. package/dist/icons/arrow-right/arrow-right-rig.js +64 -0
  15. package/dist/icons/arrow-up/arrow-up-icon.d.ts +5 -0
  16. package/dist/icons/arrow-up/arrow-up-icon.js +9 -0
  17. package/dist/icons/arrow-up/arrow-up-rig.d.ts +43 -0
  18. package/dist/icons/arrow-up/arrow-up-rig.js +64 -0
  19. package/dist/icons/book-open/book-open-icon.d.ts +5 -0
  20. package/dist/icons/book-open/book-open-icon.js +9 -0
  21. package/dist/icons/book-open/book-open-rig.d.ts +65 -0
  22. package/dist/icons/book-open/book-open-rig.js +95 -0
  23. package/dist/icons/bookmark/bookmark-icon.d.ts +5 -0
  24. package/dist/icons/bookmark/bookmark-icon.js +9 -0
  25. package/dist/icons/bookmark/bookmark-rig.d.ts +43 -0
  26. package/dist/icons/bookmark/bookmark-rig.js +65 -0
  27. package/dist/icons/calendar/calendar-icon.d.ts +5 -0
  28. package/dist/icons/calendar/calendar-icon.js +9 -0
  29. package/dist/icons/calendar/calendar-rig.d.ts +67 -0
  30. package/dist/icons/calendar/calendar-rig.js +95 -0
  31. package/dist/icons/camera/camera-icon.d.ts +5 -0
  32. package/dist/icons/camera/camera-icon.js +9 -0
  33. package/dist/icons/camera/camera-rig.d.ts +58 -0
  34. package/dist/icons/camera/camera-rig.js +82 -0
  35. package/dist/icons/chevron-down/chevron-down-icon.d.ts +5 -0
  36. package/dist/icons/chevron-down/chevron-down-icon.js +9 -0
  37. package/dist/icons/chevron-down/chevron-down-rig.d.ts +48 -0
  38. package/dist/icons/chevron-down/chevron-down-rig.js +30 -0
  39. package/dist/icons/chevron-left/chevron-left-icon.d.ts +5 -0
  40. package/dist/icons/chevron-left/chevron-left-icon.js +9 -0
  41. package/dist/icons/chevron-left/chevron-left-rig.d.ts +34 -0
  42. package/dist/icons/chevron-left/chevron-left-rig.js +49 -0
  43. package/dist/icons/chevron-right/chevron-right-icon.d.ts +5 -0
  44. package/dist/icons/chevron-right/chevron-right-icon.js +9 -0
  45. package/dist/icons/chevron-right/chevron-right-rig.d.ts +34 -0
  46. package/dist/icons/chevron-right/chevron-right-rig.js +49 -0
  47. package/dist/icons/chevron-up/chevron-up-icon.d.ts +5 -0
  48. package/dist/icons/chevron-up/chevron-up-icon.js +9 -0
  49. package/dist/icons/chevron-up/chevron-up-rig.d.ts +48 -0
  50. package/dist/icons/chevron-up/chevron-up-rig.js +30 -0
  51. package/dist/icons/circle-help/circle-help-icon.d.ts +5 -0
  52. package/dist/icons/circle-help/circle-help-icon.js +9 -0
  53. package/dist/icons/circle-help/circle-help-rig.d.ts +45 -0
  54. package/dist/icons/circle-help/circle-help-rig.js +70 -0
  55. package/dist/icons/clipboard/clipboard-icon.d.ts +5 -0
  56. package/dist/icons/clipboard/clipboard-icon.js +9 -0
  57. package/dist/icons/clipboard/clipboard-rig.d.ts +69 -0
  58. package/dist/icons/clipboard/clipboard-rig.js +99 -0
  59. package/dist/icons/clock/clock-icon.d.ts +5 -0
  60. package/dist/icons/clock/clock-icon.js +9 -0
  61. package/dist/icons/clock/clock-rig.d.ts +40 -0
  62. package/dist/icons/clock/clock-rig.js +53 -0
  63. package/dist/icons/cloud/cloud-icon.d.ts +5 -0
  64. package/dist/icons/cloud/cloud-icon.js +9 -0
  65. package/dist/icons/cloud/cloud-rig.d.ts +74 -0
  66. package/dist/icons/cloud/cloud-rig.js +103 -0
  67. package/dist/icons/code/code-icon.d.ts +5 -0
  68. package/dist/icons/code/code-icon.js +9 -0
  69. package/dist/icons/code/code-rig.d.ts +104 -0
  70. package/dist/icons/code/code-rig.js +148 -0
  71. package/dist/icons/credit-card/credit-card-icon.d.ts +5 -0
  72. package/dist/icons/credit-card/credit-card-icon.js +9 -0
  73. package/dist/icons/credit-card/credit-card-rig.d.ts +88 -0
  74. package/dist/icons/credit-card/credit-card-rig.js +122 -0
  75. package/dist/icons/database/database-icon.d.ts +5 -0
  76. package/dist/icons/database/database-icon.js +9 -0
  77. package/dist/icons/database/database-rig.d.ts +61 -0
  78. package/dist/icons/database/database-rig.js +86 -0
  79. package/dist/icons/external-link/external-link-icon.d.ts +5 -0
  80. package/dist/icons/external-link/external-link-icon.js +9 -0
  81. package/dist/icons/external-link/external-link-rig.d.ts +45 -0
  82. package/dist/icons/external-link/external-link-rig.js +42 -0
  83. package/dist/icons/file/file-icon.d.ts +5 -0
  84. package/dist/icons/file/file-icon.js +9 -0
  85. package/dist/icons/file/file-rig.d.ts +53 -0
  86. package/dist/icons/file/file-rig.js +80 -0
  87. package/dist/icons/file-text/file-text-icon.d.ts +5 -0
  88. package/dist/icons/file-text/file-text-icon.js +9 -0
  89. package/dist/icons/file-text/file-text-rig.d.ts +93 -0
  90. package/dist/icons/file-text/file-text-rig.js +138 -0
  91. package/dist/icons/filter/filter-icon.d.ts +5 -0
  92. package/dist/icons/filter/filter-icon.js +9 -0
  93. package/dist/icons/filter/filter-rig.d.ts +72 -0
  94. package/dist/icons/filter/filter-rig.js +99 -0
  95. package/dist/icons/folder/folder-icon.d.ts +5 -0
  96. package/dist/icons/folder/folder-icon.js +9 -0
  97. package/dist/icons/folder/folder-rig.d.ts +20 -0
  98. package/dist/icons/folder/folder-rig.js +28 -0
  99. package/dist/icons/globe/globe-icon.d.ts +5 -0
  100. package/dist/icons/globe/globe-icon.js +9 -0
  101. package/dist/icons/globe/globe-rig.d.ts +40 -0
  102. package/dist/icons/globe/globe-rig.js +57 -0
  103. package/dist/icons/home/home-icon.d.ts +5 -0
  104. package/dist/icons/home/home-icon.js +9 -0
  105. package/dist/icons/home/home-rig.d.ts +49 -0
  106. package/dist/icons/home/home-rig.js +76 -0
  107. package/dist/icons/image/image-icon.d.ts +5 -0
  108. package/dist/icons/image/image-icon.js +9 -0
  109. package/dist/icons/image/image-rig.d.ts +70 -0
  110. package/dist/icons/image/image-rig.js +99 -0
  111. package/dist/icons/info/info-icon.d.ts +5 -0
  112. package/dist/icons/info/info-icon.js +9 -0
  113. package/dist/icons/info/info-rig.d.ts +48 -0
  114. package/dist/icons/info/info-rig.js +69 -0
  115. package/dist/icons/key/key-icon.d.ts +5 -0
  116. package/dist/icons/key/key-icon.js +9 -0
  117. package/dist/icons/key/key-rig.d.ts +50 -0
  118. package/dist/icons/key/key-rig.js +76 -0
  119. package/dist/icons/layers/layers-icon.d.ts +5 -0
  120. package/dist/icons/layers/layers-icon.js +9 -0
  121. package/dist/icons/layers/layers-rig.d.ts +147 -0
  122. package/dist/icons/layers/layers-rig.js +211 -0
  123. package/dist/icons/layout-dashboard/layout-dashboard-icon.d.ts +5 -0
  124. package/dist/icons/layout-dashboard/layout-dashboard-icon.js +9 -0
  125. package/dist/icons/layout-dashboard/layout-dashboard-rig.d.ts +194 -0
  126. package/dist/icons/layout-dashboard/layout-dashboard-rig.js +284 -0
  127. package/dist/icons/layout-grid/layout-grid-icon.d.ts +5 -0
  128. package/dist/icons/layout-grid/layout-grid-icon.js +9 -0
  129. package/dist/icons/layout-grid/layout-grid-rig.d.ts +103 -0
  130. package/dist/icons/layout-grid/layout-grid-rig.js +167 -0
  131. package/dist/icons/list/list-icon.d.ts +5 -0
  132. package/dist/icons/list/list-icon.js +9 -0
  133. package/dist/icons/list/list-rig.d.ts +165 -0
  134. package/dist/icons/list/list-rig.js +231 -0
  135. package/dist/icons/lock/lock-icon.d.ts +5 -0
  136. package/dist/icons/lock/lock-icon.js +9 -0
  137. package/dist/icons/lock/lock-rig.d.ts +42 -0
  138. package/dist/icons/lock/lock-rig.js +58 -0
  139. package/dist/icons/log-in/log-in-icon.d.ts +5 -0
  140. package/dist/icons/log-in/log-in-icon.js +9 -0
  141. package/dist/icons/log-in/log-in-rig.d.ts +39 -0
  142. package/dist/icons/log-in/log-in-rig.js +55 -0
  143. package/dist/icons/log-out/log-out-icon.d.ts +5 -0
  144. package/dist/icons/log-out/log-out-icon.js +9 -0
  145. package/dist/icons/log-out/log-out-rig.d.ts +39 -0
  146. package/dist/icons/log-out/log-out-rig.js +55 -0
  147. package/dist/icons/mail/mail-icon.d.ts +5 -0
  148. package/dist/icons/mail/mail-icon.js +9 -0
  149. package/dist/icons/mail/mail-rig.d.ts +20 -0
  150. package/dist/icons/mail/mail-rig.js +28 -0
  151. package/dist/icons/map-pin/map-pin-icon.d.ts +5 -0
  152. package/dist/icons/map-pin/map-pin-icon.js +9 -0
  153. package/dist/icons/map-pin/map-pin-rig.d.ts +118 -0
  154. package/dist/icons/map-pin/map-pin-rig.js +164 -0
  155. package/dist/icons/maximize/maximize-icon.d.ts +5 -0
  156. package/dist/icons/maximize/maximize-icon.js +9 -0
  157. package/dist/icons/maximize/maximize-rig.d.ts +190 -0
  158. package/dist/icons/maximize/maximize-rig.js +268 -0
  159. package/dist/icons/menu/menu-icon.d.ts +5 -0
  160. package/dist/icons/menu/menu-icon.js +9 -0
  161. package/dist/icons/menu/menu-rig.d.ts +41 -0
  162. package/dist/icons/menu/menu-rig.js +58 -0
  163. package/dist/icons/message-circle/message-circle-icon.d.ts +5 -0
  164. package/dist/icons/message-circle/message-circle-icon.js +9 -0
  165. package/dist/icons/message-circle/message-circle-rig.d.ts +99 -0
  166. package/dist/icons/message-circle/message-circle-rig.js +143 -0
  167. package/dist/icons/mic/mic-icon.d.ts +5 -0
  168. package/dist/icons/mic/mic-icon.js +9 -0
  169. package/dist/icons/mic/mic-rig.d.ts +67 -0
  170. package/dist/icons/mic/mic-rig.js +96 -0
  171. package/dist/icons/minimize/minimize-icon.d.ts +5 -0
  172. package/dist/icons/minimize/minimize-icon.js +9 -0
  173. package/dist/icons/minimize/minimize-rig.d.ts +190 -0
  174. package/dist/icons/minimize/minimize-rig.js +268 -0
  175. package/dist/icons/minus/minus-icon.d.ts +5 -0
  176. package/dist/icons/minus/minus-icon.js +9 -0
  177. package/dist/icons/minus/minus-rig.d.ts +31 -0
  178. package/dist/icons/minus/minus-rig.js +47 -0
  179. package/dist/icons/moon/moon-icon.d.ts +5 -0
  180. package/dist/icons/moon/moon-icon.js +9 -0
  181. package/dist/icons/moon/moon-rig.d.ts +62 -0
  182. package/dist/icons/moon/moon-rig.js +87 -0
  183. package/dist/icons/more-horizontal/more-horizontal-icon.d.ts +5 -0
  184. package/dist/icons/more-horizontal/more-horizontal-icon.js +9 -0
  185. package/dist/icons/more-horizontal/more-horizontal-rig.d.ts +91 -0
  186. package/dist/icons/more-horizontal/more-horizontal-rig.js +141 -0
  187. package/dist/icons/more-vertical/more-vertical-icon.d.ts +5 -0
  188. package/dist/icons/more-vertical/more-vertical-icon.js +9 -0
  189. package/dist/icons/more-vertical/more-vertical-rig.d.ts +91 -0
  190. package/dist/icons/more-vertical/more-vertical-rig.js +141 -0
  191. package/dist/icons/music/music-icon.d.ts +5 -0
  192. package/dist/icons/music/music-icon.js +9 -0
  193. package/dist/icons/music/music-rig.d.ts +66 -0
  194. package/dist/icons/music/music-rig.js +95 -0
  195. package/dist/icons/package/package-icon.d.ts +5 -0
  196. package/dist/icons/package/package-icon.js +9 -0
  197. package/dist/icons/package/package-rig.d.ts +40 -0
  198. package/dist/icons/package/package-rig.js +60 -0
  199. package/dist/icons/pause/pause-icon.d.ts +5 -0
  200. package/dist/icons/pause/pause-icon.js +9 -0
  201. package/dist/icons/pause/pause-rig.d.ts +104 -0
  202. package/dist/icons/pause/pause-rig.js +147 -0
  203. package/dist/icons/pencil/pencil-icon.d.ts +5 -0
  204. package/dist/icons/pencil/pencil-icon.js +9 -0
  205. package/dist/icons/pencil/pencil-rig.d.ts +48 -0
  206. package/dist/icons/pencil/pencil-rig.js +68 -0
  207. package/dist/icons/phone/phone-icon.d.ts +5 -0
  208. package/dist/icons/phone/phone-icon.js +9 -0
  209. package/dist/icons/phone/phone-rig.d.ts +41 -0
  210. package/dist/icons/phone/phone-rig.js +60 -0
  211. package/dist/icons/play/play-icon.d.ts +5 -0
  212. package/dist/icons/play/play-icon.js +9 -0
  213. package/dist/icons/play/play-rig.d.ts +58 -0
  214. package/dist/icons/play/play-rig.js +80 -0
  215. package/dist/icons/plus/plus-icon.d.ts +5 -0
  216. package/dist/icons/plus/plus-icon.js +9 -0
  217. package/dist/icons/plus/plus-rig.d.ts +94 -0
  218. package/dist/icons/plus/plus-rig.js +137 -0
  219. package/dist/icons/replace/replace-icon.js +9 -8
  220. package/dist/icons/replace/replace-rig.d.ts +7 -1
  221. package/dist/icons/replace/replace-rig.js +35 -17
  222. package/dist/icons/save/save-icon.d.ts +5 -0
  223. package/dist/icons/save/save-icon.js +9 -0
  224. package/dist/icons/save/save-rig.d.ts +43 -0
  225. package/dist/icons/save/save-rig.js +63 -0
  226. package/dist/icons/send/send-icon.d.ts +5 -0
  227. package/dist/icons/send/send-icon.js +9 -0
  228. package/dist/icons/send/send-rig.d.ts +43 -0
  229. package/dist/icons/send/send-rig.js +61 -0
  230. package/dist/icons/settings/settings-icon.d.ts +5 -0
  231. package/dist/icons/settings/settings-icon.js +9 -0
  232. package/dist/icons/settings/settings-rig.d.ts +41 -0
  233. package/dist/icons/settings/settings-rig.js +64 -0
  234. package/dist/icons/share/share-icon.d.ts +5 -0
  235. package/dist/icons/share/share-icon.js +9 -0
  236. package/dist/icons/share/share-rig.d.ts +80 -0
  237. package/dist/icons/share/share-rig.js +114 -0
  238. package/dist/icons/shopping-bag/shopping-bag-icon.d.ts +5 -0
  239. package/dist/icons/shopping-bag/shopping-bag-icon.js +9 -0
  240. package/dist/icons/shopping-bag/shopping-bag-rig.d.ts +92 -0
  241. package/dist/icons/shopping-bag/shopping-bag-rig.js +139 -0
  242. package/dist/icons/shopping-cart/shopping-cart-icon.d.ts +5 -0
  243. package/dist/icons/shopping-cart/shopping-cart-icon.js +9 -0
  244. package/dist/icons/shopping-cart/shopping-cart-rig.d.ts +72 -0
  245. package/dist/icons/shopping-cart/shopping-cart-rig.js +111 -0
  246. package/dist/icons/sliders/sliders-icon.d.ts +5 -0
  247. package/dist/icons/sliders/sliders-icon.js +9 -0
  248. package/dist/icons/sliders/sliders-rig.d.ts +156 -0
  249. package/dist/icons/sliders/sliders-rig.js +231 -0
  250. package/dist/icons/sun/sun-icon.d.ts +5 -0
  251. package/dist/icons/sun/sun-icon.js +9 -0
  252. package/dist/icons/sun/sun-rig.d.ts +290 -0
  253. package/dist/icons/sun/sun-rig.js +401 -0
  254. package/dist/icons/terminal/terminal-icon.d.ts +5 -0
  255. package/dist/icons/terminal/terminal-icon.js +9 -0
  256. package/dist/icons/terminal/terminal-rig.d.ts +71 -0
  257. package/dist/icons/terminal/terminal-rig.js +102 -0
  258. package/dist/icons/timer/timer-icon.d.ts +5 -0
  259. package/dist/icons/timer/timer-icon.js +9 -0
  260. package/dist/icons/timer/timer-rig.d.ts +50 -0
  261. package/dist/icons/timer/timer-rig.js +72 -0
  262. package/dist/icons/truck/truck-icon.d.ts +5 -0
  263. package/dist/icons/truck/truck-icon.js +9 -0
  264. package/dist/icons/truck/truck-rig.d.ts +184 -0
  265. package/dist/icons/truck/truck-rig.js +272 -0
  266. package/dist/icons/upload/upload-icon.d.ts +5 -0
  267. package/dist/icons/upload/upload-icon.js +9 -0
  268. package/dist/icons/upload/upload-rig.d.ts +99 -0
  269. package/dist/icons/upload/upload-rig.js +124 -0
  270. package/dist/icons/user/user-icon.d.ts +5 -0
  271. package/dist/icons/user/user-icon.js +9 -0
  272. package/dist/icons/user/user-rig.d.ts +45 -0
  273. package/dist/icons/user/user-rig.js +66 -0
  274. package/dist/icons/users/users-icon.d.ts +5 -0
  275. package/dist/icons/users/users-icon.js +9 -0
  276. package/dist/icons/users/users-rig.d.ts +76 -0
  277. package/dist/icons/users/users-rig.js +113 -0
  278. package/dist/icons/video/video-icon.d.ts +5 -0
  279. package/dist/icons/video/video-icon.js +9 -0
  280. package/dist/icons/video/video-rig.d.ts +62 -0
  281. package/dist/icons/video/video-rig.js +84 -0
  282. package/dist/icons/volume/volume-icon.d.ts +5 -0
  283. package/dist/icons/volume/volume-icon.js +9 -0
  284. package/dist/icons/volume/volume-rig.d.ts +82 -0
  285. package/dist/icons/volume/volume-rig.js +120 -0
  286. package/dist/icons/wallet/wallet-icon.d.ts +5 -0
  287. package/dist/icons/wallet/wallet-icon.js +9 -0
  288. package/dist/icons/wallet/wallet-rig.d.ts +63 -0
  289. package/dist/icons/wallet/wallet-rig.js +90 -0
  290. package/dist/icons/wifi/wifi-icon.d.ts +5 -0
  291. package/dist/icons/wifi/wifi-icon.js +9 -0
  292. package/dist/icons/wifi/wifi-rig.d.ts +189 -0
  293. package/dist/icons/wifi/wifi-rig.js +260 -0
  294. package/dist/index.d.ts +72 -0
  295. package/dist/index.js +72 -0
  296. package/dist/shared/articulated-icon.d.ts +7 -0
  297. package/dist/shared/articulated-icon.js +49 -0
  298. package/dist/shared/articulation.d.ts +62 -0
  299. package/dist/shared/articulation.js +85 -0
  300. package/dist/shared/icon-colors.d.ts +72 -0
  301. package/dist/shared/use-icon-motion.d.ts +1 -1
  302. package/dist/shared/use-icon-motion.js +4 -3
  303. package/package.json +361 -1
@@ -0,0 +1,268 @@
1
+ export const maximizeStates = ['idle', 'expanding', 'expanded'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Enter fullscreen: corners draw inward to load, then diagonally opposite corners catch the expanded frame in two beats. A fullscreen frame does not pulse.
4
+ export const maximizeArt = {
5
+ name: 'maximize',
6
+ parts: [
7
+ {
8
+ name: 'corner-0',
9
+ paths: ['M8 3H5a2 2 0 0 0-2 2v3'],
10
+ poses: [
11
+ {},
12
+ {
13
+ x: 0.9,
14
+ y: 0.9,
15
+ },
16
+ {
17
+ x: -1.2,
18
+ y: -1.2,
19
+ },
20
+ ],
21
+ pivot: [12, 12],
22
+ gestures: [
23
+ null,
24
+ {
25
+ duration: 1.1,
26
+ repeatAfter: 2.1,
27
+ loop: false,
28
+ frames: [
29
+ {
30
+ at: 0,
31
+ },
32
+ {
33
+ at: 0.18,
34
+ x: 0.55,
35
+ y: 0.55,
36
+ },
37
+ {
38
+ at: 0.5,
39
+ x: -0.2,
40
+ y: -0.2,
41
+ },
42
+ {
43
+ at: 1,
44
+ },
45
+ ],
46
+ },
47
+ {
48
+ duration: 1.15,
49
+ repeatAfter: 2.15,
50
+ loop: false,
51
+ frames: [
52
+ {
53
+ at: 0,
54
+ },
55
+ {
56
+ at: 0.14,
57
+ x: 0.65,
58
+ y: 0.65,
59
+ },
60
+ {
61
+ at: 0.5,
62
+ x: -0.14,
63
+ y: -0.14,
64
+ },
65
+ {
66
+ at: 1,
67
+ },
68
+ ],
69
+ },
70
+ ],
71
+ },
72
+ {
73
+ name: 'corner-1',
74
+ paths: ['M21 8V5a2 2 0 0 0-2-2h-3'],
75
+ poses: [
76
+ {},
77
+ {
78
+ x: -0.9,
79
+ y: 0.9,
80
+ },
81
+ {
82
+ x: 1.2,
83
+ y: -1.2,
84
+ },
85
+ ],
86
+ pivot: [12, 12],
87
+ gestures: [
88
+ null,
89
+ {
90
+ duration: 1.1,
91
+ repeatAfter: 2.1,
92
+ loop: false,
93
+ frames: [
94
+ {
95
+ at: 0,
96
+ },
97
+ {
98
+ at: 0.18,
99
+ x: -0.55,
100
+ y: 0.55,
101
+ },
102
+ {
103
+ at: 0.5,
104
+ x: 0.2,
105
+ y: -0.2,
106
+ },
107
+ {
108
+ at: 1,
109
+ },
110
+ ],
111
+ },
112
+ {
113
+ duration: 1.15,
114
+ repeatAfter: 2.15,
115
+ loop: false,
116
+ frames: [
117
+ {
118
+ at: 0,
119
+ },
120
+ {
121
+ at: 0.29000000000000004,
122
+ x: -0.65,
123
+ y: 0.65,
124
+ },
125
+ {
126
+ at: 0.62,
127
+ x: 0.14,
128
+ y: -0.14,
129
+ },
130
+ {
131
+ at: 1,
132
+ },
133
+ ],
134
+ },
135
+ ],
136
+ },
137
+ {
138
+ name: 'corner-2',
139
+ paths: ['M3 16v3a2 2 0 0 0 2 2h3'],
140
+ poses: [
141
+ {},
142
+ {
143
+ x: 0.9,
144
+ y: -0.9,
145
+ },
146
+ {
147
+ x: -1.2,
148
+ y: 1.2,
149
+ },
150
+ ],
151
+ pivot: [12, 12],
152
+ gestures: [
153
+ null,
154
+ {
155
+ duration: 1.1,
156
+ repeatAfter: 2.1,
157
+ loop: false,
158
+ frames: [
159
+ {
160
+ at: 0,
161
+ },
162
+ {
163
+ at: 0.18,
164
+ x: 0.55,
165
+ y: -0.55,
166
+ },
167
+ {
168
+ at: 0.5,
169
+ x: -0.2,
170
+ y: 0.2,
171
+ },
172
+ {
173
+ at: 1,
174
+ },
175
+ ],
176
+ },
177
+ {
178
+ duration: 1.15,
179
+ repeatAfter: 2.15,
180
+ loop: false,
181
+ frames: [
182
+ {
183
+ at: 0,
184
+ },
185
+ {
186
+ at: 0.29000000000000004,
187
+ x: 0.65,
188
+ y: -0.65,
189
+ },
190
+ {
191
+ at: 0.62,
192
+ x: -0.14,
193
+ y: 0.14,
194
+ },
195
+ {
196
+ at: 1,
197
+ },
198
+ ],
199
+ },
200
+ ],
201
+ },
202
+ {
203
+ name: 'corner-3',
204
+ paths: ['M16 21h3a2 2 0 0 0 2-2v-3'],
205
+ poses: [
206
+ {},
207
+ {
208
+ x: -0.9,
209
+ y: -0.9,
210
+ },
211
+ {
212
+ x: 1.2,
213
+ y: 1.2,
214
+ },
215
+ ],
216
+ pivot: [12, 12],
217
+ gestures: [
218
+ null,
219
+ {
220
+ duration: 1.1,
221
+ repeatAfter: 2.1,
222
+ loop: false,
223
+ frames: [
224
+ {
225
+ at: 0,
226
+ },
227
+ {
228
+ at: 0.18,
229
+ x: -0.55,
230
+ y: -0.55,
231
+ },
232
+ {
233
+ at: 0.5,
234
+ x: 0.2,
235
+ y: 0.2,
236
+ },
237
+ {
238
+ at: 1,
239
+ },
240
+ ],
241
+ },
242
+ {
243
+ duration: 1.15,
244
+ repeatAfter: 2.15,
245
+ loop: false,
246
+ frames: [
247
+ {
248
+ at: 0,
249
+ },
250
+ {
251
+ at: 0.14,
252
+ x: -0.65,
253
+ y: -0.65,
254
+ },
255
+ {
256
+ at: 0.5,
257
+ x: 0.14,
258
+ y: 0.14,
259
+ },
260
+ {
261
+ at: 1,
262
+ },
263
+ ],
264
+ },
265
+ ],
266
+ },
267
+ ],
268
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type MenuState } from "./menu-rig.js";
3
+ export { menuStates, type MenuState } from "./menu-rig.js";
4
+ export type MenuIconProps = StatefulIconProps<MenuState>;
5
+ export declare const MenuIcon: import("react").NamedExoticComponent<MenuIconProps>;
@@ -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 { menuArt, menuStates } from "./menu-rig.js";
6
+ export { menuStates } from "./menu-rig.js";
7
+ export const MenuIcon = memo(function MenuIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: menuArt, states: menuStates, ...props });
9
+ });
@@ -0,0 +1,41 @@
1
+ export declare const menuStates: readonly ["closed", "hover", "open"];
2
+ export type MenuState = (typeof menuStates)[number];
3
+ export declare const menuArt: {
4
+ readonly name: "menu";
5
+ readonly parts: readonly [{
6
+ readonly name: "top";
7
+ readonly paths: readonly ["M4 5h16"];
8
+ readonly poses: readonly [{}, {
9
+ readonly y: 1;
10
+ readonly scaleX: 0.72;
11
+ }, {
12
+ readonly y: 7;
13
+ readonly angle: 45;
14
+ }];
15
+ readonly pivot: readonly [12, 5];
16
+ readonly gestures: readonly [];
17
+ }, {
18
+ readonly name: "middle";
19
+ readonly paths: readonly ["M4 12h16"];
20
+ readonly poses: readonly [{}, {
21
+ readonly scaleX: 0.9;
22
+ }, {
23
+ readonly scaleX: 0.05;
24
+ readonly opacity: 0;
25
+ }];
26
+ readonly pivot: readonly [12, 12];
27
+ readonly gestures: readonly [];
28
+ }, {
29
+ readonly name: "bottom";
30
+ readonly paths: readonly ["M4 19h16"];
31
+ readonly poses: readonly [{}, {
32
+ readonly y: -1;
33
+ readonly scaleX: 0.72;
34
+ }, {
35
+ readonly y: -7;
36
+ readonly angle: -45;
37
+ }];
38
+ readonly pivot: readonly [12, 19];
39
+ readonly gestures: readonly [];
40
+ }];
41
+ };
@@ -0,0 +1,58 @@
1
+ export const menuStates = ['closed', 'hover', 'open'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Outer bars draw inward on attention, then hinge into a single centered close trigger while the middle bar retracts.
4
+ export const menuArt = {
5
+ name: 'menu',
6
+ parts: [
7
+ {
8
+ name: 'top',
9
+ paths: ['M4 5h16'],
10
+ poses: [
11
+ {},
12
+ {
13
+ y: 1,
14
+ scaleX: 0.72,
15
+ },
16
+ {
17
+ y: 7,
18
+ angle: 45,
19
+ },
20
+ ],
21
+ pivot: [12, 5],
22
+ gestures: [],
23
+ },
24
+ {
25
+ name: 'middle',
26
+ paths: ['M4 12h16'],
27
+ poses: [
28
+ {},
29
+ {
30
+ scaleX: 0.9,
31
+ },
32
+ {
33
+ scaleX: 0.05,
34
+ opacity: 0,
35
+ },
36
+ ],
37
+ pivot: [12, 12],
38
+ gestures: [],
39
+ },
40
+ {
41
+ name: 'bottom',
42
+ paths: ['M4 19h16'],
43
+ poses: [
44
+ {},
45
+ {
46
+ y: -1,
47
+ scaleX: 0.72,
48
+ },
49
+ {
50
+ y: -7,
51
+ angle: -45,
52
+ },
53
+ ],
54
+ pivot: [12, 19],
55
+ gestures: [],
56
+ },
57
+ ],
58
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type MessageCircleState } from "./message-circle-rig.js";
3
+ export { messageCircleStates, type MessageCircleState } from "./message-circle-rig.js";
4
+ export type MessageCircleIconProps = StatefulIconProps<MessageCircleState>;
5
+ export declare const MessageCircleIcon: import("react").NamedExoticComponent<MessageCircleIconProps>;
@@ -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 { messageCircleArt, messageCircleStates, } from "./message-circle-rig.js";
6
+ export { messageCircleStates } from "./message-circle-rig.js";
7
+ export const MessageCircleIcon = memo(function MessageCircleIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: messageCircleArt, states: messageCircleStates, ...props });
9
+ });
@@ -0,0 +1,99 @@
1
+ export declare const messageCircleStates: readonly ["idle", "typing", "received"];
2
+ export type MessageCircleState = (typeof messageCircleStates)[number];
3
+ export declare const messageCircleArt: {
4
+ readonly name: "message-circle";
5
+ readonly parts: readonly [{
6
+ readonly name: "bubble";
7
+ readonly paths: readonly ["M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [12, 12];
10
+ readonly gestures: readonly [];
11
+ }, {
12
+ readonly name: "dot-0";
13
+ readonly detail: true;
14
+ readonly paths: readonly ["M8 12L8.01 12"];
15
+ readonly poses: readonly [{
16
+ readonly opacity: 0;
17
+ }, {
18
+ readonly opacity: 1;
19
+ }, {
20
+ readonly opacity: 1;
21
+ }];
22
+ readonly pivot: readonly [8, 12];
23
+ readonly gestures: readonly [null, {
24
+ readonly duration: 0.95;
25
+ readonly repeatAfter: 1.5;
26
+ readonly loop: true;
27
+ readonly frames: readonly [{
28
+ readonly at: 0;
29
+ }, {
30
+ readonly at: 0.12;
31
+ readonly y: -2;
32
+ }, {
33
+ readonly at: 0.35;
34
+ readonly y: 0.5;
35
+ }, {
36
+ readonly at: 1;
37
+ }];
38
+ }];
39
+ readonly pathStates: readonly [readonly ["M8 12L8.01 12"], readonly ["M8 12L8.01 12"], readonly ["M7.5 9L16.5 9"]];
40
+ }, {
41
+ readonly name: "dot-1";
42
+ readonly detail: true;
43
+ readonly paths: readonly ["M12 12L12.01 12"];
44
+ readonly poses: readonly [{
45
+ readonly opacity: 0;
46
+ }, {
47
+ readonly opacity: 1;
48
+ }, {
49
+ readonly opacity: 1;
50
+ }];
51
+ readonly pivot: readonly [12, 12];
52
+ readonly gestures: readonly [null, {
53
+ readonly duration: 0.95;
54
+ readonly repeatAfter: 1.5;
55
+ readonly loop: true;
56
+ readonly frames: readonly [{
57
+ readonly at: 0;
58
+ }, {
59
+ readonly at: 0.3;
60
+ readonly y: -2;
61
+ }, {
62
+ readonly at: 0.53;
63
+ readonly y: 0.5;
64
+ }, {
65
+ readonly at: 1;
66
+ }];
67
+ }];
68
+ readonly pathStates: readonly [readonly ["M12 12L12.01 12"], readonly ["M12 12L12.01 12"], readonly ["M7.5 12L14.5 12"]];
69
+ }, {
70
+ readonly name: "dot-2";
71
+ readonly detail: true;
72
+ readonly paths: readonly ["M16 12L16.01 12"];
73
+ readonly poses: readonly [{
74
+ readonly opacity: 0;
75
+ }, {
76
+ readonly opacity: 1;
77
+ }, {
78
+ readonly opacity: 1;
79
+ }];
80
+ readonly pivot: readonly [16, 12];
81
+ readonly gestures: readonly [null, {
82
+ readonly duration: 0.95;
83
+ readonly repeatAfter: 1.5;
84
+ readonly loop: true;
85
+ readonly frames: readonly [{
86
+ readonly at: 0;
87
+ }, {
88
+ readonly at: 0.48;
89
+ readonly y: -2;
90
+ }, {
91
+ readonly at: 0.71;
92
+ readonly y: 0.5;
93
+ }, {
94
+ readonly at: 1;
95
+ }];
96
+ }];
97
+ readonly pathStates: readonly [readonly ["M16 12L16.01 12"], readonly ["M16 12L16.01 12"], readonly ["M7.5 15L12.5 15"]];
98
+ }];
99
+ };
@@ -0,0 +1,143 @@
1
+ export const messageCircleStates = ['idle', 'typing', 'received'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // Typing dots rise one after another and resolve continuously into three lines of received message text.
4
+ export const messageCircleArt = {
5
+ name: 'message-circle',
6
+ parts: [
7
+ {
8
+ name: 'bubble',
9
+ paths: [
10
+ 'M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719',
11
+ ],
12
+ poses: [{}, {}, {}],
13
+ pivot: [12, 12],
14
+ gestures: [],
15
+ },
16
+ {
17
+ name: 'dot-0',
18
+ detail: true,
19
+ paths: ['M8 12L8.01 12'],
20
+ poses: [
21
+ {
22
+ opacity: 0,
23
+ },
24
+ {
25
+ opacity: 1,
26
+ },
27
+ {
28
+ opacity: 1,
29
+ },
30
+ ],
31
+ pivot: [8, 12],
32
+ gestures: [
33
+ null,
34
+ {
35
+ duration: 0.95,
36
+ repeatAfter: 1.5,
37
+ loop: true,
38
+ frames: [
39
+ {
40
+ at: 0,
41
+ },
42
+ {
43
+ at: 0.12,
44
+ y: -2,
45
+ },
46
+ {
47
+ at: 0.35,
48
+ y: 0.5,
49
+ },
50
+ {
51
+ at: 1,
52
+ },
53
+ ],
54
+ },
55
+ ],
56
+ pathStates: [['M8 12L8.01 12'], ['M8 12L8.01 12'], ['M7.5 9L16.5 9']],
57
+ },
58
+ {
59
+ name: 'dot-1',
60
+ detail: true,
61
+ paths: ['M12 12L12.01 12'],
62
+ poses: [
63
+ {
64
+ opacity: 0,
65
+ },
66
+ {
67
+ opacity: 1,
68
+ },
69
+ {
70
+ opacity: 1,
71
+ },
72
+ ],
73
+ pivot: [12, 12],
74
+ gestures: [
75
+ null,
76
+ {
77
+ duration: 0.95,
78
+ repeatAfter: 1.5,
79
+ loop: true,
80
+ frames: [
81
+ {
82
+ at: 0,
83
+ },
84
+ {
85
+ at: 0.3,
86
+ y: -2,
87
+ },
88
+ {
89
+ at: 0.53,
90
+ y: 0.5,
91
+ },
92
+ {
93
+ at: 1,
94
+ },
95
+ ],
96
+ },
97
+ ],
98
+ pathStates: [['M12 12L12.01 12'], ['M12 12L12.01 12'], ['M7.5 12L14.5 12']],
99
+ },
100
+ {
101
+ name: 'dot-2',
102
+ detail: true,
103
+ paths: ['M16 12L16.01 12'],
104
+ poses: [
105
+ {
106
+ opacity: 0,
107
+ },
108
+ {
109
+ opacity: 1,
110
+ },
111
+ {
112
+ opacity: 1,
113
+ },
114
+ ],
115
+ pivot: [16, 12],
116
+ gestures: [
117
+ null,
118
+ {
119
+ duration: 0.95,
120
+ repeatAfter: 1.5,
121
+ loop: true,
122
+ frames: [
123
+ {
124
+ at: 0,
125
+ },
126
+ {
127
+ at: 0.48,
128
+ y: -2,
129
+ },
130
+ {
131
+ at: 0.71,
132
+ y: 0.5,
133
+ },
134
+ {
135
+ at: 1,
136
+ },
137
+ ],
138
+ },
139
+ ],
140
+ pathStates: [['M16 12L16.01 12'], ['M16 12L16.01 12'], ['M7.5 15L12.5 15']],
141
+ },
142
+ ],
143
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type MicState } from "./mic-rig.js";
3
+ export { micStates, type MicState } from "./mic-rig.js";
4
+ export type MicIconProps = StatefulIconProps<MicState>;
5
+ export declare const MicIcon: import("react").NamedExoticComponent<MicIconProps>;
@@ -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 { micArt, micStates } from "./mic-rig.js";
6
+ export { micStates } from "./mic-rig.js";
7
+ export const MicIcon = memo(function MicIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: micArt, states: micStates, ...props });
9
+ });