@hanzo/ui 5.0.1 → 5.0.3

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 (685) hide show
  1. package/CHANGELOG.md +184 -0
  2. package/LICENSE +21 -0
  3. package/README.md +185 -192
  4. package/dist/ai/index.js +53 -0
  5. package/dist/ai/index.js.map +1 -0
  6. package/dist/ai/index.mjs +4 -0
  7. package/dist/ai/index.mjs.map +1 -0
  8. package/dist/blocks/index.js +983 -0
  9. package/dist/blocks/index.js.map +1 -0
  10. package/dist/blocks/index.mjs +945 -0
  11. package/dist/blocks/index.mjs.map +1 -0
  12. package/dist/calendar/index.js +14 -0
  13. package/dist/calendar/index.js.map +1 -0
  14. package/dist/calendar/index.mjs +5 -0
  15. package/dist/calendar/index.mjs.map +1 -0
  16. package/dist/carousel/index.js +220 -0
  17. package/dist/carousel/index.js.map +1 -0
  18. package/dist/carousel/index.mjs +191 -0
  19. package/dist/carousel/index.mjs.map +1 -0
  20. package/dist/charts/index.js +945 -0
  21. package/dist/charts/index.js.map +1 -0
  22. package/dist/charts/index.mjs +901 -0
  23. package/dist/charts/index.mjs.map +1 -0
  24. package/dist/chunk-26T4V5QU.mjs +111 -0
  25. package/dist/chunk-26T4V5QU.mjs.map +1 -0
  26. package/dist/chunk-2A5KXDLJ.js +22 -0
  27. package/dist/chunk-2A5KXDLJ.js.map +1 -0
  28. package/dist/chunk-2CJ4HMF4.js +79 -0
  29. package/dist/chunk-2CJ4HMF4.js.map +1 -0
  30. package/dist/chunk-2OIQKC5E.js +236 -0
  31. package/dist/chunk-2OIQKC5E.js.map +1 -0
  32. package/dist/chunk-2X3KSYBN.js +44 -0
  33. package/dist/chunk-2X3KSYBN.js.map +1 -0
  34. package/dist/chunk-3PBQGYR7.mjs +100 -0
  35. package/dist/chunk-3PBQGYR7.mjs.map +1 -0
  36. package/dist/chunk-3POQQ6L7.js +62 -0
  37. package/dist/chunk-3POQQ6L7.js.map +1 -0
  38. package/dist/chunk-4B47GITH.mjs +28 -0
  39. package/dist/chunk-4B47GITH.mjs.map +1 -0
  40. package/dist/chunk-4BC2OH6B.js +129 -0
  41. package/dist/chunk-4BC2OH6B.js.map +1 -0
  42. package/dist/chunk-5AQSGH4R.js +130 -0
  43. package/dist/chunk-5AQSGH4R.js.map +1 -0
  44. package/dist/chunk-5IHRJFOO.mjs +102 -0
  45. package/dist/chunk-5IHRJFOO.mjs.map +1 -0
  46. package/dist/chunk-5LDGR7YN.mjs +28 -0
  47. package/dist/chunk-5LDGR7YN.mjs.map +1 -0
  48. package/dist/chunk-5MCN3VYM.mjs +23 -0
  49. package/dist/chunk-5MCN3VYM.mjs.map +1 -0
  50. package/dist/chunk-6AVAMRMB.mjs +47 -0
  51. package/dist/chunk-6AVAMRMB.mjs.map +1 -0
  52. package/dist/chunk-6H62JRNM.mjs +120 -0
  53. package/dist/chunk-6H62JRNM.mjs.map +1 -0
  54. package/dist/chunk-6KCII3F6.mjs +126 -0
  55. package/dist/chunk-6KCII3F6.mjs.map +1 -0
  56. package/dist/chunk-7EHB43BJ.js +155 -0
  57. package/dist/chunk-7EHB43BJ.js.map +1 -0
  58. package/dist/chunk-7LRD23Q5.js +191 -0
  59. package/dist/chunk-7LRD23Q5.js.map +1 -0
  60. package/dist/chunk-7SAHKOJG.mjs +45 -0
  61. package/dist/chunk-7SAHKOJG.mjs.map +1 -0
  62. package/dist/chunk-A3D2YZK3.js +50 -0
  63. package/dist/chunk-A3D2YZK3.js.map +1 -0
  64. package/dist/chunk-AL4QFH7V.js +63 -0
  65. package/dist/chunk-AL4QFH7V.js.map +1 -0
  66. package/dist/chunk-B3WFEG6U.js +69 -0
  67. package/dist/chunk-B3WFEG6U.js.map +1 -0
  68. package/dist/chunk-BDZQJ6GK.js +242 -0
  69. package/dist/chunk-BDZQJ6GK.js.map +1 -0
  70. package/dist/chunk-BRWFYRGX.js +61 -0
  71. package/dist/chunk-BRWFYRGX.js.map +1 -0
  72. package/dist/chunk-C5DNTLBO.js +53 -0
  73. package/dist/chunk-C5DNTLBO.js.map +1 -0
  74. package/dist/chunk-CRALRACO.js +54 -0
  75. package/dist/chunk-CRALRACO.js.map +1 -0
  76. package/dist/chunk-CVACQJRM.js +149 -0
  77. package/dist/chunk-CVACQJRM.js.map +1 -0
  78. package/dist/chunk-DEIUKFPZ.mjs +63 -0
  79. package/dist/chunk-DEIUKFPZ.mjs.map +1 -0
  80. package/dist/chunk-DN2AEEA2.js +13 -0
  81. package/dist/chunk-DN2AEEA2.js.map +1 -0
  82. package/dist/chunk-DTNRWU4B.mjs +35 -0
  83. package/dist/chunk-DTNRWU4B.mjs.map +1 -0
  84. package/dist/chunk-DXIUEWRJ.mjs +31 -0
  85. package/dist/chunk-DXIUEWRJ.mjs.map +1 -0
  86. package/dist/chunk-DYFV66JX.mjs +54 -0
  87. package/dist/chunk-DYFV66JX.mjs.map +1 -0
  88. package/dist/chunk-F3WMAHXV.mjs +86 -0
  89. package/dist/chunk-F3WMAHXV.mjs.map +1 -0
  90. package/dist/chunk-F4RWPBBB.js +79 -0
  91. package/dist/chunk-F4RWPBBB.js.map +1 -0
  92. package/dist/chunk-FEGAPM6U.js +194 -0
  93. package/dist/chunk-FEGAPM6U.js.map +1 -0
  94. package/dist/chunk-G5TS56PW.mjs +160 -0
  95. package/dist/chunk-G5TS56PW.mjs.map +1 -0
  96. package/dist/chunk-GG6VGOEN.mjs +590 -0
  97. package/dist/chunk-GG6VGOEN.mjs.map +1 -0
  98. package/dist/chunk-GLAMGK32.mjs +54 -0
  99. package/dist/chunk-GLAMGK32.mjs.map +1 -0
  100. package/dist/chunk-GNMMUJXD.mjs +200 -0
  101. package/dist/chunk-GNMMUJXD.mjs.map +1 -0
  102. package/dist/chunk-GNPBULLS.mjs +600 -0
  103. package/dist/chunk-GNPBULLS.mjs.map +1 -0
  104. package/dist/chunk-GTE2DELE.js +65 -0
  105. package/dist/chunk-GTE2DELE.js.map +1 -0
  106. package/dist/chunk-GUQAFFTH.js +94 -0
  107. package/dist/chunk-GUQAFFTH.js.map +1 -0
  108. package/dist/chunk-H5VOYZHT.mjs +34 -0
  109. package/dist/chunk-H5VOYZHT.mjs.map +1 -0
  110. package/dist/chunk-HR6PBOGG.mjs +59 -0
  111. package/dist/chunk-HR6PBOGG.mjs.map +1 -0
  112. package/dist/chunk-HROONQS3.js +55 -0
  113. package/dist/chunk-HROONQS3.js.map +1 -0
  114. package/dist/chunk-IAO7SOQ3.mjs +56 -0
  115. package/dist/chunk-IAO7SOQ3.mjs.map +1 -0
  116. package/dist/chunk-K2QKU3K6.mjs +40 -0
  117. package/dist/chunk-K2QKU3K6.mjs.map +1 -0
  118. package/dist/chunk-KEUZZCCP.js +53 -0
  119. package/dist/chunk-KEUZZCCP.js.map +1 -0
  120. package/dist/chunk-KJXSLTG7.mjs +73 -0
  121. package/dist/chunk-KJXSLTG7.mjs.map +1 -0
  122. package/dist/chunk-L5AFUCVH.mjs +26 -0
  123. package/dist/chunk-L5AFUCVH.mjs.map +1 -0
  124. package/dist/chunk-LB3I52KZ.mjs +42 -0
  125. package/dist/chunk-LB3I52KZ.mjs.map +1 -0
  126. package/dist/chunk-LN75MJQ2.js +71 -0
  127. package/dist/chunk-LN75MJQ2.js.map +1 -0
  128. package/dist/chunk-LRBOFJUV.js +60 -0
  129. package/dist/chunk-LRBOFJUV.js.map +1 -0
  130. package/dist/chunk-MMNYRBOU.js +157 -0
  131. package/dist/chunk-MMNYRBOU.js.map +1 -0
  132. package/dist/chunk-MO65YF6P.js +236 -0
  133. package/dist/chunk-MO65YF6P.js.map +1 -0
  134. package/dist/chunk-N4KHP5FC.mjs +33 -0
  135. package/dist/chunk-N4KHP5FC.mjs.map +1 -0
  136. package/dist/chunk-NP2J7AB7.mjs +121 -0
  137. package/dist/chunk-NP2J7AB7.mjs.map +1 -0
  138. package/dist/chunk-OLR6SGYO.js +57 -0
  139. package/dist/chunk-OLR6SGYO.js.map +1 -0
  140. package/dist/chunk-ON7NQ4DY.js +21 -0
  141. package/dist/chunk-ON7NQ4DY.js.map +1 -0
  142. package/dist/chunk-PE3VFRLV.mjs +198 -0
  143. package/dist/chunk-PE3VFRLV.mjs.map +1 -0
  144. package/dist/chunk-Q7LOOIE5.mjs +8 -0
  145. package/dist/chunk-Q7LOOIE5.mjs.map +1 -0
  146. package/dist/chunk-QFA6U75G.mjs +51 -0
  147. package/dist/chunk-QFA6U75G.mjs.map +1 -0
  148. package/dist/chunk-QJQPT4WX.js +638 -0
  149. package/dist/chunk-QJQPT4WX.js.map +1 -0
  150. package/dist/chunk-QKHQPBSR.mjs +20 -0
  151. package/dist/chunk-QKHQPBSR.mjs.map +1 -0
  152. package/dist/chunk-SJD4XRFJ.mjs +141 -0
  153. package/dist/chunk-SJD4XRFJ.mjs.map +1 -0
  154. package/dist/chunk-SOOJLU4C.mjs +19 -0
  155. package/dist/chunk-SOOJLU4C.mjs.map +1 -0
  156. package/dist/chunk-T66B5IM5.js +51 -0
  157. package/dist/chunk-T66B5IM5.js.map +1 -0
  158. package/dist/chunk-T7RPZDO4.js +645 -0
  159. package/dist/chunk-T7RPZDO4.js.map +1 -0
  160. package/dist/chunk-TGRMDGTV.mjs +38 -0
  161. package/dist/chunk-TGRMDGTV.mjs.map +1 -0
  162. package/dist/chunk-TH2UKMCO.mjs +11 -0
  163. package/dist/chunk-TH2UKMCO.mjs.map +1 -0
  164. package/dist/chunk-TMV45OKE.mjs +113 -0
  165. package/dist/chunk-TMV45OKE.mjs.map +1 -0
  166. package/dist/chunk-TUJ7EVEK.js +171 -0
  167. package/dist/chunk-TUJ7EVEK.js.map +1 -0
  168. package/dist/chunk-ULNWDOI7.js +122 -0
  169. package/dist/chunk-ULNWDOI7.js.map +1 -0
  170. package/dist/chunk-UNUTTHCH.mjs +210 -0
  171. package/dist/chunk-UNUTTHCH.mjs.map +1 -0
  172. package/dist/chunk-VJMI6BG4.mjs +10 -0
  173. package/dist/chunk-VJMI6BG4.mjs.map +1 -0
  174. package/dist/chunk-VZVOB5MG.mjs +26 -0
  175. package/dist/chunk-VZVOB5MG.mjs.map +1 -0
  176. package/dist/chunk-WD67O22C.js +50 -0
  177. package/dist/chunk-WD67O22C.js.map +1 -0
  178. package/dist/chunk-WYPMLIJN.js +53 -0
  179. package/dist/chunk-WYPMLIJN.js.map +1 -0
  180. package/dist/chunk-X32I34NH.js +109 -0
  181. package/dist/chunk-X32I34NH.js.map +1 -0
  182. package/dist/chunk-X5MOZ3YL.js +65 -0
  183. package/dist/chunk-X5MOZ3YL.js.map +1 -0
  184. package/dist/chunk-Y4JVIPQZ.mjs +31 -0
  185. package/dist/chunk-Y4JVIPQZ.mjs.map +1 -0
  186. package/dist/chunk-Y6WOV2LZ.js +95 -0
  187. package/dist/chunk-Y6WOV2LZ.js.map +1 -0
  188. package/dist/chunk-YAEN5SCU.mjs +41 -0
  189. package/dist/chunk-YAEN5SCU.mjs.map +1 -0
  190. package/dist/chunk-YH6XDF3N.js +121 -0
  191. package/dist/chunk-YH6XDF3N.js.map +1 -0
  192. package/dist/chunk-YJKA4D75.mjs +124 -0
  193. package/dist/chunk-YJKA4D75.mjs.map +1 -0
  194. package/dist/chunk-ZANAF7WB.js +88 -0
  195. package/dist/chunk-ZANAF7WB.js.map +1 -0
  196. package/dist/chunk-ZDBWNPLO.js +30 -0
  197. package/dist/chunk-ZDBWNPLO.js.map +1 -0
  198. package/dist/chunk-ZDT2IOK2.js +56 -0
  199. package/dist/chunk-ZDT2IOK2.js.map +1 -0
  200. package/dist/chunk-ZKGVLTSI.js +25 -0
  201. package/dist/chunk-ZKGVLTSI.js.map +1 -0
  202. package/dist/chunk-ZLELESO7.js +34 -0
  203. package/dist/chunk-ZLELESO7.js.map +1 -0
  204. package/dist/chunk-ZUFUEQTX.mjs +157 -0
  205. package/dist/chunk-ZUFUEQTX.mjs.map +1 -0
  206. package/dist/chunk-ZZZWRQQE.mjs +42 -0
  207. package/dist/chunk-ZZZWRQQE.mjs.map +1 -0
  208. package/dist/command/index.js +138 -0
  209. package/dist/command/index.js.map +1 -0
  210. package/dist/command/index.mjs +128 -0
  211. package/dist/command/index.mjs.map +1 -0
  212. package/dist/components/accordion.js +25 -0
  213. package/dist/components/accordion.js.map +1 -0
  214. package/dist/components/accordion.mjs +4 -0
  215. package/dist/components/accordion.mjs.map +1 -0
  216. package/dist/components/alert.js +21 -0
  217. package/dist/components/alert.js.map +1 -0
  218. package/dist/components/alert.mjs +4 -0
  219. package/dist/components/alert.mjs.map +1 -0
  220. package/dist/components/aspect-ratio.js +12 -0
  221. package/dist/components/aspect-ratio.js.map +1 -0
  222. package/dist/components/aspect-ratio.mjs +3 -0
  223. package/dist/components/aspect-ratio.mjs.map +1 -0
  224. package/dist/components/avatar.js +21 -0
  225. package/dist/components/avatar.js.map +1 -0
  226. package/dist/components/avatar.mjs +4 -0
  227. package/dist/components/avatar.mjs.map +1 -0
  228. package/dist/components/badge.js +17 -0
  229. package/dist/components/badge.js.map +1 -0
  230. package/dist/components/badge.mjs +4 -0
  231. package/dist/components/badge.mjs.map +1 -0
  232. package/dist/components/breadcrumb.js +37 -0
  233. package/dist/components/breadcrumb.js.map +1 -0
  234. package/dist/components/breadcrumb.mjs +4 -0
  235. package/dist/components/breadcrumb.mjs.map +1 -0
  236. package/dist/components/button.js +17 -0
  237. package/dist/components/button.js.map +1 -0
  238. package/dist/components/button.mjs +4 -0
  239. package/dist/components/button.mjs.map +1 -0
  240. package/dist/components/card.js +37 -0
  241. package/dist/components/card.js.map +1 -0
  242. package/dist/components/card.mjs +4 -0
  243. package/dist/components/card.mjs.map +1 -0
  244. package/dist/components/checkbox.js +13 -0
  245. package/dist/components/checkbox.js.map +1 -0
  246. package/dist/components/checkbox.mjs +4 -0
  247. package/dist/components/checkbox.mjs.map +1 -0
  248. package/dist/components/collapsible.js +20 -0
  249. package/dist/components/collapsible.js.map +1 -0
  250. package/dist/components/collapsible.mjs +3 -0
  251. package/dist/components/collapsible.mjs.map +1 -0
  252. package/dist/components/context-menu.js +69 -0
  253. package/dist/components/context-menu.js.map +1 -0
  254. package/dist/components/context-menu.mjs +4 -0
  255. package/dist/components/context-menu.mjs.map +1 -0
  256. package/dist/components/dialog.js +49 -0
  257. package/dist/components/dialog.js.map +1 -0
  258. package/dist/components/dialog.mjs +4 -0
  259. package/dist/components/dialog.mjs.map +1 -0
  260. package/dist/components/drawer.js +49 -0
  261. package/dist/components/drawer.js.map +1 -0
  262. package/dist/components/drawer.mjs +4 -0
  263. package/dist/components/drawer.mjs.map +1 -0
  264. package/dist/components/dropdown-menu.js +69 -0
  265. package/dist/components/dropdown-menu.js.map +1 -0
  266. package/dist/components/dropdown-menu.mjs +4 -0
  267. package/dist/components/dropdown-menu.mjs.map +1 -0
  268. package/dist/components/form.js +42 -0
  269. package/dist/components/form.js.map +1 -0
  270. package/dist/components/form.mjs +5 -0
  271. package/dist/components/form.mjs.map +1 -0
  272. package/dist/components/hover-card.js +21 -0
  273. package/dist/components/hover-card.js.map +1 -0
  274. package/dist/components/hover-card.mjs +4 -0
  275. package/dist/components/hover-card.mjs.map +1 -0
  276. package/dist/components/index.js +1047 -0
  277. package/dist/components/index.js.map +1 -0
  278. package/dist/components/index.mjs +46 -0
  279. package/dist/components/index.mjs.map +1 -0
  280. package/dist/components/input-otp.js +25 -0
  281. package/dist/components/input-otp.js.map +1 -0
  282. package/dist/components/input-otp.mjs +4 -0
  283. package/dist/components/input-otp.mjs.map +1 -0
  284. package/dist/components/input.js +13 -0
  285. package/dist/components/input.js.map +1 -0
  286. package/dist/components/input.mjs +4 -0
  287. package/dist/components/input.mjs.map +1 -0
  288. package/dist/components/label.js +13 -0
  289. package/dist/components/label.js.map +1 -0
  290. package/dist/components/label.mjs +4 -0
  291. package/dist/components/label.mjs.map +1 -0
  292. package/dist/components/menubar.js +73 -0
  293. package/dist/components/menubar.js.map +1 -0
  294. package/dist/components/menubar.mjs +4 -0
  295. package/dist/components/menubar.mjs.map +1 -0
  296. package/dist/components/navigation-menu.js +45 -0
  297. package/dist/components/navigation-menu.js.map +1 -0
  298. package/dist/components/navigation-menu.mjs +4 -0
  299. package/dist/components/navigation-menu.mjs.map +1 -0
  300. package/dist/components/pagination.js +38 -0
  301. package/dist/components/pagination.js.map +1 -0
  302. package/dist/components/pagination.mjs +5 -0
  303. package/dist/components/pagination.mjs.map +1 -0
  304. package/dist/components/popover.js +25 -0
  305. package/dist/components/popover.js.map +1 -0
  306. package/dist/components/popover.mjs +4 -0
  307. package/dist/components/popover.mjs.map +1 -0
  308. package/dist/components/progress.js +13 -0
  309. package/dist/components/progress.js.map +1 -0
  310. package/dist/components/progress.mjs +4 -0
  311. package/dist/components/progress.mjs.map +1 -0
  312. package/dist/components/radio-group.js +17 -0
  313. package/dist/components/radio-group.js.map +1 -0
  314. package/dist/components/radio-group.mjs +4 -0
  315. package/dist/components/radio-group.mjs.map +1 -0
  316. package/dist/components/resizable.js +21 -0
  317. package/dist/components/resizable.js.map +1 -0
  318. package/dist/components/resizable.mjs +4 -0
  319. package/dist/components/resizable.mjs.map +1 -0
  320. package/dist/components/scroll-area.js +17 -0
  321. package/dist/components/scroll-area.js.map +1 -0
  322. package/dist/components/scroll-area.mjs +4 -0
  323. package/dist/components/scroll-area.mjs.map +1 -0
  324. package/dist/components/select.js +49 -0
  325. package/dist/components/select.js.map +1 -0
  326. package/dist/components/select.mjs +4 -0
  327. package/dist/components/select.mjs.map +1 -0
  328. package/dist/components/separator.js +13 -0
  329. package/dist/components/separator.js.map +1 -0
  330. package/dist/components/separator.mjs +4 -0
  331. package/dist/components/separator.mjs.map +1 -0
  332. package/dist/components/sheet.js +49 -0
  333. package/dist/components/sheet.js.map +1 -0
  334. package/dist/components/sheet.mjs +4 -0
  335. package/dist/components/sheet.mjs.map +1 -0
  336. package/dist/components/sidebar.js +111 -0
  337. package/dist/components/sidebar.js.map +1 -0
  338. package/dist/components/sidebar.mjs +10 -0
  339. package/dist/components/sidebar.mjs.map +1 -0
  340. package/dist/components/skeleton.js +13 -0
  341. package/dist/components/skeleton.js.map +1 -0
  342. package/dist/components/skeleton.mjs +4 -0
  343. package/dist/components/skeleton.mjs.map +1 -0
  344. package/dist/components/slider.js +13 -0
  345. package/dist/components/slider.js.map +1 -0
  346. package/dist/components/slider.mjs +4 -0
  347. package/dist/components/slider.mjs.map +1 -0
  348. package/dist/components/switch.js +13 -0
  349. package/dist/components/switch.js.map +1 -0
  350. package/dist/components/switch.mjs +4 -0
  351. package/dist/components/switch.mjs.map +1 -0
  352. package/dist/components/table.js +41 -0
  353. package/dist/components/table.js.map +1 -0
  354. package/dist/components/table.mjs +4 -0
  355. package/dist/components/table.mjs.map +1 -0
  356. package/dist/components/tabs.js +25 -0
  357. package/dist/components/tabs.js.map +1 -0
  358. package/dist/components/tabs.mjs +4 -0
  359. package/dist/components/tabs.mjs.map +1 -0
  360. package/dist/components/textarea.js +13 -0
  361. package/dist/components/textarea.js.map +1 -0
  362. package/dist/components/textarea.mjs +4 -0
  363. package/dist/components/textarea.mjs.map +1 -0
  364. package/dist/components/toast.js +37 -0
  365. package/dist/components/toast.js.map +1 -0
  366. package/dist/components/toast.mjs +4 -0
  367. package/dist/components/toast.mjs.map +1 -0
  368. package/dist/components/toggle-group.js +18 -0
  369. package/dist/components/toggle-group.js.map +1 -0
  370. package/dist/components/toggle-group.mjs +5 -0
  371. package/dist/components/toggle-group.mjs.map +1 -0
  372. package/dist/components/toggle.js +17 -0
  373. package/dist/components/toggle.js.map +1 -0
  374. package/dist/components/toggle.mjs +4 -0
  375. package/dist/components/toggle.mjs.map +1 -0
  376. package/dist/components/tooltip.js +25 -0
  377. package/dist/components/tooltip.js.map +1 -0
  378. package/dist/components/tooltip.mjs +4 -0
  379. package/dist/components/tooltip.mjs.map +1 -0
  380. package/dist/effects/index.js +162 -0
  381. package/dist/effects/index.js.map +1 -0
  382. package/dist/effects/index.mjs +156 -0
  383. package/dist/effects/index.mjs.map +1 -0
  384. package/dist/index.js +1089 -9070
  385. package/dist/index.js.map +1 -1
  386. package/dist/index.mjs +45 -8695
  387. package/dist/index.mjs.map +1 -1
  388. package/dist/lib/utils.js +12 -0
  389. package/dist/lib/utils.js.map +1 -0
  390. package/dist/lib/utils.mjs +3 -0
  391. package/dist/lib/utils.mjs.map +1 -0
  392. package/dist/markdown/index.js +669 -0
  393. package/dist/markdown/index.js.map +1 -0
  394. package/dist/markdown/index.mjs +635 -0
  395. package/dist/markdown/index.mjs.map +1 -0
  396. package/dist/qr/index.js +101 -0
  397. package/dist/qr/index.js.map +1 -0
  398. package/dist/qr/index.mjs +98 -0
  399. package/dist/qr/index.mjs.map +1 -0
  400. package/dist/upload/index.js +166 -0
  401. package/dist/upload/index.js.map +1 -0
  402. package/dist/upload/index.mjs +163 -0
  403. package/dist/upload/index.mjs.map +1 -0
  404. package/package.json +153 -272
  405. package/publish.sh +27 -0
  406. package/assets/ai-icons.tsx +0 -207
  407. package/assets/crypto.tsx +0 -33
  408. package/assets/file-type-icon.tsx +0 -66
  409. package/assets/file.tsx +0 -45
  410. package/assets/general.tsx +0 -2318
  411. package/assets/hanzo-logo.svg +0 -9
  412. package/assets/hanzo-logo.tsx +0 -17
  413. package/assets/index.ts +0 -122
  414. package/assets/index.tsx +0 -4
  415. package/assets/llm-provider.tsx +0 -1094
  416. package/bin/cli.js +0 -100
  417. package/bin/create-registry.js +0 -108
  418. package/bin/mcp.js +0 -403
  419. package/bin/npx-registry-mcp.js +0 -15
  420. package/bin/registry-mcp-wrapper.sh +0 -19
  421. package/bin/registry-mcp.js +0 -100
  422. package/bin/start-mcp-server.sh +0 -22
  423. package/bin/test-mcp.sh +0 -52
  424. package/bin/update-registry.js +0 -196
  425. package/blocks/auth/index.ts +0 -6
  426. package/blocks/auth/login-2fa.tsx +0 -165
  427. package/blocks/auth/login-basic.tsx +0 -94
  428. package/blocks/auth/login-social.tsx +0 -148
  429. package/blocks/auth/magic-link.tsx +0 -129
  430. package/blocks/auth/password-reset.tsx +0 -97
  431. package/blocks/auth/signup.tsx +0 -157
  432. package/blocks/components/accordian-block.tsx +0 -48
  433. package/blocks/components/block-component-props.ts +0 -11
  434. package/blocks/components/bullet-cards-block.tsx +0 -46
  435. package/blocks/components/card-block/index.tsx +0 -171
  436. package/blocks/components/card-block/link-out-button.tsx +0 -20
  437. package/blocks/components/card-block/util.ts +0 -28
  438. package/blocks/components/carte-blanche-block/index.tsx +0 -127
  439. package/blocks/components/carte-blanche-block/variant-content-left.tsx +0 -49
  440. package/blocks/components/content.tsx +0 -70
  441. package/blocks/components/cta-block.tsx +0 -115
  442. package/blocks/components/enh-heading-block.tsx +0 -204
  443. package/blocks/components/grid-block/grid-block-mutator.ts +0 -12
  444. package/blocks/components/grid-block/index.tsx +0 -83
  445. package/blocks/components/grid-block/mutator-registry.ts +0 -10
  446. package/blocks/components/grid-block/table-borders.mutator.ts +0 -47
  447. package/blocks/components/group-block.tsx +0 -83
  448. package/blocks/components/heading-block.tsx +0 -88
  449. package/blocks/components/image-block.tsx +0 -111
  450. package/blocks/components/index.ts +0 -30
  451. package/blocks/components/screenful-block/content.tsx +0 -123
  452. package/blocks/components/screenful-block/index.tsx +0 -107
  453. package/blocks/components/screenful-block/poster-background.tsx +0 -34
  454. package/blocks/components/screenful-block/video-background.tsx +0 -45
  455. package/blocks/components/space-block.tsx +0 -66
  456. package/blocks/components/video-block.tsx +0 -138
  457. package/blocks/data-display/activity-feed.tsx +0 -242
  458. package/blocks/data-display/data-table.tsx +0 -235
  459. package/blocks/data-display/stats-grid.tsx +0 -194
  460. package/blocks/def/accordian-block.ts +0 -14
  461. package/blocks/def/block.ts +0 -7
  462. package/blocks/def/bullet-cards-block.ts +0 -22
  463. package/blocks/def/card-block.ts +0 -22
  464. package/blocks/def/carte-blanche-block.ts +0 -21
  465. package/blocks/def/cta-block.ts +0 -19
  466. package/blocks/def/element-block.ts +0 -11
  467. package/blocks/def/enh-heading-block.ts +0 -44
  468. package/blocks/def/grid-block.ts +0 -16
  469. package/blocks/def/group-block.ts +0 -11
  470. package/blocks/def/heading-block.ts +0 -15
  471. package/blocks/def/image-block.ts +0 -31
  472. package/blocks/def/index.ts +0 -35
  473. package/blocks/def/screenful-block.ts +0 -54
  474. package/blocks/def/space-block.ts +0 -64
  475. package/blocks/def/video-block.ts +0 -9
  476. package/blocks/ecommerce/checkout.tsx +0 -242
  477. package/blocks/ecommerce/index.ts +0 -7
  478. package/blocks/ecommerce/product-detail.tsx +0 -257
  479. package/blocks/ecommerce/product-grid.tsx +0 -148
  480. package/blocks/ecommerce/shopping-cart.tsx +0 -181
  481. package/blocks/index.ts +0 -2
  482. package/blocks/marketing/cta-section.tsx +0 -207
  483. package/blocks/marketing/faq.tsx +0 -159
  484. package/blocks/marketing/features-grid.tsx +0 -156
  485. package/blocks/marketing/hero-section.tsx +0 -192
  486. package/blocks/marketing/index.ts +0 -6
  487. package/blocks/marketing/pricing-table.tsx +0 -121
  488. package/blocks/marketing/testimonials.tsx +0 -196
  489. package/components/index.ts +0 -9
  490. package/dist/tailwind.js +0 -2025
  491. package/dist/tailwind.js.map +0 -1
  492. package/dist/tailwind.mjs +0 -2013
  493. package/dist/tailwind.mjs.map +0 -1
  494. package/dist/types.js +0 -59
  495. package/dist/types.js.map +0 -1
  496. package/dist/types.mjs +0 -53
  497. package/dist/types.mjs.map +0 -1
  498. package/dist/utils.js +0 -30
  499. package/dist/utils.js.map +0 -1
  500. package/dist/utils.mjs +0 -26
  501. package/dist/utils.mjs.map +0 -1
  502. package/frameworks/core/index.ts +0 -6
  503. package/frameworks/core/utils/index.ts +0 -64
  504. package/frameworks/react/components/button.tsx +0 -26
  505. package/frameworks/react/components/index.ts +0 -5
  506. package/frameworks/react/hooks/index.ts +0 -5
  507. package/frameworks/react/index.ts +0 -9
  508. package/frameworks/react/package.json +0 -8
  509. package/frameworks/react/utils/index.ts +0 -2
  510. package/frameworks/react-native/index.ts +0 -9
  511. package/frameworks/react-native/package.json +0 -8
  512. package/frameworks/registry.json +0 -371
  513. package/frameworks/setup.sh +0 -69
  514. package/frameworks/svelte/index.ts +0 -9
  515. package/frameworks/svelte/package.json +0 -8
  516. package/frameworks/tracker.json +0 -1854
  517. package/frameworks/vue/index.ts +0 -9
  518. package/frameworks/vue/package.json +0 -8
  519. package/helpers/file.ts +0 -33
  520. package/helpers/memoization.ts +0 -40
  521. package/primitives/accordion.tsx +0 -74
  522. package/primitives/action-button.tsx +0 -42
  523. package/primitives/alert-dialog.tsx +0 -185
  524. package/primitives/alert.tsx +0 -74
  525. package/primitives/apply-typography.tsx +0 -55
  526. package/primitives/aspect-ratio.tsx +0 -5
  527. package/primitives/avatar.tsx +0 -57
  528. package/primitives/background-beams.tsx +0 -142
  529. package/primitives/badge.tsx +0 -45
  530. package/primitives/breadcrumb.tsx +0 -130
  531. package/primitives/breakpoint-indicator.tsx +0 -19
  532. package/primitives/button.tsx +0 -72
  533. package/primitives/calendar.tsx +0 -72
  534. package/primitives/card.tsx +0 -97
  535. package/primitives/carousel.tsx +0 -238
  536. package/primitives/chat/chat-input-area.tsx +0 -88
  537. package/primitives/chat/chat-input.tsx +0 -71
  538. package/primitives/chat/files-preview.tsx +0 -331
  539. package/primitives/chat/index.ts +0 -6
  540. package/primitives/chat/json-form.tsx +0 -8
  541. package/primitives/chat/message-list.tsx +0 -308
  542. package/primitives/chat/message.tsx +0 -569
  543. package/primitives/chat/sqlite-preview.tsx +0 -215
  544. package/primitives/checkbox.tsx +0 -32
  545. package/primitives/collapsible.tsx +0 -9
  546. package/primitives/combobox.tsx +0 -239
  547. package/primitives/command.tsx +0 -151
  548. package/primitives/context-menu.tsx +0 -206
  549. package/primitives/copy-to-clipboard-icon.tsx +0 -60
  550. package/primitives/dialog-video-controller.tsx +0 -38
  551. package/primitives/dialog.tsx +0 -128
  552. package/primitives/dot-pattern.tsx +0 -57
  553. package/primitives/dots-loader.tsx +0 -13
  554. package/primitives/drawer.tsx +0 -113
  555. package/primitives/dropdown-menu.tsx +0 -199
  556. package/primitives/error-message.tsx +0 -19
  557. package/primitives/file-uploader.tsx +0 -203
  558. package/primitives/form.tsx +0 -185
  559. package/primitives/hover-card.tsx +0 -28
  560. package/primitives/icons/github.tsx +0 -14
  561. package/primitives/icons/index.ts +0 -18
  562. package/primitives/icons/youtube-logo.tsx +0 -59
  563. package/primitives/index-client.ts +0 -4
  564. package/primitives/index-common.ts +0 -304
  565. package/primitives/index-next.ts +0 -4
  566. package/primitives/input-otp.tsx +0 -65
  567. package/primitives/input.tsx +0 -128
  568. package/primitives/label.tsx +0 -21
  569. package/primitives/list-adaptor.ts +0 -12
  570. package/primitives/list-box.tsx +0 -74
  571. package/primitives/loading-spinner.tsx +0 -33
  572. package/primitives/markdown-preview.tsx +0 -612
  573. package/primitives/mermaid.tsx +0 -191
  574. package/primitives/navigation-menu.tsx +0 -147
  575. package/primitives/next/image.tsx +0 -91
  576. package/primitives/next/index.ts +0 -7
  577. package/primitives/next/inline-icon.tsx +0 -36
  578. package/primitives/next/link-element.tsx +0 -109
  579. package/primitives/next/mdx-link.tsx +0 -22
  580. package/primitives/next/media-stack.tsx +0 -52
  581. package/primitives/next/nav-items.tsx +0 -45
  582. package/primitives/next/youtube-embed.tsx +0 -83
  583. package/primitives/pagination.tsx +0 -117
  584. package/primitives/popover.tsx +0 -34
  585. package/primitives/pretty-json-print.tsx +0 -28
  586. package/primitives/progress.tsx +0 -27
  587. package/primitives/prompt-textarea.tsx +0 -72
  588. package/primitives/qr-code.tsx +0 -112
  589. package/primitives/radio-group.tsx +0 -42
  590. package/primitives/resizable.tsx +0 -47
  591. package/primitives/scroll-area.tsx +0 -57
  592. package/primitives/search-input.tsx +0 -66
  593. package/primitives/select.tsx +0 -122
  594. package/primitives/separator.tsx +0 -26
  595. package/primitives/sheet.tsx +0 -139
  596. package/primitives/skeleton.tsx +0 -18
  597. package/primitives/slider.tsx +0 -63
  598. package/primitives/sonner.tsx +0 -35
  599. package/primitives/step-indicator.tsx +0 -69
  600. package/primitives/stepper.tsx +0 -272
  601. package/primitives/switch.tsx +0 -27
  602. package/primitives/table.tsx +0 -105
  603. package/primitives/tabs.tsx +0 -50
  604. package/primitives/text-area.tsx +0 -26
  605. package/primitives/text-link.tsx +0 -27
  606. package/primitives/textarea.tsx +0 -64
  607. package/primitives/textfield.tsx +0 -78
  608. package/primitives/toast.tsx +0 -30
  609. package/primitives/toggle-group.tsx +0 -63
  610. package/primitives/toggle.tsx +0 -44
  611. package/primitives/tooltip.tsx +0 -47
  612. package/primitives/video-player.tsx +0 -23
  613. package/src/button.ts +0 -1
  614. package/src/hooks/index.ts +0 -7
  615. package/src/hooks/use-click-away.ts +0 -31
  616. package/src/hooks/use-combined-refs.ts +0 -22
  617. package/src/hooks/use-copy-clipboard.ts +0 -30
  618. package/src/hooks/use-debounce.ts +0 -17
  619. package/src/hooks/use-fill-ids.ts +0 -25
  620. package/src/hooks/use-map.ts +0 -26
  621. package/src/hooks/use-measure.ts +0 -42
  622. package/src/hooks/use-reverse-video-playback.ts +0 -43
  623. package/src/hooks/use-scroll-restoration.ts +0 -50
  624. package/src/index-lean.ts +0 -87
  625. package/src/index.ts +0 -54
  626. package/src/mcp/README.md +0 -141
  627. package/src/mcp/enhanced-server.ts +0 -1208
  628. package/src/mcp/index.ts +0 -518
  629. package/src/mcp/package.json +0 -10
  630. package/src/registry/api.ts +0 -164
  631. package/src/registry/index.ts +0 -60
  632. package/src/registry/package.json +0 -10
  633. package/src/utils.ts +0 -19
  634. package/style/drawer.css +0 -163
  635. package/style/globals.css +0 -13
  636. package/style/hanzo-common.css +0 -31
  637. package/style/hanzo-default-colors.css +0 -82
  638. package/style/theme-provider.tsx +0 -20
  639. package/tailwind/colors.tailwind.js +0 -53
  640. package/tailwind/fontFamily.tailwind.ts +0 -7
  641. package/tailwind/fontSize.tailwind.ts +0 -13
  642. package/tailwind/index.ts +0 -7
  643. package/tailwind/safelist.tailwind.js +0 -26
  644. package/tailwind/screens.tailwind.js +0 -8
  645. package/tailwind/spacing.tailwind.js +0 -65
  646. package/tailwind/tailwind.config.hanzo-preset.d.ts +0 -5
  647. package/tailwind/tailwind.config.hanzo-preset.js +0 -915
  648. package/tailwind/tw-font-desc.ts +0 -15
  649. package/tailwind/typo-plugin/get-plugin-styles.js +0 -679
  650. package/tailwind/typo-plugin/index.d.ts +0 -9
  651. package/tailwind/typo-plugin/index.js +0 -141
  652. package/tailwind/typo-plugin/utils.js +0 -60
  653. package/tailwind/typography-test.mdx +0 -35
  654. package/tailwind/z-index.tailwind.js +0 -71
  655. package/types/animation-def.ts +0 -3
  656. package/types/breakpoints.ts +0 -11
  657. package/types/bullet-item.ts +0 -10
  658. package/types/button-def.ts +0 -39
  659. package/types/dimensions.ts +0 -8
  660. package/types/grid-def.ts +0 -56
  661. package/types/image-def.ts +0 -32
  662. package/types/index.ts +0 -30
  663. package/types/link-def.ts +0 -56
  664. package/types/media-stack-def.ts +0 -31
  665. package/types/t-shirt-size.ts +0 -5
  666. package/types/tshirt-dimensions.ts +0 -20
  667. package/types/video-def.ts +0 -25
  668. package/util/blob.ts +0 -33
  669. package/util/copy-to-clipboard.ts +0 -17
  670. package/util/create-shadow-root.ts +0 -22
  671. package/util/date.ts +0 -84
  672. package/util/debounce.ts +0 -11
  673. package/util/file.ts +0 -15
  674. package/util/format-and-abbreviate-as-currency.ts +0 -125
  675. package/util/format-text.ts +0 -34
  676. package/util/format-to-max-char.ts +0 -68
  677. package/util/index-client.ts +0 -3
  678. package/util/index.ts +0 -112
  679. package/util/number-abbreviate.ts +0 -49
  680. package/util/specifier.ts +0 -43
  681. package/util/spread-to-transform.ts +0 -25
  682. package/util/step-animation.ts +0 -90
  683. package/util/timing.ts +0 -3
  684. package/util/toasts.tsx +0 -17
  685. package/util/two-way-map.ts +0 -19
@@ -1,171 +0,0 @@
1
- import React from 'react'
2
-
3
- import type { LinkDef, TShirtDimensions } from '../../../types'
4
-
5
- import {
6
- ApplyTypography,
7
- Card,
8
- CardContent,
9
- CardDescription,
10
- CardFooter,
11
- CardHeader,
12
- CardTitle,
13
- type TypographySize
14
- } from '../../../primitives/index-common'
15
-
16
- import type { CardBlock, VideoBlock } from '../../def'
17
-
18
- import ImageBlockComponent from '../image-block'
19
- import VideoBlockComponent from '../video-block'
20
- import CTABlockComponent from '../cta-block'
21
- import type BlockComponentProps from '../block-component-props'
22
- import { cn } from '../../../util'
23
-
24
- import { getTypographySize } from './util'
25
- import LinkOutButton from './link-out-button'
26
-
27
- const CardBlockComponent: React.FC<BlockComponentProps & {
28
- contentClassName?: string
29
- }> = ({
30
- block,
31
- className='',
32
- contentClassName=''
33
- }) => {
34
-
35
- if (block.blockType !== 'card') {
36
- return <>card block required</>
37
- }
38
-
39
- const card = block as CardBlock
40
- const has = (s: string) => (card.specifiers?.includes(s))
41
-
42
- const ghost = has('ghost') // no outer padding, no borders, larger title, all left-aligned bg is same (default)
43
-
44
- const contentclx = (has('content-left') ? 'items-start ' : ' items-center ') + (has('content-top') ? '!justify-start' : '') + contentClassName
45
- const disabledBorder = (has('appear-disabled' ) ? ' border-muted-4' : ' border-muted-3')
46
- const outerBorder = ((has('no-outer-border') || ghost) ? ' border-0' : '')
47
- const innerBorder = (ghost ? ' border-0' : '')
48
- const paddingclx = ghost ? ' px-0 py-0' : ' px-6 py-3'
49
- const mainGap = ghost ? ' gap-2' : ''
50
- const disabledText = (has('appear-disabled') ? ' text-muted-2' : '')
51
- const disabledTypoText = (has('appear-disabled') ? ' typography-p:text-muted-2' : '')
52
- const bgclx = (has('bg-card') ? ' bg-level-1' : '')
53
- const titleclx = (has('heading-style-title') ? ' font-heading text-base leading-tight' : '') +
54
- (ghost ? ' text-left md:text-xl' : '')
55
-
56
- const typoSize: TypographySize = (card.specifiers) ? getTypographySize(card.specifiers) : 'responsive'
57
- const typoclx = (typoSize === 'sm') ? 'typography-sm typography-p:text-sm ' : (typoSize === 'lg') ? 'typography-lg ' : ''
58
-
59
- const contentBefore = has('content-before')
60
- const iconInline = has('icon-inline')
61
- const contentOnHover = has('reveal-content-on-hover')
62
- //const smallIconDim = (contentOnHover && card.specifiers) ? getSmallIconDim(card.specifiers) : undefined
63
-
64
- const Header: React.FC<{
65
- inContent?: boolean
66
- className?: string
67
- }> = ({
68
- inContent=false,
69
- className=''
70
- }) => (
71
- (card.title || card.byline || card.icon) ? (
72
- <CardHeader className={'not-typography' + ' text-accent' + disabledText + paddingclx + innerBorder + className}>
73
- <div className={(iconInline || inContent) ? 'flex flex-row justify-start items-end my-3' : ''}>
74
- {(card.icon && !card.iconAfter ) && (<div className={iconInline ? 'mr-1' : 'mb-2'}>{card.icon}</div>)}
75
- {card.title && (
76
- <CardTitle className={'text-center text-lg font-medium' + titleclx + (iconInline ? ' md:text-xl/none' : '') }>
77
- {card.title}
78
- </CardTitle>
79
- )}
80
- {(card.icon && card.iconAfter) && (<div className={iconInline ? 'ml-1' : 'my-1'}>{card.icon}</div>)}
81
- </div>
82
- {card.byline && (<CardDescription>{card.byline}</CardDescription>)}
83
- </CardHeader>
84
- ) : null
85
- )
86
-
87
- const MediaAndContent: React.FC<{
88
- className?: string
89
- }> = ({
90
- className=''
91
- }) => (has('media-left') ? (
92
- // media left layout
93
- <CardContent className={'flex flex-row justify-start items-stretch p-0 grow ' + disabledBorder + bgclx + contentclx + className}>
94
- {card.media && (
95
- <div className={'box-content grow-0 not-typography' + paddingclx} style={{
96
- // If this layout has been specified, assume media is video, and that the 'sm' dim exists.
97
- width: (card.media as VideoBlock).dim.sm!.w
98
- }}>
99
- <VideoBlockComponent
100
- block={card.media}
101
- usePoster={has('video-use-poster')}
102
- size='sm'
103
- className={has('appear-disabled') ? 'opacity-[0.6]' : ''}
104
- />
105
- </div>
106
- )}
107
- {card.content && (
108
- <ApplyTypography className={'grow border-l flex flex-col justify-center ' + disabledTypoText + paddingclx + disabledBorder + contentclx} size={typoSize}>
109
- {(typeof card.content === 'string') ? (<p>{card.content}</p>) : card.content}
110
- </ApplyTypography>
111
- )}
112
- </CardContent>
113
- ) : ( // default layout
114
- <CardContent className={
115
- 'grow typography flex flex-col justify-center ' +
116
- typoclx + disabledTypoText + bgclx + paddingclx + contentclx + (has('full-width') ? ' p-0 ' : ' ') +
117
- className
118
- }>
119
- {contentOnHover && (<Header inContent/>)}
120
- {card.content && contentBefore && (
121
- (typeof card.content === 'string') ? (<p>{card.content}</p>) : card.content
122
- )}
123
- {card.media && (card.media.blockType === 'image' ? (
124
- <ImageBlockComponent block={card.media} />
125
- ) : (
126
- <VideoBlockComponent block={card.media} />
127
- ))}
128
- {card.content && !contentBefore && (
129
- (typeof card.content === 'string') ? (<p>{card.content}</p>) : card.content
130
- )}
131
- </CardContent>
132
- ))
133
-
134
- const Footer: React.FC = () => ( !card.cta ? null : (has('links-w-arrow') ? (
135
- // links w arrow
136
- <CardFooter className={
137
- 'typography typography-a:text-muted-2 typography-a:hover:text-muted-1 typography-a:text-xs typography-a:no-underline typography-a:hover:underline ' +
138
- 'flex flex-col justify-start items-stretch ' + paddingclx
139
- }>
140
- <CTABlockComponent
141
- block={card.cta}
142
- renderLink={(def: LinkDef, key: any) => (<LinkOutButton def={def} key={key} />)}
143
- />
144
- </CardFooter>
145
- ) : ( // default
146
- <CardFooter className={'grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center ' + paddingclx} >
147
- <CTABlockComponent block={card.cta} />
148
- </CardFooter>
149
- )))
150
-
151
- return (
152
- <Card className={cn(
153
- 'flex flex-col self-stretch ' +
154
- (contentOnHover ? 'group relative' : '') +
155
- disabledBorder +
156
- outerBorder +
157
- bgclx +
158
- mainGap,
159
- className
160
- )}>
161
- <Header className={(contentOnHover ? ' absolute top-[0px] left-[0px] w-full hidden ' : '')}/>
162
- <MediaAndContent className={(contentOnHover ?
163
- ' bg-gradient-to-t from-secondary to-65%' +
164
- ' items-start justify-start rounded-lg p-4' +
165
- ' transition-opacity duration-500 ease-out opacity-100 ' : '')}/>
166
- <Footer />
167
- </Card>
168
- )
169
- }
170
-
171
- export default CardBlockComponent
@@ -1,20 +0,0 @@
1
- import React from 'react'
2
-
3
- import type { LinkDef } from '../../../types'
4
- import { LinkElement, Icons } from '../../../primitives/index-next'
5
-
6
- const ArrowLinkElement: React.FC<{
7
- def: LinkDef,
8
- }> = ({
9
- def
10
- }) => (
11
- <LinkElement
12
- def={def}
13
- className='justify-between'
14
- variant='link'
15
- icon={<Icons.linkOut className='w-[18px] h-[18px]' />}
16
- iconAfter
17
- />
18
- )
19
-
20
- export default ArrowLinkElement
@@ -1,28 +0,0 @@
1
- import type { Dimensions } from '../../../types'
2
- import type {TypographySize } from '../../../primitives/index-common'
3
- import {
4
- getSpecifierData,
5
- getPrimaryStartingWith,
6
- getDim,
7
- } from '../../../util/specifier'
8
-
9
- export const getTypographySize = (s: string): TypographySize => (
10
- getSpecifierData<TypographySize>(
11
- s,
12
- (s: string) => (getPrimaryStartingWith(s, 'typography')),
13
- (s: string): TypographySize | undefined => {
14
- const subTokenArray = s.split('-')
15
- return subTokenArray[subTokenArray.length - 1] as TypographySize
16
- },
17
- 'responsive'
18
- ) as TypographySize
19
- )
20
-
21
- export const getSmallIconDim = (s: string): Dimensions | undefined => (
22
- getSpecifierData<Dimensions>(
23
- s,
24
- (s: string) => (getPrimaryStartingWith(s, 'small-icon')),
25
- getDim,
26
- )
27
- )
28
-
@@ -1,127 +0,0 @@
1
- import React from 'react'
2
-
3
- import {
4
- Card,
5
- CardContent,
6
- CardFooter,
7
- CardHeader,
8
- } from '../../../primitives/index-common'
9
-
10
- import { cn, containsToken } from '../../../util'
11
-
12
- import {
13
- getSpecifierData,
14
- getPrimaryStartingWith,
15
- getDim,
16
- } from '../../../util/specifier'
17
-
18
- import type CarteBlancheBlock from '../../def/carte-blanche-block'
19
-
20
- import CTABlockComponent from '../cta-block'
21
- import Content from '../content'
22
- import type BlockComponentProps from '../block-component-props'
23
- import { EnhHeadingBlockComponent } from '..'
24
- import VariantContentLeft from './variant-content-left'
25
-
26
- type CardSection = 'entire' | 'header' | 'content' | 'footer'
27
-
28
- const _getClx = (specifier: string, section: CardSection): string => {
29
- let result = ''
30
- if (specifier === 'big-padding') {
31
- switch (section) {
32
- // defaults: p-4 lg:p-6 xl:p-8
33
- case 'header': {
34
- result = 'md:p-8 lg:p-12 xl:p-16'
35
- } break
36
- }
37
- }
38
- if (specifier === 'big-padding-content') {
39
- switch (section) {
40
- case 'content': {
41
- result = 'md:p-8 lg:p-12 xl:p-16'
42
- } break
43
- }
44
- }
45
- else if (specifier === 'no-inner-borders') {
46
- switch (section) {
47
- case 'header': {
48
- result = 'border-none'
49
- } break
50
- case 'footer': {
51
- result = 'border-t-0'
52
- } break
53
- }
54
- }
55
-
56
- return result
57
- }
58
-
59
- const CarteBlancheBlockComponent: React.FC<
60
- BlockComponentProps
61
- > = ({
62
- block,
63
- className='',
64
- agent,
65
- }) => {
66
-
67
- if (block.blockType !== 'carte-blanche') {
68
- return <>carte blanche block required</>
69
- }
70
-
71
- const b = block as CarteBlancheBlock
72
-
73
- const specified = (s: string): boolean => (containsToken(b.specifiers, s))
74
- const getClx = (specifier: string, section: CardSection): string => (
75
- (specified(specifier)) ? _getClx(specifier, section) : ''
76
- )
77
-
78
- //const bigPadding = specified('big-padding')
79
-
80
- const headingclx = [
81
- getClx('big-padding', 'header'),
82
- getClx('no-inner-borders', 'header'),
83
- ].join(' ')
84
-
85
- const contentclx = [
86
- getClx('big-padding-content', 'content'),
87
- ].join(' ')
88
-
89
- const footerclx = [
90
- getClx('no-inner-borders', 'footer'),
91
- ].join(' ')
92
-
93
- const noOuterBorders = specified('no-outer-borders')
94
- const contentLeft = specified('variant-content-left')
95
- const mobileContentLeft = specified('variant-mobile-content-left')
96
-
97
- return (
98
- <Card className={cn('flex flex-col', className, noOuterBorders ? 'border-none' : '')} >
99
- {contentLeft || (mobileContentLeft && agent === 'phone') ? (
100
- <VariantContentLeft block={b} agent={agent} className={className} headingclx={headingclx} contentclx={contentclx} footerclx={footerclx}/>
101
- ) : (<>
102
- {(b.heading || b.topContent) && (
103
- <CardHeader className={cn('typography-img:m-0', headingclx)} >
104
- {b.topContent && (
105
- <Content blocks={b.topContent} agent={agent} className=''/>
106
- )}
107
- {b.heading && (
108
- <EnhHeadingBlockComponent block={b.heading} className='text-accent' agent={agent}/>
109
- )}
110
- </CardHeader>
111
- )}
112
- {b.content && (
113
- <CardContent className={cn('typography flex flex-col justify-center', contentclx, className)}>
114
- <Content blocks={b.content} agent={agent}/>
115
- </CardContent>
116
- )}
117
- {b.cta && (
118
- <CardFooter className={cn('grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center', footerclx)} >
119
- <CTABlockComponent block={b.cta} agent={agent}/>
120
- </CardFooter>
121
- )}
122
- </>)}
123
- </Card>
124
- )
125
- }
126
-
127
- export default CarteBlancheBlockComponent
@@ -1,49 +0,0 @@
1
- import { EnhHeadingBlockComponent, type CarteBlancheBlock, CTABlockComponent } from '../..'
2
- import {
3
- CardContent,
4
- CardFooter,
5
- CardHeader,
6
- } from '../../../primitives/index-common'
7
- import { cn } from '../../../util'
8
- import Content from '../content'
9
-
10
- const VariantContentLeft: React.FC<{
11
- block: CarteBlancheBlock,
12
- agent?: string
13
- className?: string
14
- headingclx?: string
15
- contentclx?: string
16
- footerclx?: string
17
- }> = ({
18
- block,
19
- agent,
20
- className,
21
- headingclx,
22
- contentclx,
23
- footerclx,
24
- }) => {
25
- return (<>
26
- <div className='flex gap-2'>
27
- {block.topContent && <Content blocks={block.topContent} agent={agent} className='self-center ml-6 mt-6'/>}
28
- <div className='flex flex-col'>
29
- {block.heading && (
30
- <CardHeader className={cn('typography-img:m-0', headingclx)} >
31
- <EnhHeadingBlockComponent block={block.heading} className='text-accent' agent={agent}/>
32
- </CardHeader>
33
- )}
34
- {block.content && (
35
- <CardContent className={cn('typography flex flex-col justify-start', contentclx, className)}>
36
- <Content blocks={block.content} agent={agent}/>
37
- </CardContent>
38
- )}
39
- </div>
40
- </div>
41
- {block.cta && (
42
- <CardFooter className={cn('grid grid-cols-1 gap-2 md:flex md:flex-row md:justify-center mx-auto', footerclx)}>
43
- <CTABlockComponent block={block.cta} agent={agent}/>
44
- </CardFooter>
45
- )}
46
- </>)
47
- }
48
-
49
- export default VariantContentLeft
@@ -1,70 +0,0 @@
1
- import React, { ComponentType, type ReactNode} from 'react'
2
-
3
- import type * as B from '../def'
4
-
5
- import AccordianBlockComponent from './accordian-block'
6
- import BulletCardsBlockComponent from './bullet-cards-block'
7
- import CTABlockComponent from './cta-block'
8
- import CardBlockComponent from './card-block'
9
- import CarteBlancheBlockComponent from './carte-blanche-block'
10
- import EnhHeadingBlockComponent from './enh-heading-block'
11
- import HeadingBlockComponent from './heading-block'
12
- import GroupBlockComponent from './group-block'
13
- import GridBlockComponent from './grid-block'
14
- import ImageBlockComponent from './image-block'
15
- import SpaceBlockComponent from './space-block'
16
- import VideoBlockComponent from './video-block'
17
-
18
- import type BlockComponentProps from './block-component-props'
19
-
20
- const map = new Map<string, ComponentType<BlockComponentProps>>()
21
- map.set('accordian', AccordianBlockComponent)
22
- map.set('bullet-cards', BulletCardsBlockComponent)
23
- map.set('card', CardBlockComponent)
24
- map.set('carte-blanche', CarteBlancheBlockComponent)
25
- map.set('cta', CTABlockComponent)
26
- map.set('heading', HeadingBlockComponent)
27
- map.set('enh-heading', EnhHeadingBlockComponent as ComponentType<BlockComponentProps>)
28
- map.set('space', SpaceBlockComponent)
29
- map.set('image', ImageBlockComponent)
30
- map.set('video', VideoBlockComponent)
31
- map.set('group', GroupBlockComponent)
32
- map.set('grid', GridBlockComponent)
33
-
34
- const registerBlockType = (key: string, type: ComponentType<BlockComponentProps>): void => {
35
- map.set(key, type)
36
- }
37
-
38
- const renderBlock = (block: B.Block, className: string, agent?: string, keyStr?: string): ReactNode => {
39
- if (block.blockType === 'element') {
40
- return (block as B.ElementBlock).element
41
- }
42
- const CompType = map.get(block.blockType)
43
- if (!CompType) return null
44
- return <CompType block={block} className={className} agent={agent} key={keyStr ?? ''} />
45
- }
46
-
47
- const ContentComponent: React.FC<{
48
- blocks: B.Block | B.Block[] | undefined
49
- className?: string
50
- agent?: string
51
- }> = ({
52
- blocks,
53
- className='',
54
- agent
55
- }) => {
56
- if (!blocks) return null
57
- if (Array.isArray(blocks)) {
58
- return (
59
- blocks.map((block, index) => (
60
- renderBlock(block, className, agent, `content-block-${block.blockType}-${index}`)
61
- ))
62
- )
63
- }
64
- return renderBlock(blocks, className, agent)
65
- }
66
-
67
- export {
68
- ContentComponent as default,
69
- registerBlockType
70
- }
@@ -1,115 +0,0 @@
1
- import React from 'react'
2
-
3
- import type { LinkDef, ButtonDef} from '../../types'
4
- import { buttonVariants, ActionButton, LinkElement } from '../../primitives/index-next'
5
- import type { CTABlock } from '../def'
6
- import { cn, containsToken, type VariantProps } from '../../util'
7
-
8
- import type BlockComponentProps from './block-component-props'
9
-
10
- const CtaBlockComponent: React.FC<BlockComponentProps & {
11
- itemClasses?: string
12
- itemSize?: VariantProps<typeof buttonVariants>['size'],
13
- renderLink?: (def: LinkDef, key: any) => JSX.Element
14
- renderButton?: (def: ButtonDef, key: any) => JSX.Element
15
- }> = ({
16
- block,
17
- className='', // assigned to each item
18
- itemClasses='',
19
- itemSize, // do not provide default. this is an override to the def
20
- renderLink,
21
- renderButton,
22
- agent
23
- }) => {
24
-
25
- if (block.blockType !== 'cta') {
26
- return <>cta block required</>
27
- }
28
-
29
- const { elements, specifiers } = block as CTABlock
30
- let wrapperClasses = ''
31
- let itemclx = ''
32
- if (containsToken(specifiers, 'fill')) {
33
- wrapperClasses += 'w-full '
34
- itemclx += 'grow shrink !min-w-0'
35
- }
36
- else if (containsToken(specifiers, 'left')) {
37
- wrapperClasses += 'md:justify-start '
38
- }
39
- else if (containsToken(specifiers, 'right')) {
40
- wrapperClasses += 'md:justify-end '
41
- }
42
- else {
43
- wrapperClasses += 'md:justify-center '
44
- }
45
-
46
- const mobile2Columns = containsToken(specifiers, 'mobile-2-columns')
47
- // normally 'default' buttons have a min width only at > lg.
48
- // generally if more than one we don't want this and override it,
49
- // but this specifier asks to observe the default behavior.
50
- const fillEvenly = !containsToken(specifiers, 'desktop-dont-fill')
51
- const mobileCenterFirstIfOdd = containsToken(specifiers, 'mobile-center-first-if-odd')
52
- const mobileOddFullWidth = containsToken(specifiers, 'mobile-odd-full-width')
53
-
54
- let layoutclx: string | undefined = undefined
55
- if (elements.length > 1) {
56
- let resetMinWidth = false
57
- if (mobile2Columns) {
58
- layoutclx = 'grid grid-cols-2 gap-2 self-stretch '
59
- resetMinWidth = true
60
- }
61
- if (fillEvenly) {
62
- layoutclx = (layoutclx ?? 'grid grid-cols-2 gap-2 self-stretch')
63
- resetMinWidth = true
64
- }
65
- else {
66
- layoutclx = layoutclx ? (layoutclx + 'md:flex md:flex-row md:justify-center ') : 'flex flex-row justify-center '
67
- }
68
- itemclx += resetMinWidth ? '!min-w-0 ' : ''
69
- }
70
- layoutclx = layoutclx ?? 'flex flex-col items-stretch gap-2 self-stretch md:flex-row sm:justify-center '
71
-
72
- const getMobileColSpanClx = (index: number, total: number) => {
73
- const indexToCenter = (total % 2 === 0) ? -1 : (mobileCenterFirstIfOdd) ? 0 : total - 1
74
- const widthclx = mobileOddFullWidth ? 'w-full ' : 'w-3/5 mx-auto '
75
- return (
76
- (agent === 'phone' && mobile2Columns && (index === indexToCenter)) ? ('col-span-2 ' + widthclx) : ''
77
- )
78
- }
79
-
80
- return (
81
- <div className={cn(
82
- layoutclx,
83
- wrapperClasses,
84
- className
85
- )}>
86
- {elements.map((element, index) => {
87
- const twoColClx = getMobileColSpanClx(index, elements.length)
88
- if ((element as any).title) {
89
- const def = element as LinkDef
90
- return renderLink ? renderLink(def, index) : (
91
- <LinkElement
92
- def={def}
93
- key={index}
94
- size={itemSize}
95
- className={cn(itemclx, itemClasses, twoColClx)}
96
- />
97
- )
98
- }
99
- else {
100
- const def = element as ButtonDef
101
- return renderButton ? renderButton(def, index) : (
102
- <ActionButton
103
- def={def}
104
- key={index}
105
- size={itemSize}
106
- className={cn(itemclx, itemClasses, twoColClx)}
107
- />
108
- )
109
- }
110
- })}
111
- </div>
112
- )
113
- }
114
-
115
- export default CtaBlockComponent