@byyuurin/ui 0.0.2 → 0.0.4

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 (109) hide show
  1. package/README.md +76 -4
  2. package/dist/index.d.ts +3 -3
  3. package/dist/index.mjs +3 -3
  4. package/dist/nuxt.d.mts +13 -0
  5. package/dist/nuxt.d.ts +6 -3
  6. package/dist/nuxt.mjs +6 -3
  7. package/dist/resolver.d.mts +13 -0
  8. package/dist/resolver.d.ts +6 -3
  9. package/dist/resolver.mjs +5 -2
  10. package/dist/{components → runtime/components}/Accordion.vue +19 -3
  11. package/dist/{components → runtime/components}/App.vue +5 -1
  12. package/dist/{components → runtime/components}/Button.vue +92 -94
  13. package/dist/{components → runtime/components}/Checkbox.vue +101 -104
  14. package/dist/{components → runtime/components}/Input.vue +5 -1
  15. package/dist/{components → runtime/components}/ModalProvider.vue +1 -1
  16. package/dist/{components → runtime/components}/RadioGroup.vue +174 -180
  17. package/dist/runtime/components/ScrollArea.vue +72 -0
  18. package/dist/{components → runtime/components}/Select.vue +262 -258
  19. package/dist/{components → runtime/components}/Switch.vue +98 -99
  20. package/dist/{components → runtime/components}/Tabs.vue +117 -117
  21. package/dist/runtime/components/Textarea.vue +173 -0
  22. package/dist/{components → runtime/components}/Toast.vue +1 -1
  23. package/dist/{components → runtime/components}/Toaster.vue +35 -1
  24. package/dist/{components → runtime/components}/index.d.ts +2 -0
  25. package/dist/{components → runtime/components}/index.mjs +2 -0
  26. package/dist/runtime/composables/defineInjection.d.ts +11 -0
  27. package/dist/runtime/composables/defineInjection.mjs +9 -0
  28. package/dist/{composables → runtime/composables}/index.d.ts +1 -0
  29. package/dist/{composables → runtime/composables}/index.mjs +1 -0
  30. package/dist/{composables → runtime/composables}/useModal.d.ts +1 -1
  31. package/dist/{composables → runtime/composables}/useModal.mjs +3 -2
  32. package/dist/{composables → runtime/composables}/useTheme.d.ts +3 -2
  33. package/dist/runtime/composables/useTheme.mjs +26 -0
  34. package/dist/{composables → runtime/composables}/useToast.d.ts +1 -1
  35. package/dist/{theme → runtime/theme}/button.d.ts +0 -8
  36. package/dist/{theme → runtime/theme}/button.mjs +1 -9
  37. package/dist/{theme → runtime/theme}/checkbox.d.ts +0 -12
  38. package/dist/{theme → runtime/theme}/checkbox.mjs +4 -9
  39. package/dist/{theme → runtime/theme}/index.d.ts +2 -0
  40. package/dist/{theme → runtime/theme}/index.mjs +2 -0
  41. package/dist/{theme → runtime/theme}/radioGroup.d.ts +0 -24
  42. package/dist/{theme → runtime/theme}/radioGroup.mjs +8 -20
  43. package/dist/runtime/theme/scrollArea.d.ts +51 -0
  44. package/dist/runtime/theme/scrollArea.mjs +30 -0
  45. package/dist/{theme → runtime/theme}/switch.d.ts +0 -12
  46. package/dist/{theme → runtime/theme}/switch.mjs +2 -8
  47. package/dist/{theme → runtime/theme}/tabs.d.ts +32 -11
  48. package/dist/{theme → runtime/theme}/tabs.mjs +19 -12
  49. package/dist/runtime/theme/textarea.d.ts +90 -0
  50. package/dist/runtime/theme/textarea.mjs +100 -0
  51. package/dist/{theme → runtime/theme}/toast.mjs +1 -1
  52. package/dist/{types → runtime/types}/components.d.ts +2 -0
  53. package/dist/{types → runtime/types}/index.d.ts +1 -1
  54. package/dist/{utils → runtime/utils}/index.d.ts +3 -12
  55. package/dist/{utils → runtime/utils}/index.mjs +3 -12
  56. package/dist/{internal → runtime/utils}/styler.d.ts +0 -1
  57. package/dist/runtime/utils/styler.mjs +10 -0
  58. package/dist/{internal/constants.mjs → shared/ui.Cmq14xN9.mjs} +6 -2
  59. package/dist/unocss-preset.d.mts +57 -0
  60. package/dist/unocss-preset.d.ts +29 -9
  61. package/dist/unocss-preset.mjs +164 -110
  62. package/package.json +18 -12
  63. package/dist/composables/useTheme.mjs +0 -18
  64. package/dist/internal/constants.d.ts +0 -3
  65. package/dist/internal/index.d.ts +0 -4
  66. package/dist/internal/index.mjs +0 -4
  67. package/dist/internal/styler.mjs +0 -236
  68. package/dist/utils/unocss.d.ts +0 -3
  69. package/dist/utils/unocss.mjs +0 -50
  70. /package/dist/{components → runtime/components}/Card.vue +0 -0
  71. /package/dist/{components → runtime/components}/Drawer.vue +0 -0
  72. /package/dist/{components → runtime/components}/Link.vue +0 -0
  73. /package/dist/{components → runtime/components}/Modal.vue +0 -0
  74. /package/dist/{components → runtime/components}/Popover.vue +0 -0
  75. /package/dist/{components → runtime/components}/Tooltip.vue +0 -0
  76. /package/dist/{composables → runtime/composables}/useComponentIcons.d.ts +0 -0
  77. /package/dist/{composables → runtime/composables}/useComponentIcons.mjs +0 -0
  78. /package/dist/{composables → runtime/composables}/useToast.mjs +0 -0
  79. /package/dist/{theme → runtime/theme}/accordion.d.ts +0 -0
  80. /package/dist/{theme → runtime/theme}/accordion.mjs +0 -0
  81. /package/dist/{theme → runtime/theme}/app.d.ts +0 -0
  82. /package/dist/{theme → runtime/theme}/app.mjs +0 -0
  83. /package/dist/{theme → runtime/theme}/card.d.ts +0 -0
  84. /package/dist/{theme → runtime/theme}/card.mjs +0 -0
  85. /package/dist/{theme → runtime/theme}/drawer.d.ts +0 -0
  86. /package/dist/{theme → runtime/theme}/drawer.mjs +0 -0
  87. /package/dist/{theme → runtime/theme}/input.d.ts +0 -0
  88. /package/dist/{theme → runtime/theme}/input.mjs +0 -0
  89. /package/dist/{theme → runtime/theme}/link.d.ts +0 -0
  90. /package/dist/{theme → runtime/theme}/link.mjs +0 -0
  91. /package/dist/{theme → runtime/theme}/modal.d.ts +0 -0
  92. /package/dist/{theme → runtime/theme}/modal.mjs +0 -0
  93. /package/dist/{theme → runtime/theme}/popover.d.ts +0 -0
  94. /package/dist/{theme → runtime/theme}/popover.mjs +0 -0
  95. /package/dist/{theme → runtime/theme}/select.d.ts +0 -0
  96. /package/dist/{theme → runtime/theme}/select.mjs +0 -0
  97. /package/dist/{theme → runtime/theme}/toast.d.ts +0 -0
  98. /package/dist/{theme → runtime/theme}/toaster.d.ts +0 -0
  99. /package/dist/{theme → runtime/theme}/toaster.mjs +0 -0
  100. /package/dist/{theme → runtime/theme}/tooltip.d.ts +0 -0
  101. /package/dist/{theme → runtime/theme}/tooltip.mjs +0 -0
  102. /package/dist/{types → runtime/types}/components.mjs +0 -0
  103. /package/dist/{types → runtime/types}/index.mjs +0 -0
  104. /package/dist/{types → runtime/types}/utils.d.ts +0 -0
  105. /package/dist/{types → runtime/types}/utils.mjs +0 -0
  106. /package/dist/{internal → runtime/utils}/extend-theme.d.ts +0 -0
  107. /package/dist/{internal → runtime/utils}/extend-theme.mjs +0 -0
  108. /package/dist/{internal → runtime/utils}/link.d.ts +0 -0
  109. /package/dist/{internal → runtime/utils}/link.mjs +0 -0
@@ -10,9 +10,11 @@ export { default as Modal } from './Modal.vue';
10
10
  export { default as ModalProvider } from './ModalProvider.vue';
11
11
  export { default as Popover } from './Popover.vue';
12
12
  export { default as RadioGroup } from './RadioGroup.vue';
13
+ export { default as ScrollArea } from './ScrollArea.vue';
13
14
  export { default as Select } from './Select.vue';
14
15
  export { default as Switch } from './Switch.vue';
15
16
  export { default as Tabs } from './Tabs.vue';
17
+ export { default as Textarea } from './Textarea.vue';
16
18
  export { default as Toast } from './Toast.vue';
17
19
  export { default as Toaster } from './Toaster.vue';
18
20
  export { default as Tooltip } from './Tooltip.vue';
@@ -10,9 +10,11 @@ export { default as Modal } from "./Modal.vue";
10
10
  export { default as ModalProvider } from "./ModalProvider.vue";
11
11
  export { default as Popover } from "./Popover.vue";
12
12
  export { default as RadioGroup } from "./RadioGroup.vue";
13
+ export { default as ScrollArea } from "./ScrollArea.vue";
13
14
  export { default as Select } from "./Select.vue";
14
15
  export { default as Switch } from "./Switch.vue";
15
16
  export { default as Tabs } from "./Tabs.vue";
17
+ export { default as Textarea } from "./Textarea.vue";
16
18
  export { default as Toast } from "./Toast.vue";
17
19
  export { default as Toaster } from "./Toaster.vue";
18
20
  export { default as Tooltip } from "./Tooltip.vue";
@@ -0,0 +1,11 @@
1
+ import type { InjectionKey } from 'vue';
2
+ export declare function defineInjection<T>(name: string): {
3
+ InjectionKey: InjectionKey<T>;
4
+ provide: (value: T) => void;
5
+ inject: () => T | undefined;
6
+ };
7
+ export declare function defineInjection<T>(name: string, defaultValue: T): {
8
+ InjectionKey: InjectionKey<T>;
9
+ provide: (value: T) => void;
10
+ inject: () => T;
11
+ };
@@ -0,0 +1,9 @@
1
+ import { inject, provide } from "vue";
2
+ export function defineInjection(name, defaultValue) {
3
+ const InjectionKey = Symbol(name);
4
+ return {
5
+ InjectionKey,
6
+ provide: (value) => provide(InjectionKey, value),
7
+ inject: () => inject(InjectionKey, defaultValue)
8
+ };
9
+ }
@@ -1,3 +1,4 @@
1
+ export { defineInjection } from './defineInjection';
1
2
  export { useComponentIcons } from './useComponentIcons';
2
3
  export { useModal } from './useModal';
3
4
  export { useTheme } from './useTheme';
@@ -1,3 +1,4 @@
1
+ export { defineInjection } from "./defineInjection.mjs";
1
2
  export { useComponentIcons } from "./useComponentIcons.mjs";
2
3
  export { useModal } from "./useModal.mjs";
3
4
  export { useTheme } from "./useTheme.mjs";
@@ -5,7 +5,7 @@ export interface ModalState {
5
5
  component: Component | string;
6
6
  props: ModalProps;
7
7
  }
8
- export declare const injectModalState: () => ShallowRef<ModalState> | undefined, provideModalState: (value: ShallowRef<ModalState>) => void;
8
+ export declare const InjectionKeyModalState: import("vue").InjectionKey<ShallowRef<ModalState>>, injectModalState: () => ShallowRef<ModalState> | undefined, provideModalState: (value: ShallowRef<ModalState>) => void;
9
9
  export declare const useModal: () => {
10
10
  open: <T extends Component>(component: T, props?: ModalProps & ComponentProps<T>) => void;
11
11
  close: () => void;
@@ -1,10 +1,11 @@
1
1
  import { createSharedComposable } from "@vueuse/core";
2
2
  import { ref } from "vue";
3
- import { createInjection } from "../utils/index.mjs";
3
+ import { defineInjection } from "./defineInjection.mjs";
4
4
  export const {
5
+ InjectionKey: InjectionKeyModalState,
5
6
  inject: injectModalState,
6
7
  provide: provideModalState
7
- } = createInjection("ui.modal");
8
+ } = defineInjection("ui.modal");
8
9
  export const useModal = createSharedComposable(() => {
9
10
  const modalState = injectModalState();
10
11
  const isOpen = ref(false);
@@ -1,7 +1,8 @@
1
+ import type { UserConfig } from 'unocss';
1
2
  import type { MaybeRefOrGetter } from 'vue';
2
3
  import * as theme from '../theme';
3
- export declare const provideThemeExtension: (value: MaybeRefOrGetter<import("../types").PartialTheme<typeof theme>>) => void, injectThemeExtension: () => MaybeRefOrGetter<import("../types").PartialTheme<typeof theme>>;
4
- export declare const mergeRules: import("@byyuurin/ui-kit/index").CRRule[];
4
+ export declare const InjectionKeyThemeExtension: import("vue").InjectionKey<MaybeRefOrGetter<import("../types").PartialTheme<typeof theme>>>, provideThemeExtension: (value: MaybeRefOrGetter<import("../types").PartialTheme<typeof theme>>) => void, injectThemeExtension: () => MaybeRefOrGetter<import("../types").PartialTheme<typeof theme>>;
5
+ export declare const InjectionKeyUnoConfig: import("vue").InjectionKey<UserConfig<object>>, provideUnoConfig: (value: UserConfig<object>) => void, injectUnoConfig: () => UserConfig<object>;
5
6
  export declare const useTheme: () => {
6
7
  theme: import("vue").ComputedRef<typeof theme>;
7
8
  createStyler: <V extends import("@byyuurin/ui-kit/index").CVVariants<S, B>, CV extends import("@byyuurin/ui-kit/index").CVCompoundVariants<V, S, B>, B extends import("@byyuurin/ui-kit/index").ClassValue = undefined, S extends import("@byyuurin/ui-kit/index").CVSlots = undefined>(theme: import("@byyuurin/ui-kit/index").CVMeta<V, CV, never, B, S>) => [keyof V] extends string[] ? (props: Required<import("@byyuurin/ui-kit/index").VariantProps<import("@byyuurin/ui-kit/index").CVReturnType<V, S, B>>> & import("../types").StylerBaseProps) => S extends undefined ? string : { [K in keyof S | (B extends undefined ? never : "base")]: import("@byyuurin/ui-kit/index").CVHandler<V, S, string>; } : (props?: import("../types").StylerBaseProps) => S extends undefined ? string : { [K in keyof S | (B extends undefined ? never : "base")]: import("@byyuurin/ui-kit/index").CVHandler<V, S, string>; };
@@ -0,0 +1,26 @@
1
+ import { transformUnoRules } from "@byyuurin/ui/unocss-preset";
2
+ import { createSharedComposable } from "@vueuse/core";
3
+ import { computed, toValue } from "vue";
4
+ import * as theme from "../theme/index.mjs";
5
+ import { extendTheme, prepareStyler } from "../utils/index.mjs";
6
+ import { defineInjection } from "./defineInjection.mjs";
7
+ export const {
8
+ InjectionKey: InjectionKeyThemeExtension,
9
+ provide: provideThemeExtension,
10
+ inject: injectThemeExtension
11
+ } = defineInjection("ui.themeExtension", {});
12
+ export const {
13
+ InjectionKey: InjectionKeyUnoConfig,
14
+ provide: provideUnoConfig,
15
+ inject: injectUnoConfig
16
+ } = defineInjection("ui.unoConfig", {});
17
+ export const useTheme = createSharedComposable(() => {
18
+ const themeExtension = injectThemeExtension();
19
+ const unoConfig = injectUnoConfig();
20
+ const mergeRules = transformUnoRules(unoConfig);
21
+ const { createStyler } = prepareStyler(mergeRules);
22
+ return {
23
+ theme: computed(() => extendTheme(toValue(themeExtension), theme)),
24
+ createStyler
25
+ };
26
+ });
@@ -1,4 +1,4 @@
1
- import type { ToastProps } from '../types';
1
+ import type { ToastProps } from '@byyuurin/ui';
2
2
  export interface Toast extends Omit<ToastProps, 'defaultOpen'> {
3
3
  id: string | number;
4
4
  click?: (toast: Toast) => void;
@@ -41,14 +41,6 @@ declare const _default: {
41
41
  base: string;
42
42
  };
43
43
  };
44
- round: {
45
- true: {
46
- base: string;
47
- };
48
- false: {
49
- base: string;
50
- };
51
- };
52
44
  active: {
53
45
  true: "";
54
46
  };
@@ -2,7 +2,7 @@ import { ct } from "@byyuurin/ui-kit";
2
2
  export default ct({
3
3
  slots: {
4
4
  base: [
5
- "inline-flex items-center leading-normal transition-colors",
5
+ "inline-flex items-center rounded-ui-button leading-normal transition-colors",
6
6
  "disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-50 aria-disabled:opacity-50"
7
7
  ],
8
8
  label: "color-inherit",
@@ -64,14 +64,6 @@ export default ct({
64
64
  base: "text-xl"
65
65
  }
66
66
  },
67
- round: {
68
- true: {
69
- base: "rounded-full"
70
- },
71
- false: {
72
- base: "rounded-ui-button"
73
- }
74
- },
75
67
  active: {
76
68
  true: ""
77
69
  },
@@ -40,12 +40,6 @@ declare const _default: {
40
40
  label: string;
41
41
  };
42
42
  };
43
- checked: {
44
- true: {
45
- base: string;
46
- icon: string;
47
- };
48
- };
49
43
  };
50
44
  compoundVariants: import("@byyuurin/ui-kit/index").CVCompoundVariants<{
51
45
  size: {
@@ -78,12 +72,6 @@ declare const _default: {
78
72
  label: string;
79
73
  };
80
74
  };
81
- checked: {
82
- true: {
83
- base: string;
84
- icon: string;
85
- };
86
- };
87
75
  }, {
88
76
  root: string;
89
77
  base: string[];
@@ -3,12 +3,13 @@ export default ct({
3
3
  slots: {
4
4
  root: "relative flex items-start",
5
5
  base: [
6
- "size-1.25em shrink-0 flex items-center justify-center rounded-ui-base color-ui-c1 ring ring-inset ring-ui-cb",
7
- "focus-visible:outline-ui-cb focus-visible:outline-2 focus-visible:outline-offset-2"
6
+ "size-1.25em shrink-0 flex items-center justify-center rounded-ui-checkbox color-ui-c1 ring-2 ring-ui-content ring-inset bg-ui-content",
7
+ "focus-visible:outline-ui-cb focus-visible:outline-2 focus-visible:outline-offset-2",
8
+ "aria-[checked=false]:ring-1 aria-[checked=false]:ring-ui-cb aria-[checked=false]:bg-ui-c1"
8
9
  ],
9
10
  container: "flex items-center h-1.25em",
10
11
  wrapper: "text-inherit ms-2",
11
- icon: "shrink-0 size-1em data-[state=checked]:animate-[scale-in_200ms_ease-out]",
12
+ icon: "color-ui-c1 shrink-0 size-1em transition data-[state=unchecked]:translate-y-full",
12
13
  label: "flex color-ui-cb after:content-empty",
13
14
  description: "color-ui-cb/60"
14
15
  },
@@ -42,12 +43,6 @@ export default ct({
42
43
  false: {
43
44
  label: "cursor-pointer"
44
45
  }
45
- },
46
- checked: {
47
- true: {
48
- base: "ring-2 ring-ui-content bg-ui-content",
49
- icon: "color-ui-c1"
50
- }
51
46
  }
52
47
  }
53
48
  });
@@ -9,9 +9,11 @@ export { default as link } from './link';
9
9
  export { default as modal } from './modal';
10
10
  export { default as popover } from './popover';
11
11
  export { default as radioGroup } from './radioGroup';
12
+ export { default as scrollArea } from './scrollArea';
12
13
  export { default as select } from './select';
13
14
  export { default as switch } from './switch';
14
15
  export { default as tabs } from './tabs';
16
+ export { default as textarea } from './textarea';
15
17
  export { default as toast } from './toast';
16
18
  export { default as toaster } from './toaster';
17
19
  export { default as tooltip } from './tooltip';
@@ -9,9 +9,11 @@ export { default as link } from "./link.mjs";
9
9
  export { default as modal } from "./modal.mjs";
10
10
  export { default as popover } from "./popover.mjs";
11
11
  export { default as radioGroup } from "./radioGroup.mjs";
12
+ export { default as scrollArea } from "./scrollArea.mjs";
12
13
  export { default as select } from "./select.mjs";
13
14
  export { default as switch } from "./switch.mjs";
14
15
  export { default as tabs } from "./tabs.mjs";
16
+ export { default as textarea } from "./textarea.mjs";
15
17
  export { default as toast } from "./toast.mjs";
16
18
  export { default as toaster } from "./toaster.mjs";
17
19
  export { default as tooltip } from "./tooltip.mjs";
@@ -16,7 +16,6 @@ declare const _default: {
16
16
  orientation: {
17
17
  horizontal: {
18
18
  fieldset: string;
19
- wrapper: string;
20
19
  };
21
20
  vertical: {
22
21
  fieldset: string;
@@ -39,17 +38,6 @@ declare const _default: {
39
38
  root: string;
40
39
  };
41
40
  };
42
- dot: {
43
- true: {
44
- indicator: string;
45
- };
46
- };
47
- round: {
48
- true: {
49
- base: string;
50
- indicator: string;
51
- };
52
- };
53
41
  disabled: {
54
42
  true: {
55
43
  root: string;
@@ -68,7 +56,6 @@ declare const _default: {
68
56
  orientation: {
69
57
  horizontal: {
70
58
  fieldset: string;
71
- wrapper: string;
72
59
  };
73
60
  vertical: {
74
61
  fieldset: string;
@@ -91,17 +78,6 @@ declare const _default: {
91
78
  root: string;
92
79
  };
93
80
  };
94
- dot: {
95
- true: {
96
- indicator: string;
97
- };
98
- };
99
- round: {
100
- true: {
101
- base: string;
102
- indicator: string;
103
- };
104
- };
105
81
  disabled: {
106
82
  true: {
107
83
  root: string;
@@ -2,21 +2,20 @@ import { ct } from "@byyuurin/ui-kit";
2
2
  export default ct({
3
3
  slots: {
4
4
  root: "relative",
5
- fieldset: "flex flex-wrap gap-0.5em",
6
- legend: "mb-1 block font-medium color-ui-cb",
5
+ fieldset: "flex flex-wrap gap-2 gap-x-4",
6
+ legend: "mb-2 color-ui-cb",
7
7
  item: "flex items-start",
8
- base: "size-1.25em rounded-ui-base ring ring-inset ring-ui-cb focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ui-cb",
9
- indicator: "flex items-center justify-center size-full rounded-ui-base bg-ui-fill",
8
+ base: "relative size-1.25em rounded-ui-radio ring ring-inset ring-ui-cb focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ui-cb transition data-[state=checked]:ring-ui-base",
9
+ indicator: "absolute inset-0 scale-0 rounded-ui-radio bg-ui-fill transition data-[state=checked]:scale-66",
10
10
  container: "h-1.5em flex items-center",
11
- wrapper: "ms-2",
12
- label: "block font-medium color-ui-cb",
13
- description: "color-ui-cb/60"
11
+ wrapper: "",
12
+ label: "block ps-2 color-ui-cb",
13
+ description: "ps-2 color-ui-cb/60"
14
14
  },
15
15
  variants: {
16
16
  orientation: {
17
17
  horizontal: {
18
- fieldset: "flex-row",
19
- wrapper: "me-2"
18
+ fieldset: "flex-row"
20
19
  },
21
20
  vertical: {
22
21
  fieldset: "flex-col"
@@ -39,17 +38,6 @@ export default ct({
39
38
  root: "text-xl"
40
39
  }
41
40
  },
42
- dot: {
43
- true: {
44
- indicator: "after:content-empty after:size-0.75em after:bg-ui-c1 after:rounded-ui-base"
45
- }
46
- },
47
- round: {
48
- true: {
49
- base: "rounded-full",
50
- indicator: "rounded-full after:rounded-full"
51
- }
52
- },
53
41
  disabled: {
54
42
  true: {
55
43
  root: "opacity-50 after:content-empty after:absolute after:inset-0 after:cursor-not-allowed"
@@ -0,0 +1,51 @@
1
+ import type { TransitionGroupProps } from 'vue';
2
+ export declare const transitionProps: TransitionGroupProps;
3
+ declare const _default: {
4
+ base: undefined;
5
+ slots: {
6
+ /** Contains all the parts of a scroll area. */
7
+ root: string;
8
+ /** The viewport area of the scroll area. */
9
+ viewport: string;
10
+ /** The vertical and horizontal scrollbar. */
11
+ scrollbar: string[];
12
+ /** The thumb to be used in `ScrollAreaScrollbar`. */
13
+ thumb: string[];
14
+ /** The corner where both vertical and horizontal scrollbars meet. */
15
+ corner: string;
16
+ };
17
+ variants: {
18
+ [key: string]: {
19
+ [key: string]: "" | {
20
+ root?: import("@byyuurin/ui-kit/index").ClassValue;
21
+ viewport?: import("@byyuurin/ui-kit/index").ClassValue;
22
+ corner?: import("@byyuurin/ui-kit/index").ClassValue;
23
+ scrollbar?: import("@byyuurin/ui-kit/index").ClassValue;
24
+ thumb?: import("@byyuurin/ui-kit/index").ClassValue;
25
+ } | null;
26
+ };
27
+ };
28
+ compoundVariants: import("@byyuurin/ui-kit/index").CVCompoundVariants<{
29
+ [key: string]: {
30
+ [key: string]: "" | {
31
+ root?: import("@byyuurin/ui-kit/index").ClassValue;
32
+ viewport?: import("@byyuurin/ui-kit/index").ClassValue;
33
+ corner?: import("@byyuurin/ui-kit/index").ClassValue;
34
+ scrollbar?: import("@byyuurin/ui-kit/index").ClassValue;
35
+ thumb?: import("@byyuurin/ui-kit/index").ClassValue;
36
+ } | null;
37
+ };
38
+ }, {
39
+ /** Contains all the parts of a scroll area. */
40
+ root: string;
41
+ /** The viewport area of the scroll area. */
42
+ viewport: string;
43
+ /** The vertical and horizontal scrollbar. */
44
+ scrollbar: string[];
45
+ /** The thumb to be used in `ScrollAreaScrollbar`. */
46
+ thumb: string[];
47
+ /** The corner where both vertical and horizontal scrollbars meet. */
48
+ corner: string;
49
+ }, undefined>;
50
+ };
51
+ export default _default;
@@ -0,0 +1,30 @@
1
+ import { ct } from "@byyuurin/ui-kit";
2
+ export const transitionProps = {
3
+ enterFromClass: "opacity-0",
4
+ enterActiveClass: "transition",
5
+ leaveToClass: "opacity-0",
6
+ leaveActiveClass: "transition",
7
+ moveClass: "transition"
8
+ };
9
+ export default ct({
10
+ slots: {
11
+ /** Contains all the parts of a scroll area. */
12
+ root: "relative overflow-hidden shadow-sm shadow-ui-cb/10 bg-ui-c1 border border-ui-cb/10 rounded-ui-base",
13
+ /** The viewport area of the scroll area. */
14
+ viewport: "size-full rounded-ui-base",
15
+ /** The vertical and horizontal scrollbar. */
16
+ scrollbar: [
17
+ "flex select-none touch-none p-0.5 duration-160 ease-out",
18
+ "data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:my-[calc(var(--ui-radius-box)+0.25rem)]",
19
+ "data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:mx-[calc(var(--ui-radius-box)+0.25rem)]"
20
+ ],
21
+ /** The thumb to be used in `ScrollAreaScrollbar`. */
22
+ thumb: [
23
+ "relative flex-1 bg-ui-cb/20 rounded-ui-base cursor-pointer transition-colors",
24
+ "hover:bg-ui-cb/30 active:bg-ui-cb/40",
25
+ "before:content-empty before:absolute before:top-1/2 before:left-1/2 before:-translate-x-1/2 before:-translate-y-1/2 before:w-full before:h-full before:min-w-10 before:min-h-10 "
26
+ ],
27
+ /** The corner where both vertical and horizontal scrollbars meet. */
28
+ corner: ""
29
+ }
30
+ });
@@ -28,12 +28,6 @@ declare const _default: {
28
28
  root: string;
29
29
  };
30
30
  };
31
- round: {
32
- true: {
33
- base: string;
34
- thumb: string;
35
- };
36
- };
37
31
  checked: {
38
32
  true: {
39
33
  icon: string;
@@ -82,12 +76,6 @@ declare const _default: {
82
76
  root: string;
83
77
  };
84
78
  };
85
- round: {
86
- true: {
87
- base: string;
88
- thumb: string;
89
- };
90
- };
91
79
  checked: {
92
80
  true: {
93
81
  icon: string;
@@ -3,14 +3,14 @@ export default ct({
3
3
  slots: {
4
4
  root: "relative flex items-start",
5
5
  base: [
6
- "inline-flex items-center shrink-0 rounded-ui-base border-2 border-transparent transition-colors duration-200",
6
+ "inline-flex items-center shrink-0 rounded-ui-switch border-2 border-transparent transition-colors duration-200",
7
7
  "focus-visible:outline-2 focus-visible:outline-offset-2",
8
8
  "data-[state=unchecked]:bg-ui-cb/10 data-[state=checked]:bg-ui-fill/80 focus-visible:outline-ui-base",
9
9
  "w-2.7em"
10
10
  ],
11
11
  container: "flex items-center h-1.5em",
12
12
  thumb: [
13
- "group pointer-events-none rounded-ui-base size-1.25em bg-ui-c1 shadow-lg ring-0 transition-transform duration-200 flex items-center justify-center",
13
+ "group pointer-events-none rounded-ui-switch size-1.25em bg-ui-c1 shadow-lg ring-0 transition-transform duration-200 flex items-center justify-center",
14
14
  "data-[state=unchecked]:translate-x-0 data-[state=unchecked]:rtl:translate-x-0 data-[state=checked]:translate-x-1.25em data-[state=checked]:rtl:-translate-x-1.25em"
15
15
  ],
16
16
  icon: [
@@ -39,12 +39,6 @@ export default ct({
39
39
  root: "text-xl"
40
40
  }
41
41
  },
42
- round: {
43
- true: {
44
- base: "rounded-full",
45
- thumb: "rounded-full"
46
- }
47
- },
48
42
  checked: {
49
43
  true: {
50
44
  icon: "group-data-[state=checked]:opacity-100"
@@ -6,7 +6,7 @@ declare const _default: {
6
6
  indicator: string;
7
7
  trigger: string[];
8
8
  content: string;
9
- leadingIcon: string;
9
+ prefixIcon: string;
10
10
  label: string;
11
11
  };
12
12
  variants: {
@@ -42,24 +42,19 @@ declare const _default: {
42
42
  };
43
43
  size: {
44
44
  xs: {
45
- trigger: string;
46
- leadingIcon: string;
45
+ root: string;
47
46
  };
48
47
  sm: {
49
- trigger: string;
50
- leadingIcon: string;
48
+ root: string;
51
49
  };
52
50
  md: {
53
- trigger: string;
54
- leadingIcon: string;
51
+ root: string;
55
52
  };
56
53
  lg: {
57
- trigger: string;
58
- leadingIcon: string;
54
+ root: string;
59
55
  };
60
56
  xl: {
61
- trigger: string;
62
- leadingIcon: string;
57
+ root: string;
63
58
  };
64
59
  };
65
60
  full: {
@@ -69,33 +64,59 @@ declare const _default: {
69
64
  };
70
65
  };
71
66
  compoundVariants: ({
67
+ size: ("xs" | "sm" | "md")[];
68
+ class: {
69
+ trigger: string;
70
+ indicator?: undefined;
71
+ list?: undefined;
72
+ };
73
+ orientation?: undefined;
74
+ variant?: undefined;
75
+ } | {
76
+ size: ("lg" | "xl")[];
77
+ class: {
78
+ trigger: string;
79
+ indicator?: undefined;
80
+ list?: undefined;
81
+ };
82
+ orientation?: undefined;
83
+ variant?: undefined;
84
+ } | {
72
85
  orientation: "horizontal";
73
86
  variant: ("solid" | "soft")[];
74
87
  class: {
75
88
  indicator: string;
89
+ trigger?: undefined;
76
90
  list?: undefined;
77
91
  };
92
+ size?: undefined;
78
93
  } | {
79
94
  orientation: "horizontal";
80
95
  variant: "link";
81
96
  class: {
82
97
  list: string;
83
98
  indicator: string;
99
+ trigger?: undefined;
84
100
  };
101
+ size?: undefined;
85
102
  } | {
86
103
  orientation: "vertical";
87
104
  variant: ("solid" | "soft")[];
88
105
  class: {
89
106
  indicator: string;
90
107
  list: string;
108
+ trigger?: undefined;
91
109
  };
110
+ size?: undefined;
92
111
  } | {
93
112
  orientation: "vertical";
94
113
  variant: "link";
95
114
  class: {
96
115
  list: string;
97
116
  indicator: string;
117
+ trigger?: undefined;
98
118
  };
119
+ size?: undefined;
99
120
  })[];
100
121
  };
101
122
  export default _default;
@@ -5,12 +5,12 @@ export default ct({
5
5
  list: "relative flex p-1 group",
6
6
  indicator: "absolute transition-all duration-200",
7
7
  trigger: [
8
- "group relative inline-flex items-center shrink-0 min-w-0 font-medium rounded-ui-tabs transition-colors",
8
+ "group relative inline-flex items-center gap-0.25em shrink-0 min-w-0 font-medium rounded-ui-tabs transition-colors",
9
9
  "focus:outline-hidden",
10
10
  "disabled:cursor-not-allowed disabled:opacity-50"
11
11
  ],
12
12
  content: "w-full focus:outline-none",
13
- leadingIcon: "shrink-0",
13
+ prefixIcon: "shrink-0 size-1.5em",
14
14
  label: "truncate"
15
15
  },
16
16
  variants: {
@@ -55,24 +55,19 @@ export default ct({
55
55
  },
56
56
  size: {
57
57
  xs: {
58
- trigger: "px-2 py-1 text-xs gap-1",
59
- leadingIcon: "size-4"
58
+ root: "text-sm"
60
59
  },
61
60
  sm: {
62
- trigger: "px-2.5 py-1.5 text-xs gap-1.5",
63
- leadingIcon: "size-4"
61
+ root: "tex-tsm"
64
62
  },
65
63
  md: {
66
- trigger: "px-3 py-1.5 text-sm gap-1.5",
67
- leadingIcon: "size-5"
64
+ root: "text-base"
68
65
  },
69
66
  lg: {
70
- trigger: "px-3 py-2 text-sm gap-2",
71
- leadingIcon: "size-5"
67
+ root: "text-lg"
72
68
  },
73
69
  xl: {
74
- trigger: "px-3 py-2 text-base gap-2",
75
- leadingIcon: "size-6"
70
+ root: "text-xl"
76
71
  }
77
72
  },
78
73
  full: {
@@ -82,6 +77,18 @@ export default ct({
82
77
  }
83
78
  },
84
79
  compoundVariants: [
80
+ {
81
+ size: ["xs", "sm", "md"],
82
+ class: {
83
+ trigger: "p-1.5 px-2.5"
84
+ }
85
+ },
86
+ {
87
+ size: ["lg", "xl"],
88
+ class: {
89
+ trigger: "p-2.5 px-4.5"
90
+ }
91
+ },
85
92
  {
86
93
  orientation: "horizontal",
87
94
  variant: ["solid", "soft"],