@hanzo/ui 8.27.25 → 8.27.31

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 (1056) hide show
  1. package/dist/auth/SignIn.cjs +16 -10
  2. package/dist/auth/SignIn.d.ts +2 -1
  3. package/dist/auth/SignIn.d.ts.map +1 -1
  4. package/dist/auth/SignIn.js +16 -10
  5. package/dist/auth/SignIn.js.map +1 -1
  6. package/dist/auth/index.cjs +1 -1
  7. package/dist/auth/index.d.ts +1 -1
  8. package/dist/auth/index.js +1 -1
  9. package/dist/auth/session.cjs +5 -1
  10. package/dist/auth/session.d.ts +2 -0
  11. package/dist/auth/session.d.ts.map +1 -1
  12. package/dist/auth/session.js +3 -0
  13. package/dist/auth/session.js.map +1 -1
  14. package/dist/auth/signout.cjs +24 -2
  15. package/dist/auth/signout.d.ts +2 -2
  16. package/dist/auth/signout.d.ts.map +1 -1
  17. package/dist/auth/signout.js +25 -3
  18. package/dist/auth/signout.js.map +1 -1
  19. package/dist/backends/gui/choice.cjs +47 -0
  20. package/dist/backends/gui/choice.d.ts +28 -0
  21. package/dist/backends/gui/choice.d.ts.map +1 -0
  22. package/dist/backends/gui/choice.js +44 -0
  23. package/dist/backends/gui/choice.js.map +1 -0
  24. package/dist/backends/gui/disclosure.cjs +39 -0
  25. package/dist/backends/gui/disclosure.d.ts +32 -0
  26. package/dist/backends/gui/disclosure.d.ts.map +1 -0
  27. package/dist/backends/gui/disclosure.js +37 -0
  28. package/dist/backends/gui/disclosure.js.map +1 -0
  29. package/dist/backends/gui/index.cjs +15 -8
  30. package/dist/backends/gui/index.d.ts +3 -0
  31. package/dist/backends/gui/index.d.ts.map +1 -1
  32. package/dist/backends/gui/index.js +3 -0
  33. package/dist/backends/gui/index.js.map +1 -1
  34. package/dist/backends/gui/label.cjs +4 -1
  35. package/dist/backends/gui/label.d.ts.map +1 -1
  36. package/dist/backends/gui/label.js +4 -1
  37. package/dist/backends/gui/label.js.map +1 -1
  38. package/dist/backends/gui/select.cjs +4 -1
  39. package/dist/backends/gui/select.d.ts.map +1 -1
  40. package/dist/backends/gui/select.js +4 -1
  41. package/dist/backends/gui/select.js.map +1 -1
  42. package/dist/backends/gui/stepper.cjs +20 -0
  43. package/dist/backends/gui/stepper.d.ts +10 -0
  44. package/dist/backends/gui/stepper.d.ts.map +1 -0
  45. package/dist/backends/gui/stepper.js +18 -0
  46. package/dist/backends/gui/stepper.js.map +1 -0
  47. package/dist/gallery.cjs +6 -1
  48. package/dist/gallery.d.ts.map +1 -1
  49. package/dist/gallery.html +29 -4
  50. package/dist/gallery.js +6 -1
  51. package/dist/gallery.js.map +1 -1
  52. package/dist/index.cjs +9 -5
  53. package/dist/index.d.ts +4 -4
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +2 -2
  56. package/dist/index.js.map +1 -1
  57. package/dist/index.node.cjs +9 -5
  58. package/dist/index.node.js +2 -2
  59. package/dist/marketing/ClosingCta.cjs +19 -0
  60. package/dist/marketing/ClosingCta.d.ts +15 -0
  61. package/dist/marketing/ClosingCta.d.ts.map +1 -0
  62. package/dist/marketing/ClosingCta.js +17 -0
  63. package/dist/marketing/ClosingCta.js.map +1 -0
  64. package/dist/marketing/Cta.cjs +26 -0
  65. package/dist/marketing/Cta.d.ts +29 -0
  66. package/dist/marketing/Cta.d.ts.map +1 -0
  67. package/dist/marketing/Cta.js +24 -0
  68. package/dist/marketing/Cta.js.map +1 -0
  69. package/dist/marketing/Faq.cjs +20 -0
  70. package/dist/marketing/Faq.d.ts +13 -0
  71. package/dist/marketing/Faq.d.ts.map +1 -0
  72. package/dist/marketing/Faq.js +18 -0
  73. package/dist/marketing/Faq.js.map +1 -0
  74. package/dist/marketing/Hero.cjs +40 -0
  75. package/dist/marketing/Hero.d.ts +24 -0
  76. package/dist/marketing/Hero.d.ts.map +1 -0
  77. package/dist/marketing/Hero.js +38 -0
  78. package/dist/marketing/Hero.js.map +1 -0
  79. package/dist/marketing/Media.cjs +31 -0
  80. package/dist/marketing/Media.d.ts +16 -0
  81. package/dist/marketing/Media.d.ts.map +1 -0
  82. package/dist/marketing/Media.js +29 -0
  83. package/dist/marketing/Media.js.map +1 -0
  84. package/dist/marketing/PageLoading.cjs +21 -0
  85. package/dist/marketing/PageLoading.d.ts +20 -0
  86. package/dist/marketing/PageLoading.d.ts.map +1 -0
  87. package/dist/marketing/PageLoading.js +19 -0
  88. package/dist/marketing/PageLoading.js.map +1 -0
  89. package/dist/marketing/Plans.cjs +74 -0
  90. package/dist/marketing/Plans.d.ts +30 -0
  91. package/dist/marketing/Plans.d.ts.map +1 -0
  92. package/dist/marketing/Plans.js +72 -0
  93. package/dist/marketing/Plans.js.map +1 -0
  94. package/dist/marketing/blocks.cjs +42 -0
  95. package/dist/marketing/blocks.d.ts +53 -0
  96. package/dist/marketing/blocks.d.ts.map +1 -0
  97. package/dist/marketing/blocks.js +34 -0
  98. package/dist/marketing/blocks.js.map +1 -0
  99. package/dist/marketing/index.cjs +41 -0
  100. package/dist/marketing/index.d.ts +16 -0
  101. package/dist/marketing/index.d.ts.map +1 -0
  102. package/dist/marketing/index.js +16 -0
  103. package/dist/marketing/index.js.map +1 -0
  104. package/dist/marketing/rows.cjs +47 -0
  105. package/dist/marketing/rows.d.ts +41 -0
  106. package/dist/marketing/rows.d.ts.map +1 -0
  107. package/dist/marketing/rows.js +38 -0
  108. package/dist/marketing/rows.js.map +1 -0
  109. package/dist/marketing/seen.cjs +26 -0
  110. package/dist/marketing/seen.d.ts +8 -0
  111. package/dist/marketing/seen.d.ts.map +1 -0
  112. package/dist/marketing/seen.js +24 -0
  113. package/dist/marketing/seen.js.map +1 -0
  114. package/dist/marketing/type.cjs +38 -0
  115. package/dist/marketing/type.d.ts +66 -0
  116. package/dist/marketing/type.d.ts.map +1 -0
  117. package/dist/marketing/type.js +36 -0
  118. package/dist/marketing/type.js.map +1 -0
  119. package/dist/onboarding/ChatOnboarding.cjs +107 -0
  120. package/dist/onboarding/ChatOnboarding.d.ts +25 -0
  121. package/dist/onboarding/ChatOnboarding.d.ts.map +1 -0
  122. package/dist/onboarding/ChatOnboarding.js +105 -0
  123. package/dist/onboarding/ChatOnboarding.js.map +1 -0
  124. package/dist/onboarding/Checkout.cjs +150 -0
  125. package/dist/onboarding/Checkout.d.ts +30 -0
  126. package/dist/onboarding/Checkout.d.ts.map +1 -0
  127. package/dist/onboarding/Checkout.js +148 -0
  128. package/dist/onboarding/Checkout.js.map +1 -0
  129. package/dist/onboarding/Onboarding.cjs +109 -0
  130. package/dist/onboarding/Onboarding.d.ts +43 -0
  131. package/dist/onboarding/Onboarding.d.ts.map +1 -0
  132. package/dist/onboarding/Onboarding.js +107 -0
  133. package/dist/onboarding/Onboarding.js.map +1 -0
  134. package/dist/onboarding/api.cjs +46 -0
  135. package/dist/onboarding/api.d.ts +19 -0
  136. package/dist/onboarding/api.d.ts.map +1 -0
  137. package/dist/onboarding/api.js +38 -0
  138. package/dist/onboarding/api.js.map +1 -0
  139. package/dist/onboarding/frame.cjs +38 -0
  140. package/dist/onboarding/frame.d.ts +39 -0
  141. package/dist/onboarding/frame.d.ts.map +1 -0
  142. package/dist/onboarding/frame.js +33 -0
  143. package/dist/onboarding/frame.js.map +1 -0
  144. package/dist/onboarding/hooks.cjs +70 -0
  145. package/dist/onboarding/hooks.d.ts +30 -0
  146. package/dist/onboarding/hooks.d.ts.map +1 -0
  147. package/dist/onboarding/hooks.js +67 -0
  148. package/dist/onboarding/hooks.js.map +1 -0
  149. package/dist/onboarding/index.cjs +43 -0
  150. package/dist/onboarding/index.d.ts +18 -0
  151. package/dist/onboarding/index.d.ts.map +1 -0
  152. package/dist/onboarding/index.js +18 -0
  153. package/dist/onboarding/index.js.map +1 -0
  154. package/dist/onboarding/plans.cjs +87 -0
  155. package/dist/onboarding/plans.d.ts +60 -0
  156. package/dist/onboarding/plans.d.ts.map +1 -0
  157. package/dist/onboarding/plans.js +79 -0
  158. package/dist/onboarding/plans.js.map +1 -0
  159. package/dist/onboarding/roles.cjs +409 -0
  160. package/dist/onboarding/roles.d.ts +17 -0
  161. package/dist/onboarding/roles.d.ts.map +1 -0
  162. package/dist/onboarding/roles.js +407 -0
  163. package/dist/onboarding/roles.js.map +1 -0
  164. package/dist/onboarding/screens.cjs +121 -0
  165. package/dist/onboarding/screens.d.ts +46 -0
  166. package/dist/onboarding/screens.d.ts.map +1 -0
  167. package/dist/onboarding/screens.js +111 -0
  168. package/dist/onboarding/screens.js.map +1 -0
  169. package/dist/onboarding/state.cjs +25 -0
  170. package/dist/onboarding/state.d.ts +33 -0
  171. package/dist/onboarding/state.d.ts.map +1 -0
  172. package/dist/onboarding/state.js +22 -0
  173. package/dist/onboarding/state.js.map +1 -0
  174. package/dist/primitives/AdvancedChart.cjs +8 -0
  175. package/dist/primitives/AdvancedChart.d.ts +2 -0
  176. package/dist/primitives/AdvancedChart.d.ts.map +1 -0
  177. package/dist/primitives/AdvancedChart.js +5 -0
  178. package/dist/primitives/AdvancedChart.js.map +1 -0
  179. package/dist/primitives/Alert.cjs +8 -0
  180. package/dist/primitives/Alert.d.ts +2 -0
  181. package/dist/primitives/Alert.d.ts.map +1 -0
  182. package/dist/primitives/Alert.js +5 -0
  183. package/dist/primitives/Alert.js.map +1 -0
  184. package/dist/primitives/AlertDescription.cjs +8 -0
  185. package/dist/primitives/AlertDescription.d.ts +2 -0
  186. package/dist/primitives/AlertDescription.d.ts.map +1 -0
  187. package/dist/primitives/AlertDescription.js +5 -0
  188. package/dist/primitives/AlertDescription.js.map +1 -0
  189. package/dist/primitives/AlertTitle.cjs +8 -0
  190. package/dist/primitives/AlertTitle.d.ts +2 -0
  191. package/dist/primitives/AlertTitle.d.ts.map +1 -0
  192. package/dist/primitives/AlertTitle.js +5 -0
  193. package/dist/primitives/AlertTitle.js.map +1 -0
  194. package/dist/primitives/Android.cjs +8 -0
  195. package/dist/primitives/Android.d.ts +2 -0
  196. package/dist/primitives/Android.d.ts.map +1 -0
  197. package/dist/primitives/Android.js +5 -0
  198. package/dist/primitives/Android.js.map +1 -0
  199. package/dist/primitives/AnimatedBeam.cjs +8 -0
  200. package/dist/primitives/AnimatedBeam.d.ts +2 -0
  201. package/dist/primitives/AnimatedBeam.d.ts.map +1 -0
  202. package/dist/primitives/AnimatedBeam.js +5 -0
  203. package/dist/primitives/AnimatedBeam.js.map +1 -0
  204. package/dist/primitives/AnimatedCursor.cjs +8 -0
  205. package/dist/primitives/AnimatedCursor.d.ts +2 -0
  206. package/dist/primitives/AnimatedCursor.d.ts.map +1 -0
  207. package/dist/primitives/AnimatedCursor.js +5 -0
  208. package/dist/primitives/AnimatedCursor.js.map +1 -0
  209. package/dist/primitives/AnimatedTestimonials.cjs +8 -0
  210. package/dist/primitives/AnimatedTestimonials.d.ts +2 -0
  211. package/dist/primitives/AnimatedTestimonials.d.ts.map +1 -0
  212. package/dist/primitives/AnimatedTestimonials.js +5 -0
  213. package/dist/primitives/AnimatedTestimonials.js.map +1 -0
  214. package/dist/primitives/AnimatedTooltip.cjs +8 -0
  215. package/dist/primitives/AnimatedTooltip.d.ts +2 -0
  216. package/dist/primitives/AnimatedTooltip.d.ts.map +1 -0
  217. package/dist/primitives/AnimatedTooltip.js +5 -0
  218. package/dist/primitives/AnimatedTooltip.js.map +1 -0
  219. package/dist/primitives/Announcement.cjs +8 -0
  220. package/dist/primitives/Announcement.d.ts +2 -0
  221. package/dist/primitives/Announcement.d.ts.map +1 -0
  222. package/dist/primitives/Announcement.js +5 -0
  223. package/dist/primitives/Announcement.js.map +1 -0
  224. package/dist/primitives/AppleCardsCarousel.cjs +8 -0
  225. package/dist/primitives/AppleCardsCarousel.d.ts +2 -0
  226. package/dist/primitives/AppleCardsCarousel.d.ts.map +1 -0
  227. package/dist/primitives/AppleCardsCarousel.js +5 -0
  228. package/dist/primitives/AppleCardsCarousel.js.map +1 -0
  229. package/dist/primitives/AppleHelloEffect.cjs +8 -0
  230. package/dist/primitives/AppleHelloEffect.d.ts +2 -0
  231. package/dist/primitives/AppleHelloEffect.d.ts.map +1 -0
  232. package/dist/primitives/AppleHelloEffect.js +5 -0
  233. package/dist/primitives/AppleHelloEffect.js.map +1 -0
  234. package/dist/primitives/Banner.cjs +8 -0
  235. package/dist/primitives/Banner.d.ts +2 -0
  236. package/dist/primitives/Banner.d.ts.map +1 -0
  237. package/dist/primitives/Banner.js +5 -0
  238. package/dist/primitives/Banner.js.map +1 -0
  239. package/dist/primitives/Calendar.cjs +8 -0
  240. package/dist/primitives/Calendar.d.ts +2 -0
  241. package/dist/primitives/Calendar.d.ts.map +1 -0
  242. package/dist/primitives/Calendar.js +5 -0
  243. package/dist/primitives/Calendar.js.map +1 -0
  244. package/dist/primitives/Card3D.cjs +8 -0
  245. package/dist/primitives/Card3D.d.ts +2 -0
  246. package/dist/primitives/Card3D.d.ts.map +1 -0
  247. package/dist/primitives/Card3D.js +5 -0
  248. package/dist/primitives/Card3D.js.map +1 -0
  249. package/dist/primitives/Card3DContent.cjs +8 -0
  250. package/dist/primitives/Card3DContent.d.ts +2 -0
  251. package/dist/primitives/Card3DContent.d.ts.map +1 -0
  252. package/dist/primitives/Card3DContent.js +5 -0
  253. package/dist/primitives/Card3DContent.js.map +1 -0
  254. package/dist/primitives/Card3DDescription.cjs +8 -0
  255. package/dist/primitives/Card3DDescription.d.ts +2 -0
  256. package/dist/primitives/Card3DDescription.d.ts.map +1 -0
  257. package/dist/primitives/Card3DDescription.js +5 -0
  258. package/dist/primitives/Card3DDescription.js.map +1 -0
  259. package/dist/primitives/Card3DFooter.cjs +8 -0
  260. package/dist/primitives/Card3DFooter.d.ts +2 -0
  261. package/dist/primitives/Card3DFooter.d.ts.map +1 -0
  262. package/dist/primitives/Card3DFooter.js +5 -0
  263. package/dist/primitives/Card3DFooter.js.map +1 -0
  264. package/dist/primitives/Card3DHeader.cjs +8 -0
  265. package/dist/primitives/Card3DHeader.d.ts +2 -0
  266. package/dist/primitives/Card3DHeader.d.ts.map +1 -0
  267. package/dist/primitives/Card3DHeader.js +5 -0
  268. package/dist/primitives/Card3DHeader.js.map +1 -0
  269. package/dist/primitives/Card3DTitle.cjs +8 -0
  270. package/dist/primitives/Card3DTitle.d.ts +2 -0
  271. package/dist/primitives/Card3DTitle.d.ts.map +1 -0
  272. package/dist/primitives/Card3DTitle.js +5 -0
  273. package/dist/primitives/Card3DTitle.js.map +1 -0
  274. package/dist/primitives/ChoiceCard.cjs +8 -0
  275. package/dist/primitives/ChoiceCard.d.ts +2 -0
  276. package/dist/primitives/ChoiceCard.d.ts.map +1 -0
  277. package/dist/primitives/ChoiceCard.js +5 -0
  278. package/dist/primitives/ChoiceCard.js.map +1 -0
  279. package/dist/primitives/ChoiceGroup.cjs +8 -0
  280. package/dist/primitives/ChoiceGroup.d.ts +2 -0
  281. package/dist/primitives/ChoiceGroup.d.ts.map +1 -0
  282. package/dist/primitives/ChoiceGroup.js +5 -0
  283. package/dist/primitives/ChoiceGroup.js.map +1 -0
  284. package/dist/primitives/Choicebox.cjs +8 -0
  285. package/dist/primitives/Choicebox.d.ts +2 -0
  286. package/dist/primitives/Choicebox.d.ts.map +1 -0
  287. package/dist/primitives/Choicebox.js +5 -0
  288. package/dist/primitives/Choicebox.js.map +1 -0
  289. package/dist/primitives/CodeBlock.cjs +8 -0
  290. package/dist/primitives/CodeBlock.d.ts +2 -0
  291. package/dist/primitives/CodeBlock.d.ts.map +1 -0
  292. package/dist/primitives/CodeBlock.js +5 -0
  293. package/dist/primitives/CodeBlock.js.map +1 -0
  294. package/dist/primitives/CodeEditor.cjs +8 -0
  295. package/dist/primitives/CodeEditor.d.ts +2 -0
  296. package/dist/primitives/CodeEditor.d.ts.map +1 -0
  297. package/dist/primitives/CodeEditor.js +5 -0
  298. package/dist/primitives/CodeEditor.js.map +1 -0
  299. package/dist/primitives/CodeTabs.cjs +8 -0
  300. package/dist/primitives/CodeTabs.d.ts +2 -0
  301. package/dist/primitives/CodeTabs.d.ts.map +1 -0
  302. package/dist/primitives/CodeTabs.js +5 -0
  303. package/dist/primitives/CodeTabs.js.map +1 -0
  304. package/dist/primitives/ColorPicker.cjs +8 -0
  305. package/dist/primitives/ColorPicker.d.ts +2 -0
  306. package/dist/primitives/ColorPicker.d.ts.map +1 -0
  307. package/dist/primitives/ColorPicker.js +5 -0
  308. package/dist/primitives/ColorPicker.js.map +1 -0
  309. package/dist/primitives/Combobox.cjs +8 -0
  310. package/dist/primitives/Combobox.d.ts +2 -0
  311. package/dist/primitives/Combobox.d.ts.map +1 -0
  312. package/dist/primitives/Combobox.js +5 -0
  313. package/dist/primitives/Combobox.js.map +1 -0
  314. package/dist/primitives/ComboboxWithIcons.cjs +8 -0
  315. package/dist/primitives/ComboboxWithIcons.d.ts +2 -0
  316. package/dist/primitives/ComboboxWithIcons.d.ts.map +1 -0
  317. package/dist/primitives/ComboboxWithIcons.js +5 -0
  318. package/dist/primitives/ComboboxWithIcons.js.map +1 -0
  319. package/dist/primitives/CompanyProfile.cjs +8 -0
  320. package/dist/primitives/CompanyProfile.d.ts +2 -0
  321. package/dist/primitives/CompanyProfile.d.ts.map +1 -0
  322. package/dist/primitives/CompanyProfile.js +5 -0
  323. package/dist/primitives/CompanyProfile.js.map +1 -0
  324. package/dist/primitives/Comparison.cjs +8 -0
  325. package/dist/primitives/Comparison.d.ts +2 -0
  326. package/dist/primitives/Comparison.d.ts.map +1 -0
  327. package/dist/primitives/Comparison.js +5 -0
  328. package/dist/primitives/Comparison.js.map +1 -0
  329. package/dist/primitives/CreditCard.cjs +8 -0
  330. package/dist/primitives/CreditCard.d.ts +2 -0
  331. package/dist/primitives/CreditCard.d.ts.map +1 -0
  332. package/dist/primitives/CreditCard.js +5 -0
  333. package/dist/primitives/CreditCard.js.map +1 -0
  334. package/dist/primitives/CryptoScreener.cjs +8 -0
  335. package/dist/primitives/CryptoScreener.d.ts +2 -0
  336. package/dist/primitives/CryptoScreener.d.ts.map +1 -0
  337. package/dist/primitives/CryptoScreener.js +5 -0
  338. package/dist/primitives/CryptoScreener.js.map +1 -0
  339. package/dist/primitives/Cursor.cjs +8 -0
  340. package/dist/primitives/Cursor.d.ts +2 -0
  341. package/dist/primitives/Cursor.d.ts.map +1 -0
  342. package/dist/primitives/Cursor.js +5 -0
  343. package/dist/primitives/Cursor.js.map +1 -0
  344. package/dist/primitives/DataTable.cjs +8 -0
  345. package/dist/primitives/DataTable.d.ts +2 -0
  346. package/dist/primitives/DataTable.d.ts.map +1 -0
  347. package/dist/primitives/DataTable.js +5 -0
  348. package/dist/primitives/DataTable.js.map +1 -0
  349. package/dist/primitives/DataTableColumnHeader.cjs +8 -0
  350. package/dist/primitives/DataTableColumnHeader.d.ts +2 -0
  351. package/dist/primitives/DataTableColumnHeader.d.ts.map +1 -0
  352. package/dist/primitives/DataTableColumnHeader.js +5 -0
  353. package/dist/primitives/DataTableColumnHeader.js.map +1 -0
  354. package/dist/primitives/DatePicker.cjs +8 -0
  355. package/dist/primitives/DatePicker.d.ts +2 -0
  356. package/dist/primitives/DatePicker.d.ts.map +1 -0
  357. package/dist/primitives/DatePicker.js +5 -0
  358. package/dist/primitives/DatePicker.js.map +1 -0
  359. package/dist/primitives/Desktop.cjs +8 -0
  360. package/dist/primitives/Desktop.d.ts +2 -0
  361. package/dist/primitives/Desktop.d.ts.map +1 -0
  362. package/dist/primitives/Desktop.js +5 -0
  363. package/dist/primitives/Desktop.js.map +1 -0
  364. package/dist/primitives/DesktopWindow.cjs +8 -0
  365. package/dist/primitives/DesktopWindow.d.ts +2 -0
  366. package/dist/primitives/DesktopWindow.d.ts.map +1 -0
  367. package/dist/primitives/DesktopWindow.js +5 -0
  368. package/dist/primitives/DesktopWindow.js.map +1 -0
  369. package/dist/primitives/DesktopWindowControls.cjs +8 -0
  370. package/dist/primitives/DesktopWindowControls.d.ts +2 -0
  371. package/dist/primitives/DesktopWindowControls.d.ts.map +1 -0
  372. package/dist/primitives/DesktopWindowControls.js +5 -0
  373. package/dist/primitives/DesktopWindowControls.js.map +1 -0
  374. package/dist/primitives/DialogStack.cjs +8 -0
  375. package/dist/primitives/DialogStack.d.ts +2 -0
  376. package/dist/primitives/DialogStack.d.ts.map +1 -0
  377. package/dist/primitives/DialogStack.js +5 -0
  378. package/dist/primitives/DialogStack.js.map +1 -0
  379. package/dist/primitives/Disclosure.cjs +8 -0
  380. package/dist/primitives/Disclosure.d.ts +2 -0
  381. package/dist/primitives/Disclosure.d.ts.map +1 -0
  382. package/dist/primitives/Disclosure.js +5 -0
  383. package/dist/primitives/Disclosure.js.map +1 -0
  384. package/dist/primitives/Dock.cjs +8 -0
  385. package/dist/primitives/Dock.d.ts +2 -0
  386. package/dist/primitives/Dock.d.ts.map +1 -0
  387. package/dist/primitives/Dock.js +5 -0
  388. package/dist/primitives/Dock.js.map +1 -0
  389. package/dist/primitives/DockItem.cjs +8 -0
  390. package/dist/primitives/DockItem.d.ts +2 -0
  391. package/dist/primitives/DockItem.d.ts.map +1 -0
  392. package/dist/primitives/DockItem.js +5 -0
  393. package/dist/primitives/DockItem.js.map +1 -0
  394. package/dist/primitives/DockSeparator.cjs +8 -0
  395. package/dist/primitives/DockSeparator.d.ts +2 -0
  396. package/dist/primitives/DockSeparator.d.ts.map +1 -0
  397. package/dist/primitives/DockSeparator.js +5 -0
  398. package/dist/primitives/DockSeparator.js.map +1 -0
  399. package/dist/primitives/Dropzone.cjs +8 -0
  400. package/dist/primitives/Dropzone.d.ts +2 -0
  401. package/dist/primitives/Dropzone.d.ts.map +1 -0
  402. package/dist/primitives/Dropzone.js +5 -0
  403. package/dist/primitives/Dropzone.js.map +1 -0
  404. package/dist/primitives/Editor.cjs +8 -0
  405. package/dist/primitives/Editor.d.ts +2 -0
  406. package/dist/primitives/Editor.d.ts.map +1 -0
  407. package/dist/primitives/Editor.js +5 -0
  408. package/dist/primitives/Editor.js.map +1 -0
  409. package/dist/primitives/Empty.cjs +8 -0
  410. package/dist/primitives/Empty.d.ts +2 -0
  411. package/dist/primitives/Empty.d.ts.map +1 -0
  412. package/dist/primitives/Empty.js +5 -0
  413. package/dist/primitives/Empty.js.map +1 -0
  414. package/dist/primitives/EmptyContent.cjs +8 -0
  415. package/dist/primitives/EmptyContent.d.ts +2 -0
  416. package/dist/primitives/EmptyContent.d.ts.map +1 -0
  417. package/dist/primitives/EmptyContent.js +5 -0
  418. package/dist/primitives/EmptyContent.js.map +1 -0
  419. package/dist/primitives/EmptyDescription.cjs +8 -0
  420. package/dist/primitives/EmptyDescription.d.ts +2 -0
  421. package/dist/primitives/EmptyDescription.d.ts.map +1 -0
  422. package/dist/primitives/EmptyDescription.js +5 -0
  423. package/dist/primitives/EmptyDescription.js.map +1 -0
  424. package/dist/primitives/EmptyHeader.cjs +8 -0
  425. package/dist/primitives/EmptyHeader.d.ts +2 -0
  426. package/dist/primitives/EmptyHeader.d.ts.map +1 -0
  427. package/dist/primitives/EmptyHeader.js +5 -0
  428. package/dist/primitives/EmptyHeader.js.map +1 -0
  429. package/dist/primitives/EmptyMedia.cjs +8 -0
  430. package/dist/primitives/EmptyMedia.d.ts +2 -0
  431. package/dist/primitives/EmptyMedia.d.ts.map +1 -0
  432. package/dist/primitives/EmptyMedia.js +5 -0
  433. package/dist/primitives/EmptyMedia.js.map +1 -0
  434. package/dist/primitives/EmptyTitle.cjs +8 -0
  435. package/dist/primitives/EmptyTitle.d.ts +2 -0
  436. package/dist/primitives/EmptyTitle.d.ts.map +1 -0
  437. package/dist/primitives/EmptyTitle.js +5 -0
  438. package/dist/primitives/EmptyTitle.js.map +1 -0
  439. package/dist/primitives/Field.cjs +8 -0
  440. package/dist/primitives/Field.d.ts +2 -0
  441. package/dist/primitives/Field.d.ts.map +1 -0
  442. package/dist/primitives/Field.js +5 -0
  443. package/dist/primitives/Field.js.map +1 -0
  444. package/dist/primitives/FieldContent.cjs +8 -0
  445. package/dist/primitives/FieldContent.d.ts +2 -0
  446. package/dist/primitives/FieldContent.d.ts.map +1 -0
  447. package/dist/primitives/FieldContent.js +5 -0
  448. package/dist/primitives/FieldContent.js.map +1 -0
  449. package/dist/primitives/FieldDescription.cjs +8 -0
  450. package/dist/primitives/FieldDescription.d.ts +2 -0
  451. package/dist/primitives/FieldDescription.d.ts.map +1 -0
  452. package/dist/primitives/FieldDescription.js +5 -0
  453. package/dist/primitives/FieldDescription.js.map +1 -0
  454. package/dist/primitives/FieldError.cjs +8 -0
  455. package/dist/primitives/FieldError.d.ts +2 -0
  456. package/dist/primitives/FieldError.d.ts.map +1 -0
  457. package/dist/primitives/FieldError.js +5 -0
  458. package/dist/primitives/FieldError.js.map +1 -0
  459. package/dist/primitives/FieldGroup.cjs +8 -0
  460. package/dist/primitives/FieldGroup.d.ts +2 -0
  461. package/dist/primitives/FieldGroup.d.ts.map +1 -0
  462. package/dist/primitives/FieldGroup.js +5 -0
  463. package/dist/primitives/FieldGroup.js.map +1 -0
  464. package/dist/primitives/FieldLabel.cjs +8 -0
  465. package/dist/primitives/FieldLabel.d.ts +2 -0
  466. package/dist/primitives/FieldLabel.d.ts.map +1 -0
  467. package/dist/primitives/FieldLabel.js +5 -0
  468. package/dist/primitives/FieldLabel.js.map +1 -0
  469. package/dist/primitives/FieldLegend.cjs +8 -0
  470. package/dist/primitives/FieldLegend.d.ts +2 -0
  471. package/dist/primitives/FieldLegend.d.ts.map +1 -0
  472. package/dist/primitives/FieldLegend.js +5 -0
  473. package/dist/primitives/FieldLegend.js.map +1 -0
  474. package/dist/primitives/FieldSeparator.cjs +8 -0
  475. package/dist/primitives/FieldSeparator.d.ts +2 -0
  476. package/dist/primitives/FieldSeparator.d.ts.map +1 -0
  477. package/dist/primitives/FieldSeparator.js +5 -0
  478. package/dist/primitives/FieldSeparator.js.map +1 -0
  479. package/dist/primitives/FieldSet.cjs +8 -0
  480. package/dist/primitives/FieldSet.d.ts +2 -0
  481. package/dist/primitives/FieldSet.d.ts.map +1 -0
  482. package/dist/primitives/FieldSet.js +5 -0
  483. package/dist/primitives/FieldSet.js.map +1 -0
  484. package/dist/primitives/FieldTitle.cjs +8 -0
  485. package/dist/primitives/FieldTitle.d.ts +2 -0
  486. package/dist/primitives/FieldTitle.d.ts.map +1 -0
  487. package/dist/primitives/FieldTitle.js +5 -0
  488. package/dist/primitives/FieldTitle.js.map +1 -0
  489. package/dist/primitives/Financials.cjs +8 -0
  490. package/dist/primitives/Financials.d.ts +2 -0
  491. package/dist/primitives/Financials.d.ts.map +1 -0
  492. package/dist/primitives/Financials.js +5 -0
  493. package/dist/primitives/Financials.js.map +1 -0
  494. package/dist/primitives/ForexMarket.cjs +8 -0
  495. package/dist/primitives/ForexMarket.d.ts +2 -0
  496. package/dist/primitives/ForexMarket.d.ts.map +1 -0
  497. package/dist/primitives/ForexMarket.js +5 -0
  498. package/dist/primitives/ForexMarket.js.map +1 -0
  499. package/dist/primitives/ForexScreener.cjs +8 -0
  500. package/dist/primitives/ForexScreener.d.ts +2 -0
  501. package/dist/primitives/ForexScreener.d.ts.map +1 -0
  502. package/dist/primitives/ForexScreener.js +5 -0
  503. package/dist/primitives/ForexScreener.js.map +1 -0
  504. package/dist/primitives/Gantt.cjs +8 -0
  505. package/dist/primitives/Gantt.d.ts +2 -0
  506. package/dist/primitives/Gantt.d.ts.map +1 -0
  507. package/dist/primitives/Gantt.js +5 -0
  508. package/dist/primitives/Gantt.js.map +1 -0
  509. package/dist/primitives/Glimpse.cjs +8 -0
  510. package/dist/primitives/Glimpse.d.ts +2 -0
  511. package/dist/primitives/Glimpse.d.ts.map +1 -0
  512. package/dist/primitives/Glimpse.js +5 -0
  513. package/dist/primitives/Glimpse.js.map +1 -0
  514. package/dist/primitives/GlimpseContent.cjs +8 -0
  515. package/dist/primitives/GlimpseContent.d.ts +2 -0
  516. package/dist/primitives/GlimpseContent.d.ts.map +1 -0
  517. package/dist/primitives/GlimpseContent.js +5 -0
  518. package/dist/primitives/GlimpseContent.js.map +1 -0
  519. package/dist/primitives/GlimpseDescription.cjs +8 -0
  520. package/dist/primitives/GlimpseDescription.d.ts +2 -0
  521. package/dist/primitives/GlimpseDescription.d.ts.map +1 -0
  522. package/dist/primitives/GlimpseDescription.js +5 -0
  523. package/dist/primitives/GlimpseDescription.js.map +1 -0
  524. package/dist/primitives/GlimpseImage.cjs +8 -0
  525. package/dist/primitives/GlimpseImage.d.ts +2 -0
  526. package/dist/primitives/GlimpseImage.d.ts.map +1 -0
  527. package/dist/primitives/GlimpseImage.js +5 -0
  528. package/dist/primitives/GlimpseImage.js.map +1 -0
  529. package/dist/primitives/GlimpseTitle.cjs +8 -0
  530. package/dist/primitives/GlimpseTitle.d.ts +2 -0
  531. package/dist/primitives/GlimpseTitle.d.ts.map +1 -0
  532. package/dist/primitives/GlimpseTitle.js +5 -0
  533. package/dist/primitives/GlimpseTitle.js.map +1 -0
  534. package/dist/primitives/GlimpseTrigger.cjs +8 -0
  535. package/dist/primitives/GlimpseTrigger.d.ts +2 -0
  536. package/dist/primitives/GlimpseTrigger.d.ts.map +1 -0
  537. package/dist/primitives/GlimpseTrigger.js +5 -0
  538. package/dist/primitives/GlimpseTrigger.js.map +1 -0
  539. package/dist/primitives/GridPattern.cjs +8 -0
  540. package/dist/primitives/GridPattern.d.ts +2 -0
  541. package/dist/primitives/GridPattern.d.ts.map +1 -0
  542. package/dist/primitives/GridPattern.js +5 -0
  543. package/dist/primitives/GridPattern.js.map +1 -0
  544. package/dist/primitives/GridPatternPresets.cjs +8 -0
  545. package/dist/primitives/GridPatternPresets.d.ts +2 -0
  546. package/dist/primitives/GridPatternPresets.d.ts.map +1 -0
  547. package/dist/primitives/GridPatternPresets.js +5 -0
  548. package/dist/primitives/GridPatternPresets.js.map +1 -0
  549. package/dist/primitives/IPhone15Pro.cjs +8 -0
  550. package/dist/primitives/IPhone15Pro.d.ts +2 -0
  551. package/dist/primitives/IPhone15Pro.d.ts.map +1 -0
  552. package/dist/primitives/IPhone15Pro.js +5 -0
  553. package/dist/primitives/IPhone15Pro.js.map +1 -0
  554. package/dist/primitives/ImageCrop.cjs +8 -0
  555. package/dist/primitives/ImageCrop.d.ts +2 -0
  556. package/dist/primitives/ImageCrop.d.ts.map +1 -0
  557. package/dist/primitives/ImageCrop.js +5 -0
  558. package/dist/primitives/ImageCrop.js.map +1 -0
  559. package/dist/primitives/ImageZoom.cjs +8 -0
  560. package/dist/primitives/ImageZoom.d.ts +2 -0
  561. package/dist/primitives/ImageZoom.d.ts.map +1 -0
  562. package/dist/primitives/ImageZoom.js +5 -0
  563. package/dist/primitives/ImageZoom.js.map +1 -0
  564. package/dist/primitives/InlineCode.cjs +8 -0
  565. package/dist/primitives/InlineCode.d.ts +2 -0
  566. package/dist/primitives/InlineCode.d.ts.map +1 -0
  567. package/dist/primitives/InlineCode.js +5 -0
  568. package/dist/primitives/InlineCode.js.map +1 -0
  569. package/dist/primitives/InteractiveGridPattern.cjs +8 -0
  570. package/dist/primitives/InteractiveGridPattern.d.ts +2 -0
  571. package/dist/primitives/InteractiveGridPattern.d.ts.map +1 -0
  572. package/dist/primitives/InteractiveGridPattern.js +5 -0
  573. package/dist/primitives/InteractiveGridPattern.js.map +1 -0
  574. package/dist/primitives/Item.cjs +8 -0
  575. package/dist/primitives/Item.d.ts +2 -0
  576. package/dist/primitives/Item.d.ts.map +1 -0
  577. package/dist/primitives/Item.js +5 -0
  578. package/dist/primitives/Item.js.map +1 -0
  579. package/dist/primitives/ItemActions.cjs +8 -0
  580. package/dist/primitives/ItemActions.d.ts +2 -0
  581. package/dist/primitives/ItemActions.d.ts.map +1 -0
  582. package/dist/primitives/ItemActions.js +5 -0
  583. package/dist/primitives/ItemActions.js.map +1 -0
  584. package/dist/primitives/ItemContent.cjs +8 -0
  585. package/dist/primitives/ItemContent.d.ts +2 -0
  586. package/dist/primitives/ItemContent.d.ts.map +1 -0
  587. package/dist/primitives/ItemContent.js +5 -0
  588. package/dist/primitives/ItemContent.js.map +1 -0
  589. package/dist/primitives/ItemDescription.cjs +8 -0
  590. package/dist/primitives/ItemDescription.d.ts +2 -0
  591. package/dist/primitives/ItemDescription.d.ts.map +1 -0
  592. package/dist/primitives/ItemDescription.js +5 -0
  593. package/dist/primitives/ItemDescription.js.map +1 -0
  594. package/dist/primitives/ItemFooter.cjs +8 -0
  595. package/dist/primitives/ItemFooter.d.ts +2 -0
  596. package/dist/primitives/ItemFooter.d.ts.map +1 -0
  597. package/dist/primitives/ItemFooter.js +5 -0
  598. package/dist/primitives/ItemFooter.js.map +1 -0
  599. package/dist/primitives/ItemGroup.cjs +8 -0
  600. package/dist/primitives/ItemGroup.d.ts +2 -0
  601. package/dist/primitives/ItemGroup.d.ts.map +1 -0
  602. package/dist/primitives/ItemGroup.js +5 -0
  603. package/dist/primitives/ItemGroup.js.map +1 -0
  604. package/dist/primitives/ItemHeader.cjs +8 -0
  605. package/dist/primitives/ItemHeader.d.ts +2 -0
  606. package/dist/primitives/ItemHeader.d.ts.map +1 -0
  607. package/dist/primitives/ItemHeader.js +5 -0
  608. package/dist/primitives/ItemHeader.js.map +1 -0
  609. package/dist/primitives/ItemMedia.cjs +8 -0
  610. package/dist/primitives/ItemMedia.d.ts +2 -0
  611. package/dist/primitives/ItemMedia.d.ts.map +1 -0
  612. package/dist/primitives/ItemMedia.js +5 -0
  613. package/dist/primitives/ItemMedia.js.map +1 -0
  614. package/dist/primitives/ItemSeparator.cjs +8 -0
  615. package/dist/primitives/ItemSeparator.d.ts +2 -0
  616. package/dist/primitives/ItemSeparator.d.ts.map +1 -0
  617. package/dist/primitives/ItemSeparator.js +5 -0
  618. package/dist/primitives/ItemSeparator.js.map +1 -0
  619. package/dist/primitives/ItemTitle.cjs +8 -0
  620. package/dist/primitives/ItemTitle.d.ts +2 -0
  621. package/dist/primitives/ItemTitle.d.ts.map +1 -0
  622. package/dist/primitives/ItemTitle.js +5 -0
  623. package/dist/primitives/ItemTitle.js.map +1 -0
  624. package/dist/primitives/KanbanBoard.cjs +8 -0
  625. package/dist/primitives/KanbanBoard.d.ts +2 -0
  626. package/dist/primitives/KanbanBoard.d.ts.map +1 -0
  627. package/dist/primitives/KanbanBoard.js +5 -0
  628. package/dist/primitives/KanbanBoard.js.map +1 -0
  629. package/dist/primitives/Kbd.cjs +8 -0
  630. package/dist/primitives/Kbd.d.ts +2 -0
  631. package/dist/primitives/Kbd.d.ts.map +1 -0
  632. package/dist/primitives/Kbd.js +5 -0
  633. package/dist/primitives/Kbd.js.map +1 -0
  634. package/dist/primitives/KbdGroup.cjs +8 -0
  635. package/dist/primitives/KbdGroup.d.ts +2 -0
  636. package/dist/primitives/KbdGroup.d.ts.map +1 -0
  637. package/dist/primitives/KbdGroup.js +5 -0
  638. package/dist/primitives/KbdGroup.js.map +1 -0
  639. package/dist/primitives/LimelightNav.cjs +8 -0
  640. package/dist/primitives/LimelightNav.d.ts +2 -0
  641. package/dist/primitives/LimelightNav.d.ts.map +1 -0
  642. package/dist/primitives/LimelightNav.js +5 -0
  643. package/dist/primitives/LimelightNav.js.map +1 -0
  644. package/dist/primitives/List.cjs +8 -0
  645. package/dist/primitives/List.d.ts +2 -0
  646. package/dist/primitives/List.d.ts.map +1 -0
  647. package/dist/primitives/List.js +5 -0
  648. package/dist/primitives/List.js.map +1 -0
  649. package/dist/primitives/ListItem.cjs +8 -0
  650. package/dist/primitives/ListItem.d.ts +2 -0
  651. package/dist/primitives/ListItem.d.ts.map +1 -0
  652. package/dist/primitives/ListItem.js +5 -0
  653. package/dist/primitives/ListItem.js.map +1 -0
  654. package/dist/primitives/MacosDock.cjs +8 -0
  655. package/dist/primitives/MacosDock.d.ts +2 -0
  656. package/dist/primitives/MacosDock.d.ts.map +1 -0
  657. package/dist/primitives/MacosDock.js +5 -0
  658. package/dist/primitives/MacosDock.js.map +1 -0
  659. package/dist/primitives/MacosDockItem.cjs +8 -0
  660. package/dist/primitives/MacosDockItem.d.ts +2 -0
  661. package/dist/primitives/MacosDockItem.d.ts.map +1 -0
  662. package/dist/primitives/MacosDockItem.js +5 -0
  663. package/dist/primitives/MacosDockItem.js.map +1 -0
  664. package/dist/primitives/Magnetic.cjs +8 -0
  665. package/dist/primitives/Magnetic.d.ts +2 -0
  666. package/dist/primitives/Magnetic.d.ts.map +1 -0
  667. package/dist/primitives/Magnetic.js +5 -0
  668. package/dist/primitives/Magnetic.js.map +1 -0
  669. package/dist/primitives/MarketOverview.cjs +8 -0
  670. package/dist/primitives/MarketOverview.d.ts +2 -0
  671. package/dist/primitives/MarketOverview.d.ts.map +1 -0
  672. package/dist/primitives/MarketOverview.js +5 -0
  673. package/dist/primitives/MarketOverview.js.map +1 -0
  674. package/dist/primitives/Marquee.cjs +8 -0
  675. package/dist/primitives/Marquee.d.ts +2 -0
  676. package/dist/primitives/Marquee.d.ts.map +1 -0
  677. package/dist/primitives/Marquee.js +5 -0
  678. package/dist/primitives/Marquee.js.map +1 -0
  679. package/dist/primitives/Marquee3D.cjs +8 -0
  680. package/dist/primitives/Marquee3D.d.ts +2 -0
  681. package/dist/primitives/Marquee3D.d.ts.map +1 -0
  682. package/dist/primitives/Marquee3D.js +5 -0
  683. package/dist/primitives/Marquee3D.js.map +1 -0
  684. package/dist/primitives/Marquee3DFloating.cjs +8 -0
  685. package/dist/primitives/Marquee3DFloating.d.ts +2 -0
  686. package/dist/primitives/Marquee3DFloating.d.ts.map +1 -0
  687. package/dist/primitives/Marquee3DFloating.js +5 -0
  688. package/dist/primitives/Marquee3DFloating.js.map +1 -0
  689. package/dist/primitives/Marquee3DPreset.cjs +8 -0
  690. package/dist/primitives/Marquee3DPreset.d.ts +2 -0
  691. package/dist/primitives/Marquee3DPreset.d.ts.map +1 -0
  692. package/dist/primitives/Marquee3DPreset.js +5 -0
  693. package/dist/primitives/Marquee3DPreset.js.map +1 -0
  694. package/dist/primitives/MediaPlayer.cjs +8 -0
  695. package/dist/primitives/MediaPlayer.d.ts +2 -0
  696. package/dist/primitives/MediaPlayer.d.ts.map +1 -0
  697. package/dist/primitives/MediaPlayer.js +5 -0
  698. package/dist/primitives/MediaPlayer.js.map +1 -0
  699. package/dist/primitives/MenuDock.cjs +8 -0
  700. package/dist/primitives/MenuDock.d.ts +2 -0
  701. package/dist/primitives/MenuDock.d.ts.map +1 -0
  702. package/dist/primitives/MenuDock.js +5 -0
  703. package/dist/primitives/MenuDock.js.map +1 -0
  704. package/dist/primitives/Menubar.cjs +8 -0
  705. package/dist/primitives/Menubar.d.ts +2 -0
  706. package/dist/primitives/Menubar.d.ts.map +1 -0
  707. package/dist/primitives/Menubar.js +5 -0
  708. package/dist/primitives/Menubar.js.map +1 -0
  709. package/dist/primitives/MenubarCheckboxItem.cjs +8 -0
  710. package/dist/primitives/MenubarCheckboxItem.d.ts +2 -0
  711. package/dist/primitives/MenubarCheckboxItem.d.ts.map +1 -0
  712. package/dist/primitives/MenubarCheckboxItem.js +5 -0
  713. package/dist/primitives/MenubarCheckboxItem.js.map +1 -0
  714. package/dist/primitives/MenubarContent.cjs +8 -0
  715. package/dist/primitives/MenubarContent.d.ts +2 -0
  716. package/dist/primitives/MenubarContent.d.ts.map +1 -0
  717. package/dist/primitives/MenubarContent.js +5 -0
  718. package/dist/primitives/MenubarContent.js.map +1 -0
  719. package/dist/primitives/MenubarGroup.cjs +8 -0
  720. package/dist/primitives/MenubarGroup.d.ts +2 -0
  721. package/dist/primitives/MenubarGroup.d.ts.map +1 -0
  722. package/dist/primitives/MenubarGroup.js +5 -0
  723. package/dist/primitives/MenubarGroup.js.map +1 -0
  724. package/dist/primitives/MenubarItem.cjs +8 -0
  725. package/dist/primitives/MenubarItem.d.ts +2 -0
  726. package/dist/primitives/MenubarItem.d.ts.map +1 -0
  727. package/dist/primitives/MenubarItem.js +5 -0
  728. package/dist/primitives/MenubarItem.js.map +1 -0
  729. package/dist/primitives/MenubarLabel.cjs +8 -0
  730. package/dist/primitives/MenubarLabel.d.ts +2 -0
  731. package/dist/primitives/MenubarLabel.d.ts.map +1 -0
  732. package/dist/primitives/MenubarLabel.js +5 -0
  733. package/dist/primitives/MenubarLabel.js.map +1 -0
  734. package/dist/primitives/MenubarMenu.cjs +8 -0
  735. package/dist/primitives/MenubarMenu.d.ts +2 -0
  736. package/dist/primitives/MenubarMenu.d.ts.map +1 -0
  737. package/dist/primitives/MenubarMenu.js +5 -0
  738. package/dist/primitives/MenubarMenu.js.map +1 -0
  739. package/dist/primitives/MenubarPortal.cjs +8 -0
  740. package/dist/primitives/MenubarPortal.d.ts +2 -0
  741. package/dist/primitives/MenubarPortal.d.ts.map +1 -0
  742. package/dist/primitives/MenubarPortal.js +5 -0
  743. package/dist/primitives/MenubarPortal.js.map +1 -0
  744. package/dist/primitives/MenubarRadioGroup.cjs +8 -0
  745. package/dist/primitives/MenubarRadioGroup.d.ts +2 -0
  746. package/dist/primitives/MenubarRadioGroup.d.ts.map +1 -0
  747. package/dist/primitives/MenubarRadioGroup.js +5 -0
  748. package/dist/primitives/MenubarRadioGroup.js.map +1 -0
  749. package/dist/primitives/MenubarRadioItem.cjs +8 -0
  750. package/dist/primitives/MenubarRadioItem.d.ts +2 -0
  751. package/dist/primitives/MenubarRadioItem.d.ts.map +1 -0
  752. package/dist/primitives/MenubarRadioItem.js +5 -0
  753. package/dist/primitives/MenubarRadioItem.js.map +1 -0
  754. package/dist/primitives/MenubarSeparator.cjs +8 -0
  755. package/dist/primitives/MenubarSeparator.d.ts +2 -0
  756. package/dist/primitives/MenubarSeparator.d.ts.map +1 -0
  757. package/dist/primitives/MenubarSeparator.js +5 -0
  758. package/dist/primitives/MenubarSeparator.js.map +1 -0
  759. package/dist/primitives/MenubarShortcut.cjs +8 -0
  760. package/dist/primitives/MenubarShortcut.d.ts +2 -0
  761. package/dist/primitives/MenubarShortcut.d.ts.map +1 -0
  762. package/dist/primitives/MenubarShortcut.js +5 -0
  763. package/dist/primitives/MenubarShortcut.js.map +1 -0
  764. package/dist/primitives/MenubarSub.cjs +8 -0
  765. package/dist/primitives/MenubarSub.d.ts +2 -0
  766. package/dist/primitives/MenubarSub.d.ts.map +1 -0
  767. package/dist/primitives/MenubarSub.js +5 -0
  768. package/dist/primitives/MenubarSub.js.map +1 -0
  769. package/dist/primitives/MenubarSubContent.cjs +8 -0
  770. package/dist/primitives/MenubarSubContent.d.ts +2 -0
  771. package/dist/primitives/MenubarSubContent.d.ts.map +1 -0
  772. package/dist/primitives/MenubarSubContent.js +5 -0
  773. package/dist/primitives/MenubarSubContent.js.map +1 -0
  774. package/dist/primitives/MenubarSubTrigger.cjs +8 -0
  775. package/dist/primitives/MenubarSubTrigger.d.ts +2 -0
  776. package/dist/primitives/MenubarSubTrigger.d.ts.map +1 -0
  777. package/dist/primitives/MenubarSubTrigger.js +5 -0
  778. package/dist/primitives/MenubarSubTrigger.js.map +1 -0
  779. package/dist/primitives/MenubarTrigger.cjs +8 -0
  780. package/dist/primitives/MenubarTrigger.d.ts +2 -0
  781. package/dist/primitives/MenubarTrigger.d.ts.map +1 -0
  782. package/dist/primitives/MenubarTrigger.js +5 -0
  783. package/dist/primitives/MenubarTrigger.js.map +1 -0
  784. package/dist/primitives/MessageDock.cjs +8 -0
  785. package/dist/primitives/MessageDock.d.ts +2 -0
  786. package/dist/primitives/MessageDock.d.ts.map +1 -0
  787. package/dist/primitives/MessageDock.js +5 -0
  788. package/dist/primitives/MessageDock.js.map +1 -0
  789. package/dist/primitives/MiniCalendar.cjs +8 -0
  790. package/dist/primitives/MiniCalendar.d.ts +2 -0
  791. package/dist/primitives/MiniCalendar.d.ts.map +1 -0
  792. package/dist/primitives/MiniCalendar.js +5 -0
  793. package/dist/primitives/MiniCalendar.js.map +1 -0
  794. package/dist/primitives/MinimalTiptap.cjs +8 -0
  795. package/dist/primitives/MinimalTiptap.d.ts +2 -0
  796. package/dist/primitives/MinimalTiptap.d.ts.map +1 -0
  797. package/dist/primitives/MinimalTiptap.js +5 -0
  798. package/dist/primitives/MinimalTiptap.js.map +1 -0
  799. package/dist/primitives/MotionHighlight.cjs +8 -0
  800. package/dist/primitives/MotionHighlight.d.ts +2 -0
  801. package/dist/primitives/MotionHighlight.d.ts.map +1 -0
  802. package/dist/primitives/MotionHighlight.js +5 -0
  803. package/dist/primitives/MotionHighlight.js.map +1 -0
  804. package/dist/primitives/NavigationBar.cjs +8 -0
  805. package/dist/primitives/NavigationBar.d.ts +2 -0
  806. package/dist/primitives/NavigationBar.d.ts.map +1 -0
  807. package/dist/primitives/NavigationBar.js +5 -0
  808. package/dist/primitives/NavigationBar.js.map +1 -0
  809. package/dist/primitives/NewsTimeline.cjs +8 -0
  810. package/dist/primitives/NewsTimeline.d.ts +2 -0
  811. package/dist/primitives/NewsTimeline.d.ts.map +1 -0
  812. package/dist/primitives/NewsTimeline.js +5 -0
  813. package/dist/primitives/NewsTimeline.js.map +1 -0
  814. package/dist/primitives/OrderEntry.cjs +8 -0
  815. package/dist/primitives/OrderEntry.d.ts +2 -0
  816. package/dist/primitives/OrderEntry.d.ts.map +1 -0
  817. package/dist/primitives/OrderEntry.js +5 -0
  818. package/dist/primitives/OrderEntry.js.map +1 -0
  819. package/dist/primitives/OrdersHistory.cjs +8 -0
  820. package/dist/primitives/OrdersHistory.d.ts +2 -0
  821. package/dist/primitives/OrdersHistory.d.ts.map +1 -0
  822. package/dist/primitives/OrdersHistory.js +5 -0
  823. package/dist/primitives/OrdersHistory.js.map +1 -0
  824. package/dist/primitives/Pagination.cjs +8 -0
  825. package/dist/primitives/Pagination.d.ts +2 -0
  826. package/dist/primitives/Pagination.d.ts.map +1 -0
  827. package/dist/primitives/Pagination.js +5 -0
  828. package/dist/primitives/Pagination.js.map +1 -0
  829. package/dist/primitives/PaginationContent.cjs +8 -0
  830. package/dist/primitives/PaginationContent.d.ts +2 -0
  831. package/dist/primitives/PaginationContent.d.ts.map +1 -0
  832. package/dist/primitives/PaginationContent.js +5 -0
  833. package/dist/primitives/PaginationContent.js.map +1 -0
  834. package/dist/primitives/PaginationEllipsis.cjs +8 -0
  835. package/dist/primitives/PaginationEllipsis.d.ts +2 -0
  836. package/dist/primitives/PaginationEllipsis.d.ts.map +1 -0
  837. package/dist/primitives/PaginationEllipsis.js +5 -0
  838. package/dist/primitives/PaginationEllipsis.js.map +1 -0
  839. package/dist/primitives/PaginationItem.cjs +8 -0
  840. package/dist/primitives/PaginationItem.d.ts +2 -0
  841. package/dist/primitives/PaginationItem.d.ts.map +1 -0
  842. package/dist/primitives/PaginationItem.js +5 -0
  843. package/dist/primitives/PaginationItem.js.map +1 -0
  844. package/dist/primitives/PaginationLink.cjs +8 -0
  845. package/dist/primitives/PaginationLink.d.ts +2 -0
  846. package/dist/primitives/PaginationLink.d.ts.map +1 -0
  847. package/dist/primitives/PaginationLink.js +5 -0
  848. package/dist/primitives/PaginationLink.js.map +1 -0
  849. package/dist/primitives/PaginationNext.cjs +8 -0
  850. package/dist/primitives/PaginationNext.d.ts +2 -0
  851. package/dist/primitives/PaginationNext.d.ts.map +1 -0
  852. package/dist/primitives/PaginationNext.js +5 -0
  853. package/dist/primitives/PaginationNext.js.map +1 -0
  854. package/dist/primitives/PaginationPrevious.cjs +8 -0
  855. package/dist/primitives/PaginationPrevious.d.ts +2 -0
  856. package/dist/primitives/PaginationPrevious.d.ts.map +1 -0
  857. package/dist/primitives/PaginationPrevious.js +5 -0
  858. package/dist/primitives/PaginationPrevious.js.map +1 -0
  859. package/dist/primitives/Particles.cjs +8 -0
  860. package/dist/primitives/Particles.d.ts +2 -0
  861. package/dist/primitives/Particles.d.ts.map +1 -0
  862. package/dist/primitives/Particles.js +5 -0
  863. package/dist/primitives/Particles.js.map +1 -0
  864. package/dist/primitives/ParticlesBackground.cjs +8 -0
  865. package/dist/primitives/ParticlesBackground.d.ts +2 -0
  866. package/dist/primitives/ParticlesBackground.d.ts.map +1 -0
  867. package/dist/primitives/ParticlesBackground.js +5 -0
  868. package/dist/primitives/ParticlesBackground.js.map +1 -0
  869. package/dist/primitives/Pill.cjs +8 -0
  870. package/dist/primitives/Pill.d.ts +2 -0
  871. package/dist/primitives/Pill.d.ts.map +1 -0
  872. package/dist/primitives/Pill.js +5 -0
  873. package/dist/primitives/Pill.js.map +1 -0
  874. package/dist/primitives/Pin3D.cjs +8 -0
  875. package/dist/primitives/Pin3D.d.ts +2 -0
  876. package/dist/primitives/Pin3D.d.ts.map +1 -0
  877. package/dist/primitives/Pin3D.js +5 -0
  878. package/dist/primitives/Pin3D.js.map +1 -0
  879. package/dist/primitives/PinList.cjs +8 -0
  880. package/dist/primitives/PinList.d.ts +2 -0
  881. package/dist/primitives/PinList.d.ts.map +1 -0
  882. package/dist/primitives/PinList.js +5 -0
  883. package/dist/primitives/PinList.js.map +1 -0
  884. package/dist/primitives/PixelImage.cjs +8 -0
  885. package/dist/primitives/PixelImage.d.ts +2 -0
  886. package/dist/primitives/PixelImage.d.ts.map +1 -0
  887. package/dist/primitives/PixelImage.js +5 -0
  888. package/dist/primitives/PixelImage.js.map +1 -0
  889. package/dist/primitives/PositionsList.cjs +8 -0
  890. package/dist/primitives/PositionsList.d.ts +2 -0
  891. package/dist/primitives/PositionsList.d.ts.map +1 -0
  892. package/dist/primitives/PositionsList.js +5 -0
  893. package/dist/primitives/PositionsList.js.map +1 -0
  894. package/dist/primitives/QRCode.cjs +8 -0
  895. package/dist/primitives/QRCode.d.ts +2 -0
  896. package/dist/primitives/QRCode.d.ts.map +1 -0
  897. package/dist/primitives/QRCode.js +5 -0
  898. package/dist/primitives/QRCode.js.map +1 -0
  899. package/dist/primitives/RelativeTime.cjs +8 -0
  900. package/dist/primitives/RelativeTime.d.ts +2 -0
  901. package/dist/primitives/RelativeTime.d.ts.map +1 -0
  902. package/dist/primitives/RelativeTime.js +5 -0
  903. package/dist/primitives/RelativeTime.js.map +1 -0
  904. package/dist/primitives/Safari.cjs +8 -0
  905. package/dist/primitives/Safari.d.ts +2 -0
  906. package/dist/primitives/Safari.d.ts.map +1 -0
  907. package/dist/primitives/Safari.js +5 -0
  908. package/dist/primitives/Safari.js.map +1 -0
  909. package/dist/primitives/Snippet.cjs +8 -0
  910. package/dist/primitives/Snippet.d.ts +2 -0
  911. package/dist/primitives/Snippet.d.ts.map +1 -0
  912. package/dist/primitives/Snippet.js +5 -0
  913. package/dist/primitives/Snippet.js.map +1 -0
  914. package/dist/primitives/Spotlight.cjs +8 -0
  915. package/dist/primitives/Spotlight.d.ts +2 -0
  916. package/dist/primitives/Spotlight.d.ts.map +1 -0
  917. package/dist/primitives/Spotlight.js +5 -0
  918. package/dist/primitives/Spotlight.js.map +1 -0
  919. package/dist/primitives/StarsScrollingWheel.cjs +8 -0
  920. package/dist/primitives/StarsScrollingWheel.d.ts +2 -0
  921. package/dist/primitives/StarsScrollingWheel.d.ts.map +1 -0
  922. package/dist/primitives/StarsScrollingWheel.js +5 -0
  923. package/dist/primitives/StarsScrollingWheel.js.map +1 -0
  924. package/dist/primitives/Status.cjs +8 -0
  925. package/dist/primitives/Status.d.ts +2 -0
  926. package/dist/primitives/Status.d.ts.map +1 -0
  927. package/dist/primitives/Status.js +5 -0
  928. package/dist/primitives/Status.js.map +1 -0
  929. package/dist/primitives/Stepper.cjs +8 -0
  930. package/dist/primitives/Stepper.d.ts +2 -0
  931. package/dist/primitives/Stepper.d.ts.map +1 -0
  932. package/dist/primitives/Stepper.js +5 -0
  933. package/dist/primitives/Stepper.js.map +1 -0
  934. package/dist/primitives/StockMarket.cjs +8 -0
  935. package/dist/primitives/StockMarket.d.ts +2 -0
  936. package/dist/primitives/StockMarket.d.ts.map +1 -0
  937. package/dist/primitives/StockMarket.js +5 -0
  938. package/dist/primitives/StockMarket.js.map +1 -0
  939. package/dist/primitives/StockScreener.cjs +8 -0
  940. package/dist/primitives/StockScreener.d.ts +2 -0
  941. package/dist/primitives/StockScreener.d.ts.map +1 -0
  942. package/dist/primitives/StockScreener.js +5 -0
  943. package/dist/primitives/StockScreener.js.map +1 -0
  944. package/dist/primitives/SymbolInfo.cjs +8 -0
  945. package/dist/primitives/SymbolInfo.d.ts +2 -0
  946. package/dist/primitives/SymbolInfo.d.ts.map +1 -0
  947. package/dist/primitives/SymbolInfo.js +5 -0
  948. package/dist/primitives/SymbolInfo.js.map +1 -0
  949. package/dist/primitives/Table.cjs +8 -0
  950. package/dist/primitives/Table.d.ts +2 -0
  951. package/dist/primitives/Table.d.ts.map +1 -0
  952. package/dist/primitives/Table.js +5 -0
  953. package/dist/primitives/Table.js.map +1 -0
  954. package/dist/primitives/TableBody.cjs +8 -0
  955. package/dist/primitives/TableBody.d.ts +2 -0
  956. package/dist/primitives/TableBody.d.ts.map +1 -0
  957. package/dist/primitives/TableBody.js +5 -0
  958. package/dist/primitives/TableBody.js.map +1 -0
  959. package/dist/primitives/TableCaption.cjs +8 -0
  960. package/dist/primitives/TableCaption.d.ts +2 -0
  961. package/dist/primitives/TableCaption.d.ts.map +1 -0
  962. package/dist/primitives/TableCaption.js +5 -0
  963. package/dist/primitives/TableCaption.js.map +1 -0
  964. package/dist/primitives/TableCell.cjs +8 -0
  965. package/dist/primitives/TableCell.d.ts +2 -0
  966. package/dist/primitives/TableCell.d.ts.map +1 -0
  967. package/dist/primitives/TableCell.js +5 -0
  968. package/dist/primitives/TableCell.js.map +1 -0
  969. package/dist/primitives/TableFooter.cjs +8 -0
  970. package/dist/primitives/TableFooter.d.ts +2 -0
  971. package/dist/primitives/TableFooter.d.ts.map +1 -0
  972. package/dist/primitives/TableFooter.js +5 -0
  973. package/dist/primitives/TableFooter.js.map +1 -0
  974. package/dist/primitives/TableHead.cjs +8 -0
  975. package/dist/primitives/TableHead.d.ts +2 -0
  976. package/dist/primitives/TableHead.d.ts.map +1 -0
  977. package/dist/primitives/TableHead.js +5 -0
  978. package/dist/primitives/TableHead.js.map +1 -0
  979. package/dist/primitives/TableHeader.cjs +8 -0
  980. package/dist/primitives/TableHeader.d.ts +2 -0
  981. package/dist/primitives/TableHeader.d.ts.map +1 -0
  982. package/dist/primitives/TableHeader.js +5 -0
  983. package/dist/primitives/TableHeader.js.map +1 -0
  984. package/dist/primitives/TableRow.cjs +8 -0
  985. package/dist/primitives/TableRow.d.ts +2 -0
  986. package/dist/primitives/TableRow.d.ts.map +1 -0
  987. package/dist/primitives/TableRow.js +5 -0
  988. package/dist/primitives/TableRow.js.map +1 -0
  989. package/dist/primitives/Tags.cjs +8 -0
  990. package/dist/primitives/Tags.d.ts +2 -0
  991. package/dist/primitives/Tags.d.ts.map +1 -0
  992. package/dist/primitives/Tags.js +5 -0
  993. package/dist/primitives/Tags.js.map +1 -0
  994. package/dist/primitives/TechnicalAnalysis.cjs +8 -0
  995. package/dist/primitives/TechnicalAnalysis.d.ts +2 -0
  996. package/dist/primitives/TechnicalAnalysis.d.ts.map +1 -0
  997. package/dist/primitives/TechnicalAnalysis.js +5 -0
  998. package/dist/primitives/TechnicalAnalysis.js.map +1 -0
  999. package/dist/primitives/Terminal.cjs +8 -0
  1000. package/dist/primitives/Terminal.d.ts +2 -0
  1001. package/dist/primitives/Terminal.d.ts.map +1 -0
  1002. package/dist/primitives/Terminal.js +5 -0
  1003. package/dist/primitives/Terminal.js.map +1 -0
  1004. package/dist/primitives/Ticker.cjs +8 -0
  1005. package/dist/primitives/Ticker.d.ts +2 -0
  1006. package/dist/primitives/Ticker.d.ts.map +1 -0
  1007. package/dist/primitives/Ticker.js +5 -0
  1008. package/dist/primitives/Ticker.js.map +1 -0
  1009. package/dist/primitives/Timeline.cjs +8 -0
  1010. package/dist/primitives/Timeline.d.ts +2 -0
  1011. package/dist/primitives/Timeline.d.ts.map +1 -0
  1012. package/dist/primitives/Timeline.js +5 -0
  1013. package/dist/primitives/Timeline.js.map +1 -0
  1014. package/dist/primitives/Toggle.cjs +8 -0
  1015. package/dist/primitives/Toggle.d.ts +2 -0
  1016. package/dist/primitives/Toggle.d.ts.map +1 -0
  1017. package/dist/primitives/Toggle.js +5 -0
  1018. package/dist/primitives/Toggle.js.map +1 -0
  1019. package/dist/primitives/encodeQr.cjs +8 -0
  1020. package/dist/primitives/encodeQr.d.ts +2 -0
  1021. package/dist/primitives/encodeQr.d.ts.map +1 -0
  1022. package/dist/primitives/encodeQr.js +5 -0
  1023. package/dist/primitives/encodeQr.js.map +1 -0
  1024. package/dist/primitives/gradientPresets.cjs +8 -0
  1025. package/dist/primitives/gradientPresets.d.ts +2 -0
  1026. package/dist/primitives/gradientPresets.d.ts.map +1 -0
  1027. package/dist/primitives/gradientPresets.js +5 -0
  1028. package/dist/primitives/gradientPresets.js.map +1 -0
  1029. package/dist/primitives/pillVariants.cjs +8 -0
  1030. package/dist/primitives/pillVariants.d.ts +2 -0
  1031. package/dist/primitives/pillVariants.d.ts.map +1 -0
  1032. package/dist/primitives/pillVariants.js +5 -0
  1033. package/dist/primitives/pillVariants.js.map +1 -0
  1034. package/dist/primitives/useDesktopSettings.cjs +8 -0
  1035. package/dist/primitives/useDesktopSettings.d.ts +2 -0
  1036. package/dist/primitives/useDesktopSettings.d.ts.map +1 -0
  1037. package/dist/primitives/useDesktopSettings.js +5 -0
  1038. package/dist/primitives/useDesktopSettings.js.map +1 -0
  1039. package/dist/primitives/useKeyboardShortcuts.cjs +8 -0
  1040. package/dist/primitives/useKeyboardShortcuts.d.ts +2 -0
  1041. package/dist/primitives/useKeyboardShortcuts.d.ts.map +1 -0
  1042. package/dist/primitives/useKeyboardShortcuts.js +5 -0
  1043. package/dist/primitives/useKeyboardShortcuts.js.map +1 -0
  1044. package/dist/primitives/useOverlayManager.cjs +8 -0
  1045. package/dist/primitives/useOverlayManager.d.ts +2 -0
  1046. package/dist/primitives/useOverlayManager.d.ts.map +1 -0
  1047. package/dist/primitives/useOverlayManager.js +5 -0
  1048. package/dist/primitives/useOverlayManager.js.map +1 -0
  1049. package/dist/primitives/useWindowManager.cjs +8 -0
  1050. package/dist/primitives/useWindowManager.d.ts +2 -0
  1051. package/dist/primitives/useWindowManager.d.ts.map +1 -0
  1052. package/dist/primitives/useWindowManager.js +5 -0
  1053. package/dist/primitives/useWindowManager.js.map +1 -0
  1054. package/dist/styles.css +23 -1
  1055. package/package.json +24 -3
  1056. package/dist/auth.css +0 -40
@@ -0,0 +1,38 @@
1
+ 'use client';"use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Page = Page;
5
+ exports.Panel = Panel;
6
+ exports.IntervalToggle = IntervalToggle;
7
+ exports.Line = Line;
8
+ const jsx_runtime_1 = require("react/jsx-runtime");
9
+ const shell_1 = require("@hanzogui/shell");
10
+ const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
11
+ const button_1 = require("../backends/gui/button.cjs");
12
+ const card_1 = require("../backends/gui/card.cjs");
13
+ const layout_1 = require("../backends/gui/layout.cjs");
14
+ const spinner_1 = require("../backends/gui/spinner.cjs");
15
+ const toggle_group_1 = require("../backends/gui/toggle-group.cjs");
16
+ const plans_1 = require("./plans.cjs");
17
+ /**
18
+ * One page of onboarding: the product's mark, a title, a line under it, and the
19
+ * screen. No progress bar and no step counter. `width` sets how much room the
20
+ * screen has: a column for a form, the full row for three plans.
21
+ */
22
+ function Page({ site, title, lede, back, children, center, width = 480, start, busy, }) {
23
+ return ((0, jsx_runtime_1.jsxs)(layout_1.YStack, { render: "main", "aria-busy": busy || undefined, bg: "$background", minH: "100vh", items: "center", justify: center ? 'center' : 'flex-start', gap: "$4", pt: center ? 96 : 28, pb: 96, px: "$4", children: [back ? ((0, jsx_runtime_1.jsx)(button_1.Button, { type: "button", variant: "ghost", size: "icon-lg", "aria-label": "Back", position: "absolute", t: 20, l: 20, rounded: "$10", onClick: back, children: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.ArrowLeft, { size: 18 }) })) : null, (0, jsx_runtime_1.jsxs)(layout_1.XStack, { items: "center", gap: "$2.5", mb: "$5", children: [(0, jsx_runtime_1.jsx)(shell_1.HanzoMark, { size: 20 }), (0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$5", fontWeight: "500", color: "$ink", children: site })] }), title || lede ? ((0, jsx_runtime_1.jsxs)(layout_1.YStack, { width: "100%", maxW: start ? width : 720, items: start ? 'flex-start' : 'center', gap: "$3", children: [title ? ((0, jsx_runtime_1.jsx)(layout_1.Heading, { render: "h1", size: "$9", fontWeight: "500", color: "$ink", text: start ? 'left' : 'center', m: 0, children: title })) : null, lede ? ((0, jsx_runtime_1.jsx)(layout_1.Paragraph, { size: "$3", color: "$quiet", text: start ? 'left' : 'center', maxW: 520, m: 0, children: lede })) : null] })) : null, busy ? (0, jsx_runtime_1.jsx)(spinner_1.Spinner, { size: 20 }) : null, children ? ((0, jsx_runtime_1.jsx)(layout_1.YStack, { width: "100%", maxW: width, items: "stretch", gap: "$4", mt: "$2", children: children })) : null] }));
24
+ }
25
+ /** A bordered panel with room inside, the surface for an order, a notice or a plan. */
26
+ function Panel({ children, label }) {
27
+ return ((0, jsx_runtime_1.jsx)(card_1.Card, { "aria-label": label, bg: "$panel", width: "100%", children: (0, jsx_runtime_1.jsx)(card_1.CardContent, { gap: "$3", children: children }) }));
28
+ }
29
+ /** Monthly or Yearly, with what a year saves. `name` says which plan it changes, for screen readers. */
30
+ function IntervalToggle({ interval, onChange, name }) {
31
+ return ((0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroup, { type: "single", size: "sm", value: interval, disableDeactivation: true, "aria-label": `Billing interval for ${name}`, onValueChange: (v) => onChange(v), children: [(0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "monthly", children: "Monthly" }), (0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "annual", children: `Yearly · Save ${plans_1.saving}%` })] }));
32
+ }
33
+ /** A line of an order: what, and how much. `muted` for the lines that are not the total. */
34
+ function Line({ label, note, value, muted, strong }) {
35
+ const color = muted ? '$quiet' : '$ink';
36
+ const weight = strong ? '600' : '400';
37
+ return ((0, jsx_runtime_1.jsxs)(layout_1.XStack, { justify: "space-between", gap: "$4", items: "flex-start", children: [(0, jsx_runtime_1.jsxs)(layout_1.YStack, { flex: 1, minW: 0, children: [(0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$2", color: color, fontWeight: weight, children: label }), note ? ((0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$1", color: "$quiet", children: note })) : null] }), (0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$2", color: color, fontWeight: weight, children: value })] }));
38
+ }
@@ -0,0 +1,39 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type Interval } from './plans.js';
3
+ /**
4
+ * One page of onboarding: the product's mark, a title, a line under it, and the
5
+ * screen. No progress bar and no step counter. `width` sets how much room the
6
+ * screen has: a column for a form, the full row for three plans.
7
+ */
8
+ export declare function Page({ site, title, lede, back, children, center, width, start, busy, }: {
9
+ site: string;
10
+ title: string;
11
+ lede?: string;
12
+ back?: () => void;
13
+ children?: ReactNode;
14
+ center?: boolean;
15
+ width?: number;
16
+ /** Left-align the title and the line under it with the column, as a form does. */
17
+ start?: boolean;
18
+ busy?: boolean;
19
+ }): import("react").JSX.Element;
20
+ /** A bordered panel with room inside, the surface for an order, a notice or a plan. */
21
+ export declare function Panel({ children, label }: {
22
+ children: ReactNode;
23
+ label?: string;
24
+ }): import("react").JSX.Element;
25
+ /** Monthly or Yearly, with what a year saves. `name` says which plan it changes, for screen readers. */
26
+ export declare function IntervalToggle({ interval, onChange, name }: {
27
+ interval: Interval;
28
+ onChange: (i: Interval) => void;
29
+ name: string;
30
+ }): import("react").JSX.Element;
31
+ /** A line of an order: what, and how much. `muted` for the lines that are not the total. */
32
+ export declare function Line({ label, note, value, muted, strong }: {
33
+ label: ReactNode;
34
+ note?: ReactNode;
35
+ value: ReactNode;
36
+ muted?: boolean;
37
+ strong?: boolean;
38
+ }): import("react").JSX.Element;
39
+ //# sourceMappingURL=frame.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/onboarding/frame.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,OAAO,EAAU,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAE/C;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,KAAW,EACX,KAAK,EACL,IAAI,GACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,+BAoCA;AAED,uFAAuF;AACvF,wBAAgB,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,+BAMjF;AAED,wGAAwG;AACxG,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,+BAOjI;AAED,4FAA4F;AAC5F,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,+BAoBtJ"}
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { HanzoMark } from '@hanzogui/shell';
4
+ import { ArrowLeft } from '@hanzogui/lucide-icons-2';
5
+ import { Button } from '../backends/gui/button.js';
6
+ import { Card, CardContent } from '../backends/gui/card.js';
7
+ import { Heading, Paragraph, SizableText, XStack, YStack } from '../backends/gui/layout.js';
8
+ import { Spinner } from '../backends/gui/spinner.js';
9
+ import { ToggleGroup, ToggleGroupItem } from '../backends/gui/toggle-group.js';
10
+ import { saving } from './plans.js';
11
+ /**
12
+ * One page of onboarding: the product's mark, a title, a line under it, and the
13
+ * screen. No progress bar and no step counter. `width` sets how much room the
14
+ * screen has: a column for a form, the full row for three plans.
15
+ */
16
+ export function Page({ site, title, lede, back, children, center, width = 480, start, busy, }) {
17
+ return (_jsxs(YStack, { render: "main", "aria-busy": busy || undefined, bg: "$background", minH: "100vh", items: "center", justify: center ? 'center' : 'flex-start', gap: "$4", pt: center ? 96 : 28, pb: 96, px: "$4", children: [back ? (_jsx(Button, { type: "button", variant: "ghost", size: "icon-lg", "aria-label": "Back", position: "absolute", t: 20, l: 20, rounded: "$10", onClick: back, children: _jsx(ArrowLeft, { size: 18 }) })) : null, _jsxs(XStack, { items: "center", gap: "$2.5", mb: "$5", children: [_jsx(HanzoMark, { size: 20 }), _jsx(SizableText, { size: "$5", fontWeight: "500", color: "$ink", children: site })] }), title || lede ? (_jsxs(YStack, { width: "100%", maxW: start ? width : 720, items: start ? 'flex-start' : 'center', gap: "$3", children: [title ? (_jsx(Heading, { render: "h1", size: "$9", fontWeight: "500", color: "$ink", text: start ? 'left' : 'center', m: 0, children: title })) : null, lede ? (_jsx(Paragraph, { size: "$3", color: "$quiet", text: start ? 'left' : 'center', maxW: 520, m: 0, children: lede })) : null] })) : null, busy ? _jsx(Spinner, { size: 20 }) : null, children ? (_jsx(YStack, { width: "100%", maxW: width, items: "stretch", gap: "$4", mt: "$2", children: children })) : null] }));
18
+ }
19
+ /** A bordered panel with room inside, the surface for an order, a notice or a plan. */
20
+ export function Panel({ children, label }) {
21
+ return (_jsx(Card, { "aria-label": label, bg: "$panel", width: "100%", children: _jsx(CardContent, { gap: "$3", children: children }) }));
22
+ }
23
+ /** Monthly or Yearly, with what a year saves. `name` says which plan it changes, for screen readers. */
24
+ export function IntervalToggle({ interval, onChange, name }) {
25
+ return (_jsxs(ToggleGroup, { type: "single", size: "sm", value: interval, disableDeactivation: true, "aria-label": `Billing interval for ${name}`, onValueChange: (v) => onChange(v), children: [_jsx(ToggleGroupItem, { value: "monthly", children: "Monthly" }), _jsx(ToggleGroupItem, { value: "annual", children: `Yearly · Save ${saving}%` })] }));
26
+ }
27
+ /** A line of an order: what, and how much. `muted` for the lines that are not the total. */
28
+ export function Line({ label, note, value, muted, strong }) {
29
+ const color = muted ? '$quiet' : '$ink';
30
+ const weight = strong ? '600' : '400';
31
+ return (_jsxs(XStack, { justify: "space-between", gap: "$4", items: "flex-start", children: [_jsxs(YStack, { flex: 1, minW: 0, children: [_jsx(SizableText, { size: "$2", color: color, fontWeight: weight, children: label }), note ? (_jsx(SizableText, { size: "$1", color: "$quiet", children: note })) : null] }), _jsx(SizableText, { size: "$2", color: color, fontWeight: weight, children: value })] }));
32
+ }
33
+ //# sourceMappingURL=frame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame.js","sourceRoot":"","sources":["../../src/onboarding/frame.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ 'use client';"use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useSession = useSession;
5
+ exports.useOnboarded = useOnboarded;
6
+ const react_1 = require("react");
7
+ const api_1 = require("./api.cjs");
8
+ const state_1 = require("./state.cjs");
9
+ /**
10
+ * The person's onboarding, read from IAM once and written through as each step
11
+ * finishes. A failed read leaves the flow at the start rather than blocking it.
12
+ */
13
+ function useSession(api = api_1.API) {
14
+ const [loading, setLoading] = (0, react_1.useState)(true);
15
+ const [stored, setStored] = (0, react_1.useState)({});
16
+ const [name, setNameState] = (0, react_1.useState)('');
17
+ const [error, setError] = (0, react_1.useState)(null);
18
+ (0, react_1.useEffect)(() => {
19
+ let live = true;
20
+ Promise.all([(0, api_1.preferences)(api).catch(() => ({})), (0, api_1.account)(api).catch(() => null)]).then(([prefs, me]) => {
21
+ if (!live)
22
+ return;
23
+ setStored(prefs ?? {});
24
+ const a = me;
25
+ setNameState(a?.displayName?.trim() ?? '');
26
+ setLoading(false);
27
+ });
28
+ return () => {
29
+ live = false;
30
+ };
31
+ }, [api]);
32
+ const save = (0, react_1.useCallback)(async (patch) => {
33
+ setStored((s) => ({ ...s, onboarding: { ...(s.onboarding ?? {}), ...patch } }));
34
+ try {
35
+ await (0, api_1.saveProgress)(api, patch);
36
+ setError(null);
37
+ }
38
+ catch (e) {
39
+ setError(e instanceof Error ? e.message : 'Could not save. Try again.');
40
+ }
41
+ }, [api]);
42
+ const setName = (0, react_1.useCallback)(async (n) => {
43
+ await (0, api_1.rename)(api, n);
44
+ setNameState(n);
45
+ await save({ named: true });
46
+ }, [api, save]);
47
+ const setTrain = (0, react_1.useCallback)(async (on) => {
48
+ setStored((s) => ({ ...s, train_opt_in: on }));
49
+ await (0, api_1.preferences)(api, { train_opt_in: on });
50
+ }, [api]);
51
+ return { loading, progress: stored.onboarding ?? {}, trainOptIn: stored.train_opt_in, name, save, setName, setTrain, error };
52
+ }
53
+ /**
54
+ * Whether this person still has an onboarding step to do: `null` while IAM has
55
+ * not answered, so a gate never flashes the wrong screen. A failed read answers
56
+ * `false` (nothing to do), because a broken read must not lock anyone out.
57
+ */
58
+ function useOnboarded(api = api_1.API) {
59
+ const [state, setState] = (0, react_1.useState)({ pending: null, plan: undefined });
60
+ (0, react_1.useEffect)(() => {
61
+ let live = true;
62
+ (0, api_1.preferences)(api)
63
+ .then((s) => live && setState({ pending: (0, state_1.step)(s?.onboarding ?? {}) !== 'done', plan: s?.onboarding?.plan }))
64
+ .catch(() => live && setState({ pending: false, plan: undefined }));
65
+ return () => {
66
+ live = false;
67
+ };
68
+ }, [api]);
69
+ return state;
70
+ }
@@ -0,0 +1,30 @@
1
+ import { type Progress } from './state.js';
2
+ export type Track = (name: string, props?: Record<string, unknown>) => void;
3
+ export interface Session {
4
+ /** Nothing has answered yet. */
5
+ loading: boolean;
6
+ progress: Progress;
7
+ trainOptIn: boolean | undefined;
8
+ /** The display name IAM holds, if any. */
9
+ name: string;
10
+ /** Merge a step into the stored progress (and the screen). */
11
+ save: (patch: Progress) => Promise<void>;
12
+ setName: (name: string) => Promise<void>;
13
+ setTrain: (on: boolean) => Promise<void>;
14
+ error: string | null;
15
+ }
16
+ /**
17
+ * The person's onboarding, read from IAM once and written through as each step
18
+ * finishes. A failed read leaves the flow at the start rather than blocking it.
19
+ */
20
+ export declare function useSession(api?: string): Session;
21
+ /**
22
+ * Whether this person still has an onboarding step to do: `null` while IAM has
23
+ * not answered, so a gate never flashes the wrong screen. A failed read answers
24
+ * `false` (nothing to do), because a broken read must not lock anyone out.
25
+ */
26
+ export declare function useOnboarded(api?: string): {
27
+ pending: boolean | null;
28
+ plan: string | undefined;
29
+ };
30
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/onboarding/hooks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAQ,KAAK,QAAQ,EAAe,MAAM,SAAS,CAAA;AAE1D,MAAM,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;AAE3E,MAAM,WAAW,OAAO;IACtB,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,OAAO,GAAG,SAAS,CAAA;IAC/B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,8DAA8D;IAC9D,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAY,GAAG,OAAO,CAmDrD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAY,GAAG;IAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAYrG"}
@@ -0,0 +1,67 @@
1
+ 'use client';
2
+ import { useCallback, useEffect, useState } from 'react';
3
+ import { account, API, preferences, rename, saveProgress } from './api.js';
4
+ import { step } from './state.js';
5
+ /**
6
+ * The person's onboarding, read from IAM once and written through as each step
7
+ * finishes. A failed read leaves the flow at the start rather than blocking it.
8
+ */
9
+ export function useSession(api = API) {
10
+ const [loading, setLoading] = useState(true);
11
+ const [stored, setStored] = useState({});
12
+ const [name, setNameState] = useState('');
13
+ const [error, setError] = useState(null);
14
+ useEffect(() => {
15
+ let live = true;
16
+ Promise.all([preferences(api).catch(() => ({})), account(api).catch(() => null)]).then(([prefs, me]) => {
17
+ if (!live)
18
+ return;
19
+ setStored(prefs ?? {});
20
+ const a = me;
21
+ setNameState(a?.displayName?.trim() ?? '');
22
+ setLoading(false);
23
+ });
24
+ return () => {
25
+ live = false;
26
+ };
27
+ }, [api]);
28
+ const save = useCallback(async (patch) => {
29
+ setStored((s) => ({ ...s, onboarding: { ...(s.onboarding ?? {}), ...patch } }));
30
+ try {
31
+ await saveProgress(api, patch);
32
+ setError(null);
33
+ }
34
+ catch (e) {
35
+ setError(e instanceof Error ? e.message : 'Could not save. Try again.');
36
+ }
37
+ }, [api]);
38
+ const setName = useCallback(async (n) => {
39
+ await rename(api, n);
40
+ setNameState(n);
41
+ await save({ named: true });
42
+ }, [api, save]);
43
+ const setTrain = useCallback(async (on) => {
44
+ setStored((s) => ({ ...s, train_opt_in: on }));
45
+ await preferences(api, { train_opt_in: on });
46
+ }, [api]);
47
+ return { loading, progress: stored.onboarding ?? {}, trainOptIn: stored.train_opt_in, name, save, setName, setTrain, error };
48
+ }
49
+ /**
50
+ * Whether this person still has an onboarding step to do: `null` while IAM has
51
+ * not answered, so a gate never flashes the wrong screen. A failed read answers
52
+ * `false` (nothing to do), because a broken read must not lock anyone out.
53
+ */
54
+ export function useOnboarded(api = API) {
55
+ const [state, setState] = useState({ pending: null, plan: undefined });
56
+ useEffect(() => {
57
+ let live = true;
58
+ preferences(api)
59
+ .then((s) => live && setState({ pending: step(s?.onboarding ?? {}) !== 'done', plan: s?.onboarding?.plan }))
60
+ .catch(() => live && setState({ pending: false, plan: undefined }));
61
+ return () => {
62
+ live = false;
63
+ };
64
+ }, [api]);
65
+ return state;
66
+ }
67
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/onboarding/hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.preferences = exports.API = exports.ROLES = exports.OWN_TOPIC = exports.unit = exports.SLUG = exports.saving = exports.SEAT_ADDON = exports.period = exports.OFFERS = exports.MIN_SEATS = exports.MAX_SEATS = exports.lines = exports.item = exports.ENTERPRISE_FROM = exports.ANNUAL = exports.step = exports.chatStep = exports.useSession = exports.useOnboarded = exports.Checkout = exports.ChatOnboarding = exports.Onboarding = void 0;
4
+ /**
5
+ * The onboarding every Hanzo surface shares. IAM holds each person's progress
6
+ * (POST /v1/iam/preferences), commerce takes the payment (/v1/billing), and
7
+
8
+ *
9
+ * <Onboarding/> how you will use Hanzo → plans | team → seats → checkout
10
+ * <ChatOnboarding/> before your first chat → name → role and starter prompts
11
+ * <Checkout/> the one checkout, also behind every Upgrade entry
12
+ */
13
+ var Onboarding_1 = require("./Onboarding.cjs");
14
+ Object.defineProperty(exports, "Onboarding", { enumerable: true, get: function () { return Onboarding_1.Onboarding; } });
15
+ var ChatOnboarding_1 = require("./ChatOnboarding.cjs");
16
+ Object.defineProperty(exports, "ChatOnboarding", { enumerable: true, get: function () { return ChatOnboarding_1.ChatOnboarding; } });
17
+ var Checkout_1 = require("./Checkout.cjs");
18
+ Object.defineProperty(exports, "Checkout", { enumerable: true, get: function () { return Checkout_1.Checkout; } });
19
+ var hooks_1 = require("./hooks.cjs");
20
+ Object.defineProperty(exports, "useOnboarded", { enumerable: true, get: function () { return hooks_1.useOnboarded; } });
21
+ Object.defineProperty(exports, "useSession", { enumerable: true, get: function () { return hooks_1.useSession; } });
22
+ var state_1 = require("./state.cjs");
23
+ Object.defineProperty(exports, "chatStep", { enumerable: true, get: function () { return state_1.chatStep; } });
24
+ Object.defineProperty(exports, "step", { enumerable: true, get: function () { return state_1.step; } });
25
+ var plans_1 = require("./plans.cjs");
26
+ Object.defineProperty(exports, "ANNUAL", { enumerable: true, get: function () { return plans_1.ANNUAL; } });
27
+ Object.defineProperty(exports, "ENTERPRISE_FROM", { enumerable: true, get: function () { return plans_1.ENTERPRISE_FROM; } });
28
+ Object.defineProperty(exports, "item", { enumerable: true, get: function () { return plans_1.item; } });
29
+ Object.defineProperty(exports, "lines", { enumerable: true, get: function () { return plans_1.lines; } });
30
+ Object.defineProperty(exports, "MAX_SEATS", { enumerable: true, get: function () { return plans_1.MAX_SEATS; } });
31
+ Object.defineProperty(exports, "MIN_SEATS", { enumerable: true, get: function () { return plans_1.MIN_SEATS; } });
32
+ Object.defineProperty(exports, "OFFERS", { enumerable: true, get: function () { return plans_1.OFFERS; } });
33
+ Object.defineProperty(exports, "period", { enumerable: true, get: function () { return plans_1.period; } });
34
+ Object.defineProperty(exports, "SEAT_ADDON", { enumerable: true, get: function () { return plans_1.SEAT_ADDON; } });
35
+ Object.defineProperty(exports, "saving", { enumerable: true, get: function () { return plans_1.saving; } });
36
+ Object.defineProperty(exports, "SLUG", { enumerable: true, get: function () { return plans_1.SLUG; } });
37
+ Object.defineProperty(exports, "unit", { enumerable: true, get: function () { return plans_1.unit; } });
38
+ var roles_1 = require("./roles.cjs");
39
+ Object.defineProperty(exports, "OWN_TOPIC", { enumerable: true, get: function () { return roles_1.OWN_TOPIC; } });
40
+ Object.defineProperty(exports, "ROLES", { enumerable: true, get: function () { return roles_1.ROLES; } });
41
+ var api_1 = require("./api.cjs");
42
+ Object.defineProperty(exports, "API", { enumerable: true, get: function () { return api_1.API; } });
43
+ Object.defineProperty(exports, "preferences", { enumerable: true, get: function () { return api_1.preferences; } });
@@ -0,0 +1,18 @@
1
+ /**
2
+ * The onboarding every Hanzo surface shares. IAM holds each person's progress
3
+ * (POST /v1/iam/preferences), commerce takes the payment (/v1/billing), and
4
+
5
+ *
6
+ * <Onboarding/> how you will use Hanzo → plans | team → seats → checkout
7
+ * <ChatOnboarding/> before your first chat → name → role and starter prompts
8
+ * <Checkout/> the one checkout, also behind every Upgrade entry
9
+ */
10
+ export { Onboarding, type OnboardingProps } from './Onboarding.js';
11
+ export { ChatOnboarding, type ChatOnboardingProps } from './ChatOnboarding.js';
12
+ export { Checkout, type CheckoutProps } from './Checkout.js';
13
+ export { useOnboarded, useSession, type Session, type Track } from './hooks.js';
14
+ export { chatStep, step, type ChatStep, type Progress, type Step, type Use } from './state.js';
15
+ export { ANNUAL, ENTERPRISE_FROM, item, lines, MAX_SEATS, MIN_SEATS, OFFERS, period, SEAT_ADDON, saving, SLUG, unit, type Interval, type Lines, type Offer, type PlanId } from './plans.js';
16
+ export { OWN_TOPIC, ROLES, type Role, type Starter } from './roles.js';
17
+ export { API, preferences } from './api.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,SAAS,CAAA;AAC3F,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AACxL,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * The onboarding every Hanzo surface shares. IAM holds each person's progress
3
+ * (POST /v1/iam/preferences), commerce takes the payment (/v1/billing), and
4
+
5
+ *
6
+ * <Onboarding/> how you will use Hanzo → plans | team → seats → checkout
7
+ * <ChatOnboarding/> before your first chat → name → role and starter prompts
8
+ * <Checkout/> the one checkout, also behind every Upgrade entry
9
+ */
10
+ export { Onboarding } from './Onboarding.js';
11
+ export { ChatOnboarding } from './ChatOnboarding.js';
12
+ export { Checkout } from './Checkout.js';
13
+ export { useOnboarded, useSession } from './hooks.js';
14
+ export { chatStep, step } from './state.js';
15
+ export { ANNUAL, ENTERPRISE_FROM, item, lines, MAX_SEATS, MIN_SEATS, OFFERS, period, SEAT_ADDON, saving, SLUG, unit } from './plans.js';
16
+ export { OWN_TOPIC, ROLES } from './roles.js';
17
+ export { API, preferences } from './api.js';
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/onboarding/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,UAAU,EAAwB,MAAM,cAAc,CAAA;AAC/D,OAAO,EAAE,cAAc,EAA4B,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAsB,MAAM,YAAY,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,UAAU,EAA4B,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAqD,MAAM,SAAS,CAAA;AAC3F,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAsD,MAAM,SAAS,CAAA;AACxL,OAAO,EAAE,SAAS,EAAE,KAAK,EAA2B,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SLUG = exports.money = exports.usd = exports.saving = exports.period = exports.unit = exports.OFFERS = exports.ENTERPRISE_FROM = exports.MAX_SEATS = exports.MIN_SEATS = exports.SEAT_ADDON = exports.ANNUAL = void 0;
4
+ exports.lines = lines;
5
+ exports.item = item;
6
+ const plans_1 = require("@hanzo/plans");
7
+ /** Annual price is the monthly price times this. */
8
+ exports.ANNUAL = 0.82;
9
+ /** What a team seat adds to the personal plan it is built on, per month. */
10
+ exports.SEAT_ADDON = 5;
11
+ exports.MIN_SEATS = 2;
12
+ exports.MAX_SEATS = 150;
13
+ /** From 20 people the team plan becomes a conversation. */
14
+ exports.ENTERPRISE_FROM = 20;
15
+ const monthlyOf = (slug) => {
16
+ const p = plans_1.subscriptionPlans.find((x) => x.id === slug);
17
+ if (!p || p.priceMonthly == null)
18
+ throw new Error(`@hanzo/plans has no monthly price for ${slug}`);
19
+ return p.priceMonthly;
20
+ };
21
+ const cents = (n) => Math.round(n * 100) / 100;
22
+ exports.OFFERS = {
23
+ free: {
24
+ id: 'free',
25
+ name: 'Free',
26
+ category: 'individual',
27
+ monthly: 0,
28
+ blurb: 'Meet Hanzo',
29
+ features: ['Chat on web, iOS, Android and desktop', 'The free Zen models, with a daily allowance', 'Built-in web search', 'Add credit at any time for the paid models'],
30
+ },
31
+ dev: {
32
+ id: 'dev',
33
+ name: 'Dev',
34
+ category: 'individual',
35
+ monthly: monthlyOf('dev'),
36
+ blurb: 'Research, code, and organize',
37
+ features: ['Everything in Free and:', 'Hanzo Dev in your own repository', 'Every room in the Hanzo app', 'Higher usage limits', 'MCP, the SDK and the CLI included'],
38
+ },
39
+ max: {
40
+ id: 'max',
41
+ name: 'Max',
42
+ category: 'individual',
43
+ monthly: monthlyOf('max'),
44
+ blurb: 'Higher limits, priority access',
45
+ features: ['Everything in Dev, plus:', 'Enso orchestration across models', 'Unlimited managed agents', 'Higher output limits for all tasks', 'Priority access at high traffic times'],
46
+ },
47
+ team_standard: {
48
+ id: 'team_standard',
49
+ name: 'Standard seat',
50
+ category: 'team',
51
+ monthly: monthlyOf('dev') + exports.SEAT_ADDON,
52
+ blurb: 'A Dev seat for each teammate',
53
+ features: ['Everything in Dev, per person', 'Org workspaces with shared history and projects', 'SSO through Hanzo IAM', 'One bill for everyone'],
54
+ },
55
+ team_premium: {
56
+ id: 'team_premium',
57
+ name: 'Premium seat',
58
+ category: 'team',
59
+ monthly: monthlyOf('max') + exports.SEAT_ADDON,
60
+ blurb: 'A Max seat for heavy users',
61
+ features: ['Everything in Max, per person', 'Org workspaces with shared history and projects', 'SSO through Hanzo IAM', 'One bill for everyone'],
62
+ },
63
+ };
64
+ /** One unit's price per month at this interval (a year, spread over its twelve months). */
65
+ const unit = (id, interval) => cents(interval === 'annual' ? exports.OFFERS[id].monthly * exports.ANNUAL : exports.OFFERS[id].monthly);
66
+ exports.unit = unit;
67
+ /** What one unit costs per billing period: the month, or the year at once. */
68
+ const period = (id, interval) => (interval === 'annual' ? cents((0, exports.unit)(id, 'annual') * 12) : (0, exports.unit)(id, 'monthly'));
69
+ exports.period = period;
70
+ /** What a year saves over twelve months, as a whole percent. */
71
+ exports.saving = Math.round((1 - exports.ANNUAL) * 100);
72
+ function lines(id, interval, seats = 1) {
73
+ const n = exports.OFFERS[id].category === 'team' ? Math.max(exports.MIN_SEATS, Math.min(exports.MAX_SEATS, Math.floor(seats))) : 1;
74
+ return { seats: n, subtotal: cents((0, exports.period)(id, interval) * n), perMonth: cents((0, exports.unit)(id, interval) * n) };
75
+ }
76
+ /** GA4-shaped item for a commerce event: price is per unit, quantity is seats. */
77
+ function item(id, interval, seats = 1) {
78
+ const o = exports.OFFERS[id];
79
+ return { item_id: id, item_name: o.name, item_category: o.category, item_variant: interval, price: (0, exports.period)(id, interval), quantity: lines(id, interval, seats).seats };
80
+ }
81
+ const usd = (n) => `$${n.toFixed(2)}`;
82
+ exports.usd = usd;
83
+ /** `$19` when whole, `$15.58` when not. */
84
+ const money = (n) => (Number.isInteger(n) ? `$${n}` : (0, exports.usd)(n));
85
+ exports.money = money;
86
+ /** The commerce catalog's slug for a plan, and the quantity it is bought at. */
87
+ exports.SLUG = { free: 'free', dev: 'dev', max: 'max', team_standard: 'team-standard', team_premium: 'team-premium' };
@@ -0,0 +1,60 @@
1
+ /**
2
+ * What Hanzo sells, priced from @hanzo/plans and nothing else.
3
+ *
4
+ * free chat only; offered on the personal path alone
5
+ * dev, max the personal plans, at the catalog's monthly price
6
+ * team_standard a Dev seat + the team add-on
7
+ * team_premium a Max seat + the team add-on, two seats at least
8
+ *
9
+ * A year is the month times 0.82, paid at once.
10
+ */
11
+ export type PlanId = 'free' | 'dev' | 'max' | 'team_standard' | 'team_premium';
12
+ export type Interval = 'monthly' | 'annual';
13
+ export type Category = 'individual' | 'team';
14
+ /** Annual price is the monthly price times this. */
15
+ export declare const ANNUAL = 0.82;
16
+ /** What a team seat adds to the personal plan it is built on, per month. */
17
+ export declare const SEAT_ADDON = 5;
18
+ export declare const MIN_SEATS = 2;
19
+ export declare const MAX_SEATS = 150;
20
+ /** From 20 people the team plan becomes a conversation. */
21
+ export declare const ENTERPRISE_FROM = 20;
22
+ export interface Offer {
23
+ id: PlanId;
24
+ name: string;
25
+ category: Category;
26
+ /** GA4 item_id / item_category / item_name come from here. */
27
+ monthly: number;
28
+ blurb: string;
29
+ features: string[];
30
+ }
31
+ export declare const OFFERS: Record<PlanId, Offer>;
32
+ /** One unit's price per month at this interval (a year, spread over its twelve months). */
33
+ export declare const unit: (id: PlanId, interval: Interval) => number;
34
+ /** What one unit costs per billing period: the month, or the year at once. */
35
+ export declare const period: (id: PlanId, interval: Interval) => number;
36
+ /** What a year saves over twelve months, as a whole percent. */
37
+ export declare const saving: number;
38
+ export interface Lines {
39
+ seats: number;
40
+ /** What is charged today (before tax): the period's price times the seats. */
41
+ subtotal: number;
42
+ /** What that comes to per month. */
43
+ perMonth: number;
44
+ }
45
+ export declare function lines(id: PlanId, interval: Interval, seats?: number): Lines;
46
+ /** GA4-shaped item for a commerce event: price is per unit, quantity is seats. */
47
+ export declare function item(id: PlanId, interval: Interval, seats?: number): {
48
+ item_id: PlanId;
49
+ item_name: string;
50
+ item_category: Category;
51
+ item_variant: Interval;
52
+ price: number;
53
+ quantity: number;
54
+ };
55
+ export declare const usd: (n: number) => string;
56
+ /** `$19` when whole, `$15.58` when not. */
57
+ export declare const money: (n: number) => string;
58
+ /** The commerce catalog's slug for a plan, and the quantity it is bought at. */
59
+ export declare const SLUG: Record<PlanId, string>;
60
+ //# sourceMappingURL=plans.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/onboarding/plans.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,eAAe,GAAG,cAAc,CAAA;AAC9E,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;AAC3C,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAA;AAE5C,oDAAoD;AACpD,eAAO,MAAM,MAAM,OAAO,CAAA;AAC1B,4EAA4E;AAC5E,eAAO,MAAM,UAAU,IAAI,CAAA;AAC3B,eAAO,MAAM,SAAS,IAAI,CAAA;AAC1B,eAAO,MAAM,SAAS,MAAM,CAAA;AAC5B,2DAA2D;AAC3D,eAAO,MAAM,eAAe,KAAK,CAAA;AAUjC,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAyCxC,CAAA;AAED,2FAA2F;AAC3F,eAAO,MAAM,IAAI,OAAQ,MAAM,YAAY,QAAQ,KAAG,MAAyF,CAAA;AAE/I,8EAA8E;AAC9E,eAAO,MAAM,MAAM,OAAQ,MAAM,YAAY,QAAQ,KAAG,MAAwF,CAAA;AAEhJ,gEAAgE;AAChE,eAAO,MAAM,MAAM,QAAiC,CAAA;AAEpD,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAA;IAChB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,SAAI,GAAG,KAAK,CAGtE;AAED,kFAAkF;AAClF,wBAAgB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,SAAI;IAEnD,OAAO;IAAM,SAAS;IAAU,aAAa;IAAc,YAAY;IAAY,KAAK;IAAwB,QAAQ;EAClI;AAED,eAAO,MAAM,GAAG,MAAO,MAAM,KAAG,MAA4B,CAAA;AAC5D,2CAA2C;AAC3C,eAAO,MAAM,KAAK,MAAO,MAAM,KAAG,MAAkD,CAAA;AAEpF,gFAAgF;AAChF,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAA0G,CAAA"}