@mova-ui/react 0.1.0 → 0.4.1

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 (876) hide show
  1. package/README.md +70 -21
  2. package/bin/mova.mjs +38 -12
  3. package/dist/catalog/components/AnimatedButton.d.ts +9 -0
  4. package/dist/catalog/components/AnimatedButton.js +346 -0
  5. package/dist/catalog/components/IconSwap.d.ts +6 -0
  6. package/dist/catalog/components/IconSwap.js +9 -0
  7. package/dist/catalog/components/InViewRender.d.ts +4 -0
  8. package/dist/catalog/components/InViewRender.js +14 -0
  9. package/dist/catalog/components/PageTransitionCard.d.ts +9 -0
  10. package/dist/catalog/components/PageTransitionCard.js +110 -0
  11. package/dist/catalog/components/PageTransitionModal.d.ts +10 -0
  12. package/dist/catalog/components/PageTransitionModal.js +180 -0
  13. package/dist/catalog/components/PageTransitionOverlay.d.ts +9 -0
  14. package/dist/catalog/components/PageTransitionOverlay.js +7 -0
  15. package/dist/catalog/components/cards/CardArc5.d.ts +14 -0
  16. package/dist/catalog/components/cards/CardArc5.js +76 -0
  17. package/dist/catalog/components/cards/CardArc7.d.ts +14 -0
  18. package/dist/catalog/components/cards/CardArc7.js +77 -0
  19. package/dist/catalog/components/cards/CardCarousel.d.ts +12 -0
  20. package/dist/catalog/components/cards/CardCarousel.js +139 -0
  21. package/dist/catalog/components/cards/CardCascadeStagger.d.ts +9 -0
  22. package/dist/catalog/components/cards/CardCascadeStagger.js +64 -0
  23. package/dist/catalog/components/cards/CardCornerFan.d.ts +12 -0
  24. package/dist/catalog/components/cards/CardCornerFan.js +66 -0
  25. package/dist/catalog/components/cards/CardCoverFlow.d.ts +12 -0
  26. package/dist/catalog/components/cards/CardCoverFlow.js +115 -0
  27. package/dist/catalog/components/cards/CardLinearSpread.d.ts +12 -0
  28. package/dist/catalog/components/cards/CardLinearSpread.js +62 -0
  29. package/dist/catalog/components/cards/CardLongArc5.d.ts +14 -0
  30. package/dist/catalog/components/cards/CardLongArc5.js +76 -0
  31. package/dist/catalog/components/cards/CardScatterSpread.d.ts +9 -0
  32. package/dist/catalog/components/cards/CardScatterSpread.js +69 -0
  33. package/dist/catalog/components/cards/CardStampArc.d.ts +14 -0
  34. package/dist/catalog/components/cards/CardStampArc.js +101 -0
  35. package/dist/catalog/components/cards/CardTimeMachine.d.ts +8 -0
  36. package/dist/catalog/components/cards/CardTimeMachine.js +182 -0
  37. package/dist/catalog/components/cards/CardWheelFan.d.ts +9 -0
  38. package/dist/catalog/components/cards/CardWheelFan.js +68 -0
  39. package/dist/catalog/components/cards/FocusBlur.d.ts +14 -0
  40. package/dist/catalog/components/cards/FocusBlur.js +7 -0
  41. package/dist/catalog/components/css-animations/Dock.d.ts +6 -0
  42. package/dist/catalog/components/css-animations/Dock.js +93 -0
  43. package/dist/catalog/components/css-animations/FocusBlur.d.ts +4 -0
  44. package/dist/catalog/components/css-animations/FocusBlur.js +35 -0
  45. package/dist/catalog/components/css-animations/FrequencySelector.d.ts +6 -0
  46. package/dist/catalog/components/css-animations/FrequencySelector.js +100 -0
  47. package/dist/catalog/components/css-animations/MediaBetweenText.d.ts +34 -0
  48. package/dist/catalog/components/css-animations/MediaBetweenText.js +125 -0
  49. package/dist/catalog/components/css-animations/ScrambleHover.d.ts +16 -0
  50. package/dist/catalog/components/css-animations/ScrambleHover.js +101 -0
  51. package/dist/catalog/components/css-animations/TabBar.d.ts +6 -0
  52. package/dist/catalog/components/css-animations/TabBar.js +57 -0
  53. package/dist/catalog/components/css-animations/whimsical/AppleLoaders.d.ts +9 -0
  54. package/dist/catalog/components/css-animations/whimsical/AppleLoaders.js +57 -0
  55. package/dist/catalog/components/css-animations/whimsical/Area1.d.ts +7 -0
  56. package/dist/catalog/components/css-animations/whimsical/Area1.js +56 -0
  57. package/dist/catalog/components/css-animations/whimsical/Area6.d.ts +7 -0
  58. package/dist/catalog/components/css-animations/whimsical/Area6.js +53 -0
  59. package/dist/catalog/components/css-animations/whimsical/Bookmark.d.ts +7 -0
  60. package/dist/catalog/components/css-animations/whimsical/Bookmark.js +183 -0
  61. package/dist/catalog/components/css-animations/whimsical/ConceptTrios1.d.ts +37 -0
  62. package/dist/catalog/components/css-animations/whimsical/ConceptTrios1.js +253 -0
  63. package/dist/catalog/components/css-animations/whimsical/ConceptTrios2.d.ts +37 -0
  64. package/dist/catalog/components/css-animations/whimsical/ConceptTrios2.js +237 -0
  65. package/dist/catalog/components/css-animations/whimsical/ConceptTrios3.d.ts +73 -0
  66. package/dist/catalog/components/css-animations/whimsical/ConceptTrios3.js +441 -0
  67. package/dist/catalog/components/css-animations/whimsical/Curtain.d.ts +7 -0
  68. package/dist/catalog/components/css-animations/whimsical/Curtain.js +155 -0
  69. package/dist/catalog/components/css-animations/whimsical/Kakikaki.d.ts +7 -0
  70. package/dist/catalog/components/css-animations/whimsical/Kakikaki.js +67 -0
  71. package/dist/catalog/components/css-animations/whimsical/KineticTensionCapsule.d.ts +7 -0
  72. package/dist/catalog/components/css-animations/whimsical/KineticTensionCapsule.js +82 -0
  73. package/dist/catalog/components/css-animations/whimsical/MatrixGridLoader.d.ts +5 -0
  74. package/dist/catalog/components/css-animations/whimsical/MatrixGridLoader.js +88 -0
  75. package/dist/catalog/components/css-animations/whimsical/RedesignedPhysicsTrios.d.ts +103 -0
  76. package/dist/catalog/components/css-animations/whimsical/RedesignedPhysicsTrios.js +607 -0
  77. package/dist/catalog/components/css-animations/whimsical/Tissue.d.ts +7 -0
  78. package/dist/catalog/components/css-animations/whimsical/Tissue.js +111 -0
  79. package/dist/catalog/components/css-animations/whimsical/Tsumiki.d.ts +8 -0
  80. package/dist/catalog/components/css-animations/whimsical/Tsumiki.js +83 -0
  81. package/dist/catalog/components/css-animations/whimsical/WhimsicalVariations.d.ts +37 -0
  82. package/dist/catalog/components/css-animations/whimsical/WhimsicalVariations.js +325 -0
  83. package/dist/catalog/components/css-animations/whimsical/YuiPhysicsExperiments.d.ts +37 -0
  84. package/dist/catalog/components/css-animations/whimsical/YuiPhysicsExperiments.js +247 -0
  85. package/dist/catalog/components/css-animations/yui-components/RedesignedUiTrios.d.ts +19 -0
  86. package/dist/catalog/components/css-animations/yui-components/RedesignedUiTrios.js +174 -0
  87. package/dist/catalog/components/css-animations/yui-components/UiKitTrios.d.ts +19 -0
  88. package/dist/catalog/components/css-animations/yui-components/UiKitTrios.js +147 -0
  89. package/dist/catalog/components/css-animations/yui-components/YuiUiKit1.d.ts +29 -0
  90. package/dist/catalog/components/css-animations/yui-components/YuiUiKit1.js +317 -0
  91. package/dist/catalog/components/css-animations/yui-components/YuiUiKit2.d.ts +34 -0
  92. package/dist/catalog/components/css-animations/yui-components/YuiUiKit2.js +356 -0
  93. package/dist/catalog/components/dither-charts/ActivityHeatmap.d.ts +5 -0
  94. package/dist/catalog/components/dither-charts/ActivityHeatmap.js +8 -0
  95. package/dist/catalog/components/dither-charts/ChartCard.d.ts +2 -0
  96. package/dist/catalog/components/dither-charts/ChartCard.js +8 -0
  97. package/dist/catalog/components/dither-charts/DeviceUsageChart.d.ts +5 -0
  98. package/dist/catalog/components/dither-charts/DeviceUsageChart.js +8 -0
  99. package/dist/catalog/components/dither-charts/DitherBarChart.d.ts +5 -0
  100. package/dist/catalog/components/dither-charts/DitherBarChart.js +148 -0
  101. package/dist/catalog/components/dither-charts/DitherBook.d.ts +23 -0
  102. package/dist/catalog/components/dither-charts/DitherBook.js +352 -0
  103. package/dist/catalog/components/dither-charts/DitherChartsGrid.d.ts +9 -0
  104. package/dist/catalog/components/dither-charts/DitherChartsGrid.js +108 -0
  105. package/dist/catalog/components/dither-charts/DitherDonutChart.d.ts +7 -0
  106. package/dist/catalog/components/dither-charts/DitherDonutChart.js +8 -0
  107. package/dist/catalog/components/dither-charts/DitherFunnelChart.d.ts +5 -0
  108. package/dist/catalog/components/dither-charts/DitherFunnelChart.js +8 -0
  109. package/dist/catalog/components/dither-charts/DitherGrowthChart.d.ts +7 -0
  110. package/dist/catalog/components/dither-charts/DitherGrowthChart.js +8 -0
  111. package/dist/catalog/components/dither-charts/DitherHeatmapGrid.d.ts +5 -0
  112. package/dist/catalog/components/dither-charts/DitherHeatmapGrid.js +115 -0
  113. package/dist/catalog/components/dither-charts/DitherRadialChart.d.ts +5 -0
  114. package/dist/catalog/components/dither-charts/DitherRadialChart.js +114 -0
  115. package/dist/catalog/components/dither-charts/DitherScatterChart.d.ts +5 -0
  116. package/dist/catalog/components/dither-charts/DitherScatterChart.js +151 -0
  117. package/dist/catalog/components/dither-charts/DitherSparklineMatrix.d.ts +5 -0
  118. package/dist/catalog/components/dither-charts/DitherSparklineMatrix.js +89 -0
  119. package/dist/catalog/components/dither-charts/DitherStackedChart.d.ts +7 -0
  120. package/dist/catalog/components/dither-charts/DitherStackedChart.js +8 -0
  121. package/dist/catalog/components/dither-charts/MembersGrowthChart.d.ts +2 -0
  122. package/dist/catalog/components/dither-charts/MembersGrowthChart.js +8 -0
  123. package/dist/catalog/components/dither-charts/PaymentsChart.d.ts +2 -0
  124. package/dist/catalog/components/dither-charts/PaymentsChart.js +8 -0
  125. package/dist/catalog/components/dither-charts/RevenueLineChart.d.ts +5 -0
  126. package/dist/catalog/components/dither-charts/RevenueLineChart.js +8 -0
  127. package/dist/catalog/components/dither-charts/ServerGauge.d.ts +5 -0
  128. package/dist/catalog/components/dither-charts/ServerGauge.js +8 -0
  129. package/dist/catalog/components/dither-charts/SimpleCompExtracted.d.ts +6 -0
  130. package/dist/catalog/components/dither-charts/SimpleCompExtracted.js +423 -0
  131. package/dist/catalog/components/dither-charts/StorageUsageChart.d.ts +5 -0
  132. package/dist/catalog/components/dither-charts/StorageUsageChart.js +8 -0
  133. package/dist/catalog/components/dither-charts/TrafficBubble.d.ts +5 -0
  134. package/dist/catalog/components/dither-charts/TrafficBubble.js +8 -0
  135. package/dist/catalog/components/dither-charts/UptimeChart.d.ts +5 -0
  136. package/dist/catalog/components/dither-charts/UptimeChart.js +8 -0
  137. package/dist/catalog/components/dither-charts/lib/ditherPatterns.d.ts +7 -0
  138. package/dist/catalog/components/dither-charts/lib/ditherPatterns.js +107 -0
  139. package/dist/catalog/components/dither-charts/lib/recharts-legend.d.ts +8 -0
  140. package/dist/catalog/components/dither-charts/lib/recharts-legend.js +40 -0
  141. package/dist/catalog/components/dither-charts/lib/recharts-tooltip.d.ts +10 -0
  142. package/dist/catalog/components/dither-charts/lib/recharts-tooltip.js +7 -0
  143. package/dist/catalog/components/dither-charts/lib/utils.d.ts +3 -0
  144. package/dist/catalog/components/dither-charts/lib/utils.js +7 -0
  145. package/dist/catalog/components/forms/AnimatedFormElement.d.ts +8 -0
  146. package/dist/catalog/components/forms/AnimatedFormElement.js +412 -0
  147. package/dist/catalog/components/metrics/AnimatedMetricCard.d.ts +8 -0
  148. package/dist/catalog/components/metrics/AnimatedMetricCard.js +1049 -0
  149. package/dist/catalog/components/metrics/Budget.d.ts +1 -0
  150. package/dist/catalog/components/metrics/Budget.js +35 -0
  151. package/dist/catalog/components/metrics/CacheStatsCard.d.ts +1 -0
  152. package/dist/catalog/components/metrics/CacheStatsCard.js +88 -0
  153. package/dist/catalog/components/metrics/CourseProgressCard.d.ts +1 -0
  154. package/dist/catalog/components/metrics/CourseProgressCard.js +86 -0
  155. package/dist/catalog/components/metrics/CreditScoreCards.d.ts +1 -0
  156. package/dist/catalog/components/metrics/CreditScoreCards.js +139 -0
  157. package/dist/catalog/components/metrics/FeedbackCard.d.ts +1 -0
  158. package/dist/catalog/components/metrics/FeedbackCard.js +59 -0
  159. package/dist/catalog/components/metrics/FinanceDashboard.d.ts +1 -0
  160. package/dist/catalog/components/metrics/FinanceDashboard.js +164 -0
  161. package/dist/catalog/components/metrics/Growth.d.ts +1 -0
  162. package/dist/catalog/components/metrics/Growth.js +40 -0
  163. package/dist/catalog/components/metrics/GrowthCalendar.d.ts +1 -0
  164. package/dist/catalog/components/metrics/GrowthCalendar.js +87 -0
  165. package/dist/catalog/components/metrics/HealthCards.d.ts +1 -0
  166. package/dist/catalog/components/metrics/HealthCards.js +244 -0
  167. package/dist/catalog/components/metrics/MarketingCards.d.ts +1 -0
  168. package/dist/catalog/components/metrics/MarketingCards.js +70 -0
  169. package/dist/catalog/components/metrics/NetworkTelemetry.d.ts +1 -0
  170. package/dist/catalog/components/metrics/NetworkTelemetry.js +198 -0
  171. package/dist/catalog/components/metrics/NoiseCards.d.ts +1 -0
  172. package/dist/catalog/components/metrics/NoiseCards.js +61 -0
  173. package/dist/catalog/components/metrics/OverviewChart.d.ts +1 -0
  174. package/dist/catalog/components/metrics/OverviewChart.js +69 -0
  175. package/dist/catalog/components/metrics/ProgressIndicator.d.ts +1 -0
  176. package/dist/catalog/components/metrics/ProgressIndicator.js +35 -0
  177. package/dist/catalog/components/metrics/PromptsCard.d.ts +1 -0
  178. package/dist/catalog/components/metrics/PromptsCard.js +29 -0
  179. package/dist/catalog/components/metrics/RealTimeAlerts.d.ts +1 -0
  180. package/dist/catalog/components/metrics/RealTimeAlerts.js +64 -0
  181. package/dist/catalog/components/metrics/RunningStatsCard.d.ts +1 -0
  182. package/dist/catalog/components/metrics/RunningStatsCard.js +41 -0
  183. package/dist/catalog/components/metrics/SalesDashboard.d.ts +1 -0
  184. package/dist/catalog/components/metrics/SalesDashboard.js +156 -0
  185. package/dist/catalog/components/metrics/SalesOverview.d.ts +1 -0
  186. package/dist/catalog/components/metrics/SalesOverview.js +71 -0
  187. package/dist/catalog/components/metrics/SavingsCards.d.ts +1 -0
  188. package/dist/catalog/components/metrics/SavingsCards.js +118 -0
  189. package/dist/catalog/components/metrics/ServerPerformance.d.ts +1 -0
  190. package/dist/catalog/components/metrics/ServerPerformance.js +26 -0
  191. package/dist/catalog/components/metrics/StatusCards.d.ts +1 -0
  192. package/dist/catalog/components/metrics/StatusCards.js +165 -0
  193. package/dist/catalog/components/metrics/StockChartCard.d.ts +1 -0
  194. package/dist/catalog/components/metrics/StockChartCard.js +122 -0
  195. package/dist/catalog/components/metrics/SystemMetricsCard.d.ts +1 -0
  196. package/dist/catalog/components/metrics/SystemMetricsCard.js +129 -0
  197. package/dist/catalog/components/metrics/TimerCard.d.ts +1 -0
  198. package/dist/catalog/components/metrics/TimerCard.js +35 -0
  199. package/dist/catalog/components/metrics/UserMetrics.d.ts +1 -0
  200. package/dist/catalog/components/metrics/UserMetrics.js +128 -0
  201. package/dist/catalog/components/metrics/UsersChartCard.d.ts +1 -0
  202. package/dist/catalog/components/metrics/UsersChartCard.js +111 -0
  203. package/dist/catalog/components/metrics/VisitorsChartCard.d.ts +1 -0
  204. package/dist/catalog/components/metrics/VisitorsChartCard.js +178 -0
  205. package/dist/catalog/components/mono-charts/GitHubActivity.d.ts +30 -0
  206. package/dist/catalog/components/mono-charts/GitHubActivity.js +547 -0
  207. package/dist/catalog/components/mono-charts/MonoActivityHeatmap.d.ts +14 -0
  208. package/dist/catalog/components/mono-charts/MonoActivityHeatmap.js +170 -0
  209. package/dist/catalog/components/mono-charts/MonoRoundedAreaChart.d.ts +7 -0
  210. package/dist/catalog/components/mono-charts/MonoRoundedAreaChart.js +107 -0
  211. package/dist/catalog/components/mono-charts/MonoRoundedBarChart.d.ts +7 -0
  212. package/dist/catalog/components/mono-charts/MonoRoundedBarChart.js +121 -0
  213. package/dist/catalog/components/mono-charts/MonoRoundedBubbleChart.d.ts +7 -0
  214. package/dist/catalog/components/mono-charts/MonoRoundedBubbleChart.js +67 -0
  215. package/dist/catalog/components/mono-charts/MonoRoundedBulletChart.d.ts +7 -0
  216. package/dist/catalog/components/mono-charts/MonoRoundedBulletChart.js +64 -0
  217. package/dist/catalog/components/mono-charts/MonoRoundedCandlestickChart.d.ts +7 -0
  218. package/dist/catalog/components/mono-charts/MonoRoundedCandlestickChart.js +76 -0
  219. package/dist/catalog/components/mono-charts/MonoRoundedComposedChart.d.ts +7 -0
  220. package/dist/catalog/components/mono-charts/MonoRoundedComposedChart.js +117 -0
  221. package/dist/catalog/components/mono-charts/MonoRoundedDonutChart.d.ts +7 -0
  222. package/dist/catalog/components/mono-charts/MonoRoundedDonutChart.js +97 -0
  223. package/dist/catalog/components/mono-charts/MonoRoundedFunnelChart.d.ts +7 -0
  224. package/dist/catalog/components/mono-charts/MonoRoundedFunnelChart.js +65 -0
  225. package/dist/catalog/components/mono-charts/MonoRoundedGaugeArc.d.ts +7 -0
  226. package/dist/catalog/components/mono-charts/MonoRoundedGaugeArc.js +64 -0
  227. package/dist/catalog/components/mono-charts/MonoRoundedHeatmapChart.d.ts +7 -0
  228. package/dist/catalog/components/mono-charts/MonoRoundedHeatmapChart.js +56 -0
  229. package/dist/catalog/components/mono-charts/MonoRoundedKpiCardChart.d.ts +7 -0
  230. package/dist/catalog/components/mono-charts/MonoRoundedKpiCardChart.js +61 -0
  231. package/dist/catalog/components/mono-charts/MonoRoundedLineChart.d.ts +7 -0
  232. package/dist/catalog/components/mono-charts/MonoRoundedLineChart.js +142 -0
  233. package/dist/catalog/components/mono-charts/MonoRoundedMeterChart.d.ts +7 -0
  234. package/dist/catalog/components/mono-charts/MonoRoundedMeterChart.js +68 -0
  235. package/dist/catalog/components/mono-charts/MonoRoundedPolarChart.d.ts +7 -0
  236. package/dist/catalog/components/mono-charts/MonoRoundedPolarChart.js +67 -0
  237. package/dist/catalog/components/mono-charts/MonoRoundedPyramidChart.d.ts +7 -0
  238. package/dist/catalog/components/mono-charts/MonoRoundedPyramidChart.js +52 -0
  239. package/dist/catalog/components/mono-charts/MonoRoundedRadarChart.d.ts +7 -0
  240. package/dist/catalog/components/mono-charts/MonoRoundedRadarChart.js +70 -0
  241. package/dist/catalog/components/mono-charts/MonoRoundedRadialBarGroup.d.ts +7 -0
  242. package/dist/catalog/components/mono-charts/MonoRoundedRadialBarGroup.js +69 -0
  243. package/dist/catalog/components/mono-charts/MonoRoundedRadialGaugeChart.d.ts +7 -0
  244. package/dist/catalog/components/mono-charts/MonoRoundedRadialGaugeChart.js +68 -0
  245. package/dist/catalog/components/mono-charts/MonoRoundedRangeChart.d.ts +7 -0
  246. package/dist/catalog/components/mono-charts/MonoRoundedRangeChart.js +77 -0
  247. package/dist/catalog/components/mono-charts/MonoRoundedSankeyChart.d.ts +7 -0
  248. package/dist/catalog/components/mono-charts/MonoRoundedSankeyChart.js +66 -0
  249. package/dist/catalog/components/mono-charts/MonoRoundedScatterChart.d.ts +7 -0
  250. package/dist/catalog/components/mono-charts/MonoRoundedScatterChart.js +82 -0
  251. package/dist/catalog/components/mono-charts/MonoRoundedSparklineChart.d.ts +7 -0
  252. package/dist/catalog/components/mono-charts/MonoRoundedSparklineChart.js +73 -0
  253. package/dist/catalog/components/mono-charts/MonoRoundedStackedBarChart.d.ts +7 -0
  254. package/dist/catalog/components/mono-charts/MonoRoundedStackedBarChart.js +63 -0
  255. package/dist/catalog/components/mono-charts/MonoRoundedStepChart.d.ts +7 -0
  256. package/dist/catalog/components/mono-charts/MonoRoundedStepChart.js +72 -0
  257. package/dist/catalog/components/mono-charts/MonoRoundedStreamChart.d.ts +7 -0
  258. package/dist/catalog/components/mono-charts/MonoRoundedStreamChart.js +98 -0
  259. package/dist/catalog/components/mono-charts/MonoRoundedTreemapChart.d.ts +7 -0
  260. package/dist/catalog/components/mono-charts/MonoRoundedTreemapChart.js +56 -0
  261. package/dist/catalog/components/mono-charts/MonoRoundedWaterfallChart.d.ts +7 -0
  262. package/dist/catalog/components/mono-charts/MonoRoundedWaterfallChart.js +67 -0
  263. package/dist/catalog/components/simple-comp/ActivityHeatmap.d.ts +5 -0
  264. package/dist/catalog/components/simple-comp/ActivityHeatmap.js +7 -0
  265. package/dist/catalog/components/simple-comp/ChartCard.d.ts +2 -0
  266. package/dist/catalog/components/simple-comp/ChartCard.js +8 -0
  267. package/dist/catalog/components/simple-comp/DeviceUsageChart.d.ts +5 -0
  268. package/dist/catalog/components/simple-comp/DeviceUsageChart.js +7 -0
  269. package/dist/catalog/components/simple-comp/DitherBarChart.d.ts +5 -0
  270. package/dist/catalog/components/simple-comp/DitherBarChart.js +148 -0
  271. package/dist/catalog/components/simple-comp/DitherBook.d.ts +23 -0
  272. package/dist/catalog/components/simple-comp/DitherBook.js +352 -0
  273. package/dist/catalog/components/simple-comp/DitherChartsGrid.d.ts +9 -0
  274. package/dist/catalog/components/simple-comp/DitherChartsGrid.js +107 -0
  275. package/dist/catalog/components/simple-comp/DitherDonutChart.d.ts +7 -0
  276. package/dist/catalog/components/simple-comp/DitherDonutChart.js +7 -0
  277. package/dist/catalog/components/simple-comp/DitherFunnelChart.d.ts +5 -0
  278. package/dist/catalog/components/simple-comp/DitherFunnelChart.js +7 -0
  279. package/dist/catalog/components/simple-comp/DitherGrowthChart.d.ts +7 -0
  280. package/dist/catalog/components/simple-comp/DitherGrowthChart.js +7 -0
  281. package/dist/catalog/components/simple-comp/DitherHeatmapGrid.d.ts +5 -0
  282. package/dist/catalog/components/simple-comp/DitherHeatmapGrid.js +115 -0
  283. package/dist/catalog/components/simple-comp/DitherRadialChart.d.ts +5 -0
  284. package/dist/catalog/components/simple-comp/DitherRadialChart.js +114 -0
  285. package/dist/catalog/components/simple-comp/DitherScatterChart.d.ts +5 -0
  286. package/dist/catalog/components/simple-comp/DitherScatterChart.js +151 -0
  287. package/dist/catalog/components/simple-comp/DitherSparklineMatrix.d.ts +5 -0
  288. package/dist/catalog/components/simple-comp/DitherSparklineMatrix.js +89 -0
  289. package/dist/catalog/components/simple-comp/DitherStackedChart.d.ts +7 -0
  290. package/dist/catalog/components/simple-comp/DitherStackedChart.js +7 -0
  291. package/dist/catalog/components/simple-comp/MembersGrowthChart.d.ts +2 -0
  292. package/dist/catalog/components/simple-comp/MembersGrowthChart.js +8 -0
  293. package/dist/catalog/components/simple-comp/PaymentsChart.d.ts +2 -0
  294. package/dist/catalog/components/simple-comp/PaymentsChart.js +8 -0
  295. package/dist/catalog/components/simple-comp/RevenueLineChart.d.ts +5 -0
  296. package/dist/catalog/components/simple-comp/RevenueLineChart.js +7 -0
  297. package/dist/catalog/components/simple-comp/ServerGauge.d.ts +5 -0
  298. package/dist/catalog/components/simple-comp/ServerGauge.js +7 -0
  299. package/dist/catalog/components/simple-comp/SimpleCompExtracted.d.ts +6 -0
  300. package/dist/catalog/components/simple-comp/SimpleCompExtracted.js +423 -0
  301. package/dist/catalog/components/simple-comp/StorageUsageChart.d.ts +5 -0
  302. package/dist/catalog/components/simple-comp/StorageUsageChart.js +7 -0
  303. package/dist/catalog/components/simple-comp/TrafficBubble.d.ts +5 -0
  304. package/dist/catalog/components/simple-comp/TrafficBubble.js +7 -0
  305. package/dist/catalog/components/simple-comp/UptimeChart.d.ts +5 -0
  306. package/dist/catalog/components/simple-comp/UptimeChart.js +7 -0
  307. package/dist/catalog/components/simple-comp/lib/utils.d.ts +3 -0
  308. package/dist/catalog/components/simple-comp/lib/utils.js +7 -0
  309. package/dist/catalog/components/text/AnimatedText.d.ts +8 -0
  310. package/dist/catalog/components/text/AnimatedText.js +554 -0
  311. package/dist/catalog/components/toggles/AnimatedToggle.d.ts +8 -0
  312. package/dist/catalog/components/toggles/AnimatedToggle.js +243 -0
  313. package/dist/catalog/data/buttons.d.ts +14 -0
  314. package/dist/catalog/data/buttons.js +94 -0
  315. package/dist/catalog/data/ditherCharts.d.ts +12 -0
  316. package/dist/catalog/data/ditherCharts.js +11 -0
  317. package/dist/catalog/data/formElements.d.ts +9 -0
  318. package/dist/catalog/data/formElements.js +117 -0
  319. package/dist/catalog/data/installCommand.d.ts +3 -0
  320. package/dist/catalog/data/installCommand.js +10 -0
  321. package/dist/catalog/data/metrics.d.ts +10 -0
  322. package/dist/catalog/data/metrics.js +136 -0
  323. package/dist/catalog/data/supportedRegistryIds.d.ts +1 -0
  324. package/dist/catalog/data/supportedRegistryIds.js +7 -0
  325. package/dist/catalog/data/textAnimations.d.ts +10 -0
  326. package/dist/catalog/data/textAnimations.js +65 -0
  327. package/dist/catalog/data/toggles.d.ts +9 -0
  328. package/dist/catalog/data/toggles.js +96 -0
  329. package/dist/catalog/data/transitions.d.ts +11 -0
  330. package/dist/catalog/data/transitions.js +198 -0
  331. package/dist/catalog/hooks/useCanvasSetup.d.ts +25 -0
  332. package/dist/catalog/hooks/useCanvasSetup.js +7 -0
  333. package/dist/catalog/hooks/useIsMobile.d.ts +5 -0
  334. package/dist/catalog/hooks/useIsMobile.js +7 -0
  335. package/dist/catalog/hooks/useLoopFlg.d.ts +1 -0
  336. package/dist/catalog/hooks/useLoopFlg.js +7 -0
  337. package/dist/catalog/hooks/useWebHaptics.d.ts +4 -0
  338. package/dist/catalog/hooks/useWebHaptics.js +7 -0
  339. package/dist/catalog/utils/cn.d.ts +1 -0
  340. package/dist/catalog/utils/cn.js +7 -0
  341. package/dist/catalog-chunks/chunk-3QX6CASP.js +93 -0
  342. package/dist/catalog-chunks/chunk-3TYA5TCG.js +34 -0
  343. package/dist/catalog-chunks/chunk-4M7HZE4Z.js +107 -0
  344. package/dist/catalog-chunks/chunk-62CFYJEA.js +141 -0
  345. package/dist/catalog-chunks/chunk-7GU353UA.js +261 -0
  346. package/dist/catalog-chunks/chunk-7XF4PVBJ.js +85 -0
  347. package/dist/catalog-chunks/chunk-AJLUWL56.js +99 -0
  348. package/dist/catalog-chunks/chunk-B64DVBSK.js +105 -0
  349. package/dist/catalog-chunks/chunk-BSR45QIS.js +349 -0
  350. package/dist/catalog-chunks/chunk-E2GLS5WF.js +325 -0
  351. package/dist/catalog-chunks/chunk-EC4R54F3.js +35 -0
  352. package/dist/catalog-chunks/chunk-F47LIDB6.js +19 -0
  353. package/dist/catalog-chunks/chunk-FXF53HPE.js +476 -0
  354. package/dist/catalog-chunks/chunk-GDCQNKP7.js +45 -0
  355. package/dist/catalog-chunks/chunk-I4BVACNZ.js +349 -0
  356. package/dist/catalog-chunks/chunk-I5MYV6VF.js +248 -0
  357. package/dist/catalog-chunks/chunk-JSEX6PVP.js +84 -0
  358. package/dist/catalog-chunks/chunk-KN7YEZTH.js +294 -0
  359. package/dist/catalog-chunks/chunk-KRXJK3FG.js +19 -0
  360. package/dist/catalog-chunks/chunk-KTP5OAIN.js +17 -0
  361. package/dist/catalog-chunks/chunk-KYYXENHF.js +105 -0
  362. package/dist/catalog-chunks/chunk-M2O2SNWE.js +132 -0
  363. package/dist/catalog-chunks/chunk-NITEDAMY.js +325 -0
  364. package/dist/catalog-chunks/chunk-OTFAZXKB.js +8 -0
  365. package/dist/catalog-chunks/chunk-OVOLUMYF.js +452 -0
  366. package/dist/catalog-chunks/chunk-OWYADZUR.js +156 -0
  367. package/dist/catalog-chunks/chunk-PD47DK6W.js +100 -0
  368. package/dist/catalog-chunks/chunk-QITBAUBH.js +101 -0
  369. package/dist/catalog-chunks/chunk-QXWREUPI.js +56 -0
  370. package/dist/catalog-chunks/chunk-RKATUMDL.js +244 -0
  371. package/dist/catalog-chunks/chunk-S7UYABQK.js +99 -0
  372. package/dist/catalog-chunks/chunk-SIL53FHG.js +169 -0
  373. package/dist/catalog-chunks/chunk-SWPGAN45.js +28 -0
  374. package/dist/catalog-chunks/chunk-VCDBPAAS.js +85 -0
  375. package/dist/catalog-chunks/chunk-VMGI6CMO.js +15 -0
  376. package/dist/catalog-chunks/chunk-W7ZMAKCC.js +53 -0
  377. package/dist/catalog-chunks/chunk-XDDKOCZ7.js +89 -0
  378. package/dist/catalog-chunks/chunk-YGLQ5K3F.js +452 -0
  379. package/dist/catalog-chunks/chunk-YHU4BQDL.js +292 -0
  380. package/dist/catalog-chunks/chunk-ZCRXHCGS.js +108 -0
  381. package/dist/catalog-chunks/chunk-ZUQZVT7M.js +87 -0
  382. package/dist/catalog-chunks/chunk-ZXDZMNRZ.js +267 -0
  383. package/dist/index.d.ts +27 -0
  384. package/dist/index.js +6237 -879
  385. package/dist/styles.css +1 -1
  386. package/dist/ui/ai/ai-approval-card.d.ts +28 -0
  387. package/dist/ui/ai/ai-code-block.d.ts +33 -0
  388. package/dist/ui/ai/ai-context-meter.d.ts +14 -0
  389. package/dist/ui/ai/ai-fine-tune-card.d.ts +43 -0
  390. package/dist/ui/ai/ai-prompt-bar.d.ts +25 -0
  391. package/dist/ui/ai/ai-sidebar-nav.d.ts +26 -0
  392. package/dist/ui/ai/ai-sources.d.ts +16 -0
  393. package/dist/ui/ai/ai-suggestions.d.ts +12 -0
  394. package/dist/ui/ai/ai-task-list.d.ts +15 -0
  395. package/dist/ui/ai/ai-tool-call.d.ts +13 -0
  396. package/dist/ui/ai/rudder-issue-board.d.ts +21 -0
  397. package/dist/ui/animated-sidebar.d.ts +9 -0
  398. package/dist/ui/hover/inset-button.d.ts +16 -0
  399. package/dist/ui/loading/analyzing-image.d.ts +2 -0
  400. package/dist/ui/loading/border-trail-loading.d.ts +9 -0
  401. package/dist/ui/loading/wandering-eyes.d.ts +10 -0
  402. package/dist/ui/patterns/animated-tags.d.ts +14 -0
  403. package/dist/ui/patterns/expanding-icon-tabs.d.ts +8 -0
  404. package/dist/ui/patterns/gooey-popover.d.ts +24 -0
  405. package/package.json +79 -14
  406. package/registry/1.json +19 -0
  407. package/registry/10.json +19 -0
  408. package/registry/11.json +19 -0
  409. package/registry/12.json +19 -0
  410. package/registry/13.json +19 -0
  411. package/registry/14.json +19 -0
  412. package/registry/15.json +19 -0
  413. package/registry/16.json +19 -0
  414. package/registry/17.json +19 -0
  415. package/registry/18.json +19 -0
  416. package/registry/19.json +19 -0
  417. package/registry/2.json +19 -0
  418. package/registry/20.json +19 -0
  419. package/registry/21.json +19 -0
  420. package/registry/22.json +19 -0
  421. package/registry/23.json +19 -0
  422. package/registry/24.json +19 -0
  423. package/registry/25.json +19 -0
  424. package/registry/26.json +19 -0
  425. package/registry/27.json +19 -0
  426. package/registry/28.json +19 -0
  427. package/registry/29.json +19 -0
  428. package/registry/3.json +19 -0
  429. package/registry/30.json +19 -0
  430. package/registry/31.json +19 -0
  431. package/registry/32.json +19 -0
  432. package/registry/33.json +19 -0
  433. package/registry/34.json +19 -0
  434. package/registry/35.json +19 -0
  435. package/registry/36.json +16 -0
  436. package/registry/37.json +16 -0
  437. package/registry/4.json +19 -0
  438. package/registry/5.json +19 -0
  439. package/registry/6.json +19 -0
  440. package/registry/7.json +19 -0
  441. package/registry/8.json +19 -0
  442. package/registry/9.json +19 -0
  443. package/registry/LICENSE.third-party +542 -0
  444. package/registry/ab-segmented-tabs.json +18 -0
  445. package/registry/accordion-blind.json +15 -0
  446. package/registry/accordion-loader.json +9 -0
  447. package/registry/ai-approval-card.json +17 -0
  448. package/registry/ai-code-block.json +19 -0
  449. package/registry/ai-context-meter.json +19 -0
  450. package/registry/ai-fine-tune-card.json +19 -0
  451. package/registry/ai-prompt-bar.json +17 -0
  452. package/registry/ai-sidebar-nav.json +17 -0
  453. package/registry/ai-sources.json +20 -0
  454. package/registry/ai-suggestions.json +19 -0
  455. package/registry/ai-task-list.json +20 -0
  456. package/registry/ai-tool-call.json +20 -0
  457. package/registry/analyzing-image.json +17 -0
  458. package/registry/animated-sidebar.json +19 -0
  459. package/registry/animated-tags.json +19 -0
  460. package/registry/app-icon-load.json +9 -0
  461. package/registry/apple-breathe.json +9 -0
  462. package/registry/apple-equalizer.json +9 -0
  463. package/registry/apple-icon-morph.json +9 -0
  464. package/registry/apple-pulse-dots.json +9 -0
  465. package/registry/apple-scale-pulse.json +9 -0
  466. package/registry/apple-sound-wave.json +9 -0
  467. package/registry/apple-text-reveal.json +9 -0
  468. package/registry/apple-unlock.json +9 -0
  469. package/registry/arc-tracer.json +9 -0
  470. package/registry/bar-cascade.json +9 -0
  471. package/registry/bar-sweep.json +9 -0
  472. package/registry/blur-text.json +9 -0
  473. package/registry/blur-up-char.json +19 -0
  474. package/registry/blur-up-word.json +19 -0
  475. package/registry/bobbing-dots.json +9 -0
  476. package/registry/bookmark-corner-peel.json +15 -0
  477. package/registry/bookmark-save-pill.json +18 -0
  478. package/registry/bookmark-toggle.json +19 -0
  479. package/registry/border-trail-loading.json +17 -0
  480. package/registry/bounce-dots.json +9 -0
  481. package/registry/bounce-in-char.json +19 -0
  482. package/registry/bouncing-bars.json +9 -0
  483. package/registry/bouncing-dots.json +9 -0
  484. package/registry/bouncing-lines.json +9 -0
  485. package/registry/bouncing-square.json +9 -0
  486. package/registry/breathe-ring.json +9 -0
  487. package/registry/breathing-glow.json +9 -0
  488. package/registry/breathing-square.json +9 -0
  489. package/registry/btn-1.json +19 -0
  490. package/registry/btn-10.json +19 -0
  491. package/registry/btn-11.json +19 -0
  492. package/registry/btn-12.json +19 -0
  493. package/registry/btn-13.json +19 -0
  494. package/registry/btn-14.json +19 -0
  495. package/registry/btn-15.json +19 -0
  496. package/registry/btn-16.json +19 -0
  497. package/registry/btn-17.json +19 -0
  498. package/registry/btn-18.json +19 -0
  499. package/registry/btn-19.json +19 -0
  500. package/registry/btn-2.json +19 -0
  501. package/registry/btn-20.json +19 -0
  502. package/registry/btn-21.json +19 -0
  503. package/registry/btn-22.json +19 -0
  504. package/registry/btn-23.json +19 -0
  505. package/registry/btn-24.json +19 -0
  506. package/registry/btn-25.json +19 -0
  507. package/registry/btn-26.json +19 -0
  508. package/registry/btn-27.json +19 -0
  509. package/registry/btn-28.json +19 -0
  510. package/registry/btn-29.json +19 -0
  511. package/registry/btn-3.json +19 -0
  512. package/registry/btn-30.json +19 -0
  513. package/registry/btn-31.json +19 -0
  514. package/registry/btn-32.json +19 -0
  515. package/registry/btn-33.json +19 -0
  516. package/registry/btn-34.json +19 -0
  517. package/registry/btn-35.json +19 -0
  518. package/registry/btn-36.json +16 -0
  519. package/registry/btn-37.json +16 -0
  520. package/registry/btn-4.json +19 -0
  521. package/registry/btn-5.json +19 -0
  522. package/registry/btn-6.json +19 -0
  523. package/registry/btn-7.json +19 -0
  524. package/registry/btn-8.json +19 -0
  525. package/registry/btn-9.json +19 -0
  526. package/registry/button-slide-arrow.json +19 -0
  527. package/registry/cacheable-bandwidth-cost.json +19 -0
  528. package/registry/card-arc-5.json +18 -0
  529. package/registry/card-arc-7.json +18 -0
  530. package/registry/card-carousel-mono.json +19 -0
  531. package/registry/card-carousel.json +19 -0
  532. package/registry/card-cascade-stagger.json +18 -0
  533. package/registry/card-corner-fan.json +18 -0
  534. package/registry/card-cover-flow-mono.json +19 -0
  535. package/registry/card-cover-flow.json +19 -0
  536. package/registry/card-deck-cascade.json +15 -0
  537. package/registry/card-glance-preview.json +18 -0
  538. package/registry/card-hover.json +9 -0
  539. package/registry/card-linear-spread.json +18 -0
  540. package/registry/card-long-arc-5.json +18 -0
  541. package/registry/card-scatter-spread.json +18 -0
  542. package/registry/card-stack-peel.json +15 -0
  543. package/registry/card-stamp-arc.json +18 -0
  544. package/registry/card-time-machine-mono.json +18 -0
  545. package/registry/card-time-machine.json +18 -0
  546. package/registry/card-wheel-fan.json +18 -0
  547. package/registry/category-select.json +18 -0
  548. package/registry/character-stagger.json +9 -0
  549. package/registry/checkbox-draw.json +19 -0
  550. package/registry/checkmark-draw.json +19 -0
  551. package/registry/circle-toggle.json +19 -0
  552. package/registry/circuit-trace-draw.json +15 -0
  553. package/registry/circular-bars.json +9 -0
  554. package/registry/circular-create-button.json +16 -0
  555. package/registry/classic-spinner.json +9 -0
  556. package/registry/classic-toggle.json +9 -0
  557. package/registry/clock-spinner.json +9 -0
  558. package/registry/comet-spinner.json +9 -0
  559. package/registry/compass-needle-deflect.json +15 -0
  560. package/registry/concentric-pulse.json +9 -0
  561. package/registry/concentric-ring.json +9 -0
  562. package/registry/concentric-squares.json +9 -0
  563. package/registry/context-menu.json +18 -0
  564. package/registry/conveyor-loop.json +9 -0
  565. package/registry/credit-score-barcode-meter.json +19 -0
  566. package/registry/cross-spinner.json +9 -0
  567. package/registry/cube-flip-spring.json +9 -0
  568. package/registry/cursor-trail.json +9 -0
  569. package/registry/dash-ring.json +9 -0
  570. package/registry/dashed-spiral.json +9 -0
  571. package/registry/date-position-selector.json +18 -0
  572. package/registry/dia-text-reveal.json +19 -0
  573. package/registry/diamond-grid.json +9 -0
  574. package/registry/diamond-rotate-spring.json +9 -0
  575. package/registry/dislike-toggle.json +19 -0
  576. package/registry/dither-book.json +19 -0
  577. package/registry/domino-cascade.json +15 -0
  578. package/registry/dot-spinner.json +9 -0
  579. package/registry/dots-ring.json +9 -0
  580. package/registry/double-bounce-toggle.json +19 -0
  581. package/registry/double-ring.json +9 -0
  582. package/registry/download-icons.json +18 -0
  583. package/registry/drop-dot.json +9 -0
  584. package/registry/drop-in-char.json +19 -0
  585. package/registry/droplet-squish.json +15 -0
  586. package/registry/dual-arc.json +9 -0
  587. package/registry/dual-magnet-dipole.json +15 -0
  588. package/registry/dynamic-island.json +9 -0
  589. package/registry/elastic-bars.json +9 -0
  590. package/registry/elastic-square.json +9 -0
  591. package/registry/elastic-tag-snap.json +15 -0
  592. package/registry/error-shake.json +19 -0
  593. package/registry/expanding-cross.json +9 -0
  594. package/registry/expanding-icon-tabs.json +17 -0
  595. package/registry/face-id-scan.json +9 -0
  596. package/registry/fade-arc.json +9 -0
  597. package/registry/fade-dots.json +9 -0
  598. package/registry/fade-down.json +9 -0
  599. package/registry/fade-in-char.json +19 -0
  600. package/registry/fade-in-text.json +19 -0
  601. package/registry/fade-in-word.json +19 -0
  602. package/registry/fade-in.json +9 -0
  603. package/registry/fade-up.json +9 -0
  604. package/registry/file-upload-dropzone.json +19 -0
  605. package/registry/filter-tag-pill.json +18 -0
  606. package/registry/flip-square.json +9 -0
  607. package/registry/flip-x-char.json +19 -0
  608. package/registry/flip-y-char.json +19 -0
  609. package/registry/float-char.json +19 -0
  610. package/registry/float-word.json +19 -0
  611. package/registry/floating-diamonds.json +9 -0
  612. package/registry/floating-label-input.json +19 -0
  613. package/registry/fluid-bars.json +9 -0
  614. package/registry/fluid-diamond.json +9 -0
  615. package/registry/fluid-dot-orbit.json +9 -0
  616. package/registry/fluid-skeleton.json +9 -0
  617. package/registry/focus-blur.json +18 -0
  618. package/registry/form-submit-button.json +19 -0
  619. package/registry/french-doors-3d.json +18 -0
  620. package/registry/gear-tooth-step.json +15 -0
  621. package/registry/gears.json +9 -0
  622. package/registry/gelatin-wobble.json +15 -0
  623. package/registry/geometric-iris-shutter.json +15 -0
  624. package/registry/glassmorphic-card.json +9 -0
  625. package/registry/glow-button.json +9 -0
  626. package/registry/glow-text.json +19 -0
  627. package/registry/gooey-popover.json +18 -0
  628. package/registry/gradient-arc.json +9 -0
  629. package/registry/gradient-shimmer.json +18 -0
  630. package/registry/grid-dots.json +9 -0
  631. package/registry/haptic-ring.json +9 -0
  632. package/registry/heartbeat.json +9 -0
  633. package/registry/hex-lattice-draw.json +15 -0
  634. package/registry/hexagon-spinner.json +9 -0
  635. package/registry/hourglass.json +9 -0
  636. package/registry/hover-lift-char.json +19 -0
  637. package/registry/hover-lift-word.json +19 -0
  638. package/registry/hover-link-card.json +18 -0
  639. package/registry/hover-scale-char.json +19 -0
  640. package/registry/hover-scale-word.json +19 -0
  641. package/registry/inertia-skid-stop.json +15 -0
  642. package/registry/infinity-path.json +9 -0
  643. package/registry/input-focus-glow.json +19 -0
  644. package/registry/inset-action-button.json +16 -0
  645. package/registry/inset-button.json +17 -0
  646. package/registry/intersecting-rings.json +9 -0
  647. package/registry/ios-spinner.json +9 -0
  648. package/registry/kinetic-metronome-tick.json +15 -0
  649. package/registry/kinetic-tension-capsule.json +15 -0
  650. package/registry/light-dark-morph.json +18 -0
  651. package/registry/like-toggle.json +19 -0
  652. package/registry/line-spinner.json +9 -0
  653. package/registry/liquid-dots.json +9 -0
  654. package/registry/mac-terminal.json +9 -0
  655. package/registry/magnetic-button.json +9 -0
  656. package/registry/magnetic-disks.json +15 -0
  657. package/registry/magnetic-dots.json +9 -0
  658. package/registry/magnetic-slide-btn.json +18 -0
  659. package/registry/manifest.json +11258 -0
  660. package/registry/matrix-grid-loader.json +15 -0
  661. package/registry/minimal-triangle.json +9 -0
  662. package/registry/modular-tile-snap.json +15 -0
  663. package/registry/mono-activity-blue.json +18 -0
  664. package/registry/mono-activity-green.json +18 -0
  665. package/registry/mono-activity-purple.json +18 -0
  666. package/registry/mono-heatmap.json +19 -0
  667. package/registry/mono-rounded-area.json +18 -0
  668. package/registry/mono-rounded-bar.json +18 -0
  669. package/registry/mono-rounded-bubble.json +18 -0
  670. package/registry/mono-rounded-bullet.json +16 -0
  671. package/registry/mono-rounded-candlestick.json +16 -0
  672. package/registry/mono-rounded-composed.json +18 -0
  673. package/registry/mono-rounded-donut.json +18 -0
  674. package/registry/mono-rounded-funnel.json +18 -0
  675. package/registry/mono-rounded-gauge-arc.json +18 -0
  676. package/registry/mono-rounded-heatmap.json +16 -0
  677. package/registry/mono-rounded-kpi.json +18 -0
  678. package/registry/mono-rounded-line.json +18 -0
  679. package/registry/mono-rounded-meter.json +18 -0
  680. package/registry/mono-rounded-polar.json +18 -0
  681. package/registry/mono-rounded-pyramid.json +16 -0
  682. package/registry/mono-rounded-radar.json +18 -0
  683. package/registry/mono-rounded-radial-gauge.json +18 -0
  684. package/registry/mono-rounded-radial-group.json +18 -0
  685. package/registry/mono-rounded-range.json +18 -0
  686. package/registry/mono-rounded-sankey.json +16 -0
  687. package/registry/mono-rounded-scatter.json +18 -0
  688. package/registry/mono-rounded-sparkline.json +18 -0
  689. package/registry/mono-rounded-stacked-bar.json +18 -0
  690. package/registry/mono-rounded-step.json +18 -0
  691. package/registry/mono-rounded-stream.json +18 -0
  692. package/registry/mono-rounded-treemap.json +16 -0
  693. package/registry/mono-rounded-waterfall.json +18 -0
  694. package/registry/mono-stock.json +19 -0
  695. package/registry/morph-action-pill.json +18 -0
  696. package/registry/morph-dot-ring.json +9 -0
  697. package/registry/morph-loader.json +9 -0
  698. package/registry/morph-toggle.json +19 -0
  699. package/registry/morphing-bars.json +9 -0
  700. package/registry/morphing-infinity.json +9 -0
  701. package/registry/morphing-ring.json +9 -0
  702. package/registry/morphing-shape.json +9 -0
  703. package/registry/mouse-follow.json +9 -0
  704. package/registry/multi-select-chips.json +19 -0
  705. package/registry/multi-tab-bar.json +18 -0
  706. package/registry/neon-sign-draw.json +15 -0
  707. package/registry/nested-orbital-gimbal.json +15 -0
  708. package/registry/network-telemetry-matrix.json +19 -0
  709. package/registry/newtons-cradle.json +9 -0
  710. package/registry/noise-decibel-level.json +19 -0
  711. package/registry/obsidian-liquid-wave.json +16 -0
  712. package/registry/offset-rings.json +9 -0
  713. package/registry/orbiting-circles.json +9 -0
  714. package/registry/orbiting-dot.json +9 -0
  715. package/registry/origami-envelope-unfold.json +15 -0
  716. package/registry/origami-shape.json +9 -0
  717. package/registry/otp-input.json +19 -0
  718. package/registry/overview-bar-scrubber-card.json +19 -0
  719. package/registry/page-transition.json +11 -0
  720. package/registry/page-turn-curl.json +15 -0
  721. package/registry/password-toggle.json +19 -0
  722. package/registry/pendulum-bubble-level.json +15 -0
  723. package/registry/pendulum.json +9 -0
  724. package/registry/perspective-flip-stage.json +18 -0
  725. package/registry/perspective-flip.json +18 -0
  726. package/registry/perspective-layout-switcher.json +18 -0
  727. package/registry/physics-dock.json +17 -0
  728. package/registry/pill-tabs.json +19 -0
  729. package/registry/plus-minus-toggle.json +18 -0
  730. package/registry/presets.json +9 -0
  731. package/registry/prism-block-stack.json +15 -0
  732. package/registry/progress-indicator-piano.json +19 -0
  733. package/registry/progress-indicator.json +9 -0
  734. package/registry/progress-stepper.json +18 -0
  735. package/registry/pulsating-dots.json +9 -0
  736. package/registry/pulse-char.json +19 -0
  737. package/registry/pulse-dot.json +9 -0
  738. package/registry/pulse-dots.json +9 -0
  739. package/registry/pulse-square.json +9 -0
  740. package/registry/pulse-word.json +19 -0
  741. package/registry/pulse.json +9 -0
  742. package/registry/pumping-heart.json +9 -0
  743. package/registry/pyramid-block-build.json +15 -0
  744. package/registry/radar-sweep.json +9 -0
  745. package/registry/radial-iris-mask.json +18 -0
  746. package/registry/radial-spinner.json +15 -0
  747. package/registry/radio-scale.json +19 -0
  748. package/registry/range-slider.json +19 -0
  749. package/registry/receipt-tape-print.json +15 -0
  750. package/registry/rectangle-toggle.json +19 -0
  751. package/registry/repost-toggle.json +19 -0
  752. package/registry/reveal-text.json +19 -0
  753. package/registry/ribbon-banner-slide.json +15 -0
  754. package/registry/ring-sweep.json +9 -0
  755. package/registry/ripple-effect.json +9 -0
  756. package/registry/rise-up-word.json +19 -0
  757. package/registry/roller-blind-drop.json +15 -0
  758. package/registry/rolling-tumble.json +15 -0
  759. package/registry/rotate-in-char.json +19 -0
  760. package/registry/rotating-cross.json +9 -0
  761. package/registry/rotating-louvers.json +15 -0
  762. package/registry/rotating-triangle.json +9 -0
  763. package/registry/rudder-issue-board.json +24 -0
  764. package/registry/sales-analytics-dual-bars.json +19 -0
  765. package/registry/sales-overview-radial-dashboard.json +19 -0
  766. package/registry/sales-target-segmented-arc.json +19 -0
  767. package/registry/scale-in-char.json +19 -0
  768. package/registry/scale-in-text.json +19 -0
  769. package/registry/scale-in-word.json +19 -0
  770. package/registry/scale-in.json +9 -0
  771. package/registry/scramble-text.json +18 -0
  772. package/registry/scroll-canvas-unroll.json +15 -0
  773. package/registry/scroll-reveal.json +9 -0
  774. package/registry/search-expand.json +19 -0
  775. package/registry/segmented-arc-meter.json +18 -0
  776. package/registry/segmented-link-stretch.json +15 -0
  777. package/registry/segmented-step-bar.json +18 -0
  778. package/registry/segmented-stepper-dots.json +18 -0
  779. package/registry/select-dropdown.json +19 -0
  780. package/registry/server-performance-step-bars.json +19 -0
  781. package/registry/shape-shift-grid.json +9 -0
  782. package/registry/shimmer-line.json +9 -0
  783. package/registry/shimmer-text.json +19 -0
  784. package/registry/shutter-slide.json +15 -0
  785. package/registry/shutter-step-slices.json +15 -0
  786. package/registry/siri-wave.json +9 -0
  787. package/registry/skeleton-loader.json +9 -0
  788. package/registry/skeleton.json +9 -0
  789. package/registry/skew-x-char.json +19 -0
  790. package/registry/slide-down-char.json +19 -0
  791. package/registry/slide-down-word.json +19 -0
  792. package/registry/slide-left-char.json +19 -0
  793. package/registry/slide-left.json +9 -0
  794. package/registry/slide-right-char.json +19 -0
  795. package/registry/slide-right.json +9 -0
  796. package/registry/slide-up-char.json +19 -0
  797. package/registry/slide-up-text.json +19 -0
  798. package/registry/slide-up-word.json +19 -0
  799. package/registry/sliding-bars.json +9 -0
  800. package/registry/slinky-coil.json +15 -0
  801. package/registry/smart-card-dispenser.json +15 -0
  802. package/registry/smooth-dot-shift.json +9 -0
  803. package/registry/smooth-ring.json +9 -0
  804. package/registry/smooth-rounded-square.json +9 -0
  805. package/registry/solid-switch.json +19 -0
  806. package/registry/spatial-door-portal.json +18 -0
  807. package/registry/spinning-squares.json +9 -0
  808. package/registry/spiral-spinner.json +9 -0
  809. package/registry/split-gate-reveal.json +15 -0
  810. package/registry/spotlight.json +9 -0
  811. package/registry/spring-bars.json +9 -0
  812. package/registry/spring-dot-matrix.json +9 -0
  813. package/registry/spring-hexagon.json +9 -0
  814. package/registry/spring-ring-expand.json +9 -0
  815. package/registry/spring-text-pop.json +9 -0
  816. package/registry/spring-text.json +19 -0
  817. package/registry/square-accordion.json +9 -0
  818. package/registry/square-grid.json +9 -0
  819. package/registry/square-snake.json +9 -0
  820. package/registry/square-spinner.json +9 -0
  821. package/registry/squash-sphere.json +15 -0
  822. package/registry/stacked-bar-pulse.json +9 -0
  823. package/registry/stagger-text.json +19 -0
  824. package/registry/staggered-glass-curtain.json +18 -0
  825. package/registry/sticky-note-peel.json +15 -0
  826. package/registry/sticky-reveal.json +9 -0
  827. package/registry/stretch-x-char.json +19 -0
  828. package/registry/stretch-y-char.json +19 -0
  829. package/registry/stroke-waveform.json +15 -0
  830. package/registry/submenu-flyout.json +18 -0
  831. package/registry/success-check.json +19 -0
  832. package/registry/sudden-brake.json +15 -0
  833. package/registry/swapping-dots.json +9 -0
  834. package/registry/swing-word.json +19 -0
  835. package/registry/swirling-spinner.json +9 -0
  836. package/registry/symmetric-wave.json +9 -0
  837. package/registry/terminal-loader.json +9 -0
  838. package/registry/text-blink.json +9 -0
  839. package/registry/text-dots.json +9 -0
  840. package/registry/text-morph.json +9 -0
  841. package/registry/text-reveal.json +9 -0
  842. package/registry/text-shimmer-wave.json +9 -0
  843. package/registry/text-shimmer.json +9 -0
  844. package/registry/textarea-auto-grow.json +19 -0
  845. package/registry/theme-toggle.json +19 -0
  846. package/registry/tilt-card.json +9 -0
  847. package/registry/timer-preparation-segmented.json +19 -0
  848. package/registry/tracking-in-text.json +19 -0
  849. package/registry/tracking-out-text.json +19 -0
  850. package/registry/trailing-dots.json +9 -0
  851. package/registry/triple-dot-spinner.json +9 -0
  852. package/registry/twin-orbit.json +9 -0
  853. package/registry/typewriter-text.json +18 -0
  854. package/registry/typing-indicator.json +9 -0
  855. package/registry/typing.json +9 -0
  856. package/registry/use-mouse-position.json +10 -0
  857. package/registry/use-reduced-motion.json +9 -0
  858. package/registry/use-scroll-progress.json +9 -0
  859. package/registry/use-stagger.json +9 -0
  860. package/registry/use-web-haptics.json +10 -0
  861. package/registry/users-growth-pill-progress.json +19 -0
  862. package/registry/utils.json +10 -0
  863. package/registry/vertical-wheel-counter.json +18 -0
  864. package/registry/views-hourly-wave-chart.json +19 -0
  865. package/registry/wandering-cube.json +9 -0
  866. package/registry/wandering-eyes.json +15 -0
  867. package/registry/watch-spinner.json +9 -0
  868. package/registry/wave-dots.json +9 -0
  869. package/registry/wave-physics-loader.json +9 -0
  870. package/registry/wave-reveal.json +18 -0
  871. package/registry/waveform-loader.json +9 -0
  872. package/registry/word-reveal.json +9 -0
  873. package/registry/zig-zag-pulse.json +9 -0
  874. package/registry/zoom-in-text.json +19 -0
  875. package/registry/zoom-in.json +9 -0
  876. package/registry/zoom-out-text.json +19 -0
package/README.md CHANGED
@@ -1,46 +1,95 @@
1
- # @mova-ui/react
1
+ # Mova
2
2
 
3
3
  **Make interfaces feel alive.**
4
4
 
5
- Reusable React animation components and an offline, copy-source CLI. Documentation: https://mova.zeeland.studio
5
+ React components for motion: entrance transitions, hover effects, text reveals, loading indicators, and scroll interactions. Import them as a library, or copy the source into your project with the bundled CLI.
6
6
 
7
- ## Use as a React library
7
+ ## Install
8
8
 
9
- ```sh
10
- npm install @mova-ui/react react react-dom
9
+ Requires Node.js 20+ and React / React DOM 18.2+ or 19.
10
+
11
+ ```bash
12
+ npm install @mova-ui/react
11
13
  ```
12
14
 
15
+ Import the CSS once in your app entry point. Mova ships compiled styles, so you do not need to configure Tailwind. The stylesheet includes component utilities without a global reset.
16
+
13
17
  ```tsx
14
- 'use client';
15
- import { FadeIn, GlowButton, ClassicSpinner } from '@mova-ui/react';
18
+ import { FadeIn, GlowButton } from '@mova-ui/react';
16
19
  import '@mova-ui/react/styles.css';
17
20
 
18
- export function Example() {
19
- return <FadeIn><GlowButton>Continue</GlowButton><ClassicSpinner /></FadeIn>;
21
+ export function Welcome() {
22
+ return (
23
+ <FadeIn>
24
+ <GlowButton onClick={() => console.log('Hello!')}>
25
+ Try Mova
26
+ </GlowButton>
27
+ </FadeIn>
28
+ );
20
29
  }
21
30
  ```
22
31
 
23
- ESM with TypeScript declarations. React 18.2+ or 19; Node 20+ for the CLI. Animation and class utility dependencies are installed automatically. Bundlers can tree-shake unused exports. The library entry is marked `use client` for React Server Component frameworks.
24
-
25
- The exported CSS contains the bundled components' Tailwind utility classes and theme tokens, **not** the website stylesheet or Tailwind preflight. Import it once; Tailwind is not required for the supplied styles. Its utility class names are global: applications that already use Tailwind may instead scan their installed package's JS or copied source using their own Tailwind configuration. Custom `className` values require your own CSS. Components include upstream demo defaults; check individual props before use. Motion accessibility behavior varies by component; applications should configure reduced-motion preferences and test accessibility for their use case.
32
+ The package includes TypeScript declarations and an ESM entry point. In frameworks with React Server Components, use interactive components inside a client boundary.
26
33
 
27
- ## Copy editable source
34
+ ## Copy components
28
35
 
29
- Run from a project root containing `package.json`:
36
+ Run the CLI from a project directory containing `package.json`:
30
37
 
31
- ```sh
32
- npx @mova-ui/react --help
38
+ ```bash
33
39
  npx @mova-ui/react list
34
40
  npx @mova-ui/react add glow-button
35
41
  npx @mova-ui/react add fade-in --dir src/components/mova
42
+ npx @mova-ui/react --help
36
43
  ```
37
44
 
38
- The CLI copies TypeScript source, compiled `styles.css`, and `LICENSE.mova` to `src/components/mova` by default. It prints required dependencies (for example `npm install framer-motion`) but never installs packages, downloads component code, or edits project configuration. Import the copied CSS once, e.g. `import './components/mova/styles.css'` from `src/App.tsx`. Source uses React and, where needed, `framer-motion`, `clsx`, and `tailwind-merge`.
45
+ The CLI copies component source, `styles.css`, and attribution licenses into `src/components/mova` by default. Missing dependencies are installed automatically using your project's npm, pnpm, yarn, or bun. Import the copied CSS once and keep both license files with the source.
46
+
47
+ Component sources are bundled with the package. Use `--skip-install` for offline source copying; otherwise dependency installation updates your package manifest and lockfile. It refuses symlink targets and paths outside your project. Existing component files stay untouched unless you pass `--overwrite`.
48
+
49
+ The extended site catalog is generated into standalone JavaScript bundles stored in `.tsx` files with an explicit typecheck exemption. Original library components retain their TypeScript source; generated catalog bundles do not preserve their original prop types.
50
+
51
+ ## Development
52
+
53
+ This repository contains the component library and CLI only.
54
+
55
+ ```bash
56
+ npm ci --include=dev
57
+ npm run build
58
+ npm test
59
+ npm run test:consumer
60
+ # Run all checks:
61
+ npm run verify
62
+ ```
63
+
64
+ - `source-registry/` contains the editable components, hooks, and utilities. The classic toggle is stored as registry JSON.
65
+ - `scripts/build.mjs` compiles the ESM bundle, strict TypeScript declarations, CSS, and offline registry.
66
+ - `bin/mova.mjs` implements the source-copy CLI.
67
+ - `install-catalog/` contains reviewed public CLI inputs and third-party attribution, controlled by `public-registry.json`. Maintain these inputs in Library; there is no Site-to-Library export workflow.
68
+ - `tests/` covers package exports, CLI safety, and installation into a separate React consumer.
69
+
70
+ The root public inventory has 178 explicit `sourceRegistry` paths, 220 explicit `catalogEntries` records, and 66 explicit `catalog/registry-bindings.json` entries. Each binding generates standalone CLI source from its canonical catalog module and preset props. Duplicate paths or component IDs are rejected by the build rather than silently skipped, and the combined 464 IDs are the only IDs emitted into the versioned manifest and CLI registry.
71
+
72
+ The build recreates `dist/`, `registry/`, and `.generated/`. Do not edit those directories. Consumer verification packs the library, checks its file allowlist, installs it in a temporary project, then runs CLI commands, server rendering, strict typechecking, and a Vite production build.
73
+
74
+ ## Source catalog
75
+
76
+ `catalog/` owns 153 reusable UI modules and 16 support files: cards, charts, metrics, forms, toggles, text effects, and CSS animation experiments. The `0.4.1` artifact exports the explicit module allowlist through `@mova-ui/react/catalog/...` and includes canonical source records in its versioned manifest. These subpaths are separate from root exports and do not create additional CLI IDs. During the root build, `catalog/data/supportedRegistryIds.ts` is generated from the finalized `registry/manifest.json` component IDs; the checked-in catalog copy is only a standalone fallback. See [the catalog guide](catalog/README.md) for source development. Local artifact availability does not imply that this version has been published to npm.
77
+
78
+ ```bash
79
+ npm ci --prefix catalog --include=dev
80
+ npm --prefix catalog run verify
81
+ ```
82
+
83
+ ## Contributing
84
+
85
+ Keep changes focused on reusable components or CLI behavior. Edit `source-registry/`, add regression coverage where applicable, and run `npm run verify` before opening a pull request. Include usage notes when you change a component API. Check keyboard interaction and reduced-motion behavior for interactive or animated changes.
86
+
87
+ Maintainers can use the manual npm release workflow for a reviewed, unpublished version. The workflow requires an exact version match and the `NPM_TOKEN` secret. Version `0.2.0` adds automatic dependency installation and the expanded CLI catalog.
39
88
 
40
- Existing files are protected. Use `--overwrite` only when you intend to replace them. Identical shared CSS/license files can be reused when adding another component. Absolute paths, parent traversal, symlink targets, Git metadata, and `node_modules` destinations are refused. This is a local developer tool, not a sandbox against another process concurrently mutating your project's directories.
89
+ ## Attribution
41
90
 
42
- `list` enumerates all packaged IDs, including loaders, text/entrance/hover/scroll/cursor effects, the page transition, a toggle, hooks, and utilities. The package is generated from the original reusable registry, not the documentation application; website-only chart/demo pages are not exported.
91
+ Forked from an early version of [Amicro](https://github.com/Subhan-code/Amicro--Micro-transitions-).
43
92
 
44
- ## License and attribution
93
+ ## License
45
94
 
46
- MIT. Derived from Amicro by SYED SUBHAN UDDIN. The original copyright and complete license are retained in `LICENSE` and in source installations. Mova packaging, CLI, and compatibility adjustments preserve that attribution.
95
+ MIT. See [LICENSE](LICENSE).
package/bin/mova.mjs CHANGED
@@ -1,20 +1,22 @@
1
1
  #!/usr/bin/env node
2
- import { readdirSync, readFileSync, writeFileSync, lstatSync, realpathSync, mkdirSync, renameSync, unlinkSync, constants, openSync, closeSync } from 'node:fs';
2
+ import { readFileSync, writeFileSync, lstatSync, realpathSync, mkdirSync, renameSync, unlinkSync, constants, openSync, closeSync } from 'node:fs';
3
3
  import { resolve, dirname, join, isAbsolute, relative, sep } from 'node:path';
4
4
  import { fileURLToPath } from 'node:url';
5
5
  import { randomUUID } from 'node:crypto';
6
+ import { execFileSync } from 'node:child_process';
6
7
  const pkg = resolve(dirname(fileURLToPath(import.meta.url)), '..');
8
+ const packageManifest = JSON.parse(readFileSync(join(pkg, 'package.json'), 'utf8'));
7
9
  const help = `Mova — Make interfaces feel alive.
8
10
 
9
11
  Usage:
10
12
  npx @mova-ui/react list
11
- npx @mova-ui/react add <id> [--dir src/components/mova] [--overwrite]
13
+ npx @mova-ui/react add <id> [--dir src/components/mova] [--overwrite] [--skip-install]
12
14
  npx @mova-ui/react --help
13
15
 
14
16
  Run add from your project root (must contain package.json).
15
17
  Copies bundled TypeScript source, compiled styles.css and the MIT license.
16
- No downloads, package installation or project configuration changes are made.
17
- Import the copied styles.css once in your app. Required dependencies are printed.
18
+ Installs missing dependencies using your project's npm, pnpm, yarn, or bun.
19
+ Import the copied styles.css once in your app. --skip-install copies source only.
18
20
  --dir must be a relative directory inside this project; symlinks are refused.
19
21
  --overwrite explicitly replaces existing regular files (never symlinks).
20
22
  `;
@@ -31,31 +33,39 @@ function safePath(root, path) {
31
33
  if (s && i === parts.length-1 && !s.isFile()) throw new Error('Target is not a regular file');
32
34
  }
33
35
  }
36
+ function publicEntries() {
37
+ const manifest = JSON.parse(readFileSync(join(pkg, 'registry', 'manifest.json'), 'utf8'));
38
+ if (manifest.package !== '@mova-ui/react' || manifest.components?.some(item => item.tier !== 'free')) {
39
+ throw new Error('Invalid public registry manifest');
40
+ }
41
+ return new Map(manifest.components.map(item => [item.id, item]));
42
+ }
34
43
  function main(args) {
35
44
  if (!args.length || (args.length === 1 && ['--help','-h'].includes(args[0]))) { console.log(help); return; }
36
45
  if (args[0] === 'list' && args.length === 1) {
37
- console.log(readdirSync(join(pkg, 'registry')).filter(f => f.endsWith('.json')).map(f => f.slice(0,-5)).sort().join('\n')); return;
46
+ console.log([...publicEntries().keys()].sort().join('\n')); return;
38
47
  }
39
48
  if (args[0] !== 'add' || !/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(args[1] ?? '')) throw new Error('Use add <id>, list, or --help');
40
- const id = args[1]; let dir = 'src/components/mova'; let overwrite = false;
49
+ const id = args[1]; let dir = 'src/components/mova'; let overwrite = false; let skipInstall = false;
41
50
  for (let i=2;i<args.length;i++) {
42
51
  if (args[i] === '--overwrite' && !overwrite) overwrite = true;
52
+ else if (args[i] === '--skip-install' && !skipInstall) skipInstall = true;
43
53
  else if (args[i] === '--dir' && args[i+1] && !args[i+1].startsWith('--')) dir = args[++i];
44
54
  else throw new Error(`Unknown or incomplete option: ${args[i]}`);
45
55
  }
46
56
  if (!dir || isAbsolute(dir) || dir.includes('\\') || dir.includes(':') || dir.split('/').some(p => p === '..' || p.startsWith('.git') || p === 'node_modules')) throw new Error('Directory must be a relative path inside this project');
47
57
  const root = realpathSync(process.cwd());
48
58
  if (!stat(join(root, 'package.json'))?.isFile()) throw new Error('Run add from a project root containing package.json');
49
- JSON.parse(readFileSync(join(root, 'package.json'), 'utf8'));
50
- const registryFile = join(pkg, 'registry', `${id}.json`);
51
- if (!stat(registryFile)?.isFile()) throw new Error(`Unknown component: ${id}. Run npx @mova-ui/react list`);
52
- const item = JSON.parse(readFileSync(registryFile, 'utf8'));
59
+ const project = JSON.parse(readFileSync(join(root, 'package.json'), 'utf8'));
60
+ const item = publicEntries().get(id);
61
+ if (!item) throw new Error(`Unknown component: ${id}. Run npx @mova-ui/react list`);
53
62
  if (!/^[a-z0-9-]+\.tsx?$/.test(item.file) || typeof item.content !== 'string') throw new Error('Invalid bundled registry entry');
54
63
  const out = resolve(root, dir);
55
64
  const files = [
56
65
  { name: item.file, content: item.content },
57
66
  { name: 'styles.css', content: readFileSync(join(pkg, 'dist/styles.css'), 'utf8') },
58
- { name: 'LICENSE.mova', content: readFileSync(join(pkg, 'LICENSE'), 'utf8') }
67
+ { name: 'LICENSE.mova', content: readFileSync(join(pkg, 'LICENSE'), 'utf8') },
68
+ { name: 'LICENSE.third-party', content: readFileSync(join(pkg, 'registry/LICENSE.third-party'), 'utf8') }
59
69
  ].map(f => ({...f, path: join(out, f.name)}));
60
70
  // Preflight the entire operation before creating directories or replacing files.
61
71
  for (const f of files) {
@@ -64,6 +74,22 @@ function main(args) {
64
74
  f.skip = exists && f.name !== item.file && readFileSync(f.path, 'utf8') === f.content;
65
75
  if (exists && !f.skip && !overwrite) throw new Error(`${relative(root, f.path)} already exists; use --overwrite to replace it`);
66
76
  }
77
+ const dependencies = item.dependencies.filter(name => !project.dependencies?.[name] && !project.devDependencies?.[name]);
78
+ if (dependencies.some(name => !/^(?:@[a-z0-9._-]+\/)?[a-z0-9._-]+$/.test(name))) throw new Error('Invalid registry dependency');
79
+ const dependencySpecs = dependencies.map(name => {
80
+ const version = packageManifest.dependencies?.[name];
81
+ return version ? `${name}@${version}` : name;
82
+ });
83
+ if (!skipInstall && dependencies.length) {
84
+ const declared = project.packageManager?.split('@')[0];
85
+ const manager = ['npm', 'pnpm', 'yarn', 'bun'].includes(declared) ? declared
86
+ : stat(join(root, 'pnpm-lock.yaml')) ? 'pnpm'
87
+ : stat(join(root, 'yarn.lock')) ? 'yarn'
88
+ : stat(join(root, 'bun.lock')) || stat(join(root, 'bun.lockb')) ? 'bun' : 'npm';
89
+ console.log(`Installing ${dependencySpecs.join(', ')} with ${manager}…`);
90
+ try { execFileSync(manager, [manager === 'npm' ? 'install' : 'add', ...dependencySpecs], { cwd: root, stdio: 'inherit' }); }
91
+ catch { throw new Error(`Dependency installation failed (${manager}). Component files were not written. Resolve the package-manager error and retry.`); }
92
+ }
67
93
  for (const f of files.filter(f => !f.skip)) {
68
94
  mkdirSync(dirname(f.path), { recursive: true });
69
95
  safePath(root, f.path);
@@ -78,7 +104,7 @@ function main(args) {
78
104
  }
79
105
  }
80
106
  console.log(`Added ${id} to ${dir}\nImport '${dir}/styles.css' once in your app (adjust the relative import).`);
81
- if (item.dependencies.length) console.log(`Dependencies: npm install ${item.dependencies.join(' ')}`);
107
+ if (skipInstall && dependencies.length) console.log(`Skipped dependencies: ${dependencies.join(' ')}`);
82
108
  console.log('Requires React 18.2+ or 19 and React DOM. MIT attribution is in LICENSE.mova.');
83
109
  }
84
110
  try { main(process.argv.slice(2)); } catch (error) { console.error(`Mova: ${error.message}`); process.exitCode = 1; }
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { ButtonConfig } from '../data/buttons';
3
+ interface AnimatedButtonProps {
4
+ config: ButtonConfig;
5
+ layoutMode: 'list' | 'grid' | 'matrix';
6
+ theme?: 'dark' | 'light';
7
+ }
8
+ export declare const AnimatedButton: React.NamedExoticComponent<AnimatedButtonProps>;
9
+ export {};
@@ -0,0 +1,346 @@
1
+ "use client";
2
+ import {
3
+ FocusBlur
4
+ } from "../../catalog-chunks/chunk-QXWREUPI.js";
5
+
6
+ // .generated/catalog/components/AnimatedButton.tsx
7
+ import React, { useState } from "react";
8
+ import { AnimatePresence, motion } from "framer-motion";
9
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
+ var AnimatedButton = React.memo(function AnimatedButton2({ config, layoutMode, theme = "dark" }) {
11
+ const [isHovered, setIsHovered] = useState(false);
12
+ if (config.interactionType === "focus-blur") {
13
+ return /* @__PURE__ */ jsx(
14
+ FocusBlur,
15
+ {
16
+ items: [
17
+ { label: "@X", href: "#" },
18
+ { label: "@Threads", href: "#" },
19
+ { label: "@GitHub", href: "#" }
20
+ ],
21
+ showBrackets: true,
22
+ className: layoutMode === "matrix" ? "scale-[0.5] origin-center text-[10px] gap-1 px-1 py-1" : "text-sm gap-4"
23
+ }
24
+ );
25
+ }
26
+ const Icon1 = config.icon1;
27
+ const Icon2 = config.icon2;
28
+ const isMatrix = layoutMode === "matrix";
29
+ const isLightTheme = theme === "light";
30
+ const [hasInteracted, setHasInteracted] = useState(false);
31
+ const [mouseCoords, setMouseCoords] = useState({ x: 0, y: 0 });
32
+ const handleMouseEnter = () => {
33
+ setIsHovered(true);
34
+ if (config.interactionType === "morph" && (config.id === "4" || config.id === "21" || config.id === "22" || config.id === "24" || config.id === "25")) {
35
+ setHasInteracted(true);
36
+ }
37
+ };
38
+ const handleMouseMove = (e) => {
39
+ if (config.interactionType === "magnetic") {
40
+ const rect = e.currentTarget.getBoundingClientRect();
41
+ const x = e.clientX - rect.left - rect.width / 2;
42
+ const y = e.clientY - rect.top - rect.height / 2;
43
+ setMouseCoords({ x: x * 0.35, y: y * 0.35 });
44
+ }
45
+ };
46
+ const handleMouseLeave = () => {
47
+ setIsHovered(false);
48
+ if (config.interactionType === "magnetic") {
49
+ setMouseCoords({ x: 0, y: 0 });
50
+ }
51
+ if (hasInteracted) {
52
+ setTimeout(() => setHasInteracted(false), 500);
53
+ }
54
+ };
55
+ const handleTouchStart = () => {
56
+ setIsHovered(true);
57
+ if (config.interactionType === "morph" && (config.id === "4" || config.id === "21" || config.id === "22" || config.id === "24" || config.id === "25")) {
58
+ setHasInteracted(true);
59
+ }
60
+ };
61
+ const handleTouchEnd = () => {
62
+ setTimeout(() => {
63
+ setIsHovered(false);
64
+ if (hasInteracted) {
65
+ setTimeout(() => setHasInteracted(false), 500);
66
+ }
67
+ }, 500);
68
+ };
69
+ const showIcon2 = hasInteracted || isHovered;
70
+ const renderIconContent = () => {
71
+ switch (config.interactionType) {
72
+ case "slide-arrow":
73
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
74
+ /* @__PURE__ */ jsx(AnimatePresence, { mode: "popLayout", children: !isHovered && /* @__PURE__ */ jsx(
75
+ motion.div,
76
+ {
77
+ layout: true,
78
+ initial: { opacity: 0, x: -10 },
79
+ animate: { opacity: 1, x: 0 },
80
+ exit: { opacity: 0, x: -10 },
81
+ transition: { type: "spring", stiffness: 600, damping: 25 },
82
+ className: `flex items-center shrink-0 ${!isMatrix ? "mr-2.5" : ""}`,
83
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
84
+ },
85
+ "icon1"
86
+ ) }),
87
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap", children: config.label }),
88
+ /* @__PURE__ */ jsx(AnimatePresence, { mode: "popLayout", children: isHovered && /* @__PURE__ */ jsx(
89
+ motion.div,
90
+ {
91
+ layout: true,
92
+ initial: { opacity: 0, x: 10 },
93
+ animate: { opacity: 1, x: 0 },
94
+ exit: { opacity: 0, x: 10 },
95
+ transition: { type: "spring", stiffness: 600, damping: 25 },
96
+ className: `flex items-center shrink-0 ${!isMatrix ? "ml-2.5" : ""}`,
97
+ children: Icon2 && /* @__PURE__ */ jsx(Icon2, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
98
+ },
99
+ "icon2"
100
+ ) })
101
+ ] });
102
+ case "sparkle":
103
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
104
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "popLayout", initial: false, children: !isHovered ? /* @__PURE__ */ jsx(
105
+ motion.div,
106
+ {
107
+ initial: { y: -15, opacity: 0, scale: 0.8 },
108
+ animate: { y: 0, opacity: 1, scale: 1 },
109
+ exit: { y: -15, opacity: 0, scale: 0.8 },
110
+ transition: { type: "spring", stiffness: 600, damping: 25 },
111
+ className: "absolute inset-0 flex items-center justify-center",
112
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
113
+ },
114
+ "icon1"
115
+ ) : /* @__PURE__ */ jsxs(
116
+ motion.div,
117
+ {
118
+ initial: { y: 15, opacity: 0, scale: 0.8 },
119
+ animate: { y: 0, opacity: 1, scale: 1 },
120
+ exit: { y: 15, opacity: 0, scale: 0.8 },
121
+ transition: { type: "spring", stiffness: 600, damping: 25 },
122
+ className: "absolute inset-0 flex items-center justify-center",
123
+ children: [
124
+ Icon2 && /* @__PURE__ */ jsx(Icon2, { className: `w-[16px] h-[16px] ${config.icon2Color || (isLightTheme ? "text-black" : "text-[#e3e3e3]")}` }),
125
+ /* @__PURE__ */ jsx(
126
+ motion.div,
127
+ {
128
+ initial: { opacity: 0, scale: 0, rotate: -45, y: 10 },
129
+ animate: { opacity: 1, scale: 1, rotate: 0, y: 0 },
130
+ exit: { opacity: 0, scale: 0, rotate: 45, y: 10 },
131
+ transition: { type: "spring", stiffness: 600, damping: 25, delay: 0.05 },
132
+ className: "absolute -top-3 -right-2",
133
+ children: /* @__PURE__ */ jsx("svg", { className: "w-2.5 h-2.5 text-yellow-200", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M12 2l2.4 7.6H22l-6.2 4.5 2.4 7.6-6.2-4.5-6.2 4.5 2.4-7.6L2 9.6h7.6z" }) })
134
+ }
135
+ ),
136
+ /* @__PURE__ */ jsx(
137
+ motion.div,
138
+ {
139
+ initial: { opacity: 0, scale: 0, rotate: 45, x: 10 },
140
+ animate: { opacity: 1, scale: 1, rotate: 0, x: 0 },
141
+ exit: { opacity: 0, scale: 0, rotate: -45, x: 10 },
142
+ transition: { type: "spring", stiffness: 600, damping: 25, delay: 0.1 },
143
+ className: "absolute -top-1 -left-3",
144
+ children: /* @__PURE__ */ jsx("svg", { className: "w-1.5 h-1.5 text-yellow-400", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M12 2l2.4 7.6H22l-6.2 4.5 2.4 7.6-6.2-4.5-6.2 4.5 2.4-7.6L2 9.6h7.6z" }) })
145
+ }
146
+ )
147
+ ]
148
+ },
149
+ "icon2"
150
+ ) }) }),
151
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.label })
152
+ ] });
153
+ case "morph":
154
+ case "color-morph":
155
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
156
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "popLayout", initial: false, children: !showIcon2 ? /* @__PURE__ */ jsx(
157
+ motion.div,
158
+ {
159
+ initial: { scale: 0.5, opacity: 0 },
160
+ animate: { scale: 1, opacity: 1 },
161
+ exit: { scale: 0.5, opacity: 0 },
162
+ transition: { type: "spring", stiffness: 600, damping: 25 },
163
+ className: "absolute inset-0 flex items-center justify-center",
164
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isHovered && config.icon1Color ? config.icon1Color : isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
165
+ },
166
+ "icon1"
167
+ ) : /* @__PURE__ */ jsx(
168
+ motion.div,
169
+ {
170
+ initial: { scale: 0.5, opacity: 0 },
171
+ animate: { scale: 1, opacity: 1 },
172
+ exit: { scale: 0.5, opacity: 0 },
173
+ transition: { type: "spring", stiffness: 600, damping: 25 },
174
+ className: "absolute inset-0 flex items-center justify-center",
175
+ children: Icon2 && /* @__PURE__ */ jsx(Icon2, { className: `w-[16px] h-[16px] ${config.icon2Color || (isLightTheme ? "text-black" : "text-[#e3e3e3]")}` })
176
+ },
177
+ "icon2"
178
+ ) }) }),
179
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.id === "4" && showIcon2 ? "Copied" : config.label })
180
+ ] });
181
+ case "pulse":
182
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
183
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(
184
+ motion.div,
185
+ {
186
+ animate: { scale: isHovered ? [1, 1.25, 1] : 1 },
187
+ transition: { duration: 0.4, ease: "easeInOut" },
188
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] transition-colors duration-300 ${isHovered && config.icon1Color ? `${config.icon1Color} fill-current` : isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
189
+ }
190
+ ) }),
191
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.label })
192
+ ] });
193
+ case "rotate":
194
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
195
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(motion.div, { animate: { rotate: isHovered ? 180 : 0 }, transition: { type: "spring", stiffness: 400, damping: 25 }, children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` }) }) }),
196
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.label })
197
+ ] });
198
+ case "shake":
199
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
200
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(
201
+ motion.div,
202
+ {
203
+ animate: {
204
+ y: isHovered ? [0, -2, 0, -2, 0] : 0,
205
+ rotate: isHovered ? [0, -10, 10, -10, 0] : 0
206
+ },
207
+ transition: { duration: 0.4 },
208
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] transition-colors duration-300 ${isHovered && config.icon1Color ? config.icon1Color : isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
209
+ }
210
+ ) }),
211
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: `font-medium tracking-tight text-[13px] whitespace-nowrap transition-colors duration-300 ml-2.5 ${isHovered && config.icon1Color ? config.icon1Color : isLightTheme ? "text-black" : "text-[#e3e3e3]"}`, children: config.label })
212
+ ] });
213
+ case "ring":
214
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
215
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "popLayout", initial: false, children: !isHovered ? /* @__PURE__ */ jsx(
216
+ motion.div,
217
+ {
218
+ initial: { rotate: -15, scale: 0.8, opacity: 0 },
219
+ animate: { rotate: 0, scale: 1, opacity: 1 },
220
+ exit: { rotate: 15, scale: 0.8, opacity: 0 },
221
+ transition: { type: "spring", stiffness: 600, damping: 25 },
222
+ className: "absolute inset-0 flex items-center justify-center",
223
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
224
+ },
225
+ "icon1"
226
+ ) : /* @__PURE__ */ jsxs(
227
+ motion.div,
228
+ {
229
+ initial: { rotate: -15, scale: 0.8, opacity: 0 },
230
+ animate: { rotate: 0, scale: 1, opacity: 1 },
231
+ exit: { rotate: 15, scale: 0.8, opacity: 0 },
232
+ transition: { type: "spring", stiffness: 600, damping: 25 },
233
+ className: "absolute inset-0 flex items-center justify-center",
234
+ children: [
235
+ Icon2 && /* @__PURE__ */ jsx(Icon2, { className: `w-[16px] h-[16px] ${config.icon2Color || (isLightTheme ? "text-black" : "text-[#e3e3e3]")}` }),
236
+ /* @__PURE__ */ jsx(
237
+ motion.div,
238
+ {
239
+ initial: { scale: 0 },
240
+ animate: { scale: 1 },
241
+ transition: { type: "spring", stiffness: 600, damping: 15, delay: 0.1 },
242
+ className: "absolute top-0 right-0 w-1.5 h-1.5 bg-red-500 rounded-full border border-transparent"
243
+ }
244
+ )
245
+ ]
246
+ },
247
+ "icon2"
248
+ ) }) }),
249
+ !isMatrix && /* @__PURE__ */ jsx(motion.span, { layout: true, className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.label })
250
+ ] });
251
+ case "glare":
252
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
253
+ /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${!isMatrix ? "mr-2.5" : ""} ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` }),
254
+ !isMatrix && /* @__PURE__ */ jsx("span", { className: "font-medium tracking-tight text-[13px] whitespace-nowrap", children: config.label }),
255
+ /* @__PURE__ */ jsx(
256
+ motion.div,
257
+ {
258
+ animate: { x: isHovered ? ["-150%", "150%"] : "-150%" },
259
+ transition: { duration: 0.85, ease: "easeInOut", repeat: isHovered ? Infinity : 0, repeatDelay: 1 },
260
+ className: `absolute top-0 bottom-0 w-[50px] skew-x-[-20deg] pointer-events-none z-10`,
261
+ style: {
262
+ background: isLightTheme ? "linear-gradient(90deg, transparent, rgba(0,0,0,0.12), transparent)" : "linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent)"
263
+ }
264
+ }
265
+ )
266
+ ] });
267
+ case "text-reveal":
268
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
269
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0 mr-2.5", children: /* @__PURE__ */ jsx(motion.div, { animate: { rotate: isHovered ? 45 : 0 }, transition: { type: "spring", stiffness: 400, damping: 25 }, children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` }) }) }),
270
+ !isMatrix && /* @__PURE__ */ jsx("div", { className: "relative h-[18px] overflow-hidden", children: /* @__PURE__ */ jsxs(
271
+ motion.div,
272
+ {
273
+ animate: { y: isHovered ? -18 : 0 },
274
+ transition: { type: "spring", stiffness: 400, damping: 25 },
275
+ className: "flex flex-col",
276
+ children: [
277
+ /* @__PURE__ */ jsx("span", { className: `block h-[18px] leading-[18px] font-medium tracking-tight text-[13px] whitespace-nowrap ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}`, children: config.label }),
278
+ /* @__PURE__ */ jsx("span", { className: `block h-[18px] leading-[18px] font-medium tracking-tight text-[13px] whitespace-nowrap ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}`, children: config.label })
279
+ ]
280
+ }
281
+ ) })
282
+ ] });
283
+ case "magnetic":
284
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
285
+ /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${!isMatrix ? "mr-2.5" : ""} ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` }),
286
+ !isMatrix && /* @__PURE__ */ jsx("span", { className: "font-medium tracking-tight text-[13px] whitespace-nowrap", children: config.label })
287
+ ] });
288
+ case "expand-ring":
289
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
290
+ /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px] flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx(
291
+ motion.div,
292
+ {
293
+ animate: { scale: isHovered ? 1.1 : 1 },
294
+ transition: { type: "spring", stiffness: 400, damping: 20 },
295
+ children: /* @__PURE__ */ jsx(Icon1, { className: `w-[16px] h-[16px] ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}` })
296
+ }
297
+ ) }),
298
+ !isMatrix && /* @__PURE__ */ jsx("span", { className: "font-medium tracking-tight text-[13px] whitespace-nowrap ml-2.5", children: config.label }),
299
+ /* @__PURE__ */ jsx(AnimatePresence, { children: isHovered && /* @__PURE__ */ jsx(
300
+ motion.div,
301
+ {
302
+ initial: { opacity: 1, scale: 1 },
303
+ animate: { opacity: 0, scale: 1.15 },
304
+ exit: { opacity: 0 },
305
+ transition: { duration: 0.6, ease: "easeOut" },
306
+ className: `absolute inset-0 rounded-[40px] pointer-events-none border ${isLightTheme ? "border-black/25" : "border-white/25"}`
307
+ },
308
+ "expand-ring-div"
309
+ ) })
310
+ ] });
311
+ default:
312
+ return null;
313
+ }
314
+ };
315
+ return /* @__PURE__ */ jsx(
316
+ motion.button,
317
+ {
318
+ layout: true,
319
+ transition: { type: "spring", stiffness: 500, damping: 25 },
320
+ onMouseEnter: handleMouseEnter,
321
+ onMouseMove: handleMouseMove,
322
+ onMouseLeave: handleMouseLeave,
323
+ onPointerEnter: handleMouseEnter,
324
+ onPointerLeave: handleMouseLeave,
325
+ onPointerMove: handleMouseMove,
326
+ onFocus: handleMouseEnter,
327
+ onBlur: handleMouseLeave,
328
+ onTouchStart: handleTouchStart,
329
+ onTouchEnd: handleTouchEnd,
330
+ animate: {
331
+ paddingLeft: isMatrix ? 0 : isHovered ? 28 : 24,
332
+ paddingRight: isMatrix ? 0 : isHovered ? 28 : 24,
333
+ x: isHovered && config.interactionType === "magnetic" ? mouseCoords.x : 0,
334
+ y: isHovered && config.interactionType === "magnetic" ? mouseCoords.y : 0,
335
+ backgroundColor: isLightTheme ? hasInteracted && config.id === "4" ? "rgba(0,0,0,0.08)" : isHovered ? "rgba(0,0,0,0.06)" : "rgba(0,0,0,0.04)" : hasInteracted && config.id === "4" ? "rgba(255,255,255,0.08)" : isHovered ? "rgba(255,255,255,0.06)" : "rgba(255,255,255,0.04)"
336
+ },
337
+ whileHover: { scale: 1.02 },
338
+ whileTap: { scale: 0.96 },
339
+ className: `relative flex items-center justify-center rounded-[40px] border-0 cursor-pointer shadow-none transition-colors duration-150 ${isMatrix ? "w-[36px] h-[36px] sm:w-[42px] sm:h-[42px] px-0" : "h-[36px] min-w-[75px]"} ${config.interactionType === "glare" ? "overflow-hidden" : ""} ${isLightTheme ? "text-black" : "text-[#e3e3e3]"}`,
340
+ children: /* @__PURE__ */ jsx(motion.div, { layout: true, transition: { type: "spring", stiffness: 500, damping: 25 }, className: `flex items-center justify-center w-full ${isMatrix ? "scale-100 sm:scale-[1.15] origin-center" : ""}`, children: renderIconContent() })
341
+ }
342
+ );
343
+ });
344
+ export {
345
+ AnimatedButton
346
+ };
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { HTMLMotionProps } from "framer-motion";
3
+ export declare function IconSwap({ children }: {
4
+ children: React.ReactNode;
5
+ }): React.JSX.Element;
6
+ export declare function IconSwapItem({ children, className, ...props }: HTMLMotionProps<"span">): React.JSX.Element;
@@ -0,0 +1,9 @@
1
+ "use client";
2
+ import {
3
+ IconSwap,
4
+ IconSwapItem
5
+ } from "../../catalog-chunks/chunk-3TYA5TCG.js";
6
+ export {
7
+ IconSwap,
8
+ IconSwapItem
9
+ };
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ export declare function InViewRender({ children }: {
3
+ children: React.ReactNode;
4
+ }): React.JSX.Element;
@@ -0,0 +1,14 @@
1
+ "use client";
2
+
3
+ // .generated/catalog/components/InViewRender.tsx
4
+ import { useRef } from "react";
5
+ import { useInView } from "framer-motion";
6
+ import { jsx } from "react/jsx-runtime";
7
+ function InViewRender({ children }) {
8
+ const ref = useRef(null);
9
+ const isInView = useInView(ref, { margin: "200px", once: true });
10
+ return /* @__PURE__ */ jsx("div", { ref, className: "w-full h-full flex items-center justify-center", children: isInView ? children : null });
11
+ }
12
+ export {
13
+ InViewRender
14
+ };
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { TransitionPreset } from '../data/transitions';
3
+ interface PageTransitionCardProps {
4
+ preset: TransitionPreset;
5
+ theme: 'dark' | 'light';
6
+ showToast: (msg: string) => void;
7
+ }
8
+ export declare const PageTransitionCard: React.FC<PageTransitionCardProps>;
9
+ export {};