@saas-ui/react 3.0.0-alpha.1 → 3.0.0-alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/components/app-shell/index.d.cts +1 -1
  3. package/dist/components/app-shell/index.d.ts +1 -1
  4. package/dist/components/navbar/index.d.cts +3 -3
  5. package/dist/components/navbar/index.d.ts +3 -3
  6. package/dist/components/persona/index.d.cts +1 -1
  7. package/dist/components/persona/index.d.ts +1 -1
  8. package/dist/components/sidebar/index.d.cts +12 -12
  9. package/dist/components/sidebar/index.d.ts +12 -12
  10. package/dist/index.cjs +2 -12
  11. package/dist/index.js +2 -12
  12. package/package.json +4 -6
  13. package/src/components/app-shell/app-shell.recipe.ts +0 -52
  14. package/src/components/app-shell/app-shell.stories.tsx +0 -51
  15. package/src/components/app-shell/app-shell.tsx +0 -94
  16. package/src/components/app-shell/index.ts +0 -3
  17. package/src/components/breadcrumbs/breadcrumb.stories.tsx +0 -17
  18. package/src/components/breadcrumbs/breadcrumb.tsx +0 -36
  19. package/src/components/breadcrumbs/index.ts +0 -1
  20. package/src/components/breadcrumbs/namespace.ts +0 -8
  21. package/src/components/button/button.recipe.ts +0 -182
  22. package/src/components/button/button.stories.tsx +0 -99
  23. package/src/components/button/button.tsx +0 -55
  24. package/src/components/button/index.ts +0 -2
  25. package/src/components/checkbox/checkbox.tsx +0 -26
  26. package/src/components/checkbox/index.ts +0 -2
  27. package/src/components/close-button/close-button.stories.tsx +0 -12
  28. package/src/components/close-button/close-button.tsx +0 -18
  29. package/src/components/close-button/index.ts +0 -2
  30. package/src/components/command/command.recipe.ts +0 -17
  31. package/src/components/command/command.stories.tsx +0 -47
  32. package/src/components/command/command.tsx +0 -50
  33. package/src/components/command/index.ts +0 -1
  34. package/src/components/dialog/dialog.tsx +0 -67
  35. package/src/components/dialog/index.ts +0 -1
  36. package/src/components/dialog/namespace.ts +0 -18
  37. package/src/components/drawer/drawer.tsx +0 -57
  38. package/src/components/drawer/index.ts +0 -3
  39. package/src/components/drawer/namespace.ts +0 -19
  40. package/src/components/grid-list/grid-list.recipe.ts +0 -113
  41. package/src/components/icon-badge/icon-badge.recipe.ts +0 -57
  42. package/src/components/icon-badge/icon-badge.stories.tsx +0 -38
  43. package/src/components/icon-badge/icon-badge.tsx +0 -59
  44. package/src/components/icon-badge/index.ts +0 -2
  45. package/src/components/icons/create-icon.tsx +0 -41
  46. package/src/components/icons/icons.tsx +0 -119
  47. package/src/components/icons/index.ts +0 -1
  48. package/src/components/input-group/index.ts +0 -1
  49. package/src/components/input-group/input-group.tsx +0 -46
  50. package/src/components/link/index.ts +0 -2
  51. package/src/components/link/link.stories.tsx +0 -17
  52. package/src/components/link/link.test.tsx +0 -33
  53. package/src/components/link/link.tsx +0 -27
  54. package/src/components/loading-overlay/index.ts +0 -1
  55. package/src/components/loading-overlay/loading-overlay.recipe.ts +0 -61
  56. package/src/components/loading-overlay/loading-overlay.stories.tsx +0 -68
  57. package/src/components/loading-overlay/loading-overlay.tsx +0 -54
  58. package/src/components/loading-overlay/namespace.ts +0 -7
  59. package/src/components/navbar/index.ts +0 -1
  60. package/src/components/navbar/namespace.ts +0 -9
  61. package/src/components/navbar/navbar.recipe.ts +0 -109
  62. package/src/components/navbar/navbar.stories.tsx +0 -435
  63. package/src/components/navbar/navbar.test.tsx +0 -49
  64. package/src/components/navbar/navbar.tsx +0 -39
  65. package/src/components/number-input/index.ts +0 -2
  66. package/src/components/number-input/number-input.tsx +0 -41
  67. package/src/components/password-input/index.ts +0 -2
  68. package/src/components/password-input/password-input.tsx +0 -93
  69. package/src/components/persona/index.ts +0 -2
  70. package/src/components/persona/namespace.ts +0 -18
  71. package/src/components/persona/persona-primitive.tsx +0 -220
  72. package/src/components/persona/persona.recipe.ts +0 -94
  73. package/src/components/persona/persona.stories.tsx +0 -101
  74. package/src/components/persona/persona.tsx +0 -142
  75. package/src/components/pin-input/index.ts +0 -2
  76. package/src/components/pin-input/pin-input.tsx +0 -36
  77. package/src/components/radio/index.ts +0 -2
  78. package/src/components/radio/radio.tsx +0 -27
  79. package/src/components/search-input/index.ts +0 -2
  80. package/src/components/search-input/search-input.stories.tsx +0 -63
  81. package/src/components/search-input/search-input.tsx +0 -134
  82. package/src/components/select/index.ts +0 -1
  83. package/src/components/select/namespace.ts +0 -18
  84. package/src/components/select/select.tsx +0 -135
  85. package/src/components/sidebar/index.ts +0 -7
  86. package/src/components/sidebar/namespace.ts +0 -27
  87. package/src/components/sidebar/sidebar-item.recipe.ts +0 -65
  88. package/src/components/sidebar/sidebar.recipe.ts +0 -237
  89. package/src/components/sidebar/sidebar.stories.tsx +0 -903
  90. package/src/components/sidebar/sidebar.tsx +0 -208
  91. package/src/components/spinner/index.ts +0 -2
  92. package/src/components/spinner/spinner.stories.tsx +0 -19
  93. package/src/components/spinner/spinner.tsx +0 -21
  94. package/src/components/steps/index.ts +0 -1
  95. package/src/components/steps/namespace.ts +0 -16
  96. package/src/components/steps/steps.tsx +0 -82
  97. package/src/components/switch/index.ts +0 -3
  98. package/src/components/switch/switch.tsx +0 -39
  99. package/src/compositions/accordion.tsx +0 -47
  100. package/src/compositions/action-bar.tsx +0 -40
  101. package/src/compositions/alert.tsx +0 -51
  102. package/src/compositions/avatar.tsx +0 -74
  103. package/src/compositions/blockquote.tsx +0 -31
  104. package/src/compositions/checkbox-card.tsx +0 -57
  105. package/src/compositions/checkbox.tsx +0 -25
  106. package/src/compositions/clipboard.tsx +0 -107
  107. package/src/compositions/color-mode.tsx +0 -65
  108. package/src/compositions/data-list.tsx +0 -37
  109. package/src/compositions/empty-state.tsx +0 -34
  110. package/src/compositions/field.tsx +0 -33
  111. package/src/compositions/file-button.tsx +0 -166
  112. package/src/compositions/hover-card.tsx +0 -35
  113. package/src/compositions/link-button.tsx +0 -12
  114. package/src/compositions/menu.tsx +0 -108
  115. package/src/compositions/native-select.tsx +0 -57
  116. package/src/compositions/pagination.tsx +0 -207
  117. package/src/compositions/popover.tsx +0 -58
  118. package/src/compositions/progress-circle.tsx +0 -37
  119. package/src/compositions/progress.tsx +0 -40
  120. package/src/compositions/prose.tsx +0 -264
  121. package/src/compositions/provider.tsx +0 -12
  122. package/src/compositions/radio-card.tsx +0 -57
  123. package/src/compositions/radio.tsx +0 -24
  124. package/src/compositions/rating.tsx +0 -27
  125. package/src/compositions/segmented-control.tsx +0 -47
  126. package/src/compositions/skeleton.tsx +0 -44
  127. package/src/compositions/slider.tsx +0 -53
  128. package/src/compositions/stat.tsx +0 -75
  129. package/src/compositions/status.tsx +0 -29
  130. package/src/compositions/stepper-input.tsx +0 -49
  131. package/src/compositions/tag.tsx +0 -39
  132. package/src/compositions/timeline.tsx +0 -17
  133. package/src/compositions/toaster.tsx +0 -43
  134. package/src/compositions/toggle-tip.tsx +0 -62
  135. package/src/compositions/tooltip.tsx +0 -46
  136. package/src/index.ts +0 -7
  137. package/src/preset.ts +0 -9
  138. package/src/provider/index.ts +0 -4
  139. package/src/provider/sui-provider.tsx +0 -34
  140. package/src/provider/use-link.test.tsx +0 -60
  141. package/src/provider/use-link.tsx +0 -13
  142. package/src/styled-system/create-recipe-context.tsx +0 -91
  143. package/src/styled-system/create-slot-recipe-context.tsx +0 -188
  144. package/src/styled-system/empty.ts +0 -7
  145. package/src/styled-system/factory.types.ts +0 -11
  146. package/src/theme/animation-styles.ts +0 -53
  147. package/src/theme/breakpoints.ts +0 -11
  148. package/src/theme/conditions.ts +0 -26
  149. package/src/theme/fluid-font-sizes.ts +0 -65
  150. package/src/theme/global-css.ts +0 -94
  151. package/src/theme/index.ts +0 -72
  152. package/src/theme/layer-styles.ts +0 -116
  153. package/src/theme/recipes/chakra/accordion.ts +0 -145
  154. package/src/theme/recipes/chakra/action-bar.ts +0 -62
  155. package/src/theme/recipes/chakra/alert.ts +0 -157
  156. package/src/theme/recipes/chakra/avatar.ts +0 -141
  157. package/src/theme/recipes/chakra/badge.ts +0 -67
  158. package/src/theme/recipes/chakra/blockquote.ts +0 -83
  159. package/src/theme/recipes/chakra/breadcrumb.ts +0 -94
  160. package/src/theme/recipes/chakra/card.ts +0 -99
  161. package/src/theme/recipes/chakra/checkbox-card.ts +0 -212
  162. package/src/theme/recipes/chakra/checkbox.ts +0 -70
  163. package/src/theme/recipes/chakra/checkmark.ts +0 -83
  164. package/src/theme/recipes/chakra/code.ts +0 -17
  165. package/src/theme/recipes/chakra/collapsible.ts +0 -20
  166. package/src/theme/recipes/chakra/container.ts +0 -26
  167. package/src/theme/recipes/chakra/data-list.ts +0 -80
  168. package/src/theme/recipes/chakra/dialog.ts +0 -225
  169. package/src/theme/recipes/chakra/drawer.ts +0 -201
  170. package/src/theme/recipes/chakra/editable.ts +0 -88
  171. package/src/theme/recipes/chakra/empty-state.ts +0 -88
  172. package/src/theme/recipes/chakra/field.ts +0 -68
  173. package/src/theme/recipes/chakra/fieldset.ts +0 -62
  174. package/src/theme/recipes/chakra/file-upload.ts +0 -96
  175. package/src/theme/recipes/chakra/heading.ts +0 -27
  176. package/src/theme/recipes/chakra/hover-card.ts +0 -68
  177. package/src/theme/recipes/chakra/icon.ts +0 -30
  178. package/src/theme/recipes/chakra/input-addon.ts +0 -40
  179. package/src/theme/recipes/chakra/input.ts +0 -96
  180. package/src/theme/recipes/chakra/kbd.ts +0 -60
  181. package/src/theme/recipes/chakra/link.ts +0 -37
  182. package/src/theme/recipes/chakra/list.ts +0 -67
  183. package/src/theme/recipes/chakra/mark.ts +0 -27
  184. package/src/theme/recipes/chakra/menu.ts +0 -124
  185. package/src/theme/recipes/chakra/native-select.ts +0 -140
  186. package/src/theme/recipes/chakra/number-input.ts +0 -115
  187. package/src/theme/recipes/chakra/pin-input.ts +0 -27
  188. package/src/theme/recipes/chakra/popover.ts +0 -86
  189. package/src/theme/recipes/chakra/progress-circle.ts +0 -94
  190. package/src/theme/recipes/chakra/progress.ts +0 -127
  191. package/src/theme/recipes/chakra/radio-card.ts +0 -220
  192. package/src/theme/recipes/chakra/radio-group.ts +0 -72
  193. package/src/theme/recipes/chakra/radiomark.ts +0 -107
  194. package/src/theme/recipes/chakra/rating-group.ts +0 -94
  195. package/src/theme/recipes/chakra/segment-group.ts +0 -117
  196. package/src/theme/recipes/chakra/select.ts +0 -282
  197. package/src/theme/recipes/chakra/separator.ts +0 -51
  198. package/src/theme/recipes/chakra/skeleton.ts +0 -53
  199. package/src/theme/recipes/chakra/skip-nav-link.ts +0 -34
  200. package/src/theme/recipes/chakra/slider.ts +0 -178
  201. package/src/theme/recipes/chakra/spinner.ts +0 -32
  202. package/src/theme/recipes/chakra/stat.ts +0 -79
  203. package/src/theme/recipes/chakra/status.ts +0 -48
  204. package/src/theme/recipes/chakra/steps.ts +0 -218
  205. package/src/theme/recipes/chakra/switch.ts +0 -167
  206. package/src/theme/recipes/chakra/table.ts +0 -172
  207. package/src/theme/recipes/chakra/tabs.ts +0 -280
  208. package/src/theme/recipes/chakra/tag.ts +0 -131
  209. package/src/theme/recipes/chakra/textarea.ts +0 -88
  210. package/src/theme/recipes/chakra/timeline.ts +0 -138
  211. package/src/theme/recipes/chakra/toast.ts +0 -96
  212. package/src/theme/recipes/chakra/tooltip.ts +0 -40
  213. package/src/theme/recipes.ts +0 -46
  214. package/src/theme/semantic-tokens/colors.ts +0 -403
  215. package/src/theme/semantic-tokens/radii.ts +0 -7
  216. package/src/theme/semantic-tokens/shadows.ts +0 -52
  217. package/src/theme/slot-recipes.ts +0 -104
  218. package/src/theme/text-styles.ts +0 -39
  219. package/src/theme/tokens/animations.ts +0 -8
  220. package/src/theme/tokens/aspect-ratios.ts +0 -10
  221. package/src/theme/tokens/blurs.ts +0 -12
  222. package/src/theme/tokens/borders.ts +0 -9
  223. package/src/theme/tokens/colors.ts +0 -177
  224. package/src/theme/tokens/cursor.ts +0 -12
  225. package/src/theme/tokens/durations.ts +0 -11
  226. package/src/theme/tokens/easings.ts +0 -10
  227. package/src/theme/tokens/font-sizes.ts +0 -20
  228. package/src/theme/tokens/font-weights.ts +0 -13
  229. package/src/theme/tokens/fonts.ts +0 -15
  230. package/src/theme/tokens/keyframes.ts +0 -173
  231. package/src/theme/tokens/letter-spacing.ts +0 -9
  232. package/src/theme/tokens/line-heights.ts +0 -19
  233. package/src/theme/tokens/radius.ts +0 -18
  234. package/src/theme/tokens/sizes.ts +0 -71
  235. package/src/theme/tokens/spacing.ts +0 -38
  236. package/src/theme/tokens/z-indices.ts +0 -34
  237. package/src/theme/utils.ts +0 -46
@@ -1,67 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { listAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- export const listSlotRecipe = defineSlotRecipe({
5
- className: 'chakra-list',
6
- slots: listAnatomy.keys(),
7
- base: {
8
- root: {
9
- display: 'flex',
10
- flexDirection: 'column',
11
- gap: 'var(--list-gap)',
12
- '& :where(ul, ol)': {
13
- marginTop: 'var(--list-gap)',
14
- },
15
- },
16
- item: {
17
- whiteSpace: 'normal',
18
- display: 'list-item',
19
- },
20
- indicator: {
21
- marginEnd: '2',
22
- minHeight: '1lh',
23
- flexShrink: 0,
24
- display: 'inline-block',
25
- verticalAlign: 'middle',
26
- },
27
- },
28
-
29
- variants: {
30
- variant: {
31
- marker: {
32
- root: {
33
- listStyle: 'revert',
34
- listStylePosition: 'inside',
35
- },
36
- item: {
37
- _marker: {
38
- color: 'fg.subtle',
39
- },
40
- },
41
- },
42
-
43
- plain: {
44
- item: {
45
- alignItems: 'flex-start',
46
- display: 'inline-flex',
47
- },
48
- },
49
- },
50
-
51
- align: {
52
- center: {
53
- item: { alignItems: 'center' },
54
- },
55
- start: {
56
- item: { alignItems: 'flex-start' },
57
- },
58
- end: {
59
- item: { alignItems: 'flex-end' },
60
- },
61
- },
62
- },
63
-
64
- defaultVariants: {
65
- variant: 'marker',
66
- },
67
- })
@@ -1,27 +0,0 @@
1
- import { defineRecipe } from '@chakra-ui/react'
2
-
3
- export const markRecipe = defineRecipe({
4
- className: 'chakra-mark',
5
- base: {
6
- bg: 'transparent',
7
- color: 'inherit',
8
- whiteSpace: 'nowrap',
9
- },
10
-
11
- variants: {
12
- variant: {
13
- subtle: {
14
- bg: 'colorPalette.subtle',
15
- color: 'inherit',
16
- },
17
- solid: {
18
- bg: 'colorPalette.solid',
19
- color: 'colorPalette.contrast',
20
- },
21
- text: {
22
- fontWeight: 'medium',
23
- },
24
- plain: {},
25
- },
26
- },
27
- })
@@ -1,124 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { menuAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- export const menuSlotRecipe = defineSlotRecipe({
5
- className: 'chakra-menu',
6
- slots: menuAnatomy.keys(),
7
- base: {
8
- content: {
9
- outline: 0,
10
- bg: 'bg.panel',
11
- boxShadow: 'lg',
12
- color: 'fg',
13
- '--menu-z-index': 'zIndex.dropdown',
14
- zIndex: 'calc(var(--menu-z-index) + var(--layer-index, 0))',
15
- borderRadius: 'l2',
16
- overflow: 'hidden',
17
- _open: {
18
- animationStyle: 'slide-fade-in',
19
- animationDuration: 'fast',
20
- },
21
- _closed: {
22
- animationStyle: 'slide-fade-out',
23
- animationDuration: 'faster',
24
- },
25
- },
26
- item: {
27
- textDecoration: 'none',
28
- color: 'fg',
29
- userSelect: 'none',
30
- borderRadius: 'l3',
31
- width: '100%',
32
- display: 'flex',
33
- cursor: 'menuitem',
34
- alignItems: 'center',
35
- textAlign: 'start',
36
- position: 'relative',
37
- flex: '0 0 auto',
38
- outline: 0,
39
- _disabled: {
40
- layerStyle: 'disabled',
41
- },
42
- },
43
- itemText: {
44
- flex: '1',
45
- },
46
- itemGroupLabel: {
47
- px: '2',
48
- py: '1.5',
49
- fontWeight: 'semibold',
50
- textStyle: 'sm',
51
- },
52
- indicator: {
53
- display: 'inline-flex',
54
- alignItems: 'center',
55
- justifyContent: 'center',
56
- flexShrink: '0',
57
- },
58
- itemCommand: {
59
- opacity: '0.6',
60
- textStyle: 'xs',
61
- ms: 'auto',
62
- ps: '4',
63
- letterSpacing: 'widest',
64
- },
65
- separator: {
66
- height: '1px',
67
- bg: 'bg.muted',
68
- my: '1',
69
- mx: '-1',
70
- },
71
- },
72
-
73
- variants: {
74
- variant: {
75
- subtle: {
76
- item: {
77
- _highlighted: {
78
- bg: 'bg.subtle',
79
- },
80
- },
81
- },
82
- solid: {
83
- item: {
84
- _highlighted: {
85
- bg: 'colorPalette.solid',
86
- color: 'colorPalette.contrast',
87
- },
88
- },
89
- },
90
- },
91
-
92
- size: {
93
- sm: {
94
- content: {
95
- minW: '8rem',
96
- padding: '1',
97
- },
98
- item: {
99
- gap: '1',
100
- textStyle: 'xs',
101
- py: '1',
102
- px: '1.5',
103
- },
104
- },
105
- md: {
106
- content: {
107
- minW: '8rem',
108
- padding: '1.5',
109
- },
110
- item: {
111
- gap: '2',
112
- textStyle: 'sm',
113
- py: '1.5',
114
- px: '2',
115
- },
116
- },
117
- },
118
- },
119
-
120
- defaultVariants: {
121
- size: 'md',
122
- variant: 'subtle',
123
- },
124
- })
@@ -1,140 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { nativeSelectAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- import { selectSlotRecipe } from './select'
5
-
6
- export const nativeSelectSlotRecipe = defineSlotRecipe({
7
- className: 'chakra-native-select',
8
- slots: nativeSelectAnatomy.keys(),
9
-
10
- base: {
11
- root: {
12
- height: 'fit-content',
13
- display: 'flex',
14
- width: '100%',
15
- position: 'relative',
16
- },
17
- field: {
18
- width: '100%',
19
- minWidth: '0',
20
- outline: '0',
21
- appearance: 'none',
22
- borderRadius: 'l2',
23
- _disabled: {
24
- layerStyle: 'disabled',
25
- },
26
- _invalid: {
27
- borderColor: 'border.error',
28
- },
29
- focusVisibleRing: 'inside',
30
- lineHeight: 'normal',
31
- '& > option, & > optgroup': {
32
- bg: 'inherit',
33
- },
34
- },
35
- indicator: {
36
- position: 'absolute',
37
- display: 'inline-flex',
38
- alignItems: 'center',
39
- justifyContent: 'center',
40
- pointerEvents: 'none',
41
- top: '50%',
42
- transform: 'translateY(-50%)',
43
- height: '100%',
44
- color: 'fg.muted',
45
- _disabled: {
46
- opacity: '0.5',
47
- },
48
- _invalid: {
49
- color: 'fg.error',
50
- },
51
- _icon: {
52
- width: '1em',
53
- height: '1em',
54
- },
55
- },
56
- },
57
-
58
- variants: {
59
- variant: {
60
- outline: {
61
- field: selectSlotRecipe.variants?.variant.outline.trigger,
62
- },
63
- subtle: {
64
- field: selectSlotRecipe.variants?.variant.subtle.trigger,
65
- },
66
- plain: {
67
- field: {
68
- bg: 'transparent',
69
- color: 'fg',
70
- focusRingWidth: '2px',
71
- },
72
- },
73
- },
74
-
75
- size: {
76
- xs: {
77
- field: {
78
- textStyle: 'xs',
79
- ps: '2',
80
- pe: '6',
81
- height: '6',
82
- },
83
- indicator: {
84
- textStyle: 'sm',
85
- insetEnd: '1.5',
86
- },
87
- },
88
- sm: {
89
- field: {
90
- textStyle: 'sm',
91
- ps: '2.5',
92
- pe: '8',
93
- height: '8',
94
- },
95
- indicator: {
96
- textStyle: 'md',
97
- insetEnd: '2',
98
- },
99
- },
100
- md: {
101
- field: {
102
- textStyle: 'sm',
103
- ps: '3',
104
- pe: '8',
105
- height: '10',
106
- },
107
- indicator: {
108
- textStyle: 'lg',
109
- insetEnd: '2',
110
- },
111
- },
112
- lg: {
113
- field: {
114
- textStyle: 'md',
115
- ps: '4',
116
- pe: '8',
117
- height: '11',
118
- },
119
- indicator: {
120
- textStyle: 'xl',
121
- insetEnd: '3',
122
- },
123
- },
124
- xl: {
125
- field: {
126
- textStyle: 'md',
127
- ps: '4.5',
128
- pe: '10',
129
- height: '12',
130
- },
131
- indicator: {
132
- textStyle: 'xl',
133
- insetEnd: '3',
134
- },
135
- },
136
- },
137
- },
138
-
139
- defaultVariants: selectSlotRecipe.defaultVariants,
140
- })
@@ -1,115 +0,0 @@
1
- import { defineSlotRecipe, defineStyle } from '@chakra-ui/react'
2
- import { numberInputAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- import { mapEntries } from '../../utils.ts'
5
- import { inputRecipe } from './input.ts'
6
-
7
- const triggerStyle = defineStyle({
8
- display: 'flex',
9
- justifyContent: 'center',
10
- alignItems: 'center',
11
- flex: '1',
12
- userSelect: 'none',
13
- cursor: 'button',
14
- lineHeight: '1',
15
- color: 'fg.muted',
16
- '--stepper-base-radius': 'radii.xs',
17
- '--stepper-radius': 'calc(var(--stepper-base-radius) + 1px)',
18
- _icon: {
19
- boxSize: '1em',
20
- },
21
- _disabled: {
22
- opacity: '0.5',
23
- },
24
- _hover: {
25
- bg: 'bg.muted',
26
- },
27
- _active: {
28
- bg: 'bg.emphasized',
29
- },
30
- })
31
-
32
- export const numberInputSlotRecipe = defineSlotRecipe({
33
- className: 'chakra-number-input',
34
- slots: numberInputAnatomy.keys(),
35
- base: {
36
- root: {
37
- position: 'relative',
38
- zIndex: '0',
39
- isolation: 'isolate',
40
- },
41
- input: {
42
- ...inputRecipe.base,
43
- verticalAlign: 'top',
44
- pe: 'calc(var(--stepper-width) + 0.5rem)',
45
- },
46
- control: {
47
- display: 'flex',
48
- flexDirection: 'column',
49
- position: 'absolute',
50
- top: '0',
51
- insetEnd: '0px',
52
- margin: '1px',
53
- width: 'var(--stepper-width)',
54
- height: 'calc(100% - 2px)',
55
- zIndex: '1',
56
- borderStartWidth: '1px',
57
- divideY: '1px',
58
- },
59
- incrementTrigger: {
60
- ...triggerStyle,
61
- borderTopEndRadius: 'var(--stepper-radius)',
62
- },
63
- decrementTrigger: {
64
- ...triggerStyle,
65
- borderBottomEndRadius: 'var(--stepper-radius)',
66
- },
67
- valueText: {
68
- fontWeight: 'medium',
69
- fontFeatureSettings: 'pnum',
70
- fontVariantNumeric: 'proportional-nums',
71
- },
72
- },
73
- variants: {
74
- size: {
75
- xs: {
76
- input: inputRecipe.variants!.size.xs,
77
- control: {
78
- fontSize: '2xs',
79
- '--stepper-width': 'sizes.4',
80
- },
81
- },
82
- sm: {
83
- input: inputRecipe.variants!.size.sm,
84
- control: {
85
- fontSize: 'xs',
86
- '--stepper-width': 'sizes.5',
87
- },
88
- },
89
- md: {
90
- input: inputRecipe.variants!.size.md,
91
- control: {
92
- fontSize: 'sm',
93
- '--stepper-width': 'sizes.6',
94
- },
95
- },
96
- lg: {
97
- input: inputRecipe.variants!.size.lg,
98
- control: {
99
- fontSize: 'sm',
100
- '--stepper-width': 'sizes.6',
101
- },
102
- },
103
- },
104
-
105
- variant: mapEntries(inputRecipe.variants!.variant, (key, variantStyles) => [
106
- key,
107
- { input: variantStyles },
108
- ]),
109
- },
110
-
111
- defaultVariants: {
112
- size: 'md',
113
- variant: 'outline',
114
- },
115
- })
@@ -1,27 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { pinInputAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- import { mapEntries } from '../../utils.ts'
5
- import { inputRecipe } from './input'
6
-
7
- const { variants, defaultVariants } = inputRecipe
8
-
9
- export const pinInputSlotRecipe = defineSlotRecipe({
10
- className: 'chakra-pin-input',
11
- slots: pinInputAnatomy.keys(),
12
- base: {
13
- input: {
14
- ...inputRecipe.base,
15
- textAlign: 'center',
16
- width: 'var(--input-height)',
17
- },
18
- },
19
- variants: {
20
- size: mapEntries(variants!.size, (key, value) => [key, { input: value }]),
21
- variant: mapEntries(variants!.variant, (key, value) => [
22
- key,
23
- { input: value },
24
- ]),
25
- },
26
- defaultVariants: defaultVariants,
27
- })
@@ -1,86 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { popoverAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- export const popoverSlotRecipe = defineSlotRecipe({
5
- className: 'chakra-popover',
6
- slots: popoverAnatomy.keys(),
7
- base: {
8
- content: {
9
- position: 'relative',
10
- display: 'flex',
11
- flexDirection: 'column',
12
- textStyle: 'sm',
13
- '--popover-bg': 'colors.bg.panel',
14
- bg: 'var(--popover-bg)',
15
- boxShadow: 'lg',
16
- '--popover-size': 'sizes.xs',
17
- '--popover-mobile-size': 'calc(100dvw - 1rem)',
18
- width: {
19
- base: 'min(var(--popover-mobile-size), var(--popover-size))',
20
- sm: 'var(--popover-size)',
21
- },
22
- borderRadius: 'l3',
23
- '--popover-z-index': 'zIndex.popover',
24
- zIndex: 'calc(var(--popover-z-index) + var(--layer-index, 0))',
25
- outline: '0',
26
- transformOrigin: 'var(--transform-origin)',
27
- _open: {
28
- animationStyle: 'scale-fade-in',
29
- animationDuration: 'fast',
30
- },
31
- _closed: {
32
- animationStyle: 'scale-fade-out',
33
- animationDuration: 'faster',
34
- },
35
- },
36
- header: {
37
- paddingInline: 'var(--popover-padding)',
38
- paddingTop: 'var(--popover-padding)',
39
- },
40
- body: {
41
- padding: 'var(--popover-padding)',
42
- flex: '1',
43
- },
44
- footer: {
45
- display: 'flex',
46
- alignItems: 'center',
47
- paddingInline: 'var(--popover-padding)',
48
- paddingBottom: 'var(--popover-padding)',
49
- },
50
- arrow: {
51
- '--arrow-size': 'sizes.3',
52
- '--arrow-background': 'var(--popover-bg)',
53
- },
54
- arrowTip: {
55
- borderTopWidth: '1px',
56
- borderInlineStartWidth: '1px',
57
- },
58
- },
59
- variants: {
60
- size: {
61
- xs: {
62
- content: {
63
- '--popover-padding': 'spacing.3',
64
- },
65
- },
66
- sm: {
67
- content: {
68
- '--popover-padding': 'spacing.4',
69
- },
70
- },
71
- md: {
72
- content: {
73
- '--popover-padding': 'spacing.5',
74
- },
75
- },
76
- lg: {
77
- content: {
78
- '--popover-padding': 'spacing.6',
79
- },
80
- },
81
- },
82
- },
83
- defaultVariants: {
84
- size: 'md',
85
- },
86
- })
@@ -1,94 +0,0 @@
1
- import { defineSlotRecipe } from '@chakra-ui/react'
2
- import { progressAnatomy } from '@chakra-ui/react/anatomy'
3
-
4
- export const progressCircleSlotRecipe = defineSlotRecipe({
5
- className: 'chakra-progress-circle',
6
- slots: progressAnatomy.keys(),
7
- base: {
8
- root: {
9
- display: 'inline-flex',
10
- textStyle: 'sm',
11
- position: 'relative',
12
- },
13
- circle: {
14
- _indeterminate: {
15
- animation: 'spin 2s linear infinite',
16
- },
17
- },
18
- circleTrack: {
19
- '--track-color': 'colors.colorPalette.muted',
20
- stroke: 'var(--track-color)',
21
- },
22
- circleRange: {
23
- stroke: 'colorPalette.solid',
24
- transitionProperty: 'stroke-dasharray',
25
- transitionDuration: '0.6s',
26
- _indeterminate: {
27
- animation: 'circular-progress 1.5s linear infinite',
28
- },
29
- },
30
- label: {
31
- display: 'inline-flex',
32
- },
33
- valueText: {
34
- lineHeight: '1',
35
- fontWeight: 'medium',
36
- letterSpacing: 'tight',
37
- fontVariantNumeric: 'tabular-nums',
38
- },
39
- },
40
-
41
- variants: {
42
- size: {
43
- xs: {
44
- circle: {
45
- '--size': '24px',
46
- '--thickness': '4px',
47
- },
48
- valueText: {
49
- textStyle: '2xs',
50
- },
51
- },
52
- sm: {
53
- circle: {
54
- '--size': '32px',
55
- '--thickness': '5px',
56
- },
57
- valueText: {
58
- textStyle: '2xs',
59
- },
60
- },
61
- md: {
62
- circle: {
63
- '--size': '40px',
64
- '--thickness': '6px',
65
- },
66
- valueText: {
67
- textStyle: 'xs',
68
- },
69
- },
70
- lg: {
71
- circle: {
72
- '--size': '48px',
73
- '--thickness': '7px',
74
- },
75
- valueText: {
76
- textStyle: 'sm',
77
- },
78
- },
79
- xl: {
80
- circle: {
81
- '--size': '64px',
82
- '--thickness': '8px',
83
- },
84
- valueText: {
85
- textStyle: 'sm',
86
- },
87
- },
88
- },
89
- },
90
-
91
- defaultVariants: {
92
- size: 'md',
93
- },
94
- })