@anker-in/headless-ui 0.0.27-alpha.0 → 0.0.27-alpha.2

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 (172) hide show
  1. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
  2. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +2 -2
  3. package/dist/cjs/biz-components/Category/index.js +1 -1
  4. package/dist/cjs/biz-components/Category/index.js.map +2 -2
  5. package/dist/cjs/biz-components/Evaluate/index.d.ts +1 -0
  6. package/dist/cjs/biz-components/Evaluate/index.js +1 -1
  7. package/dist/cjs/biz-components/Evaluate/index.js.map +3 -3
  8. package/dist/cjs/biz-components/Marquee/index.js +1 -1
  9. package/dist/cjs/biz-components/Marquee/index.js.map +2 -2
  10. package/dist/cjs/biz-components/MemberEquity/index.js +30 -30
  11. package/dist/cjs/biz-components/MemberEquity/index.js.map +2 -2
  12. package/dist/cjs/biz-components/ShelfDisplay/index.js +9 -9
  13. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +2 -2
  14. package/dist/cjs/biz-components/Slogan/index.js +1 -1
  15. package/dist/cjs/biz-components/Slogan/index.js.map +2 -2
  16. package/dist/cjs/components/button.js +1 -1
  17. package/dist/cjs/components/button.js.map +2 -2
  18. package/dist/cjs/components/card.js +1 -1
  19. package/dist/cjs/components/card.js.map +2 -2
  20. package/dist/cjs/components/carousel.js +1 -1
  21. package/dist/cjs/components/carousel.js.map +2 -2
  22. package/dist/cjs/components/container.js +1 -1
  23. package/dist/cjs/components/container.js.map +2 -2
  24. package/dist/cjs/components/dialog.js +1 -1
  25. package/dist/cjs/components/dialog.js.map +2 -2
  26. package/dist/cjs/components/gird.js +1 -1
  27. package/dist/cjs/components/gird.js.map +2 -2
  28. package/dist/cjs/components/heading.d.ts +1 -1
  29. package/dist/cjs/components/heading.js +1 -1
  30. package/dist/cjs/components/heading.js.map +2 -2
  31. package/dist/cjs/components/text.js +1 -1
  32. package/dist/cjs/components/text.js.map +1 -1
  33. package/dist/cjs/stories/container.stories.js +6 -6
  34. package/dist/cjs/stories/container.stories.js.map +2 -2
  35. package/dist/cjs/stories/dialog.stories.js +1 -1
  36. package/dist/cjs/stories/dialog.stories.js.map +2 -2
  37. package/dist/cjs/stories/evaluate.stories.js +1 -1
  38. package/dist/cjs/stories/evaluate.stories.js.map +2 -2
  39. package/dist/cjs/stories/heading.stories.d.ts +3 -2
  40. package/dist/cjs/stories/heading.stories.js +1 -1
  41. package/dist/cjs/stories/heading.stories.js.map +2 -2
  42. package/dist/cjs/stories/text.stories.js +1 -1
  43. package/dist/cjs/stories/text.stories.js.map +2 -2
  44. package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
  45. package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +2 -2
  46. package/dist/esm/biz-components/Category/index.js +1 -1
  47. package/dist/esm/biz-components/Category/index.js.map +2 -2
  48. package/dist/esm/biz-components/Evaluate/index.d.ts +1 -0
  49. package/dist/esm/biz-components/Evaluate/index.js +1 -1
  50. package/dist/esm/biz-components/Evaluate/index.js.map +3 -3
  51. package/dist/esm/biz-components/Marquee/index.js +1 -1
  52. package/dist/esm/biz-components/Marquee/index.js.map +2 -2
  53. package/dist/esm/biz-components/MemberEquity/index.js +29 -29
  54. package/dist/esm/biz-components/MemberEquity/index.js.map +2 -2
  55. package/dist/esm/biz-components/ShelfDisplay/index.js +9 -9
  56. package/dist/esm/biz-components/ShelfDisplay/index.js.map +2 -2
  57. package/dist/esm/biz-components/Slogan/index.js +1 -1
  58. package/dist/esm/biz-components/Slogan/index.js.map +2 -2
  59. package/dist/esm/components/button.js +1 -1
  60. package/dist/esm/components/button.js.map +2 -2
  61. package/dist/esm/components/card.js +1 -1
  62. package/dist/esm/components/card.js.map +2 -2
  63. package/dist/esm/components/carousel.js +1 -1
  64. package/dist/esm/components/carousel.js.map +2 -2
  65. package/dist/esm/components/container.js +1 -1
  66. package/dist/esm/components/container.js.map +2 -2
  67. package/dist/esm/components/dialog.js +1 -1
  68. package/dist/esm/components/dialog.js.map +2 -2
  69. package/dist/esm/components/gird.js +1 -1
  70. package/dist/esm/components/gird.js.map +2 -2
  71. package/dist/esm/components/heading.d.ts +1 -1
  72. package/dist/esm/components/heading.js +1 -1
  73. package/dist/esm/components/heading.js.map +2 -2
  74. package/dist/esm/components/text.js +1 -1
  75. package/dist/esm/components/text.js.map +1 -1
  76. package/dist/esm/stories/container.stories.js +6 -6
  77. package/dist/esm/stories/container.stories.js.map +2 -2
  78. package/dist/esm/stories/dialog.stories.js +1 -1
  79. package/dist/esm/stories/dialog.stories.js.map +2 -2
  80. package/dist/esm/stories/evaluate.stories.js +1 -1
  81. package/dist/esm/stories/evaluate.stories.js.map +2 -2
  82. package/dist/esm/stories/heading.stories.d.ts +3 -2
  83. package/dist/esm/stories/heading.stories.js +1 -1
  84. package/dist/esm/stories/heading.stories.js.map +2 -2
  85. package/dist/esm/stories/text.stories.js +2 -2
  86. package/dist/esm/stories/text.stories.js.map +2 -2
  87. package/package.json +2 -3
  88. package/style.css +69 -34
  89. package/src/biz-components/BrandEquity/BrandEquity.tsx +0 -77
  90. package/src/biz-components/BrandEquity/index.ts +0 -1
  91. package/src/biz-components/Category/index.tsx +0 -57
  92. package/src/biz-components/Evaluate/index.tsx +0 -85
  93. package/src/biz-components/HeroBanner/HeroBanner.tsx +0 -103
  94. package/src/biz-components/HeroBanner/index.tsx +0 -1
  95. package/src/biz-components/HeroBanner/types.ts +0 -28
  96. package/src/biz-components/Marquee/index.tsx +0 -79
  97. package/src/biz-components/MemberEquity/index.tsx +0 -114
  98. package/src/biz-components/MemberEquity/types.ts +0 -26
  99. package/src/biz-components/Shelf/Shelf.tsx +0 -22
  100. package/src/biz-components/Shelf/index.ts +0 -1
  101. package/src/biz-components/Shelf/types.ts +0 -6
  102. package/src/biz-components/ShelfDisplay/index.tsx +0 -142
  103. package/src/biz-components/Slogan/index.tsx +0 -53
  104. package/src/biz-components/Slogan/types.ts +0 -25
  105. package/src/biz-components/index.ts +0 -11
  106. package/src/components/alert.tsx +0 -124
  107. package/src/components/avatar.tsx +0 -126
  108. package/src/components/badge.tsx +0 -27
  109. package/src/components/button.tsx +0 -183
  110. package/src/components/card.tsx +0 -51
  111. package/src/components/carousel.tsx +0 -352
  112. package/src/components/checkbox.tsx +0 -42
  113. package/src/components/color.tsx +0 -77
  114. package/src/components/container.tsx +0 -28
  115. package/src/components/dialog.tsx +0 -98
  116. package/src/components/drawer.tsx +0 -115
  117. package/src/components/drop-down.tsx +0 -182
  118. package/src/components/gird.tsx +0 -90
  119. package/src/components/heading.tsx +0 -80
  120. package/src/components/index.ts +0 -26
  121. package/src/components/input-number.tsx +0 -216
  122. package/src/components/input.tsx +0 -79
  123. package/src/components/link.tsx +0 -99
  124. package/src/components/picture.tsx +0 -100
  125. package/src/components/popover.tsx +0 -31
  126. package/src/components/radio.tsx +0 -85
  127. package/src/components/skeleton.tsx +0 -41
  128. package/src/components/tabs.tsx +0 -78
  129. package/src/components/text.tsx +0 -99
  130. package/src/components/theme.tsx +0 -20
  131. package/src/helpers/component-props.ts +0 -17
  132. package/src/helpers/constants.ts +0 -0
  133. package/src/helpers/index.ts +0 -2
  134. package/src/helpers/utils.ts +0 -16
  135. package/src/icons/spinner.tsx +0 -26
  136. package/src/index.ts +0 -1
  137. package/src/shared/Styles.tsx +0 -94
  138. package/src/stories/HeroBanner.stories.tsx +0 -86
  139. package/src/stories/MemberEquity.stories.tsx +0 -107
  140. package/src/stories/alert.stories.tsx +0 -41
  141. package/src/stories/avatar.stories.tsx +0 -83
  142. package/src/stories/badge.stories.tsx +0 -40
  143. package/src/stories/brandEquity.stories.tsx +0 -73
  144. package/src/stories/button.stories.tsx +0 -145
  145. package/src/stories/card.stories.tsx +0 -97
  146. package/src/stories/carousel.stories.tsx +0 -161
  147. package/src/stories/category.stories.tsx +0 -52
  148. package/src/stories/checkbox.stories.tsx +0 -93
  149. package/src/stories/container.stories.tsx +0 -97
  150. package/src/stories/dialog.stories.tsx +0 -74
  151. package/src/stories/drawer.stories.tsx +0 -88
  152. package/src/stories/drop-down.stories.tsx +0 -83
  153. package/src/stories/evaluate.stories.tsx +0 -53
  154. package/src/stories/grid.stories.tsx +0 -190
  155. package/src/stories/heading.stories.tsx +0 -96
  156. package/src/stories/input-number.stories.tsx +0 -52
  157. package/src/stories/input.stories.tsx +0 -64
  158. package/src/stories/link.stories.tsx +0 -142
  159. package/src/stories/marquee.stories.tsx +0 -102
  160. package/src/stories/picture.stories.tsx +0 -51
  161. package/src/stories/popover.stories.tsx +0 -41
  162. package/src/stories/radio.stories.tsx +0 -55
  163. package/src/stories/shelf.stories.tsx +0 -35
  164. package/src/stories/shelfDisplay.stories.tsx +0 -69
  165. package/src/stories/skeleton.stories.tsx +0 -67
  166. package/src/stories/slogan.stories.tsx +0 -99
  167. package/src/stories/tabs.stories.tsx +0 -179
  168. package/src/stories/text.stories.tsx +0 -130
  169. package/src/styles/global.css +0 -4
  170. package/src/styles/index.css +0 -0
  171. package/src/types/index.ts +0 -0
  172. package/src/types/props.ts +0 -5
@@ -1,115 +0,0 @@
1
- import React from 'react'
2
- import { Drawer as DrawerPrimitive } from 'vaul'
3
- import { Cross2Icon } from '@radix-ui/react-icons'
4
-
5
- import { cn } from '../helpers/utils.js'
6
-
7
- function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {
8
- return <DrawerPrimitive.Root data-slot="drawer" {...props} />
9
- }
10
-
11
- function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {
12
- return <DrawerPrimitive.Trigger data-slot="drawer-trigger" {...props} />
13
- }
14
-
15
- function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {
16
- return <DrawerPrimitive.Portal data-slot="drawer-portal" {...props} />
17
- }
18
-
19
- function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {
20
- return <DrawerPrimitive.Close data-slot="drawer-close" {...props} />
21
- }
22
-
23
- function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {
24
- return (
25
- <DrawerPrimitive.Overlay
26
- data-slot="drawer-overlay"
27
- className={cn(
28
- 'data-[state=open]:ai-animate-in data-[state=closed]:ai-animate-out data-[state=closed]:ai-fade-out-0 data-[state=open]:ai-fade-in-0 ai-fixed ai-inset-0 ai-z-50 ai-bg-black/50',
29
- className
30
- )}
31
- {...props}
32
- />
33
- )
34
- }
35
-
36
- function DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>) {
37
- return (
38
- <DrawerPortal data-slot="drawer-portal">
39
- <DrawerOverlay />
40
- <DrawerPrimitive.Content
41
- data-slot="drawer-content"
42
- className={cn(
43
- 'group/drawer-content ai-bg-background ai-fixed ai-z-50 ai-flex ai-px-6 ai-h-auto ai-flex-col',
44
- 'data-[vaul-drawer-direction=top]:ai-inset-x-0 data-[vaul-drawer-direction=top]:ai-top-0 data-[vaul-drawer-direction=top]:ai-mb-24 data-[vaul-drawer-direction=top]:ai-max-h-[80vh] data-[vaul-drawer-direction=top]:ai-border-b',
45
- 'data-[vaul-drawer-direction=bottom]:ai-inset-x-0 data-[vaul-drawer-direction=bottom]:ai-bottom-0 data-[vaul-drawer-direction=bottom]:ai-mt-24 data-[vaul-drawer-direction=bottom]:ai-max-h-[80vh] data-[vaul-drawer-direction=bottom]:ai-border-t',
46
- 'data-[vaul-drawer-direction=right]:ai-inset-y-0 data-[vaul-drawer-direction=right]:ai-right-0 data-[vaul-drawer-direction=right]:ai-w-3/4 data-[vaul-drawer-direction=right]:ai-border-l data-[vaul-drawer-direction=right]:ai-max-w-sm',
47
- 'data-[vaul-drawer-direction=left]:ai-inset-y-0 data-[vaul-drawer-direction=left]:ai-left-0 data-[vaul-drawer-direction=left]:ai-w-3/4 data-[vaul-drawer-direction=left]:ai-border-r data-[vaul-drawer-direction=left]:ai-max-w-sm',
48
- className
49
- )}
50
- {...props}
51
- >
52
- <div className="ai-bg-muted ai-mx-auto ai-mt-4 ai-hidden ai-h-2 ai-w-[100px] ai-shrink-0 group-data-[vaul-drawer-direction=bottom]/drawer-content:ai-block" />
53
- {children}
54
- </DrawerPrimitive.Content>
55
- </DrawerPortal>
56
- )
57
- }
58
-
59
- function DrawerHeader({ className, children, ...props }: React.ComponentProps<'div'>) {
60
- return (
61
- <div
62
- data-slot="drawer-header"
63
- className={cn('gird-container ai-flex ai-justify-between ai-py-6 gap-1.5', className)}
64
- {...props}
65
- >
66
- <div>{children}</div>
67
- <DrawerClose>
68
- <Cross2Icon className="ai-size-4" />
69
- </DrawerClose>
70
- </div>
71
- )
72
- }
73
-
74
- function DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {
75
- return (
76
- <div
77
- data-slot="drawer-footer"
78
- className={cn('ai-mt-auto ai-flex ai-flex-col ai-gap-2 ai-py-8', className)}
79
- {...props}
80
- />
81
- )
82
- }
83
-
84
- function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {
85
- return (
86
- <DrawerPrimitive.Title
87
- data-slot="drawer-title"
88
- className={cn('text-foreground font-semibold', className)}
89
- {...props}
90
- />
91
- )
92
- }
93
-
94
- function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {
95
- return (
96
- <DrawerPrimitive.Description
97
- data-slot="drawer-description"
98
- className={cn('ai-text-muted-foreground ai-text-sm', className)}
99
- {...props}
100
- />
101
- )
102
- }
103
-
104
- export {
105
- Drawer,
106
- DrawerPortal,
107
- DrawerOverlay,
108
- DrawerTrigger,
109
- DrawerClose,
110
- DrawerContent,
111
- DrawerHeader,
112
- DrawerFooter,
113
- DrawerTitle,
114
- DrawerDescription,
115
- }
@@ -1,182 +0,0 @@
1
- 'use client'
2
-
3
- import React, { useState } from 'react'
4
- import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'
5
- import { CheckIcon, ChevronRightIcon, CircleIcon } from '@radix-ui/react-icons'
6
- import { cn } from '../helpers/index.js'
7
-
8
- const DropdownMenu = React.forwardRef<
9
- React.ElementRef<typeof DropdownMenuPrimitive.Root>,
10
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Root>
11
- >(({ children, ...props }) => {
12
- return <DropdownMenuPrimitive.Root {...props}>{children}</DropdownMenuPrimitive.Root>
13
- })
14
-
15
- const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger
16
-
17
- const DropdownMenuGroup = DropdownMenuPrimitive.Group
18
-
19
- const DropdownMenuPortal = DropdownMenuPrimitive.Portal
20
-
21
- const DropdownMenuSub = DropdownMenuPrimitive.Sub
22
-
23
- const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup
24
-
25
- const DropdownMenuSubTrigger = React.forwardRef<
26
- React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,
27
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & { inset?: boolean }
28
- >(({ className, inset, children, ...props }, ref) => (
29
- <DropdownMenuPrimitive.SubTrigger
30
- ref={ref}
31
- className={cn(
32
- 'flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',
33
- inset && 'pl-8',
34
- className
35
- )}
36
- {...props}
37
- >
38
- {children}
39
- <ChevronRightIcon className="ml-auto" />
40
- </DropdownMenuPrimitive.SubTrigger>
41
- ))
42
- DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName
43
-
44
- const DropdownMenuSubContent = React.forwardRef<
45
- React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,
46
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>
47
- >(({ className, ...props }, ref) => (
48
- <DropdownMenuPrimitive.SubContent
49
- ref={ref}
50
- className={cn(
51
- 'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-primary-foreground p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]',
52
- className
53
- )}
54
- {...props}
55
- />
56
- ))
57
- DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName
58
-
59
- const DropdownMenuContent = React.forwardRef<
60
- React.ElementRef<typeof DropdownMenuPrimitive.Content>,
61
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>
62
- >(({ className, sideOffset = 4, ...props }, ref) => (
63
- <DropdownMenuPrimitive.Portal>
64
- <DropdownMenuPrimitive.Content
65
- ref={ref}
66
- sideOffset={sideOffset}
67
- className={cn(
68
- 'z-50 max-h-[var(--radix-dropdown-menu-content-available-height)] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-primary-foreground p-1 text-popover-foreground shadow-md',
69
- 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]',
70
- className
71
- )}
72
- {...props}
73
- />
74
- </DropdownMenuPrimitive.Portal>
75
- ))
76
- DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName
77
-
78
- const DropdownMenuItem = React.forwardRef<
79
- React.ElementRef<typeof DropdownMenuPrimitive.Item>,
80
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & { inset?: boolean }
81
- >(({ className, inset, ...props }, ref) => (
82
- <DropdownMenuPrimitive.Item
83
- ref={ref}
84
- className={cn(
85
- 'relative flex cursor-pointer select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0 hover:text-brand-0',
86
- inset && 'pl-8',
87
- className
88
- )}
89
- {...props}
90
- />
91
- ))
92
- DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName
93
-
94
- const DropdownMenuCheckboxItem = React.forwardRef<
95
- React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,
96
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>
97
- >(({ className, children, checked, ...props }, ref) => (
98
- <DropdownMenuPrimitive.CheckboxItem
99
- ref={ref}
100
- className={cn(
101
- 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
102
- className
103
- )}
104
- checked={checked}
105
- {...props}
106
- >
107
- <span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
108
- <DropdownMenuPrimitive.ItemIndicator>
109
- <CheckIcon className="h-4 w-4" />
110
- </DropdownMenuPrimitive.ItemIndicator>
111
- </span>
112
- {children}
113
- </DropdownMenuPrimitive.CheckboxItem>
114
- ))
115
- DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName
116
-
117
- const DropdownMenuRadioItem = React.forwardRef<
118
- React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,
119
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>
120
- >(({ className, children, ...props }, ref) => (
121
- <DropdownMenuPrimitive.RadioItem
122
- ref={ref}
123
- className={cn(
124
- 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
125
- className
126
- )}
127
- {...props}
128
- >
129
- <span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
130
- <DropdownMenuPrimitive.ItemIndicator>
131
- <CircleIcon className="h-2 w-2 fill-current" />
132
- </DropdownMenuPrimitive.ItemIndicator>
133
- </span>
134
- {children}
135
- </DropdownMenuPrimitive.RadioItem>
136
- ))
137
- DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName
138
-
139
- const DropdownMenuLabel = React.forwardRef<
140
- React.ElementRef<typeof DropdownMenuPrimitive.Label>,
141
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {
142
- inset?: boolean
143
- }
144
- >(({ className, inset, ...props }, ref) => (
145
- <DropdownMenuPrimitive.Label
146
- ref={ref}
147
- className={cn('px-2 py-1.5 text-sm font-semibold', inset && 'pl-8', className)}
148
- {...props}
149
- />
150
- ))
151
- DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName
152
-
153
- const DropdownMenuSeparator = React.forwardRef<
154
- React.ElementRef<typeof DropdownMenuPrimitive.Separator>,
155
- React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>
156
- >(({ className, ...props }, ref) => (
157
- <DropdownMenuPrimitive.Separator ref={ref} className={cn('-mx-1 my-1 h-px bg-muted', className)} {...props} />
158
- ))
159
- DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName
160
-
161
- const DropdownMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {
162
- return <span className={cn('ml-auto text-xs tracking-widest opacity-60', className)} {...props} />
163
- }
164
- DropdownMenuShortcut.displayName = 'DropdownMenuShortcut'
165
-
166
- export {
167
- DropdownMenu,
168
- DropdownMenuTrigger,
169
- DropdownMenuContent,
170
- DropdownMenuItem,
171
- DropdownMenuCheckboxItem,
172
- DropdownMenuRadioItem,
173
- DropdownMenuLabel,
174
- DropdownMenuSeparator,
175
- DropdownMenuShortcut,
176
- DropdownMenuGroup,
177
- DropdownMenuPortal,
178
- DropdownMenuSub,
179
- DropdownMenuSubContent,
180
- DropdownMenuSubTrigger,
181
- DropdownMenuRadioGroup,
182
- }
@@ -1,90 +0,0 @@
1
- import React from 'react'
2
- import type { ReactNode } from 'react'
3
- import { cn } from '../helpers/utils.js'
4
-
5
- type Element = React.ElementRef<'div'>
6
-
7
- interface GridProps {
8
- children?: ReactNode
9
- className?: string
10
- }
11
-
12
- interface GridItemProps {
13
- children?: ReactNode
14
- className?: string
15
- span?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 // 限制为具体的数字类型
16
- start?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 // 起始列位置
17
- end?: 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 // 结束列位置
18
- }
19
-
20
- const colSpanClasses = {
21
- 1: 'col-span-1',
22
- 2: 'col-span-2',
23
- 3: 'col-span-3',
24
- 4: 'col-span-4',
25
- 5: 'col-span-5',
26
- 6: 'col-span-6',
27
- 7: 'col-span-7',
28
- 8: 'col-span-8',
29
- 9: 'col-span-9',
30
- 10: 'col-span-10',
31
- 11: 'col-span-11',
32
- 12: 'col-span-12',
33
- } as const
34
-
35
- const colStartClasses = {
36
- 1: 'col-start-1',
37
- 2: 'col-start-2',
38
- 3: 'col-start-3',
39
- 4: 'col-start-4',
40
- 5: 'col-start-5',
41
- 6: 'col-start-6',
42
- 7: 'col-start-7',
43
- 8: 'col-start-8',
44
- 9: 'col-start-9',
45
- 10: 'col-start-10',
46
- 11: 'col-start-11',
47
- 12: 'col-start-12',
48
- } as const
49
-
50
- const colEndClasses = {
51
- 2: 'col-end-2',
52
- 3: 'col-end-3',
53
- 4: 'col-end-4',
54
- 5: 'col-end-5',
55
- 6: 'col-end-6',
56
- 7: 'col-end-7',
57
- 8: 'col-end-8',
58
- 9: 'col-end-9',
59
- 10: 'col-end-10',
60
- 11: 'col-end-11',
61
- 12: 'col-end-12',
62
- 13: 'col-end-13',
63
- } as const
64
-
65
- const Grid = React.forwardRef<Element, GridProps>(({ className, children }, forwardedRef) => {
66
- return <div ref={forwardedRef} className={cn("grid grid-cols-12 gap-3 md:gap-4", className)}>{children}</div>
67
- })
68
- Grid.displayName = 'Grid'
69
-
70
- const GridItem = React.forwardRef<Element, GridItemProps>(
71
- ({ className, children, span = 12, start, end }, forwardedRef) => {
72
- return (
73
- <div
74
- ref={forwardedRef}
75
- className={cn(
76
- colSpanClasses[span],
77
- start && colStartClasses[start],
78
- end && colEndClasses[end],
79
- className
80
- )}
81
- >
82
- {children}
83
- </div>
84
- )
85
- }
86
- )
87
- GridItem.displayName = 'GridItem'
88
-
89
- export { Grid, GridItem }
90
- export type { GridProps, GridItemProps }
@@ -1,80 +0,0 @@
1
- import { cn } from '../helpers/index.js'
2
- import { Slot } from '@radix-ui/react-slot'
3
- import { cva, type VariantProps } from 'class-variance-authority'
4
- import React from 'react'
5
-
6
- const headingVariants = cva('leading-tight tracking text-info-primary', {
7
- variants: {
8
- size: {
9
- 1: 'text-heading-1',
10
- 2: 'text-heading-2',
11
- 3: 'text-heading-3',
12
- 4: 'text-hedaing-4',
13
- 5: 'text-heading-5',
14
- },
15
- weight: {
16
- light: 'font-light',
17
- normal: 'font-normal',
18
- medium: 'font-medium',
19
- bold: 'font-bold',
20
- },
21
- align: {
22
- left: 'text-left',
23
- center: 'text-center',
24
- right: 'text-right',
25
- },
26
- },
27
- defaultVariants: {
28
- size: 5,
29
- weight: 'normal',
30
- },
31
- })
32
-
33
- type HeadingElement = React.ElementRef<'h1'>
34
-
35
- interface HeadingProps extends React.ComponentPropsWithoutRef<'h1'>, VariantProps<typeof headingVariants> {
36
- as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'
37
- asChild?: boolean
38
- color?: string
39
- html?: string
40
- }
41
-
42
- const Heading = React.forwardRef<HeadingElement, HeadingProps>((props, forwardedRef) => {
43
- const { children, className, size = 5, align, weight, asChild, as: Tag = 'h1', color, html, ...headingProps } = props
44
- const htmlContentProps = html
45
- ? {
46
- dangerouslySetInnerHTML: { __html: html },
47
- }
48
- : null
49
-
50
- const styleProps = color
51
- ? {
52
- style: {
53
- color,
54
- },
55
- }
56
- : null
57
- return (
58
- <Slot
59
- {...headingProps}
60
- ref={forwardedRef}
61
- className={cn(
62
- headingVariants({
63
- size,
64
- weight,
65
- align,
66
- }),
67
- className
68
- )}
69
- {...htmlContentProps}
70
- {...styleProps}
71
- >
72
- {asChild ? children : <Tag>{htmlContentProps ? null : children}</Tag>}
73
- </Slot>
74
- )
75
- })
76
-
77
- Heading.displayName = 'Heading'
78
-
79
- export { Heading }
80
- export type { HeadingProps }
@@ -1,26 +0,0 @@
1
- export { default as Button } from './button.js'
2
- export { default as Badge } from './badge.js'
3
- export * from './input.js'
4
-
5
- export { default as Checkbox } from './checkbox.js'
6
-
7
- export { default as Skeleton } from './skeleton.js'
8
- export * from './dialog.js'
9
- export * from './popover.js'
10
- export * from './radio.js'
11
- export * from './text.js'
12
- export * from './gird.js'
13
- export * from './heading.js'
14
- export * from './container.js'
15
- export * from './color.js'
16
- export * from './drawer.js'
17
- export * from './link.js'
18
- export * from './avatar.js'
19
- export * from './input-number.js'
20
- export * from './drop-down.js'
21
- export * from './card.js'
22
- export * from './carousel.js'
23
- export * from './tabs.js'
24
- export * from './alert.js'
25
- export { default as Picture } from './picture.js'
26
- export { default as Theme } from './theme.js'