@hanzo/ui 4.9.0 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +192 -185
- package/assets/ai-icons.tsx +207 -0
- package/assets/crypto.tsx +33 -0
- package/assets/file-type-icon.tsx +66 -0
- package/assets/file.tsx +45 -0
- package/assets/general.tsx +2318 -0
- package/assets/hanzo-logo.svg +9 -0
- package/assets/hanzo-logo.tsx +17 -0
- package/assets/index.ts +122 -0
- package/assets/index.tsx +4 -0
- package/assets/llm-provider.tsx +1094 -0
- package/bin/cli.js +100 -0
- package/bin/create-registry.js +108 -0
- package/bin/mcp.js +403 -0
- package/bin/npx-registry-mcp.js +15 -0
- package/bin/registry-mcp-wrapper.sh +19 -0
- package/bin/registry-mcp.js +100 -0
- package/bin/start-mcp-server.sh +22 -0
- package/bin/test-mcp.sh +52 -0
- package/bin/update-registry.js +196 -0
- package/blocks/auth/index.ts +6 -0
- package/blocks/auth/login-2fa.tsx +165 -0
- package/blocks/auth/login-basic.tsx +94 -0
- package/blocks/auth/login-social.tsx +148 -0
- package/blocks/auth/magic-link.tsx +129 -0
- package/blocks/auth/password-reset.tsx +97 -0
- package/blocks/auth/signup.tsx +157 -0
- package/blocks/components/accordian-block.tsx +48 -0
- package/blocks/components/block-component-props.ts +11 -0
- package/blocks/components/bullet-cards-block.tsx +46 -0
- package/blocks/components/card-block/index.tsx +171 -0
- package/blocks/components/card-block/link-out-button.tsx +20 -0
- package/blocks/components/card-block/util.ts +28 -0
- package/blocks/components/carte-blanche-block/index.tsx +127 -0
- package/blocks/components/carte-blanche-block/variant-content-left.tsx +49 -0
- package/blocks/components/content.tsx +70 -0
- package/blocks/components/cta-block.tsx +115 -0
- package/blocks/components/enh-heading-block.tsx +204 -0
- package/blocks/components/grid-block/grid-block-mutator.ts +12 -0
- package/blocks/components/grid-block/index.tsx +83 -0
- package/blocks/components/grid-block/mutator-registry.ts +10 -0
- package/blocks/components/grid-block/table-borders.mutator.ts +47 -0
- package/blocks/components/group-block.tsx +83 -0
- package/blocks/components/heading-block.tsx +88 -0
- package/blocks/components/image-block.tsx +111 -0
- package/blocks/components/index.ts +30 -0
- package/blocks/components/screenful-block/content.tsx +123 -0
- package/blocks/components/screenful-block/index.tsx +107 -0
- package/blocks/components/screenful-block/poster-background.tsx +34 -0
- package/blocks/components/screenful-block/video-background.tsx +45 -0
- package/blocks/components/space-block.tsx +66 -0
- package/blocks/components/video-block.tsx +138 -0
- package/blocks/data-display/activity-feed.tsx +242 -0
- package/blocks/data-display/data-table.tsx +235 -0
- package/blocks/data-display/stats-grid.tsx +194 -0
- package/blocks/def/accordian-block.ts +14 -0
- package/blocks/def/block.ts +7 -0
- package/blocks/def/bullet-cards-block.ts +22 -0
- package/blocks/def/card-block.ts +22 -0
- package/blocks/def/carte-blanche-block.ts +21 -0
- package/blocks/def/cta-block.ts +19 -0
- package/blocks/def/element-block.ts +11 -0
- package/blocks/def/enh-heading-block.ts +44 -0
- package/blocks/def/grid-block.ts +16 -0
- package/blocks/def/group-block.ts +11 -0
- package/blocks/def/heading-block.ts +15 -0
- package/blocks/def/image-block.ts +31 -0
- package/blocks/def/index.ts +35 -0
- package/blocks/def/screenful-block.ts +54 -0
- package/blocks/def/space-block.ts +64 -0
- package/blocks/def/video-block.ts +9 -0
- package/blocks/ecommerce/checkout.tsx +242 -0
- package/blocks/ecommerce/index.ts +7 -0
- package/blocks/ecommerce/product-detail.tsx +257 -0
- package/blocks/ecommerce/product-grid.tsx +148 -0
- package/blocks/ecommerce/shopping-cart.tsx +181 -0
- package/blocks/index.ts +2 -0
- package/blocks/marketing/cta-section.tsx +207 -0
- package/blocks/marketing/faq.tsx +159 -0
- package/blocks/marketing/features-grid.tsx +156 -0
- package/blocks/marketing/hero-section.tsx +192 -0
- package/blocks/marketing/index.ts +6 -0
- package/blocks/marketing/pricing-table.tsx +121 -0
- package/blocks/marketing/testimonials.tsx +196 -0
- package/components/index.ts +9 -0
- package/dist/index.js +9070 -1089
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +8695 -45
- package/dist/index.mjs.map +1 -1
- package/dist/tailwind.js +2025 -0
- package/dist/tailwind.js.map +1 -0
- package/dist/tailwind.mjs +2013 -0
- package/dist/tailwind.mjs.map +1 -0
- package/dist/types.js +59 -0
- package/dist/types.js.map +1 -0
- package/dist/types.mjs +53 -0
- package/dist/types.mjs.map +1 -0
- package/dist/utils.js +30 -0
- package/dist/utils.js.map +1 -0
- package/dist/utils.mjs +26 -0
- package/dist/utils.mjs.map +1 -0
- package/frameworks/core/index.ts +6 -0
- package/frameworks/core/utils/index.ts +64 -0
- package/frameworks/react/components/button.tsx +26 -0
- package/frameworks/react/components/index.ts +5 -0
- package/frameworks/react/hooks/index.ts +5 -0
- package/frameworks/react/index.ts +9 -0
- package/frameworks/react/package.json +8 -0
- package/frameworks/react/utils/index.ts +2 -0
- package/frameworks/react-native/index.ts +9 -0
- package/frameworks/react-native/package.json +8 -0
- package/frameworks/registry.json +371 -0
- package/frameworks/setup.sh +69 -0
- package/frameworks/svelte/index.ts +9 -0
- package/frameworks/svelte/package.json +8 -0
- package/frameworks/tracker.json +1854 -0
- package/frameworks/vue/index.ts +9 -0
- package/frameworks/vue/package.json +8 -0
- package/helpers/file.ts +33 -0
- package/helpers/memoization.ts +40 -0
- package/package.json +272 -153
- package/primitives/accordion.tsx +74 -0
- package/primitives/action-button.tsx +42 -0
- package/primitives/alert-dialog.tsx +185 -0
- package/primitives/alert.tsx +74 -0
- package/primitives/apply-typography.tsx +55 -0
- package/primitives/aspect-ratio.tsx +5 -0
- package/primitives/avatar.tsx +57 -0
- package/primitives/background-beams.tsx +142 -0
- package/primitives/badge.tsx +45 -0
- package/primitives/breadcrumb.tsx +130 -0
- package/primitives/breakpoint-indicator.tsx +19 -0
- package/primitives/button.tsx +72 -0
- package/primitives/calendar.tsx +72 -0
- package/primitives/card.tsx +97 -0
- package/primitives/carousel.tsx +238 -0
- package/primitives/chat/chat-input-area.tsx +88 -0
- package/primitives/chat/chat-input.tsx +71 -0
- package/primitives/chat/files-preview.tsx +331 -0
- package/primitives/chat/index.ts +6 -0
- package/primitives/chat/json-form.tsx +8 -0
- package/primitives/chat/message-list.tsx +308 -0
- package/primitives/chat/message.tsx +569 -0
- package/primitives/chat/sqlite-preview.tsx +215 -0
- package/primitives/checkbox.tsx +32 -0
- package/primitives/collapsible.tsx +9 -0
- package/primitives/combobox.tsx +239 -0
- package/primitives/command.tsx +151 -0
- package/primitives/context-menu.tsx +206 -0
- package/primitives/copy-to-clipboard-icon.tsx +60 -0
- package/primitives/dialog-video-controller.tsx +38 -0
- package/primitives/dialog.tsx +128 -0
- package/primitives/dot-pattern.tsx +57 -0
- package/primitives/dots-loader.tsx +13 -0
- package/primitives/drawer.tsx +113 -0
- package/primitives/dropdown-menu.tsx +199 -0
- package/primitives/error-message.tsx +19 -0
- package/primitives/file-uploader.tsx +203 -0
- package/primitives/form.tsx +185 -0
- package/primitives/hover-card.tsx +28 -0
- package/primitives/icons/github.tsx +14 -0
- package/primitives/icons/index.ts +18 -0
- package/primitives/icons/youtube-logo.tsx +59 -0
- package/primitives/index-client.ts +4 -0
- package/primitives/index-common.ts +304 -0
- package/primitives/index-next.ts +4 -0
- package/primitives/input-otp.tsx +65 -0
- package/primitives/input.tsx +128 -0
- package/primitives/label.tsx +21 -0
- package/primitives/list-adaptor.ts +12 -0
- package/primitives/list-box.tsx +74 -0
- package/primitives/loading-spinner.tsx +33 -0
- package/primitives/markdown-preview.tsx +612 -0
- package/primitives/mermaid.tsx +191 -0
- package/primitives/navigation-menu.tsx +147 -0
- package/primitives/next/image.tsx +91 -0
- package/primitives/next/index.ts +7 -0
- package/primitives/next/inline-icon.tsx +36 -0
- package/primitives/next/link-element.tsx +109 -0
- package/primitives/next/mdx-link.tsx +22 -0
- package/primitives/next/media-stack.tsx +52 -0
- package/primitives/next/nav-items.tsx +45 -0
- package/primitives/next/youtube-embed.tsx +83 -0
- package/primitives/pagination.tsx +117 -0
- package/primitives/popover.tsx +34 -0
- package/primitives/pretty-json-print.tsx +28 -0
- package/primitives/progress.tsx +27 -0
- package/primitives/prompt-textarea.tsx +72 -0
- package/primitives/qr-code.tsx +112 -0
- package/primitives/radio-group.tsx +42 -0
- package/primitives/resizable.tsx +47 -0
- package/primitives/scroll-area.tsx +57 -0
- package/primitives/search-input.tsx +66 -0
- package/primitives/select.tsx +122 -0
- package/primitives/separator.tsx +26 -0
- package/primitives/sheet.tsx +139 -0
- package/primitives/skeleton.tsx +18 -0
- package/primitives/slider.tsx +63 -0
- package/primitives/sonner.tsx +35 -0
- package/primitives/step-indicator.tsx +69 -0
- package/primitives/stepper.tsx +272 -0
- package/primitives/switch.tsx +27 -0
- package/primitives/table.tsx +105 -0
- package/primitives/tabs.tsx +50 -0
- package/primitives/text-area.tsx +26 -0
- package/primitives/text-link.tsx +27 -0
- package/primitives/textarea.tsx +64 -0
- package/primitives/textfield.tsx +78 -0
- package/primitives/toast.tsx +30 -0
- package/primitives/toggle-group.tsx +63 -0
- package/primitives/toggle.tsx +44 -0
- package/primitives/tooltip.tsx +47 -0
- package/primitives/video-player.tsx +23 -0
- package/src/button.ts +1 -0
- package/src/hooks/index.ts +7 -0
- package/src/hooks/use-click-away.ts +31 -0
- package/src/hooks/use-combined-refs.ts +22 -0
- package/src/hooks/use-copy-clipboard.ts +30 -0
- package/src/hooks/use-debounce.ts +17 -0
- package/src/hooks/use-fill-ids.ts +25 -0
- package/src/hooks/use-map.ts +26 -0
- package/src/hooks/use-measure.ts +42 -0
- package/src/hooks/use-reverse-video-playback.ts +43 -0
- package/src/hooks/use-scroll-restoration.ts +50 -0
- package/src/index-lean.ts +87 -0
- package/src/index.ts +54 -0
- package/src/mcp/README.md +141 -0
- package/src/mcp/enhanced-server.ts +1208 -0
- package/src/mcp/index.ts +518 -0
- package/src/mcp/package.json +10 -0
- package/src/registry/api.ts +164 -0
- package/src/registry/index.ts +60 -0
- package/src/registry/package.json +10 -0
- package/src/utils.ts +19 -0
- package/style/drawer.css +163 -0
- package/style/globals.css +13 -0
- package/style/hanzo-common.css +31 -0
- package/style/hanzo-default-colors.css +82 -0
- package/style/theme-provider.tsx +20 -0
- package/tailwind/colors.tailwind.js +53 -0
- package/tailwind/fontFamily.tailwind.ts +7 -0
- package/tailwind/fontSize.tailwind.ts +13 -0
- package/tailwind/index.ts +7 -0
- package/tailwind/safelist.tailwind.js +26 -0
- package/tailwind/screens.tailwind.js +8 -0
- package/tailwind/spacing.tailwind.js +65 -0
- package/tailwind/tailwind.config.hanzo-preset.d.ts +5 -0
- package/tailwind/tailwind.config.hanzo-preset.js +915 -0
- package/tailwind/tw-font-desc.ts +15 -0
- package/tailwind/typo-plugin/get-plugin-styles.js +679 -0
- package/tailwind/typo-plugin/index.d.ts +9 -0
- package/tailwind/typo-plugin/index.js +141 -0
- package/tailwind/typo-plugin/utils.js +60 -0
- package/tailwind/typography-test.mdx +35 -0
- package/tailwind/z-index.tailwind.js +71 -0
- package/types/animation-def.ts +3 -0
- package/types/breakpoints.ts +11 -0
- package/types/bullet-item.ts +10 -0
- package/types/button-def.ts +39 -0
- package/types/dimensions.ts +8 -0
- package/types/grid-def.ts +56 -0
- package/types/image-def.ts +32 -0
- package/types/index.ts +30 -0
- package/types/link-def.ts +56 -0
- package/types/media-stack-def.ts +31 -0
- package/types/t-shirt-size.ts +5 -0
- package/types/tshirt-dimensions.ts +20 -0
- package/types/video-def.ts +25 -0
- package/util/blob.ts +33 -0
- package/util/copy-to-clipboard.ts +17 -0
- package/util/create-shadow-root.ts +22 -0
- package/util/date.ts +84 -0
- package/util/debounce.ts +11 -0
- package/util/file.ts +15 -0
- package/util/format-and-abbreviate-as-currency.ts +125 -0
- package/util/format-text.ts +34 -0
- package/util/format-to-max-char.ts +68 -0
- package/util/index-client.ts +3 -0
- package/util/index.ts +112 -0
- package/util/number-abbreviate.ts +49 -0
- package/util/specifier.ts +43 -0
- package/util/spread-to-transform.ts +25 -0
- package/util/step-animation.ts +90 -0
- package/util/timing.ts +3 -0
- package/util/toasts.tsx +17 -0
- package/util/two-way-map.ts +19 -0
- package/CHANGELOG.md +0 -184
- package/LICENSE +0 -21
- package/dist/ai/index.js +0 -53
- package/dist/ai/index.js.map +0 -1
- package/dist/ai/index.mjs +0 -4
- package/dist/ai/index.mjs.map +0 -1
- package/dist/blocks/index.js +0 -983
- package/dist/blocks/index.js.map +0 -1
- package/dist/blocks/index.mjs +0 -945
- package/dist/blocks/index.mjs.map +0 -1
- package/dist/calendar/index.js +0 -14
- package/dist/calendar/index.js.map +0 -1
- package/dist/calendar/index.mjs +0 -5
- package/dist/calendar/index.mjs.map +0 -1
- package/dist/carousel/index.js +0 -220
- package/dist/carousel/index.js.map +0 -1
- package/dist/carousel/index.mjs +0 -191
- package/dist/carousel/index.mjs.map +0 -1
- package/dist/charts/index.js +0 -945
- package/dist/charts/index.js.map +0 -1
- package/dist/charts/index.mjs +0 -901
- package/dist/charts/index.mjs.map +0 -1
- package/dist/chunk-26T4V5QU.mjs +0 -111
- package/dist/chunk-26T4V5QU.mjs.map +0 -1
- package/dist/chunk-2A5KXDLJ.js +0 -22
- package/dist/chunk-2A5KXDLJ.js.map +0 -1
- package/dist/chunk-2CJ4HMF4.js +0 -79
- package/dist/chunk-2CJ4HMF4.js.map +0 -1
- package/dist/chunk-2OIQKC5E.js +0 -236
- package/dist/chunk-2OIQKC5E.js.map +0 -1
- package/dist/chunk-2X3KSYBN.js +0 -44
- package/dist/chunk-2X3KSYBN.js.map +0 -1
- package/dist/chunk-3PBQGYR7.mjs +0 -100
- package/dist/chunk-3PBQGYR7.mjs.map +0 -1
- package/dist/chunk-3POQQ6L7.js +0 -62
- package/dist/chunk-3POQQ6L7.js.map +0 -1
- package/dist/chunk-4B47GITH.mjs +0 -28
- package/dist/chunk-4B47GITH.mjs.map +0 -1
- package/dist/chunk-4BC2OH6B.js +0 -129
- package/dist/chunk-4BC2OH6B.js.map +0 -1
- package/dist/chunk-5AQSGH4R.js +0 -130
- package/dist/chunk-5AQSGH4R.js.map +0 -1
- package/dist/chunk-5IHRJFOO.mjs +0 -102
- package/dist/chunk-5IHRJFOO.mjs.map +0 -1
- package/dist/chunk-5LDGR7YN.mjs +0 -28
- package/dist/chunk-5LDGR7YN.mjs.map +0 -1
- package/dist/chunk-5MCN3VYM.mjs +0 -23
- package/dist/chunk-5MCN3VYM.mjs.map +0 -1
- package/dist/chunk-6AVAMRMB.mjs +0 -47
- package/dist/chunk-6AVAMRMB.mjs.map +0 -1
- package/dist/chunk-6H62JRNM.mjs +0 -120
- package/dist/chunk-6H62JRNM.mjs.map +0 -1
- package/dist/chunk-6KCII3F6.mjs +0 -126
- package/dist/chunk-6KCII3F6.mjs.map +0 -1
- package/dist/chunk-7EHB43BJ.js +0 -155
- package/dist/chunk-7EHB43BJ.js.map +0 -1
- package/dist/chunk-7LRD23Q5.js +0 -191
- package/dist/chunk-7LRD23Q5.js.map +0 -1
- package/dist/chunk-7SAHKOJG.mjs +0 -45
- package/dist/chunk-7SAHKOJG.mjs.map +0 -1
- package/dist/chunk-A3D2YZK3.js +0 -50
- package/dist/chunk-A3D2YZK3.js.map +0 -1
- package/dist/chunk-AL4QFH7V.js +0 -63
- package/dist/chunk-AL4QFH7V.js.map +0 -1
- package/dist/chunk-B3WFEG6U.js +0 -69
- package/dist/chunk-B3WFEG6U.js.map +0 -1
- package/dist/chunk-BDZQJ6GK.js +0 -242
- package/dist/chunk-BDZQJ6GK.js.map +0 -1
- package/dist/chunk-BRWFYRGX.js +0 -61
- package/dist/chunk-BRWFYRGX.js.map +0 -1
- package/dist/chunk-C5DNTLBO.js +0 -53
- package/dist/chunk-C5DNTLBO.js.map +0 -1
- package/dist/chunk-CRALRACO.js +0 -54
- package/dist/chunk-CRALRACO.js.map +0 -1
- package/dist/chunk-CVACQJRM.js +0 -149
- package/dist/chunk-CVACQJRM.js.map +0 -1
- package/dist/chunk-DEIUKFPZ.mjs +0 -63
- package/dist/chunk-DEIUKFPZ.mjs.map +0 -1
- package/dist/chunk-DN2AEEA2.js +0 -13
- package/dist/chunk-DN2AEEA2.js.map +0 -1
- package/dist/chunk-DTNRWU4B.mjs +0 -35
- package/dist/chunk-DTNRWU4B.mjs.map +0 -1
- package/dist/chunk-DXIUEWRJ.mjs +0 -31
- package/dist/chunk-DXIUEWRJ.mjs.map +0 -1
- package/dist/chunk-DYFV66JX.mjs +0 -54
- package/dist/chunk-DYFV66JX.mjs.map +0 -1
- package/dist/chunk-F3WMAHXV.mjs +0 -86
- package/dist/chunk-F3WMAHXV.mjs.map +0 -1
- package/dist/chunk-F4RWPBBB.js +0 -79
- package/dist/chunk-F4RWPBBB.js.map +0 -1
- package/dist/chunk-FEGAPM6U.js +0 -194
- package/dist/chunk-FEGAPM6U.js.map +0 -1
- package/dist/chunk-G5TS56PW.mjs +0 -160
- package/dist/chunk-G5TS56PW.mjs.map +0 -1
- package/dist/chunk-GG6VGOEN.mjs +0 -590
- package/dist/chunk-GG6VGOEN.mjs.map +0 -1
- package/dist/chunk-GLAMGK32.mjs +0 -54
- package/dist/chunk-GLAMGK32.mjs.map +0 -1
- package/dist/chunk-GNMMUJXD.mjs +0 -200
- package/dist/chunk-GNMMUJXD.mjs.map +0 -1
- package/dist/chunk-GNPBULLS.mjs +0 -600
- package/dist/chunk-GNPBULLS.mjs.map +0 -1
- package/dist/chunk-GTE2DELE.js +0 -65
- package/dist/chunk-GTE2DELE.js.map +0 -1
- package/dist/chunk-GUQAFFTH.js +0 -94
- package/dist/chunk-GUQAFFTH.js.map +0 -1
- package/dist/chunk-H5VOYZHT.mjs +0 -34
- package/dist/chunk-H5VOYZHT.mjs.map +0 -1
- package/dist/chunk-HR6PBOGG.mjs +0 -59
- package/dist/chunk-HR6PBOGG.mjs.map +0 -1
- package/dist/chunk-HROONQS3.js +0 -55
- package/dist/chunk-HROONQS3.js.map +0 -1
- package/dist/chunk-IAO7SOQ3.mjs +0 -56
- package/dist/chunk-IAO7SOQ3.mjs.map +0 -1
- package/dist/chunk-K2QKU3K6.mjs +0 -40
- package/dist/chunk-K2QKU3K6.mjs.map +0 -1
- package/dist/chunk-KEUZZCCP.js +0 -53
- package/dist/chunk-KEUZZCCP.js.map +0 -1
- package/dist/chunk-KJXSLTG7.mjs +0 -73
- package/dist/chunk-KJXSLTG7.mjs.map +0 -1
- package/dist/chunk-L5AFUCVH.mjs +0 -26
- package/dist/chunk-L5AFUCVH.mjs.map +0 -1
- package/dist/chunk-LB3I52KZ.mjs +0 -42
- package/dist/chunk-LB3I52KZ.mjs.map +0 -1
- package/dist/chunk-LN75MJQ2.js +0 -71
- package/dist/chunk-LN75MJQ2.js.map +0 -1
- package/dist/chunk-LRBOFJUV.js +0 -60
- package/dist/chunk-LRBOFJUV.js.map +0 -1
- package/dist/chunk-MMNYRBOU.js +0 -157
- package/dist/chunk-MMNYRBOU.js.map +0 -1
- package/dist/chunk-MO65YF6P.js +0 -236
- package/dist/chunk-MO65YF6P.js.map +0 -1
- package/dist/chunk-N4KHP5FC.mjs +0 -33
- package/dist/chunk-N4KHP5FC.mjs.map +0 -1
- package/dist/chunk-NP2J7AB7.mjs +0 -121
- package/dist/chunk-NP2J7AB7.mjs.map +0 -1
- package/dist/chunk-OLR6SGYO.js +0 -57
- package/dist/chunk-OLR6SGYO.js.map +0 -1
- package/dist/chunk-ON7NQ4DY.js +0 -21
- package/dist/chunk-ON7NQ4DY.js.map +0 -1
- package/dist/chunk-PE3VFRLV.mjs +0 -198
- package/dist/chunk-PE3VFRLV.mjs.map +0 -1
- package/dist/chunk-Q7LOOIE5.mjs +0 -8
- package/dist/chunk-Q7LOOIE5.mjs.map +0 -1
- package/dist/chunk-QFA6U75G.mjs +0 -51
- package/dist/chunk-QFA6U75G.mjs.map +0 -1
- package/dist/chunk-QJQPT4WX.js +0 -638
- package/dist/chunk-QJQPT4WX.js.map +0 -1
- package/dist/chunk-QKHQPBSR.mjs +0 -20
- package/dist/chunk-QKHQPBSR.mjs.map +0 -1
- package/dist/chunk-SJD4XRFJ.mjs +0 -141
- package/dist/chunk-SJD4XRFJ.mjs.map +0 -1
- package/dist/chunk-SOOJLU4C.mjs +0 -19
- package/dist/chunk-SOOJLU4C.mjs.map +0 -1
- package/dist/chunk-T66B5IM5.js +0 -51
- package/dist/chunk-T66B5IM5.js.map +0 -1
- package/dist/chunk-T7RPZDO4.js +0 -645
- package/dist/chunk-T7RPZDO4.js.map +0 -1
- package/dist/chunk-TGRMDGTV.mjs +0 -38
- package/dist/chunk-TGRMDGTV.mjs.map +0 -1
- package/dist/chunk-TH2UKMCO.mjs +0 -11
- package/dist/chunk-TH2UKMCO.mjs.map +0 -1
- package/dist/chunk-TMV45OKE.mjs +0 -113
- package/dist/chunk-TMV45OKE.mjs.map +0 -1
- package/dist/chunk-TUJ7EVEK.js +0 -171
- package/dist/chunk-TUJ7EVEK.js.map +0 -1
- package/dist/chunk-ULNWDOI7.js +0 -122
- package/dist/chunk-ULNWDOI7.js.map +0 -1
- package/dist/chunk-UNUTTHCH.mjs +0 -210
- package/dist/chunk-UNUTTHCH.mjs.map +0 -1
- package/dist/chunk-VJMI6BG4.mjs +0 -10
- package/dist/chunk-VJMI6BG4.mjs.map +0 -1
- package/dist/chunk-VZVOB5MG.mjs +0 -26
- package/dist/chunk-VZVOB5MG.mjs.map +0 -1
- package/dist/chunk-WD67O22C.js +0 -50
- package/dist/chunk-WD67O22C.js.map +0 -1
- package/dist/chunk-WYPMLIJN.js +0 -53
- package/dist/chunk-WYPMLIJN.js.map +0 -1
- package/dist/chunk-X32I34NH.js +0 -109
- package/dist/chunk-X32I34NH.js.map +0 -1
- package/dist/chunk-X5MOZ3YL.js +0 -65
- package/dist/chunk-X5MOZ3YL.js.map +0 -1
- package/dist/chunk-Y4JVIPQZ.mjs +0 -31
- package/dist/chunk-Y4JVIPQZ.mjs.map +0 -1
- package/dist/chunk-Y6WOV2LZ.js +0 -95
- package/dist/chunk-Y6WOV2LZ.js.map +0 -1
- package/dist/chunk-YAEN5SCU.mjs +0 -41
- package/dist/chunk-YAEN5SCU.mjs.map +0 -1
- package/dist/chunk-YH6XDF3N.js +0 -121
- package/dist/chunk-YH6XDF3N.js.map +0 -1
- package/dist/chunk-YJKA4D75.mjs +0 -124
- package/dist/chunk-YJKA4D75.mjs.map +0 -1
- package/dist/chunk-ZANAF7WB.js +0 -88
- package/dist/chunk-ZANAF7WB.js.map +0 -1
- package/dist/chunk-ZDBWNPLO.js +0 -30
- package/dist/chunk-ZDBWNPLO.js.map +0 -1
- package/dist/chunk-ZDT2IOK2.js +0 -56
- package/dist/chunk-ZDT2IOK2.js.map +0 -1
- package/dist/chunk-ZKGVLTSI.js +0 -25
- package/dist/chunk-ZKGVLTSI.js.map +0 -1
- package/dist/chunk-ZLELESO7.js +0 -34
- package/dist/chunk-ZLELESO7.js.map +0 -1
- package/dist/chunk-ZUFUEQTX.mjs +0 -157
- package/dist/chunk-ZUFUEQTX.mjs.map +0 -1
- package/dist/chunk-ZZZWRQQE.mjs +0 -42
- package/dist/chunk-ZZZWRQQE.mjs.map +0 -1
- package/dist/command/index.js +0 -138
- package/dist/command/index.js.map +0 -1
- package/dist/command/index.mjs +0 -128
- package/dist/command/index.mjs.map +0 -1
- package/dist/components/accordion.js +0 -25
- package/dist/components/accordion.js.map +0 -1
- package/dist/components/accordion.mjs +0 -4
- package/dist/components/accordion.mjs.map +0 -1
- package/dist/components/alert.js +0 -21
- package/dist/components/alert.js.map +0 -1
- package/dist/components/alert.mjs +0 -4
- package/dist/components/alert.mjs.map +0 -1
- package/dist/components/aspect-ratio.js +0 -12
- package/dist/components/aspect-ratio.js.map +0 -1
- package/dist/components/aspect-ratio.mjs +0 -3
- package/dist/components/aspect-ratio.mjs.map +0 -1
- package/dist/components/avatar.js +0 -21
- package/dist/components/avatar.js.map +0 -1
- package/dist/components/avatar.mjs +0 -4
- package/dist/components/avatar.mjs.map +0 -1
- package/dist/components/badge.js +0 -17
- package/dist/components/badge.js.map +0 -1
- package/dist/components/badge.mjs +0 -4
- package/dist/components/badge.mjs.map +0 -1
- package/dist/components/breadcrumb.js +0 -37
- package/dist/components/breadcrumb.js.map +0 -1
- package/dist/components/breadcrumb.mjs +0 -4
- package/dist/components/breadcrumb.mjs.map +0 -1
- package/dist/components/button.js +0 -17
- package/dist/components/button.js.map +0 -1
- package/dist/components/button.mjs +0 -4
- package/dist/components/button.mjs.map +0 -1
- package/dist/components/card.js +0 -37
- package/dist/components/card.js.map +0 -1
- package/dist/components/card.mjs +0 -4
- package/dist/components/card.mjs.map +0 -1
- package/dist/components/checkbox.js +0 -13
- package/dist/components/checkbox.js.map +0 -1
- package/dist/components/checkbox.mjs +0 -4
- package/dist/components/checkbox.mjs.map +0 -1
- package/dist/components/collapsible.js +0 -20
- package/dist/components/collapsible.js.map +0 -1
- package/dist/components/collapsible.mjs +0 -3
- package/dist/components/collapsible.mjs.map +0 -1
- package/dist/components/context-menu.js +0 -69
- package/dist/components/context-menu.js.map +0 -1
- package/dist/components/context-menu.mjs +0 -4
- package/dist/components/context-menu.mjs.map +0 -1
- package/dist/components/dialog.js +0 -49
- package/dist/components/dialog.js.map +0 -1
- package/dist/components/dialog.mjs +0 -4
- package/dist/components/dialog.mjs.map +0 -1
- package/dist/components/drawer.js +0 -49
- package/dist/components/drawer.js.map +0 -1
- package/dist/components/drawer.mjs +0 -4
- package/dist/components/drawer.mjs.map +0 -1
- package/dist/components/dropdown-menu.js +0 -69
- package/dist/components/dropdown-menu.js.map +0 -1
- package/dist/components/dropdown-menu.mjs +0 -4
- package/dist/components/dropdown-menu.mjs.map +0 -1
- package/dist/components/form.js +0 -42
- package/dist/components/form.js.map +0 -1
- package/dist/components/form.mjs +0 -5
- package/dist/components/form.mjs.map +0 -1
- package/dist/components/hover-card.js +0 -21
- package/dist/components/hover-card.js.map +0 -1
- package/dist/components/hover-card.mjs +0 -4
- package/dist/components/hover-card.mjs.map +0 -1
- package/dist/components/index.js +0 -1047
- package/dist/components/index.js.map +0 -1
- package/dist/components/index.mjs +0 -46
- package/dist/components/index.mjs.map +0 -1
- package/dist/components/input-otp.js +0 -25
- package/dist/components/input-otp.js.map +0 -1
- package/dist/components/input-otp.mjs +0 -4
- package/dist/components/input-otp.mjs.map +0 -1
- package/dist/components/input.js +0 -13
- package/dist/components/input.js.map +0 -1
- package/dist/components/input.mjs +0 -4
- package/dist/components/input.mjs.map +0 -1
- package/dist/components/label.js +0 -13
- package/dist/components/label.js.map +0 -1
- package/dist/components/label.mjs +0 -4
- package/dist/components/label.mjs.map +0 -1
- package/dist/components/menubar.js +0 -73
- package/dist/components/menubar.js.map +0 -1
- package/dist/components/menubar.mjs +0 -4
- package/dist/components/menubar.mjs.map +0 -1
- package/dist/components/navigation-menu.js +0 -45
- package/dist/components/navigation-menu.js.map +0 -1
- package/dist/components/navigation-menu.mjs +0 -4
- package/dist/components/navigation-menu.mjs.map +0 -1
- package/dist/components/pagination.js +0 -38
- package/dist/components/pagination.js.map +0 -1
- package/dist/components/pagination.mjs +0 -5
- package/dist/components/pagination.mjs.map +0 -1
- package/dist/components/popover.js +0 -25
- package/dist/components/popover.js.map +0 -1
- package/dist/components/popover.mjs +0 -4
- package/dist/components/popover.mjs.map +0 -1
- package/dist/components/progress.js +0 -13
- package/dist/components/progress.js.map +0 -1
- package/dist/components/progress.mjs +0 -4
- package/dist/components/progress.mjs.map +0 -1
- package/dist/components/radio-group.js +0 -17
- package/dist/components/radio-group.js.map +0 -1
- package/dist/components/radio-group.mjs +0 -4
- package/dist/components/radio-group.mjs.map +0 -1
- package/dist/components/resizable.js +0 -21
- package/dist/components/resizable.js.map +0 -1
- package/dist/components/resizable.mjs +0 -4
- package/dist/components/resizable.mjs.map +0 -1
- package/dist/components/scroll-area.js +0 -17
- package/dist/components/scroll-area.js.map +0 -1
- package/dist/components/scroll-area.mjs +0 -4
- package/dist/components/scroll-area.mjs.map +0 -1
- package/dist/components/select.js +0 -49
- package/dist/components/select.js.map +0 -1
- package/dist/components/select.mjs +0 -4
- package/dist/components/select.mjs.map +0 -1
- package/dist/components/separator.js +0 -13
- package/dist/components/separator.js.map +0 -1
- package/dist/components/separator.mjs +0 -4
- package/dist/components/separator.mjs.map +0 -1
- package/dist/components/sheet.js +0 -49
- package/dist/components/sheet.js.map +0 -1
- package/dist/components/sheet.mjs +0 -4
- package/dist/components/sheet.mjs.map +0 -1
- package/dist/components/sidebar.js +0 -111
- package/dist/components/sidebar.js.map +0 -1
- package/dist/components/sidebar.mjs +0 -10
- package/dist/components/sidebar.mjs.map +0 -1
- package/dist/components/skeleton.js +0 -13
- package/dist/components/skeleton.js.map +0 -1
- package/dist/components/skeleton.mjs +0 -4
- package/dist/components/skeleton.mjs.map +0 -1
- package/dist/components/slider.js +0 -13
- package/dist/components/slider.js.map +0 -1
- package/dist/components/slider.mjs +0 -4
- package/dist/components/slider.mjs.map +0 -1
- package/dist/components/switch.js +0 -13
- package/dist/components/switch.js.map +0 -1
- package/dist/components/switch.mjs +0 -4
- package/dist/components/switch.mjs.map +0 -1
- package/dist/components/table.js +0 -41
- package/dist/components/table.js.map +0 -1
- package/dist/components/table.mjs +0 -4
- package/dist/components/table.mjs.map +0 -1
- package/dist/components/tabs.js +0 -25
- package/dist/components/tabs.js.map +0 -1
- package/dist/components/tabs.mjs +0 -4
- package/dist/components/tabs.mjs.map +0 -1
- package/dist/components/textarea.js +0 -13
- package/dist/components/textarea.js.map +0 -1
- package/dist/components/textarea.mjs +0 -4
- package/dist/components/textarea.mjs.map +0 -1
- package/dist/components/toast.js +0 -37
- package/dist/components/toast.js.map +0 -1
- package/dist/components/toast.mjs +0 -4
- package/dist/components/toast.mjs.map +0 -1
- package/dist/components/toggle-group.js +0 -18
- package/dist/components/toggle-group.js.map +0 -1
- package/dist/components/toggle-group.mjs +0 -5
- package/dist/components/toggle-group.mjs.map +0 -1
- package/dist/components/toggle.js +0 -17
- package/dist/components/toggle.js.map +0 -1
- package/dist/components/toggle.mjs +0 -4
- package/dist/components/toggle.mjs.map +0 -1
- package/dist/components/tooltip.js +0 -25
- package/dist/components/tooltip.js.map +0 -1
- package/dist/components/tooltip.mjs +0 -4
- package/dist/components/tooltip.mjs.map +0 -1
- package/dist/effects/index.js +0 -162
- package/dist/effects/index.js.map +0 -1
- package/dist/effects/index.mjs +0 -156
- package/dist/effects/index.mjs.map +0 -1
- package/dist/lib/utils.js +0 -12
- package/dist/lib/utils.js.map +0 -1
- package/dist/lib/utils.mjs +0 -3
- package/dist/lib/utils.mjs.map +0 -1
- package/dist/markdown/index.js +0 -669
- package/dist/markdown/index.js.map +0 -1
- package/dist/markdown/index.mjs +0 -635
- package/dist/markdown/index.mjs.map +0 -1
- package/dist/qr/index.js +0 -101
- package/dist/qr/index.js.map +0 -1
- package/dist/qr/index.mjs +0 -98
- package/dist/qr/index.mjs.map +0 -1
- package/dist/upload/index.js +0 -166
- package/dist/upload/index.js.map +0 -1
- package/dist/upload/index.mjs +0 -163
- package/dist/upload/index.mjs.map +0 -1
- package/publish.sh +0 -27
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { useEffect, useRef } from 'react'
|
|
2
|
+
import { makeObservable, reaction, computed, type IReactionDisposer, observable, action } from 'mobx'
|
|
3
|
+
|
|
4
|
+
interface StepAnimation {
|
|
5
|
+
notPast(step: number): boolean
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
class MyStepAnimation implements StepAnimation {
|
|
9
|
+
|
|
10
|
+
_step: number = -1
|
|
11
|
+
_reactionDisposer: IReactionDisposer | undefined = undefined
|
|
12
|
+
|
|
13
|
+
_initialStep: () => boolean
|
|
14
|
+
_intervals: number[]
|
|
15
|
+
|
|
16
|
+
/** initialStep: false -> true: step 0
|
|
17
|
+
true -> false: step 1
|
|
18
|
+
after intervals[0] : step 2
|
|
19
|
+
after intervals[1] : step 3
|
|
20
|
+
|
|
21
|
+
initialStep must contain at least one mobx observable and return boolean
|
|
22
|
+
see: https://mobx.js.org/reactions.html#reaction
|
|
23
|
+
*/
|
|
24
|
+
constructor(initialStep: () => boolean, intervals: number[]) {
|
|
25
|
+
|
|
26
|
+
this._initialStep = initialStep
|
|
27
|
+
this._intervals = intervals
|
|
28
|
+
|
|
29
|
+
makeObservable(this, {
|
|
30
|
+
_step: observable,
|
|
31
|
+
_setStep: action
|
|
32
|
+
})
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// This is separated out because reactions have to be created
|
|
36
|
+
// once we have a valid doc / window etc. (mobx internals)
|
|
37
|
+
// Can't just do it in constructor and assign to ref
|
|
38
|
+
initialize = () => {
|
|
39
|
+
|
|
40
|
+
const fireNext = () => {
|
|
41
|
+
this._setStep(this._step + 1)
|
|
42
|
+
if (this._step <= this._intervals.length) {
|
|
43
|
+
// No need to call clearTimeout(): https://stackoverflow.com/a/7391588/11645689
|
|
44
|
+
setTimeout(() => { fireNext() }, this._intervals[this._step - 1])
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
this._reactionDisposer = reaction(
|
|
49
|
+
this._initialStep,
|
|
50
|
+
(triggered: boolean) => {
|
|
51
|
+
if (triggered && this._step === -1) {
|
|
52
|
+
this._setStep(0)
|
|
53
|
+
}
|
|
54
|
+
// extra safe
|
|
55
|
+
else if (this._step === 0) {
|
|
56
|
+
fireNext()
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
_setStep = (v: number): void => {this._step = v}
|
|
63
|
+
|
|
64
|
+
dispose = () => {
|
|
65
|
+
if (this._reactionDisposer) {
|
|
66
|
+
this._reactionDisposer()
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// https://mobx.js.org/computeds-with-args.html#2-close-over-the-arguments
|
|
71
|
+
notPast = (step: number): boolean => (
|
|
72
|
+
computed(() => (this._step > -1 && this._step <= step)).get()
|
|
73
|
+
)
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
const useStepAnimation = (initialStep: () => boolean, intervals: number[]): StepAnimation => {
|
|
77
|
+
|
|
78
|
+
const animRef = useRef<MyStepAnimation>(new MyStepAnimation(initialStep, intervals))
|
|
79
|
+
useEffect(() => {
|
|
80
|
+
animRef.current.initialize()
|
|
81
|
+
return animRef.current.dispose
|
|
82
|
+
}, [])
|
|
83
|
+
|
|
84
|
+
return animRef.current
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export {
|
|
88
|
+
type StepAnimation,
|
|
89
|
+
useStepAnimation
|
|
90
|
+
}
|
package/util/timing.ts
ADDED
package/util/toasts.tsx
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { toast } from 'sonner';
|
|
2
|
+
|
|
3
|
+
export const submitRegistrationNoCodeNonPristineError = () => {
|
|
4
|
+
return toast.error(
|
|
5
|
+
<div>
|
|
6
|
+
Your Hanzo Node is currently locked by existing keys, please restore your
|
|
7
|
+
connection or reset your Hanzo Node Storage
|
|
8
|
+
</div>,
|
|
9
|
+
{ position: 'bottom-center' },
|
|
10
|
+
);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const submitRegistrationNoCodeError = () => {
|
|
14
|
+
return toast.error(<div>Error connecting to your Hanzo Node</div>, {
|
|
15
|
+
position: 'bottom-center',
|
|
16
|
+
});
|
|
17
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
class TwoWayReadonlyMap<T, K> {
|
|
2
|
+
map: Map<T, K>;
|
|
3
|
+
reverseMap: Map<K, T>;
|
|
4
|
+
constructor(map: Map<T, K>) {
|
|
5
|
+
this.map = map;
|
|
6
|
+
this.reverseMap = new Map<K, T>();
|
|
7
|
+
map.forEach((value, key) => {
|
|
8
|
+
this.reverseMap.set(value, key);
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
get(key: T) {
|
|
12
|
+
return this.map.get(key);
|
|
13
|
+
}
|
|
14
|
+
revGet(key: K) {
|
|
15
|
+
return this.reverseMap.get(key);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export default TwoWayReadonlyMap
|
package/CHANGELOG.md
DELETED
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to @hanzo/ui will be documented in this file.
|
|
4
|
-
|
|
5
|
-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
-
|
|
8
|
-
## [5.0.0] - 2025-09-20
|
|
9
|
-
|
|
10
|
-
### 🎉 Major Release - shadcn/ui v4 Migration
|
|
11
|
-
|
|
12
|
-
This major release migrates @hanzo/ui to the latest shadcn/ui v4 architecture with significant improvements in performance, accessibility, and developer experience.
|
|
13
|
-
|
|
14
|
-
### ✨ New Features
|
|
15
|
-
|
|
16
|
-
- **Registry-Based Architecture**: New component registry system for selective imports
|
|
17
|
-
- **Multi-Brand Support**: Built-in theming for Hanzo, Lux, and Zoo brands
|
|
18
|
-
- **50+ Components**: Complete component library with shadcn/ui v4 components
|
|
19
|
-
- **35+ Custom Hooks**: Comprehensive collection of React hooks
|
|
20
|
-
- **25+ Utilities**: Helper functions for common tasks
|
|
21
|
-
- **AI Integration**: Model Context Protocol (MCP) support for AI-powered development
|
|
22
|
-
- **Dark Mode**: Native dark mode support with theme persistence
|
|
23
|
-
- **OKLCH Colors**: Modern color system with OKLCH color space
|
|
24
|
-
- **TypeScript First**: Full TypeScript support with strict typing
|
|
25
|
-
- **Tree Shaking**: Optimized bundle sizes with proper tree shaking
|
|
26
|
-
- **Accessibility**: WCAG 2.1 AA compliant components
|
|
27
|
-
|
|
28
|
-
### 🔧 Component Updates
|
|
29
|
-
|
|
30
|
-
#### New Components
|
|
31
|
-
- Alert
|
|
32
|
-
- Alert Dialog
|
|
33
|
-
- Accordion
|
|
34
|
-
- Avatar
|
|
35
|
-
- Badge
|
|
36
|
-
- Breadcrumb
|
|
37
|
-
- Button (enhanced with variants)
|
|
38
|
-
- Calendar
|
|
39
|
-
- Card
|
|
40
|
-
- Carousel
|
|
41
|
-
- Chart
|
|
42
|
-
- Checkbox
|
|
43
|
-
- Collapsible
|
|
44
|
-
- Command
|
|
45
|
-
- Context Menu
|
|
46
|
-
- Data Table
|
|
47
|
-
- Date Picker
|
|
48
|
-
- Dialog
|
|
49
|
-
- Drawer
|
|
50
|
-
- Dropdown Menu
|
|
51
|
-
- Form
|
|
52
|
-
- Hover Card
|
|
53
|
-
- Input
|
|
54
|
-
- Input OTP
|
|
55
|
-
- Label
|
|
56
|
-
- Menubar
|
|
57
|
-
- Navigation Menu
|
|
58
|
-
- Pagination
|
|
59
|
-
- Popover
|
|
60
|
-
- Progress
|
|
61
|
-
- Radio Group
|
|
62
|
-
- Resizable
|
|
63
|
-
- Scroll Area
|
|
64
|
-
- Select
|
|
65
|
-
- Separator
|
|
66
|
-
- Sheet
|
|
67
|
-
- Skeleton
|
|
68
|
-
- Slider
|
|
69
|
-
- Sonner (Toast)
|
|
70
|
-
- Switch
|
|
71
|
-
- Table
|
|
72
|
-
- Tabs
|
|
73
|
-
- Textarea
|
|
74
|
-
- Toast
|
|
75
|
-
- Toggle
|
|
76
|
-
- Toggle Group
|
|
77
|
-
- Tooltip
|
|
78
|
-
|
|
79
|
-
#### AI Components
|
|
80
|
-
- Chat Interface
|
|
81
|
-
- Code Block with syntax highlighting
|
|
82
|
-
- Message components
|
|
83
|
-
- Streaming support
|
|
84
|
-
|
|
85
|
-
#### Block Components
|
|
86
|
-
- Authentication forms
|
|
87
|
-
- Dashboard layouts
|
|
88
|
-
- Marketing sections
|
|
89
|
-
- E-commerce patterns
|
|
90
|
-
|
|
91
|
-
### 💥 Breaking Changes
|
|
92
|
-
|
|
93
|
-
#### Package Structure
|
|
94
|
-
- Changed from single export to multiple export paths:
|
|
95
|
-
- `@hanzo/ui` - Core exports with cn utility
|
|
96
|
-
- `@hanzo/ui/components` - Component exports
|
|
97
|
-
- `@hanzo/ui/blocks` - Block patterns
|
|
98
|
-
- `@hanzo/ui/ai` - AI components
|
|
99
|
-
- `@hanzo/ui/lib/utils` - Utilities
|
|
100
|
-
|
|
101
|
-
#### Import Changes
|
|
102
|
-
```typescript
|
|
103
|
-
// Before (v4.x)
|
|
104
|
-
import { Button, Card, cn } from '@hanzo/ui'
|
|
105
|
-
|
|
106
|
-
// After (v5.0)
|
|
107
|
-
import { cn } from '@hanzo/ui'
|
|
108
|
-
import { Button, Card } from '@hanzo/ui/components'
|
|
109
|
-
// Or selective imports
|
|
110
|
-
import { Button } from '@hanzo/ui/components/button'
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
#### CSS Variables
|
|
114
|
-
- Migrated from HSL to OKLCH color space
|
|
115
|
-
- New CSS variable naming convention
|
|
116
|
-
- Theme variables now use `--hanzo-` prefix
|
|
117
|
-
|
|
118
|
-
#### Component API Changes
|
|
119
|
-
- Button: `variant` prop values changed
|
|
120
|
-
- Dialog: Now uses Radix UI Dialog v1.0
|
|
121
|
-
- Toast: Replaced with Sonner for better performance
|
|
122
|
-
- DataTable: New API with tanstack/react-table v8
|
|
123
|
-
|
|
124
|
-
#### Dependency Updates
|
|
125
|
-
- Requires React 18+
|
|
126
|
-
- Requires Tailwind CSS 3.4+
|
|
127
|
-
- All Radix UI primitives updated to v1.0+
|
|
128
|
-
|
|
129
|
-
### 🐛 Bug Fixes
|
|
130
|
-
|
|
131
|
-
- Fixed hydration issues with dark mode
|
|
132
|
-
- Resolved tree-shaking problems in production builds
|
|
133
|
-
- Fixed TypeScript type exports
|
|
134
|
-
- Corrected accessibility issues in form components
|
|
135
|
-
- Fixed z-index stacking context issues
|
|
136
|
-
|
|
137
|
-
### 📦 Dependencies
|
|
138
|
-
|
|
139
|
-
#### Updated
|
|
140
|
-
- All @radix-ui/* packages to latest v1.0+
|
|
141
|
-
- class-variance-authority to v0.7.0
|
|
142
|
-
- cmdk to v1.0.3
|
|
143
|
-
- lucide-react to v0.525.0
|
|
144
|
-
- recharts to v2.12.7
|
|
145
|
-
- tailwind-merge to v2.0.0
|
|
146
|
-
|
|
147
|
-
### 🚀 Performance Improvements
|
|
148
|
-
|
|
149
|
-
- 40% reduction in bundle size through better tree-shaking
|
|
150
|
-
- Lazy loading for heavy components (Charts, Calendar)
|
|
151
|
-
- Optimized re-renders with proper memo usage
|
|
152
|
-
- CSS-in-JS removed in favor of Tailwind CSS
|
|
153
|
-
|
|
154
|
-
### 📝 Documentation
|
|
155
|
-
|
|
156
|
-
- Complete API documentation for all components
|
|
157
|
-
- Interactive Storybook with all components
|
|
158
|
-
- Migration guide from v4 to v5
|
|
159
|
-
- Accessibility documentation
|
|
160
|
-
- Theming and customization guides
|
|
161
|
-
|
|
162
|
-
### 🔄 Migration Guide
|
|
163
|
-
|
|
164
|
-
See [MIGRATION.md](./MIGRATION.md) for detailed migration instructions from v4.x to v5.0.
|
|
165
|
-
|
|
166
|
-
### 🙏 Contributors
|
|
167
|
-
|
|
168
|
-
Thanks to all contributors who made this release possible!
|
|
169
|
-
|
|
170
|
-
---
|
|
171
|
-
|
|
172
|
-
## [4.5.6] - 2024-09-01
|
|
173
|
-
|
|
174
|
-
### Changed
|
|
175
|
-
- Last version before major v5 rewrite
|
|
176
|
-
|
|
177
|
-
---
|
|
178
|
-
|
|
179
|
-
## Previous Versions
|
|
180
|
-
|
|
181
|
-
For changelog of versions prior to v4.5.6, please refer to the git history.
|
|
182
|
-
|
|
183
|
-
[5.0.0]: https://github.com/hanzoai/ui/compare/v4.5.6...v5.0.0
|
|
184
|
-
[4.5.6]: https://github.com/hanzoai/ui/releases/tag/v4.5.6
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2025 Hanzo AI
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
package/dist/ai/index.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkBDZQJ6GK_js = require('../chunk-BDZQJ6GK.js');
|
|
4
|
-
require('../chunk-DN2AEEA2.js');
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Object.defineProperty(exports, "AIActions", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function () { return chunkBDZQJ6GK_js.AIActions; }
|
|
11
|
-
});
|
|
12
|
-
Object.defineProperty(exports, "AIAgents", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () { return chunkBDZQJ6GK_js.AIAgents; }
|
|
15
|
-
});
|
|
16
|
-
Object.defineProperty(exports, "AIAssistant", {
|
|
17
|
-
enumerable: true,
|
|
18
|
-
get: function () { return chunkBDZQJ6GK_js.AIAssistant; }
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(exports, "AIChat", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: function () { return chunkBDZQJ6GK_js.AIChat; }
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(exports, "AIModels", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
get: function () { return chunkBDZQJ6GK_js.AIModels; }
|
|
27
|
-
});
|
|
28
|
-
Object.defineProperty(exports, "AIPlayground", {
|
|
29
|
-
enumerable: true,
|
|
30
|
-
get: function () { return chunkBDZQJ6GK_js.AIPlayground; }
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(exports, "AITools", {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function () { return chunkBDZQJ6GK_js.AITools; }
|
|
35
|
-
});
|
|
36
|
-
Object.defineProperty(exports, "AIVision", {
|
|
37
|
-
enumerable: true,
|
|
38
|
-
get: function () { return chunkBDZQJ6GK_js.AIVision; }
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(exports, "AnthropicProvider", {
|
|
41
|
-
enumerable: true,
|
|
42
|
-
get: function () { return chunkBDZQJ6GK_js.AnthropicProvider; }
|
|
43
|
-
});
|
|
44
|
-
Object.defineProperty(exports, "OpenAIProvider", {
|
|
45
|
-
enumerable: true,
|
|
46
|
-
get: function () { return chunkBDZQJ6GK_js.OpenAIProvider; }
|
|
47
|
-
});
|
|
48
|
-
Object.defineProperty(exports, "configureAI", {
|
|
49
|
-
enumerable: true,
|
|
50
|
-
get: function () { return chunkBDZQJ6GK_js.configureAI; }
|
|
51
|
-
});
|
|
52
|
-
//# sourceMappingURL=index.js.map
|
|
53
|
-
//# sourceMappingURL=index.js.map
|
package/dist/ai/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
package/dist/ai/index.mjs
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { AIActions, AIAgents, AIAssistant, AIChat, AIModels, AIPlayground, AITools, AIVision, AnthropicProvider, OpenAIProvider, configureAI } from '../chunk-UNUTTHCH.mjs';
|
|
2
|
-
import '../chunk-TH2UKMCO.mjs';
|
|
3
|
-
//# sourceMappingURL=index.mjs.map
|
|
4
|
-
//# sourceMappingURL=index.mjs.map
|
package/dist/ai/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.mjs"}
|