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,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type BookOpenState } from "./book-open-rig.js";
3
+ export { bookOpenStates, type BookOpenState } from "./book-open-rig.js";
4
+ export type BookOpenIconProps = StatefulIconProps<BookOpenState>;
5
+ export declare const BookOpenIcon: import("react").NamedExoticComponent<BookOpenIconProps>;
@@ -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 { bookOpenArt, bookOpenStates } from "./book-open-rig.js";
6
+ export { bookOpenStates } from "./book-open-rig.js";
7
+ export const BookOpenIcon = memo(function BookOpenIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: bookOpenArt, states: bookOpenStates, ...props });
9
+ });
@@ -0,0 +1,65 @@
1
+ export declare const bookOpenStates: readonly ["idle", "reading", "finished"];
2
+ export type BookOpenState = (typeof bookOpenStates)[number];
3
+ export declare const bookOpenArt: {
4
+ readonly name: "book-open";
5
+ readonly parts: readonly [{
6
+ readonly name: "left-page";
7
+ readonly paths: readonly ["M12 5C10.7 3.7 9.5 3 8 3H4Q2 3 2 5V17Q2 19 4 19H8Q10.4 19 12 21"];
8
+ readonly poses: readonly [{}, {
9
+ readonly scaleX: 0.9;
10
+ }, {
11
+ readonly scaleX: 0.7;
12
+ }];
13
+ readonly pivot: readonly [12, 13];
14
+ readonly gestures: readonly [null, {
15
+ readonly duration: 1.65;
16
+ readonly repeatAfter: 2.45;
17
+ readonly loop: true;
18
+ readonly frames: readonly [{
19
+ readonly at: 0;
20
+ }, {
21
+ readonly at: 0.45;
22
+ readonly scaleX: -0.16;
23
+ }, {
24
+ readonly at: 0.72;
25
+ readonly scaleX: 0.07;
26
+ }, {
27
+ readonly at: 1;
28
+ }];
29
+ }];
30
+ }, {
31
+ readonly name: "right-page";
32
+ readonly paths: readonly ["M12 5C13.3 3.7 14.5 3 16 3H20Q22 3 22 5V17Q22 19 20 19H16Q13.6 19 12 21"];
33
+ readonly poses: readonly [{}, {
34
+ readonly scaleX: 0.56;
35
+ }, {
36
+ readonly scaleX: 0.12;
37
+ }];
38
+ readonly pivot: readonly [12, 13];
39
+ readonly gestures: readonly [null, {
40
+ readonly duration: 1.65;
41
+ readonly repeatAfter: 2.45;
42
+ readonly loop: true;
43
+ readonly frames: readonly [{
44
+ readonly at: 0;
45
+ }, {
46
+ readonly at: 0.18;
47
+ readonly scaleX: 0.4;
48
+ }, {
49
+ readonly at: 0.58;
50
+ readonly scaleX: -0.43;
51
+ }, {
52
+ readonly at: 0.72;
53
+ readonly scaleX: -0.43;
54
+ }, {
55
+ readonly at: 1;
56
+ }];
57
+ }];
58
+ }, {
59
+ readonly name: "spine";
60
+ readonly paths: readonly ["M12 5v16"];
61
+ readonly poses: readonly [{}, {}, {}];
62
+ readonly pivot: readonly [12, 12];
63
+ readonly gestures: readonly [];
64
+ }];
65
+ };
@@ -0,0 +1,95 @@
1
+ export const bookOpenStates = ['idle', 'reading', 'finished'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // A page pivots about the spine with a broad readable turn; the opposite leaf follows slightly. Finished folds the cover inward into a quiet narrow book.
4
+ export const bookOpenArt = {
5
+ name: 'book-open',
6
+ parts: [
7
+ {
8
+ name: 'left-page',
9
+ paths: ['M12 5C10.7 3.7 9.5 3 8 3H4Q2 3 2 5V17Q2 19 4 19H8Q10.4 19 12 21'],
10
+ poses: [
11
+ {},
12
+ {
13
+ scaleX: 0.9,
14
+ },
15
+ {
16
+ scaleX: 0.7,
17
+ },
18
+ ],
19
+ pivot: [12, 13],
20
+ gestures: [
21
+ null,
22
+ {
23
+ duration: 1.65,
24
+ repeatAfter: 2.45,
25
+ loop: true,
26
+ frames: [
27
+ {
28
+ at: 0,
29
+ },
30
+ {
31
+ at: 0.45,
32
+ scaleX: -0.16,
33
+ },
34
+ {
35
+ at: 0.72,
36
+ scaleX: 0.07,
37
+ },
38
+ {
39
+ at: 1,
40
+ },
41
+ ],
42
+ },
43
+ ],
44
+ },
45
+ {
46
+ name: 'right-page',
47
+ paths: ['M12 5C13.3 3.7 14.5 3 16 3H20Q22 3 22 5V17Q22 19 20 19H16Q13.6 19 12 21'],
48
+ poses: [
49
+ {},
50
+ {
51
+ scaleX: 0.56,
52
+ },
53
+ {
54
+ scaleX: 0.12,
55
+ },
56
+ ],
57
+ pivot: [12, 13],
58
+ gestures: [
59
+ null,
60
+ {
61
+ duration: 1.65,
62
+ repeatAfter: 2.45,
63
+ loop: true,
64
+ frames: [
65
+ {
66
+ at: 0,
67
+ },
68
+ {
69
+ at: 0.18,
70
+ scaleX: 0.4,
71
+ },
72
+ {
73
+ at: 0.58,
74
+ scaleX: -0.43,
75
+ },
76
+ {
77
+ at: 0.72,
78
+ scaleX: -0.43,
79
+ },
80
+ {
81
+ at: 1,
82
+ },
83
+ ],
84
+ },
85
+ ],
86
+ },
87
+ {
88
+ name: 'spine',
89
+ paths: ['M12 5v16'],
90
+ poses: [{}, {}, {}],
91
+ pivot: [12, 12],
92
+ gestures: [],
93
+ },
94
+ ],
95
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type BookmarkState } from "./bookmark-rig.js";
3
+ export { bookmarkStates, type BookmarkState } from "./bookmark-rig.js";
4
+ export type BookmarkIconProps = StatefulIconProps<BookmarkState>;
5
+ export declare const BookmarkIcon: import("react").NamedExoticComponent<BookmarkIconProps>;
@@ -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 { bookmarkArt, bookmarkStates } from "./bookmark-rig.js";
6
+ export { bookmarkStates } from "./bookmark-rig.js";
7
+ export const BookmarkIcon = memo(function BookmarkIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: bookmarkArt, states: bookmarkStates, ...props });
9
+ });
@@ -0,0 +1,43 @@
1
+ export declare const bookmarkStates: readonly ["unsaved", "saving", "saved"];
2
+ export type BookmarkState = (typeof bookmarkStates)[number];
3
+ export declare const bookmarkArt: {
4
+ readonly name: "bookmark";
5
+ readonly parts: readonly [{
6
+ readonly name: "ribbon";
7
+ readonly paths: readonly ["M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z"];
8
+ readonly poses: readonly [{}, {
9
+ readonly y: -1.6;
10
+ readonly scaleY: 0.84;
11
+ }, {}];
12
+ readonly pivot: readonly [12, 12];
13
+ readonly gestures: readonly [null, {
14
+ readonly duration: 0.95;
15
+ readonly repeatAfter: 2.4;
16
+ readonly loop: false;
17
+ readonly frames: readonly [{
18
+ readonly at: 0;
19
+ }, {
20
+ readonly at: 0.18;
21
+ readonly y: -0.4;
22
+ }, {
23
+ readonly at: 0.63;
24
+ readonly y: 1.7;
25
+ }, {
26
+ readonly at: 1;
27
+ }];
28
+ }];
29
+ }, {
30
+ readonly name: "saved";
31
+ readonly detail: true;
32
+ readonly paths: readonly ["M9 10L11 12L15 8"];
33
+ readonly poses: readonly [{
34
+ readonly opacity: 0;
35
+ }, {
36
+ readonly opacity: 0;
37
+ }, {
38
+ readonly opacity: 1;
39
+ }];
40
+ readonly pivot: readonly [12, 12];
41
+ readonly gestures: readonly [];
42
+ }];
43
+ };
@@ -0,0 +1,65 @@
1
+ export const bookmarkStates = ['unsaved', 'saving', 'saved'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // The ribbon lifts and seats into place like an inserted page marker; the saved tick appears only in the settled bookmark.
4
+ export const bookmarkArt = {
5
+ name: 'bookmark',
6
+ parts: [
7
+ {
8
+ name: 'ribbon',
9
+ paths: [
10
+ 'M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z',
11
+ ],
12
+ poses: [
13
+ {},
14
+ {
15
+ y: -1.6,
16
+ scaleY: 0.84,
17
+ },
18
+ {},
19
+ ],
20
+ pivot: [12, 12],
21
+ gestures: [
22
+ null,
23
+ {
24
+ duration: 0.95,
25
+ repeatAfter: 2.4,
26
+ loop: false,
27
+ frames: [
28
+ {
29
+ at: 0,
30
+ },
31
+ {
32
+ at: 0.18,
33
+ y: -0.4,
34
+ },
35
+ {
36
+ at: 0.63,
37
+ y: 1.7,
38
+ },
39
+ {
40
+ at: 1,
41
+ },
42
+ ],
43
+ },
44
+ ],
45
+ },
46
+ {
47
+ name: 'saved',
48
+ detail: true,
49
+ paths: ['M9 10L11 12L15 8'],
50
+ poses: [
51
+ {
52
+ opacity: 0,
53
+ },
54
+ {
55
+ opacity: 0,
56
+ },
57
+ {
58
+ opacity: 1,
59
+ },
60
+ ],
61
+ pivot: [12, 12],
62
+ gestures: [],
63
+ },
64
+ ],
65
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type CalendarState } from "./calendar-rig.js";
3
+ export { calendarStates, type CalendarState } from "./calendar-rig.js";
4
+ export type CalendarIconProps = StatefulIconProps<CalendarState>;
5
+ export declare const CalendarIcon: import("react").NamedExoticComponent<CalendarIconProps>;
@@ -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 { calendarArt, calendarStates } from "./calendar-rig.js";
6
+ export { calendarStates } from "./calendar-rig.js";
7
+ export const CalendarIcon = memo(function CalendarIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: calendarArt, states: calendarStates, ...props });
9
+ });
@@ -0,0 +1,67 @@
1
+ export declare const calendarStates: readonly ["idle", "selecting", "selected"];
2
+ export type CalendarState = (typeof calendarStates)[number];
3
+ export declare const calendarArt: {
4
+ readonly name: "calendar";
5
+ readonly parts: readonly [{
6
+ readonly name: "page";
7
+ readonly paths: readonly ["M8 2v3", "M16 2v3", "M5 3H19Q21 3 21 5V19Q21 21 19 21H5Q3 21 3 19V5Q3 3 5 3Z", "M3 9h18"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [12, 12];
10
+ readonly gestures: readonly [];
11
+ }, {
12
+ readonly name: "date";
13
+ readonly detail: true;
14
+ readonly paths: readonly ["M9.8 12H13.2Q14 12 14 12.8V16.2Q14 17 13.2 17H9.8Q9 17 9 16.2V12.8Q9 12 9.8 12Z"];
15
+ readonly poses: readonly [{
16
+ readonly opacity: 0;
17
+ }, {
18
+ readonly opacity: 1;
19
+ readonly x: -1.5;
20
+ readonly y: -0.6;
21
+ }, {
22
+ readonly opacity: 1;
23
+ readonly x: 2;
24
+ readonly y: 1.2;
25
+ }];
26
+ readonly pivot: readonly [11.5, 14.5];
27
+ readonly gestures: readonly [null, {
28
+ readonly duration: 1.2;
29
+ readonly repeatAfter: 2.3;
30
+ readonly loop: true;
31
+ readonly frames: readonly [{
32
+ readonly at: 0;
33
+ }, {
34
+ readonly at: 0.22;
35
+ readonly x: 3.5;
36
+ }, {
37
+ readonly at: 0.55;
38
+ readonly x: 3.5;
39
+ readonly y: 1.8;
40
+ }, {
41
+ readonly at: 0.8;
42
+ readonly x: 0;
43
+ readonly y: 1.8;
44
+ }, {
45
+ readonly at: 1;
46
+ }];
47
+ }, {
48
+ readonly duration: 0.65;
49
+ readonly repeatAfter: 2;
50
+ readonly loop: false;
51
+ readonly frames: readonly [{
52
+ readonly at: 0;
53
+ }, {
54
+ readonly at: 0.22;
55
+ readonly scaleX: -0.2;
56
+ readonly scaleY: -0.2;
57
+ }, {
58
+ readonly at: 0.58;
59
+ readonly scaleX: 0.08;
60
+ readonly scaleY: 0.08;
61
+ }, {
62
+ readonly at: 1;
63
+ }];
64
+ }];
65
+ readonly accent: true;
66
+ }];
67
+ };
@@ -0,0 +1,95 @@
1
+ export const calendarStates = ['idle', 'selecting', 'selected'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // A single date cursor explores adjacent cells, then stamps into the chosen cell once; selection is a position and contact action, not just a color fade.
4
+ export const calendarArt = {
5
+ name: 'calendar',
6
+ parts: [
7
+ {
8
+ name: 'page',
9
+ paths: [
10
+ 'M8 2v3',
11
+ 'M16 2v3',
12
+ 'M5 3H19Q21 3 21 5V19Q21 21 19 21H5Q3 21 3 19V5Q3 3 5 3Z',
13
+ 'M3 9h18',
14
+ ],
15
+ poses: [{}, {}, {}],
16
+ pivot: [12, 12],
17
+ gestures: [],
18
+ },
19
+ {
20
+ name: 'date',
21
+ detail: true,
22
+ paths: ['M9.8 12H13.2Q14 12 14 12.8V16.2Q14 17 13.2 17H9.8Q9 17 9 16.2V12.8Q9 12 9.8 12Z'],
23
+ poses: [
24
+ {
25
+ opacity: 0,
26
+ },
27
+ {
28
+ opacity: 1,
29
+ x: -1.5,
30
+ y: -0.6,
31
+ },
32
+ {
33
+ opacity: 1,
34
+ x: 2,
35
+ y: 1.2,
36
+ },
37
+ ],
38
+ pivot: [11.5, 14.5],
39
+ gestures: [
40
+ null,
41
+ {
42
+ duration: 1.2,
43
+ repeatAfter: 2.3,
44
+ loop: true,
45
+ frames: [
46
+ {
47
+ at: 0,
48
+ },
49
+ {
50
+ at: 0.22,
51
+ x: 3.5,
52
+ },
53
+ {
54
+ at: 0.55,
55
+ x: 3.5,
56
+ y: 1.8,
57
+ },
58
+ {
59
+ at: 0.8,
60
+ x: 0,
61
+ y: 1.8,
62
+ },
63
+ {
64
+ at: 1,
65
+ },
66
+ ],
67
+ },
68
+ {
69
+ duration: 0.65,
70
+ repeatAfter: 2,
71
+ loop: false,
72
+ frames: [
73
+ {
74
+ at: 0,
75
+ },
76
+ {
77
+ at: 0.22,
78
+ scaleX: -0.2,
79
+ scaleY: -0.2,
80
+ },
81
+ {
82
+ at: 0.58,
83
+ scaleX: 0.08,
84
+ scaleY: 0.08,
85
+ },
86
+ {
87
+ at: 1,
88
+ },
89
+ ],
90
+ },
91
+ ],
92
+ accent: true,
93
+ },
94
+ ],
95
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type CameraState } from "./camera-rig.js";
3
+ export { cameraStates, type CameraState } from "./camera-rig.js";
4
+ export type CameraIconProps = StatefulIconProps<CameraState>;
5
+ export declare const CameraIcon: import("react").NamedExoticComponent<CameraIconProps>;
@@ -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 { cameraArt, cameraStates } from "./camera-rig.js";
6
+ export { cameraStates } from "./camera-rig.js";
7
+ export const CameraIcon = memo(function CameraIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: cameraArt, states: cameraStates, ...props });
9
+ });
@@ -0,0 +1,58 @@
1
+ export declare const cameraStates: readonly ["idle", "focusing", "captured"];
2
+ export type CameraState = (typeof cameraStates)[number];
3
+ export declare const cameraArt: {
4
+ readonly name: "camera";
5
+ readonly parts: readonly [{
6
+ readonly name: "case";
7
+ readonly paths: readonly ["M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z"];
8
+ readonly poses: readonly [{}, {}, {}];
9
+ readonly pivot: readonly [12, 12];
10
+ readonly gestures: readonly [];
11
+ }, {
12
+ readonly name: "lens";
13
+ readonly paths: readonly ["M9 13a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"];
14
+ readonly poses: readonly [{}, {
15
+ readonly scaleX: 1.35;
16
+ readonly scaleY: 1.35;
17
+ }, {
18
+ readonly scaleX: 0.78;
19
+ readonly scaleY: 0.78;
20
+ }];
21
+ readonly pivot: readonly [12, 13];
22
+ readonly gestures: readonly [null, {
23
+ readonly duration: 1.3;
24
+ readonly repeatAfter: 2.2;
25
+ readonly loop: true;
26
+ readonly frames: readonly [{
27
+ readonly at: 0;
28
+ }, {
29
+ readonly at: 0.2;
30
+ readonly scaleX: -0.5;
31
+ readonly scaleY: -0.5;
32
+ }, {
33
+ readonly at: 0.65;
34
+ readonly scaleX: -0.1;
35
+ readonly scaleY: -0.1;
36
+ }, {
37
+ readonly at: 1;
38
+ }];
39
+ }, {
40
+ readonly duration: 0.75;
41
+ readonly repeatAfter: 2;
42
+ readonly loop: false;
43
+ readonly frames: readonly [{
44
+ readonly at: 0;
45
+ }, {
46
+ readonly at: 0.2;
47
+ readonly scaleX: -0.6;
48
+ readonly scaleY: -0.6;
49
+ }, {
50
+ readonly at: 0.5;
51
+ readonly scaleX: 0.12;
52
+ readonly scaleY: 0.12;
53
+ }, {
54
+ readonly at: 1;
55
+ }];
56
+ }];
57
+ }];
58
+ };
@@ -0,0 +1,82 @@
1
+ export const cameraStates = ['idle', 'focusing', 'captured'];
2
+ // Lucide-derived outline; attribution and pinned source: THIRD_PARTY_NOTICES.md.
3
+ // The lens visibly searches focus, closes its shutter once on capture and reopens to a quiet smaller aperture.
4
+ export const cameraArt = {
5
+ name: 'camera',
6
+ parts: [
7
+ {
8
+ name: 'case',
9
+ paths: [
10
+ 'M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z',
11
+ ],
12
+ poses: [{}, {}, {}],
13
+ pivot: [12, 12],
14
+ gestures: [],
15
+ },
16
+ {
17
+ name: 'lens',
18
+ paths: ['M9 13a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'],
19
+ poses: [
20
+ {},
21
+ {
22
+ scaleX: 1.35,
23
+ scaleY: 1.35,
24
+ },
25
+ {
26
+ scaleX: 0.78,
27
+ scaleY: 0.78,
28
+ },
29
+ ],
30
+ pivot: [12, 13],
31
+ gestures: [
32
+ null,
33
+ {
34
+ duration: 1.3,
35
+ repeatAfter: 2.2,
36
+ loop: true,
37
+ frames: [
38
+ {
39
+ at: 0,
40
+ },
41
+ {
42
+ at: 0.2,
43
+ scaleX: -0.5,
44
+ scaleY: -0.5,
45
+ },
46
+ {
47
+ at: 0.65,
48
+ scaleX: -0.1,
49
+ scaleY: -0.1,
50
+ },
51
+ {
52
+ at: 1,
53
+ },
54
+ ],
55
+ },
56
+ {
57
+ duration: 0.75,
58
+ repeatAfter: 2,
59
+ loop: false,
60
+ frames: [
61
+ {
62
+ at: 0,
63
+ },
64
+ {
65
+ at: 0.2,
66
+ scaleX: -0.6,
67
+ scaleY: -0.6,
68
+ },
69
+ {
70
+ at: 0.5,
71
+ scaleX: 0.12,
72
+ scaleY: 0.12,
73
+ },
74
+ {
75
+ at: 1,
76
+ },
77
+ ],
78
+ },
79
+ ],
80
+ },
81
+ ],
82
+ };
@@ -0,0 +1,5 @@
1
+ import type { StatefulIconProps } from "../../shared/icon-types.js";
2
+ import { type ChevronDownState } from "./chevron-down-rig.js";
3
+ export { chevronDownStates, type ChevronDownState } from "./chevron-down-rig.js";
4
+ export type ChevronDownIconProps = StatefulIconProps<ChevronDownState>;
5
+ export declare const ChevronDownIcon: import("react").NamedExoticComponent<ChevronDownIconProps>;
@@ -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 { chevronDownArt, chevronDownStates } from "./chevron-down-rig.js";
6
+ export { chevronDownStates } from "./chevron-down-rig.js";
7
+ export const ChevronDownIcon = memo(function ChevronDownIcon(props) {
8
+ return _jsx(ArticulatedIcon, { art: chevronDownArt, states: chevronDownStates, ...props });
9
+ });