@varity-labs/ui-kit 2.0.0-alpha.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 (495) hide show
  1. package/LICENSE +31 -0
  2. package/README.md +248 -0
  3. package/dist/components/AI/ChatbotWidget.d.ts +53 -0
  4. package/dist/components/AI/ChatbotWidget.d.ts.map +1 -0
  5. package/dist/components/AI/ChatbotWidget.js +126 -0
  6. package/dist/components/AI/ChatbotWidget.js.map +1 -0
  7. package/dist/components/AI/InputBar.d.ts +25 -0
  8. package/dist/components/AI/InputBar.d.ts.map +1 -0
  9. package/dist/components/AI/InputBar.js +126 -0
  10. package/dist/components/AI/InputBar.js.map +1 -0
  11. package/dist/components/AI/MessageBubble.d.ts +37 -0
  12. package/dist/components/AI/MessageBubble.d.ts.map +1 -0
  13. package/dist/components/AI/MessageBubble.js +124 -0
  14. package/dist/components/AI/MessageBubble.js.map +1 -0
  15. package/dist/components/AI/index.d.ts +12 -0
  16. package/dist/components/AI/index.d.ts.map +1 -0
  17. package/dist/components/AI/index.js +9 -0
  18. package/dist/components/AI/index.js.map +1 -0
  19. package/dist/components/Analytics/AnalyticsCard.d.ts +48 -0
  20. package/dist/components/Analytics/AnalyticsCard.d.ts.map +1 -0
  21. package/dist/components/Analytics/AnalyticsCard.js +156 -0
  22. package/dist/components/Analytics/AnalyticsCard.js.map +1 -0
  23. package/dist/components/Analytics/ChartContainer.d.ts +53 -0
  24. package/dist/components/Analytics/ChartContainer.d.ts.map +1 -0
  25. package/dist/components/Analytics/ChartContainer.js +128 -0
  26. package/dist/components/Analytics/ChartContainer.js.map +1 -0
  27. package/dist/components/Analytics/DataTable.d.ts +62 -0
  28. package/dist/components/Analytics/DataTable.d.ts.map +1 -0
  29. package/dist/components/Analytics/DataTable.js +165 -0
  30. package/dist/components/Analytics/DataTable.js.map +1 -0
  31. package/dist/components/Analytics/MetricDisplay.d.ts +42 -0
  32. package/dist/components/Analytics/MetricDisplay.d.ts.map +1 -0
  33. package/dist/components/Analytics/MetricDisplay.js +110 -0
  34. package/dist/components/Analytics/MetricDisplay.js.map +1 -0
  35. package/dist/components/Analytics/index.d.ts +14 -0
  36. package/dist/components/Analytics/index.d.ts.map +1 -0
  37. package/dist/components/Analytics/index.js +10 -0
  38. package/dist/components/Analytics/index.js.map +1 -0
  39. package/dist/components/Branding/Attribution.d.ts +39 -0
  40. package/dist/components/Branding/Attribution.d.ts.map +1 -0
  41. package/dist/components/Branding/Attribution.js +124 -0
  42. package/dist/components/Branding/Attribution.js.map +1 -0
  43. package/dist/components/Branding/Logo.d.ts +39 -0
  44. package/dist/components/Branding/Logo.d.ts.map +1 -0
  45. package/dist/components/Branding/Logo.js +67 -0
  46. package/dist/components/Branding/Logo.js.map +1 -0
  47. package/dist/components/Branding/ThemeProvider.d.ts +85 -0
  48. package/dist/components/Branding/ThemeProvider.d.ts.map +1 -0
  49. package/dist/components/Branding/ThemeProvider.js +186 -0
  50. package/dist/components/Branding/ThemeProvider.js.map +1 -0
  51. package/dist/components/Branding/index.d.ts +12 -0
  52. package/dist/components/Branding/index.d.ts.map +1 -0
  53. package/dist/components/Branding/index.js +9 -0
  54. package/dist/components/Branding/index.js.map +1 -0
  55. package/dist/components/Dashboard/DashboardFooter.d.ts +30 -0
  56. package/dist/components/Dashboard/DashboardFooter.d.ts.map +1 -0
  57. package/dist/components/Dashboard/DashboardFooter.js +68 -0
  58. package/dist/components/Dashboard/DashboardFooter.js.map +1 -0
  59. package/dist/components/Dashboard/DashboardHeader.d.ts +24 -0
  60. package/dist/components/Dashboard/DashboardHeader.d.ts.map +1 -0
  61. package/dist/components/Dashboard/DashboardHeader.js +87 -0
  62. package/dist/components/Dashboard/DashboardHeader.js.map +1 -0
  63. package/dist/components/Dashboard/DashboardLayout.d.ts +71 -0
  64. package/dist/components/Dashboard/DashboardLayout.d.ts.map +1 -0
  65. package/dist/components/Dashboard/DashboardLayout.js +52 -0
  66. package/dist/components/Dashboard/DashboardLayout.js.map +1 -0
  67. package/dist/components/Dashboard/DashboardSidebar.d.ts +26 -0
  68. package/dist/components/Dashboard/DashboardSidebar.d.ts.map +1 -0
  69. package/dist/components/Dashboard/DashboardSidebar.js +146 -0
  70. package/dist/components/Dashboard/DashboardSidebar.js.map +1 -0
  71. package/dist/components/Dashboard/EmptyState.d.ts +84 -0
  72. package/dist/components/Dashboard/EmptyState.d.ts.map +1 -0
  73. package/dist/components/Dashboard/EmptyState.js +99 -0
  74. package/dist/components/Dashboard/EmptyState.js.map +1 -0
  75. package/dist/components/Dashboard/KPICard.d.ts +58 -0
  76. package/dist/components/Dashboard/KPICard.d.ts.map +1 -0
  77. package/dist/components/Dashboard/KPICard.js +82 -0
  78. package/dist/components/Dashboard/KPICard.js.map +1 -0
  79. package/dist/components/Dashboard/LoadingSkeleton.d.ts +58 -0
  80. package/dist/components/Dashboard/LoadingSkeleton.d.ts.map +1 -0
  81. package/dist/components/Dashboard/LoadingSkeleton.js +105 -0
  82. package/dist/components/Dashboard/LoadingSkeleton.js.map +1 -0
  83. package/dist/components/Dashboard/StatusBadge.d.ts +57 -0
  84. package/dist/components/Dashboard/StatusBadge.d.ts.map +1 -0
  85. package/dist/components/Dashboard/StatusBadge.js +149 -0
  86. package/dist/components/Dashboard/StatusBadge.js.map +1 -0
  87. package/dist/components/Dashboard/index.d.ts +19 -0
  88. package/dist/components/Dashboard/index.d.ts.map +1 -0
  89. package/dist/components/Dashboard/index.js +18 -0
  90. package/dist/components/Dashboard/index.js.map +1 -0
  91. package/dist/components/InAppWallet/EmailLoginButton.d.ts +27 -0
  92. package/dist/components/InAppWallet/EmailLoginButton.d.ts.map +1 -0
  93. package/dist/components/InAppWallet/EmailLoginButton.js +84 -0
  94. package/dist/components/InAppWallet/EmailLoginButton.js.map +1 -0
  95. package/dist/components/InAppWallet/InAppWalletProvider.d.ts +54 -0
  96. package/dist/components/InAppWallet/InAppWalletProvider.d.ts.map +1 -0
  97. package/dist/components/InAppWallet/InAppWalletProvider.js +238 -0
  98. package/dist/components/InAppWallet/InAppWalletProvider.js.map +1 -0
  99. package/dist/components/InAppWallet/OnboardingFlow.d.ts +25 -0
  100. package/dist/components/InAppWallet/OnboardingFlow.d.ts.map +1 -0
  101. package/dist/components/InAppWallet/OnboardingFlow.js +159 -0
  102. package/dist/components/InAppWallet/OnboardingFlow.js.map +1 -0
  103. package/dist/components/InAppWallet/SocialLoginButtons.d.ts +28 -0
  104. package/dist/components/InAppWallet/SocialLoginButtons.d.ts.map +1 -0
  105. package/dist/components/InAppWallet/SocialLoginButtons.js +128 -0
  106. package/dist/components/InAppWallet/SocialLoginButtons.js.map +1 -0
  107. package/dist/components/InAppWallet/index.d.ts +15 -0
  108. package/dist/components/InAppWallet/index.d.ts.map +1 -0
  109. package/dist/components/InAppWallet/index.js +14 -0
  110. package/dist/components/InAppWallet/index.js.map +1 -0
  111. package/dist/components/Onramp/BuyUSDCButton.d.ts +27 -0
  112. package/dist/components/Onramp/BuyUSDCButton.d.ts.map +1 -0
  113. package/dist/components/Onramp/BuyUSDCButton.js +70 -0
  114. package/dist/components/Onramp/BuyUSDCButton.js.map +1 -0
  115. package/dist/components/Onramp/OnrampWidget.d.ts +38 -0
  116. package/dist/components/Onramp/OnrampWidget.d.ts.map +1 -0
  117. package/dist/components/Onramp/OnrampWidget.js +105 -0
  118. package/dist/components/Onramp/OnrampWidget.js.map +1 -0
  119. package/dist/components/Onramp/index.d.ts +14 -0
  120. package/dist/components/Onramp/index.d.ts.map +1 -0
  121. package/dist/components/Onramp/index.js +12 -0
  122. package/dist/components/Onramp/index.js.map +1 -0
  123. package/dist/components/Payments/CheckoutModal.d.ts +19 -0
  124. package/dist/components/Payments/CheckoutModal.d.ts.map +1 -0
  125. package/dist/components/Payments/CheckoutModal.js +183 -0
  126. package/dist/components/Payments/CheckoutModal.js.map +1 -0
  127. package/dist/components/Payments/SubscriptionWidget.d.ts +17 -0
  128. package/dist/components/Payments/SubscriptionWidget.d.ts.map +1 -0
  129. package/dist/components/Payments/SubscriptionWidget.js +89 -0
  130. package/dist/components/Payments/SubscriptionWidget.js.map +1 -0
  131. package/dist/components/Payments/constants.d.ts +59 -0
  132. package/dist/components/Payments/constants.d.ts.map +1 -0
  133. package/dist/components/Payments/constants.js +145 -0
  134. package/dist/components/Payments/constants.js.map +1 -0
  135. package/dist/components/Payments/index.d.ts +10 -0
  136. package/dist/components/Payments/index.d.ts.map +1 -0
  137. package/dist/components/Payments/index.js +12 -0
  138. package/dist/components/Payments/index.js.map +1 -0
  139. package/dist/components/Payments/types.d.ts +119 -0
  140. package/dist/components/Payments/types.d.ts.map +1 -0
  141. package/dist/components/Payments/types.js +27 -0
  142. package/dist/components/Payments/types.js.map +1 -0
  143. package/dist/components/Payments/usePayments.d.ts +33 -0
  144. package/dist/components/Payments/usePayments.d.ts.map +1 -0
  145. package/dist/components/Payments/usePayments.js +249 -0
  146. package/dist/components/Payments/usePayments.js.map +1 -0
  147. package/dist/components/Privy/InitTimeoutScreen.d.ts +62 -0
  148. package/dist/components/Privy/InitTimeoutScreen.d.ts.map +1 -0
  149. package/dist/components/Privy/InitTimeoutScreen.js +64 -0
  150. package/dist/components/Privy/InitTimeoutScreen.js.map +1 -0
  151. package/dist/components/Privy/InitializingScreen.d.ts +56 -0
  152. package/dist/components/Privy/InitializingScreen.d.ts.map +1 -0
  153. package/dist/components/Privy/InitializingScreen.js +60 -0
  154. package/dist/components/Privy/InitializingScreen.js.map +1 -0
  155. package/dist/components/Privy/PrivyLoginButton.d.ts +27 -0
  156. package/dist/components/Privy/PrivyLoginButton.d.ts.map +1 -0
  157. package/dist/components/Privy/PrivyLoginButton.js +48 -0
  158. package/dist/components/Privy/PrivyLoginButton.js.map +1 -0
  159. package/dist/components/Privy/PrivyProtectedRoute.d.ts +22 -0
  160. package/dist/components/Privy/PrivyProtectedRoute.d.ts.map +1 -0
  161. package/dist/components/Privy/PrivyProtectedRoute.js +46 -0
  162. package/dist/components/Privy/PrivyProtectedRoute.js.map +1 -0
  163. package/dist/components/Privy/PrivyReadyGate.d.ts +69 -0
  164. package/dist/components/Privy/PrivyReadyGate.d.ts.map +1 -0
  165. package/dist/components/Privy/PrivyReadyGate.js +83 -0
  166. package/dist/components/Privy/PrivyReadyGate.js.map +1 -0
  167. package/dist/components/Privy/PrivyUserProfile.d.ts +25 -0
  168. package/dist/components/Privy/PrivyUserProfile.d.ts.map +1 -0
  169. package/dist/components/Privy/PrivyUserProfile.js +98 -0
  170. package/dist/components/Privy/PrivyUserProfile.js.map +1 -0
  171. package/dist/components/Privy/index.d.ts +21 -0
  172. package/dist/components/Privy/index.d.ts.map +1 -0
  173. package/dist/components/Privy/index.js +16 -0
  174. package/dist/components/Privy/index.js.map +1 -0
  175. package/dist/components/SIWE/AuthStatus.d.ts +15 -0
  176. package/dist/components/SIWE/AuthStatus.d.ts.map +1 -0
  177. package/dist/components/SIWE/AuthStatus.js +47 -0
  178. package/dist/components/SIWE/AuthStatus.js.map +1 -0
  179. package/dist/components/SIWE/ProtectedRoute.d.ts +17 -0
  180. package/dist/components/SIWE/ProtectedRoute.d.ts.map +1 -0
  181. package/dist/components/SIWE/ProtectedRoute.js +52 -0
  182. package/dist/components/SIWE/ProtectedRoute.js.map +1 -0
  183. package/dist/components/SIWE/SIWEButton.d.ts +22 -0
  184. package/dist/components/SIWE/SIWEButton.d.ts.map +1 -0
  185. package/dist/components/SIWE/SIWEButton.js +106 -0
  186. package/dist/components/SIWE/SIWEButton.js.map +1 -0
  187. package/dist/components/SIWE/SIWEModal.d.ts +19 -0
  188. package/dist/components/SIWE/SIWEModal.d.ts.map +1 -0
  189. package/dist/components/SIWE/SIWEModal.js +75 -0
  190. package/dist/components/SIWE/SIWEModal.js.map +1 -0
  191. package/dist/components/SIWE/SIWEProvider.d.ts +38 -0
  192. package/dist/components/SIWE/SIWEProvider.d.ts.map +1 -0
  193. package/dist/components/SIWE/SIWEProvider.js +227 -0
  194. package/dist/components/SIWE/SIWEProvider.js.map +1 -0
  195. package/dist/components/SIWE/index.d.ts +15 -0
  196. package/dist/components/SIWE/index.d.ts.map +1 -0
  197. package/dist/components/SIWE/index.js +10 -0
  198. package/dist/components/SIWE/index.js.map +1 -0
  199. package/dist/components/index.d.ts +11 -0
  200. package/dist/components/index.d.ts.map +1 -0
  201. package/dist/components/index.js +16 -0
  202. package/dist/components/index.js.map +1 -0
  203. package/dist/components/templates/Finance/FinanceDashboard.d.ts +15 -0
  204. package/dist/components/templates/Finance/FinanceDashboard.d.ts.map +1 -0
  205. package/dist/components/templates/Finance/FinanceDashboard.js +112 -0
  206. package/dist/components/templates/Finance/FinanceDashboard.js.map +1 -0
  207. package/dist/components/templates/Healthcare/HealthcareDashboard.d.ts +15 -0
  208. package/dist/components/templates/Healthcare/HealthcareDashboard.d.ts.map +1 -0
  209. package/dist/components/templates/Healthcare/HealthcareDashboard.js +121 -0
  210. package/dist/components/templates/Healthcare/HealthcareDashboard.js.map +1 -0
  211. package/dist/components/templates/ISO/ISODashboard.d.ts +15 -0
  212. package/dist/components/templates/ISO/ISODashboard.d.ts.map +1 -0
  213. package/dist/components/templates/ISO/ISODashboard.js +184 -0
  214. package/dist/components/templates/ISO/ISODashboard.js.map +1 -0
  215. package/dist/components/templates/Retail/RetailDashboard.d.ts +15 -0
  216. package/dist/components/templates/Retail/RetailDashboard.d.ts.map +1 -0
  217. package/dist/components/templates/Retail/RetailDashboard.js +151 -0
  218. package/dist/components/templates/Retail/RetailDashboard.js.map +1 -0
  219. package/dist/components/templates/index.d.ts +14 -0
  220. package/dist/components/templates/index.d.ts.map +1 -0
  221. package/dist/components/templates/index.js +14 -0
  222. package/dist/components/templates/index.js.map +1 -0
  223. package/dist/config/chains.d.ts +23 -0
  224. package/dist/config/chains.d.ts.map +1 -0
  225. package/dist/config/chains.js +55 -0
  226. package/dist/config/chains.js.map +1 -0
  227. package/dist/core/VarityClient.d.ts +76 -0
  228. package/dist/core/VarityClient.d.ts.map +1 -0
  229. package/dist/core/VarityClient.js +99 -0
  230. package/dist/core/VarityClient.js.map +1 -0
  231. package/dist/core/config.d.ts +136 -0
  232. package/dist/core/config.d.ts.map +1 -0
  233. package/dist/core/config.js +156 -0
  234. package/dist/core/config.js.map +1 -0
  235. package/dist/hooks/index.d.ts +17 -0
  236. package/dist/hooks/index.d.ts.map +1 -0
  237. package/dist/hooks/index.js +18 -0
  238. package/dist/hooks/index.js.map +1 -0
  239. package/dist/hooks/useAnalytics.d.ts +94 -0
  240. package/dist/hooks/useAnalytics.d.ts.map +1 -0
  241. package/dist/hooks/useAnalytics.js +116 -0
  242. package/dist/hooks/useAnalytics.js.map +1 -0
  243. package/dist/hooks/useAuth.d.ts +71 -0
  244. package/dist/hooks/useAuth.d.ts.map +1 -0
  245. package/dist/hooks/useAuth.js +198 -0
  246. package/dist/hooks/useAuth.js.map +1 -0
  247. package/dist/hooks/useDashboard.d.ts +110 -0
  248. package/dist/hooks/useDashboard.d.ts.map +1 -0
  249. package/dist/hooks/useDashboard.js +201 -0
  250. package/dist/hooks/useDashboard.js.map +1 -0
  251. package/dist/hooks/useVarityAPI.d.ts +88 -0
  252. package/dist/hooks/useVarityAPI.d.ts.map +1 -0
  253. package/dist/hooks/useVarityAPI.js +138 -0
  254. package/dist/hooks/useVarityAPI.js.map +1 -0
  255. package/dist/hooks/useWalletAuth.d.ts +108 -0
  256. package/dist/hooks/useWalletAuth.d.ts.map +1 -0
  257. package/dist/hooks/useWalletAuth.js +415 -0
  258. package/dist/hooks/useWalletAuth.js.map +1 -0
  259. package/dist/hooks/web3/index.d.ts +5 -0
  260. package/dist/hooks/web3/index.d.ts.map +1 -0
  261. package/dist/hooks/web3/index.js +6 -0
  262. package/dist/hooks/web3/index.js.map +1 -0
  263. package/dist/hooks/web3/useAddressValidation.d.ts +37 -0
  264. package/dist/hooks/web3/useAddressValidation.d.ts.map +1 -0
  265. package/dist/hooks/web3/useAddressValidation.js +59 -0
  266. package/dist/hooks/web3/useAddressValidation.js.map +1 -0
  267. package/dist/hooks/web3/useBlockExplorer.d.ts +37 -0
  268. package/dist/hooks/web3/useBlockExplorer.d.ts.map +1 -0
  269. package/dist/hooks/web3/useBlockExplorer.js +59 -0
  270. package/dist/hooks/web3/useBlockExplorer.js.map +1 -0
  271. package/dist/hooks/web3/useUSDCFormat.d.ts +34 -0
  272. package/dist/hooks/web3/useUSDCFormat.d.ts.map +1 -0
  273. package/dist/hooks/web3/useUSDCFormat.js +43 -0
  274. package/dist/hooks/web3/useUSDCFormat.js.map +1 -0
  275. package/dist/hooks/web3/useVarityWallet.d.ts +48 -0
  276. package/dist/hooks/web3/useVarityWallet.d.ts.map +1 -0
  277. package/dist/hooks/web3/useVarityWallet.js +70 -0
  278. package/dist/hooks/web3/useVarityWallet.js.map +1 -0
  279. package/dist/index.d.ts +55 -0
  280. package/dist/index.d.ts.map +1 -0
  281. package/dist/index.js +68 -0
  282. package/dist/index.js.map +1 -0
  283. package/dist/modules/analytics/AnalyticsClient.d.ts +72 -0
  284. package/dist/modules/analytics/AnalyticsClient.d.ts.map +1 -0
  285. package/dist/modules/analytics/AnalyticsClient.js +56 -0
  286. package/dist/modules/analytics/AnalyticsClient.js.map +1 -0
  287. package/dist/modules/analytics/index.d.ts +2 -0
  288. package/dist/modules/analytics/index.d.ts.map +1 -0
  289. package/dist/modules/analytics/index.js +2 -0
  290. package/dist/modules/analytics/index.js.map +1 -0
  291. package/dist/modules/auth/AuthClient.d.ts +41 -0
  292. package/dist/modules/auth/AuthClient.d.ts.map +1 -0
  293. package/dist/modules/auth/AuthClient.js +36 -0
  294. package/dist/modules/auth/AuthClient.js.map +1 -0
  295. package/dist/modules/auth/index.d.ts +2 -0
  296. package/dist/modules/auth/index.d.ts.map +1 -0
  297. package/dist/modules/auth/index.js +2 -0
  298. package/dist/modules/auth/index.js.map +1 -0
  299. package/dist/modules/cache/CacheClient.d.ts +48 -0
  300. package/dist/modules/cache/CacheClient.d.ts.map +1 -0
  301. package/dist/modules/cache/CacheClient.js +59 -0
  302. package/dist/modules/cache/CacheClient.js.map +1 -0
  303. package/dist/modules/cache/index.d.ts +2 -0
  304. package/dist/modules/cache/index.d.ts.map +1 -0
  305. package/dist/modules/cache/index.js +2 -0
  306. package/dist/modules/cache/index.js.map +1 -0
  307. package/dist/modules/compute/ComputeClient.d.ts +54 -0
  308. package/dist/modules/compute/ComputeClient.d.ts.map +1 -0
  309. package/dist/modules/compute/ComputeClient.js +39 -0
  310. package/dist/modules/compute/ComputeClient.js.map +1 -0
  311. package/dist/modules/compute/index.d.ts +2 -0
  312. package/dist/modules/compute/index.d.ts.map +1 -0
  313. package/dist/modules/compute/index.js +2 -0
  314. package/dist/modules/compute/index.js.map +1 -0
  315. package/dist/modules/export/ExportClient.d.ts +56 -0
  316. package/dist/modules/export/ExportClient.d.ts.map +1 -0
  317. package/dist/modules/export/ExportClient.js +42 -0
  318. package/dist/modules/export/ExportClient.js.map +1 -0
  319. package/dist/modules/export/index.d.ts +2 -0
  320. package/dist/modules/export/index.d.ts.map +1 -0
  321. package/dist/modules/export/index.js +2 -0
  322. package/dist/modules/export/index.js.map +1 -0
  323. package/dist/modules/forecasting/ForecastingClient.d.ts +112 -0
  324. package/dist/modules/forecasting/ForecastingClient.d.ts.map +1 -0
  325. package/dist/modules/forecasting/ForecastingClient.js +48 -0
  326. package/dist/modules/forecasting/ForecastingClient.js.map +1 -0
  327. package/dist/modules/forecasting/index.d.ts +2 -0
  328. package/dist/modules/forecasting/index.d.ts.map +1 -0
  329. package/dist/modules/forecasting/index.js +2 -0
  330. package/dist/modules/forecasting/index.js.map +1 -0
  331. package/dist/modules/monitoring/MonitoringClient.d.ts +67 -0
  332. package/dist/modules/monitoring/MonitoringClient.d.ts.map +1 -0
  333. package/dist/modules/monitoring/MonitoringClient.js +48 -0
  334. package/dist/modules/monitoring/MonitoringClient.js.map +1 -0
  335. package/dist/modules/monitoring/index.d.ts +2 -0
  336. package/dist/modules/monitoring/index.d.ts.map +1 -0
  337. package/dist/modules/monitoring/index.js +2 -0
  338. package/dist/modules/monitoring/index.js.map +1 -0
  339. package/dist/modules/notifications/NotificationsClient.d.ts +68 -0
  340. package/dist/modules/notifications/NotificationsClient.d.ts.map +1 -0
  341. package/dist/modules/notifications/NotificationsClient.js +50 -0
  342. package/dist/modules/notifications/NotificationsClient.js.map +1 -0
  343. package/dist/modules/notifications/index.d.ts +2 -0
  344. package/dist/modules/notifications/index.d.ts.map +1 -0
  345. package/dist/modules/notifications/index.js +2 -0
  346. package/dist/modules/notifications/index.js.map +1 -0
  347. package/dist/modules/oracle/OracleClient.d.ts +48 -0
  348. package/dist/modules/oracle/OracleClient.d.ts.map +1 -0
  349. package/dist/modules/oracle/OracleClient.js +34 -0
  350. package/dist/modules/oracle/OracleClient.js.map +1 -0
  351. package/dist/modules/oracle/index.d.ts +2 -0
  352. package/dist/modules/oracle/index.d.ts.map +1 -0
  353. package/dist/modules/oracle/index.js +2 -0
  354. package/dist/modules/oracle/index.js.map +1 -0
  355. package/dist/modules/storage/StorageClient.d.ts +44 -0
  356. package/dist/modules/storage/StorageClient.d.ts.map +1 -0
  357. package/dist/modules/storage/StorageClient.js +43 -0
  358. package/dist/modules/storage/StorageClient.js.map +1 -0
  359. package/dist/modules/storage/index.d.ts +2 -0
  360. package/dist/modules/storage/index.d.ts.map +1 -0
  361. package/dist/modules/storage/index.js +2 -0
  362. package/dist/modules/storage/index.js.map +1 -0
  363. package/dist/modules/templates/TemplateDeploymentClient.d.ts +208 -0
  364. package/dist/modules/templates/TemplateDeploymentClient.d.ts.map +1 -0
  365. package/dist/modules/templates/TemplateDeploymentClient.js +101 -0
  366. package/dist/modules/templates/TemplateDeploymentClient.js.map +1 -0
  367. package/dist/modules/templates/index.d.ts +8 -0
  368. package/dist/modules/templates/index.d.ts.map +1 -0
  369. package/dist/modules/templates/index.js +7 -0
  370. package/dist/modules/templates/index.js.map +1 -0
  371. package/dist/modules/webhooks/WebhooksClient.d.ts +85 -0
  372. package/dist/modules/webhooks/WebhooksClient.d.ts.map +1 -0
  373. package/dist/modules/webhooks/WebhooksClient.js +68 -0
  374. package/dist/modules/webhooks/WebhooksClient.js.map +1 -0
  375. package/dist/modules/webhooks/index.d.ts +2 -0
  376. package/dist/modules/webhooks/index.d.ts.map +1 -0
  377. package/dist/modules/webhooks/index.js +2 -0
  378. package/dist/modules/webhooks/index.js.map +1 -0
  379. package/dist/modules/zk/ZKClient.d.ts +67 -0
  380. package/dist/modules/zk/ZKClient.d.ts.map +1 -0
  381. package/dist/modules/zk/ZKClient.js +36 -0
  382. package/dist/modules/zk/ZKClient.js.map +1 -0
  383. package/dist/modules/zk/index.d.ts +2 -0
  384. package/dist/modules/zk/index.d.ts.map +1 -0
  385. package/dist/modules/zk/index.js +2 -0
  386. package/dist/modules/zk/index.js.map +1 -0
  387. package/dist/providers/ChainContext.d.ts +65 -0
  388. package/dist/providers/ChainContext.d.ts.map +1 -0
  389. package/dist/providers/ChainContext.js +92 -0
  390. package/dist/providers/ChainContext.js.map +1 -0
  391. package/dist/providers/PrivyProvider.d.ts +42 -0
  392. package/dist/providers/PrivyProvider.d.ts.map +1 -0
  393. package/dist/providers/PrivyProvider.js +131 -0
  394. package/dist/providers/PrivyProvider.js.map +1 -0
  395. package/dist/providers/PrivyStack.d.ts +165 -0
  396. package/dist/providers/PrivyStack.d.ts.map +1 -0
  397. package/dist/providers/PrivyStack.js +295 -0
  398. package/dist/providers/PrivyStack.js.map +1 -0
  399. package/dist/providers/VarityDashboardProvider.d.ts +90 -0
  400. package/dist/providers/VarityDashboardProvider.d.ts.map +1 -0
  401. package/dist/providers/VarityDashboardProvider.js +242 -0
  402. package/dist/providers/VarityDashboardProvider.js.map +1 -0
  403. package/dist/providers/VarityProvider.d.ts +32 -0
  404. package/dist/providers/VarityProvider.d.ts.map +1 -0
  405. package/dist/providers/VarityProvider.js +56 -0
  406. package/dist/providers/VarityProvider.js.map +1 -0
  407. package/dist/providers/WalletContext.d.ts +68 -0
  408. package/dist/providers/WalletContext.d.ts.map +1 -0
  409. package/dist/providers/WalletContext.js +98 -0
  410. package/dist/providers/WalletContext.js.map +1 -0
  411. package/dist/providers/WalletSyncProvider.d.ts +84 -0
  412. package/dist/providers/WalletSyncProvider.d.ts.map +1 -0
  413. package/dist/providers/WalletSyncProvider.js +132 -0
  414. package/dist/providers/WalletSyncProvider.js.map +1 -0
  415. package/dist/providers/index.d.ts +47 -0
  416. package/dist/providers/index.d.ts.map +1 -0
  417. package/dist/providers/index.js +51 -0
  418. package/dist/providers/index.js.map +1 -0
  419. package/dist/tests/mocks/httpClient.mock.d.ts +62 -0
  420. package/dist/tests/mocks/httpClient.mock.d.ts.map +1 -0
  421. package/dist/tests/mocks/httpClient.mock.js +108 -0
  422. package/dist/tests/mocks/httpClient.mock.js.map +1 -0
  423. package/dist/tests/setup.d.ts +6 -0
  424. package/dist/tests/setup.d.ts.map +1 -0
  425. package/dist/tests/setup.js +51 -0
  426. package/dist/tests/setup.js.map +1 -0
  427. package/dist/types/api-extensions.d.ts +92 -0
  428. package/dist/types/api-extensions.d.ts.map +1 -0
  429. package/dist/types/api-extensions.js +7 -0
  430. package/dist/types/api-extensions.js.map +1 -0
  431. package/dist/utils/http.d.ts +51 -0
  432. package/dist/utils/http.d.ts.map +1 -0
  433. package/dist/utils/http.js +104 -0
  434. package/dist/utils/http.js.map +1 -0
  435. package/dist/wallets/SimpleSmartWallet.d.ts +68 -0
  436. package/dist/wallets/SimpleSmartWallet.d.ts.map +1 -0
  437. package/dist/wallets/SimpleSmartWallet.js +74 -0
  438. package/dist/wallets/SimpleSmartWallet.js.map +1 -0
  439. package/dist/wallets/SmartWalletProvider.d.ts +217 -0
  440. package/dist/wallets/SmartWalletProvider.d.ts.map +1 -0
  441. package/dist/wallets/SmartWalletProvider.js +366 -0
  442. package/dist/wallets/SmartWalletProvider.js.map +1 -0
  443. package/dist/wallets/config.d.ts +199 -0
  444. package/dist/wallets/config.d.ts.map +1 -0
  445. package/dist/wallets/config.js +183 -0
  446. package/dist/wallets/config.js.map +1 -0
  447. package/dist/wallets/index.d.ts +9 -0
  448. package/dist/wallets/index.d.ts.map +1 -0
  449. package/dist/wallets/index.js +9 -0
  450. package/dist/wallets/index.js.map +1 -0
  451. package/dist/web3/AddressDisplay/AddressDisplay.d.ts +33 -0
  452. package/dist/web3/AddressDisplay/AddressDisplay.d.ts.map +1 -0
  453. package/dist/web3/AddressDisplay/AddressDisplay.js +42 -0
  454. package/dist/web3/AddressDisplay/AddressDisplay.js.map +1 -0
  455. package/dist/web3/AddressInput/AddressInput.d.ts +36 -0
  456. package/dist/web3/AddressInput/AddressInput.d.ts.map +1 -0
  457. package/dist/web3/AddressInput/AddressInput.js +54 -0
  458. package/dist/web3/AddressInput/AddressInput.js.map +1 -0
  459. package/dist/web3/AmountInput/AmountInput.d.ts +41 -0
  460. package/dist/web3/AmountInput/AmountInput.d.ts.map +1 -0
  461. package/dist/web3/AmountInput/AmountInput.js +74 -0
  462. package/dist/web3/AmountInput/AmountInput.js.map +1 -0
  463. package/dist/web3/BalanceDisplay/BalanceDisplay.d.ts +30 -0
  464. package/dist/web3/BalanceDisplay/BalanceDisplay.d.ts.map +1 -0
  465. package/dist/web3/BalanceDisplay/BalanceDisplay.js +35 -0
  466. package/dist/web3/BalanceDisplay/BalanceDisplay.js.map +1 -0
  467. package/dist/web3/BlockExplorerLink/BlockExplorerLink.d.ts +41 -0
  468. package/dist/web3/BlockExplorerLink/BlockExplorerLink.d.ts.map +1 -0
  469. package/dist/web3/BlockExplorerLink/BlockExplorerLink.js +46 -0
  470. package/dist/web3/BlockExplorerLink/BlockExplorerLink.js.map +1 -0
  471. package/dist/web3/ConnectWallet/ConnectWallet.d.ts +35 -0
  472. package/dist/web3/ConnectWallet/ConnectWallet.d.ts.map +1 -0
  473. package/dist/web3/ConnectWallet/ConnectWallet.js +58 -0
  474. package/dist/web3/ConnectWallet/ConnectWallet.js.map +1 -0
  475. package/dist/web3/DisconnectButton/DisconnectButton.d.ts +30 -0
  476. package/dist/web3/DisconnectButton/DisconnectButton.d.ts.map +1 -0
  477. package/dist/web3/DisconnectButton/DisconnectButton.js +48 -0
  478. package/dist/web3/DisconnectButton/DisconnectButton.js.map +1 -0
  479. package/dist/web3/WalletBalance/WalletBalance.d.ts +27 -0
  480. package/dist/web3/WalletBalance/WalletBalance.d.ts.map +1 -0
  481. package/dist/web3/WalletBalance/WalletBalance.js +49 -0
  482. package/dist/web3/WalletBalance/WalletBalance.js.map +1 -0
  483. package/dist/web3/WalletDropdown/WalletDropdown.d.ts +29 -0
  484. package/dist/web3/WalletDropdown/WalletDropdown.d.ts.map +1 -0
  485. package/dist/web3/WalletDropdown/WalletDropdown.js +93 -0
  486. package/dist/web3/WalletDropdown/WalletDropdown.js.map +1 -0
  487. package/dist/web3/WalletInfo/WalletInfo.d.ts +31 -0
  488. package/dist/web3/WalletInfo/WalletInfo.d.ts.map +1 -0
  489. package/dist/web3/WalletInfo/WalletInfo.js +41 -0
  490. package/dist/web3/WalletInfo/WalletInfo.js.map +1 -0
  491. package/dist/web3/index.d.ts +11 -0
  492. package/dist/web3/index.d.ts.map +1 -0
  493. package/dist/web3/index.js +14 -0
  494. package/dist/web3/index.js.map +1 -0
  495. package/package.json +105 -0
package/LICENSE ADDED
@@ -0,0 +1,31 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Varity Labs
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
23
+ ---
24
+
25
+ Varity SDK - Web3 Operating System
26
+
27
+ Build and deploy apps on Varity L3 with 70-85% cost savings vs traditional cloud.
28
+
29
+ For more information, visit https://varity.so
30
+
31
+ "Powered by Varity" attribution is required when using this SDK.
package/README.md ADDED
@@ -0,0 +1,248 @@
1
+ # @varity/ui-kit v2.0.0
2
+
3
+ **Public Frontend SDK for Varity - Industry-Specific AI Dashboard Deployment**
4
+
5
+ Complete toolkit for deploying industry-specific AI dashboards to Varity L3 blockchain with template deployment, storage layers, and compliance features.
6
+
7
+ **Status:** ✅ **ALL BLOCKERS RESOLVED** - Ready for End-to-End Testing (Jan 24, 2026)
8
+
9
+ ## What's Working (Varity L3 - Chain ID 33529)
10
+
11
+ - ✅ **PrivyStack** - Zero-config auth with email/social/wallet login
12
+ - ✅ **SmartWalletProvider** - Gasless transactions (ERC-4337) - FULLY IMPLEMENTED
13
+ - ✅ **WalletSyncProvider** - Seamless Privy ↔ thirdweb wallet sync
14
+ - ✅ **OnrampWidget** - Credit card to USDC conversion
15
+ - ✅ **All smart contracts deployed** - Revenue split, App Store, Paymaster, Wallet Factory
16
+
17
+ ## Installation
18
+
19
+ ```bash
20
+ npm install @varity/ui-kit
21
+ # or
22
+ pnpm add @varity/ui-kit
23
+ # or
24
+ yarn add @varity/ui-kit
25
+ ```
26
+
27
+ ## 🎯 Which Provider Should I Use?
28
+
29
+ **90% of apps**: Use `PrivyStack` (zero-config auth + wallet + blockchain)
30
+
31
+ ```tsx
32
+ import { PrivyStack } from '@varity/ui-kit';
33
+
34
+ <PrivyStack>
35
+ <YourApp />
36
+ </PrivyStack>
37
+ ```
38
+
39
+ **Need gasless transactions?** Add `SmartWalletProvider`
40
+
41
+ ```tsx
42
+ import { PrivyStack, SmartWalletProvider } from '@varity/ui-kit';
43
+ import { createThirdwebClient } from 'thirdweb';
44
+ import { varityL3Testnet } from '@varity/sdk';
45
+
46
+ const client = createThirdwebClient({
47
+ clientId: process.env.NEXT_PUBLIC_THIRDWEB_CLIENT_ID!
48
+ });
49
+
50
+ <PrivyStack>
51
+ <SmartWalletProvider
52
+ config={{
53
+ client,
54
+ chain: varityL3Testnet,
55
+ gasless: { enabled: true }
56
+ }}
57
+ >
58
+ <YourApp />
59
+ </SmartWalletProvider>
60
+ </PrivyStack>
61
+ ```
62
+
63
+ **Building dashboards?** Use `VarityDashboardProvider` (includes Wagmi + React Query)
64
+
65
+ ```tsx
66
+ import { VarityDashboardProvider } from '@varity/ui-kit';
67
+
68
+ <VarityDashboardProvider
69
+ privyAppId={process.env.NEXT_PUBLIC_PRIVY_APP_ID}
70
+ thirdwebClientId={process.env.NEXT_PUBLIC_THIRDWEB_CLIENT_ID}
71
+ >
72
+ <Dashboard />
73
+ </VarityDashboardProvider>
74
+ ```
75
+
76
+ 📚 See [Provider Guide](./docs/PROVIDERS.md) for complete decision tree and migration paths.
77
+
78
+ ## Quick Start
79
+
80
+ ```typescript
81
+ import { VarityClient } from '@varity/ui-kit'
82
+
83
+ // Initialize client
84
+ const client = new VarityClient({
85
+ apiEndpoint: 'https://api.varity.io', // or staging/development
86
+ apiKey: 'your-api-key'
87
+ })
88
+
89
+ // Deploy industry-specific dashboard
90
+ const deployment = await client.templates.deployTemplate({
91
+ industry: 'finance',
92
+ templateId: 'finance-basic',
93
+ customization: {
94
+ branding: {
95
+ companyName: 'Acme Finance',
96
+ primaryColor: '#1E40AF',
97
+ darkMode: true
98
+ }
99
+ },
100
+ storageLayer: 'layer3',
101
+ deploymentType: 'production'
102
+ })
103
+
104
+ // Use any module
105
+ const kpis = await client.analytics.getKPIs({ period: 'current_month' })
106
+ const aiResponse = await client.compute.query('Analyze my financial data')
107
+ ```
108
+
109
+ ## Features
110
+
111
+ ### 🔌 Web3 Provider Stack (NEW in v2.0)
112
+ Zero-config React providers for Web3 apps:
113
+
114
+ - **PrivyStack** - Auth (email/social/wallet) + thirdweb integration
115
+ - **SmartWalletProvider** - Gasless transactions (ERC-4337)
116
+ - **VarityDashboardProvider** - Full-featured dashboards (Wagmi + React Query)
117
+ - **WalletSyncProvider** - Seamless Privy ↔ thirdweb wallet sync
118
+
119
+ ### 🎯 Template Deployment System
120
+ Deploy pre-configured industry-specific dashboards to Varity L3:
121
+
122
+ - **Finance** - Banking, compliance, transactions, risk management
123
+ - **Healthcare** - HIPAA compliance, patient data, medical operations
124
+ - **Retail** - E-commerce, inventory, supply chain
125
+ - **ISO Merchant** - Payment processing, PCI compliance
126
+
127
+ ### 🔐 3-Layer Encrypted Storage Architecture
128
+ - **Layer 1** - Varity internal documentation (Varity admins only)
129
+ - **Layer 2** - Industry RAG knowledge base (shared across industry)
130
+ - **Layer 3** - Customer-specific data (private, customer-only access)
131
+ - **ALL layers encrypted with Lit Protocol**
132
+
133
+ ### 🔌 13 Module Clients
134
+ All operations via secure REST API:
135
+
136
+ - **auth** - SIWE authentication
137
+ - **storage** - Filecoin/IPFS file storage
138
+ - **compute** - AI/LLM on Akash Network
139
+ - **zk** - Zero-knowledge ML proofs
140
+ - **analytics** - Business analytics
141
+ - **notifications** - Email/SMS/push notifications
142
+ - **export** - CSV/JSON/PDF data export
143
+ - **cache** - Redis caching
144
+ - **monitoring** - System health & metrics
145
+ - **forecasting** - Predictive analytics
146
+ - **webhooks** - Webhook management
147
+ - **oracle** - Oracle data feeds
148
+ - **templates** - Industry dashboard deployment (NEW)
149
+
150
+ ### 🎨 React Industry Templates
151
+ - `<FinanceDashboard />` - Financial services dashboard
152
+ - `<HealthcareDashboard />` - Healthcare operations dashboard
153
+ - `<RetailDashboard />` - Retail & e-commerce dashboard
154
+ - `<ISODashboard />` - ISO merchant services dashboard
155
+
156
+ ## API Reference
157
+
158
+ ### Authentication
159
+
160
+ ```typescript
161
+ // Login with SIWE
162
+ const { token } = await client.auth.login(message, signature)
163
+
164
+ // Get user profile
165
+ const user = await client.auth.me()
166
+ ```
167
+
168
+ ### Storage
169
+
170
+ ```typescript
171
+ // Upload file
172
+ const { cid } = await client.storage.uploadFile(file)
173
+
174
+ // Pin content
175
+ await client.storage.pinCID(cid)
176
+ ```
177
+
178
+ ### AI Compute
179
+
180
+ ```typescript
181
+ // Simple query
182
+ const response = await client.compute.query('What are the trends?')
183
+
184
+ // RAG query
185
+ const response = await client.compute.queryRAG({
186
+ query: 'Analyze customer behavior',
187
+ knowledgeBase: 'my-knowledge-base'
188
+ })
189
+ ```
190
+
191
+ ### Analytics
192
+
193
+ ```typescript
194
+ // Get KPIs
195
+ const kpis = await client.analytics.getKPIs({
196
+ period: 'current_month'
197
+ })
198
+
199
+ // Get trends
200
+ const trends = await client.analytics.getTrends({
201
+ startDate: '2025-01-01',
202
+ endDate: '2025-01-31'
203
+ })
204
+ ```
205
+
206
+ ## Documentation
207
+
208
+ ### Provider Guides
209
+ - **[Provider Decision Tree](./docs/PROVIDERS.md)** - Which provider should you use? (COMPREHENSIVE)
210
+ - **[Provider Hierarchy](./docs/PROVIDER_HIERARCHY.md)** - Visual architecture diagrams
211
+ - **[Credentials Guide](./docs/CREDENTIALS_GUIDE.md)** - Get Privy App ID & thirdweb Client ID
212
+
213
+ ### Integration Guides
214
+ - **[Privy Integration](./docs/PRIVY_INTEGRATION.md)** - Email/social/wallet authentication
215
+ - **[thirdweb Quickstart](./docs/THIRDWEB_QUICKSTART.md)** - Blockchain operations
216
+ - **[Installation Guide](./docs/INSTALLATION_GUIDE.md)** - Setup and configuration
217
+
218
+ ### Component Reference
219
+ - **[API Reference](./docs/API_REFERENCE.md)** - Complete API documentation
220
+ - **[Web3 Components](./docs/WEB3_COMPONENTS_REPORT.md)** - Wallet, balance, address components
221
+
222
+ ## Security
223
+
224
+ This SDK is PUBLIC and safe to distribute. It contains:
225
+
226
+ - ✅ React components
227
+ - ✅ API client (HTTP only)
228
+ - ✅ TypeScript types
229
+ - ❌ NO smart contract logic
230
+ - ❌ NO DePIN orchestration
231
+ - ❌ NO encryption keys
232
+ - ❌ NO business logic
233
+
234
+ All sensitive operations are handled by the Varity API Server.
235
+
236
+ ## License
237
+
238
+ MIT License - Safe for commercial use and redistribution
239
+
240
+ ## Support
241
+
242
+ - Documentation: https://docs.varity.com
243
+ - Discord: https://discord.gg/varity
244
+ - Email: support@varity.com
245
+
246
+ ---
247
+
248
+ **Powered by Varity** 🚀
@@ -0,0 +1,53 @@
1
+ /**
2
+ * ChatbotWidget - AI-powered chatbot interface
3
+ *
4
+ * Full-featured chatbot widget for conversational AI interactions.
5
+ */
6
+ import React from 'react';
7
+ import { Message } from './MessageBubble';
8
+ export interface ChatbotWidgetProps {
9
+ /** Widget title */
10
+ title?: string;
11
+ /** Placeholder text for input */
12
+ placeholder?: string;
13
+ /** Welcome message */
14
+ welcomeMessage?: string;
15
+ /** Send message callback */
16
+ onSendMessage: (message: string) => Promise<string>;
17
+ /** Widget height */
18
+ height?: number | string;
19
+ /** Widget width */
20
+ width?: number | string;
21
+ /** Initial messages */
22
+ initialMessages?: Message[];
23
+ /** Show timestamp on messages */
24
+ showTimestamp?: boolean;
25
+ /** Enable markdown rendering */
26
+ enableMarkdown?: boolean;
27
+ /** Bot avatar URL */
28
+ botAvatar?: string;
29
+ /** User avatar URL */
30
+ userAvatar?: string;
31
+ /** Loading message text */
32
+ loadingMessage?: string;
33
+ /** Error message text */
34
+ errorMessage?: string;
35
+ }
36
+ /**
37
+ * ChatbotWidget Component
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * <ChatbotWidget
42
+ * title="AI Assistant"
43
+ * welcomeMessage="Hello! How can I help you today?"
44
+ * onSendMessage={async (msg) => {
45
+ * const response = await client.compute.query(msg)
46
+ * return response.answer
47
+ * }}
48
+ * height={500}
49
+ * />
50
+ * ```
51
+ */
52
+ export declare const ChatbotWidget: React.FC<ChatbotWidgetProps>;
53
+ //# sourceMappingURL=ChatbotWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatbotWidget.d.ts","sourceRoot":"","sources":["../../../src/components/AI/ChatbotWidget.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAA;AAC1D,OAAO,EAAiB,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAGxD,MAAM,WAAW,kBAAkB;IACjC,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sBAAsB;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4BAA4B;IAC5B,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACnD,oBAAoB;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,uBAAuB;IACvB,eAAe,CAAC,EAAE,OAAO,EAAE,CAAA;IAC3B,iCAAiC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,gCAAgC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,sBAAsB;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,yBAAyB;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgKtD,CAAA"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * ChatbotWidget - AI-powered chatbot interface
3
+ *
4
+ * Full-featured chatbot widget for conversational AI interactions.
5
+ */
6
+ import React, { useState, useRef, useEffect } from 'react';
7
+ import { MessageBubble } from './MessageBubble';
8
+ import { InputBar } from './InputBar';
9
+ /**
10
+ * ChatbotWidget Component
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <ChatbotWidget
15
+ * title="AI Assistant"
16
+ * welcomeMessage="Hello! How can I help you today?"
17
+ * onSendMessage={async (msg) => {
18
+ * const response = await client.compute.query(msg)
19
+ * return response.answer
20
+ * }}
21
+ * height={500}
22
+ * />
23
+ * ```
24
+ */
25
+ export const ChatbotWidget = ({ title = 'AI Assistant', placeholder = 'Type your message...', welcomeMessage = 'Hello! How can I help you today?', onSendMessage, height = 600, width = '100%', initialMessages = [], showTimestamp = true, enableMarkdown = false, botAvatar, userAvatar, loadingMessage = 'Thinking...', errorMessage = 'Sorry, something went wrong. Please try again.' }) => {
26
+ const [messages, setMessages] = useState([
27
+ {
28
+ id: '1',
29
+ content: welcomeMessage,
30
+ sender: 'bot',
31
+ timestamp: new Date()
32
+ },
33
+ ...initialMessages
34
+ ]);
35
+ const [isLoading, setIsLoading] = useState(false);
36
+ const messagesEndRef = useRef(null);
37
+ // Auto-scroll to bottom
38
+ const scrollToBottom = () => {
39
+ messagesEndRef.current?.scrollIntoView({ behavior: 'smooth' });
40
+ };
41
+ useEffect(() => {
42
+ scrollToBottom();
43
+ }, [messages]);
44
+ const handleSendMessage = async (content) => {
45
+ if (!content.trim() || isLoading)
46
+ return;
47
+ // Add user message
48
+ const userMessage = {
49
+ id: Date.now().toString(),
50
+ content,
51
+ sender: 'user',
52
+ timestamp: new Date()
53
+ };
54
+ setMessages((prev) => [...prev, userMessage]);
55
+ // Show loading
56
+ setIsLoading(true);
57
+ try {
58
+ // Call API
59
+ const response = await onSendMessage(content);
60
+ // Add bot response
61
+ const botMessage = {
62
+ id: (Date.now() + 1).toString(),
63
+ content: response,
64
+ sender: 'bot',
65
+ timestamp: new Date()
66
+ };
67
+ setMessages((prev) => [...prev, botMessage]);
68
+ }
69
+ catch (error) {
70
+ // Add error message
71
+ const errorMsg = {
72
+ id: (Date.now() + 1).toString(),
73
+ content: errorMessage,
74
+ sender: 'bot',
75
+ timestamp: new Date(),
76
+ error: true
77
+ };
78
+ setMessages((prev) => [...prev, errorMsg]);
79
+ }
80
+ finally {
81
+ setIsLoading(false);
82
+ }
83
+ };
84
+ return (React.createElement("div", { className: "varity-chatbot-widget", style: {
85
+ width: typeof width === 'number' ? `${width}px` : width,
86
+ height: typeof height === 'number' ? `${height}px` : height,
87
+ display: 'flex',
88
+ flexDirection: 'column',
89
+ backgroundColor: 'var(--varity-bg-card, #ffffff)',
90
+ border: '1px solid var(--varity-border-color, #e0e0e0)',
91
+ borderRadius: '12px',
92
+ boxShadow: '0 4px 12px rgba(0,0,0,0.1)',
93
+ overflow: 'hidden'
94
+ } },
95
+ React.createElement("div", { style: {
96
+ padding: '16px 20px',
97
+ backgroundColor: 'var(--varity-primary-color, #1976d2)',
98
+ color: 'white',
99
+ borderBottom: '1px solid rgba(255,255,255,0.1)',
100
+ display: 'flex',
101
+ alignItems: 'center',
102
+ gap: '12px'
103
+ } },
104
+ React.createElement("span", { style: { fontSize: '24px' } }, "\uD83E\uDD16"),
105
+ React.createElement("h3", { style: { margin: 0, fontSize: '16px', fontWeight: 600 } }, title)),
106
+ React.createElement("div", { style: {
107
+ flex: 1,
108
+ overflowY: 'auto',
109
+ padding: '20px',
110
+ display: 'flex',
111
+ flexDirection: 'column',
112
+ gap: '16px',
113
+ backgroundColor: 'var(--varity-bg-secondary, #f9f9f9)'
114
+ } },
115
+ messages.map((message) => (React.createElement(MessageBubble, { key: message.id, message: message, showTimestamp: showTimestamp, enableMarkdown: enableMarkdown, botAvatar: botAvatar, userAvatar: userAvatar }))),
116
+ isLoading && (React.createElement(MessageBubble, { message: {
117
+ id: 'loading',
118
+ content: loadingMessage,
119
+ sender: 'bot',
120
+ timestamp: new Date(),
121
+ loading: true
122
+ }, botAvatar: botAvatar })),
123
+ React.createElement("div", { ref: messagesEndRef })),
124
+ React.createElement(InputBar, { placeholder: placeholder, onSend: handleSendMessage, disabled: isLoading })));
125
+ };
126
+ //# sourceMappingURL=ChatbotWidget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatbotWidget.js","sourceRoot":"","sources":["../../../src/components/AI/ChatbotWidget.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * InputBar - Chat input component
3
+ *
4
+ * Input field for sending chat messages with support for keyboard shortcuts.
5
+ */
6
+ import React from 'react';
7
+ export interface InputBarProps {
8
+ /** Placeholder text */
9
+ placeholder?: string;
10
+ /** Send callback */
11
+ onSend: (message: string) => void;
12
+ /** Disabled state */
13
+ disabled?: boolean;
14
+ /** Show send button */
15
+ showSendButton?: boolean;
16
+ /** Max length */
17
+ maxLength?: number;
18
+ /** Support multiline (Enter = newline, Ctrl+Enter = send) */
19
+ multiline?: boolean;
20
+ }
21
+ /**
22
+ * InputBar Component
23
+ */
24
+ export declare const InputBar: React.FC<InputBarProps>;
25
+ //# sourceMappingURL=InputBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputBar.d.ts","sourceRoot":"","sources":["../../../src/components/AI/InputBar.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAkC,MAAM,OAAO,CAAA;AAEtD,MAAM,WAAW,aAAa;IAC5B,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oBAAoB;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,uBAAuB;IACvB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAqL5C,CAAA"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * InputBar - Chat input component
3
+ *
4
+ * Input field for sending chat messages with support for keyboard shortcuts.
5
+ */
6
+ import React, { useState } from 'react';
7
+ /**
8
+ * InputBar Component
9
+ */
10
+ export const InputBar = ({ placeholder = 'Type a message...', onSend, disabled = false, showSendButton = true, maxLength = 1000, multiline = false }) => {
11
+ const [message, setMessage] = useState('');
12
+ const handleSend = () => {
13
+ const trimmedMessage = message.trim();
14
+ if (trimmedMessage && !disabled) {
15
+ onSend(trimmedMessage);
16
+ setMessage('');
17
+ }
18
+ };
19
+ const handleKeyDown = (e) => {
20
+ if (multiline) {
21
+ // Ctrl/Cmd + Enter to send
22
+ if ((e.ctrlKey || e.metaKey) && e.key === 'Enter') {
23
+ e.preventDefault();
24
+ handleSend();
25
+ }
26
+ }
27
+ else {
28
+ // Enter to send
29
+ if (e.key === 'Enter' && !e.shiftKey) {
30
+ e.preventDefault();
31
+ handleSend();
32
+ }
33
+ }
34
+ };
35
+ const characterCount = message.length;
36
+ return (React.createElement("div", { className: "varity-input-bar", style: {
37
+ padding: '16px 20px',
38
+ backgroundColor: 'var(--varity-bg-card, #ffffff)',
39
+ borderTop: '1px solid var(--varity-border-color, #e0e0e0)',
40
+ display: 'flex',
41
+ gap: '12px',
42
+ alignItems: 'flex-end'
43
+ } },
44
+ React.createElement("div", { style: { flex: 1, position: 'relative' } },
45
+ multiline ? (React.createElement("textarea", { value: message, onChange: (e) => setMessage(e.target.value), onKeyDown: handleKeyDown, placeholder: placeholder, disabled: disabled, maxLength: maxLength, rows: 3, style: {
46
+ width: '100%',
47
+ padding: '12px 16px',
48
+ border: '1px solid var(--varity-border-color, #e0e0e0)',
49
+ borderRadius: '8px',
50
+ fontSize: '14px',
51
+ fontFamily: 'inherit',
52
+ resize: 'none',
53
+ outline: 'none',
54
+ backgroundColor: disabled ? 'var(--varity-bg-disabled, #f5f5f5)' : 'var(--varity-bg-input, #ffffff)',
55
+ color: 'var(--varity-text-primary, #212121)',
56
+ transition: 'border-color 0.2s ease'
57
+ }, onFocus: (e) => {
58
+ e.currentTarget.style.borderColor = 'var(--varity-primary-color, #1976d2)';
59
+ }, onBlur: (e) => {
60
+ e.currentTarget.style.borderColor = 'var(--varity-border-color, #e0e0e0)';
61
+ } })) : (React.createElement("input", { type: "text", value: message, onChange: (e) => setMessage(e.target.value), onKeyDown: handleKeyDown, placeholder: placeholder, disabled: disabled, maxLength: maxLength, style: {
62
+ width: '100%',
63
+ padding: '12px 16px',
64
+ border: '1px solid var(--varity-border-color, #e0e0e0)',
65
+ borderRadius: '8px',
66
+ fontSize: '14px',
67
+ fontFamily: 'inherit',
68
+ outline: 'none',
69
+ backgroundColor: disabled ? 'var(--varity-bg-disabled, #f5f5f5)' : 'var(--varity-bg-input, #ffffff)',
70
+ color: 'var(--varity-text-primary, #212121)',
71
+ transition: 'border-color 0.2s ease'
72
+ }, onFocus: (e) => {
73
+ e.currentTarget.style.borderColor = 'var(--varity-primary-color, #1976d2)';
74
+ }, onBlur: (e) => {
75
+ e.currentTarget.style.borderColor = 'var(--varity-border-color, #e0e0e0)';
76
+ } })),
77
+ maxLength && characterCount > maxLength * 0.8 && (React.createElement("span", { style: {
78
+ position: 'absolute',
79
+ bottom: '-20px',
80
+ right: '0',
81
+ fontSize: '11px',
82
+ color: characterCount >= maxLength
83
+ ? 'var(--varity-error-color, #f44336)'
84
+ : 'var(--varity-text-secondary, #757575)'
85
+ } },
86
+ characterCount,
87
+ "/",
88
+ maxLength))),
89
+ showSendButton && (React.createElement("button", { onClick: handleSend, disabled: disabled || !message.trim(), style: {
90
+ padding: '12px 24px',
91
+ backgroundColor: disabled || !message.trim()
92
+ ? 'var(--varity-bg-disabled, #e0e0e0)'
93
+ : 'var(--varity-primary-color, #1976d2)',
94
+ color: 'white',
95
+ border: 'none',
96
+ borderRadius: '8px',
97
+ fontSize: '14px',
98
+ fontWeight: 600,
99
+ cursor: disabled || !message.trim() ? 'not-allowed' : 'pointer',
100
+ transition: 'all 0.2s ease',
101
+ display: 'flex',
102
+ alignItems: 'center',
103
+ gap: '6px',
104
+ whiteSpace: 'nowrap'
105
+ }, onMouseEnter: (e) => {
106
+ if (!disabled && message.trim()) {
107
+ e.currentTarget.style.backgroundColor = 'var(--varity-primary-dark, #1565c0)';
108
+ }
109
+ }, onMouseLeave: (e) => {
110
+ if (!disabled && message.trim()) {
111
+ e.currentTarget.style.backgroundColor = 'var(--varity-primary-color, #1976d2)';
112
+ }
113
+ } },
114
+ React.createElement("span", null, "Send"),
115
+ React.createElement("span", null, "\u25B6"))),
116
+ multiline && (React.createElement("span", { style: {
117
+ fontSize: '11px',
118
+ color: 'var(--varity-text-secondary, #757575)',
119
+ position: 'absolute',
120
+ bottom: '-20px',
121
+ left: '20px'
122
+ } },
123
+ navigator.platform.includes('Mac') ? 'Cmd' : 'Ctrl',
124
+ "+Enter to send"))));
125
+ };
126
+ //# sourceMappingURL=InputBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputBar.js","sourceRoot":"","sources":["../../../src/components/AI/InputBar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * MessageBubble - Chat message bubble component
3
+ *
4
+ * Displays a single chat message with avatar, timestamp, and formatting.
5
+ */
6
+ import React from 'react';
7
+ export interface Message {
8
+ /** Unique message ID */
9
+ id: string;
10
+ /** Message content */
11
+ content: string;
12
+ /** Message sender */
13
+ sender: 'user' | 'bot';
14
+ /** Message timestamp */
15
+ timestamp: Date;
16
+ /** Loading state */
17
+ loading?: boolean;
18
+ /** Error state */
19
+ error?: boolean;
20
+ }
21
+ export interface MessageBubbleProps {
22
+ /** Message data */
23
+ message: Message;
24
+ /** Show timestamp */
25
+ showTimestamp?: boolean;
26
+ /** Enable markdown rendering */
27
+ enableMarkdown?: boolean;
28
+ /** Bot avatar URL */
29
+ botAvatar?: string;
30
+ /** User avatar URL */
31
+ userAvatar?: string;
32
+ }
33
+ /**
34
+ * MessageBubble Component
35
+ */
36
+ export declare const MessageBubble: React.FC<MessageBubbleProps>;
37
+ //# sourceMappingURL=MessageBubble.d.ts.map