@hanzo/ui 4.5.4 → 4.7.0

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 (203) hide show
  1. package/README.md +229 -0
  2. package/bin/create-registry.js +1 -1
  3. package/bin/test-mcp.sh +1 -1
  4. package/bin/update-registry.js +2 -2
  5. package/dist/index.d.mts +16 -0
  6. package/dist/index.d.ts +16 -0
  7. package/dist/index.js +9458 -0
  8. package/dist/index.mjs +9449 -0
  9. package/dist/lib/utils.d.mts +2 -0
  10. package/dist/lib/utils.d.ts +2 -0
  11. package/dist/lib/utils.js +47 -0
  12. package/dist/lib/utils.mjs +28 -0
  13. package/dist/src/utils.d.mts +7 -0
  14. package/dist/src/utils.d.ts +7 -0
  15. package/dist/src/utils.js +47 -0
  16. package/dist/src/utils.mjs +28 -0
  17. package/dist/tailwind/index.d.mts +2 -0
  18. package/dist/tailwind/index.d.ts +2 -0
  19. package/dist/tailwind/index.js +2048 -0
  20. package/dist/tailwind/index.mjs +2017 -0
  21. package/dist/types/index.d.mts +12 -0
  22. package/dist/types/index.d.ts +12 -0
  23. package/dist/types/index.js +79 -0
  24. package/dist/types/index.mjs +56 -0
  25. package/package.json +170 -23
  26. package/style/theme-provider.tsx +1 -1
  27. package/MCP-INSTRUCTIONS.md +0 -73
  28. package/README-MCP.md +0 -175
  29. package/blocks/components/accordian-block.tsx +0 -48
  30. package/blocks/components/block-component-props.ts +0 -11
  31. package/blocks/components/bullet-cards-block.tsx +0 -46
  32. package/blocks/components/card-block/index.tsx +0 -171
  33. package/blocks/components/card-block/link-out-button.tsx +0 -20
  34. package/blocks/components/card-block/util.ts +0 -28
  35. package/blocks/components/carte-blanche-block/index.tsx +0 -127
  36. package/blocks/components/carte-blanche-block/variant-content-left.tsx +0 -49
  37. package/blocks/components/content.tsx +0 -70
  38. package/blocks/components/cta-block.tsx +0 -115
  39. package/blocks/components/enh-heading-block.tsx +0 -204
  40. package/blocks/components/grid-block/grid-block-mutator.ts +0 -12
  41. package/blocks/components/grid-block/index.tsx +0 -83
  42. package/blocks/components/grid-block/mutator-registry.ts +0 -10
  43. package/blocks/components/grid-block/table-borders.mutator.ts +0 -47
  44. package/blocks/components/group-block.tsx +0 -83
  45. package/blocks/components/heading-block.tsx +0 -88
  46. package/blocks/components/image-block.tsx +0 -111
  47. package/blocks/components/index.ts +0 -30
  48. package/blocks/components/screenful-block/content.tsx +0 -123
  49. package/blocks/components/screenful-block/index.tsx +0 -107
  50. package/blocks/components/screenful-block/poster-background.tsx +0 -34
  51. package/blocks/components/screenful-block/video-background.tsx +0 -45
  52. package/blocks/components/space-block.tsx +0 -66
  53. package/blocks/components/video-block.tsx +0 -138
  54. package/blocks/def/accordian-block.ts +0 -14
  55. package/blocks/def/block.ts +0 -7
  56. package/blocks/def/bullet-cards-block.ts +0 -22
  57. package/blocks/def/card-block.ts +0 -22
  58. package/blocks/def/carte-blanche-block.ts +0 -21
  59. package/blocks/def/cta-block.ts +0 -19
  60. package/blocks/def/element-block.ts +0 -11
  61. package/blocks/def/enh-heading-block.ts +0 -44
  62. package/blocks/def/grid-block.ts +0 -16
  63. package/blocks/def/group-block.ts +0 -11
  64. package/blocks/def/heading-block.ts +0 -15
  65. package/blocks/def/image-block.ts +0 -31
  66. package/blocks/def/index.ts +0 -35
  67. package/blocks/def/screenful-block.ts +0 -54
  68. package/blocks/def/space-block.ts +0 -64
  69. package/blocks/def/video-block.ts +0 -9
  70. package/blocks/index.ts +0 -2
  71. package/dist/mcp/enhanced-server.d.ts +0 -29
  72. package/dist/mcp/enhanced-server.js +0 -1128
  73. package/dist/mcp/index.d.ts +0 -28
  74. package/dist/mcp/index.js +0 -436
  75. package/dist/registry/api.d.ts +0 -37
  76. package/dist/registry/api.js +0 -129
  77. package/dist/registry/index.d.ts +0 -353
  78. package/dist/registry/index.js +0 -45
  79. package/environment.d.ts +0 -6
  80. package/primitives/accordion.tsx +0 -66
  81. package/primitives/action-button.tsx +0 -42
  82. package/primitives/apply-typography.tsx +0 -55
  83. package/primitives/aspect-ratio.tsx +0 -5
  84. package/primitives/avatar.tsx +0 -49
  85. package/primitives/badge.tsx +0 -36
  86. package/primitives/breadcrumb.tsx +0 -115
  87. package/primitives/breakpoint-indicator.tsx +0 -19
  88. package/primitives/button.tsx +0 -85
  89. package/primitives/calendar.tsx +0 -72
  90. package/primitives/card.tsx +0 -83
  91. package/primitives/carousel.tsx +0 -237
  92. package/primitives/checkbox.tsx +0 -32
  93. package/primitives/combobox.tsx +0 -239
  94. package/primitives/command.tsx +0 -157
  95. package/primitives/context-menu.tsx +0 -200
  96. package/primitives/dialog-video-controller.tsx +0 -38
  97. package/primitives/dialog.tsx +0 -157
  98. package/primitives/drawer.tsx +0 -138
  99. package/primitives/form.tsx +0 -178
  100. package/primitives/icons/github.tsx +0 -14
  101. package/primitives/icons/index.ts +0 -18
  102. package/primitives/icons/youtube-logo.tsx +0 -59
  103. package/primitives/index-common.ts +0 -224
  104. package/primitives/index-next.ts +0 -2
  105. package/primitives/input-otp.tsx +0 -65
  106. package/primitives/input.tsx +0 -30
  107. package/primitives/label.tsx +0 -28
  108. package/primitives/list-adaptor.ts +0 -12
  109. package/primitives/list-box.tsx +0 -74
  110. package/primitives/loading-spinner.tsx +0 -33
  111. package/primitives/navigation-menu.tsx +0 -147
  112. package/primitives/next/image.tsx +0 -90
  113. package/primitives/next/index.ts +0 -7
  114. package/primitives/next/inline-icon.tsx +0 -36
  115. package/primitives/next/link-element.tsx +0 -109
  116. package/primitives/next/mdx-link.tsx +0 -22
  117. package/primitives/next/media-stack.tsx +0 -69
  118. package/primitives/next/nav-items.tsx +0 -45
  119. package/primitives/next/youtube-embed.tsx +0 -83
  120. package/primitives/popover.tsx +0 -37
  121. package/primitives/progress.tsx +0 -27
  122. package/primitives/radio-group.tsx +0 -56
  123. package/primitives/scroll-area.tsx +0 -47
  124. package/primitives/select.tsx +0 -169
  125. package/primitives/separator.tsx +0 -29
  126. package/primitives/sheet.tsx +0 -178
  127. package/primitives/skeleton.tsx +0 -20
  128. package/primitives/slider.tsx +0 -72
  129. package/primitives/sonner.tsx +0 -35
  130. package/primitives/step-indicator.tsx +0 -69
  131. package/primitives/switch.tsx +0 -35
  132. package/primitives/table.tsx +0 -117
  133. package/primitives/tabs.tsx +0 -60
  134. package/primitives/text-area.tsx +0 -26
  135. package/primitives/toggle-group.tsx +0 -63
  136. package/primitives/toggle.tsx +0 -73
  137. package/primitives/tooltip.tsx +0 -48
  138. package/primitives/video-player.tsx +0 -23
  139. package/public/r/accordion.json +0 -11
  140. package/public/r/alert.json +0 -11
  141. package/public/r/avatar.json +0 -11
  142. package/public/r/badge.json +0 -11
  143. package/public/r/button.json +0 -11
  144. package/public/r/card.json +0 -11
  145. package/public/r/checkbox.json +0 -11
  146. package/public/r/default.json +0 -6
  147. package/public/r/dialog.json +0 -11
  148. package/public/r/input.json +0 -11
  149. package/public/r/label.json +0 -11
  150. package/public/r/new-york.json +0 -6
  151. package/public/r/popover.json +0 -11
  152. package/public/r/select.json +0 -11
  153. package/public/r/table.json +0 -11
  154. package/public/r/tabs.json +0 -11
  155. package/public/r/toast.json +0 -11
  156. package/registry.json +0 -184
  157. package/src/mcp/README.md +0 -141
  158. package/src/mcp/enhanced-server.ts +0 -1208
  159. package/src/mcp/index.ts +0 -518
  160. package/src/mcp/package.json +0 -10
  161. package/src/registry/api.ts +0 -164
  162. package/src/registry/index.ts +0 -60
  163. package/src/registry/package.json +0 -10
  164. package/tailwind/colors.tailwind.js +0 -53
  165. package/tailwind/fontFamily.tailwind.ts +0 -7
  166. package/tailwind/fontSize.tailwind.ts +0 -13
  167. package/tailwind/index.ts +0 -7
  168. package/tailwind/safelist.tailwind.js +0 -26
  169. package/tailwind/screens.tailwind.js +0 -8
  170. package/tailwind/spacing.tailwind.js +0 -65
  171. package/tailwind/tailwind.config.hanzo-preset.d.ts +0 -5
  172. package/tailwind/tailwind.config.hanzo-preset.js +0 -915
  173. package/tailwind/tw-font-desc.ts +0 -15
  174. package/tailwind/typo-plugin/get-plugin-styles.js +0 -679
  175. package/tailwind/typo-plugin/index.d.ts +0 -9
  176. package/tailwind/typo-plugin/index.js +0 -141
  177. package/tailwind/typo-plugin/utils.js +0 -60
  178. package/tailwind/typography-test.mdx +0 -35
  179. package/tailwind/z-index.tailwind.js +0 -71
  180. package/test/test-registry.js +0 -73
  181. package/tsconfig.json +0 -22
  182. package/types/animation-def.ts +0 -3
  183. package/types/breakpoints.ts +0 -11
  184. package/types/bullet-item.ts +0 -10
  185. package/types/button-def.ts +0 -39
  186. package/types/dimensions.ts +0 -8
  187. package/types/grid-def.ts +0 -56
  188. package/types/image-def.ts +0 -32
  189. package/types/index.ts +0 -29
  190. package/types/link-def.ts +0 -56
  191. package/types/media-stack-def.ts +0 -31
  192. package/types/t-shirt-size.ts +0 -5
  193. package/types/tshirt-dimensions.ts +0 -20
  194. package/types/video-def.ts +0 -25
  195. package/util/format-and-abbreviate-as-currency.ts +0 -125
  196. package/util/format-to-max-char.ts +0 -68
  197. package/util/index-client.ts +0 -3
  198. package/util/index.ts +0 -78
  199. package/util/number-abbreviate.ts +0 -49
  200. package/util/specifier.ts +0 -43
  201. package/util/spread-to-transform.ts +0 -24
  202. package/util/step-animation.ts +0 -90
  203. package/util/two-way-map.ts +0 -19
@@ -1,60 +0,0 @@
1
- import { z } from "zod"
2
-
3
- // Define the file schema to match shadcn/ui's format
4
- export const fileSchema = z.object({
5
- path: z.string(),
6
- content: z.string().optional(),
7
- type: z.string(),
8
- target: z.string().optional(),
9
- })
10
-
11
- // Registry item schema aligned with shadcn/ui format
12
- export const registryItemSchema = z.object({
13
- name: z.string(),
14
- type: z.string(),
15
- description: z.string().optional(),
16
- author: z.string().optional(),
17
- dependencies: z.array(z.string()).optional(),
18
- devDependencies: z.array(z.string()).optional(),
19
- registryDependencies: z.array(z.string()).optional(),
20
- files: z.array(fileSchema).optional(),
21
- meta: z.record(z.any()).optional(),
22
- title: z.string().optional(),
23
- cssVars: z.record(z.any()).optional(),
24
- tailwind: z.record(z.any()).optional(),
25
- category: z.string().optional(),
26
- subcategory: z.string().optional(),
27
- })
28
-
29
- // Registry schema aligned with shadcn/ui format
30
- export const registrySchema = z.object({
31
- $schema: z.string().optional(),
32
- name: z.string(),
33
- homepage: z.string().optional(),
34
- style: z.string().optional(),
35
- items: z.array(registryItemSchema),
36
- })
37
-
38
- // Schema for a registry with full content
39
- export const registryWithContentSchema = registrySchema.extend({
40
- items: z.array(
41
- registryItemSchema.extend({
42
- files: z.array(
43
- fileSchema.extend({
44
- content: z.string(),
45
- })
46
- ),
47
- })
48
- ),
49
- })
50
-
51
- // Type definitions for easier use in TypeScript
52
- export type RegistryItem = z.infer<typeof registryItemSchema>
53
- export type Registry = z.infer<typeof registrySchema>
54
- export type RegistryWithContent = z.infer<typeof registryWithContentSchema>
55
- export type RegistryFile = z.infer<typeof fileSchema>
56
-
57
- // Support CommonJS
58
- if (typeof module !== 'undefined') {
59
- module.exports = { fileSchema, registryItemSchema, registrySchema, registryWithContentSchema }
60
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@hanzo/ui-registry",
3
- "private": true,
4
- "type": "module",
5
- "main": "../dist/registry/index.js",
6
- "types": "../dist/registry/index.d.ts",
7
- "scripts": {
8
- "build": "tsc"
9
- }
10
- }
@@ -1,53 +0,0 @@
1
- export default ({ colors }) => ({
2
- inherit: colors.inherit,
3
- current: colors.current,
4
- transparent: colors.transparent,
5
- ring: "var(--hz-ui-ring)",
6
- background: 'var(--hz-ui-bg-0)',
7
- // Should be partially transparent,
8
- // so opacity animations in 'vaul' module and other 3rd party stuff work
9
- overlay: 'var(--hz-ui-bg-overlay)',
10
-
11
- // levels forward in z-index (a la Material Design)
12
- level: {
13
- DEFAULT: "var(--hz-ui-bg-0)",
14
- '0': "var(--hz-ui-bg-0)",
15
- '1': "var(--hz-ui-bg-1)",
16
- '2': "var(--hz-ui-bg-2)",
17
- '3': "var(--hz-ui-bg-3)",
18
- },
19
- accent: "var(--hz-ui-fg-0)", // full contrast (darkTheme:white) : heading and links hover
20
- foreground: "var(--hz-ui-fg-body)", // body text off-white (bright enough to contrast to bg-level-1)
21
- muted: {
22
- DEFAULT: "var(--hz-ui-fg-2)", // de-emphasized: fine print
23
- '1': "var(--hz-ui-fg-2)", // synonymous ^^^
24
- '2': "var(--hz-ui-fg-3)", // disabled or very de-emphasized
25
- '3': "var(--hz-ui-fg-4)", // very disabled ;)
26
- '4': "var(--hz-ui-fg-5)", // disabled border
27
- },
28
- primary: {
29
- DEFAULT: "var(--hz-ui-primary)",
30
- lux: "var(--hz-ui-primary)", // in case there are two configs
31
- hover: "var(--hz-ui-primary-hover)",
32
- fg: "var(--hz-ui-primary-fg)",
33
- },
34
- secondary: {
35
- DEFAULT: "var(--hz-ui-secondary)",
36
- lux: "var(--hz-ui-secondary)", // in case there are two configs
37
- hover: "var(--hz-ui-secondary-hover)",
38
- fg: "var(--hz-ui-secondary-fg)",
39
- '0': 'var(--hz-ui-secondary-0)',
40
- '1': 'var(--hz-ui-secondary-1)',
41
- '2': 'var(--hz-ui-secondary-2)',
42
- '3': 'var(--hz-ui-secondary-3)',
43
- },
44
- destructive: {
45
- DEFAULT: "var(--hz-ui-destructive)",
46
- fg: "var(--hz-ui-destructive-fg)",
47
- },
48
- nav: {
49
- DEFAULT: "var(--hz-ui-nav)",
50
- hover: "var(--hz-ui-nav-hover)",
51
- current: "var(--hz-ui-nav-current)",
52
- },
53
- })
@@ -1,7 +0,0 @@
1
- export default {
2
- sans: ['sans-serif'],
3
- heading: ['serif'],
4
- nav: ['serif'],
5
- serif: ['serif'],
6
- mono: ['monospace']
7
- }
@@ -1,13 +0,0 @@
1
- export default {
2
- xxs: ['0.65rem', { lineHeight: '0.8rem' }], // very fine print
3
- xs: ['0.8rem', { lineHeight: '1rem' }], // fine print
4
- sm: ['0.9rem', { lineHeight: '1.2rem' }], // 'standard' some news article cards (set manually when using typography-sm)
5
- base: ['1rem', { lineHeight: 1.4 }],
6
- lg: ['1.125rem', { lineHeight: '1.75rem' }],
7
- xl: ['1.25rem', { lineHeight: '1.75rem' }],
8
- '2xl': ['1.5rem', { lineHeight: '2rem' }],
9
- '3xl': ['1.875rem', { lineHeight: '2.25rem' }],
10
- '4xl': ['2.25rem', { lineHeight: '2.5rem' }],
11
- '5xl': ['3rem', { lineHeight: '1' }],
12
- '6xl': ['3.75rem', { lineHeight: '1' }],
13
- }
package/tailwind/index.ts DELETED
@@ -1,7 +0,0 @@
1
- import preset from './tailwind.config.hanzo-preset'
2
- import type TwFontDesc from './tw-font-desc'
3
-
4
- export {
5
- preset,
6
- type TwFontDesc
7
- }
@@ -1,26 +0,0 @@
1
- // https://tailwindcss.com/docs/content-configuration#dynamic-class-names
2
- // https://tailwindcss.com/docs/content-configuration#safelisting-classes
3
- export default [
4
-
5
- 'font-sans',
6
- {
7
- pattern: /grid-cols-[1-6]/,
8
- variants: [ 'xs', 'sm', 'md', 'lg', 'xl', '2xl' ]
9
- },
10
- { // SpaceBlock
11
- pattern: /h-([0-9]|[1-3][0-9]|40)/,
12
- variants: [ 'xs', 'sm', 'md', 'lg', 'xl', '2xl' ]
13
- },
14
- {
15
- pattern: /order-[0-6]/
16
- },
17
- { // EnhHeadingBlock
18
- pattern: /mb-([1-9]|1[0-2])/
19
- },
20
- 'md:text-left', // EnhHeadingBlock
21
- 'md:text-center',
22
- 'md:text-right',
23
- 'md:self-start',
24
- 'md:self-center',
25
- 'md:self-end',
26
- ]
@@ -1,8 +0,0 @@
1
- export default {
2
- xs: '0px', // <-- phone
3
- sm: '480px', // phone --><-- sm tablets / narrow
4
- md: '768px', // sm tablets / narrow -->
5
- lg: '1024px',
6
- xl: '1280px',
7
- '2xl': '1500px',
8
- }
@@ -1,65 +0,0 @@
1
- const percentages = {}
2
- for (let i = 0; i <= 100; i++) {
3
- percentages[`pr-${i}`] = `${i}%`
4
- }
5
-
6
-
7
- export default {
8
- ...percentages,
9
- px: '1px',
10
- 0: '0px',
11
- 0.5: '0.125rem',
12
- 1: '0.25rem',
13
- 1.5: '0.375rem',
14
- 2: '0.5rem',
15
- 2.5: '0.625rem',
16
- 3: '0.75rem',
17
- 3.5: '0.875rem',
18
- 4: '1rem',
19
- 5: '1.25rem',
20
- 6: '1.5rem',
21
- 7: '1.75rem',
22
- 8: '2rem',
23
- 9: '2.25rem',
24
- 10: '2.5rem',
25
- 11: '2.75rem',
26
- 12: '3rem',
27
- 13: '3.25rem',
28
- 14: '3.5rem',
29
- 15: '3.75rem',
30
- 16: '4rem',
31
- 17: '4.25rem',
32
- 18: '4.5rem',
33
- 19: '4.75rem',
34
- 20: '5rem',
35
- 21: '5.25rem',
36
- 22: '5.5rem',
37
- 23: '5.75rem',
38
- 24: '6rem',
39
- 25: '5.25rem',
40
- 26: '5.5rem',
41
- 27: '5.75rem',
42
- 28: '7rem',
43
- 29: '7.25rem',
44
- 30: '7.5rem',
45
- 31: '7.75rem',
46
- 32: '8rem',
47
- 33: '8.25rem',
48
- 34: '8.5rem',
49
- 35: '8.75rem',
50
- 36: '9rem',
51
- 37: '9.25rem',
52
- 38: '9.5rem',
53
- 39: '9.75rem',
54
- 40: '10rem',
55
- 44: '11rem',
56
- 48: '12rem',
57
- 52: '13rem',
58
- 56: '14rem',
59
- 60: '15rem',
60
- 64: '16rem',
61
- 72: '18rem',
62
- 80: '20rem',
63
- 96: '24rem',
64
- }
65
-
@@ -1,5 +0,0 @@
1
- import type { Config } from 'tailwindcss'
2
-
3
- declare const conf: Config
4
-
5
- export default conf