rn-iconify 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (657) hide show
  1. package/README.md +47 -235
  2. package/babel.js +14 -0
  3. package/lib/commonjs/IconRenderer.js +91 -4
  4. package/lib/commonjs/IconRenderer.js.map +1 -1
  5. package/lib/commonjs/accessibility/AccessibilityProvider.js +189 -0
  6. package/lib/commonjs/accessibility/AccessibilityProvider.js.map +1 -0
  7. package/lib/commonjs/accessibility/index.js +87 -0
  8. package/lib/commonjs/accessibility/index.js.map +1 -0
  9. package/lib/commonjs/accessibility/types.js +6 -0
  10. package/lib/commonjs/accessibility/types.js.map +1 -0
  11. package/lib/commonjs/accessibility/useAccessibleIcon.js +119 -0
  12. package/lib/commonjs/accessibility/useAccessibleIcon.js.map +1 -0
  13. package/lib/commonjs/accessibility/utils.js +231 -0
  14. package/lib/commonjs/accessibility/utils.js.map +1 -0
  15. package/lib/commonjs/alias/Icon.js +113 -0
  16. package/lib/commonjs/alias/Icon.js.map +1 -0
  17. package/lib/commonjs/alias/IconAliasContext.js +177 -0
  18. package/lib/commonjs/alias/IconAliasContext.js.map +1 -0
  19. package/lib/commonjs/alias/createIconAliases.js +222 -0
  20. package/lib/commonjs/alias/createIconAliases.js.map +1 -0
  21. package/lib/commonjs/alias/index.js +57 -0
  22. package/lib/commonjs/alias/index.js.map +1 -0
  23. package/lib/commonjs/alias/types.js +6 -0
  24. package/lib/commonjs/alias/types.js.map +1 -0
  25. package/lib/commonjs/animated/AnimatedIcon.js +116 -0
  26. package/lib/commonjs/animated/AnimatedIcon.js.map +1 -0
  27. package/lib/commonjs/animated/index.js +76 -0
  28. package/lib/commonjs/animated/index.js.map +1 -0
  29. package/lib/commonjs/animated/presets.js +220 -0
  30. package/lib/commonjs/animated/presets.js.map +1 -0
  31. package/lib/commonjs/animated/types.js +71 -0
  32. package/lib/commonjs/animated/types.js.map +1 -0
  33. package/lib/commonjs/animated/useIconAnimation.js +313 -0
  34. package/lib/commonjs/animated/useIconAnimation.js.map +1 -0
  35. package/lib/commonjs/babel/ast-utils.js +214 -0
  36. package/lib/commonjs/babel/ast-utils.js.map +1 -0
  37. package/lib/commonjs/babel/cache-writer.js +281 -0
  38. package/lib/commonjs/babel/cache-writer.js.map +1 -0
  39. package/lib/commonjs/babel/collector.js +219 -0
  40. package/lib/commonjs/babel/collector.js.map +1 -0
  41. package/lib/commonjs/babel/index.js +104 -0
  42. package/lib/commonjs/babel/index.js.map +1 -0
  43. package/lib/commonjs/babel/plugin.js +226 -0
  44. package/lib/commonjs/babel/plugin.js.map +1 -0
  45. package/lib/commonjs/babel/types.js +485 -0
  46. package/lib/commonjs/babel/types.js.map +1 -0
  47. package/lib/commonjs/bundle/index.js +213 -0
  48. package/lib/commonjs/bundle/index.js.map +1 -0
  49. package/lib/commonjs/cache/CacheManager.js +105 -6
  50. package/lib/commonjs/cache/CacheManager.js.map +1 -1
  51. package/lib/commonjs/cli/commands/analyze.js +171 -0
  52. package/lib/commonjs/cli/commands/analyze.js.map +1 -0
  53. package/lib/commonjs/cli/commands/bundle.js +214 -0
  54. package/lib/commonjs/cli/commands/bundle.js.map +1 -0
  55. package/lib/commonjs/cli/index.js +142 -0
  56. package/lib/commonjs/cli/index.js.map +1 -0
  57. package/lib/commonjs/cli/parser.js +260 -0
  58. package/lib/commonjs/cli/parser.js.map +1 -0
  59. package/lib/commonjs/cli/types.js +42 -0
  60. package/lib/commonjs/cli/types.js.map +1 -0
  61. package/lib/commonjs/config/ConfigManager.js +182 -0
  62. package/lib/commonjs/config/ConfigManager.js.map +1 -0
  63. package/lib/commonjs/config/index.js +44 -0
  64. package/lib/commonjs/config/index.js.map +1 -0
  65. package/lib/commonjs/config/types.js +55 -0
  66. package/lib/commonjs/config/types.js.map +1 -0
  67. package/lib/commonjs/createIconSet.js +49 -11
  68. package/lib/commonjs/createIconSet.js.map +1 -1
  69. package/lib/commonjs/explorer/IconExplorer.js +827 -0
  70. package/lib/commonjs/explorer/IconExplorer.js.map +1 -0
  71. package/lib/commonjs/explorer/iconSets.js +303 -0
  72. package/lib/commonjs/explorer/iconSets.js.map +1 -0
  73. package/lib/commonjs/explorer/index.js +93 -0
  74. package/lib/commonjs/explorer/index.js.map +1 -0
  75. package/lib/commonjs/explorer/types.js +6 -0
  76. package/lib/commonjs/explorer/types.js.map +1 -0
  77. package/lib/commonjs/explorer/useExplorer.js +359 -0
  78. package/lib/commonjs/explorer/useExplorer.js.map +1 -0
  79. package/lib/commonjs/index.js +618 -12
  80. package/lib/commonjs/index.js.map +1 -1
  81. package/lib/commonjs/navigation/createDrawerIcon.js +129 -0
  82. package/lib/commonjs/navigation/createDrawerIcon.js.map +1 -0
  83. package/lib/commonjs/navigation/createHeaderIcon.js +185 -0
  84. package/lib/commonjs/navigation/createHeaderIcon.js.map +1 -0
  85. package/lib/commonjs/navigation/createTabBarIcon.js +178 -0
  86. package/lib/commonjs/navigation/createTabBarIcon.js.map +1 -0
  87. package/lib/commonjs/navigation/index.js +83 -0
  88. package/lib/commonjs/navigation/index.js.map +1 -0
  89. package/lib/commonjs/navigation/types.js +94 -0
  90. package/lib/commonjs/navigation/types.js.map +1 -0
  91. package/lib/commonjs/navigation/useNavigationIcon.js +128 -0
  92. package/lib/commonjs/navigation/useNavigationIcon.js.map +1 -0
  93. package/lib/commonjs/network/IconifyAPI.js +154 -14
  94. package/lib/commonjs/network/IconifyAPI.js.map +1 -1
  95. package/lib/commonjs/network/index.js +18 -0
  96. package/lib/commonjs/network/index.js.map +1 -1
  97. package/lib/commonjs/performance/PerformanceMonitor.js +327 -0
  98. package/lib/commonjs/performance/PerformanceMonitor.js.map +1 -0
  99. package/lib/commonjs/performance/index.js +43 -0
  100. package/lib/commonjs/performance/index.js.map +1 -0
  101. package/lib/commonjs/performance/types.js +2 -0
  102. package/lib/commonjs/performance/types.js.map +1 -0
  103. package/lib/commonjs/placeholder/PlaceholderFactory.js +111 -0
  104. package/lib/commonjs/placeholder/PlaceholderFactory.js.map +1 -0
  105. package/lib/commonjs/placeholder/Pulse.js +77 -0
  106. package/lib/commonjs/placeholder/Pulse.js.map +1 -0
  107. package/lib/commonjs/placeholder/Shimmer.js +95 -0
  108. package/lib/commonjs/placeholder/Shimmer.js.map +1 -0
  109. package/lib/commonjs/placeholder/Skeleton.js +52 -0
  110. package/lib/commonjs/placeholder/Skeleton.js.map +1 -0
  111. package/lib/commonjs/placeholder/index.js +41 -0
  112. package/lib/commonjs/placeholder/index.js.map +1 -0
  113. package/lib/commonjs/placeholder/types.js +40 -0
  114. package/lib/commonjs/placeholder/types.js.map +1 -0
  115. package/lib/commonjs/theme/IconThemeProvider.js +96 -0
  116. package/lib/commonjs/theme/IconThemeProvider.js.map +1 -0
  117. package/lib/commonjs/theme/context.js +53 -0
  118. package/lib/commonjs/theme/context.js.map +1 -0
  119. package/lib/commonjs/theme/index.js +52 -0
  120. package/lib/commonjs/theme/index.js.map +1 -0
  121. package/lib/commonjs/theme/types.js +39 -0
  122. package/lib/commonjs/theme/types.js.map +1 -0
  123. package/lib/commonjs/theme/useIconTheme.js +121 -0
  124. package/lib/commonjs/theme/useIconTheme.js.map +1 -0
  125. package/lib/module/IconRenderer.js +92 -5
  126. package/lib/module/IconRenderer.js.map +1 -1
  127. package/lib/module/accessibility/AccessibilityProvider.js +179 -0
  128. package/lib/module/accessibility/AccessibilityProvider.js.map +1 -0
  129. package/lib/module/accessibility/index.js +42 -0
  130. package/lib/module/accessibility/index.js.map +1 -0
  131. package/lib/module/accessibility/types.js +2 -0
  132. package/lib/module/accessibility/types.js.map +1 -0
  133. package/lib/module/accessibility/useAccessibleIcon.js +112 -0
  134. package/lib/module/accessibility/useAccessibleIcon.js.map +1 -0
  135. package/lib/module/accessibility/utils.js +221 -0
  136. package/lib/module/accessibility/utils.js.map +1 -0
  137. package/lib/module/alias/Icon.js +105 -0
  138. package/lib/module/alias/Icon.js.map +1 -0
  139. package/lib/module/alias/IconAliasContext.js +166 -0
  140. package/lib/module/alias/IconAliasContext.js.map +1 -0
  141. package/lib/module/alias/createIconAliases.js +213 -0
  142. package/lib/module/alias/createIconAliases.js.map +1 -0
  143. package/lib/module/alias/index.js +45 -0
  144. package/lib/module/alias/index.js.map +1 -0
  145. package/lib/module/alias/types.js +2 -0
  146. package/lib/module/alias/types.js.map +1 -0
  147. package/lib/module/animated/AnimatedIcon.js +109 -0
  148. package/lib/module/animated/AnimatedIcon.js.map +1 -0
  149. package/lib/module/animated/index.js +80 -0
  150. package/lib/module/animated/index.js.map +1 -0
  151. package/lib/module/animated/presets.js +209 -0
  152. package/lib/module/animated/presets.js.map +1 -0
  153. package/lib/module/animated/types.js +65 -0
  154. package/lib/module/animated/types.js.map +1 -0
  155. package/lib/module/animated/useIconAnimation.js +306 -0
  156. package/lib/module/animated/useIconAnimation.js.map +1 -0
  157. package/lib/module/babel/ast-utils.js +201 -0
  158. package/lib/module/babel/ast-utils.js.map +1 -0
  159. package/lib/module/babel/cache-writer.js +269 -0
  160. package/lib/module/babel/cache-writer.js.map +1 -0
  161. package/lib/module/babel/collector.js +214 -0
  162. package/lib/module/babel/collector.js.map +1 -0
  163. package/lib/module/babel/index.js +51 -0
  164. package/lib/module/babel/index.js.map +1 -0
  165. package/lib/module/babel/plugin.js +220 -0
  166. package/lib/module/babel/plugin.js.map +1 -0
  167. package/lib/module/babel/types.js +476 -0
  168. package/lib/module/babel/types.js.map +1 -0
  169. package/lib/module/bundle/index.js +205 -0
  170. package/lib/module/bundle/index.js.map +1 -0
  171. package/lib/module/cache/CacheManager.js +106 -6
  172. package/lib/module/cache/CacheManager.js.map +1 -1
  173. package/lib/module/cli/commands/analyze.js +166 -0
  174. package/lib/module/cli/commands/analyze.js.map +1 -0
  175. package/lib/module/cli/commands/bundle.js +208 -0
  176. package/lib/module/cli/commands/bundle.js.map +1 -0
  177. package/lib/module/cli/index.js +140 -0
  178. package/lib/module/cli/index.js.map +1 -0
  179. package/lib/module/cli/parser.js +251 -0
  180. package/lib/module/cli/parser.js.map +1 -0
  181. package/lib/module/cli/types.js +36 -0
  182. package/lib/module/cli/types.js.map +1 -0
  183. package/lib/module/components/index.js +27 -1
  184. package/lib/module/components/index.js.map +1 -1
  185. package/lib/module/config/ConfigManager.js +173 -0
  186. package/lib/module/config/ConfigManager.js.map +1 -0
  187. package/lib/module/config/index.js +28 -0
  188. package/lib/module/config/index.js.map +1 -0
  189. package/lib/module/config/types.js +49 -0
  190. package/lib/module/config/types.js.map +1 -0
  191. package/lib/module/createIconSet.js +49 -11
  192. package/lib/module/createIconSet.js.map +1 -1
  193. package/lib/module/explorer/IconExplorer.js +817 -0
  194. package/lib/module/explorer/IconExplorer.js.map +1 -0
  195. package/lib/module/explorer/iconSets.js +291 -0
  196. package/lib/module/explorer/iconSets.js.map +1 -0
  197. package/lib/module/explorer/index.js +42 -0
  198. package/lib/module/explorer/index.js.map +1 -0
  199. package/lib/module/explorer/types.js +2 -0
  200. package/lib/module/explorer/types.js.map +1 -0
  201. package/lib/module/explorer/useExplorer.js +353 -0
  202. package/lib/module/explorer/useExplorer.js.map +1 -0
  203. package/lib/module/index.js +26 -11
  204. package/lib/module/index.js.map +1 -1
  205. package/lib/module/navigation/createDrawerIcon.js +121 -0
  206. package/lib/module/navigation/createDrawerIcon.js.map +1 -0
  207. package/lib/module/navigation/createHeaderIcon.js +175 -0
  208. package/lib/module/navigation/createHeaderIcon.js.map +1 -0
  209. package/lib/module/navigation/createTabBarIcon.js +168 -0
  210. package/lib/module/navigation/createTabBarIcon.js.map +1 -0
  211. package/lib/module/navigation/index.js +59 -0
  212. package/lib/module/navigation/index.js.map +1 -0
  213. package/lib/module/navigation/types.js +88 -0
  214. package/lib/module/navigation/types.js.map +1 -0
  215. package/lib/module/navigation/useNavigationIcon.js +121 -0
  216. package/lib/module/navigation/useNavigationIcon.js.map +1 -0
  217. package/lib/module/network/IconifyAPI.js +152 -14
  218. package/lib/module/network/IconifyAPI.js.map +1 -1
  219. package/lib/module/network/index.js +1 -1
  220. package/lib/module/network/index.js.map +1 -1
  221. package/lib/module/performance/PerformanceMonitor.js +317 -0
  222. package/lib/module/performance/PerformanceMonitor.js.map +1 -0
  223. package/lib/module/performance/index.js +26 -0
  224. package/lib/module/performance/index.js.map +1 -0
  225. package/lib/module/performance/types.js +2 -0
  226. package/lib/module/performance/types.js.map +1 -0
  227. package/lib/module/placeholder/PlaceholderFactory.js +105 -0
  228. package/lib/module/placeholder/PlaceholderFactory.js.map +1 -0
  229. package/lib/module/placeholder/Pulse.js +70 -0
  230. package/lib/module/placeholder/Pulse.js.map +1 -0
  231. package/lib/module/placeholder/Shimmer.js +88 -0
  232. package/lib/module/placeholder/Shimmer.js.map +1 -0
  233. package/lib/module/placeholder/Skeleton.js +45 -0
  234. package/lib/module/placeholder/Skeleton.js.map +1 -0
  235. package/lib/module/placeholder/index.js +15 -0
  236. package/lib/module/placeholder/index.js.map +1 -0
  237. package/lib/module/placeholder/types.js +34 -0
  238. package/lib/module/placeholder/types.js.map +1 -0
  239. package/lib/module/theme/IconThemeProvider.js +89 -0
  240. package/lib/module/theme/IconThemeProvider.js.map +1 -0
  241. package/lib/module/theme/context.js +47 -0
  242. package/lib/module/theme/context.js.map +1 -0
  243. package/lib/module/theme/index.js +19 -0
  244. package/lib/module/theme/index.js.map +1 -0
  245. package/lib/module/theme/types.js +33 -0
  246. package/lib/module/theme/types.js.map +1 -0
  247. package/lib/module/theme/useIconTheme.js +114 -0
  248. package/lib/module/theme/useIconTheme.js.map +1 -0
  249. package/lib/typescript/IconRenderer.d.ts +1 -1
  250. package/lib/typescript/IconRenderer.d.ts.map +1 -1
  251. package/lib/typescript/accessibility/AccessibilityProvider.d.ts +57 -0
  252. package/lib/typescript/accessibility/AccessibilityProvider.d.ts.map +1 -0
  253. package/lib/typescript/accessibility/index.d.ts +37 -0
  254. package/lib/typescript/accessibility/index.d.ts.map +1 -0
  255. package/lib/typescript/accessibility/types.d.ts +130 -0
  256. package/lib/typescript/accessibility/types.d.ts.map +1 -0
  257. package/lib/typescript/accessibility/useAccessibleIcon.d.ts +111 -0
  258. package/lib/typescript/accessibility/useAccessibleIcon.d.ts.map +1 -0
  259. package/lib/typescript/accessibility/utils.d.ts +29 -0
  260. package/lib/typescript/accessibility/utils.d.ts.map +1 -0
  261. package/lib/typescript/alias/Icon.d.ts +38 -0
  262. package/lib/typescript/alias/Icon.d.ts.map +1 -0
  263. package/lib/typescript/alias/IconAliasContext.d.ts +52 -0
  264. package/lib/typescript/alias/IconAliasContext.d.ts.map +1 -0
  265. package/lib/typescript/alias/createIconAliases.d.ts +77 -0
  266. package/lib/typescript/alias/createIconAliases.d.ts.map +1 -0
  267. package/lib/typescript/alias/index.d.ts +36 -0
  268. package/lib/typescript/alias/index.d.ts.map +1 -0
  269. package/lib/typescript/alias/types.d.ts +115 -0
  270. package/lib/typescript/alias/types.d.ts.map +1 -0
  271. package/lib/typescript/animated/AnimatedIcon.d.ts +45 -0
  272. package/lib/typescript/animated/AnimatedIcon.d.ts.map +1 -0
  273. package/lib/typescript/animated/index.d.ts +70 -0
  274. package/lib/typescript/animated/index.d.ts.map +1 -0
  275. package/lib/typescript/animated/presets.d.ts +35 -0
  276. package/lib/typescript/animated/presets.d.ts.map +1 -0
  277. package/lib/typescript/animated/types.d.ts +196 -0
  278. package/lib/typescript/animated/types.d.ts.map +1 -0
  279. package/lib/typescript/animated/useIconAnimation.d.ts +64 -0
  280. package/lib/typescript/animated/useIconAnimation.d.ts.map +1 -0
  281. package/lib/typescript/babel/ast-utils.d.ts +52 -0
  282. package/lib/typescript/babel/ast-utils.d.ts.map +1 -0
  283. package/lib/typescript/babel/cache-writer.d.ts +56 -0
  284. package/lib/typescript/babel/cache-writer.d.ts.map +1 -0
  285. package/lib/typescript/babel/collector.d.ts +107 -0
  286. package/lib/typescript/babel/collector.d.ts.map +1 -0
  287. package/lib/typescript/babel/index.d.ts +47 -0
  288. package/lib/typescript/babel/index.d.ts.map +1 -0
  289. package/lib/typescript/babel/plugin.d.ts +17 -0
  290. package/lib/typescript/babel/plugin.d.ts.map +1 -0
  291. package/lib/typescript/babel/types.d.ts +129 -0
  292. package/lib/typescript/babel/types.d.ts.map +1 -0
  293. package/lib/typescript/bundle/index.d.ts +161 -0
  294. package/lib/typescript/bundle/index.d.ts.map +1 -0
  295. package/lib/typescript/cache/CacheManager.d.ts +52 -4
  296. package/lib/typescript/cache/CacheManager.d.ts.map +1 -1
  297. package/lib/typescript/cli/commands/analyze.d.ts +10 -0
  298. package/lib/typescript/cli/commands/analyze.d.ts.map +1 -0
  299. package/lib/typescript/cli/commands/bundle.d.ts +10 -0
  300. package/lib/typescript/cli/commands/bundle.d.ts.map +1 -0
  301. package/lib/typescript/cli/index.d.ts +7 -0
  302. package/lib/typescript/cli/index.d.ts.map +1 -0
  303. package/lib/typescript/cli/parser.d.ts +18 -0
  304. package/lib/typescript/cli/parser.d.ts.map +1 -0
  305. package/lib/typescript/cli/types.d.ts +157 -0
  306. package/lib/typescript/cli/types.d.ts.map +1 -0
  307. package/lib/typescript/components/Academicons.d.ts +1 -1
  308. package/lib/typescript/components/AkarIcons.d.ts +1 -1
  309. package/lib/typescript/components/AntDesign.d.ts +1 -1
  310. package/lib/typescript/components/Arcticons.d.ts +1 -1
  311. package/lib/typescript/components/Basil.d.ts +1 -1
  312. package/lib/typescript/components/Bi.d.ts +1 -1
  313. package/lib/typescript/components/BitcoinIcons.d.ts +1 -1
  314. package/lib/typescript/components/Bpmn.d.ts +1 -1
  315. package/lib/typescript/components/Brandico.d.ts +1 -1
  316. package/lib/typescript/components/Bx.d.ts +1 -1
  317. package/lib/typescript/components/Bxl.d.ts +1 -1
  318. package/lib/typescript/components/Bxs.d.ts +1 -1
  319. package/lib/typescript/components/Bytesize.d.ts +1 -1
  320. package/lib/typescript/components/Carbon.d.ts +1 -1
  321. package/lib/typescript/components/Catppuccin.d.ts +1 -1
  322. package/lib/typescript/components/Cbi.d.ts +1 -1
  323. package/lib/typescript/components/Charm.d.ts +1 -1
  324. package/lib/typescript/components/Ci.d.ts +1 -1
  325. package/lib/typescript/components/Cib.d.ts +1 -1
  326. package/lib/typescript/components/Cif.d.ts +1 -1
  327. package/lib/typescript/components/Cil.d.ts +1 -1
  328. package/lib/typescript/components/CircleFlags.d.ts +1 -1
  329. package/lib/typescript/components/Circum.d.ts +1 -1
  330. package/lib/typescript/components/Clarity.d.ts +1 -1
  331. package/lib/typescript/components/Codex.d.ts +1 -1
  332. package/lib/typescript/components/Codicon.d.ts +1 -1
  333. package/lib/typescript/components/Covid.d.ts +1 -1
  334. package/lib/typescript/components/Cryptocurrency.d.ts +1 -1
  335. package/lib/typescript/components/CryptocurrencyColor.d.ts +1 -1
  336. package/lib/typescript/components/Cuida.d.ts +1 -1
  337. package/lib/typescript/components/Dashicons.d.ts +1 -1
  338. package/lib/typescript/components/Devicon.d.ts +1 -1
  339. package/lib/typescript/components/DeviconPlain.d.ts +1 -1
  340. package/lib/typescript/components/DinkieIcons.d.ts +1 -1
  341. package/lib/typescript/components/DuoIcons.d.ts +1 -1
  342. package/lib/typescript/components/Ei.d.ts +1 -1
  343. package/lib/typescript/components/El.d.ts +1 -1
  344. package/lib/typescript/components/EmojioneMonotone.d.ts +1 -1
  345. package/lib/typescript/components/Entypo.d.ts +1 -1
  346. package/lib/typescript/components/EntypoSocial.d.ts +1 -1
  347. package/lib/typescript/components/EosIcons.d.ts +1 -1
  348. package/lib/typescript/components/Ep.d.ts +1 -1
  349. package/lib/typescript/components/Et.d.ts +1 -1
  350. package/lib/typescript/components/Eva.d.ts +1 -1
  351. package/lib/typescript/components/F7.d.ts +1 -1
  352. package/lib/typescript/components/Fa.d.ts +1 -1
  353. package/lib/typescript/components/Fa6Brands.d.ts +1 -1
  354. package/lib/typescript/components/Fa6Regular.d.ts +1 -1
  355. package/lib/typescript/components/Fa6Solid.d.ts +1 -1
  356. package/lib/typescript/components/Fa7Brands.d.ts +1 -1
  357. package/lib/typescript/components/Fa7Regular.d.ts +1 -1
  358. package/lib/typescript/components/Fa7Solid.d.ts +1 -1
  359. package/lib/typescript/components/FaBrands.d.ts +1 -1
  360. package/lib/typescript/components/FaRegular.d.ts +1 -1
  361. package/lib/typescript/components/FaSolid.d.ts +1 -1
  362. package/lib/typescript/components/Fad.d.ts +1 -1
  363. package/lib/typescript/components/Famicons.d.ts +1 -1
  364. package/lib/typescript/components/Fe.d.ts +1 -1
  365. package/lib/typescript/components/Feather.d.ts +1 -1
  366. package/lib/typescript/components/FileIcons.d.ts +1 -1
  367. package/lib/typescript/components/Flag.d.ts +1 -1
  368. package/lib/typescript/components/Flagpack.d.ts +1 -1
  369. package/lib/typescript/components/FlatUi.d.ts +1 -1
  370. package/lib/typescript/components/Flowbite.d.ts +1 -1
  371. package/lib/typescript/components/Fluent.d.ts +1 -1
  372. package/lib/typescript/components/FluentColor.d.ts +1 -1
  373. package/lib/typescript/components/FluentEmoji.d.ts +1 -1
  374. package/lib/typescript/components/FluentEmojiFlat.d.ts +1 -1
  375. package/lib/typescript/components/FluentEmojiHighContrast.d.ts +1 -1
  376. package/lib/typescript/components/FluentMdl2.d.ts +1 -1
  377. package/lib/typescript/components/Fontelico.d.ts +1 -1
  378. package/lib/typescript/components/Fontisto.d.ts +1 -1
  379. package/lib/typescript/components/Formkit.d.ts +1 -1
  380. package/lib/typescript/components/Foundation.d.ts +1 -1
  381. package/lib/typescript/components/Gala.d.ts +1 -1
  382. package/lib/typescript/components/GameIcons.d.ts +1 -1
  383. package/lib/typescript/components/Garden.d.ts +1 -1
  384. package/lib/typescript/components/Geo.d.ts +1 -1
  385. package/lib/typescript/components/Gg.d.ts +1 -1
  386. package/lib/typescript/components/Gis.d.ts +1 -1
  387. package/lib/typescript/components/GravityUi.d.ts +1 -1
  388. package/lib/typescript/components/Gridicons.d.ts +1 -1
  389. package/lib/typescript/components/GrommetIcons.d.ts +1 -1
  390. package/lib/typescript/components/Guidance.d.ts +1 -1
  391. package/lib/typescript/components/Healthicons.d.ts +1 -1
  392. package/lib/typescript/components/Heroicons.d.ts +1 -1
  393. package/lib/typescript/components/HeroiconsOutline.d.ts +1 -1
  394. package/lib/typescript/components/HeroiconsSolid.d.ts +1 -1
  395. package/lib/typescript/components/Hugeicons.d.ts +1 -1
  396. package/lib/typescript/components/Humbleicons.d.ts +1 -1
  397. package/lib/typescript/components/Ic.d.ts +1 -1
  398. package/lib/typescript/components/IcomoonFree.d.ts +1 -1
  399. package/lib/typescript/components/IconPark.d.ts +1 -1
  400. package/lib/typescript/components/IconParkOutline.d.ts +1 -1
  401. package/lib/typescript/components/IconParkSolid.d.ts +1 -1
  402. package/lib/typescript/components/IconParkTwotone.d.ts +1 -1
  403. package/lib/typescript/components/Iconamoon.d.ts +1 -1
  404. package/lib/typescript/components/Iconoir.d.ts +1 -1
  405. package/lib/typescript/components/Icons8.d.ts +1 -1
  406. package/lib/typescript/components/Il.d.ts +1 -1
  407. package/lib/typescript/components/Ion.d.ts +1 -1
  408. package/lib/typescript/components/Iwwa.d.ts +1 -1
  409. package/lib/typescript/components/Ix.d.ts +1 -1
  410. package/lib/typescript/components/Jam.d.ts +1 -1
  411. package/lib/typescript/components/La.d.ts +1 -1
  412. package/lib/typescript/components/LetsIcons.d.ts +1 -1
  413. package/lib/typescript/components/LineMd.d.ts +1 -1
  414. package/lib/typescript/components/Lineicons.d.ts +1 -1
  415. package/lib/typescript/components/Logos.d.ts +1 -1
  416. package/lib/typescript/components/Ls.d.ts +1 -1
  417. package/lib/typescript/components/Lsicon.d.ts +1 -1
  418. package/lib/typescript/components/Lucide.d.ts +1 -1
  419. package/lib/typescript/components/LucideLab.d.ts +1 -1
  420. package/lib/typescript/components/Mage.d.ts +1 -1
  421. package/lib/typescript/components/Majesticons.d.ts +1 -1
  422. package/lib/typescript/components/Maki.d.ts +1 -1
  423. package/lib/typescript/components/Map.d.ts +1 -1
  424. package/lib/typescript/components/Marketeq.d.ts +1 -1
  425. package/lib/typescript/components/MaterialIconTheme.d.ts +1 -1
  426. package/lib/typescript/components/MaterialSymbols.d.ts +1 -1
  427. package/lib/typescript/components/MaterialSymbolsLight.d.ts +1 -1
  428. package/lib/typescript/components/Mdi.d.ts +1 -1
  429. package/lib/typescript/components/MdiLight.d.ts +1 -1
  430. package/lib/typescript/components/MedicalIcon.d.ts +1 -1
  431. package/lib/typescript/components/Memory.d.ts +1 -1
  432. package/lib/typescript/components/Meteocons.d.ts +1 -1
  433. package/lib/typescript/components/MeteorIcons.d.ts +1 -1
  434. package/lib/typescript/components/Mi.d.ts +1 -1
  435. package/lib/typescript/components/Mingcute.d.ts +1 -1
  436. package/lib/typescript/components/MonoIcons.d.ts +1 -1
  437. package/lib/typescript/components/Mynaui.d.ts +1 -1
  438. package/lib/typescript/components/Nimbus.d.ts +1 -1
  439. package/lib/typescript/components/Nonicons.d.ts +1 -1
  440. package/lib/typescript/components/Nrk.d.ts +1 -1
  441. package/lib/typescript/components/Octicon.d.ts +1 -1
  442. package/lib/typescript/components/Oi.d.ts +1 -1
  443. package/lib/typescript/components/Ooui.d.ts +1 -1
  444. package/lib/typescript/components/Oui.d.ts +1 -1
  445. package/lib/typescript/components/Pajamas.d.ts +1 -1
  446. package/lib/typescript/components/Pepicons.d.ts +1 -1
  447. package/lib/typescript/components/PepiconsPencil.d.ts +1 -1
  448. package/lib/typescript/components/PepiconsPop.d.ts +1 -1
  449. package/lib/typescript/components/PepiconsPrint.d.ts +1 -1
  450. package/lib/typescript/components/Ph.d.ts +1 -1
  451. package/lib/typescript/components/Picon.d.ts +1 -1
  452. package/lib/typescript/components/Pixel.d.ts +1 -1
  453. package/lib/typescript/components/Pixelarticons.d.ts +1 -1
  454. package/lib/typescript/components/Prime.d.ts +1 -1
  455. package/lib/typescript/components/Proicons.d.ts +1 -1
  456. package/lib/typescript/components/Ps.d.ts +1 -1
  457. package/lib/typescript/components/QlementineIcons.d.ts +1 -1
  458. package/lib/typescript/components/Quill.d.ts +1 -1
  459. package/lib/typescript/components/RadixIcons.d.ts +1 -1
  460. package/lib/typescript/components/Raphael.d.ts +1 -1
  461. package/lib/typescript/components/Ri.d.ts +1 -1
  462. package/lib/typescript/components/RivetIcons.d.ts +1 -1
  463. package/lib/typescript/components/Roentgen.d.ts +1 -1
  464. package/lib/typescript/components/Si.d.ts +1 -1
  465. package/lib/typescript/components/SiGlyph.d.ts +1 -1
  466. package/lib/typescript/components/Sidekickicons.d.ts +1 -1
  467. package/lib/typescript/components/SimpleIcons.d.ts +1 -1
  468. package/lib/typescript/components/SimpleLineIcons.d.ts +1 -1
  469. package/lib/typescript/components/SkillIcons.d.ts +1 -1
  470. package/lib/typescript/components/Solar.d.ts +1 -1
  471. package/lib/typescript/components/Stash.d.ts +1 -1
  472. package/lib/typescript/components/Streamline.d.ts +1 -1
  473. package/lib/typescript/components/StreamlineBlock.d.ts +1 -1
  474. package/lib/typescript/components/StreamlineColor.d.ts +1 -1
  475. package/lib/typescript/components/StreamlineCyber.d.ts +1 -1
  476. package/lib/typescript/components/StreamlineCyberColor.d.ts +1 -1
  477. package/lib/typescript/components/StreamlineEmojis.d.ts +1 -1
  478. package/lib/typescript/components/StreamlineFlex.d.ts +1 -1
  479. package/lib/typescript/components/StreamlineFlexColor.d.ts +1 -1
  480. package/lib/typescript/components/StreamlineFreehand.d.ts +1 -1
  481. package/lib/typescript/components/StreamlineFreehandColor.d.ts +1 -1
  482. package/lib/typescript/components/StreamlineKameleonColor.d.ts +1 -1
  483. package/lib/typescript/components/StreamlineLogos.d.ts +1 -1
  484. package/lib/typescript/components/StreamlinePixel.d.ts +1 -1
  485. package/lib/typescript/components/StreamlinePlump.d.ts +1 -1
  486. package/lib/typescript/components/StreamlinePlumpColor.d.ts +1 -1
  487. package/lib/typescript/components/StreamlineSharp.d.ts +1 -1
  488. package/lib/typescript/components/StreamlineSharpColor.d.ts +1 -1
  489. package/lib/typescript/components/StreamlineStickiesColor.d.ts +1 -1
  490. package/lib/typescript/components/StreamlineUltimate.d.ts +1 -1
  491. package/lib/typescript/components/StreamlineUltimateColor.d.ts +1 -1
  492. package/lib/typescript/components/Subway.d.ts +1 -1
  493. package/lib/typescript/components/SvgSpinners.d.ts +1 -1
  494. package/lib/typescript/components/SystemUicons.d.ts +1 -1
  495. package/lib/typescript/components/Tabler.d.ts +1 -1
  496. package/lib/typescript/components/Tdesign.d.ts +1 -1
  497. package/lib/typescript/components/Teenyicons.d.ts +1 -1
  498. package/lib/typescript/components/Temaki.d.ts +1 -1
  499. package/lib/typescript/components/Token.d.ts +1 -1
  500. package/lib/typescript/components/TokenBranded.d.ts +1 -1
  501. package/lib/typescript/components/Topcoat.d.ts +1 -1
  502. package/lib/typescript/components/Typcn.d.ts +1 -1
  503. package/lib/typescript/components/Uil.d.ts +1 -1
  504. package/lib/typescript/components/Uim.d.ts +1 -1
  505. package/lib/typescript/components/Uis.d.ts +1 -1
  506. package/lib/typescript/components/Uit.d.ts +1 -1
  507. package/lib/typescript/components/Uiw.d.ts +1 -1
  508. package/lib/typescript/components/Unjs.d.ts +1 -1
  509. package/lib/typescript/components/Vaadin.d.ts +1 -1
  510. package/lib/typescript/components/Vs.d.ts +1 -1
  511. package/lib/typescript/components/VscodeIcons.d.ts +1 -1
  512. package/lib/typescript/components/Websymbol.d.ts +1 -1
  513. package/lib/typescript/components/Weui.d.ts +1 -1
  514. package/lib/typescript/components/Whh.d.ts +1 -1
  515. package/lib/typescript/components/Wi.d.ts +1 -1
  516. package/lib/typescript/components/Wpf.d.ts +1 -1
  517. package/lib/typescript/components/Zmdi.d.ts +1 -1
  518. package/lib/typescript/components/Zondicons.d.ts +1 -1
  519. package/lib/typescript/components/index.d.ts +38 -1
  520. package/lib/typescript/components/index.d.ts.map +1 -1
  521. package/lib/typescript/config/ConfigManager.d.ts +102 -0
  522. package/lib/typescript/config/ConfigManager.d.ts.map +1 -0
  523. package/lib/typescript/config/index.d.ts +22 -0
  524. package/lib/typescript/config/index.d.ts.map +1 -0
  525. package/lib/typescript/config/types.d.ts +112 -0
  526. package/lib/typescript/config/types.d.ts.map +1 -0
  527. package/lib/typescript/createIconSet.d.ts +1 -1
  528. package/lib/typescript/createIconSet.d.ts.map +1 -1
  529. package/lib/typescript/explorer/IconExplorer.d.ts +54 -0
  530. package/lib/typescript/explorer/IconExplorer.d.ts.map +1 -0
  531. package/lib/typescript/explorer/iconSets.d.ts +35 -0
  532. package/lib/typescript/explorer/iconSets.d.ts.map +1 -0
  533. package/lib/typescript/explorer/index.d.ts +33 -0
  534. package/lib/typescript/explorer/index.d.ts.map +1 -0
  535. package/lib/typescript/explorer/types.d.ts +329 -0
  536. package/lib/typescript/explorer/types.d.ts.map +1 -0
  537. package/lib/typescript/explorer/useExplorer.d.ts +18 -0
  538. package/lib/typescript/explorer/useExplorer.d.ts.map +1 -0
  539. package/lib/typescript/index.d.ts +25 -4
  540. package/lib/typescript/index.d.ts.map +1 -1
  541. package/lib/typescript/navigation/createDrawerIcon.d.ts +74 -0
  542. package/lib/typescript/navigation/createDrawerIcon.d.ts.map +1 -0
  543. package/lib/typescript/navigation/createHeaderIcon.d.ts +145 -0
  544. package/lib/typescript/navigation/createHeaderIcon.d.ts.map +1 -0
  545. package/lib/typescript/navigation/createTabBarIcon.d.ts +99 -0
  546. package/lib/typescript/navigation/createTabBarIcon.d.ts.map +1 -0
  547. package/lib/typescript/navigation/index.d.ts +51 -0
  548. package/lib/typescript/navigation/index.d.ts.map +1 -0
  549. package/lib/typescript/navigation/types.d.ts +149 -0
  550. package/lib/typescript/navigation/types.d.ts.map +1 -0
  551. package/lib/typescript/navigation/useNavigationIcon.d.ts +91 -0
  552. package/lib/typescript/navigation/useNavigationIcon.d.ts.map +1 -0
  553. package/lib/typescript/network/IconifyAPI.d.ts +32 -0
  554. package/lib/typescript/network/IconifyAPI.d.ts.map +1 -1
  555. package/lib/typescript/network/index.d.ts +2 -1
  556. package/lib/typescript/network/index.d.ts.map +1 -1
  557. package/lib/typescript/performance/PerformanceMonitor.d.ts +76 -0
  558. package/lib/typescript/performance/PerformanceMonitor.d.ts.map +1 -0
  559. package/lib/typescript/performance/index.d.ts +21 -0
  560. package/lib/typescript/performance/index.d.ts.map +1 -0
  561. package/lib/typescript/performance/types.d.ts +156 -0
  562. package/lib/typescript/performance/types.d.ts.map +1 -0
  563. package/lib/typescript/placeholder/PlaceholderFactory.d.ts +44 -0
  564. package/lib/typescript/placeholder/PlaceholderFactory.d.ts.map +1 -0
  565. package/lib/typescript/placeholder/Pulse.d.ts +18 -0
  566. package/lib/typescript/placeholder/Pulse.d.ts.map +1 -0
  567. package/lib/typescript/placeholder/Shimmer.d.ts +19 -0
  568. package/lib/typescript/placeholder/Shimmer.d.ts.map +1 -0
  569. package/lib/typescript/placeholder/Skeleton.d.ts +18 -0
  570. package/lib/typescript/placeholder/Skeleton.d.ts.map +1 -0
  571. package/lib/typescript/placeholder/index.d.ts +12 -0
  572. package/lib/typescript/placeholder/index.d.ts.map +1 -0
  573. package/lib/typescript/placeholder/types.d.ts +63 -0
  574. package/lib/typescript/placeholder/types.d.ts.map +1 -0
  575. package/lib/typescript/theme/IconThemeProvider.d.ts +64 -0
  576. package/lib/typescript/theme/IconThemeProvider.d.ts.map +1 -0
  577. package/lib/typescript/theme/context.d.ts +24 -0
  578. package/lib/typescript/theme/context.d.ts.map +1 -0
  579. package/lib/typescript/theme/index.d.ts +10 -0
  580. package/lib/typescript/theme/index.d.ts.map +1 -0
  581. package/lib/typescript/theme/types.d.ts +85 -0
  582. package/lib/typescript/theme/types.d.ts.map +1 -0
  583. package/lib/typescript/theme/useIconTheme.d.ts +78 -0
  584. package/lib/typescript/theme/useIconTheme.d.ts.map +1 -0
  585. package/lib/typescript/types/index.d.ts +58 -1
  586. package/lib/typescript/types/index.d.ts.map +1 -1
  587. package/package.json +41 -3
  588. package/src/IconRenderer.tsx +91 -4
  589. package/src/accessibility/AccessibilityProvider.tsx +220 -0
  590. package/src/accessibility/index.ts +63 -0
  591. package/src/accessibility/types.ts +152 -0
  592. package/src/accessibility/useAccessibleIcon.ts +220 -0
  593. package/src/accessibility/utils.ts +180 -0
  594. package/src/alias/Icon.tsx +113 -0
  595. package/src/alias/IconAliasContext.tsx +180 -0
  596. package/src/alias/createIconAliases.tsx +233 -0
  597. package/src/alias/index.ts +59 -0
  598. package/src/alias/types.ts +132 -0
  599. package/src/animated/AnimatedIcon.tsx +116 -0
  600. package/src/animated/index.ts +97 -0
  601. package/src/animated/presets.ts +211 -0
  602. package/src/animated/types.ts +239 -0
  603. package/src/animated/useIconAnimation.ts +383 -0
  604. package/src/babel/ast-utils.ts +219 -0
  605. package/src/babel/cache-writer.ts +323 -0
  606. package/src/babel/collector.ts +224 -0
  607. package/src/babel/index.ts +60 -0
  608. package/src/babel/plugin.ts +254 -0
  609. package/src/babel/types.ts +717 -0
  610. package/src/bundle/index.ts +313 -0
  611. package/src/cache/CacheManager.ts +123 -6
  612. package/src/cli/commands/analyze.ts +195 -0
  613. package/src/cli/commands/bundle.ts +231 -0
  614. package/src/cli/index.ts +153 -0
  615. package/src/cli/parser.ts +275 -0
  616. package/src/cli/types.ts +187 -0
  617. package/src/components/index.ts +52 -1
  618. package/src/config/ConfigManager.ts +196 -0
  619. package/src/config/index.ts +34 -0
  620. package/src/config/types.ts +149 -0
  621. package/src/createIconSet.tsx +48 -9
  622. package/src/explorer/IconExplorer.tsx +844 -0
  623. package/src/explorer/iconSets.ts +334 -0
  624. package/src/explorer/index.ts +64 -0
  625. package/src/explorer/types.ts +392 -0
  626. package/src/explorer/useExplorer.ts +390 -0
  627. package/src/index.ts +218 -9
  628. package/src/navigation/createDrawerIcon.tsx +113 -0
  629. package/src/navigation/createHeaderIcon.tsx +213 -0
  630. package/src/navigation/createTabBarIcon.tsx +180 -0
  631. package/src/navigation/index.ts +80 -0
  632. package/src/navigation/types.ts +155 -0
  633. package/src/navigation/useNavigationIcon.tsx +156 -0
  634. package/src/network/IconifyAPI.ts +182 -14
  635. package/src/network/index.ts +11 -1
  636. package/src/performance/PerformanceMonitor.ts +367 -0
  637. package/src/performance/index.ts +39 -0
  638. package/src/performance/types.ts +185 -0
  639. package/src/placeholder/PlaceholderFactory.tsx +133 -0
  640. package/src/placeholder/Pulse.tsx +86 -0
  641. package/src/placeholder/Shimmer.tsx +104 -0
  642. package/src/placeholder/Skeleton.tsx +52 -0
  643. package/src/placeholder/index.ts +21 -0
  644. package/src/placeholder/types.ts +78 -0
  645. package/src/theme/IconThemeProvider.tsx +94 -0
  646. package/src/theme/context.ts +51 -0
  647. package/src/theme/index.ts +19 -0
  648. package/src/theme/types.ts +108 -0
  649. package/src/theme/useIconTheme.ts +119 -0
  650. package/src/types/index.ts +78 -1
  651. package/lib/commonjs/components/Phosphor.js +0 -493
  652. package/lib/commonjs/components/Phosphor.js.map +0 -1
  653. package/lib/module/components/Phosphor.js +0 -488
  654. package/lib/module/components/Phosphor.js.map +0 -1
  655. package/lib/typescript/components/Phosphor.d.ts +0 -472
  656. package/lib/typescript/components/Phosphor.d.ts.map +0 -1
  657. package/src/components/Phosphor.tsx +0 -506
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Easing","ANIMATION_PRESETS","spin","type","duration","loop","iterations","easing","direction","delay","from","to","pulse","bounce","shake","x","y","ping","wiggle","getEasingFunction","linear","ease","in","out","inOut","resolveAnimation","animation","overrides","baseConfig","rawFrom","rawTo","normalizedFrom","normalizedTo","config","isAnimationPreset","value","getDefaultDuration","preset","getDefaultLoop"],"sourceRoot":"../../../src","sources":["animated/presets.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Animation types for rn-iconify
3
+ * Supports preset animations and custom configurations
4
+ */
5
+
6
+ /**
7
+ * Built-in animation presets
8
+ */
9
+
10
+ /**
11
+ * Animation direction for reversible animations
12
+ */
13
+
14
+ /**
15
+ * Animation easing options
16
+ */
17
+
18
+ /**
19
+ * Custom animation configuration
20
+ */
21
+
22
+ /**
23
+ * Animation prop type - can be a preset string or custom config
24
+ */
25
+
26
+ /**
27
+ * Resolved animation configuration with all defaults applied
28
+ */
29
+
30
+ /**
31
+ * Animation state for tracking animation lifecycle
32
+ */
33
+
34
+ /**
35
+ * Animation control interface returned by useIconAnimation
36
+ */
37
+
38
+ /**
39
+ * Props for animated icon components
40
+ */
41
+
42
+ /**
43
+ * Default animation durations by preset
44
+ */
45
+ export const DEFAULT_ANIMATION_DURATIONS = {
46
+ spin: 1000,
47
+ pulse: 1500,
48
+ bounce: 600,
49
+ shake: 500,
50
+ ping: 1000,
51
+ wiggle: 300
52
+ };
53
+
54
+ /**
55
+ * Default animation loop settings by preset
56
+ */
57
+ export const DEFAULT_ANIMATION_LOOPS = {
58
+ spin: true,
59
+ pulse: true,
60
+ bounce: true,
61
+ shake: false,
62
+ ping: true,
63
+ wiggle: false
64
+ };
65
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DEFAULT_ANIMATION_DURATIONS","spin","pulse","bounce","shake","ping","wiggle","DEFAULT_ANIMATION_LOOPS"],"sourceRoot":"../../../src","sources":["animated/types.ts"],"mappings":"AAAA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;;AAqDA;AACA;AACA;;AAGA;AACA;AACA;;AAaA;AACA;AACA;;AAGA;AACA;AACA;;AAsCA;AACA;AACA;;AAiEA;AACA;AACA;AACA,OAAO,MAAMA,2BAA4D,GAAG;EAC1EC,IAAI,EAAE,IAAI;EACVC,KAAK,EAAE,IAAI;EACXC,MAAM,EAAE,GAAG;EACXC,KAAK,EAAE,GAAG;EACVC,IAAI,EAAE,IAAI;EACVC,MAAM,EAAE;AACV,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,uBAAyD,GAAG;EACvEN,IAAI,EAAE,IAAI;EACVC,KAAK,EAAE,IAAI;EACXC,MAAM,EAAE,IAAI;EACZC,KAAK,EAAE,KAAK;EACZC,IAAI,EAAE,IAAI;EACVC,MAAM,EAAE;AACV,CAAC","ignoreList":[]}
@@ -0,0 +1,306 @@
1
+ /**
2
+ * useIconAnimation - Hook for managing icon animations
3
+ * Handles Animated values, timing, and animation lifecycle
4
+ */
5
+
6
+ import { useRef, useEffect, useCallback, useState, useMemo } from 'react';
7
+ import { Animated } from 'react-native';
8
+ import { resolveAnimation, getEasingFunction } from './presets';
9
+ /**
10
+ * Hook for managing icon animations
11
+ */
12
+ export function useIconAnimation(options = {}) {
13
+ const {
14
+ animation,
15
+ duration,
16
+ loop,
17
+ easing,
18
+ delay = 0,
19
+ autoPlay = true,
20
+ onComplete
21
+ } = options;
22
+
23
+ // Animation state
24
+ const [state, setState] = useState('idle');
25
+ const animationRef = useRef(null);
26
+ const mountedRef = useRef(true);
27
+
28
+ // Animated values
29
+ const rotateValue = useRef(new Animated.Value(0)).current;
30
+ const scaleValue = useRef(new Animated.Value(1)).current;
31
+ const opacityValue = useRef(new Animated.Value(1)).current;
32
+ const translateXValue = useRef(new Animated.Value(0)).current;
33
+ const translateYValue = useRef(new Animated.Value(0)).current;
34
+
35
+ // Resolve animation config
36
+ const config = useMemo(() => {
37
+ if (!animation) return null;
38
+ return resolveAnimation(animation, {
39
+ duration,
40
+ loop,
41
+ easing,
42
+ delay
43
+ });
44
+ }, [animation, duration, loop, easing, delay]);
45
+
46
+ // Create animation based on config
47
+ const createAnimation = useCallback(() => {
48
+ if (!config) return null;
49
+ const easingFn = getEasingFunction(config.easing);
50
+ const isAlternate = config.direction === 'alternate' || config.direction === 'alternate-reverse';
51
+ const isReverse = config.direction === 'reverse' || config.direction === 'alternate-reverse';
52
+ let fromValue;
53
+ let toValue;
54
+ let animatedValue;
55
+ switch (config.type) {
56
+ case 'rotate':
57
+ animatedValue = rotateValue;
58
+ fromValue = isReverse ? config.to : config.from;
59
+ toValue = isReverse ? config.from : config.to;
60
+ break;
61
+ case 'scale':
62
+ animatedValue = scaleValue;
63
+ fromValue = isReverse ? config.to : config.from;
64
+ toValue = isReverse ? config.from : config.to;
65
+ break;
66
+ case 'opacity':
67
+ animatedValue = opacityValue;
68
+ fromValue = isReverse ? config.to : config.from;
69
+ toValue = isReverse ? config.from : config.to;
70
+ break;
71
+ case 'translate':
72
+ {
73
+ const toT = config.to;
74
+
75
+ // Create sequence for shake effect
76
+ const shakeSequence = Animated.sequence([Animated.timing(translateXValue, {
77
+ toValue: toT.x,
78
+ duration: config.duration / 6,
79
+ easing: easingFn,
80
+ useNativeDriver: true
81
+ }), Animated.timing(translateXValue, {
82
+ toValue: -toT.x,
83
+ duration: config.duration / 6,
84
+ easing: easingFn,
85
+ useNativeDriver: true
86
+ }), Animated.timing(translateXValue, {
87
+ toValue: toT.x * 0.6,
88
+ duration: config.duration / 6,
89
+ easing: easingFn,
90
+ useNativeDriver: true
91
+ }), Animated.timing(translateXValue, {
92
+ toValue: -toT.x * 0.6,
93
+ duration: config.duration / 6,
94
+ easing: easingFn,
95
+ useNativeDriver: true
96
+ }), Animated.timing(translateXValue, {
97
+ toValue: toT.x * 0.3,
98
+ duration: config.duration / 6,
99
+ easing: easingFn,
100
+ useNativeDriver: true
101
+ }), Animated.timing(translateXValue, {
102
+ toValue: 0,
103
+ duration: config.duration / 6,
104
+ easing: easingFn,
105
+ useNativeDriver: true
106
+ })]);
107
+ if (config.loop && config.iterations === -1) {
108
+ return Animated.loop(shakeSequence);
109
+ }
110
+ return shakeSequence;
111
+ }
112
+ case 'sequence':
113
+ // For custom sequences, return null and handle separately
114
+ return null;
115
+ default:
116
+ return null;
117
+ }
118
+
119
+ // Reset to starting value
120
+ animatedValue.setValue(fromValue);
121
+
122
+ // Create the animation
123
+ let anim;
124
+ if (isAlternate) {
125
+ // Alternate: go to target then back
126
+ anim = Animated.sequence([Animated.timing(animatedValue, {
127
+ toValue: toValue,
128
+ duration: config.duration / 2,
129
+ easing: easingFn,
130
+ useNativeDriver: true
131
+ }), Animated.timing(animatedValue, {
132
+ toValue: fromValue,
133
+ duration: config.duration / 2,
134
+ easing: easingFn,
135
+ useNativeDriver: true
136
+ })]);
137
+ } else {
138
+ anim = Animated.timing(animatedValue, {
139
+ toValue: toValue,
140
+ duration: config.duration,
141
+ easing: easingFn,
142
+ useNativeDriver: true
143
+ });
144
+ }
145
+
146
+ // Apply looping
147
+ if (config.loop && config.iterations === -1) {
148
+ return Animated.loop(anim);
149
+ } else if (config.iterations > 1) {
150
+ return Animated.loop(anim, {
151
+ iterations: config.iterations
152
+ });
153
+ }
154
+ return anim;
155
+ }, [config, rotateValue, scaleValue, opacityValue, translateXValue]);
156
+
157
+ // Start animation
158
+ const start = useCallback(() => {
159
+ if (!config) return;
160
+
161
+ // Stop any existing animation
162
+ if (animationRef.current) {
163
+ animationRef.current.stop();
164
+ }
165
+
166
+ // Apply delay if specified
167
+ const startAnimation = () => {
168
+ const anim = createAnimation();
169
+ if (!anim) return;
170
+ animationRef.current = anim;
171
+ // Use queueMicrotask to defer state update (React 19 compatibility)
172
+ queueMicrotask(() => {
173
+ if (mountedRef.current) {
174
+ setState('running');
175
+ }
176
+ });
177
+ anim.start(({
178
+ finished
179
+ }) => {
180
+ if (mountedRef.current) {
181
+ // Use queueMicrotask to defer state update (React 19 compatibility)
182
+ queueMicrotask(() => {
183
+ if (mountedRef.current) {
184
+ if (finished) {
185
+ setState('completed');
186
+ onComplete?.();
187
+ } else {
188
+ setState('idle');
189
+ }
190
+ }
191
+ });
192
+ }
193
+ });
194
+ };
195
+ if (config.delay > 0) {
196
+ setTimeout(startAnimation, config.delay);
197
+ } else {
198
+ startAnimation();
199
+ }
200
+ }, [config, createAnimation, onComplete]);
201
+
202
+ // Stop animation
203
+ const stop = useCallback(() => {
204
+ if (animationRef.current) {
205
+ animationRef.current.stop();
206
+ animationRef.current = null;
207
+ }
208
+ // Use queueMicrotask to defer state update (React 19 compatibility)
209
+ queueMicrotask(() => {
210
+ if (mountedRef.current) {
211
+ setState('idle');
212
+ }
213
+ });
214
+ }, []);
215
+
216
+ // Pause animation (not directly supported, we stop it)
217
+ const pause = useCallback(() => {
218
+ if (animationRef.current) {
219
+ animationRef.current.stop();
220
+ }
221
+ // Use queueMicrotask to defer state update (React 19 compatibility)
222
+ queueMicrotask(() => {
223
+ if (mountedRef.current) {
224
+ setState('paused');
225
+ }
226
+ });
227
+ }, []);
228
+
229
+ // Resume animation
230
+ const resume = useCallback(() => {
231
+ if (state === 'paused') {
232
+ start();
233
+ }
234
+ }, [state, start]);
235
+
236
+ // Reset animation
237
+ const reset = useCallback(() => {
238
+ stop();
239
+ rotateValue.setValue(0);
240
+ scaleValue.setValue(1);
241
+ opacityValue.setValue(1);
242
+ translateXValue.setValue(0);
243
+ translateYValue.setValue(0);
244
+ }, [stop, rotateValue, scaleValue, opacityValue, translateXValue, translateYValue]);
245
+
246
+ // Auto-play on mount
247
+ useEffect(() => {
248
+ mountedRef.current = true;
249
+ if (animation && autoPlay) {
250
+ start();
251
+ }
252
+ return () => {
253
+ mountedRef.current = false;
254
+ stop();
255
+ };
256
+ }, [animation, autoPlay, start, stop]);
257
+
258
+ // Build animated style
259
+ const animatedStyle = useMemo(() => {
260
+ if (!config) return {};
261
+ switch (config.type) {
262
+ case 'rotate':
263
+ return {
264
+ transform: [{
265
+ rotate: rotateValue.interpolate({
266
+ inputRange: [0, 360],
267
+ outputRange: ['0deg', '360deg']
268
+ })
269
+ }]
270
+ };
271
+ case 'scale':
272
+ return {
273
+ transform: [{
274
+ scale: scaleValue
275
+ }]
276
+ };
277
+ case 'opacity':
278
+ return {
279
+ opacity: opacityValue
280
+ };
281
+ case 'translate':
282
+ return {
283
+ transform: [{
284
+ translateX: translateXValue
285
+ }, {
286
+ translateY: translateYValue
287
+ }]
288
+ };
289
+ default:
290
+ return {};
291
+ }
292
+ }, [config, rotateValue, scaleValue, opacityValue, translateXValue, translateYValue]);
293
+ return {
294
+ animatedStyle,
295
+ hasAnimation: !!animation,
296
+ state,
297
+ isAnimating: state === 'running',
298
+ start,
299
+ stop,
300
+ pause,
301
+ resume,
302
+ reset
303
+ };
304
+ }
305
+ export default useIconAnimation;
306
+ //# sourceMappingURL=useIconAnimation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useRef","useEffect","useCallback","useState","useMemo","Animated","resolveAnimation","getEasingFunction","useIconAnimation","options","animation","duration","loop","easing","delay","autoPlay","onComplete","state","setState","animationRef","mountedRef","rotateValue","Value","current","scaleValue","opacityValue","translateXValue","translateYValue","config","createAnimation","easingFn","isAlternate","direction","isReverse","fromValue","toValue","animatedValue","type","to","from","toT","shakeSequence","sequence","timing","x","useNativeDriver","iterations","setValue","anim","start","stop","startAnimation","queueMicrotask","finished","setTimeout","pause","resume","reset","animatedStyle","transform","rotate","interpolate","inputRange","outputRange","scale","opacity","translateX","translateY","hasAnimation","isAnimating"],"sourceRoot":"../../../src","sources":["animated/useIconAnimation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,201 @@
1
+ /**
2
+ * AST Utilities
3
+ * Helper functions for working with Babel AST nodes
4
+ */
5
+
6
+ /**
7
+ * Get the component name from a JSX opening element
8
+ * Handles: <Mdi />, <Heroicons />, etc.
9
+ */
10
+ export function getComponentName(node, t) {
11
+ const {
12
+ name
13
+ } = node;
14
+
15
+ // Simple identifier: <Mdi />
16
+ if (t.isJSXIdentifier(name)) {
17
+ return name.name;
18
+ }
19
+
20
+ // Member expression: <Icons.Mdi /> - not supported for now
21
+ if (t.isJSXMemberExpression(name)) {
22
+ return null;
23
+ }
24
+ return null;
25
+ }
26
+
27
+ /**
28
+ * Get the value of the 'name' attribute from a JSX element
29
+ * Handles: name="home", name='home'
30
+ * Returns null for dynamic values: name={iconName}
31
+ */
32
+ export function getNameAttribute(node, t) {
33
+ for (const attr of node.attributes) {
34
+ // Skip spread attributes: {...props}
35
+ if (t.isJSXSpreadAttribute(attr)) {
36
+ continue;
37
+ }
38
+
39
+ // Check if it's the 'name' attribute
40
+ if (t.isJSXAttribute(attr) && t.isJSXIdentifier(attr.name, {
41
+ name: 'name'
42
+ })) {
43
+ const {
44
+ value
45
+ } = attr;
46
+
47
+ // String literal: name="home"
48
+ if (t.isStringLiteral(value)) {
49
+ return value.value;
50
+ }
51
+
52
+ // JSX expression container: name={"home"} or name={'home'}
53
+ if (t.isJSXExpressionContainer(value)) {
54
+ const {
55
+ expression
56
+ } = value;
57
+
58
+ // String literal inside expression: name={"home"}
59
+ if (t.isStringLiteral(expression)) {
60
+ return expression.value;
61
+ }
62
+
63
+ // Template literal without expressions: name={`home`}
64
+ if (t.isTemplateLiteral(expression) && expression.expressions.length === 0) {
65
+ return expression.quasis[0]?.value.raw || null;
66
+ }
67
+
68
+ // Dynamic value - return null
69
+ return null;
70
+ }
71
+ return null;
72
+ }
73
+ }
74
+ return null;
75
+ }
76
+
77
+ /**
78
+ * Check if a call expression is calling a specific function by name
79
+ * Handles: prefetchIcons([...])
80
+ */
81
+ export function isCallTo(path, functionName, t) {
82
+ const {
83
+ callee
84
+ } = path.node;
85
+
86
+ // Direct function call: prefetchIcons()
87
+ if (t.isIdentifier(callee) && callee.name === functionName) {
88
+ return true;
89
+ }
90
+
91
+ // Member expression not supported: something.prefetchIcons()
92
+ return false;
93
+ }
94
+
95
+ /**
96
+ * Extract string values from an array expression
97
+ * Handles: ['mdi:home', 'mdi:settings']
98
+ * Skips dynamic values
99
+ */
100
+ export function extractArrayStrings(node, t) {
101
+ if (!node || !t.isArrayExpression(node)) {
102
+ return [];
103
+ }
104
+ const strings = [];
105
+ for (const element of node.elements) {
106
+ if (!element) continue;
107
+
108
+ // String literal
109
+ if (t.isStringLiteral(element)) {
110
+ strings.push(element.value);
111
+ }
112
+
113
+ // Template literal without expressions
114
+ if (t.isTemplateLiteral(element) && element.expressions.length === 0) {
115
+ const value = element.quasis[0]?.value.raw;
116
+ if (value) {
117
+ strings.push(value);
118
+ }
119
+ }
120
+ }
121
+ return strings;
122
+ }
123
+
124
+ /**
125
+ * Get location info from a node
126
+ */
127
+ export function getNodeLocation(node) {
128
+ return {
129
+ line: node.loc?.start.line ?? 0,
130
+ column: node.loc?.start.column ?? 0
131
+ };
132
+ }
133
+
134
+ /**
135
+ * Check if an icon name matches a pattern (supports wildcards)
136
+ * @example matchesPattern('mdi:home', 'mdi:*') => true
137
+ * @example matchesPattern('mdi:home', 'mdi:home') => true
138
+ * @example matchesPattern('mdi:home', 'heroicons:*') => false
139
+ */
140
+ export function matchesPattern(iconName, pattern) {
141
+ // Exact match
142
+ if (pattern === iconName) {
143
+ return true;
144
+ }
145
+
146
+ // Wildcard pattern
147
+ if (pattern.endsWith(':*')) {
148
+ const prefix = pattern.slice(0, -2);
149
+ return iconName.startsWith(prefix + ':');
150
+ }
151
+
152
+ // Glob-style pattern with * in the middle
153
+ if (pattern.includes('*')) {
154
+ const regex = new RegExp('^' + pattern.replace(/\*/g, '.*') + '$');
155
+ return regex.test(iconName);
156
+ }
157
+ return false;
158
+ }
159
+
160
+ /**
161
+ * Check if an icon should be included based on include/exclude patterns
162
+ */
163
+ export function shouldIncludeIcon(iconName, include, exclude) {
164
+ // Check exclude first
165
+ if (exclude?.some(pattern => matchesPattern(iconName, pattern))) {
166
+ return false;
167
+ }
168
+
169
+ // If no include patterns, include everything not excluded
170
+ if (!include || include.length === 0) {
171
+ return true;
172
+ }
173
+
174
+ // Check if matches any include pattern
175
+ return include.some(pattern => matchesPattern(iconName, pattern));
176
+ }
177
+
178
+ /**
179
+ * Validate icon name format
180
+ * Valid format: prefix:name (e.g., mdi:home)
181
+ */
182
+ export function isValidIconName(name) {
183
+ if (!name || typeof name !== 'string') {
184
+ return false;
185
+ }
186
+ const parts = name.split(':');
187
+ if (parts.length !== 2) {
188
+ return false;
189
+ }
190
+ const [prefix, iconName] = parts;
191
+
192
+ // Both parts must be non-empty
193
+ if (!prefix || !iconName) {
194
+ return false;
195
+ }
196
+
197
+ // Basic validation: alphanumeric and hyphens
198
+ const validPattern = /^[a-z0-9-]+$/i;
199
+ return validPattern.test(prefix) && validPattern.test(iconName);
200
+ }
201
+ //# sourceMappingURL=ast-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getComponentName","node","t","name","isJSXIdentifier","isJSXMemberExpression","getNameAttribute","attr","attributes","isJSXSpreadAttribute","isJSXAttribute","value","isStringLiteral","isJSXExpressionContainer","expression","isTemplateLiteral","expressions","length","quasis","raw","isCallTo","path","functionName","callee","isIdentifier","extractArrayStrings","isArrayExpression","strings","element","elements","push","getNodeLocation","line","loc","start","column","matchesPattern","iconName","pattern","endsWith","prefix","slice","startsWith","includes","regex","RegExp","replace","test","shouldIncludeIcon","include","exclude","some","isValidIconName","parts","split","validPattern"],"sourceRoot":"../../../src","sources":["babel/ast-utils.ts"],"mappings":"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","ignoreList":[]}