@byyuurin/ui 0.0.4 → 0.0.5

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 (94) hide show
  1. package/README.md +11 -22
  2. package/dist/index.d.ts +25 -2
  3. package/dist/index.mjs +25 -2
  4. package/dist/nuxt.d.mts +1 -1
  5. package/dist/nuxt.d.ts +1 -1
  6. package/dist/nuxt.mjs +14 -10
  7. package/dist/nuxt.mjs.map +1 -0
  8. package/dist/runtime/components/Accordion.vue +1 -1
  9. package/dist/runtime/components/Alert.vue +120 -0
  10. package/dist/runtime/components/Badge.vue +71 -0
  11. package/dist/runtime/components/Button.vue +3 -2
  12. package/dist/runtime/components/Card.vue +4 -4
  13. package/dist/runtime/components/Checkbox.vue +1 -1
  14. package/dist/runtime/components/Chip.vue +59 -0
  15. package/dist/runtime/components/Drawer.vue +2 -2
  16. package/dist/runtime/components/Input.vue +2 -1
  17. package/dist/runtime/components/Link.vue +1 -1
  18. package/dist/runtime/components/Modal.vue +2 -2
  19. package/dist/runtime/components/PinInput.vue +86 -0
  20. package/dist/runtime/components/Popover.vue +1 -1
  21. package/dist/runtime/components/RadioGroup.vue +1 -1
  22. package/dist/runtime/components/ScrollArea.vue +1 -1
  23. package/dist/runtime/components/Select.vue +2 -1
  24. package/dist/runtime/components/Slider.vue +97 -0
  25. package/dist/runtime/components/Switch.vue +1 -1
  26. package/dist/runtime/components/Tabs.vue +1 -1
  27. package/dist/runtime/components/Textarea.vue +2 -3
  28. package/dist/runtime/components/Toast.vue +1 -1
  29. package/dist/runtime/components/Toaster.vue +2 -1
  30. package/dist/runtime/components/Tooltip.vue +1 -1
  31. package/dist/runtime/theme/accordion.mjs +24 -21
  32. package/dist/runtime/theme/alert.d.ts +85 -0
  33. package/dist/runtime/theme/alert.mjs +47 -0
  34. package/dist/runtime/theme/app.mjs +1 -0
  35. package/dist/runtime/theme/badge.d.ts +79 -0
  36. package/dist/runtime/theme/badge.mjs +89 -0
  37. package/dist/runtime/theme/button.d.ts +4 -1
  38. package/dist/runtime/theme/button.mjs +131 -120
  39. package/dist/runtime/theme/card.d.ts +2 -2
  40. package/dist/runtime/theme/card.mjs +12 -9
  41. package/dist/runtime/theme/checkbox.mjs +45 -42
  42. package/dist/runtime/theme/chip.d.ts +56 -0
  43. package/dist/runtime/theme/chip.mjs +63 -0
  44. package/dist/runtime/theme/drawer.mjs +69 -66
  45. package/dist/runtime/theme/index.d.ts +5 -0
  46. package/dist/runtime/theme/index.mjs +5 -0
  47. package/dist/runtime/theme/input.d.ts +13 -5
  48. package/dist/runtime/theme/input.mjs +135 -122
  49. package/dist/runtime/theme/link.d.ts +1 -1
  50. package/dist/runtime/theme/link.mjs +23 -20
  51. package/dist/runtime/theme/modal.mjs +51 -48
  52. package/dist/runtime/theme/pinInput.d.ts +97 -0
  53. package/dist/runtime/theme/pinInput.mjs +108 -0
  54. package/dist/runtime/theme/popover.mjs +11 -8
  55. package/dist/runtime/theme/radioGroup.mjs +50 -47
  56. package/dist/runtime/theme/scrollArea.mjs +24 -21
  57. package/dist/runtime/theme/select.d.ts +5 -2
  58. package/dist/runtime/theme/select.mjs +156 -143
  59. package/dist/runtime/theme/slider.d.ts +73 -0
  60. package/dist/runtime/theme/slider.mjs +49 -0
  61. package/dist/runtime/theme/switch.mjs +66 -63
  62. package/dist/runtime/theme/tabs.d.ts +12 -2
  63. package/dist/runtime/theme/tabs.mjs +132 -113
  64. package/dist/runtime/theme/textarea.d.ts +5 -2
  65. package/dist/runtime/theme/textarea.mjs +103 -90
  66. package/dist/runtime/theme/toast.mjs +26 -23
  67. package/dist/runtime/theme/toaster.d.ts +2 -2
  68. package/dist/runtime/theme/toaster.mjs +84 -81
  69. package/dist/runtime/theme/tooltip.mjs +9 -6
  70. package/dist/runtime/types/components.d.ts +5 -0
  71. package/dist/runtime/types/index.d.ts +1 -3
  72. package/dist/runtime/utils/extend-theme.mjs +1 -1
  73. package/dist/runtime/utils/link.d.ts +1 -1
  74. package/dist/shared/ui.CzDyI29e.mjs +8 -0
  75. package/dist/shared/ui.CzDyI29e.mjs.map +1 -0
  76. package/dist/unocss-preset.mjs +44 -35
  77. package/dist/unocss-preset.mjs.map +1 -0
  78. package/dist/unplugin.d.mts +25 -0
  79. package/dist/unplugin.d.ts +25 -0
  80. package/dist/unplugin.mjs +64 -0
  81. package/dist/unplugin.mjs.map +1 -0
  82. package/dist/vite.d.mts +9 -0
  83. package/dist/vite.d.ts +9 -0
  84. package/dist/vite.mjs +14 -0
  85. package/dist/vite.mjs.map +1 -0
  86. package/package.json +17 -10
  87. package/dist/resolver.d.mts +0 -13
  88. package/dist/resolver.d.ts +0 -13
  89. package/dist/resolver.mjs +0 -21
  90. package/dist/runtime/components/index.d.ts +0 -20
  91. package/dist/runtime/components/index.mjs +0 -20
  92. package/dist/runtime/composables/index.d.ts +0 -5
  93. package/dist/runtime/composables/index.mjs +0 -5
  94. package/dist/shared/ui.Cmq14xN9.mjs +0 -25
@@ -35,7 +35,7 @@ import { defu } from 'defu'
35
35
  import { useForwardPropsEmits } from 'reka-ui'
36
36
  import { HoverCard, Popover } from 'reka-ui/namespaced'
37
37
  import { computed, toRef } from 'vue'
38
- import { useTheme } from '../composables'
38
+ import { useTheme } from '../composables/useTheme'
39
39
 
40
40
  const props = withDefaults(defineProps<PopoverProps>(), {
41
41
  mode: 'click',
@@ -70,7 +70,7 @@ type NormalizeItem<T> = { id: string } & (
70
70
  import { reactivePick } from '@vueuse/core'
71
71
  import { Label, RadioGroupIndicator, RadioGroupItem, RadioGroupRoot, useForwardPropsEmits } from 'reka-ui'
72
72
  import { computed, useId } from 'vue'
73
- import { useTheme } from '../composables'
73
+ import { useTheme } from '../composables/useTheme'
74
74
  import { get } from '../utils'
75
75
 
76
76
  const props = withDefaults(defineProps<RadioGroupProps<T>>(), {
@@ -11,7 +11,7 @@ export interface ScrollAreaProps extends ComponentAttrs<typeof scrollArea>, Pick
11
11
  import { reactivePick } from '@vueuse/core'
12
12
  import { ScrollAreaCorner, ScrollAreaRoot, ScrollAreaScrollbar, ScrollAreaThumb, ScrollAreaViewport } from 'reka-ui'
13
13
  import { computed, ref } from 'vue'
14
- import { useTheme } from '../composables'
14
+ import { useTheme } from '../composables/useTheme'
15
15
 
16
16
  const props = withDefaults(defineProps<ScrollAreaProps>(), {})
17
17
  const rootRef = ref<InstanceType<typeof ScrollAreaRoot>>()
@@ -105,7 +105,8 @@ import { reactivePick } from '@vueuse/core'
105
105
  import { defu } from 'defu'
106
106
  import { SelectArrow, SelectContent, SelectGroup, SelectItem, SelectItemIndicator, SelectItemText, SelectLabel, SelectPortal, SelectRoot, SelectSeparator, SelectTrigger, SelectViewport, useForwardPropsEmits } from 'reka-ui'
107
107
  import { computed, toRef } from 'vue'
108
- import { useComponentIcons, useTheme } from '../composables'
108
+ import { useComponentIcons } from '../composables/useComponentIcons'
109
+ import { useTheme } from '../composables/useTheme'
109
110
  import { compare, get } from '../utils'
110
111
 
111
112
  const props = withDefaults(defineProps<SelectProps<T, I, V, M>>(), {
@@ -0,0 +1,97 @@
1
+ <script lang="ts">
2
+ import type { VariantProps } from '@byyuurin/ui-kit'
3
+ import type { SliderRootProps } from 'reka-ui'
4
+ import type { slider } from '../theme'
5
+ import type { ComponentAttrs } from '../types'
6
+
7
+ type SliderVariants = VariantProps<typeof slider>
8
+
9
+ export interface SliderProps extends ComponentAttrs<typeof slider>, Pick<SliderRootProps, 'as' | 'name' | 'disabled' | 'inverted' | 'min' | 'max' | 'step' | 'minStepsBetweenThumbs'> {
10
+ modelValue?: number | number[]
11
+ size?: SliderVariants['size']
12
+ /**
13
+ * The orientation of the slider.
14
+ * @default 'horizontal'
15
+ */
16
+ orientation?: SliderVariants['orientation']
17
+ /** The value of the slider when initially rendered. Use when you do not need to control the state of the slider. */
18
+ defaultValue?: number | number[]
19
+ }
20
+
21
+ export interface SliderEmits {
22
+ (event: 'update:modelValue', payload: number | number[]): void
23
+ (event: 'change', payload: Event): void
24
+ }
25
+ </script>
26
+
27
+ <script setup lang="ts">
28
+ import { reactivePick } from '@vueuse/core'
29
+ import { SliderRange, SliderRoot, SliderThumb, SliderTrack, useForwardPropsEmits } from 'reka-ui'
30
+ import { computed } from 'vue'
31
+ import { useTheme } from '../composables/useTheme'
32
+
33
+ const props = withDefaults(defineProps<SliderProps>(), {
34
+ size: 'md',
35
+ orientation: 'horizontal',
36
+ step: 1,
37
+ max: 100,
38
+ })
39
+
40
+ const emit = defineEmits<SliderEmits>()
41
+
42
+ const rootProps = useForwardPropsEmits(reactivePick(props, 'as', 'orientation', 'min', 'max', 'step', 'minStepsBetweenThumbs', 'inverted'), emit)
43
+
44
+ const modelValue = defineModel<number | number[]>()
45
+
46
+ const defaultSliderValue = computed(() => {
47
+ if (typeof props.defaultValue === 'number')
48
+ return [props.defaultValue]
49
+
50
+ return props.defaultValue
51
+ })
52
+
53
+ const sliderValue = computed({
54
+ get() {
55
+ if (typeof modelValue.value === 'number')
56
+ return [modelValue.value]
57
+
58
+ return modelValue.value ?? defaultSliderValue.value
59
+ },
60
+ set(value) {
61
+ modelValue.value = value?.length === 1 ? value[0] : value
62
+ },
63
+ })
64
+
65
+ const thumbsCount = computed(() => sliderValue.value?.length ?? 1)
66
+
67
+ const { theme, createStyler } = useTheme()
68
+ const style = computed(() => {
69
+ const styler = createStyler(theme.value.slider)
70
+ return styler(props)
71
+ })
72
+
73
+ function onChange(value: any) {
74
+ // @ts-expect-error - 'target' does not exist in type 'EventInit'
75
+ const event = new Event('change', { target: { value } })
76
+ emit('change', event)
77
+ }
78
+ </script>
79
+
80
+ <template>
81
+ <SliderRoot
82
+ v-bind="rootProps"
83
+ v-model="sliderValue"
84
+ :name="props.name"
85
+ :disabled="props.disabled"
86
+ :class="style.root({ class: [props.class, props.ui?.root] })"
87
+ :default-value="defaultSliderValue"
88
+ :data-steps="thumbsCount"
89
+ @value-commit="onChange"
90
+ >
91
+ <SliderTrack :class="style.track({ class: props.ui?.track })">
92
+ <SliderRange :class="style.range({ class: props.ui?.range })" />
93
+ </SliderTrack>
94
+
95
+ <SliderThumb v-for="count in thumbsCount" :key="count" :class="style.thumb({ class: props.ui?.thumb })" />
96
+ </SliderRoot>
97
+ </template>
@@ -38,7 +38,7 @@ export interface SwitchSlots {
38
38
  import { reactivePick } from '@vueuse/core'
39
39
  import { Label, Primitive, SwitchRoot, SwitchThumb, useForwardProps } from 'reka-ui'
40
40
  import { computed, useId } from 'vue'
41
- import { useTheme } from '../composables'
41
+ import { useTheme } from '../composables/useTheme'
42
42
 
43
43
  const props = withDefaults(defineProps<SwitchProps>(), {
44
44
  size: 'md',
@@ -52,7 +52,7 @@ export type TabsSlots<T extends { slot?: string }> = {
52
52
  import { reactivePick } from '@vueuse/core'
53
53
  import { TabsContent, TabsIndicator, TabsList, TabsRoot, TabsTrigger, useForwardPropsEmits } from 'reka-ui'
54
54
  import { computed } from 'vue'
55
- import { useTheme } from '../composables'
55
+ import { useTheme } from '../composables/useTheme'
56
56
  import { get } from '../utils'
57
57
 
58
58
  const props = withDefaults(defineProps<TabsProps<T>>(), {
@@ -42,7 +42,7 @@ export interface TextareaSlots {
42
42
  <script setup lang="ts">
43
43
  import { Primitive } from 'reka-ui'
44
44
  import { computed, nextTick, onMounted, ref, watch } from 'vue'
45
- import { useTheme } from '../composables'
45
+ import { useTheme } from '../composables/useTheme'
46
46
 
47
47
  defineOptions({
48
48
  inheritAttrs: false,
@@ -165,8 +165,7 @@ onMounted(() => {
165
165
  @blur="onBlur"
166
166
  @change="onChange"
167
167
  @focus="autoResize"
168
- >
169
- </textarea>
168
+ ></textarea>
170
169
 
171
170
  <slot></slot>
172
171
  </Primitive>
@@ -35,7 +35,7 @@ export interface ToastSlots {
35
35
  import { reactivePick, useElementBounding } from '@vueuse/core'
36
36
  import { ToastAction, ToastClose, ToastDescription, ToastRoot, ToastTitle, useForwardPropsEmits } from 'reka-ui'
37
37
  import { computed, ref } from 'vue'
38
- import { useTheme } from '../composables'
38
+ import { useTheme } from '../composables/useTheme'
39
39
  import Button from './Button.vue'
40
40
 
41
41
  const props = withDefaults(defineProps<ToastProps>(), {
@@ -30,7 +30,8 @@ export interface ToasterSlots {
30
30
  import { reactivePick } from '@vueuse/core'
31
31
  import { ToastPortal, ToastProvider, ToastViewport, useForwardProps } from 'reka-ui'
32
32
  import { computed, ref } from 'vue'
33
- import { useTheme, useToast } from '../composables'
33
+ import { useTheme } from '../composables/useTheme'
34
+ import { useToast } from '../composables/useToast'
34
35
  import { omit } from '../utils'
35
36
  import Toast from './Toast.vue'
36
37
 
@@ -24,7 +24,7 @@ import { reactivePick } from '@vueuse/core'
24
24
  import { defu } from 'defu'
25
25
  import { TooltipArrow, TooltipContent, TooltipPortal, TooltipRoot, TooltipTrigger, useForwardPropsEmits } from 'reka-ui'
26
26
  import { computed, toRef } from 'vue'
27
- import { useTheme } from '../composables'
27
+ import { useTheme } from '../composables/useTheme'
28
28
 
29
29
  const props = withDefaults(defineProps<TooltipProps>(), {
30
30
  portal: true,
@@ -1,25 +1,28 @@
1
1
  import { ct } from "@byyuurin/ui-kit";
2
- export default ct({
3
- slots: {
4
- root: "w-full color-ui-cb",
5
- item: "border-b last:border-b-0",
6
- header: "flex",
7
- trigger: "group flex-1 flex items-center gap-2 font-medium text-sm py-4 focus-visible:outline-ui-fill min-w-0",
8
- content: [
9
- "overflow-hidden focus:outline-none",
10
- "data-[state=open]:animate-[accordion-down_200ms_ease-out]",
11
- "data-[state=closed]:animate-[accordion-up_200ms_ease-out]"
12
- ],
13
- body: "text-sm pb-4 color-ui-cb/80",
14
- icon: "shrink-0 size-5",
15
- trailingIcon: "shrink-0 size-5 ms-auto group-data-[state=open]:rotate-180 transition-transform duration-200",
16
- label: "text-start break-words"
17
- },
18
- variants: {
19
- disabled: {
20
- true: {
21
- trigger: "cursor-not-allowed opacity-50"
2
+ export default ct(
3
+ /* @unocss-include */
4
+ {
5
+ slots: {
6
+ root: "w-full color-ui-cb",
7
+ item: "border-b last:border-b-0",
8
+ header: "flex",
9
+ trigger: "group flex-1 flex items-center gap-2 font-medium text-sm py-4 outline-none focus-visible:outline-ui-cb/80 min-w-0",
10
+ content: [
11
+ "overflow-hidden focus:outline-none",
12
+ "data-[state=open]:animate-[accordion-down_200ms_ease-out]",
13
+ "data-[state=closed]:animate-[accordion-up_200ms_ease-out]"
14
+ ],
15
+ body: "text-sm pb-4 color-ui-cb/80",
16
+ icon: "shrink-0 size-5",
17
+ trailingIcon: "shrink-0 size-5 ms-auto group-data-[state=open]:rotate-180 transition-transform duration-200",
18
+ label: "text-start break-words"
19
+ },
20
+ variants: {
21
+ disabled: {
22
+ true: {
23
+ trigger: "cursor-not-allowed opacity-50"
24
+ }
22
25
  }
23
26
  }
24
27
  }
25
- });
28
+ );
@@ -0,0 +1,85 @@
1
+ declare const _default: {
2
+ base: undefined;
3
+ slots: {
4
+ root: string;
5
+ wrapper: string;
6
+ title: string;
7
+ description: string;
8
+ icon: string;
9
+ actions: string;
10
+ close: string;
11
+ };
12
+ variants: {
13
+ variant: {
14
+ solid: {
15
+ root: string;
16
+ close: string;
17
+ };
18
+ outline: {
19
+ root: string;
20
+ };
21
+ soft: {
22
+ root: string;
23
+ };
24
+ 'soft-outline': {
25
+ root: string;
26
+ };
27
+ };
28
+ orientation: {
29
+ horizontal: {
30
+ root: string;
31
+ actions: string;
32
+ };
33
+ vertical: {
34
+ root: string;
35
+ actions: string;
36
+ };
37
+ };
38
+ title: {
39
+ true: {
40
+ description: string;
41
+ };
42
+ };
43
+ };
44
+ compoundVariants: import("@byyuurin/ui-kit/index").CVCompoundVariants<{
45
+ variant: {
46
+ solid: {
47
+ root: string;
48
+ close: string;
49
+ };
50
+ outline: {
51
+ root: string;
52
+ };
53
+ soft: {
54
+ root: string;
55
+ };
56
+ 'soft-outline': {
57
+ root: string;
58
+ };
59
+ };
60
+ orientation: {
61
+ horizontal: {
62
+ root: string;
63
+ actions: string;
64
+ };
65
+ vertical: {
66
+ root: string;
67
+ actions: string;
68
+ };
69
+ };
70
+ title: {
71
+ true: {
72
+ description: string;
73
+ };
74
+ };
75
+ }, {
76
+ root: string;
77
+ wrapper: string;
78
+ title: string;
79
+ description: string;
80
+ icon: string;
81
+ actions: string;
82
+ close: string;
83
+ }, undefined>;
84
+ };
85
+ export default _default;
@@ -0,0 +1,47 @@
1
+ import { ct } from "@byyuurin/ui-kit";
2
+ export default ct(
3
+ /* @unocss-include */
4
+ {
5
+ slots: {
6
+ root: "relative overflow-hidden w-full rounded-ui-box p-4 flex gap-2.5",
7
+ wrapper: "min-w-0 flex-1 flex flex-col",
8
+ title: "text-xl font-medium",
9
+ description: "opacity-80",
10
+ icon: "shrink-0 size-1.5em",
11
+ actions: "flex flex-wrap gap-1.5 shrink-0",
12
+ close: "p-0"
13
+ },
14
+ variants: {
15
+ variant: {
16
+ "solid": {
17
+ root: "color-ui-c1 bg-ui-fill",
18
+ close: "ui-base-inverted"
19
+ },
20
+ "outline": {
21
+ root: "color-ui-content bg-ui-c1 ring ring-inset ring-ui-fill"
22
+ },
23
+ "soft": {
24
+ root: "color-ui-content bg-ui-fill/10"
25
+ },
26
+ "soft-outline": {
27
+ root: "color-ui-content bg-ui-fill/10 ring ring-inset ring-ui-fill/40"
28
+ }
29
+ },
30
+ orientation: {
31
+ horizontal: {
32
+ root: "items-center",
33
+ actions: "items-center"
34
+ },
35
+ vertical: {
36
+ root: "items-start",
37
+ actions: "items-start mt-2.5"
38
+ }
39
+ },
40
+ title: {
41
+ true: {
42
+ description: "mt-1"
43
+ }
44
+ }
45
+ }
46
+ }
47
+ );
@@ -1,4 +1,5 @@
1
1
  export default {
2
+ /* @unocss-include */
2
3
  icons: {
3
4
  close: "i-mdi-close-thick",
4
5
  loading: "i-mdi-loading",
@@ -0,0 +1,79 @@
1
+ declare const _default: {
2
+ base: undefined;
3
+ slots: {
4
+ root: string;
5
+ base: string[];
6
+ };
7
+ variants: {
8
+ size: {
9
+ xs: {
10
+ root: string;
11
+ };
12
+ sm: {
13
+ root: string;
14
+ };
15
+ md: {
16
+ root: string;
17
+ };
18
+ lg: {
19
+ root: string;
20
+ };
21
+ xl: {
22
+ root: string;
23
+ };
24
+ };
25
+ position: {
26
+ 'top-right': {
27
+ base: string;
28
+ };
29
+ 'bottom-right': {
30
+ base: string;
31
+ };
32
+ 'top-left': {
33
+ base: string;
34
+ };
35
+ 'bottom-left': {
36
+ base: string;
37
+ };
38
+ };
39
+ show: {
40
+ true: {
41
+ base: string;
42
+ };
43
+ };
44
+ inset: {
45
+ true: "";
46
+ };
47
+ standalone: {
48
+ false: {
49
+ base: string;
50
+ };
51
+ };
52
+ };
53
+ compoundVariants: ({
54
+ position: "top-right";
55
+ inset: false;
56
+ class: {
57
+ base: string;
58
+ };
59
+ } | {
60
+ position: "bottom-right";
61
+ inset: false;
62
+ class: {
63
+ base: string;
64
+ };
65
+ } | {
66
+ position: "top-left";
67
+ inset: false;
68
+ class: {
69
+ base: string;
70
+ };
71
+ } | {
72
+ position: "bottom-left";
73
+ inset: false;
74
+ class: {
75
+ base: string;
76
+ };
77
+ })[];
78
+ };
79
+ export default _default;
@@ -0,0 +1,89 @@
1
+ import { ct } from "@byyuurin/ui-kit";
2
+ export default ct(
3
+ /* @unocss-include */
4
+ {
5
+ slots: {
6
+ root: "relative inline-flex items-center justify-center shrink-0",
7
+ base: [
8
+ "inline-block rounded-full ring ring-ui-c1 flex items-center justify-center color-ui-c1 font-medium whitespace-nowrap",
9
+ "h-1.2em min-w-1.2em p-0.2em text-0.8em bg-ui-fill"
10
+ ]
11
+ },
12
+ variants: {
13
+ size: {
14
+ xs: {
15
+ root: "text-xs"
16
+ },
17
+ sm: {
18
+ root: "text-sm"
19
+ },
20
+ md: {
21
+ root: "text-base"
22
+ },
23
+ lg: {
24
+ root: "text-lg"
25
+ },
26
+ xl: {
27
+ root: "text-xl"
28
+ }
29
+ },
30
+ position: {
31
+ "top-right": {
32
+ base: "top-0 right-0"
33
+ },
34
+ "bottom-right": {
35
+ base: "bottom-0 right-0"
36
+ },
37
+ "top-left": {
38
+ base: "top-0 left-0"
39
+ },
40
+ "bottom-left": {
41
+ base: "bottom-0 left-0"
42
+ }
43
+ },
44
+ show: {
45
+ true: {
46
+ base: "animate-[scale-in_200ms_ease-out]"
47
+ }
48
+ },
49
+ inset: {
50
+ true: ""
51
+ },
52
+ standalone: {
53
+ false: {
54
+ base: "absolute"
55
+ }
56
+ }
57
+ },
58
+ compoundVariants: [
59
+ {
60
+ position: "top-right",
61
+ inset: false,
62
+ class: {
63
+ base: "-translate-y-1/2 translate-x-1/2 transform"
64
+ }
65
+ },
66
+ {
67
+ position: "bottom-right",
68
+ inset: false,
69
+ class: {
70
+ base: "translate-y-1/2 translate-x-1/2 transform"
71
+ }
72
+ },
73
+ {
74
+ position: "top-left",
75
+ inset: false,
76
+ class: {
77
+ base: "-translate-y-1/2 -translate-x-1/2 transform"
78
+ }
79
+ },
80
+ {
81
+ position: "bottom-left",
82
+ inset: false,
83
+ class: {
84
+ base: "translate-y-1/2 -translate-x-1/2 transform"
85
+ }
86
+ }
87
+ ]
88
+ }
89
+ );
@@ -17,6 +17,9 @@ declare const _default: {
17
17
  soft: {
18
18
  base: string[];
19
19
  };
20
+ 'soft-outline': {
21
+ base: string[];
22
+ };
20
23
  ghost: {
21
24
  base: string[];
22
25
  };
@@ -108,7 +111,7 @@ declare const _default: {
108
111
  suffix?: undefined;
109
112
  } | {
110
113
  active: true;
111
- variant: "soft";
114
+ variant: ("soft" | "soft-outline")[];
112
115
  class: {
113
116
  base: string;
114
117
  label?: undefined;